乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      【Qwen2技術報告分析】解讀模型架構 pre/post數據構建和模型評估

       netouch 2025-02-13 發(fā)布于北京

      目錄

      前言

      一、Tokenizer

      二、模型結構

      dense模型

      MoE模型

      模型參數設置

      三、Pre-Training

      Pre-Training  DATA

      LONG-CONTEXT TRAINING

      四、Post-Training

      Post-Training DATA

      人工數據注釋(collaborative data annotation)

      自動數據合成(automated data synthesis)

      Supervised Fine-Tuning

      Reinforvement Learning From Human Feekback

      五、Evaluation

      Base Language Models

      Core Capabilities

      Instruction-Tuned Model

      Open Benchmark Evaluation

      In-house Automatic Evaluation

      Long Context Capabilities

      總結


      前言

      今天分享六月份開源的Qwen2模型系列,包括了dense模型的70B、7B、1.5B、0.5B和MoE模型的57-14B,其中最強悍的70B模型在國內屬于T1梯隊,在大量使用后的體驗也確實如此。本文通過分析技術報告從Tokenizer、模型結構、預訓練、后訓練和評估進行解讀,深入分析Qwen2背后的原理。


      一、Tokenizer

      和Qwen相同,Qwen2采用byte-level byte-pair encoding(BPE)分詞器,這個分詞器具有很高的編碼效率,所有大小的模型都使用由151643個通用token和3個控制token組成的公共詞匯表。

      具體來說,使用一個開源的 fast BPE tokenizer,tiktoken,并且選擇cl100k詞匯表作為起點進行分詞;為了提高模型在多語言下游任務上的性能,特別是在中文中,進一步增加了常用的中文字符和單詞以及其他語言的詞匯;此外,將數字分成了個位數。

      隨機選擇每種語言的100萬個文檔語料庫,將Qwen2的tokenizer和其他大模型使用的tokenizer的壓縮率進行對比,具有更高的壓縮率:

      二、模型結構

      共包括四個scale的dense模型和一個MoE模型。

      dense模型

      Qwen2 dense模型的架構包括多個Transformer層,每個層都配備了因果注意機制和前饋神經網絡(ffn)。與Qwen的主要區(qū)別如下:

      • GQA(Grouped Query Attention):使用GQA替換MHA,GQA在推理期間優(yōu)化KV緩存,顯著提高了吞吐量。
      • DCA(Dual Chunk Attention with YARN):為了擴展Qwen2的上下文窗口,實現了雙塊注意,將長序列分割成可控長度的塊。如果輸入可以在一個塊中處理,則DCA與原始注意生成相同的結果。否則,DCA有助于有效捕獲塊內和塊間的token的相對位置信息,從而提高長上下文性能。此外,還使用YARN來重新調整注意力權重,以獲得更好的長度外推。
      • 除了GQA和DCA之外,follow Qwen使用SwiGLU激活函數、RoPE位置嵌入、QKV bias for attention、RMSNorm歸一化函數和前置歸一化。

      MoE模型

      MIXTURE-OF-EXPERTS MODEL,Qwen2 MoE模型的結構和Qwen1.5-MoE-2.7B幾乎相同,作為原始FFN的替代品,MoE FFN由n個獨立的FFN組成,每個FFN都作為專家,每個token被定向到一個特定的專家Ei,根據門控網絡G分配的概率進行計算:

      針對MoE模型的設計,提出以下關鍵部分的設計:

      • Expert Granularity:不同于Mistral-8x7B(將每個專家的參數設置為與原始密集模型中的單個FFN的參數相等,每次激活8名專家中的2名),Qwen2使用更細粒度的專家(Dai et al., 2024),創(chuàng)建較小scale的專家同時激活更多的專家,以保證在專家參數和激活參數的總數相同的同時提供更豐富的專家組合。通過細粒度的專家,Qwen2 MoE實現更多樣性和動態(tài)的專家組合使用。
      • Expert Routing:Qwen2采用集成共享專家加特定專家的組合(Rajbhandari et al., 2022; Dai et al., 2024),這有助于在各種任務中應用共享專家,同時保留其他專家在特定路由場景中的選擇性使用。
      • Expert Initialization:使用類似于upcycling(升級回收)(Komatsuzaki et al.,
        2023)的方式利用dense模型的權重。首先設定專家維度為hE,原始FFN的維度為hFFN,專家數量為n;為了兼容制定數量的專家,將FFN復制(n * hE / hFFN 向上取整)次;為了促進每個FFN副本的多樣性,將FFN的參數進行shuffle;然后,從FFN副本中提取出所有專家的參數,剩余的參數被丟棄;最后,為了在專家中引入額外的隨機性,對于每個細粒度專家,其50%的參數被隨機重新初始化。

      模型參數設置

      Intermediate Size表示專家的大小;激活專家數不包括共享專家。

      Qwen2-57B-A14B是由Qwen2-7B升級而來。

      三、Pre-Training

      在Qwen2的預訓練中,主要集中在 改進數據集的構建 和 研究如何有效擴展上下文長度。

      Pre-Training  DATA

      Qwen2模型的預訓練涉及到一個新的、大規(guī)模的、高質量的多語言數據集,該數據集相比以前Qwen和Qwen1.5模型使用的語料庫有所改進,在幾個關鍵領域提高預訓練數據的規(guī)模、質量和多樣性:

      • 質量提升(Quality Enhancement):通過附加的啟發(fā)式和基于模型的方法改進數據過濾算法,包括使用Qwen模型來過濾掉低質量的數據,并且利用模型合成高質量的預訓練數據。
      • 數量擴充(Data Expansion):與Qwen1.5相比收集了大量高質量的代碼、數學和多語言數據,以增強模型在各自領域的能力。這個新數據集支持大約30種語言,如英語、中文、西班牙語、法語、德語、阿拉伯語、俄語、韓語、日語、泰語和越南語。
      • 數據分布(Distribution Improvement):為了確保模型學習類似于人類學習的分布,事先在按比例縮小的模型上進行實驗,以優(yōu)化來自不同來源和領域的數據混合。

      基于這些數據增強措施,Qwen1.5中的預訓練數據從3T token擴展到7T token。進一步放寬質量閾值嘗試構建了12萬億個token數據集,然而,在這個數據集上訓練的模型并沒有比 7T token模型有顯著的性能改進。有人質疑,增加數據量不一定有利于模型預訓練,考慮到訓練成本,Qwen2選擇使用更高質量的7T token數據集來訓練更大的模型,為未來的模型迭代留下進一步的探索。

      除Qwen2-0.5 b外,所有Qwen2 dense模型都在這個超過7T token的大規(guī)模數據集上進行了預訓練。Qwen2-0.5B使用12T token數據集進行預訓練。根據upcycling(升級回收)的原則,MoE模型接受了額外的4.5T token的預訓練。

      與之前的Qwen模型類似,Qwen2將高質量的多任務指令數據整合到預訓練過程中,以增強情境學習和指令跟隨能力。

      LONG-CONTEXT TRAINING

      為了增強Qwen2的長上下文能力,在預訓練的最后階段將上下文長度從4,096個token增加到32,768個token,這一操作還引入了大量高質量、長數據的補充訓練。同時將RoPE的基頻從10,000修改為1,000,000,以優(yōu)化長上下文場景中的推理性能(Xiong et al., 2023)。

      為了充分利用模型的長度外推潛力,采用了 YARN 機制(Peng et al., 2023)和 Dual Chunk Attention 機制(An et al., 2024)。這些策略使模型能夠處理多達131,072個token的序列,同時保持模型的高性能。

      四、Post-Training

      在進行了大規(guī)模的預訓練之后,接下來開始Qwen2的后訓練階段。這個過程對于提高其在通用領域的能力至關重要,包括編碼、數學、邏輯推理、指令遵循和多語言理解。此外,確保了模型的生成與人類價值觀相一致。與傳統(tǒng)方法嚴重依賴于大量的人類監(jiān)督數據不同,Qwen2側重于用最少的人類注釋進行可擴展的對齊。

      具體而言,主要研究了獲取監(jiān)督微調(SFT)和人類反饋強化學習(RLHF)的高質量數據的方法,旨在最大限度地減少對人工標記的需求(Cao et al., 2024),同時最大限度地提高數據的質量和可靠性。

      Post-Training DATA

      后訓練數據主要包括兩部分:監(jiān)督數據(x, y)和偏好數據(x, y+, y-),在SFT時使用監(jiān)督數據,在RLHF時使用偏好數據。

      訓練數據的構建包括兩個步驟:人工數據注釋(collaborative data annotation)和自動數據合成(automated data synthesis)。首先,從大規(guī)模的指令語料庫中提取數據本體,從而得到廣泛多樣的高質量指令集,然后,通過人工標注,得到了目標響應 y 及其正負對應項(y+, y-)。最后,使用一個多樣的自動對齊策略來合成大量人工標注的數據。

      人工數據注釋(collaborative data annotation)

      • 自動本體提?。ˋutomatic Ontology Extraction):首先使用InsTagg (Lu et al., 2024c),一種開放集的細粒度的標注器,從大規(guī)模指令數據集中提取底層本體。隨后通過手工改善確保提取的準確性。
      • 指令選擇(Instruction Selection):通過多樣性、語義豐富度、復雜性和意圖完整性四個維度來評估每條被標注的指令?;谶@些標準,選擇了一組具有代表性的指令 (Dong et al., 2023)。
      • 指令進化(Instruction Evolution):為了豐富指令數據集,采用了一種自進化策略(Zhao et al., 2024),促使Qwen模型向現有指令中添加約束或要求,從而增加它們的復雜性,并確保數據集內存在不同的難度級別。
      • 人工注釋(Human Annotation):使用不同的生成策略和不同規(guī)模的Qwen模型,可以獲得對一條指令的多個響應。注釋者根據他們的偏好對這些回答進行排序,確保最好的回答符合既定標準,從而生成監(jiān)督數據和偏好數據。

      自動數據合成(automated data synthesis)

      • 拒絕采樣(Rejection Sampling):對于數學任務這類具有明確答案的任務,采用拒絕抽樣(Yuan et al., 2023) 來提高解決方案的質量。LLM的任務是為每條指令生成多個響應,即推理路徑。保留得出準確結論并被LLM認為合理的路徑作為監(jiān)督數據,偏好數據則通過對比正確和不正確的路徑來生成。
      • Execution Feedback(執(zhí)行反饋):對于編碼任務,LLM需要生成解決方案和相關的測試用例。這些解決方案的有效性是通過編譯和執(zhí)行測試用例來評估的,從而創(chuàng)建監(jiān)督數據和偏好數據。這種方法也適用于評估指令遵循 (Dong et al., 2024),例如對于每條有約束的指令,如長度限制,LLM的任務是生成一個Python驗證函數,以確保響應符合指令要求。
      • Data Repurposing(數據再利用):對于文學寫作任務,對于沒有經過專門培訓的注釋者來說具有挑戰(zhàn)。為了解決這個問題,收集了來自公共領域的高質量文學作品,并使用LLM來生成具有不同細節(jié)水平的指令,這些指令與原始作品相結合,作為監(jiān)督數據。例如,為了編寫具有生動和吸引人的角色扮演數據,從維基百科等知識庫中獲取詳細的角色概況,并指導LLM生成相應的指令和響應(Lu et al, 2024b)。這個過程類似于閱讀理解任務,確保了角色的完整性。
      • Constitutional Feedback(憲法反饋):憲法人工智能是指指導LLM根據預定義的原則集合生成響應的過程(Bai et al, 2022)。為了確保遵守安全和價值觀等指導方針,編寫了一個憲法數據集,這個數據集描述了應該遵循的原則和應該避免的原則,用來指導LLM做出與這些指導方針一致或偏離這些指導方針的回應,作為監(jiān)督數據和偏好數據的參考。

      Supervised Fine-Tuning

      通過上述操作,組裝了一個廣泛的指令數據集,其中包含超過500,000個示例,涵蓋了諸如指令遵循,編碼,數學,邏輯推理,角色扮演,多語言和安全等技能。模型對長度為32,768個token的序列微調了2個epoch。為了優(yōu)化學習,學習率從7 × 10?6逐漸降低到7 × 10?7,為了解決過擬合問題,將權重衰減設置為0.1,并將梯度裁剪為最大值1.0。

      Reinforvement Learning From Human Feekback

      RLHF訓練包括兩個連續(xù)的階段:離線訓練和在線訓練。在離線訓練階段,使用預編譯的偏好數據集P,通過直接偏好優(yōu)化最大化 y+ 和 y- 之間的似然差(DPO,Rafailov等,2023)。在在線訓練階段,模型迭代地實時改進其性能,利用獎勵模型進行即時反饋。具體來說,從當前的決策模型中抽取多個響應,獎勵模型選擇最受歡迎和最不受歡迎的響應,形成偏好對,用于每一個episode的DPO訓練。此外,使用Online Merging Optimizer(Lu等人,2024a)來減輕對齊稅。

      五、Evaluation

      為了全面評估Qwen2模型,包括基礎模型和指令調優(yōu)模型,制定了一個全面的評估方案。該方案考察了一系列能力,包括一般知識理解、語言理解、生成、編碼、數學、推理和其他專業(yè)領域。具體來說,基本模型是使用大型語言模型(llm)的既定基準數據集進行評估的,除非另有說明,否則通過少量提示得出響應。對于指令調整模型,除了基準評估,優(yōu)先考慮人類偏好評估。

      Base Language Models

      Core Capabilities

      Benchmarks and Evaluation Protocol(基準和評估協(xié)議)

      評估基本語言模型核心能力的常見做法是使用少量提示或零提示實現基準數據集評估。

      比較 Qwen2-70B 模型:

      比較 Qwen2-MoE 模型:

      比較 Qwen2-7B 模型:

      比較 Qwen2-0.5B 和 Qwen2-1.5B 模型:

      Instruction-Tuned Model

      Open Benchmark Evaluation

      為了全面評估指令調整模型的質量,我們編寫了自動和人工評估來評估能力和人類偏好。對于基本能力的評估,我們將類似的數據集應用于預訓練模型評估中,其目標是自然語言理解,編碼,數學和推理。

      In-house Automatic Evaluation

      盡管有許多開放的基準數據集用于評估,但對于完全理解llm的能力是遠遠不夠的。具體來說,通過人工制作了一系列內部數據集來評估模型的不同功能,例如,知識理解、文本生成、編碼等,分別使用中文和英文進行評價。

      中文評價:

      英文評價:

      Long Context Capabilities

      采用了三種方法來評估長上下文能力: the Needle in a Haystack(NIAH, Kamradt, 2023), NeedleBench (OpenCompass貢獻者,2023)和 LV-Eval (Yuan等人,2024)。

      六、可能感興趣的概念

      • DCA(Dual Chunk Attention):用于擴展注意力長度以及減少注意力計算復雜度,可以根據任務需求調整塊的大小和全局注意力的范圍,步驟為分塊、局部注意力計算、全局注意力計算、融合局部和全局信息。
      • YARN:YARN的出現是為了增強長文本的表示能力,尤其是在處理非常長的上下文時,YARN通過對模型的注意力權重進行動態(tài)調整,來重新強調那些對于特定任務和上下文最為重要的部分。具體實現是在注意力層中加入對注意力權重的校準因子,校準因子由Q、K和相對位置信息P計算得到,然后將注意力分數和校準因子相乘得到校準后的注意力分數。
      • SwiGLU:SwiGLU(x)=ReLU(x)⊙GLU(x),結合兩者的優(yōu)勢:非線性激活+改善訓練穩(wěn)定性
      • QKV bias: 通過為Q、K、V引入額外的偏置項來進一步優(yōu)化模型的性能。具體來說,這些偏置項是額外的可學習參數,它們會加到查詢、鍵和值的計算結果中。這種做法可以幫助模型在處理不同的輸入時具有更高的靈活性,因為它能夠調整注意力機制的加權方式,改善模型對不同特征的關注程度。
      • base frequency of RoPE:具體來說,頻率越高,位置間的編碼變化就越劇烈。基礎頻率(base frequency)是用來定義這個變化速率的一個參數,它決定了位置編碼在空間中的變化速度?;A頻率越大,位置之間的編碼差異在較低的位置就變得更為顯著;而如果基礎頻率較小,則編碼的變化會變得更加平緩。在長序列中,頻率過低可能導致位置信息的編碼過于平緩,從而使得長距離的位置關系難以捕捉。而提高基礎頻率,可以使得位置編碼在長序列中更加敏感,從而更好地捕捉長距離依賴。

      總結

      Qwen2相比較Qwen和Qwen1.5,在模型架構和數據構建上做出了較大的改進,也取得了更好的模型效果,但很多具體的數據構建過程仍然屬于黑盒,但好在整個模型結構和數據構建流程屬于現在LLM訓練的主流過程,我們仍然可以從中借鑒Qwen2的技術思路應用到自己訓練或者微調場景。

        本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多