论文部分内容阅读
随着即时通信工具、微博、微信、论坛、博客、维基以及内容共享的在线社交网络的迅猛发展,人们获取信息的方式已经从简单的信息搜索和网页浏览转向网上社会关系的构建与维护,并且基于社会关系的信息共享、交流和创造。如今,各式各样的在线社交网络已经深入到了人们生活中的方方面面。社会网络是一种由个人或组织以及他们之间的联系构成的复杂的网络结构。除了在线社交网络以外,Web网络、文献引用网络,甚至基因网络等都可以看成社会网络。在社会网络中,个性化排名主要用于识别网络中相对重要的节点,对于网络的链接预测,个性化搜索和推荐都有重要的研究意义。从个性化排名的视角看,社会网络节点规模大,网络节点的属性还可以动态更新,用户间的各种交互关系有亲疏远近之分,个性化排名需要对此进行科学的量化,而且,社会网络面向不同的应用领域,不同的应用场景往往需要不同的个性化排名方法。本文在分析了相关研究工作的基础上,主要针对社会网络的数据海量性和应用多样性等特性,基于随机游动对各种不同应用场景的个性化排名所涉及的若干关键技术进行研究,主要内容和成果包括:1)针对社会网络的数据海量性,在转移概率矩阵理论及链式随机游动方法的基础上,提出了一种Map Reduce环境下的基于二叉树随机游动的并行化节点个性化排名方法。首先,建立二叉树随机游动模型。接着,基于该模型以每个节点为根节点生成一系列相互独立的二叉树阵列。最后,在Map Reduce环境下,并行地实现相对于某根节点的迭代排名算法,不同节点在同一根节点的二叉树中出现的比例便是相应节点相对于该根节点的排名值。理论分析表明,与链式随机游动节点个性化排名算法相比,本文提出的算法在排名精度相同的情况下,具有迭代次数少、输入输出数据量小和运算速度快等明显优势。节点规模为百万量级的社会网络实验验证了本算法的有效性。2)针对移动社会网络的位置动态性,提出了一种基于链式随机游动的面向位置属性的个性化排名方法。首先,在移动社会网络中,筛选出那些包含指定位置的节点及其邻居节点,以及节点间的相互联系,得到一个子网络。接着,在子网络中引入反映节点热度的权威值和反映节点通畅程度的枢纽值,基于链式随机游动方法在子网络中对这两个相互影响的值进行统计分析,用最终计算出的权威值来确定该节点在该指定位置下的排名值。进而,在某些不同的重要位置下进行个性化排名并保存所有排名结果,便可以根据个性化节点位置属性的动态变化查询到相对于该位置下所有节点的排名值。最后,经真实的社会网络数据实验表明,与著名的Hub Rank算法相比,本文提出的方法具有查询命中率高和执行速度快等优点。3)提出了一种基于链式随机游动的反向影响力排名方法。反向影响力指其他节点对某个性化节点的影响力。由于社会网络通常存在大网络小世界现象,网络中的每个节点往往都可以在很少步长内(例如6步)到达任一节点。根据这一现象,在有向的社会网络中,以其他节点为初始点进行链式随机游动,用每个节点在有限步长内到达个性化节点的概率之和表示该节点相对于个性化节点的反向影响力,本文提出了一种基于链式随机游动的反向影响力近似计算方法。通过对真实社会网络数据的链接预测实验,验证了本文提出的方法的有效性。4)提出了一种基于链式随机游动的用户对商品的社会推荐方法。在社会推荐系统中,关键是要确定其他相关用户相对于某个性化用户的不同的推荐权重。为此,首先将用户之间的社会网络与用户对商品的评价网络中的相同的用户节点进行合并,从而构成一个社会推荐图,接着在社会推荐图上从个性化用户出发,通过反复进行用户—商品—用户的链式随机游动,以不同用户出现的比例计算得到相应用户的推荐权重,最后给出了一种基于链式随机游动的社会用户加权推荐算法。实际的社会网络数据实验表明,与其他简单的推荐方法及社会推荐方法比较,本算法具有更高的商品覆盖面和推荐准确率。