ResNet学习中遇到的问题
1.原网络和更深的网络是否一定会有好的结果?
答:从理论上来说,假设新增加的层都是恒等映射,只要原有的层学出跟原模型一样的参数,那么深模型结构就能达到原模型结构的效果。换句话说,原模型的解只是新模型的解的子空间,在新模型解的空间里应该能找到比原模型解对应的子空间更好的结果。但是实践表明,增加网络的层数之后,训练误差往往不降反升。
2.深度网络的退化问题?理由是什么?
答:Degradation problem:网络深度增加时,网络准确度出现饱和,甚至出现下降。
3.退化问题为什么不是过拟合?
答:过拟合是训练精度非常好,而测试精度不行;而这不会是过拟合问题,因为56层网络的训练误差也很高。
4.现在学习的和之前学习的区别在哪里?
答:之前学习的y是一个映射,现在学习的是y-x,也就是残差。
5.为什么残差更容易学习?
答:梯度更明显,残差大小都一样,区别就是分母。普通网络分母是y,是学到的x;而残差网络学到的是上一步的残差y-x,分母更小。
6.Top-1错误率和Top-5是什么错误率?
答:ImageNet有大概1000个分类,而模型预测某张图片时,会给出1000个按概率从高到低的类别排名,所谓的Top-1 Accuracy是指对一个图片,如果概率最大的是正确答案,才认为正确,而Top-5 Accuracy是指对一个图片,判断概率排名前五中是否包含正确答案。
7.体现resnet和vgg的主要差别的一行代码在哪里?
答:residual = x。 而vgg是没有这一行的。