什么是' top' caffe中的参数

时间:2015-09-23 16:11:32

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

我正在尝试运行一个caffe Experiment.I我在我的Train.prototxt中使用了以下丢失层,

layer {
  name: "loss"
  type: "SoftmaxWithLoss"
  bottom: "ip2"
  bottom: "label"
  include {
    phase: TRAIN
  }
}

我看到培训开始时显示以下配置,

  

I0923 21:19:13.101313 26423 net.cpp:410]损失< - ip2
  I0923 21:19:13.101323 26423 net.cpp:410]损失< - 标签
  I0923 21:19:13.101339 26423 net.cpp:368]损失 - > (自动)

我没有在损失层中给出top参数 究竟自动(损失 - >(自动))在这里意味着什么?

提前致谢!

1 个答案:

答案 0 :(得分:8)

Caffe图层(包括Loss图层)会生成Blob(4-D数组)作为其计算的输出。如果未通过top参数设置Blob名称,则相应的Blob将添加到网络的“输出”中。

这意味着,如果你调用Net::forward()方法,它将返回一个Blob列表,即那些无限制的另一个层的输入。

当您调用Caffe培训工具时,它会自动打印到这样的Blob屏幕。通过这种方式,您可以在培训期间遵循损失或准确的价值。