1.线性回归算法与梯度下降算法

1.总括:线性回归即我们在分析某些数据样本之间的归来吧时,预先假定其存在线性关系。

    在此假设的基础上,利用数据样本拟合出线性方程的权重参数,进而得出此类数据的通用规律。

 主要解决的问题:预测连续值变量所对应的结果y

 举例:列入我们现在要预测:

  1).大首都北京的房价受那些因素影响(当然是一个复杂的问题,我们在这里只是简化或者说假设)

  2).大首都北京的房价和这些因素之间到底存在什么样的定量关系

 问题1:我们假设影响房价的因素有:房龄X1(就假设这一个吧)

 问题2:我们假设这些因素对房价的影响是线性的

2.此问题对应的数学模型如下:

  

  将问题具体化:假设我们取了10个样本(x1,y1),(x2,y2).....(x10,y10)

  

  则有:

  

  显然通过上述十个样本我们既可以求解出一组θ来。

*****************************************************************************************************************

3.提出问题:什么样的θ最好的呢?最能反映这些样本数据之间的规律呢?

  为了解决这个问题,我们需要引入误差分析预测值与真实值时间的误差为

  -----------------------------------------------------------------(1)

  而服从均值为0的正太分布(即高斯分布),即满足如下公式

  ---------------------------------------------------(2)

   将(1)式代入(2)式便可得到下面式子:

  

  

  为了便于计算我们引入对数似然

  

        

        

  当似然函数最大时对对应的参数即为最优的权重参数,只要最小即可

  如何才能求导上式的最小值,边成了我们求解此问题的关键,推导过程如下:

  

  

  导入等于0即可得:

  

4.总结:以上便是我们队二维线性回归问题的一个推导和理解过程,对于n维的问题,换汤不换药,用同样的方式解决就好

5.回顾:

  第一步:我们首先拿到样本数据,并假设此样本直线的规律是线性的

  第二步:列出线性方程,问题转移为求解权重参数θ,假设是n维,并设θ=[θ1,θ2,θ3.......θn]

  第三步:利用上述假设的权重参数θ,将任意一个样本数据代入对应的线性方程即可得到一个预测值

  第四步:预测值与真实值存在的误差为

  第五步:由于每个样本的误差是独立且同分布的,所以其服从正态分布,并且均值为0

  第六步:利用概率论中关于参数估计的方法极大似然估计,引入似然函数,求出似然函数最大值所对应的θ即为最优的θ

  第七步:利用导数求解即可 

***************************************************************************************************************

6.接下来我们还得思考一个问题,假如我们将上述样本交个计算机,我们应该怎么样让计算机帮助我们求解此类问题呢?

授之以鱼还是授人以渔呢?显然我们更希望给它一个解决此类问题的方向,让它帮助我们求解,这便引入了梯度下降算法   

4.显然上述思维,可以理解为我们人类计算此类问题的解决办法,那么如何通过这样的原理让计算机也能像人类一

样去解此类问题呢?我们就可以通过下述的方式让计算器也能自己计算出最优的θ

  引入损失函数,方程如下,推导过程可以参考第三步的图片:

  

  损失函数理解:

     注意m表示样本量,上标i表示第i个样本,1/2只是为了求导后能够消

     掉参数,简化运算

  给出上述损失函数的图像如下:

  

  

  问题解答:当上述损失函数的值最小时所对应的θ即可以认为其是最优的权重参数

-------------------------------------------------------------------------------------------------

4.如何求出上述函数的最小值呢?

  我们可以回顾一下我们曾经学过的开口向上的抛物线的最小值点的方法,求导让导入等于零即可;

  采用梯度下降原理,让计算机一步步求解,可以参考下图:

  

  

  上图理解:即我们预先有一个θ1的值,对θ1求偏导,从几何意义上将表示的是θ1出曲线的法线方向。假如说此时你的θ1的位置如下图:

  

  

  有了这个方向,你再给定一个步长,即就是学习率α,利用公式,

  

一步步即可将最优的θ1

  θ0用同样的方式就可以得到,这样你通过梯度下降就可以得到最优的θ1和θ0

  对于影响因素有n个的问题采用的是同样的方式。

猜你喜欢

转载自www.cnblogs.com/houzichiguodong/p/9119452.html