线性回归



监督式学习中关于房屋价格的例子稍作更改,除了原有数据,再加入卧室数量这一数据项。

居住面积( feet 2   )卧室数量价格(1000$s)
21043400
16003330
24003540
14162232
30004540

现在输入变成了一个二维向量,其中 x (i) 1   表示训练集中第i个房屋的居住面积, x (i) 2   表示第i个房屋的卧室数量。为了完成监督式学习,我们首先考虑如何将假设 h  在计算机中实现。为此我们先假设 y  x  的一个线性函数:

h θ (x)=θ 0 +θ 1 x 1 +θ 2 x 2  

上式中 θ  是将 X  映射到 Y  的线性函数的组成参数(也叫权重)。后文中会将 h θ (x)  简写为 h ( x)  ,我们还可以令 x 0 =1  (截距项的系数),则上式可简写为:

h(x) =θ 0 +θ 1 x 1 +θ 2 x 2 =θ 0 x 0 +θ 1 x 1 +θ 2 x 2 = i=0 n θ i x i =θ T x  

构成 h(x)  θ  x  都是列向量, n  是输入属性的个数(本例中是2)。要让预测值 h(x)  接近目标变量期望 y  ,我们该如何选择参数 θ  呢?我们引入成本函数的概念,让他表示 h(x)  y  的近似度:

J(θ)=12  i=1 m (h θ (x (i) )y (i) ) 2 . 

由上面的最小方差成本函数衍生出最小方差回归模型


1 LMS算法

要选择合适的权重值 θ  使得成本函数 J(θ)  的值最小化。我们需要一个搜索算法,从某一随机值出发,不断地迭代更新最后收敛到成本函数最小的最优解。我们使用梯度下降算法,从初始 θ  出发,不断重复以下操作:

θ j :=θ j αθ j  J(θ). 

其中 α  表示学习率,整个式子每次更新,就像是在 J(θ)  下降最快的方向迈一小步,因此被称为梯度下降法。

将成本函数关于某一权重 θ j   的偏导数展开:

θ j  J(θ) =θ j  12 (h θ (x)y) 2 =212 (h θ (x)y)θ j  (h θ (x)y)=(h θ (x)y)θ j  ( i=0 n θ i x i y)=(h θ (x)y)x j   

对于单个训练样本则有:

θ j :=θ j +α(y (i) h θ (x (i) ))x (i) j . 

该方法被称为最小均方差更新法(Least Mean Squares),也叫Widrow-Hoff学习法。这种方法直观而自然,我们可以看到当预测值与实际值接近时,权重变化就会很小;反之,权重就会变化很大,从逻辑而言这个公式也合情合理。

上面的公式只对单个训练样本,我们有两种方法可将其推广到整个训练集的回归,其一执行以下操作:

 Repeat until convergence {θ j :=θ j +α i=1 m (y (i) h θ (x (i) ))x (i) j (for every j)}   

它每次更新要遍历整个训练集,因此称为批梯度下降法。注意到,该方法确实有可能落入局部最优解的陷阱,但我们暂时只考虑仅含一个全局最优解的优化问题,这时该方法每次都能收敛到全局最优。

成本函数是一个凸二次函数,下面我们给一个梯度下降优化二次函数的图示:
gradient descent

上图的椭圆代表二次函数的等高线,折现的轨迹是梯度下降的路径,而其上的每个点则表示 θ  梯度下降时的值,可以看到它从(48, 30)出发最后到达最优解(25, 25)。

如果我们使用梯度下降法求解之前仅有房屋面积的例子,可得 θ 0 =71.27,θ 1 =0.1345  ,可绘制出下图:
house price

将卧室数量也加入特征中,则求得: θ 0 =89.60,θ 1 =0.1392,θ 2 =8.738 


除了批梯度下降,还有一种方法同样表现出色,它的运行步骤是这样的:

 Loop {for i=1 to m, {θ j :=θ j +α(y (i) h θ (x (i) ))x (i) j (for every j)}}   

这种方法每遇到一个样本就更新一次权重,它被称为随机梯度下降法或增量梯度下降法。由于批梯度下降每走一步都要遍历训练集,当样本个数很大时,训练的时间成本就很高。随机梯度下降每遇一个样本就更新一次权重,普遍来说收敛速度会快于批梯度法(虽然有时会无法收敛到最优解,而是在最优解附近振荡,即使如此得到的近似依然很好)。当训练集很大时,随机梯度下降往往比批梯度下降更受欢迎。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值