摘要:通過變分原理,將Ax=b構造成一個函數,通過對函數的操作,求解Ax=b的解。
1.通過構造函數(變分法),求解方程的解。對於常系數方程2x=2,很容易看出解為1,但是通過構造如何求解
f(x)=x^2-2x
該方程的導數f‘(x)=2x-2=0時,x的解就是2x=2的解。
對於計算機迭代求解,找到f(x)的極值點,就找到了該解。
2.變分原理(構造一個函數,其導數是Ax=b)
分解一下:下面公式是線性代數中的正定二次型(《線性代數》高等教育出版社 第五版)
偏導數(梯度)就是Ax=b
換言之,當w(x)取得極值的時候,對應導數=0。
3.最速梯度法(梯度下降發):利用迭代求多元二次函數的極值點。極值點的一階導數=0.
梯度下降法應用比較廣泛,當前熱點人工智能的底層勻速基礎,就是采用的這個算法。理論推導及示例這里就不啰嗦了。
參考BP神經網絡反向傳播推導:https://www.cnblogs.com/liuhuacai/p/11973036.html
4.共軛梯度下降法:
公式推導就不貼出來了(貼出來也很費解),直接用一個實例,進行說明。
1.先判斷這個值是否是極值點,偏導數是否是零(近似數)
2.在初始值的基礎上,x向什么方向移動,可以使函數的值變小(不斷迭代,尋找最小值)
當步長a=1/3時 w(x)向更小值移動一步。
重復上面的步驟,可得到w(x)的極小值點,也就是Ax=b的解。
【理論推導 ,見《數值分析》】