摘要: 本文讲述了从在fast.ai库中读论文,到根据论文复制实验并做出改进,并将改进后的开源代码放入fast.ai库中。

介绍
去年我发现MOOC网上有大量的Keras和TensorKow教学视频,之后我从零开始学习及参加一些Kaggle比赛,并在二月底获得了fast.ai国际奖学金。去年秋天,当我在全力学习PyTorch时,我在feed中发现了一条关于新论文的推文:“平均权重会产生更广泛的局部优化和更好的泛化。”具体来说,就是我看到一条如何将其添加到fast.ai库的推文。现在我也参与到这项研究。
在一名软件工程师的职业生涯中,我发现学习一门新技术最好的方法是将它应用到具体的项目。所以我认为这不仅可以练习提高我的PyTorch能力,还能更好的熟悉fast.ai库,也能提高我阅读和理解深度学习论文的能力。
作者发表了使用随机加权平均(SWA)训练VGG16和预激活的Resnet-110模型时获得的改进。对于VGG网络结构,SWA将错误率从6.58%降低到6.28%,相对提高了4.5%,而Resnet模型则更明显,将误差从4.47%减少到3.85%,相对提高了13.9%。
论文
背景
随机加权平均(SWA)方法来自于集成。集成是用于提高机器学习模型性能的流行的技术。例如,ensemble算法获得了Nekix奖,因为Netkix过于复杂不适用于实际生产,而在像Kaggle这样的竞争平台上,集成最终性能表现结果可以远