TLDR: 這篇論文提出了一種新的生成式推薦系統范式GeneRec,它通過結合content generation和instruction guidance來服務用戶的個性化信息需求。此外,作者還強調了多種fidelity checks的重要性,以確保生成內容的可信度。作者探索了在短視頻生成上實現GeneRec的可行性,并在多種任務上展示了不錯的結果,為未來的研究留下了許多有價值的方向。
論文:arxiv.org/abs/2304.03516 代碼:github.com/Linxyhaha/GeneRec
推薦系統通常從item庫中檢索items進行個性化推薦。然而,這種基于檢索的推薦范式面臨兩個限制:1)人工生成的items可能無法滿足用戶多樣化的信息需求,2)用戶通常通過點擊等被動且低效的反饋來調整推薦。如今,人工智能生成內容(AI-Generated Content, AIGC)已經在各個領域取得了顯著的成功,其具有克服這些限制的潛力:1)生成式人工智能可以生成個性化items,以滿足用戶特定的信息需求,2)新興的ChatGPT等大語言模型給用戶提供了另一種通過自然語言指令以更準確地表達信息需求的可能。 在這種情況下,AIGC的興起啟發了下一代推薦范式的兩個新目標:1)通過Generative AI生成個性化內容服務用戶的多樣化需求,2)收集用戶的自然語言指令,以指導content generation。為此,我們提出了一種名為GeneRec的新型生成式推薦范式 (Generative Recommender paradigm), 其采用AI generator來進行個性化content generation,并利用用戶指令獲取用戶的信息需求。具體而言,我們通過instructor對用戶的指令和傳統反饋(例如點擊)進行預處理,并輸出generation guidance。基于generation guidance,我們通過AI editor和AI creator實例化AI generator,分別用于編輯現有items和生成新的items。最終,GeneRec可以融合內容檢索、編輯和生成功能,以滿足用戶的信息需求。此外,為確保生成的items的可信度,我們強調各種fidelity checks的重要性,例如真實性和合法性檢查。最后,我們研究了在短視頻的生成推薦中實現AI editor和AI creator的可行性,并展現了不錯的結果。
推薦系統往往檢索items來滿足用戶的個性化信息需求。傳統的推薦系統主要檢索專家生成的item(例如電影)或用戶生成的item(例如短視頻)。然而,AIGC已經成為各個領域中的展現了強大的能力,如圖1所示,ChatGPT展示出強大的自然語言對話能力,擴散模型(diffusion models)可以生成生動的圖像并修改圖像的指定內容,DualStyleGAN可以根據用戶的要求輕松地轉換圖像風格。在AIGC的興起推動下,推薦系統不應再受限于人工生成的內容,我們需要為推薦系統構想一種生成式推薦范式,自動地編輯現有items或生成新items來滿足用戶多樣化的信息需求。
圖1. AIGC應用示例為了設計生成式推薦范式,我們首先回顧了傳統的基于檢索的推薦范式。如圖2所示,傳統的范式對item庫中的人工生成的items進行打分排序,向用戶推薦排名靠前的items,然后收集用戶反饋(例如點擊)和上下文(例如交互時間)以優化未來的排序。盡管這種傳統范式取得了巨大的成功,但存在兩個限制:1)item庫中人工生成的內容可能不足以滿足用戶的個性化信息需求。例如,用戶可能更喜歡某種特定風格的短視頻,如卡通風格,但人工生成這種短視頻耗時且成本高昂。2)用戶目前主要通過被動反饋(例如點擊)來優化推薦結果,無法明確高效地表達其信息需求。
圖2. 傳統檢索式推薦范式AIGC提供了克服基于檢索的推薦范式固有限制的潛力。具體地,1)生成式人工智能可以實時生成個性化內容,包括編輯現有items和生成新items,以補充用戶多樣化的信息需求。例如,它可以如圖3所示,根據個性化用戶偏好快速將短視頻轉換為任何風格。此外,2)新近發布的類ChatGPT模型為用戶通過自然語言指令更準確地傳達其多樣化信息需求提供了強大的接口(如圖1(a)所示),補充了傳統用戶的隱式反饋。由此,AIGC的興起促使我們推動了下一代推薦系統發展,以實現:1)通過生成式人工智能自動生成個性化內容,以及 2)收集用戶自然語言指令以指導content generation。
圖3. 根據用戶的個性化偏好,通過VToonify進行短視頻轉換的例子為此,我們提出了一種名為GeneRec的生成式推薦范式 (Generative Recommender paradigm),將強大的生成式人工智能集成到個性化content generation中,包括item的編輯和生成。圖2說明了GeneRec如何在AI generator和用戶之間新增一個反饋循環,將用戶指令和反饋作為輸入,AI generator需要理解用戶的信息需求并生成個性化內容。然后,生成的內容可以添加到item庫中進行排名,也可以直接推薦給用戶。其中,用戶指令不僅限于文本對話,還可以包括多模態對話,即將圖像、視頻、音頻和自然語言融合起來表達信息需求。 為了實現GeneRec Paradigm,我們設計了一個模塊來處理用戶指令以及兩個模塊來實現AI generator。具體而言,instructor模塊預處理用戶指令和反饋以確定是否啟動AI generator以更好地滿足用戶需求,并將指令和反饋進行編碼以指導content generation。在給出指導后,AI editor重新利用現有items以滿足用戶的特定偏好,即個性化items編輯,而AI creator直接為用戶生成新的個性化items。 為確保生成的items的可信度和高質量,我們強調從偏見、隱私、安全、真實性和合法性等方面進行各種fidelity checks的重要性。最后,為探索其范式的可行性,我們設計了幾個短視頻生成任務,并在一個高質量短視頻數據集上進行了實驗。實證結果表明,現有的AIGC方法可以完成一些編輯和生成任務,并且有望在未來實現GeneRec的目標。
概括來說,本文的貢獻有以下三點: 1. 我們強調AIGC在推薦系統中的重要作用,并指出下一代推薦系統的新目標:朝著生成式推薦范式前進,通過多模態指令自然地與用戶交互,并靈活地檢索、編輯和生成items內容,以滿足用戶多樣化的信息需求。 1. 我們提出通過設計instructor、AI editor和AI creator三個模塊來實現生成式推薦范式,其中instructor用于處理用戶指令,AI editor用于個性化items編輯,AI creator用于個性化items生成。 1. 我們調查了利用現有AIGC方法實現提出的生成式推薦范式的可行性,并為未來的工作提出了有潛力的研究方向。
受AIGC潮流的推動,我們為下一代推薦系統提出了兩個新目標:1)利用AI自動編輯或生成items,以滿足用戶多樣化的需求,2)利用自然語言交互來指導內容的編輯和生成。為了實現這些目標,我們提出了GeneRec,以補充傳統的基于檢索的推薦范式。
圖4. GeneRec paradigm
Overview:圖4展示了提出的GeneRec范式的概述,其中包含兩個循環。在傳統的檢索-用戶系統循環中,人類,包括領域專家(例如音樂家)和普通用戶(例如短視頻用戶),生成和上傳items到items庫。這些items根據用戶偏好進行排名,其中偏好是從歷史推薦的上下文(例如交互時間)和用戶反饋中學習的。為了補充這種傳統范式,GeneRec在AI generator和用戶之間添加了另一個循環。用戶可以通過用戶指示和反饋來控制由AI generator生成內容,以滿足個性化需求。
User Instruction:ChatGPT類模型的強大對話能力可以豐富用戶和AI generator之間的交互模式。用戶可以通過對話指令靈活地控制content generation,指令既可以是文本對話,也可以是多模態對話。通過指令,用戶可以比基于交互反饋更快速有效地表達他們的信息需求。此外,使用交互式指令,用戶可以隨時自由地啟用AI generator生成他們喜歡的內容。
AI generator:在生成內容之前,AI generator可能需要對用戶指令進行預處理,例如,一些預先訓練的語言模型可能需要設計prompt或instruction tuning;擴散模型可能需要設計自然語言指令作為圖像生成的輸入。除了用戶指令,用戶反饋(例如點擊)也可以指導content generation,因為用戶指令可能會忽略一些用戶偏好,而AI generator可以從用戶的歷史交互中推斷出這些偏好。 隨后,AI generator從用戶指令和反饋中總結用戶的個性化的信息需求,然后相應地生成個性化的items內容,包括生成全新items和編輯現有items。最后,post-processing是確保生成內容質量的關鍵,AI generator可以判斷生成的內容是否能夠滿足用戶的信息需求,并進一步進行精煉處理,例如為短視頻添加標題和字幕。此外,確保生成內容的可信度也非常重要。
Fidelity checks:為了確保生成的內容準確、公平、安全,GeneRec 應通過以下檢查。 1)Bias and fairness:AI generator可能從有偏差的數據中學習,因此應確保生成的內容不會持續存在刻板印象,促進仇恨言論和歧視,對某些人口造成不公平或加強其他有害偏見。 2)Privacy:生成的內容不應傳播任何可能侵犯某人隱私的敏感或個人信息。 3)Safety:AI generator不得對用戶造成任何傷害風險,包括身體和心理傷害的風險。例如,針對青少年的生成短視頻不應包含任何不健康的內容。此外,必須防止GeneRec受到各種攻擊,如假評論攻擊。 4)Authenticity:為防止誤傳信息,我們需要驗證生成內容中所提到的事實、統計數據和聲明是否基于可靠來源準確。 5)Legal compliance:AIGC必須遵守所有相關法律法規。例如,如果生成的短視頻是關于推薦健康食品,它們必須遵守衛生保健的相關法規。在這方面,我們還強調,制定新法規來規范AIGC及其傳播是必要和緊迫的。 6)Identifiability:為協助AIGC監督,我們建議將數字水印添加到AI生成的items內容中,以區分人類生成的和AI生成的items。此外,我們還可以開發AI技術來自動識別AI生成的items。此外,我們可以考慮在用戶瀏覽后刪除AI生成的items,以防止它們被修改于不適當的上下文中,從而減少AIGC的有害傳播。
Evaluation:為了評估生成的內容,我們提出了兩種評估方法:1)基于item的評估,2)基于用戶的評估。基于item的評估強調從item本身進行的測量,包括item質量的測量(例如使用 Fréchet Video Distance(FVD)度量短視頻質量)和各種fidelity checks。基于用戶的評估則基于用戶的滿意度來判斷生成的內容質量。滿意度可以通過顯式反饋或隱式反饋(如傳統基于檢索的推薦系統中所用的方法)來收集。具體而言,1)顯式反饋包括用戶的評分和對話反饋,例如自然語言中的“我喜歡這個item”。此外,我們可以設計多個方面來幫助用戶評估,例如風格、長度和短視頻生成的縮略圖。而2)隱式反饋(例如點擊)也可以進行評估。常用的指標,如點擊率、停留時間和用戶保留率仍然適用于衡量用戶的滿意度。
為了實現GeneRec的提議,我們開發了三個模塊:Instructor、AI editor和AI creator。如圖5所示,Instructor負責預處理用戶指令,而AI editor和AI creator則分別實現了用于個性化items編輯和生成的AI generator。
圖5. A demonstration of GeneRec
Instructor旨在預處理用戶指令和反饋,以指導AI generator的內容生成。 * Input:用戶的多模態對話指令和對歷史推薦items的反饋。 * Processing:給定輸入,Instructor可能仍需要與用戶進行多輪交互,以全面了解用戶的信息需求。然后,Instructor分析多模態指令和用戶反饋,確定是否有必要啟動AI generator以滿足用戶的信息需求。如果用戶通過指令明確請求AIGC或多次拒絕人工生成的items,Instructor可能會啟用AI generator進行內容生成。然后,Instructor根據AI generator的輸入要求,將用戶的指令和反饋作為指導信號進行預處理。例如,一些預先訓練的語言模型可能需要適當設計的提示,而擴散模型可能需要從用戶的指令和歷史喜歡的items特征中提取指導信息。 * Output:1)是否啟動AI generator的決策,2)用于content generation的指導信號。
為了實現AI generator的content generation功能,我們制定了兩個模塊:AI editor和AI creator。 AI editor for personalized item editing: 如圖4所示,AI editor旨在根據個性化用戶指令和反饋,對items庫中現有的items(由人或AI生成)進行細化和重新加工。 * Input:1)由指導者從用戶指令和反饋中提取的指導信號,2)item庫中的現有items,3)來自Web數據的事實和知識。 * Processing:針對輸入數據,AI editor利用神經網絡學習用戶的信息需求和喜好,然后相應地重新加工輸入items。這里的“事實和知識”可以提供一些事實事件、生產技能、常識、法律法規等內容,幫助生成準確、安全、合法的items。例如,基于用戶指令,AI editor可能通過在Web上模仿卡通風格的示例,將短視頻轉換成卡通風格。 * Output:一個經過編輯的items,比原來的items更好地滿足用戶的信息偏好。
AI creator for personalized item creation: 除了AI editor外,我們還開發了一個AI creator,根據個性化用戶指令和反饋來生成新的items。
為了研究實例化GeneRec的可行性,我們采用AIGC方法在短視頻數據集上實現AI editor和AI creator,圖6提供了不同的實現方法。
圖6. 實現編輯和生成任務的說明
本文提出了一個全新的生成式推薦范式,可以通過用戶指令和反饋獲得用戶的信息需求,實現item檢索、編輯和生成,以滿足用戶的多樣化信息需求。為實例化GeneRec,我們設計了三個模塊:用于預處理用戶指令和反饋的Instructor,用于編輯現有物品的AI editor和用于生成新物品的AI creator。此外,我們強調了多種fidelity checks的重要性,以確保生成內容的可信度,并指出了GeneRec的挑戰和未來機遇。我們探索了在短視頻生成上實現GeneRec的可行性,并在多種任務上展現了不錯的結果。 本研究為未來工作留下了許多有價值的研究方向。具體來說,1)從用戶的多模態指令和反饋中學習用戶的信息需求至關重要。詳細來說,GeneRec應該學習如何提出問題以便高效獲得信息,減少模態差距以了解用戶的多模態指令,并利用用戶反饋以補充指令,提供更好的generation guidance。2)對于各種任務(如縮略圖生成和短視頻生成),開發更強大的生成模塊是至關重要的,此外,我們可能通過一個統一模型來實現多個生成任務,這些任務可以相互促進。3)我們應該設計新的度量標準和技術來豐富AIGC的評估和檢查,引入人機協作來評估GeneRec和進行檢查也是一個不錯的方向。
最新大模型推薦綜述
大型語言模型(LLMs)已在自然語言處理(NLP)領域嶄露頭角,并在推薦系統(RS)領域近期受到了極大關注。這些模型通過自監督學習在大量數據上進行訓練,已在學習通用表示上取得了顯著成功,并有可能通過一些有效的遷移技術(如微調和提示調整等)來增強推薦系統的各個方面。利用語言模型的力量來提高推薦質量的關鍵在于利用它們對文本特征的高質量表示以及對外部知識的廣泛覆蓋,以建立項目和用戶之間的關聯。為了提供對現有基于LLM的推薦系統的全面理解,本綜述提出了一種分類法,將這些模型分為兩大范式,分別是用于推薦的判別型LLM(DLLM4Rec)和用于推薦的生成型LLM(GLLM4Rec),其中后者是首次被系統地整理出來。此外,我們在每種范式中都系統地回顧并分析了現有的基于LLM的推薦系統,提供了它們的方法、技術和性能的洞察。此外,我們也識別出了關鍵的挑戰和一些有價值的發現,以為研究者和實踐者提供靈感。
//www.zhuanzhi.ai/paper/f88ecfaf9c5216f16d59098d5751bbc5
1. 引言
推薦系統在幫助用戶尋找相關和個性化的項目或內容方面發揮了至關重要的作用。隨著在自然語言處理(NLP)領域出現的大型語言模型(LLMs),人們對利用這些模型的能力來增強推薦系統的興趣日益增強。 將大型語言模型(LLMs)融入推薦系統的關鍵優勢在于,它們能夠提取高質量的文本特征表示,并利用其中編碼的廣泛外部知識[Liu等人,2023b]。此綜述將LLM視為基于Transformer的模型,這種模型參數眾多,通過使用自/半監督學習技術在大規模數據集上進行訓練,例如BERT,GPT系列,PaLM系列等。與傳統的推薦系統不同,基于LLM的模型擅長捕獲上下文信息,更有效地理解用戶查詢、項目描述和其他文本數據[Geng等人,2022]。通過理解上下文,基于LLM的推薦系統(RS)可以提高推薦的準確性和相關性,從而提高用戶滿意度。同時,面對有限的歷史交互數據稀疏問題[Da’u和Salim,2020],LLMs還通過零/少樣本推薦能力[Sileo等人,2022]為推薦系統帶來新的可能性。這些模型可以推廣到未見過的候選項,因為它們通過事實信息、領域專業知識和常識推理進行了廣泛的預訓練,使它們即使沒有接觸過特定的項目或用戶,也能提供合理的推薦。
上述策略已在判別模型中得到了良好的應用。然而,隨著AI學習范式的演變,生成語言模型開始受到關注[Zhao等人,2023]。這一發展的一個重要例證就是ChatGPT和其他類似模型的出現,它們已經對人類的生活和工作模式產生了重大影響。此外,將生成模型與推薦系統相結合,有可能帶來更多創新和實用的應用。例如,可以提高推薦的可解釋性,因為基于LLM的系統能夠根據其語言生成能力提供解釋[Gao等人,2023],幫助用戶理解影響推薦的因素。此外,生成語言模型使得更個性化和上下文感知的推薦成為可能,例如在聊天式推薦系統中用戶可以定制提示[Li等人,2023],增強用戶對結果多樣性的參與和滿意度。 受到上述范式在解決數據稀疏性和效率問題上顯著效果的啟發,將語言建模范式用于推薦已經在學術界和工業界中成為了一個有前景的方向,顯著地推進了推薦系統研究的最新技術。到目前為止,有一些研究回顧了這個領域的相關論文[Zeng等人,2021; Liu等人,2023b]。Zeng等人(2021)總結了一些關于推薦模型預訓練的研究,并討論了不同領域間的知識轉移方法。Liu等人(2023b)提出了一種正交分類法,將現有的基于預訓練語言模型的推薦系統根據它們的訓練策略和目標進行劃分,分析和總結了預訓練語言模型基礎訓練范式和不同輸入數據類型之間的聯系。然而,這兩項調查主要關注的是預訓練語言模型中訓練技術和策略的轉移,而不是探索語言模型及其能力,即基于LLM的方式。此外,他們缺乏對推薦領域中生成大型語言模型最近進展和系統介紹的全面概覽。為解決這個問題,我們深入研究了基于LLM的推薦系統,將它們分為用于推薦的判別性LLM和用于推薦的生成性LLM,我們的回顧重點放在后者上。據我們所知,我們的綜述是第一個對推薦系統的生成大型語言模型進行最新和全面回顧的工作。
我們的綜述主要貢獻如下:
我們對當前基于LLM的推薦系統的狀態進行了系統性的綜述,重點是擴大語言模型的能力。通過分析現有方法,我們對相關進展和應用提供了系統的概覽。
據我們所知,我們的調查是首個專門針對推薦系統的生成型大型語言模型的全面和最新的回顧。
我們的綜述批判性地分析了現有方法的優點、缺點和限制。我們確定了基于LLM的推薦系統面臨的關鍵挑戰,并提出了有價值的發現,可以激發在這個有潛力的領域進一步的研究。
2 建模范式和分類法
所有大型語言模型的基本框架都由幾個Transformer塊組成,例如GPT,PaLM,LLaMA等。這種架構的輸入通常由token嵌入或位置嵌入等組成,而在輸出模塊可以獲得期望的輸出嵌入或token。在這里,輸入和輸出數據類型都是文本序列。如圖1的(1)-(3)所示,對于在推薦中適應語言模型,即建模范式,現有的工作可以大致分為以下三類:
(1) LLM Embeddings + RS。這種建模范式將語言模型視為特征提取器,將物品和用戶的特征輸入到LLM中并輸出相應的嵌入。傳統的RS模型可以利用知識感知嵌入進行各種推薦任務。 (2)** LLM Tokens + RS**。與前一種方法類似,這種方法根據輸入的物品和用戶的特征生成token。生成的令牌通過語義挖掘捕捉潛在的偏好,可以被整合到推薦系統的決策過程中。 (3) LLM作為RS。與(1)和(2)不同,這個范式的目標是直接將預訓練的LLM轉換為一個強大的推薦系統。輸入序列通常包括簡介描述、行為提示和任務指示。輸出序列預計會提供一個合理的推薦結果。
在實際應用中,語言模型的選擇顯著影響推薦系統中建模范式的設計。如圖2所示,在本文中,我們將現有的工作劃分為兩個主要類別,分別是用于推薦的判別性LLM和生成性LLM。用于推薦的LLM的分類可以根據訓練方式進一步細分,不同方式之間的區別在圖3中有所說明。一般來說,判別性語言模型非常適合在范式(1)中嵌入,而生成性語言模型的響應生成能力進一步支持范式(2)或(3)。
3 用于推薦的判別性LLM
確實,所謂的在推薦領域的判別性語言模型主要是指BERT系列的模型[Devlin等人,2019]。由于判別性語言模型在自然語言理解任務中的專業性,它們通常被視為下游任務的嵌入骨干。這也適用于推薦系統。大多數現有的工作通過微調將像BERT這樣的預訓練模型的表現與特定領域的數據進行對齊。另外,一些研究探索了像提示調整這樣的訓練策略。代表性的方法和常用的數據集在表1和表2中列出。
3.1 微調
微調預訓練的語言模型是一種在各種自然語言處理(NLP)任務中,包括推薦系統,受到了顯著關注的通用技術。微調背后的思想是,采取一個已經從大規模文本數據中學習了豐富的語言表達的語言模型,并通過在特定任務的數據上進一步訓練它,使其適應特定的任務或領域。微調的過程包括用其學習到的參數初始化預訓練的語言模型,然后在針對推薦的特定數據集上訓練它。這個數據集通常包括用戶-物品互動、物品的文本描述、用戶配置文件和其他相關的上下文信息。在微調過程中,模型的參數根據特定任務的數據進行更新,使其能夠適應和專門用于推薦任務。在預訓練和微調階段,學習目標可以是不同的。由于微調策略是靈活的,大多數基于BERT增強的推薦方法可以歸納到這個軌道。對于基本的表示任務,邱等人(2021)提出了一種新的基于預訓練和微調的方法U-BERT來學習用戶的表示,該方法利用內容豐富的領域來補充那些行為數據不足的用戶特征。設計了一個評論共匹配層來捕獲用戶和物品評論之間的隱式語義交互。同樣,在UserBERT [Wu et al., 2021b]中,加入了兩個自我監督任務,對未標記的行為數據進行用戶模型預訓練,以增強用戶建模。這個模型利用中等難度的對比學習、遮蔽行為預測和行為序列匹配,通過捕捉內在的用戶興趣和相關性,訓練精確的用戶表示。
預訓練的BERT在排名任務中取得了突破性的成就。BECR [Yang等人,2022]提出了一種輕量級的復合重新排名方案,該方案同時結合了深度上下文token交互和傳統的詞匯詞項匹配特性。通過新穎的復合token編碼,BECR有效地利用基于單字和跳字n-grams的可預計算token嵌入來逼近查詢表示,從而在臨時排名相關性和效率之間實現了合理的權衡。此外,Wu等人(2022)提出了一個端到端的多任務學習框架,用于產品排名,使用領域特定的BERT進行微調,以解決查詢和產品之間的詞匯不匹配問題。作者利用了專家混合層和任務之間的概率轉移,以利用豐富的用戶參與數據。還有許多其他特定任務或場景的相關研究,例如團隊推薦[Zhang等人,2022],搜索/匹配[Yao等人,2022],CTR預測[Muhamed等人,2021]。特別地,"預訓練,微調"機制在幾個順序或基于會話的推薦系統中起到了重要作用,如BERT4Rec [Sun等人,2019],RESETBERT4Rec [Zhao,2022]。然而,上述模型只是利用了訓練策略的優勢,而沒有將大型語言模型擴展到推薦領域,因此不是我們討論的重點。序列表示學習模型UniSRec [Hou等人,2022]開發了一個BERT微調框架,將項目的描述文本關聯起來,在不同的推薦場景中學習可轉移的表示。對于基于內容的推薦,特別是新聞推薦,NRMS [Wu等人,2021a],Tiny-NewsRec [Yu等人,2022],PREC [Liu等人,2022],利用大型語言模型通過處理已知的領域轉移問題或減少轉移成本來增強新聞推薦。總的來說,將BERT微調集成到推薦系統中,融合了強大的外部知識和個性化的用戶偏好,主要目標是提高推薦準確性,同時獲得對具有有限歷史數據的新項目的一些冷啟動處理能力。
3.2 提示調優
與設計特定目標函數來適應不同的下游推薦任務不同,提示調優 [Lester等人,2021]試圖通過硬/軟提示和標簽詞語 verbalizer,將推薦的調優對象與預訓練的損失對齊。例如,Penha和Hauff (2020)利用BERT的Masked Language Modeling (MLM)頭來通過cloze-style提示揭示其對項目類型的理解。他們進一步利用了BERT的Next Sentence Prediction (NSP)頭和表示的相似性 (SIM) 來比較相關和不相關的搜索和推薦查詢-文檔輸入。實驗表明,BERT在沒有任何微調的情況下,可以在排名過程中優先考慮相關項目。Yang等人 (2021)開發了一個帶有提示的對話推薦系統,其中一個基于BERT的項目編碼器直接將每個項目的元數據映射到一個嵌入中。最近,Prompt4NR [Zhang和Wang, 2023]率先應用了提示學習范式進行新聞推薦。這個框架重新定義了預測用戶點擊候選新聞的目標,作為一個cloze-style的 maskprediction任務。實驗發現,通過利用多提示集成,推薦系統的性能顯著提高,超過了在離散和連續模板上使用單一提示所達到的結果。這突出了提示集成在結合多個提示做出更明智決策方面的有效性。
**4 針對推薦的生成型LLMs **
相比于判別型模型,生成型模型具有更好的自然語言生成能力。因此,不像大多數基于判別模型的方法將LLMs學習到的表示與推薦領域對齊,大多數基于生成模型的工作將推薦任務翻譯為自然語言任務,然后應用像在上下文中學習,提示調優,和指導調優這樣的技術,來適應LLMs直接生成推薦結果。此外,隨著ChatGPT展示出的令人印象深刻的能力,這類工作近來受到了更多的關注。如圖2所示,根據是否調整參數,這些基于生成型LLM的方法可以進一步劃分為兩種范例:無調優范例和調優范例。以下兩個小節將分別討論它們的細節。代表性的方法和常用的數據集也在表1和表2中列出。
4.1 無調整范式
LLMs在許多未見任務中展示出強大的零/少量樣本學習能力 [Brown et al., 2020; Ouyang et al., 2022]。因此,一些最近的研究假設LLMs已經具有推薦能力,并試圖通過引入特定的提示來觸發這些能力。他們采用了最近的Instruction和In-Context Learning [Brown et al., 2020]實踐,以在不調整模型參數的情況下將LLMs適應推薦任務。根據提示是否包含示例,這個范式中的研究主要屬于以下兩類:提示和上下文學習。
提示范例 這類工作旨在設計更適合的指示和提示,幫助LLMs更好地理解和解決推薦任務。Liu等人(2023a)系統地評估了ChatGPT在五個常見推薦任務上的表現,即評分預測,序列推薦,直接推薦,解釋生成和評論摘要。他們提出了一個通用的推薦提示構建框架,包括:(1)任務描述,將推薦任務適應為自然語言處理任務;(2)行為注入,將用戶-項目交互納入,幫助LLMs捕獲用戶的喜好和需求;(3)格式指示器,約束輸出格式,使推薦結果更容易理解和評估。同樣,Dai等人(2023)對ChatGPT在三個常見信息檢索任務(包括點對點,對對,和列表排序)上的推薦能力進行了實證分析。他們為不同類型的任務提出了不同的提示,并在提示的開頭引入了角色指示(例如,你現在是一個新聞推薦系統。)來增強ChatGPT的領域適應能力。除了提出一般框架外,有些工作專注于為特定推薦任務設計有效的提示。Sileo等人(2022)從GPT-2的預訓練語料庫中挖掘出了電影推薦提示。Hou等人(2023)介紹了兩種提升LLMs序列推薦能力的提示方法:以近期為重的序列提示,使LLMs能夠感知到用戶交互歷史中的序列信息,和引導法,將候選項目列表多次洗牌并取平均得分進行排名,以緩解位置偏見問題。由于LLMs允許的輸入token數量有限,很難在提示中輸入一個長的候選列表。為解決這個問題,Sun等人(2023)提出了一種滑動窗口提示策略,每次只在窗口中對候選項進行排序,然后以從后到前的順序滑動窗口,最后重復這個過程多次,以獲得總體排名結果。
除了將LLMs作為推薦系統,一些研究還利用LLMs來構建模型特征。GENRE [Liu等人,2023c]引入了三個提示,使用LLMs進行新聞推薦的三個特征增強子任務。具體來說,它使用ChatGPT根據摘要優化新聞標題,從用戶閱讀歷史中提取關鍵詞,并生成合成新聞以豐富用戶的歷史交互。通過整合LLMs構建的這些特征,傳統的新聞推薦模型可以得到顯著改善。類似地,NIR [Wang和Lim,2023]設計了兩個提示來生成用戶偏好關鍵詞,并從用戶交互歷史中提取代表性電影,以改進電影推薦。
在實踐中,除了排序模型外,整個推薦系統通常由多個重要組件組成,如內容數據庫、候選檢索模型等。因此,另一種利用LLMs進行推薦的方法是將它們作為整個系統的控制器。ChatREC [Gao et al., 2023]圍繞ChatGPT設計了一個交互式推薦框架,該框架通過多輪對話理解用戶需求,并調用現有推薦系統提供結果。此外,ChatGPT可以控制數據庫檢索相關內容以補充提示,并解決冷啟動項目問題。GeneRec [Wang et al., 2023]提出了一種生成性推薦框架,并使用LLMs控制何時推薦現有項目或通過AIGC模型生成新項目。總的來說,這些研究利用自然語言提示激活LLM在推薦任務中的零樣本學習能力,提供了一種低成本且實用的解決方案。
4.2 調整范式
如上所述,LLMs具有強大的zero/few-shot能力,通過適當的提示設計,它們在推薦性能方面可以顯著超越隨機猜測。然而,僅以這種方式構建的推薦系統往往無法超越專門針對特定任務和特定數據訓練的推薦模型的性能。因此,許多研究人員通過進一步的微調或提示學習來增強LLMs的推薦能力。在本文中,我們按照[Wei等,2022]的分類,將調整方法的范式劃分為兩種不同類型,分別是提示調整和指令調整。具體而言,在提示調整范式下,LLMs的參數或軟提示針對特定任務進行微調,例如評分預測;而在指令調整范式下,LLMs通過在不同類型的指令下對多個任務進行微調來獲得更好的性能。然而,目前對于這兩種微調范式還沒有明確的劃分或普遍接受的定義。
5 發現
在本綜述中,我們系統地回顧了大型語言模型在推薦系統中的應用范式和適應策略,特別是針對生成式語言模型。我們已經確定了它們在特定任務中改進傳統推薦模型性能的潛力。然而,需要注意的是,這個領域的整體探索仍處于早期階段。研究人員可能會發現確定最值得研究的問題和痛點是具有挑戰性的。為了解決這個問題,我們總結了許多大規模模型推薦研究中提出的共同發現。這些發現突出了一些技術挑戰,并呈現了進一步發展的潛在機會,包括模型偏見、提示設計和評估。
6 結論
本文回顧了大型語言模型(LLMs)在推薦系統領域的研究。我們將現有的工作分為判別模型和生成模型,并通過領域適應方式對其進行了詳細闡述。為了防止概念混淆,我們對LLM-based推薦中的微調、提示、提示調整和指令調整進行了定義和區分。據我們所知,我們的調查是專門針對生成式LLMs在推薦系統中的首次系統且最新的綜述,進一步總結了許多相關研究中提出的共同發現和挑戰。因此,本調查為研究人員提供了寶貴的資源,幫助他們全面了解LLM推薦,并探索潛在的研究方向。
導讀 今天給大家分享一下推薦系統在近年來的整體技術發展。文中的很多觀點和技術都參照于業界的論文以及一些外部的文章。
全文目錄如下:
**01****推薦系統技術架構 **
整個推薦技術,經過幾年的發展已經比較完善,上圖展示了推薦系統的一個整體架構,分為數據和推薦模型兩層。
1. 數據層
數據層主要是通過客戶端以及服務端的實時數據,經過流處理的平臺,把用戶的信息、商品的信息、場景的信息以及端側的信息全部都收集全。基于這些信息,再通過特征工程的很多方法,如歸一化、離散化、非線性離散等很多的變換,把特征處理成下游模型處理的方式。處理完后一般會放在特征存儲中,如 KV 存儲: Redis、阿里的 iGraph 等;
2. 模型層
通過離線訓練完后的模型一般會導到線上,通過線上服務的方式直接對整個推薦系統進行服務。模型的訓練也有很多的方式,現在業界比較流行的有 TensorFlow 、 PyTorch 或者阿里巴巴的 PAI 都可以通過離線 + 在線實時訓練的方式對模型進行加工。(1)全鏈路干預模型加工完后,會對整個推薦鏈路從召回、到粗排、到精排、到重排進行全鏈路的干預。其中在粗排階段,一致性、全鏈路、高性能這三個特點是整個粗排需要關注的。重排階段是最近幾年發展起來的,由于整個技術棧都比較成熟,所以在端側可以部署準實時的模型,包括阿里這邊開源的 EdgeRec 。除了整個的召回、粗排、精排和重排之外,還有很多的冷啟動策略、E&E 策略,包括很多適配的策略。往往經過排序完之后的結果并不是整個推薦系統最終給用戶呈現的結果,這里需要做多樣性的、信任性的、疲勞度的控制、分頁過濾等等,最終才得到整個的推薦的結果。后面的分享會圍繞召回、粗排、精排、重排以及用戶理解和特殊處理進行一些簡單的探討。
02 **用戶理解 **
首先是用戶理解,這張圖展示了最近幾年來用戶理解的發展歷程。
1. 用戶理解可以從下往上分為數據、洞察和理解三層
(1)數據層數據層主要是要更全面、更實時、更準確地把用戶、場景、待推薦的物品等各個方面的數據特征的收集全。這里包含用戶的基礎信息、還有行為信息、時空信息以及端的信息,需要有一些比較成熟的端的實時的框架來支持。(2)洞察層在數據層之上要做一些比較深入的洞察,包括:① 關于用戶價值的洞察。② 行為模式的洞察。③ 生命周期的洞察。每一層的洞察又包含了很多標簽的建設:需求強度的建設、敏感度的建設以及行為序列的模式等。(3)理解層在洞察之上會有一層更高抽象的理解。2. 業界學術及實戰分類:顯式和隱式通過業界的學術及實踐,可以分為顯式和隱式兩類。(1)顯式① 對召回的用戶行為做篩選:如物料和類目等;② 標簽的抽取;③ 群體的理解:包括通過聚類、 Looklike 等方式;④ 更高層面的意圖的推斷。這種意圖的推斷主要集中在顯式的意圖的推斷,包括購買力的推測、類目、品牌屬性的預測。⑤ 另外一個是最近比較興起的關于用戶生命周期的理解。 需要對用戶的整個行為做理解,從用戶的瀏覽到購買到決策到結束整個生命周期,在整個生命周期內去推測用戶的意圖和偏好。(2)隱式除了顯式之外,另外一個是在學術界研究比較多的隱式。主要是對用戶的多個行為做隱式的表達、做向量的表達,以及做一些模糊的表達。如單序列或者多模態的行為表達,有短的、長的、超長的行為序列的表達,還有超長生命周期的表達等等。
03 召回技術
有了用戶理解之后,就是召回的技術,召回技術可以分為工程和召回算法兩部分。
1. 工程側
對于整個召回來說,工程側起到非常大的作用,因為召回一般都是多通道的召回,這里面對性能的影響會比較大,所以工程側需要一個更強的技術架構。
上圖左側是一個召回側的技術架構:把用戶的特征、商品特征和行為的特征通過多種類型的召回模型,包括通過向量的方式、相似矩陣的方式,弱個性化方式等等幾十種召回通道之后,再通過向量檢索的方式或其他檢索的方式在線上做召回。
2. 召回算法
召回技術可以分為傳統的召回、知識的召回、表示的召回、匹配召回四大類型,當然還有一些召回類型可能是這四種類型的融合體。
(1)傳統召回
最近幾年,傳統召回使用的比較少了,但是在整個推薦系統里面,傳統召回一直占據著一個比較主要的位置。對于一個推薦系統,傳統召回已經可以解決大部分問題了。傳統召回里面,可以分為熱門召回,協同召回,還有基于內容的召回。這里有大家耳熟能詳的 SVD、Slim、gSlim、fSlim,還有大家經常用的 UserCF,以及包含它的 ItemCF、 Swing 等等,還有基于 UserCF、ItemCF 做的很多變種來去適配,召回率才能更好。還有大家最常見的內容召回,如屬性的召回。
(2)知識召回
最近幾年,隨著知識圖譜的發展,知識的召回顯得尤為重要。知識召回有很多優勢:① 第一個是知識召回的可解釋性比較強。② 第二個是知識召回整個線上實現的邏輯會比較簡單,性能會比較好。基于知識的召回主要是通過圖譜、或者通過一些規則標簽的方式建立。有了圖譜或者標簽之后,在上面可以做基于實體的召回、基于標簽的召回、基于路徑的推理,以及基于邏輯的表達。(3)表示召回表示召回是最近幾年整個學術界和工業界都在極力探索的,表示召回所帶來的提升是很大的,對整個工程的要求也比較高。表示召回的發展從最簡單的雙塔模型,到最近一些年基于 Graph-base 模型的相關推理。Graph-base 也經歷了一段時間,從基于簡單序列的,包括 DeepWalk、Node2Vec,到后面基于知識圖譜的知識的表達,類似于 TransE,KGAT,以及最近一些年基于 Graph的表達。表示的召回整體上可以分為:① 顯式行為的建模。② 隱式行為建模。③ 多興趣表征。④ 超長行為的建模。每一類其實都有一些代表性的算法,大家可以都去觀察一下。在顯式行為建模里面有GRE4Rec、DUPN、BERT4Rec。隱式行為建模里面有 XDM。多興趣表征里面有 MIND、SASNet,還有超長行為里面的。(4)匹配召回相對于傳統的表示召回,匹配召回為了更加精準的表征各種行為訓練,它對上層的模型的復雜度要求會更高一點。如傳統的 NCF,還有最近在阿里或者字節應用的比較成功的 TDM 和 DR。TDM 和 DR 是從檢索、模型、索引三個方面來對整個召回鏈路做優化。要求有更加復雜的匹配模型,同時兼顧候選集大規模召回的時效性。在整個召回技術的發展里面,特別是基于表示的召回和匹配的召回都需要對很多的負樣本做比較精準的采樣。
04****排序技術
1. 粗排技術迭代
接下來是排序技術,首先粗排技術的發展:(1)粗排模型的發展粗排這張圖是參考了阿里媽媽這邊的一些論文,經歷了數代的發展。① 初代模型在初代,整個粗排模型主要還是基于人工規則或后驗概率統計的。② 第二代模型到了第二代之后,粗排模型就開始有 LR 的模型,或者基于 XFTRL 相關的一些簡單的模型的表達。③ 第三代模型到了第三代之后就有了一些雙塔模型或三塔模型或者 FSCD 模型,模型里面主要是把用戶還有商品用來做表征,表征完了之后在上層再做一個匹配。④ 第四代模型到了第四代模型之后,性能要求更高,如 COLD 的模型、 AutoFAS 模型等。整個模型把特征和工程做了更加深入的優化。模型的發展是從后驗統計、線性模型、雙塔模型,到輕量的高精度深度模型,到最近一些年大家都在深入研究的端到端深度粗排。在端到端的更深度的粗排模型上,主要做了幾個方面:① 一方面是怎么與精排模型進行更好的深度的融合統一,包括粗排跟模型的蒸餾。② 另外一方面是真正地將最終的優化目標跟一致性的粗排保證一致,這個其實是很難的。③ 第三個就是隨著粗排模型越來越復雜,在性能上要求更高,所以需要比較強的工程效率優化 。(2)粗排優化階段面臨的問題特征應該怎么做交叉、性能應該怎么去做、這里還面臨著很多 SSB(嚴重的樣本選擇偏差)的問題。
2. 精排模型技術
接下來是精排技術的發展,這張圖也參考了很多的模型,在其基礎上又做了一些添加。精排技術的發展可以分為傳統模型時代和深度模型時代。(1)傳統模型時代在傳統模型時代,主要是基于 LR 展開。通過樣本分組做 MLR、通過特征交叉做 FM,通過 FM 做序列,通過樹模型的 GBDT 相關序列,XGBOST 序列,有實時性的、 FTRL、XFTRL 等 。(2)深度模型時代最近幾年,模型在深度模型時代是迭代比較快的,主要是基于 MLP 做了很多的變換。右邊這張圖按照上下兩部分 + 左右兩部分來看:下面這部分其實大家很多場景都用過,就是基于 MLP 到 Wide 和 Deep,同時基于 Wide 和 Deep 側分別做改進,有 DCN 、DPFM、 AFM、NFM 等等,他們都是針對于某一個部分做了優化,上面部分,主要是針對 MLP 里面的很多東西引進了更加先進的 Attention 、Product Layer 還有 GNN 等等。右側這部分主要是基于 AE 、強化學習或者 NCF 的變動。左側這部分主要是在引入 Attention 相關演化出來的,基于 DIN、DIEN、MIMN、 DSIN,還有 SIM,分別對長序列等等建模。整個排序技術的發展最終是要朝著多模塊、多任務、多目標還有多模態四個方向去做。在多任務、多目標、多模態三個方面都有比較經典的模型,比如多任務階段有 MMOE 和 PLE,多目標階段有帕累托最優,多模態方面有 MMGCN、 LOGO 等。(3)精排技術的模型演****進方向① 第一個是模型的目標:目標從一個要變成多個。② 第二個是模型的表達:模型需要有更加成熟的,更加復雜的結構來增強表達。③ 第三個是模型的容量:怎么在特征和信息擴充方面引入更多的特征處理,還有外部的信息讓模型的容量變大。
05****其它推薦算法方向
其它的推薦技術,這里選了幾個比較熱門的方向:冷啟動、偏置建模和可解釋性。1. 冷啟動冷啟動可以分為:① 基于后驗概率的群體統計。② 高效地利用屬性信息。③ 充分利用少量的標注數據的啟發式的探索。這里也有很多經典的論文,在此不做贅述,大家可以去看一下。冷啟動應該是現在業界很多的場景,如旅游、視頻、商品等很多地方都會面臨的一個問題,在模型建模方面怎么更好地利用全局的信息,群體的信息,以及更好地利用少量的交互數據來去把用戶的行為表征得更準確。2. 偏置建模在模型層面有很多方式去做建模,偏置建模是最近幾年比較熱的一個 topic。偏置建模主要可以分為位置偏差、曝光偏差和熱度偏差。當然還有其他的偏差,這里主要列舉了 3 個比較熱門的。這三個偏差建模里面也有很多經典的模型,包括 Click Model、曝光模型、基于正則化的和基于因果推斷的等等。3. 可解釋隨著推薦系統的發展,包括信息安全法,還有很多其他方面,對推薦系統的可解釋性要求也比較強。推薦系統的可解釋可以分為:① 怎么去基于其他用戶和基于商品去做可解釋。② 怎么基于文本和視覺做可解釋。③ 怎么通過社交的方式做可解釋。可解釋推薦是在給用戶提供推薦的列表時,給用戶解釋為什么會這樣推。能夠幫助提升整個推薦系統的說服力,以及對用戶的表征能力。
06 評估
最后,簡要介紹推薦系統 Metrics 的變化。 1. 整體指標隨著視頻等行業的興起,指標方案也在發生變化,主要可以分為:① 轉化率的指標。② 推薦類的指標,推薦質量類的指標。③ 消費滿意度的指標。這里面有傳統的 CTR、CVR、ECPM、客單價、DAU 類,也有多樣性、新穎性等很多指標,還有留存、停留時長等等。 2. 分階段指標推薦系統還是要以線上的 AB test + 離線指標兩者的融合才能有更好的說服力。推薦系統線上的指標是與所推薦的內容,包括場景密切相關的,所以說推薦系統的目標不一樣,所選擇的指標觀測也不一樣。這張圖可以分為離線和在線,上層的在線主要看的是整體指標,下面的離線主要是從召回、到粗排、到精排、到重排每個階段各個部分看的效果。在召回階段,大家比較常用的一些 Recall、Precision、F1、NS-recall、NS-precision 還有 Hit Rate 等等,基于場景的不一樣,還有很多去看 KL 散度、長尾判斷。在粗排階段,除了常用的 AUC、GUC、MAP 相關性指標之外,還有跟精排分數的一致性,這個是非常重要的,因為最終粗排要優化的目標還是要跟精排打分的盡量保持一致性。在精排和重排階段還是要面向場景化,除了要看正常的 AUC、GUC,還要看是不是要分類目去看 AUC、GUC,是不是要分人群、分場景,都是需要深入動態做的。以上就是今天分享的內容,感謝大家。
分享嘉賓 INTRODUCTION
陳祖龍
阿里巴巴
高級算法專家
2013 年畢業東北大學,先后在百度知識搜索部,淘寶搜索與推薦,飛豬技術算法,一直在做搜索、推薦等相關工作,曾在 WWW,KDD,SIGIR,CIKM,ICDE 等多個國際期刊和會議上發表二十多篇論文。
阿里最新ChatGPT在推薦任務上的表現評估,值得關注!
在過去的幾十年中,推薦系統取得了長足的進步,得到了廣泛的應用。然而,傳統的推薦方法大多是針對特定任務的,缺乏有效的泛化能力。最近,ChatGPT的出現通過增強會話模型的能力,大大推進了NLP任務。然而,ChatGPT在推薦領域的應用還沒有被深入研究。該文采用ChatGPT作為通用推薦模型,探索其將大規模語料庫中獲取的大量語言和世界知識遷移到推薦場景的潛力。具體地,我們設計了一套提示集,并在評分預測、序列推薦、直接推薦、解釋生成和評論摘要5種推薦場景下對ChatGPT的性能進行了評估。與傳統推薦方法不同,在整個評估過程中沒有對ChatGPT進行微調,僅依靠提示本身將推薦任務轉換為自然語言任務。進一步,探討了使用少樣本提示注入包含用戶潛在興趣的交互信息,以幫助ChatGPT更好地了解用戶需求和興趣。在Amazon Beauty數據集上的綜合實驗結果表明,ChatGPT在某些任務上取得了較好的效果,在其他任務上能夠達到基線水平。在兩個面向可解釋性的任務上進行了人工評估,以更準確地評估不同模型生成的內容的質量。人工評測表明ChatGPT能夠真正理解所提供的信息,并生成更清晰、更合理的結果。希望該研究能夠啟發研究人員進一步挖掘ChatGPT等語言模型提高推薦性能的潛力,為推動推薦系統領域的發展做出貢獻。
//www.zhuanzhi.ai/paper/c1a5e954689aace228e596f676da195e
1. 引用
作為解決信息過載和增強用戶體驗的關鍵技術,推薦系統在過去的十年中取得了長足的進步,被廣泛應用于各種web應用中,如產品推薦[32,49,51,59]、視頻推薦[39,54,66]、新聞推薦[55-57]、音樂推薦[27,47]等。同時,隨著深度學習的發展,推薦系統也經歷了多個階段。在早期,基于協同過濾的方法[5,6,44,62]主要用于從用戶-項目交互中對用戶的行為模式進行建模。后來,隨著用戶和項目邊信息被引入推薦系統,基于內容的推薦[36,37,40,53,58]和基于知識的推薦[2,8,16,18]因其能夠提供個性化推薦而受到關注。
然而,大多數傳統的推薦方法都是針對特定任務的。因此,針對不同的任務或應用場景,需要特定的數據來訓練特定的模型,缺乏高效的泛化能力。為了解決這個問題,研究人員將重點轉移到在推薦場景中實現預訓練語言模型(PLMs),因為PLMs表現出了令人印象深刻的適應性,可以顯著提高下游NLP任務的性能。為了有效地將用戶交互數據轉換為文本序列,設計了各種提示[64]來將用戶交互數據轉換為文本序列。P5[19]和M6-Rec[11]側重于構建基礎模型,以支持廣泛的推薦任務。
最近,ChatGPT的出現通過增強對話模型的能力,大大推進了NLP任務,使其成為企業和組織的有價值的工具。Chataug等[12]利用ChatGPT來重新表達句子以實現文本數據增強。Jiao等,[23]發現ChatGPT在高資源語言和低資源語言上的翻譯能力都與商業翻譯產品具有競爭力。Bang等人[3]發現ChatGPT在情感分析任務中比之前最先進的零樣本模型有很大的優勢。然而,ChatGPT在推薦領域的應用還沒有深入研究,ChatGPT是否能在經典推薦任務上表現良好仍然是一個開放的問題。因此,有必要建立一個基準對ChatGPT與傳統推薦模型進行初步評估和比較,從而為進一步探索大規模語言模型在推薦系統中的潛力提供有價值的見解。 為了彌補這一研究空白,直接將ChatGPT作為一個可以處理各種推薦任務的通用推薦模型,嘗試探索從大規模語料庫中獲取的廣泛的語言和世界知識是否可以有效地遷移到推薦場景中。我們的主要貢獻是構建了一個基準來跟蹤ChatGPT在推薦場景中的表現,并對其優勢和局限性進行了全面的分析和討論。具體地,設計了一套提示集,并在評分預測、順序推薦、直接推薦、解釋生成和評論摘要5個推薦任務上評估了ChatGPT的性能。與傳統推薦方法不同,在整個評估過程中沒有對ChatGPT進行微調,僅依靠提示本身將推薦任務轉換為自然語言任務。此外,還探索了使用少樣本提示注入包含用戶潛在興趣的交互信息,以幫助ChatGPT更好地了解用戶需求和偏好。
在Amazon Beauty數據集上的綜合實驗結果表明,從準確率的角度來看,ChatGPT在評分預測方面表現良好,但在序列推薦和直接推薦任務中表現較差,在某些指標上僅達到與早期基線方法相近的性能水平。另一方面,雖然ChatGPT在解釋生成和評論摘要等可解釋推薦任務的客觀評價指標方面表現不佳,但額外的人工評估表明,ChatGPT優于最先進的方法。這突出了使用客觀評價方法來準確反映ChatGPT真實可解釋推薦能力的局限性。此外,盡管ChatGPT在基于準確率的推薦任務中表現不盡如人意,但值得注意的是,ChatGPT并沒有在任何推薦數據上進行專門的訓練。因此,通過納入更多相關的訓練數據和技術,在未來的研究中仍有很大的改進潛力。相信該基準不僅揭示了ChatGPT的推薦能力,而且為研究人員更好地了解ChatGPT在推薦任務中的優勢和不足提供了一個有價值的起點。此外,我們希望該研究能夠啟發研究人員設計新的方法,利用語言模型(如ChatGPT)的優勢來提高推薦性能,為推薦系統領域的發展做出貢獻。
2. ChatGPT 推薦
使用ChatGPT完成推薦任務的工作流程如圖1所示,包括三個步驟。首先,根據推薦任務的具體特點構建不同的提示(第2.1節);其次,將這些提示信息作為ChatGPT的輸入,根據提示信息中指定的需求生成推薦結果;最后,通過細化模塊對ChatGPT的輸出進行檢查和細化,細化后的結果作為最終的推薦結果返回給用戶(章節2.2)。
2.1 針對任務的提示構建
本節研究ChatGPT的推薦能力,設計針對不同任務的提示。每個提示由三個部分組成:任務描述、行為注入和格式指示符。利用任務描述使推薦任務適應自然語言處理任務。行為注入旨在評估少樣本提示的影響,其中融入了用戶-物品交互,以幫助ChatGPT更有效地捕捉用戶偏好和需求。格式指標用于約束輸出格式,使推薦結果更易于理解和評估。
2.1.1評分預測。評分預測是推薦系統中的一項關鍵任務,旨在預測用戶對特定物品的評分。這項任務對于為用戶個性化推薦和改善整體用戶體驗至關重要。近年來,深度學習模型[20]和矩陣分解技術[26]的使用,有效地解決了推薦系統中的稀疏性問題。與LLM的創新推薦范式一致,我們在評分任務上進行了實驗,涉及制定兩種獨特的提示類型以引出結果。我們在圖2中提供了一些示例提示。
2.1.2 序列推薦。序列推薦是推薦系統的一個子領域,旨在根據用戶過去的順序行為預測用戶的下一個項目或行動。由于其在電子商務、在線廣告、音樂推薦等領域的潛在應用,近年來受到了越來越多的關注。在序列推薦中,研究人員提出了各種方法,包括循環神經網絡[31]、對比學習[68]和基于注意力的模型[52],以捕獲用戶-物品交互中的時間依賴和模式。為順序推薦任務族設計了三種不同的提示格式。這包括:1)根據用戶的交互歷史直接預測用戶的下一個項目,2)從候選列表中選擇一個可能的下一個項目,其中只有一個項目是積極的,并基于用戶的交互歷史,3)使用用戶之前的交互歷史作為基礎,預測特定項目是否會是用戶的下一個交互項目。這些提示格式旨在提高順序推薦的準確性和有效性,并以嚴格的學術原則為基礎。這些提示的例子可以在圖2中看到。
圖2: Beauty數據集上基于準確性的任務提示示例。黑色文本表示任務描述,紅色文本表示格式要求,藍色文本表示用戶歷史信息或少次信息,灰色文本表示當前輸入。
2.1.3 直接推薦。直接推薦,也稱為顯式反饋推薦或基于評分的推薦,是一類依賴用戶評分或評論形式的顯式反饋的推薦系統。與其他依賴隱式反饋(如用戶行為或購買歷史)的推薦系統不同,直接推薦系統通過考慮用戶的顯式偏好,能夠提供更加個性化和準確的推薦。對于這項任務,開發了項目選擇提示,從潛在候選人列表中選擇最合適的項目。這些提示格式基于嚴格的學術原則,旨在優化推薦的準確性和相關性。這些提示的例子可以在圖2中看到。
2.1.4 解釋的生成。解釋生成是指為用戶或系統設計人員提供解釋,以闡明為什么推薦這些項目。從而提高了推薦系統的透明性、說服力、有效性、可信性和用戶滿意度。此外,該模型便于系統設計人員對推薦算法進行診斷、調試和優化。ChatGPT等大型語言模型可以利用其包含的大量知識,通過用戶的歷史交互記錄來了解用戶的興趣,并為用戶的行為提供合理的解釋。具體來說,我們要求ChatGPT模型生成文本解釋,以證明用戶對所選物品的偏好,如圖3所示。對于每個類別,可以包含額外的輔助信息,如提示詞和星級評級。
2.1.5 Review總結。隨著人們對簡潔、易于理解的內容的需求不斷增長,自動生成摘要在自然語言處理中變得越來越重要。與解釋生成任務類似,我們創建了兩種類型的提示:零樣本提示/少樣本提示,并在圖3中提供了一些示例提示。
3.2 輸出Refinement
為了保證生成結果的多樣性,ChatGPT在其響應生成過程中加入了一定程度的隨機性,這可能會導致對于相同的輸入產生不同的響應。然而,在使用ChatGPT進行推薦時,這種隨機性有時會給評估推薦項目帶來困難。雖然prompt構造中的格式指示器可以在一定程度上緩解這個問題,但在實際使用中,它仍然不能保證預期的輸出格式。因此,我們設計了輸出細化模塊來檢測ChatGPT的輸出格式。如果輸出通過格式檢查,則直接將其作為最終輸出。如果沒有,則根據預定義的規則進行修改。如果格式校正成功,則將校正后的結果用作最終輸出。如果沒有,則將相應的提示輸入ChatGPT進行重新推薦,直到滿足格式要求。值得注意的是,在評估ChatGPT時,不同的任務對輸出格式有不同的要求。例如,對于評分預測,只需要一個特定的分數,而對于順序推薦或直接推薦,則需要一個推薦項目的列表。特別是對于序列推薦,一次性將數據集中的所有項目提供給ChatGPT是一個挑戰。因此,ChatGPT的輸出可能與數據集中的項集不匹配。針對這一問題,該文提出了一種基于相似度的文本匹配方法,將ChatGPT的預測結果映射回原始數據集。雖然該方法可能不能很好地反映ChatGPT的能力,但它仍然可以間接地展示其在序列推薦中的潛力
3 評價
為了評估ChatGPT,在Amazon真實數據集上進行了廣泛的實驗。通過與各種代表性方法和消融研究在不同任務上的性能比較,旨在回答以下研究問題: RQ1:與最先進的基準模型相比,ChatGPT的性能如何?
RQ2:少提示對性能有什么影響?
RQ3:如何設計人工評價來評估解釋生成和摘要任務?
**3.3.1 評分預測。**為了評估ChatGPT的評分預測性能,采用了零樣本和少樣本提示,從Beauty數據集上得到的結果總結在表1中。結果表明,對于Beauty數據集上看到的類別,少樣本提示在MAE和RMSE方面都優于MF和MLP。這些結果為利用條件文本生成框架進行評分預測的可行性提供了證據。
3.3.2 序列推薦。為了評估ChatGPT的序列推薦能力,我們分別進行了零樣本和少樣本實驗,實驗結果如表2所示。我們發現,與基線相比,ChatGPT在零樣本提示設置中的性能要差得多,所有指標都明顯低于基線。然而,在小樣本提示設置下,雖然ChatGPT在性能上有了相對的提升,例如NDCG@5超過了GRU4Rec,但在大多數情況下,ChatGPT仍然普遍優于經典的序列推薦方法。可能有兩個主要原因導致了這種結果:首先,在提示設計過程中,所有item都由它們的標題表示。雖然該方法可以在一定程度上緩解冷啟動問題,但可能導致ChatGPT更關注語義相似性而不是項目之間的遷移關系,而這對有效推薦至關重要。其次,由于提示信息的長度限制,無法將物品集合中的所有物品輸入ChatGPT。這導致ChatGPT在預測下一個物品的標題時缺乏約束,導致生成的物品標題在數據集中不存在。雖然可以通過語義相似性匹配將這些預測的標題映射到數據集中現有的標題,但實驗表明,這種映射并沒有帶來顯著的增益。因此,對于順序推薦任務,僅僅使用ChatGPT并不是一個合適的選擇。需要進一步探索引入更多的指導和約束,以幫助ChatGPT準確捕捉歷史興趣,并在有限的范圍內做出合理的推薦。
3.3.3直接推薦。表3展示了ChatGPT在直接推薦任務上的性能。與順序推薦不同,直接推薦要求推薦模型從有限的物品池中選擇與用戶最相關的物品。我們觀察到,在使用零樣本提示時,推薦性能明顯低于有監督推薦模型。這可以歸因于ChatGPT提供的信息不足,導致無法捕捉用戶興趣并生成更隨機的推薦。雖然少樣本提示可以通過提供用戶的一些歷史偏好來提高ChatGPT的推薦性能,但仍然未能超過基線性能。
結論
該文構建了一個評測ChatGPT在推薦任務中的性能的基準,并與傳統的推薦模型進行了比較。實驗結果表明,ChatGPT在評分預測上表現良好,但在順序推薦和直接推薦任務上表現較差,表明還需要進一步探索和改進。盡管有局限性,但ChatGPT在可解釋推薦任務的人工評價方面優于最先進的方法,突出了其在生成解釋和摘要方面的潛力。該研究對ChatGPT在推薦系統中的優勢和局限性提供了有價值的見解,希望能啟發未來探索使用大型語言模型來提高推薦性能的研究。展望未來,我們計劃研究更好的方法,將用戶交互數據納入大型語言模型,彌合語言和用戶興趣之間的語義鴻溝。
騰訊健康,騰訊醫典有多個個性化推薦場景,為了提高推薦效果,使用預訓練機制學習更完整的用戶表示。
用戶表示的學習是推薦系統模型中的重要一環。早期的方法根據用戶和項目之間的交互矩陣來學習用戶表達,但這些交互矩陣非常稀疏且矩陣中的值通常是粗粒度的,導致系統很難學習到準確的用戶表達。近期一些工作利用信息更加豐富的評論文本來增強用戶的表示學習,但對于冷門的領域或場景,評論文本的數量也不足以幫助其學習到完整準確的用戶表示。用戶的一些偏好(如評論習慣等)是在不同的領域或場景間共享的,我們可以利用數據豐富的場景下的評論幫助數據不豐富的場景的推薦。同時,受到近期自然語言處理領域中預訓練技術的啟發,本論文提出了一種基于預訓練和微調的兩階段推薦模型。如圖(a)所示,U-BERT包含兩個主要模塊能夠建模評論文本并將其語義信息和用戶的嵌入表達進行融合。在預訓練階段,我們設計了兩種新的預訓練任務能夠充分地利用不同場景下積累的評論文本來學習通用的用戶表達。如圖(b)所示,在微調階段,我們會根據特定場景下的評論數據對預訓練的用戶表示進行微調以適應當前場景下的特點。此外,在進行評分預測時,我們還設計了一個co-matching模塊以捕捉細粒度的語義匹配信息來更好地預測用戶對項目的打分。實驗結果表明,本文提出的推薦模型在多個開放數據集上取得了性能提升。
//34.94.61.102/paper_AAAI-2116.html
第14屆推薦系統頂級會議ACM RecSys在9月22日到26日在線舉行。來自意大利Polytechnic University of Turin做了關于對抗推薦系統的教程《Adversarial Learning for Recommendation: Applications for Security and Generative Tasks – Concept to Code》,186頁ppt,干貨內容,值得關注。
//recsys.acm.org/recsys20/tutorials/#content-tab-1-3-tab
對抗式機器學習(AML)是從識別計算機視覺任務中的漏洞(如圖像分類)開始,研究現代機器學習(ML)推薦系統中的安全問題的研究領域。
在本教程中,我們將全面概述AML技術在雙重分類中的應用:(i)用于攻擊/防御目的的AML,以及(ii)用于構建基于GAN的推薦模型的AML。此外,我們將把RS中的AML表示與兩個實際操作會話(分別針對前面的分類)集成在一起,以顯示AML應用程序的有效性,并在許多推薦任務中推進新的想法和進展。
本教程分為四個部分。首先,我們總結了目前最先進的推薦模型,包括深度學習模型,并定義了AML的基本原理。在此基礎上,我們提出了針對RSs的攻擊/防御策略的對抗性推薦框架和基于GAN實踐環節。最后,我們總結了這兩種應用的開放挑戰和可能的未來工作。