法律状态公告日
法律状态信息
法律状态
2018-08-21
授权
授权
2016-04-06
实质审查的生效 IPC(主分类):G06F17/30 申请日:20151102
实质审查的生效
2016-03-09
公开
公开
技术领域
本发明涉及一种利用计算机对社交媒体文本中的事件信息进行抽取和分类, 属于信息处理技术领域。
背景技术
目前尚未发现面向社交媒体(如微博、微信等)文本的基于贝叶斯模型的无 监督的事件抽取和分类技术。但存在面向正式文本的事件抽取技术以及面向社交 媒体文本的有监督的事件抽取技术,前者与本发明研究的文本对象不同,后者采 用的有监督方法难以在领域间移植,均与本发明解决的问题完全不同。
本发明提出的面向社交媒体文本的基于贝叶斯模型的无监督的事件抽取和 分类技术,可以抽取出国内外发生的大小事件,及时获得有价值的信息;由于微 博等社交媒体的特性,还可以获悉人们对发生的事件的观点、看法等信息,有利 于舆情监督和舆论引导,这是从新闻等其他正式文本中所获取不到的,这些信息 对未来舆情分析的研究奠定了基础;同时对抽取的事件进行了分类,可以对抽取 出的事件进行分门别类的展示。
相较于过去的针对新闻文章抽取事件的方法,本方法针对的是社交媒体文本, 如微博文本,其不像新闻文本那样结构化,其中充斥着噪声,从中抽取出事件信 息更加困难,同时,可以从中获取人们对事件的观点和情感信息;而过去的面向 微博文本的有监督的方法,很大程度上依赖于标注语料的数量和质量,在这个过 程中会花费大量的人力、物力,同时由于训练语料的领域相关性,有监督的方法 很难在领域间移植,而本发明提出的无监督的方法不需要标注语料。
发明内容
本发明的目的是设计出一种面向社交媒体文本的基于贝叶斯模型的无监督 的事件抽取和分类方法,该方法相比面向新闻文本的方法可以获得人们对事件的 情感态度信息,该方法相比面向社交媒体文本的有监督的方法能够具有领域的普 适性。
为实现上述发明目的,本发明设计了一种事件抽取和分类的贝叶斯模型 (EventExtraction&CategorizationBayesianModel-EECB),使用该模型从经过预 处理后的社交媒体文本中抽取出结构化表达的事件并分类。结构化的事件以四元 组<y,d,l,k>的形式表示,其中y表示非地点命名实体,d表示时间,l表示地点, k表示关键词。本发明提供的一种面向社交媒体文本的基于EECB模型的无监督 的事件抽取和分类方法,包括如下步骤:
(1)对社交媒体文本进行过滤,排除与事件不相关的文本;
(2)对过滤后的文本进行预处理,提取得到文本中的命名实体和候选关键 词,所述命名实体包括非地点命名实体和地点命名实体;
(3)按照文本对应的时间标记对文本进行分组;
(4)基于EECB模型采用Gibbs采样方法对各组文本进行迭代学习,得到 各组中每条文本对应的事件编号,每个事件编号对应于一个以三元组<y,l,k> 表示的事件,其中y表示非地点命名实体,l表示地点,k表示关键词;
(5)对各组中事件编号相同的事件元素进行后处理,得到满足设定可信度 的事件;
(6)将时间标记d加入三元组,基于事件元素的相似性对事件进行合并;
(7)将合并后得到的每个事件的每个命名实体映射到语义类,并基于EECB 模型进行迭代学习,得到每个事件的事件类型。
进一步地,所述步骤(1)中的基于关键词和/或分类器的方法对文本进行过 滤,所述基于关键词的方法为通过构建一个关键词词典,过滤掉不包含所述词典 中的关键词的社交媒体文本;所述基于分类器的方法基于特征集将社交媒体文本 分为事件相关和事件不相关两类,过滤事件不相关的社交媒体文本。
进一步地,所述步骤(2)中的预处理包括对中文文本的预处理和对英文文 本的预处理;对中文文本的预处理包括中文分词、词性标注、命名实体识别和确 定候选关键词步骤,所述候选关键词为命名实体识别步骤中未被识别为非命名实 体的名词、动词和形容词;对英文文本的预处理包括词性标注、命名实体识别、 确定候选关键词和去词根步骤。
进一步地,所述步骤(3)中文本的时间标记根据文本发布的时间戳和文本 中时间表述确定,具体为:对包含事件发生时间表述的文本,在该时间表述与发 布时间中选择较早的时间作为该文本对应的时间标记,否则选择发布时间作为时 间标记。
进一步地,所述步骤(4)中基于EECB模型进行迭代学习得到文本对应事 件的步骤包括:首先,对于每一条社交媒体文本等概率随机赋予一个初始事件编 号;然后,反复作如下操作直到过程收敛或到达迭代上限:对于每一条社交媒体 文本,计算其对应的事件编号为每一个可取的编号的条件后验概率,将这些概率 组成一个多项式分布,按该分布采样,赋予该条社交媒体文本新的事件编号。
进一步地,所述步骤(7)中基于EECB模型进行迭代学习得到事件对应类 型的步骤包括:首先,对于每一个事件四元组等概率随机赋予一个初始事件类型 编号;然后,反复作如下操作直到过程收敛或到达迭代上限:对于每一个事件四 元组,计算其对应的事件类型编号为每一个可取的编号的条件后验概率,将这些 概率组成一个多项式分布,按该分布采样,赋予该事件四元组新的事件类型编号。
进一步地,所述步骤(5)中后处理的方法为:将每组文本按照时间编号分 类,对于每一类利用如下后处理规则移除不满足可信度的事件元素:(a)仅保留 出现次数最多的时间元素和地点元素;(b)仅保留出现次数最多的前n个关键词; (c)如果N(element)<n1,那么将此元素移除,其中N(element)表示某一元素 在所有事件编号为e的微博中出现的次数;(d)如果N(element)<m/n2,那么将 此元素移除,其中m表示事件e中的文本数目,n、n1、n2为设定的阈值参数。
进一步地,所述步骤(6)中对事件进行合并的方法为:对于两个以四元组 <y,d,l,k>表示的事件,若y,l,k元素中有两个或以上的元素相同,则将这两个 四元组合并,时间取较前的d。
本发明提供的面向社交媒体文本的基于EECB模型的无监督的事件抽取和分 类方法与现有的微博公开事件领域中最先进的系统TwiCal相比具有明显的优势: 本发明方法的事件抽取及分类的准确率都更高。
附图说明
图1是本发明实施例的方法流程图。
图2是本发明实施例中EECB模型表示示意图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本 发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发 明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
本发明实施例公开的一种社交媒体文本事件抽取和分类方法中所基于的一 种无监督贝叶斯模型EECB模型,其图模型表示见图2。其中, α、β、η、λ、τ、ρ、δ是超参数,π为事件参数,θ为非地点命名实体参数,ψ为 地点参数,ω和ζ为关键词参数,v为事件类型参数,ε为语义类参数。
本实施例中的社交媒体文本以微博文本为例,假设在模型中,每条微博文本 m∈{1,2,...,M}被赋予一个事件实例e,e是非地点命名实体y,事件发生的地点l, 事件相关的关键词k的联合分布。这一假设促使包含相同非地点命名实体,发生 在相同地点,并拥有相同关键词的事件被视为相同的事件。假设每个事件都属于 一个事件类型t,t是非地点命名实体对应的语义类y′和事件关键词k′的一个联合 分布。这种假设促使拥有相同实体语义类和相似关键词的事件属于同一类别。
EECB模型生成流程如下:
1生成事件分布π~Dirichlet(α)
2生成事件类型分布υ~Dirichlet(τ)
3对于每个事件e∈{1,2,...,E},生成多项式分布θe~Dirichlet(β), ψe~Dirichlet(η),ωe~Dirichlet(λ)
4对于每个事件类型t∈{1,2,...,C},生成多项式分布εt~Dirichlet(ρ), ζt~Dirichlet(δ)
5对于每条微博m:
1)选择一个事件e~Multinomial(π);
2)对于每个出现在m中的非地点命名实体,选择一个非地点命名实体 y~Multinomial(θe);
3)对于每个出现在m中的地点,选择一个地点l~Multinomial(ψe);
4)对于每个其他词语(关键词),选择一个词语k~Multinomial(ωe)
6对于每个事件e:
1)选择一个事件类型t~Multinomial(v);
2)对于每个出现在事件e中的非地点命名实体,选择一个语义类 y′~Multinomial(εt);
3)对于每个出现在e中的关键词,选择一个关键词k′~Multinomial(ζt)。 令Λ={α,β,η,λ,τ,ρ,δ},通过对π,θ,ψ,ω,v,ε,ζ的积分并累加所有的事件e就 可以得到微博文本的边缘概率分布:
其中N表示一条微博中的非地点命名实体、地点和关键词的总数,E表示事 件总数,C表示事件类型总数,xn可以表示yn,ln,kn,并且fe是其对应的多项 式分布;ze可以是y‘e,k’e,并且gt是其对应的多项式分布。
将数据集中的所有微博的边缘概率相乘就得到了数据集的概率:
其中m表示一条微博信息,M表示微博总数。
本发明使用CollapsedGibbsSampling的方法在给定的数据和总的似然关系 上来推导模型参数并且给隐含事件和类别赋予标签。Gibbs采样允许从最后具有 稳定分布的马尔科夫链中重复的采样,这个稳定分布就是在给定所有其他参数值 和数据情况下的em,te的后验概率。
EECB模型CollapsedGibbsSampling算法学习流程如下:
em的条件后验概率可表示为:
其中上标和下标-m表示除了第m条微博以外其他数据的数量,ne表示事件e 所包含的微博数量,M是微博的总数,ne,y是指与事件e相关的命名实体y的数量, ne,l是指与事件e相关的地点l的数量,ne,k是指与事件e相关的关键词k的数量,上 标(m)表示只与微博m相关。Y,L,V是分别指不同命名实体,地点,关键词的总 数。E是需要被设定的事件的总数。
te的条件后验概率可表示为:
其中上标和下标-e表示除了第e个事件数据以外其他事件的数量,C是指事 件类型的总数,Ye是指属于e的y′的集合,nt,y′是非地点实体语义类y′被赋给t类 型的事件的次数,Ke是指属于e的k′的集合,nt,k′是关键词k′被赋给t类型的事件 的次数,S是整个微博数据集上所有出现的非地点实体语义类的数量。
本发明实施例公开的一种面向社交媒体文本的基于EECB模型的无监督的事 件抽取和分类方法流程图见图1,主要包括如下步骤:
S1:对微博文本进行过滤,排除与事件不相关的微博。本步骤中微博的过滤 可采用基于关键词和/或基于分类器的方法。基于关键词的方法通过构建一个关 键词词典,过滤掉不包含关键词的微博。词典的构建是通过收集与微博同一时期 发布的新闻文本,并利用计算词频的方法TF-IDF(termfrequency–inverse documentfrequency)从其中选取关键词。基于分类器的方法把微博过滤看成是 一种二分类问题,给定一个微博的集合M=(m1,…,mk),分类器输出一个类别 标记C∈{event,non-event}。可使用以下方法建立特征集:(1)0-1单词特征。 一个单词的重要程度分定义为TFP/TFN,其中TFP是在事件相关微博中的单词 频率,TFN是在事件无关微博中的单词频率。我们按照重要程度分对单词进行 排序,挑选最高的n个单词建立0-1特征(出现和不出现),本发明中n被经验性 地设为100;(2)其他事件相关特征,使用二类特征包含了新闻机构名、人工搜 集的指示性词语、时间相关短语、意见表达词,金钱符号和百分符号,网站地址 等等。(3)事件元素。命名实体、地点、时间信息的出现与否同样被用为训练二 类分类器的特征。
S2:对过滤后的微博文本进行预处理,提取命名实体和候选关键词。本步骤 中预处理根据微博语言类型做不同处理。对于中文,先使用ICTCLAS进行中文 分词和词性标注,然后使用StanfordNamedEntityRecognizer进行命名实体识别, 再根据以上结果确定候选关键词,具体方法是对于命名实体识别步骤中未被识别 为非命名实体的名词、动词和形容词,将其作为候选关键词;对于英文,使用 ark-tweet-nlp-0.3.2和twitter_nlp-master进行词性标注和命名实体识别,并根据以 上结果确定候选关键词(确定方法同中文),最后使用snowball去词根。
S3:按时间标记对微博文本进行分组。对微博根据时间标记d进行分组,需 要同时考虑微博的发布时间戳和微博文本内的时间表述信息。对于正文中不包含 时间表述信息的微博,假设该微博所描述的事件发生时间为发布日期d1,d取d1。 对于包含时间表述信息的微博,根据时间推断工具推断出日期d2,若d2不同于d1, 并且d1在d2之后,则d取d2,否则d取d1。这样所有微博都被分到了不同的组中, 拥有一个时间标记d。
S4:基于EECB模型确定各组中每条微博的事件编号,此时将得到所有微博 的事件编号e1,e2,…,eM。每组微博处理的具体过程参照上文的EECB模型 CollapsedGibbsSampling算法学习流程。
S5:对各组中事件编号相同的微博的事件元素进行后处理。为所有的微博赋 予事件编号后,可以将每组中的微博按事件编号分类,事件编号相同的归为一类, 对于每一类利用如下后处理规则移除不满足可信度的事件元素:(1)仅保留出现 次数最多的时间元素和地点元素;(2)仅保留出现次数最多的前n个关键词;(3) 如果N(element)<n1,那么将此元素移除,其中N(element)表示某一元素在事 件编号为e的所有微博中出现的次数;(4)如果N(element)<m/n2,那么将此元 素移除,其中m表示事件e中的微博数目。本发明经验性地将n、n1、n2设置为5、 7、5,也可以根据实际计算情况进行调整。
S6:根据合并规则合并事件。在后处理后每组中均包含有若干以三元组 <y,l,k>表示的事件,将其与该组时间标记d结合,得到每组中以四元组 <y,d,l,k>表示的事件。集合EVENT为事件的集合,时间标记d∈{d1,d2,…,dN}, N为分组总数。合并规则如下:第一步将d1组中的四元组全加入EVENT。第二步 将d2组中的四元组并入EVENT,对于每个待加入EVENT的四元组,若EVENT中 存在四元组与当前四元组中的y,l,k元素中有两个或以上的元素相同,则将这两 个四元组合并,时间取较小的d。依次类推,将d3,…,dN依次并入EVENT。最后 的EVENT即为抽取出的事件集合event1,event2,…,eventX,X为最终抽取出的事 件数目。
S7:基于EECB模型确定合并后的每个事件的事件类型。本步骤中,首先将 每个事件的每个非地点命名实体映射到语义类y′,英文使用freebase,中文使用 CWB中文词库。然后对合并得到的event1,event2,…,eventX基于EECB模型进行 迭代学习,确定每个事件的事件类型编号,具体处理过程参照上文的EECB模型 CollapsedGibbsSampling算法学习流程。最后确定每个事件类型编号对应的语义 类名称,取该事件类型编号对应的所有事件中的所有非地点命名实体对应最多的 语义类。
本发明使用的EECB模型抽取事件的准确率达到78.01%,高于基准系统的 64.46%,分类的准确率达到38.30%,高于基准系统的29.50%。
机译: 基于句子嵌入和无监督文本摘要设备的无监督文本摘要方法使用相同
机译: 基于无监督和监督学习的图像区域分类方法
机译: 基于无监督和监督学习的图像区域分类方法