清华大学:序列推荐模型稳定性飙升,STDP框架惊艳登场

news2024/12/22 18:14:39

获取本文论文原文PDF,请公众号留言:论文解读

fc2d9b705d2eea77c8a568e15874709a.jpeg

引言:在线平台推荐系统的挑战与机遇

在线平台已成为我们日常生活中不可或缺的一部分,它们提供了丰富多样的商品和服务。然而,如何为用户推荐感兴趣的项目仍然是一个挑战。为了解决这个问题,研究者们提出了序列推荐任务,旨在从用户的历史行为序列中提炼出用户的兴趣,并据此进行恰当的推荐。尽管现有的方法在捕捉用户兴趣方面取得了一定的进展,但随机噪声的存在仍然是一个主要挑战。在现实世界的推荐平台中,随机噪声可能来源于用户从多个合适的候选项中随机选择一个项目,或者用户以随机顺序访问多个项目。这种随机噪声会导致序列无法为描述用户偏好提供稳定的监督信号,从而干扰模型的优化。

面对这一挑战,研究者们提出了多种方法来处理噪声问题,包括过滤掉不可靠的实例、建模反事实数据分布以及采用两阶段方法来校正序列。然而,这些方法往往依赖于定位噪声项/动作,可能会带来错误累积问题,而且随机项也包含了描述用户偏好的有价值信息。

本文提出了一个新的框架——统计驱动的预训练(STDP)框架,它利用统计信息和预训练范式来稳定推荐模型的优化。通过这种方法,模型的鲁棒性得到了增强,同时也促进了模型对用户长期偏好的捕捉。实验结果验证了我们提出的STDP框架的有效性,它改进了现有方法并取得了最先进的性能。

论文概览:标题、作者、出版信息和链接

标题: Beyond the Sequence: Statistics-Driven Pre-training for Stabilizing Sequential Recommendation Model

作者: Sirui Wang, Peiguang Li, Yunsen Xian, Hongzhi Zhang

出版信息: Seventeenth ACM Conference on Recommender Systems (RecSys ’23), September 18–22, 2023, Singapore, Singapore. ACM, New York, NY, USA

链接: https://arxiv.org/pdf/2404.05342.pdf

随机噪声对推荐系统的影响

1. 随机噪声的来源和问题

在现实世界的推荐平台中,随机噪声可能源自用户在多个合适候选项中随机选择一个项目,或者用户以随机顺序访问多个项目等情况。这种随机性导致序列不能提供稳定的监督信号来描述用户偏好,进而干扰了推荐模型的优化过程。

Sun等人首先验证了噪声行为的存在和严重性,并提出了一个过滤器来移除不可靠的实例。Zhang等人提出了对抗稀疏和噪声特性的行为序列的反事实数据分布模型。Lin等人提出了一种两阶段方法,首先通过调整噪声项目来纠正序列,然后用纠正后的序列训练模型。然而,现有方法依赖于定位噪声项/动作,并带来错误累积问题,而且随机项也包含描述用户偏好的有价值信息。

2. 现有方法的局限性

尽管现有方法在定位噪声项/动作方面取得了一定的进展,但它们存在依赖于错误累积的问题。此外,这些方法忽略了随机项中包含的描述用户偏好的有价值信息。因此,需要一种方法来减少随机噪声对模型优化的影响,并利用更稳定的信息来提高推荐系统的性能。

STDP框架介绍:统计信息驱动的预训练

1. 框架概述与基础模型

STDP(StatisTics-Driven Pre-training)框架利用统计信息和预训练范式来稳定推荐模型的优化。该框架采用SASRec作为基础模型,并设计了几个预训练任务:共现项目预测(CIP)、成对序列相似性(PSS)、频繁属性预测(FAP)和由Zhou等人提出的项目属性预测(IAP)。

基础模型SASRec主要由嵌入层、编码层和预测层组成。嵌入层将用户访问的项目序列映射为d维向量序列,并集成位置特征。编码层使用多个自注意力块进行序列编码,生成序列的表示。预测层计算用户在下一步访问项目的概率。

81a117cd46d605a8645cae92458de597.jpeg

2. 预训练任务的设计

STDP框架设计了以下预训练任务:

  • 共现项目预测(CIP):优化模型以预测下一个项目及其最常共现的项目,鼓励模型关注多个合适的目标,而不仅仅是可能不稳定的下一个项目。
  • 成对序列相似性(PSS):通过将原始序列中的部分项目随机替换为它们的共现项目来生成成对序列,然后最大化原始序列和成对序列表示之间的相似性,增强模型对随机噪声的鲁棒性。
  • 频繁属性预测(FAP):鼓励模型基于序列特征预测频繁属性,以促进捕获用户的长期偏好。

通过这些预训练任务,STDP框架提高了模型对随机访问输入的鲁棒性,并通过统计信息帮助模型捕获稳定的长期偏好。

统计信息的作用

在推荐系统中,统计信息的作用不可忽视。它为模型提供了稳定的信息,有助于减少随机噪声对模型优化的影响。本文中,我们特别关注了两种统计信息:项目共现信息和属性频率信息。

1. 项目共现信息的利用

项目共现信息是通过统计训练数据中项目的共现情况得到的。在本研究中,我们提出了两个预训练任务来利用这些信息。首先是共现项目预测(Co-occurred Items Prediction, CIP)任务,它鼓励模型预测下一个项目及其共现项目,从而使模型关注多个合适的目标,而不是仅仅集中在可能不稳定的下一个项目上。其次是配对序列相似性(Paired Sequence Similarity, PSS)任务,通过随机替换序列中的部分项目为它们的共现项目,并随机交换项目顺序,来模拟用户随机访问多个项目的情况。这样,模型在输入中模仿随机访问,从而增强了其鲁棒性。

2. 属性频率信息的应用

属性频率信息是通过统计序列中属性的出现频率得到的。在本文中,我们设计了一个序列级的频繁属性预测(Frequent Attribute Prediction, FAP)任务,鼓励模型基于序列特征预测频繁属性,从而帮助捕捉用户的长期偏好。这种方法的有效性得到了实验结果的验证,它改进了现有方法,实现了最先进的性能。

实验设置与评估方法

数据集和实验环境

1. 数据集和实验环境

实验选择了六个公共数据集,包括美团、亚马逊(包括美容、运动和玩具)、Yelp和LastFM平台的数据集。这些数据集的详细统计信息列在表1中。实验数据由S3-Rec发布,其中项目序列按时间顺序组织。在数据准备过程中,共现项目集、属性集和喜好集的大小都限制为20,PSS任务中的替换率设置为0.2。序列长度填充到50,每个小批量的大小填充到256。

59035dc09305268e0451d17b3792875e.jpeg

2. 评估指标和基线方法

为了与先前的方法进行公平比较,我们保留了每个序列中的最后一个和倒数第二个项目作为测试和验证,其余项目用于训练。我们采用命中率(Hit Ratio, HR@5和HR@10)、归一化折扣累积增益(Normalized Discounted Cumulative Gain, NDCG@5和NDCG@10)和平均倒数排名(Mean Reciprocal Rank, MRR)作为评估指标。值得注意的是,评估是基于采样的项目集进行的。

我们选择了以下几种竞争性的基线方法进行性能比较:SASRec利用多头自注意力机制从Transformer网络捕获长期语义;BERT4Rec采用双向自注意力机制,并使用Cloze目标损失进行预训练;FDSA将异构信息集成到项目序列中,并从多个角度预测下一个项目;S3-Rec预训练SASRec模型以捕获异构信息之间的相关性,从而改进序列推荐,实现了最先进的性能。

实验结果与分析

1. STDP框架的整体性能

在实验中,我们的STDP框架在六个数据集上的表现均优于现有的基线方法。通过对比实验,我们发现STDP框架在MRR指标上平均提升了17.66%,并且在所有数据集上都实现了最佳得分。这一结果表明,STDP框架能够有效地利用统计信息来减少随机噪声的负面影响,从而提高了模型的整体性能。

2. 消融研究:各个任务的贡献

为了进一步理解STDP框架中各个任务的贡献,我们进行了一系列的消融实验。结果显示,去除配对序列相似性(PSS)任务会比去除共现项目预测(CIP)任务对性能产生更大的影响。这可能是因为PSS任务直接作用于序列层面,而CIP任务则在项目层面发挥作用。此外,当同时去除CIP和PSS任务时,性能显著下降,这验证了全局共现信息在模型中的重要性。

3. 泛化能力验证

为了验证STDP框架的泛化能力,我们将其应用于GRU4Rec模型,并观察到性能有了显著提升。这一结果表明,STDP框架不仅适用于SASRec模型,也能够有效地提升其他序列推荐模型的性能,证明了其良好的泛化能力。

f29c25cbd5f635259bebdb16b32332f2.jpeg

f483b99a060c8ba8c8ff038c96357d60.jpeg

结论与未来展望

1. STDP框架的优势总结

本文提出的STDP框架通过利用统计信息和预训练任务来减少随机噪声的影响,显著提高了序列推荐模型的稳定性和性能。实验结果表明,STDP框架在多个数据集上均取得了最佳性能,证明了其有效性。

2. 对其他模型的推广潜力

STDP框架的设计不依赖于特定的序列推荐模型,因此具有很好的推广潜力。实验中将STDP应用于GRU4Rec模型也取得了积极的结果,这进一步验证了STDP框架的通用性和适用性。

3. 后续研究方向

尽管STDP框架已经显示出强大的性能,但仍有进一步的研究空间。未来的研究可以探索更多类型的统计信息,以及如何更有效地整合这些信息以进一步提升模型的鲁棒性和准确性。此外,可以考虑将STDP框架应用于更广泛的序列建模任务中,以验证其在不同领域的有效性。

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

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

相关文章

sql(ctfhub)

一.整数型注入 输入1 输入2 输入2-1,回显为1的结果,说明是数字型,只有数字型才可加减 判断字段数为2 查询数据库 查表 查列 显示flag内容 二.字符型注入 输入1 输入2 输入2-1,说明为字符型,不是数字型 判断闭合方式为…

新手小白,在数学建模的过程中应该怎么分工?

大家知道,数学建模竞赛是需要一个团队的三个人在三天或四天的时间内,完成模型建立,编程实现和论文写作的任务,对许多第一次参加建模或者建模经验比较欠缺的团队来说,是时间紧任务重的,那么怎么办呢&#xf…

Elasticsearch:简化 KNN 搜索

作者:来自 Elastic Panagiotis Bailis 在这篇博客文章中,我们将深入探讨我们为了使 KNN 搜索的入门体验变得更加简单而做出的努力! 向量搜索 向量搜索通过在 Elasticsearch 中引入一种新的专有的 KNN 搜索类型,已经可以使用一段…

对接浦发银行支付(八)-- 对账接口

一、背景 本文不是要讲述支付服务的对账模块具体怎么做,仅是介绍如何对接浦发银行的对账接口。 也就是说,本文限读取到对账文件的内容,不会进一步去讲述如何与支付平台进行对账。 如果要获取商户的对账单,需要遵循以下步骤&…

数据分析_数据分析思维(1)

数据分析_数据分析思维(1) 这篇文章具体的给大家介绍数据分析中最为核心的技术之一: 数据分析思维的相关内容。 一、数据分析的三种核心思维 作为新手数据分析师或数据运营, 在面对数据异常的时候, 好多小伙伴都会出现: “好像是A引起的”, “好像也和B渠道有关”, “也可能…

江苏瑞达环保科技股份有限公司| 邀您参加2024全国水科技大会暨技术装备成果展览会

—— 展位号:A18 —— 江苏瑞达环保科技股份有限公司是一家致力于环境保护和可持续发展的高新技术企业,专注于环境治理技术研发和环保节能装备制造,为工业企业提供可靠的工程解决方案。2023年,瑞达科技被认定为江苏省省级专精特新企业。 瑞达科技成立于2…

rCore-Turorial-Book第三课(计算机启动流程和程序内存布局与编译流程探索)

本节任务:梳理程序在操作系统中被编译运行的全流程,大体了解我们在没有操作系统的情况下,我们会面对那些困难 重点 1. 计算机组成基础 面对的困难:没有操作系统,我们必须直面硬件资源,管理起他们并为应用程…

本地环境通过ssh通道连接服务器数据库,实现本地客户端和代码可以访问数据库

使用方法: ssh -p 搭建隧道的端口 -fNL 本地端口:远程ip:远程端口号 搭建隧道的账号搭建隧道的ip 可以增加参数-v,输出更多的信息 ssh -p 搭建隧道的端口 -fNL 本地端口:远程ip:远程端口号 -v 搭建隧道的账号搭建隧道的ip 有时候,测试环境的数据库不允许…

YOLOv8-PySide --- 基于 ultralytics 8.1.0 发行版优化 | 代码已开源

YOLOv8-PySide — 基于 ultralytics 8.1.0 发行版优化 Github 项目地址:https://github.com/WangQvQ/Ultralytics-PySide6 BiliBili视频地址:https://www.bilibili.com/video 页面效果 如何使用 pip install ultralytics8.1.0 or git clone --branch v…

如何判别三角形和求10 个整数中最大值?

分享每日小题,不断进步,今天的你也要加油哦!接下来请看题------> 一、已知三条边a,b,c能否构成三角形,如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形或普通三角形 …

通过Docker新建并使用MySQL数据库

1. 安装Docker 确保您的系统上已经安装了Docker。可以通过以下命令检查Docker是否安装并运行: systemctl status docker如果没有安装或运行,请按照官方文档进行安装和启动。 2. 拉取MySQL镜像 从Docker Hub拉取MySQL官方镜像。这里以MySQL 5.7版本为…

(回溯)记忆化搜索和dp

动态规划的核心就是 状态的定义和状态的转移 灵神 的 回溯改递归思路 首先很多动态规划问题都可以采用 回溯 的思想 回溯主要思想就是把 一个大问题分解成小问题 比如 采用子集类回溯问题中的核心思想-> 选或不选 或者 选哪个 记忆化搜索之后 我们可以发现 每个新节点依…

【网络原理】UDP协议的报文结构 及 校验和字段的错误检测机制(CRC算法、MD5算法)

目录 UDP协议 UDP协议的报文结构及注意事项 UDP报文结构中的校验和字段 1. 校验和主要校验的内容 2. UDP校验和的实现方式 3. CRC(循环冗余校验)算法 4. MD5(Message Digest Algorithm 5) UDP协议 上一篇文章提过&#xf…

【C++】双指针算法:复写零

1.题目 别看这是一道简单题,它的通过率低于一些中等甚至困难的题目! 大大增加这道题目难度的是最后一句话:1.不可越界写入。2.就地修改。 如果可以再创建一个数组的话,那么这道题目就会非常简单,但这道题目必须要求在…

汽车IVI中控开发入门及进阶(十六):carplay认证

现在有些中控采用高通的芯片如8155、8295等,实现多屏互动等,但是也有一些车型走低成本方案,比如能够实现HiCar、CarLife或者苹果Apple的Carplay等能进行手机投屏就好了。 能实现CarPlay功能通过Carplay认证,也就成了一些必须的过程,国产车规级中控芯片里,开阳有一款ARK1…

AI视频分析技术的常用开源模型及TSINGSEE青犀AI视频识别分析能力介绍

AI视频分析技术是指利用人工智能技术来对视频数据进行分析和处理的技术。开源模型是指可以免费获取和使用的代码模型,可以帮助开发人员快速构建和部署AI视频分析应用程序。 以下是一些业内常用的用于AI视频分析技术的开源模型: OpenCV:Open…

kali搭建vulfocus靶场

电脑安装kali,使用kali搭建靶场,自己电脑作为VPS使用 kali 先装好docker: # docker version # 查看当前是否有docker,如果无docker ,则进行docker安装 # apt install docker.io 安装完成后,再次输入 # docker…

【数据结构】二叉树链式结构的实现《遍历,实现》(题库+解析+源码)

前言 二叉树的学习离不开对堆的理解,这是上篇堆的传送门 http://t.csdnimg.cn/F6Jp3 1.二叉树链式结构的实现 1.1 前置说明 在学习二叉树的基本操作前,需先要创建一棵二叉树,然后才能学习其相关的基本操作。由于现在大家对二 叉树结构掌握还…

【Java】常见锁策略 CAS机制 锁优化策略

前言 在本文会详细介绍各种锁策略、CAS机制以及锁优化策略 不仅仅局限于Java,任何和锁相关的话题,都可能会涉及到下面的内容。 这些特性主要是给锁的实现者来参考的. 普通的程序猿也需要了解一些, 对于合理的使用锁也是有很大帮助的 文章目录 前言✍一、…

收集统计信息报错ora-00600[16515]问题处理

1、基础环境 操作系统Oracle Solaris 11.3 数据版本Oracle 12.2 2、故障理像 对一个20T的大库收集一下全库的统计信息 原因是现在都2024年了,这个库的统计信息基本都是2021年, 没具体查找啥原因导致的系统自定义的收集任务失败,于是决定手…