CN113963682A - 一种语音识别纠正方法、装置、电子设备及存储介质 - Google Patents
一种语音识别纠正方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113963682A CN113963682A CN202111233890.7A CN202111233890A CN113963682A CN 113963682 A CN113963682 A CN 113963682A CN 202111233890 A CN202111233890 A CN 202111233890A CN 113963682 A CN113963682 A CN 113963682A
- Authority
- CN
- China
- Prior art keywords
- candidate
- pinyin
- sentence
- word
- text sentence
- 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
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012937 correction Methods 0.000 title claims abstract description 25
- 239000013598 vector Substances 0.000 claims abstract description 61
- 238000012549 training Methods 0.000 claims description 47
- 238000003062 neural network model Methods 0.000 claims description 46
- 238000012216 screening Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 7
- 230000001419 dependent effect Effects 0.000 abstract description 3
- 235000021395 porridge Nutrition 0.000 description 14
- 230000006870 function Effects 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000011218 segmentation Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/005—Language recognition
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/086—Recognition of spelled words
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/088—Word spotting
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Machine Translation (AREA)
Abstract
本申请提供一种语音识别纠正方法、装置、电子设备及存储介质,该方法包括:获取待处理语音,并对待处理语音进行语音识别,获得识别出的文本语句;根据拼音空间距离确定文本语句的至少一个候选文本句;使用N元语言模型从至少一个候选文本句中确定出最优近音候选句;判断文本语句的字平均负对数分数是否小于最优近音候选句的字平均负对数分数;若是,则将识别出的文本语句纠正为最优近音候选句。通过使用N元语言模型从语音相近的至少一个候选文本语句中确定出最优近音候选句,而不是词频向量余弦相似度相近的候选文本语句,有效地考虑到语境依赖语音上的相似关系,从而提高了对语音识别结果进行纠错的正确率。
Description
技术领域
本申请涉及深度学习、语音识别和识别结果纠正的技术领域,具体而言,涉及一种语音识别纠正方法、装置、电子设备及存储介质。
背景技术
语音识别(Voice Recognition),是指与机器进行语音交流相关的技术或者学科,即让机器明白人类说的话;语音识别技术所涉及的领域包括:信号处理、模式识别、概率论和信息论、发声机理和听觉机理、前端处理等等。
目前,针对语音识别出来的文本语句结果进行修改或者纠正的方法大都是基于语境独立假设,具体例如:根据词语对的频向量余弦相似度来确定是否替换文本语句结果中的目标词。然而,在具体的实践过程中发现,使用基于语境独立假设的方法对语音识别结果进行纠错的正确率较低。
发明内容
本申请的目的在于提供一种语音识别纠正方法、装置、电子设备及存储介质,用于改善对语音识别结果进行纠错的正确率较低的问题。
本申请实施例提供了一种语音识别纠正方法,包括:获取待处理语音,并对待处理语音进行语音识别,获得识别出的文本语句;根据拼音空间距离确定文本语句的至少一个候选文本句;使用N元语言模型从至少一个候选文本句中确定出最优近音候选句;判断文本语句的字平均负对数分数是否小于最优近音候选句的字平均负对数分数;若是,则将识别出的文本语句纠正为最优近音候选句。在上述的实现过程中,通过使用N元语言模型从语音相近的至少一个候选文本语句中确定出最优近音候选句,而不是词频向量余弦相似度相近的候选文本语句,有效地考虑到语境依赖语音上的相似关系,从而提高了对语音识别结果进行纠错的正确率。
可选地,在本申请实施例中,在判断文本语句的字平均负对数分数是否小于最优近音候选句的字平均负对数分数之后,还包括:若文本语句的字平均负对数分数大于最优近音候选句的字平均负对数分数,则舍弃最优近音候选句,并输出识别出的文本语句。
可选地,在本申请实施例中,使用N元语言模型从至少一个候选文本句中确定出最优近音候选句,包括:使用N元语言模型计算至少一个候选文本句的字平均负对数分数;将至少一个候选文本句中字平均负对数分数最高的候选文本句确定为最优近音候选句。在上述的实现过程中,通过使用N元语言模型计算至少一个候选文本句的字平均负对数分数,并将至少一个候选文本句中字平均负对数分数最高的候选文本句确定为最优近音候选句,从而既避免了切词边界误判或分词不准确的情况,又考虑到语境依赖,从而提高了对语音识别结果进行纠错的正确率。
可选地,在本申请实施例中,根据拼音空间距离确定文本语句的至少一个候选文本句,包括:在拼音词典中查找到文本语句对应的多个字拼音;将多个字拼音转换为多个拼音向量;从多个拼音向量中筛选出预设数量的拼音向量作为移动窗口,并确定与移动窗口中目标词的拼音空间距离小于距离阈值的至少一个候选词;针对至少一个候选词中的每个候选词,将文本语句中的目标词替换为该候选词,获得文本语句的至少一个候选文本句。在上述的实现过程中,通过确定与移动窗口中目标词的拼音空间距离小于距离阈值的至少一个候选词,避免了仅仅从统计意义上来体现拼音相似程度关系,有效地反映出拼音在语音上的近似程度关系,从而提高了对语音识别结果进行纠错的正确率。
可选地,在本申请实施例中,拼音向量,包括:声母分向量、韵母分向量和声调分向量;确定与移动窗口中目标词的拼音空间距离小于距离阈值的至少一个候选词,包括:分别计算目标词的声母分向量与候选词的声母分向量之间的第一距离,目标词的韵母分向量与候选词的韵母分向量之间的第二距离,目标词的声调分向量与候选词的声调分向量之间的第三距离;使用神经网络模型根据第一距离、第二距离和第三距离预测出目标词与候选词之间的拼音空间距离,并根据拼音空间距离筛选出小于距离阈值的至少一个候选词。在上述的实现过程中,通过从声母、韵母和音调三个维度的拼音空间距离来搜索候选词,避免仅仅从统计意义上来体现拼音相似程度关系,有效地反映出拼音在语音上的近似程度关系,从而提高了对语音识别结果进行纠错的正确率。
可选地,在本申请实施例中,在使用神经网络模型根据第一距离、第二距离和第三距离预测出目标词与候选词之间的拼音空间距离之前,还包括:获取多个拼音组和每个拼音组的样本标签,拼音组包括:第一拼音和第二拼音,样本标签为第一拼音与第二拼音之间的拼音空间距离;以多个拼音组为训练数据,以多个拼音组中每个拼音组的样本标签为训练标签,对神经网络模型进行训练,获得神经网络模型。在上述的实现过程中,通过多个拼音组为训练数据,以多个拼音组的拼音空间距离为训练标签,来对神经网络模型进行训练,从而使得神经网络模型能够很好地预测出目标词与候选词之间的拼音空间距离,从而提高了对语音识别结果进行纠错的正确率。
可选地,在本申请实施例中,对神经网络模型进行训练,包括:使用神经网络模型预测拼音组中的第一拼音和第二拼音之间的拼音空间距离,获得预测空间距离;计算预测空间距离与样本标签中的拼音空间距离之间的损失值;根据损失值对神经网络模型进行训练。
本申请实施例还提供了一种语音识别纠正装置,包括:文本语句获得模块,用于获取待处理语音,并对待处理语音进行语音识别,获得识别出的文本语句;候选文本确定模块,用于根据拼音空间距离确定文本语句的至少一个候选文本句;最优候选确定模块,用于使用N元语言模型从至少一个候选文本句中确定出最优近音候选句;对数分数判断模块,用于判断文本语句的字平均负对数分数是否小于最优近音候选句的字平均负对数分数;文本语句纠正模块,用于若文本语句的字平均负对数分数小于最优近音候选句的字平均负对数分数,则将识别出的文本语句纠正为最优近音候选句。
可选地,在本申请实施例中,最优候选确定模块,包括:对数分数计算模块,用于使用N元语言模型计算至少一个候选文本句的字平均负对数分数;近音语句确定模块,用于将至少一个候选文本句中字平均负对数分数最高的候选文本句确定为最优近音候选句。
可选地,在本申请实施例中,候选文本确定模块,包括:文本语句查找模块,用于在拼音词典中查找到文本语句对应的多个字拼音;拼音向量转换模块,用于将多个字拼音转换为多个拼音向量;候选词语搜索模块,用于从多个拼音向量中筛选出预设数量的拼音向量作为移动窗口,并确定与移动窗口中目标词的拼音空间距离小于距离阈值的至少一个候选词;文本语句替换模块,用于针对至少一个候选词中的每个候选词,将文本语句中的目标词替换为该候选词,获得文本语句的至少一个候选文本句。
可选地,在本申请实施例中,拼音向量,包括:声母分向量、韵母分向量和声调分向量;候选词语搜索模块,包括:向量距离计算模块,用于分别计算目标词的声母分向量与候选词的声母分向量之间的第一距离,目标词的韵母分向量与候选词的韵母分向量之间的第二距离,目标词的声调分向量与候选词的声调分向量之间的第三距离;候选词语筛选模块,用于使用神经网络模型根据第一距离、第二距离和第三距离预测出目标词与候选词之间的拼音空间距离,并根据拼音空间距离筛选出小于距离阈值的至少一个候选词。
可选地,在本申请实施例中,语音识别纠正装置,还包括:训练数据获取模块,用于获取多个拼音组和每个拼音组的样本标签,拼音组包括:第一拼音和第二拼音,样本标签为第一拼音与第二拼音之间的拼音空间距离;语言模型训练模块,用于以多个拼音组为训练数据,以多个拼音组中每个拼音组的样本标签为训练标签,对神经网络模型进行训练,获得神经网络模型。
可选地,在本申请实施例中,语言模型训练模块,包括:预测距离获得模块,用于使用神经网络模型预测拼音组中的第一拼音和第二拼音之间的拼音空间距离,获得预测空间距离;损失值计算模块,用于计算预测空间距离与样本标签中的拼音空间距离之间的损失值;损失值训练模块,用于根据损失值对神经网络模型进行训练。
本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上面描述的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请实施例的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出的本申请实施例提供的语音识别纠正方法的流程示意图;
图2示出的本申请实施例提供的待处理语音数据的处理过程示意图;
图3示出的本申请实施例提供的训练神经网络模型的流程示意图;
图4示出的本申请实施例提供的语音识别纠正装置的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请实施例一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请实施例的实施例的详细描述并非旨在限制要求保护的本申请实施例的范围,而是仅仅表示本申请实施例的选定实施例。基于本申请实施例的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请实施例保护的范围。
在介绍本申请实施例提供的语音识别纠正方法之前,先介绍本申请实施例中所涉及的一些概念:
拼音空间距离,是指拼音与拼音之间的多个维度(即高维)的空间距离,此处的多个维度包括:声母、韵母和声调等等。
神经网络(Neural Network,NN),又被称为人工神经网络(Artificial NeuralNetwork,ANN)或类神经网络,在机器学习和认知科学领域,是一种模仿生物神经网络的结构和功能的数学模型或计算模型,人工神经网络用于对函数进行估计或近似。
需要说明的是,本申请实施例提供的语音识别纠正方法可以被电子设备执行,这里的电子设备是指具有执行计算机程序功能的设备终端或者上述的服务器,设备终端例如:智能手机、个人电脑(personal computer,PC)、平板电脑、个人数字助理(personaldigital assistant,PDA)或者移动上网设备(mobile Internet device,MID)等。服务器例如:x86服务器以及非x86服务器,非x86服务器包括:大型机、小型机和UNIX服务器。
下面介绍该语音识别纠正方法适用的应用场景,这里的应用场景包括但不限于:语音输入法、语音机器人对话、在线字幕和在线歌词等等语音识别的场景,可以注意到,目前的大多数语音识别方法都会使用到切词(又称为分词)工具,然而在具体实践过程中发现这些切词工具对词边界有一定的误判率,这些误判极大程度的影响语音识别结果的准确率;因此,可以使用该语音识别纠正方法对语音识别的文字结果(包括但不限于字幕和歌词)进行纠正。又例如:使用该语音识别纠正方法改善语音识别相关产品的功能或者效果等,避免仅仅从统计意义上来体现拼音相似程度关系,而是使用该语音识别纠正方法反映出拼音在语音上的近似程度关系,即考虑到文本语句本身的语境依赖,从而提高对语音识别结果进行纠错的正确率。
请参见图1示出的本申请实施例提供的语音识别纠正方法的流程示意图;该语音识别纠正方法的主要思路是,通过使用N元语言模型从语音相近的至少一个候选文本语句中确定出最优近音候选句,而不是词频向量余弦相似度相近的候选文本语句,有效地考虑到语境依赖语音上的相似关系,从而提高了对语音识别结果进行纠错的正确率。上述的语音识别纠正方法可以包括:
步骤S110:获取待处理语音,并对待处理语音进行语音识别,获得识别出的文本语句。
上述步骤S110中的待处理语音的获取方式可以包括:第一种获得方式,使用录音机、手机等可以录音的终端设备进行录音,获得待处理语音;然后该终端设备向电子设备发送待处理语音,然后电子设备接收终端设备发送的待处理语音,电子设备可以将待处理语音存储至文件系统、数据库或移动存储设备中;第二种获得方式,获取预先存储的待处理语音,具体例如:从文件系统、数据库或者移动存储设备中获取待处理语音。
上述步骤S110中的对待处理语音进行语音识别有很多种实施方式,具体例如:采用基于隐马尔可夫模型(Hidden Markov Model,HMM)方法、以知识为基础的方法、以人工神经网络(ANN)方法或者基于相关性大小设计的语音增强自适应算法对待处理语音进行语音识别。
在步骤S110之后,执行步骤S120:根据拼音空间距离确定文本语句的至少一个候选文本句。
请参见图2示出的本申请实施例提供的待处理语音数据的处理过程示意图;上述步骤S120的实施方式有很多种,包括但不限于如下几种:
第一种实施方式,遍历所有可能的拼音,先筛选出与文本语句中的拼音之间的拼音空间距离小于距离阈值的候选词,再根据候选词替换获得候选文本句,该实施方式包括:
步骤S121:在拼音词典中查找到文本语句对应的多个字拼音。
上述的步骤S121的实施方式例如:在拼音词典中查找到文本语句对应的多个字拼音,具体例如:假设文本语句是“我喜欢飞机”,那么查找到的字拼音为“wo3 xi3 huan1fei1 ji1”。上述的拼音词典可以采用内存数据库、关系型数据库和/或非关系型数据库等等,可以使用的内存数据库例如:Memcached和Redis等,可以使用的关系型数据库例如:Mysql、PostgreSQL、Oracle和SQLSever等,可以使用的非关系型数据库包括:Neo4j图数据库、Hadoop子系统HBase、MongoDB和CouchDB等。
步骤S122:将多个字拼音转换为多个拼音向量。
上述步骤S122的实施方式例如:上面的拼音向量可以包括:声母(consonant)分向量、韵母(vowel)分向量和声调(tone)分向量;具体例如:“飞”的拼音为“fei1”,其中,“f”为声母,“ei”为韵母,“1”为声调,并且需要将上述的声母、韵母和声调分别经过各自的权重矩阵(Wc,Wv和Wt)投射到高维拼音空间,得到的三个拼音分向量Vc,Vv和Vt分别为f[0.8,0.1]、ei[0.7,0.2]和1[0.2,0.3];其中,Wc表示声母的权重矩阵,Wv表示韵母的权重矩阵,Wt表示声调的权重矩阵,Vc表示声母分向量,Vv表示韵母分向量,Vt表示声调分向量。上述的权重矩阵(即所有拼音向量的具体值)可以是神经网络模型从人工标注的拼音对拼音空间距离中学习到的权重值,具体过程将在后面详细地描述,可以使用的神经网络模型例如:LeNet网络模型、AlexNet网络模型、VGG网络模型、GoogLeNet网络模型和ResNet网络模型等等。
步骤S123:将多个拼音向量中筛选出预设数量的拼音向量确定为移动窗口,并确定与移动窗口中目标词的拼音空间距离小于距离阈值的至少一个候选词。
上述步骤S123的实施方式例如:将多个拼音向量中筛选出预设数量的拼音向量确定为移动窗口,依次将移动窗口的预设数量加一,并根据增加后的移动窗口来搜索,此处的预设数量可以根据具体情况设置,例如将预设数量设置为1,那么移动窗口中就只有单字,下面计算的就是单字之间的拼音空间距离,当然也可以将预设数量设置为2、3或4等等,那么移动窗口中就是词语、术语或者成语等。下面就分别对这两种情况进行讨论:
第一种情况,当移动窗口中的拼音向量数量为1时,即计算单字之间的拼音空间距离。此处以“fei1”(即目标词)与“hui4”(即候选词)之间的拼音空间距离的计算过程为例,具体例如:首先,分别计算目标词的声母分向量(即“f”的分向量)与候选词的声母分向量(即“h”的分向量)之间的第一距离,目标词的韵母分向量(即“ei”的分向量)与候选词的韵母分向量(即“ui”的分向量)之间的第二距离,目标词的声调分向量(即“1”的分向量)与候选词的声调分向量(即“4”的分向量)之间的第三距离。根据第一距离、第二距离和第三距离,具体可以使用神经网络模型将第一距离、第二距离和第三距离的和值、积值或者平方和作为目标词与候选词之间的拼音空间距离;然后,根据拼音空间距离筛选出小于距离阈值的至少一个候选词,此处的距离阈值可以根据具体情况进行设置,例如设置为0.01或者0.001等等。
第二种情况,当移动窗口中的拼音向量数量为2、3或者4等等,即计算词语、术语或者成语之间的拼音空间距离,先分别计算目标词的每个字拼音与候选词的每个字拼音之间的拼音空间距离,获得多个拼音空间距离;也就是说,两个相同字数的词语之间的拼音空间距离为所有对应顺序字拼音之间的拼音空间距离之和,具体例如:“fei1ji1”与“hui4ji2”之间的拼音空间距离等于“fei1”于“hui4”之间的拼音空间距离加上“ji1”于“ji2”之间的拼音空间距离。然后将多个拼音空间距离之和作为目标词与候选词之间的拼音空间距离,并根据拼音空间距离筛选出小于距离阈值的至少一个候选词,此处的距离阈值可以根据具体情况进行设置,例如设置为0.01或者0.001等等。
步骤S124:针对至少一个候选词中的每个候选词,将文本语句中的目标词替换为该候选词,获得至少一个候选文本句。
上述步骤S124的实施方式例如:假设文本语句为“我喜欢飞机”,根据移动窗口确定目标词“喜欢”的候选词为“稀饭”,以及确定目标词“飞机”的候选词为“灰机”,那么将文本语句中的目标词替换为该候选词,获得至少一个候选文本句包括:“我稀饭飞机”、“我喜欢灰机”和“我稀饭灰机”。
第二种实施方式,在词典中遍历所有可能的候选词,多次增加移动窗口的尺寸(即依次增加移动窗口中预设数量的拼音向量,例如1、2、3和4等等),对于每次的移动窗口,先计算移动窗口中的多个字拼音与候选词的字拼音之间的拼音相似度,再根据拼音相似度获得候选文本句。在上述第一种实施方式中,只遍历了所有可能的拼音,且筛选出与文本语句中的拼音之间的拼音空间距离小于距离阈值的候选词,根据筛选出的候选词替换获得候选文本句,但是没有遍历所有可能的候选词。而在第二种实施方式中,是在词典中遍历了所有可能的候选词,然后,计算移动窗口中的多个字拼音与候选词的字拼音之间的拼音相似度,再根据拼音相似度获得候选文本句,从而保证不遗漏词典中的候选词。
在步骤S120之后,执行步骤S130:使用N元语言模型从至少一个候选文本句中确定出最优近音候选句。
上述步骤S130的实施方式有很多种,包括但不限于如下几种:
第一种实施方式,使用N元语言模型计算出的字平均负对数分数来从至少一个候选文本句中确定出最优近音候选句,该实施方式包括:
步骤S131:使用N元语言模型计算至少一个候选文本句的字平均负对数分数。
上述步骤S131的实施方式例如:使用Score(X1…Xn)=-log(P(X1...Xn))/n和计算至少一个候选文本句的字平均负对数分数,其中,Score(X1...Xn)代表候选文本句的字平均负对数分数,Xk代表第k个词语(或者字),P(X1)代表句中第一个字词由语言模型给出的该字词出现的概率,P(X2∣X1)表示X1给定的情况下,第二个字词由语言模型给出的该字词出现的概率,表示X1……Xk-1给定的情况下,第k个字词由语言模型给出的该字词出现的概率。
步骤S132:将至少一个候选文本句筛选出字平均负对数分数最高的候选文本句确定为最优近音候选句。
上述步骤S132的实施方式例如:假设文本语句为“我喜欢飞机”,且“我喜欢飞机”的字平均负对数分数为3.5,且获得至少一个候选文本句的字平均负对数分数包括:“我稀饭飞机”的字平均负对数分数为2.0、“我喜欢灰机”的字平均负对数分数为1.9,以及“我稀饭灰机”的字平均负对数分数为1.6。那么筛选出字平均负对数分数最高的候选文本句是“我稀饭飞机”,并将字平均负对数分数最高的候选文本句作为最优近音候选句。
在步骤S130之后,执行步骤S140:判断文本语句的字平均负对数分数是否小于最优近音候选句的字平均负对数分数。
上述步骤S140的实施方式例如:假设文本语句为“我喜欢飞机”,“我喜欢飞机”的字平均负对数分数为3.5,最优近音候选句是“我稀饭飞机”,“我稀饭飞机”的字平均负对数分数为2.0,那么对文本语句的字平均负对数分数和最优近音候选句的字平均负对数分数进行大小比较,判断文本语句的字平均负对数分数是否小于最优近音候选句的字平均负对数分数,根据判断结果进行后续处理。
在步骤S140之后,执行步骤S150:若文本语句的字平均负对数分数小于最优近音候选句的字平均负对数分数,则将识别出的文本语句纠正为最优近音候选句。
可选地,在步骤S140之后,还可以执行步骤S160:若文本语句的字平均负对数分数大于最优近音候选句的字平均负对数分数,舍弃最优近音候选句,输出识别出的文本语句。
上述步骤S150的实施方式例如:假设文本语句是“我稀饭飞机”,“我稀饭飞机”的字平均负对数分数为2.0,最优近音候选句是“我喜欢飞机”,“我喜欢飞机”的字平均负对数分数为3.5,那么文本语句的字平均负对数分数是小于最优近音候选句的字平均负对数分数,因此,要将识别出的文本语句“我稀饭飞机”纠正为最优近音候选句“我喜欢飞机”,并输出最优近音候选句。当然也可以在纠正为最优近音候选句之后,将最优近音候选句发送给其它设备,让其它设备转换为声音、图像或者动画等等形式输出。
上述步骤S160的实施方式包括:若文本语句的字平均负对数分数大于最优近音候选句的字平均负对数分数,则将最优近音候选句舍弃,直接输出识别出的文本语句。具体实施方式例如:假设文本语句是“我喜欢飞机”,“我喜欢飞机”的字平均负对数分数为3.5,最优近音候选句是“我稀饭飞机”,“我稀饭飞机”的字平均负对数分数为2.0,那么文本语句的字平均负对数分数是大于最优近音候选句的字平均负对数分数,因此,要将最优近音候选句“我稀饭飞机”舍弃掉,直接输出识别出的文本语句“我喜欢飞机”。
在上述的实现过程中,通过查找与待处理语音识别出的文本语句语音相近的至少一个候选文本句,并使用N元语言模型从至少一个候选文本句中确定出最优近音候选句,然后根据文本语句的字平均负对数分数与最优近音候选句的字平均负对数分数的比较结果来确定是否纠正该文本语句。也就是说,通过使用N元语言模型从语音相近的至少一个候选文本语句中确定出最优近音候选句,而不是词频向量余弦相似度相近的候选文本语句,有效地考虑到语境依赖语音上的相似关系,从而提高了对语音识别结果进行纠错的正确率。
请参见图3示出的本申请实施例提供的训练神经网络模型的流程示意图;可以理解的是,在使用上述的神经网络模型计算拼音空间距离之前,还需要训练神经网络模型,训练神经网络模型的过程可以包括:
步骤S210:获取多个拼音组和每个拼音组的样本标签,拼音组包括:第一拼音和第二拼音,样本标签为第一拼音与第二拼音之间的拼音空间距离。
上述步骤S210中的多个拼音组和每个拼音组的样本标签可以分开获取,具体例如:人工的搜集多个拼音组,并人工地识别每个拼音组的样本标签;当然,也可以将多个拼音组和每个拼音组的样本标签打包为训练数据集一起获取,这里以训练数据集一起获取为例进行说明,例如:第一种获得方式,接收其它终端设备发送的训练数据集,将训练数据集存储至文件系统、数据库或移动存储设备中;第二种获得方式,获取预先存储的训练数据集,具体例如:从文件系统中获取训练数据集,或者从数据库中获取训练数据集,或者从移动存储设备中获取训练数据集;第三种获得方式,使用浏览器等软件获取互联网上的训练数据集,或者使用其它应用程序访问互联网获得训练数据集。上述的拼音组可以包括:第一拼音(例如“fei1”)和第二拼音(例如“hui1”),样本标签为第一拼音与第二拼音之间的拼音空间距离(例如“fei1”与“hui1”标注的拼音空间距离为6.5)。
步骤S220:以多个拼音组为训练数据,以多个拼音组中每个拼音组的样本标签为训练标签,对神经网络模型进行训练,获得神经网络模型。
上述步骤S220的实施方式可以包括:
步骤S221:使用神经网络模型预测拼音组中的第一拼音和第二拼音之间的拼音空间距离,获得预测空间距离。
上述步骤S221的实施方式例如:使用神经网络模型预测拼音组中的第一拼音(例如“fei1”)和第二拼音(例如“hui1”)之间的拼音空间距离,获得预测空间距离(比如预测出“fei1”与“hui1”预测空间距离为6.4)。
步骤S222:计算预测空间距离与样本标签中的拼音空间距离之间的损失值。
上述步骤S222的实施方式例如:假设获得“fei1”与“hui1”的预测空间距离为6.4,样本标签中的“fei1”与“hui1”标注的拼音空间距离为6.5,那么可以使用使用作为损失函数来计算预测空间距离与样本标签中的拼音空间距离之间的损失值;其中,p表示第p个拼音对,C表示拼音对的总集合,Sp表示神经网络模型预测出的第p个拼音对的拼音空间距离,θp表示人工标注的第p个拼音对的拼音空间距离,τp表示第p个拼音对的惩罚系数。
步骤S223:根据损失值对神经网络模型进行训练,获得神经网络模型。
上述步骤S223的实施方式例如:根据该损失值更新神经网络模型的网络权重参数,直到损失值小于预设比例或者迭代次数(epoch)数量大于预设阈值时,即可获得训练后的神经网络模型。其中,上述的预设比例可以根据具体情况设置,例如设置为5%或者10%等;上述的预设阈值也可以根据具体情况进行设置,例如设置为100或者1000等等,可以使用的神经网络模型例如:LeNet网络模型、AlexNet网络模型、VGG网络模型、GoogLeNet网络模型和ResNet网络模型等等。
在上述的实现过程中,通过多个拼音组为训练数据,以多个拼音组的拼音空间距离为训练标签,来对神经网络模型进行训练,从而使得神经网络模型能够很好地预测出目标词与候选词之间的拼音空间距离,从而提高了对语音识别结果进行纠错的正确率。
请参见图4示出的本申请实施例提供的语音识别纠正装置的结构示意图。本申请实施例提供了一种语音识别纠正装置300,包括:
文本语句获得模块310,用于获取待处理语音,并对待处理语音进行语音识别,获得识别出的文本语句。
候选文本确定模块320,用于根据拼音空间距离确定文本语句的至少一个候选文本句。
最优候选确定模块330,用于使用N元语言模型从至少一个候选文本句中确定出最优近音候选句。
对数分数判断模块340,用于判断文本语句的字平均负对数分数是否小于最优近音候选句的字平均负对数分数。
文本语句纠正模块350,用于若文本语句的字平均负对数分数小于最优近音候选句的字平均负对数分数,则将识别出的文本语句纠正为最优近音候选句。
可选地,在本申请实施例中,语音识别纠正装置,还包括:
文本语句输出模块,用于若文本语句的字平均负对数分数大于最优近音候选句的字平均负对数分数,则舍弃最优近音候选句,并输出识别出的文本语句。
可选地,在本申请实施例中,最优候选确定模块,包括:
对数分数计算模块,用于使用N元语言模型计算至少一个候选文本句的字平均负对数分数。
近音语句确定模块,用于将至少一个候选文本句中字平均负对数分数最高的候选文本句确定为最优近音候选句。
可选地,在本申请实施例中,候选文本确定模块,包括:
文本语句查找模块,用于在拼音词典中查找到文本语句对应的多个字拼音。
拼音向量转换模块,用于将多个字拼音转换为多个拼音向量。
候选词语搜索模块,用于从多个拼音向量中筛选出预设数量的拼音向量作为移动窗口,并确定与移动窗口中目标词的拼音空间距离小于距离阈值的至少一个候选词。
文本语句替换模块,用于针对至少一个候选词中的每个候选词,将文本语句中的目标词替换为该候选词,获得文本语句的至少一个候选文本句。
可选地,在本申请实施例中,拼音向量,包括:声母分向量、韵母分向量和声调分向量;候选词语搜索模块,包括:
向量距离计算模块,用于分别计算目标词的声母分向量与候选词的声母分向量之间的第一距离,目标词的韵母分向量与候选词的韵母分向量之间的第二距离,目标词的声调分向量与候选词的声调分向量之间的第三距离。
候选词语筛选模块,用于使用神经网络模型根据第一距离、第二距离和第三距离预测出目标词与候选词之间的拼音空间距离,并根据拼音空间距离筛选出小于距离阈值的至少一个候选词。
可选地,在本申请实施例中,语音识别纠正装置,还包括:
训练数据获取模块,用于获取多个拼音组和每个拼音组的样本标签,拼音组包括:第一拼音和第二拼音,样本标签为第一拼音与第二拼音之间的拼音空间距离。
语言模型训练模块,用于以多个拼音组为训练数据,以多个拼音组中每个拼音组的样本标签为训练标签,对神经网络模型进行训练,获得神经网络模型。
可选地,在本申请实施例中,语言模型训练模块,包括:
预测距离获得模块,用于使用神经网络模型预测拼音组中的第一拼音和第二拼音之间的拼音空间距离,获得预测空间距离。
损失值计算模块,用于计算预测空间距离与样本标签中的拼音空间距离之间的损失值。
损失值训练模块,用于根据损失值对神经网络模型进行训练。
应理解的是,该装置与上述的语音识别纠正方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该装置包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在装置的操作系统(operating system,OS)中的软件功能模块。
本申请实施例提供的一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上的方法。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上的方法。其中,计算机可读存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(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),磁存储器,快闪存储器,磁盘或光盘。
本申请实施例提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其他的方式实现。以上所描述的装置实施例仅是示意性的,例如,附图中的流程图和框图显示了根据本申请实施例的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以和附图中所标注的发生顺序不同。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这主要根据所涉及的功能而定。
另外,在本申请实施例中的各个实施例的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上的描述,仅为本申请实施例的可选实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。
Claims (10)
1.一种语音识别纠正方法,其特征在于,包括:
获取待处理语音,并对所述待处理语音进行语音识别,获得识别出的文本语句;
根据拼音空间距离确定所述文本语句的至少一个候选文本句;
使用N元语言模型从所述至少一个候选文本句中确定出最优近音候选句;
判断所述文本语句的字平均负对数分数是否小于所述最优近音候选句的字平均负对数分数;
若是,则将所述识别出的文本语句纠正为所述最优近音候选句。
2.根据权利要求1所述的方法,其特征在于,在所述判断所述文本语句的字平均负对数分数是否小于所述最优近音候选句的字平均负对数分数之后,还包括:
若所述文本语句的字平均负对数分数大于所述最优近音候选句的字平均负对数分数,则舍弃所述最优近音候选句,并输出所述识别出的文本语句。
3.根据权利要求1所述的方法,其特征在于,所述使用N元语言模型从所述至少一个候选文本句中确定出最优近音候选句,包括:
使用N元语言模型计算所述至少一个候选文本句的字平均负对数分数;
将所述至少一个候选文本句中字平均负对数分数最高的候选文本句确定为最优近音候选句。
4.根据权利要求1所述的方法,其特征在于,所述根据拼音空间距离确定所述文本语句的至少一个候选文本句,包括:
在拼音词典中查找到所述文本语句对应的多个字拼音;
将所述多个字拼音转换为多个拼音向量;
从所述多个拼音向量中筛选出预设数量的拼音向量作为移动窗口,并确定与所述移动窗口中目标词的拼音空间距离小于距离阈值的至少一个候选词;
针对所述至少一个候选词中的每个候选词,将所述文本语句中的目标词替换为该候选词,获得所述文本语句的至少一个候选文本句。
5.根据权利要求4所述的方法,其特征在于,所述拼音向量,包括:声母分向量、韵母分向量和声调分向量;所述确定与所述移动窗口中目标词的拼音空间距离小于距离阈值的至少一个候选词,包括:
分别计算目标词的声母分向量与候选词的声母分向量之间的第一距离,所述目标词的韵母分向量与所述候选词的韵母分向量之间的第二距离,所述目标词的声调分向量与所述候选词的声调分向量之间的第三距离;
使用神经网络模型根据所述第一距离、所述第二距离和所述第三距离预测所述目标词与所述候选词之间的拼音空间距离,并根据所述拼音空间距离筛选出小于距离阈值的至少一个候选词。
6.根据权利要求5所述的方法,其特征在于,在所述使用神经网络模型根据所述第一距离、所述第二距离和所述第三距离预测所述目标词与所述候选词之间的拼音空间距离之前,还包括:
获取多个拼音组和每个拼音组的样本标签,所述拼音组包括:第一拼音和第二拼音,所述样本标签为所述第一拼音与所述第二拼音之间的拼音空间距离;
以所述多个拼音组为训练数据,以所述多个拼音组中每个拼音组的样本标签为训练标签,对神经网络模型进行训练,获得所述神经网络模型。
7.根据权利要求6所述的方法,其特征在于,所述对神经网络模型进行训练,包括:
使用神经网络模型预测所述拼音组中的第一拼音和第二拼音之间的拼音空间距离,获得预测空间距离;
计算所述预测空间距离与所述样本标签中的拼音空间距离之间的损失值;
根据所述损失值对所述神经网络模型进行训练。
8.一种语音识别纠正装置,其特征在于,包括:
文本语句获得模块,用于获取待处理语音,并对所述待处理语音进行语音识别,获得识别出的文本语句;
候选文本确定模块,用于根据拼音空间距离确定所述文本语句的至少一个候选文本句;
最优候选确定模块,用于使用N元语言模型从所述至少一个候选文本句中确定出最优近音候选句;
对数分数判断模块,用于判断所述文本语句的字平均负对数分数是否小于所述最优近音候选句的字平均负对数分数;
文本语句纠正模块,用于若所述文本语句的字平均负对数分数小于所述最优近音候选句的字平均负对数分数,则将所述识别出的文本语句纠正为所述最优近音候选句,输出所述最优近音候选句。
9.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1至7任一所述的方法。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111233890.7A CN113963682A (zh) | 2021-10-22 | 2021-10-22 | 一种语音识别纠正方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111233890.7A CN113963682A (zh) | 2021-10-22 | 2021-10-22 | 一种语音识别纠正方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113963682A true CN113963682A (zh) | 2022-01-21 |
Family
ID=79466456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111233890.7A Pending CN113963682A (zh) | 2021-10-22 | 2021-10-22 | 一种语音识别纠正方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113963682A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111968649A (zh) * | 2020-08-27 | 2020-11-20 | 腾讯科技(深圳)有限公司 | 一种字幕纠正方法、字幕显示方法、装置、设备及介质 |
CN116415582A (zh) * | 2023-05-24 | 2023-07-11 | 中国医学科学院阜外医院 | 文本处理方法、装置、计算机可读存储介质及电子设备 |
-
2021
- 2021-10-22 CN CN202111233890.7A patent/CN113963682A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111968649A (zh) * | 2020-08-27 | 2020-11-20 | 腾讯科技(深圳)有限公司 | 一种字幕纠正方法、字幕显示方法、装置、设备及介质 |
CN111968649B (zh) * | 2020-08-27 | 2023-09-15 | 腾讯科技(深圳)有限公司 | 一种字幕纠正方法、字幕显示方法、装置、设备及介质 |
CN116415582A (zh) * | 2023-05-24 | 2023-07-11 | 中国医学科学院阜外医院 | 文本处理方法、装置、计算机可读存储介质及电子设备 |
CN116415582B (zh) * | 2023-05-24 | 2023-08-25 | 中国医学科学院阜外医院 | 文本处理方法、装置、计算机可读存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11776531B2 (en) | Encoder-decoder models for sequence to sequence mapping | |
US11238845B2 (en) | Multi-dialect and multilingual speech recognition | |
US11158305B2 (en) | Online verification of custom wake word | |
US10373610B2 (en) | Systems and methods for automatic unit selection and target decomposition for sequence labelling | |
US11798535B2 (en) | On-device custom wake word detection | |
US11264044B2 (en) | Acoustic model training method, speech recognition method, acoustic model training apparatus, speech recognition apparatus, acoustic model training program, and speech recognition program | |
JP6222821B2 (ja) | 誤り修正モデル学習装置、及びプログラム | |
JP5901001B1 (ja) | 音響言語モデルトレーニングのための方法およびデバイス | |
US20180174576A1 (en) | Acoustic-to-word neural network speech recognizer | |
US20140156575A1 (en) | Method and Apparatus of Processing Data Using Deep Belief Networks Employing Low-Rank Matrix Factorization | |
US20190267023A1 (en) | Speech recognition using connectionist temporal classification | |
CN113963682A (zh) | 一种语音识别纠正方法、装置、电子设备及存储介质 | |
US20180277145A1 (en) | Information processing apparatus for executing emotion recognition | |
CN111160000B (zh) | 作文自动评分方法、装置终端设备及存储介质 | |
US20230104228A1 (en) | Joint Unsupervised and Supervised Training for Multilingual ASR | |
CN113591462A (zh) | 弹幕回复生成方法、装置及电子设备 | |
CN112397056A (zh) | 语音评测方法及计算机存储介质 | |
CN112669845A (zh) | 语音识别结果的校正方法及装置、电子设备、存储介质 | |
US20210312294A1 (en) | Training of model for processing sequence data | |
US20080126094A1 (en) | Data Modelling of Class Independent Recognition Models | |
US20210049324A1 (en) | Apparatus, method, and program for utilizing language model | |
US11232786B2 (en) | System and method to improve performance of a speech recognition system by measuring amount of confusion between words | |
US9269349B2 (en) | Automatic methods to predict error rates and detect performance degradation | |
JP6605997B2 (ja) | 学習装置、学習方法及びプログラム | |
US20220122586A1 (en) | Fast Emit Low-latency Streaming ASR with Sequence-level Emission Regularization |
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 |