论文笔记:Billion-scale Commodity Embedding for E-commerce Recommendation in Alibaba

一、基本信息

论文题目:《Billion-scale Commodity Embedding for E-commerce Recommendation in Alibaba》

发表时间:KDD 2018

论文作者及单位:

论文地址:https://arxiv.org/abs/1803.02349

二、摘要

推荐系统(RS)已经成为中国最大的在线C2C平台淘宝业务增长的最重要技术。淘宝面临三大挑战:可扩展性、稀疏性和冷启动。在本文中,我们提出了解决这三个挑战的技术解决方案。这些方法基于一个著名的图形嵌入框架。我们首先从用户的行为历史构建一个项目图,并学习图中所有项目的嵌入。项目嵌入用于计算所有项目之间的成对相似性,然后在推荐过程中使用这些相似性。为了减少稀疏性和冷启动问题,将侧面信息嵌入到图形嵌入框架中。我们提出两种聚合方法来整合项目的嵌入和对应的侧信息。离线实验的实验结果表明,加入侧信息的方法优于不加入侧信息的方法。此外,我们还描述了部署嵌入方法的平台和处理淘宝亿级数据的工作流程。通过A/B测试,我们发现在线点击率(ctrs)比以前广泛应用于淘宝的基于协同过滤的方法有所提高,进一步证明了我们所提出的方法在淘宝直播环境中的有效性和可行性。

三、主要内容与工作

1 INTRODUCTION

互联网技术一直在不断重塑商业格局,如今在线商业无处不在。阿里巴巴是中国最大的在线业务提供商,它使全世界的人或公司都有可能在线开展业务。拥有10亿用户的阿里巴巴,2017年的商品总量(GMV)为3767亿元,2017年的收入为1580亿元。在中国最大的网络购物节“双十一”中,2017年的交易总额约为1680亿元。在阿里巴巴的各种在线平台中,最大的在线消费者对消费者(c2c)平台淘宝1占据了阿里巴巴电子商务总流量的75%。
淘宝拥有10亿用户和20亿物品,即商品,最关键的问题是如何帮助用户快速找到需要的和有趣的物品。为了实现这一目标,推荐成为淘宝网的关键技术,旨在根据用户的喜好为用户提供有趣的商品。例如,移动淘宝应用程序的主页(见图1)是根据用户过去的行为和推荐技术生成的,占推荐流量的40%。此外,建议在淘宝的收入和流量中占据了绝大多数。总之,推荐已经成为GMV和淘宝、阿里巴巴收入的重要引擎。尽管学术界和行业中各种推荐方法都取得了成功,如协同过滤(CF)[9、11、16]、基于内容的推荐方法[2]和基于深度学习的推荐方法[5、6、22],但这些推荐方法所面临的问题在淘宝由于用户和物品规模达数十亿而变得更加严重。

淘宝面临三大技术挑战:
•可扩展性:尽管许多现有的推荐方法在小规模数据集(即数百万用户和项目)上运行良好,但在淘宝更大规模的数据集(即10亿用户和20亿项目)上失败。
•稀疏性:由于用户往往只与少量项目交互,因此很难训练出准确的推荐模型,尤其是对于交互次数很少的用户或项目。它通常被称为“稀疏性”问题。
•冷启动:在淘宝,每小时有数百万个新项目被连续上传。这些项目没有用户行为。处理这些项目或预测用户对这些项目的偏好是很困难的,这就是所谓的“冷启动”问题。

为了解决淘宝面临的这些挑战,我们在淘宝的技术平台上设计了一个两阶段的推荐框架。第一阶段是匹配,第二阶段是排名。在匹配阶段,我们为用户交互过的每个项目生成一组相似的候选项,然后在排序阶段,我们训练一个深度神经网络模型,根据每个用户的偏好对候选项进行排序。由于上述挑战,在这两个阶段,我们都必须面对不同的独特问题。此外,每个阶段的目标是不同的,导致了不同的技术解决方案。
本文主要研究如何解决匹配阶段的挑战,其中的核心任务是根据用户的行为计算所有项目之间的成对相似性。在获得项目的成对相似性之后,我们可以生成一组候选项目,以便在排名阶段进一步个性化。为了实现这一点,我们建议从用户的行为历史构建一个项目图,然后应用最新的图形嵌入方法[8,15,17]来学习每个项目的嵌入,称为基础图嵌入(bge)。这样,我们就可以根据嵌入向量的点积计算出的相似度来生成候选项集。请注意,在以前的工作中,基于CF的方法用于计算这些相似性。然而,基于CF的方法只考虑用户行为历史中项目的共存[9,11,16]。在我们的工作中,使用项目图中的随机行走,我们可以捕获项目之间的高阶相似性。因此,它优于基于CF的方法。然而,在很少甚至没有交互的情况下,学习如何准确地嵌入项目,仍然是一个挑战。为了解决这一问题,我们建议使用边信息来增强嵌入过程,称为边信息图嵌入(GES)。例如,属于同一类别或品牌的项目在嵌入空间中应该更靠近。这样,我们就可以在很少甚至没有交互的情况下获得项目的精确嵌入。然而,在淘宝,有上百种类型的侧边信息,如类别、品牌或价格等,很直观的是,不同的侧边信息应该对学习物品的嵌入做出不同的贡献。因此,我们进一步提出了一种边信息嵌入学习时的加权机制,称为边信息嵌入增强图(eges)。
总之,匹配阶段有三个重要部分:

(1)根据淘宝网多年的实践经验,设计了一种有效的启发式方法,从淘宝网10亿用户的行为历史中构建项目图。
(2)我们提出了三种嵌入方法,即bge、ges和eges,来学习在淘宝中嵌入20亿个物品。我们进行了离线实验,以证明与BGE和其他嵌入方法相比,GES和EGE的有效性。
(3)为了部署淘宝亿级用户和物品的建议方法,我们在团队构建的xtensorflow(xtf)平台上构建了图形嵌入系统。结果表明,该框架显著提高了移动淘宝应用的推荐性能,即使在双十一也能满足培训效率和服务即时响应的要求。

论文的其余部分组织如下。在第2节中,我们详细介绍了三种嵌入方法。离线和在线实验结果见第3节。第四节介绍了淘宝系统的部署,第五节对相关工作进行了回顾。我们将在第6节结束我们的工作。

2 FRAMEWORK

在本节中,我们首先介绍了图形嵌入的基本知识,然后详细说明如何从用户的行为历史中构建item图。最后,我们研究了在淘宝中学习物品嵌入的方法。

2.1 Preliminaries

图嵌入就是把原来D维的图映射到d维空间中,d<<D。

本文嵌入的方法主要来源于DeepWalk

2.2 Construction of Item Graph from Users’ Behaviors

在本节中,我们将从用户的行为中详细描述项目图的构造。实际上,用户在淘宝中的行为往往是连续的,如图2(a)所示。以前的基于CF的方法只考虑项目的共存,而忽略顺序信息,这样可以更准确地反映用户的偏好。但是,不可能使用用户的整个历史记录,因为1)由于条目太多,计算和空间成本太高;2)用户的兴趣往往随时间而转移。因此,在实践中,我们设置了一个时间窗口,只选择用户在窗口中的行为。这称为基于会话的用户行为。根据经验,时间窗口的持续时间为一小时。
在我们获得基于会话的用户行为之后,如果两个项目连续发生,则它们通过一个有向边缘连接,例如图2(b)中的项目d和项目a是连接的,因为用户u1访问了项目d和a,如图2(a)所示。利用淘宝网中所有用户的协作行为,根据两个连接项在所有用户行为中出现的总次数,为每一个边缘ei j分配一个权重。具体来说,在整个用户行为历史中,边缘的权重等于项目i向项目j过渡的频率。这样,构建的项目图可以根据淘宝用户的所有行为来表示不同项目之间的相似性。
在实际应用中,在提取用户行为序列之前,需要对无效数据和异常行为进行过滤,以消除噪声。目前,我们的系统将以下行为视为噪声:

1、如果单击后的停留时间少于一秒钟,则单击可能是无意的,需要删除。
2、淘宝有些“过度活跃”的用户实际上是垃圾邮件用户。根据我们在淘宝的长期观察,如果一个用户在不到三个月的时间内购买了1000件商品或者他/她的点击总数超过3500次,那么这个用户很可能是一个垃圾邮件用户。我们需要过滤掉这些用户的行为。
3、淘宝网的零售商不断更新商品的细节。在极端情况下,一个商品在经过长时间的更新后,可能会成为淘宝中同一个标识符的完全不同的商品。因此,我们删除与标识符相关的项。

2.3 Base Graph Embedding

2.4 Graph Embedding with Side Information

通过应用2.3节中的嵌入方法,我们可以学习淘宝中所有项目的嵌入,以捕获用户行为序列中的高阶相似性,而这些相似性被以前基于CF的方法忽略了。然而,学习“冷启动”项目(即那些没有用户交互的项目)的准确嵌入仍然是一个挑战。
为了解决冷启动问题,我们建议使用冷启动项目附带的侧信息来增强BGE。在电子商务的RS场景中,边信息是指一个商品的类别、商店、价格等,在排名阶段被广泛用作关键特征,但在匹配阶段很少被应用。在图形嵌入中加入侧信息可以缓解冷启动问题。例如,优衣库(同一家店)的两个连帽衫(同一类别)可能看起来很相似,喜欢尼康镜头的人也可能对佳能相机(类似类别和类似品牌)感兴趣。这意味着具有相似边信息的项应该更靠近嵌入空间。基于这一假设,我们提出了如图3所示的GES方法。

首先构造不同的边缘信息的嵌入矩阵W0,W1,......,Wn,然后,Hv为聚合嵌入矩阵。

2.5 Enhanced Graph Embedding with Side Information

考虑到不同边缘信息的影响力不同,给不同边缘信息添加了权重

3 EXPERIMENTS

4 SYSTEM DEPLOYMENT AND OPERATION

5 RELATEDWORK

在本节中,我们简要回顾了RS的相关工作,包括图形嵌入、带侧信息的图形嵌入和图形嵌入。

5.1 Graph Embedding

图嵌入算法是一种常用的网络表示方法。它们已经应用于许多实际应用。在过去的几年里,人们在设计新的嵌入算法方面进行了大量的研究。这些方法可以分为三大类:1)因式分解法,如直线法[1]尝试对邻接矩阵进行近似因式分解,同时保持一阶和二阶近似;2)深度学习法[3,20,21]提高模型在图中捕捉非线性的能力;3)基于随机游走的方法[7,8,15]使用图上的随机游动来获得节点表示,这是非常有效的,因此可以用于非常大规模的网络。本文的嵌入框架是基于随机游动的。

5.2 Graph Embedding with Side Information

上述图嵌入方法仅采用网络的拓扑结构,存在稀疏性和冷启动问题。近年来,大量的工作试图将边信息结合起来,增强图形嵌入方法。大多数作品都是基于这样一个假设来构建任务的:具有相似边信息的节点应该更靠近嵌入空间。为了实现这一点,提出了一个联合框架,用分类器函数对嵌入目标函数进行优化[10,19]。在[24]中,Xie等人进一步嵌入一个复杂的知识图,其中节点处于一个层次结构中,如子类别等,此外,与节点相关的文本信息也被纳入到图形嵌入中[18、23、25、26]。此外,在[4]中,Chang等人提出了一种同时处理文本和图像特征的异构图形嵌入深度学习框架。本文主要处理与淘宝物品相关的离散侧信息,如类别、品牌、价格等,并设计了一个隐藏层,将不同类型的侧信息聚集在嵌入框架中。

5.3 Graph Embedding for RS

RS一直是图形嵌入中最流行的落地应用之一。有了这些表示,可以使用各种预测模型来推荐。在[27,29]中,用户和项目的嵌入分别在异构信息网络中的元路径和元图的监督下学习。余等。[27]提出了一个线性模型来聚集嵌入物以供推荐,而赵等[29]建议将因子分解机应用到嵌入中,以供推荐。在[28]中,张等人提出了一个联合嵌入框架来学习图形、文本和图像的嵌入,并以此作为推荐。在[30]中,周等提出了一种基于图像嵌入的非对称相似性节点推荐方法。本文将我们的图形嵌入方法集成到一个两阶段的推荐平台中。因此,嵌入件的性能直接影响到最终的推荐结果。

四、总结

淘宝数十亿规模的数据(10亿用户和20亿项)在可扩展性、稀疏性和冷启动方面给其推荐带来巨大压力。在本文中,我们提出了基于图嵌入的方法来解决这些挑战。为了解决稀疏性和冷启动问题,我们提出在图嵌入中加入边信息。离线实验证明了辅助信息在提高推荐准确性方面的有效性。据报道,在线点击率也证明了我们提出的方法在淘宝网业务场景中的有效性和可行性。通过对真实案例的分析,强调了我们提出的图嵌入方法在使用用户行为历史聚类相关项目和使用辅助信息处理冷启动项目中的优势。最后,为了解决我们在淘宝提出的解决方案的可扩展性和部署问题,我们详细阐述了我们的图形嵌入方法的培训平台和淘宝推荐平台的总体工作流程。对于未来的工作,我们将追求两个方向。第一种是在我们的图嵌入方法中利用注意机制,它可以提供更大的灵活性来学习不同边信息的权重。第二个方向是将文本信息整合到我们的方法中,利用淘宝上的大量评论。

猜你喜欢

转载自blog.csdn.net/qq_35771020/article/details/89339963