1.本发明涉及智能语音领域,特别涉及一种发音诊断方法、装置、终端设备以及计算机可读存储介质。
背景技术:2.英语作为当今世界上最为通用的语言,随着全球化的深入发展,其重要性日益突出。面对面授课的线下英语学习更注意细节,但是受地域限制,有些地区的家长找不到合适孩子的师资和课程体系。而依托互联网平台进行授课的线上英语学习可以很好地解决线下英语学习的弊端,而且更有利于利用碎片时间学习。互联网和人工智能技术的更新迭代为在线教育的发展提供了利好条件。
3.目前许多口语评测产品能对句子和单词层面进行评分,但在课堂上,教师需要颗粒度更小的评测系统对学生的发音进行及时引导。以音标学习课堂为例,教师需要对学生的发音进行细致的纠错,如学生将thank错发为系统会直观显示出学生错读,此时教师及时针对性地指导学生,而使得学生则能察觉出自己的错误所在,进而带着目的高效地练习发音及口语。
4.但是,现有的方案中,教师在对每个学生的发音进行发音诊断时,发音诊断效率较低。
技术实现要素:5.本发明的主要目的是提供一种发音诊断方法、装置、终端设备以及计算机可读存储介质,旨在解决现有技术中教师在对每个学生的发音进行发音诊断时,发音诊断效率较低的技术问题。
6.为实现上述目的,本发明提出一种发音诊断方法,用于终端设备,所述方法包括以下步骤:
7.在接收到目标用户针对标准文本信息发送的目标语音信息时,将所述目标语音信息转换为声学特征序列;
8.将预设标准字典信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素;
9.基于所述实际发音音素和所述标准文本信息对应的标准音素,获得所述目标语音信息的发音诊断结果。
10.可选的,所述预设标准字典信息包括标准字典字母信息;所述将预设标准字典信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素的步骤之前,所述方法还包括:
11.对所述标准文本信息中的字母进行编码,获得标准字典字母信息;
12.所述将预设标准字典信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素的步骤,包括:
13.将所述标准字典字母信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素。
14.可选的,所述预设标准字典信息还包括标准字典音素信息;所述将所述标准字典字母信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素的步骤之前,所述方法还包括:
15.对所述标准音素中的音素进行编码,获得标准字典音素信息;
16.所述将所述标准字典字母信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素的步骤,包括:
17.将所述标准字典音素信息、所述标准字典字母信息和所述声学特征序列输入发音诊断模型,获得所述实际发音音素。
18.可选的,所述将所述标准字典音素信息、所述标准字典字母信息和所述声学特征序列输入发音诊断模型,获得所述实际发音音素的步骤,包括:
19.将所述声学特征序列输入发音诊断模型中的声学编码器,获得输出声学特征;
20.将所述标准字典音素信息输入所述发音诊断模型中的音素编码器,并利用所述音素编码器的输出创建音素键矩阵和音素值矩阵;
21.将所述标准字典字母信息输入所述发音诊断模型中的字母编码器,并利用所述字母编码器的输出创建字母键矩阵和字母值矩阵;
22.将所述输出声学特征、所述音素键矩阵、所述音素值矩阵、所述字母键矩阵和所述字母值矩阵输入发音诊断模型中的解码器,获得堆栈输出;
23.将所述解码器的堆栈输出输入所述发音诊断模型中的序列模型解码器,获得所述实际发音音素。
24.可选的,所述声学编码器包括的依次串联的多个声学编码单元,每个声学编码单元包括多头自注意力网络和前馈网络;所述将所述声学特征序列输入发音诊断模型中的声学编码器,获得输出声学特征的步骤,包括:
25.将所述多个声学编码单元中的第一个声学编码单元确定为当前声学编码单元;
26.将所述声学特征序列输入所述当前声学编码单元中的多头自注意力网络,获得中间声学特征;
27.将所述中间声学特征输入所述当前声学编码单元中的前馈网络,获得结果声学特征;
28.将所述多个声学编码单元中的下一个声学编码单元确定为新的当前声学编码单元,并利用所述新的当前声学编码单元更新所述当前声学编码单元,以及利用所述结果声学特征更新所述声学特征序列;
29.返回执行所述将所述声学特征序列输入所述当前声学编码单元中的多头自注意力网络的步骤,直到所述多个声学编码单元中最后一个声学编码单元的前馈网络运算完成,获得所述输出声学特征。
30.可选的,所述解码器包括依次串联的多个解码单元,每个解码单元包括掩码多头自注意力网络、多头注意力网络和前馈网络;所述将所述输出声学特征、所述音素键矩阵、所述音素值矩阵、所述字母键矩阵和所述字母值矩阵输入发音诊断模型中的解码器,获得堆栈输出的步骤,包括:
31.将所述多个解码单元中的第一个解码单元确定为当前解码单元;
32.将所述输出声学特征输入所述当前解码单元的掩码多头自注意力网络,并利用所述当前解码单元的掩码多头自注意力网络的输出创建查询矩阵;
33.将所述查询矩阵、所述音素键矩阵、所述音素值矩阵、所述字母键矩阵和所述字母值矩阵输入所述当前解码单元的多头注意力网络,获得中间输出;
34.将所述中间输出输入所述当前解码单元的前馈网络,获得结果输出;
35.将所述多个解码单元中的下一个解码单元确定为新的当前解码单元,并利用所述新的当前解码单元更新所述当前解码单元,以及利用所述结果输出更新所述输出声学特征;
36.返回执行所述将所述输出声学特征输入所述当前解码单元的掩码多头自注意力网络的步骤,直到所述多个解码单元中最后一个解码单元的前馈网络运算完成,获得所述解码器的堆栈输出。
37.可选的,所述将所述查询矩阵、所述音素键矩阵、所述音素值矩阵、所述字母键矩阵和所述字母值矩阵输入所述当前解码单元的多头注意力网络,获得中间输出的步骤,包括
38.将所述查询矩阵、所述音素键矩阵和所述音素值矩阵输入所述当前解码单元的多头注意力网络,获得第一子中间输出;
39.将所述查询矩阵、所述字母键矩阵和所述字母值矩阵输入所述当前解码单元的多头注意力网络,获得第二子中间输出;
40.将所述第一子中间输出和所述第二子中间输出进行拼接和线性变换,获得所述中间输出。
41.此外,为实现上述目的,本发明还提出了一种发音诊断装置,用于终端设备,所述装置包括:
42.接收模块,用于在接收到目标用户针对标准文本信息发送的目标语音信息时,将所述目标语音信息转换为声学特征序列;
43.诊断模块,用于将预设标准字典信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素;
44.获得模块,用于基于所述实际发音音素和所述标准文本信息对应的标准音素,获得所述目标语音信息的发音诊断结果。
45.此外,为实现上述目的,本发明还提出了一种终端设备,所述终端设备包括:存储器、处理器及存储在所述存储器上并在所述处理器上运行发音诊断程序,所述发音诊断程序被所述处理器执行时实现如上述任一项所述的发音诊断方法的步骤。
46.此外,为实现上述目的,本发明还提出了一种计算机可读存储介质,所述计算机可读存储介质上存储有发音诊断程序,所述发音诊断程序被处理器执行时实现如上述任一项所述的发音诊断方法的步骤。
47.本发明技术方案提出了一种发音诊断方法,用于终端设备,所述方法包括以下步骤:在接收到目标用户针对标准文本信息发送的目标语音信息时,将所述目标语音信息转换为声学特征序列;将预设标准字典信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素;基于所述实际发音音素和所述标准文本信息对应的
标准音素,获得所述目标语音信息的发音诊断结果。
48.现有的方案中,需要特定人员(例如教师)亲自对目标用户(例如学生)的发音手动进行检测,来获得发音诊断结果,导致发音诊断的时长较长,检测效率较低。而利用本发明的方法,终端设备直接将预设标准字典信息和目标语音信息对应的声学特征序列输入发音诊断模型,获得实际发音音素,然后基于实际发音音素和标准音素,获得发音诊断结果,并不需要需要特定人员亲自对目标用户的发音手动进行发音诊断,从而大大降低了发音诊断的时长,提高了发音诊断的效率。
附图说明
49.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
50.图1为本发明实施例方案涉及的硬件运行环境的终端设备结构示意图;
51.图2为本发明发音诊断方法第一实施例的流程示意图;
52.图3为本发明发音诊断模型的结构示意图;
53.图4为本发明发音诊断结果的示意图;
54.图5为本发明发音诊断装置第一实施例的结构框图。
55.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
56.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
57.参照图1,图1为本发明实施例方案涉及的硬件运行环境的终端设备结构示意图。
58.终端设备可以是移动电话、智能电话、笔记本电脑、数字广播接收器、个人数字助理(pda)、平板电脑(pad)等用户设备(user equipment,ue)、手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备、移动台(mobile station,ms)等。终端设备可能被称为用户终端、便携式终端、台式终端等。
59.通常,终端设备包括:至少一个处理器301、存储器302以及存储在所述存储器上并可在所述处理器上运行的发音诊断程序,所述发音诊断程序配置为实现如前所述的发音诊断方法的步骤。
60.处理器301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器301可以采用dsp(digital signal processing,数字信号处理)、fpga(field-programmable gate array,现场可编程门阵列)、pla(programmable logic array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(central processingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗
处理器。在一些实施例中,处理器301可以在集成有gpu(graphics processing unit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。处理器301还可以包括ai(artificial intelligence,人工智能)处理器,该ai处理器用于处理有关发音诊断方法操作,使得发音诊断方法模型可以自主训练学习,提高效率和准确度。
61.存储器302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器301所执行以实现本技术中方法实施例提供的发音诊断方法。
62.在一些实施例中,终端还可选包括有:通信接口303和至少一个外围设备。处理器301、存储器302和通信接口303之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与通信接口303相连。具体地,外围设备包括:射频电路304、显示屏305和电源306中的至少一种。
63.通信接口303可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器301和存储器302。在一些实施例中,处理器301、存储器302和通信接口303被集成在同一芯片或电路板上;在一些其他实施例中,处理器301、存储器302和通信接口303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
64.射频电路304用于接收和发射rf(radio frequency,射频)信号,也称电磁信号。射频电路304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路304包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wireless fidelity,无线保真)网络。在一些实施例中,射频电路304还可以包括nfc(near field communication,近距离无线通信)有关的电路,本技术对此不加以限定。
65.显示屏305用于显示ui(user interface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏305是触摸显示屏时,显示屏305还具有采集在显示屏305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器301进行处理。此时,显示屏305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏305可以为一个,电子设备的前面板;在另一些实施例中,显示屏305可以为至少两个,分别设置在电子设备的不同表面或呈折叠设计;在再一些实施例中,显示屏305可以是柔性显示屏,设置在电子设备的弯曲表面上或折叠面上。甚至,显示屏305还可以设置成非矩形的不规则图形,也即异形屏。显示屏305可以采用lcd(liquidcrystal display,液晶显示屏)、oled(organic light
‑
emitting diode,有机发光二极管)等材质制备。
66.电源306用于为电子设备中的各个组件进行供电。电源306可以是交流电、直流电、一次性电池或可充电电池。当电源306包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
67.本领域技术人员可以理解,图1中示出的结构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
68.此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有发音诊断程序,所述发音诊断程序被处理器执行时实现如上文所述的发音诊断方法的步骤。因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本技术所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本技术方法实施例的描述。确定为示例,程序指令可被部署为在一个终端设备上执行,或者在位于一个地点的多个终端设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个终端设备备上执行。
69.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的计算机可读存储介质可为磁碟、光盘、只读存储记忆体(read
‑
only memory,rom)或随机存储记忆体(random accessmemory,ram)等。
70.基于上述硬件结构,提出本发明发音诊断方法的实施例。
71.参照图2,图2为本发明发音诊断方法第一实施例的流程示意图,所述方法用于终端设备,所述方法包括以下步骤:
72.步骤s11:在接收到目标用户针对标准文本信息发送的目标语音信息时,将所述目标语音信息转换为声学特征序列。
73.需要说明的是,本发明的执行主体是终端设备,终端设备的结构参照上文描述,终端设备安装有发音诊断程序,终端设备执行发音诊断程序时,实现本发明发音诊断方法的步骤。
74.目标用户可以是任何需要进行发音诊断的用户,可以是学生、教师或者其他行业的工作人员,目标语音信息可以是目标用户说出的任何语言类的语音信息,目标语音信息为目标用户针对输出的标准文本信息发送的语音信息。
75.可以理解的是,目标语音信息的语种不同时,对应的发音诊断模型是不同的;同理,目标语音信息的语种不同时,下文所述发音诊断模型中的参数是不同的,但是,不同的发音诊断模型的内部结构可以是相同的,即,用于获得发音诊断模型的初始模型架构是相同的,只是利用不同语种的训练样本进行训练之后,获得的发音诊断模型的参数会有很大区别。
76.在本发明中,以目标语音信息为英文语音信息为例进行讲解,其他语种与英文语音信息的处理方式类似;通常目标语音信息为一个单词的发音信息或一个句子的发音信息。另外,将所述目标语音信息转换为声学特征序列时,可以是采用任何现有的方法进行转换,本发明不做限定,获得的声学特征序列可以表示为x=(x0,x1,
…
,x
t
,
…
x
t
)。
77.具体应用中,终端设备输出标准文本信息(可以是通过显示屏输出的一个句子或一个单词),目标用户针对输出的标准文本信息,通过终端设备的语音输入模块,向终端设备发送目标语音信息。另外,标准文本信息会对应有标准音素,标准音素是内置于终端设备中的数据信息。
78.步骤s12:将预设标准字典信息和所述声学特征序列输入发音诊断模型,获得所述
目标语音信息对应的实际发音音素。
79.需要说明的是,在本发明中预设标准字典信息可以包括标准字典字母信息和标准字典音素信息,即,输入发音诊断模型的数据包括3种不同的数据,将3种不同的数据输入发音诊断模型之后,即可获得最终的实际发音音素。
80.进一步的,所述将预设标准字典信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素的步骤之前,所述方法还包括:对所述标准文本信息中的字母进行编码,获得标准字典字母信息;相应的,所述将预设标准字典信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素的步骤,包括:将所述标准字典字母信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素。
81.通常为了检测目标用户的发音情况,目标用户会针对文本信息,发送所述目标语音信息,该文本信息即为所述标准文本信息。对所述标准文本信息中的各个字母进行编码,获得所述标准字典字母信息,一个标准字典字母信息为一个字典字母序列g
dict
。
82.例如,标准文本信息是“apple”,则目标用户针对该标准文本信息,发送目标语音信息:目标用户读出“apple”时的发音信息;此时,标准字典字母信息即是对“apple”中的5个字母分别进行编码。
83.进一步的,所述将所述标准字典字母信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素的步骤之前,所述方法还包括:对所述标准音素中的音素进行编码,获得标准字典音素信息;相应的,所述将所述标准字典字母信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素的步骤,包括:将所述标准字典音素、所述标准字典字母信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素。
84.标准文本信息也会在终端设备中预置一个标准音素,一个标准文本信息对应的标准音素,包括该标准文本信息中各个元素(例如一个单词的各个字母的音素)对应的因素,每个音素表示为一个d维向量(d为音素的数量)。例如,标准文本信息是“apple”,则“apple”对应的标准音素包括5个字母分别对应的音素。获得标准音素之后,即对所述标准音素中的各个音素进行编码,获得标准字典音素信息,一个标准字典音素信息为一个字典音素序列q
dict
。
85.对于音素编码和字母编码的过程可以通过一位有效编码(one
‑
hot encoding)的方式实现:利用一位有效编码的方式,构建第一编码器和第二编码器,第一编码器用于对字母进行编码,第二编码器用于对音素进行编码,以获得标准字典字母信息和标准字典音素信息。
86.进一步的,所述将所述标准字典音素信息、所述标准字典字母信息和所述声学特征序列输入发音诊断模型,获得所述实际发音音素的步骤,包括:将所述声学特征序列输入发音诊断模型中的声学编码器,获得输出声学特征;将所述标准字典音素信息输入所述发音诊断模型中的音素编码器,并利用所述音素编码器的输出创建音素键矩阵和音素值矩阵;将所述标准字典字母信息输入所述发音诊断模型中的字母编码器,并利用所述字母编码器的输出创建字母键矩阵和字母值矩阵;将所述输出声学特征、所述音素键矩阵、所述音素值矩阵、所述字母键矩阵和所述字母值矩阵输入发音诊断模型中的解码器,获得堆栈输
出;将所述解码器的堆栈输出输入所述发音诊断模型中的序列模型解码器,获得所述实际发音音素。
87.参照图3,图3为本发明发音诊断模型的结构示意图;发音诊断模型包括声学编码器、音素编码器、字母编码器、解码器和序列模型解码器。
88.其中,声学编码器、音素编码器、字母编码器和解码器均包括多个单元。声学编码器包括的每个声学编码单元均包括多头自注意力网络(多个自注意力网络)和前馈网络(简单的、按位置全连接的前馈网络);
89.音素编码器中的每个音素编码单元均包括多头自注意力网络(多个自注意力网络)和前馈网络(简单的、按位置全连接的前馈网络);
90.字母编码器中的每个字母编码单元均包括多头自注意力网络(多个自注意力网络)和前馈网络(简单的、按位置全连接的前馈网络);
91.解码器中的每个解码单元均包括掩码(masked)多头自注意力网络、多头注意力网络(跨越注意力层网络(cross
‑
attention layer)和前馈网络(简单的、按位置全连接的前馈网络);
92.序列模型解码器包括线型连接层(简单的全连接的神经网络)和softmax层。
93.对于声学编码器,可以包括6个声学编码单元,即,多个声学编码单元为6个,同理,对音素编码器、字母编码器和解码器,也可以分别包括6个单元。在发音诊断模型中,不同的部分用于处理不同的数据,各个部分相互协作,最终获得实际发音音素。
94.具体的,所述将所述声学特征序列输入发音诊断模型中的声学编码器,获得输出声学特征的步骤,包括:将所述多个声学编码单元中的第一个声学编码单元确定为当前声学编码单元;将所述声学特征序列输入所述当前声学编码单元中的多头自注意力网络,获得中间声学特征;将所述中间声学特征输入所述当前声学编码单元中的前馈网络,获得结果声学特征;将所述多个声学编码单元中的下一个声学编码单元确定为新的当前声学编码单元,并利用所述新的当前声学编码单元更新所述当前声学编码单元,以及利用所述结果声学特征更新所述声学特征序列;返回执行所述将所述声学特征序列输入所述当前声学编码单元中的多头自注意力网络的步骤,直到所述多个声学编码单元中最后一个声学编码单元的前馈网络运算完成,获得所述输出声学特征。
95.参照上文描述,声学特征序列x=(x0,x1,
…
,x
t
,
…
x
t
)输入声学编码器,由声学编码器中的每个声学编码单元对其进行运算,当最后一个声学编码单元的前馈网络运算完成时,获得的输出即为所述输出声学特征,然后继续利用声学输出特征进行后续运算。
96.同理,标准字典音素信息q
dict
输入音素编码器,由音素编码器中的每个音素码单元对其进行运算,当最后一个音素编码单元的前馈网络运算完成时,获得的输出用于创建所述音素键矩阵和音素值矩阵然后继续利用音素键矩阵和音素值矩阵进行后续运算。
97.同理,标准字典字母信息g
dict
输入字母编码器,由字母编码器中的每个字母码单元对其进行运算,当最后一个字母编码单元的前馈网络运算完成时,获得的输出用于创建所述字母键矩阵和字母值矩阵然后继续利用字母键矩阵和字母值矩阵进行后续运算。
98.具体的,所述解码器包括依次串联的多个解码单元,每个解码单元包括掩码多头自注意力网络、多头注意力网络和前馈网络;所述将所述输出声学特征、所述音素键矩阵、所述音素值矩阵、所述字母键矩阵和所述字母值矩阵输入发音诊断模型中的解码器,获得堆栈输出的步骤,包括:将所述多个解码单元中的第一个解码单元确定为当前解码单元;将所述输出声学特征输入所述当前解码单元的掩码多头自注意力网络,并利用所述当前解码单元的掩码多头自注意力网络的输出创建查询矩阵;将所述查询矩阵、所述音素键矩阵、所述音素值矩阵、所述字母键矩阵和所述字母值矩阵输入所述当前解码单元的多头注意力网络,获得中间输出;将所述中间输出输入所述当前解码单元的前馈网络,获得结果输出;将所述多个解码单元中的下一个解码单元确定为新的当前解码单元,并利用所述新的当前解码单元更新所述当前解码单元,以及利用所述结果输出更新所述输出声学特征;返回执行所述将所述输出声学特征输入所述当前解码单元的掩码多头自注意力网络的步骤,直到所述多个解码单元中最后一个解码单元的前馈网络运算完成,获得所述解码器的堆栈输出。
99.其中,所述将所述查询矩阵、所述音素键矩阵、所述音素值矩阵、所述字母键矩阵和所述字母值矩阵输入所述当前解码单元的多头注意力网络,获得中间输出的步骤,包括将所述查询矩阵、所述音素键矩阵和所述音素值矩阵输入所述当前解码单元的多头注意力网络,获得第一子中间输出;将所述查询矩阵、所述字母键矩阵和所述字母值矩阵输入所述当前解码单元的多头注意力网络,获得第二子中间输出;将所述第一子中间输出和所述第二子中间输出进行拼接和线性变换,获得所述中间输出。
100.需要说明的是,对于解码器中每个解码单元对应的多头注意力网络,多头注意力网络均包括多个注意力网络,多头注意力网络中的每个网络的运算方式表示为公式一:
[0101][0102]
head
i
=attention(q
i
,k
i
,v
i
)
[0103]
multihead(q,k,v)=concat(head1,head2,
…
,head
h
)w1[0104]
其中,q为所述查询矩阵,k为所述音素键矩阵,v为所述音素值矩阵,d
k
为所述键矩阵k中列向量的维度,h为多头注意力网络的网络数量,w1为一个线性变换函数,multihead(q,k,v)即为多头注意力网络的结果输出。
[0105]
在所述所述当前解码单元的多头注意力网络获得所述第一子中间输出和所述第二子中间输出之后,对所述第一子中间输出和所述第二子中间输出进行拼接和线性转换,获得所述中间输出,具体过程表述为公式二:
[0106][0107]
其中,fusedattention(q,k,v)为所述中间输出,为所述第一子中间输出,为所述第二子中间输出,w2为一个线性变换函数。
[0108]
在获得解码器堆栈输出后,将所述堆栈输出输入所述发音诊断模型中的序列模型解码器,获得所述实际发音音素:序列模型解码器中的线性连接层,将解码器堆栈产生的向量投影成一个维度为音素数量的向量,称为logits向量,然后,softmax层通过softmax函数
进行归一化运算将这些向量转换为概率,即向量每一维度的值为对应位置音素的概率,最后选择概率最大的维度,与该维度对应的音素即实际发音音素。
[0109]
对于此处的线性连接层,可以采用连接时序分类损失函数(ctc loss)对线性连接层进行训练,可以解决长输入对应到短输出损失函数不能计算的问题。
[0110]
步骤s13:基于所述实际发音音素和所述标准文本信息对应的标准音素,获得所述目标语音信息的发音诊断结果。
[0111]
获得实际发音音素,将实际发音因素与标准音素进行比对,即获得比对结果,比对结果中不同的部分为发音错误的音素,比对结果中相同的部分为发音正确的音素。
[0112]
在一些实施例中,还可以在获得发音诊断结果之后,将目标用户发音错误的音素标注出来,并输出正确发音和目标用户的错误发音。
[0113]
参照图4,图4为本发明发音诊断结果的示意图;目标语音信息为目标用户针对“how much does the apple cost”的标准文本信息发送的读音信息,检测结果中“does”被黑色实线框框起来,表明“does”发音错误,同时,还输出了“does”的正确发音和目标用户的错误发音。
[0114]
可以理解的是,在运行本发明的发音诊断模型时,当发音诊断模型的检测准确率在实际应用场景中下降时,可以获取该应用场景中新的训练样本:对模型的实际发音音素识别结果进行人工校正,将校正后的实际发音音素和对应的语音信息和标准文本,继续对发音诊断模型进行新的训练,以更新发音诊断模型。
[0115]
本发明技术方案提出了一种发音诊断方法,用于终端设备,所述方法包括以下步骤:在接收到目标用户针对标准文本信息发送的目标语音信息时,将所述目标语音信息转换为声学特征序列;将预设标准字典信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素;基于所述实际发音音素和所述标准文本信息对应的标准音素,获得所述目标语音信息的发音诊断结果。
[0116]
现有的方案中,需要特定人员(例如教师)亲自对目标用户(例如学生)的发音手动进行检测,来获得发音诊断结果,导致发音诊断的时长较长,检测效率较低。而利用本发明的方法,终端设备直接将预设标准字典信息和目标语音信息对应的声学特征序列输入发音诊断模型,获得实际发音音素,然后基于实际发音音素和标准音素,获得发音诊断结果,并不需要需要特定人员亲自对目标用户的发音手动进行发音诊断,从而大大降低了发音诊断的时长,提高了发音诊断的效率。
[0117]
在现有技术中,也公布一种方法,需要对目标用户的语音信息与字典信息运行两次强制对齐,使得运算资源比较大,实时率比较低;而在本发明中,我们不需要进行两次强制对齐,解决了现有技术中基于传统深度神经网络不能并行计算的问题,能大幅提高计算的实时率。
[0118]
另外,在本发明中,不再将字典发音和实际音频进行简单的强制对齐,而是基于神经网络的注意力机制,更弹性有效的理解字典音素发音,解决了长距离信息被弱化的问题,能大幅降低虚假接受率,从而提高准确度。同时,该模型的复杂度相比传统的深度学习模型,复杂度更小,参数也更少,对算力的要求也更小。
[0119]
参照图5,图5为本发明发音诊断装置第一实施例的结构框图,所述装置用于终端设备,基于与前述实施例相同的发明构思,所述装置包括:
[0120]
接收模块10,用于在接收到目标用户针对标准文本信息发送的目标语音信息时,将所述目标语音信息转换为声学特征序列;
[0121]
诊断模块20,用于将预设标准字典信息和所述声学特征序列输入发音诊断模型,获得所述目标语音信息对应的实际发音音素;
[0122]
获得模块30,用于基于所述实际发音音素和所述标准文本信息对应的标准音素,获得所述目标语音信息的发音诊断结果。
[0123]
需要说明的是,由于本实施例的装置所执行的步骤与前述方法实施例的步骤相同,其具体的实施方式以及可以达到的技术效果都可参照前述实施例,这里不再赘述。
[0124]
以上所述仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。