机器学习中使用正则化来防止过拟合是什么原理?

从知乎整理而来

1

过拟合是一种现象。当我们提高在训练数据上的表现时,在测试数据上反而下降,这就被称为过拟合,或过配。

过拟合发生的本质原因,是由于监督学习问题的不适定:在高中数学我们知道,从n个(线性无关)方程可以解n个变量,解n+1个变量就会解不出。在监督学习中,往往数据(对应了方程)远远少于模型空间(对应了变量)。因此过拟合现象的发生,可以分解成以下三点:
  1. 有限的训练数据不能完全反映出一个模型的好坏,然而我们却不得不在这有限的数据上挑选模型,因此我们完全有可能挑选到在训练数据上表现很好而在测试数据上表现很差的模型,因为我们完全无法知道模型在测试数据上的表现。
  2. 如果模型空间很大,也就是有很多很多模型可以给我们挑选,那么挑到对的模型的机会就会很小。
  3. 与此同时,如果我们要在训练数据上表现良好,最为直接的方法就是要在足够大的模型空间中挑选模型,否则如果模型空间很小,就不存在能够拟合数据很好的模型。

由上3点可见,要拟合训练数据,就要足够大的模型空间;用了足够大的模型空间,挑选到测试性能好的模型的概率就会下降。因此,就会出现训练数据拟合越好,测试性能越差的过拟合现象。

过拟合现象有多种解释,
  • 经典的是bias-variance decomposition,但个人认为这种解释更加倾向于直观理解;
  • PAC-learning 泛化界解释,这种解释是最透彻,最fundamental的;
  • Bayes先验解释,这种解释把正则变成先验(L1正则是laplace先验,l2是高斯先验,分别由参数sigma确定),在我看来等于没解释。

另外值得一提的是,不少人会用“模型复杂度”替代上面我讲的“模型空间”。这其实是一回事,但“模型复杂度”往往容易给人一个误解,认为是一个模型本身长得复杂。例如5次多项式就要比2次多项式复杂,这是错的。因此我更愿意用“模型空间”,强调“复杂度”是候选模型的“数量”,而不是模型本事的“长相”。

最后回答为什么正则化能够避免过拟合:因为正则化就是控制模型空间的一种办法。

2

过拟合表现在训练数据上的误差非常小,而在测试数据上误差反而增大。其原因一般是模型过于复杂,过分得去拟合数据的噪声和outliers. 正则化则是对模型参数添加先验,使得模型复杂度较小,对于噪声以及outliers的输入扰动相对较小。 以正则化项和损失函数都是l_2 norm 为例,下面贴一张上课用的slide.

这里写图片描述
我们相当于是给模型参数w 添加了一个协方差为1/alpha 的零均值高斯分布先验。 对于alpha =0,也就是不添加正则化约束,则相当于参数的高斯先验分布有着无穷大的协方差,那么这个先验约束则会非常弱,模型为了拟合所有的训练数据,w可以变得任意大不稳定。alpha越大,表明先验的高斯协方差越小,模型约稳定, 相对的variance也越小。

也正如其他答题者所说, 加入正则化是 在bias和variance之间做一个tradeoff.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 正则化是一种用于限制模型复杂度的正则化技术,它使学习算法更健壮,更稳定,更可靠。它通过向模型添加附加项(正则化项),以降低模型复杂度。正则化项可以是L1正则化(Lasso正则化)或L2正则化(Ridge正则化)等。 ### 回答2: 在机器学习正则化是一种通过在模型的损失函数引入惩罚项来避免过拟合的技术。其原理是通过约束模型的复杂度,使得模型更加简单而具有较好的泛化能力。 正则化主要有两种形式:L1正则化和L2正则化。L1正则化引入了模型参数的绝对值之和作为惩罚项,即通过最小化损失函数和正则化项的和来寻找最优解。L2正则化则引入了模型参数的平方和作为惩罚项,即通过最小化损失函数和正则化项的和来寻找最优解。 正则化原理是通过对模型参数进行约束,可以使得某些参数趋近于0,从而实现特征选择和降低模型复杂度的目的。L1正则化倾向于产生稀疏解,即只有部分参数非0,从而实现特征选择,有助于模型的解释性。而L2正则化则倾向于参数趋近于0而非完全为0,可以降低模型的复杂度,并避免过拟合正则化可以有效地控制模型的复杂度,在训练过程通过平衡拟合程度和模型复杂度来选择最优解。当正则化力度较大时,模型会更加关注减小正则化项,从而更加趋向于简单的模型。当正则化力度较小时,模型会更加关注拟合训练数据,可能导致过拟合。 总之,正则化机器学习用于避免过拟合、提高模型泛化能力的重要技术。通过限制模型的复杂度,正则化可以提高模型的性能和稳定性。 ### 回答3: 机器学习正则化是一种通过添加惩罚项来控制模型复杂度的技术。正则化的目的是防止模型过拟合(overfitting),即在训练数据上表现优秀但在新数据上表现较差的情况。 正则化原理是在模型的损失函数,加入一个额外的惩罚项,以限制模型参数的取值范围。这个惩罚项可以是L1正则化(L1 regularization)或者L2正则化(L2 regularization)。 L1正则化通过在损失函数加入模型参数的绝对值之和乘以一个超参数lambda的惩罚项,使得模型参数趋向于稀疏化。通过L1正则化,可以使得模型自动选择重要的特征,并且减少不相关或冗余特征的影响。 L2正则化通过在损失函数加入模型参数的平方之和乘以一个超参数lambda的惩罚项,使得模型参数的取值更加平滑。通过L2正则化,可以减小模型参数的大小,并且降低模型对训练数据的噪声的敏感性。 正则化原理是在训练模型时,通过调整惩罚项的权重,平衡拟合训练数据和控制模型复杂度之间的关系。正则化在一定程度上约束了模型的自由度,使得模型更加稳定、泛化能力更强,从而能够更好地适应新数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值