当前位置: 首页 > news >正文

简单线性回归模型原理推导(最小二乘法)和案例解析

线性回归是一种用于建模自变量与因变量之间线性关系的统计方法,核心是通过最小化误差平方和估计模型参数。以下从数学原理推导和案例两方面详细说明。

一、线性回归模型的数学原理推导

1. 模型定义

线性回归假设因变量 y 与自变量 x 存在线性关系,具体分为:

  • 简单线性回归(单自变量)

yi=β0+β1xi+εi(i=1,2,...,n)y_i = \beta_0 + \beta_1 x_i + \varepsilon_i \quad (i=1,2,...,n)yi=β0+β1xi+εi(i=1,2,...,n)

2. 参数估计:最小二乘法(OLS)

要详细推导 β1=∑(xi−xˉ)(yi−yˉ)∑(xi−xˉ)2\boldsymbol{\beta_1 = \frac{\sum (x_i - \bar{x})(y_i - \bar{y})}{\sum (x_i - \bar{x})^2}}β1=(xixˉ)2(xixˉ)(yiyˉ) 的过程,我们从 最小二乘法的正规方程 出发,逐步化简:

步骤 1:建立误差平方和与正规方程

简单线性回归模型为:
yi=β0+β1xi+εi(i=1,2,...,n)y_i = \beta_0 + \beta_1 x_i + \varepsilon_i \quad (i=1,2,...,n)yi=β0+β1xi+εi(i=1,2,...,n)

误差平方和(SSE)为:
SSE=∑i=1n(yi−β0−β1xi)2\text{SSE} = \sum_{i=1}^n (y_i - \beta_0 - \beta_1 x_i)^2SSE=i=1n(yiβ0β1xi)2

为最小化 SSE,对 β0\beta_0β0β1\beta_1β1 求偏导并令其为 0,得到 正规方程

(1)对 β0\beta_0β0 求偏导

∂SSE∂β0=−2∑i=1n(yi−β0−β1xi)=0\frac{\partial \text{SSE}}{\partial \beta_0} = -2 \sum_{i=1}^n (y_i - \beta_0 - \beta_1 x_i) = 0β0SSE=2i=1n(yiβ0β1xi)=0

整理得:
∑i=1nyi=nβ0+β1∑i=1nxi\sum_{i=1}^n y_i = n\beta_0 + \beta_1 \sum_{i=1}^n x_ii=1nyi=nβ0+β1i=1nxi

两边除以 nnn(记 xˉ=1n∑xi\bar{x} = \frac{1}{n}\sum x_ixˉ=n1xiyˉ=1n∑yi\bar{y} = \frac{1}{n}\sum y_iyˉ=n1yi,即样本均值),得:
yˉ=β0+β1xˉ⇒β0=yˉ−β1xˉ(1)\bar{y} = \beta_0 + \beta_1 \bar{x} \quad \Rightarrow \quad \boldsymbol{\beta_0 = \bar{y} - \beta_1 \bar{x}} \tag{1}yˉ=β0+β1xˉβ0=yˉβ1xˉ(1)

(2)对 β1\beta_1β1 求偏导

∂SSE∂β1=−2∑i=1nxi(yi−β0−β1xi)=0\frac{\partial \text{SSE}}{\partial \beta_1} = -2 \sum_{i=1}^n x_i (y_i - \beta_0 - \beta_1 x_i) = 0β1SSE=2i=1nxi(yiβ0β1xi)=0

整理得:
∑i=1nxiyi=β0∑i=1nxi+β1∑i=1nxi2(2)\sum_{i=1}^n x_i y_i = \beta_0 \sum_{i=1}^n x_i + \beta_1 \sum_{i=1}^n x_i^2 \tag{2}i=1nxiyi=β0i=1nxi+β1i=1nxi2(2)

步骤 2:代入 β0\boldsymbol{\beta_0}β0 的表达式到方程(2)

将式(1)β0=yˉ−β1xˉ\boldsymbol{\beta_0 = \bar{y} - \beta_1 \bar{x}}β0=yˉβ1xˉ 代入式(2),右边变为:
(yˉ−β1xˉ)∑xi+β1∑xi2(\bar{y} - \beta_1 \bar{x}) \sum x_i + \beta_1 \sum x_i^2(yˉβ1xˉ)xi+β1xi2

利用 ∑xi=nxˉ\sum x_i = n\bar{x}xi=nxˉ(因为 xˉ=1n∑xi\bar{x} = \frac{1}{n}\sum x_ixˉ=n1xi),展开并整理:
右边=yˉ⋅nxˉ−β1xˉ⋅nxˉ+β1∑xi2=nxˉyˉ+β1(∑xi2−nxˉ2)\begin{align*} \text{右边} &= \bar{y} \cdot n\bar{x} - \beta_1 \bar{x} \cdot n\bar{x} + \beta_1 \sum x_i^2 \\ &= n\bar{x}\bar{y} + \beta_1 \left( \sum x_i^2 - n\bar{x}^2 \right) \end{align*}右边=yˉnxˉβ1xˉnxˉ+β1xi2=nxˉyˉ+β1(xi2nxˉ2)

步骤 3:化简方程求 β1\boldsymbol{\beta_1}β1

式(2)左边为 ∑xiyi\sum x_i y_ixiyi,因此:
∑xiyi=nxˉyˉ+β1(∑xi2−nxˉ2)\sum x_i y_i = n\bar{x}\bar{y} + \beta_1 \left( \sum x_i^2 - n\bar{x}^2 \right)xiyi=nxˉyˉ+β1(xi2nxˉ2)

将左边的 nxˉyˉn\bar{x}\bar{y}nxˉyˉ 移到左边,得:
∑xiyi−nxˉyˉ=β1(∑xi2−nxˉ2)(3)\sum x_i y_i - n\bar{x}\bar{y} = \beta_1 \left( \sum x_i^2 - n\bar{x}^2 \right) \tag{3}xiyinxˉyˉ=β1(xi2nxˉ2)(3)

步骤 4:转化为离均差形式

(1)分子:∑xiyi−nxˉyˉ\sum x_i y_i - n\bar{x}\bar{y}xiyinxˉyˉ

展开 离均差 (xi−xˉ)(yi−yˉ)(x_i - \bar{x})(y_i - \bar{y})(xixˉ)(yiyˉ)
∑(xi−xˉ)(yi−yˉ)=∑(xiyi−xiyˉ−xˉyi+xˉyˉ)=∑xiyi−yˉ∑xi−xˉ∑yi+nxˉyˉ=∑xiyi−yˉ⋅nxˉ−xˉ⋅nyˉ+nxˉyˉ(因∑xi=nxˉ,∑yi=nyˉ)=∑xiyi−nxˉyˉ\begin{align*} \sum (x_i - \bar{x})(y_i - \bar{y}) &= \sum \left( x_i y_i - x_i \bar{y} - \bar{x} y_i + \bar{x}\bar{y} \right) \\ &= \sum x_i y_i - \bar{y} \sum x_i - \bar{x} \sum y_i + n\bar{x}\bar{y} \\ &= \sum x_i y_i - \bar{y} \cdot n\bar{x} - \bar{x} \cdot n\bar{y} + n\bar{x}\bar{y} \quad (\text{因} \sum x_i = n\bar{x}, \sum y_i = n\bar{y}) \\ &= \sum x_i y_i - n\bar{x}\bar{y} \end{align*}(xixˉ)(yiyˉ)=(xiyixiyˉxˉyi+xˉyˉ)=xiyiyˉxixˉyi+nxˉyˉ=xiyiyˉnxˉxˉnyˉ+nxˉyˉ(xi=nxˉ,yi=nyˉ)=xiyinxˉyˉ

因此,分子 ∑xiyi−nxˉyˉ=∑(xi−xˉ)(yi−yˉ)\sum x_i y_i - n\bar{x}\bar{y} = \sum (x_i - \bar{x})(y_i - \bar{y})xiyinxˉyˉ=(xixˉ)(yiyˉ)

(2)分母:∑xi2−nxˉ2\sum x_i^2 - n\bar{x}^2xi2nxˉ2

展开离均差平方 (xi−xˉ)2(x_i - \bar{x})^2(xixˉ)2
∑(xi−xˉ)2=∑(xi2−2xixˉ+xˉ2)=∑xi2−2xˉ∑xi+nxˉ2=∑xi2−2xˉ⋅nxˉ+nxˉ2(因∑xi=nxˉ)=∑xi2−nxˉ2\begin{align*} \sum (x_i - \bar{x})^2 &= \sum \left( x_i^2 - 2x_i \bar{x} + \bar{x}^2 \right) \\ &= \sum x_i^2 - 2\bar{x} \sum x_i + n\bar{x}^2 \\ &= \sum x_i^2 - 2\bar{x} \cdot n\bar{x} + n\bar{x}^2 \quad (\text{因} \sum x_i = n\bar{x}) \\ &= \sum x_i^2 - n\bar{x}^2 \end{align*}(xixˉ)2=(xi22xixˉ+xˉ2)=xi22xˉxi+nxˉ2=xi22xˉnxˉ+nxˉ2(xi=nxˉ)=xi2nxˉ2

因此,分母 ∑xi2−nxˉ2=∑(xi−xˉ)2\sum x_i^2 - n\bar{x}^2 = \sum (x_i - \bar{x})^2xi2nxˉ2=(xixˉ)2

步骤 5:最终推导

将分子和分母的离均差形式代入式(3),得:
β1=∑(xi−xˉ)(yi−yˉ)∑(xi−xˉ)2\boldsymbol{\beta_1 = \frac{\sum (x_i - \bar{x})(y_i - \bar{y})}{\sum (x_i - \bar{x})^2}}β1=(xixˉ)2(xixˉ)(yiyˉ)

核心逻辑总结

  1. 通过最小二乘法得到 两个正规方程,分别对应截距 β0\beta_0β0 和斜率 β1\beta_1β1
  2. 利用 β0\beta_0β0 与均值的关系(β0=yˉ−β1xˉ\beta_0 = \bar{y} - \beta_1 \bar{x}β0=yˉβ1xˉ),将其代入 β1\beta_1β1 的正规方程。
  3. 通过 离均差展开 化简,将代数形式转化为更直观的协方差/方差形式(分子是 xxxyyy 的协方差和,分母是 xxx 的方差和)。

这种推导体现了最小二乘法的核心:通过均值和离均差简化计算,最终得到斜率的直观表达式。

二、数学案例(简单线性回归)

问题:

已知5组数据(( x ) 为广告投入,( y ) 为销售额,单位:万元):
( x: [1, 2, 3, 4, 5] ),( y: [2, 4, 5, 7, 8] ),求回归方程 y^=β^0+β^1x\hat{y} = \hat{\beta}_0 + \hat{\beta}_1 xy^=β^0+β^1x

计算步骤:

公式:
β1=∑(xi−xˉ)(yi−yˉ)∑(xi−xˉ)2\boldsymbol{\beta_1 = \frac{\sum (x_i - \bar{x})(y_i - \bar{y})}{\sum (x_i - \bar{x})^2}}β1=(xixˉ)2(xixˉ)(yiyˉ)
β0=yˉ−β1xˉ\beta_0 = \bar{y} - \beta_1 \bar{x}β0=yˉβ1xˉ

  1. 计算均值
    xˉ=1+2+3+4+55=3\bar{x} = \frac{1+2+3+4+5}{5} = 3xˉ=51+2+3+4+5=3yˉ=2+4+5+7+85=5.2\bar{y} = \frac{2+4+5+7+8}{5} = 5.2yˉ=52+4+5+7+8=5.2

  2. 计算分子 ∑(xi−xˉ)(yi−yˉ)\sum (x_i - \bar{x})(y_i - \bar{y})(xixˉ)(yiyˉ)
    (1−3)(2−5.2)=(−2)(−3.2)=6.4(1-3)(2-5.2) = (-2)(-3.2) = 6.4(13)(25.2)=(2)(3.2)=6.4
    (2−3)(4−5.2)=(−1)(−1.2)=1.2(2-3)(4-5.2) = (-1)(-1.2) = 1.2(23)(45.2)=(1)(1.2)=1.2
    (3−3)(5−5.2)=0×(−0.2)=0(3-3)(5-5.2) = 0 \times (-0.2) = 0(33)(55.2)=0×(0.2)=0
    (4−3)(7−5.2)=1×1.8=1.8(4-3)(7-5.2) = 1 \times 1.8 = 1.8(43)(75.2)=1×1.8=1.8
    (5−3)(8−5.2)=2×2.8=5.6(5-3)(8-5.2) = 2 \times 2.8 = 5.6(53)(85.2)=2×2.8=5.6
    总和:6.4+1.2+0+1.8+5.6=156.4 + 1.2 + 0 + 1.8 + 5.6 = 156.4+1.2+0+1.8+5.6=15

  3. 计算分母 ∑(xi−xˉ)2\sum (x_i - \bar{x})^2(xixˉ)2
    (1−3)2=4(1-3)^2 = 4(13)2=4
    (2−3)2=1(2-3)^2 = 1(23)2=1
    (3−3)2=0(3-3)^2 = 0(33)2=0
    (4−3)2=1(4-3)^2 = 1(43)2=1
    (5−3)2=4(5-3)^2 = 4(53)2=4
    总和:4+1+0+1+4=104 + 1 + 0 + 1 + 4 = 104+1+0+1+4=10

  4. 估计参数
    斜率:β^1=1510=1.5\hat{\beta}_1 = \frac{15}{10} = 1.5β^1=1015=1.5
    截距:β^0=yˉ−β^1xˉ=5.2−1.5×3=0.7\hat{\beta}_0 = \bar{y} - \hat{\beta}_1 \bar{x} = 5.2 - 1.5 \times 3 = 0.7β^0=yˉβ^1xˉ=5.21.5×3=0.7

结果:

回归方程为 y^=0.7+1.5x\hat{y} = 0.7 + 1.5xy^=0.7+1.5x,即广告投入每增加1万元,销售额平均增加1.5万元。

三、总结

线性回归通过最小二乘法估计参数,核心是最小化误差平方和。简单线性回归的参数可通过均值和协方差直接计算。

http://www.lryc.cn/news/604879.html

相关文章:

  • react+ant design怎么样式穿透-tooltip怎么去掉箭头
  • 工作笔记-----存储器类型相关知识
  • Solon v3.4.2(Java 应用开发生态基座)
  • Java 控制台用户登录系统(支持角色权限与自定义异常处理)
  • python之asyncio协程和异步编程
  • 【MySQL学习|黑马笔记|Day3】多表查询(多表关系、内连接、外连接、自连接、联合查询、子查询),事务(简介、操作、四大体系、并发事务问题、事务隔离级别)
  • 自动化与配置管理工具 ——Ansible
  • 创建型设计模式-Builder
  • Newman+Jenkins实施接口自动化测试
  • 浏览器pdf、image显示
  • 防火墙与入侵检测
  • Linux下C/C++服务端崩溃排查手册
  • VMware16安装Ubuntu-22.04.X版本(并使用桥接模式实现局域网下使用ssh远程操作Ubuntu系统)
  • Linux 进程管理与计划任务设置
  • 16-C语言:第17天笔记
  • UnityHub Validation Failed下载编辑器错误,添加模块报错的解决方案
  • 外网访问文档编辑器Docsify(Windows版本),内网穿透技术应用简便方法
  • 论文阅读|ArxiV 2024|Mamba进一步研究|VSSD
  • Linux虚拟内存
  • Vision Transformer (ViT) 详解:当Transformer“看见”世界,计算机视觉的范式革命
  • LeetCode 160:相交链表
  • 【推荐100个unity插件】Unity 创意编程库——Klak插件的使用
  • 数据驱动的自动驾驶虚拟测试方法
  • Qt 嵌入式设备驱动开发
  • 5种安全方法:如何删除三星手机上的所有内容
  • 【同济大学】双速率自动驾驶架构LeAD:端到端+LLM,CARLA实测93%路线完成率,性能SOTA!
  • 谈谈毕业工作一年后的变化
  • 虚幻基础:模型碰撞体
  • Javascript 基础总结
  • # C语言:20250730学习(二级指针)