CN116127027A - 意图识别方法及装置、意图识别模型的训练方法及装置 - Google Patents
意图识别方法及装置、意图识别模型的训练方法及装置 Download PDFInfo
- Publication number
- CN116127027A CN116127027A CN202211441452.4A CN202211441452A CN116127027A CN 116127027 A CN116127027 A CN 116127027A CN 202211441452 A CN202211441452 A CN 202211441452A CN 116127027 A CN116127027 A CN 116127027A
- Authority
- CN
- China
- Prior art keywords
- text
- intention
- classification
- feature vector
- text feature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012549 training Methods 0.000 title claims abstract description 130
- 238000000034 method Methods 0.000 title claims abstract description 76
- 239000013598 vector Substances 0.000 claims abstract description 243
- 230000006870 function Effects 0.000 claims description 68
- 238000013145 classification model Methods 0.000 claims description 29
- 238000004364 calculation method Methods 0.000 claims description 19
- 230000004913 activation Effects 0.000 claims description 18
- 238000000605 extraction Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000013528 artificial neural network Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 230000004044 response Effects 0.000 description 9
- 238000003062 neural network model Methods 0.000 description 8
- 230000001965 increasing effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 210000002569 neuron Anatomy 0.000 description 4
- 230000003213 activating effect Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3343—Query execution using phonetics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0281—Customer communication at a business location, e.g. providing product or service information, consulting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Computer Interaction (AREA)
- Game Theory and Decision Science (AREA)
- Acoustics & Sound (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种意图识别方法及装置、意图识别模型的训练方法及装置。该方法包括:根据待识别语音文本获取第一文本特征向量,根据第一文本特征向量获取待识别语音文本的初步意图分类,初步意图分类为预设业务场景的意图分类;根据初步意图分类获取意图确定文本集,根据意图确定文本集获取第二文本特征向量集,意图确定文本集为初步意图分类对应的文本集;确定第一文本特征向量与第二文本特征向量集之间的文本距离结果;基于文本距离结果,确定待识别语音文本的实际意图分类,实际意图分类为初步意图分类或者除预设业务场景以外的其他业务场景的意图分类,能够准确地确定待识别语音文本的实际意图分类,从而提高了意图识别的准确率。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种意图识别方法及装置、意图识别模型的训练方法及装置。
背景技术
意图识别是客服机器人系统的关键环节,一个意图识别准确的机器人能有效辅助业务,是业务自动化的核心。一般的客服机器人总是有固定的业务场景,例如,机票相关业务场景,或者贷款相关业务场景等等。当客户的提问在客服机器人所属的业务场景之外时,可以通过在神经网络模型中添加其他业务场景的意图分类任务,以将这些提问确定为其他业务场景的意图分类。然而,相对于客服机器人所属的业务场景的意图分类,其他业务场景的意图分类的数量相当庞大,且每个其他业务场景的意图分类下的训练数据也很难获得,因此,神经网络模型无法学习到所有的其他业务场景的意图分类,从而使得客服机器人无法准确地判断客户的提问所属的实际意图分类,进而降低了意图识别的准确率。
发明内容
有鉴于此,本申请的实施例致力于提供一种意图识别方法及装置、意图识别模型的训练方法及装置,能够准确地确定待识别语音文本的实际意图分类,从而提高了意图识别的准确率。
根据本申请实施例的第一方面,提供了一种意图识别方法,包括:根据待识别语音文本获取第一文本特征向量,根据第一文本特征向量获取待识别语音文本的初步意图分类,其中,初步意图分类为预设业务场景的意图分类;根据初步意图分类获取意图确定文本集,根据意图确定文本集获取第二文本特征向量集,其中,意图确定文本集为初步意图分类对应的文本集;确定第一文本特征向量与第二文本特征向量集之间的文本距离结果;基于文本距离结果,确定待识别语音文本的实际意图分类,其中,实际意图分类为初步意图分类或者除预设业务场景以外的其他业务场景的意图分类。
在一个实施例中,第二文本特征向量集包括至少两个第二文本特征向量,确定第一文本特征向量与第二文本特征向量集之间的文本距离结果,包括:将第一文本特征向量与每个第二文本特征向量输入意图识别模型进行语义相似度计算,得到第一文本特征向量与每个第二文本特征向量之间的文本距离;利用意图识别模型的激活函数,对文本距离进行函数运算,得到文本距离对应的概率值作为文本距离结果。
在一个实施例中,意图识别模型包括至少一个意图分类器,每个意图分类器对应预设业务场景的一个意图分类,其中,将第一文本特征向量与每个第二文本特征向量输入意图识别模型进行语义相似度计算,得到第一文本特征向量与每个第二文本特征向量之间的文本距离,包括:将第一文本特征向量与每个第二文本特征向量输入初步意图分类对应的意图分类器中进行语义相似度计算,得到第一文本特征向量与每个第二文本特征向量之间的文本距离。
在一个实施例中,每个意图分类器设置有拒绝半径参数,拒绝半径参数用于区分待识别语音文本的实际意图分类,其中,在文本距离包括欧氏距离的情况下,利用意图识别模型的激活函数,对文本距离进行函数运算,得到文本距离对应的概率值作为文本距离结果,包括:利用意图识别模型的激活函数对欧氏距离和初步意图分类对应的意图分类器的拒绝半径参数进行函数运算,得到文本距离对应的概率值作为文本距离结果。
在一个实施例中,第二文本特征向量集包括至少两个第二文本特征向量,文本距离结果包括与至少两个第二文本特征向量分别对应的至少两个概率值,其中,基于文本距离结果,确定待识别语音文本的实际意图分类,包括:若至少两个概率值中存在第一预设数量的大于或等于预设阈值的概率值,则确定待识别语音文本的实际意图分类为初步意图分类;若至少两个概率值中存在第二预设数量的小于预设阈值的概率值,则确定待识别语音文本的实际意图分类为其他业务场景的意图分类。
在一个实施例中,根据待识别语音文本获取第一文本特征向量,根据第一文本特征向量获取待识别语音文本的初步意图分类,包括:将待识别语音文本输入意图分类模型进行特征提取,得到第一文本特征向量;利用意图分类模型的激活函数,对第一文本特征向量进行函数运算,得到初步意图分类。
在一个实施例中,根据意图确定文本集获取第二文本特征向量集,包括:利用SVM分类器,对意图确定文本集进行分类,得到至少两个支持向量作为第二文本特征向量集。
根据本申请实施例的第二方面,提供了一种意图识别模型的训练方法,包括:根据训练文本获取第一训练文本特征向量,其中,训练文本标注有意图标签,意图标签包括预设业务场景的意图标签和其他业务场景的意图标签,其他业务场景为除预设业务场景以外的业务场景,预设业务场景的意图包括至少一个意图分类;根据每个意图分类获取意图确定文本集,根据意图确定文本集获取第二文本特征向量集,其中,意图确定文本集为预设业务场景的每个意图分类对应的文本集;将第一训练文本特征向量与第二文本特征向量集输入意图识别模型进行语义相似度计算,得到第一训练文本特征向量与第二文本特征向量集之间的文本距离;根据文本距离和训练文本对应的意图标签,计算损失函数值;根据损失函数值,更新意图识别模型的参数。
在一个实施例中,意图识别模型包括至少一个意图分类器,每个意图分类器对应预设业务场景的一个意图分类。
根据本申请实施例的第三方面,提供了一种意图识别装置,包括:第一获取模块,配置为根据待识别语音文本获取第一文本特征向量,根据第一文本特征向量获取待识别语音文本的初步意图分类,其中,初步意图分类为预设业务场景的意图分类;第二获取模块,配置为根据初步意图分类获取意图确定文本集,根据意图确定文本集获取第二文本特征向量集,其中,意图确定文本集为初步意图分类对应的文本集;第一确定模块,配置为确定第一文本特征向量与第二文本特征向量集之间的文本距离结果;第二确定模块,配置为基于文本距离结果,确定待识别语音文本的实际意图分类,其中,实际意图分类为初步意图分类或者除预设业务场景以外的其他业务场景的意图分类。
根据本申请实施例的第四方面,提供了一种电子设备,该电子设备包括:处理器;以及存储器,在存储器中存储有计算机程序指令,计算机程序指令在被处理器运行时使得处理器执行上述第一方面或第二方面所提及的方法。
根据本申请实施例的第五方面,提供了一种计算机可读存储介质,该存储介质上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行上述第一方面或第二方面所提及的方法。
本申请的实施例提供的一种意图识别方法,通过确定待识别语音文本的初步意图分类,能够得到该初步意图分类对应的意图确定文本集,并通过确定待识别语音文本对应的第一文本特征向量与意图确定文本集对应的第二文本特征向量集之间的文本距离结果,能够得到待识别语音文本与意图确定文本集之间的语义相似度,从而基于该文本距离结果能够确定待识别语音文本的实际意图分类,进而提高了意图识别的准确率。
附图说明
通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1是本申请一个实施例提供的意图识别方法的应用场景的系统架构示意图。
图2是本申请一个实施例提供的意图识别系统的框图。
图3是本申请一个实施例提供的意图识别方法的流程示意图。
图4是本申请一个实施例提供的意图分类模型的数据处理流程图。
图5是本申请一个实施例提供的意图识别方法的流程示意图。
图6是本申请一个实施例提供的意图识别方法的流程示意图。
图7是本申请一个实施例提供的意图识别方法的数据处理流程图。
图8是本申请一个实施例提供的意图识别模型的训练方法的流程示意图。
图9是本申请一个实施例提供的意图识别装置的框图。
图10是本申请一个实施例提供的意图识别模型的训练装置的框图。
图11是本申请一个实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
意图识别是客服机器人系统的关键环节,所以不管客户的提问是否在客服机器人所属的业务场景,均要求其能够对客户的提问进行准确地意图识别。客户的提问在客服机器人所属的业务场景之外可以理解为客户的提问在客服机器人的回答范围之外,那么客服机器人在判断客户的提问是否属于应该回答的范畴并不容易。通常情况下,通过在神经网络模型中添加其他业务场景的意图分类任务,以将这些提问确定为其他业务场景的意图分类,也就是说,当这些提问确定为其他业务场景的意图分类时,说明客户的提问属于客服机器人不应该回答的范畴。然而,相对于客服机器人所属的业务场景的意图分类,其他业务场景的意图分类的数量相当庞大,相应地,其他业务场景的意图分类下的训练数据也很难获得。
例如,对于外呼对话业务场景下的客服机器人,由于外呼对话业务场景的需求具有时效性和快速性的特点,所以很多客服机器人都是根据营销等场景即时定义的,也就是说,这些客服机器人仅仅为了解决某一个营销活动而设置,所以相较于单一的营销活动的业务场景的意图分类其他业务场景的意图分类的数量相当庞大,而且用户的提问千奇百怪,所以很难获得其他业务场景的意图分类下的有效的训练数据,因此,想要让神经网络模型学习到所有的其他业务场景的意图分类是无法实现的。具体而言,某一个其他业务场景的意图分类下的训练数据的样本空间仅为所有其他业务场景的意图分类下的训练数据的样本空间的很小一部分,也就是说,这个其他业务场景的意图分类下的训练数据只会让神经网络模型识别这部分训练数据对应的意图分类的问法,而绝大多数其他业务场景的意图分类是无法召回的。
此外,一般呼叫中心会有各个业务场景的客服机器人,机器人数量相当庞大,如果针对每个客服机器人,均通过添加其他业务场景的意图分类任务训练如上所述的神经网络模型,势必会增大训练成本以及人力成本。且对于一个特定业务场景的客服机器人,其他业务场景的意图分类大多没有历史数据可以参考,这会降低其他业务场景的意图分类的准确率。
除了通过上述提到方式识别其他业务场景的意图以外,还可以通过如下方式识别其他业务场景的意图。具体而言,利用预训练模型(Bidirectional EncoderRepresentations from Transformer,BERT),或者经典的文本分类模型(TextConvolutional Neural Network,TextCNN),作为外呼机器人的意图识别的基准模型,经过最后一步的Softmax,将输出转换为每个意图分类的Logits分数(0至1之间的数值)。然后通过人工设定一个阈值来过滤掉置信度不足的意图分类,这些意图分类确定为其他业务场景的意图分类。例如,设置阈值为0.5,以五分类模型为例,若一个文本经过五分类模型后得到的意图分类的Logits分数列表为[0.1,0.05,0.45,0.15,0.25],其最大值都没有超过0.5,则可以认为该文本的意图分类为其他业务场景的意图分类。
然而,五分类模型输出的Logits分数并不是相似得分,也就是说,并不是Logits分数越高就越相似,这只是五分类模型认为该文本应该分到哪个意图分类的得分归一化结果。由于每个新的客服机器人无法完全利用之前的学习经验,且人为设定的阈值太过随意,并不能准确地实现意图识别。
具体而言,对于不同的意图分类,设定的阈值理论上应该不相同,如果二分类的阈值设定为0.8,而二百分类的阈值也设定为0.8,那意图识别的效果将完全不同。即使分类任务均为二分类(或其他),不同模型的Logits分数差别也很大,这在自然语言处理(NaturalLanguage Processing,NLP)场景中非常明显,如果人为设定阈值,不同的模型将得到不同的意图识别结果,这也会降低意图识别的准确率。
为了解决上述问题,本申请的实施例提供了一种意图识别方法,通过确定待识别语音文本的初步意图分类,能够得到该初步意图分类对应的意图确定文本集,并通过确定待识别语音文本对应的第一文本特征向量与意图确定文本集对应的第二文本特征向量集之间的文本距离结果,能够得到待识别语音文本与意图确定文本集之间的语义相似度,从而基于该文本距离结果能够确定待识别语音文本的实际意图分类,进而提高了意图识别的准确率。
由于本申请实施例涉及神经网络方面的应用,为了便于理解,下面先对本申请实施例可能涉及的相关术语及神经网络等相关概念进行简单介绍。
神经网络是一种运算模型,由大量的节点(或称神经元)之间相互连接构成,每个节点对应一个策略函数,每两个节点间的连接代表一个对于通过该连接信号的加权值,称之为权重。神经网络一般包括多个神经网络层,上下网络层之间相互级联,第i个神经网络层的输出与第i+1个神经网络层的输入相连,第i+1个神经网络层的输出与第i+2个神经网络层的输入相连,以此类推。训练样本输入级联的神经网络层后,通过每个神经网络层输出一个输出结果,该输出结果作为下一个神经网络层的输入,由此,通过多个神经网络层计算获得输出,比较输出层的输出的预测结果与真正的目标值,再根据预测结果与目标值之间的差异情况来调整每一层的权重矩阵和策略函数,神经网络利用训练样本不断地经过上述调整过程,使得神经网络的权重等参数得到调整,直到神经网络输出的预测结果与真正的目标结果相符,该过程就被称为神经网络的训练过程。神经网络经过训练后,可得到神经网络模型。
在训练神经网络的过程中,因为希望神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断的调整,直到神经网络能够预测出真正想要的目标值或与真正想要的目标值非常接近的值。因此,可以采用损失函数(loss function)或目标函数(objectivefunction)比较预测值和目标值之间的差异,它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么神经网络的训练就变成了尽可能缩小这个loss的过程。
深度学习中的距离度量被用作评定数据之间的相似度指标,其包括欧氏距离,曼哈顿距离,夹角余弦距离,切比雪夫距离,汉明距离,闵可夫斯基距离,马氏距离等等。例如,欧氏距离通过衡量空间各点的绝对距离,来判断文本数据之间的语义相似度。再例如,余弦距离通过衡量空间向量的夹角,来判断文本数据之间的语义相似度。
下面结合图1详细介绍本申请实施例提及的意图识别方法的应用场景的系统架构。如图1所示,本申请实施例提供的应用场景涉及服务器140和多个终端设备110、120、130。其中,终端设备110、120、130具备麦克风,可以获取待识别语音。
终端设备110、120、130可以是手机、游戏主机、平板电脑、车载电脑等移动终端设备,或者,终端设备110、120、130也可以是个人计算机(Personal Computer,PC),比如膝上型便携计算机和台式计算机等等。本领域技术人员可以知晓,上述终端设备110、120、130的类型可以相同或者不同,其数量可以更多或更少。比如上述终端可以各为一个,或者上述终端为几十个或几百个,或者更多数量。本申请实施例对终端的数量和设备类型不加以限定。
终端设备110、120、130与服务器140之间通过通信网络相连。可选的,通信网络是有线网络或无线网络。可选的,服务器140是一台服务器,或者由若干台服务器组成,或者是一个云计算服务中心。
在一实施例中,终端设备110、120、130可以通过麦克风获取用户发出的待识别语音,并对待识别语音进行自动语音识别,以获得本申请中的待识别语音文本。
在一实施例中,服务器140接收终端设备110、120、130发送的待识别语音文本,然后服务器140进行如下操作:根据待识别语音文本获取第一文本特征向量,根据第一文本特征向量获取待识别语音文本的初步意图分类;根据初步意图分类获取意图确定文本集,根据意图确定文本集获取第二文本特征向量集;确定第一文本特征向量与第二文本特征向量集之间的文本距离结果;基于文本距离结果,确定待识别语音文本的实际意图分类。最后服务器140将待识别语音文本所属的实际意图分类发送给终端设备110、120、130,以便于用户获得该待识别语音文本所属的实际意图分类。
本申请的实施例提供的一种意图识别方法,通过确定待识别语音文本的初步意图分类,能够得到该初步意图分类对应的意图确定文本集,并通过确定待识别语音文本对应的第一文本特征向量与意图确定文本集对应的第二文本特征向量集之间的文本距离结果,能够得到待识别语音文本与意图确定文本集之间的语义相似度,从而基于该文本距离结果能够确定待识别语音文本的实际意图分类,进而提高了意图识别的准确率。。
下面结合图2详细介绍本申请实施例提及的意图识别系统的框图。如图2所示,利用接收模块210,接收用户输入的待识别语音;将待识别语音输入自动语音识别(AutomaticSpeech Recognition,ASR)模块220,以获得待识别语音文本;将待识别语音文本输入ASR后处理模块230,以获得ASR后处理后的待识别语音文本,例如,对待识别语音文本进行文本纠错等等;将ASR后处理后的待识别语音文本输入意图识别模块240,以获得待识别语音文本所属的实际意图分类;将该实际意图分类输入发送模块250,以向用户反馈该实际意图分类。
下面结合图3至图7详细介绍本申请实施例提及的意图识别方法。
图3是本申请一个实施例提供的意图识别方法的流程示意图。图3所述的方法由图1中提及的服务器140或其他类型的具有数据处理功能的电子设备执行。如图3所示,该方法包括如下步骤。
步骤S310,根据待识别语音文本获取第一文本特征向量,根据第一文本特征向量获取待识别语音文本的初步意图分类。
待识别语音文本可以为对用户输入的待识别语音进行自动语音识别后所得到的对应文本,自动语音识别的目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如,二进制编码或者字符序列等等。
在一示例中,将待识别语音文本输入基于机器学习或深度学习的意图分类模型中进行特征提取,得到第一文本特征向量。例如,将待识别语音文本输入意图分类模型中进行特征提取的过程如下,首先获得待识别语音文本的分类特征,再根据该分类特征,提取待识别语音文本的768维特征,再通过一个维度为768*768的全连接层,整合768维特征,得到(Batchsize,768)维的向量,最后对(Batchsize,768)维的向量进行归一化,得到该第一文本特征向量。
在一示例中,利用意图分类模型的激活函数,例如,Softmax激活函数,对第一文本特征向量进行函数运算,得到初步意图分类。该初步意图分类为预设业务场景的意图分类。预设业务场景的意图分类是指业务意图分类,业务意图分类就是指针对用户输入的业务问题,客服机器人能够对其进行回答的意图分类。也就是说,该业务问题在客服机器人的回答范围之内。
例如,该预设业务场景可以为机票相关业务场景,则与其对应的意图分类为“订北京到上海的机票”或者“查询北京到上海的航班时刻表”等等。又如,贷款相关业务场景,则与其对应的意图分类为“有哪些贷款产品”或者“哪些银行可以贷款”。也就是说,每个预设业务场景均对应至少一个意图分类,而初步意图分类则为预设业务场景下的至少一个意图分类中的一个意图分类。例如,待识别语音文本为帮我查一下北京到上海的航班时刻表,则预设业务场景确定为机票相关业务场景,初步意图分类为查询北京到上海的航班时刻表。
该意图分类模型可以为预训练模型。该预训练模型可以为BERT(BidirectionalEncoder Representations from Transformer,基于Transformer的双向编码器模型),其利用transformer的自注意力机制,在识别待识别语音文本中的意图时能够考虑待识别语音文本中的上下文含义,因此在对语境中的意图进行特征抽取时有着很好的效果。该预训练模型也可以为RoBERTa(Robustly optimized BERT approach),其建立在BERT的语言掩蔽策略的基础上,修改BERT中的关键超参数,包括删除BERT的下一个句子训练前目标,以及使用更大的Batchsize和学习率进行训练。RoBERTa也接受了比BERT多一个数量级的训练,时间更长,这使得RoBERTa表示能够比BERT更好地推广到下游任务。本申请实施例并不具体限定预训练模型的类型,本领域技术人员可以根据实际需求,进行不同的选择。
该意图分类模型也可以由上述预训练模型和分类器构成。该分类器用于对待识别语音文本进行意图分类。该分类器可以为多层感知机(Multilayer Perceptron,MLP),MLP的基本结构包括三层,分别为输入层、隐藏层和输出层,隐藏层中的神经元和输入层中各个输入完全连接,输出层中的神经元和隐藏层中的各个神经元也完全连接,也就是说,MLP中的不同层之间是全连接的。本申请实施例对分类器的具体类型不做限定,本领域技术人员可以根据实际需求,进行不同的选择。
图4示出了利用预训练模型和分类器获取初步意图分类的过程。如图4所示,预训练模型和分类器串行连接,将待识别语音文本输入串行在一起的预训练模型和分类器中,可以得到第一文本特征向量,再利用Softmax激活函数,对第一文本特征向量进行函数运算,得到初步意图分类。在预训练模型的基础上训练分类器实际上就是在对待识别语音文本的意图识别过程进行微调,以获得更加准确的初步意图分类。
该意图分类模型是基于预设业务场景进行训练得到的,也就是说,意图分类模型能够将待识别语音文本确定为预设业务场景中的一个意图分类。例如,该预设业务场景为外呼对话业务场景,由于外呼对话业务场景下的训练数据不足,所以可以先通过数据增强的方法,丰富训练数据,从而提高意图分类模型的意图识别准确率。一般数据增强的方法可采用EDA和回译的方法,本申请实施例对此并不做具体限定。
步骤S320,根据初步意图分类获取意图确定文本集,根据意图确定文本集获取第二文本特征向量集。
不管待识别语音文本属于预设业务场景下的文本还是属于其他业务场景下的文本,通过该意图分类模型均可以得到一个初步意图分类,也就是说,这个初步意图分类并不一定能够准确地表示待识别语音文本的实际意图分类。因此,为了能够更加准确地对待识别语音文本进行意图分类,可以在初步意图分类下获取意图确定文本集,以意图确定文本集为基准,判断待识别语音文本是否真的属于该初步意图分类。
该意图确定文本集确定为初步意图分类对应的文本集。例如,初步意图分类为查询北京到上海的航班时刻表,那么意图确定文本集则为“航班号为MF3023的飞机将在07:00由首都国际机场T2起飞,在09:15抵达虹桥国际机场T2”、“航班号为MU4977的飞机将在08:30由大兴国际机场起飞,在10:50抵达浦东国际机场T1”、“航班号为MU5196的飞机将在12:55由大兴国际机场起飞,在15:25抵达浦东国际机场T1”等等。本申请实施例并不具体限定意图确定文本集中的意图确定文本的个数,意图确定文本的个数越多,越能够准确地确定待识别语音文本的实际意图分类。
意图确定文本集中的意图确定文本并不是都能够准确地表示初步意图分类,也就是说,初步意图分类下的所有意图确定文本可能是利用数据增强后所形成的大量数据,且这些数据中的部分数据并不一定具有代表性。例如,当意图确定文本为上海到北京的航班号为MF3023的飞机已经起飞,那么这个意图确定文本并不能够很好地表示查询北京到上海的航班时刻表这个初步意图分类,所以以这个意图确定文本为基准,并不能够准确地判断待识别语音文本是否真的属于该初步意图分类,且会降低推理速度。
因此,考虑到推理速度和鲁棒性,仅获取初步意图分类下的具有代表性的意图确定文本对应的第二文本特征向量。
具体而言,首先利用训练好的SVM分类器,对至少两个意图确定文本进行特征提取,得到多个特征向量,然后从多个特征向量中确定距该SVM分类器的分离超平面预设距离的至少两个支持向量,最后确定至少两个支持向量为第二文本特征向量集。因此,通过训练好的SVM分类器会得到n个支持向量(n大于或等于2)作为初步意图分类的代表。
步骤S330,确定第一文本特征向量与第二文本特征向量集之间的文本距离结果。
考虑到推理速度和鲁棒性,并不计算意图确定文本集中的所有意图确定文本的第二文本特征向量与第一文本特征向量之间的文本距离结果,而是通过训练好的SVM分类器,得到初步意图分类下的n个支持向量,再计算n个支持向量与第一文本特征向量之间的文本距离结果。
文本距离结果可以是距离本身,也可以是以其他形式表示的距离,例如,与距离对应的概率值,本申请实施例对此并不做具体限定。需要说明的是,距离并不一定代表两个点之间的绝对距离(例如,欧氏距离),也可以代表两个向量之间的夹角(例如,夹角余弦距离),还可以代表两个字符串对应位置的不同字符的个数(例如,汉明距离),本申请实施例对此并不做具体限定,距离的具体实现形式可以根据距离度量的不同而不同。
通过确定第一文本特征向量与第二文本特征向量之间的文本距离结果,能够判断第一文本特征向量与第二文本特征向量之间的语义相似度。例如,距离较大时,则说明第一文本特征向量与第二文本特征向量之间的语义相似度较低;距离较小时,则说明第一文本特征向量与第二文本特征向量之间的语义相似度较高。
步骤S340,基于文本距离结果,确定待识别语音文本的实际意图分类。
实际意图分类可以为步骤S310中所述的初步意图分类,也可以为除预设业务场景以外的其他业务场景的意图分类。其他业务场景的意图分类就是指针对用户输入的业务问题,客服机器人不能够对其进行回答的意图分类。也就是说,该业务问题在客服机器人的回答范围之外。例如,预设业务场景为机票相关的业务场景,用户输入的业务问题为“我的贷款余额为多少”,那么该预设业务场景下的客服机器人不能够对贷款相关业务场景下的业务问题进行回答,因此,贷款相关业务场景的意图分类就是其他业务场景的意图分类。
通过文本距离结果能够判断第一文本特征向量与第二文本特征向量之间的语义相似度,当第一文本特征向量与第二文本特征向量之间的语义相似度较高时,则说明待识别语音文本的意图分类与意图确定文本集的意图分类相同,确定待识别语音文本的实际意图分类为初步意图分类;当第一文本特征向量与第二文本特征向量之间的语义相似度较低时,则说明待识别语音文本的意图分类与意图确定文本集的意图分类不同,确定待识别语音文本的实际意图分类为其他业务场景的意图分类。
因此,通过判断待识别语音文本的意图分类与意图确定文本集的意图分类是否相同,就能够确定待识别语音文本的实际意图分类。
针对文本距离结果,也可以将步骤S310中所述的预设业务场景的意图分类称之为域内意图分类,将其他业务场景的意图分类称之为域外意图分类。域外和域内的划分是针对一个阈值而言,将距离与阈值进行比较,能够得到域内和域外。例如,在距离大于或等于阈值时,待识别语音文本的意图分类称之为域外意图分类,在距离小于阈值时,待识别语音文本的意图分类称之为域内意图分类。
同理,高语义相似度和低语义相似度的划分也是针对一个阈值而言,将语义相似度与阈值进行比较,能够得到高语义相似度和低语义相似度。例如,语义相似度大于或等于阈值,则说明语义相似度较高,语义相似度小于阈值,则说明语义相似度较低。
本申请实施例的意图识别方法无需单独执行其他业务场景的意图分类任务,就能够确定待识别语音文本的实际意图分类,也就是说,在将待识别语音文本输入意图识别模型后,无需意图识别模型预测待识别语音文本的实际意图分类具体为其他业务场景中的哪个意图分类,而只是确定待识别语音文本的实际意图分类为其他业务场景的意图分类即可,因此,意图识别的准确率更高。此外,相较于传统的人工设定阈值,以根据Logits分数来判断待识别语音文本是否为其他业务场景的意图分类的方法,本申请实施例的意图识别方法不掺杂人为的主观因素,因此,意图识别的准确率更高。
本申请的实施例提供的一种意图识别方法,通过确定待识别语音文本的初步意图分类,能够得到该初步意图分类对应的意图确定文本集,并通过确定待识别语音文本对应的第一文本特征向量与意图确定文本集对应的第二文本特征向量集之间的文本距离结果,能够得到待识别语音文本与意图确定文本集之间的语义相似度,从而基于该文本距离结果能够确定待识别语音文本的实际意图分类,进而提高了意图识别的准确率。
在本申请一个实施例中,在第二文本特征向量集包括至少两个第二文本特征向量时,如图5所示,步骤S330包括如下步骤。
步骤S510,将第一文本特征向量与每个第二文本特征向量输入意图识别模型进行语义相似度计算,得到第一文本特征向量与每个第二文本特征向量之间的文本距离。
对于意图识别模型,将Softmax头换为基于距离的分类头,这样将第一文本特征向量与第二文本特征向量输入意图识别模型后,就能够获得第一文本特征向量与第二文本特征向量之间的文本距离。
在一示例中,意图识别模型包括至少一个意图分类器,每个意图分类器对应预设业务场景的一个意图分类。也就是说,如果预设业务场景包含三个意图分类,分别为第一意图分类,第二意图分类以及上述步骤S310中的初步意图分类,那么意图识别模型包括第一意图分类对应的第一意图分离器,第二意图分类对应的第二意图分离器以及初步意图分类对应的意图分离器。
由于在步骤S310中已经确定待识别语音文本属于预设业务场景中的初步意图分类,因此,将第一文本特征向量与每个第二文本特征向量均输入初步意图分类对应的意图分类器中进行语义相似度计算,能够得到第一文本特征向量与每个第二文本特征向量之间的文本距离。
步骤S520,利用意图识别模型的激活函数,对文本距离进行函数运算,得到文本距离对应的概率值作为文本距离结果。
在计算得到文本距离后,将文本距离输入意图识别模型的激活函数中进行函数运算,能够得到文本距离对应的概率值。
当文本距离为欧氏距离时,一般情况下,欧氏距离对应的概率值可以通过如下表达式获得:
Pc(fx)=nmaxδ(-d(fx,fn))
其中,fx表示第一文本特征向量经编码后的特征,fn表示第二文本特征向量经编码后的特征,d(fx,fn)表示欧式距离,n表示第二文本特征向量的个数,δ表示激活函数。
在一示例中,意图识别模型的激活函数可以为基于高斯核的sigmoid函数。当文本距离为欧氏距离时,基于高斯核的sigmoid函数的表达式如下:
其中,fx表示第一文本特征向量经编码后的特征,fn表示第二文本特征向量经编码后的特征,‖fx-fn‖表示欧式距离,n表示第二文本特征向量的个数,Rc表示拒绝半径参数,用于区分待识别语音文本的意图分类。利用高斯核的sigmoid函数可以获得基于拒绝半径参数Rc的[0-1]的拒绝概率值Pc。
意图识别模型中的每个意图分类器均设置有拒绝半径参数,在训练意图识别模型时,每个意图分类器的拒绝半径参数在每一轮迭代训练中均得到更新。
具体地,利用意图识别模型的激活函数对欧氏距离和初步意图分类对应的意图分类器的拒绝半径参数进行函数运算,得到文本距离对应的概率值。
上述步骤S340中提及的将距离与阈值进行比较,阈值可以看作为本实施例中的拒绝半径参数,在欧式距离大于或等于拒绝半径参数时,待识别语音文本的意图分类称之为域外意图分类,在欧式距离小于拒绝半径参数时,待识别语音文本的意图分类称之为域内意图分类。也就是说,以拒绝半径为半径画圆,位于圆以内的待识别语音文本的意图分类为域内意图分类,位于圆以外的待识别语音文本的意图分类为域外意图分类。因此,通过拒绝半径参数,能够对待识别语音文本是属于域外意图分类还是属于域内意图分类进行区分。
在本申请一个实施例中,,如图6所示,步骤S340包括如下步骤:
步骤S610,若至少两个概率值中存在第一预设数量的大于或等于预设阈值的概率值,则确定待识别语音文本的实际意图分类为初步意图分类;
步骤S620,若至少两个概率值中存在第二预设数量的小于预设阈值的概率值,则确定待识别语音文本的实际意图分类为其他业务场景的意图分类。
在第二文本特征向量集包括至少两个第二文本特征向量时,文本距离结果包括与至少两个第二文本特征向量分别对应的至少两个概率值。
当文本距离为欧式距离时,预设阈值的大小可以根据公式 中的拒绝半径参数来确定,在第一文本特征向量与第二文本特征向量之间的欧式距离等于拒绝半径参数时,能够得到预设阈值,即,预设阈值等于假设拒绝半径参数为5,那么预设阈值就可以设置为
通过公式可以计算得到每个欧氏距离对应的概率值。例如,假设拒绝半径参数为5,欧式距离值为9,与之对应的概率值为欧式距离值为3,与之对应的概率值为也就是说,当欧式距离大于或等于5时,待识别语音文本的意图分类称之为域外意图分类,与欧式距离对应的概率值均小于当欧式距离小于5时,待识别语音文本的意图分类称之为域内意图分类,与欧式距离对应的概率值均大于或等于
但是需要说明的是,本申请实施例并不限定预设阈值的具体取值,可以通过上述方式来获取预设阈值的具体取值,也可以根据经验来获取预设阈值的具体取值,本领域技术人员可以根据实际需求进行不同的选择。
大于或等于预设阈值的概率值就是指大于或等于拒绝半径参数的欧式距离值对应的概率值。例如,大于或等于预设阈值0.6的概率值就是指小于拒绝半径参数5的欧式距离值3对应的概率值0.8。同理,小于预设阈值的概率值就是指小于拒绝半径参数的欧式距离值对应的概率值。例如,小于预设阈值0.6的概率值就是指大于拒绝半径参数5的欧式距离值9对应的概率值0.2。
本申请实施例并不具体限定第一预设数量的具体取值,例如,第一预设数量可以为全部,那么只要至少两个概率值中全部为大于或等于预设阈值的概率值,就说明待识别语音文本的意图分类确实为域内意图分类,通过意图分类模型所获得的初步意图分类是正确的,初步意图分类有效,那么可以确定待识别语音文本的实际意图分类为初步意图分类。
本申请实施例并不具体限定第二预设数量的具体取值,例如,第二预设数量可以为全部,那么当至少两个概率值中全部为小于预设阈值的概率值,就说明待识别语音文本的意图分类应该为域外意图分类,通过意图分类模型所获得的初步意图分类是不正确的,初步意图分类无效,那么可以确定待识别语音文本的实际意图分类为其他业务场景的意图分类。
为了使得更少的待识别语音文本的意图分类被误判为其他业务场景的意图分类,可以将第一预设数量增加,第二预设数量减少。
在本申请一实施例中,当用户发起一个待识别语音后,可以向用户反馈一个明确的应答。因此,在确定了待识别语音文本的实际意图分类后,还可以针对该实际意图分类,向用户发送一个应答内容。
在一示例中,在确定待识别语音文本的实际意图分类为初步意图分类时,所述方法还包括:确定待识别语音文本对应的应答内容为初步意图分类下的应答内容。
当待识别语音文本的实际意图分类确定为初步意图分类时,反馈给用户的应答内容可以直接为初步意图分类下的应答内容。
在另一示例中,在确定待识别语音文本的实际意图分类为其他业务场景的意图分类时,所述方法还包括:确定待识别语音文本对应的应答内容为无法应答。
当待识别语音文本的实际意图分类确定为其他业务场景的意图分类时,说明通过意图分类模型所获得的初步意图分类是不正确的,初步意图分类下的应答内容不应该反馈给用户,那么将无法应答反馈给用户即可,从而能够避免“不懂装懂”的情况出现。
例如,当预设业务场景为机票相关业务场景,且待识别语音文本为请告诉我北京飞往上海的机票价格时,待识别语音文本的初步意图分类则为查询机票价格,与之对应的应答内容为北京飞往上海的机票价格为900元。例如,当预设业务场景为机票相关业务场景,且待识别语音文本为我的贷款余额还剩多少时,待识别语音文本的实际意图分类则为其他业务场景的意图分类,与之对应的应答内容为无法应答。
下面结合图7详细介绍本申请实施例提及的意图识别方法的整体流程。如图7所示,该意图识别方法包括如下内容。
将待识别语音文本输入由意图分类模型中,输出第一文本特征向量,该第一文本特征向量经过Softmax后,输出初步意图分类,至此第一阶段的预测结果完成。将意图确定文本集输入SVM分类器中,输出第二文本特征向量,至此第二阶段的预测结果完成。将第一文本特征向量和第二文本特征向量输入意图识别模型中,输出文本距离结果,至此第三阶段的预测结果完成。最后,将该文本距离结果和初步意图分类输入判断模块,输出待识别语音文本的实际意图分类。
由于意图识别模型的输入之一为意图分类模型输出的第一文本特征向量,因此意图识别模型在进行意图识别时所花费的时间和单一的意图分类模型几乎一致。也就是说,由于意图识别过程耗时主要集中在预训练模型的编码阶段,而预训练模型的编码阶段所得到的结果(即,第一文本特征向量)是意图识别模型和意图分类模型公用的,所以即使增加意图识别模型,也基本不会增加意图识别时所花费的时间。
下面结合图8详细介绍本申请实施例提及的意图识别模型的训练方法。图8所述的方法由图1中提及的服务器140或其他类型的具有数据处理功能的电子设备执行。如图8所示,本申请实施例提供的意图识别模型的训练方法包括如下步骤。
需要说明的是,以下意图识别模型的训练方法相关的实施例所提及的部分内容与意图识别方法相关的实施例所提及的内容相同,下面着重叙述二者的不同之处,相同之处不再赘述,具体请参见意图识别方法相关的实施例。
步骤S810,根据训练文本获取第一训练文本特征向量。
训练文本标注有意图标签,意图标签包括预设业务场景的意图标签和其他业务场景的意图标签,其他业务场景为除预设业务场景以外的业务场景。预设业务场景包括至少一个意图分类。
意图识别模型是针对预设业务场景而训练的,意图标签具有训练文本的真实意图分类。例如,预设业务场景为与机票相关的业务场景,当训练文本为请告诉我北京飞往上海的机票价格时,训练文本的真实意图分类则为查询机票价格,查询机票价格属于机票相关的业务场景,那么该训练文本标注的预设业务场景的意图标签则采用1来表示;而当训练文本为我的贷款余额还剩多少时,训练文本的真实意图分类并不属于机票相关的业务场景,而是属于其他业务场景,那么该训练文本标注的其他业务场景的意图标签则采用0来表示。
在一示例中,将训练样本输入意图分类模型进行特征提取,以获得第一训练文本特征向量。该第一训练文本特征向量与意图识别方法相关的实施例所提及的第一文本特征向量相同,在此不再赘述。
步骤S820,根据每个意图分类获取意图确定文本集,根据意图确定文本集获取第二文本特征向量集。
在一示例中,预设业务场景包括至少一个意图分类,在每个意图分类下获取意图确定文本集。该第二文本特征向量集与意图识别方法相关的实施例所提及的第二文本特征向量集相同,在此不再赘述。
步骤S830,将第一训练文本特征向量与第二文本特征向量集输入意图识别模型进行语义相似度计算,得到第一训练文本特征向量与第二文本特征向量集之间的文本距离。
在意图识别模型包括至少一个意图分类器,每个意图分类器对应预设业务场景的一个意图分类。随着训练文本的意图分类的不同,第一训练文本特征向量与第二文本特征向量集输入的意图分类器也不相同。
在一示例中,在确定训练文本的意图分类为至少一个意图分类中的第一意图分类情况下,训练文本对应的意图标签为预设业务场景的意图标签,第二文本特征向量集通过第一意图分类下的意图确定文本集获得,第一意图分类对应意图识别模型中的第一意图分类器。将第一训练文本特征向量与第一意图分类对应的第二文本特征向量集输入第一意图分类器进行语义相似度计算,得到文本距离。
在另一示例中,在确定训练文本的意图分类为至少一个意图分类中的第二意图分类情况下,训练文本对应的意图标签为预设业务场景的意图标签,第二文本特征向量集通过第二意图分类下的意图确定文本集获得,第二意图分类对应意图识别模型中的第二意图分类器。将第一训练文本特征向量与第二意图分类对应的第二文本特征向量集输入第二意图分类器进行语义相似度计算,得到文本距离。
在另一示例中,在确定训练文本的意图分类为其他业务场景的意图分类的情况下,训练文本对应的意图标签为其他业务场景的意图标签。将第一训练文本特征向量与预设业务场景的每个意图分类对应的第二文本特征向量集输入对应的意图分类器进行语义相似度计算,得到文本距离。
也就是说,如果训练文本的意图分类为至少一个意图分类中的一个意图分类,则第一训练文本特征向量与第二文本特征向量集只输入与训练文本的意图分类对应的意图分类器中。如果训练文本的意图分类为其他业务场景的意图分类,则第一训练文本特征向量与第二文本特征向量集将分别输入至少一个意图分类中的每个意图分类对应的意图分类器中。
步骤S840,根据文本距离和训练文本对应的意图标签,计算损失函数值。
在一示例中,利用意图识别模型的激活函数,对文本距离进行函数运算,得到文本距离对应的概率值。
如上述步骤S520的实施例所述,每个意图分类器设置有拒绝半径参数,拒绝半径参数是意图识别模型需要学习的参数。以拒绝半径为半径画圆,位于圆以内的训练文本属于域内意图分类,位于圆以外的训练文本属于域外意图分类。因此,通过增加拒绝半径参数,能够提升训练文本的意图分类复杂度,从而提高了意图识别模型的意图识别准确率。
在一示例中,根据概率值和训练文本对应的意图标签,计算损失函数值。
训练文本标注的预设业务场景的意图标签采用1表示;训练文本标注的其他业务场景的意图标签采用0表示,因此,通过概率值分别与0或者1之间的差值,能够计算得到损失函数值。
例如,训练文本为请告诉我北京飞往上海的机票价格时,则训练文本标注的意图标签为预设业务场景的意图标签,用1表示。假设拒绝半径参数Rc为5,第一训练文本特征向量与一个第二文本特征向量之间的欧式距离值为9,与之对应的概率值为0.2,那么根据1和0.2之间的差值0.8,可以计算得到损失函数值;第一训练文本特征向量与另一个第二文本特征向量之间的欧式距离值为3,与之对应的概率值为0.8,那么根据1和0.8之间的差值0.2,可以计算得到损失函数值。
再例如,训练文本为我的贷款余额还剩多少时,则训练文本标注的意图标签为其他业务场景的意图标签,用0表示。假设拒绝半径参数Rc为5,第一训练文本特征向量与一个第二文本特征向量之间的欧式距离值为3,与之对应的概率值为0.8,那么根据0和0.8之间的差值0.8,可以计算得到损失函数值;第一训练文本特征向量与另一个第二训练文本特征向量之间的欧式距离值为9,与之对应的概率值为0.2,那么根据0和0.2之间的差值0.2,可以计算得到损失函数值。
在一示例中,采用二分类交叉熵损失(Binary Cross Entropy,BCE)计算第一损失函数值,即,通过如下公式计算得到第一损失函数值。
其中,Pc为通过上述公式计算得到的概率值,y为意图标签,采用1或者0来表示。
步骤S850,根据损失函数值,更新意图识别模型的参数。
在一示例中,Rc是意图识别模型需要学习的参数,因此,可以将损失函数值进行梯度反传,以更新意图识别模型中的拒绝半径参数。除此之外,还可以更新意图识别模型中的权重,偏值等,本申请实施例对此不做具体限定。
众所周知,确定其他业务场景的意图分类是比较困难的,因此,通过提高意图识别模型中的拒绝半径参数的具体取值,能够使得更少的训练文本的意图分类被误判为其他业务场景的意图分类,例如,拒绝半径参数Rc为5,如果第一训练文本特征新来的与第二文本特征向量之间的欧氏距离为5.5,那训练文本的意图分类将会被学习为其他业务场景的意图分类,而实际上训练文本的意图分类为预设业务场景的意图分类,而如果将拒绝半径参数Rc的具体取值提高为6,该训练文本就会被学习为预设业务场景的意图分类。因此,通过不断地对拒绝半径参数进行更新,以提高拒绝半径参数的具体取值,能够得到一个最优的拒绝半径参数,以更好地区分训练文本所属的意图分类,从而使得对其他业务场景的意图的识别准确率更高。在本申请实施例中,拒绝半径参数的确定不掺杂人为的主观因素,而是意图识别模型在不断地迭代训练中得到的,因此,意图识别模型的意图识别的准确率更高。
在本申请实施例中,如果训练文本的意图分类为其他业务场景的意图分类,将训练文本输入意图识别模型后,无需意图识别模型预测训练文本的意图分类具体为其他业务场景中的哪个意图分类,而只是确定训练文本的意图分类为其他业务场景的意图分类即可,因此,在进行标注时不需要具体到训练文本为其他业务场景的哪个意图分类,而只将训练文本泛泛地标注为其他业务场景的意图分类即可,从而解决了其他业务场景的意图分类下的训练数据不易获得的问题,同时也节省了标注所产生的人力成本。此外,意图识别模型不需要额外执行其他业务场景的意图分类任务,因此,即使神经网络模型无法学习到所有的其他业务场景的意图分类,也可以准确地将训练文本的意图分类确定为其他业务场景的意图分类。
上文结合图2至图8,详细描述了本申请的方法实施例,下面结合图9和图10,详细描述本申请的装置实施例。应理解,方法实施例的描述与装置实施例的描述相互对应,因此,未详细描述的部分可以参见前面方法实施例。
图9是本申请实施例所提供的意图识别装置900的示意性结构图。如图9所示,图10的装置1000可以包括:第一获取模块910、第二获取模块920、第一确定模型930和第二确定模块940。下面对这些模块进行详细介绍。
第一获取模块910配置为根据待识别语音文本获取第一文本特征向量,根据第一文本特征向量获取待识别语音文本的初步意图分类,其中,初步意图分类为预设业务场景的意图分类。
第二获取模块920配置为根据初步意图分类获取意图确定文本集,根据意图确定文本集获取第二文本特征向量集,其中,意图确定文本集为初步意图分类对应的文本集。
第一确定模块930配置为确定第一文本特征向量与第二文本特征向量集之间的文本距离结果。
第二确定模块940配置为基于文本距离结果,确定待识别语音文本的实际意图分类,其中,实际意图分类为初步意图分类或者除预设业务场景以外的其他业务场景的意图分类。
在本申请一实施例中,第二文本特征向量集包括至少两个第二文本特征向量,第一确定模块930进一步配置为:将第一文本特征向量与每个第二文本特征向量输入意图识别模型进行语义相似度计算,得到第一文本特征向量与每个第二文本特征向量之间的文本距离;利用意图识别模型的激活函数,对文本距离进行函数运算,得到文本距离对应的概率值作为文本距离结果。
在本申请一实施例中,意图识别模型包括至少一个意图分类器,每个意图分类器对应预设业务场景的一个意图分类,第一确定模块930在将第一文本特征向量与每个第二文本特征向量输入意图识别模型进行语义相似度计算,得到第一文本特征向量与每个第二文本特征向量之间的文本距离时,进一步配置为:将第一文本特征向量与每个第二文本特征向量输入初步意图分类对应的意图分类器中进行语义相似度计算,得到第一文本特征向量与每个第二文本特征向量之间的文本距离。
在本申请一实施例中,每个意图分类器设置有拒绝半径参数,拒绝半径参数用于区分待识别语音文本的意图分类,在文本距离包括欧氏距离的情况下,第一确定模块930在利用意图识别模型的激活函数,对文本距离进行函数运算,得到文本距离对应的概率值作为文本距离结果时,进一步配置为:利用意图识别模型的激活函数对欧氏距离和初步意图分类对应的意图分类器的拒绝半径参数进行函数运算,得到文本距离对应的概率值作为文本距离结果。
在本申请一实施例中,第二文本特征向量集包括至少两个第二文本特征向量,文本距离结果包括与至少两个第二文本特征向量分别对应的至少两个概率值,第二确定模块940进一步配置为:若至少两个概率值中存在第一预设数量的大于或等于预设阈值的概率值,则确定待识别语音文本的实际意图分类为初步意图分类;若至少两个概率值中存在第二预设数量的小于预设阈值的概率值,则确定待识别语音文本的实际意图分类为其他业务场景的意图分类。
在本申请一实施例中,第一获取模块910进一步配置为:将待识别语音文本输入意图分类模型进行特征提取,得到第一文本特征向量;利用意图分类模型的激活函数,对第一文本特征向量进行函数运算,得到初步意图分类。
在本申请一实施例中,第二获取模块920在根据意图确定文本集获取第二文本特征向量集时,进一步配置为:利用SVM分类器,对意图确定文本集进行分类,得到至少两个支持向量作为第二文本特征向量集。。
图10是本申请实施例所提供的意图识别模型的训练装置1000的示意性结构图。如图10所示,图10的训练装置1000可以包括:第三获取模块1010、第四获取模块1020和训练模块1030。下面对这些模块进行详细介绍。
第三获取模块1010配置为根据训练文本获取第一训练文本特征向量,其中,训练文本标注有意图标签,意图标签包括预设业务场景的意图标签和其他业务场景的意图标签,其他业务场景为除预设业务场景以外的业务场景,预设业务场景的意图包括至少一个意图分类。
第四获取模块1020配置为根据每个意图分类获取意图确定文本集,根据意图确定文本集获取第二文本特征向量集,其中,意图确定文本集为预设业务场景的每个意图分类对应的文本集。
训练模块1030配置为将第一训练文本特征向量与第二文本特征向量集输入意图识别模型进行语义相似度计算,得到第一训练文本特征向量与第二文本特征向量集之间的文本距离;根据文本距离和训练文本对应的意图标签,计算损失函数值;根据损失函数值,更新意图识别模型的参数。
在本申请一实施例中,意图识别模型包括至少一个意图分类器,每个意图分类器对应预设业务场景的一个意图分类。
图11是本申请一个实施例提供的电子设备的结构示意图。图11所示的电子设备1100可以包括存储器1110和处理器1120。存储器1110可用于存储可执行代码。处理器1120可用于执行存储器1110中存储的可执行代码,以实现前文描述的各个方法中的步骤。在一些实施例中,该电子设备1100还可以包括网络接口1130,处理器1100与外部设备的数据交换可以通过该网络接口1130实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其他任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital Subscriber Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(Digital Video Disc,DVD))、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
本领域普通技术人员可以意识到,结合本申请实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种意图识别方法,其特征在于,包括:
根据待识别语音文本获取第一文本特征向量,根据所述第一文本特征向量获取所述待识别语音文本的初步意图分类,其中,所述初步意图分类为预设业务场景的意图分类;
根据所述初步意图分类获取意图确定文本集,根据所述意图确定文本集获取第二文本特征向量集,其中,所述意图确定文本集为所述初步意图分类对应的文本集;
确定所述第一文本特征向量与所述第二文本特征向量集之间的文本距离结果;
基于所述文本距离结果,确定所述待识别语音文本的实际意图分类,其中,所述实际意图分类为所述初步意图分类或者除所述预设业务场景以外的其他业务场景的意图分类。
2.根据权利要求1所述的方法,其特征在于,所述第二文本特征向量集包括至少两个第二文本特征向量,所述确定所述第一文本特征向量与所述第二文本特征向量集之间的文本距离结果,包括:
将所述第一文本特征向量与每个第二文本特征向量输入意图识别模型进行语义相似度计算,得到所述第一文本特征向量与每个第二文本特征向量之间的文本距离;
利用所述意图识别模型的激活函数,对所述文本距离进行函数运算,得到所述文本距离对应的概率值作为所述文本距离结果。
3.根据权利要求2所述的方法,其特征在于,所述意图识别模型包括至少一个意图分类器,每个意图分类器对应所述预设业务场景的一个意图分类,
其中,所述将所述第一文本特征向量与每个第二文本特征向量输入意图识别模型进行语义相似度计算,得到所述第一文本特征向量与每个第二文本特征向量之间的文本距离,包括:
将所述第一文本特征向量与每个第二文本特征向量输入所述初步意图分类对应的意图分类器中进行语义相似度计算,得到所述第一文本特征向量与每个第二文本特征向量之间的文本距离。
4.根据权利要求3所述的方法,其特征在于,每个意图分类器设置有拒绝半径参数,所述拒绝半径参数用于区分所述待识别语音文本的意图分类,其中,在所述文本距离包括欧氏距离的情况下,所述利用所述意图识别模型的激活函数,对所述文本距离进行函数运算,得到所述文本距离对应的概率值作为所述文本距离结果,包括:
利用所述意图识别模型的激活函数对所述欧氏距离和所述初步意图分类对应的意图分类器的拒绝半径参数进行函数运算,得到所述文本距离对应的概率值作为所述文本距离结果。
5.根据权利要求1所述的方法,其特征在于,所述第二文本特征向量集包括至少两个第二文本特征向量,所述文本距离结果包括与所述至少两个第二文本特征向量分别对应的至少两个概率值,
其中,所述基于所述文本距离结果,确定所述待识别语音文本的实际意图分类,包括:
若所述至少两个概率值中存在第一预设数量的大于或等于预设阈值的概率值,则确定所述待识别语音文本的实际意图分类为所述初步意图分类;
若所述至少两个概率值中存在第二预设数量的小于所述预设阈值的概率值,则确定所述待识别语音文本的实际意图分类为所述其他业务场景的意图分类。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述根据待识别语音文本获取第一文本特征向量,根据所述第一文本特征向量获取所述待识别语音文本的初步意图分类,包括:
将所述待识别语音文本输入意图分类模型进行特征提取,得到所述第一文本特征向量;
利用所述意图分类模型的激活函数,对所述第一文本特征向量进行函数运算,得到所述初步意图分类。
7.根据权利要求1至5中任一项所述的方法,其特征在于,所述根据所述意图确定文本集获取第二文本特征向量集,包括:
利用SVM分类器,对所述意图确定文本集进行分类,得到至少两个支持向量作为所述第二文本特征向量集。
8.一种意图识别模型的训练方法,其特征在于,包括:
根据训练文本获取第一训练文本特征向量,其中,所述训练文本标注有意图标签,所述意图标签包括预设业务场景的意图标签和其他业务场景的意图标签,所述其他业务场景为除所述预设业务场景以外的业务场景,所述预设业务场景的意图包括至少一个意图分类;
根据每个意图分类获取意图确定文本集,根据所述意图确定文本集获取第二文本特征向量集,其中,所述意图确定文本集为所述预设业务场景的每个意图分类对应的文本集;
将所述第一训练文本特征向量与所述第二文本特征向量集输入所述意图识别模型进行语义相似度计算,得到所述第一训练文本特征向量与所述第二文本特征向量集之间的文本距离;
根据所述文本距离和所述训练文本对应的意图标签,计算损失函数值;
根据所述损失函数值,更新所述意图识别模型的参数。
9.根据权利要求8所述的训练方法,其特征在于,所述意图识别模型包括至少一个意图分类器,每个意图分类器对应所述预设业务场景的一个意图分类。
10.一种意图识别装置,其特征在于,包括:
第一获取模块,配置为根据待识别语音文本获取第一文本特征向量,根据所述第一文本特征向量获取所述待识别语音文本的初步意图分类,其中,所述初步意图分类为预设业务场景的意图分类;
第二获取模块,配置为根据所述初步意图分类获取意图确定文本集,根据所述意图确定文本集获取第二文本特征向量集,其中,所述意图确定文本集为所述初步意图分类对应的文本集;
第一确定模块,配置为确定所述第一文本特征向量与所述第二文本特征向量集之间的文本距离结果;
第二确定模块,配置为基于所述文本距离结果,确定所述待识别语音文本的实际意图分类,其中,所述实际意图分类为所述初步意图分类或者除所述预设业务场景以外的其他业务场景的意图分类。
11.一种电子设备,包括:
处理器;以及
存储器,在所述存储器中存储有计算机程序指令,所述计算机程序指令在被所述处理器运行时使得所述处理器执行如权利要求1至9中任一项所述的方法。
12.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行如权利要求1至9中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211441452.4A CN116127027A (zh) | 2022-11-17 | 2022-11-17 | 意图识别方法及装置、意图识别模型的训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211441452.4A CN116127027A (zh) | 2022-11-17 | 2022-11-17 | 意图识别方法及装置、意图识别模型的训练方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116127027A true CN116127027A (zh) | 2023-05-16 |
Family
ID=86301616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211441452.4A Pending CN116127027A (zh) | 2022-11-17 | 2022-11-17 | 意图识别方法及装置、意图识别模型的训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116127027A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117909508A (zh) * | 2024-03-20 | 2024-04-19 | 成都赛力斯科技有限公司 | 意图识别方法、模型训练方法、装置、设备及存储介质 |
-
2022
- 2022-11-17 CN CN202211441452.4A patent/CN116127027A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117909508A (zh) * | 2024-03-20 | 2024-04-19 | 成都赛力斯科技有限公司 | 意图识别方法、模型训练方法、装置、设备及存储介质 |
CN117909508B (zh) * | 2024-03-20 | 2024-07-02 | 成都赛力斯科技有限公司 | 意图识别方法、模型训练方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020177282A1 (zh) | 一种机器对话方法、装置、计算机设备及存储介质 | |
CN116861995A (zh) | 多模态预训练模型的训练及多模态数据处理方法和装置 | |
RU2730449C2 (ru) | Способ создания модели анализа диалогов на базе искусственного интеллекта для обработки запросов пользователей и система, использующая такую модель | |
CN112910761B (zh) | 即时通讯方法、装置、设备、存储介质以及程序产品 | |
CN114741517A (zh) | 文本分类模型的训练及文本分类方法、装置、设备和介质 | |
CN118246537B (zh) | 基于大模型的问答方法、装置、设备及存储介质 | |
CN109308316B (zh) | 一种基于主题聚类的自适应对话生成系统 | |
CN112632248A (zh) | 问答方法、装置、计算机设备和存储介质 | |
JP2021081713A (ja) | 音声信号を処理するための方法、装置、機器、および媒体 | |
CN116127027A (zh) | 意图识别方法及装置、意图识别模型的训练方法及装置 | |
CN115828889A (zh) | 文本分析方法、情感分类模型、装置、介质、终端及产品 | |
CN112989843B (zh) | 意图识别方法、装置、计算设备及存储介质 | |
CN114528387A (zh) | 基于对话流自举的深度学习对话策略模型构建方法和系统 | |
CN114756678A (zh) | 一种未知意图文本的识别方法及装置 | |
CN113870863A (zh) | 声纹识别方法及装置、存储介质及电子设备 | |
CN113869068A (zh) | 场景服务推荐方法、装置、设备及存储介质 | |
CN116361442B (zh) | 基于人工智能的营业厅数据分析方法及系统 | |
WO2024076445A1 (en) | Transformer-based text encoder for passage retrieval | |
CN111340117A (zh) | Ctc模型的训练方法和数据处理方法、装置及存储介质 | |
CN116955529A (zh) | 一种数据处理方法、装置及电子设备 | |
CN116186255A (zh) | 训练未知意图检测模型的方法、未知意图检测方法及装置 | |
CN115062769A (zh) | 基于知识蒸馏的模型训练方法、装置、设备及存储介质 | |
US11457110B2 (en) | Interactive voice response system with a real time conversation scoring module | |
US20240005947A1 (en) | Synthetic speech detection | |
CN114819062A (zh) | 自然语言理解模型的训练方法、装置、终端设备、介质及用户意图判断方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |