不过,为什么要训练6个小时?看着loss图像下降得那么平缓,我怀疑是学习率设低了。paper里经常用的0.1学习率是针对paper里面提到的loss设置的,这次我用了自定义的loss,学习率也应该改一下再使用。
于是我把学习率从0.1改成了1,最开始那段收敛加速了10倍,可怜了我宝贵的时间。。。
提一点: 根据Yoshua Bengio教授提出的 XXXXXXXXXXXXXXXXX/abs/1301.4083,带有指导、循序渐进的学习(又称大纲学习, curriculum learning)能使误差函数的梯度相比直接端到端学习变得更加平滑,从而加速学习的过程,极大降低在学习过程中陷入局部最优的概率,对于某些问题则能够极大节省网络容量和训练时间。
我这次设计的heat map学习也体现了这一点:由于使用的误差函数与位置相关,网络很快就能搞明白需要识别的特征有哪些、在哪里,从而极大地加速收敛。这就类似小朋友用手指指着某个物体,问大人那是什么,从而有针对性地学习其特征。换句话讲,如果ImageNet的classification允许通过人工方法将所有的概念在图中指给神经网络看,我认为top-5误差完全可以降低到接近1%,而且也不用跑一遍等几天,而应该是几个小时就好。
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |