【问题标题】:Caffe | Unknown bottom blob after adding new layer to use trained model(fine tune)咖啡 |添加新层以使用训练模型后未知的底部斑点(微调)
【发布时间】:2016-06-20 12:34:11
【问题描述】:

我想在我的数据集上微调 bvlc_reference_caffenet 模型。 我成功地微调了模型。但现在我正在尝试再添加 2 个卷积层来检查它的性能。我尝试在"conv5" 层之后添加名称为"conv6_new""conv7_new" 的层。我复制了"conv3" 图层并将其重命名为"conv6_new" 并将"conv5" 重命名为"conv7_new"。我修改了相应的"ReLU""Pooling" 层的名称。 但我收到以下错误。
谁能建议我我在哪里犯了错误?

F0620 17:29:49.967382 14194 insert_splits.cpp:29] Unknown bottom blob 'conv7_new' (layer 'conv7_new', bottom index 0)

【问题讨论】:

  • 请附上代码

标签: machine-learning neural-network deep-learning caffe conv-neural-network


【解决方案1】:

"conv7_new" 也不能有自己的输出(“顶部”)作为输入。确保以有意义的方式重命名,不仅是图层的名称,还有"top"s 和"bottom"s:
如果你有"conv5" -> "conv6_new" -> "conv7_new" -> "fc",
那么你应该有"conv6_new"的底部是"conv5""top""conv7_new"的底部是"conv6_new""top"。最后,"fc" 的底部是新的"conv7_new" 层的"top"
请注意,我忽略了"ReLU"s,可以通过将它们的"top" 名称设置为与"bottom" 相同来“就地”计算。我也没有包括池化层。

【讨论】:

  • @Shai ..我在 "conv7_new" 中重命名了 "top"s 和 "bottom"s 。我尝试在不重命名层名称 "fc6" 和 "fc7" 的情况下采用完全连接层的训练权重我根据我的输出将最后一层重命名为“fc8_new”,即2。我收到以下错误...................... ................F0621 09:20:56.680239 16761 net.cpp:765] 无法从层“fc6”复制参数 0 权重;形状不匹配。源参数形状为 1 1 4096 9216 (37748736);目标参数形状为 4096 2304 (9437184)。
  • @shai..现在我将图层名称“fc6”重命名为“fc6_new”,“fc7”重命名为“fc7_new”,“fc8”重命名为“fc8_new”。现在我有了“conv5”- >“conv6_new”->“conv7_new”->“fc6_new”->“fc7_new”->“fc8_new”。它工作正常。但是为了获得训练有素的“fc6”和“fc7”权重。我必须在哪里做修改。你能建议我吗。
  • 谁能告诉我 FC6 或 fc6 代表什么?
  • @vanilla 对于深层网络的层有一个非官方的命名约定:conv*"Convolution" 层,而 fc*fully-c连接(又名"InnerProduct")层
  • @vanilla 我不知道关于这个主题的任何官方备忘单。 conv5_2 通常表示第 5 个“块”中的第二层 conv
猜你喜欢
  • 2015-10-01
  • 2018-05-05
  • 1970-01-01
  • 2020-11-02
  • 1970-01-01
  • 2021-10-07
  • 2017-10-22
  • 2023-03-12
  • 1970-01-01
相关资源
最近更新 更多