python - model.add(tf.keras.layers.Lambda(lambda x: x * 200)) 的含义
问题描述
下面这行代码有什么作用?如何解读?
model.add(tf.keras.layers.Lambda(lambda x: x * 200))
我的解释:Lambda 就像一个函数。
>>> f = lambda x: x + 1
>>> f(3)
4
在第二个示例中,使用 f(3) 调用该函数。但是model.add的目的是什么?
解决方案
该model.add
方法向关联的 Keras 模型添加一个层。现在,这个方法的参数通常是一个 Keras 层。在您的情况下,它是一种特殊的层,称为Lambda
. 你说得对,lambda 是一个函数。原则上,lambda
它是一种常见的语法糖,它允许您声明一个简单的函数而不用命名它。就像:
def my_func(x):
return x*200
model.add(tf.keras.layers.Lambda(my_func))
正如你所看到的,这是一个非常基本的功能的更多代码。回到Lambda
层,这只是将给定的函数应用于前一层的所有节点。如果您不了解 Keras 模型是什么或机器学习是如何工作的,至少在广义上,您可能希望从一些教程开始,而不是查看各个代码行的作用。通过这种方式,您可以更快地提高生产力。
推荐阅读
- javascript - 背景颜色不适用于整个页面 Vue.js
- javascript - 对于“j/nY”日期格式,日期字段的禁用日期不能正常工作?
- c - 返回一个动态分配的数组?(C)
- python - “分配前引用的局部变量'变量'”错误背后的原因
- algorithm - 不使用循环对字符串列表进行排序的伪代码
- asp.net-mvc - EF Core 2.2 - 同一张表的两个外键
- java - 如何在 InetlliJ 的有效位置根项目?
- c++ - 围绕打印到窗口的功能的 Ncurses 问题
- r - 如何将列总计添加到 R 中的分组摘要
- excel - ActiveX 文本框内的文本通过单元格的移动和大小“拉伸”