一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于知识图谱的协同过滤推荐方法及系统与流程

2022-04-14 03:21:24 来源:中国专利 TAG:


1.本发明涉及大数据技术领域,尤其涉及一种基于知识图谱的协同过滤推荐方法、基于知识图谱的协同过滤推荐系统、计算机可读存储介质以及计算机设备。


背景技术:

2.随着互联网技术的不断发展普及,大数据时代到来,网络上每时每刻都有大量可供选择的信息资源产生。用户可以通过各种各样的渠道获取大量信息,例如文字、图片、音乐、视频等不同类型的数据,从而获得符合自己需求的信息。这些海量的信息为人们带来无限的便利,但却无法从这些大量的信息中快速获取自己想要的信息,使有价值的信息的获取变得十分困难,因此如何解决这种“信息过载”问题成为重中之重,推荐系统的产生使这种问题得到缓解。用户通常采用搜索引擎来获取想要的信息,然而这种方式只能在用户目标和需求精确的条件下才能取得较好的效果。而推荐系统可以通过分析用户的历史行为,挖掘用户的兴趣偏好,使用户发现自己的隐性需求从而有效的进行信息过滤,提供了个性化推荐。
3.多数推荐系统仅针对单一领域,根据用户在该领域的历史信息,计算用户偏好从而提供推荐服务。而广泛应用于单一领域的协同过滤方法十分简单有效,协同过滤方法通过发掘用户对项目的偏好以及项目的特征,从而为用户推荐与其偏好相似的项目或者根据与其偏好相似的用户为其推荐。然而随着数据量的急剧增长,数据稀疏问题逐渐显露,这些问题使得协同过滤方法的推荐性能下降。现有的解决方案只能基于内容感知的推荐和基于知识图谱的推荐,不能很好的解决数据稀疏问题。
4.因此,如何解决协同过滤中的数据稀疏问题,如何准确的表示用户的偏好和物品的特征是亟需解决的问题。


技术实现要素:

5.本发明提供一种基于知识图谱的协同过滤推荐方法,解决了协同过滤中的数据稀疏问题,能够准确的表示用户的偏好和物品的特征,进而提升推荐方法的性能。
6.第一方面,本发明实施例提供一种基于知识图谱的协同过滤推荐方法,该基于知识图谱的协同过滤推荐方法包括:根据实体交互图和实体对应的知识图谱得到协同知识图谱,实体交互图包括用户和物品,协同知识图谱以三元组的形式进行表示;将与实体相关的描述信息输入实体描述编码器得到实体描述向量;利用transr算法学习将协同知识图谱转化为实体结构向量;根据协同知识图谱得到实体的自我中心网络向量;根据实体的自我中心网络向量和实体描述向量更新实体描述向量;将实体描述向量的激活函数进行递归传播得到最终的实体描述向量;根据最终的实体描述向量得到用户与物品之间交互的可能性预测。
7.第二方面,本发明实施例提供一种基于知识图谱的协同过滤推荐系统,该基于知识图谱的协同过滤推荐系统包括:协同知识图谱构建模块:用于根据实体交互图和实体对应的知识图谱得到协同知识图谱,实体交互图包括用户和物品,协同知识图谱以三元组的形式进行表示;体描述向量构建模块:用于将与实体相关的描述信息输入实体描述编码器得到实体描述向量;实体结构向量构建模块:用于利用transr算法学习协同知识图谱得到实体结构向量;自我中心网络向量构建模块:用于根据协同知识图谱得到实体的自我中心网络向量;实体描述向量更新模块:用于根据实体的自我中心网络向量和实体描述向量更新实体描述向量;激活函数递归模块:用于将实体描述向量的激活函数进行递归传播得到最终的实体描述向量;交互可能性预测模块:用于根据最终的实体描述向量得到用户与物品之间交互的可能性预测。
8.第三方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有能够被处理器加载并执行的基于知识图谱的协同过滤推荐方法的程序指令。
9.第四方面,本发明实施例提供一种计算机设备,计算机设备包括:存储器,用于存储程序指令;处理器,用于执行程序指令以使计算机设备实现基于知识图谱的协同过滤推荐方法。
10.上述基于知识图谱的协同过滤推荐方法主要利用用户对项目的交互历史记录,不关注用户和项目本身内容信息。是基于内容感知的推荐,是通过整合用户与项目的交互数据和用户、项目的内容数据,例如,简介信息、图片、知识库、评论等数据来提出的,能够极大地丰富用户或者项目相关的内容。所以基于知识图谱的协同过滤推荐方法可以有效的从内容数据中提取相关的内容来处理数据稀疏性问题。
附图说明
11.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
12.图1为本发明实施例提供的基于知识图谱的协同过滤推荐方法的流程图。
13.图2为本发明实施例提供的基于知识图谱的协同过滤推荐系统的结构示意图。
14.图3为本发明实施例提供的计算机设备内部结构示意图。
15.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
16.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
17.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
18.需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
19.请结合参看图1,其为本发明实施例提供的基于知识图谱的协同过滤推荐方法的流程图。其中,本发明实施例提供的基于知识图谱的协同过滤推荐方法具体包括下面步骤。
20.步骤s101,根据实体交互图和实体对应的知识图谱得到协同知识图谱,实体交互图包括用户和物品,协同知识图谱的知识以三元组的形式表示,三元组包括头实体、关系和尾实体。知识图谱(knowledge graph),在图书情报界称为知识域可视化或知识领域映射地图,是显示知识发展进程与结构关系的一系列各种不同的图形,用可视化技术描述知识资源及其载体,挖掘、分析、构建、绘制和显示知识及它们之间的相互联系。在本实施例中,实体对应的知识图谱是与实体相关联的各种知识。协同知识图谱为实体和实体对应的知识图谱一起构成的知识图谱。三元组表示为,其中,h表示头实体,r表示关系,t表示尾实体。在本实施例中,用户在一个网络中有一个唯一确认的id,用x表示;物品可以是一件消费商品,例如,一款手机,一款电脑;物品也可以是艺术作品,例如,一部电影、电视剧、话剧等。以一部电影为例,a表示一部电影,b1、b2、b3表示电影a的演员;c表示电影a的导演,b1、b2、b3和c构成了电影a的知识图谱,x、b1、b2、b3和c构成了协同知识图谱。
21.步骤s102,将与实体相关的描述信息输入实体描述编码器得到实体描述向量。在本实施例中,与实体相关的描述信息可以是该id点击过a电影相关的评分,或者是a电影相关的评价。将上述信息转化为指维度的向量。实体描述向量用表示,这里为100维的向量。在本实施例中,实体描述编码器为word2vec模型。在本实施例中所有的数据仅做示例不做限定,实际应用中根据用户的需求设定。
22.步骤s103,基于transr算法通过混合项的限制,将实体描述向量和实体结构向量映射到同一语义空间,语义空间中还包括关系向量,在同一语义空间中关系向量共享,实体结构向量和关系向量是根据transr算法训练得到。transr算法时实体空间和多个关系空间
(关系特定的实体空间)中建模实体和关系,并在对应的关系空间中进行转换的方法。在本实施例中,实体结构向量用表示,这里为100维的向量。在本实施例中所有的数据仅做示例不做限定,实际应用中根据用户的需求设定。在本实施例中,采用以下公式(1)来获得实体结构向量。采用公式(2)得到损失函数,其中:其中:其中,表示三元组的得分函数,表示关系映射矩阵,表示头实体描述向量,表示关系向量,表示尾实体描述向量,表示尾实体的结构向量,表示尾实体的描述向量;是知识嵌入的损失函数,h表示头实体、r表示关系、t表示尾实体,为正样本集合,为随机替换正样本中头实体或尾实体生成的负样本集合,是间隔系数。在本实施例中,为维度为100*100的向量。
23.通过混合项的限制,将两种表示,也就是实体描述向量和实体结构向量映射到了同一语义空间中,中间共享关系向量表示。在本实施例,知识嵌入的损失函数采用最大间隔法将正样本与负样本区分出来。
24.步骤s104,根据协同知识图谱得到实体的自我中心网络向量。在本实施例中,具体通过以下公式(3)得到自我中心网络向量,具体为:其中,表示h的自我中心网络向量,表示和相加得到的混合向量,表示头实体描述向量,表示尾实体的描述向量,表示传播的衰减系数,nh表示自我中心网络。在本实施例中,、的维度也是100维。 的计算公式(4)具体为:(4)其中,表示描述向量,表示关系向量。
25.步骤s105,根据实体描述向量和实体结构向量得到实体表示向量,实体表示向量根据实体表示向量和自我中心网络向量进行更新。更新实体描述向量的公式(5)具体为:
(5)其中,表示结合 自身的信息和与其相邻距离为*的节点信息对
ꢀꢀ
进行表示,中*表示*阶的表示向量为激活函数,为可训练的权重矩阵。
26.当进行实体描述向量进行第一次更新时,请参照公式(6),(6)。
27.步骤s106,根据实体表示向量得到用户与物品之间的交互概率。具体请参照公式(7)、(8)、(9)、(10)、(11)以及(12)。
28.其中,为最终的实体描述向量。请参照公式(8),请参照公式(8),(9)(10)(11)(12)其中,表示结合 的自我中心网络向量和与其相邻距离为*的节点信息对
ꢀꢀ
进行的中心网络向量,表示向量拼接符号,表示用户的最终表示向量,表示物品的最终表示向量,表示用户的节点表示,表示物品的节点表示, 表示最终对用户与物品进行交互的概率,为协同过滤损失函数,
ꢀꢀ
,表示sigmoid函数,用于进行归一化。
29.上述基于知识图谱的协同过滤推荐方法,主要利用用户对项目的交互历史记录,不关注用户和项目本身内容信息。是基于内容感知的推荐,是通过整合用户与项目的交互数据和用户、项目的内容数据,例如,简介信息、图片、知识库、评论等数据来提出的,能够极大地丰富用户或者项目相关的内容。所以基于知识图谱的协同过滤推荐方法可以有效的从内容数据中提取相关的内容来处理数据稀疏性问题。
30.请结合参看图2,其为基于知识图谱的协同过滤推荐系统的结构示意图。该基于知识图谱的协同过滤推荐系统200包括协同知识图谱构建模块210、实体描述向量构建模块220、transr算法模块230、自我中心网络向量构建模块240、激活函数递归模块250以及交互可能性预测模块260。
31.协同知识图谱构建模块210,用于根据实体交互图和实体对应的知识图谱得到协同知识图谱,实体交互图包括用户和物品,协同知识图谱以三元组的形式进行表示。知识图谱(knowledge graph),在图书情报界称为知识域可视化或知识领域映射地图,是显示知识发展进程与结构关系的一系列各种不同的图形,用可视化技术描述知识资源及其载体,挖掘、分析、构建、绘制和显示知识及它们之间的相互联系。在本实施例中,实体对应的知识图谱是与实体相关联的各种知识。协同知识图谱为实体和实体对应的知识图谱一起构成的知识图谱。三元组表示为,其中,h表示头实体,r表示关系,t表示尾实体。在本实施例中,用户在一个网络中有一个唯一确认的id,用u表示;物品可以是一件消费商品,例如,一款手机,一款电脑;物品也可以是艺术作品,例如,一部电影、电视剧、话剧等。以一部电影为例,a表示一部电影,b1、b2、b3表示电影a的演员;c表示电影a的导演,b1、b2、b3和c构成了电影a的知识图谱,u、b1、b2、b3和c构成了协同知识图谱。
32.实体描述向量构建模块220,用于将与实体相关的描述信息输入实体描述编码器得到实体描述向量。在本实施例中,与实体相关的描述信息可以是该id点击过a电影相关的评分,或者是a电影相关的评价。将上述信息转化为指维度的向量。实体描述向量用表示,这里为100维的向量。在本实施例中,实体描述编码器为word2vec模型。在本实施例中所有的数据仅做示例不做限定,实际应用中根据用户的需求设定。
33.transr算法模块230,用于基于transr算法通过混合项的限制,将实体描述向量和实体结构向量映射到同一语义空间,语义空间中还包括关系向量,在同一语义空间中关系向量共享,实体结构向量和关系向量是根据transr算法训练得到。在本实施例中,实体结构向量用表示,这里为100维的向量。在本实施例中所有的数据仅做示例不做限定,实际应用中根据用户的需求设定。在本实施例中,采用以下公式(1)来获得实体结构向量。采用公式(2)得到损失函数,其中:其中:其中:表示三元组的得分函数,表示关系映射矩阵,表示头实体描述
向量,表示关系向量,表示尾实体描述向量,表示尾实体的结构向量,表示尾实体的描述向量;是知识嵌入的损失函数,h表示头实体、r表示关系、t表示尾实体,为正样本集合,为随机替换正样本中头实体或尾实体生成的负样本集合,是间隔系数。在本实施例中,为维度为100*100的向量。
34.通过混合项的限制,将两种表示,也就是实体描述向量和实体结构向量映射到了同一语义空间中,中间共享关系向量表示。在本实施例,知识嵌入的损失函数采用最大间隔法将正样本与负样本区分出来。
35.自我中心网络向量构建模块240,自我中心网络向量构建模块:用于根据协同知识图谱得到实体的自我中心网络向量。在本实施例中,自我中心网络向量构建模块240具体通过以下公式(3)得到自我中心网络向量。
36.其中,为x的自我中心网络向量,由和相加得到的混合向量,
ꢀꢀ
表示每条边上传播的衰减系数。在本实施例中,、的维度也是100维。 的计算公式(4)具体为:(4)。
37.激活函数递归模块250,用于根据实体描述向量和实体结构向量得到实体表示向量,实体表示向量根据实体表示向量和自我中心网络向量进行更新。实体描述向量更新模块250更新实体描述向量的公式(5)具体为:(5)。
38.当进行实体描述向量进行第一次更新时,请参照公式(6),(6)。
39.交互可能性预测模块260,用于根据实体表示向量得到用户与物品之间的交互概率。具体请参照公式(7)、(8)、(9)、(10)、(11)以及(12),各公式具体为:其中,为最终的实体描述向量。请参照公式(8),
(9)(10)(11)(12)其中, 表示向量拼接符号,表示用户的最终表示向量,表示物品的最终表示向量,表示用户的节点表示,表示物品的节点表示, 表示最终对用户与物品进行交互的概率,为协同过滤损失函数,
ꢀꢀ
,表示sigmoid函数,用于进行归一化。
40.上述基于知识图谱的协同过滤推荐系统,利用知识图谱对多元异构数据的整合性,对大数据环境下互联网上的数据进行知识抽取,得到更加细粒度的用户和物品的特征信息,从而更精准的计算用户与用户、用户与物品以及物品与物品之间的相关性,最后为用户做出推荐。
41.本发明还提供了一种计算机可读存储介质。计算机可读存储介质上存储有能够被处理器加载并执行的上述的基于知识图谱的协同过滤推荐方法的程序指令。基于知识图谱的协同过滤推荐方法的程序指令还可以从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,该程序指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。由于计算机可读存储介质采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再赘述。
42.本发明还提供一种计算机设备900,计算机设备900至少包括存储器901和处理器902。存储器901用于存储基于知识图谱的协同过滤推荐方法的程序指令。处理器902用于执行程序指令以使计算机设备实现上述的基于知识图谱的协同过滤推荐方法。请结合参看图3,其为本发明实施例提供的计算机设备900的内部结构示意图。
43.其中,存储器901至少包括一种类型的计算机可读存储介质,该计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、磁性存储器、磁盘、光盘等。存储器901在一些实施例中可以是计算机设备900的内部存储单元,例如计算机设备900的硬盘。存储器901在另一些实施例中也可以是计算机设备900的外部存储设备,例如计算机设备900上配备的插接式硬盘,智能存储卡(smart media card, smc),安全数字卡
(secure digital, sd),闪存卡(flash card)等。进一步地,存储器901还可以既包括计算机设备900的内部存储单元也包括外部存储设备。存储器901不仅可以用于存储安装于计算机设备900的应用软件及各类数据,例如基于知识图谱的协同过滤推荐方法的程序指令等,还可以用于暂时地存储已经输出或者将要输出的数据,例如基于知识图谱的协同过滤推荐方法执行产生的数据等。
44.处理器902在一些实施例中可以是中央处理器(central processing unit, cpu)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器901中存储的程序指令或处理数据。具体地,处理器902执行基于知识图谱的协同过滤推荐方法的程序指令以控制计算机设备900实现基于知识图谱的协同过滤推荐方法。
45.进一步地,计算机设备900还可以包括总线903可以是外设部件互连标准总线(peripheral component interconnect,简称pci)或扩展工业标准结构总线(extended industry standard architecture,简称eisa)等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
46.进一步地,计算机设备900还可以包括显示组件904。显示组件904可以是led(light emitting diode,发光二极管)显示器、液晶显示器、触控式液晶显示器以及oled(organic light-emitting diode,有机发光二极管)触摸器等。其中,显示组件904也可以适当的称为显示装置或显示单元,用于显示在计算机设备900中处理的信息以及用于显示可视化的用户界面。
47.进一步地,计算机设备900还可以包括通信组件905,通信组件905可选的可以包括有线通信组件和/或无线通信组件(如wi-fi通信组件、蓝牙通信组件等),通常用于在计算机设备900与其他计算机设备之间建立通信连接。
48.图3仅示出了具有组件901-905以及实现基于知识图谱的协同过滤推荐方法的程序指令的计算机设备900,本领域技术人员可以理解的是,图3示出的结构并不构成对计算机设备900的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。由于计算机设备900采用了上述所有实施例的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再赘述。
49.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,装置和单元的具体工作过程,可以参考上述方法实施例中的对应过程,在此不再赘述。
50.在本技术所提供的几个实施例中,应该理解到,所揭露的装置,装置和方法,可以通过其它的方式实现。例如,以上所描述的基于知识图谱的协同过滤推荐方法实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件 可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
51.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘且本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
52.以上所列举的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范
围,因此依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献