keras-层与层之间的差异

keras-层与层之间的差异,keras,Keras,我想计算模型层的数量。我使用两种方法: len(model.layers) 及 但是我得到了不同的结果。按深度排列的层与层之间有什么区别?谢谢大家! 您可以阅读以了解如何按深度构建层: #构建一个dict{depth:list of layer with this depth} 层按深度={} 对于层,层中的深度\u深度。项() 如果深度不在层中,则按深度: 逐层深度[深度]=[] 层按层深度[depth]。追加(层) 以及如何构建self.layers: #按深度设置self.layers

我想计算模型层的数量。我使用两种方法:

len(model.layers)

但是我得到了不同的结果。按深度排列的
层与
层之间有什么区别?谢谢大家!

您可以阅读以了解如何按深度构建

#构建一个dict{depth:list of layer with this depth}
层按深度={}
对于层,层中的深度\u深度。项()
如果深度不在层中,则按深度:
逐层深度[深度]=[]
层按层深度[depth]。追加(层)
以及如何构建
self.layers

#按深度设置self.layers和self.layers。
层=[]
对于深度键:
层的深度=层的深度[深度]
#Container.layers需要具有确定的顺序:
#这里我们按遍历顺序对它们进行排序。
用于深度排序的层(key=lambda x:layer\u索引[x])
对于层中的层,对于层深度:
层。附加(层)
self.layers=层
self.layers\u by\u depth=layers\u by\u depth
您可以阅读以了解如何按深度构建
层:

#构建一个dict{depth:list of layer with this depth}
层按深度={}
对于层,层中的深度\u深度。项()
如果深度不在层中,则按深度:
逐层深度[深度]=[]
层按层深度[depth]。追加(层)
以及如何构建
self.layers

#按深度设置self.layers和self.layers。
层=[]
对于深度键:
层的深度=层的深度[深度]
#Container.layers需要具有确定的顺序:
#这里我们按遍历顺序对它们进行排序。
用于深度排序的层(key=lambda x:layer\u索引[x])
对于层中的层,对于层深度:
层。附加(层)
self.layers=层
self.layers\u by\u depth=layers\u by\u depth

模型。层
提供所有层的列表。正如您添加的那样,它们非常有序

model.layers\u by\u depth
(在较新版本中似乎已被删除)将为您提供一个dict,其中包含每个深度(键)的层列表

模型。对于线性模型(即每个层有一个输入/输出),按深度划分的层非常相似,但对于非线性模型(如初始网络)则不同。在这里,层将按深度分组。

如果您有一个深度为
n
的层输出到两个层,那么您将在深度为
n+1
的列表中找到这两个新层,而不是未分组的
模型。层
模型。层
提供了所有层的列表。正如您添加的那样,它们非常有序

model.layers\u by\u depth
(在较新版本中似乎已被删除)将为您提供一个dict,其中包含每个深度(键)的层列表

模型。对于线性模型(即每个层有一个输入/输出),按深度划分的层非常相似,但对于非线性模型(如初始网络)则不同。在这里,层将按深度分组。
如果在深度
n
中有一个输出到两个层的层,您将在深度
n+1
的列表中找到这两个新层,而不是未分组的
模型.layers

len(model.layers_by_depth)