CN110032682B - 一种信息推荐列表生成方法、装置及设备 - Google Patents
一种信息推荐列表生成方法、装置及设备 Download PDFInfo
- Publication number
- CN110032682B CN110032682B CN201910309766.0A CN201910309766A CN110032682B CN 110032682 B CN110032682 B CN 110032682B CN 201910309766 A CN201910309766 A CN 201910309766A CN 110032682 B CN110032682 B CN 110032682B
- Authority
- CN
- China
- Prior art keywords
- node
- abstract
- original
- vector
- social network
- 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 65
- 239000013598 vector Substances 0.000 claims abstract description 260
- 230000001902 propagating effect Effects 0.000 claims abstract description 7
- 238000005295 random walk Methods 0.000 claims description 64
- 238000004422 calculation algorithm Methods 0.000 claims description 37
- 230000011218 segmentation Effects 0.000 claims description 29
- 238000003860 storage Methods 0.000 claims description 21
- 238000012512 characterization method Methods 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 8
- 238000012163 sequencing technique Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 10
- 238000004364 calculation method Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 108090000368 Fibroblast growth factor 8 Proteins 0.000 description 6
- 102000005162 pleiotrophin Human genes 0.000 description 6
- 238000002474 experimental method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 102220579916 E3 ubiquitin-protein ligase RING2_S41D_mutation Human genes 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 102220563037 BLOC-1-related complex subunit 5_S41C_mutation Human genes 0.000 description 1
- 241000282414 Homo sapiens Species 0.000 description 1
- 241001229889 Metis Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种信息推荐列表生成方法、装置及设备,所述方法包括获取原始社交网络,并将所述原始社交网络分割为抽象社交网络;获取所述抽象社交网络中抽象节点的节点向量;在所述原始社交网络上传播所述抽象节点的节点向量,得到所述原始社交网络中原始节点的初始向量;基于所述原始节点的初始向量得到所述原始节点的最终特征向量;根据所述原始节点的最终特征向量生成信息推荐列表;根据所述信息推荐列表对当前原始节点进行信息推荐。本发明得到的信息推荐列表具有较高的准确性;从而使得信息推荐的效果中具有较高的用户点击率。
Description
技术领域
本发明涉及网络技术领域,尤其涉及一种信息推荐列表生成方法、装置及设备。
背景技术
近年来,随着网络技术的发展,在线社交网络已经深入到用户生活的方方面面;其中,在线社交网络中的游戏社交网络种类繁多,所述游戏社交网络属于一种允许用户与好友建立关系、并与好友竞争产生游戏数据统计量的社交网络。
为了便于游戏网络关系的建立,游戏网络服务可基于多种因素进行好友推荐。例如,游戏网络服务可以识别两个玩家的好友重叠度,并基于一个玩家的好友向另一个玩家进行好友推荐;另外,游戏网络服务可以从一个玩家的电子邮箱账号中获得联系人作为所述玩家的潜在推荐好友;游戏网络服务也可以允许玩家通过电子邮箱、用户身份等手动搜索其他好友玩家等等。虽然这些推荐方法中生成的好友推荐列表具有一定量的用户点击率;但是被点击确认成为游戏好友的概率并不高。
因此,需要提供一种能够具有较高的用户点击率、并提升建立关联关系的概率的信息推荐列表生成方案。
发明内容
为了解决现有技术中的问题,本发明提供了一种信息推荐列表生成方法、装置及设备,具体地:
一方面提供了一种信息推荐列表生成方法,所述方法包括:
获取原始社交网络,并将所述原始社交网络分割为抽象社交网络;所述原始社交网络包括原始节点,所述抽象社交网络包括与所述原始社交网络的分割结果相对应的抽象节点;
获取所述抽象社交网络中抽象节点的节点向量;
在所述原始社交网络上传播所述抽象节点的节点向量,得到所述原始社交网络中原始节点的初始向量;
基于所述原始节点的初始向量得到所述原始节点的最终特征向量;
根据所述原始节点的最终特征向量生成信息推荐列表;
根据所述信息推荐列表对当前原始节点进行信息推荐。
另一方面提供了一种信息推荐列表生成装置,所述装置包括:
抽象社交网络获取模块,用于获取原始社交网络,并将所述原始社交网络分割为抽象社交网络;所述原始社交网络包括原始节点,所述抽象社交网络包括与所述原始社交网络的分割结果相对应的抽象节点;
抽象节点向量获取模块,用于获取所述抽象社交网络中抽象节点的节点向量;
初始向量获取模块,用于在所述原始社交网络上传播所述抽象节点的节点向量,得到所述原始社交网络中原始节点的初始向量;
最终向量获取模块,用于基于所述原始节点的初始向量得到所述原始节点的最终特征向量;
信息推荐列表得到模块,用于根据所述原始节点的最终特征向量生成信息推荐列表。
进一步地,所述初始向量获取模块,包括:
第一预先特征向量确定单元,用于在所述原始社交网络上传播所述抽象节点的节点向量,以确定出所述抽象节点对应的分割结果中的原始节点的预先特征向量;
第二预先特征向量确定单元,用于获取所述原始节点的邻居节点集合,以及所述邻居节点集合中的其他原始节点的预先特征向量;
综合向量得到单元,用于根据所述原始节点的预先特征向量以及所述邻居节点集合中其他原始节点的预先特征向量,得到所述原始节点的综合向量;
初始向量得到单元,用于根据所述原始节点的综合向量以及所述原始节点的预先特征向量,确定出所述原始节点的初始向量。
进一步地,所述综合向量得到单元,包括:
邻居平均向量得到子单元,用于根据所述邻居节点集合中的其他原始节点的预先特征向量,得到所述原始节点的邻居平均向量;
综合向量得到子单元,用于由所述原始节点的邻居平均向量以及所述原始节点的预先特征向量,得到所述原始节点的综合向量。
一种具体地实施方式中,所述初始向量得到单元,可以包括:
欧氏距离获取子单元,用于获取所述原始节点的综合向量与所述原始节点的预先特征向量之间的欧氏距离;
初始向量得到子单元,用于在所述欧氏距离小于预设距离数值时,由所述原始节点的综合向量得到所述原始节点的初始向量。
进一步地,所述信息推荐列表得到模块,包括:
欧式距离得到单元,用于计算当前原始节点的最终特征向量与所述原始社交网络中其他原始节点的最终特征向量之间的欧式距离;
信息推荐列表构建单元,用于根据计算得到的欧式距离的排序结果,构建出所述当前原始节点的信息推荐列表。
进一步地,所述装置还包括权重值得到模块,所述权重值得到模块包括:
抽象连接边获取单元,用于获取所述抽象社交网络中的抽象连接边;其中,每个抽象连接边均具有对应的抽象节点组合;
原始连接边数量获取单元,用于获取所述抽象节点组合之间的原始连接边数量;
权重值得到单元,用于根据所述抽象节点组合之间的原始连接边数量,计算得到所述抽象连接边的权重值。
进一步地,所述抽象节点向量获取模块,包括:
随机游走序列集合获取单元,用于获取所述抽象节点的随机游走序列集合;
抽象节点向量得到模块,用于将所述抽象节点的随机游走序列集合输入网络表征学习算法中,得到所述抽象节点的节点向量;
其中,随机游走序列集合获取单元,包括:
步长获取子单元,用于获取预设游走步长;
游走序列得到子单元,用于根据所述预设游走步长对所述抽象节点进行随机游走,得到所述抽象节点的随机游走序列;
游走次数获取子单元,用于获取预设游走次数;
游走序列获取子单元,用于按照得到所述随机游走序列的方式,获取预设游走次数个随机游走序列;
游走序列集合得到子单元,用于由所述预设游走次数个随机游走序列,得到所述抽象节点的随机游走序列集合。
进一步地,所述游走序列得到子单元,包括:
权重值得到子单元,用于获取所述抽象节点关联的所有抽象连接边,并得到每个抽象连接边的权重值;
权重和得到子单元,用于根据各个抽象连接边的权重值得到所述抽象节点的权重和;
选取概率值得到子单元,用于根据所述抽象连接边的权重值以及所述抽象节点的权重和,计算得到所述抽象节点的下一抽象节点的选取概率值;
第一抽象节点确定子单元,用于根据随机参数以及所述下一抽象节点的选取概率值,确定出所述抽象节点的下一目标抽象节点;
第二抽象节点确定子单元,用于将所述下一目标抽象节点更新为新的抽象节点,并根据获取所述下一目标抽象节点的方式得到所述新的抽象节点的下一目标抽象节点;
序列得到子单元,用于依此获取预设数目个下一目标抽象节点,以得到满足所述随机游走序列长度的随机游走序列。
另一方面提供了一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的信息推荐列表生成方法。
本发明提供的一种信息推荐列表生成方法、装置及设备,具有的有益效果为:
本发明通过在原始社交网络上传播抽象社交网络中抽象节点的节点向量,得到所述原始社交网络中原始节点的初始向量;其中得到的初始向量的质量较好,进而使得基于所述原始节点的初始向量得到的最终特征向量具有较高的准确性;进一步使得由最终特征向量得到的信息推荐列表具有较高的准确性;从而使得根据所述信息推荐列表对当前原始节点进行信息推荐的效果中,具有较高的用户点击率。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本说明书实施例提供的信息推荐列表生成方法流程图;
图2(a)是本说明书实施例提供的一种原始社交网络结构示意图;
图2(b)是本说明书实施例提供的一种原始社交网络结构的分割结果示意图;
图3是本说明书实施例提供的由图2的原始社交网络结构得到的抽象社交网络的结构示意图;
图4是本说明书实施例提供的得到所述原始社交网络中原始节点的初始向量的步骤流程图;
图5是本说明书实施例提供的一种得到所述原始节点的初始向量的流程示意图;
图6是本说明书实施例提供的与图5中的流程步骤相对应的图形展示图;
图7是本说明书实施例提供的信息推荐列表生成方法为当前活跃玩家进行好友推荐列表的示意图;
图8是本说明书实施例提供的GPA和HARP的运行时间对比示意图;
图9是本说明书实施例提供的将本技术方案以及其他技术方案应用在穿越火线手游的好友召回点击率的数据柱状图;
图10是本说明书实施例提供的一种信息推荐列表生成装置的结构组成图;
图11是本说明书实施例提供的一种服务器设备的结构示意图。
具体实施方式
下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明提出了一种用于信息推荐的技术方案;其中,本技术方案包括一种基于图分割的网络表征学习算法的初始化技术,以及,进一步根据初始化技术的计算结果获取信息推荐列表,由所述信息推荐列表实现信息推荐的技术内容。
其中,网络表征学习(network embedding或者network representationlearning)算法,是通过网络表征学习将网络中每个节点映射为一个长度固定的向量,称为节点向量。其中,节点向量的长度通常远远小于网络中节点的数量,并且一般由人为指定而作为输入参数。常见的网络表征学习算法,包括DeepWalk、node2vec和LINE等等。
本说明书中的信息推荐技术能够应用到游戏社交网络的各种业务中。比如,王者荣耀的好友推荐、师徒推荐,以及穿越火线手游和QQ飞车端游的好友召回等等。其中,在游戏社交网络下的节点可以看做是游戏场景下的游戏玩家。
具体地,本说明书实施例提供了一种信息推荐列表生成方法,如图1所示,所述方法包括:
S202.获取原始社交网络,并将所述原始社交网络分割为抽象社交网络;所述原始社交网络包括原始节点,所述抽象社交网络包括与所述原始社交网络的分割结果相对应的抽象节点;
具体地,本实施例是将原始社交网络进行图分割得到网络区块,进一步将所述网络区块当作抽象节点,从而构建得到抽象社交网络。
本实施例中,基于图分割的算法对原始社交网络进行分割,能够使得到的抽象节点之间的边具有最小分割边数(minimal edge cut)的特点;因此可以更好地刻画出原始社交网络的整体结构。并且,本实施例基于图分割的技术能够减少计算量,避免多层次计算的繁琐。
详细地,若给定一个原始社交网络结构G=(V,E)和一个整数k;其中,V是原始节点集合,E是原始连接边集合,k是将所述原始社交网络分割得到的子集数;如果原始节点u到原始节点v有原始连接边,则有(u,v)在E中。进一步地,利用图分割算法将原始节点集合V分割成k个子集V1,V2,…,Vk;其中,这些子集满足两个条件:任何两个子集没有交集;并且所有子集的并集等于所有原始节点集合V。对应地,也就是:
(1)对于任意的1≤i≤j≤k,则有
(2)∪1≤i≤kVi=V。
其中,对于任意的1≤i≤k和1≤j≤k,子集Vi和子集Vj的分割边(edge cut)集合为Ci,j={(u,v)|u∈Vi,v∈Vj}。因此,一个分割算法的分割边的总集合可以表示为C=∪1≤i,j≤kCi,j。
进一步地,本实施例中可以采用原始节点数平衡的图分割算法,使得各个子集的大小都比较接近;则对应的的限制条件为其中0<ε<1。并且,若采用原始节点数平衡的图分割算法,还能够最小化分割边总集合C的大小,即减少跨子集的原始边的数量,以减少后期的计算量。
其中,本实施例中可以采用METIS算法进行图分割,快速地计算出满足上述要求的子集V1,V2,…,Vk。也可以采用社区发现算法(community detection)、标签传播算法(labelpropagation)等其他图分割算法。
例如,图2(a)给出了一个原始社交网络结构图G=(V,E),所述原始社交网络结构图中包含12个原始节点和16条原始连接边。将原始社交网络结构图G输入到图分割算法里,假设k=4;则如图2(b)所示可以得到4个原始节点子集V1={v1,v2,v3,v4},V2={v5,v6,v7},V3={v8,v9}和V4={v10,v11,v12}。进一步地,从图2(b)中可以得到,在该情况下的分割边总集合为C={(v4,v5),(v5,v8),(v5,v10),(v7,v11),(v9,v10)}。
需要说明的是,本实施例中的每个分割边连接的两个原始节点均是来自不同的网络区块(或子集)中;也可以说,每个分割边中的两个原始节点是对应着不同的抽象节点的。
S204.获取所述抽象社交网络中抽象节点的节点向量;
具体地,在所述抽象社交网络中运行网络表征学习算法,从而得到所述抽象节点的节点向量。
详细地,一种可行的实施方式中,步骤S204获取所述抽象社交网络中抽象节点的节点向量,之前可以包括:
S4a.获取所述抽象社交网络中的抽象连接边;其中,每个抽象连接边均具有对应的抽象节点组合;
S4b.获取所述抽象节点组合之间的原始连接边数量;
S4c.根据所述抽象节点组合之间的原始连接边数量,计算得到所述抽象连接边的权重值。
其中,基于图分割算法可以输出k个子集V1,V2,…,Vk,进一步地,将每个子集看做一个抽象节点可以构建出一个抽象节点数为k的抽象社交网络Ga=(Va,Ea)。具体来说,有如下两个步骤:
对于每个1≤i≤k,把子集Vi表示成一个抽象节点ui。于是,得到一个抽象节点集合Va={u1,u2,……,uk}。对于任意的1≤i≤k和1≤j≤k,如果子集Vi和子集Vj的分割边集合Ci,j不为空,则每个抽象节点组合(抽象节点ui和抽象节点uj)之间建立一条抽象连接边(ui,uj);进一步地,若设置抽象连接边(ui,uj)的权重w(ui,uj)的大小为|Ci,j|;则根据抽象节点ui和抽象节点uj之间的原始连接边的数量可以得到所述抽象连接边的权重值。也就是说,本实施例中的抽象连接边(ui,uj)是一条带权重的边,并且权重w(ui,uj)大小|Ci,j|为分割边集合对应的抽象连接边的权重值。
需要说明的是,k的取值可根据用户需求进行指定,也可以根据服务器内存大小进行设置,或者是设置为一个远远小于|V|的经验值
例如,图3展示了根据图2(b)的分割结果构建得到的抽象社交网络结构Ga=(Va,Ea),其中Va包含4个抽象节点u1,u2,u3,u4,分别对应图分割得到的子集V1,V2,V3,V4;对应地,该抽象社交网络具有4条抽象连接边;其中抽象连接边u2,u4的权重w(u2,u4)的大小是2,因为V2和V4有两条相互连接的原始连接边,即|C2,4|=|{(v5,v10),(v7,v11)}|=2。
一种具体的实施方式中,步骤S204获取所述抽象社交网络中抽象节点的节点向量,可以包括:
S4A.获取所述抽象节点的随机游走序列集合;
S4B.将所述抽象节点的随机游走序列集合输入网络表征学习算法中,得到所述抽象节点的节点向量;
具体地,本实施例能够按抽象连接边的权重值进行随机抽样或者随机选择,根据抽象连接边的权重分布生成符合分布的随机游走序列集合,将其作为word2vec的输入;从而得到抽象社交网络中的每个抽象节点u的节点向量,表示为fa(u)。
其中,随机游走就是在网络结构中以某个节点做起点,然后以一定的概率随机移动到其邻居位置,再从邻居位置随机移动,直到走t步(t是预先设定好的参数),于是得到一个由t个“词”(节点)组成的“句子”(序列)。网络中的每个节点都要作为起点做随机游走,设有N个节点;且每个节点都要做r次随机游走,那么最后就可以得到N*r个“句子”,每个“句子”都是由t个“词”组成。对应地,本实施例中的每个抽象节点都要进行随机游走,进而获取到每个抽象节点对应的随机游走序列集合。
进一步地,将所述随机游走序列集合中的每个随机游走序列均输入到网络表征学习算法中,进而得到所述抽象节点的节点向量。
比如:随机游走序列的集合是{<a,b,c>,<a,d,c>,<b,d,c>},在计算的时候,先给4个原始节点a,b,c,d相应的预先特征向量,根据4个原始节点a,b,c,d确定出所述随机游走序列的集合;然后采用梯度下降算法来优化目标函数,以确定出所述抽象节点的节点向量;所述目标函数是网络表征学习的目标函数,优化目标函数也就是最大化每个抽象节点与其相邻的抽象节点的似然相似度的过程。
具体地,步骤S4A获取所述抽象节点的随机游走序列集合,可以包括:
S41A.获取预设游走步长;
S41B.根据所述预设游走步长对所述抽象节点进行随机游走,得到所述抽象节点的随机游走序列;
S41C.获取预设游走次数;
S41D.按照得到所述随机游走序列的方式,获取预设游走次数个随机游走序列;
S41E.由所述预设游走次数个随机游走序列,得到所述抽象节点的随机游走序列集合。
本实施例中,若所述预设游走步长为t,则一个随机游走序列的长度为t;若所述预设游走次数为r,则一个抽象节点会对应有r个随机游走序列;由这r个随机游走序列得到所述抽象节点的随机游走序列集合。
一种详细地实施方式中,步骤S41B得到所述抽象节点的随机游走序列,可以包括:
S411.获取所述抽象节点关联的所有抽象连接边,并得到每个抽象连接边的权重值;
S412.根据各个抽象连接边的权重值得到所述抽象节点的权重和;
其中,每个抽象节点均具有关联的抽象连接边,根据上述获取抽象连接边权重值的方式得到当前抽象节点关联的所有抽象连接边的权重值。进一步,根据求和计算方式将这所有的权重值相加得到所述抽象节点的权重和。
S413.根据所述抽象连接边的权重值以及所述抽象节点的权重和,计算得到所述抽象节点的下一抽象节点的选取概率值;
具体地,通过得到所述抽象节点的下一抽象节点的选取概率值;其中分母是当前抽象节点u的所述抽象节点的权重和,分子是所述抽象连接边(u,ui)的权重值。
其中,每个抽象连接边的端部均具有两个抽象节点;在该实施例中,以当前抽象节点来看,每个抽象连接边的一端为所述当前抽象节点,另一边为所述当前抽象节点的下一抽象节点。进而,本实施例将每个抽象连接边的权重值除以得到的权重和,可以计算出所述抽象节点的下一抽象节点的选取概率值。
S414.根据随机参数以及所述下一抽象节点的选取概率值,确定出所述抽象节点的下一目标抽象节点;
具体地,是先根据下一抽象节点的选取概率值获取每个下一抽象节点的前缀和,进一步将所述随机参数与得到的各个前缀和进行比较,在所述随机参数大于第一前缀和,并小于第二前缀和,则将所述第一前缀和对应的下一抽象节点作为所述抽象节点的下一目标抽象节点。
其中,所述随机参数为随机生成的[0-1]之间的随机数,比如为0.75;若每个下一抽象节点的选取概率值均为0.2;则在具有4个下一抽象节点的情况下,利用相关的前缀和(PrefixSum)算法进行计算,比如可以得到前缀和组成的数组序列:0.2,0.4,0.6,0.8;则通过比较可得0.6<0.75<0.8,则下一目标抽象节点为选取概率值为0.6所对应的那个下一抽象节点。
给出另一个示例:如果当前抽象节点具有三个下一抽象节点,对应的选取概率值依次为a=0.1,b=0.2,c=0.7,则通过相关的前缀和(PrefixSum)算法进行计算,比如可以得到a,b,c对应的前缀和序列:0,0.1,0.3;其中所述随机参数是0.2,则因为0.2介于0.1和0.3之间,则所述下一目标抽象节点属于第二位的下一抽象节点。
S415.将所述下一目标抽象节点更新为新的抽象节点,并根据获取所述下一目标抽象节点的方式得到所述新的抽象节点的下一目标抽象节点;
S416.依此获取预设数目个下一目标抽象节点,以得到满足所述随机游走序列长度的随机游走序列。
进一步地,本实施例将下一目标抽象节点更新为新的抽象节点,进而确定出所述新的抽象节点的下一目标抽象节点;依此进行游走,从而得到满足随机游走序列长度的随机游走序列。
本说明书的一种实施例中通过考虑抽象连接边之间的权重值,使得随机游走的过程能够准确地确定出所述抽象连接边的下一目标抽象节点,从而得到更加准确有效的随机游走序列,提升原始节点的初始向量的准确性。
S206.在所述原始社交网络上传播所述抽象节点的节点向量,得到所述原始社交网络中原始节点的初始向量;
其中,在得到所述抽象节点的节点向量之后,将这些节点向量传入原始社交网络结构中,基于传播算法,经过多轮迭代计算,从而得到原始社交网络中的每个原始节点的初始向量。
对应地,一种可行的实施方式中,步骤S206得到所述原始社交网络中原始节点的初始向量,如图4所示,可以包括:
S402.在所述原始社交网络上传播所述抽象节点的节点向量,以确定出所述抽象节点对应的分割结果中的原始节点的预先特征向量;
S404.获取所述原始节点的邻居节点集合,以及所述邻居节点集合中的其他原始节点的预先特征向量;
具体地,对于原始社交网络中G=(V,E)里的每个原始节点v∈V,如果图分割算法将v划分到一个子集Vi中(其中1≤i≤k),则将子集Vi对应的抽象节点ui的节点向量fa(ui)赋予所述子集中的原始节点v,作为所述原始节点的预先特征向量,所述预先特征向量可以表示为f(v)。进一步地,在确定出当前原始节点的邻居节点集合后,可以得到所述当前原始节点的邻居节点集合中包含的其他原始节点的预先特征向量。
给与说明的是,按照得到一个抽象节点对应的原始节点的预先特征向量的方式,可以得到其他抽象节点对应的原始节点v预先特征向量f(v');进而可以得到所述原始特征网络中所有原始节点的预先特征向量。
其中,本实施例的邻居节点集合为与当前原始节点具有连接边的所有其他原始节点组成的节点集合。
S406.根据所述原始节点的预先特征向量以及所述邻居节点集合中其他原始节点的预先特征向量,得到所述原始节点的综合向量;
详细地,步骤S406得到所述原始节点的综合向量,可以包括:
S6a.根据所述邻居节点集合中的其他原始节点的预先特征向量,得到所述原始节点的邻居平均向量;
具体地,对于当前原始节点v∈V,可以计算出所述当前原始节点的邻居平均向量为
其中,nbr(v)是所述当前原始节点v的邻居节点集合。
S6b.由所述原始节点的邻居平均向量以及所述原始节点的预先特征向量,得到所述原始节点的综合向量。
其中,对每个原始节点v∈V,通过综合所述原始节点v的预先特征向量和所述原始节点的邻居平均向量,能够计算得到所述原始节点的综合向量:
也就是说,每个原始节点接收来自邻居的向量的变化,并且根据自己的预先特征向量做出了一个更新。
S408.根据所述原始节点的综合向量以及所述原始节点的预先特征向量,确定出所述原始节点的初始向量。
详细地,步骤S408确定出所述原始节点的初始向量,可以包括:
S8a.获取所述原始节点的综合向量与所述原始节点的预先特征向量之间的欧氏距离;
S8b.在所述欧氏距离小于预设距离数值时,由所述原始节点的综合向量得到所述原始节点的初始向量。
其中,本实施例中先计算当前原始节点的综合向量和所述原始节点的预先特征向量的欧式距离:
进一步将计算得到的欧式距离与预设距离数值参数进行比较,若计算得到的欧式距离小于所述预设距离数值,则可以认为综合向量与之前的预先特征向量的差别足够小,向量的传播趋近稳定;可以将所述综合向量作为所述原始节点的初始向量,以用于获取所述原始节点的最终特征向量。
其中,若计算得到的欧式距离大于所述预设距离参数,则将计算得到的综合向量更新为所述原始节点的预先特征向量;再通过步骤S6b计算得到所述原始节点的综合向量,进一步通过步骤S8a计算所述原始节点的综合向量与更新得到的原始节点的预先特征向量之间的欧式距离,进一步将计算得到的欧式距离与所述预设距离数值进行比较;若此时的欧式距离小于所述预设距离数值,则将该过程中的综合向量作为所述原始节点的初始向量。若计算得到的欧式距离仍然大于所述预设距离数值,则重复到上述更新预先特征向量的步骤,并以重复后续的计算过程,直至计算得到的欧式距离小于所述预设距离数值才停止计算。
如图5所示,给出了一种得到所述原始节点的初始向量的流程步骤;对应地,如图6所示,提供了相应的节点展示图。具体地,包括:
1.在原始社交网络结构G=(V,E)上运行图分割算法;
2.在图分割算法得到的区块(或子集)上,把每个区块作为一个抽象节点,区块之间的边形成抽象连接边,构建得到抽象社交网络;
3.在抽象社交网络上运行网络表征学习算法得到抽象节点的节点向量;
4.在原社交网络结构G上传播抽象节点的节点向量,得到原始节点集合V里每个原始节点的初始向量。
需要说明的是,本技术方案涉及到向量传播得到原始节点初始向量的过程,也可以采用更复杂的向量融合方案;比如通过神经网络模型的方式进行原始节点的预先特征向量的更新,以使得向量的传播趋近稳定。
S208.基于所述原始节点的初始向量得到所述原始节点的最终特征向量;
具体地,将所述原始节点的初始向量输入到网络表征学习算法中,以得到所述原始节点的最终特征向量。
举例给与说明:若目标向量的长度k是3,一个初始向量是<0.2,0.3,0.5>;那所述初始向量经过表征学习算法计算后可以得到向量<0.15,0.35,0.5>,则向量<0.15,0.35,0.5>为所述初始向量对应的最终特征向量;其中,具体的计算过程可以采用梯度下降算法进行计算。
S210.根据所述原始节点的最终特征向量生成信息推荐列表;
一种可行的实施方式中,步骤S210由所述原始节点的最终特征向量得到所述信息推荐列表,可以包括:
S21a.计算当前原始节点的最终特征向量与所述原始社交网络中其他原始节点的最终特征向量之间的欧式距离;
S21b.根据计算得到的欧式距离的排序结果,构建出所述当前原始节点的信息推荐列表。
本实施例中在获取当前原始节点的信息推荐列表的情况下,是将当前原始节点的最终特征向量与所述原始社交网络中其他原始节点的最终特征向量依次进行欧式距离的计算;进一步将计算得到的欧式距离进行排序,其中,欧式距离越小,则表征所述欧式距离对应的这两个原始节点的相似度越高。
S212.根据所述信息推荐列表对当前原始节点进行信息推荐。
具体地,所述信息推荐列表可以从小到大进行排序,将位于排序靠前的预设位作为推荐信息,由服务器推荐给所述原始社交网络对应的客户端,以实现对当前原始节点的信息推荐。
本实施例基于图分割初始化技术计算得到原始社交网络中原始节点的初始向量;然后把原始节点的初始向量输入到网络表征学习算法中,得到每个原始节点的最终特征向量。然后基于这些最终特征向量,计算当前原始节点与其他的原始节点之间的欧式距离。最后将得到的欧式距离进行从小到大排序,能够得到当前原始节点的信息推荐列表;比如当前活跃玩家的好友推荐列表,如图7所示。其中,本实施例基于图分割算法进行网络分割,能够很好的反映出原始社交网络的整体特点,并减少计算量;本实施例在通过抽象节点的节点向量传播得到原始节点的节点向量的过程中,基于抽象连接边的权重考虑能够进一步提升原始节点初始向量的质量,进而提升原始节点的节点向量的准确性,从而生成更有效的信息推荐列表;增强对应客户端的业务能力。
其中,本说明书提供了一些数据集,以验证本方案带来的高性能效果:
Enron(http://www.cs.cmu.edu/□enron):电子邮件交流网络,有36692个节点,183831条边;
GRQC(http://snap.stanford.edu/data/ca-GrQc.html):量子理论学术论文合作网络,有5242个节点,14496条边;
CM(http://snap.stanford.edu/data/ca-CondMat.html):材料物理学术论文合作网络,有23133个节点,93497条边;
BlogCatalog(http://socialcomputing.asu.edu/datasets/BlogCatalog):博客网络,有10312个节点,333983条边;
Wikipedia(www.mattmahoney.net/dc/textdata):维基百科词汇网络,有4777个节点,184812条边。
将本方案涉及到基于图分割的网络表征学习算法的初始化技术命名为GPA(GraphPartition based Algorithm),进一步将GPA与另外两个方案进行对比,通过三个实验参数来验证本方案的性能;其中,另外两个方案为随机初始化方案(Random)以及基于多层网络压缩的初始化技术(HARP);其中涉及到的三个实验参数为链路预测(link prediction)、节点分类(node classification)、运行时间。
在实验中将GPA、Random和HARP得到的初始值作为节点向量的初始向量,输入到现有的网络结构表征学习算法中,比如node2vec、DeepWalk和LINE。
其中,表1展示了在链路预测实验中的效果。在这个实验中,我们从原始社交网络G中随机抽取一定数量(10%)的原始连接边,然后将这些原始连接边从原始社交网络G中去除,得到剩下的网络结构G’。然后,在G’上学习每个原始节点的节点向量,之后预测删除的原始连接边。其中,两个节点向量f(v)和f(v')的余弦相似度(Cosine Similarity)是欧式距离(Euclidean Similarity)是||f(v)-f(v')||。从表1中可以发现,本技术方案GPA在所有数据集和所有相似度上都优于其他对比方案。
表1:链路预测的效果
其中,表2展示了原始社交网络中原始节点分类的效果。在这个实验中,每个原始节点上有多个标签,在原始社交网络G上学习每个原始节点的节点向量,然后把一部分(70%)原始节点作为训练集,另一部分(30%)原始节点作为测试集。采用多类别逻辑回归分类器(multi-class logistic regression classifier)基于节点向量和训练集进行模型训练,然后预测测试集里原始节点的标签。可以发现,本方案GPA的效果也都优于其他两个对比方案。
表2:节点分类的效果
/>
最后,我们对比了本方案GPA和HARP的运行时间。由于HARP需要多层次的计算,需要更多的计算量;而GPA并不需要多层迭代,并且节点向量的传播收敛速度较快;所以如图8所示,在所有数据集上GPA都比HARP的运行时间较少。
需要说明的是,本技术方案在实际应用中能够提升游戏社交网络分析的业务能力。比如,可以使用本技术方案计算游戏社交网络里每个节点(玩家)的节点向量,并根据这个向量来计算玩家之间的相似度,从而可以为玩家做好友推荐、师徒推荐、战队推荐、好友召回等业务。
图9展示了将本技术方案应用在穿越火线手游(CFM)好友召回的点击率效果的数据情况。在好友召回业务中,实现为每个活跃玩家设置一个长度有限(比如10个)的推荐列表;其中,推荐列表上的对象是流失玩家,也就是为当前活跃玩家召回流失玩家的推荐列表。
基于本技术方案,首先计算CFM社交网络上每个玩家的节点向量初始向量,然后把这个初始向量输入到node2vec算法中,得到玩家最终节点向量。基于最终节点向量,计算当前活跃玩家与流失玩家之间的欧式距离相似度。然后,按欧式距离从小到大依次排序,制作当前活跃玩家的推荐列表。在图9的效果数据中可以看出,相较于现有方案,比如随机排序、按亲密度排序、按Personalized PageRank(PPR)排序、按PageRank(PR)排序和游戏策划提供的规则排序,本技术方案GPA取得的点击率是最高的。
本说明书实施例提供了一种信息推荐列表生成装置,如图10所示,所述装置包括:
抽象社交网络获取模块202,用于获取原始社交网络,并将所述原始社交网络分割为抽象社交网络;所述原始社交网络包括原始节点,所述抽象社交网络包括与所述原始社交网络的分割结果相对应的抽象节点;
抽象节点向量获取模块204,用于获取所述抽象社交网络中抽象节点的节点向量;
初始向量获取模块206,用于在所述原始社交网络上传播所述抽象节点的节点向量,得到所述原始社交网络中原始节点的初始向量;
最终向量获取模块208,用于基于所述原始节点的初始向量得到所述原始节点的最终特征向量;
信息推荐列表得到模块210,用于根据所述原始节点的最终特征向量生成信息推荐列表。
一种具体的实施方式中,所述初始向量获取模块206,可以包括:
第一预先特征向量确定单元,用于在所述原始社交网络上传播所述抽象节点的节点向量,以确定出所述抽象节点对应的分割结果中的原始节点的预先特征向量;
第二预先特征向量确定单元,用于获取所述原始节点的邻居节点集合,以及所述邻居节点集合中的其他原始节点的预先特征向量;
综合向量得到单元,用于根据所述原始节点的预先特征向量以及所述邻居节点集合中其他原始节点的预先特征向量,得到所述原始节点的综合向量;
初始向量得到单元,用于根据所述原始节点的综合向量以及所述原始节点的预先特征向量,确定出所述原始节点的初始向量。
一种具体地实施方式中,所述综合向量得到单元,可以包括:
邻居平均向量得到子单元,用于根据所述邻居节点集合中的其他原始节点的预先特征向量,得到所述原始节点的邻居平均向量;
综合向量得到子单元,用于由所述原始节点的邻居平均向量以及所述原始节点的预先特征向量,得到所述原始节点的综合向量。
一种具体地实施方式中,所述初始向量得到单元,可以包括:
欧氏距离获取子单元,用于获取所述原始节点的综合向量与所述原始节点的预先特征向量之间的欧氏距离;
初始向量得到子单元,用于在所述欧氏距离小于预设距离数值时,由所述原始节点的综合向量得到所述原始节点的初始向量。
一种具体地实施方式中,所述信息推荐列表得到模块,可以包括:
欧式距离得到单元,用于计算当前原始节点的最终特征向量与所述原始社交网络中其他原始节点的最终特征向量之间的欧式距离;
信息推荐列表构建单元,用于根据计算得到的欧式距离的排序结果,构建出所述当前原始节点的信息推荐列表。
一种具体地实施方式中,所述装置还包括权重值得到模块,所述权重值得到模块包括:
抽象连接边获取单元,用于获取所述抽象社交网络中的抽象连接边;其中,每个抽象连接边均具有对应的抽象节点组合;
原始连接边数量获取单元,用于获取所述抽象节点组合之间的原始连接边数量;
权重值得到单元,用于根据所述抽象节点组合之间的原始连接边数量,计算得到所述抽象连接边的权重值。
一种具体地实施方式中,所述抽象节点向量获取模块,可以包括:
随机游走序列集合获取单元,用于获取所述抽象节点的随机游走序列集合;
抽象节点向量得到模块,用于将所述抽象节点的随机游走序列集合输入网络表征学习算法中,得到所述抽象节点的节点向量;
其中,随机游走序列集合获取单元,包括:
步长获取子单元,用于获取预设游走步长;
游走序列得到子单元,用于根据所述预设游走步长对所述抽象节点进行随机游走,得到所述抽象节点的随机游走序列;
游走次数获取子单元,用于获取预设游走次数;
游走序列获取子单元,用于按照得到所述随机游走序列的方式,获取预设游走次数个随机游走序列;
游走序列集合得到子单元,用于由所述预设游走次数个随机游走序列,得到所述抽象节点的随机游走序列集合。
一种具体地实施方式中,所述游走序列得到子单元,包括:
权重值得到子单元,用于获取所述抽象节点关联的所有抽象连接边,并得到每个抽象连接边的权重值;
权重和得到子单元,用于根据各个抽象连接边的权重值得到所述抽象节点的权重和;
选取概率值得到子单元,用于根据所述抽象连接边的权重值以及所述抽象节点的权重和,计算得到所述抽象节点的下一抽象节点的选取概率值;
第一抽象节点确定子单元,用于根据随机参数以及所述下一抽象节点的选取概率值,确定出所述抽象节点的下一目标抽象节点;
第二抽象节点确定子单元,用于将所述下一目标抽象节点更新为新的抽象节点,并根据获取所述下一目标抽象节点的方式得到所述新的抽象节点的下一目标抽象节点;
序列得到子单元,用于依此获取预设数目个下一目标抽象节点,以得到满足所述随机游走序列长度的随机游走序列。
需要说明的是,本实施例提供的装置实施例与上述方法实施例具有相同的发明构思,具体细节内容可以参照上述方法实施例,在此不作赘述。
本说明书实施例提供了一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方法实施例所述的信息推荐列表生成方法。
其中,本说明书实施例提供的一种服务器设备的结构示意图,请参考图11。该服务器用于实施上述实施例中提供的信息推荐列表生成方法。具体来讲:
所述服务器2000包括中央处理单元(CPU)2001、包括随机存取存储器(RAM)2002和只读存储器(ROM)2003的系统存储器2004,以及连接系统存储器2004和中央处理单元2001的系统总线2005。所述服务器2000还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)2006,和用于存储操作系统2013、应用程序2014和其他程序模块2015的大容量存储设备2007。
所述基本输入/输出系统2006包括有用于显示信息的显示器2008和用于用户输入信息的诸如鼠标、键盘之类的输入设备2009。其中所述显示器2008和输入设备2009都通过连接到系统总线2005的输入输出控制器2010连接到中央处理单元2001。所述基本输入/输出系统2006还可以包括输入输出控制器2010以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器2010还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备2007通过连接到系统总线2005的大容量存储控制器(未示出)连接到中央处理单元2001。所述大容量存储设备2007及其相关联的计算机可读介质为服务器2000提供非易失性存储。也就是说,所述大容量存储设备2007可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器2004和大容量存储设备2007可以统称为存储器。
根据本发明的各种实施例,所述服务器2000还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器2000可以通过连接在所述系统总线2005上的网络接口单元2011连接到网络2012,或者说,也可以使用网络接口单元2011来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行;上述一个或者一个以上程序包含用于执行上述后台服务器侧的方法的指令,。
本发明的实施例还提供了一种计算机存储介质,所述存储介质可设置于客户端之中以保存用于实现方法实施例中一种信息推荐列表生成方法相关的至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现上述方法实施例提供的信息推荐列表生成方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络设备中的至少一个网络设备。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是:上述本说明书实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中加载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和服务器实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种信息推荐列表生成方法,其特征在于,所述方法包括:
获取游戏社交网络,并将所述游戏社交网络分割为抽象社交网络;所述游戏社交网络包括原始节点,所述原始节点表征游戏社交网络中的玩家,所述抽象社交网络包括与所述游戏社交网络的分割结果相对应的抽象节点,抽象节点之间的边具有最小分割边数;
获取所述抽象社交网络中抽象节点的节点向量;
在所述游戏社交网络上传播所述抽象节点的节点向量,得到所述游戏社交网络中原始节点的初始向量;
对所述原始节点的初始向量进行梯度下降处理,得到所述原始节点的最终特征向量;
基于所述最终特征向量计算目标玩家与至少一个推荐玩家之间的相似度,得到目标推荐玩家,所述目标推荐玩家包括好友推荐玩家、师徒推荐玩家、战队推荐玩家和当前游戏的流失玩家中的至少一种;
基于所述目标推荐玩家生成信息推荐列表。
2.根据权利要求1所述的信息推荐列表生成方法,其特征在于,所述得到所述游戏社交网络中原始节点的初始向量,包括:
在所述游戏社交网络上传播所述抽象节点的节点向量,以确定出所述抽象节点对应的分割结果中的原始节点的预先特征向量;
获取所述原始节点的邻居节点集合,以及所述邻居节点集合中的其他原始节点的预先特征向量;
根据所述原始节点的预先特征向量以及所述邻居节点集合中其他原始节点的预先特征向量,得到所述原始节点的综合向量;
根据所述原始节点的综合向量以及所述原始节点的预先特征向量,确定出所述原始节点的初始向量。
3.根据权利要求2所述的信息推荐列表生成方法,其特征在于,所述得到所述原始节点的综合向量,包括:
根据所述邻居节点集合中的其他原始节点的预先特征向量,得到所述原始节点的邻居平均向量;
由所述原始节点的邻居平均向量以及所述原始节点的预先特征向量,得到所述原始节点的综合向量。
4.根据权利要求2所述的信息推荐列表生成方法,其特征在于,所述确定出所述原始节点的初始向量,包括:
获取所述原始节点的综合向量与所述原始节点的预先特征向量之间的欧氏距离;
在所述欧氏距离小于预设距离数值时,由所述原始节点的综合向量得到所述原始节点的初始向量。
5.根据权利要求1所述的信息推荐列表生成方法,其特征在于,所述基于所述最终特征向量计算目标玩家与至少一个推荐玩家之间的相似度,得到目标推荐玩家,包括:
计算所述目标玩家对应的原始节点的最终特征向量与所述游戏社交网络中至少一个所述推荐玩家对应的原始节点的最终特征向量之间的欧式距离;
根据计算得到的欧式距离对所述推荐玩家进行排序,得到目标推荐玩家。
6.根据权利要求1所述的信息推荐列表生成方法,其特征在于,所述获取所述抽象社交网络中抽象节点的节点向量,之前包括:
获取所述抽象社交网络中的抽象连接边;其中,每个抽象连接边均具有对应的抽象节点组合;
获取所述抽象节点组合之间的原始连接边数量;
根据所述抽象节点组合之间的原始连接边数量,计算得到所述抽象连接边的权重值。
7.根据权利要求1所述的信息推荐列表生成方法,其特征在于,所述获取所述抽象社交网络中抽象节点的节点向量,包括:
获取所述抽象节点的随机游走序列集合;
将所述抽象节点的随机游走序列集合输入网络表征学习算法中,得到所述抽象节点的节点向量;
其中,获取所述抽象节点的随机游走序列集合,包括:
获取预设游走步长;
根据所述预设游走步长对所述抽象节点进行随机游走,得到所述抽象节点的随机游走序列;
获取预设游走次数;
按照得到所述随机游走序列的方式,获取预设游走次数个随机游走序列;
由所述预设游走次数个随机游走序列,得到所述抽象节点的随机游走序列集合。
8.根据权利要求7所述的信息推荐列表生成方法,其特征在于,所述得到所述抽象节点的随机游走序列,包括:
获取所述抽象节点关联的所有抽象连接边,并得到每个抽象连接边的权重值;
根据各个抽象连接边的权重值得到所述抽象节点的权重和;
根据所述抽象连接边的权重值以及所述抽象节点的权重和,计算得到所述抽象节点的下一抽象节点的选取概率值;
根据随机参数以及所述下一抽象节点的选取概率值,确定出所述抽象节点的下一目标抽象节点;
将所述下一目标抽象节点更新为新的抽象节点,并根据获取所述下一目标抽象节点的方式得到所述新的抽象节点的下一目标抽象节点;
依此获取预设数目个下一目标抽象节点,以得到满足所述随机游走序列长度的随机游走序列。
9.一种信息推荐列表生成装置,其特征在于,所述装置包括:
抽象社交网络获取模块,用于获取游戏社交网络,并将所述游戏社交网络分割为抽象社交网络;所述游戏社交网络包括原始节点,所述原始节点表征游戏社交网络中的玩家,所述抽象社交网络包括与所述游戏社交网络的分割结果相对应的抽象节点,抽象节点之间的边具有最小分割边数;
抽象节点向量获取模块,用于获取所述抽象社交网络中抽象节点的节点向量;
初始向量获取模块,用于在所述游戏社交网络上传播所述抽象节点的节点向量,得到所述游戏社交网络中原始节点的初始向量;
最终向量获取模块,用于对所述原始节点的初始向量进行梯度下降处理,得到所述原始节点的最终特征向量;
信息推荐列表得到模块,用于基于所述最终特征向量计算目标玩家与至少一个推荐玩家之间的相似度,得到目标推荐玩家,所述目标推荐玩家包括好友推荐玩家、师徒推荐玩家、战队推荐玩家和当前游戏的流失玩家中的至少一种;基于所述目标推荐玩家生成信息推荐列表。
10.一种设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至8任一所述的信息推荐列表生成方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现如权利要求1至8中任一项所述的信息推荐列表生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910309766.0A CN110032682B (zh) | 2019-04-17 | 2019-04-17 | 一种信息推荐列表生成方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910309766.0A CN110032682B (zh) | 2019-04-17 | 2019-04-17 | 一种信息推荐列表生成方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110032682A CN110032682A (zh) | 2019-07-19 |
CN110032682B true CN110032682B (zh) | 2023-08-11 |
Family
ID=67239005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910309766.0A Active CN110032682B (zh) | 2019-04-17 | 2019-04-17 | 一种信息推荐列表生成方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110032682B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112507244B (zh) * | 2019-09-16 | 2023-09-26 | 腾讯科技(深圳)有限公司 | 社交数据推荐方法、装置、分布式计算集群及存储介质 |
CN110706772B (zh) * | 2019-10-11 | 2023-05-09 | 北京百度网讯科技有限公司 | 一种排序方法及装置、电子设备、存储介质 |
CN112751690B (zh) * | 2019-10-30 | 2022-07-22 | 腾讯科技(深圳)有限公司 | 网络表征学习方法、装置、电子设备及可读存储介质 |
CN111143701A (zh) * | 2019-12-13 | 2020-05-12 | 中国电子科技网络信息安全有限公司 | 一种基于多维度的社交网络用户推荐方法及系统 |
CN111815403B (zh) * | 2020-06-19 | 2024-05-10 | 北京石油化工学院 | 商品推荐方法、装置及终端设备 |
CN112069412B (zh) * | 2020-09-11 | 2023-08-04 | 腾讯科技(深圳)有限公司 | 信息推荐方法、装置、计算机设备及存储介质 |
CN113807457A (zh) * | 2021-09-26 | 2021-12-17 | 北京市商汤科技开发有限公司 | 确定路网表征信息的方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8572129B1 (en) * | 2010-04-19 | 2013-10-29 | Facebook, Inc. | Automatically generating nodes and edges in an integrated social graph |
CN103823888A (zh) * | 2014-03-07 | 2014-05-28 | 安徽融数信息科技有限责任公司 | 一种基于节点亲密度的社交网站好友推荐方法 |
CN104657418A (zh) * | 2014-12-18 | 2015-05-27 | 北京航空航天大学 | 一种基于隶属度传播的复杂网络模糊社团挖掘方法 |
CN107944610A (zh) * | 2017-11-17 | 2018-04-20 | 平安科技(深圳)有限公司 | 预测事件流行度方法、服务器及计算机可读存储介质 |
CN108090197A (zh) * | 2017-12-22 | 2018-05-29 | 河南科技大学 | 一种多维社交网络的社区发现方法 |
CN108427730A (zh) * | 2018-02-27 | 2018-08-21 | 江苏大学 | 一种基于随机游走和条件随机场的社会标签推荐方法 |
CN109118379A (zh) * | 2017-06-22 | 2019-01-01 | 腾讯科技(深圳)有限公司 | 基于社交网络的推荐方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010048172A1 (en) * | 2008-10-20 | 2010-04-29 | Cascaad Srl | Social graph based recommender |
CN102316046B (zh) * | 2010-06-29 | 2016-03-30 | 国际商业机器公司 | 向社交网络中的用户推荐信息的方法和装置 |
US20130097056A1 (en) * | 2011-10-13 | 2013-04-18 | Xerox Corporation | Methods and systems for recommending services based on an electronic social media trust model |
US9661039B2 (en) * | 2013-03-28 | 2017-05-23 | Linkedin Corporation | Recommending resources to members of a social network |
-
2019
- 2019-04-17 CN CN201910309766.0A patent/CN110032682B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8572129B1 (en) * | 2010-04-19 | 2013-10-29 | Facebook, Inc. | Automatically generating nodes and edges in an integrated social graph |
CN103823888A (zh) * | 2014-03-07 | 2014-05-28 | 安徽融数信息科技有限责任公司 | 一种基于节点亲密度的社交网站好友推荐方法 |
CN104657418A (zh) * | 2014-12-18 | 2015-05-27 | 北京航空航天大学 | 一种基于隶属度传播的复杂网络模糊社团挖掘方法 |
CN109118379A (zh) * | 2017-06-22 | 2019-01-01 | 腾讯科技(深圳)有限公司 | 基于社交网络的推荐方法和装置 |
CN107944610A (zh) * | 2017-11-17 | 2018-04-20 | 平安科技(深圳)有限公司 | 预测事件流行度方法、服务器及计算机可读存储介质 |
CN108090197A (zh) * | 2017-12-22 | 2018-05-29 | 河南科技大学 | 一种多维社交网络的社区发现方法 |
CN108427730A (zh) * | 2018-02-27 | 2018-08-21 | 江苏大学 | 一种基于随机游走和条件随机场的社会标签推荐方法 |
Non-Patent Citations (1)
Title |
---|
Jiezhong Qiu.Network Embedding as Matrix Factorization: Unifying DeepWalk, LINE, PTE, and node2vec .Proceedings of the Eleventh ACM International Conference on Web Search and Data Mining.2018,459-467. * |
Also Published As
Publication number | Publication date |
---|---|
CN110032682A (zh) | 2019-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110032682B (zh) | 一种信息推荐列表生成方法、装置及设备 | |
Hu et al. | Active learning with partial feedback | |
Cuevas et al. | A cuckoo search algorithm for multimodal optimization | |
CN112765477B (zh) | 信息处理、信息推荐的方法和装置、电子设备和存储介质 | |
US20220253722A1 (en) | Recommendation system with adaptive thresholds for neighborhood selection | |
Guendouz et al. | A discrete modified fireworks algorithm for community detection in complex networks | |
CN110765320B (zh) | 数据处理方法、装置、存储介质和计算机设备 | |
CN108875090B (zh) | 一种歌曲推荐方法、装置和存储介质 | |
CN107092812B (zh) | 一种在ppi网络中基于遗传算法识别关键蛋白质的方法 | |
CN115867919A (zh) | 用于推荐系统的图结构感知增量学习 | |
CN116992151A (zh) | 一种基于双塔图卷积神经网络的在线课程推荐方法 | |
KR101866866B1 (ko) | 부호화된 네트워크에서의 개인화된 랭킹 방법, 이를 수행하기 위한 기록 매체 및 장치 | |
KR101522306B1 (ko) | 유사도 특성을 이용한 메타휴리스틱 알고리즘에 기반한 시스템 및 그 제어방법 | |
WO2022166125A1 (en) | Recommendation system with adaptive weighted baysian personalized ranking loss | |
CN112800253B (zh) | 数据聚类方法、相关设备及存储介质 | |
CN112784123B (zh) | 一种图网络冷启动推荐方法 | |
Mnih et al. | Learning label trees for probabilistic modelling of implicit feedback | |
Du et al. | Combining quantum-behaved PSO and K2 algorithm for enhancing gene network construction | |
CN117010480A (zh) | 模型训练方法、装置、设备、存储介质及程序产品 | |
CN114707066A (zh) | 基于社区感知和自适应随机游走的景点推荐方法及系统 | |
CN115168326A (zh) | Hadoop大数据平台分布式能源数据清洗方法及系统 | |
KR102323424B1 (ko) | 관측평점과 유사도 그래프를 활용한 추천 알고리즘의 평점 예측 방법 | |
CN110059248B (zh) | 一种推荐方法、装置及服务器 | |
Rakhlin et al. | Efficient online multiclass prediction on graphs via surrogate losses | |
CN112751690B (zh) | 网络表征学习方法、装置、电子设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | 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 |