一种中间人推荐方法和系统与流程

文档序号:11236608阅读:350来源:国知局
一种中间人推荐方法和系统与流程

本发明涉及互联网社交领域,尤其涉及一种中间人推荐方法和系统。



背景技术:

社交是人类除了吃、住、行之外的另一大基本需求。近年来,以人为中心的在线社交系统得到了长足的发展,如facebook、qq、微信等。现实社会中,用户社交的一个需求是通过一个或多个中间人去结识用户感兴趣的目标用户,从而建立新的社交关系。但是,由于个体用户对社交关系链认识的局限性,无法快速和准确地确定可能的中间人。现有的社交系统提供好友推荐功能,但仅是向用户推荐可能感兴趣的好友,并为提供对给定目标用户的中间人推荐能力。因此,为了能超越个体用户社交链认识的局限性,快速地为用户推荐中间人,以便加速用户与感兴趣的目标用户的社交关系建立速度,提高用户与感兴趣的目标用户的社交关系的建立成功率。



技术实现要素:

本发明为解决上述技术问题,提供一种中间人推荐方法和系统,可以超越个体用户社交链认识的局限性,快速地为用户推荐中间人,加速用户与感兴趣的目标用户的社交关系建立速度,提高用户与感兴趣的目标用户的社交关系的建立成功率。所述技术方案如下:

一方面,本发明提出了一种中间人推荐方法,包括下述步骤:

接收请求用户的中间人推荐请求;

对原始的社交网络拓扑进行按需过滤;

基于过滤后的社交网络拓扑数据计算请求用户和目标用户的最短跳数和最短路径;

根据最短跳数和最短路径构造中间人推荐结果;

向请求用户返回中间人推荐结果。

其中,所述中间人推荐请求包括请求用户和目标用户的标识,以及可选的连接跳数约束和连接强度约束。

其中,所述对原始的社交网络拓扑进行按需过滤,包括:

当中间人推荐请求包括连接强度约束时,从原始的社交网络拓扑中删除 所有连接强度小于连接强度约束的连接,将余下的子图作为过滤后的社交网络拓扑;

当中间人推荐请求不包括连接强度约束时,将原始的社交网络拓扑作为过滤后的社交网络拓扑;

其中,所述基于过滤后的社交网络拓扑计算请求用户和目标用户的最短跳数和最短路径,包括:

将过滤后的社交网络拓扑视作无权图;

基于最短路径算法计算请求用户和目标用户之间的最短路径;

在最短路径计算过程中记录每个节点的所有最短路径前驱节点;

其中,所述根据最短跳数和最短路径构造中间人推荐结果,包括:

当请求用户和目标用户之间的最短跳数大于中间人推荐请求的连接跳数约束时,中间人推荐结果为空;

当请求用户和目标用户之间的最短跳数不大于中间人推荐请求的连接跳数约束时,根据每个节点的前驱节点构造请求用户和目标用户之间的所有最短路径,根据每条最短路径上的中间节点构造中间人推荐序列,将所有的中间人推荐序列或其子集作为中间人推荐结果。

另一方面,本发明提出一种中间人推荐系统,包括:

中间人推荐服务客户端;

中间人推荐服务端;

用户社交网络拓扑数据库。

其中,所述中间人推荐服务客户端、中间人推荐服务端和用户社交网络拓扑数据库按下述方式连接和交互:

请求用户通过中间人推荐服务客户端向中间人推荐服务端发送中间人推荐请求;

中间人推荐服务端接收中间人推荐请求,获取请求用户的标识、目标用户的标识和可选的连接跳数约束及连接强度约束;

中间人推荐服务端查询用户社交网络拓扑数据库,根据连接强度约束对社交网络拓扑进行过滤,基于过滤后的社交网络拓扑计算请求用户和目标用户之 间满足连接跳数约束的最短路径,并获取一条或多条最短路径上的用户构成的一个或多个中间人序列作为中间人推荐结果;

中间人推荐服务端将中间人推荐结果封装在响应消息中发送给请求用户的中间人推荐服务客户端;

中间人推荐服务客户端接收到响应消息后通过适当的方式呈现中间人推荐结果。

本发明采用以上技术方案与现有技术相比,具有以下技术效果:

通过本发明,能超越个体用户社交链认识的局限性,快速地为用户推荐中间人,以便加速用户与感兴趣的目标用户的社交关系建立速度,提高用户与感兴趣的目标用户的社交关系的建立成功率。

本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

图1示出了依据本发明一实施方式的中间人推荐方法流程图。

图2示出了依据本发明一实施方式的中间人推荐方法示意图。

图3示出了依据本发明一实施方式的中间人推荐方法示意图。

图4示出了依据本发明一实施方式的中间人推荐系统关系图。

具体实施方式

下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、 整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。

图1示出了本发明一实施方式的中间人推荐方法,包括:

首先,希望获得中间人推荐服务的请求用户首先确定目标用户,构造中间人推荐请求。中间人推荐请求必须包括请求用户和目标用户的标识,可选地,中间人推荐请求可以包括连接跳数约束,用以限制返回的请求用户与目标用户之间的中间人数量。此外,中间人推荐请求还可以包括其它过滤约束,如连接强度约束,即仅当请求用户和目标用户路径上所有连接的强度都不低于连接强度约束时,才返回该中间人序列作为中间人推荐结果。请求用户然后将该中间人推荐请求发送给中间人推荐服务,由中间人推荐服务获取该中间人推荐请求。

其次,中间人推荐服务基于原始的社交网络拓扑和中间人推荐请求的连接强度约束对原始的社交网络拓扑进行过滤,得到过滤后的社交网络拓扑。若中间人推荐请求不存在连接强度约束,则过滤后的社交网络拓扑即为原始的社交网络拓扑。若中间人推荐请求存在连接强度约束k,则假设原始的社交网络拓扑为g,记边集m={e|strenth(e)<k},即所有连接强度小于连接强度约束k的边构成的集合,过滤后的社交网络拓扑为g=g-m。

之后,将过滤后的社交网络拓扑看成无权图,依据dijstra算法或广度优先遍历算法等最短路径算法计算请求用户节点和目标用户节点之间的最短路径跳数和所有最短路径,并在计算过程中记录每个节点在最短路径上的所有前驱节点集合。

最后,构造中间人推荐结果。如果最短路径跳数大于连接跳数约束,则中间 人推荐结果为空;如果最短路径跳数不大于连接跳数约束,则根据最短路径计算过程中记录的前驱节点构造出所有的最短路径,并基于每条最短路径上从请求用户到目标用户之间的中间节点构造中间人推荐序列,可以将所有的中间人推荐序列作为中间人推荐结果,或者也可以将所有的中间人推荐序列的一个子集作为中间人推荐结果。当社交网络拓扑存在连接强度属性时,一个选择中间人推荐序列的子集的方法可以是基于请求用户节点src和目标用户节点dest之间的最短路径path(src,dest)的连接强度,按照该路径上的最小连接强度(即min{strength(e)|e∈path(src,dest)}的高低选择中间人推荐序列,优先选择最小连接强度高的路径上的中间人序列作为中间人推荐结果的成员。

最后,将中间人推荐结果返回给请求用户,由请求用户对中间人推荐结果进行呈现。

图2示出了依据本发明一实施方式的中间人推荐方法示意图。图中给出了社交网络拓扑关系,该拓扑中的连接关系没有连接强度属性。用户1为发出中间人推荐请求的用户,其目标用户为用户6。当用户1的推荐请求的连接跳数约束大于等于2时,因为用户1和用户6之间的最短路径长度为2,因此中间人推荐结果不为空。根据dijstra最短路径算法或广度优先遍历算法,在计算最短路径的过程中记录所有的前驱节点。最后,从节点1开始的最短路径计算结束后,除却节点1外,其它节点的前驱节点如下:{2:1},{3:1},{4:2,3},{5:3},{6:4,5},跟据该前驱节点记录,可以反向构造出从节点1到节点6的3条最短路径,分别为:1-2-4-6,1-3-4-6,1-3-5-6。据此,满足条件的中间人序列集合为:{{2,4},{3,4},{3,5}}。具体的,可以将所有满足条件的中间人序列都作为中间人推荐结果返回给用户1,或者选择其中的一个子集作为中间人推荐结果返回给用户1。如果用户1在中间人推荐请求时指定的连接跳数约束为1,即仅希望通过1个中间人就能结识用户6,则由于用户1到用户6的最短距离为2,因此,不存在满足约束条件的中间人推荐序列。

图3示出了依据本发明一实施方式的中间人推荐方法示意图。图3(a)中给出了社交网络拓扑关系,除了基本的连接关系,该拓扑还包括连接的连接强度。与图2一样,用户1为中间人推荐请求发起者,目标用户为用户6。与图2不同的是,用户1的中间人推荐请求除了包括连接跳数约束不大于2之外,还包括连 接强度约束,例如,用户1要求推荐的社交路径上所有连接的连接强度不低于50。在这一连接强度约束下,本发明所提出的中间人推荐方法首先对社交网络拓扑进行过滤,删除拓扑中所有连接强度低于50的连接。过滤后的拓扑如图3(b)所示。在此基础上,执行与图2一样的最短路径计算,最后得出的满足条件的中间人推荐序列集合为{{3,4},{3,5}}。

图4示出了依据本发明一实施方式的中间人推荐系统,包括:中间人推荐服务客户端、中间人推荐服务端、用户社交网络拓扑数据库。其中,中间人推荐服务客户端通过互联网域中间人推荐服务端相连,中间人推荐服务端可以通过网络与用户社交网络拓扑数据库相连,也可以两者位于同一个物理实体。中间人推荐服务客户端接收用户的中间人推荐输入请求,构造中间人推荐请求,将中间人推荐请求通过网络发送至中间人推荐服务端;中间人推荐服务端接收中间人推荐请求,提取出中间人推荐请求中的请求用户和目标用户标识,以及可能的约束限制,如连接跳数约束和连接强度约束,根据用户社交网络拓扑数据库计算请求用户和目标用户之间满足约束限制的最短路径,并据此构造中间人推荐结果,将中间人推荐结果返回给中间人推荐服务客户端。

通过本发明所提出的技术方案,能超越个体用户社交链认识的局限性,快速地为用户推荐中间人,以便加速用户与感兴趣的目标用户的社交关系建立速度,提高用户与感兴趣的目标用户的社交关系的建立成功率。

本技术领域技术人员可以理解,本发明可以涉及用于执行本申请中所述操作中的一项或多项操作的设备。所述设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备,所述通用计算机有存储在其内的程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、cd‐rom、和磁光盘)、随即存储器(ram)、只读存储器(rom)、电可编程rom、电可擦rom(eprom)、电可擦除可编程rom(eeprom)、闪存、磁性卡片或光线卡片。可读介质包括用于以由设备(例如,计算机)可读的形式存储或传输信息的任何组织机构。例如,可读介质包括随即存储器(ram)、只读存储器(rom)、磁盘存储介质、光学存储 介质、闪存装置、以电的、光的、声的或其他的形式传播的信号(例如载波、红外信号、数字信号)等。

本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来生成机器,从而通过计算机或其他可编程数据处理方法的处理器来执行的指令创建了用于实现结构图和/或框图和/或流图的框或多个框中指定的方法。

本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。

以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1