好友推荐方法、电子设备及计算机可读存储介质与流程

文档序号:29468715发布日期:2022-04-02 04:12阅读:67来源:国知局
好友推荐方法、电子设备及计算机可读存储介质【
技术领域
:】1.本技术涉及互联网技术,尤其涉及一种好友推荐方法、电子设备及计算机可读存储介质。
背景技术
::2.近年来,随着互联网技术的迅速发展,社交平台的使用在人们的日常生活中越来越普遍,使得人们越来越习惯通过社交网络来发言、聊天、交友,在这种情况下诞生了社交网络交友模式。为了让用户交到志同道合的朋友,目前的社交网络交友模式还提供好友推荐功能,利用用户之间的兴趣爱好和联系进行好友推荐,社交平台上的好友推荐功能作为信息过滤的重要手段,可以通过社区划分向用户推荐具有相同或相似兴趣的用户。3.现有技术中,大多数社交平台是基于某一个特征,节点重要性、共同好友数以及最短路径等,来对目标用户进行好友推荐。例如:qq是根据目标用户与其他用户之间的共同好友数进行好友推荐。微信提供了“摇一摇”功能进行基于地域距离的好友推荐。4.在实现本发明的过程中,本发明人通过研究发现,现有技术中大多数社交平台以单一特征进行好友推荐的方法,在一定程度上存在局限性和片面性,从而导致好友推荐的准确性较低,无法实现有效的好友推荐,同时可能对被推荐用户带来干扰,降低了用户体验。技术实现要素:5.本技术的多个方面提供一种好友推荐方法、电子设备及计算机可读存储介质,用以提高好友推荐的准确性。6.本技术的一方面,提供一种好友推荐方法,包括:7.针对用户信息库中的第一用户,获取所述用户信息库中的第二用户;其中,所述第二用户为所述用户信息库中除所述第一用户之外的用户;8.获取所述第一用户对所述第二用户的满意度信息,以及获取所述第二用户对所述第一用户的满意度信息;9.获取所述第一用户与所述第二用户之间的社交有趣性信息;10.基于所述第一用户对所述第二用户的满意度信息、所述第二用户对所述第一用户的满意度信息和所述社交有趣性信息,获取所述第二用户相对于所述第一用户的社交有效信息;11.响应于所述社交有效信息满足预设条件,将所述第二用户确定为所述第一用户的推荐好友,以将所述第二用户推荐给所述第一用户。12.本技术的另一方面,提供一种电子设备,所述电子设备包括:13.一个或多个处理器;14.存储装置,用于存储一个或多个程序,15.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述一方面所提供的视频重复性识别。16.本技术的另一方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述一方面所提供的视频重复性识别。17.本公开的又一方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的方面和任一可能的实现方式的方法。18.由上述技术方案可知,在本技术一些实施例中,通过针对用户信息库中的第一用户,获取用户信息库中除第一用户之外的第二用户,获取第一用户对第二用户的满意度信息、第二用户对第一用户的满意度信息、以及第一用户与第二用户之间的社交有趣性信息,然后,基于第一用户对第二用户的满意度信息、第二用户对第一用户的满意度信息和所述社交有趣性信息,获取第二用户相对于第一用户的社交有效信息,在所述社交有效信息满足预设条件时,将第二用户确定为第一用户的推荐好友,以将第二用户推荐给第一用户。由于同时考虑第一用户对第二用户的满意度信息、第二用户对第一用户的满意度信息和所述社交有趣性信息,来获取第二用户相对于第一用户的社交有效信息,可以从多个维度全面确定第二用户作为第一用户的有效社交好友的可能性,从而提高了好友推荐的准确性,能够实现有效的好友推荐,进而促进有效社交。19.另外,采用本技术所提供的技术方案,只有在所述社交有效信息满足预设条件时,才将第二用户确定为第一用户的推荐好友、将第二用户推荐给第一用户,可以有效避免无效的好友推荐对用户带来干扰,有利于提高用户体验。【附图说明】20.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。21.图1为本技术一实施例提供的好友推荐方法的流程示意图;22.图2为本技术另一实施例提供的好友推荐方法的流程示意图;23.图3为本技术又一实施例提供的好友推荐方法的流程示意图;24.图4为本技术再一实施例提供的好友推荐方法的流程示意图;25.图5为适于用来实现本技术实施方式的示例性计算机系统/服务器12的框图。【具体实施方式】26.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其它实施例,都属于本技术保护的范围。27.需要说明的是,本技术实施例中所涉及的终端可以包括但不限于手机、个人数字助理(personaldigitalassistant,pda)、无线手持设备、平板电脑(tabletcomputer)、个人电脑(personalcomputer,pc)、mp3播放器、mp4播放器、可穿戴设备(例如,智能眼镜、智能手表、智能手环等)等。28.另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。29.如
背景技术
:中所述,各现有技术中大多数社交平台以单一特征进行好友推荐的方法,在一定程度上存在局限性和片面性,从而无法导致好友推荐的准确性较低,无法实现有效的好友推荐,同时可能对被推荐用户带来干扰,降低了用户体验。30.因此,亟需提供一种好友推荐方法、电子设备及计算机可读存储介质,用以提高好友推荐的准确性。31.本技术的设计思想在于解决现有技术中以单一特征进行好友推荐的方法导致的好友推荐的准确性较低、无法实现有效的好友推荐的问题。本技术通过获取第一用户对第二用户的满意度信息、第二用户对第一用户的满意度信息、以及第一用户与第二用户之间的社交有趣性信息,然后,基于第一用户对第二用户的满意度信息、第二用户对第一用户的满意度信息和所述社交有趣性信息,获取第二用户相对于第一用户的社交有效信息,据此确定是否将第二用户推荐给第一用户。32.本技术实施例可应用于互联网站、app(例如微信、qq等)等各种社交平台。33.图1为本技术一实施例提供的好友推荐方法的流程示意图,如图1所示。34.101、针对用户信息库中的第一用户,获取用户信息库中的第二用户。35.其中,所述用户信息库为用于存储社交平台上用户信息的数据库。其中的用户信息可以包括以下任意一项或多项:用户的注册信息(例如用户名、用户标识(id)等),用户在社交平台发布的信息(例如视频、朋友圈等),用户上传的信息(例如文档、图片、头像等),用户与社交平台上其他用户的交互信息(例如聊天记录、好友申请通过记录、好友通讯录等),用户对社交平台使用信息(例如在线时长、上下线时间、浏览信息、收藏信息、访问信息、点赞信息等),等等。36.其中,第一用户可以为用户信息库中的任一用户,第二用户可以为用户信息库中除第一用户之外的任一用户。本技术中,用户可以用户id来标识。37.可选地,在其中一些实现方式中,可以依次从用户信息库中选取一个用户(即用户id)作为第一用户,然后针对该第一用户,依次从用户信息库中选取除第一用户之外的一个用户作为第二用户(即用户id),从而可以基于本申请实施例实现针对用户信息库中全部用户的好友推荐。38.可选地,在另一些实现方式中,可以依次从用户信息库中选取活跃度(例如在线时长、交互信息数)满足预设活跃度条件的一个用户(即用户id)作为第一用户,然后针对该第一用户,依次从用户信息库中选取除第一用户之外的一个用户作为第二用户(即用户id),从而可以基于本技术实施例实现针对用户信息库中活跃度较高的用户的好友推荐。39.102、获取第一用户对第二用户的满意度信息,以及获取第二用户对第一用户的满意度信息。40.其中,第一用户对第二用户的满意度信息用于表示第一用户对第二用户的满意程度,同理,第二用户对第一用户的满意度信息用于表示第二用户对第一用户的满意程度,该满意度信息具体可以通过一个满意度值或者满意度等级表示,本技术实施例对此不做限制。41.103、获取第一用户与第二用户之间的社交有趣性信息。42.其中,社交有趣性信息用于表示两个用户之间交互的有趣性,该社交有趣性信息可以通过一个社交有趣性值或者社交有趣性等级表示,本技术实施例对此不做限制。43.104、基于第一用户对第二用户的满意度信息、第二用户对第一用户的满意度信息和社交有趣性信息,获取第二用户相对于第一用户的社交有效信息。44.105、响应于社交有效信息满足预设条件,将第二用户确定为第一用户的推荐好友,以将第二用户推荐给第一用户。45.需要说明的是,101~105的执行主体的部分或全部可以为位于终端的应用,或者还可以为设置终端的应用中的插件或软件开发工具包(softwaredevelopmentkit,sdk)等功能单元,或者还可以为位于网络侧服务器中的应用,本技术实施例对此不进行特别限定。46.可以理解的是,所述应用可以是安装在终端上的本地程序(nativeapp),或者还可以是终端上的浏览器的一个网页程序(webapp),本技术实施例对此不进行限定。47.这样,由于同时考虑第一用户对第二用户的满意度信息、第二用户对第一用户的满意度信息和所述社交有趣性信息,来获取第二用户相对于第一用户的社交有效信息,可以从多个维度全面确定第二用户作为第一用户的有效社交好友的可能性,从而提高了好友推荐的准确性,能够实现有效的好友推荐,进而促进有效社交。另外,只有在所述社交有效信息满足预设条件时,才将第二用户确定为第一用户的推荐好友、将第二用户推荐给第一用户,可以有效避免无效的好友推荐对用户带来干扰,有利于提高用户体验。48.图2为本技术另一实施例提供的好友推荐方法的流程示意图。如图2所示,在图1所示实施例的基础上,在102中,可以通过如下方式,获取第一用户对第二用户的满意度信息:49.201、获取第一用户的好友信息、社交动态信息和上传图像信息。50.202、获取第二用户的好友信息、社交动态信息和上传图像信息。51.其中,202与201可以同时执行,也可以以任意先后顺序执行,本技术实施例对此不做限制。52.203、将第一用户的好友信息、社交动态信息和上传图像信息,以及第二用户的好友信息、社交动态信息和上传图像信息,按照顺序拼接,得到第一拼接信息。53.204、将第一拼接信息输入预先训练好的第一神经网络模型,经该第一神经网络模型输出第一用户对第二用户的满意度信息。54.类似地,可以通过如下方式,获取第二用户对第一用户的满意度信息:55.获取第二用户的好友信息、社交动态信息和上传图像信息;56.获取第一用户的好友信息、社交动态信息和上传图像信息;57.将第二用户的好友信息、社交动态信息和上传图像信息,以及第一用户的好友信息、社交动态信息和上传图像信息,按照顺序拼接,得到第二拼接信息;58.将第二拼接信息输入第一神经网络模型,经该第一神经网络模型输出第二用户对第一用户的满意度信息。59.其中的第一神经网络模型,可以为基于深度学习方式的各种神经网络模型,例如深度神经网络(deepneuralnetwork,dnn),长短期记忆(longshorttermmemory,lstm)、由lstm和条件随机场(conditionalrandomfields,crf)构成的lstm+crf模型、基于多头注意力机制的模型(transformer)等,本技术实施例对此不做限制。60.基于本实施例,可以将第一用户的好友信息、社交动态信息和上传图像信息,以及第二用户的好友信息、社交动态信息和上传图像信息,按照顺序拼接,得到第一拼接信息,然后利用深度学习方式预先训练好的第一神经网络模型,预测第一用户对第二用户的满意度信息,通过类似方式第二用户对第一用户的满意度信息,由于利用深度学习方式预先训练好的第一神经网络模型具有一定的泛化性,可以准确、快速的预测出一个用户对另一个用户的满意度信息。61.可选地,在其中一些实现方式中,所述好友信息例如可以包括但不限于以下任意一项或多项:通信录中的好友数,交流用户的用户数;和/或,所述社交动态信息例如可以包括但不限于以下任意一项或多项:发布视频的点击量,发布视频的点赞数,朋友圈发布信息的点赞数;和/或,所述上传图像信息例如可以包括但不限于以下任意一项或多项:头像,通过社交平台的交互接口上传的图片。62.基于本实施例,利用两个用户详细的好友信息、社交动态信息、上传图像信息,可以更准确的预测一个用户对另一个用户的满意度信息,从而能够提高满意度信息的准确性。63.可选地,在另一实施例的好友推荐方法中,可以预先训练得到第一神经网络模型。可选地,在其中一些实现方式中,可以通过如下方式训练得到第一神经网络模型:64.获取至少一个第一训练样本,该第一训练样本包括一个目标样本用户、以及该目标样本用户的至少一个交互用户,该至少一个交互用户中每个交互用户具有满意度标签,该满意度标签用于表示目标样本用户对每个交互用户的满意度,该满意度标签基于每个交互用户是否通过目标样本用户的好友申请以及社交活跃度确定;65.分别针对所述至少一个第一训练样本中的每个第一训练样本,获取目标样本用户的好友信息、社交动态信息和上传图像信息,以及获取每个第交互用户的好友信息、社交动态信息和上传图像信息;66.将目标样本用户的好友信息、社交动态信息和上传图像信息,以及每个交互用户的好友信息、社交动态信息和上传图像信息,按照顺序拼接,得到第三拼接信息;67.将第三拼接信息输入待训练第一神经网络模型,经待训练第一神经网络模型输出目标样本用户对每个交互用户的满意度信息;68.基于目标样本用户对每个交互用户的满意度信息和每个交互用户的满意度标签,对该待训练第一神经网络模型进行训练,直至达到预设训练完成条件,得到第一神经网络模型。69.本技术实施例中,上述训练得到第一神经网络模型的过程可以是迭代操作,即迭代执行上述训练得到第一神经网络模型的过程,直至满足预设训练完成条件,即可由待训练第一神经网络模型得到第一神经网络模型。其中的预设训练完成条件,例如可以包括但不限于以下任意一项或多项:所述至少一个第一训练样本的目标样本用户对每个交互用户的满意度信息和每个交互用户的满意度标签之间的差异小于预设差异阈值,或者迭代执行上述训练得到第一神经网络模型的过程的次数达到预设次数(例如2000次),等,本申请实施例对此不做限制。70.基于本实施例,可以采用深度学习的方式来训练得到第一神经网络模型,使得训练得到的第一神经网络模型具有一定的泛化性,可以准确、快速的预测出一个用户对另一个用户的满意度信息。71.图3为本技术又一实施例提供的好友推荐方法的流程示意图。如图3所示,在图1或图2所示实施例的基础上,103可以包括:72.301、获取包括第一用户的人脸的第一人脸图像。73.302、获取包括第二用户的人脸的第二人脸图像。74.其中,302与301可以同时执行,也可以以任意先后顺序执行,本技术实施例对此不做限制。75.303、将第一人脸图像和第二人脸图像输入预先训练好的第二神经网络模型,经该第二神经网络模型输出第一用户在预设特征上的特征信息、第二用户在预设特征上的特征信息、以及第一用户的人脸和第二用户的人脸之间的相似度。76.其中,所述预设特征包括至少两个不同维度的特征,例如年龄维度的特征、性别维度的特征等。人脸之间的相似度用于表示两个人脸之间的相似程度,相似度的具体取值范围可以为[0,1],其中,1表示两个人脸相似度为100%,为同一用户的人脸。0表示两个人脸相似度最低,为0。[0077]其中的第二神经网络模型,可以为基于深度学习方式的各种神经网络模型,例如dnn、lstm、lstm+crf模型、transformer等,本技术实施例对此不做限制。[0078]304、基于第一用户在预设特征上的特征信息、第二用户在预设特征上的特征信息、以及第一用户的人脸和第二用户的人脸之间的相似度,确定第一用户与第二用户之间的社交有趣性信息。[0079]基于本实施例,可以利用深度学习方式预先训练好的第二神经网络模型,基于第一用户的第一人脸图像和第二用户的第二人脸图像,快速、准确预测第一用户和第二用户在预设特征上的特征信息以及第一用户的人脸和第二用户的人脸之间的相似度,进而基于该第一用户和第二用户在预设特征上的特征信息以及第一用户的人脸和第二用户的人脸之间的相似度,可以准确确定第一用户与第二用户之间的社交有趣性信息。[0080]可选地,在另一实施例的好友推荐方法中,可以预先训练得到第二神经网络模型。可选地,在其中一些实现方式中,可以通过如下方式训练得到第二神经网络模型:[0081]获取至少一个第二训练样本,该第二训练样本包括由第一样本用户的人脸图像和第二样本用户的人脸图像组成的样本对,该样本对具有第一样本用户在预设特征上的特征标签、第二样本用户在预设特征上的特征标签、以及是否同一用户标签,该是否同一用户标签用于表示第一样本用户的人脸图像和第二样本用户的人脸图像是否为同一用户的人脸图像,同一用户标签可以为1,不同用户标签可以为0或者具体的相似度值;[0082]分别针对所述至少一个第二训练样本中的每个第二训练样本,将每个第二训练样本输入待训练第二神经网络模型,经该待训练第二神经网络模型输出每个第二训练样本中第一样本用户在预设特征上的预测特征信息、第二用户在预设特征上的预测特征信息、以及第一样本用户的人脸和第二样本用户的人脸之间的预测相似度;[0083]基于第一样本用户在预设特征上的预测特征信息、第二用户在预设特征上的预测特征信息、以及第一样本用户的人脸和第二样本用户的人脸之间的预测相似度,和第一样本用户在预设特征上的特征标签、第二样本用户在预设特征上的特征标签、以及是否同一用户标签,对所述待训练第二神经网络模型进行训练,直至达到预设训练完成条件,得到第二神经网络模型。[0084]本技术实施例中,上述训练得到第二神经网络模型的过程可以是迭代操作,即迭代执行上述训练得到第二神经网络模型的过程,直至满足预设训练完成条件,即可由待训练第二神经网络模型得到第二神经网络模型。其中的预设训练完成条件,例如可以包括但不限于以下任意一项或多项:所述至少一个第二训练样本的第一样本用户在预设特征上的预测特征信息、第二用户在预设特征上的预测特征信息、以及第一样本用户的人脸和第二样本用户的人脸之间的预测相似度,和第一样本用户在预设特征上的特征标签、第二样本用户在预设特征上的特征标签、以及是否同一用户标签之间的差异小于预设差异阈值,或者迭代执行上述训练得到第二神经网络模型的过程的次数达到预设次数(例如2000次),等,本技术实施例对此不做限制。[0085]基于本实施例,可以采用深度学习的方式来训练得到第二神经网络模型,使得训练得到的第二神经网络模型具有一定的泛化性,可以准确、快速的预测两个用户在预设特征上的特征信息以及两个用户的人脸之间的相似度。[0086]可选地,在图3所示实施例的其中一些实现方式中,在304中,可以将第一用户在预设特征上的特征信息、第二用户在预设特征上的特征信息、以及第一用户的人脸和第二用户的人脸之间的相似度,输入预先训练好的第三神经网络模型,经该第三神经网络模型输出社交有趣性值,其中,所述社交有趣性信息包括该社交有趣性值。[0087]可选地,可以预先利用至少一个第三训练样本对待训练第三神经网络模型进行训练,来得到第三神经网络模型。具体来说,其中的每个第三训练样本包括两个用户在预设特征上的特征信息以及两个用户的人脸之间的相似度,并携带有社交有趣性标签,将至少一个第三训练样本输入待训练第三神经网络模型,由待训练第三神经网络模型输出社交有趣性值,利用待训练第三神经网络模型输出社交有趣性值和对应的社交有趣性标签之间的差异,对待训练第三神经网络模型进行训练,直至达到预设训练完成条件,得到第三神经网络模型。其中,训练得到第三神经网络模型的具体实现方式,可以参考上述实施例训练得到第一神经网络模型和第二神经网络模型的具体实现方式,此处不再赘述。[0088]本发明人通过调研发现,人们容易被面容与自己有共同之处、相似的人吸引。基于本实施例,可以采用深度学习的方式来训练得到第三神经网络模型,使得训练得到的第三神经网络模型具有一定的泛化性,可以基于两个用户在预设特征上的特征信息以及两个用户的人脸之间的相似度,准确、快速的预测出两个用户之间的社交有趣性值。[0089]可选地,在图3所示实施例的其中一些实现方式中,在304中,也可以根据第一用户在预设特征上的特征信息、第二用户在预设特征上的特征信息,获取第一用户和第二用户在预设特征中第一维度(例如年龄)的特征差异、以及获取第一用户和第二用户在预设特征中第二维度(例如性别)的特征差异;然后,根据第一维度的特征差异、第二维度的特征差异、以及第一用户的人脸和第二用户的人脸之间的相似度,确定第一用户与第二用户之间的社交有趣性值,其中,所述社交有趣性信息包括该社交有趣性值。[0090]本发明人通过调研发现,人们容易被面容与自己有共同之处、相似的人吸引,尤其年龄差异在一定范围内(例如6岁以内)的异性之间,更容易相互吸引。基于本实施例,可以利用第一用户和第二用户在预设特征中第一维度(例如年龄)和第二维度(例如性别)的特征差异、以及第一用户的人脸和第二用户的人脸之间的相似度,来确定第一用户与第二用户之间的社交有趣性值[0091]图4为本技术再一实施例提供的好友推荐方法的流程示意图。如图3所示,在图1~图3所示实施例的基础上,104可以包括:[0092]401、基于第一预设权重因子,对第一用户对第二用户的满意度信息和第二用户对第一用户的满意度信息进行加权处理,得到第一加权处理值。[0093]402、基于第二预设权重因子,对社交有趣性信息进行加权处理,得到第二加权处理值。[0094]403、基于第一加权处理值和第二加权处理值,得到社交有效值,社交有效信息包括社交有效值。[0095]例如,在其中一种实现方式中,可以通过如下方式得到社交有效值:社交有效值=(1-a)*第一用户对第二用户的满意度值*第二用户对第一用户的满意度值+a*社交有趣性值。[0096]其中,(1-a)为第一预设权重因子,a为第二预设权重因子,a的取值范围可以为[0,1],a的具体取值大小可以根据实际需求预先设定,并可以根据具体场景和业务调整。[0097]可选地,在其中一些实现方式中,在105中,所述社交有效信息满足预设条件,包括:社交有效值大于预设阈值,所述预设条件包括所述预设阈值。其中的预设阈值的取值可以根据需求预先设定,并可以根据具体场景和业务调整,例如,社交有效值的取值范围为[0,100]时,预设阈值的取值可以为80。[0098]基于本实施例,通过公式,可以通过定量计算的方式,客观、精确的确定两个用户之间的社交有趣性值,从而促成社交有效值大于预设阈值的用户对进行社交。[0099]另外,在本技术的进一步实施例中,可以在训练得到第一神经网络模型、第二神经网络模型和第三神经网络模型后,可以针对上述训练样本,设置社交有效值标签,基于第一神经网络模型、第二神经网络模型和第三神经网络模型输出的信息计算得到社交有效值后,利用得到社交有效值和对应的社交有效值标签之间的差异,对第一神经网络模型、第二神经网络模型和第三神经网络模型进行进一步的端到端训练,从而实现对第一神经网络模型、第二神经网络模型和第三神经网络模型在整体性能上的精调。具体训练方式可以参考上述实施例训练得到第一神经网络模型和第二神经网络模型的具体实现方式,此处不再赘述。[0100]本技术的技术方案,由于同时考虑第一用户对第二用户的满意度信息、第二用户对第一用户的满意度信息和所述社交有趣性信息,来获取第二用户相对于第一用户的社交有效信息,可以从多个维度全面确定第二用户作为第一用户的有效社交好友的可能性,从而提高了好友推荐的准确性,能够实现有效的好友推荐,进而促进有效社交。[0101]另外,采用本技术所提供的技术方案,只有在所述社交有效信息满足预设条件时,才将第二用户确定为第一用户的推荐好友、将第二用户推荐给第一用户,可以有效避免无效的好友推荐对用户带来干扰,有利于提高用户体验。[0102]需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。[0103]在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。[0104]图5示出了适于用来实现本技术实施方式的示例性计算机系统/服务器12的框图。图5显示的计算机系统/服务器12仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。[0105]如图5所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,存储装置或者系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。[0106]总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。[0107]计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。[0108]系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本技术各实施例的功能。[0109]具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本技术所描述的实施例中的功能和/或方法。[0110]计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口44进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。[0111]处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现图1~图4所对应的实施例任一实施例所提供的好友推荐方法。[0112]本技术另一实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现图1~图4所对应的实施例任一实施例所提供的好友推荐方法。[0113]具体来说,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。[0114]计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。[0115]计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、rf等等,或者上述的任意合适的组合。[0116]可以以一种或多种程序设计语言或其组合来编写用于执行本技术操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如”c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。[0117]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。[0118]在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或页面组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。[0119]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。[0120]另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。[0121]上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一个计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。[0122]最后应说明的是:以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1