




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、策略产品经理必读系列第三讲梯度下降法策略产品经理必须要对机器学习有一定的了解,而梯度下降法则是学习机器学习必须要了解的思想,本篇通过一个生动的案例来为大家介绍到底什么是梯度下降法。01 引入我们先从一个案例入手,下图是一组上海市静安区的房价信息:我们用Python在坐标系上面画出来如下图:我们现在想拟合一个线性函数来表示房屋面积和房价的关系。我们初中都学过的一元一次函数表达式为:y=kx+b(k0)。很明显不可能有一对组合(k,b)全部经过上图7个点,我们只能尽可能地找到一对组合,使得该线性函数离上图7个点的总距离最近。如上图所示,实际值与预测值之间差异的均方差我们把它称为损失函数,也有叫做成
2、本函数或者代价函数的,意义都一样。我们希望找到一个组合(k,b)可以使得损失函数的值最小。上述只有一个输入变量x,如果我们多加入几个输入变量,比如卧室的数量、离最近地铁站的距离。最终目标变量和损失函数我们用下述函数表达式来表达:现在我们的任务就是求出一组,在已知【x,y】的前提下使得损失函数的值最小。那么如何计算出了,使用什么方法了?我们首先回到损失函数表达式本身,损失函数本身是一个y=x2的形式,高中数学大家应该都学过这是一个开口向上的抛物线方程,大概长下图这样:我们如何找到这个函数的最低点?上图是一个二维图,我们很轻松就可以肉眼看出x=0时,y最小。如果维度更多,比如z = (x-10)2
3、 + (y-10)2,则得到下图:我们如何定位出最小值,特别强调一点,这里的x是一个“大”参数的概念,x应该等于下述公式大家要明确上图横坐标是x和y,函数表达式里的已经知道了,所以我们是找到最合适的(x,y)使得函数值最小。如果我们现在是已知样本(x,y),那么上图的变量就变为了_0和_i,并不是x_i,我们是以_0和_i作为输入变量做的图,x_i和y_i都是已知的固定值,这一点必须明确了。上图的纵坐标的值就变为损失函数的值。我们的问题是已知样本的坐标(x,y),来求解一组参数,使得损失函数的值最小。我们如何找到上图中的最低点?因为找到最低点,那么最低点对应的横坐标所有维度就是我们想得到的_0
4、和_i,而纵坐标就是损失函数的最小值。找到最低点所有答案就全部解出来了。现在问题来了?有没有一种算法让我们可以慢慢定位出最小值,这个算法就是梯度下降法。02 梯度下降法简介1. 梯度下降法的思想我们首先介绍梯度下降法的整体思想。假设你现在站在某个山峰的峰顶,你要在天黑前到达山峰的最低点,那里有食品水源供给站,可以进行能量补充。你不需要考虑下山的安全性,即使选择最陡峭的悬崖下山,你也可以全身而退,那么如何下山最快了?最快的方法就是以当前的位置为基准,寻找该位置最陡峭的地方,然后沿该方向往下走。走一段距离后,再以当前位置为基准,重新寻找最陡峭的地方,一直重复最终我们就可以到达最低点。我们需要不停地
5、去重新定位最陡峭的地方,这样才不会限于局部最优。那么整个下山过程中我们会面临两个问题:如何测量山峰的“陡峭”程度每一次走多长距离后重新进行陡峭程度测量;走太长,那么整体的测量次数就会比较少,可能会导致走的并不是最佳路线,错过了最低点。走太短,测量次数过于频繁,整体耗时太长,还没有到达食品供给站就已经GG了。这里的步长如何设置?Part1里面介绍了如何从一个开口向上的抛物线高点定位到最低点的问题和下山的场景是完全类似的,抛物线就相当于一个山峰,我们的目标就是找到抛物线的最低点,也就是山底。最快的下山方式就是找到当前位置最陡峭的方向,然后沿着此方向向下走,对应到抛物线中,就是计算给定点的梯度,然后
6、朝着梯度相反的方向( Part 2.3里面会解释为什么是朝着梯度相反的方向),就能让抛物线值下降的最快。同时我们也要和下山一样,不停地定位新位置,再计算新位置的梯度,然后按照新方向下降,最后慢慢定位到抛物线的最低点。2. 梯度下降法算法Part2.1里面已经介绍了梯度下降法的思想,遗留了两个问题。第一就是如何计算“陡峭”程度,我们这里把它叫做梯度,我们用J_来代替。第二个也就是步长问题,我们用一个学习率来代表这个步长,越大代表步长越大。知道了这两个值,我们如何去得到参数的更新表达式了?J是关于的一个函数,假设初始时我们在_1这个位置,要从这个点走到J的最小值点,也就是山底。首先我们先确定前进的
7、方向,也就是梯度的反向“-J_”,然后走一段距离的步长,也就是,走完这个段步长,就到达了_2这个点了。表达式如下图:我们按照上述表达式一直不停地更新的值,一直到收敛不变为止,当我们到达山底,此时函数的梯度就是0了,值也就不会再更新了,因为表达式的后半部分一直是0了。整个下降过程中损失函数的值是一定在减少,但是我们想学习出来的参数值不一定一直在减小。因为我们需要找到损失函数最小时的坐标点,这个坐标点的坐标不一定是原点,很可能是(2,3)甚至是(4,6),我们找到的是最合适的值使得损失函数最小。下图我们用一个例子来进行说明:上图的最低点很明显就是原点,我们通过梯度下降法来逼近这个最低点。我们可以看
8、到损失函数的值在一直减少,的值也在往0这个值进行收敛。3. 梯度下降法数学计算Part1和2介绍了梯度下降的思想和更新的表达式,现在我们从数学层面进行解释:1)为什么是向梯度相反的方向下降上图应该很形象地显示为什么要朝着梯度的反方向了。梯度是一个向量,梯度的方向是函数在指定点上升最快的方向,那么梯度的反方向自然是下降最快的方向了。2)泛化的参数更新公式Part2.2里面的例子我们选择的是一个最简单的函数表达式,参数分为两种,一种是和输入变量x配对的参数_i,一种是固定的偏差_0。我们用已知的样本数据(x,y)来求解出使得损失函数最小的一组参数。下面我们来计算一个通用泛化的参数更新表达式。我们只
9、需要用到高中数学中的导数知识即可,朋友们相信我真的很easy。下图是对和输入变量x配对的参数_i更新表达式:下图是对固定的偏差_0的更新表达式:上面的数学过程也就是高中我们学习导数里面最简单的求导过程了。那么至此我们也就将梯度下降算法的思想和数学解释全部介绍完了。4. 梯度下降法分类Part2.3里面的公式大家也看到了我们要借助样本的(x,y)的数据来进行参数的更新,如果现在样本有100条数据,我们如何来更新。正常情况下,我们更新的方式有两种:1)随机梯度下降(Stochastic Gradient Descent)我们每次只使用单个训练样本来更新参数,依次遍历训练集,而不是一次更新中考虑所有
10、的样本。就像开头介绍那7条房价数据,我们一个一个来计算,计算一次更新一次,直到收敛或者达到后期更新幅度已经小于我们设置的阀值。2)批量梯度下降(Batch Gradient Descent)我们每次更新都遍历训练集中所有的样本,以它们的预测误差之和为依据更新。我们会一次性将7条样本数据的预测误差都汇总,然后进行一次更新。更新完以后,继续以7条样本数据的预测误差之和进行汇总,再更新,直到收敛或者达到后期更新幅度已经小于我们设置的阀值。当训练样本数很大时,批量梯度下降的每次更新都会是计算量很大的操作,而随机梯度下降可以利用单个训练样本立即更新,因此随机梯度下降 通常是一个更快的方法。但随机梯度下降
11、也有一个缺点,那就是可能不会收敛,而是在最小值附近振荡,但在实际中也都会得到一个足够好的近似。所以实际情况下,我们一般不用固定的学习率,而是让它随着算法的运行逐渐减小到零,也就是在接近“山底”的时候慢慢减小下降的“步幅”,换成用“小碎步”走,这样它就更容易收敛于全局最小值而不是围绕它振荡了。03 梯度下降法Python实践以下就是通过实际运行程序得到的相关结果图。1. 单变量:y = x2求最低点假设X的初始值是10,我们让程序迭代10次得到的结果如下图:2. 多变量:z = (x-10)2 + (y-10)2求最低点假设X和Y的初始值都是20,我们让模型迭代100次得到的效果如下图:3. 根据给定样本求解出最佳组合假设样本中X和Y的值如下:x = 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公路顶管穿越施工方案
- 融媒体时代报纸编辑新闻策划能力的强化研究
- 聚腺苷二磷酸核糖聚合酶1在糖尿病心肌病中的作用及机制研究
- LPA、Cys-C水平与急性缺血性卒中A-S-C-O分型关系的研究
- 眼科医院电子病历管理系统的设计与实现
- 伦敦商铺转让合同范例
- 2025年谷糙分离设备项目合作计划书
- 买安置房合同范例
- 2025版新高考化学一轮复习第8章有机化学含选修第2节重要的烃教学案鲁科版
- 铝合金网架施工方案
- 异丁烷脱氢项目可行性研究报告
- 广东外语外贸大学会计专硕复试
- 行政处罚案件集体讨论审理记录
- 变电站综合自动化
- 德语现代主义文学-浙江大学中国大学mooc课后章节答案期末考试题库2023年
- 2022年安徽省公务员录用考试《行测》真题及答案
- 2023年高中音乐课件大宅门-电视剧《大宅门》主题歌
- 国际贸易地理全套课件
- 内科学支气管扩张症(课件)
- 部编人教版五年级道德与法治下册全册完整课件ppt
- RB/T 115-2014能源管理体系石油化工企业认证要求
评论
0/150
提交评论