推荐系统模型之: 基于层次表示自动聚合的 CVR 预估模型

猜你喜欢

0、某视频APP推荐策略和推荐算法详解

1、如何搭建一套个性化推荐系统?

2、内容推荐策略产品经理的方法与实践

3、京东推荐算法精排技术实践

4、微博推荐算法实践与机器学习平台演进

5、腾讯PCG推荐系统应用实践

6、强化学习算法在京东广告序列推荐场景的应用

7飞猪信息流内容推荐探索

8、华为项目管理培训教材

9、美团大脑系列之商品知识图谱的构建和应用

本文主要介绍阿里妈妈大外投广告算法团队在 CVR 预估模型与多任务学习方法上的一些探索。我们提出了一种基于层次表示自动聚合的 AutoHERI 模型(Automated Hierarchical Representation Integration),并在多个外投业务上落地应用。该项工作论文已发表在 CIKM 2021 ,欢迎交流讨论。

论文下载:

https://dl.acm.org/doi/10.1145/3459637.3482061

▐ 背景

转化率预估模型(post-click conversion rate estimation,即 CVR 模型)旨在预估用户在发生点击行为后会继续发生转化行为的概率,是推荐和广告系统中的重要模块,在排序、智能出价等功能中发挥着关键作用。在阿里妈妈外投广告业务中,广告在站外媒体展现给用户,用户点击广告后会唤端到淘宝 app 来继续发生加购、成交等深度行为。广告主通常会追求后链路效果优化(例如支付成本),因此 CVR 预估模型的优化一直是外投广告算法的迭代重点。

83ef8e2a987873834d6318f0383e37ce.png
图 1:外投广告场景中的用户行为漏斗示例

在推荐与广告系统中,用户行为漏斗通常由 "展现-点击-...-加购-转化-复购-..." 等多个阶段构成,越靠后的阶段行为数越少。转化行为处在漏斗的末端,因此 CVR 模型的学习往往面临着正样本过少的数据稀疏问题。外投广告场景中,用户往往是逛与玩的心智,购买意愿相较于淘宝 app 站内广告场景要相对低,因此用户的转化行为往往更加稀疏,使得 CVR 模型学习有着更大的难度。此外,由于只有点击样本可以收集到 post-click 的转化 label,CVR 模型的训练通常使用点击样本集合,而在线服务时 CVR 模型需要对参竞空间的流量进行预测,因此存在着训练空间与预测空间不一致的样本选择偏差问题。

建模 CVR 预估的典型做法是将样本量更加丰富的前链路预估任务(如 CTR 预估)与之进行联合学习,近年来有许多精彩工作,包括 ESMM、DBMTL、GMSL、ESM2、Multi-DR、AITM [1-6] 等模型。在此基础上,我们着眼于更加精细地刻画全链路各预估任务之间的关联来提升对后链路行为的预估效果。从用户行为漏斗来看,各个预估任务之间存在级联式的层次关系:以最通用的 "展现-点击-转化" 漏斗为例,CTR、CVR 预估这两个任务可视作是前级、后级任务,形成了级联;类似地,外投广告场景中的 "展现-点击-唤端-转化" 行为漏斗中,也可以推广得到各预估任务之间的层次关系,例如 CTR 预估和唤端率预估是 CVR 预估的前级任务。为了利用任务间的层次关系来提升后链路行为预估模型的效果,我们希望建立一种能够将多个级联任务的建模过程显式联系起来的方法,探索如何有效地把前级任务所学到的较浅层转化信息聚合到后级任务的建模之中。同时,考虑到外投广告的业务场景众多,在单一场景有效的信息聚合方式未必适用于其他场景,因此我们希望所建立的方法在接入不同业务场景时可以高效地获取适应于特定场景的信息聚合模式。

基于上述动机,我们提出了基于层次表示自动聚合的 AutoHERI 模型 (Automated Hierarchical Representation Integration),通过 AutoML 的思想来建模各任务特征表示学习过程的层次关联以提升后链路预估任务的表示学习。AutoHERI 模型的核心是通过 one-shot 架构搜索技术来高效地自动学习各任务之间特征表示的聚合模式,从而具备了接入新场景时的适应能力。在外投广告业务亿级数据集上的实验结果表明 AutoHERI 模型的 CVR 预估性能显著优于此前的多个方法。目前,AutoHERI 模型已在多个外投业务上落地应用。

▐ 方法

不失一般性,这里先通过 CTR、CVR 两任务联合建模的场景来介绍所提出的层次表示自动聚合方法,而后再介绍如何将其推广到更一般的多任务建模场景中。

77116cce14b994c9117c3d7c5e8b686f.png
图 2 (a):AutoHERI 模型整体结构,考虑了多个预估任务之间级联关系的层次聚合;图 2 (b) :平行聚合,未考虑任务间的关系

基础网络结构

联合建模 CTR、CVR 两个任务时,AutoHERI 模型的基础网络结构为典型的先共享 embedding 层、再接入两个多层 DNN 网络分别建模 CTR/CVR 的形式,如图 2 (a) 所示。通过与数据量更充足的 CTR 任务共享 embedding 层,一定程度上缓解 CVR 任务数据稀疏带来的 embedding 训练不充分的问题。而后,两个多层 DNN 网络分别用于学习 CTR、CVR 任务的向量表示,最后接入 logistic 函数来给出模型预估的点击概率 以及预估的点击后转化概率 。

层次表示聚合

在用户行为漏斗中,各预估任务之间形成了级联式的层次关系。为了充分利用前级任务(i.e., CTR 预估)学到的表示来提升后级任务(i.e., CVR 预估)的学习效果,AutoHERI 模型将 CTR 网络的中间层输出向量显式地聚合到 CVR 网络的表示学习过程中,建模多任务之间的级联关系。我们将这种把前级任务的表示融入到后级任务的做法称为层次表示聚合。

如图 2 (a) 右侧所示,为实现层次表示聚合,我们在两个 DNN 网络之间添加 layer-wise 的聚合连边,将 CTR 网络的中间层输出向量连接到 CVR 网络的中间层输入,希望找到最优的连边组合来提升 CVR 预估效果。这种聚合连边方式允许从前级任务网络的每一层连接到后级任务网络的每一层。具体地,将两个 DNN 网络的层数分别记作 ,那么全部候选连边共有 个,每条连边为二值变量:取值为 1 表示有这条连边,取值为 0 表示没有这条边,层次表示聚合的目标是找出最优连边组合使 CVR 预估这一后级任务的性能最佳。将 CTR 网络的第 层输出向量记作 、CVR 网络的第 层输出向量记作 ,当引入从 CTR 网络的各层向 CVR 网络第 层的连边 后, 通过如下聚合公式进行计算:

其中, 是 CVR 网络第 层的参数; 函数是一个聚合算子,用于将 CTR 网络的各层向量 与  进行聚合来输出最终的向量表示 。这里我们实现 的方式是先将各个向量拼接起来 ,而后将其进行线性映射来得到 。

作为对比,图2(b) 则给出了一种不考虑各预估任务之间层次性的平行表示聚合方式,CTR 网络、CVR 网络可以互相连接到对方的层。为避免成环导致前向传播过程无法计算,平行聚合方式仅允许一个网络的低层(靠近输入的层)向另一网络的高层(靠近输出的层)进行连接,而不能像 AutoHERI 的层次聚合方式那样实现从前级任务的高层聚合至后级任务的低层的灵活连接。

在层次聚合的情形下,可能的连边组合共有 种。AutoHERI 利用神经网络架构搜索来学习最优的连边组合。

讨论:相比于人工设计聚合模式的 DBMTL [2]、GMSL [3] 模型,我们提出的 AutoHERI 模型基于 AutoML 思想来自动学习多任务表示之间的最优聚合模式,避免了反复试错来确定模型结构的过程,具备接入新场景时高效建模聚合模式的能力。

31a361ca4f047d6c8d338daf2acae067.png
图3:左侧为 DBMTL 模型[2]、右侧为 GMSL 模型[3],红色框内为人工设计的多个预估任务之间的聚合模式。其中,DBMTL 模型在输出层建立了各预估任务的序列依赖,GMSL 模型则通过 GRU 单元建立序列依赖。

基于 one-shot 搜索的自动聚合

在一个业务场景下搜索得到的网络结构往往在其他场景不是最优的,因此面临新场景时比较合适的做法是重新搜索最优连边组合。神经网络架构搜索的训练代价往往较高,如果每当接入一个场景就重新搜索会带来较为严重的效率问题。为降低接入新场景时的搜索代价,我们通过 one-shot 架构搜索技术 [7-9] 来提升搜索效率,将二值连边的优化问题转为连边概率的优化,从而可以直接利用梯度下降求解出连边。

具体地,基于 one-shot 搜索的 AutoHERI 模型将每个二值连接 松弛到连续值 (伯努利分布的期望),并将聚合公式中的 替换为 。进而,AutoHERI 模型可以通过梯度下降来联合优化:1)网络参数 ,含 embedding、DNN、聚合算子的线性映射参数;以及 2)连边概率值 。对于一条展现样本,记 与 分别为点击 label 与 post-view 的转化 label,我们参考 ESMM 模型 [1] 所提出的全空间训练方式,将目标函数定义为优化 CTR、CTCVR 这两个预估任务的交叉熵损失:

其中 是超参数。注意到当样本是点击未转化时,其是 CTR 预估任务的正样本、CTCVR 预估任务的负样本,为避免梯度冲突,我们可对 CTCVR 的损失函数执行 stop gradient 操作使其梯度不会回传到 CTR 网络。

AutoHERI 模型的训练过程基于双层优化(bi-level optimization),联合训练网络参数和连边概率:

具体而言,在每个 iteration 中,首先更新网络参数、同时 fix 连边概率;而后 fix 网络参数、更新连边概率。需要注意的是这两次更新需要使用不同的数据。为了令连边概率能够更好地收敛,我们参考 [9] 引入了一个熵正则项 。

扩展到更多建模任务

在许多外投广告场景中,广告主有同时优化多个目标的诉求,例如同时优化唤端成本和支付成本。这里我们以 "展现-点击-唤端-转化" 这一用户行为漏斗为例,介绍当预估任务超过两个时 AutoHERI 的建模方式。

ca1e8239f183ece2bbee190d720cd37e.png
图 4:建模超过两个任务时,AutoHERI 模型的结构。

这里涉及三个预估任务:点击率、点击后唤端率、唤端后转化率。如图 4 所示,此时 AutoHERI 模型的基础网络结构包含共享 embedding 层以及三个 DNN 网络来分别预估上述三个概率。为了建模这三个预估任务之间的层次性,候选连边有三组:1)从点击率网络连接到唤端率网络;2)从唤端率网络连接到转化率网络;以及 3)从点击率网络连接到转化率网络。对于后级任务的网络(此处为唤端率网络和转化率网络),聚合公式可由两个预估任务情形推广得到。在实践中,我们实验发现将相邻两个任务的网络进行表示聚合即可获得不错的效果,上述的第三组连边并不是必要的。

▐ 实验验证

我们在阿里妈妈电商外投广告业务数据集以及公开数据集上验证 AutoHERI 模型的效果。我们首先对比 AutoHERI 模型与多个基线模型的 CVR 预估效果,而后从消融实验和训练效率角度进一步分析。

实验数据方面,我们在两个数据集上进行离线实验:第一个是公开数据集 Ali-CCP,展现样本 8000 万+,每个样本有点击、转化两个标签;第二个是电商外投业务数据集,展现样本 4 亿,每个样本有点击、唤端、转化三个标签。评价指标方面,我们汇报了 CVR、CTCVR 预估任务上的 AUC 以及 NLL。其中,为了公平比较各个 CVR 模型,在评价它们的 CTCVR 预估性能时使用统一的 CTR 模型给出点击率预估值。

335e00d310f4986ba93c3a8eab1ad0b1.png
表 1:两个数据集上的 CVR 预估效果
244022a0dda18843c7aec49108ec264a.png
表 2:消融实验与训练效率实验

表1 汇报了两个数据集上的 AUC、NLL 评价指标。可以看出,当模型显式建模了多任务之间关联后,预估效果均有提升。AutoHERI 模型通过自动学习多任务表示的最优聚合模式,在两个数据集上都取得了最优的 CVR 预估效果。为了考察 AutoHERI 模型的效果提升来源,表2 给出了消融实验结果。可以看出,层次聚合模式相比平行聚合模式有较明显的提升,并且 one-shot 架构搜索相比于传统的基于演化的搜索性能持平。我们进一步考察 AutoHERI 模型的训练效率,在表2 的最后一列给出了各模型的训练时间,可以发现使用 one-shot 搜索时 AutoHERI 模型的训练时间显著降低,具备接入新场景时高效获取信息聚合模式的能力,较好地平衡了效果与效率。

5010a0ce1e1316392afd806f7193c8ff.png
图 5:自动搜索得到的聚合连边

上图给出了在外投业务数据集上搜索出来的结构,较难通过人工反复试错的方式设计出来。我们进一步在用增外投场景进行在线实验,线上效果正向:转化率 +4.9%、支付成本 -5.8%,已经推全量。目前,AutoHERI 模型的效果目前已在多个外投业务得到验证。

▐ 总结

为了充分利用用户行为漏斗中各预估任务之间的级联关系来提升 CVR 预估性能,我们提出了基于层次表示自动聚合的 AutoHERI 模型,核心是通过 one-shot 架构搜索技术来高效地自动学习各任务之间特征表示的聚合模式,具备接入新业务场景时的适应能力。我们的工作是对自动学习级联任务之间的信息聚合模式的初步探索,还有进一步的优化空间。例如,在目前的 AutoHERI 模型中,聚合算子的设计是较为简单的拼接再映射的操作,还有更多尝试有待挖掘;此外,将 AutoML 思想应用于多任务模型中除表示聚合之外的其他模块,也是值得探索的方向。

参考文献

[1] Xiao Ma, Liqin Zhao, GuanHuang, Zhi Wang, Zelin Hu, Xiaoqiang Zhu, and Kun Gai. 2018. Entire space multi-task model: An effective approach for estimating post-click conversion rate. In Proceedings of SIGIR.

[2] Qi Wang, Zhihui Ji, Huasheng Liu, and Binqiang Zhao. 2019. Deep Bayesian Multi-Target Learning for Recommender Systems. arXiv preprint arXiv:1902.09154 (2019).

[3] GMSL: https://mp.weixin.qq.com/s/b0mHh-cTeY6LtZ88BlAleQ

[4] Hong Wen, Jing Zhang, Yuan Wang, Fuyu Lv, Wentian Bao, Quan Lin, and Keping Yang. 2020. Entire space multi-task modeling via post-click behavior decomposition for conversion rate prediction. In Proceedings of SIGIR.

[5] Wenhao Zhang, Wentian Bao, Xiao-Yang Liu, Keping Yang, Quan Lin, Hong Wen, and Ramin Ramezani. 2020. Large-scale Causal Approaches to Debiasing Post-click Conversion Rate Estimation with Multi-task Learning. In Proceedings of WWW.

[6] Dongbo Xi, Zhen Chen, Peng Yan, Yinger Zhang, Yongchun Zhu, Fuzhen Zhuang, and Yu Chen. 2021. Modeling the Sequential Dependence among Audience Multi- step Conversions with Multi-task Learning in Targeted Display Advertising. In Proceedings of KDD.

[7] Hanxiao Liu, Karen Simonyan, and Yiming Yang. 2019. DARTS: Differentiable architecture search. In Proceedings of ICLR.

[8] Sirui Xie, Hehui Zheng, Chunxiao Liu, and Liang Lin. 2019. SNAS: Stochastic neural architecture search. In Proceedings of ICLR.

[9] Yuan Gao, Haoping Bai, Zequn Jie, Jiayi Ma, KuiJia, and Wei Liu. 2020. MTL-NAS: Task-agnostic neural architecture search towards general-purpose multi-task learning. In Proceedings of CVPR.

 
 
 
 

「 更多干货,更多收获 」

4b80cb72a783bb1160d1c6e7b3a02727.gif

 
 

推荐系统工程师技能树

【免费下载】2021年9月份热门报告盘点

美团大脑系列之:商品知识图谱的构建及应用

【干货】2021社群运营策划方案.pptx

大数据驱动的因果建模在滴滴的应用实践

联邦学习在腾讯微视广告投放中的实践如何搭建一个好的指标体系?如何打造标准化的数据治理评估体系?

【干货】小米用户画像实践.pdf(附下载链接)

推荐系统解构.pdf(附下载链接)

短视频爆粉表现指南手册.pdf(附下载链接)

 
 
推荐系统架构与算法流程详解如何搭建一套个性化推荐系统?某视频APP推荐策略详细拆解(万字长文)

2020年轻人性和爱调查报告.pdf(附下载链接)

关注我们

智能推荐

个性化推荐技术与产品社区

长按并识别关注

f2e9fe75e00afb60969eccc5c1546eea.png

您的「在看」,我的动力👇
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值