6

我正在尝试使用 nVidia DIGITS 和 Caffe 对大量图像进行分类。当我使用标准网络和我构建的网络时,一切正常。

但是,当我运行 GoogleNet 示例时,我可以看到几个精度层的结果。CNN 中如何有多个准确度层?有多个损失层是可以理解的,但是多个准确度值是什么意思呢?我在学习过程中得到了几个准确度图。类似于这张图:学习过程

和表示精度层lossX-top1lossX-top5我从prototxt了解到这些评估前 1 和前 5 的准确度值,但是 lossX 准确度层是什么?

尽管其中一些图收敛到 98% 左右,但当我在 上手动测试经过训练的网络时'validation.txt',我得到的值明显较低(对应于较低的三个准确度图)。

有人可以对此有所了解吗?怎么会有多个具有不同值的精度层?

4

1 回答 1

4

如果您仔细观察,'train_val.prototxt'您会注意到确实有几个精度层在不同级别从主要“路径”分支出来。loss1inception 4aloss2之后进行评估,在之后评估,inception 4d并且loss3是网络顶部的损失。将损失(和准确度层)引入深度网络的中间表示允许在训练期间更快的梯度传播。这些中间精度衡量了中间表示的收敛程度。

于 2015-10-06T10:36:35.510 回答