机器学习最优化方法之梯度下降

1、梯度下降出现的必然性

利用最小二乘法求解线性回归的参数时,求解的过程中会涉及到矩阵求逆的步骤。随着维度的增多,矩阵求逆的代价会越来越大,而且有些矩阵没有逆矩阵,这个时候就需要用近似矩阵,影响精度。另外,在绝大多数机器学习算法情况下(如LR),损失函数要复杂的多,根本无法得到参数估计值的表达式。因此需要一种更普适的优化方法,这就是梯度下降。其实随机梯度下降才是实际应用中最常用的求解方法,但是其基础还是梯度下降。

2、梯度下降法

(1)理解梯度

官方定义:梯度的本身是一个向量,表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该方向变化最快,变化率最大。

通俗解释:在单变量的函数中,梯度其实就是函数的微分,代表这函数在某个给定的切线的斜率。在多变量函数中,梯度是一个向量,梯度的方向就是向量的方向,此方向就是函数在给定点上升最快的方向。梯度中元素的个数同未知参数的个数对应。梯度为0向量的点,也就是梯度中所有偏导函数都变为0的时候就是需要优化问题的最优解。

(2)理解梯度下降

官方定义:梯度下降是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降是最常采用的方法之一。

通俗解释:如果比作下山的话,可以这样假设。一个人被困在山上,需要从山上下来(找到山的最低点,也就是山谷)。但此时山上的浓雾很大,导致可视度很低;因此,下山的路径就无法确定,必须利用自己周围的信息一步一步地找到下山的路。这个时候,便可利用梯度下降算法来帮助自己下山。怎么做呢,首先以他当前的所处的位置为基准,寻找这个位置最陡峭的地方,然后朝着下降方向走一步,然后又继续以当前位置为基准,再找最陡峭的地方,再走直到最后到达最低处;同理上山也是如此,只是这时候就变成梯度上升算法了。

转移到数学问题上,梯度下降就是让梯度中所有偏导函数都下降到最低点的过程。首先,我们有一个可微分的函数。这个函数就代表着一座山。我们的目标就是找到这个函数的最小值,也就是山底。根据之前的场景假设,最快的下山的方式就是找到当前位置最陡峭的方向,然后沿着此方向向下走,对应到函数中,就是找到给定点的梯度 ,然后朝着梯度相反的方向,就能让函数值下降的最快。

(3)学习率α

α在梯度下降算法中被称作为学习率或者步长,意味着我们可以通过α来控制每一步走的距离。学习率的选择不能太大也不能太小。首先,如果学习率太大,那么有可能会“迈过”最低点,从而发生“摇摆”的现象,无法得到最低点;其次,如果学习率太小,会导致每次迭代时,参数几乎不变化,收敛学习速度变慢,使得算法的效率降低,需要很长时间才能到达最低点。

3、随机梯度下降

(1)出现的必然性

如果在梯度下降过程中,在每次更新参数时是需要计算所有样本的,通过对整个数据集的所有样本的计算来求解梯度的方向。这种计算方法被称为:批量梯度下降法BGD(Batch Gradient Descent)。但是这种方法在数据量很大时需要计算很久。针对该缺点,有一种更好的方法:随机梯度下降法SGD(stochastic gradient descent),随机梯度下降是每次迭代使用一个样本来对参数进行更新。虽然不是每次迭代得到的损失函数都向着全局最优方向,但是大的整体的方向是向全局最优解的,最终的结果往往是在全局最优解附近。但是相比于批量梯度,这样的方法更快,我们也是可以接受的。

(2)随机梯度下降过程

随机梯度下降的过程就是:每次随机取出一个样本,得到一个样本向量,然后沿着这个样本向量在损失函数上的梯度方向进行搜索不停迭代,直到得到损失函数的最小值。但有一点需要注意,如果是批量搜索,那么每次都是沿着一个方向前进,但是随机梯度下降法由于不能保证随机选择的方向是损失函数减小的方向,更不能保证一定是减小速度最快的方向,所以搜索路径就会呈现下图的态势。即随机梯度下降有着不可预知性。

(3)随机梯度下降中学习率的选择

在随机梯度下降中,如果学习率一直取一个固定的值,可能会导致参数已经取到最小值附近了,但是固定的步长导致点的取值又跳出了这个点的范围。因此,我们希望在随机梯度下降法中,学习率是逐渐递减的。如果设计一个函数,使学习率随着迭代次数的增加而减少的化,那么最简单的是取倒数。但是这样会有一个问题,如果循环次数比较小的时候,学习率下降太快了,比如循环次数由1变为2,则学习率减少50%。因此,我们可以将分子变为常说,并在分母上增加一个常数项来缓解初始情况下,学习率变化太大的情况。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,194评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,058评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,780评论 0 346
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,388评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,430评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,764评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,907评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,679评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,122评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,459评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,605评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,270评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,867评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,734评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,961评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,297评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,472评论 2 348

推荐阅读更多精彩内容

  • 上一章中有提到利用解析解求解多元线性回归,虽然看起来很方便,但是在解析解求解的过程中会涉及到矩阵求逆的步骤...
    今晨er阅读 486评论 0 0
  • 梯度下降法(Gradient Descent,GD)是一种常用的求解无约束最优化问题的方法,在最优化、统计学以及机...
    酥小肉爱学习阅读 51,940评论 4 31
  • 有前面的知识,我们知道如何构建目标函数了,当目标函数构建出来后,如何求其参数使的目标函数最小化呢?这就是这一小节的...
    李涛AT北京阅读 906评论 0 0
  • 每日拔草:1.过去不尊重说到做到,现在经常无意识说的话,又不停推倒,今天又纠结去不去上课的事。2.上午心情不好没有...
    超人菲菲目标必达阅读 176评论 0 1
  • 这辈子我是来干什么的?我的生命使命是什么?怎么做才能更好地完成?愿以后的岁月里不磋跎,不荒废,珍惜时间,爱该爱之人...
    d0c64a4bb843阅读 95评论 0 0