neural-network - Caffe 中的多个精度层

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

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

但是,当我运行 GoogleNet 示例时,我可以看到几个精度层的结果。 CNN 中怎么会有多个精度层?有多个损失层是可以理解的,但是多个精度值意味着什么?我在学习过程中得到了几个准确度图。类似于此图片:learning process
lossX-top1lossX-top5表示精度层。我从 prototxt 中了解到,这些评估了前 1 名和前 5 名精度值,但是 lossX 精度层是什么?

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

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

最佳答案

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

关于neural-network - Caffe 中的多个精度层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32966517/

相关文章:

python - 使用tensorflow对句子相似度建模

Caffe 无法在 ubuntu 15.04 上构建

machine-learning - caffe LayerSetUp 和 Reshape?

machine-learning - 在 caffe 中测试回归网络

python - 使用OpenCV检测图像中的盒子

machine-learning - 神经网络盲猜

machine-learning - 在 Weka 中为 XOR 情况训练多层感知器的分步指南?

neural-network - 如何在卷积网络中使用 im2col 操作更有效?

neural-network - OpenAI 健身房的月球着陆器模型未收敛

python - 在 TensorFlow 中完成训练过程后使用 predict() 方法