超图技术提升产品检索效果解析

使用超图改进产品检索

信息检索系统(如帮助顾客在某中心商店查找产品的系统)通常依赖将查询映射到产品的二分图。这些图通常基于用户行为:如果执行相同查询的足够多用户点击了某产品链接或购买了该产品,图中就会建立查询与产品之间的边。图神经网络(GNN)可处理该图并预测与新查询对应的边。

该方法存在两个缺点:一是某中心商店中大多数产品属于很少被搜索的长尾商品,这意味着它们没有足够的关联数据来保证GNN训练的可靠性;相反,在处理长尾查询时,GNN倾向于将它们匹配到流行但可能不相关的产品,这被称为非匹配混合现象。

在ACM网络搜索与数据挖掘会议(WSDM)上发表的一篇论文中,我们通过使用描述顾客在同一在线购物会话中浏览哪些产品的信息来增强二分查询-产品图,从而解决了这两个问题。其核心思想是:了解产品类型间的关联性可帮助GNN从高频查询泛化到低频查询。

为捕捉产品关系信息,我们使用超图(一种图结构的泛化形式):普通图中的边连接两个节点,而超图中的边可连接多个节点。其他信息检索方法曾使用产品相似性来提升性能,但通过超图建模产品相似性使我们能够使用GNN进行预测,从而利用图表示中可用的附加结构。

在测试中,我们将该方法与仅使用二分图的GNN方法进行比较,发现添加超图后结果的平均倒数排名(正确答案在排名列表中越靠前得分越高)提升了近25%,召回率(检索到的正确答案百分比)提升了超过48%。

双通道架构

GNN生成单个图节点的向量表示(嵌入),捕捉其邻居信息。该过程是迭代的:第一层嵌入仅捕获节点关联对象(产品描述或查询语义)的信息;第二层嵌入将第一层嵌入与节点的直接邻居嵌入相结合;第三层嵌入将节点邻域扩展一跳;依此类推。大多数应用使用一跳或二跳嵌入。

超图嵌入对此过程稍作修改:第一次迭代与标准情况相同,单独嵌入每个物品节点;第二次迭代为每个超边整体创建嵌入;第三次迭代则生成每个节点的嵌入,该嵌入既考虑自身内容级嵌入,也考虑其所连接的所有超边的嵌入。

我们的模型架构具有两个通道:一个用于查询-物品二分图,另一个用于物品-物品超图。每个通道传递至其专用的GNN(图卷积网络),生成每个节点的嵌入。

在训练过程中,注意力机制学习为每个通道产生的嵌入分配多少权重。例如,具有少数热门关联产品的常见查询可能通过二分图的标准GNN嵌入得到良好表示;相反,与少数多样化查询关联的稀有购买物品可能受益于超图嵌入的更高权重。

为最大化模型预测质量,我们还尝试了两种不同的无监督预训练方法。一种是对比学习方法,其中GNN被输入训练样本对:有些是正样本对(其嵌入应尽可能相似),有些是负样本对(其嵌入应尽可能不同)。

遵循现有实践,我们通过随机删除源图的边或节点生成正样本对,因此生成的图相似但不完全相同。负样本对将源图与不同的随机图配对。我们将此过程扩展到超图,并确保两个通道训练数据的一致性;例如,从一个通道输入中删除的节点也会从另一通道中删除。

我们还尝试了DropEdge方法,该方法在连续训练周期中使用同一图的略微不同版本,随机丢弃少量边。这防止过拟合和过度平滑,因为它鼓励GNN学习其输入的更抽象表示。

预训练显著提高了我们双通道模型和基线GNN的质量,但也增加了二者之间的差异。即,我们的方法本身有时仅比基线模型带来适度改进,但经过预训练后,我们的方法比经过预训练的基线模型表现出更大的优势。
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)或者 我的个人博客 https://blog.qife122.com/
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值