码迷,mamicode.com
首页 > 编程语言 > 详细

机器学习数学基础- gradient descent算法(下)

时间:2015-07-05 15:11:33      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:机器学习   梯度下降   gradient   

Gradient Descent算法

续上文。
gradient descent的用途:

可以用于求解一个函数f(x1,x2,......xn)的local 最小值。

关于local最小值:

一个函数可能有多个local最小值,所谓local最小值是当给定(x1,x2,......xn)的某一个实例,如果在该实例的无限小的附近的任何一个实例的f值都大于该实例的f值,那么该实例所对应的就是f的一个local最小值。

gradient descent算法求解local最小值的方法如下:

任意给定(x1,x2,......xn)的一个实例,简写为x?,那么将x?朝着?f(x?)(注:是一个n维向量)的反向方向移动一个足够小的值,得到x??r?f(x?),其中r是一个足够小的数值,会使得f(x??r?f(x?))的值比f(x?)一定会更小。通过这种方法不断的迭代计算新的x的值,最终能得到local的最小值。

如果回想函数的gradient的定义,就能自然的理解gradient descent算法:

gradient反映的是因变量对自变量的变化的敏感性以及正负相关性,这里我们利用的是正负相关性,也就是说当?f(x?)为正时,说明当xx?向负向移动一个足够小的值时,f的值会减小;并且,当?f(x?)为负时,说明当xx?向正向移动一个足够小的值时,f的值会减小。因此,只要将xx?朝着?f(x?)的反向方向移动一个足够小的值,就会导致f值减小。

如果还不能理解这段话,说明应该回过头去再好好理解下gradient的基本概念了。

版权声明:本文为博主原创文章,未经博主允许不得转载。

机器学习数学基础- gradient descent算法(下)

标签:机器学习   梯度下降   gradient   

原文地址:http://blog.csdn.net/upnow2014/article/details/46762349

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!