基本机器学习:线性回归和梯度下降

时间:2015-06-10 21:41:32

标签: machine-learning gradient-descent

我在Coursera上接受了Andrew Ng的ML课程,对梯度下降感到有些困惑。我迷惑的公式截图是:

Formula in question

在他的第二个公式中,为什么他乘以第i个训练样本的值?我想当你更新时你只是减去步长*成本函数(不应该包括第i个训练样例。

我错过了什么?这对我来说没有多大意义,特别是因为第i个训练的例子是一系列的价值观,而不只是一个......

谢谢, bclayman

1 个答案:

答案 0 :(得分:1)

在数学上,我们在这里尝试最小化误差函数

<div id="thumbs">
  <img class="itm0 selected"></img>
  <img class="itm1"></img>
</div> 

为了尽量减少错误,我们

<div id="thumbs">
   <img class="itm0"></img>
   <img class="itm1 selected"></img>
</div>

并推导出上述公式。

配方的其余部分可以理解为

梯度下降使用函数本身的斜率来查找最大值。认为它是在一个山谷中下坡,采取方向使得向下坡度最小。所以,我们得到方向,但步长应该是多少(我们应该继续向同一方向移动多长时间?)?

为此我们也使用斜率。由于最小坡度为零。(想想山谷的底部,因为它的所有附近点都高于此。因此,必须有一个高度减小的点,坡度为负,高度开始增加,坡度改变符号,变为负值到正值,并且在最小值之间是零斜率点。)为了达到0斜率,斜率的幅度朝着最小值减小。因此,如果斜率的幅度很高,我们可以采取大步骤,如果它很低,我们将接近最小值并且应该采取小步骤。