当前位置: 首页 > news >正文

过拟合、归一化、正则化、鞍点

过拟合

过拟合的本质原因往往是因为模型具备方差很大的权重参数

定义一个有4个特征的输入X,特征向量为[x_1,x_2,x_3,x_4],定义一个模型,其只有4个参数,表示为[w_1,w_2,w_3,w_4]。当模型过拟合时,这四个权重参数的方差会很大,可以假设为[w_1=0,w_2=1,w_3=12,w_4=2]。当X经过这个模型后,产生输出x_1*0+x_2*1+x_3*12+x_4*2,由输出可知,这个模型过分地强调了特征x_3的影响,从而导致模型的输出结果由x_3主导,因为其对应的权重参数w_3很大。这样会使得模型的容错很小,即泛化很差,只要特征x_3稍有波动,模型的输出结果就会产生很大地变化。这就是过拟合的本质现象。

归一化

归一化是从特征本身出发,解决过拟合现象

同样考虑输入X=[x_1=1,x_2=3,x_3=16,x_4=1],模型参数W=[w_1,w_2,w_3,w_4]。在进行梯度下降时,模型输出Y对模型参数的梯度分别为,\frac{\partial Y}{\partial w_1}=x_1=1,\frac{\partial Y}{\partial w_2}=x_2=3,\frac{\partial Y}{\partial w_3}=x_3=16,\frac{\partial Y}{\partial w_4}=x_4=1,很容易发现,x_3对应的权重参数w_3的梯度最大,在梯度更新时,输出Y偏向于沿w_3方向更新,从而导致模型收敛后,w_3与其它参数的差异较大,进而发生过拟合。同时整个梯度方向大幅度偏向w_3方向,使得梯度下降的路线成“之”字形,到达收敛点的迭代次数会变多。

这种现象是由于X的特征方差过大,特征之间的分布差异过大。为了解决这种现象,就需要将X的特征分布转化成方差为1,均值为0的分布,减小特征分布差异。

当被归一化处理后的X作为模型输入时,每个权重参数的梯度相差不大,使得每个权重参数的更新步幅基本一致,当模型收敛后,权重参数的方差就会很小

正则化

为了防止模型权重参数的方差过大,从而引起过拟合。正则化是从权重参数出发,解决过拟合现象。

不管模型有多复杂,输入的每个特征值在模型中都会与特定的权重参数相乘或相加,这就使得每个权重参数在前向传播或反向传播时,只与输入的部分特征值有关。如果权重参数分布差异大,就会导致对输入的每个特征产生不平衡的注意力倾斜,最终的输出结果就会由权值较大的参数主导,那些权值较小的参数就将变得毫无作用,因为有无它们都对输出结果产生不了影响。正则化就是要消除这种差异性,使得所有权重参数都同样重要(也会存在差异,只是这种差异被转化到了一个很小的量纲中了,被削弱了),且尽可能小

常用的L2正则化会使得每个权重参数趋近于0,使得输入的所有特征值都显得同样重要,这时如果输入中存在异常的特征值(值很大),由于其对应的权重参数都很小,接近于0,它也不会对模型的输出造成太大的影响。

另外,L2正则化能够减小数据分布不同带来的影响。假设存在数据集A和B,A和B的分布不同。当模型在A数据集上训练好后,模型的权重参数将匹配A的特征分布。如果不用正则化进行训练,模型在B数据集上的表现会很差,这是因为权重参数的分布已经匹配上了A的特征分布,如果模型接受一个与A分布差异太大的B,就会使得模型输出结果产生很大的偏差。如果使用了L2正则化,每个权重参数都很小,就会使得这种偏差不那么大,从而提高泛化能力

鞍点

鞍点(Saddle point)在微分方程中,沿着某一方向是稳定的,另一条方向是不稳定的奇点,叫做鞍点。在泛函中,既不是极大值点也不是极小值点的临界点,叫做鞍点。在矩阵中,一个数在所在行中是最大值,在所在列中是最小值,则被称为鞍点。在物理上要广泛一些,指在一个方向是极大值,另一个方向是极小值的点。

模型越复杂(参数量越多),鞍点就越多,训练时收敛在鞍点的可能性就越大。因为鞍点既不是局部最优点,更不是全局最优点,所以越复杂的模型达到最优点的速度越慢,因为它们很大可能被困于鞍点。

相关文章:

  • java中的List集合去重
  • springBoot接入文心一言
  • 计算机视觉与深度学习 | 基于Matlab的钢筋计数
  • spark的堆外内存,是在jvm内还是操作系统内存内?
  • 什么是ISO20000认证,认证ISO20000有什么好处?重要意义
  • Pytest 自动化测试框架详解
  • 【物联网-RS-485】
  • MySQL InnoDB存储引擎中的日志系统解析:binlog、redo log、undo log
  • 笔记:代码随想录算法训练营day67:Floyd 算法精讲、A * 算法精讲 (A star算法) 严重超时完结,不过,撒花
  • HTML5+CSS前端开发【保姆级教学】+超链接标签
  • 如何保证本地缓存和redis的一致性
  • GEO全域优化白皮书:盈达科技如何打造AI生态中的认知护城河
  • 林纳斯·托瓦兹:Linux系统之父 Git创始人
  • Python 类方法
  • C2000 ADC和DAC实验
  • Java 开发工具:从 Eclipse 到 IntelliJ IDEA 的进化之路
  • leetcode36.有效的数独
  • 大数据面试问答-Spark
  • LeetCode 1922题解(快速幂模板题)
  • 9.thinkphp的请求
  • 专访|韩国世宗研究所中国研究中心主任:李在明若上台将推行均衡外交
  • 寒武纪陈天石:公司的产品力获得了行业客户广泛认可,市场有望迎来新增量需求
  • 长沙查处疑似非法代孕:有人企图跳窗,有女子被麻醉躺手术台
  • 从“求生”到“生活”:医保纳入创新药让梗阻性肥厚型心肌病患者重拾生活掌控权
  • 李在明正式登记参选下届韩国总统
  • 上海证监局规范辖区私募经营运作,6月15日前完成自评自纠