多特徵線性迴歸

有多個特徵的線性迴歸就是我們常說的多變量線性迴歸。我們先申明一些數學標記的含義:

x(i)j 代表第i個樣本中第j個特徵
x(i) 代表第i個樣本的所有特徵
m 代表訓練樣本個數
n 代表特徵個數

模型的多變量形式如下:

hθ(x)=θ0+θ1x1+θ2x2++θnxn

爲了便於理解,我們可以抽象一種情形,θ0 代表房屋的基本價格,θ1 代表每平米的價格,θ2 代表每層的價格,x1 代表房屋面積,x2 代表房屋層數。

通過矩陣乘法,多項式可以寫成矩陣的形式:

hθ(x)=[θ0θ1θ2θn]x0x1x2xn=θTx

成本函數(代價函數)可以寫作:

J(θ0,θ1,,θn)=12mi=1m(hθ(x(i))y(i))2

對單個θj 進行梯度下降有:

θjθj:=θjαθjJ(θ):=θjα1mi=1m(hθ(x(i))y(i))x(i)j

實用技巧——特徵縮放(feature scaling)
動機:保證特徵在相似的範圍內
特徵範圍差異大會極大減緩收斂速度,梯度下降的迭代過程中會出現震盪現象。
例如:
x1 表示房屋面積(0-2000)平方米
x2 表示臥室數量(1-5)

x1x2=size(feet2)2000=number of bedroom5

如果我們想把特徵範圍控制在[-1, 1]之間,可以進行以下變化:

xi:=xiμisi

其中μi 是特徵i的均值,si 是特徵的範圍值(max - min)。

學習率選擇
如果學習率太小,梯度下降會收斂的很慢;
如果學習率太大,每次迭代J(θ) 反而會增大,導致無法收斂。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章