一种基于社会网络交互数据的服务排序及推荐方法与***
技术领域
本发明涉及社会网络与数据分析技术领域,特别涉及一种基于社会网络交互数据的服务排序及推荐方法与***。
背景技术
社会网络是指社会个体成员之间由于互动形成相对稳定的社会关系及其数据模型。社会网络是由许多节点组成的,社会关系把这些节点组织或者串联起来,形成一张巨大的网络。基于服务交互平台的社会化网络是社会网络的一种具体实现,用户通过服务交互形成了一个巨大的服务网络。
现有的电子商务网站推荐***采用了一系列的服务排序与推荐方法为用户推荐合适的服务,主要为依靠关键字搜索,用价格、交易量、或评价等信息排名。本专利发明的服务推荐算法与技术是推荐***的一种新的方法。与传统基于内容过滤直接分析内容进行推荐不同,本专利的服务推荐算法分析基于用户之间由于互动和交易形成的社会网络关系数据。传统基于商品购买的推荐方法假设在用户群中找到用户的相似(兴趣)用户,综合这些相似用户对某一商品的评价,形成***对该指定用户对此商品的喜好程序的预测。但是服务不同于商品,服务的品质是和服务提供者的特征相关联的,用户对服务选取的通常有两个条件:1)用户对该服务的需求其自身不能满足;2)服务提供者提供的服务质量是否能够达到用户的需求。如果没有社会网络关系数据分析与服务能力排名,仅仅用商品数据推荐方法无法确定服务提供者提供服务的质量。
发明内容
为了实现对用户进行服务的准确推荐,本发明提供了一种基于社会网络交互数据的服务排序及推荐方法,所述方法包括以下步骤:
S1:通过移动互联网终端或网络接口获取用户间的社会网络交互数据;
S2:根据所述社会网络交互数据计算每个用户在目标服务领域的服务能力值和服务需求值;
S3:根据所述服务能力值对用户服务进行排序,以获得排序结果;
S4:向目标服务领域服务需求值超过了预设需求阈值的用户提供所述排序结果,以实现服务推荐。
其中,步骤S2之前还包括:
S101:对所述社会网络交互数据进行解析,以获取在目标服务领域中相关的用户;
步骤S2中通过对下式进行迭代计算,以获取所述每个用户在目标服务领域的服务能力值和服务需求值:
其中,SRi为当前用户i的服务能力值;SRi′为当前用户i的服务需求值;SRj为用户j的服务能力值;SRj′为用户j的服务需求值;1-d为自服务的概率;d为提供服务或需要服务的概率,且取值范围为大于0且小于1;cj为用户j服务其他用户的数量;cj′为用户j获得其他用户服务的数量;n为与当前用户i相关的其他用户的数量。
其中,所述网络接口为网络爬虫和/或应用程序编程接口API。
其中,步骤S4之后还包括:
S5:判断是否到达更新周期,若是,则返回步骤S1,否则进行等待。
本发明还公开了一种基于社会网络交互数据的服务排序及推荐***,所述***包括:
数据采集模块,用于通过移动互联网终端或网络接口来获取用户间的社会网络交互数据;
数据分析模块,用于根据所述社会网络交互数据计算每个用户在目标服务领域的服务能力值和服务需求值;
服务排序模块,用于根据所述服务能力值对用户服务进行排序,以获得排序结果;
服务推荐模块,用于向目标服务领域需求值超过了预设需求阈值的用户提供所述排序结果,以实现服务推荐。
其中,所述数据分析模块,用于对所述社会网络交互数据进行解析,以获取在目标服务领域中相关的用户;
所述数据分析模块通过对下式进行迭代计算,以获取所述每个用户在目标服务领域的服务能力值和服务需求值:
其中,SRi为当前用户i的服务能力值;SRi′为当前用户i的服务需求值;SRj为用户j的服务能力值;SRj′为用户j的服务需求值;1-d为自服务的概率;d为提供服务或需要服务的概率,且取值范围为大于0且小于1;cj为用户j服务其他用户的数量;cj′为用户j获得其他用户服务的数量;n为与当前用户i相关的其他用户的数量。
其中,所述网络接口为网络爬虫和/或应用程序编程接口API。
其中,所述***还包括:
更新判断模块,用于判断是否到达更新周期。
本发明通过根据社会网络交互数据计算每个用户的服务能力值和服务需求值,并对所述服务能力值进行排序,并将排序结果提供给服务需求值较高的用户,从而实现了对用户进行服务的准确推荐。
附图说明
图1是本发明一种实施方式的基于社会网络交互数据的服务排序及推荐方法的流程图;
图2是本发明一种实施方式的基于社会网络交互数据的服务排序及推荐***的结构框图。
图3是本发明一种基于社会网络交互数据的终端界面示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1是本发明一种实施方式的基于社会网络交互数据的服务排序及推荐方法的流程图;参照图1,所述方法包括以下步骤:
S1:通过移动互联网终端或网络接口获取用户间的社会网络交互数据;
S2:根据所述社会网络交互数据计算每个用户在目标服务领域的服务能力值(即服务指数)和服务需求值(即需求指数);
S3:根据所述服务能力值对用户服务进行排序,以获得排序结果;
S4:向目标服务领域服务需求值超过了预设需求阈值的用户提供所述排序结果,以实现服务推荐。
为简便、准确地计算所述服务能力值和服务需求值,优选地,步骤S2之前还包括:
S101:对所述社会网络交互数据进行解析,以获取在目标服务领域中相关的用户;
步骤S2中通过对下式(即Service Rank算法)进行迭代计算,以获取所述每个用户在目标服务领域的服务能力值和服务需求值:
其中,SRi为当前用户i的服务能力值;SRi′为当前用户i的服务需求值;SRj为用户j的服务能力值;SRj′为用户j的服务需求值;1-d为自服务的概率;d为提供服务或需要服务的概率,且取值范围为大于0且小于1;cj为用户j服务其他用户的数量;cj′为用户j获得其他用户服务的数量;n为与当前用户i相关的其他用户的数量。
当第一次计算所述服务能力值和服务需求值时,会面临没有最原始数据的情况,可通过将每个用户的服务能力值和服务需求值设置为一个常数,例如:均设置为1,再通过上述计算公式不停的迭代运算,直至每个用户的服务能力值和服务需求值均为定值,再将该定值作为每个用户的服务能力值和服务需求值。
为便于获取用户间的社会网络与交互数据,以实现对步骤S2的支持,可采用三种数据采集的方式:方式1、移动终端和电子商务网站获取用户间的社会网络交互数据;方式2、采用网络爬虫,只需要设置网络爬虫的入口地址,网络爬虫就按照一定的策略抓取网络中的数据,并把相应的数据存储于本地,至于抓取策略则为现有技术,在此不再赘述;方式3、采用开放应用程序编程接口(Application Programming Interface,API)采集数据,许多平台提供了开放的API,通过API抓取平台的数据。
因此,优选地,步骤S1中,所述网络接口为网络爬虫和/或应用程序编程接口API。
为便于进行数据更新,优选地,步骤S4之后还包括:
S5:判断是否到达更新周期,若是,则返回步骤S1,否则进行等待,所述更新周期可以以日、周、月或年等为单位进行设置。
本发明还公开了一种基于社会网络交互数据的服务排序及推荐***,参照图2,所述***包括:
数据采集模块,用于通过移动互联网终端或网络接口来获取用户间的社会网络交互数据;
数据分析模块,用于根据所述社会网络交互数据计算每个用户在目标服务领域的服务能力值和服务需求值;
服务排序模块,用于根据所述服务能力值对用户服务进行排序,以获得排序结果;
服务推荐模块,用于向目标服务领域需求值超过了预设需求阈值的用户提供所述排序结果,以实现服务推荐。服务推荐能够促进社会网络交互数据的产生,改进下一轮推荐的结果,从而促进整个***良性发展。
优选地,所述数据分析模块,用于对所述社会网络交互数据进行解析,以获取在目标服务领域中相关的用户;
所述数据分析模块通过对下式进行迭代计算,以获取所述每个用户在目标服务领域的服务能力值和服务需求值:
其中,SRi为当前用户i的服务能力值;SRi′为当前用户i的服务需求值;SRj为用户j的服务能力值;SRj′为用户j的服务需求值;1-d为自服务的概率;d为提供服务或需要服务的概率,且取值范围为大于0且小于1;cj为用户j服务其他用户的数量;cj′为用户j获得其他用户服务的数量;n为与当前用户i相关的其他用户的数量。
优选地,所述网络接口为网络爬虫和/或应用程序编程接口API。
优选地,所述***还包括:
更新判断模块,用于判断是否到达更新周期。
所述服务推荐方法及***中的服务推荐可显示于终端上,图3是本发明的终端的实施例示意图;参照图3,所述终端的功能包括:当前用户在输入框输入目标服务领域的标签化名称(例如“网站设计”),点击搜索按钮以完成对用户的服务推荐。
搜索结果包括两部分:1)当前用户在目标服务领域的需求分数;2)目标用户以及目标用户发布服务的列表,结果按照目标用户在目标服务领域的能力分数进行排序。
***根据当前用户在目标服务领域的需求分数,推荐服务分数相近的用户以及用户发布的服务给当前用户。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。