Qwen3 Embedding模型架構(gòu)、訓(xùn)練方法、數(shù)據(jù)策略 原創(chuàng)
Embedding和reranker模型的核心思想是通過(guò)任務(wù)感知的方式評(píng)估相關(guān)性。給定一個(gè)查詢(xún)和一個(gè)文檔,模型根據(jù)由指令定義的相似性標(biāo)準(zhǔn)評(píng)估它們的相關(guān)性。
下面來(lái)詳細(xì)的看下Qwen3 Embedding模型架構(gòu)、訓(xùn)練方法、數(shù)據(jù)策略,供參考。
模型架構(gòu)
Qwen3 Embedding、reranker模型架構(gòu)
Qwen3嵌入和重排序模型基于Qwen3基礎(chǔ)模型的dense backbone,提供三種參數(shù)規(guī)模:0.6B、4B和8B。這些模型通過(guò)初始化Qwen3基礎(chǔ)模型來(lái)利用其在文本建模和指令遵循方面的能力。每個(gè)模型配置的層數(shù)、隱藏層大小和上下文長(zhǎng)度如下表:
- Embedding模型
對(duì)于文本嵌入,使用具有因果注意力的LLMs,并在輸入序列的末尾添加一個(gè)[EOS]標(biāo)記。最終的嵌入是從對(duì)應(yīng)于這個(gè)[EOS]標(biāo)記的最后一層的隱藏狀態(tài)中提取的。沒(méi)有額外池化頭,推理路徑更短。
為了確保嵌入在下游任務(wù)中遵循指令,將指令和查詢(xún)連接成一個(gè)單一的輸入上下文,而文檔保持不變,然后通過(guò)LLMs進(jìn)行處理。Query的輸入格式如下:
{Instruction}{Query}
- Reranker模型
為了更準(zhǔn)確地評(píng)估文本相似性,使用LLMs在單個(gè)上下文中進(jìn)行點(diǎn)對(duì)點(diǎn)重排序。與嵌入模型類(lèi)似,為了實(shí)現(xiàn)指令遵循能力,將指令包含在輸入上下文中。使用LLM聊天模板,并將相似性評(píng)估任務(wù)框定為一個(gè)二分類(lèi)問(wèn)題。輸入到LLMs的模板如下:
<|im_start|>system
Judge whether the Document meets the requirements based on the Query and the Instruct provided. Note that the answer can only be"yes" or
"no".<|im_end|>
<|im_start|>user
<Instruct>:{Instruction}
<Query>:{Query}
<Document>:{Document}<|im_end|>
<lim_start|>assistant
<think>\n\n</think>\n\n
為了基于給定輸入計(jì)算相關(guān)性分?jǐn)?shù),視為二分類(lèi)任務(wù),評(píng)估下一個(gè)標(biāo)記是"yes"或"no"的可能性。表示為:
訓(xùn)練方法
Qwen3 Embedding訓(xùn)練過(guò)程采用了多階段訓(xùn)練pipline,結(jié)合了大規(guī)模無(wú)監(jiān)督預(yù)訓(xùn)練和高質(zhì)量數(shù)據(jù)集上的監(jiān)督微調(diào)。
1、訓(xùn)練目標(biāo)
Embedding模型:對(duì)于嵌入模型,使用了基于InfoNCE框架的改進(jìn)對(duì)比損失。給定一批N個(gè)訓(xùn)練實(shí)例,損失定義為:
其中,Sij是qi,dj或qi,qj的相應(yīng)分?jǐn)?shù)。
- Re-Rank模型:優(yōu)化了基于監(jiān)督微調(diào)(SFT)的損失,定義為:
2、多階段訓(xùn)練
多階段訓(xùn)練是訓(xùn)練文本嵌入模型的常見(jiàn)做法,通常從大規(guī)模半監(jiān)督數(shù)據(jù)上的初始訓(xùn)練開(kāi)始,然后使用較小規(guī)模的高質(zhì)量監(jiān)督數(shù)據(jù)集進(jìn)行微調(diào)。這一兩步過(guò)程增強(qiáng)了模型的性能和泛化能力。大規(guī)模弱監(jiān)督訓(xùn)練數(shù)據(jù)顯著提高了模型的泛化能力,而后續(xù)階段的高質(zhì)量數(shù)據(jù)微調(diào)進(jìn)一步提升了模型性能。
在現(xiàn)有多階段訓(xùn)練框架的基礎(chǔ)上,Qwen3 Embedding系列引入了以下關(guān)鍵創(chuàng)新:
- 大規(guī)模合成數(shù)據(jù)驅(qū)動(dòng)的弱監(jiān)督訓(xùn)練:與之前的工作(如GTE、E5、BGE模型)不同,這些模型主要從開(kāi)源社區(qū)(如問(wèn)答論壇或?qū)W術(shù)論文)收集弱監(jiān)督訓(xùn)練數(shù)據(jù),提出利用基礎(chǔ)模型的文本理解和生成能力直接合成配對(duì)數(shù)據(jù)。這種方法允許任意定義所需配對(duì)數(shù)據(jù)的各種維度,如任務(wù)、語(yǔ)言、長(zhǎng)度和難度,并在合成提示中進(jìn)行定義。與從開(kāi)放域源收集數(shù)據(jù)相比,基礎(chǔ)模型驅(qū)動(dòng)的數(shù)據(jù)合成提供了更大的可控性,能夠精確管理生成數(shù)據(jù)的質(zhì)量和多樣性,特別是在低資源場(chǎng)景和語(yǔ)言中。
- 高質(zhì)量合成數(shù)據(jù)在監(jiān)督微調(diào)中的利用:由于Qwen3基礎(chǔ)模型的卓越性能,合成的數(shù)據(jù)質(zhì)量非常高。因此,在監(jiān)督訓(xùn)練的第二階段,選擇性地整合這些高質(zhì)量合成數(shù)據(jù)進(jìn)一步增強(qiáng)了整體模型性能和泛化能力。
- 模型合并:受到先前工作的啟發(fā),在完成監(jiān)督微調(diào)后,應(yīng)用了基于球面線性插值(slerp)的模型合并技術(shù)。該技術(shù)涉及合并微調(diào)過(guò)程中保存的多個(gè)模型檢查點(diǎn)。目的是提高模型在各種數(shù)據(jù)分布上的魯棒性和泛化性能。
注意,重排序模型的訓(xùn)練過(guò)程不包括第一階段的弱監(jiān)督訓(xùn)練階段。
3、合成數(shù)據(jù)集
使用Qwen3-32B模型作為基礎(chǔ)模型進(jìn)行數(shù)據(jù)合成,創(chuàng)建了大約1.5億對(duì)多任務(wù)弱監(jiān)督訓(xùn)練數(shù)據(jù)。實(shí)驗(yàn)發(fā)現(xiàn),使用合成數(shù)據(jù)訓(xùn)練的嵌入模型在下游評(píng)估中表現(xiàn)優(yōu)異,特別是在MTEB多語(yǔ)言基準(zhǔn)測(cè)試中超越了許多先前監(jiān)督模型。這促使對(duì)合成數(shù)據(jù)進(jìn)行過(guò)濾,以識(shí)別高質(zhì)量配對(duì),用于第二階段的監(jiān)督訓(xùn)練。采用簡(jiǎn)單的余弦相似性計(jì)算來(lái)選擇數(shù)據(jù)對(duì),保留隨機(jī)采樣數(shù)據(jù)中余弦相似性大于0.7的對(duì)。最后大約1200萬(wàn)對(duì)高質(zhì)量監(jiān)督訓(xùn)練數(shù)據(jù)對(duì)被選中進(jìn)行進(jìn)一步訓(xùn)練。
實(shí)驗(yàn)性能
MTEB多語(yǔ)言
MTEB英文
Qwen3 Embedding: Advancing Text Embedding and Reranking Through Foundation Models,https://github.com/QwenLM/Qwen3-Embedding/blob/main/qwen3_embedding_technical_report.pdfcode:https://github.com/QwenLM/Qwen3-Embedding
本文轉(zhuǎn)載自??大模型自然語(yǔ)言處理?? 作者:余俊暉
