关于线性回归

Posted cn-suqingnian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于线性回归相关的知识,希望对你有一定的参考价值。

线性回归($linear  regression$),目标就是用一个(n-1)维的东西,来拟合一些在(n)维图形上的点,并且使得点集与拟合函数间的误差最小。

如果自变量的个数只有一个,就称为一元线性回归;如果自变量的个数多于一个,就称为多元线性回归。

比如,我们想得到房屋的价格与房间个数、大小、状况等多种因素之间的关系时,将这些因素作为自变量,将房屋价格作为因变量,这就是多元线性回归。

其实,我们平常说的数据挖掘,就是拟合出来一个线性回归模型。

 举个栗子

给定一个大小为$n$ 的数据集

$${ y_{i},x_{i1},...,x_{ia}}_{i=1}^{n}$$

$ ext{其中} x_{i1},...x_{id}$是第$i$个样本的$d$个属性值,$y_{i}$ 是 是该样本待预测的目标。线性回归模型假设目标$y_{i}$ 可以被属性间的线性组合描述,即

$$y_{i}=sum_{j=1}^{d}w_{j}x_{ij}+b,i=1,...,n$$

例如,我们现在要买一套房子,然后呢,我们统计了一下每个房源的大小,方向,作用点 ,位置,环境等信息,对于每个信息每个档次,打出一个分,最后根据各个因素的影响的大小决定每个因素所占有的权重,之后我们的估价就是这些权重*分值的和了。这样的话,我们就可以根据我们的估算去买房子了。


线性回归模型有形式简单和易于建模分析的优点,它在实际问题中得到了大量的应用。


线性回归模型

线性回归的一般模型为:

$$widehat{y}=w_{0}+sum_{i=1}^{n}w_{i}x_{i}$$

其中$widehat{Y}$ 表示模型的预测结果,用来和真实值$Y$ 区分。模型要学习的参数(不严谨的说,就是每个因素所占有的权重)为 $w_{0},...,w_{n}$  即:$W$。

如果我们构造:
 $$widehat{Y}=widehat{y}$$

 $$X=[1,x_{1},...,,x_{n}]^{T}$$

 $$W=[w_{0},w_{1},...,w_{n}]^{T}$$

那么该模型可以写为矩阵形式:

 $$widehat{Y}=W^{T}X$$

模型的评价标准

假设集合数据为 $D=(X_{1},Y_{1}),...,(X_{n},Y_{n})$ ,将集合的 $X$ 代入到模型中即可求得模型的预测值 $widehat{Y}$。

我们需要给模型一个优化目标,使得学到的参数能够让预测值 $widehat{Y}$ 。 尽可能地接近真实值$Y$。

这里我们引入损失函数Loss Function这个概念。

输入任意一个数据样本的目标值 $Y_{i}$  和模型给出的预测值 $widehat{Y_{i}}$,损失函数输出一个非负的实值。这个实值通常用来反映模型误差的大小。

对于线性回归模型来讲,最常见的损失函数就是均方误差Mean  Squared  Error,MSE),它的形式是:

 $$J(W)=MSE=frac{1}{n}sum_{i=1}^{n}(widehat{Y_{i}}-Y_{i})^{2}$$

即对于一个大小为 $n$ 的集合,$MSE$是$n$ 个数据预测结果误差平方的均值。

 模型的求解方法

对于小数量级样本以及矩阵满秩的特殊情况,线性回归模型是有解析解的。

将集合中的变量写成矩阵形式:令
 $$X=[X_{1},...,X_{n}]^{T},Y=[Y_{1},...,Y_{n}]^{T}$$

根据线性回归模型,可以得到预测值 $widehat{Y}=XW$

那么损失函数可以表示为:

 $$J(W)=MSE=frac{1}{n}sum_{i=1}^{n}(widehat{Y_{i}}-Y_{i})^{2}frac{1}{n}(XW-Y)^{T}(XW-Y)$$

将损失函数$J$对变量$W$ 求导,并令其等于$0$可得:

 $$frac{∂J(W)}{∂W}=frac{1}{n}(XW-Y)^{T}X=0$$

 $$X^{T}XW=X^{T}Y$$

在$X^{T}X$的逆存在时可得

 $$W=(X^{T}X)^{-1}X^{T}Y$$

以上是关于关于线性回归的主要内容,如果未能解决你的问题,请参考以下文章

关于逻辑回归与线性回归

关于线性回归

关于多元线性回归用spss分析后结果该怎么看

关于线性回归和逻辑回归一些深入的思考

关于机器学习中基于对数线性回归模型的讨论

比较贝叶斯线性回归与线性回归