一种基于特征的意图识别算法制造技术

技术编号:38558457 阅读:10 留言:0更新日期:2023-08-22 21:00
本发明专利技术适用机器人人机交互意图识别技术领域,提供了一种基于特征的意图识别算法(FBERT

【技术实现步骤摘要】
一种基于特征的意图识别算法


[0001]本专利技术属于机器人人机交互意图识别
,尤其涉及一种基于特征的意图识别算法。

技术介绍

[0002]随着大数据时代的到来,机器人智能问答系统作为大数据与垂直领域结合的高级检索技术,近年来受到了机器人领域的广泛关注。意图识别作为搭建智能问答系统的基础性工作,其主要目标通过理解句子层面的语义,确定用户的意图类别。意图识别的效果直接关系到问答系统的性能好坏,识别错误可能导致误诊、错诊,致使用户对自身病情了解错误对其身心造成伤害。
[0003]传统的意图识别技术需要针对不同领域的任务制定不同的模板或通过提取文本的关键特征,然后训练分类器来实现意图分类的,这些方法需要大量人力或大量训练数据,缺乏对不同数据的泛化能力,导致意图分类的效率较低。另外,由于输入语句的不规范性和中文语言的多样性,导致用户的意图无法得到准确的识别,缺少标注数据,从而影响意图识别的性能。

技术实现思路

[0004]本专利技术的目的在于提供一种基于特征的意图识别算法,旨在解决当前的机器人智能问答系统在进行意图识别时缺少标注数据且意图分类效率低的问题。
[0005]一方面,本专利技术提供了一种基于特征的意图识别算法,所述算法包括以下步骤:
[0006]对向量化待识别文本通过BERT模型进行预训练,获得BERT输出的最后四层隐藏层;
[0007]将所述BERT输出的最后四层隐藏层拼接并来代表整句的信息传入TextCNN算法中,TextCNN模块通过并行使用多个大小不同的卷积核的卷积层进行卷积操作,通过最大池化运算,获得经卷积运算得到的最大特征,选择适用于文本分类的特征向量;
[0008]通过concatenate将cls_token的信息加入到TextCNN计算结果中;
[0009]通过Dense从不同角度将所述cls_token的信息和所述特征向量的信息进行重构;
[0010]在全连接层中通过Softmax函数将所述特征向量的维度转化为意图类别的数目,得到预测的意图类别。
[0011]进一步地,所述卷积核的大小为输入的词向量矩阵的宽度,所述宽度等于词向量的大小。
[0012]进一步地,所述卷积核的数量为3个。
[0013]进一步地,所述3个卷积核的大小分别为3、4和5。
[0014]进一步地,所述BERT预训练模型包括以下过程:
[0015]读取每行数据得到token列表W={W1,W2,...,Wn},token中需要加入[CLS]、[SEP]等标志性符号,其最终结果为:tokens=[[CLS],W1,W2,...,Wn,[SEP]];
[0016]将tokens列表中的每个字按照中文词表数据转换为词表编码向量,构成词表编码向量表,结果为:tokenEmbedding={E1,E2,...,En};其中En为Wn的词表编码向量;
[0017]将tokens列表中的每个字元素按照所属句子转换为句编码向量,构成句编码向量表,结果为:segmentEmbedding={S1,S2,

,Sn};其中Sn为Wn的句编码向量;
[0018]将tokens列表中的每个字元素按照其索引采用独热编码转换为位置嵌入向量,构成位置嵌入向量表:positionEmbedding={P1,P2,...Pn};其中Pn为Wn的位置嵌入向量;
[0019]最终的embedding=tokenEmbedding+segmentEmbedding+positionEmbedding,这是传递给BERT的编码器层的输入表示,经过BERT预处理后得到句子的嵌入表示;
[0020]取BERT模型的pooler_out输出,即序列第一个token的最后一层隐藏状态;表示为cls=[batch_size,hidden_size];
[0021]取BERT模型输出的后四层隐藏层,通过concatenate拼接为last4_hidd=[batch_size,seqlen,4];
[0022]进一步地,所述TextCNN模型包括卷积层,池化层和全连接层;
[0023]所述卷积层的计算步骤包括:
[0024]通过输入的词向量矩阵与卷积核来计算单位节点矩阵,提取不同层次的特征;
[0025]使用非线性激活函数ReLU得到特征矩阵C=[c1,c2,
···
,c
n
],特征C
i
=f(W
·
X
i:i+h
‑1+b);
[0026]其中W为输出卷积核的权重矩阵,b为偏置参数,f为激活函数;
[0027]所述池化层的计算步骤包括:
[0028]使用最大池化算法包括,筛选出每个滑动窗口中最大的特征向量将其拼接后重构成一维向量z来减少神经网络的参数和特征向量的个数,z=[c
′1,c
′2,
···
,c

k
];
[0029]所述全连接层的算法包括,使用Softmax函数来得到标签的概率分布;
[0030][0031]式中y为模型输出的分类结果,w
dense
和b
dense
为全连接层的权重矩阵与偏置,r为掩码向量以10%的概率丢弃特征z中的特征向量。
[0032]另一方面,本专利技术还提供了一种基于特征的意图识别算法的应用,应用于机器人智能问答系统,该应用包括以下步骤:
[0033]获取用户输入的待识别文本;
[0034]对所述待识别文本进行实体规范化操作,获得实体规范化文本;
[0035]对所述实体规范化文本进行文本向量化,获得所述向量化待识别文本;
[0036]加载所述基于特征的意图识别算法,获得意图分类数据;
[0037]判断置信度是否大于0.8;
[0038]若是,则通过预先设置好的语义槽中的Cypher查询语句去数据库中查询实体相关数据;
[0039]若否,判断置信度是否小于0.4;
[0040]若是,提示异常,结束;
[0041]若否,判断意图是否得到确认;
[0042]若是,则通过预先设置好的语义槽中的Cypher查询语句去数据库中查询实体相关数据;
[0043]若否,则提示异常,结束。
[0044]最后一方面,本专利技术还提供了一种基于特征的意图识别系统,该系统包括以下模块:
[0045]BERT模块,用于对向量化待识别文本进行预训练,获得BERT输出的后四层;
[0046]TextCNN卷积模块,用于将所述BERT输出的后四层拼接并来代表整句的信息传入TextCNN算法中,TextCNN模块通过并行使用多个大小不同的卷积核的卷积层进行卷积操作,通过最大池化运算,获得经卷积运算得到的最大特征,选择适用于文本分类的特征向量;
[0047]拼接模块,用于通本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于特征的意图识别算法,其特征在于,所述算法包括以下步骤:对向量化待识别文本通过BERT模型进行预训练,获得BERT输出的最后四层隐藏层;将所述BERT输出的最后四层隐藏层拼接并代表整句的信息传入TextCNN模块中,TextCNN模块通过并行使用多个大小不同的卷积核的卷积层进行卷积操作,通过最大池化运算,获得经卷积运算得到的最大特征,选择适用于文本分类的特征向量;通过concatenate将cls_token的信息加入到TextCNN计算结果中;通过Dense从不同角度将所述cls_token的信息和所述特征向量的信息进行重构;在全连接层中通过Softmax函数将所述特征向量的维度转化为意图类别数的数目,得到预测的意图类别。2.根据权利要求1所述的基于特征的意图识别算法,其特征在于,所述卷积核的大小为输入的词向量矩阵的宽度,所述宽度等于词向量的大小。3.根据权利要求2所述的基于特征的意图识别算法,其特征在于,所述卷积核的数量为3个。4.根据权利要求3所述的基于特征的意图识别算法,其特征在于,所述3个卷积核的大小分别为3、4和5。5.根据权利要求1所述的基于特征的意图识别算法,其特征在于,所述BERT预训练模型包括以下过程:读取每行数据得到token列表W={W1,W2,...,Wn},token中需要加入[CLS]、[SEP]等标志性符号,最终结果为:tokens=[[CLS],W1,W2,...,Wn,[SEP]];将tokens列表中的每个字按照中文词表数据转换为词表编码向量,构成词表编码向量表,结果为:tokenEmbedding={E1,E2,...,En};其中En为Wn的词表编码向量;将tokens列表中的每个字元素按照所属句子转换为句编码向量,构成句编码向量表,结果为:segmentEmbedding={S1,S2,

,Sn};其中Sn为Wn的句编码向量;将tokens列表中的每个字元素按照其索引采用独热编码转换为位置嵌入向量,构成位置嵌入向量表:positionEmbedding={P1,P2,...Pn};其中Pn为Wn的位置嵌入向量;最终的embedding=tokenEmbedding+segmentEmbedding+positionEmbedding,这是传递给BERT的编码器层的输入表示,经过BERT预处理后得到句子的嵌入表示;取BERT模型的pooler_out输出,即序列第一个token的最后一层隐藏状态;表示为cls=[batch_size,hidden_size];取BERT模型输出的后四层隐藏层,通过concatenate拼接为last4_hidd=[batch_size,seqlen,4]。6.根据权利要求1所述的基于特征的意图识别算法,其特征在于,所述Te...

【专利技术属性】
技术研发人员:何琼
申请(专利权)人:深圳市普蓝机器人有限公司
类型:发明
国别省市:

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

1