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

【机器学习】线性回归 多元线性回归

【机器学习系列】

  • KNN算法
    KNN算法原理简介及要点
    特征归一化的重要性及方式
  • 线性回归算法
    线性回归与一元线性回归
    线性回归模型的损失函数
    多元线性回归
    多项式线性回归

多元线性回归

    • V1.0
    • 多元线性回归
    • 一元线性回归与多元线性回归
    • 多元线性回归模型的误差衡量
    • 多元线性回归的最优解
      • 多元线性回归的解析解(标准数学解法)
        • 多元线性回归的解析解公式分析
      • 多元线性回归的搜索解法

V1.0

多元线性回归

多元线性回归使用多维特征向量来推算回归值,推算方法使用以下公式
y = w 0 + w 1 ∗ x 1 + w 2 ∗ x 2 + . . . + w n ∗ x n y=w_0+w_1*x_1+w_2*x_2+...+w_n*x_n y=w0+w1x1+w2x2+...+wnxn
其中 x i x_i xi是N维特征向量第 i i i 维的数据, w i w_i wi是特征向量第 i i i 维特征的权值, y y y是该特征向量的预测值。
求解多元线性回归模型,即通过N维特征向量及其对应的标签真实值,求解多元线性公式参数, w 0 . . w n w_0..w_n w0..wn的过程。

一元线性回归与多元线性回归

一元线性回归的2个参数 k k k b b b,其中 k k k对应一元特征的权值。
多元线性回归有 w 1 w_1 w1- w n w_n wn这N个权重,分别对应特征向量的N个维度的特征值。

多元线性回归模型的误差衡量

对于单个特征向量,其误差为 y r e a l − y p r e d i c t y_{real}-y_{predict} yrealypredict
总体误差,使用各个特征向量投票决定,这里可以使用MSE(Mean Squared Error)方法(其他总体误差计算方法比如RMES,MAE)。
可以认为最优的模型即是将总体误差最小化时的模型,在使用MSE的情况下,即是要求解使得模型总体损失最小时的参数 w 0 . . . w n w_0...w_n w0...wn。可用如下公式表示
arg min ⁡ w 0 . . . w n ∑ i = 1 m ( y r e a l − y p r e d i c t ) 2 \argmin_{w_0...w_n}\sum_{i=1}^{m}(y_{real}-y_{predict})^2 w0...wnargmini=1m(yrealypredict)2
y p r e d i c t y_{predict} ypredict公式代入,公式中就直接包含了模型的参数 w 0 . . . w n w_0...w_n w0...wn
arg min ⁡ w 0 . . . w n ∑ i = 1 m ( y r e a l − ( w 0 + w 1 ∗ x 1 + w 2 ∗ x 2 + . . . + w n ∗ x n ) ) 2 \argmin_{w_0...w_n}\sum_{i=1}^{m}(y_{real}-(w_0+w_1*x_1+w_2*x_2+...+w_n*x_n))^2 w0...wnargmini=1m(yreal(w0+w1x1+w2x2+...+wnxn))2

多元线性回归的最优解

多元线性回归的解析解(标准数学解法)

对于给定的N维训练数据及数据标签,线性回归模型的最优解及参数 w 0 . . . w n w_0...w_n w0...wn ,可以通过以下公式得到多元线性回归的最优参数
W = ( X T X ) − 1 X T Y W=(X^TX)^{-1}X^TY W=(XTX)1XTY

多元线性回归的解析解公式分析

在多元线性回归的解析解公式中, X X X为特征矩阵( M ∗ N M*N MN维), Y Y Y为特征向量的标签值( M ∗ 1 M*1 M1维)。
X T X^T XT的维度 N ∗ M N*M NM
( X T X X^TX XTX)的维度为 N ∗ N N*N NN
( X T X ) − 1 (X^TX)^{-1} (XTX)1)的维度为 N ∗ N N*N NN
( X T X ) − 1 X T (X^TX)^{-1}X^T (XTX)1XT的维度为 N ∗ M N*M NM
( X T X ) − 1 X T Y (X^TX)^{-1}X^TY (XTX)1XTY的维度为 N ∗ 1 N*1 N1

多元线性回归的搜索解法

解析解在特征维度较大时计算较为复杂,计算量大,因此工程上并不经常采用这种方法。
scikit-learn库中对于线性回归问题,使用的是梯度下降的解法。


http://www.mrgr.cn/news/91382.html

相关文章:

  • DeepSeek R1 与 OpenAI O1:机器学习模型的巅峰对决
  • MYSQL数据库集群高可用和数据监控平台
  • 机器学习基本篇
  • 【个人总结】1. 开发基础 工作三年的嵌入式常见知识点梳理及开发技术要点(欢迎指正、补充)
  • Sprinig源码解析
  • IMX6ULL的公板的以太网控制器(MAC)与物理层(PHY)芯片(KSZ8081RNB)连接的原理图分析(包含各引脚说明以及工作原理)
  • 计算机网络(涵盖OSI,TCP/IP,交换机,路由器,局域网)
  • Python 基础-循环
  • set的使用(c++)
  • 【对比】Pandas 和 Polars 的区别
  • 【Qt】 Data Visualization
  • PHP支付宝--转账到支付宝账户
  • 【医学影像AI】50个眼科影像数据集(1)分类任务
  • 面试题总结
  • 人工智能基础之数学基础:01高等数学基础
  • 【复现DeepSeek-R1之Open R1实战】系列3:跑通GRPO!
  • Docker 安装和配置 Nginx 详细图文教程
  • 【Linux】【网络】Libevent基础
  • huggingface/pytorch-image-models
  • 如何才能写出好的prompt?