[腾讯]结合蒸馏和多任务学习的召回模型
1、背景
2、DMTL介绍
DMTL模型的整体结构如下图所示:
可以看到,左侧的teacher网络采用多任务学习结构,右侧的的student网络仍然采用双塔结构,下面分别对其进行介绍。
2.1 Teacher网络
Teacher网络采用多任务学习的方式,其中两个任务分别用于建模CTR和阅读时长(阅读时长即图中的CVR),特别地,对于阅读时长任务来讲,其训练样本的正样本为时长大于50s(这里是依据平均时长来设定的阈值)的样本,而负样本为阅读时长小于等于50s的样本(因此这里并不是直接预测阅读时长,而是根据阅读时长将样本切分为正负样本)。为了解决选择性偏差和样本稀疏的问题,采用了ESMM的架构,并使用MMoE来提升最终的效果。预估值计算如下:
loss总共包含两部分,即ctr的loss和ctcvr的loss:
2.2 Student网络
Student网络采用召回阶段最常用的双塔模型,得到用户塔和item塔的embedding之后,其输出计算如下:
为了使召回阶段模型能够有效的预测阅读时长,希望双塔模型的输出能够与具有更高精度的多任务学习模型(teacher网络)输出接近,因此student网络的损失如下:
这样,线上仅需要部署双塔模型即student网络即可。
3、实验结果及分析
最后来看一下实验结果,离线的AUC以及线上的阅读时长都得到了一定的提升:
好了,论文就介绍到这里,下期见~~
赞 (0)