跨域CTR预估,带你一飞冲天!

2021-05-14 16:51:44 浏览数 (1)

作者:一元,四品炼丹师

MiNet: Mixed Interest Network for Cross-Domain Click-Through Rate Prediction(CIKM20)

背景

点击率预测是在线广告系统中的一项重要任务。现有的工作主要针对单域CTR预测问题和模型方面,如特征交互、用户行为历史和上下文信息。然而,广告通常以自然内容显示,这为cross domain的CTR预测提供了机会。本文解决了这个问题,并利用辅助数据,从源领域,以提高CTR预测性能的目标领域。

我们的研究是基于UC Toutiao(一个与UC浏览器应用程序集成的新闻订阅服务,每天为数亿用户提供服务),其中源域是新闻,目标域是广告。为了有效地利用新闻数据预测广告的点击率,我们提出了混合兴趣网络(MiNet),它联合建模了三个领域用户兴趣类型:

  • 跨域的长期兴趣;
  • 源域的短期兴趣;
  • 目标域的短期兴趣。

MiNet包含两个层次的attention,其中item-level的attention可以自适应地从点击的新闻/广告中提取有用信息,interest-level可以自适应地融合不同的兴趣表示。离线实验表明,MiNet的预测性能优于几种最新的CTR预测方法。我们在UC头条部署了MiNet,A/B测试结果表明在线CTR也得到了实质性的改善。

三类兴趣

为了有效的利用cross-domain的数据,本文考虑了三类用户兴趣:

  • Long-term interst across domain: 每个用户都有自己的个人资料功能,如用户ID、年龄组、性别和城市。这些配置文件特性反映了用户的长期内在兴趣。基于跨域数据(即用户与之交互的所有新闻和广告),我们能够了解到语义更丰富、统计上更可靠的用户特征嵌入。
  • Short-term interst from the source domain:对于要预测其CTR的每个目标广告,在源域中存在相应的短期用户行为(例如,用户刚刚观看的新闻)。虽然一条新闻的内容可能与目标广告的内容完全不同,但它们之间可能存在一定的相关性。例如,一个用户在观看了一些娱乐星闻之后有很大的概率点击一个游戏广告,基于这样的关系,我们就可以从源域中的有用的信息迁移到目标域中。
  • Short-term interest in the target domain:对于每个目标广告,目标域中也存在相应的短期用户行为。用户最近点击的广告可能对用户在短期内点击的广告有很大的影响。

五大挑战

  1. 并不是所有点击的新闻都表示目标广告的点击率;
  2. 不是所有点击的广告都是关于目标广告点击率的信息;
  3. 模型必须能够将信息从新闻传递到广告;
  4. 这三种用户兴趣的相对重要性在不同的目标广告中可能有所不同;例如,如果目标广告与最近点击的广告相似,那么目标领域的短期利益应该更重要;如果目标广告与最近点击的新闻和广告都无关,那么长期利益应该更重要。
  5. 目标广告和用户感兴趣的三种类型的广告的表示可能具有不同的维度(由于特征的不同数量)。尺寸差异可能会自然地增强或减弱某些表示的影响,这是不希望看到的。

为了应对这些挑战,我们提出了混合兴趣网络(MiNet),其结构下所示。在MiNet中,

  • 用户的长期兴趣通过用户特征嵌入的串联建模,是基于跨领域数据的联合学习,实现了知识的传递;
  • 来自源领域的短期兴趣通过向量来建模,聚合了最近点击的新闻信息;
  • 目标域中的短期兴趣是通过向量来建模的,它聚集了最近点击的广告的信息

MiNet包含了了两种不同的attention(item-level的和interest-level的),

  • item-level的attention同时用于source-domain以及target-domain,我们希望通过此可以直接从source domain和target domain中点击的新闻和广告中抽取有用的信息;(解决上述的挑战1和2)
  • transfer的矩阵被引入用来从新闻到广告的迁移;(解决上述的挑战3)
  • long-term的用户兴趣是基于cross-domain的数据学习的,也可以进行知识迁移(解决上述的挑战3);
  • 引入interest-level的attention动态调整三类用户兴趣的重要性, 关于不同的目标广告(解决上述的挑战4);
  • 线下和线上的实验结果表明了MiNet的有效性;

模型设计

问题定义

在线广告点击率预测的任务是建立一个预测模型来估计用户点击特定广告的概率,每个实例可以用用户信息(“用户ID”、“城市”、“年龄”等)和广告信息(“创意ID”、“活动ID”、“标题”等)以及个字段来描述。字段的实例化是一个特性。例如,“用户ID”字段可以包含诸如“2135147”和“3467291”之类的特征。表1显示了一些示例。

  • 我们定义cross-domain CTR预测任务为从source domain中利用数据来提升目标域的CTR预估。

在新闻提要广告中(如图1所示的UC Toutiao),源域是自然新闻提要,目标域是广告。在这个场景中,源域和目标域共享同一组用户,但是没有重叠项。

模型细节

特征Embedding

先将特征encode到one-hot的embedding,对于第个特征,, , 然后我们将该向量映射到低维度的稠密向量中,映射矩阵为, , embedding向量是embedding矩阵的第列。

cross-Domain的长期兴趣

对于每个广告实例,我们将特征划分为用户特征和广告特征,我们抽取出用户的所有广告特征,然后将其concat起来得到表示向量, 相似地,我们得到源域的新闻表示向量;

对于用户,他的长期兴趣表示向量可以通过拼接对应的特征embedding向量(,和是数据相关的维度),例如:一个用户有特征"UID=u123,City = BJ, Gender =male, OS=ios",我们就有:

p_u = [e_{u123} || e_{BJ} || e_{male} || e_{ios}]

其中表示向量的拼接操作.

从Source Domain得到的短期兴趣

给定一个用户,对于在目标域中预测其CTR的每个目标广告,用户通常在源域中查看新闻片段。虽然一条新闻的内容可能与目标广告的内容完全不同,但它们之间可能存在一定的相关性。例如,用户在观看一些娱乐新闻后很有可能点击游戏广告。基于这些关系,我们可以将有用的知识从源领域转移到目标领域。

我们将最近点击的新闻表示向量集合表示为, 合成的表示就是:

a_s = sum_i alpha_i r_{s_i}

其中是赋予的权重来表示aggregation中的重要性.aggregated的表示反映了从source domian的用户的短期兴趣;

所以问题就变为如何计算权重,

alpha_i = frac{exp(bar{alpha}_i)}{sum_{i'} exp(bar{alpha}_i')} \ bar{alpha}_i' = h_s^T ReLU(W_sr_{si})

上面只能捕捉点击的新闻的信息,并没有捕捉点击的news和目标广告的信息.

item-level的Attention

给定上述的约束,我们实际计算,

bar{alpha}_i = h_s^T ReLU(W_s [r_{si} || q_t || p_u || Mr_{si} odot q_t])

其中, 是维度超参数;上面式子同时考虑了下面诸多情况:

  • source domain点击的新闻;
  • target domain的target 广告 ;
  • 目标用户, ;
  • 点击新闻和目标广告的转移交互 ,其中是迁移矩阵;

通过这种方法,计算得到的不仅仅是点击新闻的函数, 同时考虑了目标广告和目标用户,也考虑了点击新闻和跨域的目标广告的关系。

目标域的短期兴趣

给定一个用户,对于每个要预测其CTR的目标广告,该用户在目标域中也有最近的行为。用户最近点击的广告可能对用户在短期内点击的广告有很大的影响。

我们将最近点击的广告的表示向量表示为,我们通过下面的方式计算的集成表示,

a_t = sum_j beta_j r_{tj}, beta_j = frac{exp(bar{beta}_j)}{sum_{j'} exp(bar{beta}_{j'})} \ bar{beta}_{j'} = h_t^T ReLU(W_t[r_{tj} || q_t || p_u || r_{tj} odot q_t])

其中, , , 上面这些反映了用户在目标域中的短期兴趣,上面考虑了:

  • 目标域中的点击广告, ;
  • 目标广告;
  • 目标用户;
  • 点击广告和目标广告的交互,因为它们在同一个域中,所以不需要迁移矩阵;

相似地,计算的能感知到目标广告和用户;

兴趣层的Attention

我们得到三类用户兴趣, , 我们使用它们一起来预测目标广告的CTR,尽管都是用来表示用户兴趣的,它们反映了不同方面的用户兴趣,我们使用下面的方式来表示:

m = [q_t || p_u || a_s || a_t]

这么做有一个问题,我们很难找到最优信息的用户兴趣信号,因为这么做我们默认所有的兴趣都是相同的权重,

m = [q_t ||v_u p_u || v_s a_s || v_t a_t]

其中是动态权重, 特殊地,我们通过下面的形式计算权重,

v_u = exp(g_u^T ReLU(V_u[q_t||p_u|| a_s || a_t]) b_u) \ v_s = exp(g_u^T ReLU(V_s[q_t||p_u|| a_s || a_t]) b_s) \ v_t = exp(g_u^T ReLU(V_t[q_t||p_u|| a_s || a_t]) b_t) \

其中

我们还观察到,我们使用来计算权重,这使得可能大于1。这是一个理想的属性,因为这些权重可以补偿尺寸差异问题。例如,当的维数远大于时(由于更多的特征),的贡献自然会被这种效应削弱。为分配[0,1]中的权重(即用sigmoid函数替换)不能解决这个问题。然而,由于这些权重是自动学习的,因此在必要时它们也可以小于1。

模型预测

z_1 = ReLU(W_1m_t b_1), z_2 = ReLU(W_2z_1 b_2), ...\ z_L = ReLU(W_Lz_{L-1} b_L)

其中表示隐藏层的个数, 表示第层的权重矩阵和bias向量,最终我们用下面的方式生成最终的预测:

bar{y}_t = frac{1}{1 exp[-(w^Tz_L b)]}

模型学习

loss_t = - frac{1}{|Y_t|} sum_{y_t in Y_t}[y_t logbar{y}_t (1-y_t)log(1- bar{y}_t)]

其中, 最终模型的loss是:

loss = loss_t gamma loss_s

其中是平衡参数, 是全域共享的, 当优化共享loss的时候, 是从双域上联合优化的。

实验

1. Effectiveness

  • MiNet不仅考虑了用户的长期兴趣,还考虑了用户对这两个领域的短期兴趣。通过适当地组合这些不同的兴趣信号,MiNet算法的性能明显优于其他方法.

2. Ablation Study: Level of Attention

  • 无论是item-level attention还是interest-level attention都能提高AUC,两种注意水平的使用都能提高AUC。此外,“兴趣-Attention(sigmoid)”的表现比“兴趣-Attention(exp)”差得多。这是因为不恰当的激活函数不能有效地解决维度偏差问题。这些结果证明了所提出的层次注意机制的有效性。

3. Ablation Study: Effect of Modeling Different Types of User Interest

  • 当在MiNet中综合考虑所有这些因素时,我们得到了最高的AUC,表明不同类型的兴趣可以互补,联合建模可以得到最佳和更健壮的性能。

4. Online Deployment

  • 在线A/B测试表明,与DSTN相比,MiNet使在线CTR提高了4.12%。

小结

本文研究了在线广告的跨域CTR预测问题。我们提出了一种新的方法,称为混合兴趣网络(MiNet),它模拟了三种类型的用户兴趣:

  • 跨域的长期兴趣;
  • 源域的短期兴趣;
  • 目标域的短期兴趣。

MiNet包含两个level的注意,其中item-level attention可以动态地从最近点击的新闻/广告中提取有用信息,interest-level attention可以自适应地调整不同用户兴趣信号的重要性。离线实验验证了三种用户兴趣模型的有效性和分层注意的使用。在线A/B测试结果也验证了该模型在实际网络广告CTR预测任务中的有效性。

参考文献

  1. MiNet: Mixed Interest Network for Cross-Domain Click-Through Rate Prediction:https://arxiv.org/pdf/2008.02974.pdf

0 人点赞