CN105528379B - 一种资源的推荐方法和装置 - Google Patents
一种资源的推荐方法和装置 Download PDFInfo
- Publication number
- CN105528379B CN105528379B CN201410577628.8A CN201410577628A CN105528379B CN 105528379 B CN105528379 B CN 105528379B CN 201410577628 A CN201410577628 A CN 201410577628A CN 105528379 B CN105528379 B CN 105528379B
- Authority
- CN
- China
- Prior art keywords
- resource
- user
- association
- degree
- resources
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000004364 calculation method Methods 0.000 claims description 35
- 238000012545 processing Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 9
- 238000009792 diffusion process Methods 0.000 description 9
- 238000012163 sequencing technique Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000015654 memory Effects 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 102100029469 WD repeat and HMG-box DNA-binding protein 1 Human genes 0.000 description 1
- 101710097421 WD repeat and HMG-box DNA-binding protein 1 Proteins 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种资源的推荐方法和装置,用于解决资源有限时向用户推荐资源的准确性和高效性的问题。本发明实施例方法包括:从资源数据库中获取历史关联数据,所述历史关联数据包括:用户集中的用户和资源集中的资源之间存在关联关系的数据;根据所述历史关联数据获取所述资源集中的每个资源分别与所述用户集中目标用户之间的被关联程度初值;根据所述被关联程度初值和所述历史关联数据中的关联关系获取所述资源集中每个资源与目标用户之间的被关联程度;根据所述资源集中每个资源与所述目标用户之间的被关联程度为所述目标用户生成个性化推荐列表,所述个性化推荐列表包括为所述目标用户推荐的至少一个资源。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种资源的推荐方法和装置。
背景技术
随着互联网技术的不断发展,个性化推荐系统作为建立在海量数据挖掘基础上的一种高级商务智能平台,可以帮助电子商务网站为其顾客购物提供完全个性化的决策支持和信息服务,个性化推荐系统可为用户推荐商品,自动完成个性化选择商品的过程,满足用户的个性化需求,目前个性化推荐系统已经可以完成根据不同用户的兴趣偏好,推荐相关商品,满足用户的个性化需求。
目前常用的推荐系统主要采用两种方法:基于内容的推荐方法和协同过滤方法。不管是基于内容的推荐方法还是协同过滤的方法,这两种方法都是指考虑了用户与资源的匹配程度,而没有考虑资源自身的属性原因,例如资源的数量有限的情况下,现有的资源的推荐方法只能根据用户与资源的匹配程度来为用户推荐资源,而没有考虑到资源的有限性,这就需要研究新的资源的推荐方法,以解决资源有限时向用户推荐资源的准确性和高效性。
发明内容
本发明实施例提供了一种资源的推荐方法和装置,用于解决资源有限时向用户推荐资源的准确性和高效性的问题。
为解决上述技术问题,本发明实施例提供以下技术方案:
第一方面,本发明实施例提供一种资源的推荐方法,包括:
获取历史关联数据,所述历史关联数据包括:用户集中的用户和资源集中的资源之间存在关联关系的数据,其中,所述用户集包括至少两个用户,所述资源集包括至少两个资源;
根据所述历史关联数据获取所述资源集中的每个资源分别与所述用户集中目标用户之间的被关联程度初值,所述目标用户包括需要推荐资源的所述用户集中的用户;
根据所述被关联程度初值和所述历史关联数据中的关联关系获取所述资源集中每个资源与目标用户之间的被关联程度,所述被关联程度为所述资源集中每个资源与所述目标用户之间的被关联程度终值;
根据所述资源集中每个资源与所述目标用户之间的被关联程度为所述目标用户生成个性化推荐列表,所述个性化推荐列表包括为所述目标用户推荐的至少一个资源。
第二方面,本发明实施例还提供一种资源的推荐装置,包括:
数据获取模块,用于获取历史关联数据,所述历史关联数据包括:用户集中的用户和资源集中的资源之间存在关联关系的数据,其中,所述用户集包括至少两个用户,所述资源集包括至少两个资源;
初值计算模块,用于根据所述历史关联数据获取所述资源集中的每个资源分别与所述用户集中目标用户之间的被关联程度初值,所述目标用户包括需要推荐资源的所述用户集中的用户;
终值计算模块,用于根据所述被关联程度初值和所述历史关联数据中的关联关系获取所述资源集中每个资源与目标用户之间的被关联程度,所述被关联程度为所述资源集中每个资源与所述目标用户之间的被关联程度终值;
资源推荐模块,用于根据所述资源集中每个资源与所述目标用户之间的被关联程度为所述目标用户生成个性化推荐列表,所述个性化推荐列表包括为所述目标用户推荐的至少一个资源。
从以上技术方案可以看出,本发明实施例具有以下优点:
在本发明实施例中,首先获取历史关联数据,其中,历史关联数据包括:用户集中的用户和资源集中的资源之间存在关联关系的数据,然后根据历史关联数据获取资源集中的每个资源分别与用户集中目标用户之间的被关联程度初值,接下来根据被关联程度初值和历史关联数据中的关联关系获取资源集中每个资源与目标用户之间的被关联程度,最后根据资源集中每个资源与目标用户之间的被关联程度为目标用户生成个性化推荐列表,从而可以根据生成的个性化推荐列表向目标用户推荐资源。由于本发明实施例中通过资源与目标用户之间的被关联程度可以刻画出资源与用户之间的紧密联系程度,根据该被关联程度为目标用户推荐的资源可以更好的迎合目标用户的需要,在各个资源的数目有限时可以将有限的资源向更有紧密联系的潜在用户推荐,这些有限的资源更容易得到用户的认可,提高资源有限时向用户推荐资源的准确性、高效性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种资源的推荐方法的流程方框示意图;
图2为本发明实施例提供的建立“用户-商品”二部分图的应用场景示意图;
图3-a为本发明实施例提供的一种资源的推荐装置的组成结构示意图;
图3-b为本发明实施例提供的一种终值计算模块的组成结构示意图;
图3-c为本发明实施例提供的另一种终值计算模块的组成结构示意图;
图3-d为本发明实施例提供的另一种资源的推荐装置的组成结构示意图;
图4为本发明实施例提供的资源的推荐方法应用于服务器的组成结构示意图。
具体实施方式
本发明实施例提供了一种资源的推荐方法和装置,用于解决资源有限时向用户推荐资源的准确性、高效性的问题。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
以下分别进行详细说明。
本发明资源的推荐方法的一个实施例,具体可以应用于向用户推荐各种资源,例如商品、网页内容的推荐场景中,请参阅图1所示,本发明一个实施例提供的资源的推荐方法,可以包括如下步骤:
101、获取历史关联数据,历史关联数据包括:用户集中的用户和资源集中的资源之间存在关联关系的数据。
其中,用户集包括至少两个用户,资源集包括至少两个资源。
在本发明实施例中,首先获取到历史关联数据,例如可以通过资源数据库来获取,在资源数据库中保存有资源的各种记录信息,具体的,资源数据库中保存有各种资源所关联的用户身份识别码(ID,Identity)、资源与用户之间的关联关系、资源与用户之间产生关联关系的具体时间和具体内容等,其中资源与用户之间的关联关系指的是资源与用户之间已经产生的行为关联记录,举例说明,若资源具体指的是商品,商品与用户之间的关联关系可以为用户与该用户购买过的商品之间的已购买记录,已购买记录可包括用户ID、商品ID、购买时间、购买价格、购买次数等基本交易信息。若资源具体指的是网页内容,网页内容与用户之间的关联关系可以为用户与该用户浏览过的网页内容之间的已浏览记录,已浏览记录可包括用户ID、网页内容ID、浏览时间、浏览次数等基本浏览信息。
当需要向用户推荐资源时,首先获取到一段时间内的关联数据,该关联数据定义为历史关联数据,例如,从资源数据库中获取最近一个月内的资源与用户之间的关联关系,则获取到的这些关联关系的数据就是历史关联数据,通过历史关联数据可以分析出用户与资源之间的紧密联系程度。
需要说明的是,在本发明实施例中,历史关联数据中记录的是多个用户与多个资源之间的关联关系,其中,从用户层面来讲,一个用户可以与一个资源之间存在关联关系,一个用户也可以与多个资源之间存在关联关系,从资源层面来讲,一个资源可以与一个用户之间存在关联关系,一个资源也可以与多个用户之间存在关联关系,本发明实施例中将用户定义为用户集中的元素,那么在用户集中包括有至少两个用户,将资源定义为资源集中的元素,那么在资源集中包括有至少两个资源,对于用户集和资源集而言,历史关联数据指的是用户集中的用户和资源集中的资源之间存在关联关系的数据。
在本发明的一些实施例中,步骤101获取历史关联数据之后,本发明实施例提供的资源的推荐方法还包括如下步骤:
对历史关联数据中包括的用户和资源进行匿名化处理。
通常情况下为了保护用户的隐私不被泄露,获取到历史关联数据之后,还可以敏感信息的用户属性和资源属性进行匿名化处理,例如可以使用K-匿名模型进行匿名化处理,防止在执行资源的推荐过程中用户的隐私信息泄露。
102、根据历史关联数据获取资源集中的每个资源分别与用户集中目标用户之间的被关联程度初值。
其中,目标用户包括需要推荐资源的用户集中的用户。
在本发明实施例中,从资源数据库中获取到历史关联数据之后,根据历史关联数据获取每个资源分别与用户集中目标用户之间的被关联程度初值,其中被关联程度初值指的是根据资源数据库中已经存在的历史关联数据对资源与目标用户之间的被关联程度赋予的初值,该被关联程度初值由从资源数据库中提取到的历史关联数据来决定。具体的,若需要做资源推荐的目标用户为用户A,根据历史关联数据一个目标用户(用户A)和一个资源(例如资源X)之间已经存在关联关系,则资源X和用户A之间就存在被关联程度初值,若根据历史关联数据用户A和资源X之间不存在关联关系,则资源X和用户A之间就不存在被关联程度初值,举例说明,若资源X具体指的是商品X,如果该商品X被用户A购买过,则在历史关联数据中就会记录有用户A购买过商品X,用户A和商品X之间已经存在关联关系,资源X和用户A之间的被关联程度初值可取值为1,如果该商品X没有被用户A购买过,则在历史关联数据中就查找不到用户A购买过商品X的记录,用户A和商品X之间就不存在关联关系,则资源X和用户A之间的被关联程度初值可取值为0。
需要说明的是,在本发明实施例中,资源集中的每个资源与用户集中的每个用户之间都计算出被关联程度初值,若根据历史关联数据,对于存在关联关系的被关联程度初值可以取值为一种,若根据历史关联数据,对于不存在关联关系的被关联程度初值可以取值为另一种,只要能够保证存在关联关系与不存在关联关系的情况下计算出的被关联程度初值是不同的取值即可,对于前述举例中1和0只是一种实现情况,在本发明的另一些实施例中还可以取值为1和-1来分别代表存在关联关系与不存在关联关系的两种情况。
103、根据被关联程度初值和历史关联数据中的关联关系获取资源集中每个资源与目标用户之间的被关联程度。
其中,被关联程度为资源集中每个资源与目标用户之间的被关联程度终值。
在本发明实施例中,通过步骤102计算得到的是每个资源分别与目标用户之间的被关联程度初值,被关联程度初值是对历史关联数据中资源与用户之间已经存在的关联关系的具体描述,得到被关联程度初值之后,当需要向目标用户推荐资源时,再结合被关联程度初值和历史关联数据中的关联关系获取出资源集中的每个资源与上述目标用户之间的被关联程度,该被关联程度就是资源集中每个资源与目标用户之间的被关联程度终值,其中被关联程度终值是相对于前述的被关联程度初值而言的,从被关联程度初值计算得到的被关联程度是一个终值,该被关联程度用于描述资源集中的每个资源与目标用户之间的紧密联系程度,通过被关联程度可以确定出哪个资源与目标用户之间具有更强的关联性,被关联程度作为向目标用户推荐资源的决定性因素,通过对被关联程度的量化计算,可以通过被关联程度的取值大小来刻画目标用户可能与哪个资源具有更强的关联性,基于这个被关联程度向目标用户推荐的资源可能能够更好的满足用户的需要。
本发明实施例中涉及的被关联程度指的是资源与用户之间的紧密联系程度,以资源具体为商品为例,被关联程度具体可以为被喜爱程度,即商品被用户喜爱的程度,通常认为商品越被用户喜爱,那么推荐给用户的商品才能更好的满足用户需求,其中,被喜爱程度可以用来判断商品是否值得推荐的数值,被喜爱程度是一个有限范围的实数,数值越大,表示用户对商品的可能喜好程度越大,那该商品就越值得推荐。后续实施例中涉及的关联程度指的是用户与资源之间的紧密联系程度,以资源具体为商品为例,关联程度具体可以为喜爱程度,即用户对商品喜爱的程度。
需要说明的是,在本发明实施例中,目标用户包括需要推荐资源的用户集中的用户,具体的,目标用户可以依次表示用户集中的每一个用户,那么按照本发明实施例提供的资源的推荐方法,就可以向用户集中的每个用户推荐分别适用于各个用户的资源,其中,在上述步骤中,可以以用户集的一个用户作为目标用户来计算资源集中的每个资源与该目标用户之间的被关联程度,那么用户集中的其他用户作为目标用户时被关联程度的计算可以参阅步骤103中描述的被关联程度的计算方式或者参阅后续实施例中被关联程度的计算方式。
在本发明的一些实施例中,步骤103根据被关联程度初值和历史关联数据中的关联关系获取资源集中每个资源与目标用户之间的被关联程度,包括:
1031、将第一资源与用户集中目标用户之间的被关联程度初值传递给用户集中与第一资源存在关联关系的所有用户;
1032、当第一资源依次表示资源集中的各个资源时,通过向用户集中所有用户传递被关联程度初值,计算用户集中每个用户与资源集中所有资源之间的关联程度;
1033、将第一用户与资源集中所有资源之间的关联程度传递给资源集中与第一用户存在关联关系的所有资源;
1034、当第一用户依次表示用户集中的各个用户时,通过向资源集中所有资源传递关联程度,计算资源集中每个资源与目标用户之间的被关联程度。
对于步骤1031,在获取到每个资源与用户集中目标用户之间的被关联程度初值之后,首先对第一资源执行步骤1031的处理方式,从运算角度来讲,那么用户集中与第一资源存在关联关系的所有用户都会收到从第一资源传递来的被关联程度初值,需要说明的是,本发明实施例中将被关联程度初值传递给用户是为了计算得到用户与资源之间的关联程度,资源和用户之间是建立有双向联系的,从第一资源传递被关联程度初值给与该第一资源存在关联关系的所有用户,则与第一资源存在关联关系的所有用户可以累积被关联程度初值,这个被关联程度初值可用于从用户层面计算出用户与资源之间的关联程度,这里的向用户传递被关联程度初值并不是将被关联程度初值的数据信息发送给用户的意思。另外,步骤1031中提及的第一资源可以泛指资源集中的任意一个资源,也可以按照逻辑算法从资源集中选择的一个资源,步骤1031中只是描述了对于与第一资源存在关联关系的用户传递被关联程度初值,该第一资源可以表示资源集中的每个资源,那么当第一资源表示资源集中的资源发生变化时,都需要重新执行步骤1031,那么通过多次的执行步骤1031用户集中与各个资源都存在关联关系的所有用户都可以获取到与本用户有关联关系的资源传递的被关联程度初值。
对于步骤1032,以第一资源依次表示资源集中的各个资源时,步骤1031会多次执行,那么用户集中的每个用户都会获取到与本用户有关联关系的资源传递的被关联程度初值,统计此时用户集中的每个用户与资源集中所有资源之间的关联程度,那么对于每个用户都可以计算出一个关联程度,通过关联程度可以刻画出一个用户与所有资源之间的紧密联系程度,举例说明,以资源集中包括有资源A、资源B、资源C为例,当第一资源表示资源集中的资源A时,与该资源A有关联关系的所有用户会从资源A获取到一定的被关联程度初值,当第一资源表示资源集中的资源B时,与资源B有关联关系的所有用户也会从资源B获取到一定的被关联程度初值,当第一资源表示资源集中的资源C时,与资源C有关联关系的所有用户也会从资源C获取到一定的被关联程度初值。当第一资源依次表示完资源集中的所有资源之后,对用户集中的所有用户获取到的被关联程度初值进行累计,并计算得到用户集中每个用户与资源集中所有资源之间的关联程度。
对于步骤1033,对用户集中的每个用户都计算出一个关联程度之后,再将关联程度传递给资源,首先对第一用户执行步骤1033的处理方式,从运算角度来讲,那么资源集中与第一用户存在关联关系的所有资源都会收到从第一用户传递来的关联程度,需要说明的是,本发明实施例中将关联程度传递给资源是为了计算得到资源与目标用户之间的被关联程度,资源和用户之间是建立有双向联系的,从第一用户传递关联程度给与该第一用户存在关联关系的所有资源,则与第一用户存在关联关系的所有资源可以累积关联程度,这个关联程度可用于从资源层面计算出每个资源与目标用户之间的被关联程度,这里的向资源传递关联程度并不是将关联程度的数据信息发送给资源的意思。另外,步骤1033中提及的第一用户可以泛指用户集中的任意一个用户,也可以按照逻辑算法从用户集中选择的一个用户,步骤1033中只是描述了对于与第一用户存在关联关系的资源传递关联程度,该第一用户可以表示用户集中的每个用户,那么当第一用户表示用户集中的用户发生变化时,都需要重新执行步骤1033,那么通过多次的执行步骤1033资源集中每个资源与目标用户都可以获取到与目标用户有关联关系的资源之间的关联程度。
对于步骤1034,以第一用户依次表示用户集中的各个用户时,步骤1033会多次执行,那么资源集中的每个资源都会获取到与本资源有关联关系的用户传递的关联程度,统计此时资源集中的每个资源与用户之间的关联程度,那么对于每个资源都可以累计得到一个关联程度,需要为目标用户推荐资源时,通过向资源集中所有资源传递关联程度,计算资源集中的每个资源与目标用户之间的被关联程度,计算出的被关联程度可以用于刻画资源集中的每个资源与目标用户之间的紧密联系程度,举例说明,以用户集中包括有用户X、用户Y、用户Z为例,当第一用户表示用户集中的用户X时,与该用户X有关联关系的所有资源会从用户X获取到一定的关联程度值,当第一用户表示用户集中的用户Y时,与用户Y有关联关系的所有资源也会从用户Y获取到一定的关联程度值,当第一用户表示用户集中的用户Z时,与用户Z有关联关系的所有资源也会从用户Z获取到一定的关联程度值。当第一用户依次表示完用户集中的所有用户之后,若需要推荐资源的目标用户为用户X,则通过向资源集中所有资源传递关联程度,计算出资源集中每个资源与用户X之间的被关联程度,对于目标用户而言,资源集中每个资源都与目标用户之间计算出了被关联程度,最后可以根据计算出的各个被关联程度向目标用户推荐资源。
在本发明的一些实施例中,步骤1031将第一资源与用户集中目标用户之间的被关联程度初值传递给用户集中与第一资源存在关联关系的所有用户之前,步骤103根据被关联程度初值和历史关联数据中的关联关系获取资源集中每个资源与目标用户之间的被关联程度,除了可包括步骤1031至步骤1034之外,还可以包括如下步骤:
1030、根据历史关联数据构建用户集中的用户和资源集中的资源之间的关联关系二部分图,其中,关联关系二部分图包括:用户集中的所有用户、资源集中的所有资源、存在关联关系的用户和资源之间建立的连边。
也就是说,为了更直接描述用户与资源之间的关联关系,可以通过构建的关联关系二部分图来表示,在关联关系二部分图中包括有用户集中的所有用户、资源集中的所有资源、以及存在关联关系的用户和资源之间建立连边,而根据历史关联数据用户和资源之间不存在关联关系的则不建立连边,通过关联关系二部分图可以容易的确定出用户集中有哪些用户,资源集中有哪些资源,哪些用户和哪些资源之间存在有关联关系,哪些用户和哪些资源之间不存在关联关系。
进一步的,上述步骤1030根据历史关联数据构建用户集中的用户和资源集中的资源之间的关联关系二部分图,具体可以包括如下步骤:
将用户集中的每个用户和资源集中的每个资源在关联关系二部分图中用点来表示;
若用户集中的用户和资源集中的资源之间存在关联关系,则在存在关联关系的用户和资源各自代表的点之间建立连边,其中,用户集的内部不存在连边,资源集的内部不存在连边。
具体的,在步骤103包括步骤1030、步骤1031、步骤1032、步骤1033、步骤1034的实现场景下,步骤1031将第一资源与用户集中目标用户之间的被关联程度初值传递给用户集中与第一资源存在关联关系的所有用户,具体可以包括如下步骤:
在关联关系二部分图上将第一资源与用户集中目标用户之间的被关联程度初值沿着连边传递给用户集中与第一资源建立有连边的所有用户。
也就是说,在对第一资源进行处理时,可以按照关联关系二部分图向与第一资源存在关联关系的所有用户传递被关联程度初值,根据前述步骤1030的描述,在关联关系二部分图上建立有连边,那么在向用户传递被关联程度初值时,可以沿着上述连边来传递被关联程度初值。
具体的,在步骤103包括步骤1030、步骤1031、步骤1032、步骤1033、步骤1034的实现场景下,步骤1032当第一资源依次表示资源集中的各个资源时,通过向用户集中所有用户传递被关联程度初值,计算用户集中每个用户与资源集中所有资源之间的关联程度,具体可以包括如下步骤:
当第一资源依次表示资源集中的各个资源时,根据第一资源与用户集中目标用户之间的被关联程度初值、历史关联数据中的关联关系和对连边设置的第一权重计算用户集中每个用户与资源集中所有资源之间的关联程度。
也就是说,在沿着连边向用户传递被关联程度初值时,还可以对关联关系二部分图中的各个连边分别赋予权重值,其中每个连边被赋予的权重值可以根据多种算法来确定,例如根据用户的优先级、或者资源的重要级来给用户和资源之间连接的连边赋予权重,若连边一端的用户优先级越高,该连边被赋予的权重值越大,同样的,若连边一端的资源重要等级越高,该连边被赋予的权重值越大。当获取到为连边设置的第一权重后,再根据第一资源与用户集中目标用户之间的被关联程度初值、历史关联数据中的关联关系和对连边设置的第一权重计算用户集中每个用户与资源集中所有资源之间的关联程度。需要说明的是,在本发明实施例中,在执行关联程度的计算和被关联程度的计算时可以对连边赋予不同的权重,其中在执行关联程度的计算时使用的连边权重为第一权重,在后续实施例中描述的执行被关联程度的计算时使用的连边为第二权重。
进一步的,对于上述的应用场景,当第一资源依次表示资源集中的各个资源时,根据第一资源与用户集中目标用户之间的被关联程度初值、历史关联数据中的关联关系和对连边设置的第一权重计算用户集中每个用户与资源集中所有资源之间的关联程度,包括如下步骤:
通过如下方式计算用户集中第i个用户与资源集中所有资源之间的关联程度Ui:
其中,i为大于等于1且小于t的正整数,t为用户集中用户的个数,α为大于等于1且小于n的正整数,所述n为所述资源集中资源的个数,α指的是资源集中的第α个资源,fα指的是第α个资源与目标用户之间的被关联程度初值,若第α个资源与目标用户之间存在关联关系,fα取值为1,若第α个资源与目标用户之间不存在关联关系,fα取值为0,miα指的是第α个资源与第i个用户之间是否存在关联关系,若第α个资源与第i个用户之间存在关联关系,miα取值为1,若第α个资源与第i个用户之间不存在关联关系,miα取值为0,wiα指的是对第α个资源与第i个用户之间建立的连边设置的第一权重。
需要说明的是,被关联程度初值fα、miα可以通过前述步骤102根据历史关联数据来确定,fα指的是第α个资源与目标用户之间的被关联程度初值,miα指的是第α个资源与第i个用户之间的是否存在关联关系,并以wiα表示对第α个资源与第i个用户之间建立的连边设置的第一权重,通过上述计算公式,可以得到用户集中第i个用户与资源集中所有资源之间的关联程度Ui,另外,在本发明的一些实施例中,根据fα、miα、wiα计算Ui时还可以采用与上述公式相类似的表达方式,例如可以在上述公式的右等式上再乘以校正参数来调节关联程度的取值大小。
在上述公式中,连边的第一权重可通过如下方式计算:
wiα=(kikα)γ,
其中,wiα指的是对第α个资源与第i个用户之间建立的连边设置的第一权重,ki为资源集中与用户集中第i个用户有关联关系的资源个数,kα为用户集中与资源集中第α个资源有关联关系的用户个数,γ为第一权重的调整幂值。
也就是说,连边的第一权重用于调整关联程度的取值,连边的第一权重可以由ki和kα以及为第一权重设置的调整幂值来确定,ki和kα的取值可以从历史关联数据中统计得到,第一权重的计算方式可以有多种,除了上述给出的一种实现方式外,还可以将ki和调整幂值相乘,将kα和调整幂值相乘,最后再将两个相乘的结果相加得到的值作为第一权重。
在本发明的一些实施例中,在步骤103包括步骤1030、步骤1031、步骤1032、步骤1033、步骤1034的实现场景下,步骤1033将第一用户与资源集中所有资源之间的关联程度传递给资源集中与第一用户存在关联关系的所有资源,包括:
在关联关系二部分图上将第一用户与资源集中所有资源之间的关联程度沿着连边传递给资源集中与第一用户建立有连边的所有资源。
也就是说,在对第一用户进行处理时,可以按照关联关系二部分图向与第一用户存在关联关系的所有资源传递关联程度,根据前述步骤1030的描述,在关联关系二部分图上建立有连边,那么在向资源传递关联程度时,可以沿着上述连边来传递关联程度。结合前述实施例的描述,在对第一资源进行处理时,将被关联程度初值从第一资源扩散到与该第一资源有关联关系的所有用户,在对第一用户进行处理时,将关联程度从第一用户扩散到与该第一用户有关联关系的所有资源,从而可以完成二次扩散计算。
具体的,在步骤103包括步骤1030、步骤1031、步骤1032、步骤1033、步骤1034的实现场景下,步骤1034当第一用户依次表示用户集中的各个用户时,通过向资源集中所有资源传递关联程度,计算资源集中每个资源与目标用户之间的被关联程度,包括:
当第一用户依次表示用户集中的各个用户时,根据第一用户与资源集中所有资源之间的关联程度、历史关联数据中的关联关系和对连边设置的第二权重计算资源集中每个资源与目标用户之间的被关联程度。
也就是说,在沿着连边向资源传递关联程度时,还可以对关联关系二部分图中的各个连边分别赋予权重值,其中每个连边被赋予的权重值可以根据多种算法来确定,例如根据用户的优先级、或者资源的重要级来给用户和资源之间连接的连边赋予权重,若连边一端的用户优先级越高,该连边被赋予的权重值越大,同样的,若连边一端的资源重要等级越高,该连边被赋予的权重值越大。当获取到为连边设置的第一权重后,再根据第一资源与用户集中目标用户之间的被关联程度初值、历史关联数据中的关联关系和对连边设置的第一权重计算用户集中每个用户与资源集中所有资源之间的关联程度。需要说明的是,在本发明实施例中,在执行程度的计算和被关联程度的计算时可以对连边赋予不同的权重,其中在执行关联程度的计算时使用的连边权重为第一权重,在后续实施例中描述的执行被关联程度的计算时使用的连边为第二权重。
进一步的,对于上述的应用场景,当第一用户依次表示用户集中的各个用户时,根据第一用户与资源集中所有资源之间的关联程度、历史关联数据中的关联关系和对连边设置的第二权重计算资源集中每个资源与目标用户之间的被关联程度,包括:
通过如下方式计算资源集中第β个资源与目标用户之间的被关联程度Fβ:
其中,i为大于等于1且小于t的正整数,t为用户集中用户的个数,β为大于等于1且小于n的正整数,所述n为所述资源集中资源的个数,β指的是资源集中的第β个资源,Ui指的是第i个用户与资源集中所有资源之间的关联程度,miβ指的是第β个资源与第i个用户之间是否存在关联关系,若第β个资源与第i个用户之间存在关联关系,miβ取值为1,若第β个资源与第i个用户之间不存在关联关系,miβ取值为0,wiβ指的是对于第β个资源与第i个用户之间建立的连边设置的第二权重。
结合前述实施例的描述,在对第一资源进行处理时,将被关联程度初值从第一资源扩散到与该第一资源有关联关系的所有用户,在对第一用户进行处理时,将关联程度从第一用户扩散到与该第一用户有关联关系的所有资源,并且在按照关联关系二部分图进行传递时,用户的关联程度的计算和资源的被关联程度的计算分别采用了不同的连边权重,也就是说,在从资源到用户的第一次扩散计算和从用户到资源的第二次扩散计算时,对于连边分别赋予了第一权重和第二权重,从而可以更好的刻画出资源对目标用户的被关联程度。
在上述公式中,连边的第二权重可通过如下方式计算:
wiβ=(kikβ)η,
其中,wiβ指的是对第β个资源与第i个用户之间建立的连边设置的第二权重,ki为资源集中与用户集中第i个用户有关联关系的资源个数,kβ为用户集中与资源集中第β个资源有关联关系的用户个数,η为对第二权重的调整幂值。
也就是说,连边的第二权重用于调整关联程度的取值,连边的第二权重可以由ki和kβ以及为第二权重设置的调整幂值来确定,第二权重的计算方式可以有多种,除了上述给出的一种实现方式外,还可以将ki和调整幂值相乘,将kβ和调整幂值相乘,最后再将两个相乘的结果相加得到的值作为第二权重。
104、根据资源集中每个资源与目标用户之间的被关联程度为目标用户生成个性化推荐列表。
其中,个性化推荐列表包括为目标用户推荐的至少一个资源。
在本发明实施例中,计算出资源集中每个资源与目标用户之间的被关联程度之后,根据被关联程度可以向用户推荐资源,其中向用户推荐的资源可以在个性化推荐列表中给出,资源的推荐装置可以将个性化推荐列表发送至用户操作的终端进行显示,目标用户从个性化推荐列表可以看到推荐给该用户的资源都有哪些。
详细的,步骤104根据资源集中每个资源与目标用户之间的被关联程度为目标用户生成个性化推荐列表,具体可以包括如下步骤:
对资源集中每个资源与目标用户之间的被关联程度按照数值大小进行排序,生成排序结果;
根据排序结果为目标用户生成个性化推荐列表,个性化推荐列表包括的T个资源为排序结果中数值从大到小的T个被关联程度分别对应的资源,T为正整数。
也就是说,得到每个资源与目标用户之间的被关联程度之后,对所有资源的被关联程度可以进行数值比较,以生成排序结果,根据这个排序结果可以生成个性化推荐列表,若需要向目标用户推荐T个资源,那么就可以按照排序结果从大到小的选择T个被关联程度对应的资源。
在本发明的一些实施例中,步骤104根据资源集中每个资源与目标用户之间的被关联程度为目标用户生成个性化推荐列表之后,本发明实施例提供的资源的推荐方法还包括如下步骤:
从个性化推荐列表中将与目标用户之间存在关联关系的资源去除掉。
也就是说,在本发明实施例中,向目标用户推荐的资源可能是资源集中与目标用户已经建立关联关系的资源,这些已经建立关联关系的资源可能对目标用户而言是不再需要的,所以在为目标用户生成个性化推荐列表之后,可以对个性化推荐列表做进一步的维护,将与目标用户已经建立关联关系的资源从个性化推荐列表中去除掉。具体的,在对资源集中所有资源与目标用户之间的被关联程度进行排序时,还可以对与目标用户已经建立关联关系的资源的被关联程度赋值为-1,使得与目标用户已经建立关联关系的资源的被关联程度的取值为最小,在这种情况下与目标用户已经建立关联关系的资源就不会存在于生成的个性化推荐列表中,其技术效果等同于将与目标用户已经建立关联关系的资源从个性化推荐列表中去除掉。
通过以上实施例对本发明实施例的描述可知,首先获取历史关联数据,其中,历史关联数据包括:用户集中的用户和资源集中的资源之间存在关联关系的数据,然后根据历史关联数据获取资源集中的每个资源分别与用户集中目标用户之间的被关联程度初值,接下来根据被关联程度初值和历史关联数据中的关联关系获取资源集中每个资源与目标用户之间的被关联程度,最后根据资源集中每个资源与目标用户之间的被关联程度为目标用户生成个性化推荐列表,从而可以根据生成的个性化推荐列表向目标用户推荐资源。由于本发明实施例中通过资源与目标用户之间的被关联程度可以刻画出资源与用户之间的紧密联系程度,根据该被关联程度为目标用户推荐的资源可以更好的迎合目标用户的需要,在各个资源的数目有限时可以将有限的资源向更有紧密联系的潜在用户推荐,这些有限的资源更容易得到用户的认可,通过第一权重和第二权重的参数调节,防止少量热门资源过度推荐给过多的用户造成推荐系统拥塞,提高资源有限时向用户推荐资源的准确性、高效性和多样性。
为便于更好的理解和实施本发明实施例的上述方案,下面举例相应的应用场景来进行具体说明。以向用户推荐商品为例进行详细举例说明,主要可包括如下步骤:
(1)首先从商品数据库中抽取历史关联数据,即一个合适时间范围内的购买记录,然后从历史关联数据中抽取出用户ID和商品ID,对用户ID和商品ID进行k-匿名化处理,形成一个匿名化的历史关联数据,该历史关联数据为“用户-商品”购买记录。
(2)根据步骤(1)的“用户-商品”购买记录,建立“用户-商品”二部分图。
具体的,“用户-商品”二部分图的构建过程包括:
请参阅如图2所示,为本发明实施例中建立“用户-商品”二部分图的应用场景示意图,其中,每个用户和每件商品在图中用点来表示,用户和商品之间已经存在的购买关系用边来表示,如果某用户选择了某个商品,则他们之间就产生一条连边,所有用户构成用户集,所有商品构成商品集,用户集内部没有连边,商品集内部也没有连边,如图2所示,方框表示商品,圆圈表示用户,对于图2中最左边部分,虚线的圆圈表示目标用户,其余的用户都用实线来表示,与目标用户建立有关联关系的商品用虚线的方框来表示,与目标用户没有建立关联关系的商品用实线的方框来表示,在图2中最左部分中方框与圆圈之间的连线表示建立有关联关系的商品和用户之间的连边,若某个商品被某个用户购买过,则在这两者之间就产生有一条连边,将历史关联数据中的所有信息提取后都表示在图2的最左部分中,以对目标用户的被关联程度初值计算为例,虚线的方框表示与目标用户之间产生过购买关系,取值为1,其余的实线的方框表示没有与目标用户产生过购买关系,用0表示。
(3)对于某一目标用户,根据其历史关联数据,在“用户-商品”二部分图上进行一次“喜爱程度”扩散,计算用户从其他商品处获得的喜爱程度值。
每个用户的喜爱程度值的计算公式是:
其中n表示商品集中的商品个数,fα指的是第α个资源与所述目标用户之间的被关联程度初值,即商品α对目标用户的被喜爱程度初始值(即前述实施例中的被关联程度初值),如果该商品被目标用户购买过,则其值为1,否则,为0。
miα指的是第α个资源与第i个用户之间是否存在关联关系,若第α个资源与第i个用户之间存在关联关系,miα取值为1,若第α个资源与第i个用户之间不存在关联关系,miα取值为0,wiα指的是对第α个资源与第i个用户之间建立的连边设置的第一权重。
请参阅如图2所示,对于图2的中间部分,为将被关联程度初值从商品传递给用户之后,计算得到的每个用户对所有商品的喜爱程度,举例说明,通过上述Ui公式的计算,假设第一权重调整幂值γ=-1,得到用户集中的四个用户得到的喜爱程度分别为:1、5/14、2/5、1/3。
(4)在“用户-商品”二部分图上进行二次“喜爱程度”扩散计算。
每个商品的被喜爱程度的计算公式为:
其中,t表示用户集中的用户个数,β指的是资源集中的第β个资源,Ui指的是第i个用户与资源集中所有资源之间的关联程度,miβ指的是第β个资源与第i个用户之间是否存在关联关系,若第β个资源与第i个用户之间存在关联关系,miβ取值为1,若第β个资源与第i个用户之间不存在关联关系,miβ取值为0,wiβ指的是对于第β个资源与第i个用户之间建立的连边设置的第二权重。
通过步骤(3)和步骤(4)可知,先把每个商品的被喜爱程度初始值依照连边关系含权地传递给每个与之有连边的用户,计算得到每个用户的全部的喜爱程度值,再依照连边关系传递回商品,如图2中中间部分和最右部分所示,是步骤(3)和(4)这两步扩散过程在一个示例网络上的演示。图2中,圆圈右边的数字表示用户在一步扩散后获得的喜爱程度,方块左边的数字表示商品在二步扩散后的被喜爱程度,举例说明,假设第二权重调整幂值η=0,得到商品集中6个商品与目标用户之间的被喜爱程度的取值分别为:300/840、570/840、439/785、308/840、560/840、290/840。可以理解的是,第一权重调整幂值和第二权重调整幂值还可以根据具体的应用场景来取具体的数值,通过调整两个权重参数可以实现多样性高的推荐结果。
(5)把目标用户已经购买过的商品的喜爱程度赋值为-1,再把所有的商品被喜爱程度按照数值大小进行排序,根据推荐个数要求,选择被喜爱程度的取值排在前面的商品生成目标用户的个性化推荐列表。
例如,若商品集中6个商品的被喜爱程度的取值排序从大到小于依次为:570/840、560/840、439/785、308/840、300/840、290/840,由于570/840,560/840,439/785所对应的商品都是目标用户已经买过的商品,这三个商品的被喜爱程度值为-1,不需要再被推荐,因此,若推荐个数要求推荐2个商品,则可以选择308/840、300/840分别对应的商品向用户推荐。
(6)将个性化推荐列表展示在用户终端。
通过以上对本发明实施例的举例说明可知,首先从资源数据库里抽取出一定时间范围的历史购买记录,为保护用户的隐私安全,把用户ID和商品ID进行匿名化处理,然后建立“用户-商品”二部分图,计算用户对商品的可能的被喜爱程度,商品的被喜爱程度越大,则越值得推荐。生成个性化推荐列表之后,可以将目标用户已经购买过的商品从个性化推荐列表中剔除掉,显示的是在没有购买过的商品中,用户具有不同的喜爱程度的商品。用户通过终端接收到资源的推荐装置推送的资源信息,最后还可以对推荐效果评估,对比推荐的结果和用户的实际选择,对推荐的成功率进行综合性能。
所以,本发明通过分析用户的历史关联数据,初始时为每一个用户设定对应的各个商品的被喜爱程度初始值,然后通过所有用户与商品之间的关联关系二部分图,进行含权形式的喜爱程度的扩散计算,根据最终的被喜爱程度值的大小,预测每个用户对不同商品的喜好程度,从而实现对商品的个性化推荐。由于含权形式的喜爱程度传递能够非常有效地优化不同用户和商品上的兴趣分布,极大地改善商品之间的连通关系,使得推荐结果不仅有较高的准确性和多样性,还能优化用户对商品的选择,避免系统陷入拥塞状态,极大地弥补了现有推荐方法的不足。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
为便于更好的实施本发明实施例的上述方案,下面还提供用于实施上述方案的相关装置。
请参阅图3-a所示,本发明实施例提供的一种资源的推荐装置300,可以包括:数据获取模块301、初值计算模块302、终值计算模块303、资源推荐模块304,其中,
数据获取模块301,用于取历史关联数据,所述历史关联数据包括:用户集中的用户和资源集中的资源之间存在关联关系的数据,其中,所述用户集包括至少两个用户,所述资源集包括至少两个资源;
初值计算模块302,用于根据所述历史关联数据获取所述资源集中的每个资源分别与所述用户集中目标用户之间的被关联程度初值,所述目标用户包括需要推荐资源的所述用户集中的用户;
终值计算模块303,用于根据所述被关联程度初值和所述历史关联数据中的关联关系获取所述资源集中每个资源与目标用户之间的被关联程度,所述被关联程度为所述资源集中每个资源与所述目标用户之间的被关联程度终值;
资源推荐模块304,用于根据所述资源集中每个资源与所述目标用户之间的被关联程度为所述目标用户生成个性化推荐列表,所述个性化推荐列表包括为所述目标用户推荐的至少一个资源。
在本发明的一些实施例中,请参阅如图3-b所示,所述终值计算模块303,包括:
第一传递子模块3031,用于将第一资源与所述用户集中目标用户之间的被关联程度初值传递给所述用户集中与所述第一资源存在关联关系的所有用户;
第一计算子模块3032,用于当所述第一资源依次表示所述资源集中的各个资源时,通过向所述用户集中所有用户传递被关联程度初值,计算所述用户集中每个用户与所述资源集中所有资源之间的关联程度;
第二传递子模块3033,用于将第一用户与所述资源集中所有资源之间的关联程度传递给所述资源集中与所述第一用户存在关联关系的所有资源;
第二计算子模块3034,用于当所述第一用户依次表示所述用户集中的各个用户时,通过向所述资源集中所有资源传递关联程度,计算所述资源集中每个资源与目标用户之间的被关联程度。
在本发明的一些实施例中,请参阅如图3-c所示,相对于如图3-b所示的终值计算模块,终值计算模块303还包括:
二部分图构建子模块3030,用于所述第一传递子模块3031将第一资源与所述用户集中目标用户之间的被关联程度初值传递给所述用户集中与所述第一资源存在关联关系的所有用户之前,根据所述历史关联数据构建所述用户集中的用户和所述资源集中的资源之间的关联关系二部分图,其中,所述关联关系二部分图包括:所述用户集中的所有用户、所述资源集中的所有资源、存在关联关系的用户和资源之间建立的连边。
在本发明的一些实施例中,所述第一传递模块3031,具体用于在所述关联关系二部分图上将所述第一资源与所述用户集中目标用户之间的被关联程度初值沿着所述连边传递给所述用户集中与所述第一资源建立有连边的所有用户。
在本发明的一些实施例中,所述第一计算子模块3032,包括:第一计算单元,其中,
所述第一计算单元,用于当所述第一资源依次表示所述资源集中的各个资源时,根据所述第一资源与所述用户集中目标用户之间的被关联程度初值、所述历史关联数据中的关联关系和对所述连边设置的第一权重计算所述用户集中每个用户与所述资源集中所有资源之间的关联程度。
在本发明的一些实施例中,所述第二传递模块3033,具体用于在所述关联关系二部分图上将所述第一用户与所述资源集中所有资源之间的关联程度沿着所述连边传递给所述资源集中与所述第一用户建立有连边的所有资源。
在本发明的一些实施例中,所述第二计算子模块3034,包括:第二计算单元,其中,
所述第二计算单元,用于当所述第一用户依次表示所述用户集中的各个用户时,根据所述第一用户与所述资源集中所有资源之间的关联程度、所述历史关联数据中的关联关系和对所述连边设置的第二权重计算所述资源集中每个资源与目标用户之间的被关联程度。
在本发明的一些实施例中,所述二部分图构建子模块3030,具体用于将所述用户集中的每个用户和所述资源集中的每个资源在所述关联关系二部分图中用点来表示;若所述用户集中的用户和所述资源集中的资源之间存在关联关系,则在存在关联关系的用户和资源各自代表的点之间建立连边,其中,所述用户集的内部不存在连边,所述资源集的内部不存在连边。
在本发明的一些实施例中,所述第一计算单元,具体用于通过如下方式计算所述用户集中第i个用户与所述资源集中所有资源之间的关联程度Ui:
其中,所述i为大于等于1且小于t的正整数,所述t为所述用户集中用户的个数,所述α为大于等于1且小于n的正整数,所述n为所述资源集中资源的个数,所述α指的是所述资源集中的第α个资源,所述fα指的是第α个资源与所述目标用户之间的被关联程度初值,若所述第α个资源与所述目标用户之间存在关联关系,所述fα取值为1,若所述第α个资源与所述目标用户之间不存在关联关系,所述fα取值为0,所述miα指的是所述第α个资源与所述第i个用户之间是否存在关联关系,若所述第α个资源与所述第i个用户之间存在关联关系,所述miα取值为1,若所述第α个资源与所述第i个用户之间不存在关联关系,所述miα取值为0,所述wiα指的是对所述第α个资源与所述第i个用户之间建立的连边设置的第一权重。
在本发明的一些实施例中,所述第一计算子模块,还用于通过如下方式计算所述第一权重:
wiα=(kikα)γ,
其中,所述wiα指的是对所述第α个资源与所述第i个用户之间建立的连边设置的第一权重,所述ki为所述资源集中与所述用户集中第i个用户有关联关系的资源个数,所述kα为所述用户集中与所述资源集中第α个资源之间有关联关系的用户个数,所述γ为所述第一权重的调整幂值。
在本发明的一些实施例中,所述第二计算单元,具体用于通过如下方式计算所述资源集中第β个资源与所述目标用户之间的被关联程度Fβ:
其中,所述i为大于等于1且小于t的正整数,所述t为所述用户集中用户的个数,所述β为大于等于1且小于n的正整数,所述n为所述资源集中资源的个数,所述β指的是所述资源集中的第β个资源,所述Ui指的是第i个用户与所述资源集中所有资源之间的关联程度,所述miβ指的是第β个资源与所述第i个用户之间是否存在关联关系,若所述第β个资源与所述第i个用户之间存在关联关系,所述miβ取值为1,若所述第β个资源与所述第i个用户之间不存在关联关系,所述miβ取值为0,所述wiβ指的是对于所述第β个资源与所述第i个用户之间建立的连边设置的第二权重。
在本发明的一些实施例中,所述第二计算子模块,还用于通过如下方式计算所述第二权重:
wiβ=(kikβ)η,
其中,所述wiβ指的是对所述第β个资源与所述第i个用户之间建立的连边设置的第二权重,所述ki为所述资源集中与所述用户集中第i个用户有关联的资源个数,所述kβ为所述用户集中与所述资源集中第β个资源有关联关系的用户个数,所述η为对所述第二权重的调整幂值。
在本发明的一些实施例中,所述资源推荐模块304,具体用于对所述资源集中每个资源与所述目标用户之间的被关联程度按照数值大小进行排序,生成排序结果;根据所述排序结果为所述目标用户生成个性化推荐列表,所述个性化推荐列表包括的T个资源为所述排序结果中数值从大到小的T个程度分别对应的资源,所述T为正整数。
在本发明的一些实施例中,请参阅如图3-d所示,相对于如图3-a所示的资源的推荐装置,所述资源的推荐装置300,还包括:匿名处理模块305,用于所述数据获取模块301所述从资源数据库中获取历史关联数据之后,对所述历史关联数据中包括的用户和资源进行匿名化处理。
在本发明的一些实施例中,所述资源推荐模块304,还用于根据所述资源集中每个资源与所述目标用户之间的被关联程度为所述目标用户生成个性化推荐列表之后,从所述个性化推荐列表中将与所述目标用户之间存在关联关系的资源去除掉。
通过以上对本发明实施例的描述可知,首先获取历史关联数据,其中,历史关联数据包括:用户集中的用户和资源集中的资源之间存在关联关系的数据,然后根据历史关联数据获取资源集中的每个资源分别与用户集中目标用户之间的被关联程度初值,接下来根据被关联程度初值和历史关联数据中的关联关系获取资源集中每个资源与目标用户之间的被关联程度,最后根据资源集中每个资源与目标用户之间的被关联程度为目标用户生成个性化推荐列表,从而可以根据生成的个性化推荐列表向目标用户推荐资源。由于本发明实施例中通过资源与目标用户之间的被关联程度可以刻画出资源与用户之间的紧密联系程度,根据该被关联程度为目标用户推荐的资源可以更好的迎合目标用户的需要,在各个资源的数目有限时可以将有限的资源向更有紧密联系的潜在用户推荐,这些有限的资源更容易得到用户的认可,通过第一权重和第二权重的参数调节,防止少量热门资源过度推荐给过多的用户造成推荐系统拥塞,提高资源有限时向用户推荐资源的准确性、高效性和多样性。
以下主要以本发明实施例的资源的推荐方法应用于服务器中来举例说明,图4是本发明实施例提供的资源的推荐方法应用于一种服务器的结构示意图,该服务器400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)422(例如,一个或一个以上处理器)和存储器432,一个或一个以上存储应用程序442或数据444的存储介质430(例如一个或一个以上海量存储设备)。其中,存储器432和存储介质430可以是短暂存储或持久存储。存储在存储介质430的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器422可以设置为与存储介质430通信,在服务器400上执行存储介质430中的一系列指令操作。
服务器400还可以包括一个或一个以上电源426,一个或一个以上有线或无线网络接口450,一个或一个以上输入输出接口458,和/或,一个或一个以上操作系统441,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图3-a、图3-b、图3-c、图3-d所示的节点重要性排序的系统所执行的方法。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种资源的推荐方法,其特征在于,包括:
获取历史关联数据,所述历史关联数据包括:用户集中的用户和资源集中的资源之间存在关联关系的数据,其中,所述用户集包括至少两个用户,所述资源集包括至少两个资源;
根据所述历史关联数据获取所述资源集中的每个资源分别与所述用户集中目标用户之间的被关联程度初值,所述目标用户包括需要推荐资源的所述用户集中的用户;
根据所述被关联程度初值和所述历史关联数据中的关联关系获取所述资源集中每个资源与目标用户之间的被关联程度,所述被关联程度为所述资源集中每个资源与所述目标用户之间的被关联程度终值;
根据所述资源集中每个资源与所述目标用户之间的被关联程度为所述目标用户生成个性化推荐列表,所述个性化推荐列表包括为所述目标用户推荐的至少一个资源;
其中,所述根据所述被关联程度初值和所述历史关联数据中的关联关系获取所述资源集中每个资源与目标用户之间的被关联程度,包括:
根据所述历史关联数据构建所述用户集中的用户和所述资源集中的资源之间的关联关系二部分图,其中,所述关联关系二部分图包括:所述用户集中的所有用户、所述资源集中的所有资源、存在关联关系的用户和资源之间建立的连边;
将第一资源与所述用户集中目标用户之间的被关联程度初值传递给所述用户集中与所述第一资源存在关联关系的所有用户;
当所述第一资源依次表示所述资源集中的各个资源时,根据所述第一资源与所述用户集中目标用户之间的被关联程度初值、所述历史关联数据中的关联关系和对所述连边设置的第一权重计算所述用户集中每个用户与所述资源集中所有资源之间的关联程度;
将第一用户与所述资源集中所有资源之间的关联程度传递给所述资源集中与所述第一用户存在关联关系的所有资源;
当所述第一用户依次表示所述用户集中的各个用户时,根据所述第一用户与所述资源集中所有资源之间的关联程度、所述历史关联数据中的关联关系和对所述连边设置的第二权重计算所述资源集中每个资源与目标用户之间的被关联程度;
所述第一权重为:
wiα=(kikα)γ,
其中,所述wiα指的是对第α个资源与第i个用户之间建立的连边设置的第一权重,所述ki为所述资源集中与所述用户集中第i个用户有关联关系的资源个数,所述kα为所述用户集中与所述资源集中第α个资源之间有关联关系的用户个数,所述γ为所述第一权重的调整幂值;
所述第二权重为:
wiβ=(kikβ)η,
其中,所述wiβ指的是对第β个资源与第i个用户之间建立的连边设置的第二权重,所述kβ为所述用户集中与所述资源集中第β个资源有关联关系的用户个数,所述η为对所述第二权重的调整幂值。
2.根据权利要求1所述的方法,其特征在于,所述将第一资源与所述用户集中目标用户之间的被关联程度初值传递给所述用户集中与所述第一资源存在关联关系的所有用户,包括:
在所述关联关系二部分图上将所述第一资源与所述用户集中目标用户之间的被关联程度初值沿着所述连边传递给所述用户集中与所述第一资源建立有连边的所有用户。
3.根据权利要求1所述的方法,其特征在于,所述将第一用户与所述资源集中所有资源之间的关联程度传递给所述资源集中与所述第一用户存在关联关系的所有资源,包括:
在所述关联关系二部分图上将所述第一用户与所述资源集中所有资源之间的关联程度沿着所述连边传递给所述资源集中与所述第一用户建立有连边的所有资源。
4.根据权利要求1所述的方法,其特征在于,所述根据所述历史关联数据构建所述用户集中的用户和所述资源集中的资源之间的关联关系二部分图,包括:
将所述用户集中的每个用户和所述资源集中的每个资源在所述关联关系二部分图中用点来表示;
若所述用户集中的用户和所述资源集中的资源之间存在关联关系,则在存在关联关系的用户和资源各自代表的点之间建立连边,其中,所述用户集的内部不存在连边,所述资源集的内部不存在连边。
5.一种资源的推荐装置,其特征在于,包括:
数据获取模块,用于获取历史关联数据,所述历史关联数据包括:用户集中的用户和资源集中的资源之间存在关联关系的数据,其中,所述用户集包括至少两个用户,所述资源集包括至少两个资源;
初值计算模块,用于根据所述历史关联数据获取所述资源集中的每个资源分别与所述用户集中目标用户之间的被关联程度初值,所述目标用户包括需要推荐资源的所述用户集中的用户;
终值计算模块,用于根据所述被关联程度初值和所述历史关联数据中的关联关系获取所述资源集中每个资源与目标用户之间的被关联程度,所述被关联程度为所述资源集中每个资源与所述目标用户之间的被关联程度终值;
资源推荐模块,用于根据所述资源集中每个资源与所述目标用户之间的被关联程度为所述目标用户生成个性化推荐列表,所述个性化推荐列表包括为所述目标用户推荐的至少一个资源;
所述终值计算模块,包括:
第一传递子模块,用于将第一资源与所述用户集中目标用户之间的被关联程度初值传递给所述用户集中与所述第一资源存在关联关系的所有用户;
第一计算子模块,用于当所述第一资源依次表示所述资源集中的各个资源时,通过向所述用户集中所有用户传递被关联程度初值,计算所述用户集中每个用户与所述资源集中所有资源之间的关联程度;
第二传递子模块,用于将第一用户与所述资源集中所有资源之间的关联程度传递给所述资源集中与所述第一用户存在关联关系的所有资源;
第二计算子模块,用于当所述第一用户依次表示所述用户集中的各个用户时,通过向所述资源集中所有资源传递关联程度,计算所述资源集中每个资源与目标用户之间的被关联程度;
二部分图构建子模块,用于所述第一传递子模块将第一资源与所述用户集中目标用户之间的被关联程度初值传递给所述用户集中与所述第一资源存在关联关系的所有用户之前,根据所述历史关联数据构建所述用户集中的用户和所述资源集中的资源之间的关联关系二部分图,其中,所述关联关系二部分图包括:所述用户集中的所有用户、所述资源集中的所有资源、存在关联关系的用户和资源之间建立的连边;
所述第一计算子模块,包括:第一计算单元,其中,
所述第一计算单元,用于当所述第一资源依次表示所述资源集中的各个资源时,根据所述第一资源与所述用户集中目标用户之间的被关联程度初值、所述历史关联数据中的关联关系和对所述连边设置的第一权重计算所述用户集中每个用户与所述资源集中所有资源之间的关联程度;
所述第二计算子模块,包括:第二计算单元,其中,
所述第二计算单元,用于当所述第一用户依次表示所述用户集中的各个用户时,根据所述第一用户与所述资源集中所有资源之间的关联程度、所述历史关联数据中的关联关系和对所述连边设置的第二权重计算所述资源集中每个资源与目标用户之间的被关联程度;
所述第一权重为:
wiα=(kikα)γ,
其中,所述wiα指的是对第α个资源与第i个用户之间建立的连边设置的第一权重,所述ki为所述资源集中与所述用户集中第i个用户有关联关系的资源个数,所述kα为所述用户集中与所述资源集中第α个资源之间有关联关系的用户个数,所述γ为所述第一权重的调整幂值;
所述第二权重为:
wiβ=(kikβ)η,
其中,所述wiβ指的是对第β个资源与第i个用户之间建立的连边设置的第二权重,所述kβ为所述用户集中与所述资源集中第β个资源有关联关系的用户个数,所述η为对所述第二权重的调整幂值。
6.根据权利要求5所述的装置,其特征在于,所述第一传递子模块,具体用于在所述关联关系二部分图上将所述第一资源与所述用户集中目标用户之间的被关联程度初值沿着所述连边传递给所述用户集中与所述第一资源建立有连边的所有用户。
7.根据权利要求5所述的装置,其特征在于,所述第二传递子模块,具体用于在所述关联关系二部分图上将所述第一用户与所述资源集中所有资源之间的关联程度沿着所述连边传递给所述资源集中与所述第一用户建立有连边的所有资源。
8.根据权利要求5所述的装置,其特征在于,所述二部分图构建子模块,具体用于将所述用户集中的每个用户和所述资源集中的每个资源在所述关联关系二部分图中用点来表示;若所述用户集中的用户和所述资源集中的资源之间存在关联关系,则在存在关联关系的用户和资源各自代表的点之间建立连边,其中,所述用户集的内部不存在连边,所述资源集的内部不存在连边。
9.一种服务器,其特征在于,包括:存储介质与中央处理器;
其中,所述存储介质用于存储有程序,所述程序包括至少一个模块,所述模块包括可在所述服务器中执行的指令操作;
所述中央处理器用于在所述服务器上执行所述存储介质中的所述指令操作,以实现如权利要求1~4任一项所述的资源的推荐方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,所述指令用于使计算机设备执行如权利要求1~4任一项所述的资源的推荐方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410577628.8A CN105528379B (zh) | 2014-10-24 | 2014-10-24 | 一种资源的推荐方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410577628.8A CN105528379B (zh) | 2014-10-24 | 2014-10-24 | 一种资源的推荐方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105528379A CN105528379A (zh) | 2016-04-27 |
CN105528379B true CN105528379B (zh) | 2020-09-22 |
Family
ID=55770605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410577628.8A Active CN105528379B (zh) | 2014-10-24 | 2014-10-24 | 一种资源的推荐方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105528379B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109002530A (zh) * | 2018-07-17 | 2018-12-14 | 佛山市灏金赢科技有限公司 | 一种资源推荐方法及装置 |
CN109471978B (zh) * | 2018-11-22 | 2022-01-28 | 腾讯科技(深圳)有限公司 | 一种电子资源推荐方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944218A (zh) * | 2010-01-27 | 2011-01-12 | 北京大学 | 社会网络下的基于图的个性化推荐方法及其系统 |
CN102629257A (zh) * | 2012-02-29 | 2012-08-08 | 南京大学 | 一种基于关键字的电子商务网站商品推荐方法 |
CN103279512A (zh) * | 2013-05-17 | 2013-09-04 | 湖州师范学院 | 利用社会网络上最有影响力节点实现高效病毒营销的方法 |
CN103544632A (zh) * | 2013-07-22 | 2014-01-29 | 杭州师范大学 | 一种网络商品个性化推荐方法及系统 |
CN103995823A (zh) * | 2014-03-25 | 2014-08-20 | 南京邮电大学 | 一种基于社交网络的信息推荐方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9195941B2 (en) * | 2013-04-23 | 2015-11-24 | International Business Machines Corporation | Predictive and descriptive analysis on relations graphs with heterogeneous entities |
-
2014
- 2014-10-24 CN CN201410577628.8A patent/CN105528379B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944218A (zh) * | 2010-01-27 | 2011-01-12 | 北京大学 | 社会网络下的基于图的个性化推荐方法及其系统 |
CN102629257A (zh) * | 2012-02-29 | 2012-08-08 | 南京大学 | 一种基于关键字的电子商务网站商品推荐方法 |
CN103279512A (zh) * | 2013-05-17 | 2013-09-04 | 湖州师范学院 | 利用社会网络上最有影响力节点实现高效病毒营销的方法 |
CN103544632A (zh) * | 2013-07-22 | 2014-01-29 | 杭州师范大学 | 一种网络商品个性化推荐方法及系统 |
CN103995823A (zh) * | 2014-03-25 | 2014-08-20 | 南京邮电大学 | 一种基于社交网络的信息推荐方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105528379A (zh) | 2016-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10789634B2 (en) | Personalized recommendation method and system, and computer-readable record medium | |
US10657574B2 (en) | Item recommendation techniques | |
WO2020048084A1 (zh) | 资源推荐方法、装置、计算机设备及计算机可读存储介质 | |
US20150379609A1 (en) | Generating recommendations for unfamiliar users by utilizing social side information | |
US20120109946A1 (en) | Determination of category information using multiple | |
KR20160069485A (ko) | 개인화 추천 방법, 시스템 및 기록 매체 | |
CN107463675B (zh) | 数据处理方法及其系统 | |
CN103646341B (zh) | 一种网站提供对象的推荐方法和装置 | |
CN110555712A (zh) | 商品关联程度确定方法及装置 | |
CN112149003B (zh) | 商品社群推荐方法、装置和计算机设备 | |
CN111783810A (zh) | 用于确定用户的属性信息的方法和装置 | |
CN107103028A (zh) | 一种信息处理方法及装置 | |
CN104346428A (zh) | 信息处理装置、信息处理方法及程序 | |
CN112330382B (zh) | 物品推荐方法、装置、计算设备和介质 | |
CN111967924A (zh) | 商品推荐方法、商品推荐装置、计算机设备和介质 | |
CN112241904A (zh) | 商品销售量预测方法、装置、计算机设备和存储介质 | |
CN117056605A (zh) | 一种内容推荐方法及装置 | |
US20160078521A1 (en) | Systems and methods for recommending a service for use by a particular user | |
CN105528379B (zh) | 一种资源的推荐方法和装置 | |
US10474688B2 (en) | System and method to recommend a bundle of items based on item/user tagging and co-install graph | |
CN112926090A (zh) | 基于差分隐私的业务分析方法及装置 | |
KR20140031429A (ko) | 아이템 추천 시스템과 방법 및 이를 지원하는 장치 | |
CN110796520A (zh) | 商品推荐的方法、装置、计算设备以及介质 | |
US20200294079A1 (en) | Method and apparatus for calculating promotion adjusted loyalty | |
US20140025527A1 (en) | Automated Negotiation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |