位置: IT常识 - 正文

随机梯度下降算法 入门介绍(最通俗易懂)(随机梯度下降算法优缺点)

编辑:rootadmin
随机梯度下降算法 入门介绍(最通俗易懂) 文章目录1.什么是梯度2.什么是梯度下降算法3.什么是随机梯度下降算法1.什么是梯度

推荐整理分享随机梯度下降算法 入门介绍(最通俗易懂)(随机梯度下降算法优缺点),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:随机梯度下降算法优缺点,随机梯度下降算法优缺点,随机梯度下降算法,每次迭代时,使用一个样本,随机梯度下降算法,每次迭代时,使用一个样本,随机梯度下降算法英文全称,随机梯度下降算法英文全称,随机梯度下降算法公式,随机梯度下降算法公式,内容如对您有帮助,希望把文章链接给更多的朋友!

首先给出高数课程中梯度的定义:

如果对上面的定义没有理解也没有关系,用通俗的语言来说,梯度实际上就是一个向量,向量中的各个元素表示多元函数在某一个点对于其中一个自变量的偏导数。

例如,给出一个函数:f(x)=ln(x²+y²+z²),求出该函数在点(1,2,-2)处的梯度,计算过程如下:

计算在该点处函数f(x)对于变量x、y、z的偏导数。计算出的结果分别为2/9,4/9和-4/9。对偏导数进行拼接,所以该函数在该点的梯度为(2/9,4/9,-4/9)。2.什么是梯度下降算法

梯度下降算法是一种对损失函数进行优化来得到使得损失函数值最小的机器学习模型的一种算法。也就是说,梯度下降算法是一种用来在机器学习中求解最佳模型的算法。

这么说可能还不是特别好理解,我们从简单的开始,先介绍梯度下降算法的退化版“斜率下降算法”。

假设一个函数的图像如下图所示,在无法直接到达最低点的情况下,如何计算出函数的最小值?

首先需要考虑前进的方向。

假设这样一种情形。当你在一次爬山过程中突然起了大雾,此时想下山的你已经看不清下山的路应该往什么方向走,只能看清眼前很近距离内的路,你应该怎么办才能尽可能地走到山脚?

这时你可以采取这样一种措施:观察眼前的路,如果是下坡路就顺着向下走,走一段距离后再进行一次相同的判断。这样循环往复,你最有可能顺着下坡路成功下山。如果走到一个地方后没有下坡路而是平路了,那么此时你就可以认为自己已经到山脚了。

如果你能够理解上面下山的过程,那么你就明白了梯度下降算法的本质原理。损失函数相当于一座山,而损失函数的最小值相当于山脚,也就是山高度最低的地方,求出损失函数的最小值的过程就相当于从山上的某个地方开始找到下山的路。

假设我们的起点在上图中绿色点标记处,为了能向下走,我们需要判断下坡的方向。而在函数图像中,可以通过斜率判断下坡的方向,因为斜率为负数的方向函数值会减小,也就是我们要走的方向,所以本题中首先需要确定:为了找到最小值,我们需要向右走,也就是增大b值。

随机梯度下降算法 入门介绍(最通俗易懂)(随机梯度下降算法优缺点)

我们确定了前进的方向之后,那就得判断再下一次判断之前,我们要在这个方向走多远。

同样可以这么考虑:下坡路越陡,我们越有把握认为这条路可以走到山脚,因此可以一次性沿着这条路走得更远;相对应的,如果下坡路很平缓,我们就会对这条路是否是通往山脚产生一定的怀疑,因此在下一次判断之前,并不会沿着这条路走太远。

在函数上也是这样体现:如果该点下降方向的斜率绝对值大,那么我们一次就会移动得多一点;如果该点下降方向的斜率绝对值小,那么我们一次就会移动少一点。

为了方便控制下坡的速度,我们还需要引入学习率这个变量。

学习率可以这样理解:学习率大,相当于我们是大跨步下山的;学习率小,相当于我们是一步一步挪下山的。

学习率不是一个自动生成的值,需要手动进行设置。类似于下山的人需要自行决定是大步走还是小步走。

通过上面的分析,我们可以得出更新坐标b的公式:

对上面的公式进行几点解释:

普适性:无论当前点斜率是正数还是负数,上面的公式都成立。步长控制:步长由当前点的斜率和学习率共同确定。

上面的算法过程,就可以认为是梯度下降算法的退化版“斜率下降算法”。梯度下降算法的过程与“斜率下降算法”完全类似,只不过对于每一个维度(也就是函数中的每一个自变量)都进行一次上面的过程。

相当于下山的过程中,你不仅要考虑向前还是向后是下坡路,同时还要考虑向左还是向右是下坡路,因为最后你走的方向可能是左前方、右后方等而不是直接向着一个单一方向。

上述所述的情况都是针对一个样本点而言对其损失函数进行梯度下降求解,但是实际应用中并非使用损失函数,而是求解使得损失函数在各个样本点的梯度平均值函数值最小的模型参数。损失函数在各个样本点的梯度平均值函数被称为风险函数。

3.什么是随机梯度下降算法

上面我们已经说过,传统梯度下降算法(也称为批量梯度下降算法)中每一次进行判断时都需要计算损失函数在各个样本点的梯度平均值,由此可以得出:

当样本点个数很多时,梯度下降算法逐一的计算过程会耗费大量时间。

同时,这么多的计算结果,如果需要全部保存下来,那么占用的存储空间也是很大的。

因此,对批量梯度下降算法进行改进就得到了随机梯度下降算法。

随机梯度下降算法和批量梯度下降算法的区别在于:随机梯度算法每次只使用少数几个样本点(每次不重复)的梯度的平均值就更新一次模型;而批量梯度下降算法需要使用所有样本点的梯度的平均值更新模型。

因此,随机梯度下降算法的效率明显提高,目前已经得到了广泛应用。

本文链接地址:https://www.jiuchutong.com/zhishi/299281.html 转载请保留说明!

上一篇:Win11退回Win10没反应怎么办?Win11退回Win10没反应的解决方法(win11 退回)

下一篇:人工智能学习——模糊控制(学人工智能哪家机构比较好)

  • 财税201920号文件解读
  • 增值税普通发票需要交税吗
  • 查补以前年度税款
  • 所得税费用包括递延所得税吗
  • 金税四期的主要功能
  • 怎么导出银行对账单流水
  • 坏账准备和信用账户区别
  • 现金流量表余额等于货币资金吗
  • 外资企业对应的企业是什么
  • 企业间资金往来 人员派驻
  • 对方开票怎么做账务处理
  • 借款到期一直付利息诉讼期怎么算
  • 企业充值是什么意思
  • 进项税认证怎么做分录
  • 现金折扣后退回账户
  • 所得税汇算清缴时间期限
  • 进项大于销项的分录怎么写
  • 机票退票手续费为什么这么贵
  • 公司注销了工程款还能转账吗
  • 融资租赁销售方会计处理
  • 家政公司可以开专票吗
  • 小规模纳税人教育费附加和地方教育费附加减免
  • 保险企业准备金是什么
  • 抵扣联必须当月认证吗
  • 公司车辆违章怎么办
  • 什么情况下增值税不能抵扣
  • mac本host文件
  • 退多收款怎么做分录
  • 进货的折扣该怎么算
  • gnaupdaemon.exe是什么
  • 收入的特征包括什么
  • vue登录页面点击登录进入首页
  • 黄金税收多少
  • 哪些发票不能进账
  • 行政事业单位会计职责
  • php异常处理和错误处理
  • 城市基础设施配套费计入什么科目
  • php操作字符串函数
  • 怎么配置opencv
  • 深入浅出讲解傅里叶变换
  • js中reduce用法
  • mysql的排序规则
  • ajax跨域请求的原理是什么
  • 经营活动现金流为正说明什么
  • 筹备期间费用怎么做分录
  • 银行存款日记账怎么记账
  • 限售股 缴税
  • 个人开具工程款发票
  • 财政应返还额度年末有余额吗?
  • 公对公转账在手机上怎么操作
  • 开票方没有缴纳增值税
  • 期初余额根据什么填
  • 盘盈存货账务处理
  • 参加新冠疫情防控工作感悟 医务人员
  • 计划成本下
  • 销售发奖金感谢说说
  • 库存商品品种太多如何算成本
  • 差旅费报销单是谁填写的
  • 胶水属于什么开发工具
  • 客户将发票丢了怎么赔偿
  • 新办企业是不是企业
  • 明细账设置是什么意思
  • innodb_index_stats导入备份数据时报错表主键冲突的解决方法
  • linux系统清理磁盘空间
  • centos7 pptp搭建
  • macbook调节音量怎么没反应
  • win10操作中心设置
  • Win10 Mobile RedStone预览版14283更新内容汇总
  • Win10 Build 10586.107正式推送 主要修复bug
  • cocos2dx入门
  • 对象转化为字符串的几种方式
  • android的ui组件有哪些
  • javascript解析
  • 安卓百分百
  • c# unity ioc
  • Using Django with GAE Python 后台抓取多个网站的页面全文
  • 电影失眠详细剧情
  • 12366地税投诉
  • 护士的专业素质要求
  • 上海买新房办贷款流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设