2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

强化学习在推荐算法的应用论文整理(一)

  • 2019-11-29
  • 本文字数:1934 字

    阅读完需:约 6 分钟

强化学习在推荐算法的应用论文整理(一)

一. 京东在强化学习的几篇文章


Deep Reinforcement Learning for List-wise Recommendations


本文将推荐的过程定义为一个序列决策的问题,通过 Actor-Critic 算法来进行 List-wise 的推荐。


模型结构:Actor-Critic



主要贡献:


  • 构建了一个线上环境仿真器,用于输出从未出现过的状态动作对的奖励,然后可线下对 Actor-Critic 网络参数进行训练。

  • 构建了基于强化学习的 List-wise 推荐系统。


  1. Recommendations with Negative Feedback via Pairwise Deep Reinforcement Learning


主要创新点:考虑负反馈以及商品的偏序关系,并将这种偏序关系建模到 DQN 的 loss 函数中。


若一个商品能够找到其偏序关系(两个商品必须是同一类别,用户反馈不同,推荐时间要相近)的物品,此时模型即希望预估的 Q 值和实际的 Q 值相近,同时又希望有偏序关系的两个商品的 Q 值差距越大越好。


框架:



  1. Reinforcement Learning to Optimize Long-term User Engagement in Recommender Systems


新颖处:状态中加入了用户的反馈、停留时长。


MDP 建模:


  • 状态:初始的状态 s1={u},即只有用户的信息。当进行了第一次推荐后,状态变为 s2={u,(i1,f1,d1)}。当推荐过 t-1 个物品后,状态 st = {u,(i1,f1,d1),(i2,f2,d2),…,(it-1,ft-1,dt-1)}。即 st = st-1 + {(it-1,ft-1,dt-1)}。这里 it-1 代表第 t-1 时刻推荐的物品,ft-1 表示用户对物品 it-1 作出的反馈,dt-1 表示用户对推荐的物品 it-1 的停留时间。

  • 动作:可推荐的物品的集合,时刻 t 的动作就是该轮推荐的物品 it。

  • 状态转移概率:p(st+1| st,it)

  • 奖赏:点击次数、滑动深度和用户下次访问 APP 的时间奖励这三者的加权平均。

  • 模型分为 Q 网络和 S 网络,其中 Q 网络来拟合状态动作对的价值函数,S 网络是一个仿真环境,用于输出奖赏值。



可以看到最终的 state 表示是(4 个 LSTM 模块提取的输出 + 用户的 embedding) +item 的 embedding 表示,模型的更新和传统的 DQN 没什么区别。这里为什么要用 4 个 LSTM 呢?因为只用一个 LSTM 的话,正向行为(点击或购买)的信息容易被大都数负向行为所冲刷掉。并且用户不同的行为都有自己的特征。比如点击行为通常表现出用户的当前兴趣偏好;购买行为表现出用户的兴趣转移过程等等。



输出共有四部分,分别是预测用户的反馈形式、预测用户的停留时间、预测用户再次进入 App 的时间间隔、预测用户是否会关闭 APP。通过训练,得到的模型就可以去预估奖赏值,从而构造完整的 transition 样本用于 Q 网络的训练。


  1. Toward Simulating Environments in Reinforcement Learning Based Recommendations


基于 gan,提出了一种 RL 的仿真环境,用于产生训练数据。有 gan 就会有 generate 和 discriminator,其中 generate 的结构为:



为 encoder-decoder 结构,其中 encoder 的输入为用户的浏览序列 e+f(商品+用户对商品的反馈),然后经过 embedding 层,然后再 concat 起来,最后通过 GRU 层得到最终的 hidden state,表示用户当前的偏好。Deocder 的目标是预测下一个要推荐给用户的商品,输入是用户当前的偏好,经过多层的 MLP 得到一个向量。为了得到一个具体推荐的商品,可以拿所有待推荐的商品 embedding 分别和 decoder 输出的向量计算相似度,选择相似度最高的一个商品推荐给用户。


Discriminator 结构:



上图左下角的输入和 generator 一样,但是参数不同。右下角把真实的推荐商品和 generator 生成的推荐商品作为输入,经过两层 MLP 得到输出 [公式],然后将两部分输出 concat 起来经过 MLP 和 softmax 层得到最终的输出,长度为 2*K,其中 K 代表用户反馈类型的种类。输出结果为:



输出前 k 维表示如果这个输入的是真实的商品(这里的真实商品即用户在当前状态下,下一个实际浏览的商品)的话,用户的每种反馈的概率,后 K 维表示,如果这个输入是 Generator 产生的话,用户的每种反馈的概率。


那么怎么训练 Discriminator 和 Generator 呢?对于 Discriminator 来说共有两个目标,判断输入是真实的商品还是 Generator 产生的,同时,要保证用户真实的反馈和 Discriminator 得到的用户反馈类型分布的差距要大。对于 Generator 来说,同样有两部分的损失,一是希望能尽可能骗过 Discriminator,使得 Discriminator 将 Generator 产生的推荐商品判别为假的概率越低越好,二是希望产生的推荐商品向量,与真实序列中下一个商品的向量距离越近越好。


总结来说,使用 GAN 还是为了解决 RL 应用在电商领域中的一些限制:比如商品和用户数量巨大,导致整个的状态空间和动作空间十分巨大,每个用户的训练样本较稀疏,这样直接训练会导致模型不鲁棒,上线实验也会造成用户体验的损害。使用 GAN 来产生一些离线训练样本会一定程度上解决该问题。


本文转载自 Alex-zhai 知乎账号。


原文链接:https://zhuanlan.zhihu.com/p/77332847


2019-11-29 11:401800

评论

发布
暂无评论
发现更多内容

从0到1学会Jetty内存马注入

我再BUG界嘎嘎乱杀

黑客 网络安全 jetty 网安 内存马

lastTab—Chrome 拓展开发实践

FunTester

工单触发器如何助力企业提升效率?天润融通案例解析

天润融通

人工智能 天润融通

redis设置用户名和密码

智慧源点

电商平台服务器 IP 地址遭受攻击?

网络安全服务

服务器 电商平台 DDoS IP地址 DDoS 攻击

【每日涨知识】CPU中有没有对数指令?如何用程序去计算?

极客罗杰

【功能详解】TimechoDB 与 Ignition 成功集成!

Apache IoTDB

Omnissa Horizon 8 2406 (8.13) 发布下载 - 虚拟桌面基础架构 (VDI) 和应用软件

sysin

vSphere vmware esxi horizon

国内差旅报销系统排名:2024年最主流7大选择

易成研发中心

项目管理 报销管理系统

在项目中到底应不应该用jwt?

左诗右码

Go

探索 Amazon Q Developer 那些有趣的功能

亚马逊云科技 (Amazon Web Services)

掌握这种思维,让你每句话直击要害,颠覆你的职场表现

轶天下事

一文带你玩转全新采集配置 CRD:AliyunPipelineConfig

阿里巴巴云原生

阿里云 云原生 iLogtail

被怼了:acks=all消息也会丢失?

王磊

Java

从 ClickHouse 到 Apache Doris:快成物流的数智化货运应用实践

SelectDB

数据库 数据仓库 Doris 大数据 开源 实时分析

69 个Spring mvc 全部注解:真实业务使用案例说明(必须收藏)

肖哥弹架构

spring springmvc springboot 注解

人工智能助力芯片半导体发展,开拓芯片设计技术新趋势

Altair RapidMiner

人工智能 芯片 半导体 altair

Apache Doris 全新分区策略 Auto Partition 应用场景与功能详解

SelectDB

数据库 数据仓库 OLAP Doris 分区策略

OpenAI 收购 Rockset:大模型如何使用 OLAP 赋能实时洞察业务场景

腾讯云大数据

大模型 rag

Koupleless 可演进架构的设计与实践|当我们谈降本时,我们谈些什么

SOFAStack

开源 微服务 应用 架构治理 应用构建

如何在C++、PHP、GO中使用AI生成PPT API接口

幂简集成

API AI API

企业级敏捷框架:业务驱动型敏捷与产品需求团队

俞凡

团队管理 敏捷

网安科班精选!爱荷华大学教授的网络安全零基础入门教程!

我再BUG界嘎嘎乱杀

黑客 网络安全 信息安全 网络攻防 网安

《Linux/UNIX系统编程手册》PDF

程序员李木子

H20 首发!上 Neolink.AI 免费尝鲜

MatrixOrigin

gpu 算力

OpenAI 重大人事变动,联创加入死敌;阿里视频框架 Tora 操控物体运动轨迹丨 RTE 开发者日报

声网

如何在生成式AI里使用 Ray Data 进行大规模 RAG 应用的 Embedding Inference

Zilliz

人工智能 非结构化数据 向量数据库 LLM 大语言模型

强化学习在推荐算法的应用论文整理(一)_语言 & 开发_Alex-zhai_InfoQ精选文章