CN103220315A - 在社交网络服务网站中计算用户距离的方法和设备 - Google Patents
在社交网络服务网站中计算用户距离的方法和设备 Download PDFInfo
- Publication number
- CN103220315A CN103220315A CN2012100251547A CN201210025154A CN103220315A CN 103220315 A CN103220315 A CN 103220315A CN 2012100251547 A CN2012100251547 A CN 2012100251547A CN 201210025154 A CN201210025154 A CN 201210025154A CN 103220315 A CN103220315 A CN 103220315A
- Authority
- CN
- China
- Prior art keywords
- users
- distance
- user
- sign
- sns website
- 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.)
- Granted
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明的实施方式涉及在社交网络服务网站中计算用户距离的方法和设备。公开了一种在社交网络服务SNS网站中计算用户距离的方法,该SNS网站包括多个用户,该方法包括:将该多个用户中的每个用户映射到坐标空间中的点,使得该多个用户中任意两个用户在该SNS网站中的距离与对应点在该坐标空间中的距离成比例;以及响应于计算该多个用户中的两个用户之间距离的请求,通过计算该两个用户在该坐标空间中的对应点之间的距离,来计算该两个用户之间的距离。还公开了相应的设备。根据本发明的实施方式,可以更为快速、高效地计算SNS网站中的用户距离。
Description
技术领域
本发明的实施方式总体上涉及网络信息技术领域,更具体地,涉及在社交网络服务网站中计算用户距离的方法和设备。
背景技术
社交网络服务(SNS)网站已经发展为一种重要的网络服务平台。通过SNS网站,用户可以与其他人进行多种形式的交流和互动,完成各种各样的操作。SNS网站是向对特定对象感兴趣或只是一起“闲逛”的人们提供虚拟社区的web站点。在注册和登录之后,社交网络的成员可以通过语音、聊天、即时消息、视频会议和博客等进行通信。社交网络通常向成员提供了联系其他成员的方法。社交网络还可以用作亲自会面的媒介。
当一个人向SNS网站进行了注册并且可能还通过了相关认认证之后,他/她称为该SNS网站的“用户”或“成员”。在SNS网站中,不同的用户之间可以建立连接或关联关系,这种关联关系在SNS网站中通常被称为“好友关系”或简称“好友”。由于SNS网站中的连接通常是双向的(但这不是必须的),因此术语“好友”可能依赖于参照系。而且,用户之间的连接可以是直接连接;但是用户之间的一级或者多级间接连接也是允许的。可以理解,SNS网站中的“好友”并非必须要求用户在现实生活中实际上是朋友,它仅仅表示SNS网站中的关系。
根据用户之间的好友关系,可以计算不同用户在SNS网站中的“距离”。对于SNS网站中的用户A和用户B,二者之间的距离是指从用户A出发,沿具有好友连接的其他用户达到用户B所需的最小连接数目或者跳数。作为示例,参考图1A,图100A表示SNS网站中的用户连接关系,顶点A和B分别对应于SNS网站中的用户A和用户B。假设用户A和B在SNS网站中具有好友关系,则顶点A与B之间的跳数为1,即两个用户之间的距离为1。又如,参见图1B,图100B同样表示SNS网站中的用户关系。从图1B中可见,用户A与B之间没有直接的好友连接关系。此时,从用户A出发沿好友连接到达B的路径包括{A,C,B},{A,C,D,E,B},{A,D,E,B},{A,D,C,B},其中最短路径为{A,C,B}。因此,用户A与B之间的好友跳数为2(即,从A到C,再从C到B),二者之间的距离为2。
在SNS网站中,任意给出两个用户,快速、准确地确定他们之间的距离是有益的。这例如可以用于好友推荐、用户群组划分、提供个性化服务等等多个方面。现有技术中,通常根据图(graph)来计算用户之间的距离。具体而言,可以将SNS网站中的每个用户作为顶点,如果两个用户之间具有直接好友关系(即,距离为1),则对应的两个顶点之间存在边。以此方式,可以利用一个无向图来代表SNS网站中的用户关系。此后,为了计算任何给定用户之间的距离,只需计算图中对应顶点的距离即可。这通常是通过对图执行广度优先搜索(BFS)实现的。
这种方法对于数据规模较小的情况比较方便有效,但是难以处理用户数量众多的大规模SNS网站。例如,中大规模的SNS网站通常拥有数百万、数千万乃至数以亿计的用户,并且用户之间具有复杂的相互关系。在这种情况下,利用图的BFS确定用户距离在计算复杂性、响应时间、资源成本等方面都是很高的,甚至是不可行的。可以理解,一方面,如果计算并且存储所有用户之间的距离,在计算复杂性以及存储资源上都会给系统造成巨大压力。另一方面,如果实时地根据图的BFS来计算用户之间的距离,则很难满足实时响应的要求。
因此,本领域需要一种在SNS网站中更为有效、快速地计算用户距离的技术方案。
发明内容
鉴于以上问题,本发明提出一种在社交网络服务网站中计算用户距离的方法和设备。
在本发明的一个方面,提供一种在社交网络服务SNS网站中计算用户距离的方法,所述SNS网站包括多个用户。所述方法包括:将所述多个用户中的每个用户映射到坐标空间中的点,使得所述多个用户中任意两个用户在所述SNS网站中的距离与对应点在所述坐标空间中的距离成比例;以及响应于计算所述多个用户中的两个用户之间距离的请求,通过计算所述两个用户在所述坐标空间中的对应点之间的距离,来计算所述两个用户之间的距离。
在本发明的另一方面,提供一种在社交网络服务SNS网站中计算用户距离的设备,所述SNS网站包括多个用户,所述设备包括:映射装置,配置用于将所述多个用户中的每个用户映射到坐标空间中的点,使得所述多个用户中任意两个用户在所述SNS网站中的距离与对应点在所述坐标空间中的距离成比例;以及计算装置,配置用于响应于计算所述多个用户中的两个用户之间距离的请求,通过计算所述两个用户在所述坐标空间中的对应点之间的距离,来计算所述两个用户之间的距离。
根据本发明的实施方式,SNS网站中的用户距离不再单纯地依赖对图的BSF完成。与现有技术不同,每个用户被映射至一个特定坐标空间中的点,该映射确保任意两个用户在SNS网站中的距离与其对应点在该坐标空间中的距离成比例(例如,相等)。这样,无需存储每个用户之间的距离,而是仅存储用户以及与之对应的点的坐标。
随后,可以通过计算坐标空间中的点的距离而快速地计算任何SNS网站用户之间的距离。本领域技术人员可以理解,计算坐标空间中的两个点之间的距离在算法复杂性、响应时间以及资源成本等方面均明显优于图的BSF操作。而且,根据本发明的某些实施方式,上述映射可以采用基于标志用户的策略来实现,从而进一步提高效率、降低算法复杂性。
附图说明
通过参考附图阅读下文的详细描述,本发明实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1A和图1B示出了利用图来表示SNS网站中的用户关系的示例;
图2示出了根据本发明一个示例性实施方式的在SNS网站中计算用户距离的方法200的流程图;
图3示出了根据本发明另一示例性实施方式的在SNS网站中计算用户距离的方法300的流程图;
图4示出了根据本发明一个示例性实施方式的在SNS网站中计算用户距离的设备400的框图;以及
图5示出了适合用来实践本发明实施方式的计算机系统500的框图。
在各个附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考附图中示出的若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。
本发明的总体思路是,将SNS网站中的用户映射到一个给定的坐标空间中,使得点之间的距离反映或者至少近似反映用户之间的距离(好友跳数)。这样,即使是将所有用户映射到空间中,也只需计算一次用户之间的距离。这些距离被用于完成映射而无需存储。此后,便可以通过简单地计算点之间的距离来获得任意用户之间的距离,而无需进行复杂的BFS等操作。而且,根据本发明的优选实施方式,无需将所有用户都直接映射到坐标空间中,而只需要映射某些用户即可,其他用户的映射可以通过更为简单的方式完成。以此方式,计算复杂性可以进一步降低。
图1A和图1B示出了以图来表示SNS网站中的用户关系的示意图,已在上文描述。
现在参考图2,其示出了根据本发明一个示例性实施方式的在SNS网站中计算用户距离的方法200的流程图。应当理解,图2中所示的方法200的步骤仅仅是出于说明之目的。方法200可以包括附加的和/或备选的步骤。
方法200开始之后,在步骤S202,将SNS网站中所考虑的多个用户中的每个用户映射到坐标空间中的点,使得多个用户中任意两个用户在SNS网站中的距离与对应点在所述坐标空间中的距离成比例。
根据本发明的实施方式,在步骤S202所考虑的多个用户可以是SNS网站的全部用户,也可以是其一部分。
另外,根据本发明的实施方式,在步骤S202,可以将用户映射到任何适当的坐标空间中。例如,坐标空间可以是黎曼空间或称常曲率空间。特别地,在某些实施方式中,黎曼空间可以是二维或三维欧式空间。备选地,根据另一些实施方式,目标坐标空间可以是非欧空间,例如球面空间或者双曲空间,等等。其他任何适当的目标坐标空间也是可能的。
除其他特性之外,步骤S202处所执行的映射所具有的重要特性在于,其确保任意两个用户在SNS网站中的距离(即,好友跳数)与对应的点在坐标空间中的距离成比例,并且比例的数值是已知的或者可获得的。
特别地,步骤S202处执行的映射可以是保距映射,即,使得用户在SNS网站中的距离与对应点在坐标空间中的距离相等。例如,如果两个用户在SNS网站中的距离为3,则使得对应的两个点在坐标空间中的距离(例如,欧几里得距离)也是3或者近似为3。在此方面,任何目前已知或者将来开发的保距映射均可与本发明的实施方式结合使用。
根据本发明的实施方式,映射过程可以视为在目标坐标空间中构建一个适当的曲面,使得与用户对应的点处于该曲面上(在误差范围内),并且任意两个点之间的距离与对应用户在SNS网站中的好友跳数成比例。这是一个曲面拟合问题,因此任何目前已知或将来开发的适当多维曲面拟合算法均可与本发明的实施方式结合使用。
例如,可以将用户在SNS网站中的距离(例如,通过图的BSF操作获得)作为已知量,将点在坐标空间中的坐标作为未知量,通过求解多维参数优化问题来实现上述拟合曲面的构建,从而完成映射。作为示例,可以采用Downhill Simplex算法求解这样的多维参数优化问题。关于Downhill Simplex算法的详细内容,可参见如下文献:Nelder,J.A.,and Mead,R.A simplex method for function minimization.The Computer Journal,7,4(Jan.1965),308-313。其他方法也是可行的,诸如Quasi-Newton方法、共轭梯度算法、Box Constraints优化方法、模拟退火算法等,本发明的范围在此方面不受限制。此外,如本领域已知的,上述这些多维优化算法可能存在一定的误差。映射的容差可由用户设置,并且是可以优化和更新的。
特别地,在步骤S202处,可以通过例如求解多维参数优化问题将所考虑的所有用户映射到坐标空间中。备选地,也可以仅从这些用户中选择某些具有代表性的用户执行映射。而后,其他用户向坐标空间中点的映射可以根据他们与代表性用户之间的关系,而直接在坐标空间中简单地确定。这还将在下文参考图3详述。
注意,在步骤S202的映射完成之后,只需要记录与每个用户对应的点的坐标,而无需记录每两个用户之间的距离。这种存储例如可以通过数据库、结构化文件、文本文件等各种适当的结构来实现。作为示例,可以通过表(table)结构来存储用户与其对应点的信息,如下所示。这节省了存储空间。
用户标识 | 对应点的坐标 |
返回图2,在步骤S202之后,方法200进行到步骤S204,在此响应于计算两个用户之间距离的请求,通过计算这两个用户在坐标空间中的对应点之间的距离,来计算所述两个用户之间的距离。
当需要计算两个给定用户在SNS网站的距离时,可以检索到与这两个用户对应的点(例如,通过上面示出的表),而后使用目标坐标空间中的距离公式计算这两个点之间的距离。所得的距离即可被用作用户之间的距离(可能需要取整运算)。
可以理解,在给定的坐标空间中,可以按照相应的距离计算公式通过简单的数值计算而获得对应点之间的距离。例如,在欧式空间、球面空间、双曲空间等各种空间中,计算两点距离的公式都是已知的。由于该距离与用户在SNS网站中的距离是成比例的(例如,是相等的),可以直接获得用户之间的SNS网站距离,即,好友跳数。与执行对图的BFS相比,这在计算复杂性、时间、资源等方面都是有利的。
特别地,如上所述,在步骤S202的映射中,在容差范围内可能允许一定的误差存在。因此,在步骤S204处在距离空间中计算得到的两点间距离可能不是整数。这时可以通过任何适当的取整手段(例如,四舍五入、截断取整等)来获得整数结果,并且将该整数结果用作对应用户在SNS网站中的距离。
方法200在步骤S204完成之后结束。
下面参考图3,其示出了根据本发明一个示例性实施方式的在SNS网站中计算用户距离的方法300的流程图。方法300可以示为上文参考图2描述的方法200的一个具体实施方式。应当理解,图3中所示的方法300的步骤仅仅是出于说明之目的。方法300可以包括附加的和/或备选的步骤。
与图2描述的情况类似,方法300所考虑的多个用户可以是SNS网站的全部用户,也可以是其中的一部分用户。
方法300开始之后,在步骤S302,在此选择多个用户中的标志用户(landmark users)。标志用户是SNS网站中在用户连接关系方面具有代表性的用户。根据本发明的某些实施方式,标志用户所具有的好友的数目超过预定的阈值。如果以图来表示SNS中的用户关系,价(即,与之连接的边的数目)大于预定阈值的顶点所对应的用户是标志用户。备选地,标志用户也可以由用户指定。
根据本发明的某些实施方式,在步骤S302处,标志用户可以随机选择。例如,在所有好友数目大于阈值的用户中随机地选择特定数目的用户。
另外,在某些优选实施方式中,在步骤S302选择的多个标志用户中,任意两个标志用户在所述SNS网站中的距离至少为2。换言之,在所选择的标志用户中,任何两个标志用户之间不具有直接的好友连接关系。以此方式,可以确保标志用户之间的间隔,以便使得选择的多个标志用户尽可能广泛地散布在用户图中。这样,标志用户可以作为支持点或者锚点而尽可能地覆盖SNS网络中的所有用户。
接下来,方法300进行到步骤S304,在此通过求解多维参数优化问题将步骤S302中选出的标志用户映射到给定坐标空间中的对应点。
为此,首先需要计算标志用户彼此在SNS网站中的距离。根据本发明的实施方式,实践表明,对于千万至亿量级的用户而言,只需要选择数百个标志用户即可。因此,利用图的BFS或者其他适当手段计算几百个用户彼此之间的距离,在时间和计算复杂性上是可接受的。
基于标志用户之间SNS网站中的距离,可以将他们映射到坐标空间中的点。例如,在本发明的某些实施方式中,可以使用DownhillSimplex算法来确定每个用户相对应的点在坐标空间中的坐标。
如上所述,这个过程可以视为在误差范围内构建坐标空间中拟合曲面,使得每个对应点落在曲面上,并且相互之间的距离与相应用户在SNS网站中的距离成比例。根据Downhill Simplex的原理,可以通过使得每个标志用户的对应点的预测误差的平方和最小来求解出每个点的坐标。
注意,使用Downhill Simplex算法仅仅是示例性的。构建坐标空间中的拟合曲面从本质上说可以转化为多维参数优化问题。由此,任何目前已知或者将来开发的适当算法均可与本发明的实施方式结合使用。
继而,在步骤S306,对于每个其他用户,根据该用户与标志用户在所述SNS网站中的距离,在坐标空间中计算对应点的坐标。本领域技术人员可以理解,通过步骤S304的操作,相当于已经在目标坐标空间中构建了一个拟合曲面。此时,对于其他用户中的每个用户,由于他与所有标志用户之间的距离是可获得的,因此对应点与曲面上的若干已知点之间的距离是已知的。因此,可以直接在坐标空间中容易地求得对应点在拟合曲面上的坐标。
通过步骤S302-S306,不是利用多维参数优化来影射所有用户,而是仅将一部分用户这样影射。对于其他用户,基于他们与已影射用户之间的距离关系,可以在坐标空间中求得对应点的坐标。这样做可以进一步提高计算的效率,降低算法复杂性。
接下来,方法300进行到步骤S308,在此响应于计算两个用户之间距离的请求,通过计算坐标空间中对应点之间的距离来计算用户之间的距离。这对应于上文描述的方法200中的步骤S204,不再赘述。
方法300在步骤S308完成之后结束。
通过采用方法300的实施方式,仅需要利用多维参数最小化将少数的标志用户首先映射到坐标空间,由此构建多维拟合曲面。随后,根据其他用户与标志用户在SNS网站中的距离,便可以更为快速、简单地确定其在坐标空间中的对应点。
利用方法200和300的实施方式,在映射完成之后,只需要记录与每个用户对应的点的坐标,而无需记录每两个用户之间的距离。这节省了存储空间。当需要计算两个给定用户在SNS网站的距离时,可以检索到与这两个用户对应的点,而后使用目标坐标空间中的距离公式计算这两个点之间的距离。所得的距离即可被用作用户之间的距离(可能需要取整运算)。
下面参考图4,其示出了根据本发明一个实施方式的在SNS网站中计算用户距离的设备400的框图。
如图所示,在用于在社交网络服务SNS网站中计算用户距离的设备400中,包括:映射装置402,配置用于将SNS网站的多个用户中的每个用户映射到坐标空间中的点,使得所述多个用户中任意两个用户在所述SNS网站中的距离与对应点在所述坐标空间中的距离成比例;以及计算装置404,配置用于响应于计算所述多个用户中的两个用户之间距离的请求,通过计算所述两个用户在所述坐标空间中的对应点之间的距离,来计算所述两个用户之间的距离。
根据本发明的某些可选实施方式,其中所述映射装置402包括:选择装置,配置用于选择所述多个好友中的多个标志用户,每个标志用户在所述SNS网站中的好友数目超过预定阈值;第一映射装置,配置用于将每个标志用户映射至所述坐标空间的点,使得任意两个标志用户在所述SNS网站中的距离等于对应点之间的距离;以及第二映射装置,配置用于根据除所述多个标志用户之外的每个用户与所述多个标志用户在所述SNS网站中的距离,在所述坐标空间中确定与所述每个用户对应的点。
根据本发明的某些可选实施方式,所述选择装置包括:第一选择装置,配置用于选择所述多个标志用户使得任意两个标志用户在所述SNS网站中的距离至少为2。
根据本发明的某些可选实施方式,所述选择装置包括:第二选择装置,配置用于从所述多个用户中随机选择所述标志用户。
根据本发明的某些可选实施方式,所述映射装置402包括:求解装置,配置用于通过求解多维参数优化问题实现所述映射。根据本发明的某些可选实施方式,所述求解装置包括:第一求解装置,配置用于利用Downhill Simplex算法求解所述多维参数优化问题。
根据本发明的某些可选实施方式,所述坐标空间是非欧几里得空间。
注意,为清晰起见,在图4中没有示出可选的装置以及各个装置所包含的子装置。然而,应当理解,设备400中记载的各个装置分别对应于上文参考图2和图3描述的方法200和300中的各个步骤。由此,上文针对方法200和300描述的操作和特征同样适用于设备400及其中包含的装置,在此不再赘述。
还应当理解,设备400可以利用各种方式实现。例如,在某些实施方式中,设备400可以利用软件和/或固件来实现。备选地或附加地,设备400可以部分地或者完全地基于硬件来实现。例如,设备400可以实现为集成电路(IC)芯片或专用集成电路(ASIC)。设备400也可以实现为片上系统(SOC)。现在已知或者将来开发的其他方式也是可行的,本发明的范围在此方面不受限制。
图5示出了适合用来实践本发明实施方式的计算机系统500的框图。如图所示,计算机系统500可以包括:CPU(中央处理单元)501、RAM(随机存取存储器)502、ROM(只读存储器)503、系统总线504、硬盘控制器505、键盘控制器506、串行接口控制器507、并行接口控制器508、显示控制器509、硬盘510、键盘511、串行外部设备512、并行外部设备513和显示器514。在这些设备中,与系统总线504耦合的有CPU 501、RAM 502、ROM 503、硬盘控制器505、键盘控制器506、串行控制器507、并行控制器508和显示控制器509。硬盘510与硬盘控制器505耦合,键盘511与键盘控制器506耦合,串行外部设备512与串行接口控制器507耦合,并行外部设备513与并行接口控制器508耦合,以及显示器514与显示控制器509耦合。应当理解,图5所述的结构框图仅仅为了示例的目的而示出的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况而增加或者减少某些设备。
如上所述,设备400可以实现为纯硬件,例如芯片、ASIC、SOC等。这些硬件可以集成在计算机系统400中。此外,本发明的实施方式也可以通过计算机程序产品的形式实现。例如,参考图2和图3描述的方法200和300可以通过计算机程序产品来实现。该计算机程序产品可以存储在例如图5所示的RAM 504、ROM 504、硬盘510和/或任何适当的存储介质中,或者通过网络从适当的位置下载到计算机系统500上。计算机程序产品可以包括计算机代码部分,其包括可由适当的处理设备(例如,图5中示出的CPU 501)执行的程序指令。所述程序指令至少可以包括用于实现方法200和300的步骤的指令。
上文已经结合若干具体实施方式阐释了本发明的精神和原理。根据本发明的实施方式,SNS网站中的用户距离不再单纯地依赖对图的BSF完成。与现有技术不同,每个用户被映射至一个特定坐标空间中的点,该映射确保任意两个用户在SNS网站中的距离与其对应点在该坐标空间中的距离成比例(例如,相等)。这样,无需存储每个用户之间的距离,而是仅存储用户以及与之对应的点的坐标。随后,可以通过计算坐标空间中的点的距离而快速地计算任何SNS网站用户之间的距离。本领域技术人员可以理解,计算坐标空间中的两个点之间的距离在算法复杂性、响应时间以及资源成本等方面均明显优于图的BSF操作。
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
说明书中提及的通信网络可以包括各类网络,包括但不限于局域网(“LAN”),广域网(“WAN”),根据IP协议的网络(例如,因特网)以及端对端网络(例如,ad hoc对等网络)。
应当注意,尽管在上文详细描述中提及了设备的若干装置或子装置,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明,但是应该理解,本发明并不限于所公开的具体实施方式。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。
Claims (14)
1.一种在社交网络服务SNS网站中计算用户距离的方法,所述SNS网站包括多个用户,所述方法包括:
将所述多个用户中的每个用户映射到坐标空间中的点,使得所述多个用户中任意两个用户在所述SNS网站中的距离与对应点在所述坐标空间中的距离成比例;以及
响应于计算所述多个用户中的两个用户之间距离的请求,通过计算所述两个用户在所述坐标空间中的对应点之间的距离来计算所述两个用户之间的距离。
2.根据权利要求1所述的方法,其中将所述多个用户中的每个用户映射到坐标空间中的点包括:
选择所述多个好友中的多个标志用户,每个标志用户在所述SNS网站中的好友数目超过预定阈值;
将每个标志用户映射至所述坐标空间的点,使得任意两个标志用户在所述SNS网站中的距离等于对应点之间的距离;以及
根据除所述多个标志用户之外的每个用户与所述多个标志用户在所述SNS网站中的距离,在所述坐标空间中确定与所述每个用户对应的点。
3.根据权利要求2所述的方法,其中选择所述多个好友中的多个标志用户包括:
选择所述多个标志用户使得任意两个标志用户在所述SNS网站中的距离至少为2。
4.根据权利要求2所述的方法,其中选择所述多个好友中的多个标志用户包括:
从所述多个用户中随机选择所述标志用户。
5.根据权利要求1所述的方法,其中将所述多个用户中的每个用户映射到坐标空间中的点包括:
通过求解多维参数优化问题实现所述映射。
6.根据权利要求5所述的方法,其中通过求解多维参数优化问题实现所述映射包括:利用Downhill Simplex算法求解所述多维参数优化问题。
7.根据权利要求1所述的方法,其中所述坐标空间是非欧几里得空间。
8.一种在社交网络服务SNS网站中计算用户距离的设备,所述SNS网站包括多个用户,所述设备包括:
映射装置,配置用于将所述多个用户中的每个用户映射到坐标空间中的点,使得所述多个用户中任意两个用户在所述SNS网站中的距离与对应点在所述坐标空间中的距离成比例;以及
计算装置,配置用于响应于计算所述多个用户中的两个用户之间距离的请求,通过计算所述两个用户在所述坐标空间中的对应点之间的距离,来计算所述两个用户之间的距离。
9.根据权利要求8所述的设备,其中所述映射装置包括:
选择装置,配置用于选择所述多个好友中的多个标志用户,每个标志用户在所述SNS网站中的好友数目超过预定阈值;
第一映射装置,配置用于将每个标志用户映射至所述坐标空间的点,使得任意两个标志用户在所述SNS网站中的距离等于对应点之间的距离;以及
第二映射装置,配置用于根据除所述多个标志用户之外的每个用户与所述多个标志用户在所述SNS网站中的距离,在所述坐标空间中确定与所述每个用户对应的点。
10.根据权利要求9所述的设备,其中所述选择装置包括:
第一选择装置,配置用于选择所述多个标志用户使得任意两个标志用户在所述SNS网站中的距离至少为2。
11.根据权利要求9所述的设备,其中所述选择装置包括:
第二选择装置,配置用于从所述多个用户中随机选择所述标志用户。
12.根据权利要求8所述的设备,其中所述映射装置包括:
求解装置,配置用于通过求解多维参数优化问题实现所述映射。
13.根据权利要求12所述的设备,其中所述求解装置包括:
第一求解装置,配置用于利用Downhill Simplex算法求解所述多维参数优化问题。
14.根据权利要求8所述的设备,其中所述坐标空间是非欧几里得空间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210025154.7A CN103220315B (zh) | 2012-01-19 | 2012-01-19 | 在社交网络服务网站中计算用户距离的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210025154.7A CN103220315B (zh) | 2012-01-19 | 2012-01-19 | 在社交网络服务网站中计算用户距离的方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103220315A true CN103220315A (zh) | 2013-07-24 |
CN103220315B CN103220315B (zh) | 2018-01-05 |
Family
ID=48817775
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210025154.7A Active CN103220315B (zh) | 2012-01-19 | 2012-01-19 | 在社交网络服务网站中计算用户距离的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103220315B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239423A (zh) * | 2014-08-22 | 2014-12-24 | 北京盛世光明软件股份有限公司 | 一种人脉关系距离获取方法及系统 |
CN112949296A (zh) * | 2019-12-10 | 2021-06-11 | 医渡云(北京)技术有限公司 | 基于黎曼空间的词嵌入方法和装置、介质及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101044504A (zh) * | 2004-10-19 | 2007-09-26 | 雅虎公司 | 用于基于位置的社交网络的系统和方法 |
US20090222304A1 (en) * | 2008-03-03 | 2009-09-03 | Yahoo! Inc. | Method and Apparatus for Social Network Marketing with Advocate Referral |
CN101997917A (zh) * | 2010-11-09 | 2011-03-30 | 中国电信股份有限公司 | 社会网络服务网络系统中用户位置提示处理方法与系统 |
CN102035846A (zh) * | 2010-12-22 | 2011-04-27 | 北京航空航天大学 | 一种基于关系声明的社交网用户身份认证方法 |
CN102075359A (zh) * | 2011-01-17 | 2011-05-25 | 北京瑞汛世纪科技有限公司 | 一种基于网络坐标的服务器部署方法及装置 |
-
2012
- 2012-01-19 CN CN201210025154.7A patent/CN103220315B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101044504A (zh) * | 2004-10-19 | 2007-09-26 | 雅虎公司 | 用于基于位置的社交网络的系统和方法 |
US20090222304A1 (en) * | 2008-03-03 | 2009-09-03 | Yahoo! Inc. | Method and Apparatus for Social Network Marketing with Advocate Referral |
CN101997917A (zh) * | 2010-11-09 | 2011-03-30 | 中国电信股份有限公司 | 社会网络服务网络系统中用户位置提示处理方法与系统 |
CN102035846A (zh) * | 2010-12-22 | 2011-04-27 | 北京航空航天大学 | 一种基于关系声明的社交网用户身份认证方法 |
CN102075359A (zh) * | 2011-01-17 | 2011-05-25 | 北京瑞汛世纪科技有限公司 | 一种基于网络坐标的服务器部署方法及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239423A (zh) * | 2014-08-22 | 2014-12-24 | 北京盛世光明软件股份有限公司 | 一种人脉关系距离获取方法及系统 |
CN112949296A (zh) * | 2019-12-10 | 2021-06-11 | 医渡云(北京)技术有限公司 | 基于黎曼空间的词嵌入方法和装置、介质及设备 |
CN112949296B (zh) * | 2019-12-10 | 2024-05-31 | 医渡云(北京)技术有限公司 | 基于黎曼空间的词嵌入方法和装置、介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103220315B (zh) | 2018-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105338619B (zh) | 定位方法及装置 | |
CN102637183A (zh) | 用于在社交网络中向用户推荐好友的方法和设备 | |
JP2014519097A (ja) | アイテムを推薦する方法およびシステム | |
WO2016134580A1 (zh) | 一种数据查询方法及装置 | |
CN102135999A (zh) | 用户可信度和项目最近邻相结合的互联网推荐方法 | |
CN109947874B (zh) | 移动轨迹的聚合方法、装置及设备 | |
CN107767155A (zh) | 一种评估用户画像数据的方法及系统 | |
CN104408183B (zh) | 数据系统的数据导入方法和装置 | |
CN107659978B (zh) | 用于识别无线接入点的方法与设备 | |
CN110472143A (zh) | 一种信息推送方法、装置、可读存储介质及终端设备 | |
CN103218377A (zh) | 辅助用户选择兴趣点的方法和设备 | |
CN103220315A (zh) | 在社交网络服务网站中计算用户距离的方法和设备 | |
CN111552715B (zh) | 用户查询方法和装置 | |
TWI506452B (zh) | 雲端平台及其資料交換方法 | |
CN103514224A (zh) | 数据库中的数据处理方法、数据查询方法和相应装置 | |
US9449110B2 (en) | Geotiles for finding relevant results from a geographically distributed set | |
CN109981755A (zh) | 图像识别方法、装置和电子设备 | |
CN105677843A (zh) | 一种自动获取宗地四至属性的方法 | |
JP6679415B2 (ja) | 選択装置、選択方法および選択プログラム | |
Pang et al. | Regularisation parameter selection via bootstrapping | |
US11061876B2 (en) | Fast aggregation on compressed data | |
CN103488651A (zh) | 用于获得成员之间的关系路径的方法和装置 | |
CN110059272A (zh) | 一种页面特征识别方法和装置 | |
CN106033449B (zh) | 项集挖掘方法及装置 | |
US20240256121A1 (en) | Managing data associated with a user-based storage site |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |