关于线性回归

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,118元/月
云原生网关 MSE Higress,422元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 线性回归($linear\  regression$),目标就是用一个(n-1)维的东西,来拟合一些在(n)维图形上的点,并且使得点集与拟合函数间的误差最小。如果自变量的个数只有一个,就称为一元线性回归;如果自变量的个数多于一个,就称为多元线性回归。

线性回归($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$$

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
8月前
|
机器学习/深度学习 数据采集 算法
线性回归算法是什么
线性回归算法是什么
98 0
|
5月前
|
机器学习/深度学习 数据挖掘 C#
用C#实现简单的线性回归
用C#实现简单的线性回归
61 1
|
6月前
什么是线性回归
【7月更文挑战第21天】什么是线性回归。
84 2
|
6月前
|
数据可视化 Python
数学方法解决线性回归问题
【7月更文挑战第21天】数学方法解决线性回归问题
50 2
|
6月前
|
机器学习/深度学习 算法 数据挖掘
线性回归
【7月更文挑战第21天】线性回归。
67 1
|
6月前
|
机器学习/深度学习
逻辑回归
【7月更文挑战第22天】逻辑回归
47 5
|
7月前
|
机器学习/深度学习 存储 自然语言处理
逻辑回归的介绍和应用
**逻辑回归简介** 逻辑回归是一种分类模型,尽管名字含“回归”,实际上是用于二分类问题的。它简单易懂,计算高效,适用于许多领域,如医学、社会科学、市场营销等。优点是模型简单,易于实现,具有强解释性。然而,它易受多重共线性影响,可能欠拟合,分类精度有限,尤其对非线性问题和数据不平衡问题处理不佳。在实践中,逻辑回归常作为其他复杂算法的基线,如用于信用卡欺诈检测和点击率预测。通过调整和与其他技术结合,如GBDT,可以提升其性能。
|
6月前
|
机器学习/深度学习 数据采集 算法
|
8月前
|
机器学习/深度学习 分布式计算 前端开发
线性回归模型使用技巧
【5月更文挑战第14天】线性回归基础及进阶应用概述:探讨模型假设、最小二乘法和系数估计;通过多项式特征处理非线性关系;应用正则化(Lasso、Ridge)减少过拟合;特征选择优化模型复杂度;使用GridSearchCV进行超参数调优;处理分组数据、缺失值;集成方法(Bagging)提升性能;尝试岭回归、弹性网络、高斯过程回归和鲁棒回归;利用模型融合增强预测力;应对大规模数据挑战;分析特征重要性;自动特征工程;增强模型解释性;集成模型多样性及权重调整;应用序列最小优化(SMO)、预测区间估计;动态特征选择;模型校验与调优;稳定性分析;迁移学习。
119 3
|
8月前
R方和线性回归拟合优度
R方和线性回归拟合优度