CN111046667B - 一种语句识别方法、语句识别装置及智能设备 - Google Patents
一种语句识别方法、语句识别装置及智能设备 Download PDFInfo
- Publication number
- CN111046667B CN111046667B CN201911111261.XA CN201911111261A CN111046667B CN 111046667 B CN111046667 B CN 111046667B CN 201911111261 A CN201911111261 A CN 201911111261A CN 111046667 B CN111046667 B CN 111046667B
- Authority
- CN
- China
- Prior art keywords
- intention
- corpus
- category
- recognition
- entity word
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 239000013598 vector Substances 0.000 claims abstract description 148
- 238000003062 neural network model Methods 0.000 claims abstract description 43
- 238000012549 training Methods 0.000 claims abstract description 38
- 230000008569 process Effects 0.000 claims abstract description 19
- 238000004590 computer program Methods 0.000 claims description 19
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 238000012216 screening Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 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
- 238000010586 diagram Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 210000001072 colon Anatomy 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 240000000491 Corchorus aestuans Species 0.000 description 1
- 235000011777 Corchorus aestuans Nutrition 0.000 description 1
- 235000010862 Corchorus capsularis Nutrition 0.000 description 1
- 206010028980 Neoplasm Diseases 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 201000011510 cancer Diseases 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
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
- 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
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
Abstract
本申请公开了一种语句识别方法、装置、智能设备及计算机可读存储介质,其中,该方法包括:接收输入语句;对输入语句进行实体词语识别;若输入语句不存在实体词语,则将输入语句作为识别语料;若输入语句存在实体词语,则基于输入语句所包含的一个以上实体词语,以及一个以上实体词语所属的实体词语类别,对输入语句进行替换,得到一个以上替换语料作为识别语料;通过已训练的神经网络模型,得到各个识别语料的语句向量;计算各语句向量与预设的一项以上意图类别的相似度,以确定各识别语料的所属意图类别;根据每一识别语料的所属意图类别,确定输入语句的意图。通过本申请方案,可提升语音助手识别语句的速度,减轻语音助手训练过程中的数据量。
Description
技术领域
本申请属于人工智能技术领域,尤其涉及一种语句识别方法、语句识别装置、智能设备及计算机可读存储介质。
背景技术
当前,随着当前人工智能的不断发展,用户已经可以通过智能设备所搭载的语音助手实现多项操作。语音助手在识别用户所输入的语句时,往往会先对该语句的意图进行识别,以获知用户所需要进行的操作。这一过程往往会导致数据爆炸,从而影响到语音助手的工作效率。
发明内容
有鉴于此,本申请提供了一种语句识别方法、语句识别装置、智能设备及计算机可读存储介质,可提升语音助手识别语句的速度,减轻语音助手训练过程中的数据量。
本申请的第一方面提供了一种语句识别方法,包括:
接收输入语句;
对上述输入语句进行实体词语识别;
若上述输入语句不存在实体词语,则将上述输入语句作为识别语料;
若上述输入语句存在一个以上实体词语,则基于上述输入语句所包含的一个以上实体词语,以及上述一个以上实体词语所属的实体词语类别,对上述输入语句进行替换,得到一个以上替换语料,并将上述替换语料作为识别语料;
通过已训练的神经网络模型,得到各个识别语料的语句向量;
分别计算每一语句向量与预设的一项以上意图类别的相似度,以确定每一识别语料的所属意图类别,其中,每一项意图类别对应一个意图;
根据每一识别语料的所属意图类别,确定上述输入语句的意图。
本申请的第二方面提供了一种语句识别装置,包括:
接收单元,用于接收输入语句;
实体词语识别单元,用于对上述输入语句进行实体词语识别;
替换单元,用于若上述输入语句存在一个以上实体词语,则基于上述输入语句所包含的一个以上实体词语,以及上述一个以上实体词语所属的实体词语类别,对上述输入语句进行替换,得到一个以上替换语料;
识别语料确定单元,用于当上述输入语句不存在实体词语时,将上述输入语句作为识别语料,当上述输入语句存在一个以上实体词语时,将上述替换语料作为识别语料;
获取单元,用于通过已训练的神经网络模型,得到各个识别语料的语句向量;
意图识别单元,用于分别计算每一语句向量与预设的一项以上意图类别的相似度,以确定每一识别语料的所属意图类别,其中,每一项意图类别对应一个意图;
意图确定单元,用于根据每一识别语料的所属意图类别,确定上述输入语句的意图。
本申请的第三方面提供了一种智能设备,上述智能设备包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第一方面的方法的步骤。
本申请的第四方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上述第一方面的方法的步骤。
本申请的第五方面提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面的方法的步骤。
由上可见,在本申请方案中,首先接收输入语句,然后对上述输入语句进行实体词语识别,若上述输入语句不存在实体词语,则将上述输入语句作为识别语料,若上述输入语句存在一个以上实体词语,则基于上述输入语句所包含的一个以上实体词语,以及上述一个以上实体词语所属的实体词语类别,对上述输入语句进行替换,得到一个以上替换语料,并将上述替换语料作为识别语料,再通过已训练的神经网络模型,得到各个识别语料的语句向量,随后分别计算每一语句向量与预设的一项以上意图类别的相似度,以确定每一识别语料的所属意图类别,其中,每一项意图类别对应一个意图,最后根据每一识别语料的所属意图类别,确定上述输入语句的意图。通过本申请方案,可提升语音助手识别语句的速度,减轻语音助手训练过程中的数据量。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的语句识别方法的实现流程示意图;
图2是本申请实施例提供的语句识别方法中,神经网络模型的训练流程示意图;
图3是本申请实施例提供的语句识别装置的结构框图;
图4是本申请实施例提供的智能设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
本申请实施例的一种语句识别方法及语句识别装置可应用于机器人、智能手机、平板电脑等具备语音助手功能的智能设备中。为了说明本申请上述的技术方案,下面通过具体实施例来进行说明。
实施例一
下面对本申请实施例提供的一种语句识别方法进行描述,请参阅图1,本申请实施例中的语句识别方法包括:
步骤101,接收输入语句;
在本申请实施例中,智能设备可以先获取待识别的输入语句,上述输入语句指的是用户在与智能设备的语音助手交互的过程中所输入的语句。可选地,上述输入语句可以是用户通过文字所输入的语句;或者,上述语句也可以是用户通过语音所输入的语句,此处不对上述输入语句的输入形式作出限定。
步骤102,对上述输入语句进行实体词语识别,得到上述输入语句所包含的一个以上实体词语;
在本申请实施例中,语音助手在接收到上述输入语句之后,将首先对输入语句进行实体词语识别。上述实体词语为命名实体,指的是指代实际生活中的实物的词语,例如人名,地名,机构名等;需要注意的是,在本申请实施例中,时间也是一种实体词语,也即,本申请实施例所指的实体词语为广义上的命名实体。在对上述输入语句进行实体词语识别后,将得到上述输入语句所可能包含的所有实体词语,其中,所识别得到的实体词语中可能会有发生重叠的部分。以下以实例进行说明:假定输入语句为“播五月天的阿宝专辑”,则通过上述步骤102所提取到的实体词语会有如下几个:“五月”、“五月天”、“阿宝”和“月”,可以看到,“五月”、“五月天”和“月”这三个实体词语有重叠的部分。具体地,若上述输入语句中不包含任何实体词语,则输出提醒消息,以提醒用户当前无法识别该输入语句。
步骤103,若上述输入语句存在一个以上实体词语,则基于上述输入语句所包含的一个以上实体词语,以及上述一个以上实体词语所属的实体词语类别,对上述输入语句进行替换,得到一个以上替换语料,并将上述替换语料作为识别语料;
在本申请实施例中,每一实体词语对应有所属的实体词语类别。需要注意的是,考虑到实际生活中实体词语的丰富程度,一个实体词语在不同的语境下可能会属于不同的实体词语类别,因而,此处将对识别出的所有实体词语,及各个实体词语所有可能所属的实体词语类别进行替换,以获得所有可能的替换语料。通常来说,上述替换语料的数量为一个以上。具体地,在进行替换时,有两种极端的替换方式,一种是所有实体词语都不替换,也即被替换的实体词语的数量为零;另一种是所有实体词语(在不重叠的情况下)都被替换。则在对上述输入语句进行替换时,首先以被替换的实体词语数量为0作为基础,得到一替换语料(此时,输入语句本身即为一替换语料);然后以被替换的实体词语数量为1作为基础,得到一个以上替换语料;接着再以被替换的实体词语数量为2作为基础,得到一个以上替换语料,以此类推,得到所有可能的替换语料。具体地,在进行替换时,是以实体词语所属的实体词语类别来替换掉对应的输入语句中的实体词语。例如,输入语句为“播五月天的阿宝专辑”,以被替换的实体词语为“五月天”,被替换的实体词语“五月天”所属的实体词语类别为歌手(singer)为例,所得到的替换语料为“播singer的阿宝专辑”。所得到的每一替换语料都可作为识别语料,以参与到后续意图识别的步骤中。
步骤104,若上述输入语句不存在实体词语,则将上述输入语句作为识别语料;
在本申请实施例中,可能会出现输入语句中不存在实体词语的情况,例如,若输入语句为“我要听歌”,则该输入语句中不包含任何实体词语,此时,该输入语句本身即可作为识别语料,参与到后续意图识别的步骤中。
步骤105,通过已训练的神经网络模型,得到各个识别语料的语句向量;
在本申请实施例中,上述神经网络模型所采用的可以是卷积神经网络(Convolutional Neural Networks, CNN),也可以是循环神经网络(Recurrent NeuralNetwork,RNN)或其它神经网络,此处不作限定。每一个识别语料在输入至上述神经网络模型后,将得到对应的语句向量。也即,语句向量与识别语料为一一对应的关系,可以认为每一语句向量代表了一识别语料。
步骤106,分别计算每一语句向量与预设的一项以上意图类别的相似度,以确定每一识别语料的所属意图类别;
在本申请实施例中,每一项意图类别对应一个意图。由于每一语句向量均唯一代表了一识别语料,因而,通过计算每一语句向量与预设的一项以上意图类别的相似度,即可确定与每一语句向量最为匹配的意图类别,基于此,可以基于与每一语句向量最为匹配的意图类别,确定各个语句向量所代表的识别语料的所属意图类别。
步骤107,根据每一识别语料的所属意图类别,确定上述输入语句的意图。
在本申请实施例中,在输入语句不存在实体词语的情况下,该输入语句本身即为唯一的识别语料,此时直接对该唯一的识别语料进行意图识别,可直接得到上述输入语句的意图。而在输入语句存在一个以上实体词语的情况下,通过步骤103可能会得到多个识别语料,有一些识别语料无法表达出上述输入语句的正确意图,这些识别语料即为错误语料;可将剩下的可以表达上述输入语句的正确意图的识别语料记为正确语料。由于无法确定哪一识别语料是正确语料,因而,此处需要对每一个识别语料均进行意图识别,并根据每一识别语料的所属意图类别,确定上述输入语句的意图。具体地,可以将与对应的所属意图类别的相似度最高的识别语料确定为目标识别语料,并将上述输入语句的意图确定为该目标识别语料的所属意图类别所对应的意图。例如,假定基于输入语句得到识别语料S1及S2,并确定识别语料S1的所属意图类别为“听音乐”,且识别语料S1的语句向量与“听音乐”这一意图类别的相似度为1.8;识别语料S2的所属意图类别为“翻译”,且识别语料S2的语句向量与“翻译”这一意图类别的相似度为0.8,则可将识别语料S1确定为目标识别语料,该目标识别语料S1的所属意图类别所对应的“听音乐”意图即为输入语句的意图。
可选地,上述步骤102包括:
A1、获取预设的一个以上实体词语类别;
其中,上述语音助手中可以预先设定一实体词语库,该实体词语库中包含有一个以上实体词语类别,例如,可以预先设定有星期(week)、电影(movie)、歌手(singer)、城市(city)、诗句(poetry sentence)、时间段(time quantum)、朝代(dynasty)、歌曲类型(songtag)、电影院名称(cinema name)、诗名(poetry title)、诗人(poetry poet)、导演(director)、演员(actor)、地点(location)、电话号码(phone number)、声量(volume)及身份证号码(ID number)等多个实体词语类别,研发人员可以根据其研发需求对上述示出的实体词语类别进行增减,此处不作限定。
A2、依次将上述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别;
在本申请实施例中,由于上述实体词语类别有多个,因而通常是依次选定上述一个以上实体词语类别中的一实体词语类别作为目标实体词语类别,以实现对所有实体词语类别的遍历。
A3、基于上述目标实体词语类别所关联的实体词语识别算法,对上述输入语句进行实体词语识别,得到属于上述目标实体词语类别的实体词语。
在本申请实施例中,实体词语类别可以被分为三大类,分别为数字类,开放类及封闭类。其中,数字类,指的是由数字所构成的实体词语所属的实体词语类别,例如时间,交易金额,身份证,邮政编码及其单位等实体词语类别,均属于数字类;封闭类,指的是可以穷举的无歧义的实体词语所属的实体词语类别,例如星座这一实体词语类别,一般情况下巨蟹座与巨蟹为两个均指示同一星座,因而可以认为星座这一实体词语类别下最多只有24个实体词语;开放类,指的是数量较多,且单单从该词语本身无法区分是实体词语还是普通词语的实体词语所属的实体词语类别,例如歌名这一实体词语类别或者专辑名这一实体词语类别,“如果”既可能是一首歌的歌名(属于歌名这一实体词语类别),又可能是一个普通词语。
具体地,在上述步骤A1所举出的例子中,上述星期(week)、城市(city)、诗句(poetry sentence)、时间段(time quantum)、朝代(dynasty)、歌曲类型(song tag)、电影院名称(cinema name)、诗名(poetry title)、诗人(poetry poet)、导演(director)、演员(actor)及地点(location)属于封闭类的实体词语类别;上述电影(movie)及歌手(singer)属于开放类的实体词语类别;上述电话号码(phone number)、声量(volume)及身份证号码(ID number)属于数字类的实体词语类别。
具体地,针对封闭类的实体词语类别来说,研发人员已预先对每一封闭类的实体词语类别设定了相应的词典树(trie tree);也即,若上述目标实体词语类别为封闭类的实体词语类别,则其所关联的实体词语识别算法为trie tree算法,通过研发人员针对该目标实体词语类别所预设的词典树进行匹配,即可查找出上述输入语句中所包含的属于该目标实体词语类别的实体词语。上述词典树算法的优势主要在匹配速度上,在构建好词典树后,其匹配速度往往远快于暴力匹配的匹配速度。
具体地,针对开放类的实体词语类别来说,其所关联的实体词语识别算法为biLSTM-CRF(Bidirectional Long Short-Term Memory-Conditional Random Field)算法,通过上述biLSTM-CRF算法,可查找出上述输入语句中所包含的属于该目标实体词语类别的实体词语。
具体地,针对数字类的实体词语类别来说,研发人员也已经对每一非数字类的实体词语类别设定了相应地匹配规则。以下通过几个具体实例进行说明:以身份证号码识别为例,其所采用的匹配规则为:前五位数代表地区,有一个限定的范围;随后八位数是出生日期,该日期数字也有限定范围,所以该八位数要符合日期规则,例如,不可能出现19901332的数字;最后一位数是验证位,根据身份证前面的所有数字检测该位数字是否符合预设的身份证验证规则。又以在中国所使用的手机号码识别为例,其所采用的匹配规则为:共有十一位数字,并且前两位数是限定的,例如13、15、17、18或19等。为了更加准确的判断一串数字是否为手机号码,除了判断该十一位数字,还可以再看语句中是否出现“号码”、“电话”、“拨打”或“手机”等关键字。举个例子:“交易金额为18888888888”,虽然这一串数字符合11位并且前两位限定,但是语句中没有关键字,因而可以判定这不是电话号码。再以日期识别为例,其所采用的匹配规则为日期正则表达式,该正则表达式具体为 “\d(年|year)\d(月|month)\d(日|day)”。也即,若上述目标实体词语类别为数字类的实体词语类别,则其会关联对应的实体词语识别规则,根据所关联的实体词语识别规则即可查找出上述输入语句中所包含的属于该目标实体词语类别的实体词语。
可选地,上述步骤A2包括:
A21、分别获取各个实体词语类别的优先级;
其中,研发人员可以预先设定各个目标实体词语类别的优先级。实际上,对于非数字类(也即开放类及封闭类)的实体词语类别来说,可能会发生一个实体词语在不同语境下对应不同实体词语类别的情况,例如,“五月天”可能是一首歌,也可能是歌手,因而,上述非数字类的实体词语类别可以不需要进行优先级的设置及排序;而对于数字类的实体词语类别来说,往往不可能出现一串数字既是身份证号又是手机号的情况,也即,数字类的实体词语类别的识别准确度较高,因而,上述步骤A21可以具体为:分别获取各个数字类的实体词语类别的优先级。
A22、基于上述优先级由高至低的顺序,依次将上述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别。
其中,在设定好实体词语类别的优先级后,即可依照上述优先级由高至低的顺序依次将上述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别。具体地,若只有数字类的实体词语类别设定了优先级,则仅对数字类的实体词语类别依照上述优先级由高至低的顺序确定目标实体词语类别。例如,考虑到身份证号的识别准确度非常高,因而可以设定身份证号码这一实体词语类别的优先级高于手机号码这一实体词语的优先级;则在进行实体词语识别时,若发现上述输入语句中存在一串数字,则可以先将上述身份证号码这一实体词语类别确定为目标实体词语类别,并查询该串数字是否属于身份证号码这一实体词语类别,若该串数字属于身份证号码类别,则不再需要通过其它数字类的实体词语对该串数字进行识别;若该串数字不属于身份证号码类别,则再将手机号码这一实体词语类别确定为目标实体词语类别,并查询该串数字是否属于手机号码这一实体词语类别。
可选地,上述步骤105包括:
B1、通过已训练的神经网络模型,得到每一模板语料所对应的模板语料向量;
在本申请实施例中,每一项意图类别中均包含有一个以上模板语料,因而,可以先将上述语音助手所拥有的所有模板语料输入至已训练的神经网络模型中,也即,将每一项意图类别所包含的一个以上模板语料依次输入至已训练的神经网络模型中,得到每一模板语料所对应的模板语料向量。可选地,语音助手可以预先设定有一意图库,该意图库中共包含有N项意图类别,则针对第i项意图类别,假定该第i项意图类别包含有模板语料i1、模板语料i2及模板语料i3,则将上述模板语料i1、模板语料i2及模板语料i3输入至已训练的神经网络模型之后,可得到模板语料i1的模板语料向量vectori1,模板语料i2的模板语料向量vectori2及模板语料i3的模板语料向量vectori3。
B2、获取每一项意图类别所对应的意图类别向量;
在本申请实施例中,每一项意图类别也已预先设定了所对应的意图类别向量。具体地,在对上述语音助手的训练结束后,即可得到每一项意图类别所对应的意图类别向量。
B3、分别计算每一语句向量与每一模板语料向量的相似度,并分别计算每一语句向量与每一意图类别向量的相似度,以确定每一识别语料的所属意图类别。
在本申请实施例中,一方面需要计算每一语句向量与每一模板语料向量的相似度,另一方面还需要计算每一语句向量与每一意图类别向量的相似度,以此来确定每一识别语料的所属意图类别。具体地,上述步骤B3包括:
B31、计算待匹配识别语料的语句向量与待匹配意图类别的意图类别向量的距离作为第一距离;
在本申请实施例中,由于将对每一个识别语料都进行意图识别的操作,因而,此处可以将任一识别语料选定为待匹配识别语料;由于将计算上述待匹配识别语料的语句向量与每一项意图类别的相似度,因而,此处可以将任一项意图类别选定为待匹配意图类别,并基于待匹配识别语料及待匹配意图类别对上述步骤B3进行说明。具体地,先计算待匹配识别语料的语句向量与待匹配意图类别的意图类别向量的距离,并将该距离作为待匹配识别语料与待匹配意图类别的第一距离。例如,假定第i项意图类别的意图类别向量为class_verctori,则可直接计算上述待匹配识别语料的语句向量与第i项意图类别的意图类别向量class_verctori的距离,假定计算所得距离为0.8,则可以确定待匹配识别语料与待匹配意图类别的第一距离为0.8。
B32、分别计算待匹配识别语料的语句向量与上述待匹配意图类别所包含的每一模板语料所对应的模板语料向量的距离,并筛选得到距离最大值作为第二距离;
在本申请实施例中,由于待匹配意图类别中包含有一个以上模板语料,因而,可以先获取上述待匹配意图类别所包含的每一模板语料所对应的模板语料向量,随后分别计算待匹配识别语料的语句向量与上述待匹配意图类别所包含的每一模板语料所对应的模板语料向量的距离,随后进行筛选,将筛选得到的距离最大值作为待匹配识别语料与待匹配意图类别的第二距离。例如,假定第i项意图类别中所包含的模板语料有模板语料i1、模板语料i1及模板语料i1,得到模板语料i1的模板语料向量vectori1,模板语料i2的模板语料向量vectori2及模板语料的模板语料i3向量vectori3;又假定计算得到的待匹配识别语料的语句向量与模板语料向量vectori1的距离为0.6,待匹配识别语料的语句向量与模板语料向量vectori2的距离为0.8,待匹配识别语料的语句向量与模板语料向量vectori3的距离为0.7,则筛选可得待匹配识别语料的语句向量与模板语料向量vectori2的距离0.8为距离最大值,也即,可以确定待匹配识别语料与待匹配意图类别的第二距离为0.8。通过加入上述第二距离,可以有效提高意图识别的预测过程中的稳定性及鲁棒性。
需要注意的是,上述距离均为余弦距离,取值范围为[0,1]。上述距离越大,则认为作为计算对象的两个输入越接近。
B33、基于上述第一距离与上述第二距离确定上述待匹配识别语料与上述待匹配意图类别的相似度;
在本申请实施例中,在计算得到了待匹配识别语料与待匹配意图类别的第一距离及第二距离之后,对上述第一距离及第二距离进行求和处理,所得的第一距离与第二距离的和即可作为上述待匹配识别语料与上述待匹配意图类别的相似度,上述相似度的取值范围为[0,2]。例如,根据步骤B31及步骤B32所示出的例子,计算得到待匹配识别语料与待匹配意图类别的第一距离为0.8,第二距离为0.7,则可确定待匹配识别语料与待匹配意图类别的相似度为1.5。上述待匹配识别语料与上述待匹配意图类别的相似度越高,则认为上述待匹配识别语料与上述待匹配意图类别越匹配。
B34、将与上述待匹配识别语料的相似度最高的意图类别确定为上述待匹配识别语料的所属意图类别。
在本申请实施例中,可以通过上述步骤B31至步骤B33,得到上述待匹配替换与每一项意图类别的相似度,基于此,可以将与上述待匹配识别语料的相似度最高的意图类别确定为上述待匹配识别语料的所属意图类别。例如,假定共有3项意图类别,若计算得到待匹配识别语料与第1项意图类别的相似度为1.5,与第2项意图类别的相似度为1,与第3项意图类别的相似度为1.7,则可确定上述第3项意图类别为上述待匹配识别语料的所属意图类别。
可选地,请参阅图2,上述语句识别方法还包括对上述神经网络模型的训练,上述训练的过程包括:
C1、初始化每一项待训练意图类别所对应的待训练意图类别向量;
C2、初始化待训练的神经网络模型的模型参数;
在本申请实施例中,在需要对神经网络模型进行训练之初,首先需要初始化上述神经网络模型的模型参数,以及每一项待训练意图类别所对应的待训练意图类别向量。具体地,上述步骤C1及C2均采用随机初始化的方式进行初始化操作。
C3、将预设的待训练模板输入至上述神经网络模型,得到待训练模板向量;
在本申请实施例中,上述待训练模板的表现形式与上述替换语料类似,可以是不包含实体词语的语料,或者,也可以是已将实体词语替换为对应词槽(也即实体词语所属的实体词语类别)的语料,此处不作限定。
C4、根据上述待训练模板向量与每一待训练意图类别向量的相似度,得到上述待训练模板的意图识别训练结果;
在本申请实施例中,上述相似度可通过距离的形式表示。
C5、基于上述意图识别训练结果进行反向传播,对上述神经网络模型的模型参数及每一项待训练意图类别所对应的待训练意图类别向量进行更新。
在本申请实施例中,损失函数采用的是余弦损失函数,上述反向传播有两个方向,分别为待训练意图类别向量的方向,以及神经网络模型的方向,也即,同时对上述神经网络模型的模型参数及每一项待训练意图类别所对应的待训练意图类别向量进行更新。在更新完毕后,返回执行上述步骤C3及后续步骤,直至损失已达到收敛状态。
以下通过实例说明本申请实施例所采用的语句识别方法的优势:若采用先意图识别再实体词语识别的方式,则意图识别时的训练语料的示例为:(1)去北京的航班(2)去广州的航班(3)听周某某的歌曲A(4)听刘某某的歌曲B;而本申请实施例中,采用先实体词语识别再意图识别的方式,则意图识别时的训练语料的示例为:(1)去city的航班(2)听singer的song。可以看出,在先意图识别再实体词语识别的方式中,由于歌曲就有几百万首,歌手及城市也有上万个,这会导致训练语料的数量的激增;而在本申请实施例所提供的方案中,不论有多少首歌,多少个歌手,多少个城市,由于分别已通过song、singer及city这些实体词语类别进行了替换,因而无需关注歌曲、歌手及城市具体是什么,这可将训练语料的数量控制在一定范围之内;进一步地,在先意图识别再实体词语识别的方式中,实体词语(例如北京,广州及周某某等)会对意图识别结果产生影响;而在本申请实施例所提供的方案中,因为意图识别的关键词就是如“航班”,“去”,“听”,“歌”等词语,因而可因剔除各个实体词语对意图识别结果的影响。
为了更好的说明本申请实施例中语音助手的工作流程,下面以具体实例进行说明:
假定输入语句为“播五月天的阿宝专辑”,则通过各个实体词语类别与上述输入语句的匹配,筛选出的能够匹配到的实体词语为:
singer:[“五月”,“五月天”,“阿宝”]
poetry title:[“月”]
song:[“五月”,“五月天”]
album:[“阿宝”]
上述结果中,冒号左侧的singer、poetry title、song及album为不同的实体词语类别,冒号右侧为该实体词语类别下所匹配得到的输入语句中的实体词语。在基于识别得到的各个实体词语,以及各个实体词语所属的实体词语类别,对上述输入语句进行替换后,所得到的识别语料可以包括:
播五月天的阿宝专辑(被替换的实体词语数量为0)
播五月天的singer专辑(被替换的实体词语数量为1)
播song的阿宝专辑(被替换的实体词语数量为1)
播song天的阿宝专辑(被替换的实体词语数量为1)
播singer天的阿宝专辑(被替换的实体词语数量为1)
播singer的阿宝专辑(被替换的实体词语数量为1)
播五poetry title天的阿宝专辑(被替换的实体词语数量为1)
播五月天的album专辑(被替换的实体词语数量为1)
播song的singer专辑(被替换的实体词语数量为2)
播song天的singer专辑(被替换的实体词语数量为2)
播singer的album专辑(被替换的实体词语数量为2)
播singer天的album专辑(被替换的实体词语数量为2)
……(被替换的实体词语数量为n)
篇幅所限,本例中所替换得到的识别语料并未穷举,而是仅给出了几个示例。可以看到,从被替换的实体词语数量为0开始,依次递增被替换的实体词语数量,可得到多个识别语料。随后,分别对每一识别语料都进行意图识别,得到每一识别语料的所属意图类别,以及每一识别语料与其所属意图类别相似度。在本例所给出的识别语料中,假定“播singer的album专辑”这一识别语料与其所属意图类别“听音乐”的相似度最高,则可将“播singer的album专辑”这一识别语料作为目标识别语料,该目标识别语料中被替换的实体词语及其实体词语类别分别为singer:五月天及album:阿宝,所得到的目标识别语料的意图类别“听音乐”所指示的意图作为输入语句“播五月天的阿宝专辑”的意图。
由上可见,通过本申请方案,在对输入语句进行识别时,首先进行实体词语的识别,在输入语句存在实体词语的情况下,将实体词语进行了替换,得到若干个替换语料作为识别语料,在输入语句不存在实体词语的情况下,将输入语句自身作为识别语料,再分别对若干个识别语料进行意图的识别,上述过程可提升语音助手识别语句的速度;并且,在训练上述语音助手的过程中,可以减少训练数据的数据量。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
实施例二
本申请实施例二提供了一种语句识别装置,上述语句识别装置可集成于智能设备中,如图3所示,本申请实施例中的语句识别装置300包括:
接收单元301,用于接收输入语句;
实体词语识别单元302,用于对上述输入语句进行实体词语识别;
替换单元303,用于若上述输入语句存在一个以上实体词语,则基于上述输入语句所包含的一个以上实体词语,以及上述一个以上实体词语所属的实体词语类别,对上述输入语句进行替换,得到一个以上替换语料;
识别语料确定单元304,用于当上述输入语句不存在实体词语时,将上述输入语句作为识别语料,当上述输入语句存在一个以上实体词语时,将上述替换语料作为识别语料;
获取单元305,用于通过已训练的神经网络模型,得到各个识别语料的语句向量;
意图识别单元306,用于分别计算每一语句向量与预设的一项以上意图类别的相似度,以确定每一识别语料的所属意图类别,其中,每一项意图类别对应一个意图;
意图确定单元307,用于根据每一识别语料的所属意图类别,确定上述输入语句的意图。
可选地,上述实体词语识别单元302,包括:
类别获取子单元,用于获取预设的一个以上实体词语类别;
类别确定子单元,用于依次将上述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别;
词语识别子单元,用于基于上述目标实体词语类别所关联的实体词语识别算法,对上述输入语句进行实体词语识别,得到属于上述目标实体词语类别的实体词语。
可选地,上述类别确定子单元,包括:
优先级获取子单元,用于分别获取各个实体词语类别的优先级;
目标实体词语类别确定子单元,用于基于上述优先级由高至低的顺序,依次将上述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别。
可选地,上述意图识别单元305,包括:
模板语料向量获取子单元,用于通过已训练的神经网络模型,得到每一模板语料所对应的模板语料向量,其中,每一项意图类别中包含有一个以上模板语料;
意图类别向量获取子单元,用于获取每一项意图类别所对应的意图类别向量;
意图类别确定子单元,用于分别计算每一语句向量与每一模板语料向量的相似度,并分别计算每一语句向量与每一意图类别向量的相似度,以确定每一识别语料的所属意图类别。
可选地,上述意图类别确定子单元,包括:
第一距离计算子单元,用于计算待匹配识别语料的语句向量与待匹配意图类别的意图类别向量的距离作为第一距离,其中,待匹配识别语料为任一识别语料,待匹配意图类别为任一意图类别;
第二距离计算子单元,用于分别计算待匹配识别语料的语句向量与上述待匹配意图类别所包含的每一模板语料所对应的模板语料向量的距离,并筛选得到距离最大值作为第二距离;
相似度确定子单元,用于基于上述第一距离与上述第二距离确定上述待匹配识别语料与上述待匹配意图类别的相似度;
类别确定子单元,用于将与上述待匹配识别语料的相似度最高的意图类别确定为上述待匹配识别语料的所属意图类别。
可选地,上述语句识别装置300还包括
训练单元,用于对上述神经网络模型进行训练:
其中,上述训练单元包括:
第一初始化子单元,用于初始化每一项待训练意图类别所对应的待训练意图类别向量;
第二初始化子单元,用于初始化待训练的神经网络模型的模型参数;
待训练模板向量获取子单元,用于将预设的待训练模板输入至上述神经网络模型,得到待训练模板向量;
意图识别训练结果获取子单元,用于根据上述待训练模板向量与每一待训练意图类别向量的相似度,得到上述待训练模板的意图识别训练结果;
更新子单元,用于基于上述意图识别训练结果进行反向传播,对上述神经网络模型的模型参数及每一项待训练意图类别所对应的待训练意图类别向量进行更新。
由上可见,通过本申请方案,在对输入语句进行识别时,首先进行实体词语的识别,在输入语句存在实体词语的情况下,将实体词语进行了替换,得到若干个替换语料作为识别语料,在输入语句不存在实体词语的情况下,将输入语句自身作为识别语料,再分别对若干个识别语料进行意图的识别,上述过程可提升语音助手识别语句的速度;并且,在训练上述语音助手的过程中,可以减少训练数据的数据量。
实施例三
本申请实施例三提供了一种智能设备,请参阅图4,本申请实施例中的智能设备4包括:存储器401,一个或多个处理器402(图4中仅示出一个)及存储在存储器401上并可在处理器上运行的计算机程序。其中:存储器401用于存储软件程序以及模块,处理器402通过运行存储在存储器401的软件程序以及单元,从而执行各种功能应用以及数据处理,以获取上述预设事件对应的资源。具体地,处理器402通过运行存储在存储器401的上述计算机程序时实现以下步骤:
接收输入语句;
对上述输入语句进行实体词语识别;
若上述输入语句不存在实体词语,则将上述输入语句作为识别语料;
若上述输入语句存在一个以上实体词语,则基于上述输入语句所包含的一个以上实体词语,以及上述一个以上实体词语所属的实体词语类别,对上述输入语句进行替换,得到一个以上替换语料,并将上述替换语料作为识别语料;
通过已训练的神经网络模型,得到各个识别语料的语句向量;
分别计算每一语句向量与预设的一项以上意图类别的相似度,以确定每一识别语料的所属意图类别,其中,每一项意图类别对应一个意图;
根据每一识别语料的所属意图类别,确定上述输入语句的意图。
假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,上述对上述输入语句进行实体词语识别,得到上述输入语句所包含的一个以上实体词语,包括:
获取预设的一个以上实体词语类别;
依次将上述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别;
基于上述目标实体词语类别所关联的实体词语识别算法,对上述输入语句进行实体词语识别,得到属于上述目标实体词语类别的实体词语。
在上述二种可能的实施方式作为基础而提供的第三种可能的实施方式中,上述依次将上述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别,包括:
分别获取各个实体词语类别的优先级;
基于上述优先级由高至低的顺序,依次将上述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别。
在上述第一种可能的实施方式作为基础而提供的第四种可能的实施方式中,上述分别计算每一语句向量与预设的一项以上意图类别的相似度,以确定每一识别语料的所属意图类别,包括:
通过已训练的神经网络模型,得到每一模板语料所对应的模板语料向量,其中,每一项意图类别中包含有一个以上模板语料;
获取每一项意图类别所对应的意图类别向量;
分别计算每一语句向量与每一模板语料向量的相似度,并分别计算每一语句向量与每一意图类别向量的相似度,以确定每一识别语料的所属意图类别。
在上述第四种可能的实施方式作为基础而提供的第五种可能的实施方式中,上述分别计算每一语句向量与每一模板语料向量的相似度,并分别计算每一语句向量与每一意图类别向量的相似度,以确定每一识别语料的所属意图类别,包括:
计算待匹配识别语料的语句向量与待匹配意图类别的意图类别向量的距离作为第一距离,其中,待匹配识别语料为任一识别语料,待匹配意图类别为任一意图类别;
分别计算待匹配识别语料的语句向量与上述待匹配意图类别所包含的每一模板语料所对应的模板语料向量的距离,并筛选得到距离最大值作为第二距离;
基于上述第一距离与上述第二距离确定上述待匹配识别语料与上述待匹配意图类别的相似度;
将与上述待匹配识别语料的相似度最高的意图类别确定为上述待匹配识别语料的所属意图类别。
在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基础,或者上述第三种可能的实施方式作为基础,或者上述第四种可能的实施方式作为基础,或者上述第五种可能的实施方式作为基础而提供的第六种可能的实施方式中,处理器402通过运行存储在存储器401的上述计算机程序时还实现以下步骤:
初始化每一项待训练意图类别所对应的待训练意图类别向量;
初始化待训练的神经网络模型的模型参数;
将预设的待训练模板输入至上述神经网络模型,得到待训练模板向量;
根据上述待训练模板向量与每一待训练意图类别向量的相似度,得到上述待训练模板的意图识别训练结果;
基于上述意图识别训练结果进行反向传播,对上述神经网络模型的模型参数及每一项待训练意图类别所对应的待训练意图类别向量进行更新。
应当理解,在本申请实施例中,所称处理器402可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器 (DigitalSignal Processor,DSP)、专用集成电路 (Application Specific Integrated Circuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器401可以包括只读存储器和随机存取存储器,并向处理器402 提供指令和数据。存储器401的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器401还可以存储设备类别的信息。
由上可见,通过本申请方案,在对输入语句进行识别时,首先进行实体词语的识别,在输入语句存在实体词语的情况下,将实体词语进行了替换,得到若干个替换语料作为识别语料,在输入语句不存在实体词语的情况下,将输入语句自身作为识别语料,再分别对若干个识别语料进行意图的识别,上述过程可提升语音助手识别语句的速度;并且,在训练上述语音助手的过程中,可以减少训练数据的数据量。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者外部设备软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关联的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读存储介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机可读存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括是电载波信号和电信信号。
以上上述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (7)
1.一种语句识别方法,其特征在于,包括:
接收输入语句;
对所述输入语句进行实体词语识别,其中,实体词语为包括时间在内的广义上的命名实体;
若所述输入语句不存在实体词语,则将所述输入语句作为识别语料;
若所述输入语句存在一个以上实体词语,则以被替换的实体词语数量由少至多的顺序,基于所述输入语句所包含的一个以上实体词语,以及所述一个以上实体词语所属的实体词语类别,对所述输入语句进行替换,得到一个以上替换语料,并将所述替换语料作为识别语料;
通过已训练的神经网络模型,得到各个识别语料的语句向量;
分别计算每一语句向量与预设的一项以上意图类别的相似度,以确定每一识别语料的所属意图类别,包括:通过已训练的神经网络模型,得到每一模板语料所对应的模板语料向量;获取每一项意图类别所对应的意图类别向量;计算待匹配识别语料的语句向量与待匹配意图类别的意图类别向量的距离作为第一距离,其中,待匹配识别语料为任一识别语料,待匹配意图类别为任一意图类别;分别计算待匹配识别语料的语句向量与所述待匹配意图类别所包含的每一模板语料所对应的模板语料向量的距离,并筛选得到距离最大值作为第二距离;基于所述第一距离与所述第二距离确定所述待匹配识别语料与所述待匹配意图类别的相似度;将与所述待匹配识别语料的相似度最高的意图类别确定为所述待匹配识别语料的所属意图类别,以确定每一识别语料的所属意图类别;其中,每一项意图类别中包含有一个以上模板语料,且每一项意图类别对应一个意图;
根据每一识别语料的所属意图类别,确定所述输入语句的意图;
其中,所述语句识别方法还包括对所述神经网络模型的训练,所述训练的过程包括:
初始化每一项待训练意图类别所对应的待训练意图类别向量;
初始化待训练的神经网络模型的模型参数;
将预设的待训练模板输入至所述神经网络模型,得到待训练模板向量;
根据所述待训练模板向量与每一待训练意图类别向量的相似度,得到所述待训练模板的意图识别训练结果;
基于所述意图识别训练结果进行反向传播,对所述神经网络模型的模型参数及每一项待训练意图类别所对应的待训练意图类别向量进行更新。
2.如权利要求1所述的语句识别方法,其特征在于,所述对所述输入语句进行实体词语识别,包括:
获取预设的一个以上实体词语类别;
依次将所述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别;
基于所述目标实体词语类别所关联的实体词语识别算法,对所述输入语句进行实体词语识别,得到属于所述目标实体词语类别的实体词语。
3.如权利要求2所述的语句识别方法,其特征在于,所述依次将所述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别,包括:
分别获取各个实体词语类别的优先级;
基于所述优先级由高至低的顺序,依次将所述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别。
4.一种语句识别装置,其特征在于,包括:
接收单元,用于接收输入语句;
实体词语识别单元,用于对所述输入语句进行实体词语识别,其中,实体词语为包括时间在内的广义上的命名实体;
替换单元,用于若所述输入语句存在一个以上实体词语,则以被替换的实体词语数量由少至多的顺序,基于所述输入语句所包含的一个以上实体词语,以及所述一个以上实体词语所属的实体词语类别,对所述输入语句进行替换,得到一个以上替换语料;
识别语料确定单元,用于当所述输入语句不存在实体词语时,将所述输入语句作为识别语料,当所述输入语句存在一个以上实体词语时,将所述替换语料作为识别语料;
获取单元,用于通过已训练的神经网络模型,得到各个识别语料的语句向量;
意图识别单元,用于分别计算每一语句向量与预设的一项以上意图类别的相似度,以确定每一识别语料的所属意图类别,其中,每一项意图类别对应一个意图;
意图确定单元,用于根据每一识别语料的所属意图类别,确定所述输入语句的意图;
其中,所述意图识别单元,包括:
模板语料向量获取子单元,用于通过已训练的神经网络模型,得到每一模板语料所对应的模板语料向量,其中,每一项意图类别中包含有一个以上模板语料;
意图类别向量获取子单元,用于获取每一项意图类别所对应的意图类别向量;
意图类别确定子单元,用于分别计算每一语句向量与每一模板语料向量的相似度,并分别计算每一语句向量与每一意图类别向量的相似度,以确定每一识别语料的所属意图类别;
其中,所述意图类别确定子单元,包括:
第一距离计算子单元,用于计算待匹配识别语料的语句向量与待匹配意图类别的意图类别向量的距离作为第一距离,其中,待匹配识别语料为任一识别语料,待匹配意图类别为任一意图类别;
第二距离计算子单元,用于分别计算待匹配识别语料的语句向量与所述待匹配意图类别所包含的每一模板语料所对应的模板语料向量的距离,并筛选得到距离最大值作为第二距离;
相似度确定子单元,用于基于所述第一距离与所述第二距离确定所述待匹配识别语料与所述待匹配意图类别的相似度;
类别确定子单元,用于将与所述待匹配识别语料的相似度最高的意图类别确定为所述待匹配识别语料的所属意图类别;
其中,所述语句识别装置还包括
训练单元,用于对所述神经网络模型进行训练:
其中,所述训练单元包括:
第一初始化子单元,用于初始化每一项待训练意图类别所对应的待训练意图类别向量;
第二初始化子单元,用于初始化待训练的神经网络模型的模型参数;
待训练模板向量获取子单元,用于将预设的待训练模板输入至所述神经网络模型,得到待训练模板向量;
意图识别训练结果获取子单元,用于根据所述待训练模板向量与每一待训练意图类别向量的相似度,得到所述待训练模板的意图识别训练结果;
更新子单元,用于基于所述意图识别训练结果进行反向传播,对所述神经网络模型的模型参数及每一项待训练意图类别所对应的待训练意图类别向量进行更新。
5.如权利要求4所述的语句识别装置,其特征在于,所述实体词语识别单元,包括:
类别获取子单元,用于获取预设的一个以上实体词语类别;
类别确定子单元,用于依次将所述一个以上实体词语类别中的一实体词语类别确定为目标实体词语类别;
词语识别子单元,用于基于所述目标实体词语类别所关联的实体词语识别算法,对所述输入语句进行实体词语识别,得到属于所述目标实体词语类别的实体词语。
6.一种智能设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3任一项所述方法的步骤。
7.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911111261.XA CN111046667B (zh) | 2019-11-14 | 2019-11-14 | 一种语句识别方法、语句识别装置及智能设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911111261.XA CN111046667B (zh) | 2019-11-14 | 2019-11-14 | 一种语句识别方法、语句识别装置及智能设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111046667A CN111046667A (zh) | 2020-04-21 |
CN111046667B true CN111046667B (zh) | 2024-02-06 |
Family
ID=70232818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911111261.XA Active CN111046667B (zh) | 2019-11-14 | 2019-11-14 | 一种语句识别方法、语句识别装置及智能设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111046667B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111666751B (zh) * | 2020-06-04 | 2023-09-29 | 北京百度网讯科技有限公司 | 训练文本扩充方法、装置、设备以及存储介质 |
CN111931512A (zh) * | 2020-07-01 | 2020-11-13 | 联想(北京)有限公司 | 语句意图的确定方法及装置、存储介质 |
CN111949793B (zh) * | 2020-08-13 | 2024-02-27 | 深圳市欢太科技有限公司 | 用户意图识别方法、装置及终端设备 |
CN113012687B (zh) * | 2021-03-05 | 2022-05-13 | 北京嘀嘀无限科技发展有限公司 | 一种信息交互方法、装置及电子设备 |
CN113657120B (zh) * | 2021-08-23 | 2024-03-19 | 深圳卫安智能机器人科技有限公司 | 人机交互意图分析方法、装置、计算机设备及存储介质 |
CN114357973B (zh) * | 2021-12-10 | 2023-04-07 | 马上消费金融股份有限公司 | 意图识别方法、装置、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108334891A (zh) * | 2017-12-15 | 2018-07-27 | 北京奇艺世纪科技有限公司 | 一种任务型意图分类方法及装置 |
CN109542247A (zh) * | 2018-11-14 | 2019-03-29 | 腾讯科技(深圳)有限公司 | 句式推荐方法及装置、电子设备、存储介质 |
CN109800306A (zh) * | 2019-01-10 | 2019-05-24 | 深圳Tcl新技术有限公司 | 意图分析方法、装置、显示终端及计算机可读存储介质 |
CN109920415A (zh) * | 2019-01-17 | 2019-06-21 | 平安城市建设科技(深圳)有限公司 | 基于语音识别的人机问答方法、装置、设备和存储介质 |
CN110245238A (zh) * | 2019-04-18 | 2019-09-17 | 上海交通大学 | 基于规则推理和句法图式的图嵌入方法及系统 |
CN110263338A (zh) * | 2019-06-18 | 2019-09-20 | 北京明略软件系统有限公司 | 替换实体名称方法、装置、存储介质及电子装置 |
CN110309315A (zh) * | 2018-04-23 | 2019-10-08 | 腾讯科技(深圳)有限公司 | 模板文件的生成方法、装置、计算机可读介质及电子设备 |
CN110399609A (zh) * | 2019-06-25 | 2019-11-01 | 众安信息技术服务有限公司 | 意图识别方法、装置、设备及计算机可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688614B (zh) * | 2017-08-04 | 2018-08-10 | 平安科技(深圳)有限公司 | 意图获取方法、电子装置及计算机可读存储介质 |
-
2019
- 2019-11-14 CN CN201911111261.XA patent/CN111046667B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108334891A (zh) * | 2017-12-15 | 2018-07-27 | 北京奇艺世纪科技有限公司 | 一种任务型意图分类方法及装置 |
CN110309315A (zh) * | 2018-04-23 | 2019-10-08 | 腾讯科技(深圳)有限公司 | 模板文件的生成方法、装置、计算机可读介质及电子设备 |
CN109542247A (zh) * | 2018-11-14 | 2019-03-29 | 腾讯科技(深圳)有限公司 | 句式推荐方法及装置、电子设备、存储介质 |
CN109800306A (zh) * | 2019-01-10 | 2019-05-24 | 深圳Tcl新技术有限公司 | 意图分析方法、装置、显示终端及计算机可读存储介质 |
CN109920415A (zh) * | 2019-01-17 | 2019-06-21 | 平安城市建设科技(深圳)有限公司 | 基于语音识别的人机问答方法、装置、设备和存储介质 |
CN110245238A (zh) * | 2019-04-18 | 2019-09-17 | 上海交通大学 | 基于规则推理和句法图式的图嵌入方法及系统 |
CN110263338A (zh) * | 2019-06-18 | 2019-09-20 | 北京明略软件系统有限公司 | 替换实体名称方法、装置、存储介质及电子装置 |
CN110399609A (zh) * | 2019-06-25 | 2019-11-01 | 众安信息技术服务有限公司 | 意图识别方法、装置、设备及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
结合句法特征和卷积神经网络的多意图识别模型;杨春妮 等;计算机应用(第07期);第15-21页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111046667A (zh) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111046667B (zh) | 一种语句识别方法、语句识别装置及智能设备 | |
CN111046653B (zh) | 一种语句识别方法、语句识别装置及智能设备 | |
CN111178077B (zh) | 一种语料生成方法、语料生成装置及智能设备 | |
US11403345B2 (en) | Method and system for processing unclear intent query in conversation system | |
WO2020147428A1 (zh) | 交互内容生成方法、装置、计算机设备及存储介质 | |
US20220337538A1 (en) | Customized message suggestion with user embedding vectors | |
US20200042613A1 (en) | Processing an incomplete message with a neural network to generate suggested messages | |
CN111198938B (zh) | 一种样本数据处理方法、样本数据处理装置及电子设备 | |
CN107885874A (zh) | 数据查询方法和装置、计算机设备及计算机可读存储介质 | |
US11604925B1 (en) | Architecture for gazetteer-augmented named entity recognition | |
WO2023040493A1 (zh) | 事件检测 | |
CN112163067A (zh) | 一种语句答复方法、语句答复装置及电子设备 | |
CN112214652B (zh) | 一种报文生成方法、装置及设备 | |
CN110619050A (zh) | 意图识别方法及设备 | |
CN109767758A (zh) | 车载语音分析方法、系统、存储介质以及设备 | |
CN115840808B (zh) | 科技项目咨询方法、装置、服务器及计算机可读存储介质 | |
CN110046231A (zh) | 一种客服信息处理方法、服务器和系统 | |
CN111444321B (zh) | 问答方法、装置、电子设备和存储介质 | |
CN112668325B (zh) | 一种机器翻译增强方法、系统、终端及存储介质 | |
CN110020429A (zh) | 语义识别方法及设备 | |
WO2022142028A1 (zh) | 对话状态确定方法、终端设备及存储介质 | |
CN117112727A (zh) | 适用于云计算业务的大语言模型微调指令集构建方法 | |
CN110287487A (zh) | 主谓语识别方法、装置、设备及计算机可读存储介质 | |
CN112541357B (zh) | 实体识别方法、装置及智能设备 | |
CN111046654B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |