易成岐+鲍媛媛+薛一波
Social Networks Based on Big Data: Analytical Framework and Key Techniques
中图分类号:TP391 文献标志码:A 文章编号:1009-6868 (2014) 01-0005-006
摘要 提出了一套社会网络大数据的分析框架,并分析了其关键和核心技术。介绍了基于该框架的清华社会网络大数据分析系统(THSNAS),从个体、群体、事件和整体四个方面给出了系统分析结果。社会网络大数据的分析框架既能为社会网络大数据的深入分析提供理论依据和指导方法,又能为广告精准投放、个性化信息推荐、社会管理等方面带来重要价值。
关键词: 社会网络;大数据;分析框架
Abstract: This paper proposes an analytical framework for social networking based on big data, and it elaborates on key techniques. In addition, this paper introduces Tsinghua Social Network Analysis System (THSNAS) based on the above framework and shows results in terms of individual, group, event and holistic analysis. The analytical framework can provide theoretical and practical guidance for social network analysis, and has great value in terms of precision advertising, personalized information recommendation, and social management.
Key words: social network; big data; analytical framework
随着Web2.0技术的不断发展,社会网络[1]发展势头强劲,已经成为用户数最多、传播影响最大的新媒体平台。其巨大的用户群实时产生的庞大信息量是典型的大数据,具有大数据的4V特性:数量(Volume)、类型(Variety)、速度(Velocity)和可用性(Veracity),具体特征如下:
(1)超大规模的数据量
截止目前为止,Facebook、Twitter、新浪微博、腾讯微博的用户量已经分别超过12亿、5.5亿、5.4亿和5.8亿,此外,四大社会网络的每日消息量也已经分别超过了10亿、2.5亿、2亿和2亿。这些超大规模的数据量为信息挖掘提供了丰富的资源。
(2)纷繁复杂的数据类型
社会网络中的每个用户都具有基本属性信息,这些属性包括用户名称、性别、所属位置、描述、创建时间、好友数量等;用户与用户的好友关系构成了关系数据;用户基于已经存在的关系或者共同兴趣构成了多种团体,产生了团体数据;用户每时每刻发表的观点、评论、转发等信息形成了非结构化的信息数据;用户上传的图片、音频、视频形成了多类别的非结构化数据等。社会网络中包含的数据类型繁多、结构不一。这些数据类型的多样性,为信息分析和挖掘带来了巨大的挑战[2]。
(3)极快的增长速度
伴随着社会网络火热发展的同时,社会网络中的数据量也呈现极快的增长的态势。截至2013年6月30日,Facebook用户数比上年同期增长21%;截至2013年9月,Twitter用户数比2012年底增长了16.7%;截至2013年3月底,新浪微博用户数比2012年底增长了6.6%;截至2013年9月,腾讯微博用户数比上年年底增长了6.8%,此外,社会网络中的消息量也随之快速增长。
(4)可观的数据可用性
社会网络的出现触发了个人、企业、国家等不同层面的兴奋点[3],个人想通过社会网络分析了解自身或者他人的个人爱好和行为习惯,企业想通过社会网络分析谋求更大的商业利益,国家想通过社会网络分析进行高效的社会管理。社会网络已经引起了国家战略、企业规划、商业模式、营销策略、生活观念、行为习惯等方面的变化[4]。
目前,已经出现了一股研究社会网络的热潮,之所以诸多国家、企业、专家、学者都在积极研究社会网络[5],是因为社会网络犹如金矿、石油、天然气一样,蕴含着巨大的信息宝藏。社会网络也认证了“数据为王”,谁能更快、更准、更全地掌握数据,谁能更有效地分析挖掘社会网络所隐含的信息价值,谁能预测信息的传播规律和发展态势,谁便能掌握主动权和战略权。
本文结合社会网络的数据类型、数据特征以及分析目的,提出了一套社会网络大数据的分析框架,并对其关键和核心技术进行详细描述,该技术方法对广告精准投放、个性化信息推荐、社会管理等方面都具有一定的指导意义和实用价值。
1 社会网络大数据分析框架
社会网络分析技术是一项关键技术,也是一项热门的研究[6-7],涵盖了社会学、人类学、社会语言学、地理、社会心理学、通信研究、资讯科学、社会网络分析与探勘、组织研究、经济学以及生物学等多个领域,是一项多学科交叉技术。社会网络又包涵巨大的用户数据、关系数据和信息数据,为了有效地对社会网络的大数据进行分析和挖掘,我们提出了一个层次化的分析框架,如图1所示。
该分析框架包括数据层、分析层、支撑层和结果展示层四大部分。其中数据层是整个框架的基石,分析层和支撑层是整个框架的核心,结果展示层则是技术与应用的桥梁,能友好、简洁、形象地展示分析结果。endprint
(1)数据层
数据层包括数据获取、数据预处理和数据存储3个部分,其中数据获取主要通过网络流量方式、应用程序接口(API)方式、非API方式及其他方式进行有效地获取数据。数据预处理包括数据清洗、数据打标和数据关联,能够对为后续存储和分析提供规范化保障。数据存储通过关系型数据库或者非关系型数据库进行多类型数据存储。
(2)分析层
分析层包括了个体分析、群体分析、事件分析和整体分析,从四个维度对社会网络进行分析。
(3)支撑层
支撑层包括机器学习、分布式并行处理、数据挖掘、自然语言处理、流量识别、可视化等多种具有共性的关键技术。
(4)结果展示层
结果展示层与分析层互相映射,包括个体展示、群体展示、事件展示和整体展示。
通过该框架,可以拟合成多种应用,主要包括社会管理、广告精准投放、企业营销、个性化信息推荐、信息态势感知、不良用户和信息发现等。
2 社会网络大数据分析的
关键技术
上述框架的各个层次都拥有大量的关键技术予以保障,下面将详述各层中的不同关键技术。
2.1 数据层
数据层的设计理念是以数据为中心,以数据流向为导向,主要包括数据获取、数据打标和数据关联3个部分。
(1)数据获取
数据获取是社会网络大数据分析的基石,如何快速、有效获取社会网络的数据至关重要。针对这一问题,我们提出了2种社会网络数据获取方式:
(a)网络流量方式
对于非加密的社会网络流量而言,可以通过流量的识别和解析快速获取社会网络数据。首先需要对目标社会网络流量进行分析,抽取目标社会网络流量的强特征,再从背景流量中识别出目标流量;其次,对目标社会网络流量进行解析,提取用户Profile数据、用户关系数据、发布信息数据、信息转发数据,等等。
(b)API/非API方式
目前大多数社会网络都提供相关API,可以进行数据获取,比较常见的是OAuth 1.0和OAuth 2.0两种用户身份验证和授权方式。但社交网络所提供的API都会存在一定程度的次数和速度的限制,以防止开发者以蛮横、暴力的方式获取数据。因此通过API方式获取数据时,需要进行超限判断,保证数据获取的正常进行。此外,为了规避API方式的限制,也可以采用网页解析方式,依靠网络爬虫技术模拟用户登录进行数据获取,网页解析方式的数据获取虽然在一定程度上不受限制,但其缺点是网页解析的数据类型是有限的,和API方式相比缺乏数据完整性,因此需要两者配合使用。同时,为了批量获取社会网络数据,可以采用分布式爬虫并行爬取。
除上述两种方式外,还需要其他获取方式,以满足不同需求。例如,通过元搜索方式进行定量、定性的数据获取;采用基于用户属性、用户关系、用户信息3层过滤机制,通过特定团体获取方式,获取社会网络上的特定团体;通过增量式爬虫获取增量数据,等等。
(2)数据预处理
通过上述方式获得的社会网络数据往往是有噪音的、杂乱的、非结构化的,无法直接进行数据分析,需要通过数据预处理技术对数据进行清洗、打标及关联。
(a)数据清洗
数据清洗主要从数据的准确性、完整性、一致性、唯一性、适时性、有效性等几个方面来处理数据。对于遗漏数据需要对默认值填充;对于异常数据需要对其消除,以防止干扰后续分析工作;对于噪声数据需要对其平滑;对于所有数据都需要进行归一化处理。由于社会网络有很多重复数据,可以采用布隆过滤方法对其去重;由于大部分数据是文本数据,为了节约存储空间,可使用压缩技术对其进行压缩。
(b)数据打标
社会网络数据往往十分繁杂,面对实时分析处理的苛刻需求,数据打标的工作势在必行。根据社会网络大数据分析的经验,我们将社会网络数据打标细分为:人物打标、群体打标、事件打标、关系权重打标、推文/微博打标。其中,人物打标是对兴趣、圈子、规律、影响力等进行打标;群体打标主要是对群体数量、活跃程度、群体兴趣等进行打标;事件打标主要是指对事件传播的广度、深度、参与数、受众数等进行打标;关系权重打标是计算并存储用户间的权重值;推文/微博打标主要是对信息类型、抽取后的关键词进行打标。
(c)数据关联
由于目前存在很多类型的社会网络,当对它们进行多源数据获取后,如何对数据进行关联也十分重要。首先,是多源帐号关联技术。现实社会中的用户往往会存在于多个社会网络中,例如Facebook、Twitter、新浪微博、人人网等,多个社会网络的账号会关联到同一实体用户上,而且这些账号往往具有相同或相似的特征,利用多源帐号关联技术可以将多个虚拟账号关联到某一实体用户上,从而为跨平台社会网络的分析奠定基础;其次,是多源数据整合技术。多平台数据的特征会存在趋同现象,例如同一个事件会同时在新浪微博和腾讯微博上进行传播。多源数据整合技术可以将多个平台的数据进行拟合或合并,既可以减少存储空间,又可以以全局角度统筹分析多平台数据。
(3)数据存储
数据的不断增长造成单机系统性能不断下降,即使不断提升硬件配置也难以应对数据的增长速度。因此,需要根据业务不同将社会网络数据存储分为数据存储、特征存储、日志存储和历史库存储。其中数据存储是为了存储当前需要分析的元数据;特征存储是为了将数据预处理的打标结果与其他数据分离,达到更优的分析速度;日志存储是为了存储系统运行所产生的大量日志;历史库存储是将历史数据分离存储,以减少实时分析的压力。此外,用户Profile、用户关系、信息转发关系等结构化数据,多采用关系型数据库进行存储;用户发布和转发的信息等非结构化数据多采用非关系型数据进行存储。endprint
2.2 分析层
分析层是整个框架的核心,分为个体分析、团体分析、事件分析、整体分析。
(1)个体分析
个体分析的目标是了解和洞察人物的身份、关系、社交圈、资本、位置、地位、行为、情感等社会属性,这些属性往往比较抽象,需要对其进行量化及测算。如图1所示,个体圈子分析主要是对人物所在的实体关系(具有直接联系的节点)和虚拟关系(人物节点的兴趣团体)进行分析,总结出圈子对人物各项属性的影响与关联;还可以对个体圈子演化过程和趋势进行分析。行为特征分析是对人物的基本属性和行为进行刻画,利用人物的时间序列、行为规律等信息来描述人物个体的行为状况;紧密度分析是指通过用户相似度计算用户紧密度好友;情感分析是指分析用户情感倾向性,主要分为正面情感、负面情感和中性情感;兴趣分析通过对人物的背景标签和用户发表的推文进行分析,抽取人物所关注用户的兴趣点,由于用户关注代表了用户的真实兴趣,因此可以根据关系属性推导人物个体兴趣。
(2)群体分析
群体分析的目标是分析群体边界、身份、群内关系、群际关系、群体凝聚力、群体兴趣、群体行为、群体心理、社会地位、群体变化等,从而更深层次洞察群体特性。如图1所示,特定群体发现主要是通过特征匹配技术对特定群体进行发现,主要匹配的目标有发布信息、关注主题、圈子兴趣等数据;由于群内个体与个体之间存在强关系,群与群之间存在弱关系,因此可以通过群内人物个体的链路分析其关联状态,群体关系分析可以将用户群作为一个整体,将视角放大,通过群之间的微量用户关联性分析群与群之间的弱关系;潜在群体成员推荐是指分析个体与目标群体的相似度情况,将相似度高的个体进行推荐;群体意见领袖分析是指通过群体的关系网络以及网络中心密度进行测算,度量每个节点在群内的影响力;因为每个群体都是由于共同的兴趣而存在,因此如何测算群体兴趣至关重要,群体兴趣发现是指通过群内关系相关迭代分析算法对其进行界定,通过群内的话题流传播对群体兴趣进行分析。
(3)事件分析
事件分析的目标是分析事件在传播过程中的结构、内容、演化、意图、涌现性、行为、心理、受众、广度、深度、态势等。如图1所示,事件发现是以发布内容为中心,对事件的主题进行文本聚类,从而发现热门事件及参与的用户与群体;路径还原是通过事件传播方向进行刻画,通过获取到的传播信息,以正向的方式对传播路径进行还原;源头追溯是路径还原的逆过程,是通过传播的反向方式对节点进行回溯,最终寻找事件发生的源头节点;事件传播规律分析是指分析事件的热度、趋势、传播层数等,以掌握事件的发展状况;事件意见领袖分析是指通过事件传播过程中的爆发点特征计算节点的影响力,从而分析挖掘传播过程中的意见领袖。
(4)整体分析
整体分析主要分为热门人物和事件排序、整体统计分析、全局拓扑结构分析和按区域热点事件分析,其技术手段多用于基础统计分析和数据挖掘技术,主要目的是了解和掌握社会网络当前的全局情况,同时预测全局网络的未来状况。
2.3 支撑层
该分析框架中的很多模块都需要一些关键技术给予支撑,因此我们将这些共性技术抽取成支撑层,主要包括:机器学习、分布式并行处理、数据挖掘、流量识别、自然语言处理、可视化等多种关键技术,这些技术为整个框架提供技术保障,共性支撑技术之间既各司其职、又相互配合,既相对独立、又相辅相成。
2.4 结果展示层
结果展示层是直接面对用户的一种展现方式,其作为技术与应用之间的桥梁,具有交互性、多维性和可视性等特点。结果展示的目标是将分析结果进行直观的、友好的、简洁的展示。
利用上述4个层次的多种关键技术,可以有效地分析和洞察社会网络中不同对象的独有特征和行为规律,也可根据不同需求构建不同应用。
3 清华社会网络大数据
分析系统
本文利用上述社会网络大数据分析框架的构建思想,设计并实现了清华社会网络大数据分析系统(THSNAS),下面将介绍THSNAS的系统架构及部分分析结果。
3.1 THSNAS系统架构
基于社会网络的数据流向及上述框架的核心思想,THSNAS的系统架构如图2所示,主要包括数据获取、数据预处理、数据存储、消息中心、数据分析、结果展示几个部分。THSNAS支持多种社会网络的数据实时不间断获取,同时,可以对社会网络中的个体、相关群体、特定事件和网络整体进行便捷、多粒度、多维度的分析并友好展示。
3.2 THSNAS系统分析结果
下面主要从个体分析结果、群体分析结果、事件分析结果和整体分析结果4个方面,简要介绍THSNAS的系统分析结果。
(1)个体分析结果
个体分析结果如图3所示,主要包括个体Profile分析、个体圈子分析、个体情感分析、个体关键词抽取、个体行为分析和个体紧密度分析。其中,个体Profile分析是对某个用户的基本概况(包括用户姓名、头像、用户ID、最近发布信息等)进行展示;个体圈子分析是对与用户频繁交互的团体关系网络进行构建,此关系网络不仅包括用户与圈子的关系,也包括圈子内部成员之间的关系;个体情感分析是对用户的情感波动及情感倾向性情况进行分析,此处情感包括正面、负面、中性3种;个体关键词抽取是对用户最近发布的信息及转发信息进行关键词抽取,以词云的方式对近期用户兴趣及关注点进行展示;个体行为分析是对用户近期的发帖行为和转发行为进行规律分析;个体紧密度分析是对目标用户的相似用户进行推荐。
(2)群体分析结果
群体分析结果如图4所示,主要包括群体划分和群体意见领袖排行。其中,群体划分是通过CNM(以Clauset、Newman和Moore命名的社团发现算法)、GN(以Girvan和Newman命名的社团发现算法)和LPA(基于标签传播的社团发现算法),基于用户关系进行群体边界测算,可以对群内成员的细粒度分布进行直观展现;群体意见领袖排行是对整个群体以及划分后的小团体进行影响力计算,并且对群体内部的意见领袖进行排行显示。endprint
(3)事件分析结果
事件分析结果如图5所示,主要包括事件Profile分析、事件意见领袖分析、真实路径还原、事件涨势热度分析、事件关键词抽取和受众情感分析。其中,事件Profile分析是对事件的基本概况(包括发起用户、事件内容、发布时间、传播层数及每层节点数等)进行展示;事件意见领袖分析是对事件传播过程中的态势推手进行分析,同时与情感分析进行结合,选取正向观点的意见领袖与负向观点的意见领袖;真实路径还原是将事件的转发过程进行刻画,同时将关键节点和关键路径进行高亮度显示;事件涨势热度分析是从事件的生命周期角度,对事件形成过程中的参与用户数量进行分析;事件关键词抽取是对原创信息和所有转发信息进行拟合,同时抽取具有重要作用的关键词;受众情感分析是对事件影响受众的情感波动情况进行量化及分析。
(4)整体分析结果
整体分析结果如图6所示,主要包括关注比例分析、粉丝比例分析、用户增长量分析、用户地理分布分析、主题抽取分析和终端分布分析等。其中,关注比例分析是统计全网用户的关注数分布;粉丝比例分析是统计全网用户的粉丝数分布;用户增长量分析是对整体网络用户增减情况进行统计;用户地理分布是对用户所在地理位置进行统计;主题抽取分析是通过Tweets分析事件段内主题;终端使用分析是分析一个时间段内的终端使用分布。
上述是THSNAS的部分分析结果,可以在一定程度上呈现个体、群体、事件和整体的行为规律及隐藏价值。此外,THSNAS也验证了社会网络大数据分析框架的正确性、可用性及实用性。
4 结束语
随着Web2.0时代的来临,社会网络的不断发展也促使其蕴含了巨大的、有待挖掘的价值。为了更有效地分析挖掘社会网络所带来的隐含价值,本文尝试提出社会网络大数据分析框架及其关键技术,以达到抛砖引玉的目的。该框架能够有效分析挖掘社会网络的潜在价值,也可以以此为参考构建多种社会网络应用。
参考文献
[1] 维基百科:社会网络 [EB/OL]. (2013-10-26). http://zh.wikipedia.org/wiki/%E7%A4%BE%E4%BC%9A%E7%BD%91%E7%BB%9C.
[2] BOND R M, FARISS C J, JONES J J. A 61-million-person experiment in social influence and political mobilization [J]. Nature, 2012, 489: 295-298. doi:10.1038/nature11421.
[3] PUJARI M, KANAWATI R. Supervised rank aggregation approach for link prediction in complex networks [C]//Proceedings of the 21st international conference companion on World Wide Web, 2012, ACM, New York, NY, USA:ACM. 2012: 1189-1196. doi:10.1145/2187980.2188260.
[4] GUILLE A, HACID H. A predictive model for the temporal dynamics of information diffusion in online social networks [C]//Proceedings of the 21st international conference companion on World Wide Web, 2012, ACM, New York, NY, USA:ACM. 2012: 1145-1152. doi: 10.1145/2187980.2188254.
[5] YANG X, ZHANG Z, WANG K. Human Behavior Dynamics in Online Social Media: A Time Sequential Perspective [C]//Proceedings of the 6th SNA-KDD Workshop12 (SNA-KDD12), August 12, 2012, Beijing, China: ACM. 2012.
[6] 张赛, 徐恪, 李海涛. 微博类社交网络中信息传播的测量与分析 [J]. 西安交通大学学报, 2013,47(2):130-136.
[7] 窦炳琳, 李澍淞, 张世永. 基于结构的社会网络分析 [J]. 计算机学报, 2012,35(4):99-111.
作者简介
易成岐,哈尔滨理工大学计算机科学与技术学院在读博士研究生;主要研究领域为社会网络、信息传播、云计算等。
鲍媛媛,清华大学信息技术研究院博士后;主要研究领域为社会网络、行为动力学等。
薛一波,中国科学院计算技术研究院博士毕业;清华大学信息技术研究院研究员、CCF高级会员、IEEE/ACM会员;主要研究领域为计算机网络、信息安全、并行处理、分布式系统;已发表论文130余篇。endprint