您的位置:首页 > 其它

动手学深度学习——task3过拟合、欠拟合以及解决方案、梯度消失和梯度爆炸

2020-03-05 06:44 555 查看

过拟合和欠拟合的概念

过拟合:模型训练误差远小于在测试数据集上的误差,也就是说数据在训练时模型的预测效果好,但是在测试的数据上(要预测的新数据)不能很好的进行预测。
欠拟合:模型无法得到较低的训练误差,也就是说,在训练数据的过程中,就不能很好的对数据进行预测。

主要因素模型复杂度和训练数据集大小

模型复杂度

为了解释模型复杂,以简单多项式函数拟合为例。给定一个由标量数据特征 x 和对应的标量标签 y 组成的训练数据集,多项式函数拟合的目标是找一个 K 阶多项式函数来近似 y 。


在上式中, wk 是模型的权重参数, b 是偏差参数。与线性回归相同,多项式函数拟合也使用平方损失函数。特别地,一阶多项式函数拟合又叫线性函数拟合。
给定训练数据集,模型复杂度和误差之间的关系(泛化误差也就是测试误差):

训练数据集大小

如果训练数据集中样本数过少,特别是比模型参数数量(按元素计)更少时,过拟合更容易发生。此外,泛化误差不会随训练数据集里样本数量增加而增大。因此,在计算资源允许的范围之内,通常训练数据集大一些,特别是在模型复杂度较高时,例如层数较多的深度学习模型。

过拟合问题解决

权重衰减:L2范数正则化

正则化通过为模型损失函数添加惩罚项使学出的模型参数值较小,防止过拟合最常用的方法。

丢弃法

多层感知机中神经网络图描述了一个单隐藏层的多层感知机。其中输入个数为4,隐藏单元个数为5,且隐藏单元 hi ( i=1,…,5 )的计算表达式为:

这里 ϕ 是激活函数, x1,…,x4 是输入,隐藏单元 i 的权重参数为 w1i,…,w4i ,偏差参数为 bi 。当对该隐藏层使用丢弃法时,该层的隐藏单元将有一定概率被丢弃掉。设丢弃概率为 p ,那么有 p 的概率 hi 会被清零,有 1−p 的概率 hi 会除以 1−p 做拉伸。丢弃概率是丢弃法的超参数。具体来说,设随机变量 ξi 为0和1的概率分别为 p 和 1−p 。使用丢弃法时我们计算新的隐藏单元 h′i:

由于 E(ξi)=1−p ,因此:

即丢弃法不改变其输入的期望值。让我们对之前多层感知机的神经网络中的隐藏层使用丢弃法,一种可能的结果如图所示,其中 h2 和 h5 被清零。这时输出值的计算不再依赖 h2 和 h5 ,在反向传播时,与这两个隐藏单元相关的权重的梯度均为0。由于在训练中隐藏层神经元的丢弃是随机的,即 h1,…,h5 都有可能被清零,输出层的计算无法过度依赖 h1,…,h5 中的任一个,从而在训练模型时起到正则化的作用,并可以用来应对过拟合。在测试模型时,为了拿到更加确定性的结果,一般不使用丢弃法。

梯度消失和梯度爆炸

深度模型有关数值稳定性的典型问题是消失(vanishing)和爆炸(explosion)。

参考资料:https://www.boyuai.com/elites/course/cZu18YmweLv10OeV/lesson/XbYzc5g5mn52F9z5rvBR8b

  • 点赞
  • 收藏
  • 分享
  • 文章举报
小小的小小婷 发布了5 篇原创文章 · 获赞 1 · 访问量 67 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: