基于层叠式神经网络的中文模糊限制信息范围检测方法与流程

文档序号:11063577阅读:来源:国知局

技术特征:

1.一种基于层叠式神经网络的中文模糊限制信息范围检测方法,其特征在于包括如下步骤:

—对待分析实验语料中含有模糊限制语的句子,进行分词处理;

—使用句法解析器对分词处理后的句子进行句法解析,得到所述句子的短语结构树;通过基于短语的候选样例筛选策略找到候选短语,进而确定候选短语的边界词,包括左边界词和右边界词;

—使用抽取窗口分别抽取所述的左、右边界词和模糊限制语的上下文信息;

—将左、右边界词和模糊限制语的上下文信息作为候选样例词序列并映射到实数向量空间,转换为词向量形式;输入基于长短时记忆网络LSTM和卷积神经网络CNN相结合的层叠式学习模型LSTM-CNN进行学习,得到边界分类器;

—使用所述的边界分类器对测试数据进行分类,得到左、右边界的分类结果,完成中文模糊限制信息范围的检测。

2.根据权利要求1所述的基于层叠式神经网络的中文模糊限制信息范围检测方法,其特征还在于所述的学习至少包括如下步骤:

—通过长短时记忆网络LSTM获得每个时间步的隐层表示;

—通过卷积神经网络CNN对所述的各个时间步的隐层表示进行卷积和池化,捕获上下文的有效信息,得到所述的边界分类器。

3.根据权利要求1所述的基于层叠式神经网络的中文模糊限制信息范围检测方法,其特征还在于所述的候选样例筛选策略为:

除了模糊限制语的祖先节点,将短语树上所有父亲节点包含模糊限制语的短语和模糊限制语作为模糊限制信息的边界候选短语;

所述的在短语结构树中,祖先短语为当前模糊限制语节点的父亲节点、祖父节及其它上一层级的节点,这些节点均带有短语类型信息,称为祖先短语。

4.根据权利要求3所述的基于层叠式神经网络的中文模糊限制信息范围检测方法,其特征还在于选定左边界以这个短语最左边的词作为左边界候选词,右边界以这个短语最右边的词作为右边界候选词。

5.根据权利要求1所述的基于层叠式神经网络的中文模糊限制信息范围检测方法,其特征还在于:

将左边界上下文信息和模糊限制语上下文信息组合成为左边界候候选样例词序列,将右边界上下文信息和模糊限制语上下文信息组合成为右边界候候选样例词序列。

6.根据权利要求1所述的基于层叠式神经网络的中文模糊限制信息范围检测方法,其特征还在于:还具有后处理步骤确保每个句子只有一个左边界和一个右边界,后处理规则如下:

—如果分类器识别出一个F-scope,一个L-scope,则范围开始于标注为F-scope的词,结束于标注为L-scope的词;

—如果分类器没有识别出F-scope,识别出一个L-scope,则模糊限制信息范围开始于模糊限制语,结束于标注为L-scope的词;

—如果分类器识别出一个F-scope,没有识别出L-scope,则模糊限制信息范围开始于标注为F-scope的词,结束于句子的最后一个词(除了句尾标点);

—如果分类器识别出一个F-scope,多个L-scope,则模糊限制信息范围开始于标注为F-scope的词,结束于最后一个标注为L-scope的词;

—如果分类器识别出多个F-scope,一个L-scope,则模糊限制信息范围开始于第一个标注为F-scope的词,结束于标注为L-scope的词。

7.根据权利要求1所述的基于层叠式神经网络的中文模糊限制信息范围检测方法,其特征还在于所述的层叠式学习模型LSTM-CNN包括:

向量表示层:通过预训练的词向量矩阵/字典,将所述的候选样例词序列中的每一个词映射成为一个d维的向量形成词向量序列x={x1,x2,...,xi,...,xn},其中xi表示词序列中的第i个词wi映射而成的d维的词向量

LSTM层:该层即长短时记忆网络层,该层通过三个门来控制信息的保存、记忆和更新,分别为忘记门(forget gate),输入门(input gate)和输出门(output gate);

设W是转移矩阵,b代表一个偏置,x为词向量序列,h为LSTM单元的隐层表示,c为LSTM记忆单元的值,σ是sigmoid激活函数。LSTM单元的更新和记忆过程如下:

首先,决定从细胞状态中丢弃何种信息,由所述的忘记门完成:

ft=σ(Wxf·xt+Whf·ht-1+bf)

然后确定何种新信息保存到细胞状态中,通过所述的输入门完成:

it=σ(Wxi·xt+Whi·ht-1+bi)

<mrow> <msub> <mover> <mi>c</mi> <mo>~</mo> </mover> <mi>t</mi> </msub> <mo>=</mo> <mi>tanh</mi> <mrow> <mo>(</mo> <msub> <mi>W</mi> <mrow> <mi>x</mi> <mi>c</mi> </mrow> </msub> <mo>&CenterDot;</mo> <msub> <mi>x</mi> <mi>t</mi> </msub> <mo>+</mo> <msub> <mi>W</mi> <mrow> <mi>h</mi> <mi>c</mi> </mrow> </msub> <mo>&CenterDot;</mo> <msub> <mi>h</mi> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>+</mo> <msub> <mi>b</mi> <mi>c</mi> </msub> <mo>)</mo> </mrow> </mrow>

之后通过所述的忘记门和输入门得到的信息来产生对细胞状态的更新:

<mrow> <msub> <mi>c</mi> <mi>t</mi> </msub> <mo>=</mo> <msub> <mi>f</mi> <mi>t</mi> </msub> <mo>&CenterDot;</mo> <msub> <mi>c</mi> <mrow> <mi>t</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> <mo>+</mo> <msub> <mi>i</mi> <mi>t</mi> </msub> <mo>&CenterDot;</mo> <msub> <mover> <mi>c</mi> <mo>~</mo> </mover> <mi>t</mi> </msub> </mrow>

最后,、根据当前的细胞状态来获得每个时间步的隐层表示:

ot=σ(Wxo·xt+Who·ht-1+bo)

ht=ot·tanh(ct)

基于LSTM模型得到的各个时间步的隐层表示,将作为下面卷积层的输入,用于进行卷积操作。

卷积层

该层对于某个时刻的窗口,通过神经网络的非线性变换,将这个窗口内的输入值转换为某个特征值ci,随着窗口不断往后移动,这个filter对应的特征值ci不断产生,最终得到这个filter的特征向量(feature map);一个特征值ci由一个窗口内的多个时间步的隐层表示hi:i+j-1产生,其卷积的公式如下所示:

ci=f(w·xi:i+j-1+b)

w是卷积的矩阵,b是代表一个偏置,j是窗口大小;f是一个非线性的激活函数,双曲正切函数;filter被作用于移动窗口内的LSTM隐层表示{h1:j,h2:j+1,...,hn-j+1:n},产生一个特征向量(feature map):

c=[c1,c2,...,cn-j+1]

其中

池化层

针对每种不同的窗口,我们将得到的输出特征向量feature map c输入到最大池化层(max pooling层)进行降维操作。获取其中的最大值作为特征,得到每种窗口的最大池化结果其中m代表filter的个数。对于某个filter抽取到的若干特征值,只取其中最大的那个值作为保留值,其它特征值全部抛弃,通过消除非最大值来减少下一层的计算量;

语义向量表示层

将上一层3种不同窗口的最大池化结果进行拼接,得到深层语义向量表示用于Softmax层进行分类;

Softmax层

将语义向量表示作为Softmax层的输入进行分类,得到最终的边界分类结果。

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