自然灾害舆情分析方法和装置转让专利

申请号 : CN202011494854.1

文献号 : CN112559844B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 邵蓥侠刘辉王海江廖健翔

申请人 : 北京邮电大学

摘要 :

本发明提供一种自然灾害舆情分析方法和装置,所述方法包括:创建爬虫实时收集自然灾害相关的社交消息数据;对收集到的数据进行社交媒体消息的属性信息与自然灾害描述信息的抽取,基于抽取结果得到各社交消息对应的自然灾害实体数据;设置自然灾害信息表和社交消息缓存表分别记录各自然灾害和各社交消息,根据所述自然灾害实体数据按照各自然灾害事件对社交消息进行聚类,以生成聚类结果,并基于聚类结果进行自然灾害舆情分析。本发明实施例的自然灾害舆情分析方法和装置,能够大大提高多源社交媒体的自然灾害舆情分析效率。

权利要求 :

1.一种自然灾害舆情分析方法,其特征在于,该方法包括以下步骤:创建多源社交媒体数据爬虫,通过输入数据采集条件参数进行数据采集,得到自然灾害相关的社交消息数据,所述数据采集条件参数包括:自然灾害类型关键词、采集自然灾害信息的多源社交媒体类型和社交媒体字段信息,所述社交媒体字段信息包括发布时间、发布内容、转发数量、评论数量和用户信息;

对爬虫采集到的社交消息数据进行实体获取,以从采集到的社交消息数据中抽取各社交消息对应的社交媒体消息的属性信息和初始的自然灾害描述信息,并基于抽取结果得到各社交消息对应的自然灾害实体数据,所述自然灾害实体数据包括社交媒体消息的属性信息和标准格式化的自然灾害描述信息;其中,所述初始自然灾害描述信息包括:自然灾害发生地信息、自然灾害发生时间信息和自然灾害等级信息;

设置自然灾害信息表和社交消息缓存表分别记录各自然灾害和各社交消息,根据所述自然灾害实体数据按照各自然灾害事件对社交消息进行聚类,以生成聚类结果;所述自然灾害信息表内容包括:灾害编号、灾害发生时间、灾害发生地点和灾害等级;所述灾害编号为新灾害信息填入时进行的自动编号;所述社交消息缓存表内容包括:社交消息编号、当前社交消息中的灾害发生时间信息、当前社交消息中到的灾害地点信息和当前社交消息中到的灾害等级信息;

基于聚类结果进行自然灾害舆情分析;

采集到的社交消息数据,进行实体获取后存入社交消息缓存表中,所述社交消息编号为新社交消息填入时进行的自动编号;

所述对爬虫采集到的社交消息数据进行实体获取的步骤包括:从采集到的社交消息数据中抽取各社交消息对应的社交媒体消息的属性信息和初始的自然灾害描述信息,抽取社交消息中与自然灾害类型关键词文本位置最近的地名作为灾害发生地点,在抽取结果中包含自然灾害发生地信息、自然灾害发生时间信息和自然灾害等级信息的情况下,基于抽取结果得到标准格式化的自然灾害描述信息:在抽取结果中不包含自然灾害发生地信息情况下,将对应社交消息的发布地点标准化为标准格式化的自然灾害发生地信息,填充并进行标记;在抽取结果中不包含自然灾害发生时间信息的情况下,将对应社交消息的发布时间标准化为标准格式化的自然灾害发生时间信息,填充并进行标记;在抽取结果中不包含自然灾害等级信息的情况下,将自然灾害等级范围之外的特殊等级标识值作为标准格式化的自然灾害等级信息填充;

所述根据所述自然灾害实体数据按照各自然灾害事件对社交消息进行聚类包括:将社交消息进行分类,基于社交消息的分类,将对社交消息进行聚类的方式分为不同聚类方式;

所述不同的聚类方式包括:

第一聚类方式,如果当前社交消息为转发其他用户所发布的消息,并且当前消息所转发的原始消息在消息聚类结果存储表中存在,则将当前消息标记与原始消息相同的灾害编号,存入消息聚类结果存储表;和

第二聚类方式,在确认当前社交消息的发布媒体为权威社交媒体的情况下,如果当前自然灾害信息表中不存在判定相似的记录,则在自然灾害信息表中增加当前社交消息包含的灾害记录,并将当前社交消息和社交消息缓存表中与当前消息判定相似的所有社交消息的消息编号填入消息聚类结果存储表中,并将此次存储表填入的社交消息编号对应的灾害编号标记为此次自然灾害信息表新增加记录对应的灾害编号;

消息聚类结果存储表中各社交消息编号对应的灾害编号对应消息的聚类结果。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:可视化展示自然灾害舆情分析的结果;

通过实时维护自然灾害信息表实时检测自然灾害。

3.根据权利要求1所述的方法,其特征在于,所述社交媒体消息的属性信息包括以下信息中的一种或多种:发布时间、发布内容、转发数量、评论数量和用户信息。

4.根据权利要求1所述的方法,其特征在于,所述创建多源社交媒体数据爬虫,通过输入数据采集条件参数进行数据采集,得到自然灾害相关的社交消息数据,包括:创建多源社交媒体数据爬虫,通过输入数据采集条件参数进行数据采集;

使用分词技术对爬虫采集到的数据进行分词处理,去掉停用词;

对采集到的数据中的无用文本数据进行过滤,和/或将采集的数据中特定社交媒体类型发布的社交消息进行过滤,从而得到自然灾害相关的社交消息数据。

5.根据权利要求1所述的方法,其特征在于,所述不同的聚类方式还包括:第三聚类方式,对于不满足上述第一聚类方式和第二聚类方式的社交消息,如果社交消息中可抽取到自然灾害发生地信息,则按时间倒序遍历灾害信息存储表,如果存在与当前社交消息判定相似的记录,则将当前社交消息的社交消息编号在消息聚类结果存储表中保存,且对应的灾害编号标记为该记录的相似记录对应的灾害编号;如果社交消息中以对应社交消息的发布地点作为自然灾害发生地信息,或可抽取到自然灾害发生地信息,按时间倒序遍历灾害信息存储表后不存在与当前社交消息判定相似的记录,则将当前社交消息与社交消息缓存表中社交消息的相似度进行判定,若判定相似且参与判定的消息中自然灾害发生地信息为非填充获得的消息数量大于预先设置的帖子数量阈值,将社交消息缓存表中与当前消息判定相似的所有消息构建消息簇,抽取除填充数据外簇中出现最多的自然灾害发生地信息与自然灾害等级信息,作为簇的自然灾害发生地信息与自然灾害等级信息,簇中最早的自然灾害发生时间作为整个簇的自然灾害发生时间,在灾害信息存储表中增加一条新灾害记录,灾害记录字段内容为簇的相应字段内容,并将簇中所有社交消息编号存入消息聚类结果存储表中,该簇中社交消息编号对应的灾害编号为新灾害记录的灾害编号。

6.根据权利要求5所述的方法,其特征在于,基于如下方式判定前社交消息与社交消息缓存表中社交消息是否相似:

针对每一灾害设定特定的灾害持续周期,输入灾害信息储存表中的某条记录与当前数据记录,若当前消息记录的时间与灾害发生时间作差大于灾害持续周期,则判定前社交消息与社交消息缓存表中社交消息不相似;若当前消息记录得到的灾害地点中特定区域信息与灾害发生地点中特定区域信息不相符,则判定前社交消息与社交消息缓存表中社交消息不相似;否则判定前社交消息与社交消息缓存表中社交消息相似。

7.一种多源社交媒体的信息采集装置,该装置包括处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现权利要求1‑6中任意一项所述方法的步骤。

8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1‑6中任意一项所述方法的步骤。

说明书 :

自然灾害舆情分析方法和装置

技术领域

[0001] 本发明涉及社交媒体舆情分析领域,更具体而言,本发明涉及一种基于多源社交媒体实时聚类的自然灾害舆情分析方法和装置。

背景技术

[0002] 近些年来我国自然频发,给人们的生命安全和财产安全都造成了巨大威胁,对经济的发展带来了不利影响。我国自然灾害具有种类多、分布地域广、发生频率高、造成损失
重的特点,这使得灾害发生前预警尤其重要。若灾害发生前预警不及时,会导致灾害附近人
员无准备工作,最终造成不必要的经济甚至生命损失,若灾害发生后消息传递不及时,会影
响到对受到自然灾害地区的救援效率,因此自然灾害分析与实时检测技术愈发重要。
[0003] 近年来,随着经济的发展我国社交媒体也得到了蓬勃发展,在社交媒体上存储了大量的舆论信息,当前结合社交媒体进行自然灾害舆情分析俨然已经成为一个热门的研究
方向,但社交媒体种类多,信息量巨大,信息复杂,多类型多次自然灾害舆论信息混合在一
起,难以进行区分。当前基于社交媒体的自然灾害舆情分析工作大多基于单源社交媒体上
某种类型(如台风、地震、暴雨等)的某一次或几次自然灾害进行手动采集数据。信息收集来
源单一必然会导致舆情分析过于片面,难以对自然灾害进行更广泛的舆情分析与更高效的
灾害检测,且该工作建立在大量的人力资源上,需要较多的人工参与来进行数据的采集,人
工采集必然会导致效率低下,结果缺乏实时性。若想基于社交媒体针对某类型自然灾害的
每一次灾害详情进行舆情分析,采用上述方法需要花费更多的人力,使该方法缺乏自动性、
实用性且效率低下的缺点更加明显。
[0004] 如何基于多源社交媒体实时聚类自动、高效地实现自然灾害舆情的分析,是一个亟待解决的问题。

发明内容

[0005] 鉴于此,本发明提出了一种自然灾害舆情分析方法和装置,以消除或改善现有技术中存在的一个或更多个缺陷。
[0006] 根据本发明的一方面,提出了一种自然灾害舆情分析方法,该方法包括以下步骤:
[0007] 创建多源社交媒体数据爬虫,通过输入数据采集条件参数进行数据采集,得到自然灾害相关的社交消息数据,所述数据采集条件参数包括:自然灾害类型关键词、采集自然
灾害信息的多源社交媒体类型和社交媒体字段信息;
[0008] 对爬虫采集到的社交消息数据进行实体获取,以从采集到的社交消息数据中抽取各社交消息对应的社交媒体消息的属性信息和初始的自然灾害描述信息,并基于抽取结果
得到各社交消息对应的自然灾害实体数据,所述自然灾害实体数据包括社交媒体消息的属
性信息和标准格式化的自然灾害描述信息;
[0009] 设置自然灾害信息表和社交消息缓存表分别记录各自然灾害和各社交消息,根据所述自然灾害实体数据按照各自然灾害事件对社交消息进行聚类,以生成聚类结果;
[0010] 基于聚类结果进行自然灾害舆情分析。
[0011] 在本发明一些实施例中,所述方法还包括:可视化展示自然灾害舆情分析的结果。
[0012] 在本发明一些实施例中,所述社交媒体消息的属性信息包括以下信息中的一种或多种:发布时间、发布内容、转发数量、评论数量和用户信息;所述初始自然灾害描述信息包
括:自然灾害发生地信息、自然灾害发生时间信息和自然灾害等级信息。
[0013] 在本发明一些实施例中,所述创建多源社交媒体数据爬虫,通过输入数据采集条件参数进行数据采集,得到自然灾害相关的社交消息数据,包括:创建多源社交媒体数据爬
虫,通过输入数据采集条件参数进行数据采集;使用分词技术对爬虫采集到的数据进行分
词处理,去掉停用词;对采集到的数据中的无用文本数据进行过滤,和/或将采集的数据中
特定社交媒体类型发布的社交消息进行过滤,从而得到自然灾害相关的社交消息数据。
[0014] 在本发明一些实施例中,所述对爬虫采集到的社交消息数据进行实体获取的步骤包括:从采集到的社交消息数据中抽取各社交消息对应的社交媒体消息的属性信息和初始
的自然灾害描述信息,在抽取结果中包含自然灾害发生地信息、自然灾害发生时间信息和
自然灾害等级信息的情况下,基于抽取结果得到标准格式化的自然灾害描述信息:在抽取
结果中不包含自然灾害发生地信息情况下,将对应社交消息的发布地点标准化为标准格式
化的自然灾害发生地信息,填充并进行标记;在抽取结果中不包含自然灾害发生时间信息
的情况下,将对应社交消息的发布时间标准化为标准格式化的自然灾害发生时间信息,填
充并进行标记;在抽取结果中不包含自然灾害等级信息的情况下,将自然灾害等级范围之
外的特殊等级标识值作为标准格式化的自然灾害等级信息填充。
[0015] 在本发明一些实施例中,所述自然灾害信息表内容包括:灾害编号、灾害发生时间、灾害发生地点和灾害等级;所述灾害编号为新灾害信息填入时的自动编号;所述社交消
息缓存表内容包括:社交消息编号、当前社交消息中的灾害发生时间信息、当前社交消息中
到的灾害地点信息和当前社交消息中到的灾害等级信息;采集到的社交消息数据,进行实
体获取后存入社交消息缓存表中,所述社交消息编号为新社交消息填入时的自动编号。
[0016] 在本发明一些实施例中,所述利用自然灾害信息表和社交消息缓存表分别记录各自然灾害和各社交消息,根据所述自然灾害实体数据按照各自然灾害事件对社交消息进行
聚类,以生成聚类结果,包括:
[0017] 第一聚类方式,如果当前社交消息为转发其他用户所发布的消息,并且当前消息所转发的原始消息在消息聚类结果存储表中存在,则将当前消息标记与原始消息相同的灾
害编号,存入消息聚类结果存储表;
[0018] 第二聚类方式,在确认当前社交消息的发布媒体为权威社交媒体的情况下,如果当前自然灾害信息表中不存在判定相似的记录,则在自然灾害信息表中增加当前社交消息
包含的灾害记录,并将当前社交消息和社交消息缓存表中与当前消息判定相似的所有社交
消息的消息编号填入消息聚类结果存储表中,并将此次存储表填入的社交消息编号对应的
灾害编号标记为此次自然灾害信息表新增加记录对应的灾害编号;
[0019] 第三聚类方式,对于不满足上述第一聚类方式和第二聚类方式的社交消息,如果社交消息中可抽取到自然灾害发生地信息,则按时间倒序遍历灾害信息存储表,如果存在
与当前社交消息判定相似的记录,则将当前社交消息的社交消息编号在消息聚类结果存储
表中保存,且对应的灾害编号标记为该记录的相似记录对应的灾害编号;如果社交消息中
以对应社交消息的发布地点作为自然灾害发生地信息,或可抽取到自然灾害发生地信息,
按时间倒序遍历灾害信息存储表后不存在与当前社交消息判定相似的记录,则将当前社交
消息与社交消息缓存表中社交消息的相似度进行判定,若判定相似且参与判定的消息中自
然灾害发生地信息为非填充获得的消息数量大于预先设置的帖子数量阈值,将社交消息缓
存表中与当前消息判定相似的所有消息构建消息簇,抽取除填充数据外簇中出现最多的自
然灾害发生地信息与自然灾害等级信息,作为簇的自然灾害发生地信息与自然灾害等级信
息,簇中最早的自然灾害发生时间作为整个簇的自然灾害发生时间,在灾害信息存储表中
增加一条新灾害记录,灾害记录字段内容为簇的相应字段内容,并将簇中所有社交消息编
号存入消息聚类结果存储表中,该簇中社交消息编号对应的灾害编号为新灾害记录的灾害
编号;
[0020] 消息聚类结果存储表中各社交消息编号对应的灾害编号即消息的聚类结果。
[0021] 在本发明一些实施例中,基于如下方式判定社交消息是否相似:针对每一灾害设定特定的灾害持续周期,输入灾害信息储存表中的某条记录与当前数据记录;若当前消息
记录的时间与灾害发生时间作差大于灾害持续周期,则判定二者不相似;若当前消息记录
得到的灾害地点中特定区域信息与灾害发生地点中特定区域信息不相符,则判定二者不相
似;否则判定二者相似。
[0022] 根据本发明的另一方面,还提供了一种多源社交媒体的信息采集装置,该装置包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中
存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如前所述方法的步骤。
[0023] 本发明的又一方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如前所述方法的步骤。
[0024] 本发明实施例的自然灾害舆情分析方法和装置,通过创建多源社交媒体数据爬虫进行实时数据采集,并将获取的数据包含的信息进行实时聚类,基于聚类完成的数据进行
舆情分析,使用可视化工具进行可视化展示,提高了自然灾害舆情分析的效率,达到实时监
测发生灾害的效果。
[0025] 本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。

附图说明

[0026] 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
[0027] 图1为本发明一实施例中自然灾害舆情分析方法的流程示意图。
[0028] 图2为本发明另一实施例中自然灾害舆情分析方法的流程示意图。
[0029] 图3为本发明一实施例中自然灾害舆情分析方法的实体获取流程示意图。
[0030] 图4为本发明一实施例中自然灾害舆情分析方法的实时聚类流程示意图。
[0031] 图5为本发明一实施例中自然灾害舆情分析方法的相似度判定流程示意图。

具体实施方式

[0032] 为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并
不作为对本发明的限定。
[0033] 在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大
的其他细节。
[0034] 应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
[0035] 如今社交媒体具有种类繁多、信息量巨大和信息复杂的特点,基于单源社交媒体上的某种灾害类型(如台风、地震、暴雨等)的某一次或几次发生的灾害进行人工数据采集
与研究,已不适用于如今社交媒体种类繁多、信息量巨大和信息复杂的情况,也即已无法适
应现有的社交媒体环境与未来的发展趋势。若基于社交媒体针对某类型自然灾害的每一次
灾害详情进行舆论分析,现有的上述数据采集方式更需要花费大量人力,且无法达到实时
检测灾害的效果。以现有社交媒体种类为例,微博、帖吧等多种社交平台均存在大量的活跃
用户,并且用户数量还在不断增长,建立在人工基础上进行舆情分析愈发困难。由于自然灾
害事件时有发生,且用户针对发生的灾害事件,讨论其内容的时间、地点、灾害强度等情况
相对统一,故按照一定规则抓取用户发布的相关内容帖与帖的发布信息,并将其按特定规
则进行聚类操作,可有效解决当前在多源社交媒体上对各类自然灾害舆论信息采集分析困
难的问题,对自然灾害舆论信息的收集效率的提高与分析时间的缩短起到促进作用。
[0036] 因此,针对现有技术存在的问题,本发明提出了一种基于多源社交媒体实时聚类的自然灾害舆情分析方法,通过输入的灾害类型关键词实时采集多源社交媒体的舆论消
息,并对采集到的社交舆论消息实时进行聚类,将关于同一类型同一次自然灾害的舆论信
息聚为同一类,使自然灾害舆情得到更高效、更具实时性的分析,解决了当前在多源社交媒
体上对某类型每一次自然灾害舆论信息进行采集分析较为困难的问题。与此同时,可实现
基于多源社交媒体对灾害的实时检测。
[0037] 本发明实施例中,通过将获取的帖子中灾害信息进行实时聚类,分析自然灾害舆情,对结果进行分析并进行可视化展示。更具体地来说,首先通过创建爬虫实时对多源社交
媒体进行灾害信息收集,过滤无用信息并将收集到的信息进行实体获取。通过将获取的帖
子中包含的各项信息进行实时聚类,将聚类完成的帖子进行相关灾害的舆情分析,分析结
果进行准确性评估并进行可视化展示。本发明相比当前通过人工对舆情信息进行收集与分
析的方法更具实时性,且效率更高,还能根据舆情信息实时聚类的实时特性,达到实时检测
灾害的目的。
[0038] 图1为本发明一实施例中自然灾害舆情分析方法的概括示意图。如图1所示,该方法包括步骤S110~S140,其中步骤S110为数据采集步骤,步骤S120~S130为实体获取和聚
类步骤,步骤S140为基于聚类结果进行舆情分析的步骤。
[0039] 步骤S110,输入初始数据采集条件参数,创建多源社交媒体数据爬虫实时采集自然灾害相关的社交消息数据。
[0040] 本步骤为数据采集步骤。本步骤中,初始数据采集条件参数例如可以是自然灾害类型关键词、待采集的多源社交媒体类型、待采集的社交媒体字段信息和其他相关数据采
集条件参数。自然灾害类型关键词例如可以是地震、台风、洪水等自然灾害短文本词汇,自
然灾害类型关键词可事先被采集到数据采集条件参数中。多源社交媒体类型例如可以是微
博、推特、脸书、帖吧等社交媒体平台,多源社交媒体类型可事先被采集到数据采集条件参
数中。社交媒体字段信息例如可以是发布时间、发布内容、转发数量、评论数量、用户信息等
发布帖属性信息,社交媒体字段信息可事先被采集到的数据采集条件参数中。
[0041] 本发明实施例中,可通过相关爬虫框架和分布式任务调度框架,依据输入的数据采集条件参数创建多源社交媒体实时爬虫来实现数据采集。作为示例,可使用Scrapy爬虫
框架和Celery分布式任务调度框架对多源社交媒体进行数据采集。
[0042] 步骤S120,对收集到的数据进行社交媒体消息(简称社交消息,或帖子)的属性信息与自然灾害描述信息的抽取,基于抽取结果得到各社交消息对应的自然灾害实体数据。
[0043] 本步骤为实体抽取步骤,所谓实体抽取,是指从文本数据中抽取预先定义的实体信息。本发明实施例中,抽取的实体信息可包括社交媒体消息的属性信息与自然灾害描述
信息,其中,社交媒体消息的属性信息例如可以包括以下信息中的一种或多种:发布时间、
发布内容、转发数量、评论数量和用户信息。自然灾害描述信息例如可以包括:自然灾害发
生地信息、自然灾害发生时间信息和自然灾害等级信息。在此,社交媒体消息的属性信息和
自然灾害描述信息仅为举例,本发明并不限于此。
[0044] 基于抽取结果可以得到各社交消息对应的自然灾害实体数据,自然灾害实体数据可包括社交媒体消息的属性信息和标准格式化的自然灾害描述信息。
[0045] 步骤S130,设置自然灾害信息表和社交消息缓存表分别记录各自然灾害和各社交消息,根据自然灾害实体数据按照各自然灾害事件对社交消息进行聚类,以生成聚类结果。
[0046] 本步骤为聚类步骤,用于根据自然灾害实体数据中的社交媒体消息的属性信息和自然灾害描述信息对社交消息进行实时聚类,例如,可根据抽取的实体数据中包含的灾害
发生地点、灾害发生时间、灾害等级信息和发帖人的相关信息等进行帖子的实时聚类,并存
储帖子的聚类结果。
[0047] 在本发明实施例中,可构建自然灾害信息表和社交消息缓存表,用于分别记录各自然灾害和各社交消息,此外,还可构建聚类结果存储表,用于存储基于自然灾害信息表和
社交消息缓存表的得到的聚类结果。
[0048] 在本发明一些实施方式中,自然灾害信息表内容可包括:灾害编号、灾害发生时间、灾害发生地点和灾害等级。灾害编号可为新灾害信息填入时进行的自动编号。
[0049] 社交消息缓存表内容可包括:社交消息编号、当前社交消息中的灾害发生时间信息、当前社交消息中到的灾害地点信息和当前社交消息中到的灾害等级信息;采集到的社
交消息数据,进行实体获取后存入社交消息缓存表中,所述社交消息编号为新社交消息填
入时进行的自动编号。
[0050] 根据自然灾害实体数据按照各自然灾害事件对社交消息进行聚类,以生成聚类结果可具体包括:
[0051] 第一聚类方式,如果当前社交消息为转发其他用户所发布的消息,并且当前消息所转发的原始消息在消息聚类结果存储表中存在,则将当前消息标记与原始消息相同的灾
害编号,存入消息聚类结果存储表;
[0052] 第二聚类方式,在确认当前社交消息的发布媒体为权威社交媒体的情况下,如果当前自然灾害信息表中不存在判定相似的记录,则在自然灾害信息表中增加当前社交消息
包含的灾害记录,并将当前社交消息和社交消息缓存表中与当前消息判定相似的所有社交
消息的消息编号填入消息聚类结果存储表中,并将此次存储表填入的社交消息编号对应的
灾害编号标记为此次自然灾害信息表新增加记录对应的灾害编号;
[0053] 第三聚类方式,对于不满足上述第一聚类方式和第二聚类方式的社交消息,如果社交消息中可抽取到自然灾害发生地信息,则按时间倒序遍历灾害信息存储表,如果存在
与当前社交消息判定相似的记录,则将当前社交消息的社交消息编号在消息聚类结果存储
表中保存,且对应的灾害编号标记为该记录的相似记录对应的灾害编号;如果社交消息中
以对应社交消息的发布地点作为自然灾害发生地信息,或可抽取到自然灾害发生地信息,
按时间倒序遍历灾害信息存储表后不存在与当前社交消息判定相似的记录,则将当前社交
消息与社交消息缓存表中社交消息的相似度进行判定,若判定相似且参与判定的消息中自
然灾害发生地信息为非填充获得的消息数量大于预先设置的帖子数量阈值,将社交消息缓
存表中与当前消息判定相似的所有消息构建消息簇,抽取除填充数据外簇中出现最多的自
然灾害发生地信息与自然灾害等级信息,作为簇的自然灾害发生地信息与自然灾害等级信
息,簇中最早的自然灾害发生时间作为整个簇的自然灾害发生时间,在灾害信息存储表中
增加一条新灾害记录,灾害记录字段内容为簇的相应字段内容,并将簇中所有社交消息编
号存入消息聚类结果存储表中,该簇中社交消息编号对应的灾害编号为新灾害记录的灾害
编号;
[0054] 消息聚类结果存储表中各社交消息编号对应的灾害编号即消息的聚类结果。
[0055] 在相似度判定过程中,可基于如下方式判定社交消息是否相似:
[0056] 针对每一灾害设定特定的灾害持续周期,输入灾害信息储存表中的某条记录与当前数据记录,若当前消息记录的时间与灾害发生时间作差大于灾害持续周期,则判定前社
交消息与社交消息缓存表中社交消息不相似;若当前消息记录得到的灾害地点中特定区域
信息与灾害发生地点中特定区域信息不相符,则判定前社交消息与社交消息缓存表中社交
消息不相似;如上上述不相似条件均不满足,则判定二者相似。
[0057] 在此,特定区域信息可以是省份信息、市信息和区信息中的至少一种,可以根据具体灾害影响范围确定是否需要市与区信息来判定前社交消息与社交消息缓存表中社交消
息是否一致。
[0058] 步骤S140,基于聚类结果进行自然灾害舆情分析。
[0059] 在本发明实施例中,基于聚类结果可进行相关灾害舆情分析,如生成本次灾害重大事件线、对本次灾害损失进行实时评估、对本次灾害舆情信息进行实时情感检测等。
[0060] 更进一步地,可对灾害舆情分析的结果进行准确率评估,并可使用echarts图等相关工具将舆情分析结果进行可视化展示。
[0061] 下面结合更具体的示例对本发明实施例进行描述。
[0062] 图2为本发明另一实施例中自然灾害舆情分析方法的流程示意图,如图2所示,数据采集步骤S110可具体包括数据采集参数初始化步骤、创建爬虫实时采集数据的步骤和垃
圾过滤步骤。
[0063] 也即,在数据采集步骤中,可先初始化数据采集参数,例如,预先设定自然灾害类型关键词、待采集的多源社交媒体类型、待采集的社交媒体字段信息和其他相关数据采集
条件参数。作为示例,初始化数据采集参数步骤中,可输入自然灾害类型关键字如地震、台
风、洪水等,待采集的多源社交媒体类型如微博、贴吧等,待采集的社交媒体字段信息如发
布时间、发布内容、转发数量、评论数量、用户信息等和/或其他相关数据采集条件参数。
[0064] 在输入初始数据采集条件参数后,可创建多源社交媒体数据爬虫,通过输入数据采集条件参数进行数据采集;随后使用分词技术对爬虫采集到的数据进行分词处理,去掉
停用词,并对采集到的数据中的无用文本数据进行过滤,和/或将采集的数据中特定社交媒
体类型(如僵尸号)发布的社交消息进行过滤,从而得到自然灾害相关的社交消息数据。
[0065] 更具体地,可使用爬虫框架(如Scrapy爬虫框架)创建多源社交媒体数据爬虫并利用分布式任务调度框架(如Celery分布式任务调度框架)进行实时数据采集。随后,对垃圾
信息进行过滤来实现数据采集过程。垃圾信息过滤可包括:通过jieba分词工具实现自然灾
害相关文本数据的分词处理,去掉停用词;进一步可采用TextCNN或朴素贝叶斯垃圾识别模
型对广告数据、娱乐新闻数据等无用文本数据进行过滤。另外,还可通过用于检测社交媒体
僵尸号的不相关算法将僵尸号发布的数据进行过滤。
[0066] 通过垃圾过滤步骤可除去停用词与不相关的无用文本数据,消除无用数据对后续实时聚类与舆情分析带来的影响,从而可提高采集到的数据与期望数据之间的相关度,增
强后续实时聚类与舆情分析的效果。
[0067] 本发明实施例提出的实时收集社交媒体灾害信息数据,其数据内容收集范围可调,且消除了人工收集数据时无法对社交媒体僵尸号进行排除的影响,为数据的实时聚类
与分析奠定了基础。
[0068] 如图2所示,实体获取和实时聚类步骤(对应图1中的步骤S120和步骤S130)可包括实体获取和帖子聚类(实时聚类)两个过程,实时聚类后的舆情分析和可视化步骤可包括灾
害舆情分析以及分析结果评估及可视化两个过程。
[0069] 图3为本发明一实施例自然灾害舆情分析方法中实体获取流程图。本发明实例对社交媒体消息数据中包含的社交媒体消息的属性信息和自然灾害描述信息进行针对性获
取,例如,在社交媒体消息数据中包含自然灾害发生地信息、自然灾害发生时间信息和自然
灾害等级信息的情况下,可直接对这些信息(如灾害发生地点、灾害发生时间和灾害等级
等)进行实体抽取,并将对应抽取到的信息标准化为统一的标准格式化信息。在社交媒体消
息数据中不包含自然灾害发生地信息和/或自然灾害发生时间信息和/或自然灾害等级信
息时,缺失的数据可通过对应的社交消息发布地点、社交消息发布时间或自然灾害等级范
围外的特殊标识进行实体填充并进行标记。
[0070] 作为示例,首先对获取的帖子中文本数据进行灾害发生时间、地点与灾害等级的实体获取。对可抽取到的数据,直接进行统一格式的规范化表示,若帖子的文本数据不含相
应信息,则按照设定规则进行实体填充,采用与实体获取到的数据相同的格式进行规范化
表示。
[0071] 例如,对于灾害发生地点,可采用如CRF+BiLSTM或正则表达式等相关命名实体识别方法抽取帖子中与灾害关键词文本位置最近的地名作为灾害发生地点,并将抽取到的地
点标准化为XX省XX市XX县的格式,若未在帖子中抽取到灾害发生地信息,则将用户的发帖
地点以相同的地点标准化格式填充到灾害发生地信息中,并做相应标记。
[0072] 对于发生时间的抽取,可采用如正则表达式等相关时间实体识别方法抽取帖子中与灾害关键词文本位置最近的时间实体作为灾害发生时间,并将抽取到的时间实体标准化
为XXXX年XX月XX日XX时XX分XX秒的格式,如果未在帖子中抽取到灾害发生时间信息,则将
用户的发帖时间以相同的时间标准化格式填充到发生时间信息中,并做相应标记。
[0073] 对于灾害等级的抽取,可以抽取帖子中与灾害关键词文本位置最近的等级文本作为灾害等级,并将抽取到的等级文本依据不同灾害类型进行标准化,如对于暴雨类灾害,可
以分为暴雨、大暴雨、特大暴雨,台风类灾害可以分为台风、强台风、超强台风等,如果未在
帖子中抽取到灾害等级信息,则将一特定标记如‑100填充到灾害等级信息中。
[0074] 在实体获取之后,可将从社交媒体消息(帖子)中获取到的灾害发生地点、灾害发生时间、灾害等级信息和帖子的属性信息(如发帖人信息)等数据填入构建的社交消息缓存
表中以用于进行分析,将分析得到的每个自然灾害事件可填入构建的自然灾害信息表,根
据表中数据对帖子进行实时聚类,并储存帖子的聚类结果。
[0075] 作为示例,在聚类之前或聚类过程中,可构建三个相关数据存储表,分别为灾害信息存储表(DisasterInformationTable)、帖子信息缓存表(PostInformationCache)以及帖
子聚类结果存储表(PostClusterTable)。
[0076] 其中,灾害信息存储表用以存储灾害标号(disasterNumber)、灾害发生时间(disasterTime)、灾害发生地点(disasterLocation)以及灾害等级(disasterGrade)等信
息。帖子信息缓存表用以存储帖子编号(postNumber)、帖子中抽取到的灾害发生时间信息
(postTime)、帖子中抽取到的灾害地点信息(postLocation)以及帖子中抽取到的灾害等级
信息(postGrade)。帖子聚类结果存储表用以存储帖子编号(postNumber)以及与当前帖子
讨论内容相关的灾害编号(disasterNumber),与当前帖子讨论内容相关的灾害编号也即帖
子的聚类结果,其中,帖子编号postNumber为帖子信息录入帖子信息缓存表时自动编号的
用于对帖子进行区分的帖子编号;disasterNumber为灾害信息录入灾害信息存储表时自动
编号的用于标识灾害的编号。
[0077] 随后,可根据灾害的相关特性初始化灾害持续周期(disasterCycle)参数,如地震的灾害持续周期可以初始化为20天,暴雨的灾害持续周期可初始化为10天等;灾害持续周
期参数可用于后续的帖子相似度判断。然后可设置帖子数量阈值参数(postNum),其例如可
以设置为100条,帖子数量阈值参数可以用于在聚类过程中生成帖子簇并基于帖子簇进行
聚类,后面讲详细描述。
[0078] 网络上的社交媒体消息中,有的是原帖,有的是转贴,有的帖子发布媒体为权威媒体(如官方媒体),有的帖子发布媒体为非权威媒体,有的帖子与灾害信息存储表中已有的
帖子相似度很高。在这些情况下,本发明实施例在进行聚类操作时,可将帖子基于具体情况
进行分类,例如:将当前帖子为转发且当前帖子所转发的原始帖在帖子聚类结果存储表中
存在的帖子分为一类;将当前帖子发布媒体为权威社交媒体,且灾害信息存储表中不存在
判定相似的帖子分为一类;将其余帖子分为一类。为了便于描述,可将属于前两种分类的帖
子归类为特殊帖子,最后一类帖子归类为普通帖子。
[0079] 为了进行更精确的聚类,本发明实施例可以针对如上分类基于不同的聚类方式进行聚类操作。
[0080] 图4为本发明一实施例中自然灾害舆情分析方法的实时聚类流程图,通过判断帖子类型选择不同的聚类方式进行聚类操作。
[0081] 具体来说,对于特殊帖子类型中的转帖且其原帖在帖子聚类结果存储表中存在,则将该帖子的disasterNumber标记为与其原帖相同,并将该帖的postNumber与
disasterNumber写入帖子聚类结果存储表,此次聚类结束。
[0082] 对于特殊帖子类型中的权威媒体发布的帖子(如官方媒体发布帖),并且在灾害信息存储表中不存在与其相似度满足相似判断条件(如相似度为1)的记录,则在灾害信息存
储表中增加一条新的灾害记录,其内容为当前帖子包含的信息内容,并将当前帖子和帖子
信息缓存表中与当前帖子相似度为1的所有帖子的disasterNumber标记为新灾害记录的
disasterNumber,将相应数据一同写入帖子聚类结果存储表中,此次聚类结束。在此,相似
度为1为表示帖子相似,在此仅为示例,还可以有其他表示方式。
[0083] 图5为本发明一实施例中自然灾害舆情分析方法的相似度判定流程图,本示例后续聚类方法均可通过如图5所示方法对帖子相似度进行计算。该判断流程中,首先输入灾害
信息储存表中的某条记录的时间、地点信息与当前帖子记录的时间、地点信息,若当前帖子
记录的时间与灾害信息储存表中记录的时间作差大于灾害持续周期,则判定两条记录相似
度为0,即不相似,否则继续判断当前帖子记录与灾害信息储存表中记录的省份是否一致,
若不一致,判定两条记录相似度为0(即不相似),若一致,判断当前帖子记录与灾害信息储
存表中记录的市是否一致,若不一致,判定两条记录相似度为0(即不相似),若一致,判断当
前帖子记录与灾害信息储存表中记录的区是否一致,若一致,则判定两条记录相似度为1
(即相似),否则判定相似度为0。具体可根据灾害类型和影响范围选择是否需要判断灾害信
息储存表中的记录与当前帖子记录的地区中的市、区是否一致。
[0084] 对于普通帖子的聚类方法,如果帖子抽取到的灾害地点信息不是填充信息,按时间顺序倒序遍历灾害信息存储表的每一条记录,如果灾害信息存储表中存在与当前帖子相
似度为1的记录,则将当前帖子disasterNumber标记为相似度为1的这条灾害记录的
disasterNumber,并将该帖的postNumber与disasterNumber写入帖子聚类结果存储表中,
此次聚类结束。如果帖子抽取到的灾害信息是填充信息,或虽不是填充信息,但遍历灾害信
息存储表后不存在相似度为1的帖子,则将帖子相关信息放入帖子信息缓存表,如果帖子信
息缓存表中与当前帖子相似度为1且postLocation字段不为填充而来的帖子的数量大于
postNum,则将帖子信息缓存表中与当前帖子相似度为1的所有帖子取出形成新的帖子簇,
抽取除了填充数据外在帖子簇中出现最多的postLocation、postGrade分别作为帖子簇的
postLocation、postGrade,帖子簇中的最小postTime作为帖子簇的postTime,在灾害信息
存储表中增加一条新的灾害记录,灾害记录字段内容对应帖子簇中相应字段,并将帖子簇
中所有帖子的disasterNumber标记为新灾害记录的disasterNumber,相应数据写入帖子聚
类结果存储表中,此次聚类结束。
[0085] 本发明实施例的自然灾害舆情分析方法的实时聚类过程,为整个多源社交媒体实时聚类的自然灾害舆情分析方法的核心部分,通过在社交消息中获取实体信息,或在社交
消息的属性信息中提取该信息中包含可能与自然灾害相关的潜在信息,扩充了社交消息的
聚类样本,便于充分挖掘各社交消息所描述的自然灾害信息与舆论情况。
[0086] 另一方面,在灾害信息存储表中,进行多源社交媒体实时聚类的过程会实时留下灾害发生的时间、地点与灾害等级,针对灾害信息存储表进行实时维护,提取灾害信息,可
实现对灾害进行实时检测的功能。
[0087] 基于聚类完成的数据进行相关灾害深入分析,分析结果使用数据可视化工具进行可视化展示,并可以对分析结果进行准确性评估。例如,可以利用准确率和召回率指标,或
者可以把聚类结果直接展示出来,若得到了某一次的灾害信息,如时间地点等级,可以直接
展示这一次灾害的所有相关帖子。
[0088] 作为示例,首先对实时聚类完成的帖子进行相关灾害舆情分析,包括但不限于通过聚类的帖子理出本次灾害重大事件线、通过实时聚类对本次灾害对目前及未来的损失进
行实时评估、通过对多源社交媒体中的灾害舆情信息的解析分析实时进行情感检测等。
[0089] 对灾害舆情分析的结果通过echarts等相关工进行可视化展示,并对分析结果进行准确率评估。
[0090] 本发明实施例提出创建多源社交媒体数据爬虫,通过预设初始数据采集条件参数对多源社交媒体数据进行实时采集,过滤无用文本数据与无用帖后对收集到的帖子进行数
据的实体获取,建立储存表并对获取到的数据进行存放,对帖子进行分类,每种类型帖子采
用特定方法进行聚类处理,并将聚类结果进行存储。对实时聚类完成的帖子进行相关灾害
舆情分析,聚类结果通过相关工具进行可视化处理,并对结果进行准确度评估。本发明实施
例可以自动在多源社交媒体上采集指定时间段内某类型每一次自然灾害的舆情信息进行
实时聚类,从而实现高效的自然灾害舆情分析。
[0091] 本发明可以自动在多源社交媒体(如微博、今日头条等)上采集指定时间段内某类型每一次自然灾害的舆情信息进行分析,相较于当前手工输入参数筛选采集某类型每一次
自然灾害的舆情信息进行分析相比更具有自动性,且效率更高。此外,本发明具备实时性,
一次部署永久使用。另一方面,通过对灾害信息存储表的实时维护,可对此方法进行功能扩
展,达到实时检测灾害的目的。
[0092] 本发明实施例仅以帖子作为收集分析与实时聚类的对象,但是本发明并不限于此,也可以将本发明应用在更广泛的多源社交媒体进行实时聚类,并对自然灾害进行舆情
分析。
[0093] 与前述方法相应地,还提供一种多源社交媒体的信息的采集装置,该装置包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储
的计算机指令,当所述计算机指令被处理器执行时该装置实现如前所述方法的步骤。
[0094] 实现本发明实施例的软件可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD‑ROM、或技术领域内所公知
的任意其它形式的有形存储介质中。
[0095] 相应地,本公开还涉及如上存储介质,其上可以存储有计算机程序代码,当程序代码被执行时可以实现本发明的方法的各种实施例。
[0096] 需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述了一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中
提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
[0097] 本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他
实施方式的特征。
[0098] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的
任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。