当前位置: 首页 > news >正文

RPP:多智能体强化学习 + 长期个性化推荐

RPP:多智能体强化学习 + 长期个性化推荐

    • 提出背景
    • 目的
    • 问题
    • 解法
    • RPP 工作流程和组成部分
    • 实验结果

 


论文:https://arxiv.org/pdf/2407.17115

代码:https://github.com/maowenyu-11/RPP

提出背景

问题:

  • 大模型在推荐系统中虽然具有强大的语义理解、意图推理和知识利用能力,但现有研究大多采用统一的提示模板,忽视了用户个体差异,这可能导致推荐系统无法准确捕捉到每个用户的个性化偏好。

解决方法:

  • 为了解决上述问题,提出了实例导向的提示策略(Instance-wise Prompting),即通过为每位用户定制个性化的提示来提升推荐的相关性和准确性。
  • 使用强化提示个性化(Reinforced Prompt Personalization, RPP)技术,这是一种基于多代理强化学习(MARL)的方法,用于优化个性化提示。
  • RPP通过选择最优的句子而不是逐字优化,来提升效率并保证提示的质量。
  • RPP+在RPP的基础上增加了动态优化动作的机制,以进一步提升个性化提示的灵活性和推荐系统的性能。

对比:

  • 与传统的推荐系统相比,传统系统可能依赖于固定算法和统一的用户画像,而RPP/RPP+通过个性化提示,能够更细致地捕捉用户的即时偏好和长期兴趣。
  • 与任务导向的提示设计相比,任务导向的提示是为所有用户应用相同的模板,而实例导向的提示则是为每个用户定制不同的提示,以更好地适应其独特性。

类比:

  • 可以类比为个性化教育,其中教师根据每个学生的特点和需求定制教学计划,而不是对所有学生使用相同的教学方法。
  • 另一个类比是个性化医疗,医生根据病人的具体情况开具个性化的药物和治疗方案,而不是所有病人都采用标准治疗流程。

RPP/RPP+的核心优势在于其能够为每个用户提供定制化的服务,而不是采用一种通用的方法。

这种方法在推荐系统中尤为重要,因为它能够显著提高推荐的个性化程度和用户满意度。

论文大纲:

├── 1 文献标题【描述研究主题】
│   └── 加强化提示个性化用于大型语言模型的推荐【研究主题】
├── 2 作者信息【列出作者和机构】
│   ├── 文玉毛,中国科学技术大学【作者和机构】
│   └── 何向楠,中国科学技术大学,脑启发智能感知与认知教育部重点实验室【作者和机构】
├── 3 摘要【概述研究内容和贡献】
│   ├── 设计有效提示以增强LLMs的理解用户偏好和提供推荐的能力【研究内容】
│   └── 提出并评估了RPP/RPP+方法【研究贡献】
├── 4 引言【描述背景和问题】
│   ├── 大型语言模型(LLMs)在推荐系统中的潜力【背景介绍】
│   └── 现有研究集中于任务式提示,忽视了用户个体差异【问题描述】
├── 5 方法论【介绍研究方法】
│   ├── 任务式提示与实例式提示的对比【方法对比】
│   └── RPP/RPP+框架的提出【方法介绍】
│       ├── 输入【用户特征和候选项目】
│       │   ├── 用户表示【嵌入向量】
│       │   └── 候选项目列表【用于推荐的物品】
│       ├── 处理过程【MARL优化】
│       │   ├── 多智能体强化学习(MARL)【技术手段】
│       │   │   ├── 各智能体独立策略网络【个性化提示模式】
│       │   │   └── 中央训练与分散执行(CTDE)范式【训练与执行模式】
│       │   ├── 行动空间设计【方法细节】
│       │   │   ├── 角色扮演、历史记录、推理指导、输出格式【四种模式】
│       │   │   └── 句子级优化【提升搜索效率】
│       │   └── 状态空间与奖励函数定义【方法细节】
│       │       ├── 状态更新【当前提示和LLMs的排名输出】
│       │       ├── 奖励函数【基于LLMs回答的NDCG】
│       │       └── 策略网络优化【Actor-Critic架构】
│       └── 输出【优化后的个性化提示】
│           ├── 个性化提示生成【MARL策略网络输出】
│           └── LLMs与提示交互【产生推荐结果】
│               ├── LLMs【作为环境】
│               └── 提示-响应循环【迭代优化过程】
├── 6 实验【展示研究结果】
│   ├── 使用不同数据集评估RPP/RPP+的有效性【实验设置】
│   └── RPP/RPP+与传统推荐模型和少量样本方法的比较【实验结果】
├── 7 相关工作【文献综述】
│   ├── LLMs在推荐系统中的应用【相关领域】
│   └── 提示优化方法的探讨【相关技术】
└── 8 结论【总结全文】├── 强调RPP/RPP+方法在推荐任务中的优势【研究总结】└── 讨论RPP/RPP+的潜在应用和局限性【未来展望】

├── 3 Methodology【方法论】
│   ├── 提升LLMs推荐能力【目标】
│   │   └── 通过RPP/RPP+个性化实例化提示【方法】
│   ├── 将提示个性化视为马尔可夫决策过程【问题表述】
│   │   ├── MDP组成元素:状态集S、行动集A、转移函数T、奖励函数R、折扣因子γ【概念解释】
│   │   ├── 状态s包含当前提示和推荐结果信息【状态定义】
│   │   ├── 行动a对应特定模式的句子选择【行动定义】
│   │   ├── 转移函数t表示状态转移可能性【转移函数定义】
│   │   ├── 奖励函数r根据LLMs回答评估推荐性能【奖励函数定义】
│   │   └── 折扣因子γ控制对未来奖励的重视程度【折扣因子定义】
│   ├── 初始化提示p0并采用MARL优化个性化模式【初始化与优化】
│   │   ├── CTDE范式下的多智能体RL【优化范式】
│   │   ├── 每个智能体zk负责个性化特定模式【智能体职责】
│   │   └── 策略πk选择行动以生成个性化提示pt【策略生成】
│   ├── 设计有效的行动空间以平衡搜索效率和提示质量【行动空间设计】
│   │   ├── 行动空间由多个子空间组成,每个代表一种模式【子空间定义】
│   │   ├── 句子级优化提高效率【优化方法】
│   │   └── 行动集由人类和LLMs共同建立,确保任务相关性和分析多样性【行动集建立】
│   ├── 状态空间提供关键信息以指导智能体行动【状态空间定义】
│   │   ├── 初始化状态s0包含用户特定信息【初始化状态】
│   │   └── 更新状态st包含当前提示和LLMs排名输出【状态更新】
│   ├── 基于Actor-Critic的多智能体架构和奖励函数【架构与奖励】
│   │   ├── 每个智能体具有独立的参数和全局状态访问权限【智能体架构】
│   │   ├── 使用NDCG作为奖励,评估推荐性能【奖励评估】
│   │   └── 优化Actors和Critics的参数【参数优化】
│   └── 算法描述:输入初始化智能体和评价网络,输出优化后的智能体网络【算法流程】

目的

  • 提升大型语言模型(LLMs)的推荐能力。

问题

  • 如何自动且有效地个性化推荐系统中的提示(prompts)。

解法

  • 采用多智能体强化学习(MARL)框架RPP/RPP+进行个性化实例化提示。

子解法拆解:

  1. 行动空间设计(因为需要平衡搜索效率和提示质量)

    • 之所以使用行动空间设计,是因为需要从自然语言空间中选择动作,形成有效的提示。
    • 例子:在角色扮演模式中选择“你是电影专家”作为行动之一。
  2. 状态空间定义(因为需要提供关键信息以指导智能体行动)

    • 之所以使用状态空间定义,是因为必须包含当前环境的充分信息,如用户特定信息和当前提示。
    • 例子:初始化状态s0包含用户嵌入信息,以区分不同用户。
  3. 奖励函数定义(因为需要评估和指导推荐性能)

    • 之所以使用奖励函数定义,是因为要根据LLMs的回答来评估推荐性能。
    • 例子:使用归一化折扣累积增益(NDCG)作为奖励函数,评估推荐列表的质量。
  4. 策略网络架构(因为需要个性化每个模式)

    • 之所以使用策略网络架构,是因为每个智能体需要独立学习如何优化其负责的提示模式。
    • 例子:基于Actor-Critic架构,每个智能体优化其行动以提高推荐质量。
  5. MARL优化个性化(因为需要生成个性化的提示)

    • 之所以使用MARL优化个性化,是因为要针对每个用户的个性化信息生成定制化的提示。
    • 例子:智能体根据用户的历史互动记录个性化历史记录模式。

逻辑链:

  • 目的:提升推荐能力
    • 问题:自动个性化提示
      • 解法:MARL框架RPP/RPP+
        • 子解法1:行动空间设计
          • 逻辑链:个性化提示需要从自然语言中选择动作
        • 子解法2:状态空间定义
          • 逻辑链:智能体需要当前环境信息来指导行动
        • 子解法3:奖励函数定义
          • 逻辑链:推荐性能需要通过奖励函数来评估和指导
        • 子解法4:策略网络架构
          • 逻辑链:每个智能体需要独立学习优化个性化提示
        • 子解法5:MARL优化个性化
          • 逻辑链:个性化提示生成需要根据用户个性化信息

以决策树形式表示:

├── 提升推荐能力【目的】
│   └── 自动个性化提示【问题】
│       └── MARL框架RPP/RPP+【解法】
│           ├── 行动空间设计【子解法1】
│           │    └── 个性化提示需要从自然语言中选择动作【逻辑链】
│           ├── 状态空间定义【子解法2】
│           │    └── 智能体需要当前环境信息来指导行动【逻辑链】
│           ├── 奖励函数定义【子解法3】
│           │    └── 推荐性能需要通过奖励函数来评估和指导【逻辑链】
│           ├── 策略网络架构【子解法4】
│           │    └── 每个智能体需要独立学习优化个性化提示【逻辑链】
│           └── MARL优化个性化【子解法5】
│                └── 个性化提示生成需要根据用户个性化信息【逻辑链】

RPP 工作流程和组成部分

在这里插入图片描述
该框架通过多智能体强化学习(MARL)为每个用户个性化定制提示(prompts),以提高大模型在推荐任务中的表现。

  1. 角色扮演(Role-playing):在这个模式下,LLMs被赋予一个特定的角色,例如“电影专家”,这样可以帮助模型利用其在电影领域的知识来提供推荐。

  2. 历史记录(History records):这个模式涉及使用用户过去观看电影的历史记录作为上下文信息,以便更好地理解用户的偏好。

  3. 推理引导(Reasoning guidance):这个模式指导LLMs通过必要的推理步骤来做出推荐,例如通过思考过程(chain-of-thought)或计算候选电影与用户偏好的相似度。

  4. 输出格式(Output format):这个模式定义了LLMs输出的期望格式,例如仅输出电影的排名结果和顺序编号,而不包括其他解释性文本。

  5. 初始提示(Initial Prompt):这是在优化过程开始时使用的提示,通常包含从每个模式中随机选择的句子。

  6. 优化后的提示(Optimized Prompt):这是经过MARL优化后的提示,它根据用户的个性化信息生成,以最大化LLMs的推荐性能。

  7. 状态(State):在MARL中,状态包含了当前环境的关键信息,例如用户的历史记录和当前的提示。

  8. 行动空间(Action Space, A):这是智能体在每个时间步可以选择的动作集合,每个动作对应于提示中的一个特定句子。

  9. 奖励(Reward, r):这是智能体在与LLM环境交互后获得的反馈,通常是基于推荐性能的度量,如归一化折扣累积增益(NDCG)。

  10. “Refine” 模块:在RPP+中,这个模块允许LLMs在迭代过程中动态优化所选择的动作,以提高提示的灵活性和质量。

这张图展示了RPP框架如何通过个性化提示来增强LLMs的推荐能力,以及MARL如何在这一过程中优化关键的提示模式,最终实现更准确的用户偏好捕捉和推荐结果输出。

在这里插入图片描述
这张图介绍的是RPP(Reinforced Prompt Personalization,即“强化提示个性化”)框架,它是一种利用多智能体强化学习(MARL)技术来为每个用户个性化定制提示的方法。

  1. RPP框架:这是一个核心系统,它使用强化学习来定制个性化提示。

  2. 定义:RPP框架首先定义了几个关键部分,包括角色扮演、用户偏好和观看历史等。

  3. 优化:系统会不断优化这些定义的部分,以更好地适应每个用户的需求。

  4. 角色扮演:例如,系统可能会让语言模型扮演一个电影专家的角色。

  5. 用户偏好:系统会尝试捕捉和理解用户的偏好,比如他们喜欢什么类型的电影。

  6. 观看历史:通过分析用户过去观看的电影(如2部或4部电影),系统可以更好地了解用户的喜好。

  7. 最大化奖励:系统的目标是最大化奖励,这里的奖励可能是指推荐准确性或用户满意度。

  8. 初始提示:开始时,系统会生成一个初始的提示,告诉语言模型如何进行推荐。

  9. 优化提示:随着时间的推移,系统会优化这些提示,使其更加精确。

  10. 排名输出:最终,系统会输出一个排名列表,推荐用户可能感兴趣的电影。

  11. 候选影片:这些是系统根据用户偏好挑选出来的电影。

  12. MARL:多智能体强化学习是驱动整个系统优化过程的技术。

  13. 策略:系统会制定策略来优化提示。

  14. 细化模块:RPP+中的一个特性,用于进一步提升推荐结果的质量和灵活性。

  15. 个性化提示:最终,系统会为每个用户提供定制化的提示。

  16. RPP+:这是RPP的一个增强版本,它通过动态优化动作来进一步提升个性化推荐的灵活性和质量。

RPP框架就像一个聪明的电影推荐专家,它通过了解你过去的观影喜好,不断学习和调整,最终给你推荐你可能喜欢的电影。

而且,这个推荐过程会变得越来越精准,因为它会根据你的反馈不断优化推荐策略。

实验结果

在这里插入图片描述

  • Pop:这种模型就像去热门餐厅一样,它推荐那些大家都喜欢的东西,但可能不会考虑到每个人的不同口味。
  • BPRMF:这个模型就像一个侦探,它通过分析人们过去喜欢的东西(用户-项目交互矩阵),找出潜在的模式(潜在因子矩阵),然后根据这些模式来推荐新的东西。
  • SASRec:这种模型像一个有记性的朋友,它不仅记得你过去喜欢什么,还能预测你将来可能喜欢的东西。
  • BM25:这个模型就像一个图书馆的目录系统,它通过查找关键词(项目频率)来帮你找到相关的书籍(推荐项目)。
  • VQ-Rec:这种模型像是一个有组织的工具箱,它把每一件工具(项目)都分门别类地放好,这样当你需要时,就可以快速找到合适的工具。
  • UniSRec:这个模型像是一个多才多艺的艺术家,它通过阅读艺术品(项目描述文本)来理解不同的风格,然后用这些风格来创作新的艺术作品(推荐)。

RPP/RPP+ 通过实例级个性化提示,使 LLaMa2-7B-chat 在推荐性能上超越了传统推荐模型和少样本方法,更准确地捕捉用户个性化需求,提供更优质的推荐结果。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • AI Edge Torch - PyTorch 模型转换为 TensorFlow Lite 模型 (.tflite)
  • 让一切发生皆有利于我,在人生的长河中,我们常常面临诸多的不确定性和变化
  • AI模型常见的压缩技术分类
  • Prometheus+Grafana保姆笔记(1)——Prometheus+Grafana的安装
  • 【STM32系统】基于STM32设计的按键PWM控制舵机窗帘柜子门禁家居等控制系统——文末资料下载
  • docker上传镜像至阿里云
  • PHP Web服务全攻略:构建与消费的精粹指南
  • easyExcel2.1.6自动trim()的问题
  • 嵌入式八股-面试30题(20240812)
  • RocketMQ 是什么?它的架构是怎样的?和 Kafka 有什么区别?
  • 从分散到集中:TSINGSEE青犀EasyCVR视频汇聚网关在视频整体监控解决方案中的整合作用
  • 抖店飞鸽客服自动回复软件开发教程与下载体验(.NET版)
  • KCTF 闯关游戏:1 ~ 7 关
  • 取消Edge浏览器自带的JSON格式化插件
  • 斯坦福UE4 C++课学习补充19:黑洞技能
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • JS中 map, filter, some, every, forEach, for in, for of 用法总结
  • 分享一款快速APP功能测试工具
  • 2018天猫双11|这就是阿里云!不止有新技术,更有温暖的社会力量
  • Babel配置的不完全指南
  • Fastjson的基本使用方法大全
  • JS题目及答案整理
  • SQLServer插入数据
  • Web标准制定过程
  • 彻底搞懂浏览器Event-loop
  • 给初学者:JavaScript 中数组操作注意点
  • 工作手记之html2canvas使用概述
  • 关于extract.autodesk.io的一些说明
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 如何优雅地使用 Sublime Text
  • 如何在 Tornado 中实现 Middleware
  • 数据结构java版之冒泡排序及优化
  • 网页视频流m3u8/ts视频下载
  • 因为阿里,他们成了“杭漂”
  • 在Mac OS X上安装 Ruby运行环境
  • 在Unity中实现一个简单的消息管理器
  • # 利刃出鞘_Tomcat 核心原理解析(八)-- Tomcat 集群
  • #NOIP 2014# day.2 T2 寻找道路
  • $ git push -u origin master 推送到远程库出错
  • (04)odoo视图操作
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (补充):java各种进制、原码、反码、补码和文本、图像、音频在计算机中的存储方式
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (附源码)小程序 交通违法举报系统 毕业设计 242045
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (贪心) LeetCode 45. 跳跃游戏 II
  • (中等) HDU 4370 0 or 1,建模+Dijkstra。
  • .axf 转化 .bin文件 的方法
  • .NET C# 使用 iText 生成PDF
  • .NET Core 成都线下面基会拉开序幕
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .NET 常见的偏门问题
  • .Net程序猿乐Android发展---(10)框架布局FrameLayout
  • @TableLogic注解说明,以及对增删改查的影响
  • @取消转义