對於線性回歸演算法,容易出現欠擬合,而多項式回歸又容易出現過擬合。因此出現了區域性加權回歸y(
i)=θ
t⋅x(
i)和線性回歸的模型相同,但是對於每乙個**點,
θ 都需要重新計算,並不是固定不變的。l(
θ)=1
2m∑i
=1mw
i(yi
−θtx
i)2
wi=e
xp(−
|xi−
x|22
k2)
對於**點x,wi
表示xi
與x的距離,如果兩者距離近,則wi
=1,如果兩者較遠,則wi
=0。k則控制wi
的衰減快慢。所以損失函式可以理解為對**點附近樣本點進行線性回歸運算。
區域性線性加權演算法需要對每乙個**樣本點重新計算權值。
我們的優化目標是:
minθl(
θ) ∂
l∂θ=
−1m∑
i=1m
wi(y
i−θt
xi)x
i=−1
mxt⎛
⎝⎜⎜⎜
w1(y
i−θt
xi)⋯
wm(y
i−θt
xm)⎞
⎠⎟⎟⎟
=−1m
xtw(
y−xθ
) 因此迭代公式為 θ:=
θ−λ1
mxtw
(xθ−
y)其中w為斜對角矩陣令 ∂
l(θ)
∂θ=0
得 θ=
(xtw
x)−1
xtwy
區域性加權回歸在每一次**新樣本時都會重新的確定引數,從而達到更好的**效果。
對於區域性加權線性回歸演算法,每次進行**都需要全部的訓練資料(每次進行的**得到不同的引數θ),沒有固定的引數θ,所以是非引數演算法。
當資料規模比較大的時候計算量很大,學習效率很低。並且區域性加權回歸也不是一定就是避免underfitting。
非引數學習演算法,每進行一次**,就需要重新學習一組 , 是變化的,所以需要一直保留訓練樣本。也就是說,當訓練集的容量較大時,非引數學習演算法需要占用更多的儲存空間,計算速度也較慢。
lwlr 區域性加權線性回歸
根據 機器學習實戰 中的phthon 改編而來,詳細說明參見原書,測試資料都是用的原書資料 主程式 lwlr test.m clc clear 高斯核波長 k 0.01 讀取資料,fid fopen ex0.txt r dataset zeros 1,3 m size dataset,1 while...
區域性加權線性回歸
簡單來說,這個過程其實是在先擬合出一條曲線,然後再用這個曲線去 需要 的點。但是如果這個曲線擬合得不好 或者說樣本資料含有大量噪音 那麼這個 結果就會很差。區域性加權線性回歸 對於乙個資料集合 x0,y0 x1,y1 xm,ym 我們 它在x點時對應的y值時,如果採用的是傳統的 線性回歸模型,那麼 ...
區域性加權線性回歸
區域性加權線性回歸是機器學習裡的一種經典的方法,彌補了普通線性回歸模型欠擬合或者過擬合的問題。機器學習裡分為無監督學習和有監督學習,線性回歸裡是屬於有監督的學習。普通的線性回歸屬於引數學習演算法 parametric learning algorithm 而區域性加權線性回歸屬於非引數學習演算法 n...