2025年2月20日星期四

大模型Grok3的Deepsearch功能初体验

今天发现Grok3的DeepSearch功能免费推出了,测试了一下效果挺好,现在是Grok3 beta版本,对标的是OpenAI deep research ,有详细的思维链思考过程,也有思考过程摘要总结。


当然,主要是我在香港X的客户端中能直接用,不必再翻墙了。


图中是我让DeepSearch解释了,DeepSeek 前两天刚发布的最新论文中NAS(Native Sparse Attention),最近技术圈讨论很火热。


虽然paper刚挂上去两天,但DeepSearch给的回答(包括思维链)还是很不错的,生成了详细的调研报告,最后还有相关引用论文的链接:



这是deepsearch生成的全文回答,大家可以通读,一起学习一下:


关键要点

  • 深求(DeepSeek)提出的原生稀疏注意力(NSA)是一种高效处理长上下文的注意力机制。
  • 它通过动态层次稀疏策略结合粗粒度压缩、细粒度选择和滑动窗口注意力,保持全局和局部上下文。
  • NSA在训练和推理中显著加速,同时在长上下文任务上表现优于传统全注意力机制。

什么是原生稀疏注意力?

原生稀疏注意力(NSA)是深求团队设计的一种新型注意力机制,旨在解决大型语言模型(LLM)在处理长序列时的计算和内存挑战。传统注意力机制的计算复杂度为O(n²),随着序列长度n的增加,效率下降。NSA通过使注意力矩阵稀疏化,仅关注部分关键信息,从而降低计算成本。

NSA的核心是动态层次稀疏策略:

  • 粗粒度压缩:将输入序列分块,每个块用一个压缩向量表示,减少KV缓存大小。
  • 细粒度选择:动态选择重要块,通过可学习的门控机制决定哪些部分更相关。
  • 滑动窗口注意力:每个标记只关注附近一定范围内的标记,捕获局部上下文。

这种方法不仅保持了模型对全局和局部上下文的理解,还通过硬件优化(如GPU Tensor Core)实现了训练和推理的显著加速。


性能与效率

NSA在多个基准测试中表现出色:

  • 在长上下文任务(如LongBench)上,平均得分0.469,比全注意力高0.032。
  • 在64k上下文长度下,训练前向传播加速9.0倍,后向传播加速6.0倍,解码速度加速11.6倍。
  • 内存访问减少到5632个标记,相比全注意力的65536个标记,大幅降低资源需求。

这些改进使其特别适合需要处理长序列的场景,如多轮对话或复杂推理任务。


令人惊讶的发现

令人惊讶的是,NSA在保持性能的同时,解码速度可达全注意力的11.6倍,尤其在64k长度的序列上表现卓越。这表明稀疏注意力不仅高效,还能超越传统方法。


详细调研报告:深求论文中原生稀疏注意力原理的全面分析

引言

深求(DeepSeek)团队在近期发表的论文"Native Sparse Attention: Hardware-Aligned and Natively Trainable Sparse Attention Mechanism"中,提出了原生稀疏注意力(NSA)机制,旨在解决大型语言模型(LLM)在长上下文建模中的计算瓶颈。传统变换器模型的注意力机制因其O(n²)的计算复杂度,难以高效处理长序列。本文将详细探讨NSA的原理、实现及其在性能和效率方面的表现。

NSA的原理与架构

NSA的核心创新在于其动态层次稀疏策略,结合了以下三个主要组件:

  1. 粗粒度压缩:
  • 输入序列被划分为固定大小的块,每个块通过低秩压缩生成一个潜向量。
  • 这种压缩减少了KV缓存的存储需求,例如在实验中,压缩维度为512,显著降低内存占用。
  • 压缩后的向量用于全局上下文建模,确保模型能捕获长距离依赖。


  1. 细粒度选择:
  • 在压缩块的基础上,NSA通过可学习的门控机制选择重要块。
  • 门控机制基于查询(Q)和键(K)的相似性评分,动态决定哪些块需要进一步处理。
  • 这种选择性注意力使模型能够专注于与当前任务相关的信息,减少不必要的计算。


  1. 滑动窗口注意力:
  • 每个标记仅关注其附近一定窗口内的其他标记,通常窗口大小为固定值(如2或4)。
  • 这确保了局部上下文的高效捕获,特别适合捕捉短距离依赖。


NSA的架构通过并行处理这三个注意力分支,实现了全局和局部信息的平衡。具体来说,模型在计算注意力时,查询标记同时参考压缩块的潜向量、选定块的细粒度信息以及滑动窗口内的局部标记。这种多路径设计使得NSA在保持模型性能的同时,显著降低了计算复杂度。

硬件优化与训练支持

NSA的另一个关键特点是其硬件对齐设计:

  • 优化了块状稀疏注意力的计算,以充分利用GPU的Tensor Core,提升算术强度。
  • 使用Triton框架实现了专用内核,与FlashAttention类似,进一步加速计算。
  • 支持GQA(分组查询注意力)和MQA(多查询注意力)架构,共享KV缓存以提高效率。

在训练方面,NSA是"原生可训练"的,这意味着其稀疏模式是通过端到端训练学习的,而不是依赖预定义的启发式规则。这种训练感知设计通过高效的算法和反向传播操作器,支持模型在预训练阶段直接优化稀疏注意力参数,从而减少计算成本。

实验结果与性能分析

NSA的性能通过多个基准测试进行了评估,以下是关键结果:

预训练设置

  • 使用27B参数的变换器骨干,激活参数3B,30层,隐藏维度2560。
  • GQA设置:4组,64个注意力头,d_q = d_k = 192, d_v = 128
  • MoE(混合专家模型):72个路由专家,2个共享专家,top-k专家为6。
  • 预训练数据:270B个8k长度的文本,之后继续训练32k长度的文本,使用YaRN扩展。

基准测试结果

以下表格总结了NSA在不同任务上的表现:


任务类型指标NSA得分全注意力得分改进
一般基准(Table 1)DROP0.042-+0.042
GSM8K0.034-+0.034
平均得分0.4560.443+0.013
长上下文评估(Table 2)LongBench平均得分0.4690.437+0.032
HPQ--+0.087
2Wiki--+0.051
LCC--+0.069
PassR-en--+0.075
推理任务(Table 3)AIME 24(8k上下文)准确率0.1210.046+0.075
AIME 24(16k上下文)准确率0.1460.092+0.054


  • 在长上下文任务上,NSA在LongBench上平均得分0.469,领先全注意力0.032,尤其在HPQ、2Wiki等任务上表现突出。
  • 在64k上下文的"针在干草堆"测试中,NSA实现了完美的检索准确率(Figure 5)。

效率分析

  • 训练速度:在64k上下文长度下,NSA在前向传播上加速9.0倍,后向传播加速6.0倍(Figure 6)。
  • 解码速度:在64k上下文长度下,解码速度加速11.6倍(Table 4),内存访问减少到5632个标记,相比全注意力的65536个标记,资源利用率大幅提升。

这些结果表明,NSA不仅在性能上优于传统方法,还在计算效率上实现了突破,特别适合长序列处理场景。

讨论与意义

NSA的引入为LLM的长上下文建模提供了新的可能性。其动态层次稀疏策略确保了模型在保持全局和局部上下文的同时,显著降低了计算和内存需求。硬件对齐设计进一步保证了其实用性,使其在现代GPU上能够实现接近FlashAttention的加速。

值得注意的是,NSA的"原生可训练"特性使其能够自适应地学习稀疏模式,这与之前的稀疏注意力方法(如基于预定义模式的BigBird)形成对比。这种学习能力使得NSA在不同任务上的泛化性能更强,尤其在长文本任务和指令推理中表现优异。

局限性与未来方向

尽管NSA在实验中表现出色,但其对硬件依赖性较高,可能需要特定的GPU支持来充分发挥潜力。此外,压缩和选择机制的训练成本在初期可能较高,未来可以探索更高效的训练策略。

结论

深求论文中的原生稀疏注意力(NSA)原理通过动态层次稀疏策略、硬件优化和训练感知设计,显著提升了LLM在长上下文建模中的效率和性能。其在长序列任务上的优异表现和计算加速潜力,为下一代语言模型的发展提供了重要参考。



关键引文

  • Native Sparse Attention: Hardware-Aligned and Natively Trainable Sparse Attention
  • DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning
  • DeepSeek-V2: Scaling Laws in the Mixture of Experts Era

LLMTest_NeedleInAHaystack GitHub Repository


没有评论:

发表评论

我们应该为 Polkadot 国库引入“投资人”的角色吗?

投资天然会对团队形成一种"问责机制",这正是 Polkadot 国库所需要的! 加入 PolkaWorld 社区,共建 Web 3.0! 今天这篇文章来自 PolkaWorld 每月一次的 Polkadot 圆桌会谈节目,我们会回顾过去一个月 Polkad...