推荐系统遇上深度学习(九十一)-[阿里]跨域点击率预估混合兴趣模型MiNet
本文要介绍的论文是《MiNet: Mixed Interest Network for Cross-Domain Click-Through Rate Prediction》
论文下载地址为:https://arxiv.org/abs/2008.02974
1、背景
当前的点击率预估模型往往是在单域上进行的,比如在预估广告的点击率时,仅仅使用广告上的数据。但是呢,在新闻推荐中呢,广告往往是和自然结果(普通新闻)一起展示的,尽管广告的内容和自然结果的内容相差较大,但用户在自然结果上的浏览行为也可能会对广告点击率预估提供有用的信息,比如当一个用户浏览了一些娱乐方面的资讯,那他就会有更高的概率点击游戏方面的广告。因此,在广告点击率预估中,引入用户在自然结果上的浏览数据在理论上可以提升CTR预估的效果。
本文主要介绍在UC头条上(如下图所示),如何使用用户在自然结果(source domain)上的浏览行为,来提升在广告(target domain)上的点击率预估效果。提出的模型称为MiNet(Mixed Interest Network),一起来学习下。
2、MiNet介绍
2.1 整体介绍
模型的整体结构如下图所示:
模型主要建模用户三个方面的兴趣:
1)跨域长期兴趣:这里主要通过用户的基本属性信息来表示用户内在的长期兴趣,比如20岁左右的男性用户可能对体育赛事的资讯或者游戏类的广告比较感兴趣
2)源域短期兴趣:主要是对用户在自然结果上的短期浏览行为进行建模
3)目标域短期兴趣:主要是对用户在广告上的短期点击行为进行建模
同时,模型采用了两个层级的attention,首先是item级别的,主要是从用户的点击行为中抽取出和目标广告相关的信息,另一个是interest级别的,主要是建模不同兴趣的重要程度。接下来,我们详细介绍各个部分。
2.2 特征Embedding
模型的输入大都是id类特征,如用户ID、用户性别,用户所在地域,用户的手机设备型号、用户点击过的自然结果ID、广告结果ID等等,这类id类特征首先会转换为对应的embedding表示。
2.3 跨域长期兴趣建模
这里主要通过用户的基本属性信息来表示用户内在的长期兴趣,比如20岁左右的男性用户可能对体育赛事或者游戏类的资讯或者广告比较感兴趣。这里主要做法是将用户ID、用户性别、用户所在地域、用户的手机设备等embedding向量进行拼接,输出为pu。例如用户ID为123,城市为北京,男性用户,使用苹果手机,得到的长期兴趣表示为:
其中||代表向量拼接。
2.4 源域短期兴趣建模
这里主要是对用户浏览过的自然结果进行建模,抽取用户在source domain中的兴趣。用户近期点击过的每一个自然结果对应的向量用rsi表示。主要的做法是对这些向量进行加权求和,得到输出as:
关于权重的计算,文中介绍了三种方法:
1)第一种是加权平均方法,这种方法计算比较简单,但没有考虑不同item之间的重要程度
2)第二种权重计算方式如下,这种方式没有考虑item与目标广告之间的相关性:
3)论文采用的方式如下:
其中,rsi是用户点击的第i个自然结果,qt代表目标广告,pu代表用户的长期兴趣向量,M代表transfer矩阵,将source domain的向量空间映射到target domain的向量空间。
2.5 目标域短期兴趣建模
这里主要是对用户浏览过的广告结果进行建模,抽取用户在target domain中的兴趣,建模方式同在源域相同,只不过不需要对向量进行映射:
2.6 兴趣层级Attention
最后是将用户长期兴趣输出pu,源域短期兴趣输出as,目标域短期输出at以及目标广告向量qt进行拼接,输入到多层全联接神经网络中,得到点击率预估预测值。
但是不同的兴趣对于目标广告是否点击起到不同的作用,如果目标广告和用户最近点击的广告相似,那么用户在目标域的短期兴趣则会起到更重要的作用,如果目标广告和用户点击过的自然结果和广告都不相似,则长期兴趣则会起到更重要的作用。
因此在将前面介绍的几部分输入到全联接神经网络之前,首先需要计算各兴趣的权重:
最后全联接部分的输入为:
2.7 辅助任务
模型还进一步加入了辅助任务,来辅助用户长期兴趣的学习,辅助任务也是点击率预估任务,主要通过用户的长期兴趣来预测用户对源域中自然结果的点击概率,该部分示意图如下:
2.8 输出及损失函数
模型两部分的损失均使用交叉熵损失,最终通过加权的方式得到最终损失:
3、实验结果分析
论文对比了MiNet和部分单域和跨域模型的结果,如下所示:
4、总结
本文提出了Mixed Interest Network (MiNet)来进行跨域的点击率预估,并取得了不错的实验效果。跨域预估的主要优势是能够对冷启动问题起到一定的帮助,如果用户在目标域中的行为比较少的话,可以通过在源域中的行为来进行辅助的预估,提升冷启动的效果。
好了,本文就介绍到这里,感兴趣的童鞋可以看一下原论文。
推荐系统遇上深度学习(九十)-[阿里]计算成本感知的轻量级预排序系统COLD
推荐系统遇上深度学习(八十八)-[微信]充分利用显式&隐式反馈的深度反馈网络