从零实现 Kronecker 因子化近似曲率 (KFAC)
机器学习
2025-07-08 v1
摘要
Kronecker 因子化近似曲率 (KFAC) 通常被视为深度学习中最突出的曲率近似方法之一。其应用范围涵盖优化、贝叶斯深度学习、训练数据归因(利用影响函数)以及模型压缩或合并。虽然 KFAC 的直觉易于理解,但其实现却繁琐:它存在多种变体,在将数学公式转化为代码时容易踩坑,且测试困难,这使确保实现正确性变得棘手。部分作者本身面临这些挑战,感受到无法完全测试代码的困扰。得益于对 KFAC 最近的理解进展,我们现已能够提供测试用例并为可靠的 KFAC 实现提供配方。本教程旨作为 KFAC 的自底向上介绍。与现有工作不同,我们侧重于在数学与代码层面并行呈现,并基于最新对 KFAC 见解所散见于文献中的测试用例。我们希望本教程能为初学者提供 KFAC 的当代视角,降低其在实际中实现、扩展和使用的门槛,从而加深对这一曲率近似方法的理解。
引用
@article{arxiv.2507.05127,
title = {Kronecker-factored Approximate Curvature (KFAC) From Scratch},
author = {Felix Dangel and Bálint Mucsányi and Tobias Weber and Runa Eschenhagen},
journal= {arXiv preprint arXiv:2507.05127},
year = {2025}
}