先舉乙個多項式回歸的例子,當我們使用多項式回歸的時候,如果沒有對多項式的係數進行限制,擬合的模型過擬合的概率極高,所以我們需要通過一些方法限制多項式係數的變化。以下的正則化改進從損失函式,減少過擬合概率。
簡單來說,正則化是一種為了減小測試誤差的行為(有時候會增加訓練誤差)。我們在構造機器學習模型時,最終目的是讓模型在面對新資料的時候,可以有很好的表現(即增加模型的泛化能力)。當你用比較複雜的模型比如神經網路,去擬合資料時,很容易出現過擬合現象(訓練集表現很好,測試集表現較差),這會導致模型的泛化能力下降,這時候,我們就需要使用正則化,降低模型的複雜度。
這塊我只是簡單的從其他資料進行了解,以後有待完善。
l1常用於特徵選擇如上學期的lasso回歸,在存在多重共線性的特徵裡選擇;l2常用於防止模型過擬合,其中嶺回歸是乙個例子
3 線性回歸的正則化
正則化的思想就是減少高次項θ
\theta
θ (θ
)=12
m[∑i
=1m(
hθ(x
(i))
−y(i
))2+
λ∑j=
1nθj
2]
j(\theta)=\frac\left[\sum_^\left(h_\left(x^\right)-y^\right)^+\lambda \sum_^ \theta_^\right]
j(θ)=2
m1[
i=1∑
m(h
θ(x
(i))
−y(i
))2+
λj=1
∑nθ
j2]
以上公式中,λ
\lambda
λ表示正則化引數,在演算法實際執行過程中,要選擇合適的λ
\lambda
λ值,不能使其過大,否則可能會導致過擬合不能被消除,或者梯度下降演算法不收斂。
repeat
:=\theta_-\alpha \frac \sum_^\left(h_\left(x^\right)-y^\right)^ x_^
θ0:=θ
0−α
m1∑
i=1m
(hθ
(x(
i))−
y(i)
)2x0
(i)
θ j:
=θj(
1−αλ
m)−α
1m∑i
=1m(
hθ(x
(i))
−y(i
))2x
j(i)
\theta_:=\theta_\left(1-\alpha \frac\right)-\alpha \frac \sum_^\left(h_\left(x^\right)-y^\right)^ x_^
θj:=θ
j(1
−αmλ
)−α
m1i
=1∑m
(hθ
(x(
i))−
y(i)
)2xj
(i)
}可以看出每次θ
j\theta_
θj變化前都會先乘以(1−
αλm)
\left(1-\alpha \frac\right)
(1−αmλ
),從而減小。
θ =(
xtx+
λl)−
1xty
\theta=\left(x^ x+\lambda l\right)^ x^ y
θ=(xtx
+λl)
−1xt
y其中 l表示(n+1)x(n+1)的對角矩陣,其主對角線第乙個元素為0,其餘全為1.
通過增加λ
l\lambda l
λl避免矩陣xtx
x^ x
xtx不可逆的情況。
repeat
:=\theta_-\alpha \frac \sum_^\left(h_\left(x^\right)-y^\right)^ x_^
θ0:=θ
0−α
m1∑
i=1m
(hθ
(x(
i))−
y(i)
)2x0
(i)
θ j:
=θj(
1−αλ
m)−α
1m∑i
=1m(
hθ(x
(i))
−y(i
))2x
j(i)
\theta_:=\theta_\left(1-\alpha \frac\right)-\alpha \frac \sum_^\left(h_\left(x^\right)-y^\right)^ x_^
θj:=θ
j(1
−αmλ
)−α
m1i
=1∑m
(hθ
(x(
i))−
y(i)
)2xj
(i)
}不一樣的是此時hθ(
)h_()
hθ(
)表達的是simgoid函式
嶺回歸(加入正則化的線性回歸)的使用
author lei function l2正則化 解決過擬合,使得w的每個元素都很小,都接近於0 越小的引數說明模型越簡單,越簡單的模型則越不容易產生過擬合現象 線性回歸 容易出現過擬合,為了把訓練集資料表現的更好,可使用l2正則化 ridge 嶺回歸,帶有正則化的線性回歸,解決過擬合。回歸解決過...
深度學習(正則化的線性回歸和邏輯回歸)
clear clc 載入資料 x load ex5linx.dat y load ex5liny.dat 顯示原始資料 plot x,y,o markeredgecolor b marke cecolor r markersize 10 將特徵值變成訓練樣本矩陣 x ones length x 1 ...
pytorch學習筆記3 線性回歸
線性回歸線性回歸 是分析乙個變數與另外乙個 多 個變數之間關係的方法 因變數 y 自變數 x 關係 線性 y wx b 求解w,b 求解步驟 1.確定模型 module y wx b 2.選擇損失函式 mse 均方差等 3.求解梯度並更新w,b w w lr w.grad b b lr w.grad...