Causal Intervention for Leveraging Popularity Bias in Recommendation
https://arxiv.org/pdf/2105.06067.pdf
背景
本文所提方法针对召回阶段所用方法。之前的工作考虑的是如何缓解流行偏差带来的问题,包括IPS,causal embedding等,而本文考虑的是直接缓解流行偏差而不是流行偏差带来的影响。并且本文考虑到“不是所有流行偏差都是有害的”,流行的item可以反映这个item的趋势和内在特性。而我们需要缓解的是流行偏差对item曝光带来的影响。
- 利用因果图,从混杂因子角度分析流行度对结果的影响
- 提出Popularity-bias Deconfounding and Adjusting (PDA)框架,通过干预去除混杂从而缓解流行偏差对曝光的影响,而最终影响到结果
图a反映的是通常的做法,即通过user(U)和item(I)的关系来计算得分(C);而现在构建新的因果图,如图b,Z表示数据流行度。数据流行一方面可以反映数据本身的内在特性和其趋势,用户本身可能就会在心理上倾向于这类商品,因此Z对C有直接影响;另一方面,由于存在Z,他会影响item的最终曝光,热门的item往往曝光的更高。从图中可以发现,这个Z他是I和C的共同原因,因此Z是混杂因子,可以通过干预(do)来解决。
方法
分阶段计算流行度
通常我们直接计算user和item的交互次数,从而获得item的流行度。本文采用分阶段的方式,计算不同阶段内的局部流行度。
m i t = D i t / ∑ j ∈ I D j t m_i^t=D_i^t/\sum_{j \in I}{D_j^t} mit=Dit/j∈I∑Djt
m i t m_i^t mit表示item i在第t阶段中的流行度。 D i t D_i^t Dit表示t阶段的样本集合 D t D_t Dt中item i的交互频次。
流行度漂移
本文考虑了流行度漂移(popularity drift),即随着时间的变化(阶段stage的变化),item的流行度是会发生变化的,而不是固定不变的。因此本文定义了Drift of Popularity (DP)来定量的衡量流行度漂移。如下式,通过JS散度衡量两个阶段之间的流行度差异。
D P ( t , s ) = J S D ( [ m 1 t , … , m ∣ T ∣ t ] , [ m 1 s , … , m ∣ I ∣ s ] ) D P(t, s)= J S D\left(\left[m_{1}^{t}, \ldots, m_{|T|}^{t}\right],\left[m_{1}^{s}, \ldots, m_{|I|}^{s}\right]\right) DP(t,s)=JSD([m1t,…,m∣T∣t],[m1s,…,m∣I∣s])
其中, m i t m_i^t mit即上面的第t阶段的局部流行度,t和s为两个不同的阶段。