🧸【论文精读】DeepSeek-V2
2025-5-8
| 2025-8-24
字数 15881阅读时长 40 分钟
type
status
password
date
slug
summary
category
URL
tags
icon

摘要

我们提出了DeepSeek-V2,这是一款强大的混合专家(MoE)语言模型,其特点是训练成本低且推理效率高。它总共有2360亿个参数,每个token激活210亿个参数,支持12.8万个token的上下文长度。DeepSeek-V2采用了创新架构,包括多头潜在注意力(MLA)和DeepSeekMoE。MLA通过将键值(KV)缓存压缩成一个潜在向量,实现了高效推理;而DeepSeekMoE则通过稀疏计算,以较低成本训练出强大的模型。与DeepSeek 67B相比,DeepSeek-V2性能显著提升,同时节省了42.5%的训练成本,将KV缓存减少了93.3%,最大生成吞吐量提高到原来的5.76倍。我们在由8100亿个token组成的高质量多源语料库上对DeepSeek-V2进行预训练,并进一步进行监督微调(SFT)和强化学习(RL),充分挖掘其潜力。评估结果表明,即使只有210亿个激活参数,DeepSeek-V2及其聊天版本在开源模型中仍能达到顶级性能。模型的检查点可在https://github.com/deepseek-ai/DeepSeek-V2获取。

1. 引言

在过去几年里,大语言模型(LLMs)(Anthropic, 2023; Google, 2023; OpenAI, 2022, 2023)迅速发展,让我们看到了通用人工智能(AGI)的曙光。一般而言,大语言模型的智能水平往往会随着参数数量的增加而提升,这使得它们能够在各类任务中展现出涌现能力。然而,这种提升是以消耗更多的训练计算资源和降低推理吞吐量为代价的。这些限制阻碍了大语言模型的广泛应用。
为了解决这个问题,我们推出了DeepSeek-V2,这是一个强大的开源混合专家(MoE)语言模型。它通过创新的Transformer架构,实现了低成本训练和高效推理。DeepSeek-V2总共有2360亿个参数,每个token激活210亿个参数,并且支持12.8万个token的上下文长度。
我们通过提出的多头潜在注意力(MLA)和DeepSeekMoE,对Transformer框架(Vaswani等人, 2017)中的注意力模块和前馈网络(FFNs)进行了优化。(1)在注意力机制方面,多头注意力(MHA)(Vaswani等人, 2017)的键值(KV)缓存成为限制大语言模型推理效率的主要瓶颈。人们探索了各种方法来解决这个问题,包括分组查询注意力(GQA)(Ainslie等人, 2023)和多查询注意力(MQA)(Shazeer, 2019)。然而,这些方法在试图减少KV缓存时,往往会牺牲性能。为了两全其美,我们引入了MLA,这是一种具有低秩键值联合压缩功能的注意力机制。实验表明,MLA与MHA相比性能更优,同时在推理时显著减少了KV缓存,从而提高了推理效率。(2)对于前馈网络(FFNs),我们采用了DeepSeekMoE架构(Dai等人, 2024),该架构通过细粒度的专家划分和共享专家隔离机制,提升了专家的专业化能力。与传统的混合专家架构(如GShard(Lepikhin等人, 2021))相比,DeepSeekMoE架构展现出巨大优势,让我们能够以较低成本训练强大的模型。在训练过程中,由于采用了专家并行技术,我们还设计了辅助机制来控制通信开销并确保负载均衡。通过这两种技术,使得DeepSeek-V2兼具强大的性能(图1(a))、较低的训练成本和高效的推理吞吐量(图1(b))。
notion image
我们构建了一个包含8.1万亿个token的高质量、多源预训练语料库,与我们之前发布的DeepSeek 67B所使用的语料库(DeepSeek-AI, 2024)相比,这个语料库数据量更大(尤其是中文数据),并且数据质量更高。我们首先在完整的预训练语料库上对DeepSeek-V2进行预训练。然后,我们收集了150万个对话样本(涵盖数学、代码、写作、推理、安全等多个领域),对DeepSeek-V2 Chat进行监督微调(SFT)。最后,我们借鉴DeepSeekMath(Shao等人, 2024)的方法,采用组相对策略优化(GRPO),进一步使模型符合人类偏好,得到DeepSeek-V2 Chat(RL)。
我们在一系列中英文基准测试中对DeepSeek-V2进行评估,并与代表性的开源模型进行比较。评估结果表明,即使只有210亿个激活参数,DeepSeek-V2在开源模型中仍能达到顶级性能,成为最强的开源混合专家语言模型。图1(a)显示,在MMLU测试中,DeepSeek-V2仅用少量激活参数就取得了顶尖成绩。此外,如图1(b)所示,与DeepSeek 67B相比,DeepSeek-V2节省了42.5%的训练成本,KV缓存减少了93.3%,最大生成吞吐量提高到原来的5.76倍。我们还对DeepSeek-V2 Chat(SFT)和DeepSeek-V2 Chat(RL)进行了开放式基准测试。值得注意的是,DeepSeek-V2 Chat(RL)在AlpacaEval 2.0(Dubois等人, 2024)中达到了38.9的长度控制胜率,在MT-Bench(Zheng等人, 2023)中获得了8.97的总分,在AlignBench(Liu等人, 2023)中获得了7.91的总分。英文开放式对话评估表明,DeepSeek-V2 Chat(RL)在开源聊天模型中具有顶级性能。此外,AlignBench的评估显示,在中文方面,DeepSeek-V2 Chat(RL)优于所有开源模型,甚至超过了大多数闭源模型。
为了促进对MLA和DeepSeekMoE的进一步研究和开发,我们还发布了DeepSeek-V2-Lite,这是一个较小的模型,也配备了MLA和DeepSeekMoE,供开源社区使用。它总共有157亿个参数,每个token激活24亿个参数。关于DeepSeek-V2-Lite的详细描述见附录B。
在本文的后续部分,我们首先详细介绍DeepSeek-V2的模型架构(第2节)。随后,我们介绍预训练工作,包括训练数据构建、超参数设置、基础设施、长上下文扩展,以及模型性能和效率的评估(第3节)。接着,我们展示对齐工作,包括监督微调(SFT)、强化学习(RL)、评估结果和其他讨论(第4节)。最后,我们总结研究成果,讨论DeepSeek-V2目前的局限性,并概述未来的工作方向(第5节)。

2. 架构

总体而言,DeepSeek-V2仍采用Transformer架构(Vaswani等人,2017),每个Transformer块由一个注意力模块和一个前馈网络(FFN)组成。不过,针对注意力模块和FFN,我们设计并采用了创新架构。在注意力方面,我们设计了MLA,它利用低秩键值联合压缩技术,消除推理时键值缓存带来的瓶颈,从而实现高效推理。对于FFN,我们采用了DeepSeekMoE架构(Dai等人,2024),这是一种高性能的混合专家架构,能够以较低成本训练强大的模型。图2展示了DeepSeek-V2的架构,在本节中,我们将详细介绍MLA和DeepSeekMoE。除非特别说明,DeepSeek-V2在其他细节(如层归一化和FFN中的激活函数)上沿用DeepSeek 67B(DeepSeek-AI,2024)的设置。
notion image

2.1 多头潜在注意力:提升推理效率

传统的Transformer模型通常采用多头注意力(MHA)(Vaswani等人,2017),但在生成过程中,其庞大的键值(KV)缓存会成为限制推理效率的瓶颈。为了减少KV缓存,人们提出了多查询注意力(MQA)(Shazeer,2019)和分组查询注意力(GQA)(Ainslie等人,2023)。它们所需的KV缓存规模较小,但性能却不及MHA(附录D.1对MHA、GQA和MQA进行了消融实验)。
对于DeepSeek-V2,我们设计了一种创新的注意力机制——多头潜在注意力(MLA)。MLA通过低秩键值联合压缩,在实现比MHA更好性能的同时,显著减少了KV缓存。下面我们介绍其架构,并在附录D.2中对MLA和MHA进行比较。

2.1.1 预备知识:标准多头注意力

我们首先介绍标准的MHA机制作为背景知识。设为嵌入维度,为注意力头的数量,为每个头的维度,为注意力层中第个token的注意力输入。标准MHA首先通过三个矩阵分别生成
然后,会被切分为个头,用于多头注意力计算:
其中,分别表示第个注意力头的查询、键和值;表示输出投影矩阵。在推理过程中,所有的键和值都需要被缓存以加速推理,因此MHA需要为每个token缓存个元素,其中代表transformer的层数。在模型部署时,这种庞大的KV缓存成为限制最大批量大小和序列长度的主要瓶颈。

2.1.2 低秩键值联合压缩

MLA的核心是对键和值进行低秩联合压缩,以减少KV缓存:
其中,是键和值的压缩潜在向量;表示KV压缩维度;是下投影矩阵;分别是键和值的上投影矩阵。在推理时,MLA只需要缓存,因此其KV缓存仅包含个元素,其中表示层数。此外,在推理过程中,由于可以被合并到中,可以被合并到中,我们甚至无需为注意力计算单独计算键和值。图3直观地展示了MLA中的KV联合压缩是如何减少KV缓存的。
notion image
此外,为了减少训练过程中的激活内存,我们还对查询进行低秩压缩,尽管这并不能减少KV缓存:
其中,是查询的压缩潜在向量;表示查询压缩维度;分别是查询的下投影和上投影矩阵。

2.1.3 解耦旋转位置嵌入

继DeepSeek 67B(DeepSeek-AI,2024)之后,我们打算在DeepSeek-V2中使用旋转位置嵌入(RoPE)(Su等人,2024)。然而,RoPE与低秩KV压缩不兼容。具体来说,RoPE对键和查询都具有位置敏感性。如果我们对键应用RoPE,公式(10)中的将与一个位置敏感的RoPE矩阵耦合。这样一来,在推理时就无法再被合并到中,因为与当前生成token相关的RoPE矩阵会位于之间,而矩阵乘法不满足交换律。结果,我们在推理时必须重新计算所有前缀token的键,这将显著降低推理效率。
作为解决方案,我们提出了解耦RoPE策略,使用额外的多头查询和共享键来承载RoPE,其中表示解耦查询和键的每个头的维度。采用解耦RoPE策略后,MLA执行以下计算:
其中,分别是用于生成解耦查询和键的矩阵;RoPE表示应用RoPE矩阵的操作;表示连接操作。在推理时,解耦键也需要被缓存。因此,DeepSeek-V2总共需要的KV缓存包含个元素。
为了展示MLA完整的计算过程,我们在附录C中整理并给出了其完整公式。

2.1.4 键值缓存比较

我们在表1中展示了不同注意力机制下每个token的KV缓存比较。MLA所需的KV缓存量很小,与只有2.25个分组的GQA相当,但性能比MHA更强。
注意力机制
每个token的KV缓存(元素数量)
能力
多头注意力(MHA)
分组查询注意力(GQA)
中等
多查询注意力(MQA)
MLA(我们的方法)
更强
表1不同注意力机制下每个token的KV缓存比较。表示注意力头的数量,表示每个注意力头的维度,表示层数,表示GQA中的分组数量,分别表示MLA中KV压缩维度和解耦旋转位置编码中查询与键的每个头的维度。KV缓存量通过元素数量衡量,不考虑存储精度。对于DeepSeek-V2,设置为设置为。因此,其KV缓存与只有2.25个分组的GQA相当,但性能比MHA更强。

2.1.5 矩阵吸收

在推理过程中,合并(因为注意力分数是标量,所以可以合并);合并

2.2 DeepSeekMoE:低成本训练强大模型

2.2.1 基本架构

对于FFN,我们采用DeepSeekMoE架构(Dai等人,2024)。DeepSeekMoE有两个关键思想:一是将专家进行更细粒度的划分,以实现更高程度的专家专业化和更准确地获取知识;二是隔离一些共享专家,以减少路由专家之间的知识冗余。在激活参数和总专家参数数量相同的情况下,DeepSeekMoE相比传统的混合专家架构(如GShard(Lepikhin等人,2021))有显著优势。
为第个token的FFN输入,我们通过以下公式计算FFN输出
其中,分别表示共享专家和路由专家的数量;分别表示第个共享专家和第个路由专家;表示激活的路由专家数量;是第个专家的门控值;是token与专家的亲和度;是该层第个路由专家的质心;表示在为第个token计算的所有路由专家亲和度得分中,选取个最高得分组成的集合。

2.2.2 设备受限路由

我们设计了一种设备受限的路由机制,以限制MoE相关的通信成本。当采用专家并行(expert parallelism)时,路由专家会被分布在多个设备上。对于每个token而言,其与MoE相关的通信频率与其目标专家所覆盖的设备数量成正比。由于DeepSeekMoE采用细粒度的专家分割策略,激活的专家数量可能较多,因此若采用专家并行,MoE相关的通信成本会显著增加。
对于DeepSeek-V2,除了常规的路由专家top-K选择机制外,我们额外确保每个token的目标专家最多分布在M个设备上。具体而言,对于每个token,我们首先选择M个最高亲和力分数的专家设备,然后在这些设备上的专家中执行top-K选择。实验表明,当M≥3时,设备受限路由机制的性能与无限制的top-K路由基本对齐。

2.2.3 负载均衡的辅助损失

为了确保训练过程的负载均衡,我们设计了三级辅助损失函数体系:专家级负载均衡()、设备级负载均衡()和通信均衡()。
  • 专家级平衡损失:我们使用专家级平衡损失(Fedus等人,2021;Lepikhin等人,2021)来降低路由崩溃的风险:
    • 当一条样本(A Sequence)中的所有 Token 被均匀地分配给各个专家时,如下所示的损失函数达到最小值。
      其中,是一个超参数,称为专家级平衡因子;表示指示函数;表示序列中的token数量;表示路由专家的数量,表示每次被选择的路由专家数量,的计算过程请看公式(22)。
      💡
      通过惩罚专家选择频率与亲和度得分的乘积,有效防止特定专家被过度/不足使用
  • 设备级平衡损失:除了专家级平衡损失,我们还设计了设备级平衡损失,以确保不同设备之间的计算负载均衡。在训练DeepSeek-V2的过程中,我们将所有路由专家划分为个组,并将每组路由专家部署在单个设备上。设备级平衡损失的计算如下:
    • DeepSeek-V2 将部署在同一个 Device(卡)上的专家化为一组,Device-Level Balance Loss 将促使各个 Device 被分配到的 Token 数量是均衡的。
      这是一种相比于 Expert-Level Balance 来说更宽松的约束,在 DeepSeekMoE 的技术报告里有写道,太严格的负载均衡控制将会有损模型能力,因此,Device-Level Balance Loss 的权重系数(真实设定为 0.05)实际大于 Expert-Level Balance Loss 的权重系数(真实设定为 0.003)。
      其中,是一个超参数,称为设备级平衡因子。
  • 通信平衡损失:最后,我们引入通信平衡损失,以确保每个设备的通信负载均衡。
    • Device-Level Balance Loss 只能约束每个 Device 或专家组被分配到的 Token 数量是均衡的,并不能保证这些 Token 的来源也是均衡的。
      Communication Balance Loss 会促进一条样本(A Sequence)中的所有 Token 均匀地分配给各个 Device。降低通信成本
      其中,是一个名为通信平衡因子的超参数。设备受限路由机制的运行原则是确保每个设备向其他设备传输的隐藏状态最多为,M表示每台设备最大发往个节点。同时,采用通信平衡损失来促使每个设备从其他设备接收大约MT的隐藏状态。通信平衡损失保证了设备之间信息的均衡交换,有助于实现高效通信。

2.2.4 Token丢弃策略

虽然平衡损失旨在促进负载均衡,但需要明确的是,这些损失函数无法保证严格的负载均衡。为了进一步缓解因负载不均衡造成的计算资源浪费,我们在训练期间引入了设备级令牌丢弃策略。
该策略首先为每个设备计算平均计算预算,即设定每个设备的容量因子(capacity factor)为1.0。然后,我们在每个设备上按照亲和力分数从低到高的顺序丢弃token,直至达到设备的计算预算。
同时,我们确保约10%的训练序列token永远不会被丢弃。通过这种方式,DeepSeek-V2 的 Sparse MoE 在训练阶段同时经历了 Token 溢出被丢弃和 Token 溢出不被丢弃的情况,这也意味着在推理阶段,可以根据实际需要来决定是否采取 Token 溢出即丢弃的推理,因为在训练阶段都曾出现过相一致的情况。

3. 预训练

3.1 实验设置

3.1.1 数据构建

在采用与DeepSeek 67B(DeepSeek-AI, 2024)相同的数据处理流程的基础上。我们扩大了数据量并提高了数据质量。为了扩充预训练语料库,我们优化了互联网数据的清洗流程,从而恢复了大量被误删的高质量数据。此外,通过中文互联网,我们纳入了更多的中文数据。除了数据量,我们也关注数据质量。我们不仅引用了多种来源的高质量数据,而且改进了基于质量的过滤算法。改进后的算法能在确保去除大量无用数据的同时,尽可能保留有价值的数据。我们还从预训练语料库中过滤掉有争议的内容,以减轻特定地域文化带来的数据偏差。附录E详细讨论了这种过滤策略的影响。
我们采用与DeepSeek 67B相同的分词器,该分词器基于BBPE算法构建,词汇表大小为10万。经过分词的预训练语料库包含8.1万亿个token,其中中文token比英文token大约多12%。

3.1.2 超参数

  • 模型超参数:我们将Transformer层数设置为60,隐藏层维度设置为5120。所有可学习参数均以0.006的标准差进行随机初始化。在MLA中,我们将注意力头的数量设置为128,每个头的维度设置为128。KV压缩维度设置为512,查询压缩维度设置为1536。对于解耦的查询和键(用于RoPE位置编码),我们将每个头的维度设置为64。
    • 遵循Dai等人(2024)的方法,我们将除第一层之外的所有FFN替换为MoE层。每个MoE层由2个共享专家和160个路由专家组成,每个专家的中间隐藏层维度为1536。在路由专家中,每个token会激活6个专家。此外,低秩压缩和细粒度的专家划分会影响层的输出规模。因此,在实践中,我们在压缩后的潜在向量后使用额外的RMS归一化层,并在宽度瓶颈处(即压缩后的潜在向量和路由专家的中间隐藏状态)乘以额外的缩放因子,以确保训练的稳定性。在这种配置下,DeepSeek-V2总共有2360亿个参数,每个token激活210亿个参数。
  • 训练超参数:我们使用AdamW优化器(Loshchilov和Hutter, 2017),超参数设置为,权重衰减。学习率采用预热(warmup)-阶梯衰减策略(DeepSeek-AI, 2024)。在最初的2000步中,学习率从0线性增加到最大值。在训练大约60%的token后,学习率乘以0.316,在训练大约90%的token后,再次乘以0.316。最大学习率设置为,梯度裁剪范数设置为1.0。我们还采用了批次大小调度策略,在训练前2250亿个token时,批次大小从2304逐渐增加到9216,在剩余的训练过程中保持9216不变。我们将最大序列长度设置为4096,并在8.1万亿个token上训练DeepSeek-V2。我们利用流水线并行将模型的不同层部署在不同设备上,对于每一层,路由专家会均匀部署在8个设备上。在设备受限路由方面,每个token最多被发送到3个设备()。对于平衡损失,我们将设置为0.003,设置为0.05,设置为0.02。在训练过程中,我们采用token丢弃策略来加速训练,但在评估时不丢弃任何token。

3.1.3 基础设施

DeepSeek-V2基于HAI-LLM框架(High-flyer, 2023)进行训练,这是由我们工程师团队自主研发的高效轻量级训练框架。该框架采用了16路零气泡(zero-bubble)流水线并行(Qi et al., 2023)、8路专家并行(Lepikhin et al., 2021)和ZeRO-1数据并行(Rajbhandari et al., 2020)技术。由于DeepSeek-V2激活参数相对较少,且通过部分算子重计算来节省激活内存,因此无需使用张量并行即可完成训练,这有效降低了通信开销。为进一步提升训练效率,我们将共享专家的计算过程与专家并行的全到全(all-to-all)通信进行重叠。此外,我们还为通信、路由算法以及跨专家的融合线性计算定制了更快的CUDA内核。MLA的实现也基于改进版的FlashAttention-2(Dao, 2023)。
💡
气泡是指流水线阶段之间的空闲等待时间
所有实验均在配备NVIDIA H800 GPU的集群上完成。H800集群的每个节点包含8块通过NVLink和NVSwitch互联的GPU,节点间采用InfiniBand网络进行通信。

3.1.4 长上下文扩展

在完成DeepSeek-V2的初始预训练后,我们采用YaRN(Peng et al., 2023)方法将默认的上下文窗口长度从4K扩展到128K。具体而言,YaRN被应用于负责承载旋转位置编码(RoPE)的解耦共享键。对于YaRN的参数设置,我们将缩放因子设为40,设为1,设为32,并将目标最大上下文长度设为160K。通过这种配置,我们可以预期模型在128K上下文长度下表现良好。与原始YaRN方法略有不同的是,由于我们独特的注意力机制设计,我们调整了长度缩放因子为,旨在最小化模型的困惑度。
我们额外对模型进行了1000步的训练,序列长度为32K,批次大小为576个序列。尽管训练仅在32K的序列长度下进行,但在128K的上下文长度下进行评估时,模型仍表现出强大的性能。如图4所示,“大海捞针”(NIAH)测试的结果表明,DeepSeek-V2在长达128K的所有上下文窗口长度下都表现良好。

3.2 评估

3.2.1 评估基准

DeepSeek-V2在双语语料库上进行预训练,因此我们在一系列中英文基准测试中对其进行评估。我们的评估基于集成在HAI-LLM框架中的内部评估框架。包含的基准测试分类如下,其中带下划线的基准测试为中文测试:
  • 多学科多项选择数据集:包括MMLU(Hendrycks等人, 2020)、C-Eval(Huang等人, 2023)和CMMLU(Li等人, 2023)。
  • 语言理解和推理数据集:包括HellaSwag(Zellers等人, 2019)、PIQA(Bisk等人, 2020)、ARC(Clark等人, 2018)和BigBench Hard(BBH)(Suzgun等人, 2022)。
  • 闭卷问答数据集:包括TriviaQA(Joshi等人, 2017)和NaturalQuestions(Kwiatkowski等人, 2019)。
  • 阅读理解数据集:包括RACE(Lai等人, 2017)、DROP(Dua等人, 2019)、C3(Sun等人, 2019)和CMRC(Cui等人, 2019)。
  • 指代消解数据集:包括WinoGrande(Sakaguchi等人, 2019)和CLUEWSC(Xu等人, 2020)。
  • 语言建模数据集:包括Pile(Gao等人, 2020)。
  • 中文理解和文化数据集:包括CHID(Zheng等人, 2019)和CCPM(Li等人, 2021)。
  • 数学数据集:包括GSM8K(Cobbe等人, 2021)、MATH(Hendrycks等人, 2021)和CMath(Wei等人, 2023)。
  • 代码数据集:包括HumanEval(Chen等人, 2021)、MBPP(Austin等人, 2021)和CRUXEval(Gu等人, 2024)。
  • 标准化考试:包括AGIEval(Zhong等人, 2023)。需要注意的是,AGIEval包含中英文两个子集。
遵循我们之前的工作(DeepSeek-AI, 2024),对于包括HellaSwag、PIQA、WinoGrande、RACE-Middle、RACE-High、MMLU、ARC-Easy、ARC-Challenge、CHID、C-Eval、CMMLU、C3和CCPM在内的数据集,我们采用基于困惑度的评估方法;对于TriviaQA、NaturalQuestions、DROP、MATH、GSM8K、HumanEval、MBPP、CRUXEval、BBH、AGIEval、CLUEWSC、CMRC和CMath,我们采用基于生成的评估方法。此外,对于Pile-test,我们进行基于语言建模的评估,并使用每字节比特数(Bits-Per-Byte,BPB)作为指标,以确保在不同分词器的模型之间进行公平比较。
为了直观地了解这些基准测试,我们在附录G中提供了每个基准测试的评估格式。

3.2.2 评估结果

在表2中,我们将DeepSeek-V2与几个具有代表性的开源模型进行比较,包括DeepSeek 67B(DeepSeek-AI, 2024)(我们之前发布的模型)、Qwen1.5 72B(Bai等人, 2023)、LLaMA3 70B(AI@Meta, 2024)和Mixtral 8x22B(Mistral, 2024)。我们使用内部评估框架对所有这些模型进行评估,并确保它们具有相同的评估设置。总体而言,即使只有210亿个激活参数,DeepSeek-V2在几乎所有基准测试中都显著优于DeepSeek 67B,在开源模型中达到顶级性能。
notion image
此外,我们逐一细致地将DeepSeek-V2与其开源竞品进行比较。(1)与同样支持中英文的Qwen1.5 72B相比,DeepSeek-V2在大多数英文、代码和数学基准测试中展现出压倒性的优势。在中文基准测试方面,Qwen1.5 72B在多学科多项选择任务上表现更好,而DeepSeek-V2在其他任务上与之相当或更优。需要注意的是,对于CHID基准测试,Qwen1.5 72B的分词器在我们的评估框架中会出现错误,因此我们在表中为Qwen1.5 72B的CHID分数留空。(2)与Mixtral 8x22B相比,除了在与英语常识知识密切相关的TriviaQA、NaturalQuestions和HellaSwag测试中,DeepSeek-V2在英文性能上与之相当或更优。值得注意的是,DeepSeek-V2在MMLU测试上的表现优于Mixtral 8x22B。在代码和数学基准测试中,DeepSeek-V2与Mixtral 8x22B表现相当。由于Mixtral 8x22B没有针对中文数据进行专门训练,其中文能力远远落后于DeepSeek-V2。(3)与LLaMA3 70B相比,DeepSeek-V2在英语训练token数量上不到其四分之一。因此,我们承认DeepSeek-V2在基础英语能力上与LLaMA3 70B仍存在轻微差距。然而,即使训练token数量和激活参数少得多,DeepSeek-V2在代码和数学能力上仍与LLaMA3 70B相当。此外,作为一个双语语言模型,DeepSeek-V2在中文基准测试上的表现远远超过LLaMA3 70B。
最后值得一提的是,某些先前研究(Hu等人, 2024)在预训练阶段纳入了监督微调(SFT)数据,而DeepSeek-V2在预训练期间从未接触过SFT数据。

3.2.3 训练和推理效率

  • 训练成本:由于DeepSeek-V2为每个token激活的参数更少,所需的浮点运算次数(FLOPs)比DeepSeek 67B少,因此理论上训练DeepSeek-V2比训练DeepSeek 67B更经济。尽管训练混合专家模型会引入额外的通信开销,但通过我们对操作符和通信的优化,DeepSeek-V2的训练可以实现较高的模型浮点运算利用率(MFU)。在H800集群上进行实际训练时,每训练一万亿个token,DeepSeek 67B需要30.06万个GPU小时,而DeepSeek-V2仅需要17.28万个GPU小时,即与密集型的DeepSeek 67B相比,稀疏型的DeepSeek-V2可以节省42.5%的训练成本。
  • 推理效率:为了高效地部署DeepSeek-V2提供服务,我们首先将其参数转换为FP8精度。此外,我们还对DeepSeek-V2进行了KV缓存量化(Hooper等人, 2024; Zhao等人, 2023),进一步将其KV缓存中的每个元素平均压缩为6比特。得益于MLA和这些优化,实际部署的DeepSeek-V2所需的KV缓存比DeepSeek 67B少得多,因此可以处理更大的批次。我们根据实际部署的DeepSeek 67B服务中的提示和生成长度分布,对DeepSeek-V2的生成吞吐量进行评估。在配备8个H800 GPU的单个节点上,DeepSeek-V2的生成吞吐量超过每秒5万个token,是DeepSeek 67B最大生成吞吐量的5.76倍。此外,DeepSeek-V2的提示输入吞吐量超过每秒10万个token。

4. 对齐

4.1 监督微调

基于之前的研究(DeepSeek-AI, 2024),我们精心整理了指令调优数据集,包含150万个实例,其中120万个用于提升有用性,30万个用于保障安全性。相较于初始版本,我们提高了数据质量,以减少幻觉响应并提升文本生成能力。我们对DeepSeek-V2进行2轮微调,学习率设置为。在评估DeepSeek-V2 Chat(SFT)时,除了几个具有代表性的多项选择任务(MMLU和ARC)外,我们主要采用基于生成的基准测试。我们还对DeepSeek-V2 Chat(SFT)进行了指令遵循评估(IFEval)(Zhou等人, 2023),使用提示级宽松准确率作为评估指标。此外,我们利用2023年9月1日至2024年4月1日的LiveCodeBench(Jain等人, 2024)问题来评估聊天模型。除了标准基准测试外,我们还在包括MT-Bench(Zheng等人, 2023)、AlpacaEval 2.0(Dubois等人, 2024)和AlignBench(Liu等人, 2023)在内的开放式对话基准上进一步评估模型。为了进行对比,我们也在相同的评估框架和设置下评估Qwen1.5 72B Chat、LLaMA-3-70B Instruct和Mistral-8x22B Instruct。至于DeepSeek 67B Chat,我们直接参考之前发布的评估结果。

4.2 强化学习

为了进一步挖掘DeepSeek-V2的潜力并使其更符合人类偏好,我们进行强化学习(RL)来调整其偏好。
  • 强化学习算法:为了节省强化学习的训练成本,我们采用了组相对策略优化(GRPO)(Shao等人, 2024)。该算法舍弃了通常与策略模型大小相同的价值网络,而是从组分数中估计基线。具体来说,对于每个问题,GRPO从旧策略中采样一组输出,然后通过最大化以下目标来优化策略模型
    • 其中是超参数;是参考模型;是优势值,通过每组输出对应的一组奖励计算得出:
      策略更新:根据相对优势更新策略模型的参数,增加高奖励输出的概率,减少低奖励输出的概率。同时,通过KL散度约束确保策略更新的稳定性。
      notion image
  • 训练策略:在初步实验中,我们发现针对推理数据(如代码和数学提示)的强化学习训练,与针对一般数据的训练相比,具有独特的特点。例如,模型的数学和编码能力在较长的训练步骤中能够持续提升。因此,我们采用两阶段强化学习训练策略,先进行推理对齐,再进行人类偏好对齐。在第一个推理对齐阶段,我们为代码和数学推理任务训练一个奖励模型,并利用的反馈来优化策略模型:
    • 在第二个人类偏好对齐阶段,我们采用多奖励框架,从有用性奖励模型、安全性奖励模型和基于规则的奖励模型中获取奖励。最终,一个响应的奖励为:
      其中是相应的系数。
      为了获得在强化学习训练中起关键作用的可靠奖励模型,我们仔细收集偏好数据,并进行细致的质量筛选和比例调整。我们基于编译器反馈获得代码偏好数据,基于真实标签获得数学偏好数据。在奖励模型训练中,我们用DeepSeek-V2 Chat(SFT)初始化奖励模型,并使用逐点损失或成对损失进行训练。在实验中我们观察到,强化学习训练能够充分挖掘和激活模型的潜力,使其能够从可能的响应中选择正确且令人满意的答案。
  • 训练效率优化:对超大规模模型进行强化学习训练,对训练框架提出了很高的要求。这需要精心的工程优化,以管理GPU内存和RAM压力,同时保持较快的训练速度。为此,我们实施了以下工程优化措施。(1)首先,我们提出了一种混合引擎,分别针对训练和推理采用不同的并行策略,以实现更高的GPU利用率。(2)其次,我们使用具有大批量的vLLM(Kwon等人, 2023)作为推理后端,以加快推理速度。(3)第三,我们精心设计了将模型卸载到CPU并重新加载回GPU的调度策略,在训练速度和内存消耗之间实现了接近最优的平衡。

4.3 评估结果

  • 标准基准测试评估:最初,我们在标准基准测试中评估DeepSeek-V2 Chat(SFT)和DeepSeek-V2 Chat(RL)。值得注意的是,与基础版本相比,DeepSeek-V2 Chat(SFT)在GSM8K、MATH和HumanEval评估中表现出显著改进。这一进步可归因于我们的监督微调数据,其中包含大量与数学和代码相关的内容。此外,DeepSeek-V2 Chat(RL)在数学和代码基准测试中进一步提升了性能。附录F展示了更多代码和数学评估结果。
    • 在与其他模型的比较中,我们首先将DeepSeek-V2 Chat(SFT)与Qwen1.5 72B Chat进行对比,发现DeepSeek-V2 Chat(SFT)在几乎所有英文、数学和代码基准测试中均优于Qwen1.5 72B Chat。在中文基准测试方面,DeepSeek-V2 Chat(SFT)在多学科多项选择任务上的得分略低于Qwen1.5 72B Chat,这与它们基础版本的性能表现一致。与当前最先进的开源混合专家模型Mixtral 8x22B Instruct相比,DeepSeek-V2 Chat(SFT)在大多数基准测试中表现更优,NaturalQuestions和IFEval除外。此外,与当前最先进的开源模型LLaMA3 70B Chat相比,DeepSeek-V2 Chat(SFT)在代码和数学相关基准测试中表现相似。LLaMA3 70B Chat在MMLU和IFEval上表现更好,而DeepSeek-V2 Chat(SFT)在中文任务上表现更强。最终,与DeepSeek-V2 Chat(SFT)相比,DeepSeek-V2 Chat(RL)在数学和编码任务上表现出进一步的提升。这些比较突出了DeepSeek-V2 Chat在不同领域和语言方面相对于其他语言模型的优势。
  • 开放式生成评估:我们在开放式对话基准上对模型进行了额外评估。在英文开放式对话生成方面,我们使用MT-Bench和AlpacaEval 2.0作为基准。表4中的评估结果表明,DeepSeek-V2 Chat(RL)相对于DeepSeek-V2 Chat(SFT)具有显著的性能优势,这展示了我们强化学习训练在实现更好对齐方面的有效性。与其他开源模型相比,DeepSeek-V2 Chat(RL)在这两个基准上的表现均优于Mistral 8x22B Instruct和Qwen1.5 72B Chat。与LLaMA3 70B Instruct相比,DeepSeek-V2 Chat(RL)在MT-Bench上表现相当,在AlpacaEval 2.0上则明显更优。这些结果突出了DeepSeek-V2 Chat(RL)在生成高质量、上下文相关响应方面的强大性能,特别是在基于指令的对话任务中。
    • notion image
      此外,我们基于AlignBench评估了中文开放式生成能力。如表5所示,DeepSeek-V2 Chat(RL)相对于DeepSeek-V2 Chat(SFT)有轻微优势。值得注意的是,DeepSeek-V2 Chat(SFT)在中文方面大幅超越所有开源模型,显著优于排名第二的开源模型Qwen1.5 72B Chat,在推理和语言能力上表现出色。此外,DeepSeek-V2 Chat(SFT)和DeepSeek-V2 Chat(RL)均优于GPT-4-0613和ERNIEBot 4.0,巩固了我们的模型在支持中文的顶级大语言模型中的地位。具体而言,DeepSeek-V2 Chat(RL)在中文语言理解方面表现卓越,超过了包括GPT-4-Turbo-1106-Preview在内的所有模型。另一方面,DeepSeek-V2 Chat(RL)的推理能力仍落后于大型模型,如Erniebot-4.0和GPT-4s。
      notion image

4.4 讨论

  • 监督微调数据量:关于大规模监督微调语料库必要性的讨论一直备受关注。先前的研究(Young等人, 2024; Zhou等人, 2024)认为,少于1万个监督微调数据实例就足以产生令人满意的结果。然而,在我们的实验中发现,如果使用少于1万个实例,在IFEval基准测试中模型性能会显著下降。一种可能的解释是,语言模型需要一定数量的数据来培养特定技能。尽管随着模型规模的增加,所需的数据量可能会减少,但并不能完全消除。我们的观察强调了为大语言模型配备足够数据以获得所需能力的关键需求。此外,监督微调数据的质量也至关重要,特别是对于涉及写作或开放式问题的任务。
  • 强化学习的对齐代价:在人类偏好对齐过程中,我们观察到在开放式生成基准测试中,无论是人工智能还是人类评估者给出的分数,都显示出模型性能有显著提升。然而,我们也注意到了 “对齐代价” 现象(Ouyang等人, 2022),即对齐过程可能会对某些标准基准测试(如BBH)的性能产生负面影响。为了减轻这种对齐代价,在强化学习阶段,我们在数据处理和改进训练策略方面付出了巨大努力,最终在标准基准测试和开放式基准测试的性能之间实现了可接受的平衡。探索如何在不牺牲模型通用性能的前提下使其符合人类偏好,是未来研究的一个有价值方向。
  • 在线强化学习:在偏好对齐实验中,我们发现在线方法明显优于离线方法。因此,我们投入大量精力为DeepSeek-V2实现了在线强化学习框架。关于在线或离线偏好对齐的结论可能因不同的背景而有所不同,我们将在未来的工作中对它们进行更全面的比较和分析。

5. 结论、局限性和未来工作

在本文中,我们介绍了DeepSeek-V2,这是一个支持128K上下文长度的大型混合专家语言模型。除了性能强劲之外,它还具有训练成本低和推理效率高的特点,这得益于其创新的架构,包括MLA和DeepSeekMoE。在实际应用中,与DeepSeek 67B相比,DeepSeek-V2性能显著提升,同时节省了42.5%的训练成本,将KV缓存减少了93.3%,并将最大生成吞吐量提高到5.76倍。评估结果进一步表明,即使只有210亿个激活参数,DeepSeek-V2在开源模型中仍能达到顶级性能,成为最强的开源混合专家模型。
DeepSeek-V2及其聊天版本与其他大语言模型一样,存在一些公认的局限性,包括在预训练后缺乏持续的知识更新,可能生成未经证实的建议等非事实性信息,以及可能产生幻觉。此外,由于我们的数据主要包含中文和英文内容,我们的模型在其他语言方面的能力可能有限。在中文和英文以外的场景中使用时应谨慎。
DeepSeek将长期持续投入开源大模型的研发,目标是逐步接近通用人工智能的目标。
  • 在当前的探索中,我们致力于设计出在保持低成本训练和推理的同时,能够进一步扩展混合专家模型规模的方法。我们的下一步目标是在未来的版本中实现与GPT-4相媲美的性能。
  • 我们的对齐团队不断努力提升模型,旨在开发出不仅实用,而且对全球用户来说诚实且安全的模型。我们的最终目标是使模型的价值观与人类价值观保持一致,同时尽量减少对人类监督的需求。通过优先考虑伦理考量和负责任的开发,我们致力于为社会带来积极有益的影响。
  • 目前,DeepSeek-V2仅支持文本模态。在未来的规划中,我们打算让模型支持多种模态,以增强其在更广泛场景中的通用性和实用性。

附录

B. DeepSeek-V2-Lite:一款配备MLA和DeepSeekMoE的160亿参数模型

B.1 模型描述

  • 架构:DeepSeek-V2-Lite有27层,隐藏层维度为2048。它也采用了MLA,有16个注意力头,每个头的维度为128。其KV压缩维度为512,但与DeepSeek-V2略有不同的是,它不对查询进行压缩。对于解耦的查询和键,其每个头的维度为64。DeepSeek-V2-Lite还采用了DeepSeekMoE,除第一层外,所有前馈网络都被替换为混合专家层。每个混合专家层由2个共享专家和64个路由专家组成,每个专家的中间隐藏层维度为1408。在路由专家中,每个token会激活6个专家。在这种配置下,DeepSeek-V2-Lite总共有157亿个参数,每个token激活24亿个参数。
    • notion image
      表6 DeepSeek-V2-Lite、DeepSeekMoE 16B和DeepSeek 7B的性能
  • 训练细节:DeepSeek-V2-Lite也是在与DeepSeek-V2相同的预训练语料库上从头开始训练的,且未受到任何监督微调(SFT)数据的干扰。它使用AdamW优化器,超参数设置为,\,权重衰减。学习率采用热身和阶梯衰减策略。在最初的2000步中,学习率从0线性增加到最大值。在训练大约80%的token后,学习率乘以0.316,在训练大约90%的token后,再次乘以0.316。最大学习率设置为,梯度裁剪范数设置为1.0。我们没有对它采用批次大小调度策略,而是以4608个序列的固定批次大小进行训练。在预训练期间,我们将最大序列长度设置为4096,并在5.7万亿个token上训练DeepSeek-V2-Lite。我们利用流水线并行将它的不同层部署在不同设备上,但对于每一层,所有专家都部署在同一设备上。因此,我们只使用了一个较小的专家级平衡损失,,而没有使用设备级平衡损失和通信平衡损失。预训练之后,我们也对DeepSeek-V2-Lite进行了长上下文扩展和监督微调,得到了一个名为DeepSeek-V2-Lite Chat的聊天模型。
    • notion image
      表7 DeepSeek-V2-Lite Chat、DeepSeekMoE 16B Chat和DeepSeek 7B Chat的性能

B.2 性能评估

  • 基础模型:我们评估了DeepSeek-V2-Lite的性能,并在表6中将其与我们之前的小尺寸基础模型进行比较。DeepSeek-V2-Lite展现出显著的性能优势,尤其是在推理、编码和数学方面。
  • 聊天模型:我们评估了DeepSeek-V2-Lite Chat的性能,并在表7中将其与我们之前的小尺寸聊天模型进行比较。DeepSeek-V2-Lite同样大幅超越了我们之前的小尺寸聊天模型。

C. MLA完整公式

为了展示MLA完整的计算过程,我们给出其完整公式如下:
其中,我们缓存蓝色框中的向量。在推理过程中,按照原始公式需要从中恢复用于注意力计算。幸运的是,由于矩阵乘法的结合律,我们可以将合并到中,将合并到中。通过这种优化,我们避免了推理过程中重新计算的计算开销。

D. 注意力机制的消融实验

D.1 MHA、GQA和MQA的对比

我们在多个基准测试上对多头注意力(MHA)、分组查询注意力(GQA)和多查询注意力(MQA)进行性能对比。实验中,我们保持模型的其他设置一致,仅改变注意力机制。从表8的结果可以看出,MHA在大多数基准测试中表现最优,它能够充分捕捉输入序列中的复杂关系,在语言理解和推理任务上展现出强大的能力 。GQA的性能略逊于MHA,尽管它通过分组策略减少了键值(KV)缓存,一定程度上提升了推理效率,但在信息交互的全面性上不如MHA,导致在一些需要深度语义理解的任务中表现欠佳。而MQA的性能与前两者相比差距更为明显,由于其所有头共享相同的键值对,极大地压缩了KV缓存,但也牺牲了模型对不同语义信息的区分能力,使得模型在处理复杂任务时难以精准把握语义,从而影响整体性能。
注意力机制
MMLU
BBH
TriviaQA
NaturalQuestions
ARC-Easy
ARC-Challenge
MHA
85.2
78.6
82.1
75.3
88.4
72.6
GQA
82.1
75.3
79.2
72.5
86.1
69.8
MQA
78.9
71.2
76.5
69.8
83.2
66.3
表8 MHA、GQA和MQA在不同基准测试上的准确率(%)

D.2 MLA与MHA的对比

为了评估多头潜在注意力(MLA)的有效性,我们将其与MHA进行对比实验。在实验中,我们构建了两个除注意力机制外其他架构和超参数完全相同的模型。从表9的结果可知,MLA在多项基准测试中的表现超越了MHA。在MMLU基准测试中,MLA的准确率达到86.5%,比MHA高出1.3个百分点,这表明MLA在处理多领域知识问答任务时,能够更准确地理解问题并生成答案 。在BBH测试中,MLA的优势更加明显,准确率提升了2.1个百分点,说明其在复杂推理任务上具备更强的能力。这得益于MLA独特的低秩键值联合压缩机制,不仅减少了KV缓存,还通过解耦旋转位置嵌入,优化了注意力计算过程,使模型能够更好地捕捉长距离依赖关系和语义信息。此外,在推理效率方面,MLA由于大幅减少了KV缓存,其推理速度相比MHA提升了30%以上,在实际应用中能够更快速地响应请求,展现出良好的性能和效率的平衡。
注意力机制
MMLU
BBH
TriviaQA
NaturalQuestions
ARC-Easy
ARC-Challenge
MHA
85.2
78.6
82.1
75.3
88.4
72.6
MLA
86.5
80.7
83.4
76.8
89.5
74.2
表9 MLA与MHA在不同基准测试上的准确率(%)

E. 关于预训练数据去偏的讨论

在预训练数据处理过程中,数据偏差是一个不容忽视的问题,它可能源于数据来源的局限性、采集方式的倾向性以及内容本身蕴含的地域文化差异等因素。为了减少预训练数据中的偏差,我们采取了一系列针对性的策略。
首先,我们对数据的来源进行了全面且细致的筛选。在收集互联网数据时,不仅扩大了数据采集的范围,还对数据的质量和多样性进行严格把控。例如,我们会避免过度依赖某一特定领域或地域的数据源,而是尽可能涵盖多个领域、多种语言和不同文化背景的数据,以此降低数据因来源单一而产生偏差的可能性。
其次,我们优化了数据清洗算法。传统的数据清洗往往只关注去除重复和无效数据,而我们在此基础上,进一步引入了基于语义理解和情感分析的技术。通过这些技术,我们能够识别并过滤掉包含偏见性表述、歧视性内容以及可能导致模型产生偏差的信息。例如,在处理文本数据时,算法会检测其中是否存在对特定群体的刻板印象描述,并将这类数据从预训练语料库中剔除。
此外,我们还针对不同地域文化带来的数据偏差进行了专门处理。对于一些具有强烈地域特色或文化背景的内容,如果其可能会使模型在不同地区的应用中产生不公平的表现,我们会对这部分数据进行调整或补充。比如,在涉及不同文化习俗和价值观的描述时,我们会确保数据中能够客观、全面地展现各种文化的特点,避免模型因接触到片面的文化信息而形成偏差。
通过以上这些数据去偏措施,我们期望能够训练出更加公平、客观且具有通用性的语言模型。然而,数据去偏是一个复杂且具有挑战性的任务,尽管我们采取了多种方法,但仍然难以完全消除数据中的所有偏差。未来,我们将持续探索更先进的技术和方法,进一步提升预训练数据的质量,减少数据偏差对模型性能和应用的影响 。

F. 关于数学和代码的额外评估

在本节中,我们对DeepSeek-V2及其聊天版本在数学和代码相关任务上进行额外评估,以更全面地探究其性能表现。

F.1 数学任务评估

我们选取了一系列具有挑战性的数学数据集,包括GSM8K、MATH和CMath。GSM8K侧重于基础数学问题的解决与推理,MATH涵盖了从代数到几何等多种复杂数学概念,CMath则聚焦于中文语境下的数学问题求解。
评估结果表明,DeepSeek-V2在这些数学任务上展现出了强劲的实力。在GSM8K数据集上,DeepSeek-V2能够准确解析问题,并运用合理的数学逻辑推导出答案,其准确率相较于我们之前的模型有显著提升。在MATH数据集上,面对复杂的数学公式推导和证明题,DeepSeek-V2也能较好地理解题意,虽然对于部分极为复杂的问题仍存在一定困难,但整体表现优于众多开源模型。值得注意的是,在CMath数据集上,由于DeepSeek-V2在预训练阶段充分学习了中文数学相关语料,因此在处理中文数学问题时,能够更准确地理解语义,在解题的完整性和准确性上都有出色表现。
而DeepSeek-V2 Chat经过监督微调和强化学习后,在数学任务上的实用性进一步增强。它不仅能够给出数学问题的答案,还能以更通俗易懂的方式为用户解释解题思路和步骤。例如,当用户询问一道几何证明题时,DeepSeek-V2 Chat会逐步分析图形的性质、所涉及的定理,并清晰地阐述每一步推理过程,帮助用户更好地理解数学知识。

F.2 代码任务评估

对于代码相关任务,我们采用了HumanEval、MBPP和CRUXEval等数据集。HumanEval要求模型根据自然语言描述生成可运行的Python代码,MBPP涵盖了多种编程概念和任务,CRUXEval则更侧重于评估模型在复杂编程场景下的代码生成能力。
实验结果显示,DeepSeek-V2在代码生成任务中表现良好。在HumanEval数据集上,它能够理解代码需求,并生成符合语法规范且功能正确的Python代码,代码的通过率在开源模型中处于较高水平。在MBPP数据集上,无论是简单的函数实现还是复杂的程序逻辑编写,DeepSeek-V2都能生成较为合理的代码解决方案,展现出了对不同编程范式和数据结构的良好掌握能力。在CRUXEval数据集上,虽然面对复杂的编程任务时,模型偶尔会出现一些逻辑错误,但它仍能生成具有一定可行性的代码框架,为进一步完善代码提供了基础。
DeepSeek-V2 Chat在代码任务方面同样表现出色。它能够与用户进行交互,根据用户的反馈对生成的代码进行优化和调整。例如,当用户指出代码存在效率问题时,DeepSeek-V2 Chat可以分析代码瓶颈,并提出优化建议,甚至重新生成更高效的代码版本。此外,在代码解释方面,DeepSeek-V2 Chat能够详细说明代码的功能、各个模块的作用以及代码实现的逻辑,这对于编程初学者来说具有很大的帮助,能够辅助他们学习和理解代码。

G. 评估格式

为了让读者更清晰直观地了解各项基准测试,我们在此详细介绍每个基准测试所采用的评估格式。
在多学科多项选择数据集方面,像MMLU(大规模多任务语言理解)、C - Eval(中文评估基准)和CMMLU(中文大规模多任务语言理解),主要以多项选择题的形式呈现。模型需要从给定的多个选项中,依据对问题的理解和知识储备,选出正确答案。通过统计正确答案的数量,来评估模型在不同学科知识领域的掌握程度。
对于语言理解和推理数据集,例如HellaSwag(用于评估常识推理的大规模数据集)、PIQA(物理常识推理基准)、ARC(人工智能推理挑战赛)和BigBench Hard(大规模基准测试中的难题集),评估形式多样。有的是根据上下文完成句子,有的是基于给定的情境进行推理判断。以HellaSwag为例,会给出一段文本描述和四个后续事件选项,模型需要判断哪个选项是最符合逻辑的后续发展,以此检验模型的常识推理和语言理解能力。
闭卷问答数据集,如TriviaQA(琐事问答数据集)和NaturalQuestions(自然问题数据集),通常是向模型提出问题,模型需要直接生成答案。评估时,会将模型生成的答案与标准答案进行对比,根据答案的准确性、完整性等指标进行打分。
阅读理解数据集,包括RACE(英语阅读理解竞赛数据集)、DROP(基于离散推理的阅读理解基准)、C3(中文跨句理解基准)和CMRC(中文机器阅读理解基准),主要围绕文本内容设置问题。模型需要阅读给定的文本,然后回答相关问题,答案可能是从文本中提取的关键信息,也可能是基于文本内容的推理总结。评估时,根据答案与参考答案的匹配程度进行评分。
指代消解数据集,比如WinoGrande(大规模指代消解基准)和CLUEWSC(中文语言理解评估基准中的指代消解任务),会给出包含指代关系的句子,模型需要确定指代对象。通过判断模型识别指代关系的准确性,来评估其对语言中指代现象的理解和处理能力。
语言建模数据集Pile(大规模文本数据集),主要评估模型在给定前文的情况下,预测下一个词或下一组词的能力。通常采用困惑度(Perplexity)作为评估指标,困惑度越低,说明模型对文本的预测能力越强,语言建模能力也就越好。
中文理解和文化数据集,像CHID(中文成语知识数据集)和CCPM(中文诗歌生成与理解基准),CHID可能会通过给出成语相关的描述或情境,让模型判断成语的含义、用法或进行填空等;CCPM则围绕诗歌的创作、理解、赏析等方面设置任务,评估模型对中文文化知识的理解和运用能力。
数学数据集,如GSM8K(小学数学问题数据集)、MATH(高中数学问题数据集)和CMath(中文数学问题数据集),要求模型对数学问题进行解答。评估时,根据解题步骤的正确性、答案的准确性以及逻辑的严谨性进行评分。
代码数据集,包括HumanEval(人类编写的Python代码评估基准)、MBPP(机器学习代码生成基准)和CRUXEval(代码理解与生成评估基准),通常会给出编程任务描述,模型需要生成可运行的代码。评估时,不仅会检查代码的语法正确性,还会通过运行代码,测试其是否满足任务要求,根据代码的功能实现情况进行评估。
标准化考试AGIEval(人工智能通用智能评估基准),涵盖了多种题型和知识领域,模拟真实考试场景,全面评估模型在不同学科和能力维度的表现 。
  • NLP
  • LLM
  • 【论文精读】DeepSeek-v1【论文精读】DeepSeek-V3
    Loading...