SIGIR'21阿里」利用图神经网络和元学习促进冷启动商品embedding的学习

技术

picture.image

点击蓝字关注,提升学习效率

Learning Graph Meta Embeddings for Cold-Start Ads in Click-Through Rate Prediction
https://arxiv.org/pdf/2105.08909.pdf
SIGIR 2021

公式太长可以左右滑动
  1. 背景

对于训练好的推荐模型,当遇到冷启动的商品时,由于缺乏充分的数据,无法学习到好的embedding,从而会导致性能下降。本文提出Graph Meta Embedding (GME) 方法,利用 图神经网络元学习 快速学习生成冷启动商品的初始id embedding。GME一方面考虑商品自身的 属性信息 ,另一方面考虑 旧商品和冷启动商品之间的关系

GME主要包含两个部分:EG(embedding generator)和GAT。EG用于生成id embedding,GAT用于蒸馏信息。从不同的角度分别提出了GME-P,GME-G,GME-A,GME-A效果最好。

  1. 方法

2.1 符号

picture.image image.png

2.2 总体

picture.imageGME仅针对冷启动的商品,如上图所示,当广告进来后,进行查找,若能找到embedding,则为旧的,若找不到在进行GME来生成初始embedding。

2.3 建图

GME需要构建新商品和旧商品之间的关系,因此需要先对其进行建图。由于需要构建新商品和旧商品之间的关系,因此无法使用点击关系进行构建,本文作者采用商品的属性特征来构建商品之间的关系,如下图所示。picture.image如果采用邻接矩阵来表示新商品和旧商品之间的关系,就需要为每一个新商品都遍历一次旧商品的集合,因此非常耗时。换一种方式, 对当前的新商品,获取其id,特征后,去查找旧商品中具有相同特征值的商品的集合作为当前新商品的邻居 。具体实现流程可以看论文中图4的上下文。

2.4 GME-P: Using Pre-trained Neighbor ID Embeddings

picture.image如图所示为GME-P的示意图,GME-P利用 新商品的属性和预训练得到的邻居旧商品的id embedding来得到冷启动新商品的id embedding 。首先利用新商品的属性来生成一个基础的id embedding,然后利用这些邻居embedding的有用信息来细化基础id embedding。

2.4.1 ID Embedding Generation

这部分利用新商品相关的属性特征(包括类别,品牌等)生成基础的id embedding。将商品实例表示为,ID表示商品id,x表示和商品相关的特征,o表示和商品不相关的特征(如用户特征,上下文特征等)。将商品相关的特征的embedding拼接后得到,然后通过下式得到。其中w为可学习参数,γ为缩放超参数。

2.4.2 ID Embedding Refinement

基于上面构建的商品之间的关系图,本节作者采用GAT将邻居信息整合到新商品中,计算注意力机制系数公式如下,leakyrelu的系数为0.2。这里的注意力系数不仅计算了新商品和邻居之间的系数,也计算新商品与自己的自注意力系数。

然后对所有embedding(包括自己和邻居)加权求和,公式如下,

2.4.3 分析

该方法用到的周围邻居的embedding是原始推荐系统模型中得到的,没有在属性和id embedding之间加任何约束,并且所有embedding都是随机初始化的。可能遇到具有相同属性的两个商品之间的embedding差别很大,导致计算得到的注意力系数没有意义。

2.5 GME-G: Using Generated Neighbor ID Embeddings

picture.image如图所示为GME-G的示意图。为了解决GME-P的缺陷,GME-G将新商品和邻居旧商品都通过EG结合对应的属性来得到他们的embedding。

2.5.1 ID Embedding Generation

这里生成方式和GME-P一样,公式如下,其中g0表示新商品,gi表示邻居。

2.5.2 ID Embedding Refinement

这里细化的方式和GME-P一样,只是把GME-P中直接由预训练好的推荐模型得到embedding的方式改成了同样适用EG来生成embedding,公式也是类似的,

2.5.3 分析

GME-G虽然解决了GME-P的缺陷,但是需要重复生成旧商品的embedding。生成的embedding可能存在噪声,而重复生成可能将噪声放大。

2.6 GME-A: Using Neighbor Attributes

picture.image未解决GME-G的问题,本节提出GME-A方法。如上图所示为GME-A的示意图,该方法将“生成”和“细化”两个步骤颠倒,并且在细化阶段细化的不再是id embedding而是属性的embedding。

2.6.1 Attribute Embedding Refinement

这部分通过上面建的商品属性关系图,利用邻居旧商品的属性和新商品的属性进行细化,公式如下,这里也是包含新商品自身和周围邻居一起计算的。

2.6.2 ID Embedding Generation

这部分就是直接采用细化后的属性embedding得到对应的id embedding。 计算方式和前面类似。

2.7 模型学习

首选训练好一个常用的推荐模型,然后固定其参数不变,训练GME的参数。损失函数考虑两个方面:1)新商品的CTR预测误差应该要小,2)在少量标记实例收集后,应该要能根据少量梯度更新来快速学习。分别表示为以下两个损失函数。

对于给定的训练数据,随机从中选出两个不相交的minibatch,分别包含M个样本。首先通过GME得到中的embedding,然后得到预测概率,表示第j个样本的预测概率。交叉熵损失函数为下式,

然后计算关于初始embedding的梯度,并经过一步梯度下降,可以得到新的自适应embedding,公式如下,

然后在上测试新的,他的损失函数为,

总的损失函数为

  1. 结果

picture.image image.png

  1. 总结

本文作者主要从新商品的属性以及新商品和旧商品之间在属性上的关系来生成更好的embedding,通过GAT融合邻居节点的信息得到更好的属性embedding,再用属性embedding得到冷启动商品的id embedding。

picture.image

精彩推荐

SIGIR'21「微信」利用元网络学习冷启动商品ID Embedding

SIGIR'21 因果推断+推荐系统:利用反事实理论增强用户行为序列数据

CIKM'21「eBay」推荐系统--利用超图对商品的多模态信息建模

推荐系统交流群:联系作者--备注“研究方向-公司或学校”

picture.image

picture.image

长按关注

更多精彩

picture.image

秋枫学习笔记

点个在看你最好看

picture.image

0
0
0
0
关于作者

文章

0

获赞

0

收藏

0

相关资源
字节跳动客户端性能优化最佳实践
在用户日益增长、需求不断迭代的背景下,如何保证 APP 发布的稳定性和用户良好的使用体验?本次分享将结合字节跳动内部应用的实践案例,介绍应用性能优化的更多方向,以及 APM 团队对应用性能监控建设的探索和思考。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论