一种社交媒体动态事件演变可视分析方法及系统与流程

文档序号:14870765发布日期:2018-07-06 23:24阅读:224来源:国知局

本发明涉及社交媒体中事件的传播分析技术领域,具体涉及一种社交媒体动态事件演变可视分析方法及系统。尤指基于地图隐喻的社交媒体动态事件演变可视分析方法及系统。所述事件指社会事件。所述基于地图隐喻即基于地图的可视化隐喻。



背景技术:

在社交媒体中发布、传播的社会事件(简称为事件),随着事件的传播(信息扩散),形成了由若干阶段构成的事件演变,例如开始阶段、中间阶段、结束阶段等等,为了充分理解并讨论事件演变,以及在事件演变中的社交媒体用户(简称为用户)的行为(例如信息传播行为),我们需要有分析动态的信息扩散的能力。

在已有的分析动态的信息扩散的研究工作中,目前的情况是这样的:

有的研究者从一条微博或一个主题(亦称为话题)的传播路径入手进行可视化[1,2]。他们可以很好地探索某个具体信息的传播路径,该某个具体信息来源于所述一条微博或一个主题,但很难获得对事件演变的全局的概览,以及事件演变的不同阶段。

还有的研究者研究了关于社交媒体中关键词随着时间变化[3]、主题随着时间演变[4,5]以及用户的感情随着时间演变的问题[6],并提出了相应的可视分析方法。他们的方法使用了基于河流隐喻(即基于河流的可视化隐喻),清楚地定义了事件演变的不同阶段,可视化空间主要投影在屏幕空间的二维平面上。然而,由于二维平面有两个维度方向,基于河流隐喻需要用一个维度方向创建时间轴,其他的信息只能被压缩到另一个维度方向上,例如:

用横向的维度方向创建时间轴,则其他的信息只能在纵向的维度方向上,所述其他的信息包括:社交媒体中人物(指关键人物)关系、信息的转发关系、关键词与主题之间的相关关系等,这样一来,就很难看出社交媒体用户在不同时间段内的转发关系以及语义变化。

本发明涉及以下技术术语:

动态的信息扩散,是指:在社交媒体中,一个用户针对事件发布某信息后,该信息可以被其他用户转发,以此并进一步被更多的其他用户转发。所述其他用户的这种转发行为,产生转发链,导致动态的信息扩散,亦可理解为信息的动态扩散。

在事件演变中,动态的信息扩散的意义和作用在于:短时间内不断地让更多用户知道事件的情况及进展,并且每个用户都可以作为参与主体,在转发信息时进行评论与描述,更多的评论观点与评论内容的产生随着时间在社交媒体中会影响事件演变的走向。

全局的概览,是指:对社交媒体中参与转发信息的用户群体、事件演变的走向及时间趋势等进行总体的把握。

事件演变的不同阶段,是指:事件的起始、发展、高潮及消亡。

基于河流隐喻,是指:利用类似河流的形状,可视化的表达出信息中的时变规律。

上述中涉及以下参考文献:

[1]n.cao,y.lin,x.sun,d.lazer,s.liuandh.qu.“whisper:tracingthespatiotemporalprocessofinformationdiffusioninrealtime”.ieeetransactionsonvisualizationandcomputergraphics,2012,18(12):2649–2658.http://doi.ieeecomputersociety.org/10.1109/tvcg.2012.291.

[2]d.ren,x.zhang,z.wang,j.liandx.yuan.“weiboevents:acrowdsourcingweibovisualanalyticsystem”.in:proc.ofieeepacificvisnotes,2014:330–334.

[3]d.archambault,d.greene,p.cunninghamandn.hurley.“themecrowds:multiresolutionsum-mariesoftwitterusage”.in:proceedingsofthe3rdinternationalworkshoponsearchandmininguser-generatedcontents.glasgow,scotland,uk:acm,2011:77–84.http://doi.acm.org/10.1145/2065023.2065041.

[4]w.dou,x.wang,d.skau,w.ribarskyandm.x.zhou.“leadline:interactivevisualanalysisoftextdatathrougheventidentificationandexploration”.in:proc.ofieeevisualanalyticsscienceandtechnology,2012:93–102.http://dx.doi.org/10.1109/vast.2012.6400485.

[5]y.wu,s.liu,k.yan,m.liuandf.wu.“opinionflow:visualanalysisofopiniondiffusiononsocialmedia”.ieeetransactionsonvisualizationandcomputergraphics,2014,20(12):1763–1772.http://dx.doi.org/10.1109/tvcg.2014.2346920.

[6]j.zhao,l.gou,f.wangandm.zhou.“pearl:aninteractivevisualanalytictoolforunderstandingpersonalemotionstylederivedfromsocialmedia”.in:proc.ofieeevisualanalyticsscienceandtechnology,2014:203–212.

通常,重大的事件会在社交媒体中被大量用户群体评论与传播(转发)。理解用户发布信息、转发信息的信息传播行为,能够更好地理解事件演变。然而,发布与转发信息的动态性以及用户群体评论的主题的多样性给事件演变分析带来了很大的难度。

事件演变包括两部分,首先有信息源,即发布信息,其次会有转发信息。这两者在整个事件演变中都一直存在。

事件中,主题是重要的部分,用户群体评论内容的聚合即为主题,因此,一个事件可能有多个不同的主题。由于社交媒体中信息(文字)来源于不同的用户,包含不同的评论观点与评论内容,此即为主题的多样性。



技术实现要素:

针对现有技术中存在的缺陷,本发明的目的在于提供一种社交媒体动态事件演变可视分析方法及系统,通过该方法能够支持对社交媒体中的事件可视分析(可视化),所述可视化能够提供用户一个高层次的对事件演变的总结,以及拥有深入探索数据不同方面的能力,所述数据指社交媒体数据。

为实现上述目的,本发明采用的技术方案如下:

一种社交媒体动态事件演变可视分析方法,包括以下步骤:

针对某事件,从社交媒体中提取关键词,然后根据关键词,从社交媒体中获取社交媒体数据;

根据基于地图隐喻处理规则,采用地图映射的方式,将输入的社交媒体数据转换为事件演变地图e-map;

所述基于地图隐喻处理规则包括:城市、城镇以及河流,形成一个结构化的且包含语义的投影空间,用户能通过交互去探索该投影空间;

所述发送给处理规则的社交媒体数据中至少以下数据:

关键词,

包含关键词的发布信息及转发信息,

用户信息传播行为。

进一步,如上所述的一种社交媒体动态事件演变可视分析方法,在基于地图隐喻处理规则中,按以下方式预设语义地图及视觉映射,具体包括:

所述语义地图包括:

关键词,映射为城市,

包含关键词的发布信息及转发信息,映射为城镇,城镇围绕城市分布,

用户信息传播行为,映射为河流,对应于空间的轨迹以及城市或区域之间的联系,

发布信息及转发信息对应的信息分部,映射为大陆或岛屿;

大陆和岛屿通过城市与城镇形成的区域的连接度所决定。

进一步,如上所述的一种社交媒体动态事件演变可视分析方法,语义地图采用统一的颜色映射进行映射,使用颜色来表征事件特征的时变属性,所述统一的颜色映射包括但不限于感知度均衡的“inferno”颜色映射。

进一步,如上所述的一种社交媒体动态事件演变可视分析方法,所述转换为事件演变地图,包括:多实体图构造,及事件演变地图生成。

进一步,如上所述的一种社交媒体动态事件演变可视分析方法,多实体图即从社交媒体信息中抽取的图结构,描述了社交媒体中关于某个事件的关键词、信息与时间的相互关系;

多实体图构造中,输入是社交媒体信息m=(m1,m2,...,mi,...,mnm),输出是一个多实体图g=(n,e),其中:

n=(k,m,t)包括了关键词k,信息m,和虚拟时间点t,

e=(kk,kt,km)包括了关键词与关键词的连边kk,关键词与时间点的连边kt,和关键词与信息的连边km。

进一步,如上所述的一种社交媒体动态事件演变可视分析方法,多实体图构造中,包括两轮布局处理,分别为初始布局和第二阶段布局。

进一步,如上所述的一种社交媒体动态事件演变可视分析方法,事件演变地图生成中,基于多实体图g作为输入,按以下步骤最终生成带有城市、城镇、区域、河流、大陆以及岛屿的事件演变地图:

放置节点,节点包括:种子点、城市与城镇;

构造城市、城镇和区域;

构造河流;

合并/分离陆地,构造大陆与岛屿;

地图调优。

一种社交媒体动态事件演变可视分析系统,包括:

关键词提取模块,用于针对某事件,从社交媒体中提取关键词;

社交媒体数据获取模块,用于根据关键词,从社交媒体中获取社交媒体数据;

事件演变地图e-map转换模块,用于根据基于地图隐喻处理规则,采用地图映射的方式,将输入的社交媒体数据转换为事件演变地图e-map。

进一步,如上所述的一种社交媒体动态事件演变可视分析系统,所述事件演变地图e-map转换模块,包括:

多实体图构造子模块,用于构造多实体图;多实体图即从社交媒体信息中抽取的图结构,描述了社交媒体中关于某个事件的关键词、信息与时间的相互关系;

事件演变地图生成子模块,用于最终生成带有城市、城镇、区域、河流、大陆以及岛屿的事件演变地图e-map。

进一步,如上所述的一种社交媒体动态事件演变可视分析系统,多实体图构造子模块具体包括:

初始布局单元,用于生成转发关系以及将相同时间段内出现的关键词拉到相近的位置;

第二阶段布局单元,用于调整节点的位置,让节点在保持聚集状态的同时尽量松散开来,用于节点m和边kimj进行进一步的布局计算。

进一步,如上所述的一种社交媒体动态事件演变可视分析系统,事件演变地图生成子模块具体包括:

放置节点单元,节点包括:种子点、城市与城镇,种子点用于使得地图的边缘更加清晰,使得生成的voronoi网格更加均匀,城市与城镇位置直接投影在voronoi网格中;

构造城市、城镇和区域单元,用于基于图的位置放置城市的位置,用于遍历voronoi中所有的多边形网格,然后将他们赋值给最近的城市,以获得每个城市的区域范围,用于找到相邻区域属于不同城市的节点,连接成区域的边界,用于将城镇的按照距离从内向外放置最早发布的信息,到最晚发布的信息;

构造河流单元,用于将源-目的关键词进行连边,将对应的城市所在的voronoi网格中的区域位置相连,用于将所有的区域连接按照数量进行排序,按照一个参数过滤出河流的数目,仅显示连接最为相关的河流,用于将具有相同路径的河流进行合并;

构造大陆与岛屿单元,用于基于密度分布,将密度值大于0的区域进行连接,大块的连接区域为大陆,独立的连接区域为海洋,用于提取所有大陆与岛屿的边缘;

地图调优单元,用于对大陆和岛屿的边缘进行腐蚀模拟,用于将河流每个点的上一点和下一点进行插值,将整个河流变得相对平滑。

本发明的有益效果在于:实现了以下需求(requirement,下文缩写为字母r):

·r1:提供语义与时间趋势上的对事件演变的总结。在这个视图中,不同主题的评论应该被检测以及可视化呈现。这个视图能够提供事件演变的不同阶段的深入分析。

·r2:根据主题以及信息的转发关系进行聚合。不同主题的分布应该可视化呈现,让人理解主题、主题的受欢迎程度以及不同主题之间的相关性。信息的转发关系也同样需要被总结以及可视化呈现。

·r3:检测与可视化呈现不同时间段的主题。不同时间段的主题的分布应该被强调,并且视觉上进行排布,以让人直观地理解主题的动态变化,从而进一步让人理解在不同时间段的动态事件演变。

·r4:提取用户的信息传播行为模式。理解用户(尤指关键人物)的信息传播行为如何影响事件演变十分重要。可视化呈现需要支持用户探索以下问题:谁是关键人物,关键人物评论了什么主题,关键人物以何种方式以及何时参与评论,综合而言关键人物的行为如何影响着事件演变的走向。

在本发明中,构建了满足以上需求r1~r3的语义地图,并且提供了一系列交互方式,允许用户支持需求r4的探索。

附图说明

图1为本发明具体实施方式中提供的一种社交媒体动态事件演变可视分析方法的流程图。

图2为本发明具体实施方式中提供的一种社交媒体动态事件演变可视分析系统的结构框图。

图3为事件演变阶段示意图。

图4为语义地图的设计以及主要特征。

图5为构造事件演变地图流程示意图。

图6为可视分析系统界面。

图7为可视分析流程示意图。

具体实施方式

下面结合说明书附图与具体实施方式对本发明做进一步的详细说明。

本发明的关注点在于与事件相关的社交媒体数据。

本发明对事件的定义如下。

事件指的是在社交媒体中,用某些hashtag(标签)和关键词定义的真实事件(真实世界中的社会事件)。即事件可以看做是社会事件的简称。

本发明对社交媒体的定义如下。

社交媒体(socialmedia)指的是互联网上基于用户关系的内容生产与交换平台,例如twitter和新浪微博等。

大多数社交媒体,都允许用户用hashtag来强调某个主题或观点(评论观点)。通常一个hashtag会和事件相关联。举例而言,当用户在twitter中评论今年一道由trump下达的白宫行政命令(即限制某些国家人民进入美国)的时候,许多用户都用了#travelban(旅行禁令)这个词。当然,尽管这很流行,标有#travelban作为hashtag也不能代表所有的关于这个事件的评论,因此在进行该事件相关数据搜集时,基于关键词的搜索仍然需要结合进行。例如,同时搜索travelban这个词会提供更多的、新的关于这个事件的信息,在这一举例中,我们可以看出:事件指白宫行政命令,hashtag为#travelban,关键词为travelban。

我们对事件的关注在于它随着时间的变化。我们知道事件演变通常有几个阶段,事件演变的不同阶段会有相同或者不同的用户起到关键的作用,该用户即关键人物(简称为人物),可能是关键人物发布某条很有影响力的信息或者某条信息被其他用户大量转发了,激起了新的评论,也可能是事件有了新的发现与进展,被关键人物及时地发布到社交媒体中,这些因素都会影响事件演变。在事件演变的过程中,参与的用户、评论的主题都随之变化。

基于此,我们认为事件可以由以下一系列特征所定义,所述特征包括<时间,人物,转发信息,语义>,这些是描述一个事件的重要特征。

如图3所示,该示例为事件演变阶段示意图:

从时间轴上看,事件演变可分成事件阶段1~n,n=1,2,3……,显然,多个事件阶段在一个事件中,新的事件阶段可能来自于新的信息传播行为或者新的信息。另一方面,可能新的事件阶段是由用户新的评论观点与评论内容激起的新一轮争辩、引申或者评论。

从人物轴上看,每一个事件阶段都对应着一个关键人物,关键人物可能是主题的引导者,或者是具有大量粉丝的人,可能会改变或引导事件演变的走向。此外,事件中的受害者,或者发声者,可能也会是这个事件的关键人物,他们的表态、行为甚至提供的信息,都影响着事件演变的走向。

从转发信息轴上看,关键人物发布的某个具体信息,被若干其他用户转发,随着信息传播,用户持续地通过发布或转发带有关键词或者hashtag的信息,可以让一个事件持续的在社交媒体中发酵。转发信息导致更多用户看见,进而出现更多的想法和争辩,这直接地导致了动态的信息扩散。

从语义轴上看,关键人物发布的主题1,经信息扩散后会形成主题2~m,m=2,3,4……,这些主题之间有的单独引用之前的某一主题,有的引用之前的多个主题,也有的主题之间互相被引用,不同主题包含不同语义,主题可能随着时间合并、分裂、消亡,或者在事件演变的不同阶段出现。评论的主题在不同的用户和事件阶段中也很不一样。

由此可见:一个事件演变中包含了多个事件阶段,用户的发布信息、转发信息的信息传播行为引起了事件演变,以及对事件的评论。评论的主题可能分裂、合并以及融合成新的主题。

本发明对社交媒体数据的定义如下。

对社交媒体数据的定义以微博(例如新浪微博)的数据为例,但显然应该认识到该示例不是为了限定社交媒体数据只能来源于微博,本发明所述方法及系统是通用于多种社交媒体的。

在微博中,我们首先使用一个关键词或者hashtag进行搜寻,把搜索到的各条微博均当作种子微博,种子微博的数量显然不止一条,我们然后进一步收集所有转发任意一条种子微博的微博。这样我们可以覆盖大量的微博,可以了解主题演变与信息传播。其中:种子微博即种子数据,转发种子微博的微博即转发数据。显然,种子微博即搜索的起点,往往是包含大量转发的信息,我们以此,沿着转发该种子微博的转发链进行数据爬取。

每条微博包括时间戳,用户id,信息id,转发用户id,转发信息id,文本内容等,我们可以根据用户id以及转发用户id构造微博的转发树。

有了这些种子数据以及所有的转发数据,我们可以进一步地分析事件的时间特征、人物行为模式,转发信息规律和语义信息。因此,社交媒体数据包括:种子数据以及所有的转发数据。社交媒体数据属于多模态信息传播数据。

本发明所述社交媒体动态事件演变可视分析方法,包括以下步骤:

针对某事件,从社交媒体中提取关键词,然后根据关键词,从社交媒体中获取社交媒体数据;

根据基于地图隐喻处理规则,采用地图映射的方式,将输入的社交媒体数据转换为事件演变地图e-map;

通过事件演变地图让用户快速理解事件的各个方面,以及深入理解事件演变;通过事件演变地图,可以多层次的时空可视分析探索,让用户在事件演变地图中发现事件演变规律、信息传播规律、关键人物的信息传播行为模式,以及关键人物如何影响事件演变的走向;

所述基于地图隐喻处理规则包括:城市、城镇以及河流,形成一个结构化的且包含语义的投影空间,用户能通过交互去探索该投影空间;

所述发送给处理规则的社交媒体数据中至少以下数据:

关键词,

包含关键词的发布信息及转发信息,

用户信息传播行为。

采用基于地图隐喻有以下两点主要的考虑。

第一点,地图可以给予一个结构化与带有语义的空间来组织信息。事件以及事件的特征都是基于社交媒体信息提取的,社交媒体信息包括发布信息及转发信息,通常这些信息都是非结构化的,并且难以直接让人理解主题、事件阶段以及事件的其他特征。一个地图可以展示数据的不同方面,例如对象的形状、颜色以及地形。将相关的信息映射到一个包含有语义的2d空间中可以让人更好地理解事件。

第二点,地图是一种人们熟悉的方式。用户熟悉地图上的对象,包括大陆、城市、河流、岛屿以及陆地,它们之间的关系也是自然地让人理解。如果一个地图合理设计的话,用户会天然地熟悉类似地图的可视化形式。

在上述技术方案的基础上,如图4所示,在基于地图隐喻处理规则中,按以下方式预设语义地图及视觉映射,具体包括:

所述语义地图包括:

关键词,映射为城市,

包含关键词的发布信息及转发信息,映射为城镇,城镇围绕城市分布,

用户信息传播行为,映射为河流,对应于空间的轨迹以及城市或区域之间的联系,

发布信息及转发信息对应的信息分部,映射为大陆或岛屿;

大陆和岛屿通过城市与城镇形成的区域的连接度所决定;

为确保可视化呈现,语义地图采用统一的颜色映射进行映射,所述统一的颜色映射包括但不限于感知度均衡的“inferno”颜色映射。

具体说:

e-map采用的语义地图,基于社交媒体数据构造而成,作为原始信息的发布信息和作为提取出的信息的转发信息都用于构造语义地图,其中事件的特征被映射到了带有语义的地理的特征,所述带有语义的地理的特征包括:

城市,一座城市代表着一个关键词,城市的大小代表包含该关键词的信息数量的多少,城市间的距离由关键词的相关程度而定,具体包括转发关系和同时出现关系。

这些关键词是从不同时间段中最高频关键词中组合而来。一座城市代表了地理空间一片区域的中心,就像最高频关键词代表了信息空间中的语义中心。这样,用户可以在地图上观察到关键词的时间趋势。

城镇,城镇代表了属于某个城市的信息,每个城镇只属于一个城市,城镇散落在它所属的城市周围,城镇到它所属的城市间的距离映射了信息的相对时间。

在属于一个城市的各个城镇中,最早的发布信息在城市中心,最晚的发布信息离城市中心最远。这样,用户可以感知信息的时间分布以及主题分布。

区域,城市和属于该城市的城镇,以及它们中间的领地构筑了它们的区域,一个区域包含有一个城市(一个关键词)以及多个城镇(信息)。

区域的大小和形状由城市和属于该城市的城镇所决定,我们用虚线表示区域的界限。不同的区域连接关系代表了转发的相关性以及时间上的相关性。

河流,地图上的一条河流象征着不同城市或区域间的转发关系,一条河流的起点与终点表示了这两个城市或两个区域间的信息具有大量的转发关系。

河流表征了信息传播和主题演变的提示,这是基于用户行为而总结出来的特征。

大陆和岛屿,大片连接的区域形成了大陆,小而孤立的区域形成了岛屿。

综上,区域之间的连接性反映了基于关键词的信息传播特征,总体的包含城市、城镇的大陆和岛屿的布局,展示出主题以及多元关系的分布。

除了地图上对象的视觉映射之外,颜色也是最重要的设计考量之一。我们对动态事件演变十分感兴趣,因此使用颜色来表征事件特征的时变属性。具体而言,考虑了以下三个设计需求:

第一,颜色映射需要让人理解事件的变化,以及事件特征的时间线性性。

第二,颜色映射应该在感知上是线性且均匀分布的。

第三,在地图上所有使用颜色的对象都应该一致。

基于此,我们最后选择了感知度均衡的“inferno”颜色映射。我们把颜色映射到城市、城镇和区域中。其他满足条件的颜色映射方式也可以在我们的地图上使用。

在上述技术方案的基础上,所述转换为事件演变地图,包括:多实体图构造,及事件演变地图生成,其中:

第一步,多实体图构造。

多实体图即从社交媒体信息中抽取的图结构,描述了社交媒体中关于某个事件的关键词、信息(社交媒体信息)与时间(虚拟时间点,亦称为虚拟时间节点)的相互关系,参见图5;

多实体图构造中,输入是社交媒体信息m=(m1,m2,...,mi,...,mnm),输出是一个多实体图g=(n,e),其中:

n=(k,m,t)包括了关键词k,信息m,和虚拟时间点t,

e=(kk,kt,km)包括了关键词与关键词的连边kk,关键词与时间点的连边kt,和关键词与信息的连边km。

在不同时间段提取关键词随着时间变化,不同的主题也在变化。我们首先从所有信息中提取了关键词。在事件分析中,我们不仅仅关心总体上的高频词,我们也关心只在某一个时间段突发的高频词。基于此,我们将时间线分成多个时间段,针对每个时间段内的信息我们计算关键词的tf-idf值(词频/反向文件词频)。我们提取出在每个时间段内具有高词频的关键词。通过合并相同关键词之后,我们获得了一个关键词集合k=(k1,k2,...,ki,...,knk)。此外,我们针对分割的时间段,也构造了虚拟时间点集合t=(t1,t2,...,ti,...,tnt),每个虚拟时间点代表一个时间段。我们将每个时间段高频的关键词ki与其相应的虚拟时间点tj上增加一条边kitj。

对于每一个关键词,我们可以获得所有包含该关键词的信息。我们通过信息的转发关系,来获得关键词之间的转发关系。即当一条信息包含了关键词ki,转发了另一条包含了关键词kj的信息,那我们就在两个关键词之间加上一条边kikj。

基于以上的操作进行多实体图构造,我们获得了一个初始图g′=(n′,e′),其中节点为n′=(k,t),边是e′=(kk,kt)。为了得到初始图g′,我们首先使用了基于力导向(force-directedlayout)的算法进行布局,其中使用了稳定的模拟过程,它能够满足对同一个数据多次进行布局保持相对稳定的结果。具体步骤如图5所示,其中:

图5中步骤(a)所示初始布局,其目的在于反映转发关系(kk)以及将相同时间段内出现的关键词拉到相近的位置(kt)。初始布局的结果可能会导致一些节点太密集,需要进一步减少密集的视觉遮挡。

图5中步骤(b)所示第二阶段布局(布局调优),使用了lloyd算法来调整节点的位置,让节点在保持聚集状态的同时尽量松散开来。

此外,第二阶段布局,还增加了节点m和边kimj进行进一步的布局计算。其中边kimj包含了信息节点mj和关键词节点ki。增加边km的规则是只增加信息节点最有代表性的关键词,这样一来可以减少构造复杂性,二来可以使结果变得可以理解、可解释。否则多条边拉扯一个节点最终地图的信息位置无法让人理解。在这个调整中,更加重要的关键词(包含了更多的信息)会获得更多的空间,然后将其他节点推开。同时,第二阶段布局尽量保持之前的g′布局结果,我们让新加的节点与边的力相对小,以突显之前的时间关联与转发关联。

在两轮布局(指初始布局和第二阶段布局)之后,城市(关键词)与城镇(信息)的位置可以决定,这也是我们第二步事件演变地图生成算法的输入。

第二步,事件演变地图生成。

基于多实体图g(布局调优后得到的多实体图g)作为输入,地图生成部分将最终生成带有城市、城镇、区域、河流、大陆以及岛屿的事件演变地图e-map。我们使用到的基本数据结构是voronoi网格。具体步骤如图5所示,其中:

图5中步骤(c)所示放置节点,节点包括:种子点、城市与城镇,基于voronoi网格的抛雪球算法最初根据屏幕大小,我们将在2d空间中随机放置种子点。更多的种子点会使得地图的边缘更加清晰。在我们的实现中,考虑到计算效率与美观程度的平衡,我们选择了4096个点作为种子点。我们使用lloyd算法使得随机放置种子点更加均匀分布,这样生成的voronoi网格更加均匀。我们使用voronoi的理由有两点,首先voronoi中的多边形是不规则的,这与地形比较一致,在地图生成中也常常使用voronoi网格。另一方面,从计算角度而言,voronoi网格中的相邻多边形的计算可以通过计算delaunay三角形化而十分灵活。因此我们使用voronoi网格。我们将之前计算的城市与城镇位置直接投影在voronoi网格中,对于每个投影点,我们根据它包含的人数放置一个高斯核并进行抛雪球算法(splatting)。我们对高斯核的半径做了限制,设置最大半径为宽度的r比例值,这里我们根据经验设置r=1/10。在所有的节点进行投掷之后,我们会获得所有voronoi网格中的密度值。

图5中步骤(d)所示构造区域,构造城市、城镇和区域时,我们基于图的位置放置城市(关键词)的位置。大小用来表征包含的信息数量。为了计算区域,我们遍历了voronoi中所有的多边形网格,然后将他们赋值给最近的城市,这样我们就可以获得每个城市的区域范围。基于此,我们遍历所有的网格,找到相邻区域属于不同城市的节点,连接成区域的边界。在每个区域中,我们将城镇的按照距离从内向外放置最早发布的信息,到最晚发布的信息。

图5中步骤(e)所示构造河流,河流展示了不同区域之间的转发关系。我们将之前计算的g中的源-目的关键词进行连边(kk),我们将对应的城市所在的voronoi网格中的区域位置相连。然后我们将所有的区域连接按照数量进行排序,我们按照一个参数过滤出河流的数目,仅显示连接最为相关的河流。然而即使这样,还是有很大的交叉,影响视觉效果。因此,我们进一步地将具有相同路径的河流进行合并。关于参数的决定,我们主要参考最终的显示效果,在试验中我们发现5~10条河流效果比较好,既可以展示主要的转发路径,又可以保持一定的美观性。之后我们提供了一系列交互让用户探索进一步的转发细节。

图5中步骤(f)所示合并/分离陆地,用于构造大陆与岛屿,基于之前城市、城镇和河流的抛雪球算法,我们可以获得整个voronoi网格中的密度分布,基于这个密度分布,我们将密度值大于0的区域进行连接。密度为0则我们认为是海平面,于是大块的连接区域就变成了大陆,独立的连接区域变成了海洋。有了计算的结果,我们将提取所有大陆与岛屿的边缘,即相邻区域为海平面和非海平面的区域作为边界区域。

图5中步骤(g)所示最终地图调优,在这个步骤之后,我们已经获得了地图的所有特征。调优步骤包括以下两个方面。首先,我们对大陆和岛屿的边缘进行腐蚀模拟,因为真实地图中的大陆岛屿边缘都是经过长期海水冲刷与腐蚀的。我们使用了地理学中常用的planchon-darboux算法进行这一部分调优,使得生成的地图结构更加真实。它的原理是通过模拟海洋的腐蚀对边缘区域进行迭代计算边缘的位置变化。其次,原始的河流可能会有zig-zag的模式,我们通过将河流每个点的上一点和下一点进行插值,将整个河流变得相对平滑。最终我们获得了与真实地图类似的地理地图。

我们将图5所示算法称为algorithm1地图构造算法,以下为一该算法的示例。

input:

关键词节点集合ki,包含其位置ki.pos和大小ki.size,i=1,2...nk;

信息节点集合mi,包含其位置mi.pos和大小mi.size,i=1,2...nm;

关键词信息连边kimj;i=1,2...nk,j=1,2...nm;

关键词的转发关系li,包含源关键词li.source以及目的关键词li.target,i=1,2...nl;

output:

voronoi节点数组vi,i=1,2...nv;

城市节点数组ci,i=1,2...nk;

城镇节点数组ti,i=1,2...nt;

区域数组bi,i=1,2...nb;

河流数组ri,i=1,2...nr;

大陆和海洋的边界数组pi,i=1,2...np。

algorithm1算法主要包括如下步骤(包括部分代码):

1://stepc:构造voronoi网格以及进行抛雪球算法

2:gridpointsv=lloyd(newpoints(v));

3:fori=0;i<nk;i++do

4:index=findmeshgrid(v,ki.pos)//找到voronoi节点上的相应位置点5:vindex.size=ki.size

6:forj=0;j<vindex.neighbors.length;j++do

7:vindex.density=gaussian(vindex.pos,vindex.neighbors[j].pos,ki.size)

8:endfor

9:endfor

10:对信息节点m也重复以上操作

11://stepd:构造城市、区域和城镇

12:初始化城市节点c,边界区域b以及城镇区域t

13:fori=0;i<nk;i++do

14:index=findmeshgrid(v,ki.pos)

15:ci.pos=vindex.pos//构造城市

16:endfor

17:fori=0;i<nv;i++do

18:cityindex=findnearestcitypointindex(c,vi.pos)

19:ccityindex.area.push(vi)//设置城市区域

20:endfor

21:fori=0;i<nv;i++do

22:if!isallequal(vi.neighbors.cityindex)then

23:b.push(vi)//找到周边邻居不同的节点作为边界节点

24:endif

25:endfor

26:将相邻的边界节点连接作为最终边界b

27:基于连接km构造t.cityindex

28:fori=0;i<nk;i++do

29:ci.timemapping={domain:ci.timerange,range:[0,ci.area]}

30:endfor

31:fori=0;i<nm;i++do

32:ti.pos=cti.cityindex.timemapping(ti.timerange)//构造城镇

33:endfor

34://stepe:构造河流

35:初始化河流节点r

36:fori=0;i<nl;i++do

37:(source,target)=findmeshgrid(v,li.source,li.target)

38:ri.curve=buildcurves(source,target)

39:endfor

40:对河流节点r进行排序,根据它们访问的节点,然后按照相同的访问进行合并r

41://stepf:构造大陆和岛屿

42:p=contour(gridpointsv,sealevel=0)//在区域p中的区域形成大陆43://stepg:最终调优

44:p=erosion(p)//对边界进行海洋腐蚀效果模拟

45:fori=0;i<nr;i++do

46:forj=1;j<ri.nodes.length-1;j++do21

47:ri.nodesj.pos=interpolate(ri.nodesj-1.pos,ri.nodesj+1.pos)

48:endfor

49:endfor

在图5中步骤(g)处理后,我们得到了图6中a视图所示的事件演变地图e-map,为了进一步支持对其进行时空可视分析与探索,我们相应的提供了一套可视分析流程,支持对事件及其演变的探索,期望的结果是获得对事件演变的深入理解。

所述可视分析流程具体包括三个大的步骤,首先是提供了时空的总体概览,然后提供了多层次的时空探索,并且支持细节的探索与事件演变的分析。

为了实现这个过程,如图6所示,在可视分析系统界面中提供若干视图给予支持,包括:

图6中b视图所示的时间视图,用户可以使用时间视图来探索关键词与信息的时间规律,

图6中c视图所示的信息列表视图,用户可以使用信息列表视图来浏览、搜索与排序选择的信息,

图6中d视图所示的关键人物列表视图,用户可以使用关键人物列表视图来辅助找到谁是关键人物、以及他们说了什么话,

图6中e视图所示的细节关键词关系视图,用户可以使用细节关键词关系视图同时来进行对事件演变地图e-map的辅助探索。

图6中f视图所示为事件切割与动画功能,提供了用户对事件演变的不同阶段更好的探索。在图6中f视图所示事件示例中,有5个事件阶段s1~s5被检测,我们可以看到关键人物,以及分析他们是如何影响事件演变的。

所述可视分析流程如图7所示,首先,一个时间空间概览允许用户进行多层次的时空探索,包括导览、圈选与时间过滤,来更新地图上的特征发现规律。同时我们支持时间切片和动画效果,这样让用户清楚地理解地图是如何动态地被构造出来的,这反映了事件是如何演变的。为了进一步支持事件的探索,用户可以分析地图上的社交媒体用户的轨迹以及他们的传播关联,来判断在不同的时刻关键人物和行为对事件起到什么作用。基于以上的探索,用户可以对事件及其演变获得深入的理解。

图7中所示时空概览

我们提供了一个时空概览来帮助用户直观、快速地理解整个事件。其中,空间视图的地图视图展示关键词的总体分布。对关键词的大小的感知可以让用户了解它们的重要程度。相邻的城市可能会有更加相关的联系,这种联系可以在转发关系上也可以是在时间相关上。大陆与岛屿的分布体现了不同主题的连接程度。我们提供了多个按键让用户控制地图的开关,可以显示开启或关闭密度表示、城市、城镇、河流、区域边界等(参见图6中a视图)。这样提供了交互的灵活性,让用户可以自由地探索某一层或者某几层,并且可以支持灵活地进行下钻探索。

时间视图(参见图6中b视图)允许用户了解提取的关键词的具体时间分布。在这个视图中,提取的关键词按照从上往下,由它们出现峰值的时间排列。关键词同样也按照它峰值所对应的时间段进行排序,以方便用户进行比较。图6中b视图展示了按照最早出现峰值的关键词在上方,但是方向也可以定制排序。x轴是时间轴,每个关键词占了一行,展示包含它的社交媒体信息的时间分布。分布的色块颜色与关键词相同,同时用透明度来表示信息的数量。同时用户可以在上面做不同的刷选,图6中b视图展示了五个不同的事件阶段。有了这样的总览,用户可以对每段时间的关键词的出现、消亡、重新出现等规律进行探索。

图7中所示多层次时空可视探索

构造类似真实地图的空间表示形式的优势之一是可以允许用户使用时空过滤探索多层次的地图元素。在我们的设计中,城市和城镇是两个层次的空间组织,在地图上展示了层次结构的信息。为了支持这样多层次的时空探索,我们提供了三种类型的交互方式。

首先,用户可以通过刷选时间轴进行时间的选择与导航。选中时间段内的社交媒体数据会重新生成相应的e-map。这个新的地图是原有所有时间段地图的子集。这样用户可以比较容易地判断在地图对应的区域,是某些时间段社交媒体构造而成的。进一步地,用户可以对地图的构造过程进行动画探索(参见图6中f视图)。为了进一步保持用户的脑海中的图像,我们的设计提供了一系列的过渡效果,高亮了新选择的区域,并且逐渐暗淡消失的区域。这样可以让用户理解语义上的演变。

第二,用户可以在地图上使用熟悉的类似网上地图的交互形式。我们提供了包括导航、缩放和点选等操作。用户还可以进行缩放和位移探索感兴趣的城市、区域和河流。当用户下钻探索时,细节的城镇会自动展示出来。这些空间物理都可以点击。为了进一步支持多层次的探索,我们还提供了两个视图,即信息列表(参见图6中b视图)和关键人物列表(参见图6中c视图)。用户可以选择一个关键词城市来高亮所有的相关的信息。他们同样也可以选择一个细节的城镇来看原始数据信息,包括内容、时间以及用户(参见图6中e视图-s1,s2,s3)。与地图相链接,信息列表也会将相关的选中信息都更新、高亮。同时关键人物列表会显示相关的参与人物的统计信息,包括他共发布了多少条社交媒体信息,以及他的信息被多少人转发。

第三,用户可以在地图上使用自有的区域选择工具,选择一组城镇进行细节分析。因为每个区域只用了它最流行的关键词来表示它的城市,其他更多的关键词被隐藏了。我们提供了这样的刷选功能,会在被刷选的地图区域中显示一个单词云。单词的大小表示了选中信息中出现它的频率。同时,信息列表与关键人物列表同时也会更新。在这样多层次的时空探索中,用户可以探索地图的动态演变,以及城市、城镇与区域的细节信息。

图7中所示动态事件演变分析

进一步地探寻每个事件阶段地图如何变化,我们提供了基于地图的事件分析方法,主要对用户行为进行分析以及关键内容分析。因为我们知道用户的行为对事件的推动和影响有着很大的作用。对于用户的行为,在地图上体现为两个方面,一是社交媒体用户的轨迹以及他们的联系。一方面,一个人可能在不同的时间发布社交媒体信息,在地图上的体现就是他访问了不同的城镇。这些城镇可能在一个城市,也可能在多个城市,这样的轨迹以及访问的分布反映了一个人在主题上参与的特征。通过总结和整理这些特征,我们可以发现关键人物或者用户群体在不同主题上变化的趋势。另一方面,一条社交媒体信息可能被人转发,我们关注具有高影响力的信息,即被大量人转发。这在地图上体现为两个城镇中的联系,如果它们之间存在转发关系。在高层次,我们已经将大量的区域之间的转发总结成河流的形式,在细节以及交互探索中,用户可以探索每个城镇或者一片城镇区域的相关转发关系。基于以上两点,在e-map中,我们使用黑色的曲线来映射用户的轨迹,用灰色的直线来表征转发关系。线的粗细都代表转发的总数(参见图6中a视图)。

我们提供了两种模式来对轨迹和转发关系进行可视化:个人模式和聚集模式。在个人模式中,轨迹和关系两种连线都是在城镇级别显示,它展示了信息之间的关系,体现的是细节分布。在聚集模式中,连线被整理到了城市级别,这样我们看到的是不同区域之间的轨迹先后关系以及转发关系。具体的方式是我们将城市内所有的城镇的连线都进行聚合,将轨迹与连线的起点和重点都显示在中心城市中(参见图6中a视图)。这两种连线对探索事件的变化以及人物的影响力上有着重要的作用。我们可以对转发关系进行排序,用户可以看到高影响力的信息以及其相关性体现在地图的哪个方面。两一方面,用户可以刷选时间轴,用户也可以看到轨迹经过的区域的动态演变,这位事件演变的分析提供了强有力的证据。

进一步地,为了支持对信息传播与主题演变的探索,我们提供了一个细节关键词视图进行辅助分析(参见图6中e视图)。用户可以在地图上圈选一个区域,选择某个城市或选择关键人物的轨迹,我们都可以将选择的社交媒体信息及其关系导入关键词转发视图中,作为它的输入。在视图中,总共有三列,分别是选中的关键词放在中间,它们的转发父亲与孩子关键词节点分别放在左右两侧,用曲线相连。节点的大小代表包含该关键词中被选择的信息的数量。高度代表该转发在所有选中转发的比例。通过这个视图,我们可以探索选中的某些关键词,它的强相关的词有哪些(参见图6中e视图)。

总而言之,e-map可视分析系统允许用户探索多层次的事件演变,将非结构化的信息构造成结构化的包含语义的信息,支持动态交互探索不同层次、不同事件阶段的细节。

本发明的有益效果总结如下:

为了更好地让用户理解社交媒体动态事件相关的动态特征,我们提出了e-map,一个新颖的基于地图的可视化呈现。它提供了一个动态、可探索的社交媒体动态事件的总结形式,将信息传播空间可视化,让人以熟悉的方式-真实地图的形式进行理解与探索。在e-map中,用户社交媒体信息中提取的关键词被映射成城市,每个与该关键词相关的信息被映射成城市周边的城镇,这反映了这个区域的主题以及信息分布。区域之间的联系代表主题之间联系的紧密关联程度,主要体现在时间关联以及转发关联上。地图上的河流穿越不同的区域,表示了起点终点区域具有显著的转发关系。所有的区域,相关联的形成大陆,否则则是一个个的孤岛。关键点信息,包括用户的发布信息与转发信息的行为,就融合在地图上的轨迹以及城镇之间的关联上。用户可以在地图空间自由地探索,缩放,进行多层次交互的分析,以获得事件演变脉络的语义信息。

以下为具体实施例。

案例1-纱布门:事件分析

在这个案例中,我们展示了使用e-map进行探索的过程,来分析一个突发而持久发酵的事件。在其中,我们找到了不同的事件演变阶段,关键人物,转发关系以及主题的演变过程。这是一个在中国山东发生的一个事件,事情的起源在于山东有一名女子在2016年8月做手术之后,被遗留了一块纱布在她的体内。这件事情在2016年10月山东电视台当地节目“生活帮”中报道出来。报道的开始,群众纷纷谴责当事医院以及当事医生,但是随着事件演变,更多的人参与了评论,舆论逐渐往相反方向发展。

在我们的系统中,我们首先使用“纱布门”关键词进行数据爬取,收集到包含纱布门及其所有转发的共9626条微博,涉及6963人。图6展示了我们使用e-map的分析过程与结果。我们首先对10个不同的时间段找每个时间段内出现最多(tf-idf值最高)的10个关键词,然后通过合并后,我们找到了60个关键词,并根据它们的时空分布构造出了e-map。我们可以发现一些主要的关键词包括“纱布,生活,山东,媒体,医院,医生,广播”持续地被高亮,一直在整个时间段内被评论。这些关键词勾勒出了事件的开始,进一步地我们对事件进行探索,切分成了5个事件阶段并逐一分析。

在事件的开始阶段(s1),从10月30日至31日,“飞鱼军军”,当地“生活帮”电视台的一名电视节目主持人首先发布了几条关于“纱布门”的微博,他的内容包括“产妇肚里的纱布究竟何时能被取出?”。一开始只有少部分人进行转发,我们可以看出,在地图上的区域主要关于纱布门、节目、医院等。

在第二个阶段(s2),11月1日至2日,”飞鱼军军“持续地发着他的信息,并且强调这是“事实”,我们可以从新出现的区域“事实”和一条曲线从“纱布”指向“事实”可以看出来。然而,其他的人,包括“一个有点理想的记者”站出来说出了另一个观点,他表示医院和医生才是受害者,是因为病人蛮横无理才使得纱布迟迟没被取出。他提供了关于“签字”的证据,来说明“这是因为产妇迟迟不肯签同意书让医生取出纱布”。他使得了主题导向了“签字”,正如地图中的灰色直线所展示。进一步地,因为他发布了更多的当地的走访视频,更多的人加入了“一个有点理想的记者”的阵营,一起批评“飞鱼军军”和“生活帮”“不要脸”,这也在地图上产生了一个新的区域。然而另一方面,也有“飞鱼军军”的支持者,两方在网上进行争论。

在第三个阶段(s3),11月2日至3日,事件发生了很大的逆转。原因在于cctv,这个中国最有影响力的电视台介入并调查了这个事件。他们最终发现过错方主要在于病人,而不是医院。在这个阶段,我们可以看到,一个新的区域“cctv”从地图的西边延伸出来,同时有一条转发的连接从“纱布”指向“cctv”。同时越来越多的人开始评论来自“cctv”的调查,并呼吁“惩罚”那个病人。在这个阶段,从事医疗卫生的自媒体们起了重大的作用,包括”丁香园“、”一个优点理想的记者”等,他们持续地发信息、转发,让更多的人知道真相。

在接下来的事件阶段(s4),从11月3日到6日,关于纱布门的评论仍然在继续,并且有人提出其实当地电视台“生活帮”与“莆田系”医院(中国的民营医院)有所利益勾结。

最后的事件阶段(s5),从11月6日到8日,虽然评论还在持续,但是没有新的事件触发,并且人们的评论主题延伸到例如“女子”,“子宫”等医疗相关、妇女权益相关的主题上去。

在这个事件中,我们通过分析每个事件阶段,了解了纱布门发展的脉络,并且找到了中间每个阶段不同的关键人物,他们影响着整个事件的评论与发展。其中大陆的扩展,关键人物的轨迹变化以及新的链接关系出现,都让我们更好地理解了事件演变中重要的因素。

综上,本发明提出了一种创新性的可视化方法,它提供了一个可探索的自然地图设计,允许用户分析重大事件的变化。以评论事件的社交媒体信息作为输入,我们将信息、关键词、转发行为以及关键词的相关性映射为地图上的城镇、城市、河流以及相连的区域。这是一种形状上类似自然地图的可视化展示,同时我们提供一系列支持交互探索的时空可视分析操作。用户可以进一步地根据地图特征探索事件演变细节。系统可以帮助用户找到事件演变特征、关键人物以及探索分析他们是如何一步步地影响这个事件演变。

本发明包括:

一个基于社交媒体数据新颖的对事件演变的总结可视化形式我们提出的可扩展的地图设计,包含了复杂事件的语义总结,对应于事件演变的关键因素。地图将这些因素有机地融合在一起,并以用户熟悉的电子地图的方式呈现。

一种探索社交媒体用户行为的时空可视分析方法基于构造出的地图,用户行为被映射为地图上的空间元素。我们提供了一套可视分析的交互流程,探索用户的行为是如何影响事件的演化的。

与图1中所示的方法相对应,本发明实施方式中还提供了一种社交媒体动态事件演变可视分析系统,如图2所示,该系统包括:

关键词提取模块,用于针对某事件,从社交媒体中提取关键词;

社交媒体数据获取模块,用于根据关键词,从社交媒体中获取社交媒体数据;

事件演变地图e-map转换模块,用于根据基于地图隐喻处理规则,采用地图映射的方式,将输入的社交媒体数据转换为事件演变地图e-map。

进一步,如上所述的一种社交媒体动态事件演变可视分析系统,所述事件演变地图e-map转换模块,包括:

多实体图构造子模块,用于构造多实体图;多实体图即从社交媒体信息中抽取的图结构,描述了社交媒体中关于某个事件的关键词、信息与时间的相互关系;

事件演变地图生成子模块,用于最终生成带有城市、城镇、区域、河流、大陆以及岛屿的事件演变地图e-map。

进一步,如上所述的一种社交媒体动态事件演变可视分析系统,多实体图构造子模块具体包括:

初始布局单元,用于生成转发关系以及将相同时间段内出现的关键词拉到相近的位置;

第二阶段布局单元,用于调整节点的位置,让节点在保持聚集状态的同时尽量松散开来,用于节点m和边kimj进行进一步的布局计算。

进一步,如上所述的一种社交媒体动态事件演变可视分析系统,事件演变地图生成子模块具体包括:

放置节点单元,节点包括:种子点、城市与城镇,种子点用于使得地图的边缘更加清晰,使得生成的voronoi网格更加均匀,城市与城镇位置直接投影在voronoi网格中;

构造城市、城镇和区域单元,用于基于图的位置放置城市的位置,用于遍历voronoi中所有的多边形网格,然后将他们赋值给最近的城市,以获得每个城市的区域范围,用于找到相邻区域属于不同城市的节点,连接成区域的边界,用于将城镇的按照距离从内向外放置最早发布的信息,到最晚发布的信息;

构造河流单元,用于将源-目的关键词进行连边,将对应的城市所在的voronoi网格中的区域位置相连,用于将所有的区域连接按照数量进行排序,按照一个参数过滤出河流的数目,仅显示连接最为相关的河流,用于将具有相同路径的河流进行合并;

构造大陆与岛屿单元,用于基于密度分布,将密度值大于0的区域进行连接,大块的连接区域为大陆,独立的连接区域为海洋,用于提取所有大陆与岛屿的边缘;

地图调优单元,用于对大陆和岛屿的边缘进行腐蚀模拟,用于将河流每个点的上一点和下一点进行插值,将整个河流变得相对平滑。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1