1. 程式人生 > >(三)用Normal Equation擬合Liner Regression模型

(三)用Normal Equation擬合Liner Regression模型

繼續考慮Liner Regression的問題,把它寫成如下的矩陣形式,然後即可得到θ的Normal Equation.

  Normal Equation: θ=(XTX)-1XTy

  當X可逆時,(XTX)-1XTy = X-1,(XTX)-1XTy其實就是X的偽逆(Pseudo inverse)。這也對應著Xθ = y ,θ = X-1y

考慮特殊情況 XTX 不可逆

解決辦法:

1)考慮是否有冗餘的特徵,例如特徵中有平方米,還有平方釐米,這兩個特徵就是冗餘的,解決辦法是去掉冗餘

2)再有就是n<<m,其中n 為特徵數,m為樣本數,比如說用10個樣本去學習100個引數的問題,這種情況的解決辦法是去feature或者進行Regularization

總結:Gradient descent VS Normal Equation

上圖可以看出梯度下降需要選擇引數a,並且要多次迭代,有點事特徵非常多時,依然正常工作

 而Normal Equation 不用選擇a,並且不用迭代,只需計算X的偽逆即可,當n很大時,設計到非常大的n×n浮點矩陣運算,當然會很耗時,所以n很大時最好選擇Gradient Descent。