Advertisement

DEEP FRANK-WOLFE FOR NEURAL NETWORK OPTIMIZATION 论文阅读总结

阅读量:

DEEP FRANK-WOLFE FOR NEURAL NETWORK OPTIMIZATION 论文阅读总结

这篇论文是我为了完成模式识别课程项目而精心挑选的一篇论文。挑选它的原因在于该论文提供了GitHub上的开源代码,便于我借鉴现有的技术方案实现和对比分析。

虽然也是阅读过,并非完全没有接触过相关内容。于是进行了归纳整理工作。归纳出的内容与论文的要求不完全一致,并且其中包含了有个人观点和相关背景知识。

作为一名刚开始投身科研领域的新人,在阅读这篇论文之前我对相关领域缺乏专业知识导致诸多疑问亟需学习解答。在文章中我可能会基于已有知识进行推测或理解其中某些部分可能较为晦涩或难以把握。我的主要目的是记录自己的学术成长历程同时也希望能为同样正在阅读这篇论文的朋友们提供一些帮助与启发。如有不足之处希望大家给予指正我将及时修改以期完善思考过程

论文地址:https://arxiv.org/abs/1811.07591

github项目地址:https://github.com/oval-group/dfw

这篇论文想解决什么问题?

我们已知深度神经网络的反向传播即为损失函数最优解的搜索过程,并且目前最常用的方法被认为是随机梯度下降算法(SGD)。

但SGD也并非完美无缺,在更新权重的过程中必须设置一个合适的学习速率(learning rate)。这一参数不仅由人工设定并经过调试才能发挥作用,并且缺乏现成的公式或客观标准可供参考;然而,在算法迭代过程中逐渐减小的学习速率能够有效提升整体性能。一方面,在迭代初期较大的学习速率有助于迅速跳过局部极小值;另一方面,在后期逐步减小的学习速率则能够避免错过全局最优解。因此,在这一过程中的合理调节和控制以实现最优效果则是当前研究中的一个重要课题。

当然, 尽管SGD模型在学习率方面存在一定的问题, 但经过手动微调参数后, 模型的整体性能依然表现出色。具体来说, 在迭代过程中的某些特定阶段, 学习率会被按比例衰减。为了进一步提高优化器的迭代效率和最优解的准确度, 我们需要深入研究这一问题。

相关研究

SGD算法是1986年后反向传播诞生后被广泛应用于各个领域的优化方法之一。随着时间的发展,一系列梯度优化算法不断涌现,并主要聚焦于优化学习率机制方面取得突破性进展。例如动量机制和Adam等新型方法的提出能够显著地提升算法性能;其中Adam这一分支主要致力于自适应学习率的研究,在迭代初期表现出优异的效果但在后期未必能超越传统的SGD+动量组合方法;因此相关的研究者们也进行了诸多尝试将Adam与SGD结合使用以获得更好的性能表现

对于凸优化问题而言,在使用SGD时能够较为轻松地找到损失函数的全局最优解。因此,在这类问题中,局部最优解实际上也就是全局最优解。然而,在深度学习模型中通常会遇到非凸优化问题。在这种情况下,现有的优化算法便显得有些力不从心了:因为现有的优化算法无法区分所找到的是局部最优解还是全局最优解。这也使得非凸优化问题成为一个巨大的挑战。

近年来针对非凸优化问题的梯度算法提出了许多改进方法。例如通过观察算法性能动态调节学习率或基于分段函数设计特定的学习率策略等技术手段都是目前研究中常见的做法。这些方法虽然有效但在具体项目的实际应用中往往能显著超越SGD的表现但这需要研究者不断进行繁琐的手动参数微调让许多人望而却步难以持续创新。因此我们认为自适应参数调节的算法更具优势成为解决非凸优化问题的理想选择。

可以说,在研究领域中,自适应算法始终是一个重要的方向,并持续发展。值得注意的是,这些方法通常会引入一个超参数来进行调节。一般来说,默认设置的效果已经令人满意,并不需要复杂的优化。然而,在实际应用中发现这些问题往往尤为关键。对于SGD来说,则显得明显不足。

这时我们的作者站了出来,接过了自适应梯度算法的大旗。

他基于已有研究成果提出了Deep Frank-Wolfe(DFW)这一新型优化算法。该算法在准确度方面与经过人工参数调优后的SGD方法相当并具竞争力,在某些情况下甚至超越了后者。

此外,作者还探讨了若干其他类型的优化方法。如非梯度类的方法,则包括像Bregman迭代法、学习理论及二阶方法等不同的技术路线。其中一些仍展现出一定的发展潜力。然而由于当前计算成本较高的问题限制,在实际应用中往往难以与其相比。

在梯度算法的内部结构中也包含了一些其他的研究方向。除了自适应学习率之外,
还有‘learn to learn’以及Meta-Learning等技术路线。这些方法的目标在于利用机器学习技术来优化学习率,
从而规避人工干预参数调试的过程。从作者的研究角度来看,
他的研究成果能够与上述研究领域具有良好的互补性。

算法介绍

DFW所采用的损失函数为HingeLoss,在SVM算法中也被采用,并且同样适用于其他线性凸函数的情况。
此外还支持诸如L1Loss等其他类型的损失函数。
其具体的定义如下:

\text{Hinge Loss}(w, x, y) = \max(0, 1 - y \cdot f(w, x))

在这里插入图片描述

对于HingeLoss而言,在每个样本中所有被误分类为其他类别的实例得分均需低于与其应属于的真实类别得分低1个单位。具体而言,在真实类别对应的得分我们称作s_1的情况下(例如s_1=10),被误分类实例对应的得分为s_2(例如s_2=8.5)。当s_2 < 9时,则该实例对应的损失为零;而当s_2 > 9时,则超出部分直接计入总损失;一个样本的所有误分类实例对应的损失之和即构成该样本总的HingeLoss值。

毫无疑问,在论文中采用的HingeLoss损失函数虽然适用于多标签分类任务,并经过适当的平滑处理以缓解其局限性。然而这个简单的函数显得不足。具体的优化细节将在后续部分进行补充

在定义了损失函数后,则需要更新权重的计算式。这个公式看起来较为复杂,在我之前一直花了不少时间去仔细推敲过它的具体形式。不过虽然困难重重但我始终认为深入理解其本质会更有助于掌握模型的工作原理。于是乎我想尝试向大家解释这个公式的来源。当然如果实在没有兴趣深入探究其中奥秘的话则可以选择直接跳过这部分内容。

首先我们了解SGD算法更新权重的过程是通过将梯度与学习率相乘来实现的;其公式可表示如下:

在这里插入图片描述

我认为该式子可能为该领域一个封闭解。我对相关背景知识了解有限,可能属于基础性内容。进一步查阅相关资料后发现PGD方法具有相似特征,两者可能存在密切关联。也就是说: 这意味着该式子可能与PGD方法存在某种联系。

这里作者参考近端梯度下降算法,对更新公式进行了线性化:

近端梯度下降

而非对损失函数实施泰勒展开后,并随后将其argmin转换为min的操作,则导出了以下学习目标;这些目标可被视为DFW算法的学习目标,并进而被命名为Loss-Preserving Linearization:

保留损失函数的线性化学习目标

采用这一设定的原因是什么呢?其效果曲线较之前表现出显著优势。这种观点是否过于绝对?这些改进缺乏坚实的理论基础。只要实验结果令人满意,则该算法可被视为有效。即便该方法看似存在书写错误(即‘错’方法),但只要有理想效果,则有潜力发表相关论文。

阐述了损失函数与权重更新机制的相关内容后, 我们今天要介绍的是DFW算法。它同样是基于梯度下降的方法, 具有两个显著特点:一是最佳步长设置, 二是其中具体的数学推导对我来说较为复杂。如对这部分内容感兴趣的朋友可以自行查阅论文附录部分, 我将简单概括其核心思路。

之前不是提到了那个用于求解最小值的权重更新公式吗?作者采用Frank-Wolfe算法对这个公式的对偶问题进行了迭代优化,在每一次迭代过程中均能计算出相应的最优步长。

另外一个特点等同于SGD在计算成本上是相同的。为了节省时间,我就不打算详细列举证明过程了。其实就是一个总结性的观点。

此外作者也加入了动量机制,并且对损失函数进行了平滑处理。

整体的算法伪代码如下:

在这里插入图片描述

从算法代码中可见,在除蓝色行外基本上都是现有的研究成果;其中蓝色行是DFW的核心地位,并采用可自适应调节的步长。

实验

采用该算法后需实施实验验证。研究者分别在其图像分类与自然语言处理领域进行了评估,并将实验结果展示于此处。对比分析可知,在DFW与SGD之间各有优势特点;然而,在同类算法中DFW表现更为突出。

主要涉及图像分类任务的研究中,在基于CIFAR-10/CIFAR-100的数据集上进行实验对比研究,在DenseNet和WRN等深度学习架构上的实验对比

在这里插入图片描述

该自然语言识别任务的数据集基于Stanford Natural Language Inference (SNLI)数据库,并采用开源技术进行开发;该系统基于开源模型构建,并参考了前人的一篇论文内容。

在这里插入图片描述

总结

最后作者对现有研究进行了系统归纳与总结,并重点分析了DFW算法的优势所在:相较于其他自适应优化方法,在性能上更优的是DFW算法在精度上表现不相上下。值得注意的是,在实际应用中与SGD相比,在精度上表现不相上下这一特点使得DFW算法展现出显著优势:其显著优势在于能够实现参数的自适应优化,并且无需人工干预调参步骤

后续的研究重点中进一步指出, 当前学习目标并未包含正则化信息, 这一观点在改进权重更新公式的部分中得到了阐述, 即通过改变泰勒展开的对象从而避免了损失函数进行泰勒展开, 但值得注意的是, 正则系数仍然参与了这一过程. 因此推测,在不使正则系数受到泰勒展开影响的情况下获得更好的优化效果或许是可行的.

全部评论 (0)

还没有任何评论哟~