轉載請注明出處 http://www.cnblogs.com/gufeiyang
最小二乘是機器學習中常用的方法,比如線性回歸。本文首先簡單介紹一下過程中用到的線性代數知識,然后介紹最小二乘的矩陣推導。
定義矩陣$A$, 變量$x$, 變量$b$
$\frac{\partial x^{T}a}{\partial x}$ $=a$
$\frac{\partial x^{T}Ax}{\partial x}$ $=Ax+A^{T}x$
如果$A$是對稱的,則有
$Ax+A^{T}x=2Ax$
最小二乘的目標是:
$\min \limits_{x{\in}R} (||Ax-b||_{2})^{2}$
這個問題的本質是多變量的的二次優化問題。很容易想到的是對變量進行求導。
展開
$(||Ax-b||_{2})^{2} = (Ax-b)^{T}(Ax-b)$
$=x^{T}A^{T}Ax-b^{T}Ax-x^{T}A^{T}b+b^{T}b$
因此有
$\frac{\partial (||Ax-b||_{2})^{2}}{\partial x}$ $~=~2A^{T}Ax-2A^{T}b$,
最后得到
$x=(A^{T}A)^{-1}A^{T}b$
針對線性回歸來講,直接利用最小二乘,沒有考慮參數正則化,可能會產生過擬合。可以對參數x正則化處理,一范式正則化為lasso,二范式正則化為嶺回歸。