当前位置:   article > 正文

Qwen2: 阿里巴巴最新发布的大语言模型系列

Qwen2: 阿里巴巴最新发布的大语言模型系列

随着ChatGPT的出现,全球对大语言模型(LLM)的热情急剧攀升。Llama系列的发布进一步激发了开源社区对GPT级本地LLM的兴趣。近期,Claude-3 Opus和GPT-4o(omni)相继登顶Chatbot Arena,这个平台以其对LLM的人工评估而闻名。此外,Llama-3作为最先进的开放权重模型系列出现,缩小了与领先专有模型的性能差距,被广泛认为达到了GPT-4的水平。越来越多的竞争性LLM正在追求类似于OpenAI的GPT系列的进步。其中许多模型,包括Qwen、Mistral、Gemma等,都以开放权重的方式发布。

在这种背景下,阿里巴巴Qwen团队推出了最新的大语言模型和大型多模态模型系列:Qwen2。Qwen2是一系列基于Transformer架构的LLM,通过下一个token预测进行训练。该模型系列包括基础语言模型(未经人类偏好对齐的预训练模型)和指令调优模型(使用单轮和多轮指令数据集进行微调,适用于聊天和代理目的)。

2. Qwen2模型系列概述

Qwen2发布了四个密集模型,参数数量分别为5亿、15亿、70亿和720亿,以及一个具有570亿参数的混合专家(MoE)模型(其中每个token激活140亿参数)。具体如下:

  • Qwen2-0.5B (5亿参数)
  • Qwen2-1.5B (15亿参数)
  • Qwen2-7B (70亿参数)
  • Qwen2-72B (720亿参数)
  • Qwen2-57B-A14B (MoE模型,总参数570亿,每个token激活140亿)

较小的模型(Qwen2-0.5B和Qwen2-1.5B)专为便携设备(如智能手机、耳机和智能眼镜)设计,便于部署。相比之下,较大的模型适用于不同规模的GPU部署。

所有模型都在一个高质量、大规模的数据集上进行预训练,该数据集包含超过7万亿个token,涵盖广泛的领域和语言。与之前的Qwen版本相比,Qwen2包含了更广泛的语言数据,提高了代码和数学内容的数量和质量。这种增强被认为可以提高LLM的推理能力。

在后训练阶段,所有模型都经过了监督微调和直接偏好优化(DPO),通过学习人类反馈来与人类偏好保持一致。这个过程使模型能够有效地遵循指令。

3. 模型架构

3.1 分词器

Qwen2沿用了与Qwen相同的基于字节级字节对编码的分词器。这种分词器展现出高编码效率,相对于其他选择具有更好的压缩率,有助于Qwen2的多语言能力。

所有规模的模型都使用一个共同的词汇表,包含151,643个常规token和3个控制token。值得注意的是,由于分布式训练的考虑,嵌入的有效大小更大。

3.2 Qwen2密集模型架构

Qwen2密集模型的架构包括多个Transformer层,每层都配备了因果注意力机制和前馈神经网络(FFNs)。与Qwen相比,主要的区别包括:

  1. 分组查询注意力(GQA): 采用GQA代替传统的多头注意力(MHA),优化了推理过程中的KV缓存使用,显著提高了吞吐量。

  2. 双块注意力(DCA)与YARN: 实现了DCA,将长序列分割成可管理长度的块。如果输入可以在一个块内处理,DCA产生与原始注意力相同的结果。否则,DCA有效捕获块内和块间token的相对位置信息,从而提高长上下文性能。此外,还采用了YARN来重新缩放注意力权重,以获得更好的长度外推。

  3. 其他特性: 使用SwiGLU作为激活函数,旋转位置嵌入(RoPE)用于位置编码,QKV偏置用于注意力,RMSNorm和预归一化用于训练稳定性。

3.3 Qwen2混合专家(MoE)模型架构

Qwen2 MoE模型的架构与Qwen1.5-MoE-A2.7B相似。MoE FFN由n个独立的FFN组成,每个FFN作为一个专家。每个token根据门控网络G分配的概率被定向到特定的专家Ei进行计算:

p = s o f t m a x ( G ( x ) ) p = softmax(G(x)) p=softmax(G(x))

y = ∑ i ∈ t o p k ( p ) p i E i ( x ) y = \sum_{i \in topk(p)} p_i E_i(x) y=itopk(p)piEi(x)

Qwen2 MoE的关键设计考虑包括:

  1. 专家粒度: 采用细粒度专家,创建规模较小的专家,同时激活更多专家。这种方法提供了更丰富的专家组合集,增强了整体性能和适应性。

  2. 专家路由: 在MoE层中集成共享和路由特定的专家,使模型能够在各种任务中应用共享专家,同时保留其他专家用于特定的路由场景。

  3. 专家初始化: 利用密集模型的权重初始化专家,强调细粒度专家之间的多样化,以增强模型的表示广度。

4. 预训练

4.1 预训练数据

Qwen2模型的预训练涉及开发一个新的、大规模、高质量的多语言数据集。与之前的Qwen和Qwen1.5模型相比,这个数据集在以下几个关键领域得到了改进:

  1. 质量提升: 使用额外的启发式和基于模型的方法改进了过滤算法,包括使用Qwen模型过滤低质量数据。

  2. 数据扩展: 收集了更大量的高质量代码、数学和多语言数据,增强了模型在相应领域的能力。新数据集支持约30种语言。

  3. 分布改进: 通过对缩小规模的模型进行实验,优化了来自各种来源和领域的数据混合。

基于这些改进,预训练数据从Qwen1.5的3万亿token扩展到7万亿token。进一步放宽质量阈值得到了一个12万亿token的数据集,但在这个数据集上训练的模型并未显示出明显的性能提升。

除Qwen2-0.5B外,所有Qwen2密集模型都在这个超过7万亿token的大规模数据集上进行了预训练。Qwen2-0.5B使用12万亿token的数据集进行预训练。MoE模型额外接受了4.5万亿token的预训练。

4.2 长上下文训练

为了增强Qwen2的长上下文能力,在预训练的最后阶段,将上下文长度从4,096个token扩展到32,768个token。这一扩展伴随着大量高质量、长文本数据的引入。同时,将RoPE的基本频率从10,000修改为1,000,000,以优化长上下文场景下的性能。

为充分利用模型的长度外推潜力,采用了YARN机制和双块注意力机制。这些策略使模型能够处理长达131,072个token的序列,同时保持高性能,初步实验显示困惑度下降最小。

5. 后训练

在大规模预训练之后,Qwen2进行了后训练阶段。这个过程对于提高其在广泛领域(包括编码、数学、逻辑推理、指令遵循和多语言理解)的熟练程度至关重要。此外,它确保了模型生成的内容与人类价值观相符,使其有帮助、诚实且无害。

与传统方法不同,Qwen2的方法专注于可扩展的对齐,最小化人工标注的需求。具体来说,研究了获取高质量示范和偏好数据的方法,用于监督微调(SFT)和来自人类反馈的强化学习(RLHF)。

5.1 后训练数据

后训练数据主要包括两个组成部分:

  1. 示范数据 D = { ( x i , y i ) } D = \{(x_i, y_i)\} D={(xi,yi)}
  2. 偏好数据 P = { ( x i , y i + , y i − ) } P = \{(x_i, y^+_i, y^-_i)\} P={(xi,yi+,yi)}

其中, x i x_i xi代表指令, y i y_i yi代表满意的回复, y i + y^+_i yi+ y i − y^-_i yi是对 x i x_i xi的两个回复, y i + y^+_i yi+是相对于 y i − y^-_i yi更受偏好的选择。

数据构建过程包括两个步骤:协作数据标注和自动数据合成。

5.1.1 协作数据标注
  1. 自动本体抽取: 使用InsTag(一个开放集细粒度标记器)从大规模指令数据集中提取底层本体。

  2. 指令选择: 根据标签多样性、语义丰富性、复杂性和意图完整性评估每条指令。

  3. 指令进化: 采用自我进化策略,提示Qwen模型为现有指令添加约束或要求,增加其复杂性。

  4. 人工标注: 使用多样化生成策略获取对指令的多个回复。

5.1.2 自动数据合成

采用各种自动对齐策略,在代码、数学、指令遵循、创作、角色扮演和安全等领域合成大量人工标注数据。

5.2 监督微调(SFT)

在SFT阶段,模型在示范数据D上进行训练,以最小化负对数似然损失:

L S F T = − ∑ ( x , y ) ∈ D log ⁡ p θ ( y ∣ x ) L_{SFT} = -\sum_{(x,y)\in D} \log p_\theta(y|x) LSFT=(x,y)Dlogpθ(yx)

其中, θ \theta θ是模型参数。

5.3 来自人类反馈的强化学习(RLHF)

在RLHF阶段,模型通过优化直接偏好学习(DPO)目标进行训练:

L D P O = − 1 ∣ P ∣ ∑ ( x , y + , y − ) ∈ P log ⁡ σ ( β ( r θ ( x , y + ) − r θ ( x , y − ) ) ) L_{DPO} = -\frac{1}{|P|} \sum_{(x,y^+,y^-)\in P} \log \sigma(\beta(r_\theta(x,y^+) - r_\theta(x,y^-))) LDPO=P1(x,y+,y)Plogσ(β(rθ(x,y+)rθ(x,y)))

其中, r θ ( x , y ) = log ⁡ p θ ( y ∣ x ) r_\theta(x,y) = \log p_\theta(y|x) rθ(x,y)=logpθ(yx)是奖励函数, β \beta β是温度参数, σ \sigma σ是sigmoid函数。

6. 评估结果

Qwen2在各种基准测试中展现出卓越的性能,超越了大多数先前的开放权重模型,包括其前身Qwen1.5,并在多样化的基准测试中表现出与专有模型相当的竞争力。

6.1 基础语言模型性能

旗舰模型Qwen2-72B作为基础语言模型展示了显著的性能:

  • MMLU: 84.2
  • GPQA: 37.9
  • HumanEval: 64.6
  • GSM8K: 89.5
  • BBH: 82.4

6.2 指令调优模型性能

指令调优变体Qwen2-72B-Instruct在以下基准测试中取得了优异成绩:

  • MT-Bench: 9.1
  • Arena-Hard: 48.1
  • LiveCodeBench: 35.7

6.3 多语言能力

Qwen2展示了强大的多语言能力,精通约30种语言,包括英语、中文、西班牙语、法语、德语、阿拉伯语、俄语、韩语、日语、泰语、越南语等,凸显了其多样性和全球影响力。

7. 结论

Qwen2系列代表了阿里巴巴在大语言模型领域的最新进展。通过创新的模型架构、大规模高质量数据集和先进的训练技术,Qwen2在多个基准测试中展现出卓越的性能。其多语言能力和在各种任务中的表现使其成为一个强大且灵活的模型系列,有望在各种应用场景中发挥重要作用。

为促进社区创新和可访问性,Qwen2模型权重已在Hugging Face和ModelScope上公开发布,补充材料包括示例代码也在GitHub上提供。这些平台还包括量化、微调和部署资源,促进了广泛的应用和研究工作。

参考文献:

  1. An, Y., et al. (2024). Qwen2 Technical Report. arXiv:2407.10
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小桥流水78/article/detail/870691
推荐阅读
相关标签
  

闽ICP备14008679号