掌桥专利:专业的专利平台
掌桥专利
首页

一种发音评测方法及装置

文献发布时间:2023-06-19 11:39:06


一种发音评测方法及装置

技术领域

本申请涉及计算机技术领域,尤其涉及一种发音评测方法及装置。

背景技术

目前,我国学习语言的学生众多,在对学生的发音评测时,需要教师通过电脑或者面对面的方式人工对各学生的发音进行评测,但是这种评测发音的方法会耗费大量时间,效率不高。

现有技术中,学生可以通过将待评测语音输入到声学模型中,根据待评测语音中的语句或语段与给定的文本进行比对,能够自动获得待评测语音的分数,这样,可以提高发音评测的效率,但是,现有技术中这种自动评测发音的方法,当学生发生漏读单词、多读单词或者某些单词前后的顺序颠倒时,待评测语音的文本与给定文本不一致,声学模型无法正确识别语句或语段中对应的单词,这样,会导致发音评测获得的分数不准确。

发明内容

本申请实施例提供一种发音评测方法及装置,以提高发音评测的准确性。

本申请实施例提供的具体技术方案如下:

一种发音评测方法,包括:

获得待评测语音划分后的各帧的语音特征;

根据已训练的通用模型,以所述各帧的语音特征为输入参数,确定所述待评测语音的文本对应的各单词,并获得所述各单词分别对应的各音素,以及分别确定所述各音素在所述待评测语音中所对应的起始帧和结束帧,其中,所述通用模型为根据第一语音样本集进行迭代训练获得的,所述第一语音样本集中包括多个每帧标注有音素标签的语音样本;

根据已训练的标准模型,以所述各音素对应的起始帧和结束帧为输入参数,分别确定各音素相比于相应的标准发音的后验概率,其中,所述标准模型为根据第二语音样本集进行迭代训练获得的,所述第二语音样本集中包括多个每帧标注有音素标签的语音样本,所述第二语音样本集中各语音样本的发音符合预设标准发音;

基于已训练的打分模型,以及根据所述各音素的后验概率和在所述待评测语音中所对应的起始帧和结束帧,获得所述待评测语音的发音分数。

可选的,根据已训练的通用模型,以所述各帧的语音特征为输入参数,确定所述待评测语音的文本对应的各单词,并获得所述各单词分别对应的各音素,以及分别确定所述各音素在所述待评测语音中所对应的起始帧和结束帧,具体包括:

根据已训练的通用模型,以所述各帧的语音特征为输入参数,确定所述待评测语音的文本对应的各单词分别对应的各音素;

根据发音词典和一元文法构建有限状态自动机,其中,所述发音词典至少包括多个单词和对应的音素,所述有限状态自动机中至少包括所述各音素的起始状态、持续状态和结束状态,用于确定所述各音素在所述待评测语音中的起始帧和结束帧;

根据所述有限状态自动机和维特比算法确定所述各音素在所述待评测语音中所对应的起始帧和结束帧。

可选的,根据已训练的标准模型,以所述各音素对应的起始帧和结束帧为输入参数,分别确定各音素相比于相应的标准发音的后验概率,具体包括:

根据已训练的标准模型,以所述各音素对应的起始帧和结束帧为输入参数,分别确定所述各音素对应的每帧相比于相应的标准发音的后验概率;

将所述各音素的对应的每帧相比于相应的标准发音的后验概率进行加权平均,确定各音素相比于标准发音的后验概率。

可选的,基于已训练的打分模型,以及根据所述各音素的后验概率和在所述待评测语音中所对应的起始帧和结束帧,获得所述待评测语音的发音分数,具体包括:

分别确定所述各音素的音素类型为清音或浊音;

分别统计所述各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目;

根据所述各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目,分别确定所述各单词中音素类型为清音的音素的第一占比,并确定所述各单词中音素类型为浊音的音素的第二占比;

根据所述各音素在所述待评测语音中所对应的所述起始帧和所述结束帧,确定所述各音素所对应的帧数;

根据所述各音素的后验概率和所述各音素所对应的帧数,分别确定所述各单词中所有音素类型为清音的音素的第一平均后验概率,以及所述各单词中所有音素类型为浊音的音素的第二平均后验概率;

根据已训练的打分模型,以所述第一比例、所述第二比例、所述第一平均后验概率和所述第二平均后验概率为输入参数,获得所述待评测语音中各单词的发音分数。

可选的,根据所述各音素的后验概率和所述各音素所对应的帧数,分别确定所述各单词中所有音素类型为清音的音素的第一平均后验概率,以及所述各单词中所有音素类型为浊音的音素的第二平均后验概率,具体包括:

根据所述各音素所对应的帧数,分别确定所述各单词中所有音素类型为清音的音素所对应的第一总帧数,以及所有音素类型为浊音的音素所对应的第二总帧数;

根据对应的第一总帧数,分别确定所述各单词中所有音素类型为清音的音素的后验概率的第一平均后验概率;

根据对应的第二总帧数,分别确定所述各单词中所有音素类型为浊音的音素的后验概率的第二平均后验概率。

一种发音评测装置,包括:

处理模块,用于获得待评测语音划分后的各帧的语音特征;

第一确定模块,用于根据已训练的通用模型,以所述各帧的语音特征为输入参数,确定所述待评测语音的文本对应的各单词,并获得所述各单词分别对应的各音素,以及分别确定所述各音素在所述待评测语音中所对应的起始帧和结束帧,其中,所述通用模型为根据第一语音样本集进行迭代训练获得的,所述第一语音样本集中包括多个每帧标注有音素标签的语音样本;

第二确定模块,用于根据已训练的标准模型,以所述各音素对应的起始帧和结束帧为输入参数,分别确定各音素相比于相应的标准发音的后验概率,其中,所述标准模型为根据第二语音样本集进行迭代训练获得的,所述第二语音样本集中包括多个每帧标注有音素标签的语音样本,所述第二语音样本集中各语音样本的发音符合预设标准发音;

打分模块,用于基于已训练的打分模型,以及根据所述各音素的后验概率和在所述待评测语音中所对应的起始帧和结束帧,获得所述待评测语音的发音分数。

可选的,第一确定模块具体用于:

根据已训练的通用模型,以所述各帧的语音特征为输入参数,确定所述待评测语音的文本对应的各单词分别对应的各音素;

根据发音词典和一元文法构建有限状态自动机,其中,所述发音词典至少包括多个单词和对应的音素,所述有限状态自动机中至少包括所述各音素的起始状态、持续状态和结束状态,用于确定所述各音素在所述待评测语音中的起始帧和结束帧;

根据所述有限状态自动机和维特比算法确定所述各音素在所述待评测语音中所对应的起始帧和结束帧。

可选的,第二确定模块具体用于:

根据已训练的标准模型,以所述各音素对应的起始帧和结束帧为输入参数,分别确定所述各音素对应的每帧相比于相应的标准发音的后验概率;

将所述各音素的对应的每帧相比于相应的标准发音的后验概率进行加权平均,确定各音素相比于标准发音的后验概率。

可选的,打分模块具体用于:

分别确定所述各音素的音素类型为清音或浊音;

分别统计所述各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目;

根据所述各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目,分别确定所述各单词中音素类型为清音的音素的第一占比,并确定所述各单词中音素类型为浊音的音素的第二占比;

根据所述各音素在所述待评测语音中所对应的所述起始帧和所述结束帧,确定所述各音素所对应的帧数;

根据所述各音素的后验概率和所述各音素所对应的帧数,分别确定所述各单词中所有音素类型为清音的音素的第一平均后验概率,以及所述各单词中所有音素类型为浊音的音素的第二平均后验概率;

根据已训练的打分模型,以所述第一比例、所述第二比例、所述第一平均后验概率和所述第二平均后验概率为输入参数,获得所述待评测语音中各单词的发音分数。

可选的,根据所述各音素的后验概率和所述各音素所对应的帧数,分别确定所述各单词中所有音素类型为清音的音素的第一平均后验概率,以及所述各单词中所有音素类型为浊音的音素的第二平均后验概率时,打分模块具体用于:

根据所述各音素所对应的帧数,分别确定所述各单词中所有音素类型为清音的音素所对应的第一总帧数,以及所有音素类型为浊音的音素所对应的第二总帧数;

根据对应的第一总帧数,分别确定所述各单词中所有音素类型为清音的音素的后验概率的第一平均后验概率;

根据对应的第二总帧数,分别确定所述各单词中所有音素类型为浊音的音素的后验概率的第二平均后验概率。

一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述发音评测方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述发音评测方法的步骤。

本申请实施例中,获得待评测语音划分后的各帧的语音特征,根据通用模型对各帧的语音特征进行解码搜索,得到各帧的语音特征的时间信息,即各音素的起始帧和结束帧,根据已训练的标准模型,以各音素的起始帧和结束帧为输入参数,确定出各音素的后验概率,并根据打分模型输出分数,这样,不需要教师进行人工发音评测,就能够自动检测出乱序的单词,提高了效率,并且,根据通用模型确定音素起始帧和结束帧,并根据标准模型确定后验概率,将识别切割和计算后验概率分别使用不同模型计算,并且通用模型可以无需依赖顺序可以准确识别各音素的起始帧和结束帧,解决了乱序读音评测不准确的问题,在漏读或多读单词的情况下,也能够准确输出分数,提高了发音评测的准确性。

附图说明

图1为本申请实施例中一种发音评测方法的流程图;

图2为本申请实施例中基于Viterbi算法获得全局最优解的示意图;

图3本申请实施例中中文“你好”的各音素的起始帧和结束帧的结果示意图;

图4为本申请实施例中普通的TDNN模型识别音素的结构图;

图5为本申请实施例中TDNN模型识别音素的结构图;

图6为本申请实施例中另一种TDNN模型识别音素的结构图;

图7为本申请实施例中发音评测方法的原理图;

图8为本申请实施例中发音评测装置的结构示意图;

图9为本申请实施例中电子设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

目前,我国学习语言的学生众多,而具有纯正口音、高质量的教师相对于众多的学生非常匮乏,在对学生的发音进行评测时,需要教师通过电脑或者面对面的方式人工对各学生的发音进行评测,但是由于高质量的教师十分缺乏,并且由教师人工进行语音评测耗时非常大,因此这种评测发音的方法效率不高。

现有技术中,提供了一种通过声学模型自动评测发音的方法,学生可以将待评测语音输入到声学模型中,声学模型能够根据待评测语音中的语句或语段与标准发音的给定的文本一一进行比对,进而学生能够获得待评测语音的分数,这样,可以提高发音评测的效率,但是,现有技术中这种自动评测发音的方法,由于声学模型是根据给定的文本比对的,当学生发生漏读单词、重复读单词,多读单词或者某些单词前后的顺序颠倒时,声学模型无法正确识别输入的待评测语音中的语句或语段,进而无法识别到对应的单词,这样,会导致发音评测获得的分数不准确。

本申请实施例中,提供了一种发音评测方法,获得待评测语音划分后的各帧的语音特征,将各帧的语音特征作为已训练的通用模型的输入参数,确定待评测语音的文本对应的各单词,并获得各单词分别对应的各音素,以及分别确定各音素在待评测语音中所对应的起始帧和结束帧,将各音素在待评测语音中所对应的起始帧和结束帧作为已训练的标准模型的输入参数,分别确定各音素相比与相应的标准发音的后验概率,并基于已训练的打分模型,以及后验概率和起始帧和结束帧,获得待评测语音的发音分数,这样,当学生发生漏读单词或者单词阅读顺序颠倒时,通用模型根据各音素在待评测语音中所对应的起始帧和结束帧判断出单词顺序是否颠倒,是否有多读单词、漏读单词的情况发生,进而通过标准模型和打分模型能够在待评测语音的基础上给出更加准确的分数,这样,可以提高发音评测的准确性。

基于上述实施例,参阅图1所示,为本申请实施例中一种发音评测方法的流程图,主要应用于服务器,具体包括:

步骤100:获得待评测语音划分后的各帧的语音特征。

本申请实施例中,执行步骤100时,具体包括:

S1:将待评测语音的音频进行分帧,获得待评测语音划分后的各帧。

具体地,在将获得的待评测语音进行分帧时,可以根据预设的方式进行划分,例如,将待评测语音的音频划分为每25ms为一帧,帧移为10ms,并且,一句待评测语音的评测时间非常短,可以在秒以内,本申请实施例中对此并不进行限制。

S2:对待评测语音划分后的各帧进行特征提取,获得待评测语音划分后的各帧的语音特征。

具体地,当获得划分后的待评测语音的各帧后,对各帧进行特征提取,获得待评测语音划分后的各帧的语音特征,该语音特征可以用40维梅尔倒谱系数(Mel-scaleFrequency Cepstral Coefficients,MFCC)表示,该MFCC是在梅尔(Mel)标度频率域提取出来的倒谱参数,Mel标度描述了人耳频率的非线性特性,Mel与频率的关系可用下式近似表示:

其中,f为频率,f的单位为Hz。

步骤110:根据已训练的通用模型,以各帧的语音特征为输入参数,确定待评测语音的文本对应的各单词,并获得各单词分别对应的各音素,以及分别确定各音素在待评测语音中所对应的起始帧和结束帧。

其中,通用模型为根据第一语音样本集进行迭代训练获得的,第一语音样本集中包括多个每帧标注有音素标签的语音样本。

本申请实施例中,通用模型可以用比标准模型至少多3倍的语音样本来训练,通用模型中的第一语音样本集对发音的标准没有要求,根据通用模型以各帧的语音特征为输入参数,确定待评测语音的文本对应的各单词,并获得各单词分别对应的各音素,分别确定各音素在待评测语音中所对应的起始帧和结束帧,并将各音素在待评测语音中所对应的起始帧和结束帧作为输出参数,通用模型的训练过程就是训练一个由语音特征到音素,再到音素对应的起始帧和结束帧的模型,因此,通用模型是用来识别待评测语音的各音素所对应的起始帧和结束帧的,通用模型可以使得识别更加准确,并且能准确识别出词序。

步骤120:根据已训练的标准模型,以各音素对应的起始帧和结束帧为输入参数,分别确定各音素相比于相应的标准发音的后验概率。

其中,标准模型为根据第二语音样本集进行迭代训练获得的,第二语音样本集中包括多个每帧标注有音素标签的语音样本,第二语音样本集中各语音样本的发音符合预设标准发音。

其中,第二样本集中存储有标准发音的语音样本,是对应于待评测语音的标准发音,用于衡量待评测语音的判断标准,待评测语音与语音样本对应的文本相同,因此,待评测语音中的音素与标准发音的语音样本中的音素一一对应。

本申请实施例中,标准模型例如是由至少200小时的标准发音的语音和对应的文本训练获得的,用于输出各音素的后验概率,能够使得根据特征计算后验概率变得更加准确,并且,本申请实施例中,分别设置通用模型和标准模型能够解决乱序发音评测不准的问题。

步骤130:基于已训练的打分模型,以及根据各音素的后验概率和在待评测语音中所对应的起始帧和结束帧,获得待评测语音的发音分数。

本申请实施例中,需要基于已训练的打分模型,并根据各音素的后验概率和在待评测语音中所对应的起始帧和结束帧,进而可以获得待评测语音的发音分数,也就是说,在获得待评测语音的发音分数时,需要确定各音素的后验概率和在待评测语音中所对应的起始帧和结束帧。

下面先对确定各音素的后验概率和确定待评测语音中各音素所对应的起始帧和结束帧的步骤进行详细阐述。

在获得待评测语音中各音素所对应的起始帧和结束帧时,则执行步骤110,具体包括:

S1:根据已训练的通用模型,以各帧的语音特征为输入参数,确定待评测语音的文本对应的各单词分别对应的各音素。

S2:根据发音词典和一元文法构建有限状态自动机。

其中,发音词典至少包括多个单词和对应的音素,有限状态自动机中至少包括各音素的起始状态、持续状态和结束状态,用于确定各音素在待评测语音中的起始帧和结束帧。

本申请实施例中,是根据发音词典和一元文法构建有限状态自动机的,待评测语音的音频有所对应的待评测语音的文本,当得到待评测语音的音频所对应的文本后,可以基于一元文法,并通过发音词典展开成音素序列,进而将各音素再展开为状态,每个音素由3个状态组成,分别为起始状态、持续状态和结束状态,并且,起始状态、持续状态和结束状态可以自动跳转,进而生成有限状态自动机。

其中,发音词典中至少包括多个单词和对应的音素,因此,待评测语音的音频所对应的文本可以根据发音词典展开为多个单词和各单词对应的各音素。

例如,英语“How are you”,“How”的发音为“HH”和“AW”,“are”的发音为“AA”和“R”,“you”的发音为“Y”和“UW”,因此,英语“How are you”可以展开为“HH”、“AW”、“AA”、“R”、“Y”和“UW”,则英语“How are you”的音素为“HH AW AA R Y UW”,本申请实施例中对此并不进行限制。

其中,一元文法是n元文法中当n为1时的一种情况,一元文法说明单词的出现顺序不受以前出现的单词的干扰,每个单词都是一个词,每个时刻,每个单词出现的概率是一致的,当前单词和下一个单词之间没有概率,每个单词都随机出现,n元文法(n-gram)指文本中连续出现的n个单词,n元文法模型是基于(n-1)阶马尔可夫链的一种概率语言模型,通过n个单词出现的概率来推断语句的结构,这一模型被广泛应用于概率论、通信理论、计算语言学(如基于统计的自然语言处理)、计算生物学(如序列分析)和数据压缩等领域,当n分别为1、2、3时,又分别称为一元文法(unigram)、二元文法(bigram)与三元文法(trigram),本申请实施例中,由于需要在漏读单词、多读单词或单词乱序的情况下也能够正确得到待评测语音的发音分数,因此,使用到的是一元文法,这样,可以通过通用模型中的一元文法检测出单词的乱序,当语序与第一语音样本集中的给定的文本的语序不一致时,服务器能够准确判断。

例如,中文“你”后,由于使用到的是一元文法,因此,每个单词出现的概率是一致的,也就是说,中文“你”后,可接“好”,但是也可以接“你”,并且,单词“你”和单词“好”出现的概率是一致的,本申请实施例中对此并不进行限制。

S3:根据有限状态自动机和维特比算法确定各音素在待评测语音中所对应的起始帧和结束帧。

本申请实施例中,当获得有限状态自动机后,根据维特比(Viterbi)算法确定各音素在待评测语音中所对应的起始帧和结束帧,这样,当单词中某个音素读错时,可以给出该音素,该音素占的位置,即音素在待评测语音中所对应的起始帧和结束帧。

其中,Viterbi算法本质上是一种动态规划算法,能够得到全局最优解,参阅图2所示,为本申请实施例中基于Viterbi算法获得全局最优解的示意图,假设从起点到终点有一条最终路径,那么这条路径的子路径也是从起点到相应时刻点的最优路径,图2中的黑色的粗线是一条从起点到终点的最优路径,那么从起点到时刻4的黑色的粗线部分也是该时间段的最优路径,也就是说,任一时刻,只需记录到该时刻所有状态的最优路径即可,以时刻4为例,在时刻4,只需记录时刻4上经过三个状态S1,S2,S3的最优路径即可,也就是只需要记录三条路径,接着到时刻5,时刻5的S3状态有两条路径经过,取其中最优路径,时刻5的S2、S1状态类似,也就是说到了时刻5,仍然只需要记录三条路径即可。

所以每一时刻需要做两次循环,外层循环现在时刻所有状态,内层循环现在时刻某一状态到下一时刻所有状态,时间复杂度和所有时间段的时间复杂度。实际大规模语音识别中任一时刻的状态可能很大,比如5000个,因此,在这种情况下,即使使用了Viterbi算法,时间复杂度还是太大,因此,本申请实施例中为了解决这个问题,引入了集束搜索(BeamSearch)算法,能够进一步减少计算复杂度,Beam Search算法可以在损失微小性能的条件下提高解码速度,但是无法保证全局最优解,Beam Search算法中涉及到现在时刻state数目以及下一时刻state数目,如果想要提高解码速度,需要对这两个数值都做缩减,因此实际做法是设置阈值,减少语音对齐中现在时刻以及下一时刻状态数目,具体包括:

A1、对所有状态排序,最优状态放最前面,最优状态得分=best_weight。

A2、设置一个beam,设置阈值1=cur_cutoff,cur_cutoff=best_weight+beam,所有得分在cur_cutoff以内的,保留,反之丢弃,现在时刻的state数目减少。

A3、计算到下一时刻的最优路径得分new_weight。

A4、设置一个adaptive_beam,设置阈值2=next_cutoff,next_cutoff=new_weight+adaptive_beam,所有得分在next_cutoff以内的,保留,反之丢弃,下一时刻的state数目减少。

A5、得到中文“你好”的各音素的起始帧和结束帧的结果图。

参阅图3所示,为本申请实施例中中文“你好”的各音素的起始帧和结束帧的结果示意图,音素“n”在待评测语音中的音频中的起始帧为第1帧,结束帧为第4帧,音素“i”的起始帧为第5帧,结束帧为第7帧,素“h”的起始帧为第8帧,结束帧为第9帧,素“a”的起始帧为第10帧,结束帧为第11帧,素“o”的起始帧为第12帧,结束帧为第12帧。

当基于已训练的通用模型获得各音素在待评测语音中所对应的起始帧和结束帧后,进而基于已训练的标准模型,以各音素在待评测语音中所对应的起始帧和结束帧作为输入参数,获得后验概率,执行步骤120时,具体包括:

S1:根据已训练的标准模型,以各音素对应的起始帧和结束帧为输入参数,分别确定各音素对应的每帧相比于相应的标准发音的后验概率。

本申请实施例中,根据已训练标准模型,以各音素对应的起始帧和结束帧作为输入参数,确定各音素的各帧相比于相应的标准发音的后验概率,每个音素对应多帧。

S2:将各音素的对应的每帧相比于相应的标准发音的后验概率进行加权平均,确定各音素相比于标准发音的后验概率。

本申请实施例中,当获得各音素的对应的每帧相比与相应的标准发音的后验概率后,将每帧的后验概率进行加权平均,确定各音素相比于标准发音的后验概率,也就是说,将各音素的对应的每帧相比于相应的标准发音的后验概率相加,然后再按照各音素的帧数平均,获得各音素的后验概率,例如,音素“n”对应的帧数为1-4帧,第1帧的后验概率为p1,第2帧的后验概率为p2,第3帧的后验概率为p3,第4帧的后验概率为p4,音素n的后验概率为

当基于标准模型确定各音素相比于标准发音的后验概率后,则基于已训练的打分模型,以及根据各音素的后验概率和在待评测语音中所对应的起始帧和结束帧,获得待评测语音的发音分数,则执行步骤130时,具体包括:

S1:分别确定各音素的音素类型为清音或浊音。

本申请实施例中,当从标准模型中输入参数为各音素的后验概率后,并确定各音素的音素类型为清音或浊音,本申请实施例中分别确定各音素的音素类型的原因是,清音发音更趋近于噪声,基频和共振峰不太明显,而浊音则不同,浊音能量大,基频和共振峰明显,如果将清音和浊音按照相同的权重对后验概率进行处理进而获得单词的分数时,分数的偏差可能会非常大,这样,会造成单词分数不准确。

因此,本申请实施例中提供了一种可能的实施方式,分别统计各单词中音素类型为清音的音素的第一占比,各单词中音素类型为浊音的音素的第二占比,各单词中所有音素类型为清音的音素的第一平均后验概率,以及各单词中所有音素类型为浊音的音素的第二平均后验概率,然后将这四个维度输入到打分模型中,并映射为0-100分。

S2:分别统计各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目。

本申请实施例中,分别统计各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目,例如,单词“How”中,音素为“HH”和“AW”,则音素类型为清音的数目是1,音素类型为浊音的数目也为1。

S3:根据各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目,分别确定各单词中音素类型为清音的音素的第一占比,并确定各单词中音素类型为浊音的音素的第二占比。

本申请实施例中,例如,若单词中包含的音素的总数目为10,根据音素类型将音素分为清音和浊音,若单词中包含的音素类型为清音的音素的数目为4,音素类型为浊音的音素的数目为6,则该单词中音素类型为清音的音素的第一占比为

S4:根据各音素在待评测语音中所对应的起始帧和结束帧,确定各音素所对应的帧数。

本申请实施例中,例如,音素“i”在待评测语音中所对应的起始帧为第1帧,结束帧为第3帧,则确定音素“i”所对应的帧数为3,本申请实施例中对此并不进行限制。

S5:根据各音素的后验概率和各音素所对应的帧数,分别确定各单词中所有音素类型为清音的音素的第一平均后验概率,以及各单词中所有音素类型为浊音的音素的第二平均后验概率。

本申请实施例中,执行步骤S5时,提供了两种不同的实施方式,具体包括:

第一种方式:根据帧数确定第一平均后验概率和第二平均后验概率。

执行步骤S5时,具体包括:

A1、根据各音素所对应的帧数,分别确定各单词中所有音素类型为清音的音素所对应的第一总帧数,以及所有音素类型为浊音的音素所对应的第二总帧数。

A2、根据对应的第一总帧数,分别确定各单词中所有音素类型为清音的音素的后验概率的第一平均后验概率。

A3、根据对应的第二总帧数,分别确定各单词中所有音素类型为浊音的音素的后验概率的第二平均后验概率。

第二种方式:根据音素的个数确定第一平均后验概率和第二平均后验概率。

则执行步骤S5时,具体包括:

根据各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目,分别确定各单词中所有音素类型为清音的音素的后验概率的第一平均后验概率,并确定各单词中所有音素类型为浊音的音素的后验概率的第二平均后验概率。

S6:根据已训练的打分模型,以第一比例、第二比例、第一平均后验概率和第二平均后验概率为输入参数,获得待评测语音中各单词的发音分数。

本申请实施例中,将第一比例、第二比例、第一平均后验概率和第二平均后验概率作为特征,用线性回归训练一个打分模型,将这四个维度映射到0到100分,进而可以从打分模型中输出待评测语音中各单词的发音分数。

进一步地,本申请实施例中,还可以基于已训练的打分模型,以及根据各音素的后验概率和在待评测语音中所对应的起始帧和结束帧,获得待评测语音的整体发音分数。

由于本申请实施例中打分模型的线性回归是基本的线性回归,因此,在此并不过多赘述。

本申请实施例中,获得待评测语音划分后的各帧的语音特征,根据已训练的通用模型,以各帧的语音特征为输入参数,根据发音词典和一元文法创建有限状态自动机,并根据有限状态自动机和维特比算法确定待评测语音的文本对应的各单词,并获得各单词分别对应的各音素,以及分别确定各音素在待评测语音中所对应的起始帧和结束帧,根据已训练的标准模型,以各音素对应的起始帧和结束帧为输入参数,分别确定各音素对应的每帧相比于相应的标准发音的后验概率后,将各音素的对应的每帧相比于相应的标准发音的后验概率进行加权平均,确定各音素相比于标准发音的后验概率,进而根据有限状态自动机和维特比算法确定各音素在待评测语音中所对应的起始帧和结束帧,由于使用一元文法训练通用模型,因此,各单词出现的概率是一致的,这样,即使出现漏读,多读单词或者单词顺序颠倒的情况,也能够能够保证得到的分数是准确的,这样,能够提升发音评测的准确性。

基于上述实施例,下面对本申请实施例中通用模型和标准模型的训练方法进行详细阐述。

本申请实施例中,通用模型和标准模型是基于时延神经网络模型训练得到的,其中,通用模型为根据第一语音样本集进行迭代训练获得的,第一语音样本集中包括多个每帧标注有音素标签的语音样本,通用模型是用训练标准模型的训练数据的3倍数据训练得到的由语音特征到音素,再到各音素的起始帧和结束帧的概率模型,通用模型对发音标准没有要求,标准模型为根据第二语音样本集进行迭代训练获得的,第二语音样本集中包括多个每帧标注有音素标签的语音样本,第二语音样本集中各语音样本的发音符合预设标准发音,例如,标准模型是有二百小时的发音较标准的语音和对应的文本,训练特征到音素的概率模型,用于计算各音素的后验概率,通用模型和标准模型的训练方法一致,只是数据量不一致,这里统称为声学模型。

声学模型训练过程为,将待评测语音先分帧,然后提取语音特征,每25ms一帧,帧移10ms,语音特征为40维MFCC,提取语音特征完成后,将待评测语音的音频文本按字典展开成音素,将每帧按时间平均分割,并打上音素标签,语音特征和音素标签对应后,用时延神经网络(Time Delay Neural Network,TDNN)训练得到初始模型,用初始模型维特比强制对齐,对待评测语音的音频进行新的对齐,每个音频的音素标签得到后,进行新的训练得到新的模型,当迭代到一定轮数时,停止训练,得到最终的训练模型。

其中,强制对齐为通过语音特征和TDNN模型得到每帧的标签,由于TDNN需要有语音特征和音素标签才可以训练,而强制对齐就是得到待评测语音的每一帧的音素标签,本申请实施例中,强制对齐分两步,第一步根据发音词典和一元文法构建有限状态自动机,第二步,时延神经网络利用维特比解码得到各音素的每帧标注的音素标签。

通常在训练过程中,使用的是普通的TDNN模型,TDNN模型是第一种为自动语音识别(Automatic Speech Recognition,ASR)技术使用多个卷积神经网络(ConvolutionalNeural Networks,CNN)层的模型,这种模型在时间轴和频率轴上都应用了卷积运算,参阅图4所示,为本申请实施例中普通的TDNN模型识别音素的结构图,假设单词“gold”的音素为“B”,“D”,“G”,其中,0-12表示每一帧的特征向量,本申请实施例中的特征向量可以用13维MFCC特征来表示,本申请实施例中对此并不进行限制。

由于TDNN是一个考虑多帧信息的网络模型,并在多帧之间做卷积,这样能够使信息更加丰富准确率更高,因此,本申请实施例中,提供了一种包含多帧的TDNN模型,参阅图5所示为本申请实施例中TDNN模型识别音素的结构图,由于延时为2,则连续的3帧都会被考虑,其中,隐含层起到特征抽取的作用,输入层每一个矩形内共有13个小黑点,代表该帧的13维MFCC特征,假设有10个隐含层,那么连接的权重数目为3*13*10=390。

为了结构紧凑显示,本申请实施例中提供了另一种TDNN模型识别音素的结构图参阅图6所示为本申请实施例中另一种TDNN模型识别音素的结构图。其中,图5和图6是等价的,每条线代表13*10=130个权重值,三条不同粗细的线为390个权重,也可以称之为滤波器。

因此,TDNN是利用交叉熵不断更新自己的权值,逼近正确结果,是一个计算特征到状态的后验概率的模型。

本申请实施例中,在训练通用模型和标准模型的过程中使用到了一元文法,因此,当待评测语音的语序与第一语音样本集中的给定的文本的语序不一致时,能够在乱序的基础上输出正确的分数,并且,当单词中某个音素读错时,由于通用模型输出的是各音素的起始帧和结束帧,标准模型输出的是各音素的后验概率,因此,能够实时获知错误的音素,并获知音素的位置。

基于上述实施例,参阅图7所示,为本申请实施例中发音评测方法的原理图。

特征提取器700:接收待评测语音,将待评测语音按帧划分,并将划分后的各帧进行特征提取,获得待评测语音划分后的各帧的语音特征。

通用模型710:以各帧的语音特征为输入参数,根据有限状态自动机720和Viterbi算法730确定待评测语音的文本对应的各单词,并获得各单词分别对应的各音素,以及分别确定各音素在待评测语音中所对应的起始帧和结束帧。

其中,通用模型为根据第一语音样本集进行迭代训练获得的,第一语音样本集中包括多个每帧标注有音素标签的语音样本。

标准模型740:以各音素对应的起始帧和结束帧为输入参数,输出各音素相比于相应的标准发音的后验概率。

其中,标准模型为根据第二语音样本集进行迭代训练获得的,第二语音样本集中包括多个每帧标注有音素标签的语音样本,第二语音样本集中各语音样本的发音符合预设标准发音。

打分模型750:以各单词中音素类型为清音的音素的第一占比,各单词中音素类型为浊音的音素的第二占比,各单词中所有音素类型为清音的音素的第一平均后验概率,以及各单词中所有音素类型为浊音的音素的第二平均后验概率为输入参数,输出待评测语音中各单词的发音分数。

进一步地,当标准模型740输出各音素相比于相应的标准发音的后验概率后,会分别确定各音素的音素类型为清音或浊音,然后分别统计各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目,根据各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目,分别确定各单词中音素类型为清音的音素的第一占比,并确定各单词中音素类型为浊音的音素的第二占比,根据各音素在待评测语音中所对应的起始帧和结束帧,确定各音素所对应的帧数,并根据各音素的后验概率和各音素所对应的帧数,分别确定各单词中所有音素类型为清音的音素的第一平均后验概率,以及各单词中所有音素类型为浊音的音素的第二平均后验概率,进而打分模型750以第一比例、第二比例、第一平均后验概率和第二平均后验概率为输入参数,获得待评测语音中各单词的发音分数。

本申请实施例中,以述各帧的语音特征为输入参数,确定待评测语音的文本对应的各单词,并获得各单词分别对应的各音素,以及分别确定各音素在待评测语音中所对应的起始帧和结束帧,根据已训练的标准模型,以各音素对应的起始帧和结束帧为输入参数,分别确定各音素相比于相应的标准发音的后验概率,然后基于已训练的打分模型,以及根据各音素的后验概率和在待评测语音中所对应的起始帧和结束帧,获得待评测语音的发音分数,这样,根据通用模型和标准模型,能够准确识别出乱序的单词,并且,当单词中的音素读错时,可以获知音素的位置,给出更准确的分数,这样,能够提高发音评测的准确性。

基于同一发明构思,本申请实施例中提供了发音评测装置,该发音评测装置例如可以是前述实施例中的服务器,该发音评测装置可以是硬件结构、软件模块、或硬件结构加软件模块。基于上述实施例,参阅图8所示,为本申请实施例中发音评测装置的结构示意图,具体包括:

处理模块800,用于获得待评测语音划分后的各帧的语音特征;

第一确定模块810,用于根据已训练的通用模型,以所述各帧的语音特征为输入参数,确定所述待评测语音的文本对应的各单词,并获得所述各单词分别对应的各音素,以及分别确定所述各音素在所述待评测语音中所对应的起始帧和结束帧,其中,所述通用模型为根据第一语音样本集进行迭代训练获得的,所述第一语音样本集中包括多个每帧标注有音素标签的语音样本;

第二确定模块820,用于根据已训练的标准模型,以所述各音素对应的起始帧和结束帧为输入参数,分别确定各音素相比于相应的标准发音的后验概率,其中,所述标准模型为根据第二语音样本集进行迭代训练获得的,所述第二语音样本集中包括多个每帧标注有音素标签的语音样本,所述第二语音样本集中各语音样本的发音符合预设标准发音;

打分模块830,用于基于已训练的打分模型,以及根据所述各音素的后验概率和在所述待评测语音中所对应的起始帧和结束帧,获得所述待评测语音的发音分数。

可选的,第一确定模块810具体用于:

根据已训练的通用模型,以所述各帧的语音特征为输入参数,确定所述待评测语音的文本对应的各单词分别对应的各音素;

根据发音词典和一元文法构建有限状态自动机,其中,所述发音词典至少包括多个单词和对应的音素,所述有限状态自动机中至少包括所述各音素的起始状态、持续状态和结束状态,用于确定所述各音素在所述待评测语音中的起始帧和结束帧;

根据所述有限状态自动机和维特比算法确定所述各音素在所述待评测语音中所对应的起始帧和结束帧。

可选的,第二确定模块820具体用于:

根据已训练的标准模型,以所述各音素对应的起始帧和结束帧为输入参数,分别确定所述各音素对应的每帧相比于相应的标准发音的后验概率;

将所述各音素的对应的每帧相比于相应的标准发音的后验概率进行加权平均,确定各音素相比于标准发音的后验概率。

可选的,打分模块830具体用于:

分别确定所述各音素的音素类型为清音或浊音;

分别统计所述各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目;

根据所述各单词中包含的音素的总数目,以及音素类型为清音的数目和音素类型为浊音的数目,分别确定所述各单词中音素类型为清音的音素的第一占比,并确定所述各单词中音素类型为浊音的音素的第二占比;

根据所述各音素在所述待评测语音中所对应的所述起始帧和所述结束帧,确定所述各音素所对应的帧数;

根据所述各音素的后验概率和所述各音素所对应的帧数,分别确定所述各单词中所有音素类型为清音的音素的第一平均后验概率,以及所述各单词中所有音素类型为浊音的音素的第二平均后验概率;

根据已训练的打分模型,以所述第一比例、所述第二比例、所述第一平均后验概率和所述第二平均后验概率为输入参数,获得所述待评测语音中各单词的发音分数。

可选的,根据所述各音素的后验概率和所述各音素所对应的帧数,分别确定所述各单词中所有音素类型为清音的音素的第一平均后验概率,以及所述各单词中所有音素类型为浊音的音素的第二平均后验概率时,打分模块830具体用于:

根据所述各音素所对应的帧数,分别确定所述各单词中所有音素类型为清音的音素所对应的第一总帧数,以及所有音素类型为浊音的音素所对应的第二总帧数;

根据对应的第一总帧数,分别确定所述各单词中所有音素类型为清音的音素的后验概率的第一平均后验概率;

根据对应的第二总帧数,分别确定所述各单词中所有音素类型为浊音的音素的后验概率的第二平均后验概率。

基于上述实施例,参阅图9所示为本申请实施例中电子设备的结构示意图。

本申请实施例提供了一种电子设备,该电子设备可以包括处理器910(CenterProcessing Unit,CPU)、存储器920、输入设备930和输出设备940等,输入设备930可以包括键盘、鼠标、触摸屏等,输出设备940可以包括显示设备,如液晶显示器(Liquid CrystalDisplay,LCD)、阴极射线管(Cathode Ray Tube,CRT)等。

存储器920可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器910提供存储器920中存储的程序指令和数据。在本申请实施例中,存储器920可以用于存储本申请实施例中任一种发音评测方法的程序。

处理器910通过调用存储器920存储的程序指令,处理器910用于按照获得的程序指令执行本申请实施例中任一种发音评测方法。

基于上述实施例,本申请实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意方法实施例中的发音评测方法。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

相关技术
  • 一种口语发音评测方法、装置、电子设备及存储介质
  • 一种发音评测方法、装置、电子设备和存储介质
技术分类

06120113006042