CN114860938A - 一种语句意图识别方法和电子设备 - Google Patents
一种语句意图识别方法和电子设备 Download PDFInfo
- Publication number
- CN114860938A CN114860938A CN202210539326.6A CN202210539326A CN114860938A CN 114860938 A CN114860938 A CN 114860938A CN 202210539326 A CN202210539326 A CN 202210539326A CN 114860938 A CN114860938 A CN 114860938A
- Authority
- CN
- China
- Prior art keywords
- sentence
- intention
- model
- sentences
- label
- 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
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/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Machine Translation (AREA)
Abstract
本发明公开一种语句意图识别方法和电子设备,属于自然语言处理技术领域。针对现有技术中存在的语句意图识别计算量大,且准确率不高的问题,本发明根据拆句模型数据集训练得到拆句模型;根据多标签分类模型数据集训练得到多标签分类模型;所述拆句模型获取第一数据,并对所述第一数据中的多个语句表示多个意图的多意图语句进行拆分,获得第二数据;所述多标签分类模型获取所述第二数据,并对所述第二数据中的单意图语句、单个语句表示多个意图的多意图语句中的一种或两种进行识别,获得所述第一数据的意图。本发明避免了语句识别中,单一模型无法处理所有语句类型的情况,解决了语句意图识别准确率不高的问题,客观上提升了用户体验。
Description
技术领域
本发明涉及自然语言处理技术领域,更具体地说,涉及一种语句意图识别方法和电子设备。
背景技术
对话系统在实际应用时,经常会面临用户想同时表达多个意图的情形,即一句话中想表达多个意思。比如在智能音箱控制技术领域,用户想要同时控制两个家电,或者控制同一家电执行不同的操作。又比如在智能客服技术领域,用户想同时询问两件事情。
苹果的Siri、亚马逊的Alexa等语音交互助手的广泛应用宣告着语音交互时代已经到来。语音交互的总体流程大致可分为语音识别(Automatic Speech Recognition,ASR)、语义理解(Natural Language Understanding,NLU)、对话管理(DialogueManagement,DM)和语音合成(Text-To-Speech,TTS)四个步骤。其中,ASR是将用户说出的话语转化为文本,NLU是理解用户的意图并抽取语音转化文本中的关键信息,DM是对机器和用户的对话进行管理,TTS是将机器生成的文本用语音返回给用户。机器对于语义理解的准确率依赖于ASR的准确率,但最重要的还是取决于NLU的准确率。而语句意图识别(Multi-intent,MI)是NLU中的难题。与多标签分类类似,语句意图识别难于如何准确地确定用户有多少个意图,用户的这些意图分别属于什么类别。
对于用户的语句意图识别,现有技术主要分为两种:一种是将问题转化为传统的分类问题;二是调整现有的算法来适应多意图的分类,但都不能更好的解决计算量大、准确率低的问题。
在传统的对话系统中,对多意图的处理过程繁琐,且准确率低下,用户体验感不好,造成对话系统功能的缺失。当对话系统遇到多个意图时,通常会按照一个意图输入对话管理系统进行处理,也就是丢弃系统没有识别到的另一个意图,这种做法,会影响到系统的实际使用体验,也会影响到对话系统的对话流畅性。
具体的,现有技术在语句意图识别中存在以下不足:第一,对话系统的对话连续性缺失;第二,对用户实际表达是意图理解存在偏差,导致系统执行动作出错。
发明内容
1.要解决的技术问题
针对现有技术中存在的语句意图识别中,特别是多意图语句识别时计算量大,且准确率不高的问题,本发明提供一种语句意图识别方法和电子设备,它可以实现提高语句意图识别准确性,且计算量不大,适合广泛推广。
2.技术方案
本发明的目的通过以下技术方案实现。
第一方面,本发明公开一种语句意图识别方法,包括以下步骤:
获取拆句模型数据集,根据拆句模型数据集训练得到拆句模型;
获取多标签分类模型数据集,根据多标签分类模型数据集训练得到多标签分类模型;
所述拆句模型获取第一数据,并对所述第一数据中的多个语句表示多个意图的多意图语句进行拆分,获得第二数据;所述第一数据即需要进行意图识别的数据,根据应用场景的不同形式也可以不同,可以是单意图语句、单个语句表示多个意图的多意图语句或多个语句表示多个意图的多意图语句的一种或多种;所述第二数据为通过拆句模型拆分后输出的数据,第二数据包括单意图语句、单个语句表示多个意图的多意图语句中的一种或两种;
所述多标签分类模型获取所述第二数据,并对所述第二数据中的单意图语句、单个语句表示多个意图的多意图语句中的一种或两种进行识别,获得所述第一数据的意图。
本发明在语句意图语句识别时,将语句分为单意图语句、单个语句表示多个意图的多意图语句和多个语句表示多个意图的多意图语句三种类型,构建拆句模型对多个语句表示多个意图的多意图语句进行拆分,构建多标签分类模型对单意图语句、单个语句表示多个意图的多意图语句进行意图识别。本发明根据多意图语句的不同,通过两种模型的构建,实现最终的意图识别。
更进一步的,所述获取拆句模型数据集,包括:
对所述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句进行标注,所有标注后的语句形成所述拆句模型数据集。
更进一步的,所述对述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句进行标注,包括:
根据语句中字符的位置,在语句的句首标注B标签,语句的句中标注I标签,语句的句尾标注E标签。所述语句的句首为所述单意图语句或所述单个语句表示多个意图的多意图语句的第一个字符,所述语句的句尾为所述单意图语句或所述单个语句表示多个意图的多意图语句的最后一个字符,所述语句的句中为所述单意图语句或所述单个语句表示多个意图的多意图语句中除句首和句尾外的其他字符。若需要标注的语句为“打开空调”,该语句为所述单意图语句,该语句标注后表示为“BIIE”;若需要标注的语句为“打开空调和电视”,该语句为所述单个语句表示多个意图的多意图语句,该语句标注后表示为“BIIIIIE”;若需要标注的语句为“打开空调关闭电视”,该语句为所述多个语句表示多个意图的多意图语句,具体包括两个所述单意图语句,该语句标注后表示为“BIIEBIIE”;若需要标注的语句为“打开空调和灯关闭电视”,该语句为所述多个语句表示多个意图的多意图语句,具体包括一个所述单个语句表示多个意图的多意图语句和一个所述单意图语句,该语句标注后表示为“BIIIIEBIIE”。
更进一步的,所述根据语句中字符的位置,在语句的句首标注B标签,语句的句中标注I标签,语句的句尾标注E标签,通过相似样本训练实现。通过事先完成标注标签的相似样本训练,实现对语句的标注标签。
更进一步的,所述拆句模型数据集包括训练集和验证集,拆句模型训练集用于训练所述拆句模型,拆句模型验证集用于对所述拆句模型进行迭代训练;
所述对所述拆句模型进行迭代训练,包括:
通过训练得到的拆句模型对所述拆句模型验证集进行意图识别,统计所有识别错误语句的数量,计算所有识别错误语句在所述拆句模型验证集中的占比,若占比小于预设阈值,则不迭代训练;否则,在所述拆句模型数据集中加入一定数量的拆句样本,更新所述拆句模型训练集和所述拆句模型验证集,通过更新后的所述拆句模型训练集重新进行拆句模型训练,通过再次训练后的拆句模型对更新后的所述拆句模型验证集进行意图识别,通过不断迭代训练,直到在所述拆句模型对所述拆句模型验证集中的识别错误语句比例小于预设阈值为止,并确认最终训练得到的拆句模型。所述拆句样本即经过语句标注标签后的样本数据,包括所述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句的一种或多种。
更进一步的,所述获取多标签分类模型数据集,包括:
设置模板及候选词集合,得到所有所述候选词集合中的候选词在所述模板中的组合,形成所述多标签分类数据集。
更进一步的,所述模板包括第一标签和第二标签,每个标签对应一个候选词集合,所述第一标签是表示动作的谓语,所述第二标签是表示所示第一标签对象的宾语。如模板为:[第一标签][第二标签],所述第一标签对应的候选词集合为:{打开,关闭},所述第二标签对应的候选词集合为:{空调,电视,灯},则当前的多标签分类数据集为{打开空调,打开电视,打开灯,关闭空调,关闭电视,关闭灯}。
更进一步的,所述多标签分类模型数据集包括所述单意图语句和所述单个语句表示多个意图的多意图语句。
更进一步的,所述拆句模型数据集由所述多标签分类模型数据集中语句任意组合形成。
更进一步的,所述多标签分类模型数据集包括训练集和验证集,多标签分类模型训练集用于训练所述多标签分类模型,多标签分类模型验证集用于对所述多标签分类模型进行迭代训练;
所述对所述多标签分类模型进行迭代训练,包括:
通过训练得到的多标签分类模型对所述多标签分类模型验证集进行意图识别,统计所有识别错误语句的数量,计算所有识别错误语句在对所述多标签分类模型验证集中的占比,若占比小于预设阈值,则不迭代训练;否则,在所述多标签分类模型数据集中加入一定数量的多标签分类样本,更新所述多标签分类模型训练集和所述多标签分类模型验证集,通过更新后的所述多标签分类模型训练集重新进行多标签分类模型训练,通过再次训练后的多标签分类模型对更新后的所述多标签分类模型验证集进行意图识别,通过不断迭代训练,直到在所述多标签分类模型对所述多标签分类模型验证集中的识别错误语句比例小于预设阈值为止,并确认最终训练得到的多标签分类模型。所述多标签分类样本即根据模板和候选词集合构建的样本数据,可通过训练新的模板或添加候选词集合实现,所述多标签分类样本包括所述单意图语句和所述单个语句表示多个意图的多意图语句。
本发明在进行语句意图识别时,对于多意图的用户语句输入时,从识别原理上解决语句意图识别中的识别复杂度,简化多意图语句问题,采用分类型处理的模式,先对多意图语句中的并列句,即多个语句表示多个意图的多意图语句使用拆句模型进行语句拆分,再将拆分好的句子,输入多标签分类模型识别意图。
本发明的语句意图识别方法避免了分类模型无法处理序列标注类问题的缺点,有针对性地优化各个模型的识别能力,从而可以训练出健壮的模型,有效解决多意图的识别问题。
第二方面,本发明公开一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面以及第一方面任意一种可能的实现方式中所述的一种语句意图识别方法。
第三方面,本发明公开一种语句意图识别系统,所述系统包括用于实现第一方面以及第一方面任意一种可能的实现方式中所述的一种语句意图识别方法的拆句模型和多标签分类模型;
拆句模型用于获取第一数据,并对所述第一数据中的多个语句表示多个意图的多意图语句进行拆分,获得第二数据;
多标签分类模型用于获取所述第二数据,并对所述第二数据中的单意图语句、单个语句表示多个意图的多意图语句中的一种或两种进行识别,获得所述第一数据的意图。
所述第一数据即需要进行意图识别的数据,根据应用场景的不同形式也可以不同,可以是单意图语句、单个语句表示多个意图的多意图语句或多个语句表示多个意图的多意图语句的一种或多种;所述第二数据为通过拆句模型拆分后输出的数据,第二数据包括单意图语句、单个语句表示多个意图的多意图语句中的一种或两种。
第四方面,本发明提供一种计算机可读存储介质,该存储介质存储有计算机程序,当所述计算机程序在计算机上执行时,使得所述计算机执行上述第一方面以及第一方面任意一种可能的实现方式中所述的一种语句意图识别方法。
3.有益效果
相比于现有技术,本发明的优点在于:
本发明语句意图识别的方法解决了语句意图识别,尤其是多意图语句识别准确率不高的问题,通过将多意图语句的类型分类,再分别用不同的模型进行语句处理,将多意图语句中的对多个语句表示多个意图的多意图语句进行拆分,然后对单意图语句或单个语句表示单个意图的多意图语句进行意图识别。本发明对多意图语句分类,避免了单一模型无法处理所有类型的情况。
本发明有针对性生成训练数据,使得模型可以有针对性地优化,在识别准确度不高时进行迭代训练。模型训练时,本发明生成训练数据,避免训练模型过程中数据缺失,使得模型训练精度得到较大提高。本发明在语句意图识别系统中同时设置拆句模型和多标签分类模型,系统的输出不产生影响,解决了语句意图识别准确率不高的问题,提高系统的完整性,增强了对整个系统的把控性。
附图说明
图1为本发明语句意图识别处理流程图;
图2为本发明语句意图识别系统结构示意图;
图3为本发明语句意图识别方法流程图;
图中标号说明:
100、语句意图识别系统;101、拆句模型;102、多标签分类模型。
具体实施方式
下面结合说明书附图和具体的实施例,对本发明作详细描述。
实施例
目前,以对话系统为基础的智能语音助手、智能音箱、智能机器人已逐渐发展为新的人机交互方式。在应用中,区别与单意图语句,往往有很多指令为多意图语句,如何正确且快速的识别多意图语句是对话系统的关键。
所述单意图语句指的是只表示一个意图的语句,如“打开空调”表示操纵空调的意图,需要打开空调;“打开灯”表示操作灯具的意图,需要打开灯。对应的,所述多意图语言指的是表示多个意图的语句,多意图语句分为两种类型,第一种是用多个语句表示多个意图,如“打开空调关上电视”表示操纵空调以及电视的意图,需要打开空调并关上电视;第二种是用单个语句表示多个意图,如“打开空调和电视”表示操纵空调以及电视的意图,需要打开空调并打开电视。
针对现有技术中语句意图识别的高计算度及低准确度,本实施例公开一种语句意图识别方法,训练拆句模型101对所述多个语句表示多个意图的多意图语句进行拆分,训练多标签分类模型102识别所述单意图语句和所述单个语句表示多个意图的多意图语句。具体的,如图3所示,包括以下步骤:
步骤100:获取拆句模型数据集,根据拆句模型数据集训练得到拆句模型101。
如前所述,本实施例将多意图语句的识别分为两个部分,第一是对所述多个语句表示多个意图的多意图语句进行拆分,拆分为所述单个语句表示多个意图的多意图语句或所述单意图语句。然后再对所述单个语句表示多个意图的多意图语句或所述单意图语句进行识别,实现语句意图识别。
对所述多个语句表示多个意图的多意图语句进行拆分通过所述拆句模型101实现,所述拆句模型101通过所述拆句模型数据集训练得到。
通过对所述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句进行标注,所有标注后的语句形成所述拆句模型数据集。其中,对所述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句根据不同的应用场景语料库获得。
根据不同的应用场景,选择不同的系统语料库构建拆句模型数据集,如在智能音箱的应用场景下,所述拆句模型数据集包括例如“打开空调打开电视”,“运行扫地机器人和打开窗帘”,“播放音乐”等语句,所述拆句模型数据集据根据应用场景的不同分为不同的数据集,且所述拆句模型数据集包括所述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句。
在一种实施例中,还可以对不同场景语料库的现有数据进行随机组合,再进行标注,形成所述拆句模型数据集。
为了保证训练后训练的识别准确性,所述拆句模型数据集需包括多种类型的语句,即需要同时包括所述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句。
所述对述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句进行标注,包括:根据语句中字符的位置,在语句的句首标注B标签,语句的句中标注I标签,语句的句尾标注E标签。所述根据语句中字符的位置,在语句的句首标注B标签,语句的句中标注I标签,语句的句尾标注E标签,通过相似样本训练实现。所有已标注标签的语句数据形成拆句模型训练数据集,记为数据集A。
先根据在先样本训练,确认可以在语句中识别并标注出B标签、I标签和E标签,然后对所述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句进行标注;以所述多个语句表示多个意图的多意图语句“打开空调打开灯”为例,标注后的标签序列为“BIIEBIE”,其中,“B”表示该语句“打开空调打开灯”中每一个句子的句首,即该句子中的第一个字符“打”和第五个字符“打”;“E”表示该语句中每一个句子的句尾,即该句子中的第四个字符“调”和第七个字符“灯”,该语句中的其余字符均标注为“I”。
将数据集A中的数据分为训练集A1和验证集A2进行拆句模型101训练,拆句模型101训练通过训练集A1进行模型训练,训练后的拆句模型101通过验证集A2验证模型的准确度,并对准确度不符合要求的拆句模型101进行迭代训练,最终得到可用于语句意图识别方法中的拆句模型101。
通过验证集A2进行迭代训练方法为:通过训练出的拆句模型102对拆句模型验证集A2进行语句意图识别,如果识别错误,则算badcase。统计所有badcase的数量,如果badcase在拆句模型验证集A2中的占比小于预设阈值,如1%,则当前测试的拆句模型101就是最终的拆句模型101;否则,继续在拆句模型数据集A中加入一定数量的拆句样本得到更新后拆句模型数据集An,更新后的拆句模型数据集An分成拆句模型训练集A1n和拆句模型验证集A2n,通过拆句模型训练集A1n重新训练拆句模型101,并用再次训练后的拆句模型对更新后的拆句模型验证集A2n进行语句意图识别,通过不断迭代训练,直到在拆句模型验证集A2n上的badcase比例小于预设阈值为止,并保存最终训练得到的拆句模型101为最终训练得到的拆句模型101。
所述拆句样本即经过语句标注标签后的样本数据,包括所述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句的一种或多种。
本实施例拆句模型数据集包括所述单意图语句,避免模型训练过程中的数据缺失,提高模型的精确度。
步骤200:获取多标签分类模型数据集,根据多标签分类模型数据集训练得到多标签分类模型102。
针对不同的应用场景,通过不同场景对话系统语料生成工具,生成多标签分类模型数据集,记为数据集S,数据集S中的语句包括所述单意图语句和所述单个语句表示多个意图的多意图语句。所述数据集S用于训练多标签分类模型102。
设置模板用于所述多标签分类模型数据集的获取,所述模板包括第一标签和第二标签,每个标签对应一个候选词集合,所述第一标签是表示动作的谓语,所述第二标签是表示所示第一标签对象的宾语。
例如模板为:[第一标签][第二标签],所述第一标签对应的候选词集合为:{打开,关闭},所述第二标签对应的候选词集合为:{空调,电视,灯},则当前的多标签分类数据集为{打开空调,打开电视,打开灯,关闭空调,关闭电视,关闭灯}。
与拆句模型101相似,多标签分类模型102训练时,多标签分类模型数据集S分为多标签分类模型训练集S1和多标签分类模型验证集S2,多标签分类模型102通过多标签分类模型训练集S1进行多标签分类模型训练,训练后的多标签分类模型102通过多标签分类模型验证集S2验证多标签分类模型的准确度,并对准确度不符合要求的多标签分类模型进行迭代训练,最终得到用于语句意图识别的多标签分类模型102。
根据多标签分类模型验证集S2进行迭代训练方法为:通过训练出来的多标签分类模型102对多标签分类模型验证集S2进行语句意图识别,如果识别错误,则算badcase。统计所有badcase的数量,如果badcase在多标签分类模型验证集S2中的占比小于预设阈值,如1%,则当前测试的就是最终的多标签分类模型102;否则,继续在多标签分类模型数据S中加入一定数量的多标签分类样本得到更新后数据集Sn,更新后的多标签分类模型数据集Sn分成多标签分类模型训练集S1n和多标签分类模型验证集S2n,通过多标签分类模型训练集S1n重新训练多标签分类模型102,并用再次训练后的多标签分类模型对对更新后的多标签分类模型验证集S2n进行语句意图识别,通过不断迭代训练,直到在多标签分类模型验证集S2n中的badcase比例小于预设阈值为止,并保存最终训练得到的多标签分类模型102为最终训练得到用于语句意图识别的多标签分类模型102。
本实施例有针对性的训练数据,使得多标签分类模型102可以有针对性的优化特定的错误识别。训练后的多标签分类模型102对所述单意图语句和所述多语句表示多个意图的多意图语句进行识别。
在一种实施例中,所述拆句模型数据集由所述多标签分类模型数据集中语句任意组合形成。由于多标签分类模型数据集包括所述单意图语句和所述单个语句表示多个意图的多意图语句。因此将多标签分类模型数据集中的数据任意组合,所形成的数据集可以作为所述拆句模型数据集,用于拆句模型101的训练。
步骤300:所述拆句模型101获取第一数据,并对所述第一数据中的多个语句表示多个意图的多意图语句进行拆分,获得第二数据。
所述第一数据即需要进行意图识别的数据,根据应用场景的不同形式也可以不同,可以是单意图语句、单个语句表示多个意图的多意图语句或多个语句表示多个意图的多意图语句的一种或多种;所述第二数据为通过拆句模型拆分后输出的数据,第二数据包括单意图语句、单个语句表示多个意图的多意图语句中的一种或两种。
如图1所示,通过训练得到的拆句模型101将第一数据进行拆分,输出所述单意图语句或所述单个语句表示多个意图的多意图语句。
所述拆句模型基于标注的标签信息,在每个标签E和标签B中进行拆句,例如语句“打开空调打开灯”,被标注为“BIIEBIE”,基于标注的标签信息,被拆分为“BIIE”和“BIE”,对应“打开空调”和“打开灯”。又如语句“打开空调和电视关闭灯”,被标注为“BIIIIIEBIE”,基于标注的标签信息,被拆分为“BIIIIIE”和“BIE”,对应“打开空调和电视”和“关闭灯”。又如语句“打开空调”,被标注为“BIIE”,基于标注的标签信息,不需要拆分,则拆分模型101不进行数据处理。
步骤400:所述多标签分类模型102获取所述第二数据,并对所述第二数据中的单意图语句、单个语句表示多个意图的多意图语句中的一种或两种进行识别,获得所述第一数据的意图。
如图1所示,拆句模型101处理后的第二数据输入多标签分类模型102识别意图。多标签分类模型102根据设置的所述模板识别意图。
例如设置模板“[action][device]和[device]”,其中,action为第一标签,第一标签对应第一候选词集合,假设所述第一候选词集合为{打开,开开,开启};device为第二标签,第二标签对应第二候选词集合,假设所述第二候选词集合为{空调,电视,热水器}。在该模板下,语句“打开空调和电视”对应的语句意图识别出的标签分别是“openAirconditioner”和“openTV”,即在多标签分类模型102对所述第二数据进行意图识别后,语句“打开空调和电视”将识别出“openAirconditioner”和“openTV”两个意图标签,分别表示打开空调和打开电视两个意图。
本发明所述的多标签分类模型102和拆句模型101均为深度学习模型,可以根据输入自动调整模型内的参数,当模型训练好之后,遇见新的样本可以对齐预测。例如通过上述示例的模板训练后,输入新的样本数据“开启电视和热水器”至训练好的模型,就会输出语句意图识别后的意图标签“openTV”和“openHeater”,分别表示打开电视和打开热水器两个意图。
在对单意图语句进行识别时,也通过设置模板实现,例如设置模板“[action][device]”,其中,action为第一标签,第一标签对应第一候选词集合,假设所述第一候选词集合为“打开,开开,开启”;device为第二标签,第二标签对应第二候选词集合,假设所述第二候选词集合为“空调,电视,热水器”。在该模板下,生成句子“打开空调”对应的语句意图识别出的意图标签分别是“openAirconditioner”,即在多标签分类模型102意图识别后,多意图语句“打开空调”将识别出“openAirconditioner”意图标签,表示打开空调的意图。
本实施例在对语句意图识别前,从识别原理上将多意图语句分类,先将所述第一数据输入拆句模型101,拆句模型101对所述第一数据中的所述多个语句表示多个意图的多意图语句进行拆分,输出所述第二数据输入所述多标签分类模型102识别意图。
本实施例将拆句模型101和多标签分类模型102设置在同一个系统中进行语句意图识别,系统的输出不产生影响,解决了语句意图识别准确率不高的问题,提高系统的完整性,增强了对整个系统的把控性。
以智能音箱的控制为例,随着物联网等技术的发展,用户在通过智能音箱控制灯具、电视、空调、窗帘等不同终端设备时,为了简化问题,往往会同时发出多意图指令,本实施例公开的语句意图识别方法,在指令识别时,通过拆句模型101对并列的语句拆分,再通过多标签分类模型102对拆句模型101输出的数据进行语句意图识别。
例如,用户发出的指令是“打开灯打开空调”,所述指令输入拆句模型101,拆句模型101对输入的指令进行识别,识别到指令“打开灯打开空调”的标签为“BIEBIIE”,根据标签中句首和句尾标签进行拆分,得到标签“BIE”和“BIIE”,对应的语句为“打开灯”和“打开空调”。此时,输入指令经过拆句模型101识别拆分后,得到两个单意图语句,分别是“打开灯”和“打开空调”。将“打开灯”和“打开空调”两个单意图语句输入多标签分类模型102进行意图识别,根据多标签分类模型102中的模板,识别输出的标签分别为“openLight”和“openAirconditioner”,表示该指令有打开灯的意图和打开空调的意图。
又如,用户发出的指令是“打开灯和空调关闭窗帘”,所述指令输入拆句模型101,拆句模型101对输入的指令进行识别,识别到指令“打开灯和空调关闭窗帘”的标签为“BIIIIEBIIE”,根据标签中句首和句尾标签进行拆分,得到标签“BIIIIE”和“BIIE”,对应的语句为“打开灯和空调”和“关闭窗帘”。此时,输入指令经过拆句模型101识别拆分后,得到一个所述单意图语句和一个所述单个语句表示多个意图的多意图语句,分别是“关闭窗帘”和“打开灯和空调”。将“关闭窗帘”和“打开灯和空调”两个语句输入多标签分类模型102进行意图识别,根据多标签分类模型102中的模板,“关闭窗帘”识别输出的标签分别为“closeCurtain”,和“打开灯和空调”识别输出的标签分别为“openLight”和“openAirconditioner”,表示该指令包括关闭窗帘的意图,打开灯的意图和打开空调的意图。
本发明在语句意图识别上具有较高的准确性,提高用户体验的同时还提高系统的安全性。即使输入的语句不是多意图语句,也可以准确的进行识别,避免了单一模型无法处理所有类型语句的情况。
以智能客服为例,若用户需要进行连续的提问,希望智能客服系统同时回答多个问题。假设用户希望同时询问提现的到账时间和提现手续费,于是系统输入语句为“提现手续费是多少多久能到账”,现有技术的意图识别往往只能识别出单个意图,会产生严重的业务问题,降低智能客服的用户体验,使用前述的语句意图识别方法,获取智能客服场景中的单意图语句,作为训练语料训练拆句模型101和多标签分类模型102,实现智能客服场景中的语句意图识别,客观上提升了用户体验,适用于广泛推广。
在一个实施例中,公开一种语句意图识别系统100,如图2所示,所述语句意图识别系统100包括拆句模型101和多标签分类模型102;
拆句模型101用于获取第一数据,并对所述第一数据中的多个语句表示多个意图的多意图语句进行拆分,获得第二数据;
多标签分类模型102用于获取所述第二数据,并对所述第二数据中的单意图语句、单个语句表示多个意图的多意图语句中的一种或两种进行识别,获得所述第一数据的意图。
语句意图识别系统100将拆句模型101和多标签分类模型102设置在同一个系统中进行语句意图识别,对系统的输出不产生影响,解决了语句意图识别准确率不高的问题,提高系统的完整性,增强了对整个系统的把控性。
具体的语句意图识别方法为上述实施例提供的语句意图识别方法。各模型的具体实施可参见前面的实施例,在此不再赘述。
在一个实施例中,公开一种电子设备,所述电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器执行所述程序时实现上述实施例所述的语句意图识别方法。
处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。其可以实现或者执行实施例中公开的各方法、步骤及逻辑框图。
存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
在一个实施例中,公开一种计算机可读的存储介质,该存储介质存储有计算机程序,当所述计算机程序在计算机上执行时,使得所述计算机执行上述实施例提供的语句意图识别方法。以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-OnlyMemory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。由于该存储介质中所存储的指令,可以执行本申请实施例所提供的语句意图识别方法,因此,可以实现本申请实施例所提供的语句意图识别方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上示意性地对本发明创造及其实施方式进行了描述,该描述没有限制性,在不背离本发明的精神或者基本特征的情况下,能够以其他的具体形式实现本发明。附图中所示的也只是本发明创造的实施方式之一,实际的结构并不局限于此,权利要求中的任何附图标记不应限制所涉及的权利要求。所以,如果本领域的普通技术人员受其启示,在不脱离本创造宗旨的情况下,不经创造性的设计出与该技术方案相似的结构方式及实施例,均应属于本专利的保护范围。此外,“包括”一词不排除其他元件或步骤,在元件前的“一个”一词不排除包括“多个”该元件。产品权利要求中陈述的多个元件也可以由一个元件通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (11)
1.一种语句意图识别方法,其特征在于,包括以下步骤:
获取拆句模型数据集,根据拆句模型数据集训练得到拆句模型;
获取多标签分类模型数据集,根据多标签分类模型数据集训练得到多标签分类模型;
所述拆句模型获取第一数据,并对所述第一数据中的多个语句表示多个意图的多意图语句进行拆分,获得第二数据;
所述多标签分类模型获取所述第二数据,并对所述第二数据中的单意图语句、单个语句表示多个意图的多意图语句中的一种或两种进行识别,获得所述第一数据的意图。
2.根据权利要求1所述的一种语句意图识别方法,其特征在于,所述获取拆句模型数据集,包括:
对所述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句进行标注,所有标注后的语句形成所述拆句模型数据集。
3.根据权利要求2所述的一种语句意图识别方法,其特征在于,所述对述单意图语句、所述单个语句表示多个意图的多意图语句和所述多个语句表示多个意图的多意图语句进行标注,包括:
根据语句中字符的位置,在语句的句首标注B标签,语句的句中标注I标签,语句的句尾标注E标签。
4.根据权利要求3所述的一种语句意图识别方法,其特征在于,所述根据语句中字符的位置,在语句的句首标注B标签,语句的句中标注I标签,语句的句尾标注E标签,通过相似样本训练实现。
5.根据权利要求1所述的一种语句意图识别方法,其特征在于,所述拆句模型数据集包括训练集和验证集,拆句模型训练集用于训练所述拆句模型,拆句模型验证集用于对所述拆句模型进行迭代训练;
所述对所述拆句模型进行迭代训练,包括:
通过训练得到的拆句模型对所述拆句模型验证集进行意图识别,统计所有识别错误语句的数量,计算所有识别错误语句在所述拆句模型验证集中的占比,若占比小于预设阈值,则不迭代训练;否则,在所述拆句模型数据集中加入一定数量的拆句样本,更新所述拆句模型训练集和所述拆句模型验证集,通过更新后的所述拆句模型训练集重新进行拆句模型训练,通过再次训练后的拆句模型对更新后的所述拆句模型验证集进行意图识别,通过不断迭代训练,直到在所述拆句模型对所述拆句模型验证集中的识别错误语句比例小于预设阈值为止,并确认最终训练得到的拆句模型。
6.根据权利要求1所述的一种语句意图识别方法,其特征在于,所述获取多标签分类模型数据集,包括:
设置模板及候选词集合,得到所有所述候选词集合中的候选词在所述模板中的组合,形成所述多标签分类数据集。
7.根据权利要求6所述的一种语句意图识别方法,其特征在于,所述模板包括第一标签和第二标签,每个标签对应一个候选词集合,所述第一标签是表示动作的谓语,所述第二标签是表示所示第一标签对象的宾语。
8.根据权利要求1所述的一种语句意图识别方法,其特征在于,所述多标签分类模型数据集包括所述单意图语句和所述单个语句表示多个意图的多意图语句。
9.根据权利要求8所述的一种语句意图识别方法,其特征在于,所述拆句模型数据集由所述多标签分类模型数据集中语句任意组合形成。
10.根据权利要求1所述的一种语句意图识别方法,其特征在于,所述多标签分类模型数据集包括训练集和验证集,多标签分类模型训练集用于训练所述多标签分类模型,多标签分类模型验证集用于对所述多标签分类模型进行迭代训练;
所述对所述多标签分类模型进行迭代训练,包括:
通过训练得到的多标签分类模型对所述多标签分类模型验证集进行意图识别,统计所有识别错误语句的数量,计算所有识别错误语句在对所述多标签分类模型验证集中的占比,若占比小于预设阈值,则不迭代训练;否则,在所述多标签分类模型数据集中加入一定数量的多标签分类样本,更新所述多标签分类模型训练集和所述多标签分类模型验证集,通过更新后的所述多标签分类模型训练集重新进行多标签分类模型训练,通过再次训练后的多标签分类模型对更新后的所述多标签分类模型验证集进行意图识别,通过不断迭代训练,直到在所述多标签分类模型对所述多标签分类模型验证集中的识别错误语句比例小于预设阈值为止,并确认最终训练得到的多标签分类模型。
11.一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1-10任意一项所述的一种语句意图识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210539326.6A CN114860938A (zh) | 2022-05-17 | 2022-05-17 | 一种语句意图识别方法和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210539326.6A CN114860938A (zh) | 2022-05-17 | 2022-05-17 | 一种语句意图识别方法和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114860938A true CN114860938A (zh) | 2022-08-05 |
Family
ID=82639569
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210539326.6A Pending CN114860938A (zh) | 2022-05-17 | 2022-05-17 | 一种语句意图识别方法和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114860938A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117765949A (zh) * | 2024-02-22 | 2024-03-26 | 青岛海尔科技有限公司 | 一种基于语义依存分析的语句多意图识别方法及装置 |
CN117807215A (zh) * | 2024-03-01 | 2024-04-02 | 青岛海尔科技有限公司 | 一种基于模型的语句多意图识别方法、装置及设备 |
-
2022
- 2022-05-17 CN CN202210539326.6A patent/CN114860938A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117765949A (zh) * | 2024-02-22 | 2024-03-26 | 青岛海尔科技有限公司 | 一种基于语义依存分析的语句多意图识别方法及装置 |
CN117765949B (zh) * | 2024-02-22 | 2024-05-24 | 青岛海尔科技有限公司 | 一种基于语义依存分析的语句多意图识别方法及装置 |
CN117807215A (zh) * | 2024-03-01 | 2024-04-02 | 青岛海尔科技有限公司 | 一种基于模型的语句多意图识别方法、装置及设备 |
CN117807215B (zh) * | 2024-03-01 | 2024-05-24 | 青岛海尔科技有限公司 | 一种基于模型的语句多意图识别方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108847241B (zh) | 将会议语音识别为文本的方法、电子设备及存储介质 | |
CN107657017B (zh) | 用于提供语音服务的方法和装置 | |
CN108710704B (zh) | 对话状态的确定方法、装置、电子设备及存储介质 | |
CN114860938A (zh) | 一种语句意图识别方法和电子设备 | |
CN112037773B (zh) | 一种n最优口语语义识别方法、装置及电子设备 | |
CN112633003A (zh) | 一种地址识别方法、装置、计算机设备及存储介质 | |
CN112992125B (zh) | 一种语音识别方法、装置、电子设备、可读存储介质 | |
CN109976702A (zh) | 一种语音识别方法、装置及终端 | |
CN109726397B (zh) | 中文命名实体的标注方法、装置、存储介质和电子设备 | |
EP4086894A1 (en) | Semantic recognition rejection method, semantic recognition rejection apparatus, transportation means, and medium | |
CN110021293A (zh) | 语音识别方法及装置、可读存储介质 | |
CN111027291A (zh) | 文本中标点符号添加、模型训练方法、装置及电子设备 | |
CN114999463B (zh) | 语音识别方法、装置、设备及介质 | |
CN111753524A (zh) | 文本断句位置的识别方法及系统、电子设备及存储介质 | |
JP2020042257A (ja) | 音声認識方法及び装置 | |
CN115238045B (zh) | 一种生成式事件论元抽取方法、系统及存储介质 | |
CN114330371A (zh) | 基于提示学习的会话意图识别方法、装置和电子设备 | |
KR20210059995A (ko) | 학습 기반의 외국어 말하기 평가 방법 및 그 시스템 | |
CN116303966A (zh) | 基于提示学习的对话行为识别系统 | |
CN115392264A (zh) | 一种基于rasa的任务型智能多轮对话方法及相关设备 | |
CN111399629A (zh) | 一种终端设备的操作引导方法、终端设备及存储介质 | |
CN113553847A (zh) | 用于对地址文本进行解析的方法、装置、系统和存储介质 | |
CN112906403B (zh) | 语义分析模型训练方法、装置、终端设备及存储介质 | |
CN115345177A (zh) | 意图识别模型训练方法和对话方法及装置 | |
CN112818096A (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 |