PyHessian:通过Hessian的视角审视神经网络
机器学习
2021-04-21 v3 数值分析
数值分析
摘要
我们提出PYHESSIAN,一个全新的可扩展框架,能够快速计算深度神经网络的Hessian(即二阶导数)信息。PYHESSIAN支持快速计算Hessian最大特征值、Hessian迹以及完整的Hessian特征值/谱密度,并支持在云/超级计算机系统上进行分布式内存执行,且作为开源软件提供。该通用框架可用于分析神经网络模型,包括损失景观的拓扑结构(即曲率信息),从而深入理解不同模型/优化器的行为。为说明这一点,我们分析了残差连接和Batch Normalization层对神经网络可训练性的影响。近期一项基于较简单一阶分析的研究声称,残差连接和Batch Normalization使损失景观更平滑,从而让随机梯度下降(Stochastic Gradient Descent)更容易收敛到良好解。我们广泛的的分析给出了更精细的见解,表明虽然传统认知有时得到验证,但在其他情况下则完全错误。特别地,我们发现Batch Normalization未必使损失景观更平滑,尤其是对于较浅的网络。
引用
@article{arxiv.1912.07145,
title = {PyHessian: Neural Networks Through the Lens of the Hessian},
author = {Zhewei Yao and Amir Gholami and Kurt Keutzer and Michael Mahoney},
journal= {arXiv preprint arXiv:1912.07145},
year = {2021}
}