基于人工智能的语种检测方法、装置及电子设备转让专利

申请号 : CN202110210063.X

文献号 : CN112989108B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 林炳怀王丽园

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本申请提供了一种基于人工智能的语种检测方法、装置、电子设备及计算机可读存储介质;方法包括:获取特定场景中多个音频样本的音频特征;基于所述多个音频样本的音频特征,对语种检测模型进行多个任务的联合训练;其中,所述多个任务包括针对所述音频样本进行语种分类处理的第一任务、以及用于辅助训练所述语种检测模型的第二任务;通过经过联合训练的语种检测模型,对从所述特定场景采集的音频信号进行语种分类处理,得到所述音频信号的语种分类结果。通过本申请,能够提高语种检测准确度。

权利要求 :

1.一种基于人工智能的语种检测方法,其特征在于,所述方法包括:

获取特定场景中多个音频样本的音频特征;

通过语种检测模型对每个所述音频样本的音频特征进行干扰处理,得到每个所述音频样本对应的干扰特征,其中,所述语种检测模型包括共享特征网络以及对应第一任务的全连接层,所述第一任务用于针对所述音频样本进行语种分类处理;

通过所述共享特征网络对每个所述音频样本的音频特征进行共享处理,得到所述音频特征对应的共享处理结果;

通过对应所述第一任务的全连接层,对所述音频特征对应的共享处理结果进行概率映射处理,得到所述音频特征对应语种预标记类别的第三预测概率,以作为对应所述音频特征的第三正向传播结果;

通过所述共享特征网络对每个所述音频样本的干扰特征进行共享处理,得到所述干扰特征对应的共享处理结果;

通过对应所述第一任务的全连接层,对所述干扰特征对应的共享处理结果进行概率映射处理,得到所述干扰特征对应语种预标记类别的第四预测概率,以作为对应所述干扰特征的第三正向传播结果;

将每个所述音频样本的音频特征以及干扰特征,在所述共享特征网络以及对应第二任务的全连接层中进行正向传播,得到第四正向传播结果,其中,所述第二任务用于辅助训练所述语种检测模型;

基于所述第三正向传播结果和所述第四正向传播结果,更新所述共享特征网络、对应所述第一任务的全连接层、以及对应所述第二任务的全连接层的参数;

通过经过联合训练的所述语种检测模型,对从所述特定场景采集的音频信号进行语种分类处理,得到所述音频信号的语种分类结果。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

基于每个所述音频样本执行以下处理:

将所述音频样本的音频特征,在所述共享特征网络以及对应所述第一任务的全连接层中进行正向传播,得到第一正向传播结果;

将所述音频样本的音频特征,在所述共享特征网络以及对应所述第二任务的全连接层中进行正向传播,得到第二正向传播结果;

将所述第一正向传播结果以及所述第二正向传播结果代入对应多个任务的损失函数,以根据对应所述多个任务的损失函数更新所述共享特征网络、对应所述第一任务的全连接层、以及对应所述第二任务的全连接层的参数,其中,所述多个任务的损失函数包括对应所述第一任务的损失以及对应所述第二任务的损失。

3.根据权利要求1所述的方法,其特征在于,所述通过所述语种检测模型对每个所述音频样本的音频特征进行干扰处理,得到每个所述音频样本对应的干扰特征,包括:针对每个所述音频样本执行以下处理:

通过所述语种检测模型,对所述音频样本进行基于所述音频特征的语种分类处理,得到所述音频样本属于语种预标记类型的第一预测概率;

将所述第一预测概率与所述语种预标记类型代入所述语种检测模型的损失函数,并确定所述语种检测模型的损失函数对应所述音频特征的梯度;

将所述梯度与干扰参数进行相乘处理,并将相乘处理结果与所述音频特征进行相加处理,将相加处理结果作为对应所述音频样本的干扰特征。

4.根据权利要求1所述的方法,其特征在于,所述通过所述语种检测模型对每个所述音频样本的音频特征进行干扰处理,得到每个所述音频样本对应的干扰特征,包括:针对每个所述音频样本执行以下处理:

通过所述语种检测模型对所述音频样本的音频特征进行多次干扰处理,得到每个所述音频样本与所述多次干扰处理一一对应的多个候选干扰特征;

基于每个所述候选干扰特征,调用所述语种检测模型对所述音频样本进行语种分类处理,得到所述音频样本属于语种预标记类型的多个第二预测概率;

将每个所述第二预测概率与所述语种预标记类型代入所述语种检测模型的损失函数,并在每个所述音频样本对应的多个候选干扰特征中,确定所述语种检测模型的损失函数取得最大值时对应的候选干扰特征,以作为对应所述音频样本的干扰特征。

5.根据权利要求1所述的方法,其特征在于,所述基于所述第三正向传播结果和所述第四正向传播结果,更新所述共享特征网络、对应所述第一任务的全连接层、以及对应所述第二任务的全连接层的参数,包括:将所述第三正向传播结果以及所述第四正向传播结果代入对应多个任务的损失函数,以根据对应所述多个任务的损失函数更新所述共享特征网络、对应所述第一任务的全连接层、以及对应所述第二任务的全连接层的参数,其中,所述多个任务的损失函数包括对应所述第一任务的损失以及对应所述第二任务的损失。

6.根据权利要求1所述的方法,其特征在于,所述将每个所述音频样本的音频特征以及干扰特征,在所述共享特征网络以及对应所述第二任务的全连接层中进行正向传播,得到第四正向传播结果,包括:基于每个所述音频样本执行以下处理:

通过所述共享特征网络对所述音频样本的音频特征进行共享处理,得到所述音频特征对应的共享处理结果;

通过对应所述第二任务的全连接层,对所述音频特征对应的共享处理结果进行概率映射处理,得到所述音频特征对应第二任务预标记类别的第五预测概率,以作为对应所述音频特征的第四正向传播结果;

通过所述共享特征网络对所述音频样本的干扰特征进行共享处理,得到所述干扰特征对应的共享处理结果;

通过对应所述第二任务的全连接层对所述干扰特征对应的共享处理结果进行概率映射处理,得到所述干扰特征对应预测的第二任务预标记类别的第六预测概率,以作为对应所述音频特征的第四正向传播结果。

7.根据权利要求1所述的方法,其特征在于,在通过语种检测模型对每个所述音频样本的音频特征进行干扰处理之前,所述方法还包括:获取与多个级别的语音应用场景一一对应的多个音频样本集合;

按照所述多个音频样本集合所对应的语音应用场景的级别的降序,从所述多个音频样本集合中依次选取训练样本集合,以对所述语种检测模型进行预训练;

其中,在任意两个级别的语音应用场景中,低级别的语音应用场景的训练样本集合是高级别的语音应用场景的训练样本集合的子集。

8.根据权利要求1所述的方法,其特征在于,

所述多个音频样本的类型包括原始音频样本和增强音频样本;

在获取特定场景中多个音频样本的音频特征之前,所述方法还包括:

对所述原始音频样本进行以下方式的数据增强处理,以获得与所述原始音频样本对应的增强音频样本:对所述原始音频样本进行包括声学特性变换和/或混音的多样性变换处理,得到变换音频样本;

对所述变换音频样本的格式和/或采样率进行转换处理,得到与所述原始音频样本对应的增强音频样本。

9.根据权利要求1所述的方法,其特征在于,所述通过经过联合训练的所述语种检测模型,对从所述特定场景采集的音频信号进行语种分类处理,得到所述音频信号的语种分类结果,包括:对所述音频信号进行划分处理,得到对应所述音频信号的多个音频片段;

获取每个所述音频片段的音频特征,基于每个所述音频片段的音频特征调用所述语种检测模型,得到每个所述音频片段的语种分类结果;

获取每个语种分类结果对应的音频片段的数目,以将最大数目对应的语种分类结果确定为所述音频信号的语种分类结果。

10.根据权利要求9所述的方法,其特征在于,所述基于每个所述音频片段的音频特征调用所述语种检测模型,得到每个所述音频片段的语种分类结果,包括:通过所述共享特征网络对所述特定场景的音频片段进行共享处理,得到所述音频片段的共享处理结果;

其中,所述共享处理包括:卷积处理、池化处理、全连接处理;

通过对应所述第一任务的全连接层对所述音频片段进行全连接处理,得到对应所述音频片段的全连接处理结果;

通过对应所述第一任务的全连接层对所述音频片段的全连接处理结果进行最大似然处理,得到对应每个语种分类标签的概率;

将概率最大的语种分类标签确定为所述音频片段的语种分类结果。

11.一种基于人工智能的语种检测装置,其特征在于,包括:

获取模块,用于获取特定场景中多个音频样本的音频特征;

训练模块,用于通过语种检测模型对每个所述音频样本的音频特征进行干扰处理,得到每个所述音频样本对应的干扰特征,其中,所述语种检测模型包括共享特征网络以及对应第一任务的全连接层,所述第一任务用于针对所述音频样本进行语种分类处理;通过所述共享特征网络对每个所述音频样本的音频特征进行共享处理,得到所述音频特征对应的共享处理结果;通过对应所述第一任务的全连接层,对所述音频特征对应的共享处理结果进行概率映射处理,得到所述音频特征对应语种预标记类别的第三预测概率,以作为对应所述音频特征的第三正向传播结果;通过所述共享特征网络对每个所述音频样本的干扰特征进行共享处理,得到所述干扰特征对应的共享处理结果;通过对应所述第一任务的全连接层,对所述干扰特征对应的共享处理结果进行概率映射处理,得到所述干扰特征对应语种预标记类别的第四预测概率,以作为对应所述干扰特征的第三正向传播结果;将每个所述音频样本的音频特征以及干扰特征,在所述共享特征网络以及对应第二任务的全连接层中进行正向传播,得到第四正向传播结果,其中,所述第二任务用于辅助训练所述语种检测模型;基于所述第三正向传播结果和所述第四正向传播结果,更新所述共享特征网络、对应所述第一任务的全连接层、以及对应所述第二任务的全连接层的参数;

分类模块,用于通过经过联合训练的所述语种检测模型,对从所述特定场景采集的音频信号进行语种分类处理,得到所述音频信号的语种分类结果。

12.一种电子设备,其特征在于,包括:

存储器,用于存储可执行指令;

处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至10任一项所述的基于人工智能的语种检测方法。

13.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至10任一项所述的基于人工智能的语种检测方法。

说明书 :

基于人工智能的语种检测方法、装置及电子设备

技术领域

[0001] 本申请涉及人工智能技术和区块链技术,尤其涉及一种基于人工智能的语种检测方法、装置、电子设备及计算机可读存储介质。

背景技术

[0002] 人工智能(AI,Artificial Intelligence)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法和技术及应用系统。
[0003] 越来越多的人工智能产品具备语音交互的功能,语音交互可以应用于各种语音评分系统,例如,百科问答系统,语言教育应用的语言测试系统,口语考试系统,智能助手控制系统,内嵌在客户端的语音输入系统,内嵌在客户端的语音控制系统等等,在语音交互功能的使用过程中容易出现语种异常语音信号,影响语音交互的准确性。

发明内容

[0004] 本申请实施例提供一种基于人工智能的语种检测方法、装置、电子设备及计算机可读存储介质,能够提高语种检测准确度。
[0005] 本申请实施例的技术方案是这样实现的:
[0006] 本申请实施例提供一种基于人工智能的语种检测方法,包括:
[0007] 获取特定场景中多个音频样本的音频特征;
[0008] 基于所述多个音频样本的音频特征,对语种检测模型进行多个任务的联合训练;
[0009] 其中,所述多个任务包括针对所述音频样本进行语种分类处理的第一任务、以及用于辅助训练所述语种检测模型的第二任务;
[0010] 通过经过联合训练的语种检测模型,对从所述特定场景采集的音频信号进行语种分类处理,得到所述音频信号的语种分类结果。
[0011] 本申请实施例提供一种基于人工智能的语种检测装置,包括:
[0012] 获取模块,用于获取特定场景中多个音频样本的音频特征;
[0013] 训练模块,用于基于所述多个音频样本的音频特征,对语种检测模型进行多个任务的联合训练;
[0014] 其中,所述多个任务包括针对所述音频样本进行语种分类处理的第一任务、以及用于辅助训练所述语种检测模型的第二任务;
[0015] 分类模块,用于通过经过联合训练的语种检测模型,对从所述特定场景采集的音频信号进行语种分类处理,得到所述音频信号的语种分类结果。
[0016] 在上述方案中,所述语种检测模型包括共享特征网络以及对应所述第一任务的全连接层;所述训练模块,还用于:基于每个所述音频样本执行以下处理:将所述音频样本的音频特征,在所述共享特征网络以及对应所述第一任务的全连接层中进行正向传播,得到第一正向传播结果;将所述音频样本的音频特征,在所述共享特征网络以及对应所述第二任务的全连接层中进行正向传播,得到第二正向传播结果;将所述第一正向传播结果以及所述第二正向传播结果代入对应所述多个任务的损失函数,以根据对应所述多个任务的损失函数更新所述共享特征网络、对应所述第一任务的全连接层、以及对应所述第二任务的全连接层的参数。
[0017] 在上述方案中,所述获取特定场景中多个音频样本的音频特征之后,所述获取模块,还用于:通过所述语种检测模型对每个所述音频样本的音频特征进行干扰处理,得到每个所述音频样本对应的干扰特征;所述训练模块,还用于:基于所述多个音频样本的干扰特征以及音频特征,对所述语种检测模型进行多个任务的联合训练。
[0018] 在上述方案中,所述获取模块,还用于:针对每个所述音频样本执行以下处理:通过所述语种检测模型,对所述音频样本进行基于所述音频特征的语种分类处理,得到所述音频样本属于语种预标记类型的第一预测概率;将所述第一预测概率与所述语种预标记类型代入所述语种检测模型的损失函数,并确定所述语种检测模型的损失函数对应所述音频特征的梯度;将所述梯度与干扰参数进行相乘处理,并将相乘处理结果与所述音频特征进行相加处理,将相加处理结果作为对应所述音频样本的干扰特征。
[0019] 在上述方案中,所述获取模块,还用于:针对每个所述音频样本执行以下处理:通过所述语种检测模型对所述音频样本的音频特征进行多次干扰处理,得到每个所述音频样本与所述多次干扰处理一一对应的多个候选干扰特征;基于每个所述候选干扰特征,调用所述语种检测模型对所述音频样本进行语种分类处理,得到所述音频样本属于预标记类型的多个第二预测概率;将每个所述第二预测概率与所述语种预标记类型代入所述语种检测模型的损失函数,并在每个所述音频样本对应的多个候选干扰特征中,确定所述语种检测模型的损失函数取得最大值时对应的候选干扰特征,以作为对应所述音频样本的干扰特征。
[0020] 在上述方案中,所述语种检测模型包括共享特征网络以及对应所述第一任务的全连接层;所述训练模块,还用于:基于每个所述音频样本执行以下处理:将所述音频样本的音频特征以及干扰特征,在所述共享特征网络以及对应所述第一任务的全连接层中进行正向传播,得到第三正向传播结果;将所述音频样本的音频特征以及干扰特征,在所述共享特征网络以及对应所述第二任务的全连接层中进行正向传播,得到第四正向传播结果;将所述第三正向传播结果以及所述第四正向传播结果代入对应所述多个任务的损失函数,以根据对应所述多个任务的损失函数更新所述共享特征网络、对应所述第一任务的全连接层、以及对应所述第二任务的全连接层的参数。
[0021] 在上述方案中,所述训练模块,还用于:通过所述共享特征网络对所述音频样本的音频特征进行共享处理,得到所述音频特征对应的共享处理结果;通过对应所述第一任务的全连接层,对所述音频特征对应的共享处理结果进行概率映射处理,得到所述音频特征对应语种预标记类别的第三预测概率,以作为对应所述音频特征的第三正向传播结果;通过所述共享特征网络对所述音频样本的干扰特征进行共享处理,得到所述干扰特征对应的共享处理结果;通过对应所述第一任务的全连接层,对所述干扰特征对应的共享处理结果进行概率映射处理,得到所述干扰特征对应语种预标记类别的第四预测概率,以作为对应所述干扰特征的第三正向传播结果。
[0022] 在上述方案中,所述训练模块,还用于:通过所述共享特征网络对所述音频样本的音频特征进行共享处理,得到所述音频特征对应的共享处理结果;通过对应所述第二任务的全连接层,对所述音频特征对应的共享处理结果进行概率映射处理,得到所述音频特征对应第二任务预标记类别的第五预测概率,以作为对应所述音频特征的第四正向传播结果;通过所述共享特征网络对所述音频样本的干扰特征进行共享处理,得到所述干扰特征对应的共享处理结果;通过对应所述第二任务的全连接层对所述干扰特征对应的共享处理结果进行概率映射处理,得到所述干扰特征对应预测的第二任务预标记类别的第六预测概率,以作为对应所述音频特征的第四正向传播结果。
[0023] 在上述方案中,所述训练模块,还用于:所述基于所述多个音频样本的音频特征,对语种检测模型进行多个任务的联合训练之前,所述训练模块,还用于:获取与多个级别的语音应用场景一一对应的多个音频样本集合;按照所述多个音频样本集合所对应的语音应用场景的级别的降序,从所述多个音频样本集合中依次选取训练样本集合,以对所述语种检测模型进行预训练;其中,在任意两个级别的语音应用场景中,低级别的语音应用场景的训练样本集合是高级别的语音应用场景的训练样本集合的子集。
[0024] 在上述方案中,所述获取模块,还用于:将所述音频样本的类型从时域信号变换到频域信号;对变换为频域信号的音频样本进行梅尔计算,得到所述音频样本的梅尔刻度的频谱,以作为所述音频样本的音频特征。
[0025] 在上述方案中,所述获取模块,还用于:执行以下处理至少之一:通过时域扭曲函数对所述音频样本的梅尔刻度的频谱进行时域扭曲处理,以基于时域扭曲处理结果更新所述音频特征;通过频域通道随机掩盖函数对所述音频样本的梅尔刻度的频谱进行针对频域通道的随机掩盖处理,以基于针对频域通道的随机掩盖处理结果更新所述音频特征;通过时域通道随机掩盖函数对所述音频样本的梅尔刻度的频谱进行针对时域通道的随机掩盖处理,以基于针对时域通道的随机掩盖处理结果更新所述音频特征。
[0026] 在上述方案中,所述多个音频样本的类型包括原始音频样本和增强音频样本;所述获取多个音频样本的音频特征之前,所述获取模块,还用于:对所述原始音频样本进行以下方式的数据增强处理,以获得与所述原始音频样本对应的增强音频样本:对所述原始音频样本进行包括声学特性变换和/或混音的多样性变换处理,得到变换音频样本;对所述变换音频样本的格式和/或采样率进行转换处理,得到与所述原始音频样本对应的增强音频样本。
[0027] 在上述方案中,所述分类模块,还用于:对所述音频信号进行划分处理,得到对应所述音频信号的多个音频片段;获取每个所述音频片段的音频特征,基于每个所述音频片段的音频特征调用所述语种检测模型,得到每个所述音频片段的语种分类结果;获取每个语种分类结果对应的音频片段的数目,以将最大数目对应的语种分类结果确定为所述音频信号的语种分类结果。
[0028] 在上述方案中,所述分类模块,还用于:所述语种检测模型包括共享网络以及对应所述第一任务的全连接层;通过所述共享网络对所述特定场景的音频片段进行共享处理,得到所述音频片段的共享处理结果;其中,所述共享处理包括:卷积处理、池化处理、全连接处理;通过对应所述第一任务的全连接层对所述音频片段进行全连接处理,得到对应所述音频片段的全连接处理结果;通过对应所述第一任务的全连接层对所述音频片段的全连接处理结果进行最大似然处理,得到对应每个语种分类标签的概率;将概率最大的语种分类标签确定为所述音频片段的语种分类结果。
[0029] 本申请实施例提供一种电子设备,包括:
[0030] 存储器,用于存储可执行指令;
[0031] 处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的基于人工智能的语种检测方法。
[0032] 本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的基于人工智能的语种检测方法。
[0033] 本申请实施例具有以下有益效果:
[0034] 语种检测模型的训练目标是实现高准确度的语种分类(第一任务),对语种检测模型进行训练时采取了多个任务的联合训练,利用不同于语种分类的任务(第二任务)辅助训练语种检测模型,通过第二任务的辅助训练增强语种检测模型中特征学习的共享性能,降低网络过拟合,有效提高通过语种检测模型进行语种分类的准确度。

附图说明

[0035] 图1A是本申请实施例提供的基于人工智能的语种检测系统的结构示意图;
[0036] 图1B是本申请实施例提供的基于区块链的语种检测系统的结构示意图;
[0037] 图2是本申请实施例提供的电子设备的结构示意图;
[0038] 图3A‑3D是本申请实施例提供的基于人工智能的语种检测方法的流程示意图;
[0039] 图4A‑4B是本申请实施例提供的基于人工智能的语种检测方法的界面示意图;
[0040] 图5为本申请实施例提供的区块链网络的应用架构示意图;
[0041] 图6A是本申请实施例提供的基于人工智能的语种检测方法的联合训练模型的结构示意图;
[0042] 图6B是本申请实施例提供的基于人工智能的语种检测方法的语种检测模型的结构示意图;
[0043] 图6C是本申请实施例提供的基于人工智能的语种检测方法的基础分类模型的结构示意图;
[0044] 图7是本申请实施例提供的基于人工智能的语种检测方法的数据结构示意图;
[0045] 图8是本申请实施例提供的基于人工智能的语种检测方法的流程示意图。

具体实施方式

[0046] 为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0047] 在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解“, 一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
[0048] 在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
[0049] 除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
[0050] 对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
[0051] 1)语音识别技术:自动语音识别(ASR,Automatic Speech Recognition),其目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如按键、二进制编码或者字符序列。
[0052] 2)梅尔频率倒谱系数(MFCC,Mel‑Frequency Cepstrum Coefficient):是在梅尔标度频率域提取出来的倒谱参数,梅尔标度描述了人耳频率的非线性特性,梅尔谱图是频率转换为梅尔标度的谱图。
[0053] 3)身份认证矢量(I‑Vector,Identity Vector):将语音特征提取为一个低维的矢量矩阵,用来表征说话者的信息差异性。
[0054] 4)语音端点检测(VAD,Voice Activity Detection):检测一段音频信号的发音段与静音段。
[0055] 5)全连接(FC,Full Connection):全连接层中的每个神经元与其前一层的所有神经元进行全连接.全连接层可以整合卷积层或者池化层中具有类别区分性的局部信息。
[0056] 6)F1分数:F1分数是统计学中用来衡量二分类模型精确度的一种指标,它同时兼顾了分类模型的精确率和召回率,F1分数可以看作是模型精确率和召回率的调和平均。
[0057] 7)基频:在声音中基频是指基音的频率,是一个复杂声波中最低的频率,它决定语音音调的高低。
[0058] 8)采样率:每秒对声音进行采集信号的次数。
[0059] 在相关技术中,存在两种方式进行语种判断:一、基于多种语音识别引擎,选择输出概率最大的语音识别引擎对应的语言作为识别语种,通过结合多个语音识别引擎的语音识别过程,可以提升语种识别的鲁棒性效果;二、基于有效发音特征,构建语种分类器,对语种进行判别,存在两种提取发音特征的方式:1、基于专业知识提取有效的发音特征;2、基于神经网络提取音频的有效特征,例如,提取了MFCC、身份认证矢量等特征对语种进行分类,使用原始音频波形信号值输入到深度神经网络中以输出语种判断,提取语音对应的原始频谱图输入到深度神经网络以输出语种结果,通过结合卷积神经网络构建的声学模型提取声学特征,从而提升语种识别鲁棒性。
[0060] 相关技术中增强语种识别鲁棒性的方式主要是依赖具有鲁棒性的语音识别,将语音识别作为语种识别的前端,这种方式依赖语音识别,对语音识别的鲁棒性要求较高,或者添加更加鲁棒的声学特征,以提升语种识别的鲁棒性,这种方式往往需要进行精细地特征构造,并且对影响语种识别鲁棒性的多种因素具有充足的理解,相关技术中提升语种识别鲁棒性的方式,往往依赖于语音识别或对影响语种识别的鲁棒性的特征的专业知识,均难以取得较好的训练效果。
[0061] 针对相关技术的上述问题,本申请实施例提供一种基于人工智能的语种检测方法、装置、电子设备和计算机可读存储介质,能够利用不同于语种分类的任务(第二任务)辅助训练语种检测模型,通过第二任务的辅助训练增强语种检测模型中特征学习的共享性能,降低网络过拟合,有效提高通过语种检测模型进行语种分类的准确度,下面说明本申请实施例提供的电子设备的示例性应用,本申请实施例提供的电子设备可以实施为服务器。下面,将说明电子设备实施为服务器时示例性应用。
[0062] 参见图1A,图1A是本申请实施例提供的基于人工智能的语种检测系统的结构示意图,语种检测系统可以用于口语考试场景,在语种检测系统中,终端400通过网络连接服务器200,网络可以是广域网或者局域网,又或者是二者的组合。
[0063] 在一些实施例中,语种检测系统的功能是基于服务器200中的各个模块实现的,在用户使用终端400的过程中,终端400收集音频样本对语种检测模型进行基于多个任务的联合训练,将训练完成的语种检测模型集成在服务器200中,响应于终端400接收到用户针对口语考试的语音信号(即音频信号),终端400将语音信号发送至服务器200,服务器200通过语种检测模型确定出语音信号的语种分类结果,并发送至终端400,以使终端400直接呈现语种分类结果。
[0064] 在一些实施例中,当语种检测系统应用于口语考试场景时,终端400接收到用户的承载在语音信号的答题内容,终端400将语音信号发送至服务器200,服务器200通过语种检测模型确定出语音信号的语种分类结果,并发送至终端400,以使终端400直接呈现语种分类结果,例如,口语考试题目要求用户使用英语作答,但是语种检测结果为中文,则在终端400显示提示信息以提示使用要求的语言回答问题或者显示表征异常的提示信息。
[0065] 在一些实施例中,当语种检测系统应用于语言教学场景时,例如,具有语言教学功能的客户端,客户端提供跟读学习任务,终端400显示需要跟读的语段文本,终端400接收到用户的承载在语音信号的跟读语段,终端400将语音信号发送至服务器200,服务器200通过语种检测模型确定出语音信号的语种分类结果,并发送至终端400,以使终端400直接呈现语种分类结果,例如,跟读文本任务要求用户使用英语跟读,但是语种检测结果为中文,则在终端400显示提示信息以提示用户使用要求的语言进行跟读或者显示表征异常的提示信息。
[0066] 在一些实施例中,当语种检测系统应用于人机交互控制场景时,终端400接收到用户的承载在语音信号的问题,终端400将语音信号发送至服务器200,服务器200通过语种检测模型确定出语音信号的语种分类结果,并发送至终端400,以使终端400直接呈现语种分类结果,并按照对应的语种分类结果与用户进行交互,例如,按照对应的语种分类结果回答用户的提问,并通过终端以对应语种播放回答问题的音频。
[0067] 在一些实施例中,当语种检测系统应用于视频播放场景时,终端400接收到用户的承载在语音信号的视频播放请求,终端400将语音信号发送至服务器200,服务器200通过语种检测模型确定出语音信号的语种分类结果,并发送至终端400,以使终端400直接呈现语种分类结果,并按照对应的语种分类结果播放视频,例如,语种分类结果为英文,则播放视频的英文版本,语种分类结果为中文,则播放视频的中文版本。
[0068] 在另一些实施例中,还可以由终端通过语种检测模型确定出语音信号的语种分类结果,并直接呈现语种分类结果。
[0069] 在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
[0070] 参见图1B,图1B是本申请实施例提供的基于区块链的语种检测方法的应用示意图,下面说明本申请实施例基于区块链网络的示例性应用。参见图1B,图1B是本申请实施例提供的基于区块链的语种检测方法的应用示意图,包括区块链网络600(示例性示出了区块链网络600包括的节点610‑1、节点610‑2)、服务器200、以及终端400,下面分别进行说明。
[0071] 服务器200(映射为节点610‑2)以及终端400(映射为节点610‑1)均可以加入区块链网络600而成为其中的节点,图1B中示例性地示出了将终端400映射为区块链网络600的节点610‑1,每个节点(例如节点610‑1、节点610‑2)都具有共识功能和记账(即维护状态数据库库,例如键值数据库)的功能。
[0072] 每个节点(例如节点610‑1)的状态数据库中记录有终端400的语音信号以及语音信号对应的语种分类结果,以使终端400可以查询状态数据库中记录的语音信号以及语音信号对应的语种分类结果。
[0073] 在一些实施例中,响应于接收到用户针对口语考试的语音信号,多个服务器200(每个服务器映射为区块链网络中的一个节点)确定出语音信号的语种分类结果,针对某个候选的语种分类结果,共识通过的节点数目超过节点数目阈值时,确定共识通过,服务器200(映射为节点610‑2)将共识通过的候选的语种分类结果发送至终端400(映射为节点
610‑1),并呈现在终端400的人机交互界面,响应于用户针对语音信号的语种分类结果的确认操作,将语音信号以及语音信号对应的语种分类结果进行上链存储。
[0074] 接下来,说明本申请实施例提供的用于实施基于人工智能的语种检测方法的电子设备的结构,如前,本申请实施例提供的电子设备可以是图1A‑1B中的服务器200。参见图2,图2是本申请实施例提供的服务器200的结构示意图,图2所示的服务器200包括:至少一个处理器210、存储器250、至少一个网络接口220。服务器200中的各个组件通过总线系统240耦合在一起。可理解,总线系统240用于实现这些组件之间的连接通信。总线系统240除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统240。
[0075] 处理器210可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
[0076] 存储器250可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器250可选地包括在物理位置上远离处理器210的一个或多个存储设备。
[0077] 存储器250包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Me mory),易失性存储器可以是随机存取存储器(RAM,Random Access Memor y)。本申请实施例描述的存储器250旨在包括任意适合类型的存储器。
[0078] 在一些实施例中,存储器250能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
[0079] 操作系统251,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;网络通信模块252,用于经由一个或多个(有线或无线)网络接口220到达其他计算设备,示例性的网络接口220包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等。
[0080] 在一些实施例中,本申请实施例提供的基于人工智能的语种检测装置可以采用软件方式实现,图2示出了存储在存储器250中的基于人工智能的语种检测装置255,其可以是程序和插件等形式的软件,包括以下软件模块:获取模块2551、训练模块2552和分类模块2553,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分,将在下文中说明各个模块的功能。
[0081] 将结合本申请实施例提供的服务器200的示例性应用和实施,说明本申请实施例提供的基于人工智能的语种检测方法。
[0082] 参见图6A,图6A是本申请实施例提供的基于人工智能的语种检测方法的联合训练模型的结构示意图,联合训练模型包括共享特征网络、人声分类网络(对应第二任务)以及语种分类网络(对应第一任务),共享特征网络用于进行特征共享处理,使得共享特征网络输出的共享处理结果被对应第一任务的语种分类网络与对应第二任务的人声分类网络共享,共享特征网络的输入是基于音频信号得到的梅尔频谱(音频特征),共享特征网络的输出是对应音频特征的共享处理结果,再通过人声分类网络和语种分类网络各自对应的全连接层进行全连接处理,分别得到人声分类结果和语种分类结果,人声分类网络包括对应人声分类网络的人声全连接层,语种分类网络包括对应语种分类网络的语种全连接层。
[0083] 参见图6B,图6B是本申请实施例提供的基于人工智能的语种检测方法的语种检测模型的结构示意图,语种检测模型包括共享特征网络以及语种分类网络(对应第一任务),共享特征网络用于进行特征共享处理,共享特征网络的输入是基于音频信号得到的梅尔频谱(音频特征),共享特征网络的输出是对应音频特征的共享处理结果,再通过对应语种分类网络的全连接层进行全连接处理,得到语种分类结果,语种分类网络包括对应语种分类网络的语种全连接层。
[0084] 参见图6C,图6C是本申请实施例提供的基于人工智能的语种检测方法的基础分类模型的结构示意图,基础分类模型包括多个特征提取网络、共享全连接层(FC2048和线性整流函数)以及对应527个类别的全连接层(FC527和s igmoid激活函数),每个特征提取网络包括卷积层(例如,卷积层3*3@64)、归一化层、线性整流层以及平均池化层,共享全连接层即为上述对应人声分类网络和语种分类网络的共享全连接层,多个特征提取网络组合为上述共享特征网络,对应527个类别的全连接层可以直接输出527种分类结果以对基础分类模型进行可视化训练,其中,多个特征提取网络、共享全连接层(FC2048和线性整流函数)构成了语种检测模型的共享特征网络。
[0085] 以由图1中的服务器200执行本申请实施例提供的基于人工智能的语种检测方法为例,说明本申请实施例提供的基于人工智能的语种检测方法。
[0086] 参见图3A,图3A是本申请实施例提供的基于人工智能的语种检测方法的流程示意图,将结合图3A示出的步骤101‑103进行说明。
[0087] 在步骤101中,获取特定场景中多个音频样本的音频特征。
[0088] 作为示例,特定场景包括口语考试场景、智能助手场景等等,口语考试场景中的音频样本通常是和口语考试相关的音频样本,音频样本的内容通常是回答问题的答案,可以从实际口语考试中采集得到,智能助手场景中的音频样本通常是与智能助手相关的音频样本,例如,内容为“拨打xx电话”、“打开xx指令”的音频样本,可以直接将终端采集的用户的语音指令作为音频样本。
[0089] 在一些实施例中,参见图3B,图3B是本申请实施例提供的基于人工智能的语种检测方法的流程示意图,步骤101中获取多个音频样本的音频特征,可以通过步骤1011‑1012实现,将结合图3B示出的步骤1011‑1012进行说明。
[0090] 在步骤1011中,将音频样本的类型从时域信号变换到频域信号。
[0091] 作为示例,每个音频样本的原始的音频信号是随时间变化的波形图,无法分解成多个基础信号,因此将原始的音频信号从时域变换到频域得到频谱图,将音频信号从时域变换到频域是通过傅立叶变换实现的,频谱图的横轴是时间,纵轴是频率。
[0092] 在步骤1012中,对变换为频域信号的音频样本进行梅尔计算,得到音频样本的梅尔刻度的频谱,以作为音频样本的音频特征。
[0093] 作为示例,由于人类难以感知线性范围的频率,感知低频差异的能力强于感知高频差异的能力,为了克服感知困难,可以对频率进行梅尔计算,对变换为频域信号的音频样本进行梅尔计算得到梅尔刻度,最终原始的音频信号被转化为梅尔刻度的频谱,梅尔刻度的频谱的横轴为时间,纵轴为梅尔刻度的频率,将梅尔刻度的频谱作为音频样本的音频特征。
[0094] 在一些实施例中,步骤1012中对变换为频域信号的音频样本进行梅尔计算,得到音频样本的梅尔刻度的频谱,以作为音频样本的音频特征之后,执行以下处理至少之一:通过时域扭曲函数对音频样本的梅尔刻度的频谱进行时域扭曲处理,以基于时域扭曲处理结果更新音频特征;通过频域通道随机掩盖函数对音频样本的梅尔刻度的频谱进行针对频域通道的随机掩盖处理,以基于针对频域通道的随机掩盖处理结果更新音频特征;通过时域通道随机掩盖函数对音频样本的梅尔刻度的频谱进行针对时域通道的随机掩盖处理,以基于针对时域通道的随机掩盖处理结果更新音频特征。
[0095] 作为示例,在训练的每次迭代过程中,新的经过数据增强的音频样本都需要被转换成频谱图,可以直接增强频谱图,而不再是对音波数据进行增强,由于直接对输入至语种检测模型的音频特征进行增强处理,所以可以实时动态添加,而不需要像对音波数据进行数据增强一样有很多计算代价而影响到训练速度,通过扭曲时域信号,掩盖频域通道和掩盖时域通道,修改了频谱图,这种增强方式可以用来增加语种检测模型的鲁棒性,来对抗时域上的变形以及频域上的部分片段损失。
[0096] 在一些实施例中,多个音频样本的类型包括原始音频样本和增强音频样本;步骤101中获取多个音频样本的音频特征之前,对原始音频样本进行以下方式的数据增强处理,以获得与原始音频样本对应的增强音频样本:对原始音频样本进行包括声学特性变换和/或混音的多样性变换处理,得到变换音频样本;对变换音频样本的格式和/或采样率进行转换处理,得到与原始音频样本对应的增强音频样本。
[0097] 作为示例,采用多种数据合成方式,增加训练数据的多样性,对原始音频样本的属性数据进行声学特性变换处理,得到多个变换音频样本;其中,属性数据包括以下至少之一:原始语音样本的基频、原始语音样本的音速、原始语音样本的音量,基于音频处理工具,通过提升、降低音频基频,提高、降低音频语速,提高、降低音频音量等操作,将一条原始语音样本扩展成多条语音样本(增强语音样本),将某个语种的语音样本以背景音形式混合到另一个语种的语音样本中。
[0098] 例如,针对某个英文的音频样本,将一个汉语的音频样本调小音量,混合到英文的音频样本中,作为英文的音频样本的背景音,最终该英文的音频样本的标签仍为英文标签,还可以对一条音频样本进行格式转换或采样率转换,扩展成多种格式或多种采样率的音频样本,例如,某个经过格式压缩的音频或低采样率音频。
[0099] 在步骤102中,基于多个音频样本的音频特征,对语种检测模型进行多个任务的联合训练。
[0100] 作为示例,多个任务包括针对音频样本进行语种分类处理的第一任务、以及用于辅助训练语种检测模型的第二任务。第二任务是不同于第一任务的任务,例如,第二任务是对发音者的年龄进行分类的任务,第二任务是对发音者的性别进行分类的任务,第二任务是对发音者的口音进行分类的任务等等,总之,第二任务可以是区别于第一任务且对音频样本进行分类的任意任务。
[0101] 在步骤103中,通过经过联合训练的语种检测模型,对从特定场景采集的音频信号进行语种分类处理,得到音频信号的语种分类结果。
[0102] 作为示例,音频信号可以为来自于用户的语音信号,还可以为视频或者音频文件中的声音信号,或者是通过机器合成的声音信号。
[0103] 在一些实施例中,语种检测模型包括共享特征网络以及对应第一任务的全连接层;参见图3C,图3C是本申请实施例提供的基于人工智能的语种检测方法的流程示意图,步骤102中基于多个音频样本的音频特征,对语种检测模型进行多个任务的联合训练,可以通过基于每个音频样本执行以下步骤1021‑1023实现。
[0104] 在步骤1021中,将音频样本的音频特征,在共享特征网络以及对应第一任务的全连接层中进行正向传播,得到第一正向传播结果。
[0105] 作为示例,共享特征网络包括N个级联的特征处理网络以及共享全连接层,N为大于或等于2的整数,通过N个级联的特征处理网络中的第n特征处理网络,对第n特征处理网络的输入进行特征提取处理;将第n特征处理网络输出的第n特征提取结果传输到第n+1特征处理网络以继续进行特征提取处理;其中,n为取值从1开始递增的整数,且n的取值范围满足1≤n≤N‑1;当n取值为1时,第n特征处理网络的输入为音频样本的梅尔刻度的频谱(音频特征),当n取值为2≤n≤N‑1时,第n特征处理网络的输入为第n‑1特征处理网络的特征提取结果,共享全连接层是第二任务和第一任务之间共享的全连接层,多个特征提取网络以共享全连接层组成共享特征网络,共享特征网络的输入为每个音频样本的梅尔刻度的频谱(音频特征),共享特征网络的输出为经过共享全连接层映射得到的共享处理结果。
[0106] 作为示例,第n特征处理网络包括卷积层、归一化层、线性整流层以及平均池化层;上述通过N个级联的特征处理网络中的第n特征处理网络,对第n特征处理网络的输入进行特征提取处理,可以通过以下技术方案实现:将第n特征处理网络的输入与第n特征处理网络的卷积层的卷积层参数进行卷积处理,得到第n卷积层处理结果;通过第n特征处理网络的归一化层对第n卷积层处理结果进行归一化处理,得到第n归一化处理结果;通过第n特征处理网络的线性整流层对第n归一化处理结果进行线性整流处理,得到第n线性整流处理结果;通过第n特征处理网络的平均池化层对第n线性整流处理结果进行平均池化处理,得到第n特征提取结果。
[0107] 作为示例,每个特征处理网络包括卷积层、归一化层、线性整流层以及平均池化层;通过特征处理网络对该特征处理网络的输入进行卷积处理、归一化处理,线性整流处理以及平均池化处理,得到该特征处理网络输出的特征提取结果,将最后一个特征处理网络的输出作为共享全连接层的输入。
[0108] 作为示例,通过对应第一任务(语种分类任务)的全连接层对共享全连接层的输出进行映射处理,得到音频样本属于每个候选语种的概率,并将概率最大的语种作为音频样本的语种分类结果。第一正向传播结果为对应第一任务的全连接层输出的对应第一任务分类结果(语种分类结果)的预测概率。
[0109] 在步骤1022中,将音频样本的音频特征,在共享特征网络以及对应第二任务的全连接层中进行正向传播,得到第二正向传播结果。
[0110] 作为示例,音频样本的音频特征在共享特征网络的正向传播过程可以参考对应步骤1021的说明,通过对应第二任务(非语种分类任务)的全连接层对共享全连接层的输出进行映射处理,得到音频样本属于每个候选结果的概率,并将概率最大的结果作为音频样本的非语种分类任务的分类结果,例如,得到音频样本属于每个候选年龄段的概率,并将概率最大的年龄段作为音频样本的年龄段分类结果。第二正向传播结果为对应第二任务的全连接层输出的对应第二任务分类结果的预测概率。
[0111] 在步骤1023中,将第一正向传播结果以及第二正向传播结果代入对应多个任务的损失函数,以根据对应多个任务的损失函数更新共享特征网络、对应第一任务的全连接层、以及对应第二任务的全连接层的参数。
[0112] 作为示例,对应多个任务的损失函数是将每个任务的损失进行融合处理得到的,参见公式(1):
[0113] Ltotal=w1*L人声+w2*L语种                                 (1);
[0114] 其中,Ltotal是联合训练模型的损失函数,w1是预设的针对人声分类(第二任务的某个示例)的损失的参数,w2是预设的针对语种分类(第一任务)的损失的参数,w1和w2用于平衡两个损失部分的损失,L人声是针对人声分类的损失,L语种是针对语种分类的损失,针对人声分类的损失是基于人声预测概率以及音频样本的人声标签得到的,例如,音频样本的人声分类结果为成人时,人声预测概率是联合训练模型输出的对应分类标签为成人时的概率,针对语种分类的损失是基于语种预测概率以及音频样本的语种标签得到的,例如,音频样本的语种分类结果为英语时,语种预测概率是联合训练模型输出的对应分类标签为英语时的概率。
[0115] 在一些实施例中,参见图3D,图3D是本申请实施例提供的基于人工智能的语种检测方法的流程示意图。步骤101之后,获取特定场景中多个音频样本的音频特征之后,执行步骤104,步骤102中基于多个音频样本的音频特征,对语种检测模型进行多个任务的联合训练,可以通过执行以下步骤1024实现。
[0116] 在步骤104中,通过语种检测模型对每个音频样本的音频特征进行干扰处理,得到每个音频样本对应的干扰特征。
[0117] 作为示例,为了提升语种检测模型的鲁棒性,还采用了对音频特征引入噪声的对抗训练的方式,进行对抗训练之前,需要基于音频特征获取对应音频特征的干扰特征(表征所引入的噪声)。
[0118] 在步骤1024中,基于多个音频样本的干扰特征以及音频特征,对语种检测模型进行多个任务的联合训练。
[0119] 作为示例,通过干扰特征以及音频特征同时对语种检测模型进行多个任务的联合训练,有利于提升语种检测模型的鲁棒性,具有较高的抗噪声能力。
[0120] 在一些实施例中,步骤104中通过语种检测模型对每个音频样本的音频特征进行干扰处理,得到每个音频样本对应的干扰特征,可以通过针对每个音频样本执行以下处理执行以下技术方案实现:通过语种检测模型,对音频样本进行基于音频特征的语种分类处理,得到音频样本属于语种预标记类型的第一预测概率;将第一预测概率与语种预标记类型代入语种检测模型的损失函数,并确定语种检测模型的损失函数对应音频特征的梯度;将梯度与干扰参数进行相乘处理,并将相乘处理结果与音频特征进行相加处理,将相加处理结果作为对应音频样本的干扰特征。
[0121] 作为示例,对抗训练是一种引入噪声的训练方式,可以对参数进行正则化,提升模型鲁棒性和泛化能力,对抗训练的假设是给输入加上扰动之后输出分布和未加扰动时输出的分布一致,因此为了有效进行对抗训练需要寻求优质的干扰特征(在音频特征的基础上加上扰动之后的特征),干扰特征需要满足的条件是在仅做出微小改变情况下使得联合训练模型输出的预测结果错误。
[0122] 作为示例,基于输入的梅尔频谱(音频特征),计算对应音频特征的梯度,将梯度加到梅尔频谱(音频特征)中,作为最终作为输入的干扰特征,作为输入的干扰特征使语种检测模型的损失值变大,从而达到对抗训练的效果,即干扰特征会对语种检测模型产生混淆作用,参见公式(2)和(3):
[0123]
[0124] x=x+∈*g                                                 (3);
[0125] 其中,∈是可设置的参数,用于控制扰动的程度,g是梯度,L是损失值,x是音频特征,θ是语种检测模型的参数。
[0126] 将音频特征输入语种检测模型得到属于语种预标记类型的第一预测概率,例如,语种预标记类型为英语,语种检测模型输出的对应英语的第一预测概率为0.7,预标记类型对应的值为1,基于第一预测概率与语种预标记类型对应的值代入对应语种检测模型的损失函数,求得损失值L,基于损失值对梅尔频谱进行求导,得到导数(梯度g),然后将导数增加到梅尔频谱(音频特征)中,以对音频特征进行扰动。
[0127] 在一些实施例中,步骤104中通过语种检测模型对每个音频样本的音频特征进行干扰处理,得到每个音频样本对应的干扰特征,可以通过针对每个音频样本执行以下处理执行以下技术方案实现:通过语种检测模型对音频样本的音频特征进行多次干扰处理,得到每个音频样本与多次干扰处理一一对应的多个候选干扰特征;基于每个候选干扰特征,调用语种检测模型对音频样本进行语种分类处理,得到音频样本属于语种预标记类型的多个第二预测概率;将每个第二预测概率与语种预标记类型代入语种检测模型的损失函数,并在每个音频样本对应的多个候选干扰特征中,确定语种检测模型的损失函数取得最大值时对应的候选干扰特征,以作为对应音频样本的干扰特征。
[0128] 作为示例,基于损失值对于音频特征的梯度确定干扰特征的动机是希望扰动的方向沿着梯度提升的方向,沿着梯度提升也就意味着让损失增大到最大,在将梯度与干扰参数进行相乘时,是将梯度各个维度的归一化值与干扰参数相乘,存在多种归一化方法,例如通过符号函数Sign对梯度采取最大归一化,通过范数归一化,最大归一化是指如果梯度某个维度上的值为正,则将该梯度值设为1,如果梯度某个维度上的值为负,则将该梯度值设为‑1,如果梯度某个维度上的值为0,则将该梯度值设为0,范数归一化则是将梯度的每个维度的值除以梯度的范数,基于不同的归一化方式进行多次干扰处理,得到多个候选干扰特征,得到的过程可以参考上述实施例,不同干扰处理的区别仅在于对于梯度的归一化方式不同。
[0129] 作为示例,通过语种检测模型对音频样本的音频特征进行多次干扰处理,得到每个音频样本与多次干扰处理一一对应的多个候选干扰特征,得到多个候选干扰特征的过程可以结合公式(2)‑(3)参考上文,在多个候选干扰特征中选择造成干扰最严重的,通过损失值来量化干扰严重程度,因此基于每个候选干扰特征,调用语种检测模型对音频样本进行语种分类处理,得到音频样本属于语种预标记类型的多个第二预测概率,例如,预标记类型为英文,两个干扰特征对应语种预标记类型的第二预测概率分别为0.4和0.3,则明显第二预测概率为0.3对应的干扰特征所造成的混淆更加严重,因此将每个第二预测概率与语种预标记类型代入语种检测模型的损失函数后,在每个音频样本对应的多个候选干扰特征中,确定语种检测模型的损失函数取得最大值时对应的候选干扰特征,以作为对应音频样本的干扰特征,从而能够在后续对抗训练的过程中为模型提供更高的训练要求,使得经过训练的模型具有基于干扰特征正确识别语种的能力。
[0130] 在一些实施例中,语种检测模型包括共享特征网络以及对应第一任务的全连接层;步骤1024中基于多个音频样本的干扰特征以及音频特征,对语种检测模型进行多个任务的联合训练,可以通过针对每个音频样本执行以下处理执行以下技术方案实现:将音频样本的音频特征以及干扰特征,在共享特征网络以及对应第一任务的全连接层中进行正向传播,得到第三正向传播结果;将音频样本的音频特征以及干扰特征,在共享特征网络以及对应第二任务的全连接层中进行正向传播,得到第四正向传播结果;将第三正向传播结果以及第四正向传播结果代入对应多个任务的损失函数,以根据对应多个任务的损失函数更新共享特征网络、对应第一任务的全连接层、以及对应第二任务的全连接层的参数。
[0131] 在一些实施例中,上述将音频样本的音频特征以及干扰特征,在共享特征网络以及对应第一任务的全连接层中进行正向传播,得到第三正向传播结果,可以通过以下技术方案实现:通过共享特征网络对音频样本的音频特征进行共享处理,得到音频特征对应的共享处理结果;通过对应第一任务的全连接层,对音频特征对应的共享处理结果进行概率映射处理,得到音频特征对应语种预标记类别的第三预测概率,以作为对应音频特征的第三正向传播结果;通过共享特征网络对音频样本的干扰特征进行共享处理,得到干扰特征对应的共享处理结果;通过对应第一任务的全连接层,对干扰特征对应的共享处理结果进行概率映射处理,得到干扰特征对应语种预标记类别的第四预测概率,以作为对应干扰特征的第三正向传播结果。
[0132] 作为示例,将音频特征在共享特征网络以及对应第一任务的全连接层中进行正向传播的过程与步骤1021的实施方式类似,针对干扰特征的正向传播进行以下说明:共享特征网络的输入为每个音频样本的干扰特征,共享特征网络的输出为经过共享全连接层映射得到的共享处理结果,通过对应第二任务(例如,年龄段分类任务)的全连接层对共享全连接层的输出进行映射处理,得到音频样本属于每个候选年龄段的概率,并将概率最大的年龄段作为音频样本的年龄段分类结果。第三正向传播结果为基于音频特征得到的对应第一任务的第三预测概率以及基于干扰特征得到的对应第一任务的第四预测概率。
[0133] 在一些实施例中,上述将音频样本的音频特征以及干扰特征,在共享特征网络以及对应第二任务的全连接层中进行正向传播,得到第四正向传播结果,可以通过以下技术方案实现:通过共享特征网络对音频样本的音频特征进行共享处理,得到音频特征对应的共享处理结果;通过对应第二任务的全连接层,对音频特征对应的共享处理结果进行概率映射处理,得到音频特征对应预测的第二任务预标记类别的第五预测概率,以作为对应音频特征的第四正向传播结果;通过共享特征网络对音频样本的干扰特征进行共享处理,得到干扰特征对应的共享处理结果;通过对应第二任务的全连接层对干扰特征对应的共享处理结果进行概率映射处理,得到干扰特征对应预测的第二任务预标记类别的第六预测概率,以作为对应音频特征的第四正向传播结果。
[0134] 作为示例,将音频特征在共享特征网络以及对应第二任务的全连接层中进行正向传播的过程与步骤1022的实施方式类似,针对干扰特征的正向传播进行以下说明:共享特征网络的输入为每个音频样本的干扰特征,共享特征网络的输出为经过共享全连接层映射得到的共享处理结果,通过对应第二任务(例如,年龄段分类任务)的全连接层对共享全连接层的输出进行映射处理,得到音频样本属于每个候选年龄段的概率,并将概率最大的年龄段作为音频样本的年龄段分类结果。第四正向传播结果为基于音频特征得到的对应第二任务的第五预测概率以及基于干扰特征得到的对应第二任务的第六预测概率。
[0135] 作为示例,将第三正向传播结果以及第四正向传播结果代入对应多个任务的损失函数,对应多个任务的损失函数包括对应第一任务的损失以及对应第二任务的损失,对应第一任务的损失是基于音频特征得到的对应第一任务的损失以及基于干扰特征得到的对应第一任务的损失之间的聚合结果,对应第二任务的损失是基于音频特征得到的对应第二任务的损失以及基于干扰特征得到的对应第二任务的损失之间的聚合结果,以根据对应多个任务的损失函数更新共享特征网络、对应第一任务的全连接层、以及对应第二任务的全连接层的参数,以使得基于共享特征网络、对应第一任务的全连接层、以及对应第二任务的全连接层的参数得到的正向传播结果代入对应多个任务的损失函数时,对应多个任务的损失函数收敛为最小值,其中,多任务模型中的共享特征网络以及对应第一任务的全连接层构成了语种检测模型。
[0136] 在一些实施例中,对抗训练可以脱离于多任务联合训练进行,即在获取了音频样本的干扰样本后,仅针对于第一任务进行训练,即将音频样本与干扰样本在共享特征网络以及对应第一任务的全连接层中进行正向传播,得到第三正向传播结果,将第三正向传播结果代入对应语种检测模型的损失函数进行反向传播,以更新语种检测模型的参数,将第三正向传播结果代入对应语种检测模型的损失函数后所得到的是基于音频特征得到的对应第一任务的损失以及基于干扰特征得到的对应第一任务的损失之间的聚合结果。
[0137] 在一些实施例中,步骤102中基于多个音频样本的音频特征,对语种检测模型进行多个任务的联合训练之前,获取与多个级别的语音应用场景一一对应的多个音频样本集合;按照多个音频样本集合所对应的语音应用场景的级别的降序,从多个音频样本集合中依次选取训练样本集合,以对语种检测模型进行预训练;其中,在任意两个级别的语音应用场景中,低级别的语音应用场景的训练样本集合是高级别的语音应用场景的训练样本集合的子集。
[0138] 在一些实施例中,语种识别在语音识别或翻译中应用广泛,主要用于确定对应发音的语种,如汉语或英文等,由于每个语种包含的变量较多,例如,相同语种的不同年龄或不同地区的发音,或者不同录音质量的发音等等,如果缺乏足够多样的训练数据,基于神经网络训练的语种检测网络往往鲁棒性较差,易过拟合于训练数据,对于训练数据领域外的数据表现较差,因此,基于多个语音应用场景的训练样本集合(包含不同于特定场景的语音样本的其他语音样本)对语种检测模型进行多次预训练,能够有效提高语种检测模型的鲁棒性。
[0139] 作为示例,在进行多个任务的联合训练之前,可以对语种检测模型进行多次预训练,以音频分类器作为语种检测模型,首先基于宽泛的训练样本集合训练语种检测模型使得语种检测模型具有宽泛的音频识别能力,例如,可以对527种音频进行分类,但是无法较好完成语种识别这种细粒度识别任务,若是迁移学习时仅基于少量特定场景内的(如口语考试场景)的音频样本对语种检测模型进行迁移训练,往往导致网络过拟合于特定场景内的训练数据,在场景外的训练数据往往表现较差,由于场景外的数据如英文成人发音数据或中国成人发音数据较多且容易获取,可以以英语成人发音数据以及汉语成人发音数据也作为预训练的训练样本集合,即基于特定场景外的数据对语种检测模型进行再次预训练,最终得到一个经过多次预训练的语种识别网络,再基于经过多次预训练的语种检测网络,对特定场景内的语种数据进行微调训练,可以得到一个在场景内测试结果较好,在场景外测试效果不差的语种检测网络,最终提高语种检测模型的鲁棒性。
[0140] 作为示例,多个级别的语音应用场景不同于步骤101中的特定场景,例如,特定场景为中学生口语考试场景,语音应用场景为面对无差别用户的智能助手场景,语音应用场景还可以为视频配音检测场景,语音应用场景还可以为针对任意音频的识别场景,例如,动物声音、雨声等等,其中,对应多级别的语音应用场景的训练样本集合中包括不是来自于特定场景的语音样本,从而基于特定场景外的数据对语种检测模型进行再次预训练时,最终可以得到一个在特定场景内测试结果较好,在特定场景外测试效果不差的语种检测模型,从而提高语种检测模型的鲁棒性。
[0141] 作为示例,以进行两次预训练为例进行说明,获取与两个级别的语音应用场景一一对应的两个音频样本集合;第二级别的语音应用场景是涉及到语音的场景,除此之外并没有其他限定,对应的训练样本集合可以包括5000个小时的音频数据,以实现对527个音频种类进行分类,第一级别的语音应用场景是涉及到多个语种发音的场景,例如,语种检测场景,对应的训练样本集合可以包括英语原声电影的音频数据、汉语原声电影的音频数据、以及英语口语考试的音频数据等等,其中,若特定场景是口语考试的语种检测场景,则特定场景的音频样本是英语口语考试的音频数据,特定场景是与上述两个语音应用场景相关但是更加具体的应用场景,按照多个音频样本集合所对应的语音应用场景的级别的降序,从多个音频样本集合中依次选取训练样本集合,以对语种检测模型进行预训练,即首先利用对应第二级别的训练样本集合对语种检测模型进行预训练,再利用对应第一级别的训练样本集合对经过第一次预训练的语种检测模型进行预训练,其中,在任意两个级别的语音应用场景中,低级别的语音应用场景的训练样本集合是高级别的语音应用场景的训练样本集合的子集,例如,第一级别的训练样本集合中所包括的英语原声电影的音频数据、汉语原声电影的音频数据、以及英语口语考试的音频数据也属于第二级别的训练样本集合,第二级别的训练样本集合还包括其他的音频数据,因此,相较于第一级别的训练样本集合,仅能训练得到具有更宽泛识别能力的语种检测模型。
[0142] 在一些实施例中,步骤103中通过经过联合训练的语种检测模型,对从特定场景采集的音频信号进行语种分类处理,得到音频信号的语种分类结果,可以通过以下技术方案实现:对音频信号进行划分处理,得到对应音频信号的多个音频片段;获取每个音频片段的音频特征,基于每个音频片段的音频特征调用语种检测模型,得到每个音频片段的语种分类结果;获取每个语种分类结果对应的音频片段的数目,以将最大数目对应的语种分类结果确定为音频信号的语种分类结果。
[0143] 作为示例,将音频信号划分为多个音频片段,可以通过以下技术方案实现:确定音频信号中每个音频帧的语音能量;将音频信号中语音能量大于背景噪音能量的多个连续的音频帧,组合为音频片段。基于能量准则检测音频信号的强度,当音频信号中音频帧的语音能量大于背景噪声能量时,确定该音频帧是有语音存在的,当音频信号中音频帧的语音能量不大于背景噪声能量时,确定该音频帧是不存在语音的,例如,该音频帧是背景噪声,若是将音频信号划分为10个音频片段,有8个音频片段被分类为英语,有2个音频片段被分类为汉语,则音频信号的语种分类结果是英语。
[0144] 在一些实施例中,上述通过语种检测模型对每个音频片段进行基于音频特征的语种分类处理,得到每个音频片段的语种分类结果,可以通过以下技术方案实现:语种检测模型包括共享网络以及对应第一任务的全连接层;通过共享网络对特定场景的音频片段进行共享处理,得到音频片段的共享处理结果;其中,共享处理包括:卷积处理、池化处理、全连接处理;通过对应第一任务的全连接层对音频片段进行全连接处理,得到对应音频片段的全连接处理结果;通过对应第一任务的全连接层对音频片段的全连接处理结果进行最大似然处理,得到对应每个语种分类标签的概率;将概率最大的语种分类标签确定为音频片段的语种分类结果。
[0145] 作为示例,语种分类处理是通过语种检测模型实现的,共享特征网络用于进行特征提取,共享特征网络的输入是基于音频信号得到的梅尔频谱(音频特征),共享特征网络中多个特征提取网络输出的是每个音频片段的所提取的特征,共享特征网络的共享全连接层对音频特征进行全连接处理,共享全连接层如图6C所示,该全连接层还会进行基于线性整流函数的处理,再通过对应语种分类网络的全连接层进行全连接处理以及最大似然处理,通过最大似然处理可以得到每个语种分类标签的概率,将概率最大的语种分类标签确定为每个音频片段的语种分类结果。
[0146] 承接图1B,本申请实施例还可结合区块链技术,在终端获取语音信号以及对应的语种分类结果之后,生成用于存储语音信号以及对应的语种分类结果的交易,提交生成的交易至区块链网络的节点,以使节点对交易共识后存储语音信号以及对应的语种分类结果至区块链网络;在存储至区块链网络之前,终端还可对语音信号以及对应的语种分类结果进行哈希处理得到对应语音信号以及对应的语种分类结果的摘要信息;将得到的语音信号以及对应的语种分类结果的摘要信息存储至区块链网络。通过上述方式,防止了语音信号以及对应的语种分类结果被篡改,提高了将语音信号作为语音样本进行训练的有效性,防止恶意用户或者恶意程序篡改语音信号以及对应的语种分类。
[0147] 参见图5,图5为本申请实施例提供的区块链网络的应用架构示意图,包括业务主体400、区块链网络600(示例性示出了共识节点610‑1至共识节点610‑3)、认证中心700,下面分别说明。
[0148] 区块链网络600的类型是灵活多样的,例如可以为公有链、私有链或联盟链中的任意一种。以公有链为例,任何业务主体的电子设备例如用户终端和服务器,都可以在不需要授权的情况下接入区块链网络600;以联盟链为例,业务主体在获得授权后其下辖的计算机设备(例如终端/服务器)可以接入区块链网络600,此时,如成为区块链网络600中的客户端节点。
[0149] 在一些实施例中,客户端节点可以只作为区块链网络600的观察者,即提供支持业务主体发起交易(例如,用于上链存储数据或查询链上数据)功能,对于区块链网络600的共识节点610的功能,例如排序功能、共识服务和账本功能等,客户端节点可以缺省或者有选择性(例如,取决于业务主体的具体业务需求)地实施。从而,可以将业务主体的数据和业务处理逻辑最大程度迁移到区块链网络600中,通过区块链网络600实现数据和业务处理过程的可信和可追溯。
[0150] 区块链网络600中的共识节点接收来自业务主体400的客户端节点提交的交易,执行交易以更新账本或者查询账本,执行交易的各种中间结果或最终结果可以返回业务主体的客户端节点中显示。
[0151] 例如,客户端节点410可以订阅区块链网络600中感兴趣的事件,例如区块链网络600中特定的组织/通道中发生的交易,由共识节点610推送相应的交易通知到客户端节点
410,从而触发客户端节点410中相应的业务逻辑。
[0152] 下面以业务主体接入区块链网络以实现语种检测为例,说明区块链的示例性应用。
[0153] 参见图5,语种检测涉及的业务主体400,从认证中心700进行登记注册获得数字证书,数字证书中包括业务主体的公钥、以及认证中心700对业务主体的公钥和身份信息签署的数字签名,用来与业务主体针对交易的数字签名一起附加到交易中,并被发送到区块链网络,以供区块链网络从交易中取出数字证书和签名,验证消息的可靠性(即是否未经篡改)和发送消息的业务主体的身份信息,区块链网络会根据身份进行验证,例如是否具有发起交易的权限。业务主体下辖的计算机设备(例如终端或者服务器)运行的客户端都可以向区块链网络600请求接入而成为客户端节点。
[0154] 业务主体400客户端节点410用于收集语音信号并且获取语种分类结果,终端会将语音信号以及对应的语种分类发送至区块链网络600。
[0155] 其中,将语音信号以及对应的语种分类发送至区块链网络600的操作,可以预先在客户端节点410设置业务逻辑,当终端获取语音信号以及对应的语种分类时,客户端节点410将语音信号以及对应的语种分类自动发送至区块链网络600,在发送时,客户端节点410根据语音信号以及对应的语种分类生成对应存储操作的交易,在交易中指定了实现存储操作需要调用的智能合约、以及向智能合约传递的参数,交易还携带了客户端节点410的数字证书、签署的数字签名(例如,使用客户端节点410的数字证书中的私钥,对交易的摘要进行加密得到),并将交易广播到区块链网络600中的共识节点610。
[0156] 区块链网络600中的共识节点610中接收到交易时,对交易携带的数字证书和数字签名进行验证,验证成功后,根据交易中携带的业务主体400的身份,确认业务主体400是否是具有交易权限,数字签名和权限验证中的任何一个验证判断都将导致交易失败。验证成功后签署节点610自己的数字签名(例如,使用节点610‑1的私钥对交易的摘要进行加密得到),并继续在区块链网络600中广播。
[0157] 区块链网络600中的共识节点610接收到验证成功的交易后,将交易填充到新的区块中,并进行广播。区块链网络600中的共识节点610广播的新区块时,会对新区块进行共识过程,如果共识成功,则将新区块追加到自身所存储的区块链的尾部,并根据交易的结果更新状态数据库,执行新区块中的交易:对于提交更新语音信号以及对应的语种分类的交易,在状态数据库中添加语音信号以及对应的语种分类。
[0158] 下面,将说明本申请实施例提供的基于人工智能的语种检测方法在以应用场景为口语考试场景(口语考试场景还可以被替换为提供口语问答功能的语言培训场景)的示例性应用。
[0159] 在一些实施例中,对于口语考试中的跟读题型或开放表达题型,通过本申请实施例提供的基于人工智能的语种检测方法检测答题者是否使用规定语种进行作答。跟读题型或者开放表达题型具有规定语种,例如,规定语种为英语,若用户回答问题的语音信号为汉语等非英语语种,则终端显示提示信息以提示用户使用规定语种进行作答或者显示表征语种异常的提示信息。
[0160] 例如,参见图4A,图4A是本申请实施例提供的基于人工智能的语种检测方法的界面示意图,人机交互界面501A中呈现问题,响应于针对人机交互界面501A中开始朗读按钮502A的触发操作,例如,点击操作,接收用户回答问题的语音信号,响应于针对人机交互界面501A中结束朗读按钮503A的触发操作,例如,点击操作,停止接收用户回答问题的语音信号。参见图4B,图4B是本申请实施例提供的基于人工智能的语种检测方法的界面示意图,若用户回答问题的语音信号对应的语种为汉语,规定语种为英语,则在人机交互界面501B上呈现有语音信号的异常检测结果,例如,非英文异常检测结果,非英文异常检测结果用于提示用户实际作答语种为汉语,与规定语种不相符。
[0161] 参见图8,图8是本申请实施例提供的基于人工智能的语种检测方法的流程示意图,响应于客户端的初始化,客户端的人机交互界面中显示问题,响应于针对客户端中开始录音按钮的开始录音操作,采集用户进行课文背诵或者回答问题时的音频信号,客户端将采集到的音频信号发送给服务器,服务器将音频信号发送给语种检测模块,语种检测模块输出语种分类结果后返回至服务器,当出现与当前口语评测无关的语种分类结果时,服务器返回语种分类结果至客户端以提醒用户,否则服务器返回针对口语评测的评测结果至客户端。
[0162] 在一些实施例中,由于音频原始信号是随时间变化的波形图,无法分解成多个基础信号,因此将信号从时域变换到频域,将信号从时域变换到频域是通过傅立叶变换实现的,通过傅立叶变换,将信号变换成频谱图,频谱图的横轴是时间,纵轴是频率,由于人类不会感知线性范围的频率,感知低频差异的能力强于感知高频差异的能力,可以对频率进行梅尔计算,将频率转换为梅尔刻度,最终原始信号被转化为梅尔频谱图,梅尔频谱图的横轴为时间,纵轴为梅尔刻度的频率,将梅尔频谱作为多分类任务模型的输入。
[0163] 在一些实施例中,预训练的基础分类模型是一种音频分类网络,其可以是基于音频训练得到的卷积神经网络,具有对527个音频种类进行分类的能力,基础分类模型的基础结构如图6C所示,基础分类模型的网络结构从上到下进行输入输出,基础分类模型的每个单元由卷积神经网络,批量归一化(BN),线性整流函数(ReLU)以及平均池化(pooling)构成,最终经过全局平均池化(Global Pooling)以及两个全连接变换(FC2048以及FC527)进行527个音频种类的分类。
[0164] 在一些实施例中,参见图6C,基于已经训练好的基础分类模型进行迁移学习得到语种检测模型,使其可以进行语种分类处理,具体地,将基础分类模型中最后一个全连接层(包括FC527和sigmoid激活函数)进行替换,替换成独立全连接层(包括FC和最大似然函数),最终输出语种分类结果。
[0165] 在一些实施例中,语种检测模型的损失函数包括针对语种分类的损失,参见公式(4):
[0166] L=‑y*log(p)                                            (4);
[0167] 其中y为一段语音语种的实际标签,p为语种的预测概率结果。
[0168] 在一些实施例中,采用多种数据增强方式,提升语种识别的鲁棒性,首先,采用多种数据合成方式,增加训练数据的多样性,基于音频处理工具,通过提升、降低音频基频,提高、降低音频语速,提高、降低音频音量等操作,将一条语音样本扩展成多条语音样本,将某个语种的语音样本以背景音形式混合到另一个语种的语音样本中,例如,针对某个英文的音频样本,将一个汉语的音频样本调小音量,混合到英文的音频样本中,作为英文的音频样本的背景音,最终该英文的音频样本的标签仍为英文标签,接着,对一条音频样本进行格式转换或采样率转换,扩展成多种格式或多种采样率的音频样本,例如,mp3音频或低采样率音频,还可以通过掩盖频域通道和掩盖时域通道,修改了音频样本的频谱图,以增加特征的鲁棒性。
[0169] 在一些实施例中,基于预训练的音频分类器进行语种检测,由于音频分类器是一个用于音频分类的网络(基础分类模型),如动物叫声、人声,交通工具声等,该网络不直接适用于语种识别。基于少量领域内的(如口语考试场景)数据的语种识别的迁移训练,往往导致网络过拟合于领域内的数据,在领域外的数据往往表现较差。由于领域外的数据如英文成人当地发音数据或中国成人当地发音数据较多且容易获取,本文基于领域外的数据对网络进行再次预训练,最终得到一个预训练好的语种识别网络。基于预训练的语种识别网络,对领域内的语种数据进行微调训练,可以得到一个在领域内表现较好,在领域外效果不差的语种识别网络,最终提高语种识别的鲁棒性。
[0170] 在一些实施例中,由于一个语种的语音样本具有多样性,例如,不同年龄,不同地区等等,采用多任务联合训练的方式训练语种检测模型,以提升语种检测模型的鲁棒性,参见图6A,在原有的语种检测模型的基础上增加一个对应额外辅助任务的全连接层,例如,成人分类任务的全连接层、儿童发音分类的全连接层,同时优化语种分类任务与成人儿童分类任务,以增强网络所学习特征的共享性,降低网络过拟合。
[0171] 在一些实施例中,为了提升语种检测模型的鲁棒性,还采用了对输入特征(音频特征)引入噪声的对抗训练的方式,基于输入的梅尔频谱,计算梯度,将梯度加到梅尔频谱中,作为最终的输入。该输入扰动使模型的损失值变大,从而达到对抗训练的效果,参见公式(5):
[0172]
[0173] 首先基于公式(4),求得损失值L,基于损失值对梅尔频谱进行求导,得到导数,其中x为梅尔频谱输入,θ为语种检测模型的参数,然后将导数增加到梅尔频谱中,对其进行扰动,参见公式(6):
[0174] x=x+∈*g                                                 (6);
[0175] 其中,∈是可设置的参数,用于控制扰动的程度。
[0176] 在一些实施例中,参见图7,图7是本申请实施例提供的基于人工智能的语种检测方法的数据结构示意图,语种检测模型的输入为梅尔频谱图,输出为语种分类结果(0是英文,1是非英文),其中[0.3,0.5,0.1…]为共享特征网络提取的语种识别的特征表示,[0.2,0.8]表示为发音为英文的概率为0.2,发音为非英文的概率为0.8,最终为非英文的语种分类结果。
[0177] 本申请实施例提供的基于人工智能的语种检测方法的数据测试主要针对语种检测进行结果分析,语种检测结果主要体现为领域外的语种判断和领域内的判断,领域内的数据主要为某场英文口语测试数据,领域外的数据为非考试场景下的包含成人和儿童以及多种录音格式(如mp3)的录音数据,领域外和领域内的数据各2000条,分类结果由F1分数(F1分数可以看作是模型精确率和召回率的一种调和平均)计算得到,如表1所示,通过本申请实施例提供的基于人工智能的语种检测方法,可以有效提升语种识别模型的鲁棒性,从而提高语种识别的准确度。
[0178]  英文 非英文
领域内 98% 99%
领域外(未添加提升鲁棒性方法的模型) 72% 68%
领域外(鲁棒性模型) 88% 85%
[0179] 表1音频异常检测结果
[0180] 本申请实施例提供的基于人工智能的语种检测方法中,采取了多种提升模型鲁棒性的技术手段,结合数据增强、领域外数据预训练、多任务联合训练以及引入噪声对抗训练这些技术手段,提升语种检测模型的鲁棒性,其中,数据增强方式主要包括数据合成,多数据格式增强、频谱增强等方式,领域外数据预训练方式主要基于大量领域外的可获取的语音数据对模型进行多次预训练,获得较好的初始化模型,多任务联合训练主要将语种识别与其他相关任务结合,如成人、儿童语音分类任务等等,引入噪声的对抗训练主要通过对输入语音特征进行对抗扰动,以增强语种检测模型对抗噪声的能力,从而使得模型在某个特定领域,例如中学生口语考试场景中表现较好,同时在其他领域例如儿童口语考试领域、其他录音质量较差的场景中(例如,噪声场景以及有损压缩音频)表现不差,最终达到提升语音语种检测模型的鲁棒性的效果。
[0181] 下面继续说明本申请实施例提供的基于人工智能的语种检测装置255的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器250的基于人工智能的语种检测装置255中的软件模块可以包括:获取模块2551,用于获取特定场景中多个音频样本的音频特征;训练模块2552,用于基于多个音频样本的音频特征,对语种检测模型进行多个任务的联合训练;其中,多个任务包括针对音频样本进行语种分类处理的第一任务、以及用于辅助训练语种检测模型的第二任务;分类模块2553,用于通过经过联合训练的语种检测模型,对从特定场景采集的音频信号进行语种分类处理,得到音频信号的语种分类结果。
[0182] 在一些实施例中,语种检测模型包括共享特征网络以及对应第一任务的全连接层;训练模块2552,还用于:基于每个音频样本执行以下处理:将音频样本的音频特征,在共享特征网络以及对应第一任务的全连接层中进行正向传播,得到第一正向传播结果;将音频样本的音频特征,在共享特征网络以及对应第二任务的全连接层中进行正向传播,得到第二正向传播结果;将第一正向传播结果以及第二正向传播结果代入对应多个任务的损失函数,以根据对应多个任务的损失函数更新共享特征网络、对应第一任务的全连接层、以及对应第二任务的全连接层的参数。
[0183] 在一些实施例中,获取特定场景中多个音频样本的音频特征之后,获取模块2551,还用于:通过语种检测模型对每个音频样本的音频特征进行干扰处理,得到每个音频样本对应的干扰特征;训练模块2552,还用于:基于多个音频样本的干扰特征以及音频特征,对语种检测模型进行多个任务的联合训练。
[0184] 在一些实施例中,获取模块2551,还用于:针对每个音频样本执行以下处理:通过语种检测模型,对音频样本进行基于音频特征的语种分类处理,得到音频样本属于语种预标记类型的第一预测概率;将第一预测概率与语种预标记类型代入语种检测模型的损失函数,并确定语种检测模型的损失函数对应音频特征的梯度;将梯度与干扰参数进行相乘处理,并将相乘处理结果与音频特征进行相加处理,将相加处理结果作为对应音频样本的干扰特征。
[0185] 在一些实施例中,获取模块2551,还用于:针对每个音频样本执行以下处理:通过语种检测模型对音频样本的音频特征进行多次干扰处理,得到每个音频样本与多次干扰处理一一对应的多个候选干扰特征;基于每个候选干扰特征,调用语种检测模型对音频样本进行语种分类处理,得到音频样本属于语种预标记类型的多个第二预测概率;将每个第二预测概率与语种预标记类型代入语种检测模型的损失函数,并在每个音频样本对应的多个候选干扰特征中,确定语种检测模型的损失函数取得最大值时对应的候选干扰特征,以作为对应音频样本的干扰特征。
[0186] 在一些实施例中,语种检测模型包括共享特征网络以及对应第一任务的全连接层;训练模块2552,还用于:基于每个音频样本执行以下处理:将音频样本的音频特征以及干扰特征,在共享特征网络以及对应第一任务的全连接层中进行正向传播,得到第三正向传播结果;将音频样本的音频特征以及干扰特征,在共享特征网络以及对应第二任务的全连接层中进行正向传播,得到第四正向传播结果;将第三正向传播结果以及第四正向传播结果代入对应多个任务的损失函数,以根据对应多个任务的损失函数更新共享特征网络、对应第一任务的全连接层、以及对应第二任务的全连接层的参数。
[0187] 在一些实施例中,训练模块2552,还用于:通过共享特征网络对音频样本的音频特征进行共享处理,得到音频特征对应的共享处理结果;通过对应第一任务的全连接层,对音频特征对应的共享处理结果进行概率映射处理,得到音频特征对应语种预标记类别的第三预测概率,以作为对应音频特征的第三正向传播结果;通过共享特征网络对音频样本的干扰特征进行共享处理,得到干扰特征对应的共享处理结果;通过对应第一任务的全连接层,对干扰特征对应的共享处理结果进行概率映射处理,得到干扰特征对应语种预标记类别的第四预测概率,以作为对应干扰特征的第三正向传播结果。
[0188] 在一些实施例中,训练模块2552,还用于:通过共享特征网络对音频样本的音频特征进行共享处理,得到音频特征对应的共享处理结果;通过对应第二任务的全连接层,对音频特征对应的共享处理结果进行概率映射处理,得到音频特征对应第二任务预标记类别的第五预测概率,以作为对应音频特征的第四正向传播结果;通过共享特征网络对音频样本的干扰特征进行共享处理,得到干扰特征对应的共享处理结果;通过对应第二任务的全连接层对干扰特征对应的共享处理结果进行概率映射处理,得到干扰特征对应预测的第二任务预标记类别的第六预测概率,以作为对应音频特征的第四正向传播结果。
[0189] 在一些实施例中,训练模块2552,还用于:基于多个音频样本的音频特征,对语种检测模型进行多个任务的联合训练之前,训练模块2552,还用于:获取与多个级别的语音应用场景一一对应的多个音频样本集合;按照多个音频样本集合所对应的语音应用场景的级别的降序,从多个音频样本集合中依次选取训练样本集合,以对语种检测模型进行预训练;其中,在任意两个级别的语音应用场景中,低级别的语音应用场景的训练样本集合是高级别的语音应用场景的训练样本集合的子集。
[0190] 在一些实施例中,获取模块2551,还用于:将音频样本的类型从时域信号变换到频域信号;对变换为频域信号的音频样本进行梅尔计算,得到音频样本的梅尔刻度的频谱,以作为音频样本的音频特征。
[0191] 在一些实施例中,获取模块2551,还用于:执行以下处理至少之一:通过时域扭曲函数对音频样本的梅尔刻度的频谱进行时域扭曲处理,以基于时域扭曲处理结果更新音频特征;通过频域通道随机掩盖函数对音频样本的梅尔刻度的频谱进行针对频域通道的随机掩盖处理,以基于针对频域通道的随机掩盖处理结果更新音频特征;通过时域通道随机掩盖函数对音频样本的梅尔刻度的频谱进行针对时域通道的随机掩盖处理,以基于针对时域通道的随机掩盖处理结果更新音频特征。
[0192] 在一些实施例中,多个音频样本的类型包括原始音频样本和增强音频样本;获取多个音频样本的音频特征之前,获取模块2551,还用于:对原始音频样本进行以下方式的数据增强处理,以获得与原始音频样本对应的增强音频样本:对原始音频样本进行包括声学特性变换和/或混音的多样性变换处理,得到变换音频样本;对变换音频样本的格式和/或采样率进行转换处理,得到与原始音频样本对应的增强音频样本。
[0193] 在一些实施例中,分类模块2553,还用于:对音频信号进行划分处理,得到对应音频信号的多个音频片段;获取每个音频片段的音频特征,基于每个音频片段的音频特征调用语种检测模型,得到每个音频片段的语种分类结果;获取每个语种分类结果对应的音频片段的数目,以将最大数目对应的语种分类结果确定为音频信号的语种分类结果。
[0194] 在一些实施例中,分类模块2553,还用于:语种检测模型包括共享网络以及对应第一任务的全连接层;通过共享网络对特定场景的音频片段进行共享处理,得到音频片段的共享处理结果;其中,共享处理包括:卷积处理、池化处理、全连接处理;通过对应第一任务的全连接层对音频片段进行全连接处理,得到对应音频片段的全连接处理结果;通过对应第一任务的全连接层对音频片段的全连接处理结果进行最大似然处理,得到对应每个语种分类标签的概率;将概率最大的语种分类标签确定为音频片段的语种分类结果。
[0195] 本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的基于人工智能的语种检测方法。
[0196] 本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,被处理器执行本申请实施例提供的基于人工智能的语种检测方法,例如,如图3A‑3D示出的基于人工智能的语种检测方法。
[0197] 在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EP ROM、EEPROM、闪存、磁表面存储器、光盘、或CD‑ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
[0198] 在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
[0199] 作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(H TML,Hyper Text Markup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
[0200] 作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
[0201] 综上所述,语种检测模型的训练目标是实现高准确度的语种分类(第一任务),对语种检测模型进行训练时采取了多个任务的联合训练,利用不同于语种分类的任务(第二任务)辅助训练语种检测模型,通过第二任务的辅助训练增强语种检测模型中特征学习的共享性能,降低网络过拟合,有效提高通过语种检测模型进行语种分类的准确度。
[0202] 以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。