<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          RAG微調Llama 3竟超越GPT-4!英偉達GaTech華人學者提出RankRAG框架

          共 5945字,需瀏覽 12分鐘

           ·

          2024-07-09 12:50



            新智元報道  

          編輯:喬揚 好困
          【新智元導讀】來自佐治亞理工學院和英偉達的兩名華人學者帶隊提出了名為RankRAG的微調框架,簡化了原本需要多個模型的復雜的RAG流水線,用微調的方法交給同一個LLM完成,結果同時實現(xiàn)了模型在RAG任務上的性能提升。

          在需要大量事實知識的文本生成任務中,RAG成為了常用的LLM部署技巧。
          但佐治亞理工學院和英偉達最近發(fā)表的一篇論文提出——RAG可以不止停留在用于推理的pipeline中,類似的思路完全可以移植到微調階段,于是有了這個名為RankRAG的框架。

          論文地址:https://arxiv.org/abs/2407.02485
          他們的思路可以概括為:用微調拓展模型的能力,把原來RAG需要額外模型的檢索、排名任務全丟回給LLM自己。
          結果發(fā)現(xiàn),不僅數(shù)據(jù)效率提高了,模型性能也有顯著增強,相比今年5月剛提出的ChatQA-1.5系列有顯著優(yōu)勢。
          在9個通用基準和5個生物醫(yī)學的知識密集型基準上,RankRAG用Llama 3 8B/70B微調出的模型分別超過了同樣基座上ChatQA-1.5的兩個微調模型,Llama3-ChatQA-1.5-8B和Llama3-ChatQA-1.5-70B。

          ChatQA-1.5項目地址:https://chatqa-project.github.io/
          檢索增強生成技術,簡稱為RAG(Retrieval-Augmented Generation),被廣泛適用于LLM的定制化,尤其是知識密集型的NLP任務。可以幫助模型在不改變權重的情況下掌握「長尾知識」和最新信息,并適應到特定的領域。
          通常情況下,RAG的工作流程大致是:對于給定問題,由一個基于文本編碼的稠密模型從外部數(shù)據(jù)庫中檢索到top-k個文本段,然后輸入給LLM進行讀取,以此為基礎進行生成。

          來源:AWS
          這個pipeline看起來非常符合直覺,也已經(jīng)被廣泛使用,但作者在論文開篇指出了其中的固有局限,首先就是k值的選擇。
          如果k值較大(比如top-100),即使是支持長上下文的窗口的LLM也很難快速讀取這么多文本塊。隨著k值的增大,性能會很快飽和。
          除了效率原因,之前還有研究表明,k值在5或10這個量級時,生成結果的準確性更高。因為過多上下文會引入不相關內容,妨礙LLM生成準確答案,

          《Retrieval meets Long Context Large Language Models》https://arxiv.org/abs/2310.03025
          那把k值就定在這個區(qū)間不行嗎?
          如果給定一個較小的k,我們需要一種機制來保證檢索結果的高召回率(recall)。
          鑒于檢索器的表達能力有限(通常是稀疏檢索模型如BM25,或中等大小的編碼模型如BERT-based),通常無法捕獲所有相關信息,因此實際的應用過程還會加上一個交叉編碼(cross-encoding)的排名模型。
          排名模型從數(shù)據(jù)庫中檢索到top-N個候選 (N ? k),再經(jīng)過一次排名得到最終top-k結果。
          這種方案的缺陷在于,與通用的LLM本身相比,專家排名模型的零樣本泛化能力相對有限,上游檢索結果的質量很可能造成下游LLM生成任務的瓶頸。這在許多實證研究中都得到了驗證。
          基于上述考慮,作者認為可以只使用LLM同時完成上下文檢索和內容生成任務,通過設計RAG的指令調優(yōu)來實現(xiàn),這種新穎的框架被命名為RankRAG。
          OpenAI的GPT-4報告中就發(fā)現(xiàn),檢索、排名過程中發(fā)展出的「確定文本塊與問題是否相關」的能力對答案的生成同樣有用,這兩者可以被視為「雙重能力」。
          RankRAG在訓練過程中引入了一項帶指令的問答任務,讓模型能夠識別出與問題相關的上下文或段落,便于在推理時對檢索結果進行排名。
          如果將一部分排名數(shù)據(jù)集成到指令微調中,還能大大增強LLM在RAG排名任務中的性能,甚至超過了單獨用LLM和10×排名數(shù)據(jù)進行微調的結果。

          RankRAG微調框架


          在推理階段,RankRAG的pipeline與上述的的「檢索-排名-生成」流程幾乎相同,首先檢索出帶有相關性分數(shù)的top-N結果,然后進行重新排名并保留top-k段落,將其與問題連接到一起進行生成。
          主要的不同點在于模型訓練過程,使用了兩個階段的指令微調(圖2)直接增強LLM的相關能力,而不是在模型外部添加額外操作。
          第一階段首先進行監(jiān)督微調(SFT),128k個樣例來自多個數(shù)據(jù)集的混合,包括對話數(shù)據(jù)集SODA、Dolly、OpenAssistant,長格式QA數(shù)據(jù)集ELI5(需要詳細答案),LLM合成的指令,以及CoT數(shù)據(jù)集FLAN。
          這個階段的SFT主要是為了提高LLM的指令跟隨能力,雖然與RAG關系不大,但可以為接下來的指令微調過程做好鋪墊。
          為了提升LLM的檢索、排名性能,第二階段的微調數(shù)據(jù)集由以下幾個部分混合組成(表1):
          • 第一階段的SFT數(shù)據(jù):用于維持指令跟隨能力

          • 上下文豐富的QA數(shù)據(jù):涵蓋了DROP、NarrativeQA、Quoref、ROPES、NewsQA、TAT-QA等數(shù)據(jù)集,每條數(shù)據(jù)包含問題、黃金上下文(golden context)和答案

          • 會話QA數(shù)據(jù)集:如Synthetic Conversation和HumanAnnotatedConvQA,同時包括對話內容以及一份背景文檔

          • 檢索增強的QA數(shù)據(jù):不僅包括SQuAD和WebQuestions中的問題和答案,還用BM25將黃金上下文和檢索到的top結果組合起來,確保每條數(shù)據(jù)都有5個上下文,其中有些上下文可能不包括問題答案,甚至是hard-negative,這是為了重點提高LLM對不相關上下文的魯棒性

          • 上下文排名數(shù)據(jù):使用流行的MS Marco語義相關性數(shù)據(jù)集,將其中的黃金樣本視為相關的查詢-段落對 (??,??+),BM25挖掘的hard negtive (??,???)則被視為不相關,讓LLM對這些樣本的相關性進行二元分類(True或False)

          • 檢索增強的排名數(shù)據(jù):同樣使用QA數(shù)據(jù)集SQuAD和WebQuestions,以及BM25檢索到的上下文,訓練LLM的對相關性進行排名的能力

          實驗

          表2展示了RankRAG與基線模型的對比結果:
          - 優(yōu)于現(xiàn)有的RAG方法
          可以看到,在8B的參數(shù)規(guī)模上,RankRAG始終優(yōu)于當前的開源SOTA——ChatQA-1.5 8B。
          與更大的模型相比,RankRAG 8B依然顯著優(yōu)于InstructRetro(5倍參數(shù)量)、RA-DIT 65B(8倍參數(shù)量),甚至在NQ和TriviaQA任務中超越了參數(shù)多達8倍的Llama3-instruct 70B。
          在增加模型參數(shù)后,RankRAG 70B的表現(xiàn)不僅優(yōu)于強大的ChatQA-1.5 70B模型,并且還顯著優(yōu)于之前以InstructGPT為底層大語言模型的RAG基線。
          - 在更具挑戰(zhàn)性的數(shù)據(jù)集上表現(xiàn)出更大的改進
          相對于基線模型的性能提升,RankRAG在更具挑戰(zhàn)性的QA數(shù)據(jù)集上更加明顯。例如,在長尾QA(PopQA)和多跳QA(2WikimQA)任務中,RankRAG比ChatQA-1.5提高了10%以上。
          這些發(fā)現(xiàn)表明,在具有挑戰(zhàn)性的OpenQA數(shù)據(jù)集中,檢索器中的頂級文檔與答案的相關性較低,而上下文排名能有效提高性能。

          消融研究

          - 設計組件的效果
          表3展示了以Llama3 8B為骨干的RankRAG,在九個通用領域數(shù)據(jù)集上的消融結果。總體來看,所有的新組件都對最終性能有所貢獻。
          - 不同大語言模型的性能表現(xiàn)
          表4展示了RankRAG和最新基線ChatQA,在使用不同參數(shù)量的Llama2作為骨干時的性能表現(xiàn)。
          可以看到,RankRAG在各種類型和規(guī)模下,性能都有提升——分別在7B/13B/70B變體上提高了7.8%/6.4%/6.3%。
          - 不同檢索器的性能表現(xiàn)
          圖3展示了RankRAG和ChatQA-1.5在三項代表性任務中,使用不同密集檢索器(DPR和Contriever-MS MARCO)的性能。
          盡管初始檢索結果并不理想,但RankRAG在平均性能上仍然比ChatQA-1.5高出10%以上。
          總的來說,RankRAG在選擇檢索器方面表現(xiàn)出很強的魯棒性。

          特定領域的RAG基準

          為了證明RankRAG在專業(yè)領域的適應性,作者在最新的生物醫(yī)學RAG基準Mirage上進行了實驗。
          其中,MedCPT作為檢索器?,MedCorp2作為語料庫??。
          從表5中可以看出,即使沒有進行過微調,RankRAG依然可以在醫(yī)學問答任務上有著出色的表現(xiàn)——
          不僅在8B的規(guī)模下部分超越了醫(yī)學領域的開源SOTA Meditron 70B,而且在70B的規(guī)模下達到了GPT-4超過98%的性能。

          排名模塊

          - RankRAG具有高數(shù)據(jù)效率
          如表6所示,相比于在10倍數(shù)據(jù)上訓練的專用排名模型,RankRAG在大部分情況下都取得了更好的召回率。
          甚至,RankRAG還能在大多數(shù)任務中超越BGE-ranker,要知道后者曾在超過100萬對排名數(shù)據(jù)上進行了廣泛的訓練,其中還包括一些與評估任務重疊的排名對。
          值得注意的是,直接使用ChatQA-1.5對段落進行排名會降低性能,這表明在指令微調中加入排名數(shù)據(jù)的很有必要的。
          如圖4所示,僅使用5k排名數(shù)據(jù)(約占MS MARCO數(shù)據(jù)集的1%),RankRAG即可獲得極佳的結果,而將排名數(shù)據(jù)增加到50k更是帶來了顯著的增益。
          這一發(fā)現(xiàn)證實了RankRAG的數(shù)據(jù)效率——只需少量排名數(shù)據(jù)就能實現(xiàn)有效性能,并能在各種任務中保持適應性。
          - RankRAG的性能與時間效率
          隨著模型規(guī)模的擴大,不僅延遲開銷會增加,逐樣本排名的時間開銷也會增大。
          為了研究時間效率與性能之間的關系,作者改變了重新排名中使用的N,并在圖5中繪制了N與最終準確率的關系。
          可以看到,即使N=20,RankRAG仍然比不進行重新排名的基準模型有所改進。
          此外,當N從20逐漸增加100時,重新排名將精確匹配分數(shù)提高了5.9%到9.1%,并且只額外增加了0.9到6倍的時間——遠低于預期的20到100倍的預期增長。

          案例研究

          表7展示了NQ數(shù)據(jù)集上的一個案例。
          可以看到,由于存在干擾因素,而且一些上下文(例如,ChatQA-1.5的段落4和段落5)對回答問題沒有幫助,因此只用檢索器的話會導致上下文中出現(xiàn)錯誤信息。
          相比之下,重新排名技術則發(fā)現(xiàn)了另外兩個相關的段落,從而幫助模型給出了正確的答案。

          作者介紹


          論文的兩位共同一作分別是佐治亞理工學院的Yue Yu和英偉達的Wei Ping。
          Yue Yu目前是GaTech CSE學院的五年級博士生,由Chao Zhang教授指導,研究興趣是LLM和以數(shù)據(jù)為中心的AI的交叉領域,博士期間曾在Meta、英偉達、谷歌研究院、微軟研究院等機構實習。
          在進入GaTech前,他在2019年從清華大學電子工程系獲得學士學位,曾在Yong Li教授指導下進行時空數(shù)據(jù)挖掘和推薦系統(tǒng)方向的研究。
          另一位共同一作Wei Ping是英偉達應用深度學習研究團隊的首席科學家,他的研究重點關注LLM和GenAI,致力于為文本、音頻等多模態(tài)數(shù)據(jù)構建生成模型。
          他2016年從加州大學歐文分校獲得機器學習專業(yè)的博士學位,本科和碩士分別畢業(yè)于哈爾濱工業(yè)大學和清華大學。博士畢業(yè)后曾在吳恩達創(chuàng)立的百度硅谷AI Lab領導文字轉語音團隊,之后加入英偉達。
          值得一提的是,本篇論文對標的基準方法ChatQA也是Wei Ping之前的研究。
          參考資料:
          https://arxiv.org/abs/2407.02485


          瀏覽 809
          6點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          6點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  99精品福利 | 五月激情丁香 | 人妻福利导航 | 国产成人精品三级麻豆 | 国产成人+综合+亚洲欧美 |