吴恩达机器学习视频笔记——梯度下降简化技巧

 

 

房价预测

 

多个因素作用下,即θ有多个的情况下,如何得到假设函数。

第二行的训练样本,用矩阵进行表示如下:

同样,假设函数在4个变量的情况下,其表示方法为:

有n个因素作用的情况下(即默认X0 = 1):

 

如上所示,多输入变量的假设函数可以由两个矩阵相乘表示,一个矩阵表示变量,另外一个矩阵表示假设函数的系数

 

 

表达式基本不变,但为了区别输入变量,即x是一个还是多个,我们规定x的上坐标表示第几个变量,下坐标为1时代表计算的输入变量即x的个数为1,同时,相应的,微分方程也有了一定程度的更新:(如下图所示)

圈出的部分为作者求出的偏导数的表达式

 

特征缩放:

房价预测案例

当两个输入变量的值之间相差太大时:

              在不考虑θ的情况下,代价函数如上图所示,即是一个伸长的椭圆,宽度远小于其长度,在这种情况下进行梯度下降算法,路径如上图所示,即来回振荡,这样的情况下,所耗费的时间就比较长。因此,通过适当的对输入变量进行缩放,就能极大的增加其效率。   

如上图所示,将两个变量进行一定程度的缩放后,其更容易得到我们想要的结果。

最佳输入变量的取值范围为[-1,1]因此,进行特征缩放的时候,大概在接近[-1,1]的方向进行,取值范围太小或太大都不太恰当。

如上图所示,尽量让取值范围的平均值接近于0,同时可以注意到一点就是得到的结果里面X2取值范围的精确值并不为[0.5,0.5],不过适当的增删无伤大雅。

 

梯度下降过程中的实用性技巧

①如何选择学习率(α

横坐标:迭代步数

纵坐标:代价值

每走一步,代价值都会降低,为了保证达到最低代价值(不要越过它),恰当的学习率是十分必要的。

 

当代价值随着每一步增加,则说明学习率需要进行适当的减小

 

当发生如上情况, 步数和代价值的变化规律如下图,说明你的学习率太多了,建议适当减小学习率(同时检查代码是否有bug)

 


同时,学习率不能过小,太小的学习率梯度下降会非常非常非常的缓慢。

 

建议学习率选择如下:

0.0000001,……,0.01,0.03,0.1,0.3,1,3……

 

变量简化:

 

如图所示,有两个变量占有土地的宽度和深度,我们可以选择不使用这两个变量,而是创造一个名为面积的变量,这样就只有一个变量,在我们的假设函数当中。

在这个图中,为了考虑多种回归模型,我们可以将x2 = x1²             x3 = x1³(注意输入变量的取值范围,即缩放特征),但需要注意的满足上述条件的后期随着面积的增加价格会下降,显然现实生活中并不存在这样的好事,因此可以考虑平方项,至于到底应该选择哪种表达式,后续会进行相关的学习。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值