DeepSeek 提出新架构 mHC 详解

mHC: Manifold-Constrained Hyper-Connections——把“超连接”拉回稳定轨道的残差新范式

这篇论文讨论了一个看似“简单但很关键”的问题:我们给残差流加宽、加连接(Hyper-Connections, HC)确实能涨分,但同时打破了残差里最重要的identity mapping性质,训练会不稳定、规模上不去,系统层面还会拖慢。作者提出 mHC(Manifold-Constrained Hyper-Connections),用流形约束把残差映射投影到双随机矩阵上,从理论与工程两端同时解决问题。


1. 背景:残差连接为何能稳定训练?

标准残差层的形式是:

x l + 1 = x l + F ( x l , W l ) \mathbf{x}_{l+1} = \mathbf{x}_l + \mathcal{F}(\mathbf{x}_l, \mathcal{W}_l)xl+1=xl+F(xl,Wl)

多层展开得到:

x L = x l + ∑ i = l L − 1 F ( x i , W i ) \mathbf{x}_L = \mathbf{x}_l + \sum_{i=l}^{L-1}\mathcal{F}(\mathbf{x}_i, \mathcal{W}_i)xL=xl+i=lL1F(xi,Wi)

这里的x l \mathbf{x}_lxl就是 “恒等映射” 通道,保证信号能直达深层,避免梯度爆炸/消失。


2. HC 的核心思想与问题

HC 把残差流扩成n nn条并让它们相互通信:

x l + 1 = H l r e s x l + H l p o s t ⊤ F ( H l p r e x l , W l ) \mathbf{x}_{l+1} = \mathcal{H}^{\mathrm{res}}_l \mathbf{x}_l + \mathcal{H}^{\mathrm{post}\,\top}_l \mathcal{F}(\mathcal{H}^{\mathrm{pre}}_l\mathbf{x}_l, \mathcal{W}_l)xl+1=Hlresxl+HlpostF(Hlprexl,Wl)

  • H l r e s ∈ R n × n \mathcal{H}^{\mathrm{res}}_l \in \mathbb{R}^{n\times n}HlresRn×n:残差流之间的混合矩阵
  • H l p r e , H l p o s t \mathcal{H}^{\mathrm{pre}}_l, \mathcal{H}^{\mathrm{post}}_lHlpre,Hlpost:读写矩阵

问题:多层串联后,∏ H r e s \prod \mathcal{H}^{\mathrm{res}}Hres会偏离恒等映射,信号会被放大或衰减到不可控,训练不稳定。


3. mHC 的核心思路:把残差映射约束到流形上

作者的关键直觉是:
既要跨流交互,又要保持全局“能量守恒”

于是将H l r e s \mathcal{H}^{\mathrm{res}}_lHlres约束为双随机矩阵

P M r e s ( H l r e s ) = { H l r e s ∈ R n × n ∣ H l r e s 1 n = 1 n , 1 n ⊤ H l r e s = 1 n ⊤ , H l r e s ≥ 0 } \mathcal{P}_{\mathcal{M}^{\mathrm{res}}}(\mathcal{H}^{\mathrm{res}}_l)= \left\{ \mathcal{H}^{\mathrm{res}}_l \in \mathbb{R}^{n\times n}\;|\; \mathcal{H}^{\mathrm{res}}_l\mathbf{1}_n=\mathbf{1}_n,\; \mathbf{1}_n^\top\mathcal{H}^{\mathrm{res}}_l=\mathbf{1}_n^\top,\; \mathcal{H}^{\mathrm{res}}_l\ge 0 \right\}PMres(Hlres)={HlresRn×nHlres1n=1n,1nHlres=1n,Hlres0}

好处:

  • 谱范数≤ 1 \le 11,防止信号放大
  • 闭包性:多层相乘仍是双随机矩阵
  • 几何意义:Birkhoff 多面体 = 置换矩阵的凸包,等价于“稳定混合”

4. 参数化与 Sinkhorn-Knopp 投影

mHC 仍使用 HC 的动态+静态映射机制,但在输出时做约束:

H l r e s = Sinkhorn-Knopp ( H ~ l r e s ) \mathcal{H}^{\mathrm{res}}_l = \text{Sinkhorn-Knopp}(\tilde{\mathcal{H}}^{\mathrm{res}}_l)Hlres=Sinkhorn-Knopp(H~lres)

迭代形式:

M ( t ) = T r ( T c ( M ( t − 1 ) ) ) \mathbf{M}^{(t)}=\mathcal{T}_r(\mathcal{T}_c(\mathbf{M}^{(t-1)}))M(t)=Tr(Tc(M(t1)))

  • 先指数化保证正值
  • 再交替行/列归一化
  • 论文使用t max ⁡ = 20 t_{\max}=20tmax=20

同时H l p r e , H l p o s t \mathcal{H}^{\mathrm{pre}}_l, \mathcal{H}^{\mathrm{post}}_lHlpre,Hlpost也用 Sigmoid 保证非负,避免正负抵消。


5. 训练不稳定的实证证据

下图展示 HC 在大规模训练中 loss 和梯度的异常波动:

图解:左图是 HC 相对 mHC 的 loss gap,右图是梯度范数。HC 在 12k step 处出现突增,证明残差流失控。

同时,HC 的残差映射组合出现极端放大(最大增益接近 3000):

图解:横轴是层索引,纵轴是前向行和/反向列和的最大值。HC 的增益远离 1,代表严重失衡。


6. mHC 的稳定性对比

mHC 把增益控制在 1.6 左右:

图解:mHC 的单层与复合映射增益基本围绕 1,稳定性明显改善。

热力图对比也显示 mHC 更“平稳”:

图解:HC 显示高幅度混乱区域,而 mHC 更均匀,说明残差流混合受控。


7. 系统层面的优化:不仅能训练,还能跑得快

HC 的问题不仅在理论稳定性,还有系统开销

  • I/O 读写量随n nn线性上升
  • Residual stream 变宽导致显存和通信开销大幅增加

mHC 通过三类优化降低开销:

7.1 Kernel Fusion

融合 RMSNorm + 线性投影 + Sigmoid / Sinkhorn 等步骤,减少内存访问。

7.2 Recomputing

只保存每L r L_rLr层的输入,其他中间激活通过重算节省显存:

L r ∗ ≈ n L n + 2 L_r^* \approx \sqrt{\frac{nL}{n+2}}Lrn+2nL

7.3 DualPipe 通信重叠

在 pipeline stage 间重叠 recompute 和通信,减小气泡。

图解:展示了 DualPipe 扩展后的调度方式,重点是把 FFN 的残差合并操作放到高优先级 stream,避免阻塞通信。


8. 主实验结果

27B 模型训练表现:

图解:mHC 在 loss 与梯度稳定性上接近 baseline,同时优于 HC。

性能表显示 mHC 稳定超越 baseline 和 HC:

BenchmarkBaselineHCmHC
BBH (EM)43.848.951.0
DROP (F1)47.051.653.9
GSM8K (EM)46.753.253.8
MMLU (Acc.)59.063.063.4

9. Scaling 维度验证

mHC 的优势在更大计算预算下仍然保留:

图解:左图是 compute scaling(3B/9B/27B),右图是 token scaling(固定 3B 模型)。mHC 的相对收益稳定存在。


10. 附录要点(超参 & 训练配置)

论文附录给出 3B/9B/27B 的详细配置:

  • expansion raten = 4 n=4n=4
  • Sinkhorn 迭代t max ⁡ = 20 t_{\max}=20tmax=20
  • RMSNormϵ = 1 × 10 − 20 \epsilon=1\times10^{-20}ϵ=1×1020
  • 训练 token 数:3B(39.3B) / 9B(105B) / 27B(262B)

这些超参在大模型训练中保持一致,说明 mHC 的设计具备可扩展性。


11. 总结:为什么 mHC 值得关注?

  • 从理论上保证稳定性:双随机矩阵 = “恒等映射的可控扩展”
  • 从工程上保证可落地:kernel fusion + recompute + pipeline overlap
  • 实证上稳扎稳打:loss 更稳、梯度更稳、下游表现更好

如果说 HC 是 “大胆扩宽残差流”,那么 mHC 就是 “给扩宽后的流做物理约束”,让它既自由不失控


12. 图示总览:核心结构对比

图解:左是标准残差,中是 HC(无约束混合),右是 mHC(投影到双随机矩阵流形)。mHC 的关键点是 “保留混合能力但防止信号失衡”。


本文参考自 mHC: Manifold-Constrained Hyper-Connections

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

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

相关文章

STM32CubeMX配置文件与代码生成关系图解说明

STM32CubeMX.ioc配置文件:从图形化设计到代码生成的“翻译中枢”你有没有过这样的经历?花了一整天配置STM32的时钟树、引脚复用和外设初始化,结果程序一下载——没反应。查了又查,最后发现是忘了打开某个外设的时钟门控。这在传统…

IAR中使用宏定义优化条件编译:实践技巧

IAR中巧用宏定义优化条件编译:从工程实践到高效开发你有没有遇到过这样的场景?同一个项目要出两个版本——一个给客户A的“基础版”功能精简,另一个给客户B的“专业版”带加密和远程升级。于是你复制了一份代码,注释掉某些模块&am…

JLink驱动安装方法:新手友好型操作指南

JLink驱动安装全攻略:从零开始,一次搞定调试环境 你是不是刚买了J-Link调试器,满怀期待地插上电脑,结果设备管理器里却显示“未知USB设备”? 或者在Keil里点了“Settings”,却发现IDE根本找不到你的J-Lin…

Keil调试教程:驱动层开发超详细版指南

Keil调试实战:从寄存器到DMA的驱动层深度调试指南在嵌入式开发的世界里,写驱动不是最难的——让驱动真正跑起来、不出错、可追踪,才是工程师每天面对的真实战场。尤其是当你面对一块全新的MCU板子,串口没输出、ADC采不到数据、DMA…

数据治理概论 连载【1/14】——第1章-数据治理概述 数据治理概论(97页)

面向刚刚涉足数据治理领域的业务人员以及在校大学生的实用教程。全书共四篇,前三篇(概念篇、体系篇、保障篇)包括11章:数据治理概述,数据治理框架,数据战略规划,数据采集,数据存储&a…

STM32使用HAL库实现I2C通信完整指南

STM32 HAL库I2C通信实战指南:从协议到代码的完整闭环你有没有遇到过这样的场景?明明按照例程配置了STM32的I2C,可HAL_I2C_Master_Transmit()就是返回HAL_ERROR;逻辑分析仪抓出来一看,SDA线卡在低电平不动——总线“挂死…

Nginx--日志(介绍、配置、日志轮转)

前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除 一、Nginx日志介绍 nginx 有一个非常灵活的日志记录模式,每个级别的配置可以有各自独立的访问日志, 所需日志模块 ngx_http_log_module 的…

03-MongoDB高级运维

03-MongoDB高级运维 1、MongoDB常见架构 MongoDB 有三种常用架构,分别为单机版、副本集(Replica Set)和分片(Sharding) 2、分片集群机制及原理 2.1 为什么使用分片集群 数据容量日益增大,访问性能日渐降低,怎么破? 新品上线异常火爆,如何支撑更多的并发用户? 单库…

奇偶校验在嵌入式系统中的作用:入门必读

奇偶校验:嵌入式通信中的“第一道防线”是如何工作的? 你有没有遇到过这样的情况:传感器数据突然跳变,串口打印出乱码,或者远程设备莫名其妙重启?在大多数情况下,问题的根源并不在代码逻辑&…

解决screen驱动花屏问题的实战经验

一次花屏排查引发的深度思考:从Framebuffer到DRM/KMS的嵌入式显示系统实战调优最近在调试一款基于Rockchip RK3566的工业HMI设备时,遇到了一个典型的“开机雪花屏”问题——上电后屏幕前两秒满屏随机噪点,随后画面突然恢复正常。这种间歇性视…

工业环境下的PCB封装防护设计:通俗解释

工业环境下的PCB封装防护设计:从失效现场到工程防御的实战指南你有没有遇到过这样的场景?一台变频器在钢铁厂运行不到半年,突然频繁重启。返厂拆开一看,主控板上的晶振周围泛着淡淡的白色腐蚀痕迹——不是元件坏了,而是…

电路板PCB设计防尘防水结构:项目应用

电路板PCB防尘防水设计实战:从IP等级到结构密封的工程落地你有没有遇到过这样的情况?一台户外智能电表,在南方梅雨季运行不到三个月就频繁重启;一个充电桩控制板,刚装上工地就被粉尘“封杀”了通信接口;甚至…

大数据GDPR合规的技术支撑体系

大数据GDPR合规的技术支撑体系关键词:大数据、GDPR合规、技术支撑体系、数据保护、隐私管理摘要:本文围绕大数据GDPR合规的技术支撑体系展开,详细介绍了GDPR的背景和重要性,深入剖析了技术支撑体系中的核心概念及其相互关系。通过…

Keil5芯片包下载路径设置:系统学习配置方法

Keil5芯片包下载路径设置:从新手踩坑到企业级实战你有没有遇到过这样的场景?刚装好Keil5,信心满满打开Pack Installer准备新建一个STM32工程,结果搜索半天找不到目标芯片;或者团队里新同事一来就得花两三个小时重新下载…

低功耗设计中的电源管理策略:超详细版解析

低功耗设计的底层逻辑:如何让MCU“会呼吸”?你有没有遇到过这样的场景?一个温湿度传感器节点,每5秒采集一次数据、通过LoRa发出去,其余时间仿佛“静止”。可电池还是撑不过一个月。拆开一看,MCU一直在跑主频…

S32DS使用一文说清:S32K GPIO外设初始化步骤

S32DS实战指南:从零搞懂S32K GPIO初始化全流程你有没有遇到过这样的情况——代码烧进去,LED就是不亮?按键按烂了也没反应?调试半天才发现,原来是某个时钟没开、引脚复用配错了,或者方向寄存器写反了。这种低…

电机控制器半桥驱动电路:自举电路完整示例

半桥驱动中的自举电路:从原理到实战的完整解析在设计电机控制器时,工程师常常会遇到一个看似简单却极为关键的问题:如何让高边N沟道MOSFET正常导通?如果你曾调试过H桥或三相逆变器电路,可能经历过这样的场景——低边开…

Protues元器件库与第三方库融合实战

打造专属电路仿真库:Proteus元器件扩展实战全攻略你有没有遇到过这样的场景?正在搭建一个基于STM32的智能家居控制板,原理图画到一半,突然发现——ESP8266模块找不到,CH340G烧录芯片也没有,连常用的INA219电…

基于Proteus仿真的STC89C52RC最小系统搭建教程

手把手教你用Proteus搭建STC89C52RC最小系统:从电路到代码的完整仿真实践你是不是也遇到过这样的情况:刚写完一段单片机程序,满心期待地烧录进开发板,结果LED不亮、按键无响应,甚至连芯片都不启动?排查半天…