首页 > 编程语言 >读论文-基于自注意力机制和迁移学习的跨领域推荐算法

读论文-基于自注意力机制和迁移学习的跨领域推荐算法

时间:2024-04-11 22:11:06浏览次数:28  
标签:推荐 用户 领域 算法 迁移 目标 注意力

前言

今日要读的文章为一篇2022年4月2日发表于《计算机科学》的期刊文章;文章发现了传统的单领域推荐算法的问题:传统的单领域推荐算法受限于用户和项目的稀疏关系,存在用户/项目冷启动的问题,并且,其仅以用户对项目评分进行建模,忽略了评论文本中所蕴含的信息。

基于此,文章提出了一种基于评论文本的跨领域推荐算法在辅助领域提取用户/项目的评论信息来缓解目标领域的数据稀疏问题,来提高推荐的准确率。文中提出了结合自注意力机制和迁移学习的跨领域推荐算法SAMTL(Self-Attention Mechanism and Transfer Learning)。与现有算法不同,SAMTL充分融合了目标领域和辅助领域的知识。

摘要

传统的单领域推荐算法受限于用户和项目的稀疏关系,存在用户/项目冷启动的问题,并且,其仅以用户对项目评分进行建模,忽略了评论文本中所蕴含的信息。基于评论文本的跨领域推荐算法在辅助领域提取用户/项目的评论信息来缓解目标领域的数据稀疏问题,以提高推荐的准确率。文中提出了结合自注意力机制和迁移学习的跨领域推荐算法SAMTL(Self-Attention Mechanism and Transfer Learning)。与现有算法不同,SAMTL充分融合了目标领域和辅助领域的知识。首先,引入自注意力机制建模用户的喜好信息;其次,通过交叉映射跨域传输网络实现借助一个领域的信息来提高另一个领域的推荐准确率;最后,在知识融合模块和评分预测模块整合两个域的信息,进行评分预测。在Amazon数据集上的实验表明,与现有的跨领域推荐模型相比,SAMTL的MAE和MSE值更高,在3种不同的跨领域数据集上的MAE值分别提高了8.4%,13.2%和19.4%,MSE值分别提高了6.3%,7.8%和5.6%。通过多项实验验证了自注意力机制和迁移学习的有效性,以及它们在缓解数据稀疏和用户冷启动问题方面的优势。

前言

推荐算法能有效缓解信息过载,常用的推荐算法包括基于内容的单领域推荐算法、混合推荐算法和协同过滤算法。其中,最经典的算法是协同过滤算法,其主要根据用户的历史反馈向用户推荐项目。然而,这些方法对于没有历史反馈的新用户,即冷启动用户而言,效果甚微。近年来,跨领域推荐引起了广泛关注。跨领域推荐旨在给定两个相关的域(如音乐和电影),用户可能在一个域(源领域)中具有历史交互,而在另一个域(目标领域)中没有历史交互。在目标领域,这些用户被视为冷启动用户,但是,这两个域是相关的,存在一部分共享知识,而这部分知识可以迁移到目标领域中,以缓解目标领域的数据稀疏问题,从而提高推荐系统的推荐准确度。

如果跨领域推荐算法只利用项目所包含的用户评分数据进行推荐预测,则效果不理想,只能在一定程度上缓解数据稀疏问题,因为评分数据包含的信息单一,难以从源领域学习到有效的知识对用户和项目进行建模,并且难以将源领域知识迁移到目标领域,以提高推荐精度。

跨领域推荐的核心任务是对两个相关域之间的用户进行偏好映射。为实现这一映射,现有的方法(如EMCDR,CDLFM和RC-DFM)将用户的偏好编码为单个向量,然后对整体进行跨域映射。如图1所示,现有解决方案分别在源领域和目标领域中学习用户/项目表示,然后基于重叠的用户来学习并进行跨域映射。但是源领域和目标领域用户之间的直接映射无法明确捕获用户在不同域中的各种细粒度偏好,例如,喜欢摇滚音乐的用户可能更喜欢观看科幻电影。

自注意力机制

本文的自注意力模型采用点积运算的方式来计算评论文本的重要性,其计算式如下:

image

其中,Q,K,V分别是查询向量矩阵、键向量矩阵和值向量矩阵。这3个矩阵中每一行分别代表一个对应向量,一般通过把输入向量序列X分别乘以3个矩阵W,W,W得到。

跨领域推荐

跨领域推荐的目的是丰富目标领域的数据,学习源领域中用户的喜好信息,最终提高目标领域推荐的准确性。跨领域推荐的任务定义如下。U和U是源领域和目标领域中具有用户偏好的用户集合,I和I分别是源领域和目标领域中具有项目属性的项目集合,则跨领域推荐可以定义为:通过源领域的知识给目标领域的用户推荐目标领域的项目,即把I利用U∪I的知识推荐给U

迁移学习

迁移学习指将在数据密度较高的领域学习到的知识迁移到数据密度较低的领域,即将在源领域中学习到的用户喜好信息迁移到目标领域,提高了目标领域推荐的准确性,同时,迁移学习降低了传统机器学习中训练集和测试集要满足独立同分布的条件,提高了目标领域推荐的精度。

自注意力机制和跨域传输网络

SAMTL模型结构如图2所示。SAMTL模型由嵌入层、自注意力模块、交叉跨域传输网络和决策网络组成。其中,嵌入层使用GloVe生成用户和项目的评论词向量;自注意力模块提取用户的源领域特征、目标领域特征和项目的源领域特征、目标领域特征。交叉跨域传输网络中,信息可进行双向传递,从而达到使用辅助领域来提升目标领域推荐效果的目的。最后在决策网络进行不同领域的知识融合和评分预测。

image

自注意力机制网络

注意力机制关注部分细节,而非基于全部信息。本质上,Attention是从大量信息中筛选出少量重要信息,并聚焦到这些重要信息上,忽略大多数不重要的信息。本文在嵌入层和交叉跨域传输网络之间加入了自注意力模块。由于卷积神经网络(Convolutional Neural Network, CNN)中卷积核尺寸的限制,卷积操作覆盖的范围非常有限,当特征距离稍远时,就难以获取。而自注意力机制不仅能够建模序列中用户评论的上下文信息,还能够通过计算序列中任意2个评论之间的相关程度来捕获行为的长期依赖关系和序列的全局信息,缓解CNN只能覆盖局部信息的问题。自注意力机制对外部信息依赖较少,更能捕捉到内部信息的特征.
自注意力机制的结构图如下图所示:

image

跨域传输网络

本节提出了一种基于交叉映射的跨域传输网络来实现域跟域之间的信息传输。其主要任务是在两个域之间通过在同一层网络中共享同一个矩阵来实现域和域之间的双向信息传递,从而达到使用辅助域来提升目标领域推荐效果的目的。

image

标签:推荐,用户,领域,算法,迁移,目标,注意力
From: https://www.cnblogs.com/wephilos/p/18119925

相关文章

  • 基于矩阵分解的协同过滤算法
    引言随着互联网、大数据等新技术的迅速发展,人们的生活变得更加便捷,但同时也导致网络数据爆炸式增长。为了快速帮助用户找到感兴趣的内容,越来越多的研究者致力于推荐算法的研究,以提高推荐质量,向用户推荐更符合其喜好的内容。然而,目前的推荐算法仍存在数据稀疏性、隐私保护和冷启动......
  • 基于注意力机制与改进TF-IDF的推荐算法
    前言本篇文章是2020年8月发表于《计算机工程》的一篇期刊论文,文章名称《基于注意力机制与改进TF-IDF的推荐算法》。文章针对传统推荐系统主要依赖用户对物品的评分数据而无法学习到用户和项目的深层次特征的问题,提出基于注意力机制与改进TF-IDF的推荐算法(AMITI)。将双层注意力......
  • 基于自注意力机制的轻量级人体姿态估计(Lightweight Human Pose Estimation Based on
    写在前面本文是一篇于2023年3月21日发表在2023InternationalConferenceonBigData,EnvironmentalIndustryandMaterialsScience(ICBDEIMS2023)的一篇会议论文。论文主要聚焦于解决单签人体姿态估计网络模型中普遍存在的参数多、计算复杂度高、检测时间长的问题,文章采用......
  • 基于内容的电影推荐算法研究
    引言今天读的文章为一篇名为《基于内容的电影推荐算法研究》的文章,文章提出了一种基于内容的电影推荐算法,通过分析电影特征和用户兴趣,实现更精准的电影推荐。文章中使用到了TF-IDF向量化方法,将电影类型和导演信息转化为特征向量,然后使用余弦相似度来衡量电影之间的相关性,接下来......
  • 深入理解MD5算法:原理、应用与安全
    第一章:引言导言在当今数字化时代,数据安全和完整性变得至关重要。消息摘要算法是一种用于验证数据完整性和安全性的重要工具。在众多消息摘要算法中,MD5(MessageDigestAlgorithm5)因其快速、广泛应用和相对较高的安全性而备受关注。本书将深入探讨MD5算法的原理、应用和安全性,帮......
  • 超详细!详解一道高频算法题:数组中的第 K 个最大元素
    超详细!详解一道高频算法题:数组中的第K个最大元素今天分享的题目来源于LeetCode第215号问题,是面试中的高频考题。题目描述在未排序的数组中找到第k个最大的元素。请注意,你需要找的是数组排序后的第k个最大的元素,而不是第k个不同的元素。......
  • 从 Oracle 到 MySQL 数据库的迁移之旅
    目录引言一、前期准备工作1.搭建新的MySQL数据库2.建立相应的数据表2.1数据库兼容性分析2.1.1字段类型兼容性分析2.1.2函数兼容性分析2.1.3是否使用存储过程?存储过程的个数?复杂度?2.1.4是否使用触发器?个数?使用的场景?2.2建表过程中其他需要注意的事项3.为项目配置Oracle和MyS......
  • 实用算法模板——滑动窗口
    为了更好的说明这个问题,我们借用acWing上的一道题目模拟样例:解法一:使用stl中的双端队列求解解法二:使用数组模拟队列,运行速度更快如果还有疑问,可参考:C15【模板】单调队列滑动窗口最值_哔哩哔哩_bilibili希望对你有所帮助,感谢查看!......
  • Deep Deterministic Policy Gradient(DDPG)算法讲解笔记
    DDPGDeepDeterministicPolicyGradient,基于actor-critic模型提出了一个有效的valuebased连续型空间的RL算法,引入了一些帮助训练稳定的技术。基础:DQN,Batchnormm,Discretize,微积分backgroundDQN改进的推广Policybased方法(TRPO)已经在actionspace取得突破传统disc......
  • 算法训练营Day08-LeetCode344. 反转字符串 && 541. 反转字符串 II && 151. 反转字符串
    344.反转字符串题目链接:LeetCode344.反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用O(1)的额外空间解决这一问题思路:字符串首尾字符交换即可完成反转。定......