当前位置:   article > 正文

监督学习三要素——模型、参数、目标函数_目标函数,模型函数

目标函数,模型函数

1.模型

选择机器学习的模型,根据不同的业务或使用场景选择合适的模型,下面是sklearn上的机器学习模型选择的一个地图。
这里写图片描述

2.参数

模型的参数用来让数据更好的适应结果
例如有一个线性模型为:Hypothesishθ(x)=θ0+θ1x,里面有θ0和θ1两个参数,参数的改变将会导致假设函数的变化
这里写图片描述
现实的例子中,数据会以很多点的形式给我们,我们想要解决回归问题,就需要将这些点拟合成一条直线,找到最优的θ0和θ1来使这条直线更能代表所有数据。
这里写图片描述

整个模型Hypothesishθ(x)=θ0+θ1x中只有θ0和θ1是未知的,如果知道了参数,我们就求出了模型结果

那么怎么求出参数呢?就有了下面的目标函数,用来求模型的参数。

3.目标函数

目标函数也为代价函数,我们的目标是让代价(错误)最小
而如何找到最优解呢,这就需要使用代价函数来求解了,以平方误差代价函数为例。
这里写图片描述
平方差代价也就是真实值和预测值差的平方

目标:minθ0,θ1=12m(hθ(x)iyi)2
代价函数:J(θ0,θ1)=12m(hθ(x)iyi)2

1.如果θ0=0
则代价函数只是关于θ1的函数
这里写图片描述
那么要让代价函数最下,只需要求出二次函数的最小值即可,由此也可以得到参数的值

2.θ0θ1都不固定
这里写图片描述
找到函数最低点也可得到参数值
当然我们也能够用二维的图来表示,即等高线图;
这里写图片描述

注意:如果是线性回归,则costfunctionJ与的函数一定是碗状的,即只有一个最小点。

目标函数的求解

引出了梯度下降:能够找出cost function函数的最小值;
梯度下降原理:将函数比作一座山,我们站在某个山坡上,往四周看,从哪个方向向下走一小步,能够下降的最快;

当然解决问题的方法有很多,梯度下降只是其中一个,还有一种方法叫Normal Equation;

方法:
(1)先确定向下一步的步伐大小,我们称为Learning rate;
(2)任意给定一个初始值:;
(3)确定一个向下的方向,并向下走预先规定的步伐,并更新;
(4)当下降的高度小于某个定义的值,则停止下降;

算法:
这里写图片描述

特点:
(1)初始点不同,获得的最小值也不同,因此梯度下降求得的只是局部最小值;
(2)越接近最小值时,下降速度越慢;

问题:如果初始值就在local minimum的位置,则会如何变化?
答:因为已经在local minimum位置,所以derivative 肯定是0,因此不会变化;

如果取到一个正确的值,则cost function应该越来越小;
问题:怎么取值?
答:随时观察值,如果cost function变小了,则ok,反之,则再取一个更小的值;

下图就详细的说明了梯度下降的过程:
这里写图片描述
从上面的图可以看出:初始点不同,获得的最小值也不同,因此梯度下降求得的只是局部最小值;

注意:下降的步伐大小非常重要,因为如果太小,则找到函数最小值的速度就很慢,如果太大,则可能会出现overshoot the minimum的现象;

下图就是overshoot minimum现象:
这里写图片描述

如果Learning rate取值后发现J function 增长了,则需要减小Learning rate的值

感谢:(参考文献)
http://blog.csdn.net/xiazdong/article/details/7950084
http://blog.csdn.net/sd9110110/article/details/52863390

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/499478
推荐阅读
相关标签
  

闽ICP备14008679号