天天看點

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

作者:夕小瑤科技說

文本嵌入是各項NLP任務的基礎,用于将自然語言轉換為向量表示。現有的大部分方法通常采用複雜的多階段訓練流程,先在大規模資料上訓練,再在小規模标注資料上微調。此過程依賴于手動收集資料制作正負樣本對,缺乏任務的多樣性和語言多樣性。

此外,大部分方法采用BERT作為編碼器,如非常經典的Sentence-BERT和SimCSE通過在推理資料集上對BERT進行微調學習文本嵌入。

但現在LLMs技術發展得如火如荼,能否用LLMs來克服現有方法的限制,更新文本嵌入方法呢?

當然可以!

最近,微軟釋出了一種新穎的文本嵌入方法,使用專有的LLMs為93種語言中各種文本嵌入任務生成合成資料,并且涉及了多個任務場景。

微軟使用了Mistral-7B對合成資料和标記資料進行混合訓練,**成功登頂Huggingface排行榜,比之前的方法高2%**。

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

論文标題:

Improving Text Embeddings with Large Language Models

論文連結:

https://arxiv.org/pdf/2401.00368.pdf

模型:

https://huggingface.co/intfloat/e5-mistral-7b-instruct

資料:

https://huggingface.co/datasets/andersonbcdefg/synthetic_retrieval_tasks

方法

合成資料生成

作者使用GPT-4集思廣益産生一系列潛在的檢索任務,然後為每個任務生成(查詢,正例,困難反例)三元組,如下圖所示。

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

為了生成多樣化的合成資料,作者提出了一個簡單的分類法,将嵌入任務分為幾個組,并針對每個組應用不同的提示模闆:

非對稱任務:包括查詢和文檔在語義上相關但并不是互相改寫的任務。根據查詢和文檔的長度,進一步分為四個子組:短-長比對、長-短比對、短-短比對和長-長比對。短-長比對任務涉及短查詢和長文檔,是商業搜尋引擎中的典型情況。

對稱任務:涉及具有相似語義但表面形式不同的查詢和文檔。包括單語語義文本相似性(STS)和雙語檢索。

訓練

給定一個相關的查詢-文檔配對(,),将以下指令模闆應用于原始查詢,生成一個新的查詢 :

其中,嵌入任務的一句話描述的占位符。

給定一個預訓練的LLM,将[EOS]标記附加到查詢和文檔的末尾,然後将它們輸入LLM,通過擷取最後一層的[EOS]向量來獲得查詢和文檔的嵌入()。

為了訓練嵌入模型,采用了标準的InfoNCE損失函數L,使用批内負樣本和困難負樣本進行計算。

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

其中計算查詢q和文檔d之間比對分數的函數,本文采用溫度縮放餘弦相似度函數,是溫度超參,在本實驗中設為0.02。

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

實驗

合成資料統計

本文一共生成了500k個示例,其中包含150k個獨特指令。25%由GPT-3.5-Turbo生成,其餘由GPT-4生成。總的token消耗約為180M。主要語言為英語,覆寫了共計93種語言。對于75種低資源語言,平均每種語言約有1k個示例。

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

模型微調與評估

模型選用Mistral-7b進行1個epoch微調,評估基準選用MTEB基準測試。

訓練資料:利用生成的合成資料和包含13個公共資料集的集合, 在采樣後得到約180萬個樣例。為了與一些先前的工作進行公平比較,還報告了僅有标簽監督的MS-MARCO資料集的結果。

主要結果

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

▲表1

如上表所示,本文提出的模型“E5mistral-7b + full data”在MTEB基準測試中獲得了最高的平均得分,比之前的最先進模型高出2.4個點。

在“僅使用合成資料”的設定中,沒有使用标記資料進行訓練,其性能仍然相當有競争力。生成式語言模組化和文本嵌入都需要模型對自然語言有深刻的了解,。基于嵌入任務定義,一種真正強大的輕量級模型應該能夠自動生成訓練資料,然後通過輕量級微調轉換為嵌入模型。

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

▲表2

在表2中,作者還對幾個商業文本嵌入模型進行了比較。然而,由于這些模型缺乏透明度和文檔說明,不可能做到完全公平的比較。作者主要關注BEIR基準測試的檢索性能,因為RAG是未來LLMs應用的重要趨勢之一。正如表2所示,本文的模型在性能上明顯優于目前的商業模型。

多語言檢索

為了評估模型的多語言能力,作者在包含18種語言的MIRACL資料集上進行了評估。該資料集包括人工注釋的查詢和相關性判斷。

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

▲表3

如表3所示,該模型在高資源語言特别是英語上超過mE5large。對于低資源語言,本文的模型仍然不夠優秀。這是因為Mistral-7B主要預訓練于英語資料,未來将可以使用多語言LLM彌合這一差距。

除此之外,作者還探讨分析了幾個問題。

分析

1. 對比預訓練真的重要嗎?

弱監督對比性預訓練是現有文本嵌入模型取得成功的關鍵因素之一。例如,将随機裁剪的片段作為預訓練的正樣本對待,或者從各種來源收集并篩選文本對。

那麼對于LLMs而言,對比預訓練還有用嗎?

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

如上圖所示,對比預訓練有益于XLM-Rlarge,在相同資料上微調時,其檢索性能提高了8.2個點,與之前的研究結果一緻。

然而,對于基于Mistral-7B的模型,對比預訓練對模型品質幾乎沒有影響。這意味着廣泛的自回歸預訓練使LLMs能夠擷取良好的文本表示,隻需要進行最少限度的微調即可将其轉化為有效的嵌入模型,而無需對比預訓練。

個性化密碼檢索

為了評估模型的長上下文能力,作者引入了一項新的合成任務——個性化密碼檢索,如下圖所示,包含多個檔案,每個檔案都有一個獨特的人名和一個随機的密碼,插入在随機的位置。任務是從100個候選項中找回包含給定個人密碼的檔案。通過這個過程測試模型将長上下文中的密碼資訊編碼到嵌入中的能力。

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

作者通過改變滑動視窗大小和RoPE旋轉基,比較了不同變體的性能。

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!
  • 結果表明,預設配置下,使用4k滑動視窗在4k個token内達到了100%的準确率,但随着上下文長度的增加,準确率迅速下降。
  • 将滑動視窗大小天真地擴充到32k會導緻更差的性能。
  • 通過将RoPE旋轉基準更改為,模型可以在32k個标記内實作超過90%的準确率。但在短上下文不太适用。

結論

這篇工作證明了通過LLMs技術,文本嵌入的品質可以得到顯著提升。 研究人員使用了專有的LLMs(如GPT-4),在多種語言環境下生成了多樣化的合成資料,并結合Mistral模型強大的語言了解能力,在競争激烈的MTEB基準測試中取得了SOTA。與現有的多階段方法相比,既簡單又高效,不再需要中間預訓練的環節。

用網友的話說就是“Amazing Amazing Amazing!”,省去了人工采集資料的繁瑣步驟,每個人都可以輕松地生成自己的資料集,并訓練強大的嵌入模型。 語義檢索模型不給力導緻生成模型性能受影響的局面,總算有希望翻篇兒了!

微軟最新研究成果:使用GPT-4合成資料來訓練AI模型,實作SOTA!

繼續閱讀