码迷,mamicode.com
首页 > 其他好文 > 详细

梯度下降学习总结

时间:2019-07-31 16:45:16      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:理解   表达式   sig   rac   data   方法   推导   art   工程   

1.梯度的理解

在机器学习过程中,经常使用梯度下降方法求解损失函数的最小值。梯度的值为函数在某一点,沿着各向量方向的偏导数。沿着梯度相反的方向,函数减小最快,更容易找到函数的最小值。

2.梯度下降法的矩阵表示

函数的表达式为$h_\theta(X)=X\theta$,损失函数的表达式为$J(\theta)=\sum_{i=1}^m(h_\theta(x_i)-y_i)^2$,其矩阵表达式为$J(\theta)=\frac{1}{2}(X\theta-Y)^T(X\theta-Y)$,损失函数对于$\theta$向量的偏导数为$\frac{\partial}{\partial\theta}J(\theta)=X^T(X\theta-Y)$。

3.权重计算:使用全部样本、使用部分样本

全部样本算权重

1 h = sigmoid(dataMatrix * weights)
2 error = labelMat - h
3 weight = weight + alpah * error * dataMatrix.transpose()

一个样本算权重

1 h = sigmoid(sum(dataMatrix[i] * weights))
2 error = classLabel[i] - h
3 weight = weight + alpha * error * dataMatrix[i]

 h是sigmoid函数的值,error是算出来的值与label之间的误差,然后使用alpha系数、误差、输入更新权重的值。

此方法没有使用梯度的计算值,而是使用alpha、error、输入值,更新权重。

4.数值梯度与解析梯度

理论推导使用解析梯度,在工程计算中,常使用数值梯度进行计算。

梯度下降学习总结

标签:理解   表达式   sig   rac   data   方法   推导   art   工程   

原文地址:https://www.cnblogs.com/guesswhy/p/11272935.html

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