Qwen3论文阅读

1、核心架构改进:

1)注意力机制

采用了 GQA (Grouped Query Attention) 以提高推理效率

什么是GQA注意力机制?

介于传统的多头注意力机制以及极简的MQA注意力机制之间,目标为平衡生成速度以及模型精度

首先我们先看一看多头注意力机制以及多询注意力机制的区别

MHA (Multi-Head Attention): 每个 Query (Q) 都有对应的 Key (K) 和 Value (V)。虽然效果最好,但在推理时需要缓存大量的 KV 状态(KV Cache),导致内存占用高,推理速度慢。

MQA (Multi-Query Attention): 所有的 Q 共享同一组 K 和 V。这极大地减少了内存占用和数据传输,速度极快,但由于表达能力大幅下降,模型性能(准确度)通常会受损。

GQA:把query分成若干组每一组共享KV

详细的计算流程:

假设我们输入一个128length的token序列,模型中存储了一个计算query的矩阵Wq,大小为[512,512],X x Wq = Total_Q,得到一个[128,512]的结果,后续在物理上计算结束后,会将512维切位8份,每一份即为[128,64]于是就得到了8个query

若分为两组那么每四个query为一组,共享一个KV。

2)RMSNorm

RMSNorm 是标准 LayerNorm(层规范化)的一种简化变体,旨在提高计算效率

节省计算开销

此外还采用了前置规范化

后置规范化(post-norm):

先做子层操作(如 Attention 或 FFN)并与输入相加,最后整体做一次 Norm。

前置规范化 (Pre-Norm):

输入先经过 Norm,然后再进入子层操作,最后将结果加回原始输入。

3)SwiGLU激活函数:

传统的激活函数如下所示

SwiGLU 的核心改进是将 GLU 中的 Sigmoid 函数替换为 Swish 激活函数。

在 Qwen3 的 Transformer 块中,前馈网络(FFN)层利用 SwiGLU 进行非线性变换,计算逻辑由三个矩阵组成Wgate,Wup,Wdown,SiLU为Swish函数

门控分支:当x小于0时,SiLU激活函数迅速将其切断,变为0,切断其向下传递的渠道

QK-Norm:在进行注意力计算时,对Q和K进行归一化(防止注意力瘫缩)

对Q和K进行归一化的方法:对每个矩阵的每个向量进行归一化,在训练过程中,必须要使用半精度来节省显存,所以进行归一化恢复对向量的敏感并且防止数据溢出。

2、后训练pipeline

整体的结构如下所示:

旗舰模型采用四阶段的后训练模式,前面两个阶段注重思考推理,后面的阶段注重非思考能力

1)长思维链冷启动阶段(long-CoT Cold Start)

采用qwen2.5-72B进行数据清洗,剔除掉不需要思考可以直接回答的问题

冷启动的作用:

建立初始模式:通过精选的子集进行初始训练,旨在模型中植入基础的推理模式。

为 RL 留白:训练时故意不追求极端的推理表现,以防模型产生路径依赖,从而为后续强化学习(RL)阶段留出更大的改进空间和灵活性。

极简主义:在冷启动阶段,倾向于最小化训练样本数和训练步数,保持模型的“潜力”

2)推理强化学习阶段(Reasoning-RL)

采用GRPO的强化学习策略进行训练

训练策略:

使用Batch Size(大批次)和高 Rollouts(每个问题生成多个答案)。

使用 Off-policy(离线策略)训练来提高样本效率。

通过控制**熵(Entropy)**来平衡“探索”与“利用”,防止模型过早陷入局部最优。

3)通用强化学习阶段(general rl)

奖励函数的设计:

奖励类型原理优点解决的问题
(1) 基于规则 (Rule-based)用代码/正则硬性判断极其精准,不可作弊判断格式是否正确、长度是否达标、代码是否可运行。
(2) 有参考答案的模型打分 (Model-based w/ Ref)让 Qwen2.5-72B 对照标准答案给学生(新模型)打分灵活且标准明确避免规则太死板导致的“误判”(比如意思对但字不同)。
(3) 无参考答案的模型打分 (Model-based w/o Ref)用人类偏好训练出一个 Reward Model(奖励模型)直接打分适用范围最广处理主观问题,提升回答的“高级感”和好感度。

4)强对弱蒸馏(Strong-to-Weak Distillation)

stage1:离线蒸馏

将大模型的答案直接喂给小模型进行训练,相当于直接是sft阶段监督训练。

stage2:在线蒸馏

让小模型自己针对某个问题生成回答(On-policy)。与此同时,让更强大的老师模型(如 Qwen3-235B)也针对同样的问题给出一个输出概率分布,计算 KL 散度(KL Divergence):通过数学手段缩小“学生”和“老师”在逻辑预测上的差距(对齐 Logits)。

Read more

AI智能证件照制作工坊实战对比:WebUI与API调用差异解析

AI智能证件照制作工坊实战对比:WebUI与API调用差异解析 1. 项目简介:智能证件照制作新体验 AI智能证件照制作工坊是一个基于Rembg抠图引擎的商业级证件照生产工具。这个工具彻底改变了传统证件照的制作方式,让普通用户在家就能轻松制作专业级证件照。 只需上传一张生活照或自拍照,AI系统就会自动完成人像抠图、背景替换、智能裁剪和尺寸调整的全流程。支持生成标准的1寸(295x413像素)和2寸(413x626像素)证件照,提供证件蓝、证件红和纯白三种标准底色选择。 最大的优势在于完全离线运行,所有处理都在本地完成,确保了隐私绝对安全。不需要安装Photoshop,不需要去照相馆,真正实现了"一键制作"的专业体验。 核心功能亮点:全自动三合一流程:抠图、换底、裁剪一步完成专业级边缘处理:采用Alpha Matting技术,头发丝细节完美保留多场景适用:满足身份证、护照、简历等各种证件需求离线隐私保护:所有数据处理都在本地,不上传任何信息 2. WebUI界面操作指南 2.1 快速上手步骤 使用WebUI界面制作证件照非常简单,只需要四个步骤: 1.

Uncaught TypeError: Cannot read properties of undefined (reading ‘xxx‘):从报错根源到根治方案(前端/后端通用)

Uncaught TypeError: Cannot read properties of undefined (reading ‘xxx’):从报错根源到根治方案(前端/后端通用) 引言:被“undefined”支配的恐惧 如果你是开发者,大概率在控制台见过这句红色报错——“Uncaught TypeError: Cannot read properties of undefined (reading ‘xxx’)”(或后端类似“Cannot read field ‘xxx’ of null”)。据2024年《开发者调试痛点调研》显示,这类“空值访问错误”占前端日常报错的32%,后端接口处理报错的28%,平均每次调试耗时15-30分钟,尤其在复杂业务场景(如嵌套数据渲染、异步接口依赖)中,往往需要逐层排查才能定位根因。 但多数开发者解决这类报错时,只停留在“加个if判断”

Nuxt 4 + WebAssembly 实战:从零搭建媲美 TinyPNG 的浏览器端图片压缩工具

Nuxt 4 + WebAssembly 实战:从零搭建媲美 TinyPNG 的浏览器端图片压缩工具

前言 你有没有想过,TinyPNG 把你的图片压小了 70%,它到底做了什么?答案是:JPEG 用的 MozJPEG 编码器,PNG 用的是有损量化(把 1600 万色降到 256 色)。这些算法本身是开源的,而且都已经有了 WebAssembly 移植版。 换句话说,你完全可以在浏览器里跑跟 TinyPNG 一样的压缩算法,不需要任何服务端。 我最近在做 PixelSwift,就是基于这个思路实现的纯前端图片工具。本文是系列第一篇,完整走一遍图片压缩功能的技术实现,从 Vite 配置 WASM 到 Web Worker 通信到三种格式的编码引擎。 一、整体架构设计 1.1 技术栈 层技术选型理由框架Nuxt 4 + Vue 3SSR 做

ctfshow Web入门命令执行29-124全通关详解(看这一篇就够啦~)

文章目录 * 命令执行 * web29-web31:基础注入 * web29 * web30 * web31 * web32-web36:参数逃逸 * web32 * web33 * web34-36 * web37-web39:文件包含+伪协议命令执行 * web37 * web38 * web39 * web40:无参数RCE * web41:无字母RCE * web42-web53:绕过无回显RCE * web42 * web43 * web44 * web45 * web46 * web47-web49 * web50 * web51 * web52 * web52 * web53 * web54:关键词模糊匹配 * web55-web57:字符集受限 RCE * web55 * web56 * we