1. 程式人生 > >機器學習(3)——多變量線性回歸

機器學習(3)——多變量線性回歸

function 包括 ade each pop text times value 應該

【一、多變量線性回歸模型】

多變量線性回歸是指輸入為多維特征的情況。比如:

技術分享
在上圖中可看出房子的價格price由四個變量(size、number of bedrooms、number of floors 、age of home)決定。為了能夠預測給定條件(四個變量)下的房子的價格(y),我們須要建立對應的線性回歸模型。

如果有n個變量,則對應的多變量線性回歸模型例如以下:

技術分享

註意上圖中的x是指一個訓練樣本,即每一個訓練樣本都是一個(n+1)維向量(包括附加的x0=1)

【二、代價函數】

多變量線性回歸的代價函數例如以下:
技術分享
當中x(i)代表第i個樣本

【三、梯度下降法尋找最佳theta】

技術分享
以下列出單變量線性回歸梯度下降法(左)多變量線性回歸梯度下降法(右)
技術分享
當中α為學習率。

【梯度下降法的兩個細節處理】:
1. Feature Normalization

By looking at the values, note that house sizes are about 1000 times the number of bedrooms. When features differ by orders of magnitude, first performing feature scaling can make gradient descent converge much more quickly。

也就是說當特征之間相差非常大時。比如房子的大小與臥室的數量。這樣會導致梯度下降收斂比較慢。例如以下圖(左邊)所看到的,當對特征進行正規後,梯度下降收斂變快,例如以下圖(右邊)所看到的。


技術分享
正規化方法能夠使用mean value and the standard deviation 法。或者其它方法。
技術分享
2. Selecting learning rates

學習率的正確選擇應該保證每一步叠代後cost function都是下降的。例如以下圖所看到的:

技術分享
如果學習率α過大,可能會使得代價函數上升,而不是一直呈現下降趨勢。例如以下圖。


技術分享
可是學習率α過小,那個梯度下降的收斂速度會太慢。

【選取學習率的方法】
技術分享

【四、正規方程解最佳theta】

技術分享

技術分享 。j=0,1,…………n

技術分享

技術分享
註意出現下列情況時:

技術分享

這時能夠進行冗余feature的刪除

機器學習(3)——多變量線性回歸