零基础"机器学习"自学笔记|Note8:正则化

简介: 零基础"机器学习"自学笔记|Note8:正则化

正则化


8.1 过拟合

image.png

overfit

如图,对于之前的房价问题进行了不同的拟合。第一个模型是一个线性模型,欠拟合,不能很好地适应我们的训练集;第三个模型使用更高阶的多项式进行拟合,过于强调拟合原始数据,使代价函数约等于0甚至等于。但是我们可以看出,若给出一个新的值使之预测,它将表现的很差,是过拟合,虽然能非常好地适应我们的训练集但在新输入变量进行预测时可能会效果不好;而中间的模型似乎最合适。



overfit_def

过拟合现象:如果我们使用高阶多项式,变量(特征)过多,那么这个函数能够很好的拟合训练集(代价函数约等于0),但是却会无法泛化到新的数据样本中(泛化:一个假设模型能够应用到新样本的能力)。


分类问题中也存在这样的问题:


image.png

overfit_class

就以多项式理解,  的次数越高,拟合的越好,但相应的预测的能力就可能变差。


image.png

address overfit

解决过拟合问题:


减少变量的个数:


舍弃一些变量,保留更为重要的变量。但是,如果每个特征变量都对预测产生影响。当舍弃一部分变量时,也就舍弃了一些信息。


使用一些模型选择的算法来帮忙(例如PCA)


正则化:


保留所有的变量,将一些不重要的特征的权值置为0


权值变小使得特征的参数矩阵变得稀疏,使每一个变量都对预测产生一点影响。


8.2 代价函数


上面的回归问题中如果我们的模型是:我们可以从之前的事例中看出,正是那些高次项导致了过拟合的产生,所以如果我们能让这些高次项的系数接近于0的话,我们就能很好的拟合了。


所以我们要做的就是在一定程度上减小这些参数  的值,这就是正则化的基本方法。我们决定要减少 和 的大小,我们要做的便是修改代价函数,在其中 和  设置一点惩罚。这样做的话,我们在尝试最小化代价时也需要将这个惩罚纳入考虑中,并最终导致选择较小一些的 和 。修改后的代价函数如下:


通过这样的代价函数选择出的 和  对预测结果的影响就比之前要小许多。假如我们有非常多的特征,我们并不知道其中哪些特征我们要惩罚,我们将对所有的特征进行惩罚,并且让代价函数最优化的软件来选择这些惩罚的程度。这样的结果是得到了一个较为简单的能防止过拟合问题的假设:


其中 又称为正则化参数(Regularization Parameter)


正则化参数要做的就是控制两个目标之间的平衡关系:在最小化训练误差的同时正则化参数使模型简单。


最小化误差是为了更好的拟合训练数据。


正则化参数是为了防止模型过分拟合训练数据。


经过正则化处理的模型与原模型的可能对比如下图所示:

image.png

对于我们的房屋价格预测来说,我们之前所用的非常高的高阶多项式来拟合,我们将会得到一个非常弯曲和复杂的曲线函数,现在我们只需要使用正则化目标的方法,那么你就可以得到一个更加合适的曲线,但这个曲线不是一个真正的二次函数,而是更加的流畅和简单的一个曲线。这样就得到了对于这个数据更好的假设。


image.png

theta_l

如果选择的正则化参数  过大,则会把所有的参数都最小化了,导致模型变成 ,造成欠拟合。所以对于正则化,我们要取一个合理的  的值,这样才能更好的应用正则化。


8.3 正则化线性回归


image.png

正则化线性回归

正则化线性回归的代价函数为:


对于代价函数,我们之前运用了两种学习算法,一种基于梯度下降,一种基于正规方程。


梯度下降法:

image.png


gradient

对上面的算法中  时的更新式子进行调整可得:


可以看出,正则化线性回归的梯度下降算法的变化在于,每次都在原有算法更新规则的基础上令 值减少了一个额外的值。


正规方程:


image.png

image.png

equation_2


8.4 正则化的逻辑回归模型


image.png

Regularized logistic regression

给代价函数增加一个正则化的表达式,得到代价函数:


image.png

Gradient descent

看上去同线性回归一样,但是知道 ,所以与线性回归不同。注意:


虽然正则化的逻辑回归中的梯度下降和正则化的线性回归中的表达式看起来一样,但由于两者的 不同所以还是有很大差别。


不参与其中的任何一个正则化。



相关文章
|
1天前
|
机器学习/深度学习
大模型开发:解释正则化及其在机器学习中的作用。
正则化是防止机器学习过拟合的技术,通过限制模型参数和控制复杂度避免过拟合。它包含L1和L2正则化,前者产生稀疏解,后者适度缩小参数。选择合适的正则化方法和强度对模型性能关键,常用交叉验证评估。
|
1天前
|
机器学习/深度学习 算法
【机器学习】正则化 Regularization 过拟合欠拟合
【1月更文挑战第27天】【机器学习】正则化 Regularization 过拟合欠拟合
|
1天前
|
机器学习/深度学习 测试技术
机器学习第6天:线性回归模型正则化
机器学习第6天:线性回归模型正则化
37 0
|
1天前
|
机器学习/深度学习 算法 算法框架/工具
【Python机器学习专栏】深度学习中的正则化与优化技术
【4月更文挑战第30天】本文探讨了深度学习中的正则化和优化技术,以提升模型的泛化能力和训练效率。正则化包括L1和L2正则化以及Dropout,防止过拟合。优化技术涵盖梯度下降法、动量法和Adam优化器,加速模型收敛。Python示例展示了如何在Keras中应用这些技术,如L2正则化、Dropout及Adam优化器。
|
1天前
|
索引 机器学习/深度学习 Python
fast.ai 机器学习笔记(二)(3)
fast.ai 机器学习笔记(二)
32 0
fast.ai 机器学习笔记(二)(3)
|
1天前
|
机器学习/深度学习 算法框架/工具 PyTorch
fast.ai 机器学习笔记(三)(2)
fast.ai 机器学习笔记(三)
43 0
fast.ai 机器学习笔记(三)(2)
|
1天前
|
机器学习/深度学习 算法 计算机视觉
fast.ai 机器学习笔记(四)(4)
fast.ai 机器学习笔记(四)
22 0
fast.ai 机器学习笔记(四)(4)
|
1天前
|
机器学习/深度学习 索引 Python
fast.ai 机器学习笔记(四)(2)
fast.ai 机器学习笔记(四)
109 0
fast.ai 机器学习笔记(四)(2)
|
1天前
|
机器学习/深度学习 数据挖掘 Python
fast.ai 机器学习笔记(一)(4)
fast.ai 机器学习笔记(一)
93 1
fast.ai 机器学习笔记(一)(4)
|
1天前
|
机器学习/深度学习 Python 索引
fast.ai 机器学习笔记(一)(1)
fast.ai 机器学习笔记(一)
41 0
fast.ai 机器学习笔记(一)(1)

热门文章

最新文章