逻辑回归 正则化

正则化

过拟合问题

对于模型,如果一个模型对于数据的偏差很大,不能能够很好的拟合数据的分布,称为欠拟合,或者说这个算法具有高偏差的特性。

如果一个模型虽然可以穿过所有的数据点,但是其图像波动很大,其同样也不能描述数据的分布,(其数据的分布是无法被泛化处理),称为过拟合,或者说这个算法具有高方差的特性。 在这种情况下,模型的参数过于多(有可能代价函数正好为0),以至于可能没有足够多的数据去约束它来获得一个假设函数。

过拟合现象往往会发生在参数过多,而训练样本过少的情况。减小过拟合现象的思路有两种:

  1. 尽可能的去掉那些影响因素很小的变量,这种方法虽然解决了过拟合问题,但是损失了精度。
  2. 正则化(Regularization)

代价函数的正则化

对于代价函数:
m i n θ 1 2 m Σ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 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\theta^2_3 1000θ32和 1000 θ 4 2 1000\theta^2_4 1000θ42,

代价函数变为:
m i n θ 1 2 m Σ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 + 1000 θ 3 2 + 1000 θ 4 2 min_{θ} \frac{1}{2m} \Sigma_{i=1}^{m}(h_θ(x^{(i)})-y^{(i)})^2+1000\theta^2_3+1000\theta^2_4 minθ2m1Σi=1m(hθ(x(i))−y(i))2+1000θ32+1000θ42

如果要最小化这个函数,

那么 θ 3 \theta_3 θ3与 θ 4 \theta_4 θ4就要尽可能的接近0,

那么最后拟合的结果(假设函数):
θ 0 + θ 1 x + θ 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 \theta_0...\theta_{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 λ\Sigma_{j=1}^{m}\theta_j^2 λΣj=1mθj2称为正则化项 ,它的目的是为了缩小每一项的参数

θ 0 \theta_0 θ0是否正则化对结果影响不大

λ的作用是对"+"号的前后(前:更好的拟合训练集,后:假设函数足够简单)两项进行取舍平衡,称为正则化系数

如果λ被设置的太大,那么所有参数的惩罚力度被加大,这些参数最后的结构都将全部接近于0,那么最后的假设函数将会变成 h θ ( x ) = θ 0 h_\theta(x)=θ_0 hθ(x)=θ0,最终导致欠拟合。

相关推荐
pianmian11 小时前
python数据结构基础(7)
数据结构·算法
Power20246663 小时前
NLP论文速读|LongReward:基于AI反馈来提升长上下文大语言模型
人工智能·深度学习·机器学习·自然语言处理·nlp
好奇龙猫3 小时前
【学习AI-相关路程-mnist手写数字分类-win-硬件:windows-自我学习AI-实验步骤-全连接神经网络(BPnetwork)-操作流程(3) 】
人工智能·算法
数据猎手小k3 小时前
AndroidLab:一个系统化的Android代理框架,包含操作环境和可复现的基准测试,支持大型语言模型和多模态模型。
android·人工智能·机器学习·语言模型
sp_fyf_20243 小时前
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-11-01
人工智能·深度学习·神经网络·算法·机器学习·语言模型·数据挖掘
香菜大丸4 小时前
链表的归并排序
数据结构·算法·链表
jrrz08284 小时前
LeetCode 热题100(七)【链表】(1)
数据结构·c++·算法·leetcode·链表
oliveira-time4 小时前
golang学习2
算法
知来者逆4 小时前
研究大语言模型在心理保健智能顾问的有效性和挑战
人工智能·神经网络·机器学习·语言模型·自然语言处理
老艾的AI世界5 小时前
新一代AI换脸更自然,DeepLiveCam下载介绍(可直播)
图像处理·人工智能·深度学习·神经网络·目标检测·机器学习·ai换脸·视频换脸·直播换脸·图片换脸