首页> 中国专利> 一种提高数据意图识别能力的文本数据增强方法及装置

一种提高数据意图识别能力的文本数据增强方法及装置

摘要

本发明公开一种提高数据意图识别能力的文本数据增强方法及装置,该方法基于依存句法解析树,将具有相同结构的依存句法解析子树的部分句子进行混合数据增强,具有不相同结构的依存句法解析子树的部分句子输入到掩码语言模型中进行预测。通过所述方法可以将一个少样本的数据集扩增为一个形式丰富的数据集,从而可以用意图分类识别的训练任务,提高其识别能力,增强其鲁棒性。

著录项

  • 公开/公告号CN114896372A

    专利类型发明专利

  • 公开/公告日2022-08-12

    原文格式PDF

  • 申请/专利权人 杭州师范大学;

    申请/专利号CN202210650519.9

  • 发明设计人 黄剑平;巩帅;谢天豪;付雨;薛涛;

    申请日2022-06-09

  • 分类号G06F16/33(2019.01);G06F16/35(2019.01);G06F40/211(2020.01);G06F40/289(2020.01);G06F40/30(2020.01);G06K9/62(2022.01);G06N3/04(2006.01);G06N3/08(2006.01);

  • 代理机构杭州君度专利代理事务所(特殊普通合伙) 33240;

  • 代理人朱亚冠

  • 地址 311121 浙江省杭州市余杭区余杭塘路2318号

  • 入库时间 2023-06-19 16:23:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-08-30

    实质审查的生效 IPC(主分类):G06F16/33 专利申请号:2022106505199 申请日:20220609

    实质审查的生效

说明书

技术领域

本发明属于自然语言处理技术领域,具体涉及一种提高数据意图识别能力的文本数据增强方法及装置。

背景技术

随着新时代人民生活水平的提高,越来越多的人在日常生活中遇到一些健康问题时,更希望在网络平台上快速而方便地寻求。随着自然语言处理和语音识别技术的不断发展成熟,智能医疗问答机器人应运而生。

目前业界搭建一个智能医疗机器人普遍会出现一个少样本数据的问题,即用于训练智能医疗机器人的意图样本数据过少。在自然语言处理领域,意图代表着一类问题的统称。比如“今天杭州天气怎么样”、“明天北京天气如何”这样的句子都可以归于询问天气这一意图。如果在初期意图样本数据不足,智能医疗机器人可能会无法正确识别用户的意图,也就不能做出正确回复。丰富的意图样本数据是智能医疗机器人的重要基石,所以在构建智能医疗机器人前期,丰富的意图数据可提高其意图识别能力。

数据增强正是解决意图样本数据不足这一问题的方法之一。目前对于文本的数据增强方法主要有三类:释义、噪声和采样。释义是对句子中的词、短语在不改变其语义的情况下做一些更改,使之产生更多样式的句子。主要方案有同义词的修改、替换和删除等。噪声是指在不变更句子语义的情况下,对句子添加一些噪声数据从而提高鲁棒性。最后,采样是指掌握数据分布,并从数据分布中采样出新的样本。与基于释义的模型类似,但不同之处在于采样更依赖任务,需要标签和数据格式等任务信息。以上三种方法都比较简单易实现,但是实际应用场景下,数据增强后的效果不尽人意。

基于此,本发明的关注点在于如何根据现有文本数据进行数据增强,以获得质量更高且丰富的文本数据,从而训练出一个具有更好的意图识别能力的和鲁棒性较高的意图分类模型。

发明内容

本发明的第一个目的是针对上述技术问题,提供一种提高数据意图识别能力的文本数据增强方法,该方法基于依存句法解析树,将具有相同依存句法解析子树结构的两个句子进行混合数据增强和语义替换。并再此基础上,通过掩码语言模型将相同依存句法解析子树之外的部分去最掩码预测生成。上述方法,可以将一个少样本的数据集扩增为一个形式丰富的数据集,从而可以用意图分类识别的训练任务,提高其识别能力,增强其鲁棒性。

一种提高数据意图识别能力的文本数据增强方法,包括步骤:

步骤(1)、使用自然语言处理技术将待增强文本数据进行分词、词性标注和依存句法分析,从而生成每个句子的依存句法解析树;所述依存句法解析树的每个节点包含分词和所述分词所属的依存关系;同时对每个句子进行标注,所述标签为所属类别;

步骤(2)、遍历所有句子,对每个句子S

2-1遍历所有句子,对句子S

2-2对句子S

2-2-1判断当前依存句法解析子树是否满足树高度小于预设值P,若否则不做操作;若是则继续判断句子S

2-2-2判断当前依存句法解析子树上节点对应分词的标签是否相同,若相同则将句子S

2-3、将句子S

2-4、将步骤2-2和步骤2-3的输出数据进行拼接,数据标签更新与步骤2-2中的标签保持一致;

2-5、重复步骤2-1至2-4直至完成句子S

作为优选,步骤(2-1)中若句子S

作为优选,所述掩码语言模型采用改进Bert模型;所述改进Bert模型包括多层堆叠的transformer的encoder单元,所述transformer的encoder单元由多头注意力机制层Muliti-Head-Attention、归一化层Layer Normalization、前馈层Feedforword、归一化层Layer Normalization堆叠产生;

所述改进Bert模型是将Bert模型中的多层堆叠的transformer的encoder单元结构进行优化微调,具体过程为:

所述多头注意力机制层的输入编码向量是由掩码处理后的单词嵌入,以及位置嵌入和分割嵌入进行单位和,然后再拼接上分句符号[SEP]构成,其中掩码处理后的单词嵌入是单词嵌入进行随机MASK掩码处理得到,单词嵌入表示当前单词的语义信息,分割嵌入表示当前单词所在句子的索引嵌入,位置嵌入表示当前单词在句子中的位置信息。

本发明提出在原Bert模型encoder单元中多头注意力机制层的输入的编码向量中将用于分类模型的[CLS]句向量特征删除,忽略该符号对应的输出向量作为整个句子的语义表示,模型能够更好的关注单词的前后关系,可以更好的捕捉上下文的语义信息,更准确的预测下一个词的概率。

此外还随机地将输入句子中的部分单词嵌入随机替换成[MASK]符号,以适应单词预测任务。具体来说,有70%的概率该单词嵌入被替换成[MASK]符号,有15%的概率该单词嵌入替换成其他任意一个Token,有15%的概率该单词嵌入保持不变。

所述归一化层是使用Sigmoid函数代替原来的Softmax函数进行归一化,Sigmoid函数是可以将多头注意力机制层的输出映射在区间(0,1)之间,在有限的输出范围之间可以使得归一化层优化更加稳定;

作为优选,所述改进Bert模型的具体训练过程是:假设SENT_a和SENT_b是一组相似句,在同一个batch中,由掩码处理后的单词嵌入,以及位置嵌入和分割嵌入进行单位和,然后再拼接上分句符号[SEP]作为改进Bert模型中多头注意力机制层的输入编码向量,在整个batch内剔除的句向量特征[CLS]去生成一个句向量矩阵V,即b*d,其维度是b是batch_size,d是hidden_size,然后对句向量矩阵V在d维度上做0均值标准化,得到矩阵

本发明的第二个目的是提供文本数据增强装置,包括:

数据分词模块,用于将待增强文本数据进行分词;

数据词性标注模块,用于将数据分词模块得到的单词进行词性标注;

数据依存句法分析模块,用于将数据分词模块得到的单词和数据词性标注模块得到的单词词性进行依存句法分析,生成每个句子的依存句法解析树;

数据增强模块,对所有句子完成数据增强。

本发明的第三个目的是提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机所述的方法。

本发明的第四个目的是提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现所述的方法。

本发明与现有技术相比,主要优点包括:

(1)将两个句子中的相似部分进行混合增强,生成新的标签数据。对于不相似的部分,通过掩码语言模型进行预测。通过混合增强,在原始数据的基础上增加了数据样本的多样性,将两种方式结合可以在生成不过分偏离原始数据分布又具有多样性的数据。

(2)将混合数据增强和相同依赖解析子树结合起来。相同的依赖解析树可以精确捕捉句子中具有相似意义的部分,能更好的保持句子的语义信息。而混合数据增强可以将标签与句子融合从而生成新的数据,从而可以更好的捕捉不同标签的数据之间的语义关系。

附图说明

图1为本发明的依存句法解析树相同子结构的示意图。

图2为本发方法的流程示意图。

具体实施方式

下面结合附图及具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。下列实施例中未注明具体条件的操作方法,通常按照常规条件,或按照制造厂商所建议的条件。

本发明的一种提高数据意图识别能力的文本数据增强方法如图2所示,具体地,包括步骤:

步骤(1)、将中文医疗对话数据集使用Agglomerative Clustering算法进行聚类作为待增强数据集,使用自然语言处理技术将待增强文本数据进行分词、词性标注和依存句法分析,从而生成每个句子的依存句法解析树;所述依存句法解析树的每个节点包含两个信息分别是分词和分词所属的依存关系;对于每个句子表示为

如图1,是使用自然语言技术解析的结果,其本质上是数据结构中的树。每个节点包含两个信息分别是当前词语和当前词语所属的依存关系。每个句子都是从Root节点构建依存解析树,Root节点由所使用的自然语言处理库Hanlp解析给出。依存关系的判定标准是按照Chinese StanfordDependencies依存关系标注集。

步骤(2)、遍历所有句子,对每个句子S

2-1遍历所有句子,对句子

2-2对句子S

2-2-1判断当前依存句法解析子树是否满足树高度小于预设值P(P可以取值为1),若否则不做操作;若是则继续判断句子S

2-2-2判断当前依存句法解析子树上节点对应分词的标签是否相同,若相同则将句子S

2-3、将句子S

所述掩码语言模型采用改进Bert模型;所述改进Bert模型是在常规Bert模型上将原Attention模块更改为Muliti-Head-Attention;所述常规Bert模型一个基于transformer encode的双向编码表示的预训练模型;所述Bert模型训练时的任务之一是预测句子中被掩盖的词;所述改进Bert模型的整体结构是包括多层堆叠的transformer的encoder单元;所述transformer的encoder单元包多头注意力机制层(Muliti-Head-Attention)、归一化层(Layer Normalization)、前馈层(feedforword)、归一化层(LayerNormalization)四个模块;

本发明将Bert模型中的多层堆叠的transformer的encoder单元结构进行优化微调并适应当前预测任务;具体来说:

1、原Bert模型encoder单元中多头注意力机制层的输入的编码向量是由三个嵌入特征单位和再拼接上[CLS]和[SEP]而成的,这三个嵌入特征分别为单词嵌入、位置嵌入和分割嵌入,[CLS]为句向量特征,[SEP]为分句符号。本发明对多头注意力机制层的输入的编码向量中用于分类模型的[CLS]特征删除,此外还随机地将输入句子中的部分单词嵌入随机替换成[MASK],以适应单词预测任务;

2、对于原Attention模块中得到的相似度矩阵使用Sigmod函数代替原来的Softmax函数进行归一化;所述预测词语的标准并不是最大的概率值,而是多个极大值;所述Sigmod函数可以比Softmax函数更好的去解决这个问题;

所述改进Bert模型的具体训练过程是:假设SENT_a和SENT_b是一组相似句,在同一个batch中,由掩码处理后的单词嵌入,以及位置嵌入和分割嵌入进行单位和,然后再拼接上分句符号[SEP]作为改进Bert模型中多头注意力机制层的输入编码向量,在整个batch内剔除的句向量特征[CLS]去生成一个句向量矩阵V,即b*d,其维度是b是batch_size,d是hidden_size,然后对句向量矩阵V在d维度上做0均值标准化,得到矩阵

2-4、将步骤2-2和步骤2-3的输出数据进行拼接,数据标签更新与步骤2-2中的标签保持一致;

2-5、重复步骤2-1至2-4直至完成句子S

此外应理解,在阅读了本发明的上述描述内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号