【推荐算法】Graph Embedding系列之EGES: Billion-scale Commodity Embedding for E-commerce Recommend in Alibaba

本文介绍了阿里巴巴如何应对十亿级商品推荐的挑战,提出EGES算法,结合图嵌入和边信息解决推荐系统的可扩展性、稀疏性和冷启动问题。通过对用户行为构建商品图,使用DeepWalk等方法学习商品嵌入,再结合商品类别、品牌等边信息优化嵌入表示,从而提高召回阶段的推荐效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Billion-scale Commodity Embedding for E-commerce Recommendation in Alibaba

  1. 论文地址:https://arxiv.org/pdf/1803.02349.pdf
  2. Github地址:GitHub - shenweichen/GraphEmbedding: Implementation and experiments of graph embedding algorithms. (一位大牛实现的代码)

算法讲解:

1、论文前面的综述

淘宝的推荐系统面对的三个主要技术挑战:

  • 可扩展性:当前许多推荐方法在较小规模的数据集上很有效,但不能应用在淘宝十亿级的数据集上。
  • 稀疏性:users趋向于只与小部分items进行交互,训练一个准确的推荐模型,尤其在users和items只有很少交互的情形下是非常困难的,这就是“稀疏性”问题。
  • 冷启动:淘宝系统中,每小时会有百万级的新items上线,这些items没有用户行为。处理这些items或者预测users对这些items的偏好很有挑战,这就是“冷启”问题。

为了解决这些挑战,淘宝采用了一个“两个阶段”的推荐框架:召回+排序(matching+ranking)。在召回阶段,为每个用户交互过的item生成一个相似items的候选集;在排序阶段,根据用户的偏好,训练一个深度神经网络模型来为每个用户排序这些候选items。召回和排序阶段面对的问题不同,每个阶段的目标也不同,因此需要分开技术方案。

论文只关注解决召回阶段的问题,主要工作是根据用户行为计算所有items间成对的相似性。在得到所有items间的成对相似性之后,可以生成一个items候选集用于排序阶段的进一步个性化。为了实现,我们从用户的行为历史中构建一个item graph,然后应用最先进的graph embeding方法(deepwalk、line、node2vec)学习每个item的embedding表示,被称为Base Graph Embedding (BGE)。用这种方法,我们可以根据items的embedding向量的点积计算出来的相似度生成items的候选集。在先前的工作中,基于CF的方法被用来计算相似性。然而,基于CF的方法只考虑了items在用户行为历史中的共现。论文在item graph中使用随机游走,进而得到items间的高阶相似性。因此,会优于基于CF的方法。然而,在很少或者没有交互的情况下学习出准确的items embedding仍然充满挑战。为了解决这个问题,论文提出使用边信息来增强embedding过程,被称为Graph Embedding with Side information (GES)。例如,属于相同category或者相同brand的items应该embedding到相近的空间中。用这种方法,我们能够在很少或者没有交互的情况下学习出items的精确的embedding。淘宝系统中存在几百种边信息类型,直觉上,不同的边信息在学习items的embedding时应该贡献不同。因此,论文在使用边信息学习embedding时进一步提出了一个加权机制,被成为Enhanced Graph Embedding with Side information (EGES)。

2、overview of graph embedding

论文提出的Graph Embedding算法是以DeepWalk算法为基础的,因此这里对其进行一个简单的overview。

给定一个图G=(V,E),这里V是顶点集、E是边集。Graph Embedding的目的是对图中每个顶点v\epsilon V在空间R^{d}中学习一个低维的向量表示,其中d远小于顶点数量。也就是说,学习的目标是一个映射函数\Phi =V\rightarrow R^{d},即用一个d维向量表示每个节点v\epsilon V

受word2vec启发,DeepWalk首先在图中进行随机游走生成顶点序列,然后应用SkipGram算法学习出图中每个顶点的向量表示。为了保留图的拓扑结构,优化的目标函数是:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值