Python Lambda函数用法

时间:2018-04-02 11:22:20

标签: python lambda keras loss-function

我遇到过这行代码。

loss={'ctc': lambda y_true, y_pred: y_pred}

1。 lambda的功能在这里是什么?

2。这里'ctc'有什么用?

3 个答案:

答案 0 :(得分:4)

lambda函数返回第二个参数:y_pred 它就像这个函数一样:

def foo(y_true, y_pred):
    return y_pred

使用'ctc'作为字典loss中的一个关键字:

loss['ctc'] = lambda y_true, y_pred: y_pred

例如我可以这样做:

loss['ctc'](0, 1)

这将返回1

答案 1 :(得分:2)

这里是lambda本身的函数,

lambda y_true, y_pred: y_pred

相应的功能,

def something(y_true, y_pred):
   return y_pred

y_true,y_pred 两者都是传入函数的结果,

y_pred 返回值,存储在键'ctc'中

答案 2 :(得分:1)

lambda y_true, y_pred: y_pred

可以扩展为:

def foo(y_true, y_pred):
    return y_pred  
# function takes two parameters, returns second parameter.

关于lambda的注释

  • lambda运算符或lambda函数是一种创建小的方法 匿名函数。

  • Lambda函数是一次性函数,即只要它们被创建就需要它们。

ctc是字典loss中的关键字。

loss = {'ctc': lambda y_true, y_pred: y_pred}

可以写成,

loss['ctc'] = lambda y_true, y_pred: y_pred