机器学习(四) ——梯度下降算法解释以及求解θ

机器学习(四)——梯度下降算法解释以及求解θ

(原创内容,转载请注明来源,谢谢)

(本文接 机器学习(二) 的内容)

一、解释梯度算法

梯度算法公式以及简化的代价函数图,如上图所示。

1)偏导数

由上图可知,在a点,其偏导数小于0,故θ减去小于0的数,相当于加上一个数。另外,从图上可以看出,在a点不是最佳点,需要继续向右移动,即a需要增加。因此符合要求。

对于在b点,可以同理得到需要减少的结果。

2)学习速率α

α表示点移动向最小值点的速率,α取值需要注意。

当值太大,每次移动的距离太长,可能导致在最小值点附近时,移动会超出最小值点的位置,导致不断的在大于、小于最小值点的位置偏移,无法收敛;

当值太小,移动速度非常慢,会导致程序执行时间太久。

另外,由于在越接近最小值点,偏导数的数量值(绝对值)越小,因此变化速率本身就会变慢,因此选定α后,不需要再去调整数值,其自己会减慢速率。

二、梯度算法缺陷

由上图可知,对于有多个极小值点的代价函数,梯度算法只能取到局部最小值点,即函数的极小值点,但是没法保证该点就是最小值点。

三、求解θ

公式如上图所示,实质上就是求偏倒的结果。

不断的计算θ0和θ1,直到偏导数为0(或者设定小于某个阈值),则停止计算,此时的结果则是对于某个起始点的局部最优结果。

——written by linhxx 2017.12.28

原文发布于微信公众号 - 决胜机器学习(phpthinker)

原文发表时间:2017-12-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏祥子的故事

tensorflow | 维度转换

2505
来自专栏真皮专栏

基于SVM的思想做CIFAR-10图像分类

回顾一下之前的SVM,找到一个间隔最大的函数,使得正负样本离该函数是最远的,是否最远不是看哪个点离函数最远,而是找到一个离函数最近的点看他是不是和该分割函数离的...

932
来自专栏张俊红

Sklearn参数详解—LR模型

7256
来自专栏机器学习之旅

R开发:常用R语言包介绍

r与python差异比较大的一个地方就是,python的机器学习算法集中程度比较高,比如sklearn,就集成了很多的算法,而R语言更多时候需要一个包一个包去了...

715
来自专栏CDA数据分析师

三分钟看懂机器学习中应该注意哪些问题?

本文简单谈谈机器学习中应该注意的一些问题。仅供大家参考学习和讨论。 1. 特征预处理 机器学习中的输入数据必须是数值类型的,但是现实问题中不免会有一些类别类型的...

17810
来自专栏专知

【PyTorch实战】 minibatching,数据加载和模型构建

1732
来自专栏瓜大三哥

基于FPGA的非线性滤波器(一) 之概述

一类比较重要的非线性滤波器就是统计排序滤波器。 统计排序滤波器对窗口内的像素值进行排序并通过多路选择选择器选择排序后的值,例如中值滤波、最大/最...

1709
来自专栏marsggbo

使用numpy解决图像维度变换问题

在机器学习中经常会碰到各种图像数据集,有的是按照num*height*width*channel来存储的,而有的则是num*channel*height*wid...

751
来自专栏数据科学学习手札

(数据科学学习手札16)K-modes聚类法的简介&Python与R的实现

我们之前经常提起的K-means算法虽然比较经典,但其有不少的局限,为了改变K-means对异常值的敏感情况,我们介绍了K-medoids算法,而为了解决K-m...

3118
来自专栏林德熙的博客

C# 判断两条直线距离

d= \frac{ \left| C_1-C_2 \right|}{\sqrt{A^2+B^2}}

652

扫码关注云+社区