hulu机器学习问题与解答系列|十六:经典优化算法

peizhe123 peizhe123     2022-10-21     510

关键词:

Happy New Year! 技术分享图片

新年伊始,我们都会在祝福他人之余,为自己暗暗定下几个小目标。那就从现在开始努力吧,跑得更快一点,才会让时间显得慢一些~

 

今天的内容是

【经典优化算法】

 

场景描述

针对我们遇到的各类优化问题,研究者们提出了多种有各自适用场景的求解算法,并逐渐发展出了有严格理论支撑的研究领域——凸优化[1]。在这众多的算法中,有几种经典的优化算法是值得被牢记的,了解它们的适用场景有助于我们在面对新的优化问题时有求解思路。

 

问题描述

有一道无约束优化问题摆在你面前

技术分享图片

其中目标函数 L(·) 是光滑的。请问求解该问题的优化算法有哪些?它们的适用场景是什么?

 

先验知识:微积分、线性代数、凸优化基本概念

 

解答与分析

经典的优化算法可以分为两大类:直接法和迭代法。

直接法,顾名思义,就是能够直接给出优化问题最优解的方法。这个方法听起来非常厉害的样子,但它不是万能的。直接法要求目标函数满足两个条件。第一个条件是,L(·)是凸函数。什么是凸函数呢?它的严格定义可以参见文献[1]的第3章:对任意xy,任意0≤λ≤1,都成立

技术分享图片

一个直观的解释是,任取函数曲面上的两点连接成线段,该线段的任意一点都不会处于函数曲面的下方,示意图如下

技术分享图片

 

任取函数曲面上的两点连接成线段,

该线段的任意一点都不会处于函数曲面的下方

若 L(·) 是凸函数,则文献[1]第140页的一个结论是,θ*是优化问题最优解的充分必要条件是 L(·) 在θ*处的梯度为0,即

技术分享图片

因此,为了能够直接求解出θ*第二个条件是,上式有闭式解。同时满足这两个条件的经典例子是岭回归(ridge regression),其中目标函数为

技术分享图片

稍加推导就能得到最优解为(要试着自己推导哟)

技术分享图片

直接法的这两个要求限制了它的广泛应用,因此在很多实际问题中,我们会采用迭代法。这类方法迭代地修正对最优解的估计,即假设当前的估计为θt,我们希望求解优化问题

技术分享图片

从而得到更好的估计θt+1θtδt。迭代法又可以分为两类,一阶法和二阶法。

一阶法对函数 L(θtδ) 做一阶泰勒展开,得到近似式

技术分享图片

由于该近似式仅在δ较小时才比较准确,我们可以求解带l2正则的近似优化问题

技术分享图片

因此一阶法的迭代更新公式是

技术分享图片

一阶法也称为梯度下减法,梯度是目标函数的一阶信息。

二阶法对函数 L(θtδ) 做二阶泰勒展开,得到近似式

技术分享图片

其中

技术分享图片

是函数 L(·) 在θt处的Hessian矩阵。我们可以求解近似优化问题

技术分享图片

从而得到二阶法的迭代更新公式

技术分享图片

二阶法也称为牛顿法,Hessian矩阵是目标函数的二阶信息。二阶法的收敛速度一般要远快于一阶法,但是在高维情况下Hessian矩阵求逆的计算复杂度更大,而且当目标函数非凸时,二阶法有可能会收敛到鞍点(saddle point)。

 

扩展阅读

      俄罗斯著名数学家Yurii Nesterov于1983年提出了对一阶法的加速算法[2],该算法的收敛速率能够达到一阶法收敛速率的理论界。针对二阶法矩阵求逆的计算复杂度过高的问题,Charles George Broyden,Roger Fletcher,Donald Goldfarb和David Shanno四人于1970年分别独立提出了后来被称为BFGS的伪牛顿算法[3-6],1989年扩展为低存储的L-BFGS算法[7]。

技术分享图片

Charles George Broyden,Roger Fletcher,Donald Goldfarb和David Shanno的合影

 

参考文献:

[1] Boyd, Stephen, and Lieven Vandenberghe. Convex optimization. Cambridge university press, 2004.

[2] Nesterov, Yurii. "A method of solving a convex programming problem with convergence rate O (1/k2)." Soviet Mathematics Doklady. Vol. 27. No. 2. 1983.

[3] Broyden, Charles G. "The convergence of a class of double-rank minimization algorithms: 2. The new algorithm." IMA journal of applied mathematics 6.3 (1970): 222-231.

[4] Fletcher, Roger. "A new approach to variable metric algorithms." The computer journal 13.3 (1970): 317-322.

[5] Goldfarb, Donald. "A family of variable-metric methods derived by variational means." Mathematics of computation 24.109 (1970): 23-26.

[6] Shanno, David F. "Conditioning of quasi-Newton methods for function minimization." Mathematics of computation 24.111 (1970): 647-656.

[7] Liu, Dong C., and Jorge Nocedal. "On the limited memory BFGS method for large scale optimization." Mathematical programming 45.1 (1989): 503-528.

 


 

下一题预告

【随机梯度下降算法之经典变种

 

场景描述

提到Deep Learning中的优化方法,人们都会想到Stochastic Gradient Descent (SGD),但是SGD并不是理想的万金油,反而有时会成为一个坑。当你设计出一个deep neural network时,如果只知道用SGD来训练,不少情况下你得到一个很差的训练结果,于是你放弃继续在这个深度模型上投入精力。但可能的原因是,SGD在优化过程中失效了,导致你丧失了一次新发现的机会。

 

问题描述

Deep Learning中最常用的优化方法是SGD,但是SGD有时候会失效,无法给出满意的训练结果,这是为什么?为了改进SGD,研究者都做了哪些改动,提出了哪些SGD变种,它们各有哪些特点?

hulu机器学习问题与解答系列|第七弹:非监督学习算法与评估

听说,Hulu机器学习与冬日的周末更配噢~ 你可以点击菜单栏的“机器学习”,回顾本系列前几期的全部内容,并留言发表你的感悟与想法。同时,为使大家更好地了解Hulu,菜单“关于Hulu”也做了相应调整,好奇宝宝们,牌... 查看详情

hulu机器学习问题与解答系列|第六弹:pca算法

好久不见,Hulu机器学习问题与解答系列又又又更新啦! 你可以点击菜单栏的“机器学习”,回顾本系列前几期的全部内容,并留言发表你的感悟与想法,说不定会在接下来的文章中看到你的感言噢~  今天的主题是... 查看详情

hulu机器学习问题与解答系列|第一弹:模型评估

...这是科学家门捷列夫的名言。在计算机科学中,特别是在机器学习的领域,对模型的测量和评估同样至关重要。只有选择与问题相匹配的评估方法,我们才能够快速的发现在模型选择和训练过程中可能出现的问题,迭代地对模型... 查看详情

hulu机器学习问题与解答系列|二十四:随机梯度下降法

...量的爆炸式增长。如下图所示,随着数据量的增长,传统机器学习算法的性能会进入平台期,而深度学习算法因其强大的表示能力,性能得以持续增长,甚至在一些任务上超越人类。因此有人戏称,“得 查看详情

hulu机器学习问题与解答系列|二十二:特征工程—结构化数据

...问题寻找有效的特征并进行处理成适合模型的输入形式。机器学习中有句经典的话叫做“Garbagein,garbageout”,意思是如果输入的数据是垃圾,那么得到的结果 查看详情

hulu机器学习问题与解答系列|第九弹:循环神经网络

...NN问题的解答。记得多多思考和转发,公式供应充足的Hulu机器学习系列,怎么能只自己知(shou)道(nue)  ~  今天的内容是【循环神经网络】 场景描述循环神经网络(RecurrentNeuralNetwork)是一种主流的深度学习模型... 查看详情

hulu机器学习问题与解答系列|十四:如何对高斯分布进行采样

欢迎回到“采样”系列~ 今天的内容是【如何对高斯分布进行采样】 场景描述高斯分布,又称正态分布,是一个在数学、物理及工程领域都非常重要的概率分布。在实际应用中,我们经常需要对高斯分布进行采样。虽然... 查看详情

hulu机器学习问题与解答系列|第八弹:强化学习

...的要素,例如环境:游戏本身的状态,动作:用户操作,机器人:程序,回馈:得分、输赢等。通过输入原始像素来玩视频游戏,是人工智能成熟的标志之一。雅达利(Atari)是20世纪七八十年代红极一时的电脑游戏,类似于国... 查看详情

hulu机器学习问题与解答系列|十九:主题模型

今天的内容是【主题模型】 场景描述基于Bag-Of-Words(或N-gram)的文本表示模型有一个明显的缺陷,就是无法识别出不同的词(或词组)具有相同主题的情况。我们需要一种技术能够将具有相同主题的词(或词组)映射到同一... 查看详情

hulu机器学习问题与解答系列|十八:svm–核函数与松弛变量

嗨,又见面了~你可以进入公众号,点击菜单栏的“机器学习”回顾本系列的全部内容,并留言与作者交流。 今天的内容是【SVM–核函数与松弛变量】 场景描述当我们在SVM中处理线性不可分的数据时,核函数可以对数据... 查看详情

hulu机器学习问题与解答系列|二十一:分类排序回归模型的评估

本期问题的解答结合了具体的Hulu业务案例,可以说是很有趣又好懂了。快快学起来吧!  今天的内容是【分类、排序、回归模型的评估】 场景描述在模型评估过程中,分类问题、排序问题、回归问题往往需要使用不... 查看详情

hulu机器学习问题与解答系列|第四弹:不均衡样本集的处理

Hulu机器学习系列按时来报到~快搬好小板凳,一起来学习吧 今天的主题是【采样】 引言古人有云:“知秋一叶,尝鼎一脔”,其中蕴含的就是采样思想。采样,就是根据特定的概率分布产生对应的样本点。对于一些简... 查看详情

hulu机器学习问题与解答系列|十二:注意力机制

几天不见想死你们啦~今儿的课题很好玩,跟上队伍一起来读! 今天的内容是【注意力机制】 场景描述作为生物体,我们的视觉和听觉会不断地获得带有序列的声音和图像信号,并交由大脑理解;同时我们在说话、打字... 查看详情

hulu机器学习问题与解答系列|十五:多层感知机与布尔函数

今天没有别的话,好好学习,多多转发!  本期内容是【多层感知机与布尔函数】 场景描述神经网络概念的诞生很大程度上受到了神经科学的启发。生物学研究表明,大脑皮层的感知与计算功能是通过分多层实现的,... 查看详情

hulu机器学习问题与解答系列|十一:seq2seq

你可以点击菜单栏的“机器学习”,回顾本系列前几期的全部内容,并留言发表你的感悟与想法。 今天的内容是【Seq2Seq】 场景描述作为生物体,我们的视觉和听觉会不断地获得带有序列的声音和图像信号,并交由大脑... 查看详情

hulu机器学习问题与解答系列|二十三:神经网络训练中的批量归一化

来看看批量归一化的有关问题吧!记得进入公号菜单“机器学习”,复习之前的系列文章噢。 今天的内容是【神经网络训练中的批量归一化】 场景描述深度神经网络的训练中涉及诸多手调参数,如学习率,权重衰减系数... 查看详情

机器学习问题与解答系列(17-24)

老朋友了,还用多说什么吗?点击下面的链接复习咯: 17. 随机梯度下降算法之经典变种18. SVM—核函数与松弛变量19. 主题模型20. PCA最小平方误差理论21. 分类、排序、回归模型的评估22. 特征工程—结构... 查看详情

机器学习经典算法源码分析系列--线性回归

一、单变量线性回归:1.数据集可视化   2.求解模型参数对于线性回归模型,有两种方法可以求解模型参数。1) 梯度下降法  将代价函数代入展开:  Matlab代码实现:  2) 正规方程 Mat... 查看详情