首页/新闻资讯/正文详情

7.训练相关

发布时间:2026/11/6 2:01:32 来源:云帆数科 栏目:资讯中心
7.训练相关
系列文章目录章节1什么是MLIR章节2MLIR的引入章节3MLIR完成一个端到端的流程章节4编写一个pass章节5MLIR相关语法章节6量化相关章节7训练相关章节8图优化文章目录目录系列文章目录文章目录一、梯度1. 从一维导数说起2. 多维时每个方向都有偏导3. 梯度把偏导组成向量4. 梯度的几何意义5. 在深度学习里梯度是什么6. 一个具体例子一句话总结二、LSQ的QAT算法核心思想让量化器自己“找”最佳分辨率量化公式步长 s 决定了量化的一切核心机制如何计算可学习步长 s 的梯度关键技巧梯度缩放Gradient Scale完整的 LSQ 训练流程总结总结一、梯度梯度是一个向量它把“函数在每个方向上的变化率”打包在一起指向函数值增长最快的方向其长度表示这个最快方向的增长率。1. 从一维导数说起一维函数 f(x)f(x) 的导数 f′(x)f′(x) 表示“xx 增加一点ff 增加多少”。比如。在 x3 处导数是 6意思是往正方向走一点函数值大约增加 6 倍那么多。一维只有“正方向”和“负方向”所以导数一个数就够了。2. 多维时每个方向都有偏导函数有多个变量时比如它对 xx 的偏导是对 yy 的偏导是偏导只回答“只动 x 时怎么变”或“只动 y 时怎么变”但没有回答“如果同时动 x 和 y往哪个方向变最快”。3. 梯度把偏导组成向量梯度就是把所有偏导按变量顺序排成一个向量在点 (1,2)处这个向量 (2,4)就是梯度。4. 梯度的几何意义梯度 ∇f∇f 有两个关键性质方向指向函数值增长最快的方向大小这个最快方向的增长率所以沿梯度方向走函数值上升最快沿负梯度方向走函数值下降最快梯度垂直于等高线等值线以为例等高线是圆。在点 (1,2)梯度 (2,4)从原点指向外正好垂直于过该点的圆指向函数值增大的方向。5. 在深度学习里梯度是什么训练时损失函数 LL 是所有模型参数的函数梯度就是它告诉每个参数如果只把这个参数往正方向调一点损失会怎么变所有参数一起看往哪个方向调损失上升最快所以梯度下降做的是其中η就代表学习率在足够小学习率下损失会局部减小即往负梯度方向走让损失下降。6. 一个具体例子设损失在 w1,b1处预测值 1×213误差 3−5−2损失 4对 w 的偏导对 bb 的偏导梯度负梯度方向是 (8,4)意思是增大 w 和 b能让损失下降。梯度下降会按这个方向更新参数。一句话总结梯度是由所有偏导数组成的向量指向函数值增长最快的方向它的反方向就是函数值下降最快的方向。在深度学习中梯度告诉我们“每个参数该怎么调、往哪个方向调损失会上升或下降”。二、LSQ的QAT算法理解 LSQLearned Step Size Quantization的关键在于把量化“步长”从一个需要预设的固定超参数变成了一个像权重一样、可以由模型自己“学习”的可训练参数。核心思想让量化器自己“找”最佳分辨率在常规的 QAT 中量化步长 s 通常是固定的例如根据权重或激活的统计值预先计算好。LSQ 的核心突破在于它让步长 s 变成了一个可学习的参数直接与模型的权重一起通过梯度下降来优化。这意味着模型在训练中会自动地为每一层、每一个张量寻找最适合其当前数据分布的量化“分辨率”而不是依赖一个可能并非最优的静态预设值。量化公式步长 s 决定了量化的一切在 LSQ 中对于一个待量化的数值 v可以是权重或激活其量化过程为vˉ量化后的整数。v^反量化回浮点数的结果。s可学习的量化步长。它同时决定了量化精度ss 越小分辨率越高和截断边界。核心机制如何计算可学习步长 s 的梯度这是 LSQ 最精妙的部分。由于量化中的取整操作⌊⋅⌋本身不可导LSQ 使用了STE直通估计器的思想并推导出了一个专门针对步长 s 的梯度公式这个公式的含义很直观在量化范围内梯度反映了当前数值 v 与它最近量化格点的距离。如果 v 正好在格点上梯度贡献为 0如果 v 在两个格点中间梯度最大推动步长 s 去“覆盖”这个位置。在截断区域当 v 超出可表示范围时梯度会饱和为一个常数−QN​ 或 QP​推动 s 增大以将原本被截断的极端值重新纳入可量化范围。关键技巧梯度缩放Gradient ScaleLSQ 发现如果直接使用上述梯度步长 s 的更新幅度会与权重 w 的更新幅度严重不匹配导致训练不稳定。为此LSQ 引入了一个梯度缩放因子人为地调整 s 的梯度大小使其更新步调与权重更新相协调。论文中使用的缩放因子约为​​其中 N 是该层参数的数量这个启发式方法被证明能有效提升收敛性。完整的 LSQ 训练流程初始化从一个预训练好的全精度FP32模型开始这能显著提升最终性能。前向传播使用量化后的权重和激活v^进行计算。反向传播对权重使用标准的 STE 近似其梯度。对步长 s使用上面推导的LSQ 专属梯度公式并乘以缩放因子。参数更新同时更新全精度权重和可学习的步长 s。部署训练完成后从模型中提取出学习好的、固定的步长 s用于最终的整数推理。总结LSQ 的核心贡献在于将量化参数步长本身也变成了模型优化的一部分。它通过设计一个能感知量化状态格点距离、是否截断的专属梯度并辅以梯度缩放来平衡优化使得模型能够自适应地找到低比特如 2、3、4 bit下的最优量化配置。这让 LSQ 在极低比特量化下表现尤为突出例如首次实现了 3-bit 量化网络达到全精度模型的精度。总结

相关推荐

STM32+RC522读取MIFARE 1K卡排坑实录
STM32+RC522读取MIFARE 1K卡排坑实录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 2:01:32

Python78:核心语法-面向对象基础-类与对象
Python78:核心语法-面向对象基础-类与对象

类与对象定义类与创建对象类的定义定义类的语法如下:(动态添加属性)说明:类名的命名规范,遵循大驼峰命名法,每个单词的首字母都是大写,单词之间没有分隔符,比如:UserInfo… · 2026/11/6 2:01:32

Python79:核心语法-面向对象基础-实例方法
Python79:核心语法-面向对象基础-实例方法

实例方法在类中定义实例方法时,定义语法与之前学习的函数定义的方式是一致的。实例:第二章/22.面向对象基础.py# 定义类 class Car:def __init__(self, c_color, c_brand, c_name, c_price):self.color c_colorself.brand c_brandself.name c_namesel… · 2026/11/6 2:01:32

Cinder卷备份可靠性增强:状态机驱动的断点续传方案
Cinder卷备份可靠性增强:状态机驱动的断点续传方案

简介:这是一份面向OpenStack运维工程师与云平台开发者的Python工具脚本,专为简化Cinder卷备份/还原流程而设计,有效应对Cinder Backup Service在多租户支持、备份可见性控制及自动轮换等方面的原生限制。资源包共4个文件(11KB&… · 2026/11/6 2:13:37

计算机专业生如何利用课程优势玩转CTF竞赛
计算机专业生如何利用课程优势玩转CTF竞赛

1. 计算机专业生打CTF的核心优势解析作为计算机专业的学生,你可能还没意识到自己已经手握一把打开CTF大门的金钥匙。当年我在大二第一次参加校赛时,就发现专业课里那些看似枯燥的理论知识,在CTF赛场上突然变得鲜活起来。比如《计算机网络》课… · 2026/11/6 2:13:37

Windows NTP 时间同步:w32tm 配置、批量下发与偏差告警
Windows NTP 时间同步:w32tm 配置、批量下发与偏差告警

简介:这是一款面向 Windows 系统运维与开发人员的轻量级时间同步工具,重点解决内网或公网环境下主机时钟校准、NTP 服务切换与同步状态上报问题。程序提供可视化图形界面,可指定局域网或公网 NTP 服务,设置同步间隔与最大时间偏差… · 2026/11/6 2:13:37

智能氛围灯如何实现非接触式睡眠监测
智能氛围灯如何实现非接触式睡眠监测

1. 项目概述:当科技遇见睡眠健康床头氛围灯早已不是简单的照明工具,现代人更希望它能成为睡眠健康的守护者。这款集成了呼吸心率监测功能的智能氛围灯,通过非接触式生物传感技术,在营造舒适光环境的同时,持续监测使用者… · 2026/11/6 2:13:37

32位程序突破4GB内存限制:大地址标志、AWE与文件映射实战
32位程序突破4GB内存限制:大地址标志、AWE与文件映射实战

简介:面向仍在维护32位C/C#程序的开发者,聚焦默认约2GB用户态地址空间限制与Large Address Awareness(LAA)相关处理思路,帮助需要处理大数据、图像或游戏等内存密集任务的读者理解如何让32位程序按需申请更大地址空间&… · 2026/11/6 2:13:37

Seay源代码审计系统实战:从扫描原理到自定义规则开发
Seay源代码审计系统实战:从扫描原理到自定义规则开发

简介:Seay源代码审计系统是一款基于C#开发、主要运行于Windows平台的PHP代码安全审计工具,面向网络安全初学者、CTF/AWD参赛选手及渗透测试人员,用于快速发现PHP项目中的SQL注入、代码执行、命令执行、文件包含、文件上传、XSS跨站、信息泄露… · 2026/11/6 2:12:36

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:07

三菱PLC数据采集到数据库的时序设计:Python+MC协议实战
三菱PLC数据采集到数据库的时序设计:Python+MC协议实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11

ASIC主模式RTL设计:状态机与三态驱动的流片级实现
ASIC主模式RTL设计:状态机与三态驱动的流片级实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11

STM32嵌入式C++开发:GDB调试与Renode仿真实战指南
STM32嵌入式C++开发:GDB调试与Renode仿真实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:07

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码