关于线性回归

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

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

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

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

 举个栗子

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

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

$\text{其中}\ 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{\partial J(W)}{\partial 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$$

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值