吴恩达机器学习第一讲:以房价为例进行建模

Housing price prediction

 

已知条件:给出了一组离散的(Size,Price)点

目标:通过这些已知的点去预测在未知Size时的Price

问题分析与归纳:由于预测的Price变化量较大,可以建立连续函数去最大化的拟合已知的离散点,所以这是一个监督学习下的回归问题。

 

 

输入x :size

输出y:Price

M: 样本点总数

模型表示:

根据离散点的分布情况我们建立线性函数h去拟合这些离散点

所以问题变成了怎么找到拟合情况下线性函数h,我们可以通过下面的图来形象的表示我们的问题

进一步的我们对我们假设的h线性函数进行分析

所以问题变成了怎么去选择

为了加深对这两个参数的理解,我们选取一些特殊点刻苦不同的参数线假设函数的曲线情况

通过观察我们发现决定了函数与纵轴的交点位置, 决定了函数斜率走向

 

 

 

要找出合适的 则需要对其附加额外的约束条件,我们发现我们的目标是 与 尽可能地接近,于是我们建立平方差函数来表示这种接近程度。

 也就是我们常说的代价函数

所以问题就进一步演化为:

还是和之前一样的思路,拿到一个函数,我们可以取一些特殊点来加深我们对这个代价函数的理解。

这里我们假设 时,观察代价函数 变化情况

 

如图所示,当代价函数只有一个参数时,是一个凸函数,当同时包含两个参数时代价函数如图所示: 

为了更好的描述 与 之间的关系,我们采用等高线来描述这一变化情况

如图所示,假设起点设为1(800,-0.1) 终点如图2(100,0.15)

我们要做的就是让起点1不断地向2靠近即可,我们发现1在向2不断靠近的时候 在不断的减小, 不断地增大。

即:1怎么向2靠近,应该迈多大的步伐。这里就要涉及到著名的梯度下降算法

为了体现算法的普适性,这里选用较为复杂的代价函数,如图所示

  

如图所示,当我们的起点不同,最后到达的终点不同,即不同的起点梯度下降算法会找到最优的局部最优解。

  还是一样根据之前的 与 之间的关系,我们设置不同的起点,观察梯度下降算法的变化情况。

如图所示,当起点在右边时, >0,但不断向凸点靠近时,偏导数(即如图斜率)不断减小,从而 不断的减小得到更新。反之,同理。

 

这里 a是学习率

 

主要是控制朝着正确方向走的步伐。a越大,步伐越大,反之,越小。太大容易越过凸点,太小走的太慢。

 

 

 

 

 

 

 

 

 

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值