微博语言的复杂网络特征研究
2015-04-16马宏炜谌志群黄孝喜王荣波
马宏炜,陆 蓓,谌志群,黄孝喜,王荣波
MA Hongwei,LU Bei,CHEN Zhiqun,HUANG Xiaoxi,WANG Rongbo
杭州电子科技大学 计算机学院 认知与智能计算研究所,杭州310018
Institute of Cognitive and Intelligent Computing,Hangzhou Dianzi University,Hangzhou 310018,China
1 引言
2006 年诞生的微博,相比于传统媒体虽然还是一种新鲜事物,但由于其独树一帜的简短性(每条微博不超过140 字)和普及性(人人都可发微博),近几年得到了很大的发展。微博的出现极大地促进了信息的传播和共享,并日益显现出其巨大商业价值。
早期的微博文本相关研究工作主要集中在语言表面特征分析上。Java 等[1]对微博的概念和作用进行了总结,分析了微博及时、快速传播的特点,统计了微博使用增长情况,并根据用户之间的关系,发现了分享相同微博信息的用户之间的共同点。Kwak 等[2]讨论了微博的出现对世界的影响,并全面统计分析了Twitter出现三年来相关的数据,包括日发布数、总发布数、总使用人数等。邹艳菁[3]通过使用较大规模的新浪微博语料库分析了微博的话语特征,以定量分析的形式指出了微博语言在话语表达倾向上的一些特点。邬智慧[4]同样通过分析新浪微博语料,统计分析了微博中的字、词、句的使用情况,并将微博语言与手机短信语言、博客语言做了对比,总结出中文微博具有开放性、精炼性、随意性、独特性等特征。
在研究微博文本语言特征的同时,研究者们开始尝试对微博文本进行处理。对微博文本的传统处理主要包括文本分类和聚类、信息抽取、话题检测和情感分析等,主要采用特征提取、分类及聚类算法等文本挖掘方法。这些方法大部分是基于向量空间模型的,其不足之处在于采用传统文本处理方法处理微博文本的时候,忽视了微博的独特特征。由于一条微博的文本限定在140个字以内,很多微博文本只是一个句子甚至一个短语,这给传统的文本数据挖掘带来严重的数据稀疏问题。本文尝试使用复杂网络的方法来分析微博文本。
自然界中存在的大量复杂系统都可以用网络来描述,其中具有自组织、自相似、小世界、无标度等特性的网络称为复杂网络。复杂网络的小世界(small world)现象和无标度(scare free)特性是20 世纪末的两个重大发现,奠定了复杂网络的理论基础。1998 年Watts 和Strogatz[5]将小世界模型引入到了复杂网络的研究当中,建立了WS 小世界模型。1999 年Barabási 和Albert[6]揭示了复杂网络中的无标度性质,并建立了相应的模型阐述了这些特性的产生机理。这两篇文章的出现,标志着网络科学的兴起。
语言系统是一种复杂的网络结构体,其在词语、语法、语义各个层面上都显示出极其复杂的网络结构。复杂网络理论的兴起,提供了新的视角来研究人类语言的本质。通过用计算复杂网络参数的方法来分析语言网络的特性,可以研究其整体特征,发现人类语言与认知之间的关系。语言网络的研究课题涉及到了复杂系统、语言学、自然语言处理、统计学等多个学科,具有重要的科学意义。
本文基于微博语料库,构建对应的语言网络,并采用复杂网络分析方法对该语言网络进行分析,得到其整体特性,并且运用可视化分析方法,对其特征进行研究。
2 基于复杂网络的语言研究
各国学者已在语言复杂网络研究方面做了很多的研究。这些研究涉及到了多种人类语言,其构造原则也多种多样,包括字同现、词同现、句法依存关系、语义关系等。英语语言网络的研究已经取得了很多成果。Cancho 和Solé[7]在1 000 万个词的英语国家语料库基础上建立了词同现网络和句法网络。Motter 和Moura 等[8]基于3 000 多个英语单词之间的概念相似性构建了英语的 概 念 网;Sigman 等[9]基 于Wordnet 上66 025 个 名 词 之间的语义关系构建了英语的语义网。研究表明这些网络都表现出复杂网络的基本特征:小世界特性和无标度特性。
汉语语言网络的研究也已经取得了一些成果。韦落霞等[10]根据一个基本词集构建了汉语词网络及词组网络;刘知远等[11]在《人民日报》1 300 万字的人工分词语料库和国语委5 000 万字人工分词语料库基础上构建了汉语词同现网络;刘海涛[12]基于“实话实说”和“新闻联播”构建了词共现和句法依存网络。对不同语体的字、词同现网络的研究表明,这些网络同样都具有复杂网络的小世界和无标度特性。
语言网络只是研究语言的手段,并不是研究的目的。除了用复杂网络的理论模型来分析语言网络的各项参数之外,更重要的是挖掘其在语言研究中的应用。微博作为语言载体之一,可以通过对微博文本构建语言网络,来对其复杂网路参数进行分析。复杂网络分析技术可以在大规模真实语料的基础上,通过实证方法来研究微博语言网络的特征,加深对微博这种新兴语言形式的了解。复杂网络方法有益于对以下问题的了解:微博语言网络的特征;不同文体网络结构的特征;复杂网络作为语言研究手段的可能性;语言网络作为微博信息挖掘手段的可行性。
3 微博语言网络模型
基于复杂网络的微博语言特征研究主要分为以下几个步骤:微博数据获取和预处理;词同现网络构建;复杂网络整体参数分析;结果可视化等。下面对各个步骤进行说明:
(1)微博数据获取和预处理。根据任务需求,获取相应的微博数据,并对数据进行预处理,去掉其中的冗余数据和结构,得到结构相对简单的文本待进一步利用。主要任务:①去掉其中的用户名、@用户名、转发关系和网络链接地址,提取出需要的微博内容部分;②剔除处理后长度过短的文本。
(2)词同现语言网络的构建。所谓词同现,是指在一个句子中间隔距离小于某个n值的两个词语,在该距离内的词可以称为共词关系。
(3)语言网络复杂网络参数定量分析。将构建出的词同现网络导入到复杂网络分析软件中计算得到复杂网络参数。
(4)结果可视化。将词同现网络的复杂网络分析结果以可视化的形式直观地展示出来。
(5)最后,利用网络分析的结果和其他语体的类似网络进行对比,得出微博文本网络的特性。
3.1 微博词同现网络的构建
对于语言网络的构建,首先要解决的问题是网络中的节点和边代表什么。对词法网络来说,语料库中的每个词,对应着同现网络中的一个节点。如果在一个句子中,两个词之间在小于n的邻间距离条件下存在同现关系,则认为网络中相应节点之间存在一个链接。依次对语料库中的所有句子进行上述处理,便构建出词同现网络。刘知远等构建的词同现网络表明,邻间距离的n取2 比较合适,一方面可以真实反映上下文之间的约束关系,另一方面可有效降低网络的复杂程度[11]。
对于微博作为语料库的词同现网络的构建,首先要解决的就是每条微博内容的分词问题。微博文本中充斥着语言的不规则使用现象,并且有大量的新词出现。在选择分词工具的时候考虑到要有新词发现的能力,并且支持自定义词库,对于少数不能通过分词工具得到的词语,可以将其添加到自定义词库中,通过人工干预得到准确度相对高的分词结果。实验中采用了Python 作为文本处理工具,对微博语料库进行预处理和清理工作,为了便于处理,分词工具选择了Python 中的中文分词组件结巴分词。该分词组件采用基于图的动态规划查找最大概率算法,从所有可能成词情况所构成的有向无环图中找出基于词频的最大切分组合。对于未登录词,采用了HMM 模型和Viterbi 算法。实验结果表明,该分词组件对微博的分词基本可以满足需求。
一个词同现网络可以抽象成为一个无向图G,顶点V代表词集,边E代表两个词之间的同现关系。当构建出网络G(V,E)之后,可以对该网络进行分析。在语言网络中,网络的平均最短路径代表网络中任意两个词之间有联系的最短距离,聚类系数代表与该词有联系的词之间的聚集倾向,度分布代表该词与其他词的结合能力。
下面给出由一条真实微博文本生成汉语词同现网络的简单示例。
这条微博的原始内容为:“我好象不太喜欢听上海话…我喜欢听粤语”。先将微博中的内容根据标点符号分句,得到“我好像不太喜欢听上海话”和“我喜欢听粤语”两个句子。然后分别对这两个句子分词得到的词同现网络如图1 所示。
图1 由一条微博生成的词同现网络
3.2 网络参数
在复杂网络上,通常可以通过以下几个参数来分析其网络的复杂性。
(1)小世界特性:平均最短路径长度和聚类系数
网络中两个节点i和j之间的最短路径是dij指链接这两个节点的边数最少的路径。无向网络的平均最短路径长度L是任意两个节点之间距离的平均值,见公式(1):
其中N是网络中的节点数。设网络节点的平均度为<k>,对“小世界网络”,则有:
聚类系数是用来衡量网络聚类倾向的指标,反映了其相邻节点构成集合的聚集程度。设网络节点i有k个节点与它相连,Ei是其k个邻接点之间实际存在的边数,那么Ei与这k个节点之间最多可有的边数k(k-1)之比就成为该节点i的聚类系数C:
整个网络的聚类系数C为所有节点聚类系数Ci的平均值:
其中N为网络的节点数。
利用网络的平均最短路径长度和聚类系数,可以来衡量网络是否具有小世界特性。小世界指的是这样一种网络:虽然网络很庞大,但网络中任意两个节点间都存在一条较短的路径相互连接,聚类系数要比随机网络大的多,即L≈Lr,C≫Cr。Lr和Cr代表用同样边数和节点数构建的随机复杂网络的平均最短路径和聚类系数。
(2)无标度特性:度分布
度数即网络中某个节点i拥有相邻节点的数目,对于有向图来说,度数又分为入度与出度。网络中度为k的节点所占的比列称为度分布,用度分布函数P(k)来描述。P(k)的期望<k>称为网络的平均度分布。度分布服从幂律分布的网络叫作无标度网络。
4 实证分析
4.1 实验描述
实验利用了从爬盟中国上下载的2012 年5 月25 日起一周内加V 用户发表的4 万条微博作为实验语料。应用本文提到的理论和方法,考查微博词同现网络的复杂网络性质。每条微博包括消息原始ID、微博内容、转发数和评论数、用户名称、发布时间等字段。
为了考察不同网络规模下微博文本的网络特性,设计了3 组实验,分别构建3 个不同规模的词同现网络。第一个网络简称为CW1,是从5 万条微博中随机选取了2 000 条构建的网络;第二个网络简称为CW2,是从5 万条中随机选取了6 300 条构建的网络;第三个网络简称为CW3,是从5 万条微博中随机选取20 000 条来构建网络。构建出词同现网络之后,再分别对网络进行复杂网络参数分析,计算其复杂网络参数。
4.2 微博词同现网络的特征
3 个不同规模微博网络的节点度分布情况见表1,表1 显示了网络中节点度分布的统计值。四分之一分位数、中位数、四分之三分位数指的是节点的度由小到大排列后第25%、50%、75%的数字;平均数指的是所有节点的平均度。通过表1 可以发现:CW1、CW2 和CW3的度分布最小值、四分之一分位数、中位数都相同。不同之处在于度分布的平均值、四分之三分位数和最大值。CW1 度分布最大值为3 479,平均值为4.912,四分之三分位数为3。CW2 度分布的最大值为8 901,平均值为6.621,四分之三分位数为4。CW3 度分布的最大值为17 575,平均值为9.128,四分之三分位数为5。由此可见,微博中只出现过一次或两次的词汇占到了一半。这与微博的语体特征是符合的,一方面词语使用不规范的现象在微博中普遍存在,会出现大量的新词。另一方面微博内容覆盖面广,内容多来源于微博用户的日常生活。所以一段时间内的微博可能涉及到生活中的各个方面,其词汇的重复率相比小说、新闻稿等规范文本要低的多。不仅如此,通过比较这3 个规模由小到大的网络的度分布情况可以发现,随着网络规模的增大,新加入的节点会与已经存在的节点相连接,这就会导致度分布最大值增大,度分布平均值增大。这与实际生活中词语的使用情况是相符的,不断会产生词语的新用法,出现新的词语搭配使用情况。
表2 给出的是3 个网络中度数排名前10 的词语。观察表2 发现,虽然3 个网络的规模不同,但网络度数前10 的节点基本是一致的。不同之处在于CW1 节点度数前10 的词其度数并不像CW2 和CW3 一样是严格递减分布的。可以认为这是由于CW1 的规模小,低于能正常反应词语使用情况的阈值,因为部分常用词语还未得到充分使用。在语言网络中,节点的度是由词节点本身所具有的配价能力决定的[13]。通过分析发现,这10 个词主要是虚词和指示代词,前者有着重要的粘着成句作用,而后者具有指示作用。陈芯莹等[14]通过用“实话实说”和“新闻联播”两种不同语体的语料库构建的依存句法网络研究了词频最高的虚词“的”、“了”和“在”这3 个节点的网络特性,得出虚词是网络中的中心节点的结论。一旦去除这些词,会影响网络整体结构。同样在微博文本构建的词同现网络中,这3 个虚词也是网络的中心节点。不仅如此,经过对比,可以发现“是”这个词在微博中词频排名要比“实话实说”和“新闻联播”要高的多,其度数比“在”这个字要高。“是”在句子中主要起肯定和联系的作用,并可以表示多种关系。由此可以推断微博和“实话实说”与“新闻联播”这两种语体相比,微博的内容更多的跟发布者自身相关,多用来表达自己的认知,更加愿意分享自身的活动。这与发布微博的目的也是相符的。可以认为,“是”是对语体敏感的词语。
表3 中E代表复杂网络的边数,在构建网络过程中,将多重边合成为一条边,多重边的数量作为边的属性存储;N代表复杂网络的节点数,<k>代表平均度分布,C代表聚类系数,L代表平均最短路径长度,Lrandom代表相同边数和节点数的随机网络的平均最短路径,Crandom代表相同边数和节点数的随机网络的聚类系数;T(s)代表计算这些参数所需时间,单位为s(计算环境为Intel双核E4600,2 GB 内存)。通过观察发现,平均最短路径CW1 为3.78,CW2 为3.54,CW3 为3.34,聚类系数CW1 为9.79×10-3,CW2 为9.6×10-3,CW3 为1.195×10-2。虽然得到的网络很庞大,但其平均最短路径都很小,并且满足L≈Lrandom和C≫Crandom,由此可以得出结论:这3 个词同现网络符合复杂网络的小世界特性。
接下来计算网络节点累积度分布,以度为x轴,累积度分布为y轴,得到其累积度分布曲线见图2。累积度分布是度不少于k的节点的分布概率:
可以看到3 组实验结果都服从幂律分布,显示了其无标度特性。
表1 节点的度分布情况
表2 CW1、CW2 和CW3 度数前10 的词语
表3 其他复杂网络参数
图2 累积度分布
在计算CW1、CW2 和CW3 的小世界和无标度特性参数的基础上,还计算了CW3 全部两万条微博构成的词同现网络中每个节点的介数betweennes、紧密度closeness、聚类系数clustering coefficient和PageRank值,并且分别以节点的度为x轴,这4 个参数为y轴作图。得到4 副图,可以直观看到这4 个参数与度之间的相关性关系。分布图见图3。简单来讲,一个节点的介数等于网络中的所有节点对之间经过该节点的最短路径条数。
节点紧密度等于该节点到所有其余节点最短路径长度之和的倒数。
节点的PageRank值是Google PageRank 算法在语言网络中的应用,Mihalcea 和Tarau 提出了TextRank 算法,首次将PageRank 算法应用到了自然语言处理当中,并且验证了在关键字抽取和句子摘要中的有效性[15]。
节点的度数反映的是网络中有多少节点与该节点相连,节点的介数和PageRank值都可以作为节点在网络中重要性的测量标准,节点的紧密度反映的是节点在网络中的中心性,节点的聚类系数反映其相邻节点的连接情况。通过分析图3 可以得到,节点的介数、PageRank值和其度之间有着明显的正相关关系,也就是说在该网络中度大的节点,其介数和PageRank值也大,节点聚类系数和其度之间基本是负相关关系,对于度大的节点,其聚类系数小。紧密度和节点的度之间不存在明显的正相关关系。
图3 CW3 的介数、紧密度、PageRank、聚类系数相关性分布
表4 验证网络CW4 参数
表5 词同现网络的基本数据
由上面的分析可知微博词同现网络符合复杂网络的小世界和无标度特性,那么在更大规模的微博语料的基础上构建的词同现网络是否还符合这些特性。为了验证本文的结论,使用全部的5 万条微博语料构建了一个更大的词同现网络CW4,并且对其参数进行了计算,结果见表4。
由表4可知,词同现网络CW4仍然满足L≈Lrandom和C≫Crandom,这说明其仍满足复杂网络的小世界特性。累计度分布见图4,其结果服从幂律分布,满足复杂网络的无标度特性。
图4 验证网络CW4 累积度分布
4.3 微博词同现网络和规范文本词同现网络参数对比
刘知远等[11]基于不同规模和类型的语料库,建立了词同现网络,其语料来源是北京大学《人民日报(1998年上半年)》1 300 万字左右的人工分词语料库和国家语委5 000 万字左右的人工分词语料库。前者是新闻语料,后者则包含了各种题材的文本。其生成词同现网络的语料和本文采用的微博文本不同,更加规范并且经过人工分词。对微博词同现网络和这类规范文本词同现网络的参数做对比,见表5。
表中CPD12 是《人民日报(1988 年上半年)》第1~2月份词语料库的词同现网络数据,引自文献[11]。比较表4 中CW1、CW2 和CW3 的参数可以发现,随着网络规模的上升,网络的平均度<k>和聚类系数C会随着增大,新的词会被加入到原有的语言当中,原来很少使用的词越来越被人们熟知并使用。相反地,发现网络的平均最短路径L随着网络的增大有减小的趋势,这说明网络中词与词之间的跳转更加的容易了,越来越多的词被人们拿来一起使用。把本文构建的微博词同现网络CW3 和《人民日报》规范文本且经过人工分词处理的语料库构建的词同现网络CPD12 对比,可以发现网络的平均度<k>和聚类系数C要小得多,这也是符合预期的,在微博语言网络的度分布情况就可以看出,一半以上的节点的度都是1 或者2,在微博中有更多的新词或者语言的不规范使用情况。不仅如此,CW3 的平均最短路径L也比CPD12 的要大,这说明微博中任意两个词之间有联系的距离要比规范文本要远,这与微博语言使用的不规范也是有关的。
5 结束语
基于新浪微博的大规模语料库,构建了3 个不同规模的词同现网络,并通过实验揭示了微博词同现网络上的小世界效应和无标度特性。不仅如此,还通过构建更大规模的词同现网络验证了结论。虽然微博文本存在着开放性和随意性的特征,但在词同现网络上表现出了类似的复杂网络特性。然后对其复杂网络参数做了相关性分析,验证了节点的度是决定词网络参数的主要因素。最后与由规范文本构建的词同现网络做了对比,发现其复杂网络参数跟其词汇的使用情况是相关的。本文从定量分析的角度验证了微博的语体特点,验证了复杂网络作为语言研究的手段在微博这一新兴语言载体形式上是有效的。但是,作为一种新的微博研究方法,本文也存在不足之处:一方面是语料来源问题,本文构建的微博语言网络,其语料来自爬虫抓取的一段时间内的微博,在内容方面涉及到的范围太广,进一步工作可以尝试抓取某一话题的相关微博或是某条热门微博的评论等;另一方面考虑到微博依存句法分析的难度,本文构建的是词同现网络,难免忽视了语言本身的词语之间的依赖关系,微博依存句法网络的构建与分析是今后研究的重要课题。
[1] Java A,Song X,Finin T,et al.Why we twitter:Understanding microblogging usage and communities[C]//Proceedings of the Joint 9th WebKDD and 1st SNA-KDD Workshop,2007:56-65.
[2] Kwak H,Lee C,Park H,et al.What is Twitter,a social network or a news media[C]//Proceedings of the 19th International Conference on World Wide Web,2010:591-600.
[3] 邹艳菁.基于语料库的中文微博话语特征研究初探[J].中国报业,2012,18:101-103.
[4] 邬智慧.中文微博的语体特征研究[D].武汉:华中师范大学,2012.
[5] Watts Duncan J,Strogatz Steven H.Collective dynamics of“small-world”networks[J].Nature,1998,393(6684):440-442.
[6] László B A,Réka A.Emergence of scaling in random networks[J].Science,1999,286(5439):509-512.
[7] Cancho R F,Solé R V.The small world of human language[J].Proceedings of the Royal Society of London:Series B Biological Sciences,2001,268:2261-2265.
[8] Motter A E,de Moura A P S,Lai Y C,et al.Topology of the conceptual network of language[J].Physical Review E,2002,65(6):065102.
[9] Sigman M,Cecchi G A.Global organization of the Wordnet lexicon[C]//Proc of the National Academy of Sciences,2002,99(3):1742-1747.
[10] 韦洛霞,李勇,康世勇,等.汉语词组网的组织结构与无标度特性[J].科学通报,2005,50(15):1575-1579.
[11] 刘知远,孙茂松.汉语词同现网络的小世界效应和无标度特性[J].中文信息学报,2007,21(6):52-58.
[12] Haitao Liu.The complexity of Chinese syntactic dependency networks[J].Physica A:Statistical Mechanics and its Applications,2008,387(12):3048-3058.
[13] 刘海涛,冯志伟.自然语言处理的概率配价模式理论[J].语言科学,2007,6(3):32-41.
[14] 陈芯莹,刘海涛.汉语句法网络的中心节点研究[J].科学通报,2011,56(10):735-740.
[15] Mihalcea R,Tarau P.TextRank:Bringing order into texts[C]//Proceedings of EMNLP 2004,2004:404-411.