1.本说明书涉及语音信号识别及评价领域,特别涉及一种口语发音测评方法和系统。
背景技术:2.随着语音信号识别技术的不断成熟,涉及到信号处理、人工智能、数据挖掘等多个学科的智能语音评测技术也得到了越来越广泛的应用。如何对语音进行标准程度的评估和发音缺陷的检测是口语发音测评的关键,所以口语发音评测方案在评测准确率方面仍有较大的提升空间。
3.因此,希望提供一种口语发音测评方法,通过采用不同的训练策略,实现多次对齐,进而有效地提高多读、漏读、错读的检测准确率。
技术实现要素:4.本说明书实施例之一提供一种口语发音测评方法。口语发音测评方法包括:获取待评测语音对应的语音特征;基于第一模型对语音特征的处理,确定待评测语音对应的识别文本及识别文本中单个词的时间边界;基于语音特征和单个词的时间边界,确定识别文本中单个词的子语音特征;基于第二模型对单个词的子语音特征的处理,确定识别文本中每个词对应的每帧相对于每个词对应的每个音素的后验概率,以及识别文本中每个音素的时间边界;基于后验概率以及每个音素的时间边界,确定待评测语音的评测结果。
5.本说明书实施例之一提供一种口语发音测评系统,包括数据获取模块,用于获取待评测语音对应的语音特征;第一处理模块,用于基于第一模型对语音特征的处理,确定待评测语音对应的识别文本及识别文本中单个词的时间边界;第一确定模块,用于基于语音特征和单个词的时间边界,确定识别文本中单个词的子语音特征;第二处理模块,用于基于第二模型对单个词的子语音特征的处理,确定识别文本中每个词对应的每帧相对于每个词对应的每个音素的后验概率,以及识别文本中每个音素的时间边界;结果评测模块,用于基于后验概率以及每个音素的时间边界,确定待评测语音的评测结果。
6.本说明书实施例之一提供一种口语发音测评装置,包括处理器以及存储器,处理器用于执行口语发音测评方法,存储器用于存储指令,其特征在于,指令被处理器执行时,导致装置实现口语发音测评方法对应的操作。
7.本说明书实施例之一提供一种计算机可读存储介质,存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行口语发音测评方法。
附图说明
8.本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
9.图1是根据本说明书一些实施例所示的口语发音测评系统的应用场景示意图;
10.图2是根据本说明书一些实施例所示的口语发音测评方法的系统模块图;
11.图3是根据本说明书一些实施例所示的口语发音测评方法的方法流程图;
12.图4是根据本说明书一些实施例所示的口语发音测评方法的子语音特征的获取流程图;
13.图5是根据本说明书一些实施例所示的口语发音测评方法的第一模型的训练图;
14.图6是根据本说明书一些实施例所示的口语发音测评方法的第三模型的结构图。
具体实施方式
15.为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
16.应当理解,本文使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
17.如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
18.本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
19.图1是根据本说明书一些实施例所示的口语发音测评系统的应用场景示意图。
20.如图1所示,口语发音测评场景100可以包括语音采集设备110、网络120、终端130、处理设备140以及存储设备150。
21.语音采集设备110可以用于对被评测者进行语音采集,以获得被评测者的语音数据。语音采集设备110可以是各种可以进行语音数据采集的设备,例如,麦克风、话筒、录音机等。语音采集设备110也可以是语音采集软件、语音采集app、语音采集后台和声源采集平台等。
22.处理设备140可以处理从语音采集设备110、终端130和/或存储设备150获得的数据和/或信息。例如,处理设备140可以对语音采集设备110产生的数据进行处理。在一些实施例中,处理设备140可以是单个服务器或服务器组。在一些实施例中,处理设备140可以是本地的或远程的。在一些实施例中,处理设备140可以在云平台上实现。
23.终端130指用户所使用的一个或多个终端设备或软件。在一些实施例中,终端130可以由一个或多个用户进行使用,一个或多个用户可以包括直接使用服务的用户,也可以包括其他相关用户。终端130可以包括移动设备130-1、平板电脑130-2、笔记本电脑130-3、
台式电脑130-4等或其任意组合。在一些实施例中,终端130可以通过网络与场景100中的其他组件交互。例如,终端130可以向语音采集设备110发送一种或多种控制指令以控制语音采集设备110按照指令进行数据采集。在一些实施例中,终端130可以是处理设备140的一部分。例如,终端130可以设置在处理设备140中。
24.存储设备150可以存储数据、指令和/或任何其他信息。在一些实施例中,存储设备150可以存储从语音采集设备110、终端130和/或处理设备140处获得的数据。在一些实施例中,存储设备150可以存储处理设备140可以执行或使用的数据和/或指令,以执行本说明书中描述的示例性方法。在一些实施例中,存储设备150可包括大容量存储器、可移除存储器等其中一种或几种的组合。
25.在一些实施例中,存储设备150可以连接网络120,以与口语发音测评场景100中的一个或多个组件(例如,处理设备140、终端130等)之间实现通信。口语发音测评场景100中的一个或多个组件可以通过网络120读取存储设备150中的数据或指令。在一些实施例中,存储设备150可以是处理设备140的一部分,也可以是独立的,与处理设备直接或间接相连。
26.网络120可以包括能够促进生成口语发音测评场景100的信息和/或数据交换的任何合适的网络。在一些实施例中,口语发音测评场景100的一个或多个组件(例如,语音采集设备110、终端130、处理设备140、存储设备150等)可以通过网络120与口语发音测评场景100的一个或多个组件之间交换信息和/或数据。例如,处理设备140可以通过网络120从语音采集设备110中获取目标数据。网络120可以包括公共网络、私人网络其中一种或几种组合。在一些实施例中,网络120可以包括一个或多个网络接入点。
27.图2是根据本说明书一些实施例所示的口语发音测评系统模块图。
28.在一些实施例中,口语发音测评系统200可以包括数据获取模块210、第一处理模块220、第一确定模块230、第二处理模块240和结果评测模块250。
29.在一些实施例中,数据获取模块210,用于获取待评测语音对应的语音特征。
30.在一些实施例中,第一处理模块220,用于基于第一模型对语音特征的处理,确定待评测语音对应的识别文本及识别文本中单个词的时间边界。在一些实施例中,单个词的时间边界的确定包括:基于第一模型确定识别文本中每个词对应的每个音素的时间边界,再通过每个音素与识别文本中每个词的对应关系,确定单个词的时间边界。
31.在一些实施例中,第一确定模块230,用于基于语音特征和单个词的时间边界,确定识别文本中单个词的子语音特征。
32.在一些实施例中,第二处理模块240,用于基于第二模型对单个词的子语音特征的处理,确定识别文本中每个词对应的每帧相对于每个词对应的每个音素的后验概率,以及识别文本中每个音素的时间边界。
33.在一些实施例中,结果评测模块250,用于基于后验概率以及每个音素的时间边界,确定待评测语音的评测结果。在一些实施例中,通过gop算法确待评测语音的评测结果。
34.在一些实例中,通过在不同的设备上分别执行不同的功能,或一个设备同时执行多个功能,以实现本说明书实施例描述的一个或多个场景下口语发音测评的功能。
35.应当理解,图2所示的系统及其模块可以利用各种方式来实现。
36.需要注意的是,以上对于系统及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理
后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。在一些实施例中,图2中披露的数据获取模块210、第一处理模块220、第一确定模块230、第二处理模块240和结果评测模块250可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
37.图3是根据本说明书一些实施例所示的口语发音测评方法的方法流程图。如图3所示,流程300包括下述步骤。在一些实施例中,流程300可以由处理设备140执行。
38.步骤310,获取待评测语音对应的语音特征。在一些实施例中,数据获取模块210执行步骤310。
39.待评测语音是指需要进行口语发音评测的语音数据,例如,学生跟读英语读本时发出的语音等。
40.语音特征是指从待评测语音中提取出的可以体现待评测语音特征的参数。语音特征的类型可以根据提取方法确定,例如可以包括:fbank特征、mfcc特征等。
41.语音特征可以通过特征提取算法对待评测语音进行特征提取获得,特征提取算法可以采用fbank、mfcc等。
42.在一些实施例中,语音特征可以由向量的方式表示。待评测语音的语音特征是由待评测语音中每一语音帧对应的特征向量构成。待评测语音中各语音帧都对应至少一个特征向量。以fbank特征表示语音特征为例,待评测语音得到的fbank特征会根据特征向量维度与语音帧数组成矩阵,例如,一段待评测语音有20帧,可以理解为:第1帧对应的fbank特征向量为:
[0043][0044]
第j帧对应的fbank特征向量为:
[0045][0046]
则这段20帧的待评测语音的特征向量会组成一个向量矩阵,该向量矩阵的维度即是40
×
20(帧数),向量矩阵可以表示如下:
[0047][0048]
步骤320,基于第一模型对语音特征的处理,确定待评测语音对应的识别文本及识别文本中单个词的时间边界。在一些实施例中,可以采用第一处理模块220实现步骤320。
[0049]
第一模型是指用于处理语音特征以得到对应的识别文本及识别文本中单个词的
时间边界的处理模块。在一些实施例中,第一模型为机器学习模型。例如,卷积神经网络模型(cnn),或者其他可以语音特征处理的模型。关于第一模型的更多说明参见图5。
[0050]
识别文本是指基于对获取到的语音特征的处理得到的与待评测语音对应的识别文本,即待评测语音对应的文本内容,在识别文本中包括若干个词或词组。例如,识别文本可以包括基于第一模型获取到的词组“今天星期五”等具体的文字或基于第一模型获取到的单个词“我”。在一些实施例中,可能由于发音者多读、漏读或发音不标准等因素的影响,会导致识别出来的结果(即识别文本)与测评文本有差距,关于测评文本的说明参见图4。
[0051]
时间边界是指时间节点,一个词的时间边界即指该词在一段语音中对应的时间节点,如一段5分钟长的语音中,“星期五”这个词的时间边界为3分30秒至3分32秒。
[0052]
在一些实施例中,一段语音可以看作是由若干个词构成,一个词是由若干音素构成。各个词对应的音素可以通过查询获取,例如,可以从预先创建好或获取到的发音词典中查询文本对应的音素信息。音素的时间边界即指各个音素在语音中对应的时间节点。
[0053]
单个词的时间边界是指单个词在语音中对应的时间节点。在一些实施例中,单个词的时间边界可以基于其对应的音素的时间边界确定。
[0054]
在一些实施例中,可以基于第一模型对待评测语音的语音特征的处理,确定待评测语音对应的识别文本。
[0055]
在一些实施例中,第一模型可以包括声学模型和语言模型,可以基于第一模型的声学模型对语音特征的处理,得到该语音对应的音素的时间边界。如,声学模型在训练时训练标签是对一段语音进行音素和语音的强制对齐后的结果,则基于训练好的声学模型即可以得到输入的待评测语音的音素的时间边界,再基于音素的时间边界,以及音素与识别文本中词的对应关系(例如,可以通过发音词典查询),可以得到识别文本中词的时间边界。
[0056]
强制对齐是一种对音频文件进行正字法转录并使用发音词典生成时间对齐版本以查找单词的技术。在一些实施例中,强制对齐可以包括帧级别的强制对齐和单词级别的强制对齐。上述声学模型中进行的强制对齐即帧级别的强制对齐。基于帧级别的强制对齐可以实现确定每帧语音对应的状态号。在一些实施例中,可以使用kaldi中的对齐工具实现。例如,第一处理模块220可以通过kaldi中的工具建立声学模型,将声学特征和音素输入到建立的声学模型,输出的结果即实现了强制对齐。
[0057]
步骤330,基于语音特征和单个词的时间边界,确定识别文本中单个词的子语音特征。在一些实施例中,可以由第一确定模块230实现步骤330。
[0058]
子语音特征是指基于获取到的时间边界对语音特征进行划分后得到的特征片段,例如,基于一个或多个音素的时间边界对语音特征进行划分后得到的特征片段即为该一个或多个音素对应的子语音特征。
[0059]
单个词的子语音特征是指基于单个词的时间边界对语音特征进行划分后得到的特征片段。例如,一段语音中包含三个词,基于单个词的时间边界将语音特征划分为三个特征片段,则第一个词的子语音特征即为第一个特征片段。在一些实施例中,若出现多读和/或漏读时,基于单个词的时间边界对语音特征进行划分得到的子语音特征的准确度可能会受到影响,因此,需要基于待评测语音存在的误差信息进行语音特征的划分。关于获取单个词的子语音特征的更多说明参见图4步骤430的内容。
[0060]
步骤340,基于第二模型对单个词的子语音特征的处理,确定识别文本中每个词对
应的每帧相对于每个词对应的每个音素的后验概率,以及识别文本中每个音素的时间边界。在一些实施例中,可以由第二处理模块240实现步骤340。
[0061]
第二模型是指用于处理单个词的子语音特征,以得到每个词对应的每帧相对于每个词对应的每个音素的后验概率,以及每个音素的时间边界的处理模块。在一些实施例中,第二模型为机器学习模型。例如,卷积神经网络模型(cnn),或者其他可以进行语音特征处理的模型。关于第二模型的更多说明参见图6。
[0062]
在一些实施例中,一个音素是由多帧语音信号构成的,因此,一个词同时对应多帧语音信号也对应多个音素。例如,词a对应音素b、c、d,音素b对应第1-3帧,音素c对应第4-5帧,音素d对应第6-8帧,则词a对应的每帧即第1-8帧中的每帧,音素b、c、d即词a对应的各个音素。
[0063]
识别文本中每个词对应的每帧相对于每个词对应的每个音素的后验概率是指每个语音帧相对于每个音素的后验概率,每一语音帧对每个音素都有一个后验概率,表示基于该语音帧导致该音素产生的概率。例如,若第1帧相对于音素b的后验概率为60%,则表示基于该语音帧导致音素b产生的概率为60%。在一些实施例中,一个词对应的每帧相对于这个词对应的每个音素的后验概率越大,则说明该词的发音越标准。
[0064]
识别文本中每个词对应的每帧相对于每个词对应的每个音素的后验概率可以基于第二模型对单个词的子语音特征的处理获得。即第二模型可以处理语音特征,然后输出该语音特征对应的识别文本中每个词对应的每帧相对于每个词对应的每个音素的后验概率。
[0065]
步骤350,基于后验概率以及每个音素的时间边界,确定待评测语音的评测结果。在一些实施例中,可以由结果评测模块250实现步骤350。
[0066]
评测结果是指对待评测语音进行口语发音等评测后得到的评价结果。评测结果的表现形式可以由多种,如可以采用非常好、较好、一般等形容词作为相应等级的评测结果,也可以采用如100分、80分等具体的分值的形式。
[0067]
在一些实施例中,一段语音的评测结果可以基于该语音对应的各个词的评测结果确定,一个词的评测结果可以结合该词对应的多个音素的评测结果确定,因此,一段语音的评测结果可以由该段语音包含的各个词对应的各个音素的评测结果确定。
[0068]
在一些实施例中,可以基于每个词对应的每帧相对于每个词对应的每个音素的后验概率确定该音素的评测结果,例如,每个词对应的每帧相对于每个词对应的每个音素的后验概率越大,则相应的其评测结果对应的等级越高(如较好、90分等)。在一些实施例中,可以基于每个词对应的每帧相对于每个词对应的每个音素的后验概率计算各个音素的评估分,再基于各个音素的评估分确定整段语音的评估分,并确定最终的评测结果。
[0069]
在一些实施例中,可以采用发音质量评测算法gop(goodness of pronunciation)算法确定待评测语音的评测结果。例如,可以基于gop算法计算各个音素的评估分,再基于各个音素的评估分计算整段语音的评估分。在一些实施例中,还可以基于其它可行的算法确定待评测语音的评测结果。例如,mdd(mispronunciation detection and diagnosis)、由gop算法衍生出来的算法等。
[0070]
先通过第一模型获取待评测语音的识别文本以及识别文本中单个词的时间边界以获取单个词的语音特征,再通过第二模型基于单个词的语音特征对音素进行对齐,得到
识别文本中单词内的每个音素的时间边界及其后验概率,最终通过后验概率计算得到最终评测结果,可以有效解决语音中错读的单词对其周围单词评测的影响问题,显著的提升检测准确率。
[0071]
应当注意的是,上述有关流程300的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程300进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
[0072]
图4是根据本说明书一些实施例所示的口语发音测评方法的子语音特征的获取流程图。如图4所示,流程400包括下述步骤。在一些实施例中,流程400可以由第一确定模块230执行。
[0073]
步骤410,获取测评文本。
[0074]
测评文本是指待评测语音对照的标准文本,如若待评测语音为学生跟读英语读本时发出的语音时,英语读本上的文本内容即可以作为测评文本。
[0075]
测评文本可以通过多种方式获取,如由需要进行语音评测的用户上传或从移动终端获取等。
[0076]
步骤420,基于识别文本和测评文本之间的评估距离,确定识别文本相对于测评文本的误差信息。
[0077]
识别文本相对于测评文本的误差信息是指识别文本相对于测评文本存在的不一致的内容,如错误的内容及多读、漏读的内容等。
[0078]
评估距离与识别文本和测评文本之间的相似度相关。
[0079]
在一些实施例中,可以按以下方法确定误差信息:
[0080]
假设识别文本由字符s(i)构成,i的取值为1到s的自然数,s代表识别文本中字符串的基于单词数的最大长度;
[0081]
假设测评文本由字符t(j)构成,j的取值为1到t的自然数,t代表测评文本中字符串的基于单词数的最大长度;
[0082]
假设s(m,n)表示由s(m)到s(n)的连续的字符组成的字符串,t(m,n)类似。
[0083]
依次计算s(1,i)到t(1,j)的评估距离,记为d(i,j)。评估距离的算法参见后文说明。
[0084]
令p、q为s、t,p、q是取值为整数的变量;
[0085]
重复以下过程:
[0086]
对于d(p,q),比较d(p-1,q-1),d(p-1,q),d(p,q-1),取其最小值;
[0087]
如果最小值为d(p-1,q-1),则确定字符s(p)和t(q)是对齐的;
[0088]
如果最小值为d(p-1,q),则确定字符s(p)是被删除的;
[0089]
如果最小值为d(p,q-1),则确定字符s(p+1)是插入的;
[0090]
其中,如果存在多个最小值,则可以任取其中之一;
[0091]
直到p和q均为1。
[0092]
由此可以确定误差信息。其中,在一些实施例中,评估距离d(i,j)可以按以下方法确定:
[0093]
在i,j都不为1时,d(i,j)取以下值a、b、c中的最小值:
[0094]
a:d(i-1,j)与单元相似度之和;
[0095]
b:d(i,j-1)与单元相似度之和;
[0096]
c:d(i-1,j-1)与单元相似度之和。
[0097]
在i为1时,d(i,j)取值为j;在j为1时,d(i,j)取值为i。
[0098]
在一些实施例中,单元相似度为s(i)与t(j)的单词文本相似度,文本相似度可以用多种可行的方式确定,例如相同为1,不相同为0。
[0099]
通过上述方法,可以有效地确定误差信息。
[0100]
在一些实施例中,识别文本和测评文本之间的评估距离与识别文本中的词和测评文本中的词对应的音素相似度相关。在一些实施例中,在计算评估距离时的单元相似度可以基于音素相似度确定;音素相似度是指两个词在识别文本和测评文本中的音素之间的相似度。例如,单元相似度为词s(i)对应的音素与词t(j)对应的音素之间的相似度。音素相似度越大则单元相似度越大。音素相似度可以各种可行方式确定。例如,可以通过音素特征的向量距离确定音素相似度,距离为0时相似度为1,距离越大相似度越低。
[0101]
识别文本是基于语音识别获得的,简单地根据文字进行识别误差效果可能不好,结合音素相似度来确定误差信息会具有更好的效果。
[0102]
在一些实施例中,确定了识别文本相对于测评文本的误差信息后即可确认识别文本相对于测评文本出现的多读及漏读情况,例如,若基于误差信息确定字符s(p)和t(q)是对齐,则表示两个字符是正确的。若基于误差信息确定字符s(p)是被删除的,则说明字符s(p)为漏读。若基于误差信息确定字符s(p+1)是插入的,则说明字符s(p+1)为多读。
[0103]
步骤430,基于误差信息、语音特征和单个词的时间边界,确定识别文本中单个词的子语音特征。
[0104]
在确定误差信息时,可以确定待评测语音中的多读和漏读结果,基于待评测语音中的多读和漏读结果以及前述获取到的单个词的时间边界,即可对待评测语音的语音特征进行划分,以得到单个词的子语音特征。划分时,对于多读和漏读的词可以直接舍弃不做处理。
[0105]
以下以单词为例说明如何获取单个词的子语音特征。例如,待评测语音的语音特征为a(维度是40
×
100(帧数)),其经过第一模型的处理得到的识别文本为a’(like eating apple vary much),该待评测语音对应测评文本b’(i like eating apple very much),则可先计算识别文本a’与测评文本b’的音素相似度并进行文本对齐,从而得到识别文本a’相对于测评文本b’的多读和漏读结果,具体为识别文本a’相对于测评文本b’漏读了“i”,同时,再对识别文本a’进行单词级别的强制对齐,通过该强制对齐可以识别出的识别文本a’的每个单词的起始和结束帧。如若识别文本a’中单词eating对应的帧的特征向量为a1-a9,则将其切分出来,得到一个新的矩阵[a1 a2...a9]即为单词eating的子语音特征,由于漏读的“i”没有特征,所以不对其进行处理。其他识别到的单词进行同样的切分处理,则对待评测语音的语音特征a的切分示意如下:
[0106]
切分前:
[0107]
[0108]
切分后:
[0109][0110]
通过基于音素相似度确认识别文本和测评文本之间的评估距离,进而得到评估结果,可以避免由于发音者的口音不标准导致的误判情形,即在评估时,借助音素相似度对待评测语音进行评估是将口音导致的误差作为一项评估结果,并非是简单的将其纳入漏读或多读的评估结果中,可以进一步提升评测的准确度。
[0111]
应当注意的是,上述有关流程400的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程400进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。
[0112]
图5是根据本说明书一些实施例所示的口语发音测评方法的第一模型520的训练图。在一些实施例中,过程500可以由处理设备140执行。
[0113]
在一些实施例中,第一模型520可以用于确定待评测语音对应的识别文本530及识别文本530中单个词的时间边界。
[0114]
在一些实施例中,第一模型520可以包括训练后的机器学习模型,该机器学习模型可以包括各种模型和结构,例如,第一模型520可以包括hmm-dnn、lstm-ctc、transformer等。
[0115]
在一些实施例中,第一模型520的输入可以包括语音特征510,输出可以包括识别文本530。关于语音特征510和识别文本530的更多描述可以参见图3及其描述。第一模型520的输入可以包括其他特征,其输出及确定识别文本也可以采取其他可行的方式。
[0116]
在一些实施例中,第一模型520的结构可以是自定义的模型结构。例如,第一模型520可以是两个或更多个模型的组合。如,第一模型520可以包括声学模型和语言模型。关于声学模型和语言模型的更多描述参见图6及其说明。
[0117]
在一些实施例中,第一模型520可以基于大量带有标识的训练样本获得。例如,第一模型520可以基于若干带第一标识的第一训练样本获得。
[0118]
第一标识是指第一语音语料对应的文本。例如,若第一语音预料是学生跟读中文读本时发出的语音,则中文读本上的文本内容即可以作为第一标识。第一标识可以人工进行标注,获取第一标识的方式可参见图4中获取测评文本的方式。
[0119]
在一些实施例中,为保证训练出的第一模型520的识别准确率更高,第一训练样本应尽可能多的包含更多数据。例如,第一训练样本可以是指满足第一要求的第一语音语料。
[0120]
第一要求是指与第一语音语料对应的口音和/或第一语音语料对应的场景相关。口音可以包括带有民族或地方特色的语音,场景可以包括语音的所属领域和/或语音的发出者所处的环境。在一些实施例中,满足第一要求的第一训练样本可以是包括有多种口音或多种场景的第一语音语料,例如,仍以上述示例为例,第一语音语料可以包括多个带有各种不同地方口音的学生跟读读本时发出的语音;又如,第一语音语料还可以是学生在较为安静的环境中发出的语音,或学生在较为嘈杂的环境中发出的语音,例如,商场内或火车站
广场上等。
[0121]
在一些实施例中,处理设备140可以基于第一训练样本,通过各种方法对第一模型520进行训练。例如,处理设备140可以基于满足第一要求的第一训练样本540,然后通过梯度下降等方法更新初始第一模型550的参数,然后将训练好的初始第一模型550作为第一模型520。其中,初始第一模型包括初始声学模型和初始语言模型。再例如,处理设备140可以基于满足第一要求的第一训练样本540,对第一模型520包含的声学模型和语言模型进行联合训练,以得到训练好的初始第一模型550作为第一模型520。关于对声学模型和语言模型进行联合训练的说明参见图6。
[0122]
通过上述设置,第一模型520的训练使用包含更多的场景、口音等数据的第一训练样本,可以提高识别准确率,保证在即使有环境噪音和/或口音影响下,也可以有较高的识别准确率,更贴近用户的实际使用场景,提高用户体验。
[0123]
图6是根据本说明书一些实施例所示的口语发音测评方法的第二模型的获取图。在一些实施例中,过程600可以由处理设备140执行。
[0124]
在一些实施例中,第二模型可以用于确定识别文本中每个词对应的每帧相对于每个词对应的每个音素的后验概率,以及识别文本中每个音素的时间边界。
[0125]
在一些实施例中,第二模型可以包括机器学习模型,该机器学习模型可以包括各种模型和结构,例如,第二模型可以包括hmm-dnn、lstm-ctc、transformer等。
[0126]
在一些实施例中,第二模型的输入可以包括语音特征610,第二模型的输出可以包括后验概率、音素的时间边界。关于语音特征610和后验概率、音素的时间边界的更多描述可以参见图3及其描述。第二模型的输入可以包括其他特征,其输出及确定后验概率、音素的时间边界也可以采取其他可行的方式。
[0127]
在一些实施例中,处理设备140可以通过多种方式对第二模型进行训练。例如,处理设备140可以将训练样本输入第二模型,通过训练更新第二模型的参数。又例如,第二模型的参数可以通过从第三模型620中迁移获取,具体说明参见第三模型相关的说明。
[0128]
第三模型620是指用于处理语音特征以得到对应的识别文本的处理模块。
[0129]
在一些实施例中,第三模型620可以包括训练后的机器学习模型,该机器学习模型可以包括各种模型和结构,第三模型620的结构可以与第一模型520相同或不同,例如,第三模型620的模型结构可以包括hmm-dnn、lstm-ctc、transformer等。
[0130]
在一些实施例中,与第一模型520类似,第三模型620的输入可以包括语音特征610,输出可以包括识别文本630。关于语音特征610和识别文本630的更多描述可以参见图3及其描述。第三模型620的输入可以包括其他特征,其输出及确定识别文本也可以采取其他可行的方式。
[0131]
如图6所示,在一些实施例中,第三模型620可以包括声学模型621和语言模型622。声学模型621的输入为语言特征610,输出为后验概率、音素的时间边界。语言模型622的输入为后验概率、音素的时间边界,输出为识别文本630。
[0132]
在一些实施例中,第二模型的结构与声学模型621的结构相同。在一些实施例中,处理设备140可以将训练好的声学模型621的参数迁移至第二模型,即可以将第三模型620中训练好的声学模型621的参数作第二模型的参数。
[0133]
在一些实施例中,第三模型620可以基于大量带有标识的训练样本获得。例如,第
三模型620可以基于若干带第二标识的第二训练样本获得。
[0134]
第二标识是指第二语音语料对应的文本。第二标识可以人工进行标注,获取第二标识的方式可参见图4中获取测评文本的方式。
[0135]
在一些实施例中,为保证训练出的第三模型620的识别准确率更高,第二训练样本应尽可能多的包含更多数据。例如,第二训练样本可以是指满足第二要求的第二语音语料。
[0136]
其中,第二要求是指与第二语音语料对应的发音质量相关。
[0137]
发音质量是指发音的好坏或发音水平高低的体现。在一些实施例中,可以将发音较为标准的如新闻主播在播报新闻材料的语音作为满足第二要求的第二语音语料。
[0138]
在一些实施例中,处理设备140可以基于第二训练样本,通过各种方法对第三模型620进行训练。例如,处理设备140可以基于满足第二要求的第二训练数据,然后通过梯度下降等方法更新初始第三模型620的参数,然后将训练好的初始第三模型作为第三模型620。
[0139]
在一些实施例中,声学模型621可以和语言模型622联合训练获取。处理设备140可以基于第二训练样本训练初始声学模型和初始语言模型。具体的,将带有标识的训练样本输入初始声学模型,通过训练更新初始声学模型和初始语言模型的参数,直到训练的中间声学模型和中间语言模型满足预设条件,获取训练好的声学模型和语言模型,其中,预设条件可以是损失函数小于阈值、收敛,或训练周期达到阈值。
[0140]
通过上述设置,借助第三模型620的训练得到第二模型的参数,有利于解决单独训练第二模型时难以获得标签的问题,从而可以获得更好的训练数据,从而得到训练得更好的第二模型。而且第一模型520与第三模型620的训练数据不同,使得训练后的第一模型520和训练后的第二模型可以针对各自的任务,进而提高了测评效果。
[0141]
第三模型620与第二模型可以采用相同的模型结构再利用满足不同要求的训练样本分别训练获得,并进一步通过训练好的第三模型620获取第二模型,可以实现先基于第一模型520对发音水平不同的用户录入的待测语音进行尽可能全面准确的识别以得到待测语音中的音素级别的对齐结果,以获取待测语音中单个词的语音特征,然后再基于第二模型对得到的单个词的语音特征的处理,进一步得到待测语音的帧级别的对齐结果,并最终基于帧级别的对齐结果实现对待测语音的评测,可以提升评测的准确度。
[0142]
本说明书实施例可能带来的有益效果包括但不限于:1、第一模型的训练使用包含更多的场景、口音等数据的第一训练样本,可以提高识别准确率,保证在即使有环境噪音和/或口音影响下,也可以有较高的识别准确率,更贴近用户的实际使用场景,提高用户体验;2、借助第三模型的训练得到第二模型的参数,有利于解决单独训练第二模型时难以获得标签的问题,从而可以获得更好的训练数据,从而得到训练得更好的第二模型;3、第一模型和第三模型的训练数据不同,而第二模型的参数是通过从第三模型中迁移获取,使得训练后的第一模型和训练后的第二模型可以针对各自的任务,进而提高了测评效果;4、通过引入第一模型语音识别提供多读、漏读检测并提出编辑余弦距离,提高多读、漏读检测准确性;5、通过两次强制对齐,改善多读、漏读、错读对评测的影响;6、通过单词对齐进行音素对齐及打分,可以综合多种影响参数进行评测,提高评测的全面性和实用性。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
[0143]
在一些实施例中,口语发音测评装置包括处理器以及存储器,处理器用于执行口
语发音测评方法,存储器用于存储指令,其特征在于,指令被处理器执行时,导致装置实现口语发音测评方法对应的操作。
[0144]
在一些实施例中,计算机可读存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行口语发音测评方法。
[0145]
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
[0146]
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
[0147]
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
[0148]
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
[0149]
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有
±
20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
[0150]
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
[0151]
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代
配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。