社交网络用户关系分析

时间:2022-09-20 01:50:45

社交网络用户关系分析

摘要摘要:随着互联网的快速发展,社交网络已逐渐成为人们日常生活中不可或缺的一部分。介绍OAuth协议的基本原理和实现流程,以新浪微博为例阐述用户和用户关系的数据抓取方法;讨论一种能够有效地表示社交网络中用户关系的数据结构,介绍用户关系识别的方法;对社交网络中的用户关系进行分析总结,并展望在后期研究工作中,如何通过对用户关系的分析更有效地发现意见领袖。

关键词关键词:社交网络;OAuth协议;用户关系;数据抓取;LP算法

DOIDOI:10.11907/rjdk.162613

中图分类号:TP392

文献标识码:A文章编号文章编号:16727800(2017)005015203

0引言

随着互联网的不断普及,其对人们日常生活的渗透不断深入,从QQ、微信,到易信、来往,再到新浪微博,越来越多的人加入到互联网社交中,因此也吸引了越来越多的研宄人员从事社交网络中的数据挖掘工作[1]。但是,一方面用户数量不断增加,数据挖掘量急剧增大;另一方面,用户关系日益复杂,面对海量的用户数据,如何才能更加高效地获取到有用信息,数据挖掘技术扮演着不可或缺的角色。

在用户具备了高密度和高粘度属性、真实身份信息较为完备、用户好友之间信任度较高等条件下,用户信息具备了较高的商业价值可挖掘性[2]。这就使得社交网络变得日益复杂,单纯对数据的研究已经不能满足社会需求,如何更好地挖掘用户和用户关系正是本文所要研究的核心内容。

1基于Web的社交网络数据抓取

1.1OAuthf议原理与实现流程

Web2.0网络具有动态性更强、结构更复杂的特点[1]。作为一项起源于网络身份认证系统OpenID的互联网标准协议,OAuth协议中包括第三方应用、用户本身和服务提供方3个主要角色。基本原理是在第三方应用与众多的服务提供方建立关系的条件下,服务提供方通过第三方应用提供的公钥来验证第三方应用的身份,而服务提供方把用户导向到第三方应用的登录窗口[2],原理如图1所示。

OAuth协议的实现流程主要分为3个阶段。首先,用户要通过注册来获得客户端凭证;然后,服务提供方提供一致的授权服务地址和令牌服务地址进行服务,而这一阶段又包含申请临时令牌、用户授权和申请访问令牌请求3个过程;在最后的资源调用阶段中,第三方应用向服务提供方发送已经明确说明所需要的访问令牌和参数的资源调用申请[2]。其详细实现流程如图2所示。

1.2微博数据抓取

社交网络具有开放、自由、高容纳性、互动性等特点,人们可以自由发言、评论、或者表达自己的感受[3]。针对不同的用户数据信息采用不同的网络爬虫对数据进行抓取,通过新浪微博API,需要爬取的数据信息包括用户信息、用户关系信息、用户标签信息、微博评价等[4]。

只有获取了用户的相关信息,了解了用户的爱好之后,才能够更好地“推荐”以满足用户所需。这也是本研究的重点,在此着重探讨用户标签的获取,用户标签获取流程如图3所示[5]。

获取用户标签的方法中所定义的数据结构如下(其中用户标签的信息都存放在Label数组中):

所需定义的用户信息如表1所示,在这个表中存储的是需要查询的用户id,以及该用户的粉丝和好友的id。

2社交网络用户关系拓扑特性

通过微博、微信、QQ,人们总是把身边发生的好玩的、有意义的故事分享到空间供他人分享、评论。人与人之间的关系变得日益复杂,有好友或亲情关系、关注与被关注关系、共同评论关系、共同爱好关系等[6]。以新浪微博为例,其关系网络是由用户间的关注与被关注关系而形成(见图4),而且这是一种属于复杂网络的有向无权关系网络[7]。这种关系网络具有拓扑特性,因此需要用网络度及度分布、聚类系数以及网络拓扑结构等几种要素反映这一特性[8]。

结合节点度的定义与微博用户间的特殊关系,将关系网络中节点的入度设为该用户的粉丝数,出度设为该用户关注的用户量。入度的计算方法如图5所示,出度的计算方法如图6所示。

通过对用户粉丝数和用户关注数进行计算就可以得到网络中每个节点的入度kin与Pin(k)、出度kout与Pout(k)。为了更加形象、具体地表示这些特征属性的分布情况,通常选用kin(或kout)作为x轴,Pin(k)(或Pout(k))作为y轴,构造拟合曲线[9]。

3社交网络中用户关系识别

3.1用户信息有效划分

LP (Linear Programming)算法是单类分类器研究的主要方法,它具有稀疏性、大间隔、核诱导和全局最优等特点[10]。LP问题的求解方法有3种类型:主元法、非线性函数极值法和收缩区域法,它通过计算最小化样本的输出结果之和来寻找超平面,从而将目标数据和非目标数据分开。在此利用LP算法的改进算法DLP将社交网络中用户的数据信息进行有效划分,从而为后期微博用户信息的抓取做好前期准备[11]。其操作步骤如下[12]:

步骤1:获得数据样本X= {x1,x2,…,xn};

步骤2:计算xi到其k邻域xki的距离d(xi,xki);计算全部样本点到k邻域的平均值

Meank;

步骤3:计算数据密度公式如式(1)(Z为权重系数,调节pi的大小):

pi=zM eank[]d(xi-xki),pi>0(1)

步骤4:得到数据的判定函数如式(2)(K为核矩阵,描述数据之间的相似性):

f(z)=∑k[]i=1TiK(z,xi)+b(2)

步骤5:重复步骤2~4,直到把异常信息全部删除掉。

3.2微博用户数据信息抓取

社交网络用户关系分析就是根据已有的部分社交网络结构、用户属性和行为等,分析和预测用户之间的其它关系[13]。拓扑链接结构分析方法是利用图论的研究方法,首先要分离出具有关系或潜在关系节点的集合。微博的影响力和用户的粉丝数目以及用户在微博上消息被转发和被提到的次数成正相关关系[14]。

对于微博中用户关系的研究,通常采用有向加权图的结构形式表示,用有向加权图G=(V,E,W)表示社交网络的结构形式,其中 G 表示社交网络,V表示节点的集合,E表示用户之间的社会关系,W表示权重,路径表示由社会关系构成的链接关系[15]。

识别社交网络中用户关系的方法多种多样,在此采用k均值算法实现对用户的分类,其实现步骤如下[16]:

步骤1:输入对象矩阵X和聚类数N;

步骤2:随机选择n个对象作为聚类中心;

步骤3:利用k均值算法计算相似度。本文以微博用户“奋斗去北京”关注的其它用户信息,生成关系图如图7所示。其中计算对象相似度的公式如式(3):

dxkN=minm[]k=1Xk-Nk1[]2(3)

步骤4:用各个类的平均向量更新聚类中心,再将每一个对象分别与这n个聚集中心的距离作比较,把相近的分为一类;

步骤5:不断重复步骤3~4,直到满足终止条件为止。

4结语

作为一种开放、自由、容纳性高、互动性强的社会化网络,面对大量的互联网用户,如何高效地识别用户关系、抓取有效的数据尤为重要。本文以新浪微博为例,介绍了新浪微博用户关系的形成方式以及网络拓扑结构要素的概念,并以流程图的形式反映了节点度的定义与微博用户间的特殊关系。

面对大量数据,采用不同的网络爬虫对数据进行抓取,本文总结了用有向加权图G=(V,E,W)来表示社交网络的结构形式,先使用PL算法去掉用户的异常数据信息,做好数据抓取的前期准备工作,再介绍k均值算法的具体操作流程,以一个微博用户实例对象来进行数据抓取,有效地提取了用户信息。下一步工作⑹峭ü对用户及用户关系的进一步研究,探索出一种能够十分有效地发现意见领袖的方法,从而通过引导意见领袖的观点,有效控制网络舆情并帮助厂商进行商品推广[17]。

参考文献参考文献:

[1]陈晓美.网络评论观点知识发现研究[D].长春:吉林大学,2014.

[2]卢慧锋.社会化网络服务中OAuth2_0的应用研究与实现[J].计算机应用,2014,34(S1):5054.

[3]王连喜,蒋盛益,庞观松,等.微博用户关系挖掘研究综述[J].情报杂志,2012,31(12):9294.

[4]冯典.面向微博的数据采集和分析系统的设计与实现[D].北京:北京邮电大学,2013.

[5]徐志明,李栋,刘挺,等.微博用户的相似性度量及其应用[J].计算机学报,2014,37(1):208210.

[6]王川.社交网络数据抓取和社团发现x究[D].上海:复旦大学,2013.

[7]覃梦河,邱远棋,晋佑顺.基于内容分析的微博用户关系推荐机制研究[J].图书馆论坛,2013,33(4):104106.

[8]刘晓曼.社交网络数据获取与结构分析系统的设计与实现[D].合肥:安徽大学,2014.

[9]吴信东,李毅,李磊.在线社交网络影响力分析[J].计算机学报,2014,37(4):736738.

[10]刘道建.SLI的条件冗余性及LP问题的算法研究[D].成都:西南交通大学,2013.

[11]刘慧玲.频繁模式挖掘算法LPSMiner及其并行模式研究[D].兰州:兰州大学,2009.

[12]冯爱民,陈斌.基于局部密度的单类分类器LP改进算法[J].南京航空航天大学学报,2006,38(6):728730.

[13]廉捷.基于用户特征的社交网络数据挖掘研究[D].北京:北京交通大学,2013.

[14]王_,高琳.基于社交圈的在线社交网络朋友推荐算法[J].计算机学报,37(4):804805,2014.

[15]李德民.社会网络用户关系分析与预测[D].济南:山东大学,2015.

[16]张国安,钟绍辉.基于k均值聚类的微博用户分类的研究[J].电脑知识与技术,2012,8(26):62736275.

[17]尹衍腾,李学明,蔡孟松.基于用户关系与属性的微博意见领袖挖掘方法[J].计算机方法,2013,39(4):185187.

上一篇:基于标准地址库的95598客户服务故障工单地址匹... 下一篇:基于Visual Basic的CDM570L远程控制程序