Daniela Witten作者陈萍、杜伟编辑

双下降真实发生,UW教授用统计学解释偏差-方差权衡,LeCun转推

偏差—方差之间的权衡判读对机器学习来说是非常重要的。在深度学习研究中,可能会遇到双下降现象,认为这有悖于偏差—方差权衡。本文通过一个统计学的例子,对偏差—方差权衡展开了形象的解读。

8 月初,华盛顿大学统计学与生物统计学教授 Daniela Witten 在推特上发帖介绍了「偏差 - 方差权衡」与「双下降」之间的关系。这个帖子一经发出便收获了很多点赞与转发。

AI 大咖 Yann LeCun 也转发了该贴,他高度称赞了 Daniela Witten 教授对「双下降」现象的解读。LeCun 写道:「这是对双下降现象非常直观的解释。当模型能力『恰好』能够产生零训练误差时,该现象导致测试误差达到峰值。并且,峰值不会出现在多层网络中,因为它们呈现隐式正则化。」


Daniela Witten 教授的解读究竟有哪些独到之处呢?她开篇是这样介绍的:「还记得偏差—方差权衡吗?它意味着模型在中等程度灵活性条件下表现良好。图中可以看到 U 形测试误差曲线。我们试图找到灵活性的『最佳点』(Sweet Spot)」。


独到的偏差 - 方差权衡解读

上文中的 U 型测试误差曲线基于以下公式:


随着灵活性的增加,(平方)偏差减少,方差增加。「sweet spot」需要权衡偏差和方差,即具有中等程度灵活性的模型。

偏差 - 方差权衡不成立吗?

过去的几年中,尤其是在深度学习领域,已经出现双下降现象。当你继续拟合越来越灵活且对训练数据进行插值处理的模型时,测试误差会再次减小!


深度学习的背景下,这一点似乎尤为突出(不过,正如我们看到的,这种情况在其他地方也会发生)。到底是怎么回事?偏差—方差权衡是否成立?教科书都错了吗?或者是深度学习的魔力?

深度学习的双下降现象,偏差 - 方差权衡成立

在这篇帖子里,Daniela Witten 教授给出了合理的解释。为了理解深度学习的双下降现象,她列举了一个与深度学习无关的简单示例:自然三次样条曲线(natural cubic spline)。

首先介绍一下什么是样条曲线?本质上,这是一种拟合模型 Y=f(X)+epsilon 的方法,f 是非参数的,由非常光滑的分段多项式构成。

为了拟合样条曲线,Daniela 等人创建了一些基函数,然后通过最小二乘法将响应(response)Y 拟合到基函数上。所用基函数的数量与样条曲线的自由度(degrees of freedom, DF)相同。基函数基本形式如下:


假设 n=20(X, Y),并且想用样条曲线 Y = f(X)+ epsilon 估计 f(X)(此处 f(X)= sin(X)) 。

首先,Daniela 等人拟合了一个 4DF 的样条曲线。n=20 时的观测值为灰色小圆点,f(x) 为黑色曲线,拟合函数为浅蓝色曲线。


然后拟合了一个 6DF 的样条曲线。


接着尝试拟合 20DF 的样条曲线,这不是一个好主意。因为得到了 n=20 的观测值,所以为了拟合 20DF 的样条曲线,需要用 20 个特征来运行最小二乘法!结果显示在训练集上零误差,但在测试集上误差非常大!这些糟糕的结果也非常符合偏差 - 方差权衡的预测。


虽然在 20DF 的测试结果非常差,但 Daniela 等人还是进行了 n=20,p=36DF 时的最小二乘法拟合。

这时 p>n,解是不唯一的。为了在无穷多个解中进行选择,Daniela 等人选择了「最小」范数拟合:系数平方和最小的那个(使用了大家最喜欢的矩阵分解 SVD,以实现轻松计算)


下图为 n=20,p=36DF 的拟合结果。


欣慰的是,结果并没有预期的那么糟。下图对比了 20DF 和 36DF 的结果,可见 36DF 的结果比 20DF 要好一点。这是什么原因呢?


下图是训练误差和测试误差曲线,两者的变化曲线差别非常大。以虚线为分界线,当 p>n 时,为什么测试误差(暂时)减少?这难道就是偏差 - 方差权衡所指的对立面吗?


Daniela 等人给出了合理的解释:关键在于 20DF,n=p 时,只有一个最小二乘拟合的训练误差为零。这种拟合会出现大量的振荡。

但是当增加 DF,使得 p>n 时,则会出现大量的插值最小二乘拟合。最小范数的最小二乘拟合是这无数多个拟合中振荡最小的,甚至比 p=n 时的拟合更稳定。

所以,选择最小范数最小二乘拟合实际上意味着 36DF 的样条曲线比 20DF 的样条曲线的灵活性差。

现在,如果在拟合样条曲线时使用了脊惩罚(ridge penalty),而不是最小二乘,结果会怎么样呢?这时将不会有插值训练集,也不会看到双下降,而且会得到更好的测试误差(前提是正确的调整参数值!)

总结

所以,这些与深度学习有何关系?当使用(随机)梯度下降法来拟合神经网络时,实际上是在挑选最小范数解!因此,样条曲线示例非常类似于神经网络双下降时发生的情况。

因此双下降是真实发生的,并不是深度学习魔法。通过统计 - ML 和偏差 - 方差权衡可以理解它。一切都不是魔法,只是统计在发挥作用。

原文链接:
https://threadreaderapp.com/thread/1292293102103748609.html

理论Yann LeCun偏差方差
1
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

范数技术

范数(norm),是具有“长度”概念的函数。在线性代数、泛函分析及相关的数学领域,是一个函数,其为向量空间内的所有向量赋予非零的正长度或大小。半范数反而可以为非零的向量赋予零长度。

最小二乘法技术

最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。 利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。 “最小二乘法”是对过度确定系统,即其中存在比未知数更多的方程组,以回归分析求得近似解的标准方法。在这整个解决方案中,最小二乘法演算为每一方程式的结果中,将残差平方和的总和最小化。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

梯度下降技术

梯度下降是用于查找函数最小值的一阶迭代优化算法。 要使用梯度下降找到函数的局部最小值,可以采用与当前点的函数梯度(或近似梯度)的负值成比例的步骤。 如果采取的步骤与梯度的正值成比例,则接近该函数的局部最大值,被称为梯度上升。

插值技术

数学的数值分析领域中,内插或称插值(英语:interpolation)是一种通过已知的、离散的数据点,在范围内推求新数据点的过程或方法。求解科学和工程的问题时,通常有许多数据点借由采样、实验等方法获得,这些数据可能代表了有限个数值函数,其中自变量的值。而根据这些数据,我们往往希望得到一个连续的函数(也就是曲线);或者更密集的离散方程与已知数据互相吻合,这个过程叫做拟合。

正则化技术

当模型的复杂度增大时,训练误差会逐渐减小并趋向于0;而测试误差会先减小,达到最小值后又增大。当选择的模型复杂度过大时,过拟合现象就会发生。这样,在学习时就要防止过拟合。进行最优模型的选择,即选择复杂度适当的模型,以达到使测试误差最小的学习目的。

矩阵分解技术

矩阵分解是一种将矩阵简化为其组成部分的方法。这种方法可以简化更复杂的矩阵运算,这些运算可以在分解的矩阵上执行,而不是在原始矩阵本身上执行。它的衍生Non-negative matrix factorization也被用于降维等操作上。

推荐文章
暂无评论
暂无评论~