正则化
过拟合问题
对于模型,如果一个模型对于数据的偏差很大,不能能够很好的拟合数据的分布,称为欠拟合,或者说这个算法具有高偏差的特性。
如果一个模型虽然可以穿过所有的数据点,但是其图像波动很大,其同样也不能描述数据的分布,(其数据的分布是无法被泛化处理),称为过拟合,或者说这个算法具有高方差的特性。 在这种情况下,模型的参数过于多(有可能代价函数正好为0),以至于可能没有足够多的数据去约束它来获得一个假设函数。
过拟合现象往往会发生在参数过多,而训练样本过少的情况。减小过拟合现象的思路有两种:
代价函数的正则化
对于代价函数:
n
θ
1
2
Σ
=
1
(
θ
(
(
)
)
−
(
)
)
2
min_{θ} frac{1}{2m} Sigma_{i=1}^{m}(h_θ(x^{(i)})-y^{(i)})^2
minθ2m1Σi=1m(hθ(x(i))−y(i))2
1000
θ
3
2
1000θ32和
1000
θ
4
2
1000θ42,
代价函数变为:
m
i
n
θ
1
2
m
Σ
i
=
1
m
(
h
θ
(
(
i
)
)
−
(
i
)
)
2
+
1000
θ
3
2
+
1000
θ
4
2
min_{θ} frac{1}{2m} Sigma_{i=1}^{m}(h_θ(x^{(i)})-y^{(i)})^2+1000theta^2_3+1000theta^2_4
minθ2m1Σi=1m(hθ(x(i))−y(i))2+1000θ32+1000θ42
如果要最小化这个函数,
那么
θ
3
θ3与
θ
4
θ4就要尽可能的接近0,
那么最后拟合的结果(假设函数):
θ
0
+
θ
1
+
θ
2
x
2
+
θ
3
x
3
+
θ
4
x
4
theta_0+theta_1x+theta_2x^2+theta_3x^3+theta_4x^4
θ0+θ1x+θ2x2+θ3x3+θ4x4,
仍然是一个类似的二次函数.
正则化的基本思想是如果所有的参数足够小,那么假设模型就更简单。
x
1
.
.
x
100
x_1..x_{100}
x1..x100和
θ
0
.
.
.
θ
100
θ0…θ100,
我们无法确定哪些参数是高阶项的参数,这个时候采用的方法就是对代价函数进行修改,使得所有的参数都尽可能的小。
修改后的代价函数方程:
J
θ
=
1
2
m
[
Σ
i
=
1
m
(
h
θ
(
x
(
i
)
)
−
y
(
i
)
)
2
+
λ
Σ
j
=
1
m
θ
j
2
]
J_{theta}=frac{1}{2m}[Sigma_{i=1}^{m}(h_θ(x^{(i)})-y^{(i)})^2+λSigma_{j=1}^{m}theta_j^2]
Jθ=2m1[Σi=1m(hθ(x(i))−y(i))2+λΣj=1mθj2]
其中
λ
Σ
j
=
1
m
θ
j
2
λΣj=1mθj2称为正则化项,它的目的是为了缩小每一项的参数。
θ
0
theta_0
θ0是否正则化对结果影响不大
λ的作用是对“+”号的前后(前:更好的拟合训练集,后:假设函数足够简单)两项进行取舍平衡,称为正则化系数
如果λ被设置的太大,那么所有参数的惩罚力度被加大,这些参数最后的结构都将全部接近于0,那么最后的假设函数将会变成
h
θ
(
x
)
=
θ
0
h_theta(x)=θ_0
hθ(x)=θ0,最终导致欠拟合。
原文地址:https://blog.csdn.net/2201_75381449/article/details/134734315
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_24960.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!