CN113222700B - 基于会话的推荐方法及装置 - Google Patents
基于会话的推荐方法及装置 Download PDFInfo
- Publication number
- CN113222700B CN113222700B CN202110533473.8A CN202110533473A CN113222700B CN 113222700 B CN113222700 B CN 113222700B CN 202110533473 A CN202110533473 A CN 202110533473A CN 113222700 B CN113222700 B CN 113222700B
- Authority
- CN
- China
- Prior art keywords
- session
- item
- preference
- neighbor
- loss function
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 239000013598 vector Substances 0.000 claims abstract description 115
- 230000007774 longterm Effects 0.000 claims abstract description 57
- 238000013528 artificial neural network Methods 0.000 claims abstract description 20
- 238000009826 distribution Methods 0.000 claims description 31
- 230000007246 mechanism Effects 0.000 claims description 9
- 238000012549 training Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000005457 optimization Methods 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 55
- 238000004891 communication Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000002829 reductive effect Effects 0.000 description 9
- 239000011159 matrix material Substances 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 238000009499 grossing Methods 0.000 description 7
- 230000003993 interaction Effects 0.000 description 7
- 238000003860 storage Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000012546 transfer Methods 0.000 description 4
- 238000002679 ablation Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 241000499489 Castor canadensis Species 0.000 description 1
- 235000011779 Menyanthes trifoliata Nutrition 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
- G06Q30/0202—Market predictions or forecasting for commercial activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/0895—Weakly supervised learning, e.g. semi-supervised or self-supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Development Economics (AREA)
- Data Mining & Analysis (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Entrepreneurship & Innovation (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Game Theory and Decision Science (AREA)
- Probability & Statistics with Applications (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书一个或多个实施例提供一种基于会话的推荐方法及装置,利用预先训练的推荐模型进行物品推荐,方法包括:根据待预测的会话,构造有向会话图;将所述有向会话图输入门控图神经网络,由所述门控图神经网络输出物品嵌入向量;根据用户的当前偏好和第一长期偏好,确定用户的动态偏好;其中,所述当前偏好为所述会话中的最后一个物品的物品嵌入向量,所述第一长期偏好根据所述物品嵌入向量和物品的重要性分数确定;根据所述动态偏好和所述物品嵌入向量,确定各物品的预测分数;根据各物品的预测分数,输出推荐物品。本实施例能够提高物品推荐的精准度。
Description
技术领域
本说明书一个或多个实施例涉及人工智能技术领域,尤其涉及一种基于会话的推荐方法及装置。
背景技术
目前,线上平台一般都设计了推荐系统,在用户与系统的交互过程中分析用户偏好,根据用户偏好从海量物品中筛选出用户可能感兴趣的物品,推荐给用户,从而促成交易。现有的推荐系统,物品一般采用独热编码表示,容易导致模型过拟合,降低推荐精准度。
发明内容
有鉴于此,本说明书一个或多个实施例的目的在于提出一种基于会话的推荐方法及装置,能够提高物品推荐的精准度。
基于上述目的,本说明书一个或多个实施例提供了基于会话的推荐方法,利用预先训练的推荐模型进行物品推荐,方法包括:
根据待预测的会话,构造有向会话图;其中,所述会话包括用户与系统交互的至少一个物品;
将所述有向会话图输入门控图神经网络,由所述门控图神经网络输出物品嵌入向量;
根据用户的当前偏好和第一长期偏好,确定用户的动态偏好;其中,所述当前偏好为所述会话中的最后一个物品的物品嵌入向量,所述第一长期偏好根据所述物品嵌入向量和物品的重要性分数确定;
根据所述动态偏好和所述物品嵌入向量,确定各物品的预测分数;
根据各物品的预测分数,输出推荐物品。
可选的,确定各物品的预测分数之后,还包括:
计算物品的标签分布;
根据所述预测分数和所述标签分布,确定第一损失函数;
根据所述第一损失函数,优化所述推荐模型。
可选的,所述计算物品的标签分布,包括:
计算目标物品与物品集合中所有物品的相似度,得到由目标物品与所有物品的相似度构成的软标签向量;
对所有物品进行独热编码,得到独热编码表示的所有物品的硬标签向量;
根据所述软标签向量和硬标签向量,确定所述标签分布。
可选的,所述方法还包括:
计算所述会话与其他会话的相似度;
确定相似度最大的前M个邻居会话及剩余的非邻居会话;
根据所述会话、邻居会话、非邻居会话,分别计算各自的第二长期偏好;
根据所述会话、邻居会话非邻居会话的第二长期偏好,确定第二损失函数;
根据所述第一损失函数和所述第二损失函数,优化所述推荐模型。
可选的,所述第一长期偏好由动态读出函数确定,所述第二长期偏好由长期读出函数确定。
可选的,所述第一损失函数为KL散度函数,所述第二损失函数为JS散度函数。
可选的,所述物品的重要性分数由注意力机制产生。
本说明书实施例还提供一种基于会话的推荐装置,利用预先训练的推荐模型进行物品推荐,包括:
构造模块,用于根据待预测的会话,构造有向会话图;其中,所述会话包括用户与系统交互的至少一个物品;
物品表示模块,用于将所述有向会话图输入门控图神经网络,由所述门控图神经网络输出物品嵌入向量;
偏好确定模块,用于根据用户的当前偏好和第一长期偏好,确定用户的动态偏好;其中,所述当前偏好为所述会话中的最后一个物品的物品嵌入向量,所述第一长期偏好根据所述物品嵌入向量和物品的重要性分数确定;
预测模块,用于根据所述动态偏好和所述物品嵌入向量,确定各物品的预测分数;
推荐模块,用于根据各物品的预测分数,输出推荐物品。
可选的,所述装置还包括:
第一计算模块,用于计算物品的标签分布;
优化模块,用于根据所述预测分数和所述标签分布,确定第一损失函数;以及根据所述第一损失函数,优化所述推荐模型。
可选的,所述装置还包括:
第二计算模块,用于计算所述会话与其他会话的相似度;
邻居确定模块,用于确定相似度最大的前M个邻居会话及剩余的非邻居会话;
第二偏好确定模块,用于根据所述会话、邻居会话、非邻居会话,分别计算各自的第二长期偏好;
联合优化模块,用于根据所述会话、邻居会话非邻居会话的第二长期偏好,确定第二损失函数;以及根据所述第一损失函数和所述第二损失函数,优化所述推荐模型。
从上面所述可以看出,本说明书一个或多个实施例提供的基于会话的推荐方法及装置,利用预先训练的推荐模型进行物品推荐,通过根据待预测的会话,构造有向会话图,将有向会话图输入门控图神经网络,由门控图神经网络输出物品嵌入向量,根据用户的当前偏好和第一长期偏好,确定用户的动态偏好,根据动态偏好和物品嵌入向量,确定各物品的预测分数,根据各物品的预测分数,输出推荐物品。本实施例能够提高物品推荐的精准度。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例的方法流程示意图;
图2为本说明书一个或多个实施例的推荐模型的框图;
图3为本说明书一个或多个实施例的算法流程示意图;
图4A、4B、4C、4D分别为在两种数据集上,不同的标签权衡参数对应的模型性能示意图;
图5A、5B、5C、5D分别为在两种数据集上,不同的损失权衡参数对应的模型性能示意图;
图6A、6B、6C、6D分别为在两种数据集上,不同会话长度对应的模型性能示意图;
图7为本说明书一个或多个实施例的装置结构示意图;
图8为本说明书一个或多个实施例的电子设备结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
以下,通过具体的实施例进一步详细说明本公开的技术方案。
如图1、2所示,本说明书一个或多个实施例提供一种基于会话的推荐方法,利用预先训练的推荐模型进行物品推荐,推荐方法包括:
S101:根据待预测的会话,构造有向会话图;其中,会话包括用户与系统交互的至少一个物品;
本实施例中,会话包括用户与系统交互过程中,按顺序点击的至少一个物品。利用本实施例的推荐方法,将待预测的会话输入推荐模型,能够输出预测的用户可能感兴趣的推荐物品。
一些方式中,设物品集合V={v1,v2,...,v|V|}表示所有物品,|V|是物品集合V中物品的数量。设会话集合U={S1,S2,...,Sτ,...,S|U|},|U|是会话集合U中会话的数量,Sτ={v1,v2,...,vt,...,vn}表示第τ个会话,会话Sτ中包含n个物品,vt表示在会话Sτ中的第t个时刻交互的物品。利用本实施例的推荐方法,将会话Sτ输入推荐模型,由推荐模型输出物品集合V中每个物品被推荐给用户的概率,即p(vn+1|v1:n),在此基础上,可将概率最高的N个物品组成推荐列表,推荐给用户。
S102:将有向会话图输入门控图神经网络,由门控图神经网络输出物品嵌入向量;
本实施例中,基于图学习方法生成准确的物品嵌入向量,图学习方法包括两个步骤,首先根据会话构造有向会话图,之后,根据有向会话图和在有向会话图上进行信息传播来学习会话中用于表示各物品的物品嵌入向量,表示为:
Gl=Seq2Graph(Sτ)
X=GNN(Gl) (1)
其中,Gl是根据会话Sτ构造的有向会话图,X是基于有向会话图Gl学习到的会话Sτ中的物品嵌入向量,Seq2Graph表示图构造,GNN表示信息传播操作。
S103:根据用户的当前偏好和第一长期偏好,确定用户的动态偏好;其中,当前偏好为会话中的最后一个物品的物品嵌入向量,第一长期偏好根据物品嵌入向量和物品的重要性分数确定;
其中,Re a doutd为动态读出函数,[;]为连接运算,d是物品嵌入向量的维度,是Rea doutd过程中用于控制权重的可训练的参数。读出函数readout是图神经网络中用于聚合节点特征以获取整个图的表征向量的函数。
S104:根据动态偏好和物品嵌入向量,确定各物品的预测分数;
S105:根据各物品的预测分数,输出推荐物品。
本实施例中,确定每个物品的预测分数之后,可按照预测分数从高到低的顺序对各物品进行排序,将排在前面的预定数量的物品作为推荐物品构成推荐列表,输出推荐列表,便于用户根据推荐列表进一步选择目标物品。
本实施例提供的基于会话的推荐方法,利用推荐模型进行物品推荐,推荐方法包括:根据待预测的会话,构造有向会话图,将有向会话图输入门控图神经网络,由门控图神经网络输出物品嵌入向量,根据用户的当前偏好和第一长期偏好,确定用户的动态偏好,根据动态偏好和物品嵌入向量,确定各物品的预测分数,根据各物品的预测分数,输出推荐物品。本实施例通过准确的物品嵌入向量结合用户的动态偏好,能够提高物品推荐的准确性。
一些实施例中,确定各物品的预测分数之后,还包括:
计算物品的标签分布;
根据物品的预测分数和标签分布,确定第一损失函数;
根据第一损失函数,优化推荐模型。
本实施例中,根据物品的标签分布和预测分数,确定第一损失函数,利用第一损失函数对推荐模型进行优化,使得推荐模型的推荐更为精准。
结合图2所示,一些实施例中,采用基于目标的标签混淆方法,计算物品的标签分布,方法是:
计算目标物品与物品集合中所有物品的相似度,得到由目标物品与所有物品的相似度构成的软标签向量;
对所有物品进行独热编码,得到独热编码表示的所有物品的硬标签向量;
根据软标签向量和硬标签向量,确定标签分布。
本实施例中,假设与目标物品vtar相似的物品接近于用户偏好,目标物品与物品集合V中每个物品vi的相似度为:
目标物品与物品集合中所有物品的相似度构成软标签向量ysoft, 对所有物品进行独热编码,得到所有物品的独热编码向量,由所有物品的独热编码向量构成硬标签向量yhard,是独热编码向量, 是硬标签向量中一个物品vi对应的值,在对应于目标物品的位置否则之后,根据软标签向量和硬标签向量,得到所有物品的标签分布yc,表示为:
yc=Softmax(ysoft+αyhard) (6)
一些方式中,根据物品的预测分数和标签分布,采用KL散度为第一损失函数对推荐模型进行优化,第一损失函数表示为:
本实施例中,考虑到目前的推荐系统一般采用交叉熵损失函数对比预测分数分布和用户偏好分布(即标签分布),从而优化模型参数。由于用户不可能与所有物品产生交互,用户的真实偏好通常是未知的,简单地将目标物品的独热编码看作是用户偏好的真实分布,提高目标物品的预测分数,同时也会降低其它物品的预测分数;而且,采用独热编码进行物品嵌入向量,由于负样本物品与非目标物品的编码结果相同,导致无法区分负样本物品。本实施例采用基于目标的标签混淆方法,将目标物品与其他物品的相似度作为软标签向量,将其他物品的独热编码向量作为硬标签向量,将软标签向量与硬标签向量的混合作为最终标签分布,能够有效区分负样本物品,同时以KL散度为第一损失函数进行优化,能够有效防止过拟合问题。
结合图2所示,在推荐模型的主体监督学习部分,将待预测的会话S1输入推荐模型,利用动态偏好生成器D-UPG根据会话S1基于图学习方法生成会话中的物品的物品嵌入向量,根据物品嵌入向量确定用户的动态偏好,根据动态偏好和物品嵌入向量,确定各物品的预测分数;采用基于目标的标签混淆方法,生成物品的标签分布,之后,根据动物品的预测分数和标签分布,计算第一损失函数Lmain,利用第一损失函数优化推荐模型,使得推荐模型输出准确的物品推荐。
一些实施例中,推荐方法还包括:
计算待预测的会话与其他会话的相似度;
根据会话与其他会话的相似度,确定相似度最大的前M个邻居会话及剩余的非邻居会话;
根据会话、邻居会话、非邻居会话,分别计算各自的第二长期偏好;
根据会话、邻居会话非邻居会话的第二长期偏好,确定第二损失函数;
根据第一损失函数和第二损失函数,优化推荐模型。
本实施例中,为提高预测精准度,综合考虑不同会话之间的关系。具体的,根据会话集合U中的所有会话构建包括以各会话为会话节点的全局图Gg={Vg,εg},其中,Vg表示全局图中的会话节点集合,εg为全局图中的边的集合。计算会话Sτ与会话集合U中其他会话的相似度,根据计算得到的会话Sτ与其他会话之间的相似度,进行最大采样(max sampling,取相似度最大的前M个会话),得到与会话Sτ最相似的M个会话;之后,将最相似的M个会话作为会话Sτ的邻居会话,利用边eij连接会话节点Si与其邻居会话节点Sj,eij∈εg,会话节点Si与邻居会话节点Sj整体上相似。
对于会话Sτ及其他会话,根据已确定出的物品嵌入向量,利用长期读出函数确定用户的第二长期偏好zl,表示为:
本实施例中,对于用户的第一长期偏好和第二长期偏好zl,采用相同的物品嵌入向量以及相同的用以学习物品嵌入向量的参数,采用不同的读出函数(公式(2)所示动态读出函数Rea doutd同时结合了用户的当前偏好和长期偏好,公式(8)所示长期读出函数得到用户的长期偏好),通过对动态偏好和第二长期偏好进行协同学习,能够得到更为精准的物品推荐。
基于构造的全局图,会话集合U中包括与会话Sτ连接的邻居会话Si组成的邻居会话集合和与会话Sτ未连接的非邻居会话组成的非邻居会话集合,即,(“\”表示集合减法操作)。会话Sτ与邻居会话Si的相似度,大于会话Sτ与非邻居会话的相似度。
其中,对于两个会话Sq和Sq,函数f(·,·)被定义为:
根据第一损失函数和第二损失函数,得到用于联合训练推荐模型的损失函数L,表示为:
L=Lmain+λLssl (11)
其中,λ是损失权衡参数。一些方式中,采用反向传播算法更新损失函数L,对推荐模型进行训练,使得推荐模型输出更为精准的物品推荐。
本实施例中,考虑到目前的推荐模型,一般是根据会话的时序行为,通过建模前t个交互的物品来预测第t+1个物品,忽略了不同会话之间的关系;通过引入邻居会话可以丰富当前会话的信息从而进行推荐,但是引入邻居会话的同时也引入的偏差,影响推荐精准度。采用本实施例的方法,通过构造全局图建立不同会话之间的联系,能够通过对比每个会话中的长期偏好和全局图上的邻居会话来加强物品嵌入向量表示,提高物品推荐的精准度。
结合图2、3所示,推荐模型包括主体监督学习部分和自监督学习部分。对于自监督学习部分,根据所有会话构建全局图,通过计算会话与其他会话的相似度,确定会话的邻居会话及非邻居会话,根据已经确定出的物品嵌入向量,利用长期偏好生成器L-UPG分别计算会话的第二长期偏好、邻居会话的第二长期偏好以及非邻居会话的第二长期偏好,之后,根据会话的第二长期偏好与邻居会话的第二长期偏好,会话的第二长期偏好与非邻居会话的第二长期偏好,计算第二损失函数Lssl,最后,根据第一损失函数Lmain和第二损失函数Lssl对推荐模型进行联合训练,得到优化的推荐模型,利用优化的推荐模型输出精准的物品推荐结果。
一些实施方式中,在步骤S101中,根据会话构造有向会话图来表示其包含的物品之间的基于对的传递关系,表示为Gl={Vl,εl},其中,Vl为有向会话图的节点,Vl={x1,x2,...,xm}包含会话Sτ中所有的独一无二的物品(即,会话Sτ中的n个物品经过去重后得到Vl,m≤n),εl表示有向会话图中的边集合,每个边eij∈εl表示用户在点击物品xi之后点击了物品xj。
定义入度矩阵Ain和出度矩阵Aout,用以表示有向会话图中物品间的传递关系,入度矩阵与出度矩阵中的元素表示在信息传播过程中不同邻居节点的权重。入度矩阵与出度矩阵的具体形式不做具体说明。
构造出有向会话图之后,基于有向会话图进行信息传播来学习准确的物品嵌入向量表示。一些方式中,构造出有向会话图之后,将有向会话图中的物品输入GGNN门控神经网络模型,GGNN模型的嵌入层将输入的物品初始化为物品的嵌入向量,得到初始化后的物品嵌入向量,表示为 其中,是物品xi的物品嵌入向量,d是物品嵌入向量的维度。
在GGNN模型的第k层,获得节点vi(GGNN模型中的节点vi即物品vi)的邻居节点的信息,表示为:
其中,表示物品vi在第k-1层的物品嵌入向量,和分别是入度矩阵Ain和出度矩阵Aout的第i行,即控制多少信息来自于节点vi的邻居节点用以更新节点vi的物品嵌入向量。WI,bI,是GGNN模型中可以学习的参数,其中,WI,Wo分别是入度边和出度边的可学习的权重,bI,bO是偏置向量。
之后,利用门控循环单元GRU将物品vi在GGNN模型的第k-1层的物品嵌入向量和在第k层传递的邻居节点的信息相结合,得到物品vi在GGNN模型的第k层的物品嵌入向量,表示为:
一些方式中,通过具有多层结构的GGNN模型结合不同层上的节点信息,综合考虑会话中的物品之间的联系,经过k层叠加之后,得到会话中各物品的物品嵌入向量Xk,简化表示为X,X=[x1,x2,...,Xm],从而得到能够体现物品及物品之间关系的物品嵌入向量。之后,根据有向会话图以及得到的会话中各物品的物品嵌入向量,得到由物品嵌入向量表示的物品序列[v1,v2,...,vn]。
以下结合实验数据说明依照本实施例的推荐方法可达到的推荐效果。
一些实施方式中,使用两个公开的数据集Retailrocket和Gowalla,验证本说明书提供的推荐方法。其中,Retailrocket为电子商务公司的点击数据集,用户在24小时内的点击被定义为一个会话,Gowalla为签到数据集,用户在24小时内的签到被定义为一个会话。
分别对两个数据集上得到的会话集进行预处理,预处理的方法是:将出现次数少于3次的物品过滤掉,将交互次数少于2次的会话过滤掉,得到预处理后的会话集。对于预处理后的会话集,按照会话的时间顺序,将会话集划分为训练集、验证集和测试集,其中,训练集的比例为70%,验证集的比例为10%,测试集的比例为20%,两个数据集的统计数据如表1所示。
表1两个数据集的统计数据
一些方式中,将本实施例的推荐方法(称为CGL)与现有的推荐方法进行对比分析。现有的方法包括:将当前会话中出现最频繁的物品推荐给用户(S-POP),将与当前会话相似的物品推荐给用户,相似度通过余弦相似度衡量(Item-KNN),利用马尔科夫链进行时序信号建模(FPMC),使用GRU在基于会话的推荐中进行时序行为建模(GRU4REC),在GRU4REC基础上使用注意力机制强调用户的主要意图(NARM),使用注意力机制实现动态的用户偏好建模(STAMP),使用GGNN建模会话并基于注意力机制聚合生成会话表示(SR-GNN),使用GAT来建模当前会话,并且使用在全局图上的全局级别的物品表示来进行增强(GCE-GNN),使用星图神经网络来探索信息传播中的长距离信息,且使用高速网络来防止过拟合问题(SGNN-HN)。
对于实验结果,采用的评价指标为Recall@N和MRR@N,其中,Recall@N为衡量目标物品是否在包括N个物品的推荐列表中,MRR@N为归一化的命中,考虑了目标物品在推荐列表里的位置,如果目标物品在推荐列表的前K个之外,它将被设为0,否则就要结合在推荐列表里的位置进行计算。
实验参数设置为:将一次训练的样本数目,即batchsize设置为100,物品嵌入向量的维度为100,模型优化器选用Adam优化器,初始学习率为0.001,每经过三次循环学习率衰减为当前学习率的0.1。GGNN模型的层数为1,其他超参数在验证集上进行调整;标签权衡参数α选用{8,10,12,14,16}中的值,损失权衡参数λ选用{0.01,0.05,0.1,0.2,0.5}中的值。全局图中邻居节点数目的最大值M设置为16,所有参数ψ(模型中涉及到的所有参数,即前文提到过的所有参数)使用高斯分布进行初始化,平均值为0,标准差为0.1。
表2不同推荐模型的性能指标
如表2所示,分析现有的几种推荐方法,基于GNN模型的方法普遍效果优于基于RNN和注意力机制的模型,说明了GNN模型在建模会话中物品间复杂传递关系的有效性。对比基于GNN模型的方法,尽管GCE-GNN探索了物品间的全局信息,但未能强调用户的近期兴趣,导致结果不令人满意,尤其在Retailrocket数据集上。通过在GNN模型中传播长距离信息以及缓解过拟合问题,SGNN-HN实现了较好的效果。
相对比的,本实施例的推荐方法CGL,在两个数据集上的两项指标均优于现有的推荐方法。在Retailrocket数据集上,对于Recall@20指标,CGL较SGNN-HN提高6.21%((47.86-45.06)/45.06=6.21%),对于MRR@20指标,CGL较SGNN-HN提高1.31%;在Gowalla数据集上,对于Recall@20指标,CGL较SGNN-HN提高24.64%,对于MRR@20指标,CGL较SGNN-HN提高27.95%。
由此可见,本实施例的推荐方法取得了更优的推荐效果,一方面,综合考虑会话间的关系以获得监督信号从而增强物品嵌入向量的学习,能够提高推荐的准确性;另一方面,采用基于目标的标签混淆方法,能够有效解决过拟合问题。另外,在Gowalla数据集上比在Retailrocket数据集上的推荐效果更为明显,表明通过解决缺乏监督信号和过拟合的问题,本实施例的方法在大规模数据集上的效果更加明显。
表3消融实验对比结果
为了验证自监督学习部分和标签混淆方法的有效性,进行消融实验。其中,CGLw/o[SSL]为没有自监督学习部分的方法变体,CGLw/o[LC]为没有标签混淆的方法变体,CGLLS为将CGL中的标签混淆替换为标签平滑的方法变体。如表3所示,与CGLw/o[SSL]和CGLw/o[LC]相比,CGL的性能最优,表明自监督学习部分和标签混淆方法能够提高推荐的精准度。通过消融实验,移除标签混淆相较于移除自监督学习部分在两个数据集上都将降低推荐模型的性能,表明过拟合是在不同情境下都常见并且严重的问题,限制了推荐的准确性。
对比CGL和CGLw/o[SSL],移除自监督学习部分后,在Retailrocket数据集上,Recall@20和MRR@20指标上的表现分别下降了6.48%和1.63%;在Gowalla数据集上,两项指标分别下降了9.56%和9.02%,较Retailrocket数据集下降的要多,可能是由于Gowalla数据集与Retailrocket数据集相比,每个物品的交互数变少,结合表1所示,相较于Retailrocket数据集,Gowalla数据集中的自监督信号更少。因而,利用自监督学习部分的自监督信号能够得到准确地物品嵌入向量,获得精确的推荐。
不使用标签混淆方法时,与Retailrocket数据集相比,Gowalla数据集上两项指标的下降幅度较大。可能是因为两个数据集中候选物品的数目不同。如表1中所示,Gowalla数据集中的物品数量比Retailrocket数据集中的物品数量多,更容易导致过拟合,因为交叉熵中的独热编码分布容易引起过度自信,因此过拟合问题在Gowalla数据集中也相应地比Retailrocket数据集中更严重。本实施例的推荐方法,通过使用标签混淆方法来解决过拟合问题,相较于Retailrocket数据集,Gowalla数据集上的性能提高更为明显。
对比CGLLS和CGLw/o[LC],标签平滑也能够帮助提高推荐模型的性能,因为标签平滑和标签混淆方法均可以一定程度的解决严重的过拟合问题。而且,本实施例所采用的标签混淆方法比标签平滑更加有效,这是因为CGL能够根据其他物品与目标物品的相似度来产生软标签向量,而标签平滑未区分出软标签向量,因而,标签混淆方法比标签平滑更加有效,使得CGL明显地优于CGLLS。
结合图4A、4B、4C、4D所示,对于取值不同(取自集合{8,10,12,14,16})的标签权衡参数α,大多数情况下,CGL在两个数据集上的性能均超过CGLw/oSSL,表明自监督学习部分对解决不同程度的过拟合问题的有效性。
在Retialrocket数据集上,随着标签权衡参数α的增大,CGL与CGLw/oSSL的性能均先增加,当α等于10时,性能达到峰值,随后呈现出持续下降的趋势。这可能是因为标签权衡参数α较小时,标签分布较少地依赖于独热编码的硬标签向量,可能因引入误差导致性能下降。当标签权衡参数α增加时,性能过度地依赖于硬标签向量,可能会导致过拟合问题。事实上,当标签权衡参数α足够大时,标签混淆方法就会变成硬标签向量。在Gowalla数据集上有同样的问题,不同的是,对于CGLw/o[SSL],当标签权衡参数α变化时,Recall@20性能较为稳定,可能是由于所引入的自监督信号可能会加剧过拟合问题,因此,标签混淆方法对于在推荐列表中命中目标物品上对CGL较CGLw/o[SSL]影响更大。
结合图5A、5B、5C、5D所示,对于取值不同(取自集合{0.01,0.05,0.1,0.2,0.5})的损失权衡参数λ,CGL在两个数据集上的性能均超过CGLw/o[LC],表明标签混淆方法能够在引入不同量级的自监督信号的情况下提高推荐模型的性能。
在Retailrocket数据集上,随着损失权衡参数λ的增大,CGL在Recall@20和MRR@20上的性能均先增加然后呈现出降低趋势。这是由于当损失权衡参数λ较小时,引入的自监督信号不足以增强物品嵌入向量表示,当损失权衡参数λ较大时,引入过多的自监督信号可能会导致过拟合从而降低性能。因此,当损失权衡参数λ取适度的值0.1时,推荐模型达到最佳效果。
对于CGLw/o[LC],随着损失权衡参数λ的增加,Recall@20和MRR@20上的性能均首先波动,然后持续增加。CGL和CGLw/o[LC]上表现出的不同趋势可能是因为通过采用标签混淆方法,CGL中的主体监督学习部分已经能够学习到准确地物品嵌入向量,不需要过多地从自监督学习部分中引入额外的自监督信号,因此,较小的损失权衡参数λ既适合于协同学习。在Gowalla数据集上,实验结果相同,当损失权衡参数λ取值为0.5时,CGL的Recall@20和MRR@20性能达到最优。
为验证GGNN模型在本实施例的方法中的有效性,将CGL中的GGNN替换为RNN,用CRNNL表示,将CGL中的GGNN替换为自注意力机制,用CSATL表示,进行对比验证本实施例的物品嵌入向量的有效性。将CGL中的动态读出函数替换为长期读出函数,用CGLw/o[d]表示,进行对比验证主体监督学习部分与自监督学习部分采用不同的聚合方法的必要性。
表4不同用户偏好的模型性能
如表4所示,相较于CRNNL、CSATL,CGL在两个数据集上的Recall@20和MRR@20指标上的效果最好,表明GGNN模型能够准确建模会话中不同物品之间的传递关系,从而生成准确的物品嵌入向量。CSTAL中的自注意力机制可以被看作是全连接的GNN,其中的每个物品从会话中所有的物品上传播信息,这样可能引起过拟合和过渡平滑的问题,降低CSTAL的性能。对比CRNNL和CSATL,在大多数情况下,CRNNL的性能低于CSATL,可能是由于会话中用户的行为模式比时序顺序要复杂。另外,对于在自监督学习部分中的用户偏好建模,引入时序信息是不合适的,因为两个会话的相似度是整体上的,与RNN所建模的兴趣变化没有特定的关系。
对于CGL和CGLw/o[d],将用户的动态偏好替换为长期偏好时,两个指标上均明显地下降,在Retailrocket数据集上,Recall@20和MRR@20指标上的影响相似,分别降低17.15%和15.47%,在Gowalla数据集上,分别降低0.16%和7.82%,表明在签到场景下,通过强调最近交互来建模用户的动态兴趣能够更加有效地将目标物品推荐到更靠前的位置。
针对不同长度的会话,验证本实施例的推荐方法的推荐效果。将包括不多于4个物品的会话看作短会话,多于4个物品的会话看作长会话,在表1所示样本数据中,在Retailrocket数据集上,短会话和长会话的比例分别为83.90%和16.10%,在Gowalla数据集上,短会话和长会话的比例分别为91.58%和8.42%。
如图6A、6B、6C、6D所示,对于不同长度的会话,CGL的性能良好,从短会话增加到长会话,其他模型在Retailrocket数据集上的性能均有所下降,其他模型在Gowalla数据集上性能均有所提升,这是因为,在电商平台中,用户的意图是多种多样的,在签到场景下,用户可能关注于相似的地点,因此,在Retailrocket数据集上,相对较多的物品可能误导模型识别用户的当前偏好,而在Gowalla数据集上,更多的签到数据能够更准确的确定用户偏好。
在Retailrocket数据集上,SR-GNN在短会话上的两个指标性能良好,在长会话上的两个指标性能不佳,表明信息传播中探索长距离物品对于获得具有较多交互的用户偏好很重要。另外,对于长会话和短会话,MRR@20指标下降更为明显,表明对于长会话,将目标物品推荐至推荐列表的前列难度较大。
在Gowalla数据集上,基于GNN的方法能够在短会话上的性能明显优于NARM和STAMP,SR-GNN、GCE-GNN的性能与NARM、STAMP的性能表现在长会话上相近。这可能是由于随着会话长度的增加,会话中的传递关系也开始变得复杂,GNN也不能准确地建模物品间的关系。然而,CGL仍然能够展现出比其他现有模型更好的性能,表明通过引入自监督信号可有效防止过拟合问题,能够准确地学习到物品嵌入向量。
需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
如图7所示,本说明书实施例还提供一种基于会话的推荐装置,包括:
构造模块,用于根据待预测的会话,构造有向会话图;其中,会话包括用户与系统交互的至少一个物品;
物品表示模块,用于将有向会话图输入门控图神经网络,由门控图神经网络输出物品嵌入向量;
偏好确定模块,用于根据用户的当前偏好和第一长期偏好,确定用户的动态偏好;其中,第一长期偏好根据物品嵌入向量和物品的重要性分数确定;
预测模块,用于根据动态偏好和物品嵌入向量,确定各物品的预测分数;
推荐模块,用于根据各物品的预测分数,输出推荐物品。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
图8示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (4)
1.基于会话的推荐方法,利用预先训练的推荐模型进行物品推荐,其特征在于,方法包括:
根据待预测的会话,构造有向会话图;其中,所述会话包括用户与系统交互的至少一个物品;
将所述有向会话图输入门控图神经网络,由所述门控图神经网络输出物品嵌入向量;
根据用户的当前偏好和第一长期偏好,确定用户的动态偏好;其中,所述当前偏好为所述会话中的最后一个物品的物品嵌入向量,所述第一长期偏好根据所述物品嵌入向量和物品的重要性分数确定;
根据所述动态偏好和所述物品嵌入向量,确定各物品的预测分数;
根据各物品的预测分数,输出推荐物品;
计算目标物品与物品集合中所有物品的相似度,得到由目标物品与所有物品的相似度构成的软标签向量;
对所有物品进行独热编码,得到独热编码表示的所有物品的硬标签向量;
根据所述软标签向量和硬标签向量,确定标签分布;其中,所述标签分布yc为:
yc=Soft max(ysoft+αyhard) (6)
式中,α是标签权衡参数,用于调节软标签向量ysoft和硬标签向量yhard之间的权重;
根据所述预测分数和所述标签分布,确定第一损失函数Lmain,表示为:
计算所述会话与其他会话的相似度;
确定相似度最大的前M个邻居会话及剩余的非邻居会话;
根据所述会话、邻居会话、非邻居会话,分别计算各自的第二长期偏好;
根据所述会话、邻居会话、非邻居会话的第二长期偏好,确定第二损失函数;其中,所述第二损失函数为JS散度函数,最大化所述会话与所述邻居会话之间的关联,最小化所述会话与所述非邻居会话之间的关联;所述第二损失函数为:
根据所述第一损失函数和所述第二损失函数,得到用于联合训练推荐模型的损失函数L,利用损失函数L优化所述推荐模型;其中,损失函数L为:
L=Lmain+λLssl (11)
式中,λ是损失权衡参数。
2.根据权利要求1所述的方法,其特征在于,所述第一长期偏好由动态读出函数确定,所述第二长期偏好由长期读出函数确定。
3.根据权利要求1所述的方法,其特征在于,所述物品的重要性分数由注意力机制产生。
4.基于会话的推荐装置,利用预先训练的推荐模型进行物品推荐,其特征在于,包括:
构造模块,用于根据待预测的会话,构造有向会话图;其中,所述会话包括用户与系统交互的至少一个物品;
物品表示模块,用于将所述有向会话图输入门控图神经网络,由所述门控图神经网络输出物品嵌入向量;
偏好确定模块,用于根据用户的当前偏好和第一长期偏好,确定用户的动态偏好;其中,所述当前偏好为所述会话中的最后一个物品的物品嵌入向量,所述第一长期偏好根据所述物品嵌入向量和物品的重要性分数确定;
预测模块,用于根据所述动态偏好和所述物品嵌入向量,确定各物品的预测分数;
推荐模块,用于根据各物品的预测分数,输出推荐物品;
第一计算模块,用于计算目标物品与物品集合中所有物品的相似度,得到由目标物品与所有物品的相似度构成的软标签向量;对所有物品进行独热编码,得到独热编码表示的所有物品的硬标签向量;根据所述软标签向量和硬标签向量,确定标签分布;其中,所述标签分布yc为:
yc=Soft max(ysoft+αyhard) (6)
式中,α是标签权衡参数,用于调节软标签向量ysoft和硬标签向量yhard之间的权重;
第二计算模块,用于计算所述会话与其他会话的相似度;
邻居确定模块,用于确定相似度最大的前M个邻居会话及剩余的非邻居会话;
第二偏好确定模块,用于根据所述会话、邻居会话、非邻居会话,分别计算各自的第二长期偏好;
联合优化模块,用于根据所述预测分数和所述标签分布,确定第一损失函数;根据所述会话、邻居会话、非邻居会话的第二长期偏好,确定第二损失函数;以及根据所述第一损失函数和所述第二损失函数,优化所述推荐模型;其中,所述第二损失函数为JS散度函数,最大化所述会话与所述邻居会话之间的关联,最小化所述会话与所述非邻居会话之间的关联;所述第二损失函数为:
根据所述第一损失函数和所述第二损失函数,得到用于联合训练推荐模型的损失函数L,利用损失函数L优化所述推荐模型;其中,损失函数L为:
L=Lmain+λLssl (11)
式中,λ是损失权衡参数。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110533473.8A CN113222700B (zh) | 2021-05-17 | 2021-05-17 | 基于会话的推荐方法及装置 |
US17/745,121 US11551284B2 (en) | 2021-05-17 | 2022-05-16 | Session-based recommendation method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110533473.8A CN113222700B (zh) | 2021-05-17 | 2021-05-17 | 基于会话的推荐方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113222700A CN113222700A (zh) | 2021-08-06 |
CN113222700B true CN113222700B (zh) | 2023-04-18 |
Family
ID=77092286
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110533473.8A Active CN113222700B (zh) | 2021-05-17 | 2021-05-17 | 基于会话的推荐方法及装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11551284B2 (zh) |
CN (1) | CN113222700B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113704439B (zh) * | 2021-09-06 | 2022-02-22 | 中国计量大学 | 一种基于多来源信息异构图的会话推荐方法 |
EP4174748A1 (en) * | 2021-10-29 | 2023-05-03 | Tata Consultancy Services Limited | Systems and methods for recommendation of items and controlling an associated bias thereof |
EP4231199A1 (en) * | 2022-02-22 | 2023-08-23 | Siemens Aktiengesellschaft | Method and device for providing a recommender system |
US20230388596A1 (en) * | 2022-05-31 | 2023-11-30 | Netflix, Inc. | Techniques for generating recommendations based on historical user preferences and current user interactions |
CN116304279B (zh) * | 2023-03-22 | 2024-01-26 | 烟台大学 | 基于图神经网络的用户偏好演化主动感知方法及系统 |
CN116361635B (zh) * | 2023-06-02 | 2023-10-10 | 中国科学院成都文献情报中心 | 一种多维时序数据异常检测方法 |
CN116595157B (zh) * | 2023-07-17 | 2023-09-19 | 江西财经大学 | 基于用户意图融合的动态兴趣转移型会话推荐方法与系统 |
CN117171448B (zh) * | 2023-08-11 | 2024-05-28 | 哈尔滨工业大学 | 一种基于图神经网络的多行为社会化推荐方法及系统 |
CN116932923B (zh) * | 2023-09-19 | 2023-12-08 | 江西财经大学 | 一种结合行为特征与三角协作度量的项目推荐方法 |
CN117520665B (zh) * | 2024-01-05 | 2024-03-26 | 江西财经大学 | 一种基于生成对抗网络的社交推荐方法 |
CN118036654B (zh) * | 2024-03-19 | 2024-09-03 | 江苏大学 | 一种基于图神经网络和注意力机制的会话推荐方法 |
CN117951282B (zh) * | 2024-03-27 | 2024-06-11 | 山东科技大学 | 一种融合多元信息的图神经网络会话推荐方法 |
CN118134606B (zh) * | 2024-05-06 | 2024-07-23 | 烟台大学 | 基于用户偏好的服务推荐方法、系统、设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109740057A (zh) * | 2018-12-28 | 2019-05-10 | 武汉大学 | 一种基于知识萃取的增强神经网络及信息推荐方法 |
CN111428619A (zh) * | 2020-03-20 | 2020-07-17 | 电子科技大学 | 基于有序回归和软标签的三维点云头部姿态估计系统和方法 |
CN112364976A (zh) * | 2020-10-14 | 2021-02-12 | 南开大学 | 基于会话推荐系统的用户偏好预测方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110232480B (zh) * | 2019-03-01 | 2021-05-11 | 电子科技大学 | 利用变分的正则化流实现的项目推荐方法及模型训练方法 |
CN111259243B (zh) * | 2020-01-14 | 2023-06-06 | 中山大学 | 基于会话的并行推荐方法及系统 |
CN111581520B (zh) * | 2020-05-25 | 2022-04-19 | 中国人民解放军国防科技大学 | 基于会话中物品重要性的物品推荐方法和系统 |
CN111581519B (zh) * | 2020-05-25 | 2022-10-18 | 中国人民解放军国防科技大学 | 基于会话中用户意图的物品推荐方法和系统 |
CN112150210B (zh) * | 2020-06-19 | 2022-10-18 | 南京理工大学 | 一种基于ggnn网络的改进型神经网络推荐方法及系统 |
CN111783963A (zh) * | 2020-07-24 | 2020-10-16 | 中国人民解放军国防科技大学 | 一种基于星图神经网络的推荐方法 |
CN111681059B (zh) * | 2020-08-14 | 2020-11-13 | 支付宝(杭州)信息技术有限公司 | 行为预测模型的训练方法及装置 |
CN112115352B (zh) * | 2020-08-28 | 2024-07-05 | 齐鲁工业大学 | 基于用户兴趣的会话推荐方法及系统 |
-
2021
- 2021-05-17 CN CN202110533473.8A patent/CN113222700B/zh active Active
-
2022
- 2022-05-16 US US17/745,121 patent/US11551284B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109740057A (zh) * | 2018-12-28 | 2019-05-10 | 武汉大学 | 一种基于知识萃取的增强神经网络及信息推荐方法 |
CN111428619A (zh) * | 2020-03-20 | 2020-07-17 | 电子科技大学 | 基于有序回归和软标签的三维点云头部姿态估计系统和方法 |
CN112364976A (zh) * | 2020-10-14 | 2021-02-12 | 南开大学 | 基于会话推荐系统的用户偏好预测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113222700A (zh) | 2021-08-06 |
US11551284B2 (en) | 2023-01-10 |
US20220374962A1 (en) | 2022-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113222700B (zh) | 基于会话的推荐方法及装置 | |
WO2022161202A1 (zh) | 多媒体资源分类模型训练方法和多媒体资源推荐方法 | |
CN112488863B (zh) | 一种在用户冷启动场景下的险种推荐方法及相关设备 | |
Liu et al. | A robust graph based multi-label feature selection considering feature-label dependency | |
CN116822651A (zh) | 基于增量学习的大模型参数微调方法、装置、设备及介质 | |
CN115238855A (zh) | 基于图神经网络的时序知识图谱的补全方法及相关设备 | |
Liu et al. | Neural matrix factorization recommendation for user preference prediction based on explicit and implicit feedback | |
CN116090536A (zh) | 神经网络的优化方法、装置、计算机设备及存储介质 | |
CN117633371A (zh) | 基于多注意力机制的推荐方法、设备和可读存储介质 | |
CN116611497B (zh) | 一种点击率预估模型训练方法和装置 | |
CN117251626A (zh) | 一种课程推荐方法、系统及电子设备 | |
CN116796729A (zh) | 基于特征强化的文本推荐方法、装置、设备及存储介质 | |
CN116361643A (zh) | 实现对象推荐的模型训练方法及对象推荐方法及相关装置 | |
CN115329146A (zh) | 时序网络中的链路预测方法、电子设备及存储介质 | |
CN115080856A (zh) | 推荐方法及装置、推荐模型的训练方法及装置 | |
CN115048530A (zh) | 融合邻居重要度和特征学习的图卷积推荐系统 | |
Wang | Forecast model of TV show rating based on convolutional neural network | |
Pan et al. | Session-based recommendation with an importance extraction module | |
CN113822291A (zh) | 一种图像处理方法、装置、设备及存储介质 | |
Kim et al. | COVID-19 outbreak prediction using Seq2Seq+ Attention and Word2Vec keyword time series data | |
Mahdi et al. | A 2019-2020 Review of R Neural Network Packages with NNbenchmark | |
CN118134606B (zh) | 基于用户偏好的服务推荐方法、系统、设备和存储介质 | |
CN117786234B (zh) | 一种基于两阶段对比学习的多模态资源推荐方法 | |
CN115310547B (zh) | 模型训练方法、物品识别方法及装置、电子设备、介质 | |
CN116522999B (zh) | 模型搜索与时延预测器训练方法、装置、设备及存储介质 |
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 |