一种微博突发事件检测方法

文档序号:8258902阅读:373来源:国知局
一种微博突发事件检测方法
【技术领域】
[0001] 本发明涉及自然语言处理、文本数据挖掘、突发事件检测技术领域,具体涉及一种 微博突发事件检测方法。
【背景技术】
[0002] 微博,即微博客(MicroBlog),是一种迷你型博客,可供用户写一段简短的文字 (中文微博客平台一般为140个汉字)来描述日常生活或发布消息、评论时事并传递这些信 息给好友或感兴趣的旁观者,发布方式可以是手机短信、即时通讯工具(頂)、邮件或网络。 与即时通讯相比,用户可以指定发布的信息是公开还是只限于一个小网络内;与博客平台 相比,用户的时间和精力投入更低,沟通速度更快,还有更高的更新频率。
[0003] 互联网的发展使得微博的发布和获取变得更方便快捷,这直接导致了如下两个问 题:第一,微博的数量规模巨大,通过人工的方式阅读所有信息是不可行的。第二,有价值的 话题通常具有突发性,但这些话题被淹没在众多普通话题之中,如何从海量数据中找出具 有突发性的事件是需要迫切解决的问题。因此使用计算机来处理微博数据,并自动获得其 中的突发事件是很有必要的。
[0004] 目前,基于微博的突发事件检测研宄的很少,一般的研宄是检测微博流中频率异 常高的突发词,而后对突发词按照出现在同一微博中次数进行聚类来找到新事件,但是该 方法还很难达到实用的地步。
[0005]目前,针对微博突发事件的检测方法具有以下的局限性:
[0006] 1) 一般都是离线模式,达不到在线实时处理的需求,处理的数据规模十分有限;
[0007] 2)不能及早地探测到突发事件,表现出突发事件发现的滞后性,往往实用性极 低;
[0008] 3)对特征空间没有采取降维处理,往往会导致运行速度缓慢,耗费大量的内存空 间。

【发明内容】

[0009] 针对微博突发事件检测的局限性,本申请提供一种微博突发事件检测方法,包括 步骤:
[0010] 降维处理:基于LSH算法对微博数据流中的词汇进行映射处理;
[0011] 创建B-Sketch模型:创建微博数据流中的B-Sketch数据;
[0012] 推测突发事件:根据B-Sketch数据,计算微博数据流中的事件加速率a和事件中 词的分布向量P,根据事件加速率a判断事件是否为突发事件。
[0013] 依据上述实施例的微博突发事件检测方法,由于通过LSH算法将所有词汇映射到 低维空间,降低了计算的复杂度,并基于B-Sketch模型推测隐含的突发事件,使得能够快 速有效的实时处理微博数据流,及早地检测出突发事件。
【附图说明】
[0014] 图1为本发明微博突发事件检测方法流程图。
【具体实施方式】
[0015] 在本发明实施例中,提出一种微博突发事件检测方法,具体是,通过提出的 B-Sketch模型作为突发事件推断的基础,并基于LSH算法降低计算的复杂度,使得本发明 可以检测出更多突发事件,并且能够更加精确的定位突发事件真实的发生时间。
[0016] 本例的微博突发事件检测方法包括如下步骤,其流程图如图1所示。
[0017] S1 :去噪处理。
[0018] 微博数据流中具有各种各样的信息,包括很多关于日常生活的描述、感慨以及一 些广告信息等,这些信息对突发事件的检测有很大的干扰作用,所以本步骤对微博数据流 先进行去噪处理。具体的,通过筛选微博数据流中的停用词,并将该停用词删除。
[0019] 一般情况下,把一个已做分词处理的微博文本中的名词、形容词、动词称之为实 词,而把那些虽然经常在文本中出现,但对文本处理没有多大意义的词称为虚词。本例的停 用词表包含所有绝大部分的虚词和一部分经常在微博出现的,比如"转发"、"评论"、"详情" 等实词,当然还包括所有的标点符号。对于这些停用词而言,因为它们对突发事件的检测没 有太多帮助,甚至会影响探测的准确性,还造成了一定程度上的资源浪费,所以在实际应用 系统中,将这些停用词都进行删除。
[0020] 另外,去噪处理还包括将微博文本中的广告以及个人心情描述进行删除。这部分 主要考虑的是微博文本中的广告以及个人心情描述对突发事件检测也没有任何帮助,同样 也会造成计算资源和存储资源的浪费。本例中,通过正则表达式的匹配将微博文本中的广 告以及个人心情描述进行删除,具体的,从样本数据里面筛选出一些广告微博和个人心情 的微博,人工提取了这些微博的常规模式生成正则表达式规则,从实际结果来看,这种方法 既简单又能有效去除80%以上的噪音数据,效率较高。
[0021] S2:降维处理。
[0022] 由于微博数据流中的词语数量巨大,可以很容易的达到几十万的量级,所以,为了 避免词语的高维度灾难的问题发生,本例采用LSH (Locality-sensitive hashing)算法对 微博数据流中的词汇进行映射处理,LSH算法是本领域技术人员所熟知的,不作赘述。
[0023] 针对微博数据流中词语出现高维度的问题,现有的解决方案是:取一段时间内的 活跃单词,如最近15分钟,当一个突发词被触发了,就只需考虑最近词汇集中的单词。然 而,由于,微博数据流中这样处理之后的词汇量还是很大,依然不能有效的解决这个问题。
[0024] 基于LSH算法,本例解决上述问题的方案为:将微博数据流中的词汇哈希映射到 B (B〈〈N)个哈希桶中,并且将每一个桶中所有单词看做一个"词",而不是保存所有的活跃词 汇集,并采用C0UNT-MIN算法估计概率最高的单词。
[0025] 因此B-Sketch中的词汇数量就变为0 (B2),维度空间的数量级优化为0 (B*K)。这 个比原问题中的〇(N2)和0(N*K)小很多,映射之后,将得到关于哈希桶的分布,而不是原有 活跃单词的哈希分布,即通过哈希桶的概率得到单词的概率。为了解决这个问题,通过观察 发现,LSH算法只需关心概率最高的单词,因为它能够表示突发事件,因此采用Count-Min 算法。它可以维护数据流上的频繁项。然而,对于这两个问题,潜在的逻辑是一样的,如 下:如果使用H哈希函数去映射每个单词,可能会发生这种情况,一个话题的两个高频词都 落在了相同的哈希桶内,因为所有的哈希函数是非常小的,更重要的是,如果在一个哈希桶 中仅有一个单词是显著的高频率,就可以使用这个哈希桶的频率去代替这个高频单词的频 率。
[0026] 具体的工作流程如下:假设有H个哈希函数讯,H2, ...,Hh),该H个哈希函数 可以统一、独立地将单词映射到哈希桶[1,2,…,B]中。对于一个事件中,词的分布pk 和每个哈希函数Hh,l <H,对于每个哈希函数,就可以估计哈希桶的分布。这时, 使用Count-Min算法去估计单词i的概率为min, </2<//{丨:);:.〃0.丨,返回概率高的单词 {ilmiq ShSH{pgw}ks},其中s为概率阈值,比如〇. 02。LSH算法还维护了活跃单词集, 因此估计集合中的单词概率不是此表中所有单词的概率。根据{pE = ^估计哈希 桶的分布,这个算法在估计每个单词的概率为的情况下,其估计误差不大于e/B。
[0027] S3 :创建 B-Sketch 模型。
[0028] 本例提出的一种B-Sketch模型的新数据结构,该B-Sketch模型能够及早的发现 突发事件的发生。具体的,通过对比微博整体发帖数的规模和加速率,给定一个能尽早发现 突发事件的指示器,以此来检测是否发生了突发事件。事件T k的加速率表示为a k(t),它是 入k(t)在时间t上的导数。但是,一个隐含的突发事件是无法直接从ak(t)观测得到的,需 要通过观测数据流D(t)的几个特征变量来推测出a k(t)。
[0029] -般情况下,所选择的检测加速的特征变量其数学表达式为
【主权项】
1. 一种微博突发事件检测方法,其特征在于,包括步骤: 降维处理:基于LSH算法对微博数据流中的词汇进行映射处理; 创建B-Sketch模型:创建微博数据流中的B-Sketch数据; 推测突发事件:根据B-Sketch数据,计算微博数据流中的事件加速率a和事件中词的 分布向量P,根据所述事件加速率a判断所述事件是否为突发事件。
2. 如权利要求1所述的方法,其特征在于,所述创建B-Sketch模型的过程包括获取特 征变量:微博数据流中的总微博数的加速率S"、微博数据流中的每个词在总词汇数的加速 率X"和微博数据流中的每个词对的加速率Y"。
3. 如权利要求2所述的方法,其特征在于, 所述S"的获取方式为:通过等式一:
得到; 所述X"的获取方式为:通过等式二:
得到; 所述Y〃的获取方式为:通过等式三:
得到; 所述等式一、等式二和等式三中的K为微博数据流中的当前活跃事件的数目。
4. 如权利要求3所述的方法,其特征在于,所述计算事件加速率a和分布向量p的具体 步骤包括: 构建目标函数f,f=wx ?ex+wY ?eY,其中,ejPeY分别为等式二和等式三的误差的平 方和,wjPwY分别为等式二和等式三中待调节的权重; 根据所述等式一、等式二和等式三将所述目标函数f最优化,计算出事件加速率a和分 布向量P。
5. 如权利要求4所述的方法,其特征在于,所述推测突发事件之前,还包括步骤:动态 生成一阈值,所述阈值为当前活跃事件的前N天的微博总数的平均值,N多1。
6. 如权利要求5所述的方法,其特征在于,所述根据事件加速率a判断所述事件是否为 突发事件的具体步骤包括: 比较所述事件加速率a与所述阈值的大小,如果所述事件加速率a大于所述阈值,则所 述事件为突发事件。
7. 如权利要求4所述的方法,其特征在于,所述降维处理具体为:将相似词汇映射到同 一个哈希桶里,将每个桶里的所有词汇视为一个词,并采用COUNT-MIN算法估计概率最高 的单词。
8. 如权利要求7所述的方法,其特征在于,根据降维处理变换所述eeY,所述^和 eY的表达式分别变换为:
9. 如权利要求1至8中任一项所述的方法,其特征在于,所述降维处理之前,还包括去 噪处理:筛选微博数据流中的停用词,并删除所述停用词。
【专利摘要】一种微博突发事件检测方法,包括步骤:降维处理:基于LSH算法对微博数据流中的词汇进行映射处理;创建B-Sketch模型:创建微博数据流中的B-Sketch数据;推测突发事件:根据B-Sketch数据计算微博数据流中的事件加速率a和事件中词的分布向量p,根据事件加速率a判断事件是否为突发事件。由于通过LSH算法将所有词汇映射到低维空间,降低了计算的复杂度,并基于B-Sketch模型推测隐含的突发事件,使得能够快速有效的实时处理微博数据流,及早地检测出突发事件。
【IPC分类】G06F17-30
【公开号】CN104573031
【申请号】CN201510018617
【发明人】徐睿峰, 汪奕丁, 黄锦辉, 陆勤
【申请人】哈尔滨工业大学深圳研究生院
【公开日】2015年4月29日
【申请日】2015年1月14日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1