回归问题-总述+线性回归(Linear Regression )

【更新-在去年这个时候写的基础上做了修改】

今天正式开始机器学习之路(看的斯坦福大学的视频课以及讲义),由于看的时候蒙蒙的,因此想要找个平台保存一下自己学习的成果,因此写了此篇文章,作为机器学习的小白,文章可能有诸多不妥之处,不作为学术理论的深入研究范围。因为我是小白,我是小白,我是小白。

其中用到的一些算法基本的解释:

(1)最小二乘法(来自百度百科):最小二乘法。最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。

(2)梯度下降法-优化算法(来自百度百科):梯度下降是迭代法的一种,可以用于求解最小二乘问题(线性和非线性都可以)。在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。在求解损失函数的最小值时,可以通过梯度下降法来一步步的迭代求解,得到最小化的损失函数和模型参数值。反过来,如果我们需要求解损失函数的最大值,这时就需要用梯度上升法来迭代了。在机器学习中,基于基本的梯度下降法发展了两种梯度下降方法,分别为随机梯度下降法和批量梯度下降法。

回归问题主要情况如下:

(1)线性回归

首先举一个简单的例子,来说明问题。

比如温度和湿度,对生长期的农作物的影响。

y表示农作物生长速度。x为影响因素。构建的线性模型如下:其中\theta表示权重

                                                                   h_{\theta}(x)=\theta_{0}+\theta_{1} x_{1}+\theta_{2} x_{2}

如果影响因素更多的话,就利用下面的公式。

                                                                      h(x)=\sum_{i=0}^{n} \theta_{i} x_{i}=\theta^{T} x 

其中n表示影响因素个数。建立了一个这样的模型之后,要通过训练集求解权重。

即利用 h_{\theta}(x)=\theta_{0}+\theta_{1} x_{1}+\theta_{2} x_{2},去逼近样本的真实值。

                                              J(\theta)=\frac{1}{2} \sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2}                      (这个公式体现最小二乘法的思想)

             其中m为样本个数, x^{(i)}\right)  表示第i个样本,x^{(i)}\right)_{1} x^{(i)}\right)_{2}...x^{(i)}\right)_{n}表示第i个样本中的n个影响因素。

总结一下

上面这个图的意思就是,一般的回归问题可以分为两个分支:

1,假设残差服从一定的分布,从极大似然估计去求解参数(思想:概率最大的事件最可能发生

2,最小二乘法(像百度百科说的那样)其主要思想在于误差平方和的思想,求解参数。

(1)针对极大似然估计

         预测值和真实值之间都肯定存在误差\varepsilon,对于每个样本:

                                                                        y_{i}=w^{T} x_{i}+\varepsilon_{i}

        假设误差\varepsilon_{i}服从高斯分布(二维的时候为正太分布)则有:

                                                           p\left(\varepsilon_{i}\right)=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\varepsilon_{i}^{2}}{2 \sigma^{2}}\right)

        将残差分布公式带入y_{i}=w^{T} x_{i}+\varepsilon_{i},得到在已经参数w和x_{i},预测值y_{i}的条件概率:

                                              p\left(y_{i} | x_{i} ; w\right)=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y_{i}-w^{T} x_{i}\right)^{2}}{2 \sigma^{2}}\right)

       已知预测值y_{i}的条件概率,就可以利用极大似然的思想去求解里面的参数w。

       构造如下:

                                     L(w)=\prod_{i=1}^{m} p\left(y_{i} | x_{i} ; w\right)=\prod_{i=1}^{m} \frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y_{i}-w^{T} x_{i}\right)^{2}}{2 \sigma^{2}}\right)

     再利用log_{L(w)},求导的方式求解参数。

                                        L(w)=\log \prod_{i=1}^{m} \frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y_{i}-w^{T} x_{i}\right)^{2}}{2 \sigma^{2}}\right)

                                                   =\sum_{i=1}^{m} \log \frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y_{i}-w^{T} x_{i}\right)^{2}}{2 \sigma^{2}}\right)

                                                  =\sum_{i=1}^{m} \log \frac{1}{\sqrt{2 \pi} \sigma}+\sum_{i=1}^{m} \log \left(\exp \left(-\frac{\left(y_{i}-w^{T} x_{i}\right)^{2}}{2 \sigma^{2}}\right)\right)

                                                   =m \log \frac{1}{\sqrt{2 \pi} \sigma}-\sum_{i=1}^{m} \frac{\left(y_{i}-w^{T} x_{i}\right)^{2}}{2 \sigma^{2}}

 在对上式利用求导求解参数的时候,就是对\sum_{i=1}^{m} \frac{\left(y_{i}-w^{T} x_{i}\right)^{2}}{2 \sigma^{2}}这部分求导,可以发现这部分与最小二乘法中的误差平方和几乎一致。

误差平方和表示如下:

                                                                  J(w)=\frac{1}{2} \sum_{i=1}^{m}\left(y_{i}-w^{T} x_{i}\right)^{2} 

由于对w求解,所以\sigma^{2}是可以忽略的。因此最终两条路是走到了同一个终点,前提(假设残差正态分布)。

(2)针对最小二乘法

      接极大似然估计思想,对应误差平方,求解过程如下:

                                              J(w)=\frac{1}{2} \sum_{i=1}^{m}\left(y_{i}-w^{T} x_{i}\right)^{2}

                                                       =\frac{1}{2}\left\|\left[\begin{array}{c}{y_{1}-w^{T} x_{1}} \\ {y_{2}-w^{T} x_{2}} \\ {\cdots} \\ {y_{m}-w^{T} x_{m}}\end{array}\right]\right\|^{2}    

                                                        =\frac{1}{2}\left\|\left[\begin{array}{l}{y_{1}} \\ {y_{2}} \\ {\cdots} \\ {y_{m}}\end{array}\right]-w^{T}\left[\begin{array}{c}{x_{1}} \\ {x_{2}} \\ {\cdots} \\ {x_{m}}\end{array}\right]\right\|^{2}

                                                       =\frac{1}{2}\left\|y-w^{T} X\right\|^{2}=\frac{1}{2}\left(y-w^{T} x\right)^{T}\left(y-w^{T} x\right)

对J(w)关于w求导有:

                                                         \begin{array}{l}{\frac{\partial J(w)}{\partial w}=\frac{1}{2} \frac{\partial}{\partial w}\left(\left(y-w^{T} x\right)^{T}\left(y-w^{T} x\right)\right)} \\ {=\frac{1}{2} \frac{\partial}{\partial w}\left((y-X w)^{T}(y-X w)\right)} \\ {=\frac{1}{2} \frac{\partial}{\partial w}\left(w^{T} X^{T} X w-2 w^{T} X y+y^{T} y\right)} \\ {=\frac{1}{2}\left(X^{T} X w+X^{T} X w-2 X y\right)} \\ {=X^{T} X w-X y}\end{array}

令导数等于0,有:

                                                                               \frac{\partial J(w)}{\partial w}=0

                                                                             X^{T} X w=X y

故最小二乘法关于权重的求解,最终可以得到一个公式:

                                                                    w=\left(X^{T} X\right)^{-1} X^{T} y

但是,一般情况下,这种矩阵表示很难求解,主要原因是X^{T} X不可逆,因此关于参数求解,有了梯度下降法、拟牛顿法等一系列的优化算法方法。

为了思路更清楚,优化算法重新开一篇。

参考文献:

感谢刘小朋友提供了PPT。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Foneone

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值