我正在学习如何使用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)
我尝试了两种方法,这两种方法都具有相同的性能。这两种方式在功能上有什么区别?如果没有,那么至少有任何“正式约定”吗?
答案 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)