实验目的
实验步骤
此次实验要求采用共轭梯度下降来解决二次优化问题,在解决此问题前,首先分析下什么是共轭梯度法,共轭梯度法能解决什么问题。
我们来看一个线性方程组Ax=b,求解此方程组的过程可以看成是形如公式(1)的优化问题:
arg min x ∥ A x − b ∥ 2 … … … … … … … … … … … … … … … … ( 1 ) \mathop{\arg\min_{x}} \parallel Ax-b\parallel^2…………………………………………(1) argxmin∥Ax−b∥2…………………………………………(1)
其又可转化为公式(2):
∥ A x − b ∥ 2 = ( A x − b ) T ( A x − b ) = x T A T A x − 2 b T A x + ∥ b ∥ 2 … … … ( 2 ) \parallel Ax-b\parallel ^2 =(Ax-b)^T (Ax-b)=x^T A^T Ax-2b^T Ax+\parallel b\parallel ^2………(2) ∥Ax−b∥2=(Ax−b)T(Ax−b)=xTATAx−2bTAx+∥b∥2………(2)
令 H = A T A , g = b T A , H 正 定 , H=A^T A,g=b^T A,H正定, H=ATA,g=bTA,H正定,
则上述优化问题等价于公式(3):
arg min x f ( x ) = 1 2 x T H x − g T x … … … … … … … … … … … … … … ( 3 ) \mathop{\arg\min_{x}}f(x)=\frac{1}{2} x^T Hx-g^T x……………………………………(3)