之前在看批量梯度下降的时候,看到代价函数J(w)的求导过程中,一直搞不明白它是怎么推导出来的,今天终于把它推导出来了。(注:下面文本中加粗的字母即为向量)
原始的代价函数如下所示:
J(w)就是代价函数,其中w 是需要求出的参数向量,m 表示为训练样本个数,(x(i), y(i))就是其中的一个训练样本点,前面的求和项是实际值和预测值的误差总和,后面的lamda 项为正则项,暂且理解为惩罚项,这个是为了避免overfitting的。
之后对J(w) 求导,可得如下公式:
上述式子就是最终结果了,看到网上有很多的人都把中括号中的求和项的正负号颠倒了,所以说想在这里确认一下。
之后更新步长(或者学习率learning rate),迭代之类的云云网上已经说了很多了,在这里就不一一赘述了,只是把自己觉得不懂的地方写下来,希望能够帮助大家理解批量梯度下降以及之后的随机梯度下降。