【机器学习:二、线性回归模型】

线性回归是一种基本的监督学习方法,广泛用于回归问题中。它通过学习输入变量与输出变量之间的线性关系来对数据进行建模。以下从定义到求解的角度系统介绍线性回归模型。

线性回归模型的定义

线性回归假设输出变量 𝑦和输入变量 𝑥 之间满足线性关系: y = w T x + b y=w^Tx+b y=wTx+b

  • 符号说明:
    • x ∈ R n x\in\mathbb{R}^n xRn:输入特征向量(维度为 𝑛)。
    • w ∈ R n w\in\mathbb{R}^n wRn:权重向量,表示每个特征的系数。
    • b ∈ R b\in\mathbb{R} bR:偏置(bias),表示线性模型的截距。
    • y ∈ R y\in\mathbb{R} yR:输出变量,通常是一个连续值。
  • 目标: 根据训练数据集 D = { ( x i , y i ) } i = 1 m D=\{(x_i,y_i)\}_{i=1}^m D={(xi,yi)}i=1m ,学习参数 𝑤 和 𝑏,使得模型能对未知数据的输出 𝑦 做出准确预测。
  • 假设: 假定输出 𝑦 和输入 𝑥 满足以下关系: y = w T x + b + ϵ y=w^Tx+b+\epsilon y=wTx+b+ϵ
    其中 𝜖 是独立同分布的噪声项,通常服从正态分布 N ( 0 , σ 2 ) N(0,\sigma^2) N(0,σ2)

线性回归模型的代价函数

在机器学习中,代价函数用来衡量模型预测值与真实值之间的误差。

  • 平方误差损失函数: 在线性回归中,常用平方误差作为损失函数来衡量单个样本预测值 y ^ i \hat{y}_i y^i与真实值 y i y_{i} yi的差异: L ( y i , y ^ i ) = ( y i − y ^ i ) 2 L(y_i,\hat{y}_i)=(y_i-\hat{y}_i)^2 L(yi,y^i)=(yiy^i)2
  • 线性回归的代价函数(均方误差, Mean Squared Error, MSE): 对于 𝑚 个训练样本,定义代价函数 J(w,b) 为: J ( w , b ) = 1 2 m ∑ i = 1 m ( y i − ( w T x i + b ) ) 2 J(w,b)=\frac{1}{2m}\sum_{i=1}^m\left(y_i-(w^Tx_i+b)\right)^2 J(w,b)=2m1i=1m(yi(wTxi+b))2
    • 其中:
      • y i y_{i} yi:第 𝑖 个样本的真实值。
      • w T x i + b w^Tx_i+b wTxi+b:第 𝑖 个样本的预测值。
      • 1 2 m \frac{1}{2m} 2m1:引入1/2是为了在求导时简化计算。
  • 目标: 寻找参数 𝑤 和 𝑏,使得代价函数 J(w,b) 最小。

梯度下降法求解线性回归模型

梯度下降是一种常用的优化算法,用于最小化代价函数 J(w,b) 并求解模型参数。

梯度下降法原理

  • 梯度下降通过不断更新参数 𝑤 和 𝑏,逐步减小代价函数值,直到达到最优解。
  • 更新规则: w : = w − α ∂ J ( w , b ) ∂ w , b : = b − α ∂ J ( w , b ) ∂ b w:=w-\alpha\frac{\partial J(w,b)}{\partial w},\quad b:=b-\alpha\frac{\partial J(w,b)}{\partial b} w:=wαwJ(w,b),b:=bαbJ(w,b)
    • 其中:
      • a \mathrm{a} a:学习率(控制每次更新的步长)。
      • ∂ J ( w , b ) ∂ w 和  ∂ J ( w , b ) ∂ b \frac{\partial J(w,b)}{\partial w}\text{ 和 }\frac{\partial J(w,b)}{\partial b} wJ(w,b)  bJ(w,b)
        :代价函数对 𝑤 和 𝑏 的梯度。

代价函数的梯度计算

对于代价函数 J ( w , b ) = 1 2 m ∑ i = 1 m ( y i − ( w T x i + b ) ) 2 J(w,b)=\frac{1}{2m}\sum_{i=1}^m\left(y_i-(w^Tx_i+b)\right)^2 J(w,b)=2m1i=1m(yi(wTxi+b))2,其梯度为:

  • 对 𝑤 求偏导: ∂ J ( w , b ) ∂ w = − 1 m ∑ i = 1 m ( y i − ( w T x i + b ) ) x i \frac{\partial J(w,b)}{\partial w}=-\frac{1}{m}\sum_{i=1}^m(y_i-(w^Tx_i+b))x_i wJ(w,b)=m1i=1m(yi(wTxi+b))xi
  • 对 b 求偏导: ∂ J ( w , b ) ∂ b = − 1 m ∑ i = 1 m ( y i − ( w T x i + b ) ) \frac{\partial J(w,b)}{\partial b}=-\frac{1}{m}\sum_{i=1}^m(y_i-(w^Tx_i+b)) bJ(w,b)=m1i=1m(yi(wTxi+b))

梯度下降算法流程

  • 初始化参数: 随机初始化 𝑤 和 𝑏。
  • 迭代更新参数: 按照以下公式更新 𝑤 和 𝑏: w : = w + α m ∑ i = 1 m ( y i − ( w T x i + b ) ) x i w:=w+\frac{\alpha}{m}\sum_{i=1}^m(y_i-(w^Tx_i+b))x_i w:=w+mαi=1m(yi(wTxi+b))xi
    b : = b + α m ∑ i = 1 m ( y i − ( w T x i + b ) ) b:=b+\frac{\alpha}{m}\sum_{i=1}^m(y_i-(w^Tx_i+b)) b:=b+mαi=1m(yi(wTxi+b))
  • 停止条件: 当代价函数 J(w,b) 的变化值小于某个阈值,或者达到最大迭代次数时停止。

线性回归模型的优点和局限性

优点:

  • 模型简单,易于理解和实现。
  • 具有很好的可解释性,权重𝑤可以反映每个特征对输出的影响。
  • 对小规模数据和线性关系数据表现良好。

局限性:

  • 只能捕捉输入与输出之间的线性关系,无法处理非线性关系。
  • 对异常值敏感,容易受噪声影响。
  • 需要手动选择特征,无法自动提取特征。

总结

  • 线性回归模型是一种简单但有效的回归方法,适用于线性关系的数据。
  • 模型的核心是通过最小化均方误差(MSE)来找到最佳参数。
  • 梯度下降是一种常用的优化方法,可以有效求解线性回归模型参数。
  • 尽管线性回归存在一定局限性,但其直观性和高效性使其在许多场景中仍有广泛应用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/502003.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++语言编程————C++的输入与输出

1.面向过程的程序设计和算法 在面向过程的程序设计中,程序设计者必须指定计算机执行的具体步骤,程序设计者不仅要考虑程序要“做什么”,还要解决“怎么做”的问题,根据程序要“做什么”的要求,写出一个个语句&#xff…

Fabric链码部署测试

参考链接:运行 Fabric 应用程序 — Hyperledger Fabric Docs 主文档 (hyperledger-fabric.readthedocs.io) (2)fabric2.4.3部署运行自己的链码 - 知乎 (zhihu.com) Fabric2.0测试网络部署链码 - 辉哥哥~ - 博客园 (cnblogs.com) 1.启动测试…

《米塔》为什么能突破160万销量?

1、跟完蛋美女有一定的类似之处,都是针对用户需求打造的商品,所以取得良好的销量不意外。 偏宅的玩家有陪伴、被重视、被爱的需求, 而厂商很懂,无论真人还是二次元都只是手段。 完蛋也是突破百万销量,成为黑马。 2、…

ESP32自动下载电路分享

下面是一个ESP32系列或者ESP8266等电路的一个自动下载电路 在ESP32等模块需要烧写程序的时候,需要通过将EN引脚更改为低电平并将IO0引脚设置为低电平来切换到烧写模式。 有时候也会采用先将IO接到一个按键上,按住按键拉低IO0的同时重新上电的方式进入烧写…

Backend - C# 的日志 NLog日志

目录 一、注入依赖和使用 logger 二、配置记录文件 1.安装插件 NLog 2.创建 nlog.config 配置文件 3. Programs配置日志信息 4. 设置 appsettings.json 的 LogLevel 5. 日志设定文件和日志级别的优先级 (1)常见的日志级别优先级 (2&…

java项目之社区医院信息平台源码(springboot+mysql)

项目简介 社区医院信息平台实现了以下功能: 社区医院信息平台的主要使用者分为管理员可以查看对护士信息进行添加,修改,删除以及查询操作;管理员可以对医生信息进行添加,修改,删除以及查询操作&#xff1…

《普通逻辑》学习记录——命题的判定与自然推理

目录 一、真值 1.1、真值联结词 1.2、真值联结词与逻辑联结词的区别 1.3、真值形式 1.3.1、真值符号的优先级和结合性规则 1.4、真值规则 1.4.1、条件式(蕴含式) P → Q 的真值规则 1.4.2、双条件式(等值式) P ↔ Q 的真值规则 1.…

Pycharm连接远程解释器

这里写目录标题 0 前言1 给项目添加解释器2 通过SSH连接3 找到远程服务器的torch环境所对应的python路径,并设置同步映射(1)配置服务器的系统环境(2)配置服务器的conda环境 4 进入到程序入口(main.py&#…

无刷直流电机(BLDC)六步换向法

文章目录 1、三相BLDCM 基本结构2、三相BLDCM 数学模型3、有霍尔位置传感器直流无刷电机工作原理4、无位置传感器直流无刷电机工作原理5、速度检测6、六步换向双闭环模型仿真6.1 模型总览6.2 系统及参数设置6.3 六步换向模块6.4 仿真效果 7、六步换向速度闭环PWM控制参考 1、三…

Windows11安装Oracle11g以及plsqldev工具连接配置

文章目录 一、安装Oracle数据库软件二、配置数据库三、配置监听(listener.ora)四、本地网络服务名配置(tnsnames.ora)五、网络服务名配置以及监听文件路径六、plsqldev工具连接Oracle配置 一、安装Oracle数据库软件 点击“setup.…

IEEE PDF eXpress遇到Font TimesNewRomanPSMT is not embedded的解决方案

IEEE PDF eXpress遇到Font TimesNewRomanPSMT is not embedded的解决方案 问题描述 在IEEE PDF eXpress上上传论文后,出现Font XXX is not embedded的问题。 该问题是指你所插入的图片等,没有将对应的字体嵌入进去。 解决方案 以下以Origin Lab图片…

9.系统学习-卷积神经网络

9.系统学习-卷积神经网络 简介输入层卷积层感受野池化层全连接层代码实现 简介 卷积神经网络是一种用来处理局部和整体相关性的计算网络结构,被应用在图像识别、自然语言处理甚至是语音识别领域,因为图像数据具有显著的局部与整体关系,其在图…

ESP32-C3环境搭建

参考第二讲 ubuntu下的ESP-IDF开发环境搭建_哔哩哔哩_bilibili 宸芯IOT中的资料搭建 因为我买的板子是ESP32C3,所以没有完全按照教程去设置环境,但是也成功。 一、下载ubuntu系统以及esp-idf https://cn.ubuntu.com/download/server/step1 在以上链接…

解决npm报错:sill idealTree buildDeps

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl 报错信息 使用 npm 安装依赖时报错:sill idealTree buildDeps 解决方案 请按照以下步骤进行相关操作: 1、删除 C:\Users{账户}\ 文件夹中的 .npm…

【NX入门篇】

NX入门篇 一、UG NX 由来二、软件如何启动(UG NX 12.0)三、使用步骤四、常用命令 一、UG NX 由来 UG NX由来: 1969 年:UG 的开发始于美国麦道航空公司,基于 C 语言开发实现;1976 年:UG问世&am…

如何在 VSCode 中配置 C++ 开发环境:详细教程

如何在 VSCode 中配置 C 开发环境:详细教程 在软件开发的过程中,选择一个合适的开发环境是非常重要的。Visual Studio Code(VSCode)作为一款轻量级的代码编辑器,凭借其强大的扩展性和灵活性,受到许多开发者…

超越YOLO11!DEIM:先进的实时DETR目标检测

DEIM: DETR with Improved Matching for Fast Convergence arXiv: https://arxiv.org/abs/2412.04234 Project webpage:https://www.shihuahuang.cn/DEIM/ GitHub:https://github.com/ShihuaHuang95/DEIM 1 背景:DETR目标检测框架 目标检…

《GICv3_Software_Overview_Official_Release_B》学习笔记

1.不同版本的 GIC 架构及其主要功能如下图所示: 2.GICv2m(Generic Interrupt Controller Virtualization Model)是针对ARM架构的GIC(通用中断控制器)的一种扩展, GICv2m扩展为虚拟化环境中的中断管理提供了…

PADS Logic原理图中有很多页原理图,如何(怎样)删除其中一页或者多页

我们在进行PADS Logic进行原理图设计的时候,有时候可能遇到一次性设计了很多页的原理图,比如说十几页的原理图。那么我们在进行PADS Layout的时候,可能将这些原理图绘制两块板或者多块PCB板,那么这时候我们需要将其中的一张原理图…

网络安全的学习与实践经验(附资料合集)

学习资源 在线学习平台: Hack This Site:提供从初学者到高级难度的挑战任务,适合练习各种网络安全技术。XCTF_OJ:由XCTF组委会开发的免费在线网络安全网站,提供丰富的培训材料和资源。SecurityTube:提供丰…