Keras功能API的语法

问题描述 投票:1回答:2

我对keras功能API中的语法如何工作感到困惑。它对定义复杂的多输入和输出模型非常有用。但语法对我来说有点令人费解。

new_layer = Conv2d(...)(old_layer)

据我所知,Conv2d是一个类。 Conv2d()()语法如何在python中工作?

api syntax functional-programming keras
2个回答
1
投票

Conv2d(...).(X)相当于:

layer = Conv2d(...)
X = layer(X)

其中layer()相当于layer.__call__(self,....)


3
投票

python中实现__call__()方法的每个对象都可以直接调用(你可以看看this questionthis tutorial)。所有keras层都实现了这个函数(参见source),并且实现应该在给定输入张量的情况下返回层的输出。

© www.soinside.com 2019 - 2024. All rights reserved.