《廖子寒--生成式大語言模型在搜索領域的突破與應用.pdf》由會員分享,可在線閱讀,更多相關《廖子寒--生成式大語言模型在搜索領域的突破與應用.pdf(39頁珍藏版)》請在三個皮匠報告上搜索。
1、例:支撐海量數據的大數據平臺與架構例:茹炳晟例:騰訊Tech Lead,騰訊研究院特約研究員正文要求:微軟雅黑:最小字號 8號宋體:最小字號 10號等線:最小字號 12號生成式大語言模型在搜索領域的突破與應用廖子寒螞蟻集團,算法工程師廖子寒螞蟻集團,算法工程師目前是華東師范大學計算機科學與技術博士在讀生,主要研究方向為自然語言處理、大語言模型以及推薦系統。我在頂級學術會議和期刊上發表了多篇論文,包括ACL、TKDE、PAKDD等,研究課題涵蓋語義搜索、長上下文建模、代碼檢索和推薦系統去偏等多個領域。我的研究工作致力于推動大語言模型在實際應用中的表現,解決模型精度和效率的問題。我曾在螞蟻集團擔任
2、研究型實習生,負責優化大語言模型在語義搜索和代碼檢索中的應用。實習期間,我參與了大語言模型的設計和調優,推動了多項技術落地應用,并成功將相關模型提升至行業領先水平。CONTENTS目錄1.研究背景與動機2.D2LLM模型設計與優化3.CGE模型在代碼嵌入中的應用4.總結與未來展望研究背景與技術貢獻LLM應用需求與挑戰生成任務 vs 搜索任務 生成任務:基于上下文生成后續的文本片段 搜索任務:需要緊湊、特征豐富的向量表示,以便能夠在大量文檔或代碼片段中快速匹配查詢和候選項的相似度生成式模型 每次生成對下一token的預測 無法獲取上下文句子級語義ChatGPT今天 天氣 晴朗,我們 一起 出去散
3、 步 吧 散 步 吧現有方法的局限性Bert式雙編碼器 優點:效率高、可預計算 缺點:準確性低、泛化能力弱LLM式交叉編碼器 優點:準確性高、快速適配新領域 缺點:效率低、難以應用如何將兩者結合起來?研究目標與貢獻目標1:將生成式LLM適配搜索任務,來更準確地理解語義目標2:利用LLM的預訓練知識,更高效地處理多樣化的搜索需求目標3:有效壓縮LLM對文檔與代碼的嵌入維度,減輕存儲壓力D2LLM模型設計與優化方法架構Zihan Liao et.al,2024.D2LLM:Decomposed and Distilled Large Language Models for Semantic Sea
4、rch.教師模型我們為對稱與非對稱搜索任務設計prompting策略(和和)計算LLM回復的嵌入表示%&以及“yes”詞元的概率(分數)%&.%&=LLM(%,&,)%&=“”,“”%&%&=softmax%&學生模型PMA 模塊將查詢%和段落&中的詞元信息通過交叉注意力(Cross-Attention)的方式聚合起來,從而生成句子級嵌入向量。%&()=PMA*Y%=LN(+FFN()=LN(MHA,Y%,Y%+)可學習的query向量學生模型IEM 模塊隱式地對提示語(Prompts)編碼,并捕獲查詢與段落間的聯系。%&=,(-(%(),&()輕量級MLP知識蒸餾對比模仿(CI)損失與傳統的
5、對比損失不同,它利用教師的分數來指示樣本間不同的相關性。./=1|0|L&!logexp(%&%&/)3exp(1%3)%3/)知識蒸餾排序模仿(RI)RI 專注于區分正例和難負例,以及辨別簡單負例和難負例。對應設計兩個損失:456/=1 corr(%,%)576/=15878LL3$&3log(%&%3)知識蒸餾特征模仿(FI)FI 通過利用教師 LLM 中包含的豐富特征信息來實現知識遷移:%&3=sim%&,%3,0 58,9/=%,實驗結果自然語言推理D2LLM 相比最佳基線方法提高了 10%21%。我們的蒸餾方法成功地將知識從教師模型轉移到學生模型。實驗結果語義相似性對 0.3M
6、數據進行微調后,教師模型的平均性能提升了 7.17%。D2LLM-ft 比原始 D2LLM 提高了 1.69%,平均比其他方法高出 17.42%??紤]到教師 LLM-ce 并未專門針對 STS 進行微調。我們使用相同的訓練集對 STS 域的教師模型進行了微調(得到了 LLM-ce-ft)。實驗結果信息檢索由于采用交叉編碼器設計,教師模型 LLM-ce 對于 IR 任務來說速度太慢。D2LLM 在大多數情況下比其他方法高出 1.65%。實驗結果運行速度基于T2Retrieval數據集進行實驗,約10w條段落與雙編碼器相比,D2LLM 僅略微增加了相似度計算時間。實驗結果運行速度基于T2Retri
7、eval數據集進行實驗,約10w條段落與雙編碼器相比,D2LLM 僅略微增加了相似度計算時間。D2LLM 顯著提高了基于交叉編碼器的模型的效率。實驗結果運行速度實現了效率與效果的平衡!基于T2Retrieval數據集進行實驗,約10w條段落與雙編碼器相比,D2LLM 僅略微增加了相似度計算時間。D2LLM 顯著提高了基于交叉編碼器的模型的效率。實驗結果消融實驗對比、排序和特征模仿過程的整合對于 D2LLM 至關重要,它可以有效地從教師模型蒸餾出不同方面的知識評估各個蒸餾目標的重要性實驗結果消融實驗PMA 是不可或缺的,并且不能被均值池化或 EOS token所取代。評估PMA的重要性實驗結果消
8、融實驗IEM 對于捕捉查詢-段落關系的復雜關系是必要的。評估IEM的重要性實驗結果消融實驗教師 LLM 的參數規模對學生 D2LLM 的表現有積極的影響。評估教師模型參數大小的影響實驗結果錯誤示例我們認為這些“糟糕情況”可能源于教師模型最初的錯誤判斷,無意中阻礙了學生模型的學習過程。CGE模型在代碼嵌入中的應用代碼嵌入的挑戰語義復雜性代碼不僅需要遵循嚴格的語法規則,還包含豐富的語義關系多語言支持不同的編程語言有不同的語法和標準庫,導致代碼嵌入模型需要在多語言間具有很好的泛化能力,以確??缯Z言檢索的有效性精度與存儲壓縮的平衡保持精度的條件下盡可能減小嵌入維度現有方法的局限性Bert式代碼嵌入模型
9、 優點:效率高、可預計算 缺點:準確性低、泛化能力弱LLM式代碼嵌入模型 優點:基座LLM潛力高 缺點:表示質量差,存儲壓力大方法架構基于CodeQwen1.5-7B-Chat微調充分利用并激發Code LLM的基座能力采用PMA模塊進行句子級語義聚合通過交叉注意力生成句子級嵌入向量魔改PMA實現維度壓縮對比學習增強多路召回難負例同batch選用同語言數據跨卡選取in-batch負樣本,增大負例數量agg=PMAY=LN(+FFN()=LN(MHA,Y,Y+)模型性能對比現有Bert/T5/GPT類代碼嵌入方法,我們在絕大多數情況下達到sota性能Codefuse-CGE大幅領先閉源的基于LLM的代碼嵌入模型Openai-Embedding-ada-002,平均提升10.33%Small&Large 模型與訓練框架已開源至huggingface與githubMini 模型近期將開源總結與未來展望未來工作Codefuse-CGE模型優化 兼顧代碼塊全局語義 理解并整合跨文件依賴關系 支持細粒度語義表征獲取提高框架兼容性 支持更多基座模型類型,如MoE模型 支持更多任務類型,如Code2Code任務感謝聆聽關注SECon公眾號