梯度下降法
()
为什么使用梯度下降法?
(1)在机器学习的优化问题中,梯度下降法和牛顿法是常用的两种凸函数求极值的方法,他们都是为了求得目标函数的近似解。在逻辑斯蒂回归模型的参数求解中,一般用改良的梯度下降法,也可以用牛顿法。
(2)梯度实际上是函数值变化最快的方向。
比如说,你站在一个山上,梯度所指示的方向是高度变化最快的方向。你沿着这个方向走,能最快的改变(增加或是减小)你所在位置的高度,但是如果你乱走,可能走半天所在位置高度也没有变化多少。也就是说,如果你一直沿着梯度走,你就能最快的到达山的某个顶峰或低谷(偶尔会到鞍点,不过这几乎不可能)。
所以实际上,梯度下降法是用来数值搜索局部极小值或极大值的,它是实际应用中一种非常高效,高速且可靠的方法。
接下来首先了解几个数学上的概念:
方向导数:是一个数;反映的是f(x,y)在P0点沿方向v的变化率。
偏导数:是多个数(每元有一个);是指多元函数沿坐标轴方向的方向导数,因此二元函数就有两个偏导数。
偏导函数:是一个函数;是一个关于点的偏导数的函数。
梯度:是一个向量;每个元素为函数对一元变量的偏导数;它既有大小(其大小为最大方向导数),也有方向。