機器學習中的線性模型

2021-08-14 12:46:35 字數 3547 閱讀 4090

所謂線性模型就是用於**的模型是線性的,可以寫成以下的形式 y^

(w,x

)=w1

x1+⋯

+wdx

d+b

其中w=(

w1;w

2;⋯;

wd)

在有的地方也有另一種形式,比如 y^

(w,x

)=w0

+w1x

1+⋯+

wdxd

就是相當於把代表斜率的w 和

b寫在了一起,x=

(1,x

1,x2

,⋯,x

d),最後可得y^

=w∗b

基本的最小二乘的形式就是 w∗

=arg

minw∥x

w−y∥

22(1

) 就是求出令模型的平方誤差最小的w 。

對於一維的情況,就是以前在統計學中學習過的最小二乘法,下面介紹包含一維的多元線性回歸

對於乙個資料集

d其中有

m 個樣本點,每個樣本點的維度為

d,那麼我們將這個資料集表示為乙個大矩陣 x=

⎛⎝⎜⎜

⎜⎜⎜x

11x21⋮

xm1x

12x22⋮

xm2…

…⋱…x

1dx2

d⋮xm

d11⋮

1⎞⎠⎟

⎟⎟⎟⎟

=⎛⎝⎜

⎜⎜⎜⎜

xt1x

t2⋮x

tm11

⋮1⎞⎠

⎟⎟⎟⎟

⎟ 令e

w=∥x

w−y∥

22,那麼我們求ew

對w的偏導數,可得 ∂e

w∂w=

2xt(

xw−y

)當xt

x 為滿秩矩陣或者正定的時候,有 w∗

=(xt

x)−1

xty

這樣我們就解決了上面的優化問題,但是有時候xt

x 不是滿秩的就是變數數過多,或者資料量太少的時候,

w 可以有很多解,這時候需要引入正則化項,通過正則化的歸納偏好來決定另外基本的最小二乘有個很大的缺點,即使資料集的分布真的是線性的,最後的解受雜訊(或者叫離群點)的影響很大。乙個相差很大的雜訊點可以很大的影響最後的模型,這個跟平均值有點類似。對於x

,如果它的向量之間線性關係比較強,或者不是列滿秩,那麼|x

tx|∼

0 ,也就是矩陣趨於奇異的,那麼求(x

tx)−

1 就會有較大的誤差,這時候直接的最小二乘對隨機誤差非常敏感,所以我們在公式(1)中新增正則化項,得到 w∗

=arg

minw(∥

xw−y

∥22+

α∥w∥

2)(2

) 注意正則化項∥w

∥ 用的是2範數,那麼這有什麼用?

我們求解(2)可以得到 w∗

=(xt

x+αi

)−1x

ty x

tx+α

i 能夠一定程度上解決上面提到的求逆的問題。

嶺回歸的性質:

(1) α=

0 為最小二乘回歸

(2)

α 越大,

w 各個分量趨向於0

上圖為隨著

α增大(從右往左),

w 各個分量的變化情況,稱為嶺跡圖。在實際中可以選擇乙個嶺跡相對比較平穩,然後最後的誤差變化不太大的引數作為

α的值。

綜合來看,嶺回歸就是通過放棄部分的資訊和精度,獲得更合理的結果,更好的數值穩定性。嶺回歸是一種有偏估計。

lasso的形式和嶺估計非常類似,只是正則化項從2範數變成了1範數 w∗

=arg

minw(∥

xw−y

∥22+

α∥w∥

1)(3

) lasso可以產生更為稀疏的解,就是隨著

α 的增長,

w 中一直可能會產生0。

下面兩幅圖描述了嶺回歸和lasso的解的分布,圖中的

β就是本文中的w

上圖是嶺回歸的解的情況,解就是等高線和圓相切的地方

上圖是lasso的解的情況,可以看到有乙個分量為0,這就是解的稀疏性的由來。

線性模型是否可以用來分類?這裡引入對數機率回歸,考慮二分類任務,輸出類別y∈

,而線性回歸產生的**值z=

wtx+

b 是實值,我們首先可以想到利用0/1階躍函式將

z 轉換為離散的類別

y。但是階躍函式不可微,所以我們使用sigmoid函式將

z 對映到0,1區間內。

sigmoid函式 y=

11+e

−z帶入z

可得 y=

11+e

−(wt

x+b)

經過變換可得 lny

1−y=

wtx+

b 將y視為樣本為正例的可能性,那麼1-y是為反例的可能性 y1

−y稱為機率,它的對數稱為對數機率即lny

1−y

所以可以看到,邏輯斯蒂模型是通過線性模型擬合輸出值的對數機率

然後我們可以得到樣本為正例的概率其實就是y,那麼有 p(

y=1|

x)=e

wtx+

b1+e

wtx+

b p(

y=0|

x)=1

1+ew

tx+b

上面我們有了表示式,然後就可以用極大似然法來估計引數,令π(

x)=p

(y=1

|x) ,並且採用將引數

b 寫進

w的寫法,即y=

wx,那麼對數似然函式為 l(

w,b)

=ln(∏

i=1n

([π(

xi)]

yi[1

−π(x

i)]1

−yi]

))=∑

i=1n

[yiln

π(xi

)+(1

−yi)

ln(1−

π(xi

))]

=∑i=

1n[y

i(wx

i)−ln

(1−e

wxi)

] 通過梯度下降或者牛頓法之類的優化演算法可以求解上面的優化問題,從而得到

w 的估計值。

以上就是列出的一些線性模型以供參考,還有其他很多的線性模型的變體,感興趣的可以進一步地查詢資料。

機器學習 線性模型

這篇文章總結了 3 種線性模型 線性回歸 對數線性回歸和邏輯斯蒂回歸 logistic regression,lr,對數機率回歸 假設資料集 d 其中 x i x x dots x y in r 也就是,資料集 d 共包含 m 個樣本,每個樣本含有 d 個屬性.線性回歸的目標是找到引數 w w 1,...

機器學習之線性模型

一 基本形式 定義 給定由d個屬性描述的示例x x1 x2 xd 其中xi是x在第i個屬性上的取值,線性模型試圖學得乙個通過屬性的線性組合來進行 的函式,即 f x w1x1 w2x2 wdxd b 一般用向量形式寫成 其中二 典型的線性模型簡介 1 線性回歸 給定資料集d 如果將上面的屬性關係更加...

機器學習筆記 線性模型

寫在前面的一些廢話 伴隨課程以及自習,學得既算系統也算零散。學校多統計,演算法講解幾近寥寥。自古以來,統計系的教授多半樂於指摘機器學習與人工智慧,但學科總又不得不與之掛鉤密切,且多隨其發展潮起潮落。內部糾紛,不足為外人道已。只有深受其紛雜概念困擾的學習者,感觸頗深。不隨時總結,建立知識庫,實在容易迷...