在Keras功能性API中链接图层的正确方法是什么?

时间:2019-06-06 16:33:00

标签: python keras neural-network

我正在学习如何使用Keras功能api,我的问题很简单,但是我无法在互联网上找到任何答案。在Keras中命名链接层的正确方法是什么?它们的名称应该相同还是不同?是否有任何约定或规则?

让我为您展示两个示例。第一个直接来自keras functional api guide

x = Dense(64, activation='relu')(x)
x = Dense(64, activation='relu')(x)
x = Dense(64, activation='relu')(x)

第二个例子是我自己的:

second = Dense(64, activation='relu')(first)
third = Dense(64, activation='relu')(second)
fourth = Dense(64, activation='relu')(third)

我尝试了两种方法,这两种方法都具有相同的性能。这两种方式在功能上有什么区别?如果没有,那么至少有任何“正式约定”吗?

1 个答案:

答案 0 :(得分:2)

不,没有。选择变量名完全由您决定。就计算图(您的网络)而言,两者都构建了相同的模型。

您可能使用不同的变量名称的唯一原因是稍后要引用这些层,例如将第一层与第四层连接以创建残留网络,等等:

from itertools import zip_longest

list1=[1,2,3]
 list2=['a','b','c']
 list2=[5,6,7] 

 list=list(zip_longest(list1,list2,list3))
for x,y,z in list:
 print(x,y,z)