本人项目地址大全:Victor94-king/NLP__ManVictor: 优快云 of ManVictor
项目地址: QwenLM/Qwen2.5: Qwen2.5 is the large language model series developed by Qwen team, Alibaba Cloud.
官网地址: 你好,Qwen2 | Qwen & Qwen2.5: 基础模型大派对! | Qwen
写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!
写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!
写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!
Qwen 2系列
截至到2024.11.3 其实Ali 已经推出了Qwen2.5系列,相比于Qwen2系列,2.5只是使用了体量更大、质量更高的数据集继续训练得到的 Qwen2.5 系列模型。 所以先介绍一下Qwen2系列,详情可以参考你好,Qwen2 | Qwen (qwenlm.github.io) 。
Qwen系列包括了5个尺寸的预训练和指令微调的模型,当时在开源的模型里一经推出就达到SOTA的水平。其中全系都使用了GQA(Group-Query Attention)技术,小模型使用了Tie Embedding(共享向量)技术。上下文长度都是基于32K的数据预训练然后拓展的,可以看到最长可以支持到128K。在推出的当时性能还是吊打其他大部分大模型的,尤其是多语言支持以及代码及数学能力显著提升,具体性能指标可以参考其文档。
| 模型 | Qwen2-0.5B | Qwen2-1.5B | Qwen2-7B | Qwen2-57B-A14B | Qwen2-72B |
|---|---|---|---|---|---|
| 参数量 | 0.49B | 1.54B | 7.07B | 57.41B | 72.71B |
| 非Embedding参数量 | 0.35B | 1.31B | 5.98B | 56.32B | 70.21B |
| GQA | True | True | True | True | True |
| Tie Embedding | True | True | False | False | False |
| 上下文长度 | 32K | 32K | 128K | 64K | 128K |
GQA现在基本是大模型的标配,原始的 MHA(Multi-Head Attention),QKV 三部分有相同数量的头,且一一对应。每次做 Attention,head1 的 QKV 就做好自己运算就可以,输出时各个头加起来就行。而 MQA(Multi-query Attention) 则是,让 Q 仍然保持原来的头数,但 KV只有一个,相当于所有的 Q 头共享一组 K 和 V 头,所以叫做 Multi-Query 了。虽然MQA一般能提高 30%-40% 的计算性能,但是性能精度会有所降低。而GQA 通过分组一定头数共享一组KV,从而达到性能和计算中的一个trade-off,这样既不像MQA一样降低很多精度,也可以相比于NHA提高速度。针对小模型,由于embedding参数量较大,qwen系列使用了tie embedding的方法让输入和输出层共享参数,增加非embedding参数的占比。Tie Embedding技术提出可以将输入和输出的嵌入层参数绑定,即让模型在处理输入词和输出词时使用相同的向量表示。 比如在词嵌入模型(如Word2Vec或GloVe)中,每个词被映射到固定维度的向量空间上。但是tie embedding 通过共享输入和输出层参数,可以使得相似语义的词拥有同样的词向量表示。比如说tie_embedding(‘large’) = tie_embedding('big)。

除了上述两个亮点之外Qwen系列还用了采用了多种先进技术以提升模型性能和效率:
-
双块注意力(Dual Chunk Attention, DCA) :DCA双块注意力是一种改进的注意力机制。DCA 技术将长序列分割成可管理的块,从而有效捕捉块内和跨块的相对位置信息,提升长上下文处理能力。DCA双块注意力机制是一种无需额外训练即可扩展大型语言模型(LLMs)上下文窗口的新框架, 其避免了线性缩放位置索引或增加RoPE的基频。相反,它选择重用预训练模型中的原始位置索引及其嵌入,但重新设计了相对位置矩阵的构建,以尽可能准确地反映两个标记之间的相对位置。DCA通过将长文本分割成多个较小的“块”(chunks),然后在这些块内和块之间应用注意力机制,有效地处理长文本。DCA的核心思想包括:
- 内块注意力,将长文本分割成若干个小块,每个小块包含一部分文本。
- 间块注意力,用于处理不同块之间的标记 ,对每个小块单独应用注意力机制,减少了计算量。
- 连续块注意力,这些各自的处理帮助模型有效捕捉序列中的长距离和短距离依赖。在计算完块内注意力后,再在这些块之间应用注意力机制,以捕捉整个文本的上下文关系

-
旋转位置嵌入(RoPE) :RoPE 提出的一种能够将相对位置信息依赖集成到 self-attention 中并提升 transformer 架构性能的位置编码方式。而目前很火的 LLaMA、GLM 模型也是采用该位置编码方式。其核心思想是“通过绝对位置编码的方式实现相对位置编码”,可以说是具备了绝对位置编码的方便性,同时可以表示不同 token 之间的相对位置关系。不同于原始 Transformers 论文中,将 pos embedding 和 token embedding 进行相加,RoPE 是将位置编码和 query (或者 key) 进行相乘。如果深入对RoPE感兴趣,可以参考十分钟读懂旋转编码(RoPE) - 知乎 (zhihu.com) 以及我之前的文章:
-

-
YARN 机制 :YaRN (Yet another RoPE extensioN method)用于重新调整注意力权重,同时相比于rope改成了位置编码差值。YARN的核心思想是对注意力权重进行重新缩放,以便在不牺牲性能的情况下,更好地处理更长的上下文。这种方法通过调整注意力权重,使得模型能够更有效地捕捉长距离依赖关系,同时减少
阿里Qwen2及2.5系列语言模型介绍

最低0.47元/天 解锁文章
1370

被折叠的 条评论
为什么被折叠?



