我正在使用nVidia DIGITS和Caffe来对大量图像进行分类。当我使用标准网络和我构建的网络时,一切都很顺利。
然而,当我运行GoogleNet示例时,我可以看到几个准确度层的结果。在CNN中有多个准确度层是怎么回事?拥有多个损失层是很容易理解的,但是多个准确度值意味着什么?我在学习过程中得到了几个准确度图表。类似于这张图片:
lossX-top1
和lossX-top5
表示准确度层。我从prototxt中了解到这些评估top 1和top 5准确度值,但是lossX准确度层是什么意思?
即使其中一些图表收敛到约98%,但是当我在'validation.txt'
上手动测试训练好的网络时,我得到的值明显较低(与较低的三个准确度图表相对应)。
有人能为此提供一些解释吗?如何有多个具有不同值的准确度层?
deploy.prototxt
。 您可以决定从哪个分类器层读取类概率。 - Shaideploy.prototxt
中选择分类器?通过将层命名为“prob”吗? - Igor Ševoclassifier.py
默认输出最后一个输出层(没有其他层将其“顶部”用作“底部”...)。但是,您可以给Python分类器提供一组blob名称,并在每个“forward”传递中获得多个输出。 - Shai