論文筆記:Large language model augmented narrative driven recommendations

RecSys 2023

代碼:iesl/narrative-driven-rec-mint: Mint: A data augmentation method for narrative driven recommendation.

1 intro

  • 盡管基于歷史交互的數據能夠有效地提供推薦,但用戶在請求推薦時,往往只是對目標物品有一個模糊的概念,或者希望推薦結果能夠根據其使用情境而變化,而這些上下文信息通常在歷史交互數據中缺失
    • 用戶常常會通過長篇敘述式查詢(long-form narrative queries)來描述他們的廣泛興趣和情境,從而請求推薦。這類信息訪問任務被稱為敘述驅動推薦(Narrative-Driven Recommendation, 簡稱 NDR)
    • 這類敘述性請求在討論論壇和某些 Reddit 子版塊中非常常見,但現有推薦系統對這種復雜自然語言查詢的支持仍然嚴重不足
  • 相較于傳統的搜索接口,用戶使用自然語言表達復雜主觀需求的情況正在顯著增加
  • 具有強大語言理解能力的大語言模型(LLMs)的出現,也為滿足此類復雜請求帶來了可能
  • 論文探索如何將傳統用于協同過濾推薦器訓練的歷史用戶-物品交互數據集,重新利用于支持 NDR 任務

2 問題定義

3 方法

  • 核心思想是重新利用豐富的用戶-物品交互數據集 I,借助大語言模型(LLM)生成敘述式查詢 qu?,從而構造訓練數據
  • 3.1?使用 LLM 生成敘述式查詢

  • 為了為用戶-物品交互數據集 I中的每位用戶生成敘述式查詢 qu,使用InstructGPT 模型作為查詢生成器 Qgen

  • 將用戶與項目交互所得的文本\{d_i\}_{i=1}^{N_u}作為 QGen 的 prompt,并指示模型生成一個敘述式查詢

LLM根據用戶的偏好和評論,模擬這位用戶可能在 Reddit 上發出的請求性帖文

3.2 為合成查詢篩選項目

  • 核心意思是:生成出來的敘述式查詢(narrative query)可能無法代表用戶所有興趣,所以需要對用戶的項目集合進行篩選,只保留那些與生成的查詢最相關的項目,來訓練檢索模型
    • 如果你用用戶的全部項目\{d_i\}_{i=1}^{N_u}來訓練模型,會加入很多與當前查詢無關的項目,這會增加噪聲、降低訓練效果。
  • ——>

3.3?檢索模型訓練

  • 基于上述合成數據訓練了 bi-encodercross-encoder 兩種模型
    • Bi-encoder 通常作為第一階段排序器,能夠從大規模項目集合中高效檢索
    • Cross-encoder 則允許更豐富的查詢-項目交互,常用于 reranking 階段。
    • 在這兩種模型中均使用了一個參數規模為 110M 的預訓練 Transformer 模型 MPNet,其結構類似于 BERT。
  • 在 bi-encoder 中,查詢和項目分別編碼為高維向量:
    • 通過L2 距離對項目進行排序
  • 在 cross-encoder 中,模型同時接收查詢和項目作為輸入,輸出一個打分:
  • 損失函數
  • 測試階段
    • 先用訓練好的 bi-encoder 檢索前 200 個項目,再用 cross-encoder 對其重新排序。
    • 實驗中對這兩個階段分別評估,分別命名為 BiEnc-MintCrEnc-Mint

4 實驗

4.1 數據

  • 使用Pointrec進行評估
    • 包含 112 個真實的敘述式查詢
    • 這些項目由眾包工人和/或論壇成員進行了分級相關性標注,并經數據集作者進一步驗證
    • 目前這是唯一公開的、帶人工標注和候選池的 NDR 測試集
  • 項目集合 CCC 包含約 70 萬個 POI,每個 POI 提供元信息(如類別、城市)和從 Bing 搜索引擎抓取的簡略描述
    • 僅對與查詢相關城市與類別(如“餐廳”)中的候選項目進行排序,遵循先前工作中避免無關項目干擾的做法
  • 使用 Yelp 的用戶-物品交互數據生成合成查詢用于訓練
    • 排除所有評論數少于 10 的用戶和 POI,確保所選用戶為高活躍度用戶
      • 這一篩選步驟參考了用戶-物品推薦系統中常見的預處理流程
    • 保留評分平均值大于 3/5 且有 10-30 條高于平均值評論的用戶,以偏向那些更擅長表達喜好(而非厭惡)的用戶
      • 這些用戶的興趣也更適合通過生成器建模。最終篩選后,Yelp 數據集中保留了 45,193 個用戶
    • 從中隨機選出 10,000 位用戶生成合成查詢。對每位用戶,我們從其 10 條評論中隨機選一句話,組成 prompt
    • 最終生成約 60,000 條訓練樣本
      • 生成所有查詢的成本約為 230 美元

4.2? 結果

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/86514.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/86514.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/86514.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

興達易控Modbus TCP轉Profibus DP網關與安科瑞多功能電表的快速通訊

興達易控Modbus TCP轉Profibus DP網關與安科瑞多功能電表的快速通訊 在工業自動化領域,不同設備之間的通信連接至關重要。興達易控Modbus TCP轉Profibus DP網關接APM810/MCE安科瑞多功能電表與300plc通訊,這一過程涉及到多個關鍵技術和環節,…

epoll實現理解

根據前文高性能網絡設計推演中,epoll作為一個“大殺器”為網絡開發提供強大的支持。Linux系統上IO多路復用方案有select、poll、epoll。其中epoll的性能表現最優,且支持的并發量最大。本文大概介紹epoll的底層實現。 一、示例引入 了解epoll開發&#…

協議轉換賦能光伏制造:DeviceNET轉PROFINET網關的通信質檢實踐

協議轉換賦能光伏制造:DeviceNET轉PROFINET網關的通信質檢實踐 某光伏電池片生產線創新性地將網關作為計算節點,通過搭載DeviceNET-PROFINET智能網關-穩聯技術WL-PN-DVNM,在協議轉換層直接運行AI質檢模型。DeviceNET端采集的高清圖像數據經網…

學習永無止境

已掌握以下每個,有屬于自己的一套架構方式: vue.element-ui:后臺管理 vue.uni-app:H5,小程序,Android,IOS php:??RESTful,服務,業務邏輯(如電商…

永磁無刷電機旋轉原理

目錄 1. 磁場的基本知識 2. 角速度,線速度,工程轉速 3.力和力矩 4. 慣量,轉動慣量 5. 電機的四種狀態 5.1 空載 5.2 帶載 5.3 滿載 5.4 堵轉 6. 功和功率 1. 磁場的基本知識 無頭無尾,轉了一圈,就叫有旋…

Ubuntu 物理桌面遠程訪問教程(基于 RealVNC / mstsc)

Ubuntu 物理桌面遠程訪問教程(基于 RealVNC / mstsc) 適用對象:任意安裝了 GNOME GDM 的 Ubuntu 系統 目標:遠程連接系統默認物理桌面 :0,無虛擬桌面、無 Xfce,真實 GNOME 桌面環境 1. 準備條件 Ubuntu 系…

Vue3 工程化實戰

Vue3 工程化實戰 引言:構建工具的演進與選擇 在前端工程化領域,構建工具的選擇直接影響開發效率與項目性能。隨著Vue3的普及,構建工具生態也發生了顯著變化:傳統vue-cli逐漸進入維護模式,而新一代構建工具Vite憑借其…

調用phantomjs(前端)插件生成ECharts圖片

package com.demo.common.utils; //json格式化工具,可以其他工具類 import cn.hutool.json.JSONUtil; import lombok.extern. public class FileUtil { /** * 調用phantomjs(前端)插件生成ECharts圖片 * @param path 根路徑 * @param option ECharts配置J…

React Hooks詳解

React Hooks 常考內容 React Hooks 是 React 16.8 引入的重要特性,用于在函數組件中使用狀態和其他 React 特性。以下是面試中常考的核心內容: 基礎 Hook useState: 用于管理組件內部狀態,返回狀態變量和更新狀態的函數。useEffect: 處理副…

c++17標準std::filesystem常用函數

std::filesystem 是 C17 引入的標準庫&#xff0c;用于處理文件系統操作&#xff0c;提供了跨平臺的文件和目錄操作能力。以下是一些常用的函數和類&#xff1a; 一、路徑操作&#xff08;std::filesystem::path&#xff09; cpp 運行 #include <filesystem> namespa…

非結構化文檔的自動化敏感標識方法技術解析

在數字化時代&#xff0c;企業與組織面臨的數據形態正發生深刻變革。據統計&#xff0c;非結構化數據占企業數據總量的 80% 以上&#xff0c;涵蓋文本、郵件、PDF、日志、社交媒體內容等多種形式。這些數據中往往蘊含著大量敏感信息&#xff0c;如個人身份信息、商業機密、醫療…

c語言中的字符類型

字符類型 char char是一種整數&#xff0c;也是一種特殊的類型&#xff1a;字符。 #include <stdio.h> int main(){char c,d;c 1; //把整數1賦值給變量cd 1; //把字符‘1’賦值給變量dif (c d){printf("相等");}else{printf("不相等\n");…

Cribl stream 管道對時間的改變時區

先說一下時區的重要性&#xff0c;要是cribl 時區是UTC&#xff0c;但是過來數據是GTM8 就是中國時區&#xff0c;那么數據過來&#xff0c;就可能在后端的Splunk 沒有顯示&#xff0c;那么解決這個問題&#xff0c;cribl 管道引入了auto timestamp 的功能&#xff1a; 注意到&…

深度學習:PyTorch卷積神經網絡(1)

本文目錄&#xff1a; 一、CNN概述二、CNN日常應用三、CNN的卷積層&#xff08;一 &#xff09;基本介紹&#xff08;二&#xff09;卷積層計算1.對輸入數據的要求2.卷積核核心參數3.計算過程4.特征圖尺寸計算5.1、多通道卷積計算5.2、多卷積核計算6.PyTorch卷積層API 前言&…

linux網絡編程socket套接字

套接字概念 Socket本身有“插座”的意思&#xff0c;在Linux環境下&#xff0c;用于表示進程間網絡通信的特殊文件類型。本質為內核借助緩沖區形成的偽文件。 既然是文件&#xff0c;那么理所當然的&#xff0c;我們可以使用文件描述符引用套接字。與管道類似的&#xff0c;L…

Python 數據分析與可視化 Day 5 - 數據可視化入門(Matplotlib Seaborn)

&#x1f3af; 今日目標 掌握 Matplotlib 的基本繪圖方法&#xff08;折線圖、柱狀圖、餅圖&#xff09;掌握 Seaborn 的高級繪圖方法&#xff08;分類圖、分布圖、箱線圖&#xff09;熟悉圖像美化&#xff08;標題、標簽、顏色、風格&#xff09;完成一組學生成績數據的可視化…

CephFS “Client Failing to Respond to Cache Pressure“ 告警分析

告警含義 當出現 Client failing to respond to cache pressure 警告時,表明: 元數據服務器 (MDS) 要求客戶端釋放緩存的元數據(如 inode Capabilities)客戶端未能及時響應 釋放請求核心觸發機制 MDS 通過以下周期性流程管理緩存 階段操作觸發條件Cache Trim 周期每隔 mds…

生成式人工智能實戰 | 生成對抗網絡(Generative Adversarial Network, GAN)

生成式人工智能實戰 | 生成對抗網絡 0. 前言1. 生成對抗網絡2. 模型構建2.1 生成器2.2 判別器 3. 模型訓練3.1 數據加載3.2 訓練流程 0. 前言 生成對抗網絡 (Generative Adversarial Networks, GAN) 是一種由兩個相互競爭的神經網絡組成的深度學習模型&#xff0c;它由一個生成…

緩存與加速技術實踐-MongoDB數據庫應用

一.什么是MongoDB MongoDB 是一個文檔型數據庫&#xff0c;數據以類似 JSON 的文檔形式存儲。 MongoDB 的設計理念是為了應對大數據量、高性能和靈活性需求。 MongoDB 使用集合&#xff08;Collections&#xff09;來組織文檔&#xff08;Documents&#xff09;&#xff0…

聲網對話式AI把“答疑機器人”變成“有思維的助教”

作為一家專注初高中學生的線上教育平臺&#xff0c;我們精心打磨的系統化課程收獲了不少認可&#xff0c;但課后無人答疑的難題卻始終橫亙在前。學生課后遇到疑惑&#xff0c;要么只能默默憋在心里&#xff0c;要么就得苦苦等待下一節課&#xff0c;家長們也頻繁抱怨 “花了錢&…