一支烟花AI 04月09日 17:54
盖过马斯克Grok3锋芒!DeepSeek又放大招:基于硬件对齐的 NSA, 可直接端到端训练
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

长上下文建模对下一代语言模型至关重要,标准注意力机制成本高。NSA作为稀疏注意力架构,通过多项创新提高效率,在多个方面表现优异。

🎯长上下文建模是下一代语言模型关键,应用广泛

💡稀疏注意力为提高效率提供方向,NSA被提出

🚀NSA采用动态分层稀疏策略,有多项关键创新

🌟NSA在多个任务中性能优于其他方法,提高计算效率

原创 一支烟一朵花 2025-02-19 07:30 上海

长上下文建模对于下一代语言模型至关重要,但标准注意力机制的高计算成本带来了巨大的计算挑战。

 

研究界越来越认识到长上下文建模是下一代大型语言模型的关键能力,由各种现实世界应用驱动,包括深入推理、存储库级代码生成和多轮自主代理系

 

长上下文之熵

长上下文建模对于下一代语言模型至关重要,但标准注意力机制的高计算成本带来了巨大的计算挑战。 

研究界越来越认识到长上下文建模是下一代大型语言模型的关键能力,由各种现实世界应用驱动,包括深入推理、存储库级代码生成和多轮自主代理系统。 

 

最近的突破,包括 OpenAI 的o系列模型 DeepSeek-R1和 Gemini 1.5 Pro,使模型能够处理整个代码库、冗长的文档、在数千个令牌上保持连贯的多轮对话,并跨长期依赖关系执行复杂的推理。 

 

随着序列长度的增加,原版注意力机制的高复杂性成为关键的延迟瓶颈。 

理论估计表明,在解码 64k 长度的上下文时,使用 softmax 架构的注意力计算占总延迟的 70-80%,这凸显了对更高效注意力机制的迫切需求 

 

 


NSA

长上下文建模对于下一代语言模型至关重要,但标准注意力机制的高计算成本带来了巨大的计算挑战。 

稀疏注意力为提高效率同时保持模型功能提供了一个有前途的方向。 

 

稀疏注意力的核心思想就是减少不必要的计算,不像传统的“全注意力”机制那样每一对词之间都要计算一次注意力,而是挑选出最有用的部分进行计算。 

这样,计算量大大减少,效率自然提高。


就像你做饭时,不需要把整个厨房的食材都搬出来,只取最重要的几样,就能做出美味佳肴,节省了时间和精力。 

 

为了实现更有效和高效的稀疏注意力,DeepSeek研发团队提出了 NSA,这是一种原生可训练的稀疏注意力架构,集成了分层令牌建模。 

 

它将算法创新与硬件对齐的优化集成在一起,以实现高效的长上下文建模。  

 

NSA采用了动态分层稀疏策略,通过将粗粒度的令牌压缩和细粒度的令牌选择相结合,来保证模型既能捕捉到全局上下文的感知,又能保持局部信息的精确度。 


这就像你在看一场足球比赛时,既能看到整个场地的布局,又不至于错过关键球员的动作,保持对比赛的全面把握。它通过两项关键创新推进了稀疏注意力设计: 

(1)通过算术强度平衡算法设计实现了大幅加速,并针对现代硬件进行了实现优化。 

(2)支持端到端训练,在不牺牲模型性能的情况下减少训练前计算。 

 

效果惊人

如图 1 所示,实验表明,使用 NSA 预训练的模型在一般基准、长上下文任务和基于指令的推理中保持或超过全注意力模型。 就像是你在比赛中,虽然没有用上最贵的装备,但依然能跑出好成绩。 

 

同时,NSA在处理64k长度序列时,在解码、前向传播和后向传播方面的速度比传统的全注意力机制快得多,证明了它在整个模型生命周期中的高效性。


NSA 引入了与上述关键要求相对应的两项核心创新:

硬件对齐系统:优化 Tensor Core 利用率和内存访问的逐块稀疏注意力,确保平衡的算术强度。 

训练感知设计:通过高效的算法和反向算子实现稳定的端到端训练。 

这种优化使NSA能够支持高效部署和端到端培训。 

 

框架通过三个并行的注意力分支处理输入序列: 

对于给定的查询,前面的键和值被处理为

粗粒度模式的压缩注意力、

重要标记块的选定注意力和

本地上下文的滑动注意力。

 

右图:每个分支产生的不同注意力模式的可视化。绿色区域表示需要计算注意力分数的区域,

而白色区域表示可以跳过的区域。 

 

 

NSA的内核设计

内核通过 GQA 组加载查询(网格循环),获取相应的稀疏 KV 块(Inner Loop),并在 SRAM 上执行注意力计算。

绿色块表示 SRAM 上的数据,而蓝色块表示 HBM 上的数据。 

 

详细时序

假设我们用一种叫“稀疏注意力内核”的方法来优化计算处理速度,就像优化一条生产线一样。 


想象有一条生产线,分成三个主要部分: 

外层循环内层循环(组内的处理)和处理单元 

外层循环就像生产调度员,负责把控整个生产流程。 

它会告诉内层循环(组内的处理)*按顺序处理每个查询块的位置,就像一位指挥员,指挥工人依次完成每一段工作任务。 

 

在每个查询块的位置处理时,内层循环(组内的处理)会先找到该位置属于某个组的所有任务(查询头)以及这些任务需要的特定工具(KV块索引),然后要求处理单元把这些任务和工具都搬到一块高效的工作区域(SRAM)里。 

 

处理单元会根据索引,按顺序把需要的材料(K、V块)搬到工作区域,就像是工人按照清单搬运物料到工作台,这样可以减少搬运的次数,提高效率。 处理单元开始用这些材料进行核心的工作(注意力计算),也就是把不同的材料组合起来,制造出产品。 

 

当这个位置的工作完成后,内层循环(组内的处理)会告诉调度员(外层循环)已经完成了这一步,调度员会继续指挥下一个位置的处理。 

 

在整个过程中,外层循环(网格上的外环)还负责合理安排工人的工作,确保各个部分的流水线(GPU流式多处理器)都能高效运转,不会因为任务分配不均而出现闲置或者过载的情况。 

 

最后,这个生产流程通过合理组织和优化搬运(减少冗余的工具和材料运输)以及合理安排工作(平衡各部分的工作负载),达到了高效的生产速度。 


就像我们在做一项复杂的工作,但通过把任务分组、合理搬运工具材料、优化工作流程,就能提高效率。 

 

关键创新 

 

性能优势 

在硬件层面优化了内存访问模式和计算调度,使得稀疏注意力机制在大规模LLM训练和解码过程中具备更高的效率和可扩展性。 

 

 

快速总结

论文链接

https://arxiv.org/pdf/2502.11089v1

 

研究背景

 

核心创新

动态层次稀疏策略 

算法创新与硬件优化 

关键数值结果 

 

核心设计

稀疏注意力机制设计 

硬件对齐的内核设计 

训练和推理优化 

 

实验结果

性能评估 

效率分析 

 

NSA 通过算法创新和硬件优化,实现了高效的长序列建模,显著提高了计算效率和模型性能。 


这一研究为长序列建模提供了新的思路和方法,具有重要的理论和实践意义。 

 

DeepSeek最近似乎像是开了挂一样,一个月一篇硬核论文,他们在大模型训练,推理效率和成本优化的路上越走越顺。 


Long live DeepSeek,Long live 开源! 

 

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

长上下文建模 NSA 稀疏注意力 计算效率
相关文章