29 | 图神经网络:Pinterest是如何应用图神经网络的?
该思维导图由 AI 生成,仅供参考
搭桥还是平推?技术途径上的抉择
- 深入了解
- 翻译
- 解释
- 总结
Pinterest如何应用图神经网络? Pinterest在商品推荐中应用了图神经网络,主要采用了GraphSAGE模型。该模型通过图采样和聚合方法,利用GNN直接处理图结构数据,实现商品推荐。Pinterest的应用案例展示了图神经网络在推荐系统中的重要性和有效性。PinSAGE是Pinterest在图神经网络基础上的应用,通过训练图上的商品关系,得到每个商品的Embedding,并应用于相似推荐。PinSAGE在Pinterest场景下展现了良好的效果,能够理解商品的语义信息,为用户提供更符合逻辑的推荐。GraphSAGE的特点和主要步骤包括直接处理图数据、采样-聚合-预测三步,重点在于聚合的GNN结构,使用CONVOLVE操作实现邻接点Embedding聚合。Pinterest的图神经网络应用案例为读者提供了深入了解图神经网络在推荐系统中的实际应用的机会,为技术人员提供了宝贵的参考价值。 Pinterest的图神经网络应用案例为读者提供了深入了解图神经网络在推荐系统中的实际应用的机会,为技术人员提供了宝贵的参考价值。
《深度学习推荐系统实战》,新⼈⾸单¥68
全部留言(10)
- 最新
- 精选
- 张弛 Conor思考题:1)能否在第一阶聚合的时候,就把物品的其他特征拼接起来,作为节点的初始embedding呢?2)也可以在k阶聚合完成后,像wide&deep钟一样,将节点的embedding和物品其他特征拼接后接入全连接层和softmax层得到embedding
作者回复: 很好的回答,第2个方法可能会更直接一些。第一种方法能更好的跟GNN融合在一起。
2020-12-2118 - 小匚我觉得目的导向,以目的来决定要不要更多的特征。资源允许情况下,特征越多越好。喂给机器,由模型来判断哪些特征是重要的,哪些是不重要的。 “这个 CONVOLVE 操作是由两个步骤组成的:第一步叫 Aggregate 操作,就是图 4 中 gamma 符号代表的操作,它把点 A 的三个邻接点 Embedding 进行了聚合,生成了一个 Embedding hN(A);第二步,我们再把 hN(A) 与点 A 上一轮训练中的 Embedding hA 连接起来,然后通过一个全联接层生成点 A 新的 Embedding。” 如果要加,我觉得要加在和上一轮连接起来这里,每次再多加上去这个特征的embedding。这样能保证最原始的数据放进去,保留原始特征,而不会被二次聚合。
作者回复: 完全赞同这样的思考。加在CONVOLVE函数的concat那一步确实会更好的保留特征的影响力。否则我担心经过几轮迭代之后,这些新特征有可能加和不加是一样的,因为整个网络有可能总会收敛到一个稳定的状态。
2020-12-2113 - jalief在实际公司推荐场景中如果要应用这个算法,数据是通过图数据库来存储吗?希望老师能推荐一个生产环境适合的图数据库
作者回复: 最近大家提neo4j比较多,https://neo4j.com/,可以研究一下,但我们并没有用。我们还是用spark xgraph直接处理原始数据。
2021-04-164 - fsc2016思考题:第k阶节点emb初始化时怎么做的,如果是基于节点id类特征通过word2vec生成id_emb,那么还可以基于同样方法,生成对应category_emb,brand_emb,price_emb,然后avg pooling。类似前面讲物品冷启动中提到的EGES模型。 提问:感觉如果综合物品所有相关属性生成的物品emb,已经能很好包含了物品所属特征,包括了属性和行为特征,这样生成的emb在输入GraphSAGE得到物品emb,还能得到更强的物品表达嘛
作者回复: GraphSAGE原文中的初始化方法其实是随机emb初始化,会随着GraphSAGE的迭代过程逐渐收敛。 但像你说的,这里的灵活性很高,在初始化中以一些简单的emb结果初始化可能会让训练的效率更高,另外加入其他feature当然也是可行的,都是值得尝试的方向。
2020-12-2123 - MutouMan那graphsage是不是本质属于i2i推荐呢?这里用户行为只是不同物品的边,没有说怎么学习用户的embedding。之前的模型大多着眼于u2i推荐。 关于思考题,几位同学都说的很好了,aggregate前加入或者之后都可以吧。还是老师的那句话,怎么做得测试。
作者回复: graphSage确实多用于i2i推荐,和相似物品推荐,这一点理解没有问题。
2021-07-221 - 努力学习老师 请问 使用两个GCN网络直接替换到嵌入层,分别用于学习用户的嵌入向量q 和 物品的嵌入向量p,假设对p·q点积使用softmax函数来获得下一项的概率,那是不是用一个损失函数就学习训练了两个GCN网络?而不是用两个损失函数联合训练吗?
作者回复: 可以这么理解,相当于一个双塔模型了。
2021-04-031 - 骚动老师,还有个问题:GraphSAGE是否有像Node2vec一样考虑了图的结构性和同质性?如果有的话是怎么体现的,如果没有的话后续是否有相应的改进?
作者回复: 我记得在哪好像回复过你?简单回复就是GraphSAGE没有从结构性和同质性的角度出发考虑问题,我建议也没有必要强行把二者放在一起比较。
2021-01-181 - fsc2016提问2:既然GraphSAGE是为了直接处理图结构数据生成物品emb,而不需要把图数据转为行为序列。那输入的第k阶物品初始化emb,还是通过转为序列数据进行word2vec得到的。那也就是说GraphSAGE还是避免不了图数据转为序列生成物品emb的过程吗
作者回复: 紧接着上一问,GraphSAGE并不对初始化emb做要求,所以没有必要一定要有word2vec训练好的emb作为初始化emb。
2020-12-211 - W第k阶节点的embedding生成了第k-1阶节点的新embedding,那第k-1阶原始embedding还需要一起使用吗?
作者回复: 不是非常明确这个问题,但请详细参照CONVOLVE操作的定义。
2021-07-04 - 骚动老师,怎么感觉和Node2vec采样的方式差不多??2阶我就对应Node2vec 用DFS采样2阶??2021-01-18