当前位置: 首页 > 专利查询>朱利专利>正文

一种使用重叠拆分规则的文本序列标注算法制造技术

技术编号:23605264 阅读:48 留言:0更新日期:2020-03-28 06:12
本发明专利技术提供了一种使用重叠拆分规则的文本序列标注算法,经验上,完成一个基于深度学习的序列标注任务模型,在训练阶段,其最大序列长度固定为有限值;而在预测阶段,自然文本序列长度常常超过模型最大序列长度,此时会造成模型的F1值降低。采用重叠拆分规则方式,对于待预测文本长度超过模型最大序列长度时,将超长文本拆分为若干不大于最大序列长度的子序列,各个子序列之间设置重叠区域,即重叠拆分处理。重叠拆分方式规则能够适用于不同类型的特征抽取器模型,可以在一定程度上提升模型预测效果,同时对于RNN特征抽取器,可以大幅度提升处理效率,在我们已完成的序列标注任务工程上有广泛的、非常好的应用。

A text sequence annotation algorithm using overlapping split rules

【技术实现步骤摘要】
一种使用重叠拆分规则的文本序列标注算法
本专利技术属于自然语言处理领域,特别涉及自然语言的序列标注算法,如分词、词性标注、命名实体识别等,进一步地涉及一种使用重叠拆分规则的文本序列标注算法。
技术介绍
人类社会的知识和信息大多以人类创造的语言文字的形式进行记录,计算机可以方便快捷的对文本进行存储和记录。但是,计算机仅能传递、保存信息,无法直接识别、理解、运用语言文字。自然语言处理就是一种处理人类自然语言文本的算法技术。其中,分词(WordsSegmentation)、词性标注(POSTagging)和命名实体识别(NamedEntityRecognition)是自然语言处理的基础任务。1)、分词,将一句话(字的序列)分割成词的序列。如句子“张某某目前任职于水利局。”,被分解成“张某某”,“目前”,“任职”,“于”,“水利局”,“。”。2)、词性标注,为每一个词赋予一个词性。如名词、动词、形容词等。如前例中,“张某某”、“水利局”是名词,“目前”是副词,“任职”是动词,“于”是介词,“。”是标点符号。3)、命名实体识别,提取文中特定类型的词汇实体。如文中的“张某某”(类型:人名),“水利局”(类型:机构)等,其余文字不是实体。分词、词性标注、命名实体识别都可以被转化为序列标注(SequenceLabeling)问题。序列标注通过为每一个单元(字或词,英文为token)赋予一个标签,从而达到分块和分类的目的。最常用的标签方式有(BIEOS)标签等,如:1)、分词,“张(B)小(I)川(E)目(B)前(E)任(B)职(E)于(S)水(B)利(I)局(E)。(B)”,其中的B代表开始(Begin),I代表中间(Inside),E代表结尾(End),S代表单字成词或实体(Single),出现B或S的地方即为边界,通过对B、S、E标签标识出的边界,就可以提取出词汇:“张某某”,“目前”,“任职”,“于”,“水利局”,“。”。2)、词性标注,“张(B-NR)小(I-NR)川(E-NR)目(B-ADV)前(E-ADV)任(B-V)职(E-V)于(S-PREP)水(B-NG)利(I-NG)局(E-NG)。(B-WJ)”,其中B-NR中的B代表边界,NR代表类别,这里表示人名。这种方式既区分了边界又标识了类别,即词性。3)、实体识别,“张(B-Person)小(I-Person)川(E-Person)目(O)前(O)任(O)职(O)于(O)水(B-Organiztion)利(I-Organiztion)局(E-Organiztion)。(O)”,跟词性标注类似,只是多了一个标签O,表示Outside,表示不是任务所关注的类别。通过对标签进行处理,就可以提取出实体:“张某某”(类型:Person)、“水利局”(类型:Time)。序列标注任务目前最流行的算法是“深度学习模型+CRF”:1)模型部分。如在序列标注中目前最为经典的BI-LSTM-CRF模型中的BI-LSTM,指双向的LSTM循环神经网络,是一种深度学习模型,其任务是为每一个单元,这里以字为例,所属的各种类别分配一个分数,相当于对每一个字执行分类任务。如图1所示,“张”字对应一个7维向量,其中第“B-Person”维分数最高,说明这个字对应这个类别的概率越高,即把“张”字划分为“B-Person”类别。Bi-LSTM可以被替换成其他的模型,如Bi-GRU,多层CNN,多层BI-LSTM,Transformer等各种常见特征抽取器。2)CRF部分,这里特指LinearChainCRF(ConditionalRandomField),它是一种概率图模型。在这里的主要作用是对标签之间的关系做优化,找出概率最大的一个标签序列(一般使用Viterbi算法进行解码)。如B-Person标签后面不可能跟I-Orgnization标签,而跟I-Person标签的可能性更高。经过CRF层的优化,序列标注精度得以提升。值得一提的是,随着技术的发展,2018年谷歌研发了性能更强的BERT模型(https://arxiv.org/pdf/1810.04805),它采用Transformer作为特征抽取器,模型表达能力很强,很大程度上可以克服如B-Person标签后面跟随I-Orgnization标签的问题,因此,CRF部分可以去掉。该算法的主要流程如图2所示。序列标注任务的模型训练指标,主要采用F1值进行评价,它权衡了预测的精确率和召回率。以上序列标注模型的系统输入是句子序列,而句子序列则存在一定的固有分布。据统计,在中文里,句子的长度分配比例大致符合Poisson分布,结果如表1所示。表1句子长度和字数占比从表1中可以看出,在大量的互联网新闻文本中,句子长度超过100字的个数占比为1.5%,这些句子包含的汉字个数占比为6.2%,该统计考虑了互联网文本由于使用HTML格式,造成了若干无标点文本误组成的超长文本。现有技术是一种有监督的机器学习算法,在训练阶段有数以百万至上亿的参数需要进行拟合调优。参数量过大或过小会带来各种问题,模型训练必须对序列最大长度、模型层数、特征维度等超参数做出控制。其中,模型训练的序列最大长度对模型的性能和效果影响巨大。例如,在训练模型阶段,选取序列最大长度为100个token,例如,示例句子“张某某目前任职于水利局,他曾经主管负责过市河道水利工程......”的最大长度不超过100个字。然而,如表1所示,在模型的预测使用阶段,句子的长度有一定比例会超过100个token,对于超长句子,不同的模型有不同的处理方式。RNN、LSTM、GRU等循环神经网络特征抽取器由于满足自回归,可以直接方便地处理超长序列;而CNN、Transformer等特征抽取器,一般情况下,需要对序列做强制截断处理。各类特征抽取器对于超长序列均存在效果下降的问题。1、对于RNN、LSTM、GRU等循环神经网络特征抽取器,问题在于,模型训练仅训练了最大序列长度范围内的序列特征,而对超出部分,预测效果(主要指F1值)会随着长度的增加缓慢下降。例如:句1:张某某目前任职于水(8)利(9)局(10)。句2:北京市政府出台了一系列措施,用于改善市区的便民设施情况;其中,一项很重要的工作就是居民的用水安全和用水便捷程度;这样的工作繁琐而细碎,需要消耗大量的人力物力;不过,北京市水利局却有办法解决这个问题,原因在于,张某某曾经在水(111)利(112)局(113)担任局长。以上两句子中,“水利局”指待识别的机构名称(Organization),括号中数字表示该字在句子中的索引位置,即句1中,第8个字至第10个字为“水利局”,句2同理。将以上两句子输入已训练好的模型,假设模型规定最大序列长度为100,第一句由于索引位置在最大序列长度100字范围内,第二句中“水利局”三个字位置超过100字,故第一句预测准确“水利局(Organization)”的概率要高于第二句。...

【技术保护点】
1.一种使用重叠拆分规则的文本序列标注算法,其特征在于:采用拆分方法具体为:/n(1)训练完成一个基于深度学习的序列标注任务模型后,在预测阶段,对于待预测文本长度超过模型最大序列长度时,将超长文本拆分为若干不大于最大序列长度的子序列,各个子序列之间设置重叠区域;/n(2)获得的若干子序列可以通过并行的方式使用模型做预测,将得到的序列结果按照一套通用的经验规则做拼接合并,即得到最终的超长文本的序列标注结果。/n

【技术特征摘要】
1.一种使用重叠拆分规则的文本序列标注算法,其特征在于:采用拆分方法具体为:
(1)训练完成一个基于深度学习的序列标注任务模型后,在预测阶段,对于待预测文本长度超过模型最大序列长度时,将超长文本拆分为若干不大于最大序列长度的子序列,各个子序列之间设置重叠区域;
(2)获得的若干子序列可以通过并行的方式使用模型做预测,将得到的序列结果按照一套通用的经验规则做拼接合并,即得到最终的超长文本的序列标注结果。


2.一种根据权利要求1所述的使用重叠拆分规则的文本序列标注算法,其特征在于:所述算法适用于针对分词、词性标注、命名实体识别三种任务。


3.根据权利要求1所述的一种使用重叠拆分规则的文本序列标注算法,其特征在于:方法(1)的重叠区域中,存在当一个实体或词汇包含另一个实体或词汇的关系,且都有实体或词汇取到截断边界时,则直接合并,取较长的实体或词汇。


4.根据权利要求1所述...

【专利技术属性】
技术研发人员:朱利崔诚煜李元伟陈杭
申请(专利权)人:朱利
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1