LLM4CS:一種利用LLM提升多輪會話檢索的效果的方案
大家好,我是HxShine
今天分享一篇人大的文章,大型語言模型知道您的會話上下文搜索意圖(Large Language Models Know Your Contextual Search Intent: A Prompting Framework for Conversational Search)。
在會話型搜索中,由于會話型搜索場景的多樣性和長尾特性,精準地理解用戶的上下文搜索意圖一直是一個重要挑戰。現有的基于有限數據訓練的方法在處理真實會話型搜索場景時,仍然表現出不足的有效性和魯棒性。
本文提出了一個簡單卻高效的框架,稱之為LLM4CS,其讓LLMs作為基于文本的搜索意圖解釋器,以幫助會話型搜索。簡單來說,LLM4CS采用了三個步驟來做這件事情:1)多輪問題重寫:結合上下文將當前句子改寫成語義完整的句子。2)回復生成:利用LLM生成回復,同時結合回復信息可以輔助提高檢索效果。3)語義信息聚合:嘗試了不同的語義信息聚合方法提升檢索效果。在包括CAsT-19、CAsT-20和CAsT-21在內的三個廣泛使用的會話型搜索基準上進行的廣泛自動評估和人工評估,都展現出了顯著的性能。
? Title: Large Language Models Know Your Contextual Search Intent: A Prompting Framework for Conversational Search
? URL: https://arxiv.org/abs/2303.06573
? Authors: Kelong Mao, Zhicheng Dou, Fengran Mo, Jiewen Hou, Haonan Chen, Hongjin Qian
? Code: https://github.com/LLM4CS/LLM4CS
1 Motivation
? 多輪會話過程中,用戶意圖在不同會話輪次的過程中隨時會發生變化,這給對話過程中的知識檢索增加了難度。
? 這篇論文試圖解決對話式搜索中用戶上下文搜索意圖的準確理解問題。由于對話式搜索場景的多樣性和長尾特性,基于有限數據訓練的現有方法在處理實際對話式搜索場景時,效果和穩健性仍不盡人意。
? 大型語言模型在文本生成和對話理解方面展現出了驚人的能力,如何將LLM相關能力引入會話型搜索中,提高會話型搜索的效果還有待探索。
2 Methods
該方法簡單來說分為三步:
1)改寫:利用LLM理解能力比較強的特點,對多輪對話的當前問題進行改寫,將語義改寫成完整的語義。
2)回復生成:直接利用LLM生成回復,該回復可能包含與檢索結果相關的content,從而可以輔助提升檢索效果。
3)集成:采用多種方法對改寫的emb和回復的emb進行融合,生成最終的搜索意圖查詢向量,提升最終查詢效果。
整個框架的目的是將用戶的會話查詢轉換為可以用于檢索的搜索意圖向量,然后使用這個向量去檢索相關文檔。通過這種方式,LLM4CS 框架能夠處理會話搜索中的多樣性和長尾性問題,提高搜索性能和魯棒性。
1 Context & Question: 表示當前會話輪次的用戶查詢(query)和對話上下文(context)。上下文包括之前輪次的用戶查詢和系統響應。
2 Search Intent Interpreter (LLM): 這一步對用戶問題進行重寫,并生成假設性的回復。
? REW (Rewriting): 重寫,LLM 生成一個或多個重寫的查詢。
? RTR (Rewriting-Then-Response): 先重寫再響應,LLM 先生成重寫的查詢,然后基于這些重寫生成假設性響應。
? RAR (Rewriting-And-Response): 重寫和響應,LLM 同時生成重寫和響應。
3 Query Encoder: 這是用于將用戶查詢轉換為向量的編碼器。
4 Aggregation: 聚合,將生成的多個重寫和響應聚合成一個集成表示,這里探索多種方式對改寫的結果以及回復的結果進行聚合,以穩健地表示用戶的真實搜索意圖。
? MaxProb: 最大概率,選擇生成概率最高的重寫和響應作為最終檢索的向量。
? SC (Self-Consistency): 自洽性,選擇與所有意圖向量聚類中心最相似的意圖向量作為最終檢索的向量。
? Mean: 平均值,將所有重寫向量和相應的假設性響應向量取平均作為最終檢索向量。
5 向量召回:意圖向量和passage向量點積
? Search Intent Vector: 聚合后的搜索意圖向量,用于表示用戶的搜索意圖。
? Passage Vectors (Offline Encoded): 預先編碼的段落向量,即文檔庫中的各個段落。
2.1 改寫的提示詞:Instruction和Demonstration解析
說明:
Instruction: 說明多輪query rewrite和response生成的指令。
Demonstration: 給出相關示例,并在示例中引入CoT思考過程。
2.2 改寫輸入和結果說明
說明:
Input: 輸入包含當前輪問題以及歷史多輪對話問題和回復的上下文信息(Context),并給出CoT思考模版。
Model Output: 輸出結果,包含改寫結果Rewrite和回復結果Response兩個部分,這兩部分對后續搜索效果提升有比較大的作用。
3 Conclusion
? LLM4CS提示框架能夠使用LLMs來精確理解和表示用戶的上下文搜索意圖。通過使用提示框架可以顯著改善會話搜索結果的質量。
二、詳細內容
1 實驗結果
實驗說明:
1. Human:表示使用人類生成的改寫結果來查詢。
2. RI-H:表示與人類改寫(Human)相比的相對改進百分比。如果這個百分比是正數,意味著 LLM4CS 的性能超過了人類重寫;如果是負數,則表示低于人類重寫。
3. RI-2nd-Best:表示與第二名的最佳結果相比的相對改進百分比。這提供了 LLM4CS 框架與現有最先進方法相比的性能提升情況。
結論:LLM4CS 在多數情況下都取得了最佳或接近最佳的性能,尤其是在 CAsT-20 和 CAsT-21 數據集上,它在所有指標上均優于或接近人類重寫的性能。
2 LLM4CS在多輪問題重寫上效果顯著優于T5QR方法
結論:在多輪問題重寫上,LLM4CS 生成的查詢重寫質量高,無論是在與人類重寫的相似性還是在傳達意圖的準確性方面。在大部分情況下,它重寫結果要么與人類重寫非常接近(Good-H),要么雖然表達不同但依然準確(Good-A)。
說明:
? Good-H:模型的重寫與人類重寫幾乎相同。
? Good-A:模型的重寫雖然與人類重寫表達不同,但成功傳達了用戶的搜索意圖。
? Bad-O:重寫遺漏了重要的上下文信息或存在其他類型的錯誤。
? Bad-C:重寫中存在指代表達錯誤。
3 消融實驗
3.1 不同聚合方法以及不同改寫策略的影響
實驗設置:
1. 三種提示方法:REW(僅重寫)、RTR(重寫后響應)、RAR(重寫和響應一起生成)。
2. 三種聚合方法:MaxProb(使用最高概率的輸出)、SC(自洽性)、Mean(平均值)。
結論:
1. 在多數情況下,RAR 提示方法結合 Mean 聚合方法效果最好,這表明同時生成重寫和響應,并通過所有生成內容的平均值得到的信息聚合,對于提高搜索效果有幫助。
2. MaxProb 方法通常不是最佳選擇,這表明依賴單一最高概率輸出可能不如考慮多個輸出的綜合效果好。
3. SC 方法在某些情況下表現不錯,但在其他情況下可能不如 Mean 方法,這表明選擇與所有意圖向量聚類中心最相似的意圖向量是一個有用的策略,但可能需要根據具體情況進行選擇。
3.2 CoT對整體性能的影響
結論:
1. CoT在各種策略上都有不錯的提升:表明CoT能有效地引導大型語言模型更準確地理解用戶的搜索意圖。
2. 在REW上CoT提示方法帶來的提升比較大:可能意味著在沒有額外的假設性響應的情況下,CoT 提供的推理步驟對于指導查詢重寫更為關鍵。
3. 在RTR 和 RAR 上CoT提示方法帶來的提升沒有那么大:對可能是因為在 RTR 和 RAR 方法中,多個假設性響應本身已經增強了最終搜索意圖的表示,從而減少了 CoT 對性能提升的影響。
三、總結:LLM4CS框架在會話型搜索中展現出非常顯著的性能
本文展示了大型語言模型在理解和解釋會話搜索中用戶上下文意圖方面的強大潛力。通過LLM4CS框架的應用,對多輪查詢進行重寫并生成假設性響應,而且通過集成表示的方法,增強了模型對用戶真實搜索意圖的穩健理解能力。本文在多個會話型搜索基準上進行的評估,結果展示了LLM4CS框架的優勢,這為采用大型語言模型優化會話型搜索提供了有力證據。面對會話型搜索的復雜性和多樣性,本研究的成果標志著我們朝著更加理解用戶搜索意圖,進一步應用LLMs在會話型搜索中走出了關鍵一步。
- ? 核心價值: 多輪會話過程中,用戶意圖在不同輪次的過程中隨時會發生變化,這給對話過程中的知識檢索增加了難度。LLM4CS框架的提出,為會話式檢索提供了一種解決思路。
- ? 亮點: LLM4CS其實用了LLM的兩個特性來優化會話檢索檢索效果。第一點:利用LLM多輪會話理解強的特點,先根據多輪會話結果生成重寫結果,該重寫結果可以更好的表達用戶語義。第二點,其還利用LLM內能記住豐富的知識的特點,讓LLM生成回復輔助檢索優化,而這個回復與需要檢索的內容可能有比較強的相關性,從而提高會話檢索的效果。文章提出的方法在準確性和穩健性方面優于現有方法,并且在廣泛的會話搜索基準測試上得到了驗證。
本文轉載自??NLP PaperWeekly??,作者: NLP PaperWeekly ????
