一个例子搞懂模型训练和参数更新的过程

模型训练和更新参数的过程是机器学习中的核心。这个过程通常涉及多个步骤,包括前向传播、损失计算、反向传播和参数更新。下面我将通过一个简单的线性回归模型的例子来解释这些步骤:

线性回归模型示例

假设我们有一个简单的线性关系 y = w x + b y=wx+b y=wx+b,其中 y y y 是目标变量, x x x 是特征变量, w w w b b b 是模型参数(权重和偏置)。我们的目标是通过训练数据来找到最佳的 w w w b b b ,使得模型的预测与真实数据尽可能接近。

1. 前向传播

在前向传播中,模型根据当前参数和输入计算其预测值。对于给定的输入 x i {x_i} xi,模型的预测是:

y ^ i = w ⋅ x i + b \hat{y}_i=w\cdot x_i+b y^i=wxi+b

2. 损失计算

一旦有了预测,我们需要计算损失(或误差)。损失函数度量预测值和真实值之间的差异。常用的损失函数之一是均方误差(MSE),计算公式如下:

L = 1 N ∑ i = 1 N ( y ^ i − y i ) 2 L=\frac1N\sum_{i=1}^N(\hat{y}_i-y_i)^2 L=N1i=1N(y^iyi)2

这里, N N N 是样本的数量, y i y_i yi 是真实值, y ^ i \hat{y}_i y^i 是预测值

3. 反向传播

一旦计算了损失,我们就需要根据损失函数的梯度来调整模型参数。这一步称为反向传播,它涉及到计算损失函数相对于每个参数的导数(梯度)。对于线性回归,梯度计算如下:

∂ L ∂ w = 2 N ∑ i = 1 N x i ( y ^ i − y i ) ∂ L ∂ b = 2 N ∑ i = 1 N ( y ^ i − y i ) \begin{aligned}&\frac{\partial L}{\partial w}=\frac2N\sum_{i=1}^Nx_i(\hat{y}_i-y_i)\\&\frac{\partial L}{\partial b}=\frac2N\sum_{i=1}^N(\hat{y}_i-y_i)\end{aligned} wL=N2i=1Nxi(y^iyi)bL=N2i=1N(y^iyi)

4. 参数更新

最后,我们使用梯度下降方法更新参数。这个步骤简单地减去梯度与学习率的乘积从当前参数值:

w = w − η ∂ L ∂ w b = b − η ∂ L ∂ b \begin{aligned} &w=w-\eta\frac{\partial L}{\partial w} \\ &b=b-\eta\frac{\partial L}{\partial b} \end{aligned} w=wηwLb=bηbL

其中 η 是学习率, \text{其中}\eta\text{是学习率,} 其中η是学习率,,一个小的正数,控制学习的速度。

循环过程

以上四个步骤在每个训练批次中重复执行,每次迭代都会使用一组新的训练数据(如果是批量梯度下降)。通过多次迭代,模型参数逐渐调整,以最小化整个训练集上的总损失。这个过程会一直进行,直到模型的性能不再显著提高或达到预设的迭代次数。

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

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

相关文章

使用Termux在Android设备上编译运行SpecCPU2006

Spec CPU 2006 的使用说明(曲线救国版) 因本部分实验用到的Spec CPU2006依赖于多个编译工具包,因此对源码的编译要在配置好环境的Linux设备上运行,根据实验发现,现有的环境(包括adb和termux)都不…

FreeRTOS之动态创建任务与删除任务

1.本文是利用FreeRTOS来动态创建任务和删除任务。主要是使用FreeRTOS的两个API函数:xTaskCreate()和vTaskDelete()。 任务1和任务2是让LED0、LED1闪烁。任务3是当按键按下时删除任务1。 使用动态创建任务时,需要动态的堆中申请任务所需的内存空间&…

Jmeter redis连接测试

Jmeter连接redis获取数据,一直连不上报错。最后只能通过java代码连接测试,最后只能自己动手。 import redis.clients.jedis.*;import java.io.IOException; import java.util.HashSet; import java.util.Set;/*** 单机版的Jedis连接池的用法*/ public c…

Flask实战

from flask import Flask appFlask(__name__)点击Flask同时点击键盘ctrl即可查看Flask的默认初始化函数 def __init__(self,import_name: str,static_url_path: str | None None,static_folder: str | os.PathLike[str] | None "static",static_host: str | None …

安装docker的PHP环境NLMP环境在国产deepin操作系统上

1: 先安装docker 安装完后执行,权限设置 sudo usermod -aG docker $USER或者sudo usermod -aG docker kentrl#添加当前用户到Docker用户组中 sudo newgrp docker#更新用户组数据,必须执行否则无效 sudo systemctl restart docker 先看目录结构: 2:按照目录结构挂载磁盘,…

JavaScript(五)-正则表达式

文章目录 正则表达式正则表达式的介绍语法元字符修饰符 正则表达式 正则表达式的介绍 什么是正则表达式 正则表达式(Regular expression)是用于匹配字符串中字符组合的模式,在JavaScript中,正则表达式也是对象通常用来查找、替…

UE5数字孪生系列笔记(四)

场景的切换 创建一个按钮的用户界面UMG 创建一个Actor,然后将此按钮UMG添加到组件Actor中 调节几个全屏的背景 运行结果 目标点切换功能制作 设置角色到这个按钮的位置效果 按钮被点击就进行跳转 多个地点的切换与旋转 将之前的目标点切换逻辑替换成旋转的逻…

驱动开发platform传地址,led点灯

除了platform传地址,其他的跟指定入口地址和指定出口地址没区别 platform和指定入口地址不能同时存在,一直报错模块初始化重定义,半个小时搞完程序没问题,这个重复定义因为代码太多没看懂错误,删了又加没试出来怎么改…

气象观测站点数据下载与处理

一、下载途径 全国400多个气象站气候数据(1942-2022) 王晓磊:中国空气质量/气象历史数据 | 北京市空气质量历史数据 气象数据免费下载网站整理 中国气象站观测的气象数据怎么下载 二、R语言处理 2.1 提取站点文件 library(dplyr) library(…

集成智能楼宇的微网系统多时间尺度MPC调度方法(附带Matlab代码)

含多智能楼宇的微网示意图如图所示,包括多个智能楼宇、微网可控分布式电源 、储能系统以及通信链路。其中,每个智能楼宇系统包括制冷设备、常规用电设备以及屋顶光伏系统。各单元功能介绍如下 针对含多智能楼宇的微网系统,提出一种基于模型预…

gpt能生成ppt吗

gpt能生成ppt吗 GPT是一个高度通用的工具,适用于多种场景和领域,制作ppt只是它强大功能的冰山一角,具体包括: 信息查询与解释: 提供科学、技术、历史、文化等领域的详细解释和背景信息。 解答疑问,帮助…

制作带有中文字体的 jdk 17 镜像

1. 准备中文字体 将所有需要添加的中文字体放进一个文件夹内,例如 fonts 2. 创建 Dockerfile 文件 Dockefile 文件与 fonts 文件夹放在同一目录下 # 使用 slim 版本的 jdk 17 镜像作为基础镜像 FROM openjdk:17-slim# 安装字体工具 RUN apt-get update &&a…

Xilinx 7系列FPGA 高性能(HP)接口与2.5V/3.3V 外设IO接口设计考虑

引言:Xilinx 7系列FPGA IO Bank分为HP Bank和HR Bank,HP IO接口电压范围为1.2V~1.8V,可以实现高性能,HR IO接口电压范围为1.2V~3.3V。当HR Bank与2.5V或者3.3V外设互联时,需要考虑接口电平的兼容性。根据性能需求、功能…

模拟相机拍照——对文档进行数据增强

一. 背景 假如我们有一个标准文件,我们对其进行文字识别、版面分析或者其他下游任务就比较容易。然而,当图片是手机拍照获取的,图片中往往有阴影、摩尔纹、弯曲。 那么,如何通过标准的文档,获得类似相机拍照的图片呢&…

更新kubeadm创建的集群的证书

需要熟悉的知识: 官网更新证书参考:https://kubernetes.io/zh-cn/docs/tasks/administer-cluster/kubeadm/kubeadm-certs/ 静态Pod:https://kubernetes.io/zh-cn/docs/concepts/workloads/pods/#static-pods 如何创建静态Pod:https://kuberne…

家庭营销广告Criteo公司首次获得MRC零售媒体测量认证

家庭营销广告Criteo公司首次获得零售媒体测量MRC认证 商业媒体公司Criteo2024年3月28日宣布,它首次获得媒体评级委员会(MRC)的认证,在其企业零售媒体平台commerce Max和commerce Yield上,在桌面、移动网络和移动应用内…

数据库函数ABS详解

ABS函数的语法是:ABS(number),其中number是要计算绝对值的数字或表达式。例如,如果要计算-5的绝对值,可以使用以下查询: SELECT ABS(-5) FROM dual;这将返回结果为5。 在Oracle中,ABS是一个内置…

4-Java方法详解

目录 Java方法详解 1、什么是方法 2、方法的定义及调用 3、方法重载 4、命令行传参 5、可变参数 6、递归 例题:代码实现一个计算机 Java方法详解 1、什么是方法 2、方法的定义及调用 形参:用来定义作用的 实参:实际调用传递给他的参数…

java | junit | 基本+技巧

1.参考链接 1.1 单测概念 https://medium.com/lathasreeseeni/junit-2d9857773e8 1.2 高级技巧 https://symflower.com/en/company/blog/2023/how-to-write-junit-test-cases-advanced-techniques/ assertThrows: 有时候,我们的方法,需要抛出…

ES系列之相似度模型

概述 ES作为一款搜索引擎,搜索结果如何排序,即什么条目或内容更靠前,是一个很核心的问题。排序通常是通过计算语料库中的文档和用户查询之间的相关性或相似度评分来进行。 相似性(得分/排名模型)定义匹配文档如何进行…