写点什么

SIGIR2018 高分录用——阿里妈妈公开全新 CVR 预估模型

  • 2018-05-15
  • 本文字数:3613 字

    阅读完需:约 12 分钟

近期,阿里妈妈算法团队发表了一篇题为《Entire Space Multi-Task Model: An Effective Approach for Estimating Post-Click Conversion Rate》的论文,公开了全新的 CVR 预估模型。该模型解决了传统 CVR 预估模型难以克服的样本选择偏差和训练数据过于稀疏的问题,同时开放了业界首个包含用户序贯行为的大规模数据集(下载地址见文末)。该论文已被信息检索领域的顶级会议 SIGIR 2018(International Conference on Research on Development in Information Retrieval)高分录用。

准确预估转化率在诸如信息检索、推荐系统、在线广告投放系统等工业级的应用中是至关重要的。例如在电商平台的推荐系统中,最大化场景商品交易总额(GMV)是平台的重要目标之一,而 GMV 可以拆解为流量×点击率×转化率×客单价,可见转化率是优化 GMV 目标的重要因子,从用户体验的角度来说准确预估的转换率被用来平衡用户的点击偏好与购买偏好。

阿里妈妈算法团队在这篇论文中提出的全新的 CVR 预估模型,称之为“全空间多任务模型”(Entire Space Multi-Task Model,ESMM),下文简称为 ESMM 模型。ESMM 模型创新地利用用户行为的序贯特性,在完整的样本数据空间同时学习点击率 (post-view click-through rate, CTR) 和转化率 (post-click conversion rate, CVR),解决了传统 CVR 预估模型难以克服的样本选择偏差(sample selection bias)和训练数据过于稀疏(data sparsity)的问题。

以电子商务平台为例,用户在观察到系统展现的推荐商品列表后,可能会点击自己感兴趣的商品,进而产生购买行为。换句话说,用户行为遵循一定的顺序决策模式:impression → click → conversion。CVR 模型旨在预估用户在观察到曝光商品进而点击到商品详情页之后购买此商品的概率,

即 _pCVR_ = p(conversion|click,impression)。

假设训练数据集为\(S=\{(x_i,y_i\rightarrow z_i)\}| _{i=1}^{N}\),其中的样本\((x,y\rightarrow z)\) 是从域\(x\times y\times z\) 中按照某种分布采样得到的,\(x\)是特征空间,\(y\) 和\(z\)是标签空间,N 为数据集中的样本总数量。在 CVR 预估任务中,x 是高维稀疏多域的特征向量,yz 的取值为 0 或 1,分别表示是否点击和是否购买。\(y\rightarrow z\) 揭示了用户行为的顺序性,即点击事情一般发生在购买事件之前。CVR 模型的目标是预估条件概率 _pCVR_ ,与其相关的两个概率为点击率 pCTR 和点击且转换率 pCTCVR ,它们之间的关系如下:



传统的CVR 预估任务通常采用类似于CTR 预估( https://yq.aliyun.com/articles/565664?spm=a2c4e.11153940.blogcont533977.27.7f0525438RIPVT )的技术,比如最近很流行的深度学习模型。然而,有别于 CTR 预估任务,CVR 预估任务面临一些特有的挑战:1) 样本选择偏差;2) 训练数据稀疏;3) 延迟反馈等。



图 1. 训练样本空间

延迟反馈的问题不在本文讨论的范围内,下面简单介绍一下样本选择偏差与训练数据稀疏的问题。如图 1 所示,最外面的大椭圆为整个样本空间 _S_,其中有点击事件(y=1)的样本组成的集合为 \(S_c=\{(x_j,z_j)|y_j=1\}|_{j=1}^{M}\)

对应图中的阴影区域,传统的 CVR 模型就是用此集合中的样本来训练的,同时训练好的模型又需要在整个样本空间做预测推断。由于点击事件相对于展现事件来说要少很多,因此\(S_c\)只是样本空间 _S_ 的一个很小的子集,从上\(S_c\) 提取的特征相对于从 _S_ 中提取的特征而言是有偏的,甚至是很不相同。从而,按这种方法构建的训练样本集相当于是从一个与真实分布不一致的分布中采样得到的,这一定程度上违背了机器学习算法之所以有效的前提:训练样本与测试样本必须独立地采样自同一个分布,即独立同分布的假设。总结一下,训练样本从整体样本空间的一个较小子集中提取,而训练得到的模型却需要对整个样本空间中的样本做推断预测的现象称之为样本选择偏差。样本选择偏差会伤害学到的模型的泛化性能。

推荐系统展现给用户的商品数量要远远大于被用户点击的商品数量,同时有点击行为的用户也仅仅只占所有用户的一小部分,因此有点击行为的样本空间\(S_c\) 相对于整个样本空间 _S_ 来说是很小的,通常来讲,量级要少 1~3 个数量级。如表 1 所示,在淘宝公开的训练数据集上,\(S_c\) 只占整个样本空间 _S_ 的 4%。这就是所谓的训练数据稀疏的问题,高度稀疏的训练数据使得模型的学习变得相当困难。



阿里妈妈算法团队提出的 ESMM 模型借鉴了多任务学习的思路,引入了两个辅助的学习任务,分别用来拟合 _pCTR_ 和 _pCTCVR_,从而同时消除了上文提到的两个挑战。ESMM 模型能够充分利用用户行为的序贯特性,其模型架构如图 2 所示。

图 2. ESMM 模型

整体来看,对于一个给定的展现,ESMM 模型能够同时输出预估的 _pCTR、pCVR_ 和 _pCTCVR_。它主要由两个子神经网络组成,左边的子网络用来拟合 _pCVR_ ,右边的子网络用来拟合 _pCTR_。两个子网络的结构是完全相同的,这里把子网络命名为 BASE 模型。两个子网络的输出结果相乘之后即得到 _pCTCVR_,并作为整个任务的输出。

需要强调的是,ESMM 模型有两个主要的特点,使其区别于传统的 CVR 预估模型,分别阐述如下。

  1. 在整个样本空间建模。由下面的等式可以看出,pCVR 可以在先估计出 _pCTR_ 和 _pCTCVR_ 之后推导出来。从原理上来说,相当于分别单独训练两个模型拟合出 _pCTR_ 和 _pCTCVR_,再通过 _pCTCVR_ 除以 _pCTR_ 得到最终的拟合目标 _pCVR_ 。



  • 但是,由于 _pCTR_ 通常很小,除以一个很小的浮点数容易引起数值不稳定问题(计算内存溢出)。所以 ESMM 模型采用了乘法的形式,而没有采用除法形式。

  • pCTR 和 _pCTCVR_ 是 ESMM 模型需要估计的两个主要因子,而且是在整个样本空间上建模得到的,pCVR 只是一个中间变量。由此可见,ESMM 模型是在整个样本空间建模,而不像传统 CVR 预估模型那样只在点击样本空间建模。

  1. 共享特征表示。ESMM 模型借鉴迁移学习的思路,在两个子网络的 embedding 层共享 embedding 向量(特征表示)词典。网络的 embedding 层把大规模稀疏的输入数据映射到低维的表示向量,该层的参数占了整个网络参数的绝大部分,需要大量的训练样本才能充分学习得到。由于 CTR 任务的训练样本量要大大超过 CVR 任务的训练样本量,ESMM 模型中特征表示共享的机制能够使得 CVR 子任务也能够从只有展现没有点击的样本中学习,从而能够极大地有利于缓解训练数据稀疏性问题。

需要补充说明的是,ESMM 模型的损失函数由两部分组成,对应于 _pCTR_ 和 _pCTCVR_ 两个子任务,其形式如下:



其中,\(\theta _{ctr}\) 和\(\theta _{cvr}\) 分别是CTR 网络和CVR 网络的参数, l(.) 是交叉熵损失函数。在 CTR 任务中,有点击行为的展现事件构成的样本标记为正样本,没有点击行为发生的展现事件标记为负样本;在 CTCVR 任务中,同时有点击和购买行为的展现事件标记为正样本,否则标记为负样本。

由于 ESMM 模型创新性地利用了用户行为的序贯特性在完整的样本空间进行建模,因此并没有公开的数据集可供测试,阿里妈妈算法团队从淘宝的实际推荐系统中采集了一个包含了用户序贯行为的全新数据集,并公开了一个采样版本,下载地址为: https://tianchi.aliyun.com/datalab/dataSet.html?dataId=408 。随后,分别在公开的数据集和淘宝生产环境的数据集上做了测试,相对于其他几个主流的竞争模型,都取得了更好的性能。

表2 是在公开数据集上的不同算法AUC 效果对比情况,其中BASE 模型是ESMM 模型中左边的子神经网络模型,由于其只在点击样本空间训练,会遭遇样本选择偏差和数据稀疏的问题,因为效果也是较差的。DIVISION 模型是先分别训练出拟合CTR 和CTCVR 的模型,再拿CTCVR 模型的预测结果除以CTR 模型的预测结果得到对CVR 模型的预估。ESMM-NS 模型是ESMM 模型的一个变种模型,其在ESMM 模型的基础上去掉了特征表示共享的机制。AMAN、OVERSAMPLING、UNBIAS 是三个竞争模型。

图3. 在淘宝生产环境数据集上几种不同算法的性能测试对比

图3 是ESMM 模型在淘宝生产环境数据集上的测试效果对比。相对于BASE 模型,ESMM 模型在CVR 任务中AUC 指标提升了 2.18%,在CTCVR 任务中AUC 指标提升了2.32%。通常AUC 指标提升0.1% 就可认为是一个显著的改进。

综上所述,ESMM 模型是一个新颖的CVR 预估方法,其首创了利用用户行为的序贯特性在完整样本空间建模,避免了传统CVR 模型经常遭遇的样本选择偏差和训练数据稀疏的问题,取得了显著的效果。同时,ESMM 模型中的子网络可以替换为任意的学习模型,因此ESMM 的框架可以非常容易地和其他学习模型集成,从而吸收其他学习模型的优势,进一步提升学习效果。此外,ESMM 建模的思想也比较容易被泛化到电商中多阶段行为的全链路预估场景,如 排序→展现→点击→转化 的行为链路预估,想象空间巨大。

原文**** 链接: https://arxiv.org/abs/1804.07931

数据集下载地址: https://tianchi.aliyun.com/datalab/dataSet.html?dataId=408

2018-05-15 18:3414232

评论

发布
暂无评论
发现更多内容

大四实习生”都四面成功拿到字节跳动Offer了,你还有什么理由去摸鱼?

学Java关注我

Java 编程 架构 面试 计算机

Java面试:BIO,NIO,AIO 的区别,别再傻傻分不清楚

Java大蜗牛

Java 程序员 面试 编程语言 后端

LiteOS内核源码分析:静态内存Static Memory

华为云开发者联盟

内存管理 LiteOS 静态内存 Static Memory Membox

【案例】新基建下星环科技城轨智能视频分析系统建设

星环科技

高并发系列:架构优化之从BAT实际案例看消息中间件的妙用

Coder的技术之路

高并发 高并发系统设计 消息队列 消息中间件

高并发之存储篇:关注下索引原理和优化吧!躲得过实践,躲不过面试官!

Coder的技术之路

数据库 高并发 索引结构 索引优化

流媒体:依托于声网的连麦解决方案

小岛上的黑桃六

架构 音视频 架构师 流媒体 声网

GitHub Actions:真正的 DevOps CI

大龄程序员老羊

架构 DevOps 持续集成 Github Actions NoOps

用机器学习操控无人驾驶小车,竟然和训练狗狗的原理一样!?

亚马逊云科技 (Amazon Web Services)

架构师实战营,模块三:架构设计详细文档

ifc177

#架构实战营

zookeeper的架构

大数据技术指南

zookeeper 5月日更

架构实战营模块三作业

日照时间长

架构实战营

INNOVATE 2021 圆满落幕,一起盘点那些 AI 前沿实例!

亚马逊云科技 (Amazon Web Services)

回顾 Alex Smola 讲述的“自动化机器学习(AutoML)”,本文带你了解 AutoGluon!

亚马逊云科技 (Amazon Web Services)

YARN资源调度三种模型介绍

五分钟学大数据

YARN

GitHub开源的最全中文诗歌古典文集数据库

不脱发的程序猿

GitHub 开源 程序人生 中华古典文集数据库

yarn的多租户配置实现资源隔离

五分钟学大数据

YARN

负载均衡续:万亿流量场景下的负载均衡实践

Coder的技术之路

负载均衡 架构 高并发 负载均衡架构

Android中绘制圆角的三种方式

teoking

android

HDFS

xujiangniao

HDFS的HA以及Yarn的HA高可用

五分钟学大数据

hdfs YARN 5月日更

云图说|云数据库MySQL内核小版本升级全攻略

华为云开发者联盟

MySQL 云数据库 内核 华为云数据库 小版本升级

【LeetCode】解码异或后的数组Java题解

Albert

算法 LeetCode 5月日更

架构训练营-作业三(消息队列详细架构设计文档)

eoeoeo

架构实战营

百分点大数据技术团队:政务数据安全管理实践

百分点大数据团队

高并发系列:存储优化之也许可能是史上最详尽的分库分表文章之一

Coder的技术之路

高并发 分库分表 高并发系统设计

数据仓库分层架构及元数据管理

五分钟学大数据

数据仓库

Flink on Zeppelin 系列之:Yarn Application 模式支持

Apache Flink

flink

从简历被拒到收割8个大厂offer,我用了3个月成功破茧成蝶

比伯

Java 编程 架构 面试 计算机

万丈高楼平地起,爆肝21000字Java基础知识总结,收藏起来总有用得着的时候

北游学Java

Java 集合 线程池 IO流

专家解惑 | 关于华为云盘古大模型,你想问的都在这里~

华为云开发者联盟

计算机视觉 nlp 华为云 盘古大模型 预训练

SIGIR2018高分录用——阿里妈妈公开全新CVR预估模型_语言 & 开发_杨旭东_InfoQ精选文章