【序列推荐】MAN:跨领域顺序推荐的混合注意网络

#论文题目:MAN:Mixed Attention Network for Cross-domain Sequential Recommendation(跨领域顺序推荐的混合注意网络)
#论文地址:https://dl.acm.org/doi/10.1145/3543507.3583278
#论文源码开源地址:https://github.com/Guanyu-Lin/MAN
#论文所属会议:WSDM‘23
#论文所属单位:卡耐基梅隆大学、清华大学、快手科技、合肥工业大学

在这里插入图片描述

一、摘要

本文提出了一种具有局部全局注意模块的混合注意网络(MAN)来提取特定领域和跨领域的信息。首先,提出了一个局部/全局编码层来捕获特定领域/跨领域的序列模式。在此基础上,提出了一个包含项目相似度、序列融合和群体原型的混合注意层,用于捕获局部/全局项目相似度,融合局部/全局项目序列,并分别提取不同领域的用户群体。最后,提出了一个局部/全局预测层,以进一步发展和结合特定领域和跨领域的兴趣。进一步的研究还表明,提出的方法和组件分别是模型无关的和有效的。

二、问题预定义

在跨域顺序推荐问题中,首先用A和B表示两个域,定义 I I IA I I IB分别表示定义域a和b中的项目集,更具体的,假设 i i itA I I IA i i itB I I IB是第 t t t个给定用户交互的在域A和B项目,因此,可以得到( i i i1A, i i i2A, …, i i itA)和( i i i1B, i i i2B, …, i i itB)。最终是要判断模型预测的 i i it+1A i i it+1B

具体来说:
Input:对于用户在域A和B中,物品序列( i i i1A, i i i2A, …, i i itA)和( i i i1B, i i i2B, …, i i itB)。
Output:跨领域推荐模型估计目标项目 i i it+1A i i it+1B分别在域a和b中,被给定用户与项目序列交互的概率( i i i1A,
i i i2A, …, i i itA)和( i i i1B, i i i2B, …, i i itB)。

三、模型结构

总体来说,模型分为三部分:

  • 局部/全局编码层。为项目构建特定领域的本地和跨领域的全局嵌入。进一步分别使用本地和全局编码器对它们进行编码,以捕获特定领域和跨领域的项目序列模式。
  • 混合注意层。提出了项目相似性注意、序列融合注意和群体原型注意来捕获项目、序列和群体水平上的跨领域模式
  • 局部/全局预测层。为了进化兴趣并预测用户在每个领域中与候选人下一个项目交互的概率,提出了一个局部预测层和一个全局预测层。
    在这里插入图片描述

3.1 局部/全局编码层

首先构建本地和全局项目嵌入。然后,进一步查找项目嵌入,并在序列级别用本地和全局编码器对它们进行编码。

3.1.1 本地和全局项目嵌入

为了捕捉不同领域的领域特定模式,创建了两个项目嵌入矩阵 M M M𝐴 R R R |I𝐴|×𝐷 M M MB R R R |IB|×𝐷,其中𝐷表示潜在维度。然后,为了捕捉跨不同领域的共享项目特征,从表征学习的角度,假设存在共享的潜在空间,其中不同领域具有共同的表征;因此,创建一个共享嵌入矩阵 M M M R R R|i𝐴∪i𝐵|×𝐷’
之后,通过加入位置编码,得到域A和B项目的局部和全局嵌入:
在这里插入图片描述

3.1.2 序列的局部编码器和全局编码器

在从嵌入层获得 E E EA E E EB, E E EAg, E E EBg之后,应用序列编码器来学习序列模式。这里提出如下的局部编码器和全局编码器:

在这里插入图片描述
注意,这个Encoder是序列推荐的骨干模型(如:SASRec、SURGE等)。基于上述操作,得到了 S S SA( S S SB), S S SAg( S S SBg)分别代表域A (B)中的局部序列模式和全局序列模式。

3.2 混合注意层

在本节中,首先提出项目相似性注意,以从局部和全局空间中提取相似项目。然后,提出序列融合注意来进一步融合局部和全局项目序列表示,这将结合特定领域和跨领域的序列模式。最后,提出群体原型注意来提取跨领域的群体模式。

3.2.1项目相似性注意

为了捕捉局部/全局项目嵌入和目标项目嵌入之间的相似性,首先将来自局部空间(即, E E E𝐴𝑗 E E E𝐵𝑗)和全局空间(即, E E E𝐴𝑔𝑗 E E E𝐵𝑔𝑗)的项目嵌入融合在一起。具体地,给定域A (B)中的用户,可以如下计算他/她的历史项目和目标项目之间的项目相似性得分 F F F𝐴 ( F F F𝐵):
在这里插入图片描述
M M MiA M M MiB表示域A (B)的目标项的嵌入,而 || 表示连接操作。基于项目相似性分数,然后可以对相似的历史项目的嵌入进行加权,以如下精炼项目嵌入,
在这里插入图片描述
其中 E E E 𝐴𝑖 E E E 𝐵𝑖 R R R 𝑇×𝐷分别是目标条目的相似历史条目在域a和域b中由 F F F𝐴 F F F𝐵的相似性分数加权的表示。这里𝐴𝑖和𝐵𝑖分别指𝐴和𝐵领域的项目相似性。

3.2.2 序列融合注意力

在获得 S S S𝐴 S S S𝐵 S S S𝐴𝑔 S S S𝐵𝑔之后,然后将它们融合以将特定于域的和跨域的序列模式组合在一起,如下所示(下述部分直接上图了),
在这里插入图片描述

3.2.3 群体原型注意

尽管不能跨域利用重叠的用户id,但是通常存在具有相似偏好的用户组。具体来说,首先汇集每个序列以获得与每个组的相关性。然后,利用多个组原型来聚合项目组,并根据它们的相关性对它们进行加权。

  • 团体利益共享。对于一个用户的一个物品序列,它实际上不仅仅属于一个集团原型。相反,它可以是几个不同重量的原型的混合组合。例如,用户可以同时是青少年和篮球爱好者。因此,提出了一个可学习的软集群分配矩阵,以计算𝑁𝑔集团的重要性。具体来说,每个用户的项目序列首先由一个汇集矩阵 W W W𝑃𝐴 R R R 𝑁𝑔×𝑇 ( W W W𝑃𝐵 R R R 𝑁𝑔×𝑇)汇集,在此基础上,用户与每个组的相关性可以计算如下:
    在这里插入图片描述
  • 群体利益聚合。然后,创建𝑁𝑔集团原型嵌入G ∈ R R R𝑁𝑔×𝐷代表利益集团。这些嵌入然后可以被转换到每个域,聚集典型的相关项目如下,
    在这里插入图片描述
    其中 G G G𝐴 G G G𝐵 R R R 𝑁𝑔×𝐷分别是获得的a域和b域序列的群原型表示。这里CA层类似于方程(8)。然后,可以基于如下相关性分数对所有组原型表示进行加权,
    在这里插入图片描述
  • 群体原型解开。根据定义,每个组原型显然应该是不同的。因此,受解开表征学习进展的启发,提出原型解开正则化如下,并将其加入到总体损失函数的计算过程中:
    在这里插入图片描述

3.3 局部/全局预测层

在这一部分,首先通过相应的预测层发展局部和全局兴趣。然后用每个域的目标函数对它们进行优化。

3.3.1局部和全局预测层

利用提出的混合注意网络(项目相似性注意、序列融合注意和群体原型注意),将输出连接在一起,并将它们馈送到提出的局部预测层以及基于MLP的全局预测层,其可以被公式化如下:
在这里插入图片描述

3.3.2 独立更新的目标函数

然后,利用负对数似然函数进行优化,可以用公式表示如下:
在这里插入图片描述
为了跨两个域进行联合优化,最终的目标函数是等式2中计算的 L L L𝐴 L L L𝐵 L L L𝑔的线性组合,最终的损失函数为:
在这里插入图片描述
其中,θ𝐴和θ𝐵是可学习参数集,𝜆 𝐴和𝜆 𝐵分别作为域a和域b的正则化罚超参数。

讨论。不同于现有的基于桥用户的跨域顺序推荐工作,如PiNet和DASL,提出的MAN模型并不严格要求两个域的项目序列同时作为输入,因为提出的模型的每个域的输出不需要另一个域的输入。也就是说,模型中的每个域都可以独立地更新它的参数。如果没有来自任何域的输入,可以很容易地删除该域的优化目标,例如等式的损失函数(18)如果没有来自域a的输入,将被简化为
在这里插入图片描述
在现实世界的在线推荐中,由于来自两个域的新收集的数据总是不同步的(MAN可以针对每个域迭代优化),所以MAN更实用。

四、实验

在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

第二十章多线程

课程重点: 线程相关概念的理解线程的生命周期线程的常用方法 20.1. 线程的简介 20.1.1. 串行与并发 如果在程序中,有多个任务需要被处理,此时的处理方式可以有串行和并发: 串行(同步):所有的任务&…

【密码学引论】分组密码

第三章 分组密码 DES、IDEA、AES、SM4 1、分组密码定义(按照五个组成部分答) 密钥空间:属于对称加密算法kekd明密文空间:将明文划分为m比特的组,每一块依次进行加密加解密算法:由key决定一个明文到密文的…

AIGC系列之:升级版的Stable Diffusion之SDXL介绍

目录 AIGC工具对比 DALL-E MidJourney Stable Diffusion 相关资料 SDXL介绍 SDXL生图效果 SDXL训练LoRA流程 AIGC工具对比 在目前的三大新兴文本转图像模型中,Stable Diffusion诞生得最晚,但由于拥有发展良好的开源社区,它的用户关注…

影响机器视觉测量精度的因素有哪些?

精度测量取决于分辨率 在机器视觉测量中提供高精度和低不确定度的决定性因素是获取的图像的分辨率。在这种情况下,术语分辨率 (或图像分辨率)意味着以实际单位的单个像素的大小。简而言之,如果一个摄像机传感器在水平方向上包含…

Vue实现可拖拽边界布局

Vue实现可拖拽边界布局 在前端开发中,有时需要实现一种可拖拽边界的布局,通过拖动分隔线来调整不同区域大小。例如,下图是一个典型的可拖拽边界布局,它由左右两个区域组成,左边是一个树形菜单,右边是一个上…

【开源】基于JAVA的农村物流配送系统

项目编号: S 024 ,文末获取源码。 \color{red}{项目编号:S024,文末获取源码。} 项目编号:S024,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 系统登录、注册界面2.2 系统功能2.2…

西南科技大学数字电子技术实验二(SSI逻辑器件设计组合逻辑电路及FPGA实现 )FPGA部分

一、实验目的 1、掌握用SSI(小规模集成电路)逻辑器件设计组合电路的方法。 2、掌握组合逻辑电路的调试方法。 3、学会分析和解决实验中遇到的问题。 4、学会用FPGA实现本实验内容。 二、实验原理 包括:原理图绘制和实验原理简述 1、1位半加器 2、1位全加器 3、三…

leetcode 1670

leetcode 1670 解题思路 使用2个deque作为类的成员变量 code class FrontMiddleBackQueue { public:deque<int> left;deque<int> right;FrontMiddleBackQueue() {}void pushFront(int val) {left.push_front(val);if(left.size() right.size()2){right.push_fr…

2021年06月 Scratch图形化(四级)真题解析#中国电子学会#全国青少年软件编程等级考试

Scratch等级考试(1~4级)全部真题・点这里 一、单选题(共10题,每题2分,共20分) 第1题 执行下列程序,输出的结果为? A:12 B:24 C:8 D:30 答案:B 第2题 执行下列程序,角色说出的内容是? A:2 B:3 C:4 D:5 答案:A 第3题 执行下列程序,输出结果为?

C++基础 -6-二维数组,数组指针

二维数组在内存中的存放方式和一维数组完全相同 下表把二维数组抽象成了行列形式方便理解 a[0]指向第一行首元素地址 a指向第一行的首地址 所以a地址和a[0]地址相同,因为起点相同 但a[0]1往右偏移 但a1往下方向偏移 方便理解 an控制行 a[0]n控制列(相当于*an) 数组指针指向二…

聊聊VMware vSphere

VMware vSphere是一种虚拟化平台和云计算基础设施解决方案&#xff0c;由VMware公司开发。它为企业提供了一种强大的虚拟化和云计算管理平台&#xff0c;能够在数据中心中运行、管理和保护应用程序和数据。vSphere平台与VMware ESXi虚拟化操作系统相结合&#xff0c;提供了完整…

Linux fork笔试练习题

1.打印结果&#xff1f; #include <stdio.h> #include <unistd.h> #include <stdlib.h>int main() {int i0;for(;i<2;i){fork();printf("A\n");}exit(0); } 结果打印 A A A A A A 2.将上面的打印的\n去掉,结果如何? printf("…

HarmonyOS 应用模型开发指南介绍

一、基本概念解析 新版文档中的知识点&#xff0c;介绍更全面&#xff0c;逻辑更清晰&#xff0c;提供了各类基本概念解析&#xff0c;帮助开发者更快学习、掌握系统能力。以下是新版文档部分概念展示。 1、HAP是什么&#xff1f; 开发者通过DevEco Studio把应用程序编译为一…

入门级认证 | Salesforce管理员认证最新备考指南!

Salesforce管理员认证是其他任何管理员认证的基础。通过此考试将展示你对Salesforce功能和最佳实践的了解&#xff0c;使用自定义功能来管理、维护和扩展Salesforce平台。 Admin认证对备考者的要求 Salesforce管理员认证验证了备考者在管理客户和简档、维护数据质量、配置自动…

C/C++ Zlib实现文件压缩与解压

在软件开发和数据处理中&#xff0c;对数据进行高效的压缩和解压缩是一项重要的任务。这不仅有助于减小数据在网络传输和存储中的占用空间&#xff0c;还能提高系统的性能和响应速度。本文将介绍如何使用 zlib 库进行数据的压缩和解压缩&#xff0c;以及如何保存和读取压缩后的…

2、XFP 与 SFP+:有什么区别?

在光纤网络领域&#xff0c;光模块是促进数据顺利传输的重要组件。市场继续接受10G XFP和10G SFP等10G光模块&#xff0c;促使人们对XFP与SFP进行更仔细的审视。他们有什么区别&#xff1f;XFP和SFP的定义是什么&#xff1f;他们的应用场景又如何呢&#xff1f;在下文中寻找所有…

MySQL用得好好的,为何要转ES?

MySQL是一种关系型数据库&#xff0c;它可以高效地存储和查询结构化的数据。 ES是一种分布式搜索引擎&#xff0c;它可以快速地对海量的非结构化或半结构化的数据进行全文检索和分析。 MySQL 和 ES 的数据存储方式也不同。MySQL 中的数据通常是以关系型表的形式存储在磁盘上&…

8.0 泛型

通过之前的学习&#xff0c;读者可以了解到&#xff0c;把一个对象存入集合后&#xff0c;再次取出该对象时&#xff0c;该对象的编译类型就变成了Object类型&#xff08;尽管其在运行时类型没有改变&#xff09;。集合设计成这样&#xff0c;提高了它的通用性&#xff0c;但是…

MySQL(免密登录)

简介: MySQL免密登录是一种允许用户在没有输入密码的情况下直接登录到MySQL服务器的配置。这通常是通过在登录时跳过密码验证来实现的。 1、修改MySQL的配置文件 使用vi /etc/my.cnf&#xff0c;添加到【mysqld】后面 skip-grant-tables #配置项告诉mysql跳过权限验证&#…

OpenCV快速入门【完结】:总目录——初窥计算机视觉

文章目录 前言目录1. OpenCV快速入门&#xff1a;初探2. OpenCV快速入门&#xff1a;像素操作和图像变换3. OpenCV快速入门&#xff1a;绘制图形、图像金字塔和感兴趣区域4. OpenCV快速入门&#xff1a;图像滤波与边缘检测5. OpenCV快速入门&#xff1a;图像形态学操作6. OpenC…