多行为级联24|多行为推荐的超图增强级联图卷积网络

news2024/12/24 15:51:58

挂到arxiv上的,多行为级联超图加对比学习,超图是针对单个行为的,而不是针对多个行为的。参考的类似工作是CRGCN加MBSSL。这两篇我都做了论文阅读,(CRGCN正在路上,MBSSL是我的第一篇论文阅读帖子)推荐系统论文阅读总结:SIGIR 2023 Multi-behavior Self-supervised Learning for Recommendation-CSDN博客

1 动机

编码多行为交互的方式之前写过一篇帖子了,分为并行和级联。这篇帖子是使用DAG以级联的方式进行编码的,使用了DAG的GCN以及注意力https://blog.csdn.net/cyzz523/article/details/143416527  那么现在这篇是超图加对比学习,并行和级联的方式再次总结一下:

1 并行:通常将多路交互数据转换为各种精心设计的异质图结构,然后并行地提取和聚合不同行为的语义和上下文信息,通过图神经网络,对比学习等机制来捕捉行为依赖。能够灵活地处理不同类型的行为,避免不同行为间的干扰。此外,一些论文中将用户的多行为分为了点击和点击后行为(包含用户的多行为类型交互)CSDN

2 级联:反映了实际场景中行为链的偏序关系,通过残差结构等模块串行连接各个行为。(假定低层次行为或者说早起辅助行为(如浏览、加购物车)对高层次行为最终目标行为(如购买)有直接影响。能够更有效地利用行为间的顺序和层级关系,提升推荐性能。

然而,级联方式编码的缺陷:

1:先前级联模型强调利用行为序列中的依赖关系进行嵌入学习,例如,从一个行为中学到的嵌入将被输入到下一个行为的嵌入学习过程中。 尽管它们可以有效地捕获两个连续行为之间的依赖性,但不同行为之间丰富的全局一致性以及行为内的依赖性信号在很大程度上被忽略。

2:在多行为推荐中,利用多层图消息传递机制建模用户与物品之间的高阶依赖关系可能导致过度平滑,从而削弱模型性能。

3:现有的研究工作主要依赖于对特定行为下用户与物品之间的细粒度交互进行建模,而忽略了探索交互图中存在的粗粒度信息,粗粒度信息可以有效补充细粒度交互信息。例如,某些用户可能具有相似的兴趣偏好,或者特定物品可能属于同一类别。


2 贡献

  • 提出了一种用于多行为推荐的超图增强级联图卷积网络,通过构建用户-物品交互图和对应的超图,分别捕捉不同粒度的用户或物品之间的关联。捕捉具体的用户-物品多行为交互,还捕捉更高层次的关联(如用户兴趣相似性或物品类别,通过超图)。

  • 提出了一种基于对比学习的行为一致性指导的对齐策略。包括:行为内一致性对齐:通过对比学习子模块,将来自交互图的用户和物品嵌入与对应超图学习到的嵌入进行对齐,确保同一行为下不同图结构的表示保持一致。行为间一致性对齐:通过跨行为对齐模块,将不同类型行为(如浏览、点击、购买)的用户和物品嵌入与一个全局图的嵌入对齐,确保不同行为之间的表示具有全局一致性。


 3 HEC-GCN

由四个模块组成,(1)全局图学习模块,获取用户跨行为的一般偏好的洞察独特的行为。 (2)超图增强级联图卷积网络,遵循级联范式,并结合行为超图来增强特定行为下表示的学习。 (3)行为一致性引导的对比学习模块,涵盖行为内和行为间的内在一致性。 (4)Prediction,利用多任务学习进行联合优化。 

3.1 全局图学习

全局图\mathcal{G}_g包含了用户 u与物品 i之间所有类型行为(如浏览、点击、购买等)的交互信息。通过全局图,模型能够识别出用户与物品之间是否存在至少一次交互。捕捉了用户与物品在所有行为类型下的整体交互信息,从而生成反映用户整体偏好和物品整体特性的全局嵌入表示:

lightgcn,没啥可说的 

3.2 超图增强的级联图卷积网络(参考CRGCN)

通过级联方式同时利用用户-物品交互图和对应的超图,为每种行为学习用户和物品的表示。可以捕获用户和物品之间的高阶协作关系,从而增强模型学习更好的用户偏好的能力。

3.2.1 特定行为的交互图学习

使用LightGCN在其对应行为的用户-物品交互图\mathcal{G}_k上学习节点(用户和物品)的表示:

对于第 k种行为,嵌入的初始值来自于前一种行为学习到的嵌入:

通过 L 层图卷积后,聚合所有层的嵌入以获得最终的行为特定嵌入:

3.2.2 特定行为的超图学习

为了进一步捕捉用户和物品之间的高阶协同关系,使用行为特定的超图。超图允许一个超边连接多个节点,从而更全面地表示复杂的关系。

每种行为定义用户和物品的超边表示:\mathcal{H}_u^k \in \mathbb{R}^{N \times S}\mathcal{H}_i^k \in \mathbb{R}^{N \times S}M 是用户数量,N是物品数量,S是超边数量。使用可学习的参数化超边表示,以低秩方式优化超边参数,减少计算复杂度和过拟合风险。首先生成超图边的表示:

\mathbf{E}_u^{b,k}表示与第𝑘特定行为交互图对应的所有用户和项目的嵌入。对于第 𝑘 行为中的超图学习,对每个行为的用户侧和项目侧超图使用简化的超图卷积网络:

H是用户侧和物品侧的超图依赖矩阵,表示用户与用户之间以及物品与物品之间的高阶关联, E是通过超图卷积后得到的用户和物品的高阶嵌入表示。为了在超图卷积过程中融入更多的用户交互信息,将行为交互图中学习到的嵌入注入到超图学习过程中。 其次,为了保持行为交互图学习的独立性,采用停止梯度策略来确保从特定行为交互图学习到特定行为超图学习的单向信息传播。 第三,为了简化超图学习中的信息传播过程, 从超图卷积中删除了激活函数。

3.2.2 特定行为的嵌入聚合

通过从第𝑘行为特定交互图行为特定超图学习到的用户和项目的嵌入,将它们集成以获得相应的行为特定嵌入:

 3.3 行为一致性引导的对比学习(参考MBSSL)

3.3.1 行为间一致性对比学习

捕捉不同类型行为之间的共享信息,确保不同行为下的用户和物品嵌入与全局嵌入保持一致,从而更好地反映用户的综合兴趣。正样本对是相同用户或物品在全局图和某一行为图下的嵌入对。不同用户或物品在全局图和某一行为图下的嵌入对。InfoNCE 损失:

用户端的对比损失由多个行为累加,和MBSSL一样,正负样本对不一样。

3.3.2 行为内一致性对比学习

捕捉同一行为下交互图和超图之间的内在一致性,确保同一行为下不同图视图的嵌入保持一致,从而增强模型对该行为特定信息的理解。正样本对是同一用户或物品在交互图视图和超图视图下的嵌入,负样本对是不同用户或物品在交互图视图和超图视图下的嵌入对:

 也是最终的行为内对比学习由用户和项目端累加,这是针对行为和超图的,还有行为和全局图的:

 3.4 预测与优化

通过从其他行为中提取信息,增强当前行为的用户和物品表示,从而更准确地反映用户的兴趣偏好,注意力机制:

 接着从全局和局部两个角度整合用户和物品的表示,以获得更全面的嵌入表示:

接着进行预测:


 4 实验部分

5 总结

针对每个行为使用lightgcn,并生成超图,以级联的方式进行编码。在对比学习部分分为行为间和行为内,行为间有两个对比损失,分别是全局图和单个行为图,以及单个行为图和超图。行为内是超图和单个行为图,最后聚合的时候使用了注意力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2264799.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

利用.NET Upgrade Assitant对项目进行升级

本教程演示如何把WPF程序从 <TargetFrameworkVersion>v4.8</TargetFrameworkVersion>升级到<TargetFramework>net8.0-windows</TargetFramework>. 下载并安装.NET Upgrade Assistant - Visual Studio Marketplace Supported .NET upgrades: .NET Frame…

Vue2四、 scoped样式冲突,data是一个函数,组件通信-父传子-子传父-非父子

组件通信 1. 父组件通过 props 将数据传递给子组件 2. 子组件利用 $emit 通知父组件修改更新 父--->子 子--->父

第146场双周赛:统计符合条件长度为3的子数组数目、统计异或值为给定值的路径数目、判断网格图能否被切割成块、唯一中间众数子序列 Ⅰ

Q1、统计符合条件长度为3的子数组数目 1、题目描述 给你一个整数数组 nums &#xff0c;请你返回长度为 3 的子数组&#xff0c;满足第一个数和第三个数的和恰好为第二个数的一半。 子数组 指的是一个数组中连续 非空 的元素序列。 2、解题思路 我们需要在给定的数组 nums…

PSDK的编译与ROS包封装

本文档讲述在NIVIDIA开发板上使用大疆提供的Payload SDK获取无人机实时GPS信息的方法&#xff0c;以及基于Payload SDK发布ROS GPS话题信息的方法。 文章目录 0 实现目标1 Payload SDK1.1 PSDK 源码的编译1.2 PSDK 的使用 2 遥测数据的读取2.1 示例代码结构2.2 读取机载GPS信息…

铝电解电容使用寿命

铝电解电容寿命问题 铝电解电容为什么会失效&#xff1f;铝电解电容失效与那些因素有关&#xff1f;电解电容寿命如何计算&#xff1f; 1铝电解电容为什么会失效&#xff1f; 电容都是由两个导电板并排放到一起就构成了。正极是铝&#xff08;阳极箔&#xff09;&#xff0c;…

用Python PySide6 复刻了两软件UI 做下练习

图样 1 代码 1&#xff1a; # -*- coding: utf-8 -*-import sys from PySide6.QtCore import (QCoreApplication, QMetaObject, QRect, QDate) from PySide6.QtGui import QIcon, QPixmap, QColor from PySide6.QtWidgets import (QApplication, QDialog, QLineEdit, QPushBut…

安装MongoDB,环境配置

官网下载地址&#xff1a;MongoDB Shell Download | MongoDB 选择版本 安装 下载完成双击打开 点击mongodb-windows-x86_64-8.0.0-signed 选择安装地址 检查安装地址 安装成功 二.配置MongoDB数据库环境 1.找到安装好MongoDB的bin路径 复制bin路径 打开此电脑 -> 打开高级…

Spring学习(一)——Sping-XML

一、Spring的概述 (一)什么是Spring? Spring是针对bean对象的生命周期进行管理的轻量级容器。提供了功能强大IOC、AOP及Web MVC等功能。Spring框架主要由七部分组成&#xff1a;分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 S…

重温设计模式--职责链模式

文章目录 职责链模式的详细介绍C 代码示例C示例代码2 职责链模式的详细介绍 定义与概念 职责链模式&#xff08;Chain of Responsibility Pattern&#xff09;是一种行为型设计模式&#xff0c;它旨在将请求的发送者和多个接收者解耦&#xff0c;让多个对象都有机会处理请求&a…

easegen将教材批量生成可控ppt课件方案设计

之前客户提出过一个需求&#xff0c;就是希望可以将一本教材&#xff0c;快速的转换为教学ppt&#xff0c;虽然通过人工程序脚本的方式&#xff0c;已经实现了该功能&#xff0c;但是因为没有做到通用&#xff0c;每次都需要修改脚本&#xff0c;无法让客户自行完成所有流程&am…

高考志愿填报:如何制定合理的志愿梯度?

高考志愿填报中常见的避雷行为&#xff0c;深入分析了专业选择、招生政策了解、学校选择、备选方案准备以及防诈骗等方面的关键问题&#xff0c;并提出了针对性的建议与策略。旨在为考生和家长提供实用的指导&#xff0c;助力考生科学合理地填报高考志愿&#xff0c;避免陷入各…

如何查看vivado项目所使用的版本

在我们提供的各类教程中vivado使用的版本都不同&#xff0c;而使用不同版本的vivado打开项目时可能会产生一些其它错误&#xff0c;所有最好使用对应的vivado版本打开&#xff0c;本例主要演示如何查看项目所示使用的vivado版本。 如下图所示&#xff0c;为vivado2023.1版本创建…

ue5 pcg(程序内容生成)真的简单方便,就5个节点

总结&#xff1a; 前情提示 鼠标单击右键平移节点 1.编辑-》插件-》procedural->勾选两个插件 2.右键-》pcg图表-》拖拽进入场景 3.先看点point 右键-》调试(快捷键d)->右侧设置粒子数 3.1调整粒子数 可以在右侧输入框&#xff0c;使用加减乘除 4.1 表面采样器 …

光谱相机在农业的应用

一、作物生长监测1、营养状况评估 原理&#xff1a;不同的营养元素在植物体内的含量变化会导致植物叶片或其他组织的光谱反射率特性发生改变。例如&#xff0c;氮元素是植物叶绿素的重要组成部分&#xff0c;植物缺氮时&#xff0c;叶绿素含量下降&#xff0c;其在可见光波段&a…

基于Springboot的数字科技风险报告管理系统

博主介绍&#xff1a;java高级开发&#xff0c;从事互联网行业六年&#xff0c;熟悉各种主流语言&#xff0c;精通java、python、php、爬虫、web开发&#xff0c;已经做了多年的设计程序开发&#xff0c;开发过上千套设计程序&#xff0c;没有什么华丽的语言&#xff0c;只有实…

14,攻防世界Web_php_unserialize

进入场景 看见代码&#xff0c;解析一下 这段PHP代码定义了一个名为Demo的类&#xff0c;并演示了如何通过URL参数进行反序列化和文件高亮显示的功能&#xff0c;同时也包含了一些安全措施以防止对象注入攻击。下面是对这段代码的逐行解释&#xff1a; 1.<php 开始PHP代码…

基于NodeMCU的物联网窗帘控制系统设计

最终效果 基于NodeMCU的物联网窗帘控制系统设计 项目介绍 该项目是“物联网实验室监测控制系统设计&#xff08;仿智能家居&#xff09;”项目中的“家电控制设计”中的“窗帘控制”子项目&#xff0c;最前者还包括“物联网设计”、“环境监测设计”、“门禁系统设计计”和“小…

【Linux开发工具】自动化构建-make/Makefile

&#x1f525;个人主页&#x1f525;&#xff1a;孤寂大仙V &#x1f308;收录专栏&#x1f308;&#xff1a;Linux &#x1f339;往期回顾&#x1f339;&#xff1a;【Linux开发工具】gcc和g &#x1f516;流水不争&#xff0c;争的是滔滔不 一、make和Makefile简介1.1 什么是…

Elasticsearch安装和数据迁移

Elasticsearch安装和数据迁移 Elasticsearch安装 下载并解压Elasticsearch 首先下载Elasticsearch的tar.gz文件&#xff0c;并将其解压&#xff1a; wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.8.2-linux-x86_64.tar.gz tar -xzf elastics…

dockerfile文档编写(1):基础命令

目录 Modelscope-agentARGFROMWORKDIRCOPYRUNENVCMD run_loopy Modelscope-agent ARG BASE_IMAGEregistry.cn-beijing.aliyuncs.com/modelscope-repo/modelscope:ubuntu22.04-cuda12.1.0-py310-torch2.1.2-tf2.14.0-1.12.0FROM $BASE_IMAGEWORKDIR /home/workspaceCOPY . /hom…