DCMT: A Direct Entire-Space Causal Multi-Task Framework for cvr estimation(2)

154 阅读13分钟

DCMT: A Direct Entire-Space Causal Multi-Task Framework for Post-Click Conversion Estimation

背景

在搜推广场景中,推荐系统+用户主要遵循“曝光(系统)->点击(用户)->转化(用户)”行为逻辑。DCMT试图解决的还是点击后转化率预测的两个老问题,即数据稀疏和选择偏差问题,在方案设计中文章运用了因果推断的思想,理解起来有点麻烦,我们尽量展开介绍。

由于本周还未读完文章,因此这里仅做部分摘录。

2.1 数据稀疏

主要是“曝光->点击->转化”这系列行为逻辑漏斗越来越小,即只有很少曝光物品/服务被点击,更少的物品/服务被转化。传统的点击后转化率预测模型往往在点击空间(click space)训练而成,而不是在全曝光空间进行训练。那么不可避免的只有很少的点击样本用来训练。例如,阿里公开的Ali-CCP数据集,大约3.75%的曝光样本被点击,而其中只有大约0.025%的样本被转化。数据稀疏问题不单单造成训练集样本过少,还造成转化的正、负样本太过不平衡。

2.2 选择偏差

选择偏差的产生主要原因是上述的训练空间和推断空间之间的差异。传统点击后转化率预测模型在点击空间(click space)训练而成,但是模型推断的时候,却要给全曝光的样本(exposure space)进行预测排序。两者(点击空间、全曝光空间)之间的样本分布是不一致的。点击空间的样本虽然来源于全曝光空间样本,但是往往点击、转化率比较高的样本才能进入点击空间,那些点击、转化率较低的很难进入到点击空间。这些曝光&未点击(未点击空间)的样本并没有随机消失(not missing at random)于点击空间,而是因为用户的选择导致它们进不了点击空间。这就意味着,基于点击空间样本训练出来的转化率预测模型预测值往往和实际值之间有偏差(一般是偏大)。

3. 现有的解决方案

接下来,我们分析一下现有模型以及它们的优缺点。

3.1 并行多任务模型 (例如 ESMM,ESM2)

核心思想:并行多任务模型(例如ESMM)通过CTR任务以及一个辅助任务CTCVR来间接计算CVR。

优点:这样做的好处是CTR和CTCVR任务都可以在全曝光样本上训练,而模型在线预测的时候,也在全曝光样本空间进行预测排序。并行多任务模型是通过 p(t=1|x)=p(o=1,r=1|x)=p(o=1|x)∗p(r=1|x,o=1)p(t=1|x) = p(o=1,r=1|x) = p(o=1|x) * p(r=1|x, o=1) ,在全曝光空间,先求出点击率p(o=1|x)p(o=1|x)和点击转化率p(t=1|x)p(t=1|x),再间接求出点击后转化率 p(r=1|x,o=1)p(r=1|x,o=1) 。这样就消除了训练空间与推断空间之间不匹配的问题,因而可以缓解点击空间训练数据稀疏、选择偏差的问题。

缺点:并行结构,忽略了点击到转化之间的依赖关系,也就是PIP(potential independence priority)问题。现有的并行多任务模型结构实际上对应的是另一个概率公式,即: p(t=1|x)=p(o=1|x)∗p(r=1|x)p(t=1|x) = p(o=1|x) * p(r=1|x) 。

3.2 多门的多任务学习模型 (例如:Cross Stitch、MMOE、PLE、MOSE、AITM)

核心思想、优点:多门(Multi-Gate)多任务学习模型考虑了不同任务之间的相关性和差异性,用Gate的方式来控制不同专家的组合方式。在曝光空间预测CTR, 在点击空间预测CVR。

缺点:这些模型还是没有解决数据Missing not at radom(MNAR)的问题。

3.3 基于倾向性的因果纠偏模型 (例如IPW和DR)

由于我们的方法也是使用倾向性的因果纠偏,因此这一类的现有解决方案我们会详细介绍。

3.3.1 IPW( inverse propensity weighting,逆倾向加权模型

上文已经讨论过了,点击倾向性(点击率)偏高的样本更容易进入到点击空间。因此为了消除点击事件上点击倾向性(click propensity)对后面转化事件的影响,从而得到一个条件无偏的转化率估计 �(�=1|��(�=1),�) ,IPW(inverse propensity weighting)的策略被广泛应用来纠偏选择偏差,解决MNAR问题。

核心思想:IPW的纠偏策略就是给传统CVR loss进行加权纠偏,对应的权重就是 1/�(�=1|�) , �(�=1|�) 就是用户的点击倾向性(点击率预测值)。因此,基于倾向性的因果纠偏模型也需要利用多任务学习框架来分别预测点击率、点击后转化率。并通过点击率预测值来给转化任务的loss加一个权重来实现纠偏。这里整个纠偏过程就是为了得到上述的 �(�=1|��(�=1),�) 。因此IPW模型对应的cvr loss function如下: �IPW=1|�|∑(�,�)∈���,��(��,�,�^�,�)�^�,� ,其中 � 是全曝光样本空间, ��,� 就是点击标签, �(��,�,�^�,�) 就是模型转化率预测误差, �^�,� 就是点击倾向性。在多任务框架下,cvr loss function则变成 �MTL-IPW=1|�|∑(�,�)∈���,��(��,�,�^�,�)�^�,�=1|�|∑(�,�)∈��(��,�,�^�,�)�^�,� ,其中 � 表示点击样本空间,上面的点击倾向性 �^�,� 也被替代成点击任务的预测值 �^�,� 。

优点:点击空间纠偏,实现条件无偏估计。

我们先给出IPW条件无偏的证明过程。

首先,先假设我们能够得到所有的转化标签,即能够观察到所有样本的转化情况,因此我们就能得到转化率预测误差的ground-truth:

�ground-truth=�(�,�^)=1|�|∑(�,�)∈��(��,�,�^�,�)

接下来我们比较MTL-IPW模型的转化率误差与ground-truth之间的差异:

BiasMTL-IPW=|��(�MTL-IPW)−�ground-truth|=|1|�|∑(�,�)∈���,��(��,�,�^�,�)�^�,�−1|�|∑(�,�)∈��(��,�,�^�,�)|=1|�||∑(�,�)∈�(��,��^�,�−1)�(��,�,�^�,�)|=0.

也就是 ��,��^�,�−1=0 ,即 ��,�=�^�,� (点击率预测准确),就可以确保IPW纠偏后的CVR loss是与ground-truch的CVR loss一致的。所以IPW无偏估计的前提条件就是点击率预测准确。

缺点:没有在全曝光空间上训练转化率模型。上面的 �MTL-IPW 公式也很明显的说明了,IPW只计算点击样本空间 � 的CVR loss。

3.3.2 DR(Doubly Robust模型)

IPW在点击空间无偏的前提是点击率要预测准确,然而在现实应用场景很难确保这一点,因此提出了DR模型来缓解这个问题。

核心思想:除了IPW多任务模型的点击任务、转化任务,DR模型还利用了一个归咎(imputation)任务来预测转化任务的误差,即CVR loss( ��,�=�(��,�,�^�,�) )的预测值( �^�,� )。而最终DR模型对应的CVR loss function变成了 �MTL-DR=1|�|∑(�,�)∈�(�^�,�+��,���,��^�,�) ,其中 ��,�=��,�−�^�,� 。

图来源于(《Large-scale causal approaches to debiasing post-click conversion rate estimation with multi-task learning》in WWW2020)

优点:这样做的好处是 �^�,� 和 �^�,� 只要有一个预测准确,那么DR就能确保CVR无偏估计。另一个隐性的优点是,MTL-DR一定程度上实现全空间的无偏估计,这是因为imputation任务可以在全曝光空间训练。MTL-DR作者的理解是,imputation任务可以利用全曝光空间预测来的cvr loss来帮助CVR任务进行全曝光空间纠偏。

具体无偏证明如下: BiasMTL-DR=|��(�MTL-DR)−�ground-truth|=|1|�|∑(�,�)∈�(�^�,�+��,���,��^�,�)−1|�|∑(�,�)∈���,�|=1|�||∑(�,�)∈��^�,��^�,�+��,���,�−�^�,���,��^�,�|=1|�||∑(�,�)∈�(��,�−�^�,�)��,��^�,�|=0.

前提条件是: ��,�−�^�,�=0 或者 ��,�=��,�−�^�,�=0 ,即 �^�,� 和 �^�,� 只要有一个预测准确。

缺点:然而上述这种利用imputation任务间接地在全曝光空间纠偏的策略,没有理论以及实验证明它的有效性。实际上,在DCMT工作的实验部分,我们通过实验验证了MTL-DR模型的CVR预测分布,发现没有全曝光样本空间纠偏的效果(具体见下文实验结果部分)。这里可能的原因是:虽然IPW、DR在点击空间纠偏了,把点击率偏高的样本cvr loss的权重调低了,但是能进入点击空间的的点击率普遍偏高,整体调低了也不太会纠偏到随机点击后分布。只有给点击率偏低的未点击空间样本一个较大的权重,这样才有调整整体分布并趋向于随机点击后分布的可能。另外,MTL-DR的无偏的前提条件,在现实环境中,这两个预测值没有一个能确保预测准,因此DR模型的CVR估计的无偏性很难说比IPW好多少。

方案

分析了现有解决方案的优缺点,我们接下来介绍我们的DCMT模型(A Direct Entire-Space Causal Multi-Task Framework for Post-Click Conversion Estimation),核心的因果关系图如下图所示。

4.1 核心思想

上文现有解决方案的分析,让我们意识到,我们需要直接在全曝光空间去纠偏,而不是只在点击空间(例如IPW)或者间接在全曝光空间(DR)上纠偏。在全曝光空间训练模型的好处就是(1)数据稀疏问题得到缓解(2)训练空间和推断空间直接对齐了。

然而,在全曝光空间训练CVR模型存在最大的瓶颈问题就是:(1)全曝光空间里,对于转化任务而言,存在大量的假负样本。在全曝光空间里,由于不存在“未点击->转化”这样的正样本,这些样本会混在“未点击->未转化”样本中充当假负样本。这些假负样本可能仅仅是因为曝光位置、曝光风格原因,没有被用户察觉到或者点击到。但是如果这些样本被用户点击了,是可以转化的。如果在全曝光空间训练,CVR模型过度拟合这些真假难辨的转化负样本,CVR的预测结果则会偏低。(2)另外,在全曝光样本空间直接训练CVR模型,选择偏差问题仍然存在。所以需要在全曝光空间进行纠偏而不单单在点击空间进行纠偏(如IPW和DR)。这是因为,如果我们认同IPW的思想,即在点击样本空间,点击倾向性会对点击空间样本造成选择偏差。那么在未点击空间,同样也会有不点击倾向性导致选择偏差。

4.2 反事实机制

为了解决以上的问题,我们提出了一个反事实的机制。由于受到用户在做转化决策的过程的启发,我们提出了事实样本空间(factual space)和反事实样本空间(counterfactual space)的概念。这里的事实空间和反事实空间如下图所示:

从概率角度去分析,如果一个用户 �� 购买(转化)一个物品/服务 �� 的概率是 ��,� ,那么不转化的概率就是 1−��,� 。假设用户最终决定购买 ��,�=1 ,即转化标签,那么我们能得到一个事实的正样本 <��,�=1,��,�=1,��,�> 。然而这个时候, <��,�=0,��,�=1,��,�> 这个负样本则就不会在事实空间里被观察到了。上面已经分析过了,这个负样本实际上本应该是有 1−��,� 的概率出现的。在我们的反事实机制里,这样的负样本, <��,�=0,��,�=1,��,�> ,则会存在于反事实空间中。我们DCMT模型除了利用事实空间的点击空间 � 样本来预测事实的CVR,还会利用反事实的点击空间 �∗ 样本(事实的未点击样本状态取反而得)来预测反事实CVR。同时通过以上的分析,我们发现,事实的CVR预测值和反事实的CVR预测值之和应该与1的误差要最小。

具体模型的框架图如下。

整体的目标公式是: �(�)=�CTR+�����DCMT+�������CTCVR+�2‖�‖�2 ,

CTR loss 和CTCVR loss都比较一般,下面主要展开介绍我们DCMT的CVR loss。

我们的DCMT框架,把 划分成wide和deep两部分,分别得到对应的wide embedding和deep embedding。CTR task和CTCVR task部分都比较好理解。接下来我们展开介绍一下主任务CVR task,具体的结构如下图。

事实转化率反事实转化率公式:事实转化率+反事实转化率公式:<�^�,�,�^�,�∗>=<�(��),�(���)>=<�(���+���),�(����+����)>=<�(�(�→�,��;���)+�(�→�,��;��,���)),�(�(�→�,��;����)+�(�→�,��;��,����))>

这里的 �(∗) 是Sigmoid函数, �(�→,�) 是线性回归函数, �(�→,�) 则对应的MLP结构。具体的已经在图中标清楚了。除了根据wide embedding �→�,�� 和deep embedding �→�,�� 分别用线性和深度结构来处理,这其实就是一个双子塔结构。这个双子塔的输入是一样的,即 �→�,��+�→�,�� ,但是输出则是两个,分别对应事实CVR(factual CVR) �^�,� 和反事实CVR(counterfactual CVR) �^�,�∗ 。这样的双子结构其实可以很好地模拟用户做转化决策的过程。面对同样的输入特征 ��,� ,样本有一定的概率 �^�,� 进入事实空间,有一定概率 �^�,�∗ 进入反事实样本空间。而我们模型中,加入了一个软性约束(先验知识) �^�,�+�^�,�∗≈1 来控制这两个CVR的预测值。

我们DCMT模型的 CVR loss公式如下:

�DCMT=�DCMT_naive+�=1|�|(∑(�,�)∈��(��,�,�^�,�)�^�,�⏟factual loss in �+∑(�,�)∈�∗�(��,�∗,�^�,�∗)1−�^�,�⏟counterfactual loss in �∗)+�1|�|∑(�,�)∈�|1−(�^�,�+�^�,�∗)|⏟counterfactual regularizer �,

整个CVR loss分为三部分,第一块是factual loss ∑(�,�)∈��(��,�,�^�,�)�^�,� 是事实CVR预测值与事实点击空间 � 样本之间的误差。这边的误差函数是log loss。第二块是counterfactual loss ∑(�,�)∈�∗�(��,�∗,�^�,�∗)1−�^�,� , 是反事实CVR预测值与反事实点击空间 �∗ (事实未点击空间的镜像空间)样本之间的误差。第三块是counterfactual regularizer |1−(�^�,�+�^�,�∗)| ,即上面所述的软性约束 �^�,�+�^�,�∗≈1 。

最终,如上图所示,我们的DCMT的CVR任务部分,形成了一个有效的纠偏链路。

优点:(1)通过 �DCMT 公式可知,我们直接在事实点击空间 � 进行逆倾向纠偏(这里的逆点击倾向权重是 1/�^�,� );我们直接在反事实的点击空间 �∗(即事实的未点击空间的镜像)也进行了逆倾向纠偏(这里的反事实空间的逆点击倾向权重就是事实空间的逆不点击倾向权重 ()1/(1−�^�,�) )。这样就可以利用全曝光样本空间数据来训练我们的CVR任务,使得训练空间和推断空间对齐。在全曝光空间做逆倾向加权,也可以缓解选择偏差(或者NMAR问题)。

(2)而软性约束的最大作用是可以缓解假负样本的问题。例如在事实未点击空间 � 有一个样本 <��,�=0,��,�=0,��,�> ,这个样本在反事实空间 �∗ 的对应样本则是 <��,�∗=1,��(��,�)=1,��,�> 。对于我们DCMT模型而言,输入 ��,� ,我们CVR任务的双子塔会输出 和�^�,�和�^�,�∗ 。如果这个样本是个假负样本,那么 |1−(�^�,�+�^�,�∗)| 值比较大,则说明对于这个样本而言,事实CVR预测值 �^�,� 和反事实CVR预测值 �^�,�∗ 之间存在矛盾(不符合先验知识)。这是因为,这个假负样本本应该进入到事实点击转化空间的,然而却进入了事实未点击空间,所以事实CVR预测值预测值 �^�,� 会被拉低。而它对应的反事实CVR预测值 �^�,�∗ 也不会太高,因为这个样本进入反事实点击转化空间的概率也不应该很高。所以值 |1−(�^�,�+�^�,�∗)| 会比较大。我们DCMT通过最小化 |1−(�^�,�+�^�,�∗)| 这个软性约束会去纠正假负样本对应的 �^�,� ,使得它更大,从而接近真实值。

实验

未读完

参考

  1. www.zhihu.com/search?type…
  2. zhuanlan.zhihu.com/p/610802942
  3. zhuanlan.zhihu.com/p/611343388