標準方程的證明
線性迴歸模型公式(第i個實例的預測值yi^):
yi^=θ0+θ1xi,1+θ2xi,2+...+θnxi,n
轉化成矩陣:
yi^=[1xi,1xi,2⋯xi,n]⎣⎢⎢⎢⎢⎢⎡θ0θ1θ2⋮θn⎦⎥⎥⎥⎥⎥⎤
簡化爲:
yi^=xiTθ
誤差公式爲:
MSE(θ)=m1i=1∑m(y^i−yi)2=m1i=1∑m(xiTθ−yi)2
設:
c=⎣⎢⎢⎢⎡x1Tθ−y1x2Tθ−y2⋮xmTθ−ym⎦⎥⎥⎥⎤=⎣⎢⎢⎢⎡x1Tθx2Tθ⋮xmTθ⎦⎥⎥⎥⎤−⎣⎢⎢⎢⎡y1y2⋮ym⎦⎥⎥⎥⎤=⎣⎢⎢⎢⎡x1Tx2T⋮xmT⎦⎥⎥⎥⎤θ−y=Xθ−y
則:
MSE(θ)=m1∥c∥2=m1∥Xθ−y∥2
MSE(θ)要取到最小值,則對MSE(θ)=MSE(θ0,θ1,⋯,θn)=E,相當於求解該多變量函數梯度爲0的點,梯度向量爲E函數對θ的偏導數:
∂θ∂E=[∂θ0∂E∂θ1∂E⋯∂θn∂E]
由矩陣的求導法則及下一節證明出的公式可證:
設g(θ)=Xθ−y=u,則
f(u)=MSE(θ)=m1∥g(θ)∥2=m1∥u∥2
∂θ∂MSE(θ)=∂θ∂f(u)=∂u∂f(u)∂θ∂u=∂u∂m1∥u∥2∂θ∂Xθ−y=m1∂u∂uTuX=m2uTX
則求解梯度全爲0時θ的值θ^:
m2(Xθ^−y)TX=0
θ^TXTX−yTX=0
θ^T=yTX(XTX)−1
θ^=(XTX)−1XTy
本質上來說是矩陣求導的應用,特殊多項式求最小值,該計算涉及到求逆操作,對n×n矩陣的求逆的計算複雜度通常爲O(n2.4)到O(n3)之間,當特徵數量比較大時(例如100000時),標準方程的計算會極其緩慢