Alex_McAvoy

想要成为渔夫的猎手

Broyden 族

Reference

【DFP 与 BFGS 的关系】

对于 DFP 算法来说,其迭代式为:

Dk+1=Dk+δkδkTδkTykDkykykTDkykTDkyk,k=0,1,2,...

利用在 BFGS 算法 中提到的 Sherman-Morrison-Woodbury 公式,对其两边进行求逆(证明过程与 BFGS 中相似),可得:

Dk+11=Dk1(ykTBk1ykykTδk+1)δkδkTykTδkDk1ykδkTykTδkδkykTDk1ykTδk

对于 BFGS 算法来说,其迭代格式为:

Bk+1=Bk+ykykTykTδkBkδkδkTBkδkTBkδk,k=0,1,2,...

BFGS 算法 中,详细证明了使用 Sherman-Morrison-Woodbury 公式后得到的蕴含 Bk+11Bk1 的关系式的 BFCS 算法的迭代式,即:

Bk+11=Bk1(ykTBk1ykykTδk+1)δkδkTykTδkBk1ykδkTykTδkδkykTBk1ykTδk

拟牛顿迭代法 中,介绍了拟牛顿条件,其对牛顿法迭代过程中的海森矩阵 Hk+1 进行约束,规定用 B 表示对海森矩阵 H 本身的近似,用 D 表示对海森矩阵的逆 H1 的近似,即:

BH,DH1

因此,有:

B1=D

此时再看 DFP 和 BFGS 迭代式与其求逆后的迭代式,可以发现,双方高度对称,只需令 δkykBkDk,即可在 DFP 和 BFGS 之间相互转换

因此,DFP 与 BFGS 互为对偶

【Broyden 族】

既然 DFP 与 BFGS 互为对偶,那么在具体应用中,选择哪一个会更好?

一个基本的思路是通过若干组实验来测试哪个算法在模型训练过程中更优,或对其进行收敛验证,但这无疑会耗费大量的时间

为此,Broyden 提出了一种较为简易的思路,即将 DFP 的迭代式与 BFGS 的迭代式进行正加权组合

将由 DFP 算法的迭代式得到的 Dk+1 记作 Gk+1DFP,即:

Gk+1DFP=Dk+1=Dk+δkδkTδkTykDkykykTDkykTDkyk,k=0,1,2,...

再将使用 Sherman-Morrison 公式后的 BFGS 算法的迭代式得到的 Gk+1 记作 Gk+1BFGS,即:

Gk+1BFGS=Gk+1=(IδkykTykTδk)Gk(IykδkTykTδk)+δkδkTykTδk

由于 Gk+1DFPGk+1BFGS 均满足拟牛顿条件,那么它们的线性组合也满足拟牛顿条件,且是正定的,故有:

Gk+1ϕ=ϕkGk+1DFP+(1ϕk)Gk+1BFGS,0ϕ1

ϕk=0 时,Gk+1ϕ 为 BFGS 校正,ϕk=1 时,Gk+1ϕ 为 DFP 校正

随着 ϕk 遍历 [0,1] 的值,就可以得到一系列的 Gk+1ϕ,这一系列的 Gk+1ϕ 的集合被称为 Broyden 族

感谢您对我的支持,让我继续努力分享有用的技术与知识点!

Gitalking ...