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

【机器学习】线性回归与一元线性回归

线性回归与一元线性回归

    • V1.1
    • 线性回归问题
    • 线性方程的最优解
    • 一元线性回归
      • 一元线性回归的方程
      • 一元线性回归距离衡量方法
      • 一元线性回归的最优化求解
      • 一元线性回归的最小二乘法解法

V1.1

线性回归问题

线性回归问题就是找一条线超平面,并使用线超平面来描述数据分布,即特征向量和特征标签的对应关系(线超平面中也包含了特征标签的维度)。
线或超平面中既有特征向量的维度( x 1 , . . . , x n x_1,...,x_n x1,...,xn),也有特征标签的维度( y y y)。例如,特征向量只有一个维度,则模型可视化后有两个维度,及特征向量( x x x)和特征标签( y y y)的维度,用坐标系表示就是二维坐标系中的一条直线。
输入是一维或多维特征向量输出是线性式(对应到使用线和超平面计算结果)计算的结果
线性回归模型使用线性式描述,线性式的形式如下:
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
模型的使用方法,使用数据训练得到模型后,输入待预测的特征向量,就会根据线性模型计算预测值。因为是用模型计算的,因此预测值会落在模型线性方程上。

线性方程的最优解

那么怎样找到线性方程的最优解呢?我们需要衡量每1个特征向量的预测值真实值的距离,即距离衡量
并且需要一种投票机制来衡量,根据每个特征向量的距离,计算正在研究的线性模型的总体损失,以得出模型的优劣程度。

一元线性回归

一元线性回归,一元指输入特征向量是一个维度,一元线性回归的输出也是一个维度。

一元线性回归的方程

一元线性回归模型使用如下方程描述
y = k x + b y=kx+b y=kx+b

一元线性回归距离衡量方法

衡量一个模型总体的优劣程度要用到损失函数。计算预测值与真实值的差值的平方,并将其加和即可得到整体目前所测试的模型的总体损失。
一元线性回归的损失函数使用公式表述为:
∑ i = 1 m ( y i − y i ^ ) 2 \sum_{i=1}^m(y_i-\hat{y_i})^2 i=1m(yiyi^)2
其中 y i y_i yi是特征向量的标签值,即真实值 y i ^ \hat{y_i} yi^是正在研究的模型的对应特征向量的预测值

一元线性回归的最优化求解

通过最小化损失函数,我们可以将一元线性回归问题,转化为最优化问题,并使用最优化问题的解法求解。
在研究的模型的总体损失值越小越好,越小的损失值,对应的模型更能准确的反应数据(即特征向量)的特征,其对应更优的参数。
在一元线性回归模型中,待求的参数是模型公式中的 k k k b b b
arg min ⁡ k , b ∑ i = 1 m ( y i − y i ^ ) 2 \argmin_{k,b}\sum_{i=1}^m(y_i-\hat{y_i})^2 k,bargmini=1m(yiyi^)2
y i ^ = k ∗ x i + b \hat{y_i}=k*{x_i}+b yi^=kxi+b带入,得到
arg min ⁡ k , b ∑ i = 1 m ( y i − k ∗ x i − b ) 2 \argmin_{k,b}\sum_{i=1}^m(y_i-k*{x_i}-b)^2 k,bargmini=1m(yikxib)2

最小化损失是找到最优的两个参数, k k k b b b 使得模型的总体损失最小。

一元线性回归的最小二乘法解法

已经有数学的方法来计算一元线性回归的最优解,即最小二乘法,此外还有梯度下降的方法来求解。最小二乘法是一种数学方法,能够直接给出准确的解,而梯度下降的方法是搜索的方法。
最小二乘法公式如下,直接套用即可,输入训练数据,计算训练数据的平均值,即可得到最有参数 k k k b b b
k = ∑ i = 1 m ( x i − x ˉ ) ( y i − y ˉ ) ∑ i = 1 m ( x i − x ˉ ) 2 k=\frac{\sum_{i=1}^m(x_i-\bar{x})(y_i-\bar{y})}{\sum_{i=1}^{m}(x_i-\bar{x})^2} k=i=1m(xixˉ)2i=1m(xixˉ)(yiyˉ)
b = y ˉ − k ∗ x ˉ b=\bar{y}-k*\bar{x} b=yˉkxˉ

相关文章:

  • Oracle日常管理(8)——DB日常管理(1)
  • Python(二十)实现各大跨境船公司物流查询新增[ARKAS Line]船司
  • YOLOv11-ultralytics-8.3.67部分代码阅读笔记-plotting.py
  • 【ESP32接入国产大模型之Deepseek】
  • 2.5 模块化迁移策略:从传统项目到模块化系统
  • 算法——结合实例了解启发式搜索
  • 网络安全的现状如何?
  • LabVIEW 中dde.llbDDE 通信功能
  • linux中top命令详解
  • linux 释放9090端口
  • 多模态识别和自然语言处理有什么区别
  • 100N10-ASEMI小家电专用MOS管100N10
  • 51单片机俄罗斯方块开机动画
  • TypeScript装饰器 ------- 学习笔记分享
  • 数据结构 双链表的模拟实现
  • 32单片机学习记录4之串口通信
  • Word写论文常用操作的参考文章
  • DeepSeek应用——与PyCharm的配套使用
  • Java实现HTTPS双向认证的终极指南:从原理到实战
  • DeepSeek R1打造本地化RAG知识库
  • 如何用ps做网站页面设计/seo数据监控平台
  • 社交网站 ui/在线推广企业网站的方法
  • 网站url 结构/汕头seo建站
  • 网站建设策划书参考案例/比百度好用的搜索软件
  • 无锡住房建设网站/网络自动推广软件
  • 上住房和城乡建设部网站/昆明seo排名