梯度下降法理解

梯度下降法理解

梯度就是梯度啊,是一个矢量,大小为最大的方向导数,方向为最大方向导数的方向。但在单变量的实值函数的情况,梯度只是导数梯度。在只有一个维度的情况下简单可以理解为就是咱们学习的导数。导数是啥想必大家都很清楚了。

那么 **梯度下降就是用来求某个函数最小值时自变量对应取值。**这个函数名字叫做损失函数(cost/loss function),机器学习涉及到了最基础的概念,直白点就是误差函数。一个算法不同参数会产生不同拟合曲线,也意味着有不同的误差。损失函数就是一个自变量为算法的参数,函数值为误差值的函数。梯度下降就是找让误差值最小时候算法取的参数。

深度学习的话视频推荐吴恩达的视频,他的视频非常透彻。网易云课堂上能给有搜到相关的视频。机器学习中涉及到一个损失函数的概念,有一类算法就是产生一条曲线来拟合现有的数据,这样子就可以实现预测未来的数据,这个专业术语叫做回归(见到回归就替换成拟合就好了^)。还有另外一种类似也是产生一条曲线,但是这个曲线时用来将点分隔成两块,实现分类,在这个曲线一侧为一类另外一侧算一类。**但是我怎么知道这个算法产生的拟合曲线效果好不好呢?**这个判断效果的名词叫做误差,预测值减去真实值最后取绝对值,于是乎就产生了损失函数这一概念。那么如何找到这个损失函数值最小的点呢,咱们高中的时候求最大或者最小值时候是不是通过求导来求极值点,那么求损失函数的最小值也是这样。可以通过求导的方式去进行。前面的时候也已经说到过。梯度就是求导数。梯度下降的话就是求极小值的点。梯度下降法理解
那么用梯度下降的方法的去求最小值的时候,我们可以这样去理解,假如我们夜晚现在要下山,现在手里要拿着手电筒,我们如果照亮的一段路是下坡,我们就会接着往坡下走,这样一定最后能够到达山脚。那么梯度下降的原理也类似上面这样。
梯度下降含义(具体操作)是:改变x的值使得导数的绝对值变小,当导数小于0时候(情况1),我们要让目前x值大一点点,再看它导数值。当导数大于0时候(情况2),我们要让目前x值减小一点点,再看它导数值。当导数接近0时候,我们就得到想要的自变量x了。也就是说找到这个算法最佳参数,使得拟合曲线与真实值误差最小。害。自己太菜了。这次参加的比赛完全在划水,也没帮上啥忙。