JiePro

静坐 常思己过 闲谈 莫论人非

导航

线性回归:梯度下降

目录:

1、什么是线性回归

  1.1 理论模型

  1.2 数据和估计

2、线性回归参数求解方法

  2.1 直接求取参数

  2.2 梯度下降法

  2.3 随机梯度下降法

3、为什么选择最小二乘为评判标准

  3.1 似然函数

  3.2 求解极大似然函数

  3.3 结论


 

1、什么是线性回归

  线性回归(Linear Regression)是利用称为线性回归方程的最小平方函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析。这种函数是一个或多个称为回归系数的模型参数的线性组合。只有一个自变量的情况称为简单回归,大于一个自变量情况的叫做多元回归。

1.1 理论模型

  给一个随机样本,一个线性回归模型假设回归子和回归量之间的关系是除了X的影响以外,还有其他的变量存在。我们加入一个误差项(也是一个随机变量)来捕获除了之外任何对的影响。所以一个多变量线性回归模型表示为以下的形式:

其他的模型可能被认定成非线性模型。一个线性回归模型不需要是自变量的线性函数。线性在这里表示的条件均值在参数里是线性的。例如:模型里是线性的,但在里是非线性的,它是的非线性函数。

1.2 数据和估计

  用矩阵表示多变量线性回归模型为下式:

  其中Y是一个包括了观测值的列向量,包括了未观测的随机成份以及回归量的观测值矩阵:

2、线性回归参数求解方法

  回归分析的最初目的是估计模型的参数以便达到对数据的最佳拟合。在决定一个最佳拟合的不同标准之中,最小二乘法是非常优越的。最小二乘法的拟合标准可以表示为:

用函数表示为:

用欧几里得度量表达为:

2.1 直接求取参数

  参数向量的估计值为:

  求解过程详见:斯坦福大学公开课:机器学习课程[第2集] 监督学习应用.梯度下降[00:52:00]

2.2 梯度下降法(gradient descent algorithm)

2.2.1 算法思想

  当你站在山上一点时,环顾四周,找到最陡峭的方向,延着这个最陡峭的方向走一段后,重复上述过程,直至到达最低点。最陡峭的方向即为该点的梯度方向。

  数学表述为:如果实值函数  在点  处可微且有定义,那么函数 在 点沿着梯度相反的方向  下降最快。因而,如果对于  为一个够小数值时成立,那么 

  因此,从初始估计  出发,并考虑如下序列  使得  因此可得到如果顺利的话序列  收敛到期望的极值。注意每次迭代步长  可以改变。其中称为学习速度(learning rate)。

2.2.2 算法实现

  对于输入样本集,其中,上标为样本序号,共m个样本,下标为每个样本的特征数,共n个特征。

  设拟合函数(hypothesis)为(其中x0=1):

  

  设目标函数为:

  则拟合标准即为min(J(θ)),算法仅需找到达到此标准的参数向量的值

  • 随机选取参数向量的初始值。
  • 对于每个参数θj (j∈[0,n]) 的值,做如下更新

 

  • 将J(θ)带入上式,则有

由于该算法,每次更新θ中的一个元素,需要处理整个输入样本集,所以该算法也叫批量梯度下降(batch gradient descent)。当将参数向量θ中所有元素更新后带入J(θ),通过判断两次迭代值来判读其是否收敛,以终止迭代。更新θ时,h(x)的值,上一次完全更新(θ所有元素更新一次)的θ值来带入求解。

2.2.3 特点

  1. 有可能会收敛于局部最小值
  2. 靠近极小值时速度减慢
  3. 由于每次更新都需要处理整个样本集的数据,对于大量数据来说,速度较慢

2.3 随机梯度下降法(stochastic/incremental gradient descent algorithm)

  其算法思想与上节一样,只不过每次更新参数向量时,只按照其中一个参数的梯度方向,更新参数向量中的一个参数。其伪代码如下:

  由于每次更新只用了一个样本,可能会出现折回,徘徊的现象。在最小值附近可能出一直徘徊的现象,所以最终的精度受到一定的限制,但其速度比批量梯度下降法快很多。

3 为什么选择最小二乘作为评判标准 

3.1 似然函数

  对于似然函数定义如下:设总体X服从分布P(x;θ)(当X是连续型随机变量时为概率密度,当X为离散型随机变量时为概率分布),θ为待估参数,X1,X2,…,Xn是来自于总体X的样本,x1,x2,…,xn为样本X1,X2,…,Xn的一个观察值,则样本的联合分布 L(θ) = L(x1,x2,…,xn;θ) = ∏P(xi;θ) 称为似然函数。似然函数的重要性不是它的具体取值,而是当参数变化时函数到底变小还是变大。

  极大似然函数即找出θ值,使得L(θ)取得最大值。极大似然函数思想为:样本的数据已经发生了,那么这组数据的出现概率必然是最大的。理解极大似然函数的一个很好的例子见参考资料4。

3.2 求解极大似然函数

  对于我们已知样本集,即为已经发生的事件,我们认为此事件的出现的概率必然是最大的。对于1.1节中误差项,其为独立的、与样本无关的随机变量,我们认为他服从高斯分布即,其概率密度函数为:

带入上式即为:

其中表示对于参数θ,给定的x(i)下样本y(i)的概率密度函数(概率分布)。其极大似然函数为:

求取极大似然函数L(θ)的最大值,即为目前样本出现的概率的最大值(我们认为已经发生的事情概率最大)。则有:

即求取的最小值,即2.2.2节中的目标函数J(θ)的最小值。

3.3 结论

  由以上证明可知,选取最小二乘作为判断标准与极大似然函数推出的结果是一样的,所以选取最小二乘为目标函数是非常合理的,其性能也是相当不错的。


 

参考资料:

  1. 线性回归:http://zh.wikipedia.org/wiki/%E7%B7%9A%E6%80%A7%E5%9B%9E%E6%AD%B8
  2. 梯度下降法:http://zh.wikipedia.org/wiki/%E6%A2%AF%E5%BA%A6%E4%B8%8B%E9%99%8D
  3. 斯坦福大学公开课课件:http://www.stanford.edu/class/cs229/notes/cs229-notes1.pdf
  4. 似然函数:http://zh.wikipedia.org/zh-cn/%E4%BC%BC%E7%84%B6%E5%87%BD%E6%95%B0

posted on 2013-08-23 17:51  JiePro  阅读(2420)  评论(0编辑  收藏  举报