|ImageNet训练再创纪录,EfficientNet异军突起,ResNet:感受到了威胁( 三 )
学习率规划
为了在使用大批量时保持模型质量 , 作者还采用了学习率预热和线性缩放技术 。
在保持epoch数固定的同时增加全局批量大小将导致更新权重的迭代数较少 。 为了解决这个问题 , 作者将线性缩放规则应用于批次中每256个样本的学习率 。
但是 , 较高的学习率会导致发散 。 因此 , 作者还应用了学习率预热 , 其中训练以较小的初始学习率开始 , 并在可调整的时期内逐渐提高学习率 。 此外 , 作者比较了各种学习速率规划 , 例如指数衰减和多项式衰减 , 发现对于LARS优化器 , 多项式衰减计划可实现最高的准确率 。
分布式评估
评估循环的执行是EfficientNet的标准云TPU实现的另一个计算瓶颈 , 因为评估和训练循环是在单独的TPU上执行的 。
在传统的TPUEstimator中 , 评估是在单独的TPU上进行的 , 训练的执行速度要比评估快 , 导致端到端时间很大程度上取决于评估时间 。
为了克服这个问题 , 作者利用Kumar等人所述的分布式训练和评估循环 。 它在所有TPU上分配了训练和评估步骤 , 并允许扩展到更大数量的副本 。
分布式批处理归一化
作者使用Ying等人提出的方案 , 通过将副本的子集分组在一起 , 在副本之间分布批处理归一化 。 这种优化可通过权衡TPU之间的通信成本来提高最终精度 。 分组在一起的副本数是可调超参数 。
最终的批次归一化批次大小(每个副本子集中的样本总数)也会影响模型质量以及收敛速度 。 对于大于16的副本子集 , 作者还探索了将副本分组在一起的二维切片方法 。
精度
目前已经观察到 , 使用bfloat16浮点格式来训练卷积神经网络可以达到甚至超过使用传统单精度格式(例如fp32)训练的网络的性能 , 这可能是较低精度的正则化效果所致 。
作者实现了混合精度训练 , 以利用bfloat16的性能优势 , 同时仍保持模型质量 。 在实验中 , bfloat16用于卷积运算 , 而所有其他运算都使用fp32 。 使用bfloat16格式进行卷积可提高硬件效率 , 而不会降低模型质量 。
本文插图
本文插图
推荐阅读
- 超能网|亚马逊转用自家芯片进行人工智能训练,只剩少量程序仍然以显卡来训练
- |近期必读 ICLR 2021 模型压缩&预训练相关论文
- |甘肃消防探智慧建设:智能辅助作战训练 管理延伸细节末端
- 2020双十一成绩单|科技早报 | 2020双十一成绩单公布天猫京东再创纪录 斗鱼提交退市申请或明年与虎牙合并
- 京东集团|创纪录!京东11.11下单金额2715亿 助力实体经济 服务亿万用户
- 每日经济新闻|京东双11累计下单金额2715亿创纪录,物流开放业务增长102%
- 京东|下单金额突破2431亿!京东11.11“全球热爱季”再创纪录
- |预训练语言模型:还能走多远?
- 大河风光|知乎带货实战训练营线上第2期,教您知乎带货,月收益几千到几万(无水印)
- 行业互联网|季度业绩创纪录!联想为它的智能转型,交了满意成绩单!