基于卷积神经网络的Caser算法

将一段交互序列嵌入到一个以时间为纵轴的平面空间中形成“一张图”后,基于卷积序列嵌入的推荐(Caser)算法利用多个不同大小的卷积滤波器,来捕捉序列中物品间的点级(point-level)、联合的(union-level)和跳跃(skip)转移模式。

除了序列的局部特征,Caser还引入了用户全局特征,构建了一个较为统一和灵活的用于序列推荐的网络结构。

ABSTRACT

The order of interaction implies that sequential patterns play an important role where more recent items in a sequence have a larger impact on the next item.交互序列发挥重要作用,其中序列中较新的项目对下一个项目有更大影响。

The idea is to embed a sequence of recent items into an “image” in the time and latent spaces and learn sequential patterns as local features of the image using convolutional filters.将一系列最近的项目嵌入到时间和潜在空间中的“图像”中,并使用卷积滤波器学习序列模式作为图像的局部特征。

INTRODUCTION

major limitations

point-level:前面的三个蓝色块单独对黄色块产生影响。

union-level,no skip:前面的三个联合对接下来的黄色块产生影响。

union-level,skip once:前面的三个联合块可以对后面的黄色块产生影响。

contributions

(1) Caser uses horizontal and vertical convolutional filters to capture sequential patterns at point-level, union-level, and of skip behaviors. (2) Caser models both users’ general preferences and sequential patterns, and generalizes several existing state-of-the- art methods in a single unified framework. (3) Caser outperforms state-of-the-art methods for top-N sequential recommendation on real life data sets.。

(1) Caser 使用水平和垂直卷积滤波器来捕获点级、联合级和跳跃行为的顺序模式。

(2) Caser 对用户的一般偏好和顺序模式进行建模,并在一个统一的框架中概括了几种现有的最先进的方法。

(3) Caser 在现实生活数据集上的 top-N 顺序推荐方面优于最先进的方法。

FURTHER RELATED WORK

CNN学习序列特征,LFM(潜在因子模型)学习用户特定特征。

网络设计的目标是多重的:在union-level和point-level捕获用户的一般偏好和序列偏好,并捕获skip行为,所有这些都在未观察到的空间中。

训练CNN,对于每个u,从Su中提取每L个连续项目作为输入,并且提取接下来的T个项目作为目标。(通过滑动窗口来完成)每个窗口生成u的训练实例(u,previous L items,next T items)

PROPOSED METHODOLOGY

Embedding Look-up

算法定义了每个物品i对应的物品嵌入向量Qi和每个用户嵌入向量Pu。为了捕捉用户的动态偏好,当要预测用户u在时间步t上的偏好时,去用户u在第t步前交互的L个物品组成输入物品序列,并且根据定义好的物品嵌入向量,拼接得到物品序列的嵌入矩阵。

Convolutional Layers

将嵌入矩阵E看作“一张图”并对其进行卷积操作。使用纵向移动的水平滤波器来捕捉前L步物品对后续物品的综合影响(union-level)。使用横向移动的垂直滤波器来捕捉前L步物品对后续物品的点级影响(point-level)。

两个水平滤波器捕获两个union-level序列模式。滤波器为h×d矩阵。通过在E上滑动来获取序列模式的信号。

Horizontal Convolutional Layer.

假设模型中总共设置了n个水平滤波器,第k个的大小为h×d。水平滤波器从矩阵顶部重合的位置开始执行操作。(求内积融合再过激活函数)

水平滤波器从上往下滑动一个位置,直到达到矩阵底部。重复以上操作得到的值拼接成一个新的向量。

接着对每个新的向量进行最大池化,最后将n个水平滤波器得到的值拼接起来,得到包含输入序列中L个物品的不同组合的联合信息的输出向量。

通过训练滤波器来捕获具有多个联合大小的联合级模式。

Vertical Convolutional Layer.

设置多个垂直滤波器,大小都为L×1.与水平滤波器操作相似,每个垂直滤波器在嵌入矩阵上从左到右滑动得到一个d维度向量。将输出拼接到一起得到输出向量。

Fully-connected Layers

将上面两种卷积层的输出向量合并后送入第一个全连接层,得到表示序列局部特征的向量。

将表示局部特征与表示用户全局特征的用户嵌入向量拼接后送入第二个全连接层,得到该用户在下一个时间步t对所有物品的预测偏好。

NetWork Training

为了捕获序列中的物品之间的跳跃的转移关系还提出将下一个时间步t及后续若干时间步的物品都作为目标物品。

优缺点

优点:将FPMC和Fossil等基于矩阵分解的算法所建模的信息包含于其中,并且考虑了前L个物品的不同组合的作用和对后续物品的跳跃的影响。

相比于RNN、CNN不规定信息必须沿着时间节点依次连续传递,具有更大的灵活性,并且更容易实现并行化。

缺点:只能捕捉短期的(L步之内)序列特征的局限性。

Q&A

对该模型举一个例子,具体计算过程?

模型哪里有捕获skip behaviors?

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

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

相关文章

基于windows环境使用nvm安装多版本nodejs

目录 前言 一、卸载node 二、nvm是什么? 三、nvm安装 1.官网下载 nvm 包 2. 安装nvm-setup.exe 3. 配置路径和下载镜像 4. 检查安装是否完成 四、 使用nvm安装node 五、修改npm默认镜像源为淘宝镜像 六、环境变量配置 1. 新建目录 2. 设置环境变量 七…

openGauss开源数据库实战二十五

文章目录 任务二十五 openGauss 数据库的物理备份与恢复任务目标实施步骤一、为进行物理备份做准备1.确保数据库工作在归档模式2.创建保存数据库物理备份的目录3.创建保存归档日志备份的目录 二、进行openGauss数据库的物理备份1.备份数据库2.切换WAL3.备份归档日志 三、openGa…

中间件--MongoDB部署及初始化js脚本(docker部署,docker-entrypoint-initdb.d,数据迁移,自动化部署)

一、概述 MongoDB是一种常见的Nosql数据库(非关系型数据库),以文档(Document)的形式存储数据。是非关系型数据库中最像关系型数据库的一种。本篇主要介绍下部署和数据迁移。 在 MongoDB 官方镜像部署介绍中&#xff…

VScode、Windsurf、Cursor 中 R 语言相关快捷键设置

前言 在生物信息学数据分析中,R语言是一个不可或缺的工具。为了提高R语言编程效率,合理设置快捷键显得尤为重要。本文介绍在VSCode Windsurf Cursor 中一些实用的R语言快捷键设置,让非 Rstudio 的 IDE 用起来得心应手😑 操作种…

R学习——因子

目录 1 定义因子(factor函数) 2因子的作用 一个数据集中的 只需要考虑可以用哪个数据来进行分类就可以了,可以用来分类就可以作为因子。 Cy1这个因子对应的水平level是4 6 8: 1 定义因子(factor函数) 要…

GoTrackIt应用指南:共享单车时空轨迹优化

本篇文章我们来基于GoTrackIt 包来研究一下里面的轨迹数据清洗功能,该包这部分功能是一个用于处理和分析GPS轨迹数据的工具,能够帮助用户进行诸如卡尔曼滤波平滑、轨迹简化;停留点删除、增密、降频、滑动窗口平滑的链式操作,并提供…

雨晨 24H2 IoT 企业版 ltsc 2024 Hotpatch 极简 26100.2605

文件: 雨晨 24H2 IoT 企业版 ltsc 2024 Hotpatch 极简 26100.2605 install.esd 大小: 1970652896 字节 修改时间: 2024年12月13日, 星期五, 18:06:39 MD5: 3DCB989B62B6656B2CB34B0D88EBEE45 SHA1: C6E890223892B7A3EDA59E4881C70214DD546DB7 CRC32: 13EDFA89 与往版&#xff…

实现 RAM 时应该考虑的性能因素

实现 RAM 时应该考虑的性能因素 要高效地推断存储元件,需要考虑下列影响性能的因素: • 使用专用块还是分布式 RAM RAM 可以在专用块 RAM 或使用分布式 RAM 的 LUT 内实现。不同的选择会影响资源选择,同时还会严重地影响性 能和功耗…

python数据分析之爬虫基础:解析

目录 1、xpath 1.1、xpath的安装以及lxml的安装 1.2、xpath的基本使用 1.3、xpath基本语法 2、JsonPath 2.1、jsonpath的安装 2.2、jsonpath的使用 2.3、jsonpath的基础语法 3、BeautifulSoup 3.1、bs4安装及创建 3.2、beautifulsoup的使用 3.3、beautifulsoup基本语…

pytest入门三:setup、teardown

https://zhuanlan.zhihu.com/p/623447031 function对应类外的函数,每个函数调用一次 import pytest def setup_module():print(开始 module)def teardown_module():print(结束 module)def setup_function():print(开始 function)def teardown_function():print(结…

Tomcat的安装即使用

Tomcat的概念 Tomcat服务器是Java语言开发的,免费的开放源代码的Web应用服务器。 Tomcat处理静态HTML的能力远不及Apache或者Nginx,通常是作为一个Servlet和JSP容器,单独运行在后端。 Tomcat是由三个功能组合而成: java servlet&…

信创改造-Spring Boot 项目部署至 TongWeb

打 war 包参考:https://blog.csdn.net/z1353095373/article/details/144330999

ubuntu20.04+ROS Noetic 安装PX4+Mavros

文章目录 系统环境安装依赖PX4 安装老版本安装测试环境变量添加版本查看 安装MAVROS(二进制安装非源码安装)测试 OGC 地面站安装测试mavros与sitl通信参考 系统环境 ubuntu 20.04 ROS Noetic 如果系统安装了Anaconda等虚拟环境管理器,要退出…

day10 电商系统后台API——接口测试(使用postman)

【没有所谓的运气🍬,只有绝对的努力✊】 目录 实战项目简介: 1、用户管理(8个) 1.1 登录 1.2 获取用户数据列表 1.3 创建用户 1.4 修改用户状态 1.5 根据id查询用户 1.6 修改用户信息 1.7 删除单个用户 1.8 …

C语言程序设计P5-5【应用函数进行程序设计 | 第五节】—知识要点:变量的作用域和生存期

知识要点:变量的作用域和生存期 视频: 目录 一、任务分析 二、必备知识与理论 三、任务实施 一、任务分析 有一个一维数组,内放 10 个学生成绩,写一个函数,求出平均分、最高分和最低分。 任务要求用一个函数来完…

CentOS安装Nginx提示没找到

说明:在CentOS操作系统里,用yum方式安装Nginx,提示下面的错误; 说没找到,敲下面的命令,看下包管理器里面有没有Nginx; yum list available nginx如下,确实没有找到; 敲下…

Edge SCDN深度解析,边缘安全加速的创新实践

边缘安全加速(Edge Secure Content Delivery Network,SCDN)是酷盾安全推出的边缘集分布式 DDoS 防护、CC 防护、WAF 防护、BOT 行为分析为一体的安全加速解决方案。通过边缘缓存技术,智能调度使用户就近获取所需内容,为…

HTML、CSS表格的斜表头样式设置title 画对角线

我里面有用到layui框架的影响&#xff0c;实际根据你自己的框架来小调下就可以 效果如下 上代码 <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-wi…

java 导出word锁定且部分内容解锁可编辑

使用 Apache POI 创建带编辑限制的 Word 文档 在日常工作中&#xff0c;我们可能需要生成一些带有编辑限制的 Word 文档&#xff0c;例如某些段落只能被查看&#xff0c;而其他段落可以自由编辑。本文介绍如何使用 Apache POI 创建这样的文档&#xff0c;并通过代码实现相应的…

【多模态文档智能】OCR-free感知多模态大模型技术链路及训练数据细节

目前的一些多模态大模型的工作倾向于使用MLLM进行推理任务&#xff0c;然而&#xff0c;纯OCR任务偏向于模型的感知能力&#xff0c;对于文档场景&#xff0c;由于文字密度较高&#xff0c;现有方法往往通过增加图像token的数量来提升性能。这种策略在增加新的语言时&#xff0…