浅谈AI落地之-加速训练

devtools/2025/3/16 7:22:40/

前言

曾在游戏世界挥洒创意,也曾在前端和后端的浪潮间穿梭,如今,而立的我仰望AI的璀璨星空,心潮澎湃,步履不停!愿你我皆乘风破浪,逐梦星辰!

混合精度:

FL32是目前模型存储数据一个比较普遍的格式。有时候过于浪费,根本用不着那么多。所以如果有一种方法能动态调整存储数据的大小,就能节省不少显存占用,从来提高批次大小,加速学习。

混合精度简单简单的来说,就是用FL16+FL32来代替原来的清一色FL32数据。具体实现是,在初始化好scaler以后,在遍历批次中的数据的时候,使用autocast自动对前向传播和损失处理混合精度。然后再使用梯度缩放器来缩放损失,并反向传播。

from torch.cuda.amp import GradScaler, autocastscaler = GradScaler()
# 使用autocast自动处理混合精度
with autocast():out = model(**data)  # 前向传播loss = out['loss']  # 获取损失
# 使用梯度缩放器来缩放损失,并反向传播
optimizer.zero_grad()
scaler.scale(loss).backward()
scaler.step(optimizer)
scaler.update()


http://www.ppmy.cn/devtools/167493.html

相关文章

MCU的工作原理:嵌入式系统的控制核心

MCU的工作原理可以概括为以下几个步骤: 1. 初始化 上电后,MCU从Flash存储器中加载程序代码,并初始化外设和寄存器。 2. 任务执行 根据程序逻辑,MCU执行数据处理、外设控制和通信等任务。通过中断系统实时响应外部事件。 3. 低…

免费高质量贴图(Textures) 网站推荐

以下是一些提供 免费或高质量贴图(Textures) 的网站,包括 PBR 贴图、HDRI 贴图、材质等,适用于 Three.js、Blender、Unity、Unreal Engine 等软件。 🌍 1. Poly Haven(https://polyhaven.com/)⭐…

Java 8 + Tomcat 9.0.102 的稳定环境搭建方案,适用于生产环境

一、安装 Java 8 安装 OpenJDK 8 bash sudo apt update sudo apt install openjdk-8-jdk -y 验证安装 bash java -version 应输出类似: openjdk version “1.8.0_412” OpenJDK Runtime Environment (build 1.8.0_412-8u412-ga-1~22.04-b08) OpenJDK 64-Bit Server VM (bui…

【Linux内核系列】:文件系统收尾以及软硬链接详解

🔥 本文专栏:Linux 🌸作者主页:努力努力再努力wz 💪 今日博客励志语录: 世界上只有一种个人英雄主义,那么就是面对生活的种种失败却依然热爱着生活 内容回顾 那么在之前的学习中,我们…

基于yolo11+flask打造一个精美登录界面和检测系统

这个是使用flask实现好看登录界面和友好的检测界面实现yolov11推理和展示,代码仅仅有2个html文件和一个python文件,真正做到了用最简洁的代码实现复杂功能。 测试通过环境: windows x64 anaconda3python3.8 ultralytics8.3.81 flask1.1.…

PDF文件里到底有什么?

PDF 文档结构由多个组件组成,这些组件决定了文本、图像和其他元素的存储和显示方式。PDF 是一种二进制文件格式,这意味着您无法在文本编辑器中直接编辑 PDF 文件。添加或删除一个字符都可能导致整个文件损坏! PDF 文件结构 理解 PDF 文档结…

星型组网模块的两种交互方式优缺点解析

星型组网模块简介 星型组网模块工作在433MHz频段;星型组网模块集主机(协调器)、终端为一体,星型组网模块具有长距离、高速率两种传输模式,一个主机(协调器)支持多达200个节点与其通讯&#xff0…

matlab 三维桥式起重机系统数学模型

1、内容简介 matlab161-三维桥式起重机系统数学模型 可以交流、咨询、答疑 2、内容说明 略 2.3.1 三维桥式起重机系统数学模型 假设:(1)钢丝绳长度变化忽略不计,且不考虑其柔性;(2)假设台车和…