好文档 - 专业文书写作范文服务资料分享网站

回归和梯度下降

天下 分享 时间: 加入收藏 我要投稿 点赞

算法:

特点:

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

问题:如果答:因为

初始值就在localminimum的位置,则会如何变化?

已经在localminimum位置,所以derivative肯定是0,因此

不会变化;

如果取到一个正确的值,则costfunction应该越来越小;问题:怎么取值?

答:随时观察值,如果costfunction变小了,则ok,反之,则再取一个更小的值;

下图就详细的说明了梯度下降的过程:

从上面的图可以看出:初始点不同,获得的最小值也不同,因此梯度下降求得的只是局部最小值;

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

如果Learningrate取值后发现Jfunction增长了,则需要减小Learningrate的值;

梯度下降能够求出一个函数的最小值;线性回归需要求出使得得costfunction的最小;因此我们能够对costfunction运用梯度下降,即将梯度下降和线性回归进行整合,如下图所示:

梯度下降是通过不停的迭代,而我们比较关注迭代的次数,因为这关系到梯度下降的执行速度,为了减少迭代次数,因此引入了FeatureScaling;此种方法应用于梯度下降,为了加快梯度下降的执行速度;

思想:将各个feature的值标准化,使得取值范围大致都在-1<=x<=1之间;

常用的方法是MeanNormalization,即

或者:

[X-mean(X)]/std(X);

举个实际的例子,有两个Feature:

(1)size,取值范围0~2000;(2)#bedroom,取值范围0~5;则通过featurescaling后,

2、4多变量线性回归

前面我们只介绍了单变量的线性回归,即只有一个输入变量,现实世界不可能这么简单,因此此处我们要介绍多变量的线性回归;举个例子:

房价其实由很多因素决定,比如size、numberofbedrooms、numberoffloors、ageofhome等,这里我们假设房价由4个因素决定,如下图所示:

我们前面定义过单变量线性回归的模型:

这里我们可以定义出多变量线性回归的模型:

Costfunction如下:

如果我们要用梯度下降解决多变量的线性回归,则我们还是可以用传统的梯度下降算法进行计算:

例如:

1.我们想要根据一个学生第一年的成绩预测第二年的成绩,x为第一年得到A的数量,y为第二年得到A的数量,给定以下数据集:

x3240

(1)训练集的个数是多少?4个(2)J(0,1)的结果是多少?

J(0,1)=1/(2*4)*[(3-4)^2+(2-1)^2+(4-3)^2+(0-1)^2]=1/8*(1+1+1+1)=1/2=0.5;

我们也可以通过vectorization的方法快速算出J(0,1):

y4131

回归和梯度下降

算法:特点:(1)初始点不同,获得的最小值也不同,因此梯度下降求得的只是局部最小值;(2)越接近最小值时,下降速度越慢;问题:如果答:因为初始值就在localminimum的位置,则会如何变化?已经在localminimum位置,所以derivative肯定是0,因此不会变化;如果取到一个正确的
推荐度:
点击下载文档文档为doc格式
0z9ic0ak4q3cwgi893aj3uh255c6oi00c56
领取福利

微信扫码领取福利

微信扫码分享