Causal Embeddings for Recommendation 论文笔记

本文提出了一种新的推荐系统方法——因果嵌入(CausE),旨在解决过去user-item矩阵预测偏差的问题。通过引入多任务目标,同时利用大量控制策略样本和少量随机策略样本,构建线性预测器来估计奖赏值,进而优化推荐策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有什么问题欢迎讨论呀!

论文标题:Causal embeddings for recommendation

目的

用过去的 user-item 矩阵预测用户未来的行为会造成偏差,本文是为了消除这种偏差。

方法

构建两个数据集 ScS_cScStS_tSt,其中 StS_tSt 数据集的分布(给定每个用户所有item暴露给用户的概率分布)和测试集的分布是一致的。采用领域自适应的算法进行去偏。

结果

MSE lift、NLL lift、AUC 评价指标来衡量各个方法的好坏,结果表明本文的方法要更好一些。

内容

1. Introduction

用过去的 user-item matrix 来预测用户未来的行为是存在偏差的。

传统的方法:
【推荐】协同过滤的方法:计算 item-item 对或者 item-user 对之间的距离
【预测】对用户的历史行为建模来预测下一个行为
这两种方法都没有对推荐系统内在的干预本质进行预测(不应该只尝试对用户的自然行为进行建模,而是根据预设目标以最优的方式去影响它)

2. 通过ITE优化的推荐策略

【推荐策略 recommendation policy】
我们假设一个随机推荐策略 πxπ_xπx 是将所有物品 pjp_jpj 暴露给给定用户 uiu_iui 的概率分布:
pj πx(⋅∣ui)p_j~π_x (·|u_i)pj πx(ui)

【策略奖赏 policy rewards】
我们定义 rijr_{ij}rij 为向用户 uiu_iui 推荐物品 pjp_jpj 后真实的奖赏。在我们的例子中,rijr_{ij}rij 是一个二元变量(click/no click, sale/no sale)。我们假设奖赏 rijr_{ij}rij 是由未知条件分布 rrr 给定的:
rij r(⋅∣ui,pj)r_{ij}~r(·|u_i,p_j)rij r(ui,pj)
我们定义 yijy_{ij}yij 为日志策略 πxπ_xπx 下观察到的奖赏值(也是一个二元变量):
yij=rijπx(pj∣ui)y_{ij}=r_{ij} π_x (p_j |u_i)yij=rijπx(pjui)
在策略 πxπ_xπx 下的奖赏值 RπxR^{π_x}Rπx 等价于通过使用相关的个性化产品曝光概率,从所有进入系统的用户中收集到的奖励的总和:
Rπx=∑ijrijπx(pj∣ui)p(ui)=∑ijyijp(ui)=∑ijRijR^{π_x}=∑_{ij}r_{ij} π_x (p_j|u_i)p(u_i)=∑_{ij}y_{ij} p(u_i)=∑_{ij}R_{ij}Rπx=ijrijπx(pjui)p(ui)=ijyijp(ui)=ijRij
看到的用户的概率是来自一个未知的分布 p(X):ui p(X)p(X):u_i~p(X)p(X):ui p(X) 并且 RijR_{ij}Rij 是用户物品对的奖赏值
在策略 πxπ_xπx 下,给定用户 iii 和物品 jjj 的 ITE(Individual Treatment Effect)值可以定义为当前策略下的奖赏值和控制策略 πcπ_cπc 下的奖赏值之差:
ITEijπx=Rijπx−RijπcITE_{ij}^{π_x}=R_{ij}^{π_x}-R_{ij}^{π_c}ITEijπx=RijπxRijπc
本文我们感兴趣的是 ITE 和最大时对应的策略 π∗π^*π
π∗=argmaxπxITEπxπ^*=arg max_{π_x}{ITE^{π_x}}π=argmaxπxITEπx,其中 ITEπx=∑ijITEijπxITE^{π_x}=∑_{ij} ITE_{ij}^{π_x}ITEπx=ijITEijπx

【引理1】对于任意控制策略 πcπ_cπc,最优的增长策略 π∗π^*π 是向每一个用户展示出最高相关奖赏值的物品的策略。(证明略)

πdetπ_{det}πdet 是对每个用户展示最优的个性化物品的策略:
πdet={1,ifpj=pi∗0,otherwiseπ_{det}=\left\{ \begin{array}{cc} 1 & ,if\quad p_j=p_i^* \\ 0 & ,otherwise \end{array} \right.πdet={10,ifpj=pi,otherwise
因此,π∗=πdetπ^*=π_{det}π=πdet
为了找到最优策略 π∗π^*π,我们需要找到每个用户能获得的最高个性化奖赏值 ri∗r_i^*ri 的产品。实际上我们是没办法直接观察到 rijr_{ij}rij 的,但我们有 yij∼rijπx(pj∣ui)y_{ij}\sim r_{ij} π_x (p_j |u_i)yijrijπx(pjui) 来预测不可观察的 rijr_{ij}rij
r^ij≈yij(πc(pj∣ui))\hat{r}_{ij} ≈ \frac{y_{ij}}{(π_c (p_j |u_i))}r^ij(πc(pjui))yij
该方法的不足之处:1. 基于IPS的估计值不能很好的处理 treatment 和 control policy 之间的暴露概率的巨大变化;2. 方差会很大
如果 πc=π∗π_c=π^*πc=π,虽然让方差最小化了,但推荐效果也会变差
解决方法:从 πcπ_cπc 中学习一个预测器,然后在 πrandπ^{rand}πrand 下执行

3. 本文方法:Causal Embeddings(CausE)

我们的目标是建立一个好的预测器:对所有的用户-物品对,通过随机暴露来推荐结果。
假设我们从日志策略 πcπ_cπc 中获得大量样本 ScS_cSc,从随机处理策略 πtrandπ_t^{rand}πtrand 中获得小样本 StS_tSt。到此本文提出了一个多任务目标:分解矩阵 yijc∈Scy_{ij}^c∈S_cyijcScyijt∈Sty_{ij}^t∈S_tyijtSt
我们假设真实的control和treatment奖赏值可以用线性预测器来估计:
yijc≈<ui,θjc>y_{ij}^c≈<u_i,θ_j^c>yijc<ui,θjc>
yijt≈<ui,θjt>y_{ij}^t≈<u_i,θ_j^t>yijt<ui,θjt>
到此,可以估计用户-物品对的ITE值:
ITE^ij=<ui,θjt>−<ui,θjc>=<ui,θj∆>\hat{ITE}_{ij}=<u_i,θ_j^t>-<u_i,θ_j^c> = <u_i,θ_j^∆>ITE^ij=<ui,θjt><ui,θjc>=<ui,θj>
Lt=L(UΘt,Yt)+Ω(Θt)L_t=L(UΘ_t,Y_t )+Ω(Θ_t)Lt=L(UΘt,Yt)+Ω(Θt)
Lc=L(UΘc,Yt)+Ω(Θc)L_c=L(UΘ_c,Y_t )+Ω(Θ_c)Lc=L(UΘc,Yt)+Ω(Θc)
LCausEprod=L(UΘt,Yt)+Ω(Θt)+L(UΘc,Yt)+Ω(Θc)+Ω(Θt−Θc)L_{CausE}^{prod}=L(UΘ_t,Y_t )+Ω(Θ_t )+L(UΘ_c,Y_t )+Ω(Θ_c )+Ω(Θ_t-Θ_c )LCausEprod=L(UΘt,Yt)+Ω(Θt)+L(UΘc,Yt)+Ω(Θc)+Ω(ΘtΘc)

4. 实验

Dataset:MovieLen 100k, MovieLen 10M 显式评分数据集
创建了两个数据集:regular(REG)和skewed(SKEW)
70/10/20 train/valid/test
SKEW Dataset:目标是产生一个测试数据集-simulates rewards uniform expose πtrandπ_t^{rand}πtrand

  • Causal embeddings for recommendation 论文中 SKEW 对训练集(train)/验证集(valid)/测试集(test)(70/10/20)的划分参考了论文 Causal inference for recommendation论文,从完整的数据集中针对 item 均匀采样出 20% 的数据作为测试集,剩下的数据随机划分成 7:1,分别作为训练集和验证集。
  • 但是为了模拟随机策略产生的 S_t 数据集,将测试集的采样比例增加到 30%,其中 20% 作为测试集,10% 作为模拟随机策略得到的数据 S_t,剩下数据随机划分成 6:1。那么一共就有四种数据集:训练集S_c(πc\pi_cπc)、训练集S_t(πt\pi_tπt)、验证集(πc\pi_cπc)和测试集(πt\pi_tπt),比例为:6:1:1:2。

本实验中,改变 StS_tSt 的大小 1%-15%

定义了5中合并的暴露数据设置:

  1. No adaptation:ScS_cSc
  2. Blended adaptation: ScS_cSc, StS_tSt
  3. Test adaptation: StS_tSt
  4. Product adaptation: Separate treatment embedding for each product based on the StS_tSt sample
  5. Average adaptation: Average treatment product by pooling all the StS_tSt sample into a single vector

5. 结论

  • 新的方法来分解隐式的 user-item 矩阵
  • 用一致的暴露分布来预测 user-item 的相似度
  • CausE 是对 MF 算法的一个扩展,加入了正则项 Ω(Θt−Θc)Ω(Θ_t-Θ_c )Ω(ΘtΘc)

6. 不足

  • StS_tSt 的数据太难获取
  • 没有对用户序列进行建模
  • ITE 最大化和损失函数最小化之间的关联
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值