Loading [MathJax]/jax/output/CommonHTML/autoload/mtable.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >CIKM'21「华为」推荐系统 | 因果推断+强化学习:反事实用户偏好模拟

CIKM'21「华为」推荐系统 | 因果推断+强化学习:反事实用户偏好模拟

作者头像
秋枫学习笔记
发布于 2022-09-19 03:23:24
发布于 2022-09-19 03:23:24
8180
举报
文章被收录于专栏:秋枫学习笔记秋枫学习笔记

title:Top-N Recommendation with Counterfactual User Preference Simulation

link:https://dl.acm.org/doi/pdf/10.1145/3459637.3482305

from:CIKM 2021

1. 导读

对因果推断和反事实推断不熟悉的小伙伴可以阅读相关文章

文中涉及变分推断,可参考这篇阅读:https://zhuanlan.zhihu.com/p/70644599

SIGIR'21 因果推断+推荐系统:利用反事实理论增强用户行为序列数据

SIGIR'21 因果推断+序列推荐:反事实数据促进鲁棒用户表征生成

上面这两篇文章都是利用反事实推断,来生成更丰富的序列数据的文章。本文和这两篇文章有类似之处,本文也是利用反事实推断来生成数据,缓解数据稀疏和不平衡问题。不同之处在于,上述两篇文章都是用反事实推断的思想来对序列推荐中的用户行为序列数据进行生成,而本文是对通用的top-N推荐。

本文结合因果推断框架,利用反事实模拟用户基于排名的偏好来处理数据稀缺问题,提出CPR方法。

如图所示为本文所提方法的总体框架,主要包含两个部分:推荐模拟器和目标排序模型排序模型用于提供最终推荐列表,推荐模拟器旨在通过生成额外的训练样本来辅助排名模型的优化

2. 定义

以上为通常情况下的因果图,其中存在混杂因子R。U表示用户画像,R表示推荐列表,S表示用户真实从R中选择的集合。

3. 方法

CPR框架由两部分组成:一是推荐模拟器,负责生成新的训练样本。另一个是目标排名模型,它是根据观察到的和生成的数据学习的,并用来提供最终的推荐列表。框架可以应用于任何基于排名的推荐模型。

3.1 推荐模拟器

如图所示为现有的因果图,U,R,S分别表示用户画像,推荐列表和被用户选择的正样本。U->R表示推荐列表是根据用户偏好生成的,U->S和R->S表示正样本是用户偏好和推荐列表共同决定的。结构方程为下式,其中U,R,S为内源性变量;α,β为外源性变量。

note

  • 考虑推荐系统内在的噪声和随机性,PR和PS都以随机方式定义,以此学到更加准确和鲁棒的行为。
  • 推荐系统中的外源性变量可以理解为诱导当前观察到的数据的条件,如系统状态、用户习惯等

例子:以电影推荐为例,用户可能更有可能在闲暇时间看电影。所以如果是晚上采集的数据,那么电影点击概率应该会更高。这种时间条件是潜在的,但会影响数据生成过程,预计会被外源变量捕获,并通过推断相应的后验来恢复。

3.1.1 构建结构方程F

假设存在

个商品,则推荐列表存在

中可能,这个数是很大的,因此作者将其分解为单个商品推荐概率的乘积。公式如下,其中

表示推荐列表,列表中单个商品的推荐概率用softmax来计算,

表示用户和商品的embedding,他们可以用ID或各自的画像信息来初始化,

表示可学习参数。

表示从推荐列表R中选择S的概率,公式如下,其中

表示S的集合,w为可学习参数,X和Y为用户和商品的embedding。

在pr和ps中用户和商品的embedding是不同的

3.1.2 F的学习

假设训练集为

,分别表示用户,对应的推荐列表和选择集合,由于商品集市非常庞大的,因此无法直接优化

的softmax函数。因此利用负采样,公式如下,其中

为可学习参数,

表示负样本的集合,从非推荐列表中随机采样得到。

从标准正太分布中采样得到。

对于

而言,是在推荐列表R的基础上,R本身集合大小不大,因此可以直接进行优化。其中

为可学习参数,

,

分别表示在

,

中的第t个和第j个。

3.1.3 基于F的反事实推断

第一步:根据观察到的数据集

,计算外源变量α,β。对于β,可用下面的贝叶斯公式计算,其中

可以用上面计算

的公式计算得到。

但是如果要从下式采样出β还是太复杂了,因此本文采用变分推理。首先定义高斯分布

,其中φ={μ,σ}为可学习参数。然后,通过最小化

的KL散度来优化

,其中需要最大化ELBO,公式为下式,

同样

也可以用相同方式得到,具体可以参考文献[1]中的变分推断。第二步:选择好一个用户

和推荐列表

,然后从

中采样出

,可以计算ps,公式如下:

第三步:从集合中选出概率最高的M个商品作为s。

3.2 基于学习的干预

上述过程我们对R进行了干预,从而来达到反事实的推断的效果。那么这里存在一个问题,如何得到。本节,作者提出基于学习的方法来选取推荐列表思想:使生成的样本对目标排名模型具有更多信息。在文献[2,3]中可知,损失函数大的样本,给模型提供的信息就越多。这和难样本挖掘方面的思想是类似的,处于边界的样本,难训练的样本往往能提供更多的信息。

采用上述思想,作者在这里采用了强化学习的方式。将目标排序模型的损失作为奖励,构建可学习的方法。

令排序模型为f,对应的损失为,他可以是常用的point-wise的损失也可以是pair-wise的损失。而动作就是生成推荐列表,智能体agent需要做的就是生成能够使更大的推荐列表。考虑到动作空间可能非常大,作者按照之前的工作[4]学习高斯策略来生成的连续商品中心,然后根据等式的计算公式恢复离散商品ID。最终的学习目标是:

其中π是有两层全连接层加上ReLU得到的高斯策略。

表示目标用户,

表示生成的样本

对应的损失。生成T组训练样本集合,每个都由下式

得到,具体如下:

  • 基于分数

,在商品中心

附近选取K个商品来生成

  • 根据

,从中选取M个商品作为

集合

  • 对于pair-wise的损失函数,

;对于point-wise的损失函数,

以下为所提方法的伪代码,具体来说目标排序模型首先基于原始数据集进行训练。然后,基于高斯策略生成许多反事实训练样本。最后,基于生成的数据集重新训练目标排序模型

4. 结果

image.png

文献

[1] David M Blei, Alp Kucukelbir, and Jon D McAuliffe. 2017. Variational inference: A review for statisticians. Journal of the American statistical Association 112, 518 (2017), 859–877 [2] Tsu-Jui Fu, Xin Eric Wang, Matthew F Peterson, Scott T Grafton, Miguel P Eckstein, and William Yang Wang. 2020. Counterfactual Vision-and-Language Navigation via Adversarial Path Sampler. In European Conference on Computer Vision. Springer, 71–86 [3] Hongchang Gao and Heng Huang. 2018. Self-paced network embedding. In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. 1406–1415. [4] Xiangyu Zhao, Liang Zhang, Long Xia, Zhuoye Ding, Dawei Yin, and Jiliang Tang. 2017. Deep reinforcement learning for list-wise recommendations. arXiv preprint arXiv:1801.00209 (2017)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 秋枫学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Ada-Ranker:咱就说咱能根据数据分布自适应,不信瞧瞧?
现在主流的排序模型设计和使用方式是:离线训练模型,冻结参数,并将其部署到在线服务。但是实际上,候选商品是由特定的用户请求决定的,其中潜在的分布(例如,不同类别的商品比例,流行度或新商品的比例)在生产环境中彼此之间存在很大差异。经典的参数冻结推理方式无法适应动态服务环境,使得排序模型的表现受到影响。
秋枫学习笔记
2022/09/19
5470
CIKM'21序列推荐|基于区域的embedding捕获用户行为中的偏好
可以先看背景和总结部分,对整个文章做的工作进行了简单的概括,公式太长的可以左右滑动哦~
秋枫学习笔记
2022/09/19
5140
SIGIR'21 因果推断+推荐系统:利用反事实理论增强用户行为序列数据
针对用户历史行为序列数据中的稀疏性问题,本文采用因果推断中的反事实的相关理论来生成新的序列数据。要回答这样一个问题“如果用户之前购买的商品有所不同,她想购买什么?” 本文主要利用三种不同的反事实样本生成方式(启发式采样、基于数据的采样、基于模型的采样),来生成有助于模型训练的数据,从而进一步优化推荐模型。
秋枫学习笔记
2022/09/19
7780
AAAI'22「腾讯」多任务推荐系统中的跨任务知识蒸馏
多任务学习被广泛应用于推荐系统,先前的工作专注于设计底部层的结构来共享输入数据的信息,但是由于它们采用特定任务的二分类标签作为训练的监督信号,因此关于如何准确排序商品的知识并未在任务之间完全共享。
秋枫学习笔记
2022/09/19
4880
WWW'22「快手」序列推荐:解耦长短期兴趣
4. 最后由于长期和短期兴趣的重要性是动态变化的,通过基于注意力的网络自适应地聚合它们进行预测。
秋枫学习笔记
2022/09/19
9060
SIGIR'21 因果推断+序列推荐:反事实数据促进鲁棒用户表征生成
本文主要针对的是如何从用户历史行为序列中学习到更鲁棒更有效的表征。用户历史行为序列中是存在噪声的,并且序列本身是稀疏的,因此本文针对现存的问题,提出CauseRec方法通过对反事实数据分布进行建模,更多地信任不可或缺的行为从而提高鲁棒性。给定行为序列,CauseRec识别可有可无的概念和不可或缺的概念,CauseRec 通过替换原始序列中的可有可无和不可或缺的概念,有条件地从反事实数据分布中采样用户概念序列。
秋枫学习笔记
2022/09/19
9030
因果推断学习笔记三——Uplift模型「建议收藏」
因果推断在互联网界应用主要是基于Uplift model来预测额外收益提升ROI。Uplift模型帮助商家计算人群营销敏感度,驱动收益模拟预算和投放策略制定,促成营销推广效率的最大化。同时如何衡量和预测营销干预带来的“增量提升”,而不是把营销预算浪费在“本来就会转化”的那部分人身上,成为智能营销算法最重要的挑战。
全栈程序员站长
2022/11/15
12.4K0
WSDM'22「京东」个性化会话推荐:异构全局图神经网络
本文是针对会话推荐提出的相关方法,兼顾历史会话信息和会话中商品间的转换模式,提出异构全局图网络HG-GNN,利用所有会话中的商品转换(历史和当前的会话)来推断用户的偏好。全局图包含会话内的item-item关系,user-item关系和全局item共现关系。同时提出一个个性化会话编码器,结合当前会话的一般用户偏好和临时兴趣来生成个性化会话表征进行推荐。
秋枫学习笔记
2022/09/19
3440
AAAI'21「华为」图异构多行为推荐方法
用户与商品之间会存在许多行为,比如点击,购买,加购等。这些异构多关系数据可以提供结构良好的信息,作者认为以往的工作没有很好地捕获用户和商品之间的高阶(high-hop)关系,因此本文提出了 Graph Heterogeneous Collaborative Filtering (GHCF) 。为了探索高阶异构用户-项目交互,本文利用图神经网络学习节点和关系的表征。此外,为了充分利用整个异构数据,在多任务学习框架下执行先进的高效非采样优化。
秋枫学习笔记
2022/09/19
2580
序列推荐 | 利用超图对价格偏好和兴趣偏好共同建模
现有的基于会话的推荐方法只关注建模用户的兴趣偏好,而忽略了价格因素。而将价格偏好纳入基于会话的推荐存在以下挑战。
秋枫学习笔记
2022/09/19
7980
WSDM'22 | 利用反事实框架预测用户流失
本文针对用户流失预测提出结合因果推断的方法CFChurn。结合反事实推理,捕获社会影响的信息从而对流失进行预测。
秋枫学习笔记
2022/09/19
6590
ControlRec:对齐LLM和推荐系统之间的语义差异
标题:ControlRec: Bridging the Semantic Gap between Language Model and Personalized Recommendation 地址:https://arxiv.org/pdf/2311.16441.pdf 学校,公司:中国科学院大学,美团
秋枫学习笔记
2023/12/04
8600
ControlRec:对齐LLM和推荐系统之间的语义差异
【强化学习】理论知识整理汇总
本篇旨在总结强化学习相关术语,主要参考了邹伟等人所著的《强化学习》(清华大学出版社)这本书。
zstar
2022/06/14
8830
【强化学习】理论知识整理汇总
SIGIR'21「微软」| 推荐系统:强化学习过滤负样本噪声提升点击率
本文可以看做是负样本筛选方面的一篇文章,主要是考虑到直接采用未点击的样本作为负样本会存在许多的噪声,利用强化学习从原始的负样本中筛选出有效的负样本用于提升ctr模型的性能。
秋枫学习笔记
2022/09/19
5780
ICDE'21「京东」推荐系统:多行为融合的图神经网络GNMR
在实际生活中,用户的行为通常是多样的,比如点击,购买,浏览等,而对于这些多类型的行为,常见的面向单行为的推荐方法是不具备优势的,因此本文提出了基于图神经网络的多行为推荐方法GNMR。
秋枫学习笔记
2022/09/19
9880
CIKM'21「华为」推荐系统:用于协同过滤的余弦对比损失
协同过滤(CF)一般包含三个部分:交互编码器、负采样和损失函数。现有的大部分工作集中在设计更强模型上,对负采样和损失函数的改进的相关工作比较少。相较于交互信息的编码而言,另外两者也同样重要,本文作者提出了一个新的损失函数 cosine contrastive loss (CCL) ,将其合并到统一的CF框架中,命名为simpleX 。
秋枫学习笔记
2022/09/19
9390
行为感知Transformer:用于多行为序列推荐的
本文主要针对序列推荐中的多行为序列推荐,即行为序列中包含不同的行为类型,比如点击,加购,购买等。为了捕获用户的个性化行为模式和行为间的复杂协作关系,作者提出PBAT方法:
秋枫学习笔记
2024/02/27
7070
行为感知Transformer:用于多行为序列推荐的
CIKM'21「网易」新用户冷启动:MAIL生成虚拟用户交互表征
本文是针对新用户方面的冷启动文章,作者提出双塔结构的MAIL,一个塔用于冷启动,另一个塔关注排序问题。
秋枫学习笔记
2022/09/19
4770
XLNet详解
2018 年,谷歌发布了基于双向 Transformer 的大规模预训练语言模型BERT,刷新了 11 项 NLP 任务的最优性能记录,为 NLP 领域带来了极大的惊喜。很快,BERT 就在圈内普及开来,也陆续出现了很多与它相关的新工作
mathor
2020/08/11
1.2K0
XLNet详解
WSDM'22「微软」会话推荐:多粒度连续用户意图学习
本文针对会话推荐方向,相较于关注序列中的单个商品,本文关注如何利用GNN从连续片段中捕获用户偏好。通过多粒度连续用户意图单元捕获用户兴趣,作者提出了多粒度意图异构会话图(MIHSG),它捕获了不同粒度意图单元之间的交互并减轻了长依赖的负担。此外,作者提出了意图融合排名(IFR)模块来组合来自各种粒度用户意图的推荐结果。
秋枫学习笔记
2022/09/19
4400
推荐阅读
相关推荐
Ada-Ranker:咱就说咱能根据数据分布自适应,不信瞧瞧?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档