线性回归简介

线性回归简介

1、情景描述

假设,我们现在有这么一张图:

其中,横坐标x表示房子的面积,纵坐标y表示房价。我们猜想x与y之间存在线性关系: y = k x + b y=kx+b y=kx+b

现在,思考一个问题:如何找到一条直线,使得这条直线尽可能地拟合图中的所有数据点?

这个找最佳拟合直线的过程称为做线性回归

简而言之,线性回归就是在N维空间中找一个类似直线方程y=kx+b一样的函数来拟合数据

线性回归模型则是利用线性函数对一个或多个自变量(x)和因变量(y)之间的关系进行拟合的模型

这里有一个问题,线性等于直线吗?

线性函数的定义是零阶或一阶多项式。特征是二维时,线性模型在二维空间构成一条直线;特征是三维时,线性模型在三维空间中构成一个平面;以此类推,具体见下文线性回归的定义及推导

还有一个问题,那就是如何评判找的哪条直线才是最优的?详见文章最小二乘法:传送门

2、线性回归

1)线性回归的定义及推导

定义:对于一个有n个特征的样本而言,它的线性回归方程如下:

y = f ( x 1 , x 2 , . . . , x n − 1 ) = ω 0 + w 1 x 1 + w 2 x 2 + . . . + w n − 1 x n − 1 y = f(x_1,x_2,...,x_{n-1}) = \omega_0 + w_1x_1 + w_2x_2 +...+w_{n-1}x_{n-1} y=f(x1,x2,...,xn−1)=ω0+w1x1+w2x2+...+wn−1xn−1

其中, w 0 w_0 w0~ w n − 1 w_{n-1} wn−1统称为模型的参数,表示样本有n个特征,有时也用 θ \theta θ或 β \beta β表示

w 0 w_0 w0称为截距, w 1 w_1 w1~ w n − 1 w_{n-1} wn−1称为回归系数(Regression Coefficients), x 1 x_1 x1~ x n − 1 x_{n-1} xn−1为样本的输入向量,y为样本的输出向量; x 0 x_0 x0始终等于1

根据简单场景推导n个特征的样本线性回归方程过程如下:

假设我们有2个样本:( x 1 x_1 x1=1, y 1 y_1 y1=1)、( x 2 x_2 x2=2, y 2 y_2 y2=3),我们猜测其关系符合:
y = k x + b y = kx + b y=kx+b

将样本代入函数:
{ k ∗ 1 + b = 1 k ∗ 2 + b = 3 \begin{cases} k * 1 + b = 1 \\ k * 2 + b = 3 \end{cases} {k∗1+b=1k∗2+b=3

按照从 x 0 x_0 x0~ x n − 1 x_{n-1} xn−1的顺序排列:
{ b ∗ 1 + k ∗ 1 = 1 b ∗ 1 + k ∗ 2 = 3 \begin{cases} b*1 + k*1 = 1 \\ b*1 + k*2 = 3 \end{cases} {b∗1+k∗1=1b∗1+k∗2=3

对应到2个特征的线性回归方程模板:
{ b ∗ x 01 + k ∗ x 11 = y 1 b ∗ x 02 + k ∗ x 12 = y 2 \begin{cases} b*x_{01} + k*x_{11} = y_1 \\ b*x_{02} + k*x_{12} = y_2 \end{cases} {b∗x01+k∗x11=y1b∗x02+k∗x12=y2

将方程转换为矩阵:

1 1 1 2 \] \[ b k \] = \[ 1 3 \] \\left\[ \\begin{matrix} 1 \& 1 \\\\ 1 \& 2 \\end{matrix} \\right\] \\left\[ \\begin{matrix} b \\\\ k \\end{matrix} \\right\] = \\left\[ \\begin{matrix} 1 \\\\ 3 \\end{matrix} \\right\] \[1112\]\[bk\]=\[13

其中, x 0 x_0 x0始终为1。再次对应到2个特征的线性回归方程模板:

1 x 11 1 x 12 \] \[ b k \] = \[ y 1 y 2 \] \\left\[ \\begin{matrix} 1 \& x_{11} \\\\ 1 \& x_{12} \\end{matrix} \\right\] \\left\[ \\begin{matrix} b \\\\ k \\end{matrix} \\right\] = \\left\[ \\begin{matrix} y_1 \\\\ y_2 \\end{matrix} \\right\] \[11x11x12\]\[bk\]=\[y1y2

根据上述过程,推广到一般场景:
1 x 11 x 21 ⋯ x n − 1 , 1 1 x 12 x 22 ⋯ x n − 1 , 2 ⋮ ⋮ ⋮ ⋱ ⋮ 1 x 1 m x 2 m ⋯ x n − 1 , m ω 0 ω 1 ⋮ ω m − 1 = y 1 y 2 ⋮ y m \left \\begin{matrix} 1 \& x_{11} \& x_{21} \& \\cdots \& x_{{n-1},1} \\\\ 1 \& x_{12} \& x_{22} \& \\cdots \& x_{{n-1},2} \\\\ \\vdots \& \\vdots \& \\vdots \& \\ddots \& \\vdots \\\\ 1 \& x_{1m} \& x_{2m} \& \\cdots \& x_{{n-1},m} \\end{matrix} \\right \left \\begin{matrix} \\omega_0 \\\\ \\omega_1 \\\\ \\vdots \\\\ \\omega_{m-1} \\end{matrix} \\right = \left \\begin{matrix} y_1 \\\\ y_2 \\\\ \\vdots \\\\ y_m \\end{matrix} \\right 11⋮1x11x12⋮x1mx21x22⋮x2m⋯⋯⋱⋯xn−1,1xn−1,2⋮xn−1,m ω0ω1⋮ωm−1 = y1y2⋮ym

简化:
X ω = y X\omega=y Xω=y

其中,y为m × \times × 1的矩阵向量,表示模型的理论输出;X为m × \times × n的矩阵向量,表示模型的样本输入,m表示样本数,n表示样本的特征数; ω \omega ω为n × \times × 1的矩阵向量,表示模型有n个特征

2)线性回归的解

线性回归的解析解 ω \omega ω推导:

假设Y是样本的输出矩阵向量,维度为m × \times × 1,则根据勒让德最小二乘准则有:
J ( ω ) = ∣ ∣ y − Y ∣ ∣ 2 = ∣ ∣ X ω − Y ∣ ∣ 2 = ( X ω − Y ) T ( X ω − Y ) J(\omega) = ||y-Y||^2 = ||X\omega-Y||^2=(X\omega-Y)^T(X\omega-Y) J(ω)=∣∣y−Y∣∣2=∣∣Xω−Y∣∣2=(Xω−Y)T(Xω−Y)

根据数学知识,函数导数为0处取极值:
∂ ∂ ω J ( ω ) = 2 X T X ω − 2 X T Y = 0 \frac{\partial}{\partial\omega}J(\omega)=2X^TX\omega-2X^TY=0 ∂ω∂J(ω)=2XTXω−2XTY=0

解得:
ω = ( X T X ) − 1 X T Y \omega=(X^TX)^{-1}X^TY ω=(XTX)−1XTY

3)线性回归解的几何意义

线性回归的解是通过最小二乘法求解的。其几何意义是:求解 Y Y Y在 X X X的列向量空间中的投影

几何意义的推导后续视情况补充

相关推荐
老余捞鱼5 天前
线性回归实战:5步验证你的量化因子是否真有效
算法·金融·回归·线性回归·ai量化
2601_961845156 天前
花生十三网课网盘|百度网盘|下载
数据结构·算法·链表·贪心算法·排序算法·线性回归·动态规划
金融小师妹7 天前
基于AI事件驱动模型与验证溢价框架的市场分析:从预期交易到事实验证,原油与黄金面临关键定价重构
大数据·人工智能·算法·均值算法·线性回归
安逸sgr7 天前
《图解机器学习-第六章》:线性回归和逻辑回归:最简单但最重要的机器学习模型
机器学习·逻辑回归·线性回归
2601_961845157 天前
花生十三图推思维导图|图形推理|技巧
数据结构·算法·链表·贪心算法·排序算法·线性回归·动态规划
2601_961875249 天前
法考资料2026|全套|资料已整理
数据结构·算法·链表·贪心算法·eclipse·线性回归·动态规划
金融小师妹11 天前
AI因子共振模型显示:金银比突破区间上沿,白银定价逻辑进入再校准阶段
人工智能·算法·均值算法·线性回归
chloe233314 天前
【动手学深度学习】笔记1:简单的线性回归
笔记·深度学习·线性回归
wayz1114 天前
Overlap:SLOPE(线性回归斜率)技术指标详解
算法·金融·数据分析·回归·线性回归·量化交易·特征工程
千寻girling14 天前
一周没跑步了 ,今日跑步 5KM , 哑铃+健身 20min , 俯卧撑 30 个 ;
数据结构·c++·python·算法·leetcode·职场和发展·线性回归