CN114791983B - 基于时序物品相似度的序列推荐方法 - Google Patents

基于时序物品相似度的序列推荐方法 Download PDF

Info

Publication number
CN114791983B
CN114791983B CN202210384315.5A CN202210384315A CN114791983B CN 114791983 B CN114791983 B CN 114791983B CN 202210384315 A CN202210384315 A CN 202210384315A CN 114791983 B CN114791983 B CN 114791983B
Authority
CN
China
Prior art keywords
vector
embedded
sequence
embedding
exp
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210384315.5A
Other languages
English (en)
Other versions
CN114791983A (zh
Inventor
陈建峡
潘立纬
胡舒涵
李姝�
肖亮
肖轶涛
刘琦
郑吟秋
刘畅
马忠宝
程玉
李超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hubei University of Technology
Original Assignee
Hubei University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hubei University of Technology filed Critical Hubei University of Technology
Priority to CN202210384315.5A priority Critical patent/CN114791983B/zh
Publication of CN114791983A publication Critical patent/CN114791983A/zh
Application granted granted Critical
Publication of CN114791983B publication Critical patent/CN114791983B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明属于序列推荐技术领域,具体公开了一种基于时序物品相似度的序列推荐方法,包括建立神经网络模型,构建基于时间信息的嵌入向量;包括与绝对时间相关的嵌入向量以及相对时间相关的嵌入向量;自注意力机制学习模块,结合相对嵌入向量获得局部特征X;全局偏好学习模块获得全局特征Y;按当前候选物品和最近交互物品的相似度,对局部特征X与全局特征Y进行加权求和得到特征表示zl,并以此为依据进行序列中的下一物品的推荐。本发明引入更多的经过设计的时间嵌入向量,提高时间信息利用的有效程度,进而提高序列推荐的正确性。

Description

基于时序物品相似度的序列推荐方法
技术领域
本发明属于序列推荐技术领域,具体涉及一种基于时序物品相似度的序列推荐方法。
背景技术
推荐系统是一种解决信息过载问题的强大工具,它能够让用户根据自己的喜好轻松过滤掉海量的物品,为用户推荐喜欢的物品。推荐系统可以分为传统的推荐系统和基于序列的推荐系统。像基于物品的推荐系统和协同过滤推荐系统等,它们属于传统的推荐系统。它们更倾向于将用户的历史行为看作是静止的,这些行为之间是没有相互的关联的,都是同等重要的。序列推荐系统旨在从用户的历史交互行为中捕获用户的动态偏好。因此,序列推荐是更符合真实世界的情况,并且能够考虑到更多的信息,得到更加准确的推荐结果。因此,它也更加流行。
随着时代的进步,序列推荐算法的实现形式也随之进步。传统的序列推荐方法主要运用的是机器学习方法(例如k-means,马尔科夫链和矩阵分解)来捕获各种各样的序列数据。矩阵分解能够利用各种各样的序列,从而捕获用户的长期偏好。在目前的基于深度学习的序列推荐方法中,通过利用卷积神经网络(CNN),循环神经网络(RNN)等等,能够挖掘更多的特征信息,从而让推荐的效果得到大幅度的提升。这主要是因为基于深度学习的模型能够利用了更长的序列,这更有利于从整个序列中学习语义信息。除此之外,基于深度学习的模型在稀疏的数据上也取得了更好的效果,对于不同长度的输入数据的处理也是更加灵活。
尽管通过使用深度学习方法,序列推荐的推荐效果取得了较大的进步,但是仍然有一些问题待解决,其中之一是用户的意图容易被候选物品所干扰,另一个是忽视了时间戳的重要性,通过利用各种各样的时间戳,不同的模式和信息能够被提取出来。尽管最近J.Li,Y.Wang,和J.McAuley,在"Time Interval Aware Self-Attention for SequentialRecommendation,"中提出了TiSASRec模型,成功整合了时间信息,但是单独的时间嵌入向量限制了时间信息的有效利用。
发明内容
本发明意在提供一种基于时序物品相似度的序列推荐方法,引入更多的经过设计的时间嵌入向量,提高时间信息利用的有效程度,进而提高序列推荐的正确性。
本发明中的方法包括:
步骤一、根据以下描述建立神经网络模型:
1.1)以长度为L的用户历史序列中,用户点击各物品的时间信息ti组成的时间序列T={t1;t2;…;tL}作为输入,构建基于时间信息的嵌入向量;
1.2)包含与绝对时间相关的嵌入向量EDay和EPos中的至少一个,如果仅仅构建一个嵌入向量,则以该向量作为绝对嵌入向量EAbs;如果构建两个嵌入向量,则以EDay和EPos结合生成绝对嵌入向量EAbs
所述嵌入向量EDay,通过以下方式获得:
1.2.1)定义可以学习的嵌入向量MD∈R|D|×d,其中|D|是以天作为测量单元的时间间隔,其值为用户序列中最早点击的物品的点击时间到最晚点击的物品的点击时间之间的时间间隔加上一天,有:
MD={day0,day1,…,dayi,…,day|D|-2,day|D|-1},
其中,dayi表示距离最早点击物品的点击时间为i天的天数时间嵌入向量,维度为d;
1.2.2)从时间序列
Figure GDA00040284319100000210
中提取以天作为测量单元的时间信息映射到MD∈R|D|×d中,到
Figure GDA0004028431910000021
所述EPos∈R|L|×d,为基于历史序列中每个物品的索引信息的嵌入向量;
1.3)包含与相对时间相关的嵌入向量EExp、ELog、ESin中的至少一个,如果仅仅构建一个嵌入向量,则以该向量作为相对嵌入向量ERel,;如果构建两个嵌入向量,则以该两个嵌入向量结合生成相对嵌入向量ERel;如果构建三个嵌入向量,则先以任意两个嵌入向量进行结合,得到的结果再与第三个嵌入向量结合,得到最后的相对嵌入向量ERel
所述嵌入向量EExp、Elog及ESin的构建方式如下:
1.3.1)定义时间差矩阵
Figure GDA0004028431910000022
其中的每个元素被定义为
Figure GDA0004028431910000023
其中τ是一个可供调节的时间差;
1.3.2)在嵌入向量ESin中,时间差dab被转化为向量
Figure GDA0004028431910000024
转换的方法如下:
Figure GDA0004028431910000025
Figure GDA0004028431910000026
其中
Figure GDA0004028431910000027
是向量
Figure GDA0004028431910000028
的第c个值,d表示嵌入向量的维度,freq是一个设置的超参数;
1.3.3)在嵌入向量EExp中,dab被转化为
Figure GDA0004028431910000029
转换的方法如下:
Figure GDA0004028431910000031
其中
Figure GDA0004028431910000032
是向量
Figure GDA0004028431910000033
的第c个值,d表示嵌入向量的维度,freq是一个设置的超参数;
1.3.4)在嵌入向量ELog中,dab被转化为
Figure GDA0004028431910000034
转换的方法如下:
Figure GDA0004028431910000035
其中
Figure GDA0004028431910000036
是向量
Figure GDA0004028431910000037
的第c个值,d表示嵌入向量的维度,freq是一个设置的超参数;
1.4)以用户历史序列中的物品生成物品嵌入向量
Figure GDA0004028431910000038
将E与EAbs相加得到的结果X(0)输入自注意力机制学习模块,结合相对嵌入向量ERel获得当前历史序列的局部特征X;
1.5)以各用户历史序列共同输入全局偏好学习模块,获得所有历史序列的全局特征Y;
1.6)依据当前候选物品和最近交互物品的相似度计算结果,对局部特征X与全局特征Y进行加权求和,得到用于预测的特征表示zl,并以此为依据进行序列中的下一物品的推荐;
步骤二、对建立的神经网络模型实施训练;
步骤三、利用训练好的神经网络模型进行物品序列推荐。
进一步的,以嵌入向量EDay和EPos结合生成绝对嵌入向量
Figure GDA0004028431910000039
的方式如下:
α=σ([EDay,EPOS]Wday_pos+bbay_pos),
Figure GDA00040284319100000310
其中,[.,.]表示外部的连接操作,Wday_pos为可学习的权重向量,bday_pos为该部分的偏置,为sigmoid激活函数σ(z)=1/(1+e-z),
Figure GDA00040284319100000311
表示元素积,αs为向量α中的元素,
Figure GDA00040284319100000312
为嵌入向量EAbs中的元素,
Figure GDA00040284319100000313
为嵌入向量EDay中的元素,
Figure GDA00040284319100000314
为嵌入向量EPos中的元素。
进一步的,结合嵌入向量EExp、ELog、ESin得到相对嵌入向量ERel的过程如下:
首先按照以下方式将嵌入向量EExp和嵌入向量ELog结合为嵌入向量EExp_Log
β=σ([EExp,ELog]Wexp_log+bexp_log),
Figure GDA00040284319100000315
其中
Figure GDA00040284319100000316
为该部分的可学习的权重向量,
Figure GDA00040284319100000317
为该部分的偏置,
Figure GDA00040284319100000318
Figure GDA00040284319100000319
表示元素积,βs为向量β中的元素,
Figure GDA00040284319100000320
为嵌入向量EExp_Log中的元素,
Figure GDA00040284319100000321
为嵌入向量EExp中的元素,
Figure GDA00040284319100000322
为嵌入向量ELog中的元素;
再将嵌入向量EExp_Log与ESin按照以下方式结合为嵌入向量ERel
γ=σ([EExp_Log,ESin]Wsin_log_exp+bsin_log_exp
Figure GDA0004028431910000041
其中,
Figure GDA0004028431910000042
为该部分的可学习的权重向量,
Figure GDA0004028431910000043
为该部分的偏置,
Figure GDA0004028431910000044
表示元素积,γs为向量γ中的元素,
Figure GDA0004028431910000045
为相对嵌入向量ERel中的元素,
Figure GDA0004028431910000046
为嵌入向量ESin中的元素,
Figure GDA0004028431910000047
为嵌入向量EExp_Log中的元素。
进一步的,所述自注意力机制学习模块包括依次连接的多个自注意力块SAB,第b个自注意力块的输出如下:
X(b)=SAB(b)(X(b-1)),b∈{1,2,…,B}
SAB(X)=FFL(SAL(X))
FFL(X')=ReLU(X'W1+1Tb1)W2+1Tb2
Figure GDA0004028431910000048
Figure GDA0004028431910000049
其中,每个自注意力块SAB皆对应一自注意力层SAL,Q=XWQ,K=XWK,V=XWV
Figure GDA00040284319100000410
Figure GDA00040284319100000411
Figure GDA00040284319100000412
为不同的可学习的权重矩阵,
Figure GDA00040284319100000413
为前馈神经网络层FFL中的两个卷积层的可学习的权重矩阵,
Figure GDA00040284319100000414
则是这两个卷积层的偏置,
Figure GDA00040284319100000415
表示单位向量,
Figure GDA00040284319100000416
为一个被用作掩码的低维度矩阵;
以最后一个自注意力块SAB(B)的输出向量X(B)作为局部特征X。
进一步的,在自注意力机制学习模块加入标准化层对输入数据进行标准化,以及使用Dropout机制和残差连接;
所述标准化层、Dropout机制和残差连接的用法表达如下:
g(x)=x+Dropout(g(LayerNorm(x))),
其中,LayerNorm(x)表示归一化层,g(x)表示自注意力层SAL或者前馈网络层FFL。
进一步的,全局偏好学习模块中利用注意力层LBA(·)计算全局特征Y,过程如下:
y=LBA(E)=softmax(qS(EW'K)T)EW'V,
其中,
Figure GDA00040284319100000417
是输入的物品嵌入向量,
Figure GDA00040284319100000418
为可学习的权重矩阵,
Figure GDA00040284319100000419
为可学习的询问向量,
Figure GDA00040284319100000420
为表示全局的偏好全局特征向量;
全局特征Y由全局特征向量y堆叠而成的,即矩阵Y的每一行都相同。
进一步的,在全局偏好学习模块引入Dropout机制如下:
yl=Dropout(y),l∈{1,2,…,L}。
进一步的,所述局部特征X与全局特征Y按照以下方式加权求和得到用于预测的特征表示zl
Figure GDA0004028431910000051
θ=σ([msl,y,mi]WG+bG),
其中,xl为局部特征X中的元素,
Figure GDA0004028431910000052
是最近交互的物品嵌入向量,
Figure GDA0004028431910000053
是候选物品嵌入向量,msl,mi都为物品嵌入向量E中的元素,
Figure GDA0004028431910000054
Figure GDA0004028431910000055
分别表示此处的可学习的权重矩阵和偏置。
进一步的,计算物品i成为序列中的第(l+1)个物品的可能性计算值rl+1,i如下:
rl+1,i=zl(mi)T
取rl+1,i最大的物品i作为推荐结果。
进一步,使用Adam优化器进行训练,其损失函数L表示如下:
Figure GDA0004028431910000056
其中,
Figure GDA0004028431910000057
是负样本成为序列中(l+1)th个物品的可能性,对于并且
Figure GDA0004028431910000058
有:
如果
Figure GDA0004028431910000059
是填充物品,则
Figure GDA00040284319100000510
是0,否则是1。
相较于现有技术,本发明提出的模型中设计了多元时间嵌入向量,对序列中的用户-物品交互位置进行编码,得到交互位置的绝对时间戳和相对时间戳,同时这个多元核能够充分利用相对时间戳和绝对时间戳来建立一个独一无二的嵌入矩阵,提高时间信息利用的有效程度,提高了预测结果准确性。
本发明提出的模型中提出了全局特征学习子模块,其目的就是为了有效地捕获用户的全局偏好,考虑到用户的群体性因素,为预测过程增加了一个宏观的维度,进一步的提高预测结果的准确性。
在本发明的一些实施例中,还通过计算候选物品和最近交互物品的相似度来考虑候选物品对最终结果的影响。
本发明在五个公开数据集上进行实验,并与现有的先进模型进行对比。大量的实验结果证明,提出的模型比大多数序列推荐模型更加高效,这证明了本发明提出的预测方法的有效性和可行性。
附图说明
图1为本发明实施例中的TisseRec神经网络模型的逻辑框图。
图2a为本发明实施例中的绝对嵌入向量的计算过程示意图。
图2b为本发明实施例中的相对嵌入向量的计算过程示意图。
图3为本发明实施例模拟的SASRec模型与TisseRec模型在五个不同数据集上关于HR@10性能的对比图。
图4为本发明实施例模拟的SASRec模型和TisseRec模型在五个不同数据集上关于NDCG@10性能的对比图。
图5为本发明实施例模拟的TisseRec模型在五个不同数据集下关于HR@10和NDCG@10性能的柱状对比示意图。
图6为本发明实施例模拟的TisseRec模型消融对比实验在五个不同数据集下关于NDCG@10性能的曲线对比图。
图7为本发明实施例模拟的TisseRec模型消融对比实验在五个不同数据集下关于HR@10性能的曲线对比图。
具体实施方式
下面将结合本发明实施例的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本实施例中,首先构建了如图1所示的TisseRec神经网络模型框架,简称TisseRec模型。
从图1可以看出,TisseRec模型主要包含多时间戳嵌入向量学习模块(Multil-temporal Embeddings learning)、局部特征学习模块(Local RepresentationLearning)、全局特征学习模块(Global Representation Learning)和表示模块(Gating),各模块的构架及相互作用具体如下:
多时间戳嵌入向量学习模块
为了更加充分利用时间信息,本实施例的多时间戳嵌入向量学习模块依照如下方法运行:
首先,构建基于时间信息的嵌入向量:EExp、ELog、ESin、EDay和EPos
在用户的历史序列中,每一个物品都是用户在特定时间点击的,于是输入的一个长度为L的历史序列,对应有一个长度同样为L的,由用户点击各物品的时间信息ti组成的时间序列T={t1;t2;…;tL}。
本实施例一方面将时间序列
Figure GDA0004028431910000061
转化为嵌入向量
Figure GDA0004028431910000062
Figure GDA0004028431910000063
其中d表示嵌入向量的维度,EPos包含了历史序列中每个物品的索引信息,即每个物品在序列中的绝对位置信息,EDay则包含了历史序列中每个物品的以一天作为时间间隔的时间信息,即精确到日的绝对时间信息。通过将一天作为时间间隔,EDay能够节省更多的存储空间,同时EDay还是能够充分利用用户历史序列中的时间信息,所以,相较于以真实点击时间点为时间信息的嵌入向量ETimestamp,EDay更加合理;此外,本实施例保持了一个可以学习的嵌入向量MD∈R|D|×d,其中|D|是以天作为测量单元的时间间隔,|D|的值为用户序列中最早点击的物品的点击时间到最晚点击的物品的点击时间之间的时间间隔加上一天;MD={day0,day1,…,dayi,…,day|D|-2,day|D|-1},dayi表示距离最早点击物品的点击时间为i天的天数时间嵌入向量,维度为d,如果用户最早点击物品的时间为te,那么时间序列T与时间te的差为
Figure GDA0004028431910000071
可以将时间差的单位用天数来表示,那么就可以在MD∈R|D|×d中找到对应天数的时间嵌入向量,而具体值通过神经网络训练得来。
另一方面,还将时间序列
Figure GDA0004028431910000072
转化为嵌入向量
Figure GDA0004028431910000073
Figure GDA0004028431910000074
这三种嵌入方式提供了不同类型时间数据的表达,例如,Sin函数方便捕捉周期性的数据,对于时间间隔比较大的数据序列,可以利用Exp函数将其迅速衰减为零,或者利用Log函数将时间间隔逐步缩小。
本实施例使用这些嵌入向量来较大程度地利用不同的时间信息。具体的,本实施例定义了一个时间差矩阵
Figure GDA0004028431910000075
其中的每个元素被定义为
Figure GDA0004028431910000076
其中τ是一个可供调节的时间差。在嵌入向量ESin中,时间差dab被转化为向量
Figure GDA0004028431910000077
转换的方法如等式(1):
Figure GDA0004028431910000078
Figure GDA0004028431910000079
其中
Figure GDA00040284319100000710
是向量
Figure GDA00040284319100000711
的第c个值。在上述的等式中,d表示嵌入向量的维度,freq是一个可以自己设置的超参数,在本实施例中取5,主要是对时间差dab做线性变换。类似的,在嵌入向量EExp和ELog中,dab被转化为
Figure GDA00040284319100000712
Figure GDA00040284319100000713
转换的方法等式(2):
Figure GDA00040284319100000714
Figure GDA00040284319100000715
其次,通过结合EDay和EPos来构建绝对嵌入向量。
绝对嵌入向量和相对嵌入向量的计算过程基本如图2a所示:
这里,本实施例不是简单地将EDay和EPos进行相加得到绝对嵌入向量。而是通过计算嵌入向量EDay和嵌入向量EPos的权重,然后将它们按照权重进行相加,图2a中权重α在物品形似度门控ISG(Item Similarity Gating)模块中计算,具体的计算过程被如下:
α=σ([EDay,EPos]Wday_pos+bday_pos), (3)
此处及后续部分中,[.,.]表示外部的连接操作,
Figure GDA0004028431910000081
为该部分的可学习的权重向量,
Figure GDA0004028431910000082
为该部分的偏置。为了将在α的每一个元素限制在0到1之间,本实施例中利用了sigmoid激活函数σ(z)=1/(1+e-z)。然后将加权后的嵌入向量EDay和嵌入向量EPos相加,得到了嵌入向量EAbs,计算的过程可以用等式(4)描述:
Figure GDA0004028431910000083
其中,
Figure GDA0004028431910000084
表示绝对嵌入向量,
Figure GDA0004028431910000085
表示序列中位置为
Figure GDA00040284319100000823
的位置嵌入向量,
Figure GDA0004028431910000086
表示序列中位置为
Figure GDA0004028431910000087
的时间嵌入向量。
Figure GDA0004028431910000088
表示元素积。
Figure GDA0004028431910000089
是绝对嵌入向量EAbs中的一个元素,
Figure GDA00040284319100000810
是嵌入向量EPos中的一个元素,
Figure GDA00040284319100000811
是嵌入向量EDay中的一个元素。
于是可以得到绝对嵌入向量
Figure GDA00040284319100000812
同时,通过结合EExp,Elog和ESin来构建相对嵌入向量。
相对嵌入向量的计算过程基本如图2b所示:
同样的,通过引入权重β来平衡嵌入向量EExp和嵌入向量ELog,β的计算的过程可以用等式(5)来描述:
β=σ({EExp,Elog]Wexp_log+bexp_log), (5)
其中
Figure GDA00040284319100000813
为该部分的可学习的权重向量,
Figure GDA00040284319100000814
为该部分的偏置。
而后,本发明将嵌入向量ELog和嵌入向量EExp按照权重β加权相加,得到了相对嵌入向量EExp_Log,计算公式如下:
Figure GDA00040284319100000815
其中,
Figure GDA00040284319100000816
表示元素积,
Figure GDA00040284319100000817
是嵌入向量EExp _Log中的一个元素,
Figure GDA00040284319100000818
是嵌入向量EExp中的一个元素,
Figure GDA00040284319100000819
是嵌入向量ELog中的一个元素,其在序列中的位置都为
Figure GDA00040284319100000820
然后再一次的,引入权重γ来平衡相对嵌入向量EExp_Log和嵌入向量ESin,权重γ的计算如下:
γ=σ([EExp_Log,ESin]Wsin_log_exp+bsin_log_exp), (7)
其中
Figure GDA00040284319100000821
为该部分的可学习的权重向量,
Figure GDA00040284319100000822
为该部分的偏置。
最终,本发明将嵌入向量ESin_kig和嵌入向量EExp按照权重γ加权相加得到相对嵌入向量
Figure GDA0004028431910000091
Figure GDA0004028431910000092
Figure GDA0004028431910000093
其中,
Figure GDA0004028431910000094
表示元素积,
Figure GDA0004028431910000095
是相对嵌入向量ERel中的一个元素,
Figure GDA0004028431910000096
是相对时间嵌入向量ESin中的一个元素,
Figure GDA0004028431910000097
是相对时间嵌入向量EExp_Log中的一个元素,在序列中的位置为
Figure GDA0004028431910000098
局部特征学习模块
在局部特征学习模块中,本实施例使用与文献“W.-C.Kang and J.McAuley,"Self-Attentive Sequential Recommendation,"presented at the 2018 IEEEInternational Conference on Data Mining(ICDM),2018.”中的SASRec模型相同的方法,即自注意力块最后一个SAB(b)的输出向量X(b),被作为用户在一个序列中的动态偏好,即用户的局部特征。由于序列中用户物品交互的绝对位置的重要性,本发明将绝对嵌入向量EAbs和物品嵌入向量
Figure GDA0004028431910000099
相加,能够得到输入向量
Figure GDA00040284319100000910
具体的过程能够用如下的等式表示:
Figure GDA00040284319100000911
其中,
Figure GDA00040284319100000912
表示物品嵌入向量
Figure GDA00040284319100000913
中的元素,
Figure GDA00040284319100000914
表示绝对位置嵌入向量EAbs中的元素,
Figure GDA00040284319100000915
表示其在序列中的位置。
然后,本发明将输入矩阵X(0)输入次序连接的多个自注意力块SAB中,第b个自注意力块的输出如等式(10)所示:
X(b)=SAB(b)(X(b-1))b∈{1,2,…,B}, (10)
其中每一个自注意力块SAB(·)能够被视作先将输入向量X送入自注意力层SAL(·),然后将得到的结果被送入前馈神经网络层FFL(·),具体的计算过程如等式(11-14):
SAB(X)=FFL(SAL(X)) (11)
Figure GDA00040284319100000916
FFL(X')=ReLU(X'W1+1Tb1)W2+1Tb2 (13)
Figure GDA00040284319100000917
其中,X为包含绝对位置信息的输入矩阵,包含了其在序列中的位置信息和序列中的绝对时间戳信息(来自绝对嵌入向量),Q=XWQ,K=XWK,V=XWV,其中WQ,WK和WV代表了不同的可学习的权重矩阵。为了考虑序列中的每对交互的影响,此处使用了相对嵌入向量ERel;此外还引入权重
Figure GDA0004028431910000101
来平衡绝对嵌入向量和相对嵌入向量对结果的影响。在等式(14)中,
Figure GDA0004028431910000102
为该部分的可学习的权重矩阵,
Figure GDA0004028431910000103
为该部分的偏置。通过使用这一方法,相对嵌入向量对结果的影响能够得到控制。
为了提高模型的灵活性和准确性,
Figure GDA0004028431910000104
是前馈神经网络层中两个卷积层的可学习的权重矩阵,
Figure GDA0004028431910000105
则是这两个卷积层的偏置。在上述式子中,
Figure GDA0004028431910000106
表示单位向量,并且
Figure GDA0004028431910000107
是一个被用作掩码的低维度矩阵,目的是为了只保存上一步的转变。同时,此处引入了标准化层来对输入数据进行标准化,将输入数据调节到一个正常的范围,具有提高模型的稳定性加快模型收敛速度的效果,还使用了Dropout机制来避免过拟合,同时使用了残差连接解决梯度消失问题以及保留底层学习到的优良的特征。其中标准化层、随即丢弃机制(Dropout)和残差连接的用法与SASRec模型中的相同,用法如下:
g(x)=x+Dropout(g(LayerNorm(x))), (15)
其中,LayerNorm(x)表示归一化层,g(x)表示自注意力层或者前馈网络层,在自注意力块的每一层都对输入使用了归一化层,然后将其送入神经网络,并将输入和输出相加一起作为下一层的输入,这就是残差连接,这种方法避免了梯度消失问题,有效地保存了之前学习到的优良特征。Dropout机制是训练网络的过程中,让一些神经元不训练,这有效的避免了过拟合。
全局偏好学习模块;
本实施例的该模块中,引入了基于位置的注意力层LBA(·),该注意力层在文献“X.He et al.,"Nais:Neural attentive item similarity model forrecommendation,"vol.30,no.12,pp.2354-2366,2018”有着详细的描述;利用该注意力层,并以各用户的物品嵌入矩阵
Figure GDA00040284319100001011
为输入,可以学习得到所有用户的全局学习偏好。值得注意的是,用户u对于交互物品s的偏好可以看作是由(l+1)步的其它交互物品特征的归一化累加而成的,所以预测的评分能够被考虑作为用户u的历史物品和候选物品s之间的相似度,计算的过程如等式(16):
Figure GDA0004028431910000108
其中,Su表示物品集,
Figure GDA0004028431910000109
表示候选物品集,mi'表示物品的嵌入向量。
此处,为了计算序列中所有物品的最具有代表性的特征,引入了一个可学习向量
Figure GDA00040284319100001010
作为询问向量,进而计算所有用户的全局偏好,序列中的全局偏好用等式(17)来计算:
y=LBA(E)=softmax(qS(EW'K)T)EW'V, (17)
其中
Figure GDA0004028431910000111
是最初的输入矩阵,
Figure GDA0004028431910000112
是可学习的权重矩阵,类似于等式(14)中的WQ,WK,WV。最终得到的
Figure GDA0004028431910000113
表示全局的偏好。
在训练的过程中,Dropout机制能够避免过拟合,同时能够综合所有训练过程中得到的全局特征,最终可以得到所有用户的全局偏好矩阵
Figure GDA0004028431910000114
计算过程如等式(18):
yl=Dropout(y),l∈{1,2,…,L}。 (18)
其中yl,l∈{1,2,…,L}都是相等的,矩阵Y是全局特征向量y堆叠而成的,即矩阵Y的每一行都相同。引入Y是为了便于矩阵的整体计算。
物品相似度门控模块
设计物品相似度门控模块有两个主要的原因,首先,虽然全局特征和局部特征对于最终的推荐都是重要的,但有必要辨别全局特征学习和局部特征学习哪一个更加重要;其次,在用户看到候选物品集时,用户意图被候选物品集干扰的现象普遍存在。
本实施例中,设计了一个新的相似度门控模块,这对于判定特定用户的局部偏好和所有用户的全局偏好两者的重要性是至关重要的,同时,这个模块通过计算候选物品和最近交互物品的相似度来考虑候选物品对最终结果的影响,相似度计算值θ的计算等式如下:
θ=σ([msl,y,mi]WG+bG), (19)
其中
Figure GDA0004028431910000115
表示全局特征向量,
Figure GDA0004028431910000116
是最近交互的物品嵌入向量,
Figure GDA0004028431910000117
是候选物品嵌入向量,msl,mi都为物品嵌入向量E中的元素。
Figure GDA0004028431910000118
Figure GDA0004028431910000119
分别表示此处的可学习的权重矩阵和偏置,同样的,此处使用了sigmoid函数作为激活函数,最终计算得到向量
Figure GDA00040284319100001110
在序列中的前l个物品中,最终学习到的特征表示向量
Figure GDA00040284319100001111
相关的局部学习特征向量
Figure GDA00040284319100001112
Figure GDA00040284319100001113
为自注意力块最后一层的输出向量X(B)中的一个元素和全局学习特征向量
Figure GDA00040284319100001114
的权重和,如等式(19)所示:
Figure GDA00040284319100001115
其中
Figure GDA00040284319100001116
是tensorflow中的广播操作,物品i成为序列中的第(l+1)个物品的可能性计算值r1+1,i可以用下面的等式展示:
rl+1,i=zi(mi)T。 (21)
本实施例中,使用Adam优化器进行训练,其损失函数L如等式(21):
Figure GDA0004028431910000121
其中
Figure GDA0004028431910000122
是负样本成为序列中(l+1)th个物品的可能性,并且
Figure GDA0004028431910000123
被用作消除填充物品的影响,如果
Figure GDA0004028431910000124
是填充物品,
Figure GDA0004028431910000125
是0,否则是1。
实验例1
本实验在操作系统为Windows10,处理器为Intel-CPU i7-10700,其主频为2.9GHz,内存为32GiB的电脑上完成。本实验的Python的配置环境为:python3.7+tensorflow1.14,并利用PyCharm集成开发环境运行代码,构建本实验例中的各神经网络模型以完成实验。数据集按照8:2的比例拆分成训练集和测试集,并通过训练集训练模型,测试集来测试各模型。在用户的历史序列中,用户历史序列中的最后一个物品被用于测试,其它物品被用于训练。在训练的过程中,通过使用两个常见的评估方法来评估模型。本实验例在五个真实的数据集上进行实验,包括:
Beauty(Amazonreviewdata(ucsd.edu)),
Games(https://cseweb.ucsd.edu/~jmcauley/datasets.html#steam_data),
Steam(https://cseweb.ucsd.edu/~jmcauley/datasets.html#steam_data),
Foursquare(UMN/SarwatFoursquareDataset:FreeDownload,Borrow, andStreaming:InternetArchive),
Tmall(https://tianchi.aliyun.com/dataset/),
数据集的具体的统计信息如下表所示:
表1:处理过的数据集的统计信息
数据集 用户数量 物品数量 交互次数 平均序列长度 密度
Games 29341 23464 280945 9.58 0.04%
Beauty 40226 54542 353962 8.8 0.02%
Foursquare 22748 11146 145106 6.38 0.06%
Tmall 201139 97636 1936790 9.63 0.01%
Steam 281428 13044 3488899 12.4 0.10%
本实验例使用点击率来评估推荐物品是用户交互物品的百分比。其计算的方法如等式(23):
Figure GDA0004028431910000126
其中,
Figure GDA0004028431910000127
表示推荐给用户的物品,Tu表示用户交互的物品。
上述等式中,当
Figure GDA0004028431910000128
时,δ(·)为1。
本实验例中还利用了归一化折损累积增益(NDCG@10)来进行评估,因为它考虑到了正确推荐物品在推荐列表中的位置,它用等式(24)来计算:
Figure GDA0004028431910000131
其中,
Figure GDA0004028431910000132
代表了推荐给用户u的第k个物品,k表示物品在推荐列表中的位置。Z是归一化常数,它是NDCG@10的最大值。
通过大量的实验,九个参数的理想值被展示到表格2中:
表2:参数的表述和理想值
参数名称 描述 理想值
num_epochs 迭代次数 450
batch_size 每次训练的批数 128
Lr 学习率 0.001
L 用户序列的长度 50
d 嵌入向量的维度 50
B 注意力的块的数量 2
num_heads 注意力的头部数量超参数 1
dropout_rate Dropout机制下的未训练神经元占比 0.5
l2_reg 损失函数的惩罚系数 0
下面的模型被用于与本实施例中构建的TisseRec模型进行比较。
BPRMF模型出自文献“S.Rendle,C.Freudenthaler,Z.Gantner,andL.J.a.p.a.Schmidt-Thieme,"BPR:Bayesian personalizedrankingfromimplicitfeedback,"2012.”.基于MF设计的一种推荐模型,利用了成对损失作为损失函数。
FISM模型出自文献“S.Kabbur,X.Ning,and G.Karypis,"Fism:factoreditemsimilaritymodels fortop-nrecommendersystems,"inProceedings ofthe19thACMSIGKDD internationalconference onKnowledgediscoveryand datamining,2013,pp.659-667.”.通过学习物品之间的相似度矩阵用来进行推荐,这让它成为一种流行的模型。
GRU4Rec模型出自文献“B.Hidasi,A.Karatzoglou,L.Baltrunas,andD.J.a.p.a.Tikk,"Session-based recommendationswithrecurrentneuralnetworks,"2015.”.是最早基于深度学习改进的模型之一,使用了额外的采样策略和列表损失函数进行序列推荐。
前述的SASRec模型,因其使用了自注意力网络,成为了一个比较流行的推荐模型。
表3:不同模型的HR@10和NDCG@10的比较
数据集 Metric BPRMF FISM GRU4Rec SASRec TisseRec TisseRecvs.SASRec
Tmall HR@10 0.1744 0.2149 0.3526 0.3844 0.4382 14.00%
NDCG@10 0.0825 0.1043 0.2072 0.2123 0.2462 15.97%
Steam HR@10 0.1023 0.3183 0.3177 0.3424 0.4489 31.10%
NDCG@10 0.0468 0.1703 0.1707 0.1789 0.255 42.54%
Games HR@10 0.3454 0.4791 0.4825 0.5769 0.6662 15.49%
NDCG@10 0.1981 0.2631 0.2906 0.3507 0.4134 17.88%
Beauty HR@10 0.2498 0.3533 0.2729 0.3433 0.4311 25.58%
NDCG@10 0.1148 0.1942 0.1683 0.2119 0.2658 25.41%
Foursquare HR@10 0.2659 0.3977 0.4324 0.4767 0.5095 6.88%
NDCG@10 0.1287 0.2025 0.2375 0.2611 0.2818 7.93%
从表格3可以看出,本是实施例中的TisseRec模型在HR@10和NDCG@10与基准模型相比都达到了较好的结果。TisseRec模型和SASRec模型实验比较结果被展示在图3和图4中。
从图3和图4可以看出,TisseRec在五个数据集上的表现比SAS更好。在Foursquare数据集上,之后SAS的表现比TisseRec的表现更好,这可能是因为随着训练时间变长TisseRec过拟合造成的。
实验例2
为了更好了验证本发明中使用不同的嵌入向量所带来的性能,本实验例还包括了消融对比实验。
正如表格4展示的那样,Model-1是本发明提出的模型,其它的模型相对与TisseRec模型有着不同的设置,包括用于产生绝对嵌入向量的嵌入向量(AbsoluteEmbeddings),产生绝对嵌入向量的嵌入向量(Relative Embeddings)和以及产生绝对/相对嵌入向量的计算方法(Calculating approaches)。模型的不同的设置被展示如下:
表4:TisseRec模型的不同设置
Model ID 绝对嵌入向量 相对嵌入向量 计算方法
Model-1 EDay,EPos ELog,ESin,EExp 乘积,加权相加
Model-2 EPos EExp 乘积
Model-3 EPos ESin 乘积
Model-4 EPos EExp,ELog 乘积,前向神经网络
在Model-2中,直接定义EPos作为绝对嵌入向量,EExp作为相对嵌入向量。因为Model-2中绝对/相对嵌入向量的产生均只涉及一个嵌入向量,所以有EAbs等于EPos,并且ERel等于EExp。换一句话说,这绝对嵌入向量计算模块和这相对嵌入向量计算模块是没有用的。因此,等式(12)可以被下面的等式替换:
Figure GDA0004028431910000151
相比于等式(12),这里没有参数
Figure GDA0004028431910000152
这就意味着Model-2没有考虑相对嵌入向量的负影响。Model-3类似于Model-2,与Model-2的唯一不同就是EExp被ESin替换。
在Model-4中,本发明使用EPos作为绝对时间信息,使用EExp和ELog作为相对时间信息,其中EAbs等同于EPos。相对嵌入向量的计算则不同于本实施例先前提出的模型,首先,需要将ESin和ELog拼接到一起得到ERel。然后本发明将ERel放入前馈神经网络得到最终的ERel。Model-4同样没有考虑相对嵌入向量的负影响,计算的过程如等式(25):
ERel=FFL([ESin,ELog])。 (26)
模型的不同的设置的表现结果可以在表5展示:
表5:不同模型设置的表现结果
Figure GDA0004028431910000161
为了更加突出表现结果的对比,本实施例将结果用柱状图图5画出,图中,同一簇柱形中各柱形从左至右依次对应,Model-1、Model-2、Model-3和Model-4;
从比较中可以看,到在训练的过程中,Model-1的表现比Model-2和Model-3在大多数的数据集的表现要好。原因是Model-1仅仅使用EExp作为相对嵌入向量并且Model-2仅仅使用Elog作为相对嵌入向量,但是提出的模型使用EExp,ELog和ESin作为相对嵌入向量。所以这提出的模型使用了更多的信息相对于Model-2和Model-3。
在不同的数据集中,Model-2和Model-3的表现是不同的,主要是因为EExp和ESin捕获了不同的时间信息。如果本发明使用EExp作为相对嵌入向量,教大的时间差能够快速的缩小到零。但是如果本发明使用ESin作为相对时间戳,这个相对时间戳仅仅捕获了时间周期性对结果的影响。在不同的数据集中时间信息是不同的,因此模型在不同数据集中的表现也是不同的。
相比于Model-2和Model-3,Model-4的表现比Model-2和Model-3更差。尽管Model-4比Model-2和Model-3使用了更多的信息,但是通过前馈神经网络结合EExp和ELog造成了过拟合。
从表格5中可以看出Model-2,Model-3和Model-4在Foursquare数据集上的表现都比Model-1差,在这些模型中,没有考虑相对嵌入向量的负影响。
另外可以看出,尽管不如Model-1,但Model-2和Model-3,Model-4的表现在除了Foursquare数据集以外的数据集上皆好于SASRec模型,特别是Model-3和Model-4,仅仅是在Foursquare数据集上的NDCG@10表现方面落后于SASRec模型,而HR@10方面的表现仍旧优于SASRec模型。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

Claims (8)

1.基于时序物品相似度的序列推荐方法,其特征在于,包括以下步骤:
步骤一、根据以下描述建立神经网络模型:
1.1)以长度为L的用户历史序列中,用户点击各物品的时间信息ti组成的时间序列T={t1;t2;...;tL}作为输入,构建基于时间信息的嵌入向量;
1.2)包含与绝对时间相关的嵌入向量EDay和EPos中的至少一个,如果仅仅构建一个嵌入向量,则以该向量作为绝对嵌入向量EAbs;如果构建两个嵌入向量,则以EDay和EPos结合生成绝对嵌入向量EAbs
所述嵌入向量EDay,通过以下方式获得:
1.2.1)定义可以学习的嵌入向量MD∈R|D|×d,其中|D|是以天作为测量单元的时间间隔,其值为用户序列中最早点击的物品的点击时间到最晚点击的物品的点击时间之间的时间间隔加上一天,有:
MD={day0,dat1,...,dayi,...,day|D|-2,day|D|-1},
其中,dayi表示距离最早点击物品的点击时间为i天的天数时间嵌入向量,维度为d;
1.2.2)从时间序列
Figure FDA0004028431900000011
中提取以天作为测量单元的时间信息映射到MD∈R|D|×d中,得到
Figure FDA0004028431900000012
所述嵌入向量EPos∈R|L|×d,为基于历史序列中每个物品的索引信息的嵌入向量;
1.3)包含与相对时间相关的嵌入向量EExp、ELog、ESin中的至少一个,如果仅仅构建一个嵌入向量,则以该向量作为相对嵌入向量ERel;如果构建两个嵌入向量,则以该两个嵌入向量结合生成相对嵌入向量ERel;如果构建三个嵌入向量,则先以任意两个嵌入向量进行结合,得到的结果再与第三个嵌入向量结合,得到最后的相对嵌入向量ERel
所述嵌入向量EExp、ELog及ESin的构建方式如下:
1.3.1)定义时间差矩阵
Figure FDA0004028431900000013
其中的每个元素被定义为
Figure FDA0004028431900000014
其中τ是一个可供调节的时间差;
1.3.2)在嵌入向量ESin中,时间差dab被转化为向量
Figure FDA0004028431900000015
转换的方法如下:
Figure FDA0004028431900000016
Figure FDA0004028431900000017
其中
Figure FDA0004028431900000018
是向量
Figure FDA0004028431900000019
的第c个值,d表示嵌入向量的维度,freq是一个设置的超参数;
1.3.3)在嵌入向量EExp中,时间差dab被转化为
Figure FDA0004028431900000021
转换的方法如下:
Figure FDA0004028431900000022
其中
Figure FDA0004028431900000023
是向量
Figure FDA0004028431900000024
的第c个值,d表示嵌入向量的维度,freq是一个设置的超参数;
1.3.4)在嵌入向量ELog中,时间差dab被转化为
Figure FDA0004028431900000025
转换的方法如下:
Figure FDA0004028431900000026
其中
Figure FDA0004028431900000027
是向量
Figure FDA0004028431900000028
的第c个值,d表示嵌入向量的维度,freq是一个设置的超参数;
1.4)以用户历史序列中的物品生成物品嵌入向量
Figure FDA0004028431900000029
将E与EAbs相加得到的结果X(0)输入自注意力机制学习模块,结合相对嵌入向量ERel获得当前历史序列的局部特征X;
1.5)以各用户历史序列共同输入全局偏好学习模块,获得所有历史序列的全局特征Y;
1.6)依据当前候选物品和最近交互物品的相似度计算结果,对局部特征X与全局特征Y进行加权求和,得到用于预测的特征表示zl,并以此为依据进行序列中的下一物品的推荐;
步骤二、对建立的神经网络模型实施训练;
步骤三、利用训练好的神经网络模型进行物品序列推荐。
2.根据权利要求1所述的方法,其特征在于,以嵌入向量EDay和EPos结合生成绝对嵌入向量
Figure FDA00040284319000000210
Figure FDA00040284319000000211
的方式如下:
α=σ([EDay,EPos]Wday_pos+bday_pos),
Figure FDA00040284319000000212
其中,[.,.]表示外部的连接操作,Wday_pos为可学习的权重向量,bday_pos为该部分的偏置,为sigmoid激活函数σ(z)=1/(1+e-z),
Figure FDA00040284319000000213
表示元素积,αs为向量α中的元素,asl为嵌入向量EAbs中的元素,psl为嵌入向量EDay中的元素,dsl为嵌入向量EPos中的元素。
3.根据权利要求1所述的方法,其特征在于,结合嵌入向量EExp、ELog、ESin得到相对嵌入向量ERel的过程如下:
首先按照以下方式将嵌入向量EExp和嵌入向量ELog结合为嵌入向量EExp_Log
β=σ([EExp,ELog]Wexp_log+bexp_log),
Figure FDA00040284319000000214
其中
Figure FDA0004028431900000031
为该部分的可学习的权重向量,
Figure FDA0004028431900000032
为该部分的偏置,
Figure FDA0004028431900000033
Figure FDA0004028431900000034
Figure FDA0004028431900000035
表示元素积,βs为向量β中的元素,e_lsl为嵌入向量EExp_Log中的元素,esl为嵌入向量EExp中的元素,lsl为嵌入向量ELog中的元素;
再将嵌入向量EExp_Log与ESin按照以下方式结合为嵌入向量ERel
γ=σ([EExp_Log,ESin]Wsin_log_exp+bsin_log_exp)
Figure FDA0004028431900000036
其中,
Figure FDA0004028431900000037
为该部分可学习的权重向量,
Figure FDA0004028431900000038
为该部分的偏置,
Figure FDA0004028431900000039
Figure FDA00040284319000000310
表示元素积,γs为向量γ中的元素,rsl为相对嵌入向量ERel中的元素,ssl为嵌入向量ESin中的元素,e_lsl为嵌入向量EExp_Log中的元素。
4.根据权利要求1所述的方法,其特征在于,所述自注意力机制学习模块包括依次连接的多个自注意力块SAB,第b个自注意力块的输出如下:
X(b)=SAB(b)(X(b-1),b∈{1,2,...,B}
SAB(X)=FFL(SAL(X))
FFL(X′)=ReL U(X′W1+1Tb1)W2+1Tb2
Figure FDA00040284319000000311
Figure FDA00040284319000000312
其中,每个自注意力块SAB皆对应一自注意力层SAL,Q=XWQ,K=XWK,V=XWV
Figure FDA00040284319000000313
Figure FDA00040284319000000314
Figure FDA00040284319000000315
为不同的可学习的权重矩阵,
Figure FDA00040284319000000316
为前馈神经网络层FFL中的两个卷积层的可学习的权重矩阵,
Figure FDA00040284319000000317
则是这两个卷积层的偏置,
Figure FDA00040284319000000318
表示单位向量,
Figure FDA00040284319000000319
为一个被用作掩码的低维度矩阵;
以最后一个自注意力块SAB(B)的输出向量X(B)作为局部特征X。
5.根据权利要求4所述的方法,其特征在于,在自注意力机制学习模块加入标准化层对输入数据进行标准化,以及使用Dropout机制和残差连接;
所述标准化层、Dropout机制和残差连接的用法表达如下:
g(x)=x+Dropout(g(LayerNorm(x))),
其中,LayerNorm(x)表示归一化层,g(x)表示自注意力层SAL或者前馈网络层FFL。
6.根据权利要求1所述的方法,其特征在于,全局偏好学习模块中利用注意力层LBA(·)计算全局特征Y,过程如下:
y=LBA(E)=softmax(qS(EW′K)T)EW′V
其中,
Figure FDA0004028431900000041
是输入的物品嵌入向量,
Figure FDA0004028431900000042
为可学习的权重矩阵,
Figure FDA0004028431900000043
为可学习的询问向量,
Figure FDA0004028431900000044
为表示全局的偏好全局特征向量;
全局特征
Figure FDA0004028431900000045
由全局特征向量y堆叠而成的,即矩阵Y的每一行都相同。
7.根据权利要求1所述的方法,其特征在于,所述局部特征X与全局特征Y按照以下方式加权求和得到用于预测的特征表示zl
Figure FDA0004028431900000046
θ=σ([msl,y,mi]WG+bG),
其中,xl为局部特征X中的元素,
Figure FDA0004028431900000047
是最近交互的物品嵌入向量,
Figure FDA0004028431900000048
是候选物品嵌入向量,msl,mi都为物品嵌入向量E中的元素,
Figure FDA0004028431900000049
Figure FDA00040284319000000410
分别表示此处的可学习的权重矩阵和偏置。
8.根据权利要求1所述的方法,其特征在于,计算物品i成为序列中的第(l+1)个物品的可能性计算值r1+1,i如下:
rl+1,i=zl(mi)T
取r1+1,i最大的物品i作为推荐结果。
CN202210384315.5A 2022-04-13 2022-04-13 基于时序物品相似度的序列推荐方法 Active CN114791983B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210384315.5A CN114791983B (zh) 2022-04-13 2022-04-13 基于时序物品相似度的序列推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210384315.5A CN114791983B (zh) 2022-04-13 2022-04-13 基于时序物品相似度的序列推荐方法

Publications (2)

Publication Number Publication Date
CN114791983A CN114791983A (zh) 2022-07-26
CN114791983B true CN114791983B (zh) 2023-04-07

Family

ID=82461102

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210384315.5A Active CN114791983B (zh) 2022-04-13 2022-04-13 基于时序物品相似度的序列推荐方法

Country Status (1)

Country Link
CN (1) CN114791983B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111127165A (zh) * 2019-12-26 2020-05-08 纪信智达(广州)信息技术有限公司 基于自注意力自编码器的序列推荐方法
CN111127142A (zh) * 2019-12-16 2020-05-08 东北大学秦皇岛分校 一种基于广义神经注意力的物品推荐方法
CN112258262A (zh) * 2020-09-15 2021-01-22 浙江大学 一种基于卷积自注意力网络的会话推荐方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11488270B2 (en) * 2016-12-07 2022-11-01 Tata Consultancy Services Limited System and method for context and sequence aware recommendation
US10891545B2 (en) * 2017-03-10 2021-01-12 International Business Machines Corporation Multi-dimensional time series event prediction via convolutional neural network(s)
US11403555B2 (en) * 2019-03-08 2022-08-02 Accenture Global Solutions Limited Sequence, frequency, and time interval based journey recommendation
CN110807156A (zh) * 2019-10-23 2020-02-18 山东师范大学 一种基于用户序列点击行为的兴趣推荐方法及系统
CN112148980B (zh) * 2020-09-28 2023-11-03 京东科技控股股份有限公司 基于用户点击的物品推荐方法、装置、设备和存储介质
CN114168845B (zh) * 2021-11-24 2023-08-15 电子科技大学 一种基于多任务学习的序列化推荐方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111127142A (zh) * 2019-12-16 2020-05-08 东北大学秦皇岛分校 一种基于广义神经注意力的物品推荐方法
CN111127165A (zh) * 2019-12-26 2020-05-08 纪信智达(广州)信息技术有限公司 基于自注意力自编码器的序列推荐方法
CN112258262A (zh) * 2020-09-15 2021-01-22 浙江大学 一种基于卷积自注意力网络的会话推荐方法

Also Published As

Publication number Publication date
CN114791983A (zh) 2022-07-26

Similar Documents

Publication Publication Date Title
Jia et al. Label distribution learning with label correlations on local samples
Liu et al. Joint binary classifier learning for ECOC-based multi-class classification
CN112232925A (zh) 一种融合知识图谱对商品进行个性化推荐的方法
Zhao et al. Variational self-attention network for sequential recommendation
Rahangdale et al. Deep neural network regularization for feature selection in learning-to-rank
CN111259243B (zh) 基于会话的并行推荐方法及系统
Fu et al. Deep reinforcement learning framework for category-based item recommendation
CN114519145A (zh) 一种基于图神经网络挖掘用户长短期兴趣的序列推荐方法
Yakhchi et al. Towards a deep attention-based sequential recommender system
CN110727855A (zh) 一种基于改进因子分解机的个性化推荐方法
Bongini et al. Recursive neural networks for density estimation over generalized random graphs
CN115470406A (zh) 一种基于双通道信息融合的图神经网络会话推荐方法
CN113821724B (zh) 一种基于时间间隔增强的图神经网络推荐方法
Chen et al. Understanding and accelerating neural architecture search with training-free and theory-grounded metrics
Akhtar et al. Zeroth and first order stochastic Frank-Wolfe algorithms for constrained optimization
Chhabra et al. Missing value imputation using hybrid k-means and association rules
CN114791983B (zh) 基于时序物品相似度的序列推荐方法
Zhou et al. Online recommendation based on incremental-input self-organizing map
Zhang et al. KGAT-SR: Knowledge-enhanced graph attention network for session-based recommendation
Wen et al. Extended factorization machines for sequential recommendation
Zhang et al. A Graph Convolutional Network for Session Recommendation Model Based on Improved Transformer
Xiao et al. Mrhn: Hypergraph convolutional network for web api recommendation
Lou et al. MIFI: Combining Multi-Interest Activation and Implicit Feature Interaction for CTR Predictions
CN114004330B (zh) 一种基于特征值补全的推荐系统及方法
Li et al. Multi-hypergraph Neural Network with Fusion of Location Information for Session-based Recommendation.

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant