一、Qwen2架構(gòu)圖
二、Qwen2 技術(shù)修改點
-
Transformer Architecture with SwiGLU activation: 不多說,最主流的transformer架構(gòu),不變。但是,SwiGLU激活函數(shù)是GLU變體,可以讓模型學(xué)習(xí)表達(dá)更加復(fù)雜的模式。 -
QKV bias:在Transformer模型中,Q、K、V分別代表查詢(Query)、鍵(Key)和值(Value)。這些向量是通過輸入向量與對應(yīng)的權(quán)重矩陣相乘得到的。QKV bias表示在計算Q、K、V時添加可學(xué)習(xí)的偏置項。 -
GQA:Grouped-query attention,它是一種插值方法,介于多查詢和多頭注意力之間,可以在保持接近多頭注意力的質(zhì)量的同時,達(dá)到與多查詢注意力相當(dāng)?shù)乃俣取?/p> -
Mixture of SWA and Full Attention: SWA指的是Sliding Window Attention,是一種注意力模式,用于處理長序列輸入的問題。而full attention則是傳統(tǒng)的注意力機(jī)制,考慮序列中所有元素的交互。這里的mixture可能指的是這兩種注意力機(jī)制的結(jié)合使用。 -
Improved Tokenizer Adaptive to Multiple Natural Languages and Code: 這說明模型使用了一種改進(jìn)的分詞器,它不僅適用于多種自然語言,還能處理代碼。在自然語言處理和編程語言處理中,分詞器用于將文本分解成更小的單位(如詞、字符或其他符號),這是理解和處理文本的基礎(chǔ)步驟。
三、Qwen2核心類 - Qwen2RMSNorm: RMS歸一化層
- Qwen2RotaryEmbedding: 旋轉(zhuǎn)位置編碼,和Qwen1不同.Qwen1可以對部分位置做旋轉(zhuǎn)位置編碼
- Qwen2MLP: 全連接層,lora和MOE主要在這個層上做事情
- Attention
- Qwen2Attention: 注意力層
- Qwen2FlashAttention2: 使用Flash Attention 2.0版本加速的注意力層
- Qwen2SdpaAttention: 使用Sdpa(pytorch自帶的加速, Scaled Dot-Product Attention)加速的注意力層
- Qwen2DecoderLayer: 編碼層,核心結(jié)構(gòu),之后就是堆疊 - Qwen2PreTrainedModel: 預(yù)訓(xùn)練類
- Qwen2Model: 不帶head的Qwen2模型
- Qwen2ForCausalLM: 帶Causal LM head的Qwen2模型 - Qwen2ForSequenceClassification: 帶序列分類頭的Qwen2模型
|