本发明涉及自然语言处理技术领域,具体是一种基于复合神经网络的景区异常事件抽取方法。
背景技术:
随着国内计算机互联网技术的普及,景区游客的日益增加,景区内部的事件监控也面临越来越大的压力。如何从获取的海量信息文本中提取出有用的异常事件并进行分类成为了一个亟待解决的问题。作为信息抽取的一环,事件抽取是信息抽取的研究热点,其研究内容是自动的从自然文本中获取特定类型的事件和元素。
从文本中抽取相应的事件通常是要识别事件触发词来实现,因此人工标记的事件触发词是时间识别的关键要素。
在目前对于异常突发事件的抽取方法中,还是经常性的使用文本框架来进行格式化抽取以及使用支持向量机svm的分类器进行文本分类,但是这类方法对非线性数据集无法达到很好的分类效果,并且过于依赖触发词,导致因候选触发词模糊时容易造成判断错误;再者频繁的事件信息并无法规范化语法,当前方法缺乏从不规范语句中进行事件抽取的研究。
技术实现要素:
本发明的目的在于克服现有技术的不足,而提供一种基于复合神经网络的景区异常事件抽取方法,该方法可以消除普通的机器学习分类及触发词依赖造成的过多错误,并处理不规范语句的异常信息。
实现本发明目的的技术方案是:
一种基于复合神经网络的景区异常事件抽取方法,包括如下步骤:
s1、对事件原始语料的原始文本进行数据预处理,对原始文本进行清洗和分句,得到事件句,然后对事件句进行分词和命名体识别,根据人工标注的异常事件信息,将事件句进行序列标注,触发词根据其类型进行标注,非触发词类别标注为无,得到事件句序列并将事件句序列转换为词向量的形式;
s2、将以词向量表示的事件句序列输入到双向长短时记忆网络,利用双向长短时记忆网络来训练得到每个候选触发词的语义特征;
s3、将以词向量表示的事件句序列传入到卷积神经网络中,利用cnn卷积神经网络训练得到候选触发词所在事件句的全局特征;
s4、根据步骤s2得到的候选触发词的语义特征和步骤s3得到的候选触发词所在事件句的全局特征,选择softmax模型设计分类器进行事件分类,找出相关异常事件的触发词,匹对相应的触发词类型,判断事件类别。
步骤s1的具体步骤为:
s1-1、先用正则表达式将事件原始语料内无关字符去除,再采用自然语言处理工具对语料的原始文本进行分句,分词和命名体识别,使语料的原始文本以分割的事件句和每句切分好的若干个词汇来显示,即事件句表达为l={x1,x2,…,xi,…,xn},其中xi为句子中第i个词,n表示事件句长度;
s1-2、根据步骤1)分词和命名体识别得到的事件句l,对事件句l进行人工标注,在标注过程中,将非触发词标记为无类型,触发词根据所属新闻事件类别进行标注,得到事件句序列;
s1-3、通过开源工具包word2vec训练文本得到词向量,采用skip-gram模型,根据训练得到的词向量,将事件句序列中每个词表述为一个200长度的向量;
s1-4、将每个事件句处理成词向量表述的序列形式,即每个候选触发词表示为一个长度为200的词向量,事件句表示为a={w1,w2,…,wi,…,wn}。
步骤s2的具体步骤为:
s2-1、将事件句a副本表示为b={w1,w2,…,wi,…,wn},其中wi为第i个候选触发词的词向量,n为句子长度;
s2-2、将事件句b的序列传入双向长短时记忆网络,获得输出结果bw={bw1,bw2,bw3,…,bwi,…,bwn},其中fwi为第i个通过长短时记忆网络的触发词提取出的语义特征;
s2-3、反转事件句a的序列得序列a'={wn,wn-1,…,wi,…,w1},将其传入双向长短时记忆网络,获得序列的反向输出结果aw={aw1,aw2,aw3,…,awi,…,awn},其中aw为候选触发词经过反向输出的长短时记忆网络提取出的语义特征;
s2-4、将双向长短时记忆网络获得的输出结果bw与aw合并,得到句子b在双向长短时记忆网络中的输出结果θ={r1,r2,r3,…,ri,…,rn},其中ri=[bwi,awi],即得到候选触发词的语义特征。
步骤s3的具体步骤为:
s3-1、s2所得的事件句序列为b={w1,w2,…,wi,…,wn},其中wi为第i个候选触发词的词向量,n为句子长度;
s3-2、将事件句b放入卷积网络中运行,其计算公式如下:
其中f为所使用的激活函数,ci为
将文本在卷积中移动,得到所有词经过卷积的特征图;
s3-3、使用随机采样池化来池化所得的特征图,从而得到候选触发词所在事件句的全局特征c。
步骤s4,具体是根据步骤s2得到的事件句b={w1,w2,…,wi,…,wn}的语义特征θ={r1,r2,r3,…,ri,…,rn}和步骤s3所得到的事件句b的全局特征c进行并行处理进行特征分类,判断出事件语句的类别,再根据已有的实体关系标记,对句子进行合并。
本发明提供的一种基于复合神经网络的景区异常事件抽取方法,该方法可以减少事件抽取对触发词的依赖,避免触发词的歧义对类别判断的影响,并可以在不规范句式中有效的提取事件。
附图说明
图1为本发明一种基于复合神经网络的景区异常事件抽取方法的流程图;
图2为基于双向长短时神经网络和卷积神经网络的景区异常事件抽取关键步骤流程图;
图3为卷积神经网络的基本结构图。
具体实施方式
下面结合附图和实施例对本发明做进一步阐述,但不是对本发明的限定。
一种基于复合神经网络的景区异常事件抽取方法,包括如下步骤:
s1、对事件原始语料的原始文本进行数据预处理,对原始文本进行清洗和分句,得到事件句,然后对事件句进行分词和命名体识别,根据人工标注的异常事件信息,将事件句进行序列标注,触发词根据其类型进行标注,非触发词类别标注为无,得到事件句序列并将事件句序列转换为词向量的形式;
s2、将以词向量表示的事件句序列输入到双向长短时记忆网络,利用双向长短时记忆网络来训练得到每个候选触发词的语义特征;
s3、将以词向量表示的事件句序列传入到卷积神经网络中,利用cnn卷积神经网络训练得到候选触发词所在事件句的全局特征;
s4、根据步骤s2得到的候选触发词的语义特征和步骤s3得到的候选触发词所在事件句的全局特征,选择softmax模型设计分类器进行事件分类,找出相关异常事件的触发词,匹对相应的触发词类型,判断事件类别。
步骤s1的具体步骤为:
s1-1、先用正则表达式将事件原始语料内无关字符去除,再采用自然语言处理工具对语料的原始文本进行分句,分词和命名体识别,使语料的原始文本以分割的事件句和每句切分好的若干个词汇来显示,即事件句表达为l={x1,x2,…,xi,…,xn},其中xi为句子中第i个词,n表示事件句长度;
s1-2、根据步骤1)分词和命名体识别得到的事件句l,对事件句l进行人工标注,在标注过程中,将非触发词标记为无类型,触发词根据所属新闻事件类别进行标注,得到事件句序列;
s1-3、通过开源工具包word2vec训练文本得到词向量,采用skip-gram模型,根据训练得到的词向量,将事件句序列中每个词表述为一个200长度的向量;
s1-4、将每个事件句处理成词向量表述的序列形式,即每个候选触发词表示为一个长度为200的词向量,事件句表示为a={w1,w2,…,wi,…,wn}。
步骤s2的具体步骤为:
s2-1、将事件句a副本表示为b={w1,w2,…,wi,…,wn},其中wi为第i个候选触发词的词向量,n为句子长度;
s2-2、将事件句b的序列传入双向长短时记忆网络,获得输出结果bw={bw1,bw2,bw3,…,bwi,…,bwn},其中fwi为第i个通过长短时记忆网络的触发词提取出的语义特征;
s2-3、反转事件句a的序列得序列a'={wn,wn-1,…,wi,…,w1},将其传入双向长短时记忆网络,获得序列的反向输出结果aw={aw1,aw2,aw3,…,awi,…,awn},其中aw为候选触发词经过反向输出的长短时记忆网络提取出的语义特征;
s2-4、将双向长短时记忆网络获得的输出结果bw与aw合并,得到句子b在双向长短时记忆网络中的输出结果θ={r1,r2,r3,…,ri,…,rn},其中ri=[bwi,awi],即得到候选触发词的语义特征。
步骤s3的具体步骤为:
s3-1、s2所得的事件句序列为b={w1,w2,…,wi,…,wn},其中wi为第i个候选触发词的词向量,n为句子长度;
s3-2、将事件句b放入卷积网络中运行,其计算公式如下:
其中f为所使用的激活函数,ci为
将文本在卷积中移动,得到所有词经过卷积的特征图;
s3-3、使用随机采样池化来池化所得的特征图,从而得到候选触发词所在事件句的全局特征c。
步骤s4,具体是根据步骤s2得到的事件句b={w1,w2,…,wi,…,wn}的语义特征θ={r1,r2,r3,…,ri,…,rn}和步骤s3所得到的事件句b的全局特征c进行并行处理进行特征分类,判断出事件语句的类别,再根据已有的实体关系标记,对句子进行合并。
实施例:
如图1所示,一种基于复合神经网络的景区异常事件抽取方法,包括文本与处理模块、神经网络训练模块、景区异常事件预测模块,其中文本与处理模块用于对事件原始语料进行数据预处理,包括对事件原始语料文本进行分句,得到事件句,然后对事件句进行分词、命名体识别根据人工标注的异常事件信息,将事件句进行序列标注,触发词根据其类型进行标注,非触发词标注为无,得到事件句序列并将事件句序列转化为词向量形式;
复合神经网络训练模块包括双向长短时记忆网络训练模块和卷积神经网络训练模块,双向长短时记忆网络训练模块用于将以词向量表示的事件句序列训练,得到每个候选触发词的语义特征;
卷积神经网络训练模块用于将以词向量表示的事件句序列训练,得到候选触发词所在事件句的全局特征;
异常事件预测模块是用于根据复合神经网络训练模块所得到的候选触发词的语义特征和候选触发词所在句子的全局特征,并利用softmax来作为分类器分类每个候选触发词,由此找出景区异常事件的触发词,比对触发词类型,判断事件的类型。
下面结合具体事例对本发明做进一步说明。
一种基于复合神经网络的景区异常事件抽取方法,本事例事件句为:“在19点30分,十字街一家酒店发生了火灾事故。”在事件抽取前的触发词提取中已知该句子中触发词为“火灾”,所属的异常事件分类为“消防安全事故”。
步骤一、对事件句进行分词和命名体识别,得到如下:
在\19点30分\十字街\一家酒店\发生\了\火灾\事故
事件触发词“火灾”被标记为属于“消防安全”分类,其余候选触发词标记为无,得到该事件句的序列l={x1,x2,…,xi,…,xn},其中xi为事件句中第i个词,n表示事件句长度。
选取合适的语料库,使用开源工具包word2vec训练词向量,选择skip-gram模型,将每个词表示为一个长度200的向量。
最终所得事件句可表示为a={w1,w2,…,wi,…,wn},其中wi为事件句中第i个词的200维向量,n为事件句长度。
步骤二、将由词向量表示的事件句a={w1,w2,…,wi,…,wn}复制为b={w1,w2,…,wi,…,wn}传入双向长短时记忆网络(bilstm)中,利用双向长短时记忆网络来训练得到的每个候选触发词的语义特征,如图2-1。
将句子b作为序列传入长短时记忆网络(lstm),得到序列的输出结果bw={bw1,bw2,bw3,…,bwi,…,bwn},其中bwi表示第i个候选触发词经过lstm提取出的语义特征,n表示事件句长度。bwi的计算过程如下:
定义xt为t时刻时的输入词向量,ht为在t时刻存储的所有信息的隐藏层状态向量,σ为sigmoid回归层,mi,mf,mc,mo为不同状态下xt输入的权重矩阵,wi,wf,wc,wo为隐藏层状态ht的圈中居住,bi,bf,bc,bo为偏置向量;
(1)在t时刻遗忘门(forgetgate)的计算公式①如下:
ft=σ(wf·[ht-1,xt]+bf)①
(2)在t时刻更新ht-1中的存储信息,计算公式如公式②③:
it=σ(wi·[ht-1,xt]+bi)②
其中公式(3)中it表示t时刻即将更新的值,
(3)在t时刻将t-1时刻存储的信息更新为t时刻的信息,计算公式如公式④:
ct=ft*ct-1+it*ct④
(4)在t时刻的输出公式如公式⑤:
ot=σ(wo·[ht-1,xt]+bo)⑤
其中ot为t时刻的输出,最终fwt=ot,表示句子中的第t个词输出为fwt。
同理可得反向输出的结果a={w1,w2,…,wi,…,wn},将双向长短时记忆网络lstm输出的bw与aw合并,得到句子l在bilstm的输出结果
θ={r1,r2,r3,…,ri,…,rn},其中ri=[bwi,awi]。
步骤三、将事件句b={w1,w2,…,wi,…,wn}传入卷积神经网络(cnn)中进行训练,获取候选触发词所在句的全局特征,如图2-2。
具体技术过程如下:
(1)对句子进行卷积,计算公式如公式⑦:
其中f为所使用的激活函数,ci为
将文本在卷积中移动,得到所有词经过卷积的特征图。
(2)使用随机采样池化来池化所得的特征图,从而得到候选触发词所在事件句的全局特征c。
根据步骤二得到的事件句b={w1,w2,…,wi,…,wn}的语义特征θ={r1,r2,r3,…,ri,…,rn}和步骤s3所得到的事件句b的全局特征c进行并行处理进行特征分类,判断出事件语句的类别。
根据步骤二得到的候选触发词的语义特征和步骤三得到的候选触发词所在事件句的全局特征,选择softmax模型设计分类器进行事件分类,找出相关异常事件的触发词,匹对相应的触发词类型,判断事件类别,再根据已有的实体关系标记,对句子进行合并。