1.本技术涉及语音识别技术领域,特别是涉及一种语音识别方法、装置、计算机设备及存储介质。
背景技术:2.随着深度学习的发展,语音识别技术已经发展的很成熟,能够以高准确率语音。在语音识别的发展中,早期是通过一种基于hmm的参数技术识别语音,现在由于深度学习技术的发展,基于深度学习的语音识别技术逐渐被人们所知道。
3.但是目前基于深度学习的语音识别技术存在一个主要的问题,众所周知,现有的深度学习模型需要进行大量的样本数据训练,从而提高深度学习模型的特征提取网络的泛化能力,使其提取的特征信息同时满足测试集中未见过的新样本,而在样本数据较少的情况下,则会无法满足该训练要求,导致训练得到的模型的识别准确率大幅度下降,因此,现有的深度学习模型难以在样本数据较少的情况下高效准确的识别语音。
技术实现要素:4.本技术提供一种语音识别方法、装置、计算机设备及存储介质,以解决现有的语音识别模型在样本数据较少的情况下识别准确率低的问题。
5.为解决上述技术问题,本技术采用的一个技术方案是:提供一种语音识别方法,包括:利用预先训练好的特征提取网络从用户输入的待识别语音信息中提取第一特征信息;利用预先训练好的自注意力神经网络将第一特征信息转换为与识别任务相关的第二特征信息;计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度,每个支撑集对应一种语音类型;确认相似度最高的支撑特征信息指向的支撑集对应的目标语音类型;根据目标语音类型的音素识别规则识别待识别语音信息的音素,并根据音素生成文本。
6.作为本技术的进一步改进,还包括:预先训练特征提取网络和自注意力神经网络,包括:利用特征提取网络提取支撑集中的语音信息的第一支撑特征信息,并通过自注意力神经网络将第一支撑特征信息转换为与识别任务相关的第二支撑特征信息,每个支撑集对应一个语音类型,且支撑集中包括语音类型相同的多个语音信息;利用特征提取网络提取样本语音信息的第一样本特征信息,并通过自注意力神经网络将第一样本特征信息转换为与识别任务相关的第二样本特征信息;计算第二样本特征信息与每个第二支撑特征信息的相似度;确认相似度最高的第二支撑特征信息指向的支撑集对应的预测语音类型;根据预测语音类型和样本语音信息所属的实际语音类型反向更新特征提取网络和自注意力神经网络。
7.作为本技术的进一步改进,利用特征提取网络提取支撑集中的语音信息的第一支撑特征信息之前,还包括:根据支撑集中的语音信息对应的文本信息对支撑集中的语音信息的音素进行强制对齐。
8.作为本技术的进一步改进,根据预测语音类型和样本语音信息所属的实际语音类
型反向更新特征提取网络和自注意力神经网络之后,还包括:当特征提取网络和自注意力神经网络训练完成后,对训练好的自注意力神经网络转换得到的所有第二支撑特征信息进行聚类处理,得到多个聚类簇;计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度,包括:计算第二特征信息与每个聚类簇的相似度,以确认相似度最高的目标聚类簇;计算第二特征信息与目标聚类簇中的每个第二支撑特征信息的相似度。
9.作为本技术的进一步改进,利用特征提取网络提取支撑集中的语音信息的第一支撑特征信息,并通过自注意力神经网络将第一支撑特征信息转换为与识别任务相关的第二支撑特征信息,包括:利用特征提取网络提取支撑集中每个语音信息的支撑特征信息,以得到多个第一支撑特征信息;利用自注意力神经网络将每个第一支撑特征信息转换为与识别任务相关的第二支撑特征信息,以得到多个第二支撑特征信息;计算多个第二支撑特征信息的平均值,并将平均值作为支撑集的第二支撑特征信息。
10.作为本技术的进一步改进,特征提取网络包括cnn网络或resnet网络中的一种。
11.作为本技术的进一步改进,计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度,包括:分别获取第二特征信息的第一特征向量表示、支撑特征信息的第二特征向量表示;计算第一特征向量表示与第二特征向量表示之间的余弦相似度。
12.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种语音识别装置,包括:特征提取模块,用于利用预先训练好的特征提取网络从用户输入的待识别语音信息中提取第一特征信息;特征转换模块,用于利用预先训练好的自注意力神经网络将第一特征信息转换为与识别任务相关的第二特征信息;相似度计算模块,用于计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度,每个支撑集对应一种语音类型;确认模块,用于确认相似度最高的支撑特征信息指向的支撑集对应的目标语音类型;识别模块,用于根据目标语音类型的音素识别规则识别待识别语音信息的音素,并根据音素生成文本。
13.为解决上述技术问题,本技术采用的再一个技术方案是:提供一种计算机设备,计算机设备包括处理器、与处理器耦接的存储器,存储器中存储有程序指令,程序指令被处理器执行时,使得处理器执行如上述中任一项语音识别方法的步骤。
14.为解决上述技术问题,本技术采用的再一个技术方案是:提供一种存储介质,存储介质存储有能够实现上述中任一项的语音识别方法的程序指令。
15.本技术的有益效果是:本发明的语音识别方法通过将特征提取网络提取的与识别任务无关的第一特征信息转换为与识别任务有关的第二特征信息,再基于该与识别任务有关的第二特征信息实现对待识别语音信息的识别,其有效地避免了与识别任务无关的第一特征信息对最终识别结果的影响,同时通过将与识别任务无关的第一特征信息转换为与识别任务有关的第二特征信息,实现了对提取到的特征的约束,使得对训练过程中未遇到过的数据也具备较好的适应能力,而且,其对样本数据的需求量大大降低,在样本数据量较少的情况下也能保证较高的识别准确率。
附图说明
16.图1是本发明实施例的语音识别方法的流程示意图;
17.图2是本发明实施例的语音识别装置的功能模块示意图;
18.图3是本发明实施例的计算机设备的结构示意图;
19.图4是本发明实施例的存储介质的结构示意图。
具体实施方式
20.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
21.本技术中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。本技术实施例中所有方向性指示(诸如上、下、左、右、前、后
……
)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
22.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
23.图1是本发明实施例的语音识别方法的流程示意图。需注意的是,若有实质上相同的结果,本发明的方法并不以图1所示的流程顺序为限。如图1所示,该语音识别方法包括步骤:
24.步骤s101:利用预先训练好的特征提取网络从用户输入的待识别语音信息中提取第一特征信息。
25.需要说明的是,该特征提取网络包括cnn网络或resnet网络中的一种。
26.在步骤s101中,在接收到用户输入的待识别语音信息后,利用训练好的特征提取网络从该待识别语音信息中提取第一特征信息,该第一特征信息包括与识别任务有关的特征,也包括与识别任务无关的特征。
27.步骤s102:利用预先训练好的自注意力神经网络将第一特征信息转换为与识别任务相关的第二特征信息。
28.在步骤s102中,在特征提取网络提取到第一特征信息后,将该第一特征信息输入值训练好的自注意力神经网络中,通过自注意力神经网络将该第一特征信息转换为与识别任务相关的第二特征信息。该自注意力神经网络采用自注意力机制构建。
29.需要说明的是,该特征提取网络和自注意力神经网络预先训练得到,训练特征提取网络和自注意力神经网络的步骤包括:
30.1、利用特征提取网络提取支撑集中的语音信息的第一支撑特征信息,并通过自注意力神经网络将第一支撑特征信息转换为与识别任务相关的第二支撑特征信息,每个支撑
集对应一个语音类型,且支撑集中包括语音类型相同的多个语音信息。
31.具体地,语音类型包括普通话、广东话、四川话、湖南话等各种类型的语音,每个支撑集对应一个语音类型,例如,第一个支撑集对应的语音类型是广东话,第二个支撑集对应的语音类型是四川话,而广东话对应的支撑集中的语音信息均是广东话语音信息,四川话对应的撑集中的语音信息均是四川话语音信息。需要理解的是,每个支撑集预先构建。
32.进一步的,为了保证提取得到的每个支撑集支撑特征信息准确,本实施例中,该利用特征提取网络提取支撑集中的语音信息的第一支撑特征信息,并通过自注意力神经网络将第一支撑特征信息转换为与识别任务相关的第二支撑特征信息的步骤,具体包括:
33.1.1、利用特征提取网络提取支撑集中每个语音信息的支撑特征信息,以得到多个第一支撑特征信息。
34.1.2、利用自注意力神经网络将每个第一支撑特征信息转换为与识别任务相关的第二支撑特征信息,以得到多个第二支撑特征信息。
35.1.3、计算多个第二支撑特征信息的平均值,并将平均值作为支撑集的第二支撑特征信息。
36.具体地,为了保证提取得到的支撑集的支撑特征信息准确,每个支撑集中均包括有多个语音信息,因此,在提取特征时,通过特征提取网络分别提取该支撑集中每个语音信息的支撑特征信息,从而得到多个第一支撑特征信息,再将该多个第一支撑特征信息分别输入至自注意力神经网络,由自注意力神经网络进行转换得到多个第二支撑特征信息,再将该多个第二支撑特征信息转换为相应的向量表示后进行平均值计算,将计算得到的平均值作为该支撑集最终的第二支撑特征信息,其利用多个属于同一语音类型的语音信息进行平均值计算的方式使得最终得到的第二支撑特征信息更加具有代表性,更能够表示该语音类型的特征。
37.进一步的,为了进一步提高特征提取网络提取的特征的准确性,在利用特征提取网络提取支撑集中的语音信息的第一支撑特征信息之前,还包括:根据支撑集中的语音信息对应的文本信息对支撑集中的语音信息的音素进行强制对齐。
38.本实施例中,利用mfa(montreal
‑
forced
‑
aligner)实现音素的强制对齐。具体地,支撑集中的语音信息是预设准备好的以供参考的语音信息,其对应的文本信息可预先获知,因此,在利用特征提取网络提取特征信息之前,先利用mfa结合支撑集中语音信息对应的文本信息对支撑集中语音信息的音素进行强制对齐,预测音素的长度,根据预测的音素的长度对齐音素和相应的文本。其通过强制对齐支撑集中语音信息的音素,使得特征提取网络提取的特征准确性更高。
39.2、利用特征提取网络提取样本语音信息的第一样本特征信息,并通过自注意力神经网络将第一样本特征信息转换为与识别任务相关的第二样本特征信息。
40.本实施例中,在训练特征提取网络和自注意力神经网络之前,还需要预先构建一个查询集,该查询集中包括多个语音类型不同的语音信息,将该查询集作为训练样本以对特征提取网络和自注意力神经网络进行训练。具体地,在获取到查询集中的样本语音信息后,同样利用特征提取网络提取该样本语音信息的第一样本特征信息,再利用自注意力神经网络将该第一样本特征信息转换为与识别任务相关的第二样本特征信息。
41.3、计算第二样本特征信息与每个第二支撑特征信息的相似度。
42.具体地,在获取到样本语音信息的第二样本特征信息后,计算该第二样本特征信息与每个第二支撑特征信息的相似度。
43.4、确认相似度最高的第二支撑特征信息指向的支撑集对应的预测语音类型。
44.具体地,在计算完相似度后,从中选取一个相似度最高的第二支撑特征信息,确认该第二支撑特征信息对应的支撑集,再确认该支撑集对应的语音类型,将该语音类型作为本次识别的预测语音类型。
45.5、根据预测语音类型和样本语音信息所属的实际语音类型反向更新特征提取网络和自注意力神经网络。
46.具体地,获取该样本语音信息的实际语音类型,将该实际语音类型与预测语音类型进行比较判断,并根据比较的结果反向传播更新特征提取网络和自注意力神经网络,实现对特征提取网络和自注意力神经网络的训练。
47.步骤s103:计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度,每个支撑集对应一种语音类型。
48.进一步的,在训练特征提取网络和自注意力神经网络时,根据预测语音类型和样本语音信息所属的实际语音类型反向更新特征提取网络和自注意力神经网络之后,还包括:
49.当特征提取网络和自注意力神经网络训练完成后,对训练好的自注意力神经网络转换得到的所有第二支撑特征信息进行聚类处理,得到多个聚类簇。
50.具体地,在特征提取网络和自注意力神经网络训练完成后,利用特征提取网络提取每个支撑集的第一支撑特征信息,再由自注意力神经网络将第一支撑特征信息转换为第二支撑特征信息,得到每个支撑集对应的第二支撑特征信息,再对所有的第二支撑特征信息进行聚类处理,从而将多个第二支撑特征信息聚类为多个聚类簇,每个聚类簇表示特征信息比较接近的支撑集。
51.步骤s103计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度的步骤,具体包括:计算第二特征信息与每个聚类簇的相似度,以确认相似度最高的目标聚类簇;计算第二特征信息与目标聚类簇中的每个第二支撑特征信息的相似度。
52.具体地,当计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度时,首先计算第二特征信息与每个聚类簇的相似度,选取出于该第二特征信息最相似的目标聚类簇,再将第二特征信息与目标聚类簇中的每个支撑集的第二支撑特征信息进行相似度计算,以确认最相似的第二支撑特征信息。
53.本实施例中,其通过对第二支撑特征信息进行聚类,在后续计算相似度时,只需要计算第二特征信息与聚类簇的相似度,以及计算第二特征信息与最相似聚类簇中每个第二支撑特征信息的相似度,而不需要计算与所有的第二支撑特征信息进行相似度计算,大大降低了数据处理量。
54.进一步的,在一些实施例中,步骤是103中计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度的步骤,具体包括:分别获取第二特征信息的第一特征向量表示、支撑特征信息的第二特征向量表示;计算第一特征向量表示与第二特征向量表示之间的余弦相似度。
55.进一步的,在一些实施例中,该第二特征信息与支撑特征信息之间的相似度还可
通过欧氏距离、马氏距离、曼哈顿距离、闵可夫斯基距离、汉明距离、杰卡德相关系数、切比雪夫距离、皮尔逊相关系数来表示。
56.步骤s104:确认相似度最高的支撑特征信息指向的支撑集对应的目标语音类型。
57.在步骤s104中,当筛选出相似度最高的支撑特征信息后,确认该相似度最高的支撑特征信息对应的支撑集所属的目标语音类型。
58.步骤s105:根据目标语音类型的音素识别规则识别待识别语音信息的音素,并根据音素生成文本。
59.在步骤s105中,需要说明的是,每个语音类型的音素识别规则预先设定,在确认待识别语音信息对应的目标语音类型后,根据该目标语音类型对应的音素识别规则识别该待识别语音信息的音素,再根据音素生成文本,完成对该待识别语音信息的识别。
60.本发明实施例的语音识别方法通过将特征提取网络提取的与识别任务无关的第一特征信息转换为与识别任务有关的第二特征信息,再基于该与识别任务有关的第二特征信息实现对待识别语音信息的识别,其有效地避免了与识别任务无关的第一特征信息对最终识别结果的影响,同时通过将与识别任务无关的第一特征信息转换为与识别任务有关的第二特征信息,实现了对提取到的特征的约束,使得对训练过程中未遇到过的数据也具备较好的适应能力,而且,其对样本数据的需求量大大降低,在样本数据量较少的情况下也能保证较高的识别准确率。
61.图2是本发明实施例的语音识别装置的功能模块示意图。如图2所示,该语音识别装置20包括特征提取模块21、特征转换模块22、相似度计算模块23、确认模块24和识别模块25。
62.特征提取模块21,用于利用预先训练好的特征提取网络从用户输入的待识别语音信息中提取第一特征信息;
63.特征转换模块22,用于利用预先训练好的自注意力神经网络将第一特征信息转换为与识别任务相关的第二特征信息;
64.相似度计算模块23,用于计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度,每个支撑集对应一种语音类型;
65.确认模块24,用于确认相似度最高的支撑特征信息指向的支撑集对应的目标语音类型;
66.识别模块25,用于根据目标语音类型的音素识别规则识别待识别语音信息的音素,并根据音素生成文本。
67.优选地,该语音识别装置20还包括训练模块,用于预先训练特征提取网络和自注意力神经网络;该训练模块执行训练特征提取网络和自注意力神经网络的操作具体包括:利用特征提取网络提取支撑集中的语音信息的第一支撑特征信息,并通过自注意力神经网络将第一支撑特征信息转换为与识别任务相关的第二支撑特征信息,每个支撑集对应一个语音类型,且支撑集中包括语音类型相同的多个语音信息;利用特征提取网络提取样本语音信息的第一样本特征信息,并通过自注意力神经网络将第一样本特征信息转换为与识别任务相关的第二样本特征信息;计算第二样本特征信息与每个第二支撑特征信息的相似度;确认相似度最高的第二支撑特征信息指向的支撑集对应的预测语音类型;根据预测语音类型和样本语音信息所属的实际语音类型反向更新特征提取网络和自注意力神经网络。
68.优选地,训练模块执行利用特征提取网络提取支撑集中的语音信息的第一支撑特征信息的操作之前,还用于:根据支撑集中的语音信息对应的文本信息对支撑集中的语音信息的音素进行强制对齐。
69.优选地,训练模块执行根据预测语音类型和样本语音信息所属的实际语音类型反向更新特征提取网络和自注意力神经网络的操作之后,还用于:当特征提取网络和自注意力神经网络训练完成后,对训练好的自注意力神经网络转换得到的所有第二支撑特征信息进行聚类处理,得到多个聚类簇。
70.相似度计算模块23执行计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度的操作还可以为:计算第二特征信息与每个聚类簇的相似度,以确认相似度最高的目标聚类簇;计算第二特征信息与目标聚类簇中的每个第二支撑特征信息的相似度。
71.优选地,训练模块执行利用特征提取网络提取支撑集中的语音信息的第一支撑特征信息,并通过自注意力神经网络将第一支撑特征信息转换为与识别任务相关的第二支撑特征信息的操作还可以为:利用特征提取网络提取支撑集中每个语音信息的支撑特征信息,以得到多个第一支撑特征信息;利用自注意力神经网络将每个第一支撑特征信息转换为与识别任务相关的第二支撑特征信息,以得到多个第二支撑特征信息;计算多个第二支撑特征信息的平均值,并将平均值作为支撑集的第二支撑特征信息。
72.优选地,特征提取网络包括cnn网络或resnet网络中的一种。
73.优选地,相似度计算模块23执行计算第二特征信息与预设的每个支撑集中支撑特征信息的相似度的操作还可以为:分别获取第二特征信息的第一特征向量表示、支撑特征信息的第二特征向量表示;计算第一特征向量表示与第二特征向量表示之间的余弦相似度。
74.关于上述实施例语音识别装置中各模块实现技术方案的其他细节,可参见上述实施例中的语音识别方法中的描述,此处不再赘述。
75.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
76.请参阅图3,图3为本发明实施例的计算机设备的结构示意图。如图3所示,该计算机设备30包括处理器31及和处理器31耦接的存储器32,存储器32中存储有程序指令,程序指令被处理器31执行时,使得处理器31执行上述任一实施例所述的语音识别方法的步骤。
77.其中,处理器31还可以称为cpu(central processing unit,中央处理单元)。处理器31可能是一种集成电路芯片,具有信号的处理能力。处理器31还可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
78.参阅图4,图4为本发明实施例的存储介质的结构示意图。本发明实施例的存储介质存储有能够实现上述任一实施例所述的语音识别方法的程序指令41,其中,该程序指令41可以以软件产品的形式存储在上述存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施
方式所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read
‑
only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等计算机设备设备。
79.在本技术所提供的几个实施例中,应该理解到,所揭露的计算机设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
80.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。