WWW23-多行为级联|级联图卷积网络的多行为推荐

 论文:https://arxiv.org/abs/2303.15720

 代码:https://github.com/SS-00-SS/MBCGCN

这篇论文MB-CGCN和上一篇CRGCN是同一个团队的,都是级联的方式。一个用了残差,一个用了特征转换,文章最后有discussion讨论了两者的不同,期刊到会议,改动了一部分。MB-CGCN是引用了CRGCN,CRGCN的帖子:TOIS23-多行为级联|用于多行为推荐的级联残差图卷积网-CSDN博客

1 动机

首先再次说一下CRGCN的动机:

1 挖掘行为之间的关联和顺序依赖:大多数现有方法主要是将不同类型的行为独立地建模,然后再将这些独立的表示进行融合,忽视了不同行为之间存在的内在关联和顺序依赖。例如,用户的“浏览”行为通常会引导到“点击”行为,而“点击”行为又可能进一步引导到“加入购物车”或“购买”行为。这种行为序列中的依赖关系和信息传递对于准确捕捉用户偏好具有重要意义。然而,现有方法未能在嵌入学习过程中充分利用这些行为间的关联信息,导致用户偏好建模不够全面。

2 模型复杂度较高:为了提高推荐准确性,现有的多行为推荐模型通常引入了复杂的模型结构和更多的参数。例如,使用多层神经网络、注意力机制等高级技术来分别处理不同类型的行为数据。不仅增加了模型的空间和时间复杂度,还导致训练过程更加耗时和资源密集。在实际应用中,推荐系统的效率同样至关重要,一个既能保持高推荐准确性又具备低复杂性和高效率的模型更具应用价值。

那么在此基础上,MB-CGCN:

1:考虑到直接使用输出嵌入作为下一个 GCN 的输入嵌入可能会注入噪声或误导性信息来误导学习过程。

2:考虑到在真实场景中,用户可能会直接跳转一两个行为到最终行为。 


2 贡献

  • 提出了具有级联图卷积网络的多行为推荐模型(MB-CGCN),由一系列 GCN 块组成,每个块对应于行为链中的一个行为( LightGCN)。

  • 不同的是:考虑到噪声问题,设计了特征转换来在传递之前处理嵌入,显式地利用链中的行为依赖关系来直接促进后续行为中的嵌入学习。 最后,从不同行为中学习到的嵌入被聚合以用于最终的行为预测。MB-CGCN 在优化时没有采用多任务学习。 它仅使用目标行为作为监督信号,专注于优化目标行为的预测性能,使得嵌入向量更有效地反映用户对物品的最终偏好。


3 MB-CGCN

模型上来看,还是相似的,去除了残差连接以及多任务。

3.1 嵌入初始化

将离散的用户和物品ID转换为连续的向量表示的过程。这些嵌入向量将作为后续模型学习的基础。

𝑷 ∈ R𝑀×𝑑 和 𝑸 ∈ R𝑁×𝑑 为用户和项目嵌入初始化的嵌入矩阵,其中 𝑀 和 𝑁 分别表示用户和项目的数量; 𝑑 表示嵌入大小,嵌入矩阵 𝑷 和 𝑸 是模型中唯一可学习的参数。

3.2 级联GCN

从各个单一行为中提取用户偏好,并捕捉不同行为之间的级联关系,以全面学习用户偏好。将初始化的用户和物品嵌入作为基本特征,通过利用每种行为学习到的行为特征,逐步细化和优化嵌入表示。

3.2.1 单行为建模

使用lightgcn进行迭代聚合,更新单行为下的用户和项目的嵌入:

​最终的嵌入聚合:

3.2.2 特征转换(不同的地方,没用残差)

交互中所有不同类型的行为都或多或少地揭示了用户的偏好。 在行为链中,后一个行为通常比前一个行为表现出更强的信号或更准确的用户偏好。 然而,直接使用前一个行为的特征作为初始化嵌入可以被视为使用后一个行为对嵌入的细化,这可能会丢失不同行为传达的多样化信息。 另一方面,前一个行为中的噪声信息可能会对后一个行为的学习过程产生严重的负面影响。因此使用特征转换以在下一个行为之前处理学习到的嵌入:

𝑾表示转换向量,特征转换可以有效地提取有用的特征,以促进下一个行为的嵌入学习。(实验分析有证明)

3.2 多行为聚合

将从所有行为中学习到的嵌入进行聚合以进行预测。 这项工作的主要重点是研究按一定顺序利用多种行为的依赖结构进行推荐的潜力:

 3.3 预测与训练:

采用成对学习策略进行模型优化:


 4 讨论

MB-CGCN 与 CRGCN 在如何将嵌入从一个行为传递到下一个行为上有根本的不同。 CRGCN 精心设计了一个残差连接,以保留先前的行为特征作为下一个行为网络的初始化嵌入。 通过这种方式,它通过链中的所有行为逐渐细化用户和项目嵌入来学习用户和项目嵌入。 从最后的行为中学到的嵌入直接用于预测。 因此,从早期行为(例如点击)中学习到的嵌入质量对最终性能有很大影响。 由于早期的行为不是确定性的并且通常是有噪声的,因此在此类行为中使用高阶传播进行嵌入学习不可避免地会给嵌入带来更多的噪声。 这也解释了为什么CRGCN在辅助行为中只使用一层传播(gcn层数为1)。 相反,MB-CGCN采用特征转换来提取有用信息,用于下一个行为的嵌入学习。

实验分析:为了评估特征聚合的实用性,将 CRGCN 与实验中的两个变体进行比较:

• w/o agg.:该变体删除了MB-CGCN中的特征聚合模块。 这意味着从最后一个 GCN 块学习到的嵌入直接用于目标预测。

• w/o  concat.:此变体用串联操作替换聚合。 具体来说,将从每个行为中学习到的用户和项目嵌入连接在一起以进行目标预测。

通过特征转换,当将从第一个行为学习到的嵌入传递到目标行为时,从辅助行为学习到的一些特征将被过滤。 它还将鼓励模型从每种行为中学习不同的特征。 因此,为了充分利用多种行为,CRGCN考虑所有行为特征非常重要。 为了简单起见,在实验中仅比较线性组合(w. agg)和嵌入串联(w. concat.)。 根据经验,W. agg 的性能比 w 好得多。 concat. 还可以应用更复杂的融合方法(例如注意力网络),这将在未来的研究中进行探索。​


5总结

也是级联的方法,期刊到会议,改了残差以及模型训练的部分。因为作者设计的模型是降低复杂度的,所以没用什么其他的方法,整个模型很简洁所以也改不了什么东西。我认为还是有很多地方值得去改进的。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JAVA开发入门学习七- 数组

数组的概念 概念 数组: 是多个相同类型数据按照一定排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理 数组中的概念 数组名: 数组的名称,命名 下标: 从0开始 元素:…

【编辑器扩展】打开持久化路径/缓存路径/DataPath/StreamingAssetsPath文件夹

代码 [MenuItem("Assets/Open Explorer/PersistentDataPath")]public static void OpenPersistentDataPath(){Application.OpenURL(Application.persistentDataPath);}[MenuItem("Assets/Open Explorer/DataPath")]public static void OpenDataPath(){Appl…

链路聚合与GVRP的混合构建(eNSP)

目录 拓扑图: 前置操作: GVRP全局开启: 查询: 实验背景:前面依次搭建了交换机的链路聚合实验手册以及动态vlan GVRP,为了模拟真实环境,本次实验将两者结合。 拓扑图: 前置操作&…

由于这些关键原因,我总是手边有一台虚拟机

概括 虚拟机提供了一个安全的环境来测试有风险的设置或软件,而不会影响您的主系统。设置和保存虚拟机非常简单,无需更改主要设备即可方便地访问多个操作系统。运行虚拟机可能会占用大量资源,但现代 PC 可以很好地处理它,为实验和工作流程优化提供无限的可能性。如果您喜欢使…

华为ensp--BGP路由反射器

学习新思想、争做新青年,今天学习的是BGP路由反射器。 实验目的 理解BGP路由反射器的应用场景 理解BGP路由反射器的工作原理 掌握BGP路由反射器的基本配置方法 实验内容 本实验网络包含了两个AS,两个Cluster。R1、R2、R3属于Cluster 1&#xff0c…

使用idea创建JDK8的SpringBoot项目

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 使用idea创建JDK8的SpringBoot项目 前言我们经常在创建新的springboot项目,默认使用的是spring.io进行创建,但是它总是只会提供高版本的创建方式&…

初学stm32 --- 定时器中断

目录 时钟选择: 内部时钟选择​编辑 时钟计算方法: 计数器模式 向下计数模式(时钟分频因子1,ARR36) 向上计数模式(时钟分频因子1,ARR36) 中央对齐计数模式(时钟分频因…

windows下安装配置anaconda及常用的conda命令

Anaconda极大的简化了Python环境和库的管理,其最大的作用就是可以创建、管理多个不同python版本的虚拟环境,起到不同环境相互隔离、互不干扰、避免环境冲突的目的。如果使用本地Python安装多个包,经常会遇到包冲突,导致整个python…

安装CPU版的torch(清华源)

1、安装指令: pip3 install torch torchvision torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple2、验证torch是否安装成功 // 使用python验证 import torch print(torch.__version__)能正常打印版本即表示安装成功,如下图

ASP.NET Core Web API 控制器

文章目录 一、基类:ControllerBase二、API 控制器类属性三、使用 Get() 方法提供天气预报结果 在深入探讨如何编写自己的 PizzaController 类之前,让我们先看一下 WeatherController 示例中的代码,了解它的工作原理。 在本单元中&#xff0c…

【蓝桥杯——物联网设计与开发】基础模块8 - RTC

目录 一、RTC (1)资源介绍 🔅简介 🔅时钟与分频(十分重要‼️) (2)STM32CubeMX 软件配置 (3)代码编写 (4)实验现象 二、RTC接口…

k8s dashboard可视化操作界面的安装

一、官方安装方法 根据官网的安装配置可以选择如下安装: kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml 二、添加阿里云加速进行安装 #修改recommended.yaml拉取镜像的链接 vim recommended.yam…

【目标跟踪综述及关键技术】

1.多目标跟踪任务介绍 定义 多目标跟踪旨在将视频序列中感兴趣的目标检测出来,并赋予每个目标单独的编号,在整个序列中形成目标的轨迹。 分类 online:算法在推理目标身份过程中,只能看见当前帧以及之前的帧(关联&a…

webrtc音频模块(三) windows Core Audio API及声音的播放

在前面介绍了ADM(Audio Device Module),它用于抽象音频设备管理和音频数据采集/播放接口。windows的实现是AudioDeviceWinowCode,它封装了Core Audio APIs实现了对音频设备的操作。 Core Audio APIs windows提供了多种音频操作API,比如最常…

在linux系统的docker中安装GitLab

一、安装GitLab: 在安装了docker之后就是下载安装GitLab了,在linux系统中输入命令:docker search gitlab就可以看到很多项目,一般安装第一个,它是英文版的,如果英文不好可以安装twang2218/gitlab-ce-zh。 …

uniapp跨平台开发---webview调用app方法

1.app端实现 注意:为了实现实时通信,app端页面是.nvue 代码实现 <template><view class"content"><view class"web-view"><web-view class"web-view" :src"url" ref"webview" onPostMessage"o…

LeetCode 343.整数拆分

1.题目要求: 2.题目代码: class Solution { public:int integerBreak(int n) {//先确定dp数组vector<int> dp;//1.确定dp数组的含义//2.确定dp的递推公式//3.初始化dp数组//4.遍历顺序dp.resize(n 1);dp[0] 0;dp[1] 0;dp[2] 1;for(int i 3;i < n;i){for(int j …

【Linux探索学习】第二十三弹——理解文件系统:认识硬件、探索文件在硬件上的存储问题

Linux学习笔记&#xff1a;https://blog.csdn.net/2301_80220607/category_12805278.html?spm1001.2014.3001.5482 前言&#xff1a; 我们前面讲过了文件的组成是由文件内容和文件属性两者组成的&#xff0c;但是我们前面接触的文件都是系统中的文件&#xff0c;都是已经在进…

Flask中@app.route()的methods参数详解

诸神缄默不语-个人CSDN博文目录 在 Flask 中&#xff0c;app.route 是用于定义路由的核心装饰器&#xff0c;开发者可以通过它为应用指定 URL 映射及相应的处理函数。在处理 HTTP 请求时&#xff0c;不同的业务场景需要支持不同的 HTTP 方法&#xff0c;而 app.route 的 metho…

工业相机镜头选型知识详解

工业相机在机器视觉、自动化生产和检测等领域扮演着重要角色&#xff0c;而镜头作为工业相机的关键组件&#xff0c;其选型直接影响到成像效果和系统的整体性能。在本篇博客中&#xff0c;我们将详细讲解工业相机镜头选型的相关知识&#xff0c;帮助您在实际应用中选择最合适的…