本文结合阿里电商业务场景的特点,介绍了阿里在匹配端和排序端的基于深度学习的一些工作。
搜索营销(sponsored search)是目前广告主在互联网上进行数字化营销的主要手段之一,也是机器学习技术在工业界最成功的应用场景之一。在搜索营销的场景下,广告主可以通过出价的方式参与流量分配,平台的主要任务是优化流量分配和计价,实现效率的最大化和生态的健康发展。其中核心的技术问题主要围绕如何高效的分配流量来展开,包括:如何理解用户的意图?如何对用户进行表达?如何对广告进行表达?如何挖掘用户和广告的关系?如何对用户的行为进行预估?如何对流量进行定价等等。
近年来机器学习技术在搜索,推荐,营销等领域得到了广泛的应用。阿里妈妈搜索营销团队也一直致力于探索前沿技术和具体业务场景的深度融合,推动业务的发展。围绕以上的技术问题给出结合自身业务特点的解法。具体说来,流量分配的过程通常分为流量匹配阶段和排序阶段:
流量匹配阶段的主要任务是理解用户意图,在超大规模的全量集合中找到合适的候选集进行粗排,降低后续排序阶段的计算量;
排序阶段解决的主要问题则是对用户的深度理解,对用户行为进行精准的预估。
下面我们将从这两个阶段的实际问题出发,介绍我们的一些工作。
1 智能匹配
1.1 基于用户行为异构图的个性化检索框架
在搜索营销中,匹配端负责理解用户的搜索意图,需要快速准确地从海量广告中检索出一个小规模的高质量广告候选集,设计过程中需要兼顾系统的效果与效率。匹配系统又可以被看作为一个检索系统。在个性化时代,随着越来越多的个性化信息(用户在平台上的查询、浏览、点击、收藏、加购等行为)被引入系统,传统的基于搜索词和广告相关性的检索方法无法识别用户个性化的搜索意图。此外,基于相关性的优化目标和平台的目标(RPM、CTR、GMV 等)并不完全一致。
为了解决这些问题,我们突破了以「关键词」和「相关性」为核心的传统检索框架,提出了一种面向最终目标,基于用户行为异构图的个性化检索框架。
图 1. 基于用户行为异构图的个性化意图匹配。异构图中包含了三种节点:用户个性化的搜索意图信号、丰富的广告检索键和广告。
在这个新的智能检索系统中,我们首先使用用户在平台上的历史行为构建出一张用户行为异构图。异构图中节点分别表示「用户搜索信号」、「广告检索键」和「广告」,边分别表示「用户搜索意图信号改写」关系和「广告召回」关系。接着,检索系统面向平台 RPM、CTR 等指标,学习异构图中边的权重,挖掘出重要的改写关系和广告召回关系。这样,通过对异构图的深入挖掘,检索系统直接面向平台目标,同时进行了「用户搜索意图信号改写」和「广告召回」两个检索子任务的统一联合学习。最后,检索系统根据模型的边挖掘结果,智能地自动构建相应的「改写索引」和「广告召回索引」。
通过两个模型智能构建的索引,检索系统将用户行为异构图和模型挖掘结果存储下来,实现了对线上搜索请求的高效检索。由于新的智能检索模型不再强制要求广告商购买关键词,我们在新的检索系统使用 OCPC 策略,在保证广告商 ROI 的基础上,决定广告的点击收费。
关于此工作的论文《Beyond Keywords and Relevance: A Personalized Ad Retrieval Framework in E-Commerce Sponsored Search》已被 WWW2018 接收。
1.2 基于大规模异构网络 Embedding 的向量化检索模型
图 2. a) 使用全淘数据构建大规模异构网络;b) 通过深度学习技术对图中节点进行 Embedding;c) 根据用户搜索意图节点和广告节点的 Embedding 向量距离,使用 ANN 搜索进行匹配。
然而,基于上述方法的广告检索框架,依然是一种「硬」检索方式,索引关系受限制于用户行为的分布,面临着长尾流量覆盖不足等问题,另外浅层线性模型也限制了检索的精度。因此,我们进一步提出基于大规模网络 Embedding 的向量化检索模型。
通过 Graph Embedding、深度学习等技术,向量化检索模型可以得到用户搜索意图和广告在同一空间的深度向量表示,进而通过向量之间的距离进行全局检索,即提升了计算精度,又可解决长尾流量覆盖的问题。我们使用全淘数据构建超大规模异构网络(数亿节点和数百亿边),网络中包含多种类型的节点(如搜索词、商品、广告等)和多种类型的边(如用户行为、广告主行为、内容相似度等)。
这使得我们面临两方面的巨大挑战:一是巨大的网络规模产生海量的训练样本,二是如何构造模型来学习异构节点的复杂关系。为此,我们提出了一种创新的大规模异构网络 Embedding 算法和基于图数据库的分布式训练方法。
相关工作已经形成论文,正在投稿中,后续会公开出来。
1.3 联合优化的向量化检索模型和深度粗排模型
图 3 联合优化的向量化检索模型和深度粗排模型
在搜索营销的场景中,存在着多种检索通道,比如传统的关键词检索、上文提到的个性化检索和向量化检索;而整个匹配阶段是个多阶段检索过程,在这些检索通道之后还需要经过一个粗排序阶段。
在工业届中,在精排序阶段应用深度学习模型,已经有比较成熟的方案。然而在粗排阶段应用深度学习模型,并没有很好的解决方案,因为在粗排阶段需要处理的候选集规模比精排阶段高 1 到 2 个数量级,深度学习模型在这里会面临很大的挑战,需要很好的平衡 Efficiency 和 Effectiveness。
针对这个问题,我们创新的提出了一种联合优化向量化检索模型和粗排模型的方法。该方法通过 Multi-task Learning 的方式端到端的学出两个模型。在向量化检索模型中,特征上除了上文提到的 Graph Learning 出来的向量,还加入了图像向量等,行为序列上采用 RNN 建模;粗排模型和向量检索模型公共特征和大部分网络结构,只在最后一层有一些区别,这样在在线 Inference 阶段可以节省大量计算。
相关工作已经形成论文,正在投稿中,后续会公开出来。
2 智能排序
排序阶段要解决的主要问题是对用户的行为进行精准预估。近年来,深度学习方法在图像、NLP、语音信号处理等领域取得了显著的发展。在推荐、搜索领域也有很多的工作出现。例如 wide&deep[1] 结构对 id 特征和连续特征进行融合,同时兼顾模型的记忆能力和泛化能力;fnn[2],deepfm[3] 等对稀疏特征的组合关系进行自动学习等等。
在阿里的搜索营销系统中,我们也对深度学习进行了探索,结合自身的业务特点,提供了一套解决方案。在阿里这样一个电商的场景中,一个主要的特点是以图像为主要的信息载体,商品/广告的内容包括图像,文本描述等等。用户在平台的行为是一个逛街的过程,用户进行搜索、浏览、对平台展现的商品进行比对,决定是否点击,然后对喜爱的商品进行收藏、购买。用户的行为之间存在比较强的内在关联。用户在当前时刻的点击意愿,既与当前时刻的用户看到的信息有关,又与这个用户的前置行为密切相关。因此,对于用户的行为预估,一方面需要对用户当前看到的内容有很好的表达,另一方面也需要去发掘用户的一系列行为之间的内在联系。
在对用户的行为进行建模的过程中,我们借鉴了大脑对信息的感知过程去模拟。整个模型分为感知网络,记忆网络和判断网络三个部分(图 4)。感知网络对当前的输入信息进行表达学习,对当前的 query、ad、user,上下文场景信息进行特征表达学习;记忆网络用来存储用户的历史行为,使用外部存储来记录与当前样本相关的历史信息;判断网络用来学习用户的历史行为和当前感知内容之间的关系,基于用户的感知内容和历史行为对用户当下的行为进行预估。
图 4 基于深度学习的用户行为预估优化结构图
2.1 感知网络
感知网络的作用是对<User, Query, Context, Ad>这样的四元组进行特征表达学习。样本的原始信息中包含了大量的非结构化数据,都在感知网络中转化为合适的表达形式。感知网络提供了多种感知通路,对当前样本的原始信息(连续变量、离散值变量等)进行预处理和 Embedding 操作,形成激励信号。通过 Embedding 模块,把离散值变量映射成固定长度的连续值向量,便于和其他的连续特征进行融合。Embedding 的过程类似于 word2vec 的映射过程。Embedding 向量可以区分原始信息的差异,向量的夹角和距离也能刻画原始信息的相似程度。
2.2 记忆网络
记忆网络的作用是存储用户的历史行为。记忆网络包括三部分内容:记忆如何存储、记忆如何查询和记忆如何更新。
在电商环境中,用户的行为不仅受到短期行为的影响,一些长期行为(比如用户在上一季度的点击购买行为)也会对当前的行为预估起到指导作用。因此,我们在记忆网络中设计了长期记忆和短期记忆两种记忆存储类型,分别采用不同的信息压缩方式。
对短期记忆保留更多的用户原始行为,对长期记忆进行压缩,保留用户的累积状态。在记忆查询模块,通过多种类型的内存读(Memory Read)操作,使用当前激励信息在历史记忆内容中查询相关的信息计算输出记忆结果。在记忆更新模块,在当前样本进行展示之后,调用不同的内存写模块(Memory Writer)把激励信号、点击标签和记忆查询结果更新到外部存储中,用于后续的行为预测。
2.3 判断网络
判断网络的作用是学习用户的历史行为和当前感知内容之间的关系,并且基于用户的感知内容和历史行为对用户当下的行为进行预估。判断网络由两部分组成。第一部分是信号融合模块,把记忆网络的输出信息和感知网络输出的当前样本激励信号进行融合,融合的方式可以采用拼接,内积或是各种 pooling 的方式,在我们的网络中,我们采用了拼接的方式来进行融合。第二部分是深度神经网络,目前使用多层的全连接网络对拼接信号进行处理。
相关工作已经形成论文,正在投稿中,后续会公开出来。
总结
在本文中,我们结合阿里电商业务场景的特点,介绍了我们在匹配端和排序端的基于深度学习的一些工作。包括面向平台最终目标的个性化检索框架,联合优化向量化检索模型和粗排模型,以及基于深度学习的用户行为预估模型。这些工作给我们的系统中带来了很大的效果提升。目前这些工作有了一个很好的开端,后续会基于目前的框架对各个模块做进一步的优化。
参考文献
[1] Heng-Tze Cheng and Levent Koc. 2016. Wide & deep learning for recommender systems. In Proceedings of the ACM 1st Workshop on Deep Learning for Recommender Systems. 7-10.
[2] W Zhang, T Du and J Wang, Deep Learning over Multi-field Categorical Data: A Case Study on User Response Prediction. In Proceedings of European Conference on Information Retrieval, 2016.
[3] Huifeng Guo, Ruiming Tang, Yunming Ye, Zhenguo Li, and Xiuqiang He. Deepfm: A factorization-machine based neural network for ctr prediction. In Proceedings of International Joint Conference on Artificial Intelligence, 2017.
作者简介
刘凯鹏(花名:治平)博士,现任阿里妈妈搜索广告算法负责人,阿里巴巴资深算法专家/技术总监。2011 年加入阿里妈妈事业部,主导并建立了阿里巴巴搜索广告的算法引擎,包括广告触发模型,用户点击率和转化率预估模型以及拍卖机制优化,推动了搜索广告引擎从非个性化时代进化到个性化时代,并将深度学习技术在淘宝场景进行了深度的应用,驱动了高效的智能营销引擎的不断进步。刘凯鹏博士于 2004,2007 和 2011 年相继在哈尔滨工业大学获得学士、硕士和博士学位,在国际知名学术会议和期刊上发表了超过 10 篇论文。
IJCAI 2018 阿里妈妈国际广告算法大赛于 2018 年 2 月正式启动,获奖队伍将有机会前往斯德哥尔摩参加 IJCAI 2018。
报名链接:https://tianchi.aliyun.com/markets/tianchi/ijcai2018?spm=a2c41.11300464.0.0