在Caffe原型文本中,每一层都包括" top"或"底部"用于指定图层之间连接的参数。然而,有时会出现例如" top"是层本身(为什么我们必须将它链接到自身?)或者有几个" top"层。 " top"的确切含义是什么?和"底部"参数和使用它们的规则?
答案 0 :(得分:12)
层和blob之间存在混淆。
在Caffe中,所有数据都以blob的形式表示。每个图层接收零个或多个blob,转换它们,并发出零个或多个blob。例如,ReLU层接受带有数据的单个blob,应用函数f(x) = x if x>0, 0 otherwise
,并将结果输出为单个blob。分类问题的数据层通常有两个输出blob,一个用于数据,另一个用于标签,没有输入blob。
blob可视化,就像它们从底部到顶部穿过网络一样。因此,输入blob称为底部blob,输出blob称为顶部blob。
现在,在原型文本定义中,name
属性存储图层的名称。 bottom
属性存储输入blob的名称。 top
属性存储输出blob的名称,为方便起见,通常将其视为与图层名称相同。如果该层有多个输入blob,则有多个bottom
属性,如果有多个输出blob,则有多个top
属性。
答案 1 :(得分:3)
在Caffe: