1.本发明涉及字词特征提取、文本纠错与文本分类领域,特别地,涉及针对含错中文文本进行纠错并分类的技术,是一种新的中文文本分类设备。
背景技术:
2.人工智能技术日益兴起,自然语言处理技术作为人工智能领域的一个重要技术也得到了蓬勃发展。自然语言处理是指使用计算机对自然语言的形态、声音、语义等信息进行处理,从而实现人与计算机之间能够用自然语言进行通信以完成特定任务的目标。自然语言处理一个很重要的应用方面是对于文本进行分类。在文本分类任务中,要求计算机能够通过自然语言处理技术对文本中包含的关键意图进行识别,从而将文本分类到使用者预定义的特定类型中。
3.早期的文本分类任务主要依靠于统计机器学习方法,模型对于分类任务完成的优劣很大程度上取决于特征工程的质量,而特征工程又比较复杂,依赖于各种自然语言处理工具,存在着误差传播问题。而随着深度学习的研究不断取得突破性进展,模型已经逐渐能通过算法来代替复杂特征工程,通过训练自身参数自动提取文本中的特征,完成后续文本分类任务。
4.目前对于自然语言处理中的文本分类任务,业界专家学者已经研究出许多深度学习模型,在一些文本分类任务上取得了不错的效果。但是,对于文本分类任务的研究,由于国外起步比我们国内早得多,长期以来都是国外占主导地位,且主要是以英语为母语的国家,所以文本分类任务的对象基本都是英文文本。但是,不同语种之间的差别是非常大的,中文和英文之间的字形、发音、语法、语义和标点符号等都存在着很大差异,还有比如在分词的时候,英文文本可以直接基于空格符号进行分词,但是中文则显然不行。鉴于以上种种中英文之间的巨大差异,现有的针对英文文本的分类模型,往往不能够直接迁移到中文文本上使用。
5.此外,随着其他人工智能技术比如计算机视觉、语音识别技术的发展,如今文本不仅是通过原始文本进行获取,还可能是由文字识别技术、语音识别技术分别从图片、音频等渠道转换而来。而在文字识别和语音识别的过程中,计算机不可能做到完美的将每个字或词都识别正确,相近的字形以及相近甚至相同的发音都可能导致计算机识别错误,而这些问题在中文识别中又尤为显著。现有的中文文本纠错模型都忽略了中文特有的两个重要方面:字形和拼音。这两个方面为中文语言理解携带了重要的句法和语义信息,是判别中文文本是否存在错误的重要特征,而且这种重要的特征信息是仅通过上下文语义无法判别的。但现有中文文本纠错相关发明所使用的模型均只考虑了上下文语义特征,使得纠错准确率不高。还有一点,很多模型所得到的语义特征向量不具有可解释性,模型的训练过程中没有很好的设计优化目标,使得得到的各字词的特征向量之间的相关性不高,影响了模型最终的表现。
6.如今,全世界范围内的汉语使用者已经超过了17亿人,是世界上使用人数最多的
语言,因此将自然语言处理技术应用到汉语上是非常重要且势在必行的。文本分类任务作为自然语言处理中应用最为广泛,同时也至关重要的一个任务,迫切需要在中文文本语料上得到进一步发展。可是对于在深度学习模型中自动的利用中文特征,特别是结合中文字形与发音先对文本进行纠错,再完成分类,目前的研究和发明还很少,是中文文本分类任务的难点和热点。因此对于中文文本进行自动纠错和分类,具有重要的学术研究价值和工程实践价值。
技术实现要素:
7.为了克服目前设备对于中文文本自动纠错能力差以及对于中文文本分类研究的不足和巨大需求,本发明的目的在于提供一种能够融合中文的形态、发音和语义信息来自动提取中文文本中丰富的特征以完成中文文本的纠错以及分类任务的设备。
8.本发明解决其技术问题所采用的技术方案是:
9.一种含错中文文本纠错识别分类设备,包括中文文本数据库、中文特征提取模块、文本纠错模块、文本事件要素提取及分类模块。该设备对中文文本进行自动纠错和分类的过程按如下步骤进行:
10.1)中文文本数据库从出版社、报社、新闻网站以及科研机构等途径合法获取大量的不含错中文文本,存储到数据库中。在此模块中,还能够对于搜集到的大量文本进行分词,得到中文字词集合w:
11.w={w1,w2,...,wn}
12.其中wi,i=1,2,...,n代表集合中分好的字或词,n为总字词数量。
13.2)中文特征提取模块通过字形特征提取、发音特征提取、语义特征提取以及嵌入向量拼接四个步骤实现中文字词的特征提取,具体过程如下:
14.2.1)对于通过文字识别技术获取的文本,文字识别软件在识别文字时很容易被形态相近的字词所误导,因此在纠错时需要将中文的字形特征考虑在内。通过中文字形特征字典,对于中文字词集合w中的各个字词构建形态嵌入向量集合x:
15.x={x1,x2,...,xn}
16.其中,为中文字词集合中各字词wi,i=1,2,...,n对应的维度为d
x
的形态嵌入向量。
17.中文特征提取模块是根据余弦相似度来自动构建每个字词的形态嵌入向量的,两个中文字或词之间的形态越相近,其嵌入向量之间的余弦相似度就越大。对于两个形态嵌入向量它们之间的余弦相似度计算公式如下:
[0018][0019]
2.2)对于通过语音识别软件得到的文本,语音识别软件在进行语音转换文字操作时很容易被发音相近甚至相同的字词所误导,所以纠错时也需要将中文的发音特征考虑在内。通过中文发音特征字典,对于中文字词集合w中的各个字词构建发音嵌入向量集合y:
[0020]
y={y1,y2,...,yn}
[0021]
其中,为中文字词集合中各字词wi,i=1,2,...,n对应的维度为dy的发音嵌入向量。
[0022]
同步骤2.1),模块是根据余弦相似度来自动构建每个字词的发音嵌入向量的,两个中文字或词之间的发音越相近,其嵌入向量之间的余弦相似度就越大。注意,发音相同的字词的发音嵌入向量是一样的,但是其字形嵌入向量和下一步骤中得到的语义嵌入向量是不同的,所以经过向量拼接后的高维嵌入向量仍可以区分各个发音相同的字词。
[0023]
2.3)一个文本中的字或词能够从其相关上下文中获得语义信息,同时也能为其上下文提供语义信息。语义信息在文本分类任务中非常重要,因此对于中文字词要构建语义嵌入向量。中文特征提取模块在获取语义嵌入向量时,首先会给定一个窗口大小,然后对于一个字词wi,设其为前景字词时向量表示为设其为背景字词时向量表示为dz为语义嵌入向量的维度,背景字词指包含在前景字词窗口内的字词。设前景字词为wi,背景字词为wj,j=1,2,...,n,则给定前景字词生成背景字词的条件概率可以通过对向量内积做softmax运算得到:
[0024][0025]
其中p(
·
)代表计算概率,exp(
·
)指以自然常数e为底的指数函数,代表向量的转置。对于一个字词wi,可能在文本数据库中出现很多次,所以将每一次以其作为前景词的所有背景词进行统计,对于重复的背景词也按照重复次数进行保留,记为重数集合c。
[0026]
2.4)将字词wi,i=1,2,...,n的重数集合ci中元素j的重数记为c
ij
,c
ij
表示数据库中所有以wi为前景字词的窗口中背景字词wj的个数。然后中文特征提取模块通过最大似然估计来获得每个字词对应的前景向量表示和背景向量表示,具体来说,模块在训练过程中通过最小化损失函数j来获得每个字词wi的最佳前景和背景向量表示。
[0027]
可选地,作为优选的一种方案,中文特征提取模块在训练时可通过最小化如下损失函数j来提取中文字词前景和背景向量表示:
[0028][0029]
在训练结束后,模块取字词wi的前景向量表示作为该字词最终的语义嵌入向量zi。
[0030]
2.5)在中文特征提取模块中,最后一步操作是将步骤2.1)-2.4)所得到的各个字词的形态嵌入向量xi、发音嵌入向量yi和语义嵌入向量zi进行拼接:
[0031]ei
=[x
i y
i zi]
[0032]
从而得到了一个能够唯一表示字词wi的高维嵌入向量[
·
]代表向量拼接。
[0033]
3)文本纠错模块,通过文本分词、文本替代组合生成、文本条件概率计算、文本组合概率排序四个步骤实现文本纠错,并得到经过纠错后的正确文本,具体过程如下:
[0034]
3.1)在文本分词步骤中,根据由中文文本数据库得到的中文字词集合w对文本中的句子进行分词,将一个完整的中文句子拆分成组成这个句子的各个字词。
[0035]
3.2)在文本替代组合生成步骤中,对于步骤3.1)中分好的各个字词,根据它们的高维嵌入向量,分别生成与它们各自的高维嵌入向量之间的余弦相似度最高的前k个替代字词,得到可以对原始句子进行替代的不同组合。
[0036]
3.3)在文本条件概率计算步骤中,文本纠错模块计算步骤3.2)中得到的不同组合的条件概率。设一个句子s为:
[0037]
s=w1w2...wn[0038]
则得到该句子的条件概率为:
[0039]
p(s)=p(w1)p(w2|w1)
…
p(wn|w
n-1
)
[0040]
=p(e1)p(e2|e1)
…
p(en|e
n-1
)
[0041]
3.4)在最后的文本组合概率排序步骤中,文本纠错模块选取经过步骤3.3)计算后条件概率最高的字词组合作为经过纠错后的正确句子s。
[0042]
在文本事件要素提取及分类模块中,包含训练阶段和运营阶段这两个阶段,需要完成训练阶段后才能进入运营阶段;而这两个阶段又各自分为事件特征提取和事件类型识别两个步骤,执行过程如下:
[0043]
4)在文本事件要素提取及分类模块的训练阶段中,需要对文中的事件特征进行提取和对文本进行分类:
[0044]
4.1)对中文文本数据库中的不含错中文文本进行标注,共需要标注四个方面的内容:事件激活词、事件要素词、事件要素关系、事件类型。事件激活词指能够导致一个事件发生的词语;事件要素词指能够描述一个事件内容的关键词,比如时间、地点、人物;事件要素关系指能够描述各个要素之间的关系的说明,比如要素词“敌方舰船”和“导弹”之间是“打击目标”的关系;事件类型是对于一个文本所描述的内容的定义,比如该文本属于“军事行动”类别。
[0045]
4.2)将中文文本数据库中待使用的文本标注完后,开始进行事件特征提取。文本要素提取及分类模块是通过一个bigru+crf的深度学习模型来提取事件特征的。将经过步骤4.1)标注后的文本经过分词后转化为字词高维嵌入向量表示。设一个文本的长度为t,该文本转化为高维嵌入向量表示后变为一个的二维张量,将该张量送入bigru+crf模型后可以提取出对于该文本中被标注的事件的特征其中h是bigru隐藏层的维数,f同时也作为该文本的特征。
[0046]
4.3)将提取的文本特征f送入一个最后一层为softmax层的分类神经网络后可得到一个输出向量其中l为任务定义的文本类别数。将分类神经网络得到的输出向量o与转换为独热向量表示的事件类型标注进行比较,通过计算损失函数l得到模块的预测损失。
[0047]
可选地,作为优选的一种方案,文本事件要素提取及分类模块的训练过程中所用损失函数l可用如下交叉熵损失函数计算分类损失:
[0048][0049]
其中n为标注训练文本数,l为任务要求识别的文本类别数,yij为第i个文本对应的实际文本类别的独热表示的第j个值,为神经网络输出,表示对第i个文本类别预测表
示的第j个值;
[0050]
4.4)将损失l反向传回模块中,通过梯度下降算法更新模块内的参数。
[0051]
重复步骤4.2)-4.4),进行下一轮输出的预测并计算预测损失。通过重复的使用标注文本进行训练,使得文本要素提取及分类模块能够不断学习如何识别一个文本中的事件激活词、事件要素词、事件要素关系,从而完成文本分类任务。
[0052]
5)在文本事件要素提取及分类模块的运营阶段中,文本事件要素提取及分类模块内的各模型已经在步骤4)中被训练完成,可以接受无标注文本作为输入,自动完成无标注文本的分类任务。在运营阶段中,此模块的输入是经过文本纠错模块进行纠错后的无标注文本,模块执行过程如下:
[0053]
5.1)自动从输入的无标注文本中提取出事件激活词、事件要素词和事件要素关系。
[0054]
5.2)将提取出的事件信息经过训练好的bigru+crf模型编码为事件特征。
[0055]
5.3)利用前一步得到的事件特征经过训练好的最后一层为softmax层的分类神经网络得到文本分类结果。
[0056]
5.4)将得到的事件激活词、事件要素词、事件要素关系以及分类结果显示在设备的显示屏上。
[0057]
本发明的技术构思为:中文文本数据库搜集大量中文文本后存储在计算机数据库中,然后中文特征提取模块负责对数据库中的文字进行编码,对于每个字、词都转化为一个高维嵌入向量。当需要被分类的含错中文文本送进系统后,文本纠错模块能够根据中文特征提取模块中得到的各个字词的高维嵌入向量通过计算最大条件概率组合自动对含错文本进行字词纠错,然后文本事件要素提取及分类模块对文本中的各事件要素进行提取,将提取后的结果转化为事件特征,最后通过该事件特征对于输入到系统的含错中文文本进行分类。
[0058]
本发明的有益效果主要表现在:1、同时融合了中文的形态、发音和语义编码信息,尽可能多的保留了中文中所能利用的特征,使得本发明非常适用于处理中文文本;2、使用余弦相似度作为构建形态和发音嵌入向量的度量标准,使得训练得到的各字词的特征向量之间的相关性有了很强的可解释性,同时这种方法还便于计算,既提升了纠错的准确性,又有很快的运行速度;3、对于存在错别字或者语义不通顺的中文文本能够自动进行文本纠错,转化为符合常识的中文文本,减小了数据的偏差,增强了设备的抗干扰能力;4、能够自动提取文本中的事件要素,在完成分类任务的同时还能显示文本中的关键信息。
附图说明
[0059]
图1是本发明所提出的中文文本纠错识别分类设备的功能模块图;
[0060]
图2是本发明所提出的中文特征提取模块特征提取操作示意图;
[0061]
图3是bigru+crf深度学习模型提取事件特征操作的示意图;
[0062]
图4是分类神经网络的示意图。
具体实施方式
[0063]
下面根据附图具体说明本发明。
[0064]
图1所示为本发明所提出的中文文本纠错识别分类设备的功能模块图,包括:中文文本数据库1、中文特征提取模块2、文本纠错模块3、文本事件要素提取及分类模块4。所述设备采用以下过程进行含错中文文本的纠错与分类:
[0065]
1)中文文本数据库从出版社、报社、新闻网站以及科研机构等途径合法获取大量的不含错中文文本,存储到数据库中。在此模块中,还能够对于搜集到的大量文本进行分词,得到中文字词集合w:
[0066]
w={w1,w2,...,wn}
[0067]
其中wi,i=1,2,...,n代表集合中分好的字或词,n为总字词数量。
[0068]
2)中文特征提取模块通过如图2所示的字形特征提取、发音特征提取、语义特征提取以及嵌入向量拼接四个步骤实现中文字词的特征提取,具体过程如下:
[0069]
2.1)对于通过文字识别技术获取的文本,文字识别软件在识别文字时很容易被形态相近的字词所误导,比如“千”字和“干”字,经常被软件误分类,因此在纠错时需要将中文的字形特征考虑在内。一对中文字词可以通过已有的中文字形特征字典软件包来判别其相似度。对于中文字词集合w中的各个字词构建形态嵌入向量集合x:
[0070]
x={x1,x2,...,xn}
[0071]
其中,为中文字词集合中各字词wi,i=1,2,...,n对应的维度为d
x
的形态嵌入向量,本例中,取d
x
=100。
[0072]
中文特征提取模块是根据余弦相似度来自动构建每个字词的形态嵌入向量的,两个中文字或词之间的形态越相近,其嵌入向量之间的余弦相似度就越大。比如“千”字和“干”字所分别对应的形态嵌入向量之间的余弦相似度就比较大,接近于1;而“千”字和“亿”字所分别对应的形态嵌入向量之间的余弦相似度就较小。对于两个形态嵌入向量它们之间的余弦相似度计算公式如下:
[0073][0074]
2.2)对于通过语音识别软件得到的文本,语音识别软件在进行语音转换文字操作时很容易被发音相近甚至相同的字词所误导,比如“知识”和“指示”,所以纠错时也需要将中文的发音特征考虑在内。通过中文发音特征字典,对于中文字词集合w中的各个字词构建发音嵌入向量集合y:
[0075]
y={y1,y2,...,yn}
[0076]
其中,为中文字词集合中各字词wi,i=1,2,...,n对应的维度为dy的发音嵌入向量,在本例中取dy=100。
[0077]
同步骤2.1),模块是根据余弦相似度来自动构建每个字词的发音嵌入向量的,两个中文字或词之间的发音越相近,其嵌入向量之间的余弦相似度就越大,比如“知识”和“指示”所分别对应的发音嵌入向量之间的余弦相似度就大,接近于1。而发音相同的字词的发音嵌入向量是一样的,比如“只是”和“指示”的发音嵌入向量是一模一样的,但是它们的字形嵌入向量和下一步骤中得到的语义嵌入向量是不同的,所以经过向量拼接后的高维嵌入向量仍可以区分各个发音相同的字词。
[0078]
2.3)一个文本中的字或词能够从其相关上下文中获得语义信息,同时也能为其上
下文提供语义信息。语义信息在文本分类任务中非常重要,因此对于中文字词要构建语义嵌入向量。中文特征提取模块在获取语义嵌入向量时,首先会给定一个窗口大小,然后对于一个字词wi,i=1,2,...,n,设其为前景字词时向量表示为设其为背景字词时向量表示为dz为语义嵌入向量的维度,在本例中取dz=300。背景字词指包含在前景字词窗口内的字词,比如设窗口大小为2,则对于已经分好词的“含错/中文/文本/分类/设备”这句话来说,若取“文本”为前景词,则在其左边大小为2的窗口内,背景词为“含错”和“中文”,在其右边大小为2的窗口内,背景词为“分类”和“设备”。如果窗口内的字词数不足,则只取窗口内能取到的字词。接下来设前景字词为wi,其一个背景字词为wj,j=1,2,...,n,则给定前景字词生成该背景字词的条件概率可以通过对向量内积做softmax运算得到:
[0079][0080]
其中p(
·
)代表计算概率,exp(
·
)指以自然常数e为底的指数函数,代表向量的转置。对于一个字词wi,可能在文本数据库中出现很多次,所以将每一次以其作为前景词的所有背景词进行统计,对于重复的背景词也按照重复次数进行保留,记为重数集合c。举一个例子来说明:假设词wi在数据集中出现过两次,在数据集的文本中以这两个wi作为前景词的大小为2的窗口内包含的背景词分别为{wa,wb,wc,wb}和{wd,wb,wa,we},则wi的重数集合为:
[0081]ci
={wa,wa,wb,wb,wb,wc,wd,we}
[0082]
其中wa的重数为2,以此类推。将字词wi的重数集合ci中元素j的重数记为c
ij
,c
ij
表示数据库中所有以wi为前景字词的窗口中背景字词wj的个数。
[0083]
2.4)然后中文特征提取模块通过最大似然估计来获得每个字词对应的前景向量表示和背景向量表示,具体来说,模块在训练过程中是可选地通过最小化如下损失函数j来获得每个字词wi的最佳前景和背景向量表示:
[0084][0085]
在训练结束后,模块取字词wi的前景向量表示作为该字词最终的语义嵌入向量zi,这里dz=300。
[0086]
2.5)在中文特征提取模块中,最后一步操作是将步骤2.1)-2.4)所得到的各个字词的形态嵌入向量xi、发音嵌入向量yi和语义嵌入向量zi进行拼接:
[0087]ei
=[x
i y
i zi]
[0088]
其中[
·
]代表向量拼接操作。由于各嵌入向量都是一维的,所以无需任何转换就可以直接拼接,从而得到了一个能够唯一表示字词wi的高维嵌入向量即
[0089]
3)在文本纠错模块中,通过文本分词、文本替代组合生成、文本条件概率计算、文本组合概率排序四个步骤实现文本纠错,并得到经过纠错后的正确文本。在此对于文本纠错模块各部分操作举一个例子进行说明,为了说明的便捷性,取一个含错短句s=“锯子有歧义”(正确句子应为“句子有歧义”)。
[0090]
3.1)在文本分词步骤中,根据由中文文本数据库得到的中文字词集合w对文本中的句子进行分词,将一个完整的中文句子拆分成组成这个句子的各个字词,比如将例子中的句子经过分词后得到s=“锯子/有/歧义”=w1w2w3。
[0091]
3.2)然后对于步骤3.1)中分好的各字词,根据它们的高维嵌入向量,分别生成与它们各自的高维嵌入向量之间的余弦相似度最高的前k个替代字词,这里取k=1,得到w'1=“句子”,w'2=“友”,w'3=“奇异”。
[0092]
3.3)接下来对于得到的不同字词组合,计算各自的条件概率,比如对于“句子/有/奇异”这个组合,条件概率为:
[0093][0094]
其中e为各字词对应的500维高维嵌入特征。
[0095]
3.4)在最后的文本组合概率排序步骤中,文本纠错模块选取经过步骤3.3)计算后条件概率最大的字词组合作为经过纠错后的正确句子s。在本例中,对于“句子/有/歧义”这个组合,计算后的条件概率理应是所有组合中最大的,所以在最后的文本组合概率排序步骤中,文本纠错模块选择s=“句子有歧义”作为最终输出的句子,至此,文本纠错模块完成文本纠错任务。
[0096]
在文本事件要素提取及分类模块中,包含训练阶段和运营阶段这两个阶段,需要完成训练阶段后才能进入运营阶段;而这两个阶段又各自分为事件特征提取和事件类型识别两个步骤,执行过程如下:
[0097]
4)在文本事件要素提取及分类模块的训练阶段中,需要对文中的事件特征进行提取和对文本进行分类:
[0098]
4.1)对中文文本数据库中的不含错中文文本进行标注,共需要标注四个方面的内容:事件激活词、事件要素词、事件要素关系、事件类型。事件激活词指能够导致一个事件发生的词语;事件要素词指能够描述一个事件内容的关键词,比如时间、地点、人物;事件要素关系指能够描述各个要素之间的关系的说明,事件类型是对于一个文本所描述的内容的定义。比如对于文本:“a国计划于九月对b国进行战略打击。”则在该文本中,事件激活词为“战略打击”,事件要素词为“a国”、“九月”和“b国”,事件要素关系有“侵略”,事件类型为“军事行动”。
[0099]
4.2)将中文文本数据库中待使用的文本标注完后,开始进行事件特征提取。文本要素提取及分类模块是通过一个如图3所示的bigru+crf的深度学习模型来提取事件特征的。将经过步骤4.1)标注后的文本经过分词后转化为字词高维嵌入向量表示,设一个文本的长度为t,该文本转化为高维嵌入向量表示后变为一个的二维张量,如图3的功能块5所示,其中e表示各字词的高维嵌入向量。将张量e送入如图3的功能块6和功能块7所示的bigru+crf组合层后可以提取出对于该文本中被标注的事件的特征其中h是bigru隐藏层的维数,f同时也作为该文本的特征,本例中h=200。
[0100]
4.3)接下来将提取的文本特征f送入一个分类神经网络,本例中分类神经网络的主体结构如图4的功能块9所示,由一个输入层、两个隐藏层以及一个softmax层组成。文本
特征经过分类神经网络后可得到一个输出向量其中l为任务定义的文本类别数,本例中取l=10。将分类神经网络得到的输出向量o与转换为独热向量表示的事件类型标注进行比较,模块在训练过程中可选地通过计算如下交叉熵损失函数l得到模块的预测损失。
[0101][0102]
其中n为标注训练文本数,l为任务要求识别的文本类别数,yij为第i个文本对应的实际文本类别的独热表示的第j个值,为神经网络输出,表示对第i个文本类别预测表示的第j个值;
[0103]
4.4)然后将计算得到的损失l反向传回模块中,通过梯度下降算法更新模块内的参数,然后再重复步骤4.2)-4.4),进行下一轮输出的预测并计算预测损失。通过重复的使用标注文本进行训练,使得文本要素提取及分类模块能够不断学习如何识别一个文本中的事件激活词、事件要素词、事件要素关系,从而完成文本分类任务。
[0104]
5)在文本事件要素提取及分类模块的运营阶段中,文本事件要素提取及分类模块内的各模型已经在步骤4)中被训练完成,可以接受无标注文本作为输入,自动完成无标注文本的分类任务。在运营阶段中,此模块的输入是经过文本纠错模块进行纠错后的无标注文本,模块执行过程如下:
[0105]
5.1)自动从输入的无标注文本中提取出事件激活词、事件要素词和事件要素关系。
[0106]
5.2)将提取出的事件信息经过如图3所示训练好的bigru+crf模型编码为事件特征。
[0107]
5.3)利用前一步得到的事件特征经过如图4所示训练好的分类神经网络得到文本分类结果。
[0108]
5.4)将得到的事件激活词、事件要素词、事件要素关系以及分类结果显示在设备的显示屏上,给出对于事件关键信息的描述以及分类结果。
技术特征:
1.一种含错中文文本纠错识别分类设备,所述设备包括中文文本数据库、中文特征提取模块、文本纠错模块、文本事件要素提取及分类模块。其特征在于,中文文本数据库搜集大量中文文本并存储在计算机的数据库中,中文特征提取模块对中文文本数据库模块中的文字进行编码,将每个字、词都转化为一个高维嵌入向量。当含错中文文本送进设备后,文本纠错模块根据中文特征提取模块中得到的各个字词的高维嵌入向量自动对含错文本进行字词纠错,最后文本事件要素提取及分类模块对文本中的各事件要素进行提取,将提取后的结果转化为事件特征,最后通过该事件特征对于输入到系统的含错中文文本进行分类。2.如权利要求1所述的一种含错中文文本纠错识别分类设备,其特征在于,所述中文文本数据库负责存储大量的不含错中文文本。对不含错中文文本进行分词,得到中文字词集合w:w={w1,w2,...,w
n
}其中,w
i
,i=1,2,...,n代表集合中分好的字或词,n为总字词数量。3.如权利要求1所述的一种含错中文文本纠错识别分类设备,其特征在于,所述中文特征提取模块通过字形特征提取、发音特征提取、语义特征提取以及嵌入向量拼接四个步骤实现中文字词的特征提取,具体过程如下:1)对于通过文字识别技术获取的文本,通过中文字形特征字典,对于中文字词集合w中的各个字词构建形态嵌入向量集合x:x={x1,x2,...,x
n
}其中,为中文字词集合中各字词w
i
,i=1,2,...,n对应的维度为d
x
的形态嵌入向量。中文特征提取模块在训练过程中根据余弦相似度来自动构建每个字词的形态嵌入向量。以中文字形特征字典为评判标准,由字典判断出的两个中文字或词之间的形态越相近,其嵌入向量之间的余弦相似度就越大。对于两个形态嵌入向量它们之间的余弦相似度计算公式如下:2)对于通过语音识别软件得到的文本,通过中文发音特征字典,对于中文字词集合w中的各个字词构建发音嵌入向量集合y:y={y1,y2,...,y
n
}其中,为中文字词集合中各字词w
i
,i=1,2,...,n对应的维度为d
y
的发音嵌入向量。3)一个文本中的字或词能够从其相关上下文中获得语义信息,同时也能为其上下文提供语义信息。中文特征提取模块在获取语义嵌入向量时,首先会给定一个窗口大小,然后对于一个字词w
i
,i=1,2,...,n,设将其作为前景字词时的向量表示为设其将作为背景字词时向量表示为d
z
为语义嵌入向量的维度,背景字词指包含在前景字词窗口内的字词。设前景字词为w
i
,背景字词为w
j
,j=1,2,...,n,则给定前景字词生成背景字词的
条件概率可以通过对向量内积做softmax运算得到,即:其中p(
·
)代表计算概率,exp(
·
)指以自然常数e为底的指数函数,代表向量的转置。对于一个字词w
i
,可能在文本数据库中出现很多次,所以将每一次以其作为前景词的所有背景词进行统计,对于重复的背景词也按照重复次数进行保留,记为重数集合c。将字词w
i
的重数集合c
i
中元素j的重数记为c
ij
,c
ij
表示数据库中所有以w
i
为前景字词的窗口中背景字词w
j
的个数。然后中文特征提取模块通过最大似然估计来获得每个字词对应的前景向量表示和背景向量表示,具体来说,模块在训练过程中通过最小化以下损失函数j来获得每个字词w
i
的最佳前景和背景向量表示:在训练结束后,模块取字词w
i
的前景向量表示作为该字词最终的语义嵌入向量z
i
。4)在中文特征提取模块中,最后一步操作是步骤1)-3)所得到的各个字词的形态嵌入向量x
i
、发音嵌入向量y
i
和语义嵌入向量z
i
进行拼接:e
i
=[x
i y
i z
i
]从而得到了一个能够唯一表示字词w
i
,i=1,2,...,n的高维嵌入向量[
·
]代表向量拼接操作。4.如权利要求1所述的一种含错中文文本纠错识别分类设备,其特征在于,所述文本纠错模块,通过文本分词、文本替代组合生成、文本条件概率计算、文本组合概率排序四个步骤实现文本纠错,并得到经过纠错后的正确文本,具体过程如下:1)文本分词:由中文文本数据库得到的中文字词集合w对文本中的句子进行分词,将一个完整的中文句子拆分成组成这个句子的各个字词。2)文本替代组合生成:对于步骤1)中分好的各个字词,根据它们的高维嵌入向量,分别生成与它们各自的高维嵌入向量之间的余弦相似度最高的前k个替代字词,得到可以对原始句子进行替代的不同组合。3)文本条件概率计算:计算步骤2)中得到的不同组合的条件概率。设一个句子s为:s=w1w2...w
n
其中w
i
,i=1,2,...,n代表集合中分好的字或词,n为总字词数量。则得到该句子的条件概率为:p(s)=p(w1)p(w2|w1)
…
p(w
n
|w
n-1
)=p(e1)p(e2|e1)
…
p(e
n
|e
n-1
)4)文本组合概率排序:选取经过步骤3)计算后条件概率最高的字词组合作为经过纠错后的正确句子s。文本纠错模块对于文本中每一个句子都经过前面所述步骤1-4操作后得到最终的纠错文本,供后续模块使用。5.如权利要求1所述的一种含错中文文本纠错识别分类设备,其特征在于,所述文本事
件要素提取及分类模块,包含训练阶段和运营阶段这两个阶段,需要完成训练阶段后才能进入运营阶段;而这两个阶段又各自分为事件特征提取和事件类型识别两个步骤,执行过程如下:1)在训练阶段中,需要对文中的事件特征进行提取和对文本进行分类:1.1)对于中文文本数据库中的不含错中文文本进行标注,共需要标注四个方面的内容:事件激活词、事件要素词、事件要素关系、事件类型。事件激活词指能够导致一个事件发生的词语;事件要素词指能够描述一个事件内容的关键词,比如时间、地点、人物;事件要素关系指能够描述各个要素之间的关系的说明;事件类型是对于一个文本所描述的内容的定义。1.2)将中文文本数据库中待使用的文本标注完后,开始进行事件特征提取。文本要素提取及分类模块是通过一个双向门控循环单元(bidirectional gated recurrent unit,,bigru)与一个条件随机场(conditional random field,crf)组成的深度学习模型来提取事件特征的,将该模型记为bigru+crf模型。将经过步骤1.1)标注后的文本经过分词后转化为字词高维嵌入向量表示。设一个文本的长度为t,该文本转化为高维嵌入向量表示后变为一个的二维张量,将该张量送入bigru+crf模型后可以提取出对于该文本中被标注的事件的特征其中h是bigru隐藏层的维数,f同时也作为该文本的特征。1.3)将提取的文本特征f送入一个最后一层为softmax层的分类神经网络后可得到一个输出向量其中l为任务定义的文本类别数。将分类神经网络得到的输出向量o与转换为独热向量表示的事件类型标注进行比较,通过如下交叉熵损失函数l计算分类损失:其中n为标注训练文本数,l为任务要求识别的文本类别数,y
i
j为第i个文本对应的实际文本类别的独热表示的第j个值,为神经网络输出,表示对第i个文本类别预测表示的第j个值;1.4)将损失l反向传回模块中,通过梯度下降算法更新模块内的参数。重复步骤9.2)-9.4),进行下一轮输出的预测并计算预测损失。通过重复的使用标注文本进行训练,使得文本要素提取及分类模块能够不断学习如何识别一个文本中的事件激活词、事件要素词、事件要素关系,从而完成文本分类任务。2)在运营阶段中,文本事件要素提取及分类模块内的各模型已经在步骤1)中被训练完成,可以接受无标注文本作为输入,自动完成无标注文本的分类任务。模块的输入是经过文本纠错模块进行纠错后的无标注文本,模块执行过程如下:2.1)自动从输入的无标注文本中提取出事件激活词、事件要素词和事件要素关系。2.2)将提取出的事件信息经过训练好的bigru+crf模型编码为事件特征。2.3)利用前一步得到的事件特征经过训练好的最后一层为softmax层的分类神经网络得到文本分类结果。2.4)将得到的事件激活词、事件要素词、事件要素关系以及分类结果显示在设备的显示屏上。
技术总结
本发明公开了一种含错中文文本纠错识别分类设备,该设备由中文文本数据库、中文特征提取模块、文本纠错模块、文本事件要素提取及分类模块组成。中文文本数据库搜集大量中文文本,然后中文特征提取模块负责对中文字词进行编码并转化为高维嵌入向量,接着文本纠错模块对含错文本进行纠错,最后文本事件要素提取及分类模块对文本中的各事件要素进行提取并对文本进行分类。本发明能够根据中文的形态、发音和语义来自动提取中文文本中丰富的特征以自动完成中文文本的纠错以及分类任务,克服了现有成果对于中文文本自动纠错能力较差以及对于中文文本分类模型研究的不足,为自然语言处理中的文本分类技术在中文文本上的应用带来显著增效。来显著增效。来显著增效。
技术研发人员:刘兴高 刘昭然 刘静 王文海 张志猛 张泽银
受保护的技术使用者:浙江大学
技术研发日:2021.11.09
技术公布日:2022/3/7