机器学习——过拟合问题、正则化解决法

过拟合的基本概念

欠拟合:假设函数没有很好的拟合训练集数据,也称这个假设函数有高偏差;

过拟合:过拟合也称为高方差。在假设函数中添加高阶多项式,让假设函数几乎能完美的拟合每个样本数据点,这看起来很好,但这可能会造成函数太过庞大,变量太多的问题,我们没有足够的数据约束它,以获得一个很好的假设函数。也就是说,有可能因为训练集数据量不够,导致训练出来的模型不够精确,即在训练集现有的数据中,模型可以完美的拟合每个数据,但是一旦加入一个新的数据,该模型就不能很好的拟合。过度拟合的问题会在变量过多的时候出现。

过拟合问题会导致模型的泛化能力差,所谓泛化,就是一个假设模型应用到新样本的能力

线性回归过拟合的例子

逻辑回归(logistic)过拟合的例子

过拟合问题的解决办法

  • 第一种是尽量少的选择特征变量,在能解决问题的前提下,选择的特征变量越少越好,舍弃掉没有用的,或者关系不大的。可以人工进行筛选,也可以通过后面的模型选择中自动选择特征变脸
  • 第二种是正则化,保留所有的特征变量,但是减少量级或参数θj的大小,这种方法很有用,因为有些时候我们希望保留所有特征变量(因为它们都蕴含了一定的信息),此时就可以用到正则化

正则化

基本思想

如下图,给θ3和θ4增加惩罚项,下面右图中的粉红色曲线,就是最终得到的二次项的代价函数

如果将所有参数θ都增加一个惩罚项,就相当于尽量去简化假设模型(即假设函数),因为这些参数都接近0时,原有的假设函数会变得简单一点,如上面的例子,当θ3和θ4接近于0时,由原来的三次项函数得到一个二次项函数。总之,参数的值越小,得到的函数就会越平滑,也越简单,因此,更不容易出现过拟合的问题

个人理解:从例子中可以看出,我们所缩小的参数θ3和θ4,是特征变量x3和x4的系数,而x3和x4刚好是高阶项,说明这两个变量对问题答案的影响度较低,而让θ3和θ4的值尽量小从而去尽量弱化它们甚至消掉它们(θ3和θ4为0时),其实也可以看做是在减少选取的特征变量,但是毕竟θ3和θ4只是约为0,所以x3和x4还是存在的,也就是保留了所有的特征变量,从而保留了它们蕴含的信息

基本概念

正则化参数λ的作用:控制两个目标之间的平衡关系,第一个目标就是更好的去拟合训练集数据;第二个目标就是将所有参数θ控制的更小从而使假设模型相对简单,避免出现过拟合的情况的目标。

如果正则化参数λ被设的太大,结果就是对所有的θ参数惩罚太大,换句话就是让所有θ参数都接近为0,而此时假设函数的所有特征变量xi就会被消掉,最后只剩下一个θ0x0,这两个还都是我们自定义的,最后的结果就是假设函数只剩下一个常数值,函数图像为一条水平线,很显然,这时候就是欠拟合的状态。所以应该选择一个合适的λ值,具体的选择方法在下面内容中会说到

图中的蓝色图像是用高阶多项式来拟合出现的过拟合情况,如果还想保留所有特征的高阶项,只需要利用正则化后的代价函数(如上图中J(θ)),就可以得到粉红色的函数图像,这个粉红色曲线不是二次函数,但是相对蓝色来说更平滑、更简单,粉红色的函数对数据给出了一个更好的假设模型

线性回归的正则化

梯度下降法

绿色框部分,也就是把θj往0的方向缩小了一点点

正规方程法

建立一个m*(n+1)维的设计矩阵X,X矩阵中的每一行代表了一个单独的训练样本

建立一个m维的向量y,它包含了训练集里的所有标签

上面正规方程推导不简单,所以我选择记住结果

logistic回归(逻辑回归)的正则化

逻辑回归中的过拟合问题(上面一开始说的是线性回归中的过拟合)

梯度下降法

更高级优化算法最小化代价函数

看视频后半部分 → 更高级优化算法最小化代价函数

今天发现一个宝藏网站!!!里面有很多关于AI的教程,包括正在看的这个视频的笔记,后面不自己记了,太费时间了!!!

AI学习教程网站

相关推荐
达柳斯·绍达华·宁2 分钟前
CNN中的平移不变性和平移等变性
人工智能·神经网络·cnn
技术无疆1 小时前
【Python】Streamlit:为数据科学与机器学习打造的简易应用框架
开发语言·人工智能·python·深度学习·神经网络·机器学习·数据挖掘
xuehaishijue1 小时前
红外画面空中目标检测系统源码分享
人工智能·目标检测·计算机视觉
羊小猪~~1 小时前
机器学习/数据分析--用通俗语言讲解时间序列自回归(AR)模型,并用其预测天气,拟合度98%+
人工智能·python·机器学习·数据挖掘·数据分析·回归·时序数据库
浊酒南街1 小时前
吴恩达深度学习笔记:卷积神经网络(Foundations of Convolutional Neural Networks)2.7-2.8
人工智能·深度学习·神经网络
DuoRuaiMiFa2 小时前
ChatGPT全新功能Canvas上线:开启智能编程与写作新篇章
人工智能·chatgpt
DisonTangor2 小时前
Windows 11将新增基于AI的搜索、生成式填充和其它AI功能
人工智能
soso19682 小时前
【AI自然语言处理应用】通过API调用通义晓蜜CCAI-对话分析AIO应用
人工智能·自然语言·ccai
网安-搬运工2 小时前
RAG再总结之如何使大模型更好使用外部数据:四个不同层级及查询-文档对齐策略
人工智能·自然语言处理·大模型·llm·大语言模型·ai大模型·rag