掌桥专利:专业的专利平台
掌桥专利
首页

一种确定信息相似度的方法及系统

文献发布时间:2023-06-19 11:29:13


一种确定信息相似度的方法及系统

技术领域

本发明涉及数据处理技术领域,具体涉及一种确定信息相似度的方法及系统。

背景技术

在信息推荐领域,较为常用的信息推荐算法为协同过滤算法。在利用协同过滤算法进行信息推荐时,需计算信息之间的相似度。

目前协同过滤算法计算信息之间的相似度的方式为:根据信息的共现次数来计算信息之间的相似度。但在实际应用中,用户会产生大量的稀疏行为,信息之间的共现关系过少,会导致协同过滤算法所能覆盖的信息数量较少,进而导致信息推荐的准确率较低。

发明内容

有鉴于此,本发明实施例提供一种确定信息相似度的方法及系统,以解决目前计算相似度的方式所能覆盖的信息数量较少的问题。

为实现上述目的,本发明实施例提供如下技术方案:

本发明实施例第一方面公开一种确定信息相似度的方法,所述方法包括:

基于信息被消费的时间,将每个用户所消费的信息进行排序得到对应的第一信息行为序列;

将所有用户对应的所述第一信息行为序列进行整合,得到第二信息行为序列;

计算所述第二信息行为序列中每一对具有共现关系的信息之间的第一相似度,每一对具有共现关系的信息为隶属于同一用户的两条信息;

基于所述第二信息行为序列,构建信息之间的拓扑图,所述拓扑图中的节点为所述第二信息行为序列中的信息,所述拓扑图中每条边所连接的两个节点为:所述第二信息行为序列具有共现关系的两条信息;

利用图卷积算法,计算所述拓扑图中每一对节点之间的第二相似度,所述拓扑图中每一对节点为任意两个节点;

基于所述第二信息行为序列中每一对具有共现关系的信息之间的第一相似度,结合所述拓扑图中每一对节点之间的第二相似度,确定所述第二信息行为序列中每一对信息之间的最终相似度,所述第二信息行为序列中每一对信息为任意两条信息。

优选的,所述利用图卷积算法,计算所述拓扑图中每一对节点之间的第二相似度,包括:

利用随机游走算法处理所述拓扑图,得到计算子图;

利用预设的特征矩阵对所述计算子图中的节点的属性进行处理,得到所述计算子图中每个节点的初步特征表达;

利用预设的全连接层,对所述计算子图中每个节点的初步特征表达进行处理,得到所述计算子图中每个节点的隐藏特征表达;

基于所述计算子图中每个节点的隐藏特征表达,利用合页损失函数计算相应的损失值;

若所述损失值大于等于阈值,根据梯度下降算法更新所述特征矩阵、所述计算子图中每个节点的初步特征表达和隐藏特征表达,并返回执行利用随机游走算法处理所述拓扑图这一步骤,直至所述损失值小于所述阈值,得到所述拓扑图中每个节点的最终的隐藏特征表达;

基于所述拓扑图中每个节点的最终的隐藏特征表达,计算所述拓扑图中每一对节点之间的第二相似度。

优选的,所述确定所述第二信息行为序列中每一对信息之间的最终相似度之后,还包括:

获取目标用户最近消费的待处理信息;

从所述第二信息行为序列中查询与所述待处理信息具有最终相似度的目标信息,并获取所述待处理信息和所述目标信息之间的最终相似度;

将与所述待处理信息之间的最终相似度大于相似度阈值的所述目标信息推荐给所述目标用户。

优选的,所述计算所述第二信息行为序列中每一对具有共现关系的信息之间的第一相似度,包括:

根据协同过滤算法,计算所述第二信息行为序列中每一对具有共现关系的信息之间的第一相似度。

优选的,所述基于所述第二信息行为序列中每一对具有共现关系的信息之间的第一相似度,结合所述拓扑图中每一对节点之间的第二相似度,确定所述第二信息行为序列中每一对信息之间的最终相似度,包括:

针对所述第二信息行为序列中的任意一对信息,基于所述拓扑图中每一对节点之间的第二相似度,确定所述任意一对信息之间的第二相似度,并按照算术平均的方式,对所述任意一对信息之间的第一相似度和第二相似度进行加权计算,得到所述任意一对信息之间的最终相似度。

优选的,所述基于所述拓扑图中每个节点的最终的隐藏特征表达,计算所述拓扑图中每一对节点之间的第二相似度,包括:

基于所述拓扑图中每个节点的最终的隐藏特征表达,计算所述拓扑图中每一对节点之间的余弦距离或欧式距离,将其作为所述拓扑图中每一对节点之间的第二相似度。

本发明实施例第二方面公开一种确定信息相似度的系统,所述系统包括:

排序单元,用于基于信息被消费的时间,将每个用户所消费的信息进行排序得到对应的第一信息行为序列;

整合单元,用于将所有用户对应的所述第一信息行为序列进行整合,得到第二信息行为序列;

第一计算单元,用于计算所述第二信息行为序列中每一对具有共现关系的信息之间的第一相似度,每一对具有共现关系的信息为隶属于同一用户的两条信息;

构建单元,用于基于所述第二信息行为序列,构建信息之间的拓扑图,所述拓扑图中的节点为所述第二信息行为序列中的信息,所述拓扑图中每条边所连接的两个节点为:所述第二信息行为序列具有共现关系的两条信息;

第二计算单元,用于利用图卷积算法,计算所述拓扑图中每一对节点之间的第二相似度,所述拓扑图中每一对节点为任意两个节点;

确定单元,用于基于所述第二信息行为序列中每一对具有共现关系的信息之间的第一相似度,结合所述拓扑图中每一对节点之间的第二相似度,确定所述第二信息行为序列中每一对信息之间的最终相似度,所述第二信息行为序列中每一对信息为任意两条信息。

优选的,所述第二计算单元包括:

游走模块,用于利用随机游走算法处理所述拓扑图,得到计算子图;

第一处理模块,用于利用预设的特征矩阵对所述计算子图中的节点的属性进行处理,得到所述计算子图中每个节点的初步特征表达;

第二处理模块,用于利用预设的全连接层,对所述计算子图中每个节点的初步特征表达进行处理,得到所述计算子图中每个节点的隐藏特征表达;

第一计算模块,用于基于所述计算子图中每个节点的隐藏特征表达,利用合页损失函数计算相应的损失值;

更新模块,用于若所述损失值大于等于阈值,根据梯度下降算法更新所述特征矩阵、所述计算子图中每个节点的初步特征表达和隐藏特征表达,并返回执行所述游走模块,直至所述损失值小于所述阈值,得到所述拓扑图中每个节点的最终的隐藏特征表达;

第二计算模块,用于基于所述拓扑图中每个节点的最终的隐藏特征表达,计算所述拓扑图中每一对节点之间的第二相似度。

优选的,所述系统还包括:

推荐单元,用于获取目标用户最近消费的待处理信息;从所述第二信息行为序列中查询与所述待处理信息具有最终相似度的目标信息,并获取所述待处理信息和所述目标信息之间的最终相似度;将与所述待处理信息之间的最终相似度大于相似度阈值的所述目标信息推荐给所述目标用户。

优选的,所述第一计算单元具体用于:根据协同过滤算法,计算所述第二信息行为序列中每一对具有共现关系的信息之间的第一相似度。

基于上述本发明实施例提供的一种确定信息相似度的方法及系统,该方法为:基于信息被消费的时间,将每个用户所消费的信息进行排序得到对应的第一信息行为序列;将所有用户对应的第一信息行为序列进行整合,得到第二信息行为序列;计算第二信息行为序列中每一对具有共现关系的信息之间的第一相似度;基于第二信息行为序列,构建信息之间的拓扑图;利用图卷积算法,计算拓扑图中每一对节点之间的第二相似度;基于第二信息行为序列中每一对具有共现关系的信息之间的第一相似度,结合拓扑图中每一对节点之间的第二相似度,确定第二信息行为序列中每一对信息之间的最终相似度。在计算得到具有共现关系的信息之间的第一相似度的基础上,利用图卷积算法和所构建的拓扑图计算任意两条具有共现关系或不具有共现关系的信息之间的第二相似度,结合第一相似度和第二相似度可得到任意两条信息之间的最终相似度,提高计算信息之间相似度的方式所覆盖的信息数量,进而提高信息推荐的准确率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种确定信息相似度的方法流程图;

图2为本发明实施例提供的确定每对信息之间的最终相似度的示意图;

图3为本发明实施例提供的计算拓扑图中每一对节点之间的第二相似度的流程图;

图4为本发明实施例提供的一种确定信息相似度的系统的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

由背景技术可知,目前通常利用协同过滤算法进行信息推荐,并根据信息的共现次数来计算信息之间的相似度。但是在实际应用中,用户会产生大量的稀疏行为,信息之间的共现关系过少,从而导致协同过滤算法所能覆盖的信息数量较少,进而导致信息推荐的准确率较低。

因此,本发明实施例提供一种确定信息相似度的方法及系统,在计算得到具有共现关系的信息之间的第一相似度的基础上,利用图卷积算法和所构建的拓扑图计算任意两条具有共现关系或不具有共现关系的信息之间的第二相似度,结合第一相似度和第二相似度可得到任意两条信息之间的最终相似度,通过结合两种方式计算信息之间的最终相似度,以提高计算相似度的方式所覆盖的信息数量,进而提高信息推荐的准确率。

需要说明的是,以下本发明实施例中所涉及到的拓扑图和计算子图,均指图论中的图。

参见图1,示出了本发明实施例提供的一种确定信息相似度的方法的流程图,该方法包括:

步骤S101:基于信息被消费的时间,将每个用户所消费的信息进行排序得到对应的第一信息行为序列。

在具体实现步骤S101的过程中,对于每个用户,将该用户所消费的信息按照被消费的时间进行排序,得到该用户对应的第一信息行为序列。也就是说,将每个用户消费的信息进行排序,得到每个用户对应的第一信息行为序列,每个用户都可生成与之对应的第一信息行为序列。

需要说明的是,本发明实施例中的信息指代视频、文章或物品等,用户消费信息具体指用户操作该信息,例如:假设信息为视频,则用户消费信息具体是指用户观看视频。

可以理解的是,用户所消费的信息可从该用户的历史操作数据中获取,生成用户对应的第一信息行为序列的过程即为搜集用户偏好的过程,例如:假设某用户所观看的视频依次(按观看时间排序)为视频a、视频b、视频c、视频d和视频e,则按照观看时间将各个视频排序后,该用户对应的第一信息行为序列为“视频a、视频b、视频c、视频d,视频e”。

步骤S102:将所有用户对应的第一信息行为序列进行整合,得到第二信息行为序列。

由上述步骤S101中的内容可知,可构建每个用户对应的第一信息行为序列,在具体实现步骤S102的过程中,将所有用户对应的第一信息行为序列进行整合,得到第二信息行为序列,该第二信息行为序列包含了所有用户对应的第一信息行为序列。

步骤S103:计算第二信息行为序列中每一对具有共现关系的信息之间的第一相似度。

需要说明的是,每一对具有共现关系的信息为隶属于同一用户的两条信息,也就是说,共现关系为两条信息共同出现在同一用户的历史操作数据中,例如:假设某用户对应的第一信息行为序列为“视频a、视频b、视频c、视频d,视频e”,则(视频a,视频b)、(视频a,视频c)和(视频a,视频d)等均表示为具有共现关系的两个视频。

在具体实现步骤S103的过程中,按照上述方式,确定第二信息行为序列中每一对具有共现关系的信息,并根据协同过滤算法,计算该第二信息行为序列中每一对具有共现关系的信息之间的第一相似度。

也就是说,对于第二信息行为序列中具有共现关系的每一对信息,利用协同过滤算法,计算该对信息之间的第一相似度,此时可用S1(a,b)表示具有共现关系的一对信息之间的第一相似度,S1表示第一相似度,a和b表示一对具有共现关系的信息。

可以理解的是,在利用协同过滤算法计算具有共现关系的一对信息之间的第一相似度时,存在多种计算方式,例如采用余弦相似度的计算方式计算第一相似度。

具体计算过程为:假设信息a在第二信息行为序列中出现了M次,信息b在第二信息行为序列中出现了N次,信息a和信息b共现的次数为X次,则信息a和信息b这一对具有共现关系的信息之间的第一相似度sim(a,b)如公式(1)。

步骤S104:基于第二信息行为序列,构建信息之间的拓扑图。

需要说明的是,拓扑图中的节点为第二信息行为序列中的信息,拓扑图中每条边所连接的两个节点为:第二信息行为序列具有共现关系的两条信息。

在具体实现步骤S104的过程中,将第二信息行为序列中的信息作为节点,第二信息行为序列的信息之间的共现关系作为边,构建信息之间的拓扑图。

也就是说,该拓扑图中的节点为第二信息行为序列中的信息,该拓扑图中的边表示两个节点之间的共现关系,换而言之,拓扑图的每一条边所连接的两个节点(即两条信息)之间具有共现关系。

步骤S105:利用图卷积算法,计算拓扑图中每一对节点之间的第二相似度。

需要说明的是,拓扑图中每一对节点为任意两个节点。

在具体实现步骤S105的过程中,利用随机游走算法对拓扑图进行处理,得到计算子图,再利用图卷积算法处理该计算子图得到该计算子图中每个节点的隐藏特征表达,并计算相应的损失值;循环执行前述过程直至损失值小于阈值(损失值小于阈值即表示收敛),得到拓扑图中每个节点的最终的隐藏特征表达。

对于拓扑图中的任意两个节点,利用该任意两个节点对应的最终的隐藏特征表达,计算该任意两个节点之间的第二相似度。

也就是说,通过上述方式,可计算得到拓扑图中任意两个节点之间的第二相似度,此时可用S2(a,b)表示该对信息之间的第二相似度,S2表示第二相似度,a和b表示任意一对信息。

需要说明的是,随机游走算法为:通过基于信息构建的拓扑图上,得到信息的行为序列的算法,其中的游走表示拓扑图中节点转移到相邻节点的一个动作。

可以理解的是,协同过滤算法只能计算具有共现关系的信息之间的相似度,通过步骤S105中的内容,利用拓扑图和图卷积算法,不仅能计算具有共现关系的信息之间的相似度,还可以计算没有共现关系的信息之间的相似度,从而纠正和补充信息之间的相似度,在一定程度上扩展信息的共现次数并且丰富相似信息之间的共现次数,从而对协调过滤算法起到互补作用。

步骤S106:基于第二信息行为序列中每一对具有共现关系的信息之间的第一相似度,结合拓扑图中每一对节点之间的第二相似度,确定第二信息行为序列中每一对信息之间的最终相似度。

需要说明的是,第二信息行为序列中每一对信息为任意两条信息。

可以理解的是,拓扑图中的节点为第二信息行为序列中的信息,在具体实现步骤S106的过程中,针对第二信息行为序列中的任意一对信息,基于拓扑图中每一对节点之间的第二相似度,确定该任意一对信息之间的第二相似度,并按照算术平均的方式,对该任意一对信息之间的第一相似度和第二相似度进行加权计算,得到该任意一对信息之间的最终相似度。

可以理解的是,由上述内容可知,在步骤S105中采用拓扑图和图卷积算法所计算的拓扑图中任意一对节点之间的第二相似度的过程中,拓扑图中任意一对节点(即第二信息行为序列中的任意一对信息)之间可能具有共现关系,也可能没有共现关系,因此上述在计算第二信息行为序列中每一对信息之间的最终相似度时,可能存在以下两种情况。

第一种情况:第二信息行为序列中,计算最终相似度的一对信息之间没有共现关系,即该对信息之间只存在利用步骤S105中的方式计算得到的第二相似度。

第二种情况:第二信息行为序列中,计算最终相似度的一对信息之间具有共现关系,即该对信息之间存在利用步骤S103中的方式计算得到的第一相似度,也存在利用步骤S105中的方式计算得到的第二相似度。

在计算第二信息行为序列中的任意一对信息之间的最终相似度时,针对上述第一种情况(即该任意一对信息之间没有共现关系),将该任意一对信息之间的第二相似度作为最终相似度。

在计算第二信息行为序列中的任意一对信息之间的最终相似度时,针对上述第二种情况(即该任意一对信息之间具有共现关系),按照算术平均的方式,对该任意一对信息之间的第一相似度和第二相似度进行加权计算,得到该任意一对信息之间的最终相似度。例如:假设信息a和信息b之间具有共现关系,信息a和信息b之间的第一相似度为S1(a,b)=0.7,信息a和信息b之间的第二相似度为S2(a,b)=0.8,按照算术平均的方式,则该信息a和信息b之间的最终相似度为S(a,b)=0.75。

通过上述方式,确定第二信息行为序列中每一对信息之间的最终相似度。

为更好解释说明上述计算第二信息行为序列中任意一对信息之间的最终相似度的过程,通过图2示出的确定每对信息之间的最终相似度的示意图进行举例说明。

在图2示出的一些具体实施例中,A表示信息a和信息b,过程B表示计算信息a和信息b之间的第一相似度S1(a,b),其中,如果信息a和信息b之间具有共现关系,则可计算得到S1(a,b)的相关数值,如果信息a和信息b之间没有共现关系,则S1(a,b)为0;过程C表示计算信息a和信息b之间的第二相似度S2(a,b),D表示对S1(a,b)和S2(a,b)进行加权计算,得到信息a和信息b之间的最终相似度S(a,b)。

需要说明的是,通过步骤S101至步骤S106计算得到第二信息行为序列中每一对信息之间的最终相似度之后,可利用所得到的每一对信息之间的最终相似度进行信息推荐。

优选的,具体的信息推荐过程为:获取目标用户最近消费的待处理信息,从第二信息行为序列中查询与该待处理信息具有最终相似度的目标信息(即确定与待处理信息相似的信息,目标信息可以是多个),并获取待处理信息和目标信息之间的最终相似度,将与待处理信息之间的最终相似度大于相似度阈值的目标信息推荐给目标用户。

可以理解的是,也可按照最终相似度由大至小的顺序,将目标信息进行排序,将最终相似度最大的前k个目标信息推荐给该目标用户。

例如:假设从目标用户的历史观影数据中,查询到该目标用户最近观看的视频a(即待处理信息),从第二信息行为序列中查询与视频a相似的目标视频,并获取视频a与各目标视频之间的最终相似度,将最终相似度最大的前k个目标视频推荐给该目标用户。

在本发明实施例中,基于信息被消费的时间,将每个用户所消费的信息进行排序得到对应的第一信息行为序列,并整合所有第一信息行为序列得到第二信息行为序列。利用协同过滤算法计算第二信息行为序列中每一对具有共现关系的信息之间的第一相似度。利用拓扑图和图卷积算法,计算任意两条具有共现关系或不具有共现关系的信息之间的第二相似度,结合第一相似度和第二相似度可得到任意两条信息之间的最终相似度,提高计算信息之间相似度的方式所覆盖的信息数量,进而提高信息推荐的准确率。

上述本发明实施例图1步骤S105中涉及的计算拓扑图中每一对节点之间的第二相似度的过程,参见图3,示出了本发明实施例提供的计算拓扑图中每一对节点之间的第二相似度的流程图,包括以下步骤:

步骤S301:利用随机游走算法处理拓扑图,得到计算子图。

在具体实现步骤S301的过程中,在拓扑图的基础上利用随机游走算法,得到相应的计算子图。

需要说明的是,在利用随机游走算法的过程,根据实际的业务需求,可选择基于广度的随机游走方式或选择基于深度的随机游走方式。

例如:对于相关推荐场景的业务需求,用户观看了带有某明星标签的视频,如果选择基于广度的随机游走方式,可得到其它带有某明星标签的视频。对于兴趣探索场景的业务需求,用户观看了带有某明星标签的视频,如果选择基于深度的随机游走方式,可得到带有其它明星标签的视频。

步骤S302:利用预设的特征矩阵对计算子图中的节点的属性进行处理,得到计算子图中每个节点的初步特征表达。

在具体实现步骤S302的过程中,对于计算子图中的所有节点,将该计算子图中的所有节点经过预设的特征矩阵进行处理,得到该计算子图中每个节点的初步特征表达。

步骤S303:利用预设的全连接层,对计算子图中每个节点的初步特征表达进行处理,得到计算子图中每个节点的隐藏特征表达。

在具体实现步骤S303的过程中,计算子图中所有节点的初步特征表达经过全连接层处理后,得到该计算子图中每个节点的隐藏特征表达。

步骤S304:基于计算子图中每个节点的隐藏特征表达,利用合页损失函数计算相应的损失值。

在具体实现步骤S304的过程中,对于计算子图中每个节点的隐藏特征表达,利用合页损失函数计算相应的损失值。

步骤S305:判断损失值是否小于阈值。若损失值大于等于阈值,执行步骤S306,若损失值小于阈值,执行步骤307。

在具体实现步骤S305的过程中,判断损失值是否小于阈值,若损失值小于阈值,执行步骤S307,将小于阈值的损失值所对应的每个节点的隐藏特征表达作为拓扑图中每个节点的最终的隐藏特征表达;若损失值大于等于阈值,执行步骤S306,利用梯度下降算法更新特征矩阵、计算子图中每个节点的初步特征表达和隐藏特征表达,返回执行步骤S301,循环执行上述步骤S301至步骤S306直至损失值小于阈值,进而将小于阈值的损失值所对应的每个节点的隐藏特征表达作为拓扑图中每个节点的最终的隐藏特征表达。

步骤S306:根据梯度下降算法更新特征矩阵、计算子图中每个节点的初步特征表达和隐藏特征表达,返回执行步骤S301。

在具体实现步骤S306的过程中,利用梯度下降算法,更新特征矩阵、计算子图中每个节点的初步特征表达、及计算子图中每个节点的隐藏特征表达。

步骤S307:得到拓扑图中每个节点的最终的隐藏特征表达。

需要说明的是,上述步骤S302至步骤S307即为图卷积算法的具体内容,若步骤S305中的损失值小于阈值,则表示模型收敛。

进一步需要说明的是,前述所提及的模型为抽象概念,模型具体为整个图卷积算法的流程及图卷积算法中的参数。

步骤S308:基于拓扑图中每个节点的最终的隐藏特征表达,计算拓扑图中每一对节点之间的第二相似度。

需要说明的是,由于每个节点的最终的隐藏特征表达为多维向量的形式,节点之间的相似度即为向量之间的距离,故在具体实现步骤S308的过程中,基于拓扑图中每个节点的最终的隐藏特征表达,计算拓扑图中每一对节点之间的余弦距离或欧式距离,将其作为拓扑图中每一对节点之间的第二相似度。

也就是说,对于拓扑图中的任意一对节点,基于该任意一对节点的最终的隐藏特征表达,计算该任意一对节点之间的余弦距离(或欧式距离),并将计算得到的余弦距离(或欧式距离)作为该任意一对节点之间的第二相似度。

在本发明实施例中,利用图卷积算法,计算拓扑图中每一对节点之间的第二相似度,再结合利用协同过滤算法计算得到的具有共现关系的信息之间的第一相似度,可得到任意两条信息之间的最终相似度,协调过滤算法和图卷积算法进行互补,提高计算信息之间相似度的方式所覆盖的信息数量,进而提高信息推荐的准确率。

与上述本发明实施例提供的一种确定信息相似度的方法相对应,参见图4,本发明实施例还提供了一种确定信息相似度的系统的结构框图,该系统包括:排序单元401、整合单元402、第一计算单元403、构建单元404、第二计算单元405和确定单元406;

排序单元401,用于基于信息被消费的时间,将每个用户所消费的信息进行排序得到对应的第一信息行为序列。

整合单元402,用于将所有用户对应的第一信息行为序列进行整合,得到第二信息行为序列。

第一计算单元403,用于计算第二信息行为序列中每一对具有共现关系的信息之间的第一相似度,每一对具有共现关系的信息为隶属于同一用户的两条信息。

在具体实现中,第一计算单元403具体用于:根据协同过滤算法,计算第二信息行为序列中每一对具有共现关系的信息之间的第一相似度。

构建单元404,用于基于第二信息行为序列,构建信息之间的拓扑图,拓扑图中的节点为第二信息行为序列中的信息,拓扑图中每条边所连接的两个节点为:第二信息行为序列具有共现关系的两条信息。

第二计算单元405,用于利用图卷积算法,计算拓扑图中每一对节点之间的第二相似度,拓扑图中每一对节点为任意两个节点。

确定单元406,用于基于第二信息行为序列中每一对具有共现关系的信息之间的第一相似度,结合拓扑图中每一对节点之间的第二相似度,确定第二信息行为序列中每一对信息之间的最终相似度,第二信息行为序列中每一对信息为任意两条信息。

在具体实现中,确定单元406具体用于:针对第二信息行为序列中的任意一对信息,基于拓扑图中每一对节点之间的第二相似度,确定任意一对信息之间的第二相似度,并按照算术平均的方式,对任意一对信息之间的第一相似度和第二相似度进行加权计算,得到任意一对信息之间的最终相似度。

在本发明实施例中,基于信息被消费的时间,将每个用户所消费的信息进行排序得到对应的第一信息行为序列,并整合所有第一信息行为序列得到第二信息行为序列。利用协同过滤算法计算第二信息行为序列中每一对具有共现关系的信息之间的第一相似度。利用拓扑图和图卷积算法,计算任意两条具有共现关系或不具有共现关系的信息之间的第二相似度,结合第一相似度和第二相似度可得到任意两条信息之间的最终相似度,提高计算信息之间相似度的方式所覆盖的信息数量,进而提高信息推荐的准确率。

优选的,结合图4示出的内容,第二计算单元405包括:游走模块、第一处理模块、第二处理模块、第一计算模块、更新模块和第二计算模块,各个模块的执行原理如下:

游走模块,用于利用随机游走算法处理所述拓扑图,得到计算子图;

第一处理模块,用于利用预设的特征矩阵对计算子图中的节点的属性进行处理,得到计算子图中每个节点的初步特征表达。

第二处理模块,用于利用预设的全连接层,对计算子图中每个节点的初步特征表达进行处理,得到计算子图中每个节点的隐藏特征表达。

第一计算模块,用于基于计算子图中每个节点的隐藏特征表达,利用合页损失函数计算相应的损失值。

更新模块,用于若损失值大于等于阈值,根据梯度下降算法更新特征矩阵、计算子图中每个节点的初步特征表达和隐藏特征表达,并返回执行游走模块,直至损失值小于阈值,得到拓扑图中每个节点的最终的隐藏特征表达。

第二计算模块,用于基于拓扑图中每个节点的最终的隐藏特征表达,计算拓扑图中每一对节点之间的第二相似度。

在具体实现中,第二计算模块具体用于:基于拓扑图中每个节点的最终的隐藏特征表达,计算拓扑图中每一对节点之间的余弦距离或欧式距离,将其作为拓扑图中每一对节点之间的第二相似度。

在本发明实施例中,利用图卷积算法,计算拓扑图中每一对节点之间的第二相似度,再结合利用协同过滤算法计算得到的具有共现关系的信息之间的第一相似度,可得到任意两条信息之间的最终相似度,协调过滤算法和图卷积算法进行互补,提高计算信息之间相似度的方式所覆盖的信息数量,进而提高信息推荐的准确率。

优选的,结合图4示出的内容,该系统还包括:

推荐单元,用于获取目标用户最近消费的待处理信息;从第二信息行为序列中查询与待处理信息具有最终相似度的目标信息,并获取待处理信息和目标信息之间的最终相似度;将与待处理信息之间的最终相似度大于相似度阈值的目标信息推荐给目标用户。

综上所述,本发明实施例提供一种确定信息相似度的方法及系统,在计算得到具有共现关系的信息之间的第一相似度的基础上,利用图卷积算法和所构建的拓扑图计算任意两条具有共现关系或不具有共现关系的信息之间的第二相似度,结合第一相似度和第二相似度可得到任意两条信息之间的最终相似度,通过结合两种方式计算信息之间的最终相似度,提高计算相似度的方式所覆盖的信息数量,进而提高信息推荐的准确率。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

相关技术
  • 用于确定相似度信息的装置、用于确定相似度信息的方法、用于确定自相关信息的装置、用于确定互相关信息的装置以及计算机程序
  • 一种确定信息相似度的方法及系统
技术分类

06120112941338