基于Bert模型的意图识别与槽值填充联合预测方法技术

技术编号:28450216 阅读:12 留言:0更新日期:2021-05-15 21:12
本发明专利技术涉及智能问答技术领域,具体涉及一种基于Bert模型的意图识别与槽值填充联合预测方法,该方法包括:输入目标文本,得到目标文本的词向量、段向量和位置向量,将词向量、段向量和位置向量拼接作为Bert模型的输入向量,输入训练好的Bert模型中,训练好的Bert模型输出意图表示向量和槽值序列表示向量,将意图表示向量和槽值序列表示向量在Gate层通过权重计算,计算出联合作用因子,将联合作用因子作用于槽值序列表示向量,最终输出预测的意图分类和槽值序列。本发明专利技术在Bert层上使用Gate机制,充分利用意图识别和槽值填充的内在联系,降低任务错误预测率。任务错误预测率。任务错误预测率。

【技术实现步骤摘要】
基于Bert模型的意图识别与槽值填充联合预测方法


[0001]本专利技术涉及智能问答
,具体涉及一种基于Bert模型的意图识别与槽值填充联合预测方法。

技术介绍

[0002]随着人工智能技术的飞跃,人与机器的交互越来越频繁,人向机器传达指令的方式也从按键操作走向语音交互,机器可以通过多种模式的交互过程帮助人们完成特定任务。为了解决人机对话的交流问题,智能对话系统成为人工智能领域的核心技术之一,其中任务型对话系统是为完成特定任务而设计的,例如机票预定、餐厅预订等多种应用。任务型对话系统的实施过程主要包括五个部分:语音识别、自然语言理解、对话状态跟踪、对话策略以及自然语言生成,其中自然语言理解是对话系统的控制核心,自然语言理解包括意图识别和槽值填充两个任务,意图识别即根据文本信息识别出用户意图和目的,通常将意图识别看作是一个分类任务;槽值填充指的是为了让用户意图转化为用户明确的指令而补全信息的过程,槽值填充可以看作是序列标注任务,将用户给出的文本解析为预定义的语义槽,标注时采用Begin/Inside/Outside(BIO)标签标注分词结果。
[0003]传统的意图识别方法主要分为三大类,其一是基于规则模板的意图识别方法,其二是基于统计特征分类的意图识别方法,其三是基于深度学习的意图识别方法。基于规则模板的意图识别方法一般需要人为构建规则模板以及类别信息对用户意图文本进行分类。基于统计特征分类的意图识别方法需要对文本进行特征提取,然后通过训练分类器实现意图分类。经典的统计机器学习模型有支持向量机(Support Vector Machine,SVM)、朴素贝叶斯(Naive Bayes,NB), K近邻(K

Nearest Neighbor,KNN),Adaboost等。随着深度神经网络的发展,深度学习逐渐被应用到自然语言处理任务上,并且相比于传统方法表现出更高的效率和准确率。深度学习方法与传统方法相比能够自动提取特征,捕获句子内部更深层的语义,获取更好的分类效果。
[0004]传统的解决槽值填充的方法主要有四类,分别是基于字典的,基于规则的,基于统计的和基于深度学习的方法。基于字典的方法主要是通过字符串匹配查找词库;基于规则的方法主要是在基于语言学知识的基础上,由相关领域专家制定相应规则,通过人工构造模板来匹配、抽取槽信息。基于统计的方法则使用人工标注好的语料对模型进行训练。
[0005]上述方法中,意图识别和槽值填充任务通常是独立建模的,但由于意图识别和槽值填充存在内部语义联系,大量研究者开始对语义识别和槽值填充联合建模、同时优化。例如,Xu等人提出一种基于CNN

TriCRF的意图检测和槽值填充联合训练模型,所提出的模型可被看作TRiCRF的神经网络版本,句子特征通过CNN自动提取,并由意图模型共享,在槽值填充中使用TriCRF进行全局归一化,实验显示联合模型在意图识别和槽值填充的任务上均高于标准 TriCRF模型。Li等人提出一种具有门控机制的自注意力模型,为意图槽值联合训练模型提出了更优的语义框架。输入向量使用CNN自动获取局部特征,并在 CNN隐藏层添加自注意力机制,注意全局信息,使用BLSTM有效利用上下文时序信息,将意图信息作为门控
机制提高槽值填充的性能。但现有基于深度学习的联合预测方法由于忽略了意图识别和槽值填充的内在关系或者只是简单拼接意图表示向量和槽值序列向量来表达两者之间的内在关系,导致槽值填充的准确率不高,影响了最终对话系统的质量。

技术实现思路

[0006]为了解决上述问题,本专利技术提供一种基于Bert模型的意图识别与槽值填充联合预测方法。
[0007]一种基于Bert模型的意图识别与槽值填充联合预测方法,包括以下步骤:输入目标文本,得到目标文本的词向量、段向量和位置向量,将词向量、段向量和位置向量拼接作为Bert模型的输入向量,输入到经过调参后的最佳Bert模型中,Bert层输出意图表示向量和槽值序列表示向量,将意图表示向量和槽值序列表示向量在Gate层通过权重计算,计算出联合作用因子,将联合作用因子作用于槽值序列表示向量,最终输出预测的意图分类和槽值序列。
[0008]其中,Bert模型先训练后使用,训练过程包括以下过程:
[0009]S1、获得训练集的词向量、段向量和位置向量,将词向量、段向量和位置向量拼接作为模型的输入向量,输入Bert层,Bert层输出分类意图表示向量和槽值表示向量;
[0010]S2、将Bert层的输出数据输入到Gate层,在Gate层,首先用权重矩阵W 统一意图表示向量和槽值表示向量的图形状;统一图形状之后,先用tanh激活函数分别处理意图表示向量和槽值表示向量,再利用不同的可训练向量分别对意图表示向量和槽值表示向量加权求和,得到联合作用因子t;
[0011]将联合作用因子t作用于Bert层的槽值表示向量,得到混入联合作用因子t 的槽值表示向量并输出Gate层;
[0012]S3、将Gate层输出的混入联合作用因子的槽值表示向量输入到Softmax层,进行槽值序列预测;
[0013]S4、将Bert层输出的意图表示向量输入到Softmax层,进行意图分类预测。
[0014]意图分类预测:Softmax层直接使用Bert层输出的意图表示向量,计算每个类别的分类预测概率值,再进行归一化,将预测概率映射到(0,1)之间,计算表达式如下:
[0015]y
I
=softmax(W
I
·
H
I
+b
I
)
[0016]其中,y
I
表示归一化后的意图类别预测,W
I
表示第一权重矩阵,H
I
表示 Bert层输出的意图表示向量,b
I
表示偏置值;
[0017]计算每个类别的分类概率值后,取最大概率对应的分类作为意图类别预测值;根据意图类别预测值和真实的意图分类数计算意图识别损失函数,通过意图识别损失函数训练第一权重矩阵W
I
,得到训练好的第一权重矩阵W
I

[0018]槽值序列预测:使用Softmax层归一化Gate层输出的槽值表示向量,取每个归一化后的最大概率值作为槽值预测值,计算整个目标文本的槽值损失之和,通过槽值损失函数训练第二权重矩阵W
S
,得到训练好的第二权重矩阵W
S

[0019]将每个epoch训练好的第一权重矩阵W
I
和训练好的第二权重矩阵W
S
存储起来,得到多组模型参数,每一组参数中包括一个训练好的第一权重矩阵W
I
和训练好的第二权重矩阵W
S

[0020]S5、验证集验证Bert模型效果,从多组模型参数中找到最优参数组:使用验证集,分别使用每个epoch已训练好的模型参数参与计算,计算验证集在每个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Bert模型的意图识别与槽值填充联合预测方法,其特征在于,包括以下步骤:输入目标文本,得到目标文本的词向量、段向量和位置向量,将词向量、段向量和位置向量拼接作为Bert模型的输入向量,输入最佳Bert模型中,Bert层输出意图表示向量和槽值序列表示向量,将意图表示向量和槽值序列表示向量在Gate层通过权重计算,计算出联合作用因子,将联合作用因子作用于槽值序列表示向量,最终输出预测的意图分类和槽值序列;其中,Bert模型先训练后使用,训练过程包括以下过程:S1、获得训练集的词向量、段向量和位置向量,将词向量、段向量和位置向量拼接作为模型的输入向量,输入Bert层,Bert层输出分类意图表示向量和槽值表示向量;S2、将Bert层的输出数据输入到Gate层,在Gate层,首先用权重矩阵W统一意图表示向量和槽值表示向量的图形状;统一图形状之后,先用tanh激活函数分别处理意图表示向量和槽值表示向量,再利用不同的可训练向量分别对意图表示向量和槽值表示向量加权求和,得到联合作用因子t;将联合作用因子t作用于Bert层的槽值表示向量,得到混入联合作用因子t的槽值表示向量并输出Gate层;S3、将Gate层输出的混入联合作用因子的槽值表示向量输入到Softmax层,进行槽值序列预测;S4、将Bert层输出的意图表示向量输入到Softmax层进行意图分类预测;意图分类预测:Softmax层直接使用Bert层输出的意图表示向量,计算每个类别的分类预测概率值,再进行归一化,将预测概率映射到(0,1)之间,计算表达式如下:y
I
=softmax(W
I
·
H
I
+b
I
)其中,y
I
表示归一化后的意图类别预测,W
I
表示第一权重矩阵,H
I
表示Bert输出的意图分类表示向量,b
I
表示偏置值;计算每个类别的分类概率值后,取最大概率对应的分类作为意图类别预测值;根据意图类别预测值和真实的意图分类数计算意图识别损失函数,通过意图识别损失函数训练第一权重矩阵W
I
,得到训练好的第一权重矩阵W
I
;槽值序列预测:使用Softmax层归一化Gate层输出的槽值表示向量,取每个归一化后的最大概率值作为槽值预测值,计算整个目标文本的槽值损失之和,通过槽值损失函数训练第二权重矩阵W
S
,得到训练好的第二权重矩阵W
S
;将每个epoch训练好的第一权重矩阵W
I
和训练好的第二权重矩阵W
S
存储起来,得到多组模型参数,每一组参数中包括一个训练好的第一权重矩阵W
I
和训练好的第二权重矩阵W
S
;S5、验证集验证Bert模型效果,从多组模型参数中找到最优参数组:使用验证集,分别使用每个epoch已训练好的模型参数参与计算,计算验证集在每个模型参数组上的意图识别准确率和槽值填充的F1值,将意图识别准确率和槽值填充的F1值最高的一组模型参数作为最终模型参数,得到最佳Bert模型。2.根据其权利要求1所述的一种基于Bert模型的意图识别与槽值填充联合预测方法,其特征在于,通过意图识别损失函数训练第一权重矩阵W
I
,具体包括:通过在意图识别损失函数中对可训练参数进行求导,获得各可训练参数的梯度值diff,求得所有可训练参...

【专利技术属性】
技术研发人员:张璞明欢欢朱洪倩
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

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

1