檢索增強生成(RAG)和微調(Fine-tuning)是提升大語言模型效能的兩種常用方法,那麼到底哪種方法比較好?在建立特定領域的應用時哪種更有效率?微軟的這篇論文供你選擇時參考。
在建立大語言模型應用程式時,常常使用兩種方法來整合專有和特定領域的資料:檢索增強生成和微調。檢索增強生成是透過引入外部資料來增強模型的生成能力,而微調則是將額外的知識融入模型本身。然而,對於這兩種方法的優缺點,我們的了解還不夠充分。
本文介紹了微軟研究者提出的一個新的關注點,即為農業行業創建具有特定背景和自適應響應能力的AI助理。透過引入一個全面的大語言模型流程,可以產生高品質的、行業特定的問題和答案。這個流程包含了一系列系統化的步驟,首先是鑑別和收集涵蓋廣泛農業主題的相關文件。然後對這些文件進行清理和結構化,以便使用基本的GPT模型產生有意義的問答對。最後,產生的問答對會根據其品質進行評估和篩選。這項方法為農業產業提供了一個有力的工具,可以提供準確、實用的信息,幫助農民和相關從業人員更好地應對各種問題和挑戰。
本文旨在為農業產業創造有價值的知識資源,並以農業為案例研究。其最終目標是為農業領域的LLM發展做出貢獻。
論文網址:https://arxiv.org/pdf/2401.08406.pdf
論文標題:RAG vs Fine-tuning: Pipelines, Tradeoffs, and a Case Study on Agriculture
本文流程的目標是產生滿足特定產業專業人員和利害關係人需求的領域特定問題和答案。在該行業中,期望從AI助理獲得的答案應基於相關的行業特定因素。
本文涉及的是農業研究,目標是產生該特定領域的答案。因此研究的起點是農業資料集,它被輸入到三個主要組件:問答產生、檢索增強生成和微調過程。問答產生根據農業資料集中的資訊建立問答對,檢索增強生成將其用作知識來源。產生的數據經過精煉,並用於微調多個模型,其品質透過一組提出的度量標準進行評估。透過這種全面的方法,利用大語言模型的力量,造福農業產業及其他利害關係人。
本文對大語言模型在農業領域的理解做出了一些特殊貢獻,這些貢獻可以歸納如下:
1、對LLMs 的全面評估:本文對大語言模型進行了廣泛評估,包括LlaMa2-13B、GPT-4 和Vicuna,以回答與農業相關的問題。使用了來自主要農業生產國的基準數據集進行評估。在本文的分析中,GPT-4 一直表現優於其它模型,但也需要考慮與其微調和推理相關的成本。
2、檢索技術與微調對效能的影響:本文研究了檢索技術和微調對 LLMs 效能的影響。研究發現,檢索增強生成和微調都是提高 LLMs 效能的有效技術。
3、LLMs 在不同產業潛在應用的影響:對於想要建立RAG 和微調技術在LLMs 中應用的流程而言,本文走出了開創性的一步,並促進了多個行業之間的創新和合作。
方法
本文第 2 部分詳細介紹採用了方法論,包括資料擷取過程、資訊擷取過程、問題和答案生成,以及模型的微調。此方法論圍繞著一個旨在生成和評估用於構建領域特定助手的問答對流程展開,如下圖 1 所示。
該流程以數據獲取開始,這包括從各種高品質的儲存庫中獲取數據,例如政府機構、科學知識資料庫,以及必要時使用專有數據。
在完成資料擷取後,流程繼續從收集的文件中提取資訊。這一步驟至關重要,因為它涉及解析複雜且非結構化的 PDF 文件,以恢復其中的內容和結構。下圖 2 展示了資料集中一個 PDF 檔案的範例。
流程的下一個組成部分是問題和答案生成。這裡的目標是產生有上下文基礎的高品質問題,準確反映提取文本的內容。本文方法採用了一個框架來控制輸入和輸出的結構組成,從而增強語言模型產生回應的整體效果。
隨後,流程為制定的問題產生答案。此處採用的方法利用了檢索增強生成,結合了檢索和生成機制的能力,以創建高品質的答案。
最後,流程透過 Q&A 對微調模型。優化過程採用了低秩調整(LoRA)等方法,確保全面理解科學文獻的內容和背景,使其成為各個領域或行業的有價值資源。
資料集
研究中評估了經過微調和檢索增強生成的語言模型,使用與背景相關的問題和答案資料集,這些資料集來自三個主要的作物生產國:美國、巴西和印度。在本文的案例中,以農業為工業背景。可用的數據在格式和內容上變化很大,涵蓋了法規文件、科學報告、農學考試以及知識資料庫等各種類型。
本文從美國農業部、州農業和消費者服務機構等公開可取得的線上文件、手冊和報告中收集了資訊。
可獲得的文件包括了有關作物和牲畜管理、疾病和最佳實踐的聯邦法規和政策信息,質量保證和出口法規,援助計劃的詳細信息,以及保險和定價指南。收集的數據總計超過 23,000 個 PDF 文件,包含超過 5000 萬個 tokens,涵蓋了美國 44 個州。研究者下載並預處理了這些文件,提取了可以用作問答生成流程輸入的文本資訊。
為了對模型進行基準測試和評估,本文使用了與華盛頓州相關的文檔,其中包括 573 個文件,包含超過 200 萬個 tokens。如下清單 5 展示了這些文件中的內容範例。
度量標準
本節的主要目的是建立一套全面的度量標準,目的是指導對問答產生過程的品質評估,尤其是對微調和檢索增強生成方法的評估。
在發展度量標準時,必須考慮幾個關鍵因素。首先,問題品質中固有的主觀性提出了重大挑戰。
其次,度量標準必須考慮到問題的相關性、實用性對情境的依賴性。
第三,需要評估生成問題的多樣性和新穎性。強大的問題生成系統應該能夠產生涵蓋給定內容各個方面的廣泛問題。然而,對多樣性和新穎性進行量化可能面臨挑戰,因為這涉及評估問題的獨特性以及它們與內容、其他生成問題的相似性。
最後,好的問題應該要能夠基於提供的內容來回答。評估問題是否可以使用現有資訊來準確回答,這需要對內容進行深刻的理解,並具備識別回答問題的相關資訊的能力。
這些測量標準在確保模型提供的答案準確、相關且有效地回答問題方面發揮著不可或缺的作用。然而,在專門設計用於評估問題品質的度量標準方面存在顯著的缺失。
意識到這一缺失,本文專注於開發旨在評估問題品質的度量標準。考慮到問題在推動有意義的對話和產生有用答案方面的關鍵作用,確保問題品質與確保答案品質同樣重要。
本文所發展的度量標準旨在彌補以往研究在這一領域的空缺,提供一種全面評估問題品質的手段,這將對問答產生過程的進展產生顯著影響。
問題評估
本文開發的用於評估問題的測量標準如下:
多樣性 詳細程度
由於大語言模型傾向於產生長而詳細的、富有資訊的對話式回答,因此評估它們產生的答案是具有挑戰性的。
一致性:在給定上下文的情況下,比較實際情況與預測之間的一致性。
#########相關性:衡量答案在上下文中如何有效地回答問題的主要面向。 ############真實性:定義了答案是否邏輯上符合上下文中包含的信息,並提供一個整數分數來確定答案的真實性。 ###############模型評估#######為了評估不同的微調模型,本文使用了 GPT-4 作為評估器。利用 GPT-4 從農業文件中產生了約 270 個問題和答案對,作為實際情況資料集。對於每個微調模型和檢索增強生成模型,產生這些問題的答案。
本文對LLMs 進行了多個不同度量標準的評估:
#帶有指南的評估:對於每個問答實際情況對,本文提示GPT-4 產生評估指南,列出正確答案應包含的內容。然後,GPT-4 被提示根據評估指南中的標準,為每個答案評分,分數範圍從 0 到 1。以下是一個例子:
簡潔性:建立了描述簡潔和冗長答案可能包含內容的評分錶。基於該評分錶、實際情況答案和 LLM 答案提示 GPT-4,並要求根據 1 到 5 的分數給予評分。
正確性:本文建立了一個描述完整、部分正確或不正確的答案應包含內容的評分錶。基於該評分錶、實際情況答案和 LLM 答案提示 GPT-4,並要求給予正確、不正確或部分正確的評分。
實驗
本文的實驗被劃分為幾個獨立的實驗,每個實驗都專注於問答產生和評估、檢索增強生成和微調的特定方面。
這些實驗探索以下領域:
問答品質
上下文研究
#模型到測量的計算
組合產生與分別產生對比
檢索消融研究
微調
問答品質
該實驗評估了三個大語言模型,即GPT-3、GPT-3.5 和GPT- 4,在不同上下文設定下產生的問答對的品質。品質評估基於多個指標,包括相關性、覆蓋範圍、重疊度和多樣性。
上下文研究
該實驗研究了不同上下文設定對模型生成問答對效能的影響。它在三種上下文設定下評估產生的問答對:無上下文、上下文和外部上下文。表 12 中提供了一個範例。
在無上下文設定中,GPT-4 在三個模型中具有最高的覆蓋率和大小的提示,表明它可以涵蓋更多的文字部分,但生成的問題更冗長。然而,三個模型在多樣性、重疊度、相關性和流暢度方面的數值都相似。
當包含上下文時,與 GPT-3 相比,GPT-3.5 的覆蓋率略有增加,而 GPT-4 保持了最高的覆蓋率。對於 Size Prompt,GPT-4 具有最大的數值,表明其能夠產生更冗長的問題和答案。
在多樣性和重疊度方面,三個模型表現相似。對於相關性和流暢度,與其他模型相比,GPT-4 略有增加。
在外部上下文設定中,也有類似的情況。
此外,觀察每個模型時,無上下文設定似乎在平均覆蓋率、多樣性、重疊度、相關性和流暢度方面為GPT-4 提供了最佳平衡,但產生的問答對較短。上下文設定導致了較長的問答對和其他指標的輕微下降,除了大小。外部上下文設定產生的問答對最長,但保持了平均覆蓋率,並在平均相關性和流暢度上略有增加。
整體而言,對於 GPT-4,無上下文設定在平均覆蓋率、多樣性、重疊度、相關性和流暢度方面似乎提供了最佳平衡,但生成的答案較短。上下文設定導致了更長的提示和其他指標的輕微下降。外部上下文設定產生的提示最長,但保持了平均覆蓋率,並在平均相關性和流暢度上略有增加。
因此,這三者之間的選擇將取決於任務的特定要求。如果不考慮提示的長度,則由於更高的相關性和流暢度分數,外部上下文可能是最佳選擇。
模型到度量的計算
該實驗比較了在用於計算評估問答對品質的度量標準時,GPT-3.5 和 GPT-4 的表現。
總體上,雖然 GPT-4 通常將產生的問答對評價為更具流暢性和上下文真實性,但與 GPT-3.5 的評分相比, 它們的多樣性和相關性較低。這些觀點對於理解不同模型如何感知和評估生成內容的品質至關重要。
組合產生與單獨生成的對比
該實驗探討了單獨生成問題和答案與組合生成問題和答案之間的優劣,並專注於在token 使用效率方面的比較。
總的來說,僅產生問題的方法提供更好的覆蓋範圍和較低的多樣性,而組合生成方法在重疊度和相關性方面得分更高。在流暢度方面,兩種方法表現相似。因此在這兩種方法之間的選擇將取決於任務的特定要求。
如果目標是覆蓋更多資訊並保持更多的多樣性,那麼只產生問題的方法會更受青睞。然而,如果要與來源材料保持較高的重疊度,那麼組合生成方法將是更好的選擇。
檢索消融研究
這個實驗評估了檢索增強生成的檢索能力,這是一種透過在問題回答過程中提供額外上下文來增強LLMs 固有知識的方法。
本文研究了檢索的片段數量 (即 top-k) 對結果的影響,並在表 16 中呈現了結果。透過考慮更多的片段,檢索增強生成能夠更一致地恢復原始摘錄。
為確保模型能夠處理來自各種地理背景和現象的問題,需要擴展支援文件的語料庫,以涵蓋各種主題。隨著考慮更多文檔,預計索引的大小將增加。這可能會在檢索過程中增加相似片段之間的碰撞數量,從而阻礙恢復輸入問題的相關資訊的能力,降低召回率。
微調
此實驗評估了微調模型與基礎指令微調模型的效能差異。目的在於了解微調對幫助模型學習新知識的潛力。
對於基礎模型,本文評估了開源模型 Llama2-13B-chat 和 Vicuna-13B-v1.5-16k。這兩個模型相對較小,代表了計算與效能之間的有趣權衡。這兩個模型都是 Llama2-13B 的微調版本,使用了不同的方法。
Llama2-13B-chat 透過監督微調和強化學習進行了指令微調。 Vicuna-13B-v1.5-16k 是透過在 ShareGPT 資料集上進行監督微調的指令微調版本。此外,本文還評估了基礎的 GPT-4,作為一個更大、更昂貴和更強大的替代方案。
對於微調模型,本文直接在農業資料上對 Llama2-13B 進行微調,以便將其性能與為更通用任務進行微調的類似模型進行比較。本文也對 GPT-4 進行微調,以評估微調在非常大的模型上是否仍有幫助。有指引的評估結果見表 18。
為全面衡量回答的質量,除了準確性外,本文也評估了答案的簡潔性。
表 21 中顯示,這些模型並不總是對問題提供完整的答案。例如,有些回答指出土壤流失是一個問題,但並沒有提到空氣品質。
總的來說,就準確而簡潔地回答參考答案而言,表現最好的模型是Vicuna 檢索增強生成、GPT-4 檢索增強生成、GPT-4 微調和GPT-4 微調檢索增強生成。這些模型提供了精確性、簡潔性和資訊深度的平衡混合。
知識發現
本文的研究目標是探索微調對幫助GPT-4 學習新知識的潛力,這對應用研究至關重要。
為了測試這一點,本文選擇了在美國的 50 個州中至少有三個州相似的問題。然後計算了嵌入的餘弦相似度,並確定了 1000 個這樣的問題清單。這些問題從訓練集中刪除,使用微調和帶有檢索增強生成的微調來評估 GPT-4 是否能夠根據不同州之間的相似性學習新知識。
更多實驗結果請參考原文。
以上是RAG還是微調?微軟出了特定領域大模型應用建置流程指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!