前端之家收集整理的这篇文章主要介绍了
机器学习笔记_07正则化(Regularization),
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
七、正则化
7.1 过拟合的问题
参考视频: 7 - 1 - The Problem of Overfitting (10 min).mkv
过拟合如何处理:
1. 丢弃不能帮助我们正确预测的特征。
2. 正则化。保留所有的特征,但是减少参数的大小。
7.2 代价函数
参考视频: 7 - 2 - Cost Function (10 min).mkv
正则化的基本方法:在一定程度上减小参数
θ
的值。
修改后的代价函数:
J(θ)=12m[∑@H_301_98@i=1m((hθ@H_502_145@(xi)−yi)2+λ∑@H_301_98@j=1nθ2j)]
λ
@H_283_
301@\lambda : 正则化参数 regularization parameter
如果选择的正则化参数
λ
过大,则会把所有的参数都最小化了,导致模型变成
@H_404_333@hθ(x)@H_301_360@=θ0
,是一条红线,造成欠拟合。
7.3 正则化线性回归
参考视频: 7 - 3 - Regularized Linear Regression (11 min).mkv
对于线性回归的求解,我们之前推导了两种学习算法:一种基于梯度下降,一种基于正规方程。
正则化线性回归的代价函数为:
@H_440_
404@
J(θ)=12m[∑@H_301_98@i=1m(hθ@H_330_502@(xi)−yi)2+λ∑@H_301_98@j=1nθ2j]
如果我们要使用梯度下降令这个函数最小化,
θ0
不需要正则化,所以梯度下降算法将分为两种情形:
Repeat until convergence {
θ0:=θ0−α1m∑((hθ(xi)−yi)∗xi0)@H_404_849@
θj:=θj−α1m∑((hθ(xi)−yi)∗xij+λmθj)@H_404_849@
(for j = 1,2,…,n)
}
对上面的算法中j = 1,n时的更新式子进行调整可得:
θj:=θj(1−αλm)−α1m∑@H_301_98@i=1m(hθ(xi)−yi)@H_670_1301@xij
用正规方程来求解正则化线性模型:
θ=(XTX+λ⎡⎣⎢⎢⎢⎢⎢⎢⎢0@H_124_1502@1@H_301_1534@1..1⎤⎦⎥⎥⎥⎥⎥⎥⎥)−1XTy
图中的矩阵尺寸为(n+1)*(n+1)。
7.4 正则化的逻辑回归模型
参考视频: 7 - 4 - Regularized Logistic Regression (9 min).mkv
逻辑回归增加一个正则化的表达式后的代价函数:
J(θ)=−[1m∑@H_301_98@i=1m(yi∗log@H_403_1976@(hθ(xi))+(1−yi)∗log(1@H_404_2056@−hθ(xi)))]+λ2m∑@H_301_98@j=1nθ2j
要最小化该代价函数,通过求导,得出梯度下降算为:
Repeat until convergence{
θ0:=θ0−α1m∑@H_301_98@@H_676_2301@i=1n((hθ(xi)−yi)∗xi@H_679_2403@0)
θj:=θj−α1m∑@H_301_98@i=1n((hθ(xi)−yi)∗xj0+λmθj)
for j = 1,n
}
注:
看上去同线性回归一样,但是知道
hθ(x)=g(θTX)
,所以与线性回归不同。
注意: 1.虽然正则化的逻辑回归中的梯度下降和正则化的线性回归中的表达式看起来一样,但 由于两者的 h(x)不同所以还是有很大差别。 2. θ0 不参与其中的任何一个正则化。