GoogLeNet 输出日志中test部分的loss的理解

对GoogLeNet 输出日志中的loss的理解

在GoogLeNet 网络进行训练时,日志文件中输出如下内容,该内容是在训练过程中的测试部分输出的(即test过程)

I0423 16:33:20.838305 19680 solver.cpp:404] Test net output #0: loss1/loss1 = 0.870371 (* 0.3 = 0.261111 loss)
I0423 16:33:20.838305 19680 solver.cpp:404] Test net output #1: loss1/top-1 = 0.696777
I0423 16:33:20.838305 19680 solver.cpp:404] Test net output #2: loss1/top-5 = 1
I0423 16:33:20.853930 19680 solver.cpp:404] Test net output #3: loss2/loss1 = 0.815625 (* 0.3 = 0.244688 loss)
I0423 16:33:20.853930 19680 solver.cpp:404] Test net output #4: loss2/top-1 = 0.677441
I0423 16:33:20.853930 19680 solver.cpp:404] Test net output #5: loss2/top-5 = 1
I0423 16:33:20.853930 19680 solver.cpp:404] Test net output #6: loss3/loss3 = 1.04691 (* 1 = 1.04691 loss)
I0423 16:33:20.853930 19680 solver.cpp:404] Test net output #7: loss3/top-1 = 0.589551
I0423 16:33:20.853930 19680 solver.cpp:404] Test net output #8: loss3/top-5 = 1

看到这么多loss,突然间就蒙圈了,这么多,到底哪个是真正意义上的loss值。不要慌,慢慢来!

1.找到来源
首先我们先要知道 loss1/loss1 、loss1/top-1、loss1/top-5、loss2/loss1、loss2/top-1、loss2/top-5、loss3/loss3、loss3/top-1、loss3/top-5 这9个值是怎么来的。
如果仔细观察网络结构和train_val.prototxt文件,不难发现,其实这9个值是网络中的层的top(即输出),如下图所示。
GoogLeNet 输出日志中test部分的loss的理解图一

GoogLeNet 输出日志中test部分的loss的理解图二
GoogLeNet 输出日志中test部分的loss的理解图三

2.理解其意义
(1)首先要知道GoogLeNet网络结构中为了避免梯度消失,在中间的两个位置加了两个softmax损失层(图一和图二,loss1 和 loss2),所以整个网络会有三个loss值,整个网络的loss是通过三个loss乘上权重相加后得到(权值分别为0.3/0.3/1)。
(2)其次理解层类型:type: “SoftmaxWithLoss” 和 type: “Accuracy”。
SoftmaxWithLoss 也就是 softmax-loss layer,其输出loss值,即损失值。
Accuracy 顾名思义 “精度”,其输出分类(预测)精确度,只有TEST阶段才有,因此需要加入include参数。
(3) 最后理解top-1和top-5
其实这两个词常见于某网络模型在ImageNet数据集上的准确率,又叫做top-1准确率和top-5准确率。
top-1 准确率是指排名第一的类别与实际结果相符的准确率,
top-5 准确率是指排名前五的类别包含实际结果的准确率。
可以看到我的输出中 loss1/top-5、loss2/top-5、loss3/top-5的值都是1,其实在训练过程中从一开始这三个值都是1,原因很简单,我的任务是二分类。

3.总结
网络结构图如图四所示
GoogLeNet 输出日志中test部分的loss的理解图四

个人认为在训练时我们还是要更多的关注loss3/loss3、loss3/top-1这两个值
1.网络最终的输出为loss3/loss3,并且loss3/loss3的权重为1,证明其更具有意义,其为真正意义上的loss值。(即我们关注的Loss)
2.loss3/top-1给出了最终层排名第一的类别与实际结果相符的准确率。 (即我们关注的Accuracy)

作者:GL3_24
来源:CSDN
著作权归作者所有。转载请联系作者获得授权。