阅读总结之(Entire Space Multi-Task Model)

初步了解

​ 一般来说,CVR (Conversion Rate): 转化率。是一个衡量CPA广告效果的指标,简言之就是用户点击广告到成为一个有效**或者注册甚至付费用户的转化率。在互联网行业中,准确估计CVR是很重要的。

​ 本文对这个传统的CVR预测方法提出了两个问题。第一个就是样本选择偏差(sample selection bias)问题:点击事件只是整个曝光样本空间的一个子集,在子集中提取的特征在完整集中使用是有一定的偏差的;第二个就是数据稀疏(data sparsity)问题:点击样本集是浏览样本集的一个很小的部分,而转换样本集又是点击样本集中的一个很小的部分。

​ 本文随后又介绍了一些解决上述问题的方法。比如说,对于这个数据稀疏问题,构建和组合不同特征的分层估计并用逻辑回归模型进行分析,但这个方法很难应用于大规模的数据集。此外,还可以对稀疏的正样本进行过采样,这样有助于减轻数据稀疏性,但是对采样率很敏感。至于这个SSB(sample selection bias)问题,可以采用随机抽样策略来选未点击的浏览样本作为负样本,这样通过引入新的数据来稍微消除SSB,但这也可能导致这个预测结果偏低。另外,如果用拒绝采样拟合真实分布来解决CTR建模中的SSB问题,也可能会导致数值不稳定。

ESMM模型

​ 接下来就是本文的重点,传统方法有其局限性,而且这些局限性难以完善。并且,传统方法没有考虑探索用户行为顺序,即impression → click → conversion(浏览-点击-购买)这个过程中的顺序依赖。故本文提出了ESMM(完整空间多任务模型),即模型能够在完整的样本数据空间(即曝光的样本空间,下图最外层圈)同时学习点击率(post-view click-through rate, CTR)和转化率(post-click conversion rate, CVR)。
阅读总结之(Entire Space Multi-Task Model)

​ 这里主要有三个基本概念。
PCVR=P(conversionclick,impression)PCTR=P(clickimpression)PCTCVR=P(conversion,clickimpression) P_{CVR}=P(conversion|click,impression) \\ P_{CTR}=P(click|impression) \\ P_{CTCVR}=P(conversion,click|impression)
​ 其中
PCTCVR=PCTRPCVR P_{CTCVR}=P_{CTR}*P_{CVR}

​ 如果我们用x表示impression的特征向量, 和 z 的取值为0或1,分别表示是否点击和是否购买,那么就有
p(y=1,z=1x)=p(y=1x)×p(z=1y=1,x) p(y=1, z=1 | x)=p(y=1 | x) \times p(z=1 | y=1, x)

阅读总结之(Entire Space Multi-Task Model)

ESMM模型的一个整体架构图如上所示。左边CVR,右边CTR模型。都是基于一个相似的BASE Model构建的网络。两个子网络的输出结果相乘之后即得到pCTCVR,并作为整个任务的输出。

ESMM模型优点

  • 实际操作中,由于P(CTR)通常很小,P(CTCVR)除这个很小的数,容易溢出。故ESMM采用了乘法的形式,避免了除法。而且,ESMM是在整个样本空间上建模,就没有SSB(sample selection bias)问题了。

  • ESMM模型中两个任务的embedding层是共享参数的,更大规模的浏览数据可以被用来训练embedding向量了,这个也解决了DS问题。

实验结果

阅读总结之(Entire Space Multi-Task Model)

这是本文的一个实验结果图。不难看出这个ESMM的效果最好。

一点启发

这是本文的一个实验结果图。不难看出这个ESMM的效果最好。
我感觉这个ESMM模型就是拓宽了思维,比如在整个样本空间进行建模以及embedding层是共享参数,还比如把P(CVR)作为中间变量等等。在处理其他问题时,我们可以从中受到启发。