语音对象识别模型的训练方法、识别方法和装置与流程

文档序号:30383018发布日期:2022-06-11 05:16阅读:246来源:国知局
语音对象识别模型的训练方法、识别方法和装置与流程

1.本公开涉及计算机技术领域,更具体地说,涉及语音对象识别模型的训练方法、识别方法和装置。


背景技术:

2.随着科技的发展,与语音相关的技术在各个领域内得到了广泛的应用,与语音相关的技术可以包含语音识别、语音合成、声纹识别等等。
3.然而,实际场景的拾音环境往往十分复杂,可能包含大量的噪声,例如,自然噪声、干扰人声等等,在进行语音对象身份识别时,上述这些噪声会对语音对象身份识别的过程造成干扰,导致语音对象身份识别的准确度的下降。例如,在线上会议过程中,如果多个参会对象发生了辩论,线上会议的语音识别装置难以识别出当前主要发言对象的身份;或者,在家庭聚会过程中,如果多个家庭成员均在说话,则智能音响或智能电视难以通过语音识别的方式判定当前使用对象到底是哪个家庭成员。
4.因此,相关技术中,在多个语音对象均输出语音时,通过语音识别来辨认当前语音对象的身份的方案存在准确度较低的问题。


技术实现要素:

5.本公开提供语音对象识别模型的训练方法、识别方法和装置,以至少解决上述相关技术中,在多个语音对象均输出语音时,通过语音识别来辨认当前语音对象的身份的方案存在准确度较低的问题。
6.根据本公开实施例的第一方面,提供一种语音对象识别模型的训练方法,所述语音对象识别模型包含语音提取器、语音表征提取器和身份判别器,所述训练方法包括:获取多个语音对象中每个语音对象的第一语音信号样本、第二语音信号样本和重叠语音信号样本,其中,所述第一语音信号样本和所述第二语音信号样本为该说话对象的内容不同的纯净语音信号样本,所述重叠语音信号样本为由至少一个语音对象的纯净语音信号样本重叠得到的语音信号样本,所述至少一个语音对象的纯净语音信号样本至少包含该语音对象的第二语音信号样本,所述第一语音信号样本对应有标识标签;将每个语音对象的第一语音信号样本和重叠语音信号样本输入所述语音提取器,获得从每个语音对象的重叠语音信号样本中提取出的第三语音信号样本;将每个语音对象对应的第三语音信号样本输入所述语音表征提取器,获得每个语音对象对应的语音表征;将每个语音对象对应的语音表征输入所述身份判别器,获得每个语音对象对应的身份预测概率;根据每个语音对象对应的第三语音信号样本、第二语音信号样本、身份预测概率以及标识标签,计算损失;通过所述损失调整所述语音提取器、所述语音表征提取器和所述身份判别器的参数,从而对所述语音对象识别模型进行训练。
7.可选地,所述根据每个语音对象对应的第三语音信号样本、第二语音信号样本、身份预测概率以及标识标签,计算损失,包括:根据每个语音对象对应的第三语音信号样本以
及第二语音信号样本,计算第一损失;根据每个语音对象对应的身份预测概率以及标识标签,计算第二损失;对所述第一损失和所述第二损失进行加权求和,获得所述损失。
8.可选地,所述第一损失通过尺度不变的信号对失真比损失函数计算得到。
9.可选地,所述第二损失通过交叉熵损失函数计算得到。
10.可选地,所述将每个语音对象的第一语音信号样本和重叠语音信号样本输入所述语音提取器,获得从每个语音对象的重叠语音信号样本中提取出的第三语音信号样本,包括:对每个语音对象的第一语音信号样本和重叠语音信号样本分别进行傅里叶变换,获得第一语音信号样本对应的第一傅里叶变换结果以及重叠语音信号样本对应的第二傅里叶变换结果;将每个语音对象的第一傅里叶变换结果以及第二傅里叶变换结果输入所述语音提取器,获得每个语音对象的语音提取结果;对每个语音对象的语音提取结果进行逆傅立叶变换,获得从每个语音对象的重叠语音信号样本中提取出的第三语音信号样本。
11.可选地,所述将每个语音对象对应的第三语音信号样本输入所述语音表征提取器,获得每个语音对象对应的语音表征,包括:对每个语音对象对应的第三语音信号样本进行傅里叶变换,获得第三傅里叶变换结果;获取每个语音对象的第三傅里叶变换结果对应的梅尔倒谱特征;将每个语音对象对应的梅尔倒谱特征输入所述语音表征提取器,获得帧级别的特征;对每个语音对象对应的帧级别的特征进行统计特性池化,获得每个语音对象对应的语音表征。
12.根据本公开实施例的第二方面,提供一种语音对象的识别方法,所述识别方法包括:获取被测语音信号;针对多个候选语音信号中的每个候选语音信号执行以下操作:将候选语音信号输入根据本公开的训练方法训练出的语音提取器和语音表征提取器,获得每个候选语音信号对应的第一语音表征,其中,所述多个候选语音信号为多个候选对象预先注册的语音信号;将候选语音信号与所述被测语音信号输入所述语音提取器和所述语音表征提取器,获得每个候选语音信号对应的第二语音表征;获取每个候选语音信号对应的第一语音表征与第二语音表征之间的语音表征相似度;根据每个候选语音信号对应的语音表征相似度,确定所述被测语音信号对应的被测语音对象的身份。
13.可选地,所述根据每个候选语音信号对应的语音表征相似度,确定所述被测语音信号对应的被测语音对象的身份,包括:确定所述多个候选语音信号对应的多个语音表征相似度中的最大语音表征相似度;判断所述最大语音表征相似度是否大于预设阈值,获得判断结果;基于所述判断结果,确定所述被测语音对象的身份。
14.可选地,所述基于所述判断结果,确定所述被测语音对象的身份,包括:在所述判断结果指示所述最大语音表征相似度大于所述预设阈值的情况下,确定所述被测语音对象为所述最大语音表征相似度对应的候选对象。
15.可选地,所述基于所述判断结果,确定所述被测语音对象的身份,包括:在所述判断结果指示所述最大语音表征相似度小于或者等于所述预设阈值的情况下,确定无法识别所述被测语音对象的身份。
16.根据本公开实施例的第三方面,提供一种语音对象识别模型的训练装置,所述语音对象识别模型包含语音提取器、语音表征提取器和身份判别器,所述训练装置包括:语音信号样本获取模块,被配置为获取多个语音对象中每个语音对象的第一语音信号样本、第二语音信号样本和重叠语音信号样本,其中,所述第一语音信号样本和所述第二语音信号
样本为该说话对象的内容不同的纯净语音信号样本,所述重叠语音信号样本为由至少一个语音对象的纯净语音信号样本重叠得到的语音信号样本,所述至少一个语音对象的纯净语音信号样本至少包含该语音对象的第二语音信号样本,所述第一语音信号样本对应有标识标签;语音信号样本提取模块,被配置为将每个语音对象的第一语音信号样本和重叠语音信号样本输入所述语音提取器,获得从每个语音对象的重叠语音信号样本中提取出的第三语音信号样本;语音表征提取模块,被配置为将每个语音对象对应的第三语音信号样本输入所述语音表征提取器,获得每个语音对象对应的语音表征;身份预测概率获取模块,被配置为将每个语音对象对应的语音表征输入所述身份判别器,获得每个语音对象对应的身份预测概率;计算模块,被配置为根据每个语音对象对应的第三语音信号样本、第二语音信号样本、身份预测概率以及标识标签,计算损失;调整模块,被配置为通过所述损失调整所述语音提取器、所述语音表征提取器和所述身份判别器的参数,从而对所述语音对象识别模型进行训练。
17.根据本公开实施例的第四方面,提供一种语音对象的识别装置,所述识别装置包括:被测语音信号获取模块,被配置为获取被测语音信号;针对多个候选语音信号中的每个候选语音信号执行以下操作:第一语音表征获取模块,被配置为将候选语音信号输入根据本公开的训练方法训练出的语音提取器和语音表征提取器,获得每个候选语音信号对应的第一语音表征,其中,所述多个候选语音信号为多个候选对象预先注册的语音信号;第二语音表征获取模块,被配置为将候选语音信号与所述被测语音信号输入所述语音提取器和所述语音表征提取器,获得每个候选语音信号对应的第二语音表征;语音表征相似度获取模块,被配置为获取每个候选语音信号对应的第一语音表征与第二语音表征之间的语音表征相似度;确定模块,被配置为根据每个候选语音信号对应的语音表征相似度,确定所述被测语音信号对应的被测语音对象的身份。
18.根据本公开实施例的第五方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现根据本公开的语音对象识别模型的训练方法以及语音对象的识别方法。
19.根据本公开实施例的第六方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行根据本公开的语音对象识别模型的训练方法以及语音对象的识别方法。
20.根据本公开实施例的第七方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据本公开的语音对象识别模型的训练方法以及语音对象的识别方法。
21.本公开的实施例提供的技术方案至少带来以下有益效果:
22.本公开的语音对象识别模型的训练方法,由于采用了大量的语音对象的纯净语音信号样本以及重叠语音信号样本对语音对象识别模型进行训练,因此,经过训练的语音对象识别模型可以从多个语音对象的语音信号中精准提取出指定语音对象的语音表征,在多个语音对象均输出语音时,可以保证辨认当前语音对象的身份的准确度;并且,本公开的语音对象的识别方法,可以在候选语音信号的帮助下,利用经过训练的语音提取器和语音表征提取器,从被测语音信号中提取潜在的候选语音信号对应的第二语音表征,进而可以根据候选语音信号对应的第一语音表征以及第二语音表征之间的语音表征相似度,确定被测
语音对象的身份。由于本公开的语音对象的识别方法可以从单个语音对象的语音信号或者多个语音对象的语音信号中提取出指定语音对象的语音表征,因此在多个语音对象均输出语音时,也可以精准辨认当前语音对象的身份。
23.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
24.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
25.图1是示出根据本公开的示例性实施例的一种语音对象识别模型的训练方法的流程图;
26.图2是示出根据本公开的示例性实施例的一种语音对象识别模型的训练阶段、测试阶段的示意图;
27.图3是示出根据本公开的示例性实施例的一种语音对象的识别方法的流程图;
28.图4是示出根据本公开的示例性实施例的一种语音对象识别模型的训练装置的框图;
29.图5是示出根据本公开的示例性实施例的一种语音对象的识别装置的框图;
30.图6是示出根据本公开的示例性实施例的一种电子设备的框图。
具体实施方式
31.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
32.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
33.在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括a和b之中的至少一个”即包括如下三种并列的情况:(1)包括a;(2)包括b;(3)包括a和b。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。
34.目前,与语音相关的技术在各个领域内得到了广泛的应用,与语音相关的技术可以包含语音识别、语音合成、声纹识别等等。然而,实际场景的拾音环境往往十分复杂,可能包含大量的噪声,例如,自然噪声、干扰人声等等,在进行语音对象身份识别时,上述这些噪声会对语音对象身份识别的过程造成干扰,导致语音对象身份识别的准确度的下降。
35.为了解决上述问题,相关技术中,在训练声纹识别系统时,往往会采用数据增广的训练方式,例如,加入噪声,混响等等。或者,是在声纹识别系统前端加一个语音增强的模
块,过滤掉测试语音中的噪声和混响等不利因素。但是,相关技术中的声纹识别系统仅仅对噪声或混响等非人声的音频环境有一定的效果,如果音频环境中出现了干扰人声,例如,存在多个人同时说话时,该声纹识别系统仍然难以正确识别当前说话人的身份。
36.为了解决相关技术中,在多个语音对象均输出语音时,通过语音识别来辨认当前语音对象的身份的准确度较低的问题,本公开的语音对象识别模型的训练方法,由于采用了大量的语音对象的纯净语音信号样本以及重叠语音信号样本对语音对象识别模型进行训练,因此,经过训练的语音对象识别模型可以从多个语音对象的语音信号中精准提取出指定语音对象的语音表征,在多个语音对象均输出语音时,可以保证辨认当前语音对象的身份的准确度;并且,本公开的语音对象的识别方法,可以在候选语音信号的帮助下,利用经过训练的语音提取器和语音表征提取器,从被测语音信号中提取潜在的候选语音信号对应的第二语音表征,进而可以根据候选语音信号对应的第一语音表征以及第二语音表征之间的语音表征相似度,确定被测语音对象的身份。由于本公开的语音对象的识别方法可以从单个语音对象的语音信号或者多个语音对象的语音信号中提取出指定语音对象的语音表征,因此在多个语音对象均输出语音时,也可以精准辨认当前语音对象的身份。
37.图1是示出根据本公开的示例性实施例的一种语音对象识别模型的训练方法的流程图,该语音对象识别模型可以包含语音提取器、语音表征提取器和身份判别器。
38.参照图1,在步骤101,可以获取多个语音对象中每个语音对象的第一语音信号样本x(t)、第二语音信号样本s(t)和重叠语音信号样本y(t)。其中,第一语音信号样本x(t)和第二语音信号样本s(t)为该语音对象的内容不同的纯净语音信号样本,即第一语音信号样本x(t)和第二语音信号样本s(t)为该语音对象的内容不同的信噪比(signal to noise ratio,snr)较高的语音信号样本。重叠语音信号样本y(t)可以为由至少一个语音对象的纯净语音信号样本重叠得到的语音信号样本,且至少一个语音对象的纯净语音信号样本至少包含该语音对象的第二语音信号样本s(t)。第一语音信号样本x(t)对应有标识标签label。此时,多个语音对象中的每个语音对象均可以对应一个数据对(x(t),y(t),s(t),label)。
39.进一步的,要求第一语音信号样本x(t)和第二语音信号样本s(t)为同一个语音对象的内容不同的语音信号样本的原因为:在后续利用经过训练的语音对象识别模型识别语音对象的身份时,需要把候选语音信号库中每个语音对象预先注册的候选语音信号和被测语音信号组成测试对,并基于组成的多个测试对确定被测语音信号对应的被测语音对象的身份。在实际的测试场景中,每个测试对所包含的候选对象的候选语音信号与该测试对所包含的被测语音信号中潜在的该候选对象的语音信号的内容是不同的。例如,一个公司的全体员工均可以预先注册各自的候选语音信号,而在该公司的员工进行线上会议的过程中,每个参会员工在会议过程中的发言内容与其预先注册的候选语音信号的内容一定是不同的。因此,在训练阶段,为了尽可能模拟真实的测试场景,可以设置用于训练的第一语音信号样本x(t)和第二语音信号样本s(t)为内容不同的语音信号样本,这样可以尽可能保证语音对象识别模型识别被测语音对象的身份的准确性。
40.需要说明的是,在语音对象识别模型的训练阶段,成千上万个语音对象的语音数据被用来训练一个语音提取器、一个语音表征提取器和一个身份判别器。该语音提取器、语音表征提取器和身份判别器都可以基于神经网络构建而成。
41.在步骤102,可以将每个语音对象的第一语音信号样本x(t)和重叠语音信号样本y
(t)输入语音提取器,获得从每个语音对象的重叠语音信号样本y(t)中提取出的第三语音信号样本s

(t),即通过语音提取器可以从至少一个语音对象的纯净语音信号样本重叠得到的语音信号样本中提取出潜在的每个语音对象的语音信号样本s

(t)。
42.根据本公开的示例性实施例,可以对每个语音对象的第一语音信号样本x(t)和重叠语音信号样本y(t)分别进行傅里叶变换,获得第一语音信号样本x(t)对应的第一傅里叶变换结果stft(x(t))以及重叠语音信号样本y(t)对应的第二傅里叶变换结果stft(y(t))。然后,可以将每个语音对象的第一傅里叶变换结果stft(x(t))以及第二傅里叶变换结果stft(y(t))输入语音提取器,获得每个语音对象的语音提取结果。接下来,可以对每个语音对象的语音提取结果进行逆傅立叶变换,获得从每个语音对象的重叠语音信号样本y(t)中提取出的第三语音信号样本s

(t)。
43.进一步的,语音提取器可以采用基于复数域特征的掩码估计技术,所构建的模型可以使用前向神经网络层和空洞卷积网络层。在某个语音对象的第一语音信号样本x(t)的帮助下,可以利用语音提取器从该语音对象的重叠语音信号样本y(t)中提取出该语音对象的潜在语音信号样本s

(t):
44.s

(t)=istft(f(stft(x(t)),stft(y(t))))
ꢀꢀꢀ
(1)
45.其中,f(
·
)表示上述前向神经网络层和空洞卷积网络层,stft表示短时傅里叶变换(short time fourier transform),istft表示逆傅立叶变换(invert short time fourier transform)。
46.需要说明的是,可以将第一语音信号样本x(t)通过短时傅里叶变换转到时频域。若长度为t的原始音频信号在时域上表示为x(t),其中t代表时间,0<t≤t,则经过短时傅里叶变换之后,x(t)在时频域可表示为:
47.s(n,k)=stft(x(t))
ꢀꢀꢀ
(2)
48.其中,n为帧序列,0<n≤n,n为总帧数;k为中心频率序列,0<k≤k,k为总频点数。即可以使用复数域的s(n,k)作为语音提取器的输入,它包括时频域的幅度值|s(n,k)|和相位值∠s(n,k)。
49.在步骤103,可以将每个语音对象对应的第三语音信号样本s

(t)输入语音表征提取器,获得每个语音对象对应的语音表征e。
50.根据本公开的示例性实施例,可以对每个语音对象对应的第三语音信号样本s

(t)进行傅里叶变换,获得第三傅里叶变换结果。即可以先将第三语音信号样本s

(t)通过短时傅里叶变换转到时频域,进而可以获得时频域的幅度值|stft(s

(t))|。然后,可以获取每个语音对象的第三傅里叶变换结果对应的梅尔倒谱特征。即可以基于时频域的幅度值|stft(s

(t))|,得到梅尔域的梅尔倒谱特征m(n,l),l为特征维度。
51.m(n,l)=mel(|stft(s

(t))|)
ꢀꢀꢀ
(3)
52.接下来,可以将每个语音对象对应的梅尔倒谱特征输入语音表征提取器,获得帧级别的特征。即可以使用五层时延网络g(
·
)来处理基于帧的梅尔倒谱特征m(n,l),得到帧级别的特征r(n,i),i为该层神经网络的节点数。
53.r(n,i)=g(mel(|stft(s

(t))|))
ꢀꢀꢀ
(4)
54.然后,可以对每个语音对象对应的帧级别的特征进行统计特性池化,获得每个语音对象对应的语音表征。即在得到了帧级别的特征r(n,i)之后,可以对帧级别的特征r(n,
i)进行统计特性池化(statistic pooling),得到句子级别的该句话语音对象的语音表征e,该句子级别的语音对象的语音表征e可以为一个向量:
55.e=statistic pooing(r(n,i))
ꢀꢀꢀ
(5)
56.在步骤104,可以将每个语音对象对应的语音表征e输入身份判别器,获得每个语音对象对应的身份预测概率。例如,可以使用两层前向网络来转换语音对象对应的语音表征e,并预测该语音表征e属于训练数据中所有语音对象中每个语音对象的身份预测概率。
57.参照图2,图2是示出根据本公开的示例性实施例的一种语音对象识别模型的训练阶段、测试阶段的示意图。在图2中的训练阶段,可以将每个语音对象的第一语音信号样本x(t)和重叠语音信号样本y(t)作为语音提取器的输入,此时,语音提取器的输出即为从该语音对象的重叠语音信号样本y(t)中提取出的潜在的该语音对象的第三语音信号样本s

(t)。接下来,可以将第三语音信号样本s

(t)作为语音表征提取器的输入,进而语音表征提取器可以输出该语音对象对应的语音表征e。最后,可以将该语音对象对应的语音表征e作为身份判别器的输入,获得该语音对象对应的身份预测概率,即可以获得将该语音对象预测为语音对象1、语音对象2,
……
,语音对象m中每个语音对象的身份预测概率。
58.在步骤105,可以根据每个语音对象对应的第三语音信号样本s

(t)、第二语音信号样本s(t)、身份预测概率以及标识标签,计算损失。
59.根据本公开的示例性实施例,语音提取器需要尽可能提升提取出的潜在语音对象的语音信号的snr,语音表征提取器需要尽可能提升语音对象的分类准确率,因此,可以采取联合训练的方式,把语音提取器对应的损失函数和语音表征提取器对应的损失函数进行加权求和作为实际训练时使用的损失函数。例如,可以根据每个语音对象对应的第三语音信号样本s

(t)以及第二语音信号样本s(t),计算第一损失j1;可以根据每个语音对象对应的身份预测概率以及标识标签,计算第二损失j2。接下来,可以对第一损失j1和第二损失j2进行加权求和,获得实际训练时的损失j:
60.j=j1+α*j2ꢀꢀꢀ
(6)
61.其中,α为权重,示例性的,α可以为10。
62.根据本公开的示例性实施例,第一损失j1可以通过尺度不变的信号对失真比(scale-invariant signal to distortion ratio,sisdr)损失函数计算得到:
[0063][0064]
根据本公开的示例性实施例,第二损失j2可以通过交叉熵损失函数计算得到:
[0065][0066]
其中,c是训练数据中总的语音对象的个数,当该语音片段的语音表征e由语音对象c输出时,pc等于1,否则,pc=0,p(c|e)是身份判别器将该语音片段的语音表征e预测为由语音对象c输出的身份预测概率。
[0067]
在步骤106,可以通过损失调整语音提取器、语音表征提取器和身份判别器的参数,从而对语音对象识别模型进行训练。
[0068]
参照图3,图3是示出根据本公开的示例性实施例的一种语音对象的识别方法的流
程图。
[0069]
参照图3,在步骤301,可以获取被测语音信号z(t)。其中,被测语音信号z(t)可能为一个语音对象的语音信号,也可能为多个语音对象的语音信号。
[0070]
需要说明的是,多个候选对象中的每个候选对象需要预先注册一个候选语音信号,得到一个所有候选对象的候选语音信号库a1(t),a2(t),

,an(t)。当获取到被测语音信号z(t)之后,可以把候选语音信号库中每个候选对象预先注册的候选语音信号a1(t),a2(t),

,an(t)和被测语音信号z(t)组成测试对:(a1(t),z(t)),(a2(t),z(t)),

,(an(t),z(t))。
[0071]
针对多个候选语音信号中的每个候选语音信号可以执行以下操作:
[0072]
在步骤302,可以将每个候选语音信号输入经图1中的训练方法训练出的语音提取器和语音表征提取器,获得该候选语音信号对应的第一语音表征er。
[0073]
在步骤303,可以将每个候选语音信号与被测语音信号z(t)输入语音提取器和语音表征提取器,获得该候选语音信号对应的第二语音表征e
t

[0074]
例如,参照图2,在图2中的测试阶段,可以将候选对象1预先注册的候选语音信号a1(t)输入语音提取器,获得s

1r
(t),其中,s

1r
(t)可以利用以下公式得到:
[0075]s′
1r
(t)=istft(f(stft(a1(t)),stft(a1(t))))
ꢀꢀꢀ
(9)
[0076]
然后,可以将s

1r
(t)输入语音表征提取器,获得该候选语音信号a1(t)对应的第一语音表征
[0077]
还可以将候选对象1预先注册的候选语音信号a1(t)与被测语音信号z(t)输入语音提取器,获得从被测语音信号z(t)中提取出的候选对象1的潜在语音信号s

1t
(t),其中,s

1t
(t)可以利用以下公式得到:
[0078]s′
1t
(t)=istft(f(stft(a1(t)),stft(z(t))))
ꢀꢀꢀ
(10)
[0079]
然后,可以将s

1t
(t)输入语音表征提取器,获得该候选语音信号a1(t)对应的第二语音表征此时,即获得测试对(a1(t),z(t))对应的语音表征对类似的,还可以获得测试对(a2(t),z(t))对应的(s

2r
(t),s

2t
(t)),并利用(s

2r
(t),s

2t
(t))获得语音表征对可以获得测试对(an(t),z(t))对应的(s

nr
(t),s

nt
(t)),并利用(s

nr
(t),s

nt
(t))获得语音表征对等等。
[0080]
在步骤304,可以获取每个候选语音信号对应的第一语音表征er与第二语音表征e
t
之间的语音表征相似度。例如,可以获取候选语音信号a1(t)对应的第一语音表征与第二语音表征之间的语音表征相似度;可以获取候选语音信号a2(t)对应的第一语音表征与第二语音表征之间的语音表征相似度;可以获取候选语音信号an(t)对应的第一语音表征与第二语音表征之间的语音表征相似度等等。
[0081]
需要说明的是,可以通过余弦相似度(cosine similarity)或者概率线性判别分析(probability linear discriminant analysis,plda)计算得到每个语音表征对所包含的第一语音表征er与第二语音表征e
t
之间的语音表征相似度。
[0082]
在步骤305,可以根据每个候选语音信号对应的语音表征相似度,确定被测语音信
号z(t)对应的被测语音对象的身份。
[0083]
根据本公开的示例性实施例,可以确定多个候选语音信号对应的多个语音表征相似度中的最大语音表征相似度。然后,可以判断该最大语音表征相似度是否大于预设阈值,获得判断结果。接下来,可以基于判断结果,确定被测语音对象的身份。
[0084]
根据本公开的示例性实施例,在判断结果指示上述最大语音表征相似度大于预设阈值的情况下,可以确定被测语音对象为最大语音表征相似度对应的候选对象。
[0085]
根据本公开的示例性实施例,在判断结果指示上述最大语音表征相似度小于或者等于预设阈值的情况下,可以确定无法识别被测语音对象的身份。
[0086]
图4是示出根据本公开的示例性实施例的一种语音对象识别模型的训练装置的框图,该语音对象识别模型包含语音提取器、语音表征提取器和身份判别器。
[0087]
参照图4,该装置400可包括语音信号样本获取模块401、语音信号样本提取模块402、语音表征提取模块403、身份预测概率获取模块404、计算模块405和调整模块406。
[0088]
语音信号样本获取模块401可以获取多个语音对象中每个语音对象的第一语音信号样本x(t)、第二语音信号样本s(t)和重叠语音信号样本y(t)。其中,第一语音信号样本x(t)和第二语音信号样本s(t)为该语音对象的内容不同的纯净语音信号样本,即第一语音信号样本x(t)和第二语音信号样本s(t)为该语音对象的内容不同的信噪比(signal to noise ratio,snr)较高的语音信号样本。重叠语音信号样本y(t)可以为由至少一个语音对象的纯净语音信号样本重叠得到的语音信号样本,且至少一个语音对象的纯净语音信号样本至少包含该语音对象的第二语音信号样本s(t)。第一语音信号样本x(t)对应有标识标签label。此时,多个语音对象中的每个语音对象均可以对应一个数据对(x(t),y(t),s(t),label)。
[0089]
进一步的,要求第一语音信号样本x(t)和第二语音信号样本s(t)为同一个语音对象的内容不同的语音信号样本的原因为:在后续利用经过训练的语音对象识别模型识别语音对象的身份时,需要把候选语音信号库中每个语音对象预先注册的候选语音信号和被测语音信号组成测试对,并基于组成的多个测试对确定被测语音信号对应的被测语音对象的身份。在实际的测试场景中,每个测试对所包含的候选对象的候选语音信号与该测试对所包含的被测语音信号中潜在的该候选对象的语音信号的内容是不同的。例如,一个公司的全体员工均可以预先注册各自的候选语音信号,而在该公司的员工进行线上会议的过程中,每个参会员工在会议过程中的发言内容与其预先注册的候选语音信号的内容一定是不同的。因此,在训练阶段,为了尽可能模拟真实的测试场景,可以设置用于训练的第一语音信号样本x(t)和第二语音信号样本s(t)为内容不同的语音信号样本,这样可以尽可能保证语音对象识别模型识别被测语音对象的身份的准确性。
[0090]
需要说明的是,在语音对象识别模型的训练阶段,成千上万个语音对象的语音数据被用来训练一个语音提取器、一个语音表征提取器和一个身份判别器。该语音提取器、语音表征提取器和身份判别器都可以基于神经网络构建而成。
[0091]
语音信号样本提取模块402可以将每个语音对象的第一语音信号样本x(t)和重叠语音信号样本y(t)输入语音提取器,获得从每个语音对象的重叠语音信号样本y(t)中提取出的第三语音信号样本s

(t),即通过语音提取器可以从至少一个语音对象的纯净语音信号样本重叠得到的语音信号样本中提取出潜在的每个语音对象的语音信号样本s

(t)。
[0092]
根据本公开的示例性实施例,语音信号样本提取模块402可以对每个语音对象的第一语音信号样本x(t)和重叠语音信号样本y(t)分别进行傅里叶变换,获得第一语音信号样本x(t)对应的第一傅里叶变换结果stft(x(t))以及重叠语音信号样本y(t)对应的第二傅里叶变换结果stft(y(t))。然后,可以将每个语音对象的第一傅里叶变换结果stft(x(t))以及第二傅里叶变换结果stft(y(t))输入语音提取器,获得每个语音对象的语音提取结果。接下来,可以对每个语音对象的语音提取结果进行逆傅立叶变换,获得从每个语音对象的重叠语音信号样本y(t)中提取出的第三语音信号样本s

(t)。
[0093]
语音表征提取模块403可以将每个语音对象对应的第三语音信号样本s

(t)输入语音表征提取器,获得每个语音对象对应的语音表征e。
[0094]
根据本公开的示例性实施例,语音表征提取模块403可以对每个语音对象对应的第三语音信号样本s

(t)进行傅里叶变换,获得第三傅里叶变换结果。然后,可以获取每个语音对象的第三傅里叶变换结果对应的梅尔倒谱特征。接下来,可以将每个语音对象对应的梅尔倒谱特征输入语音表征提取器,获得帧级别的特征。然后,可以对每个语音对象对应的帧级别的特征进行统计特性池化,获得每个语音对象对应的语音表征e。
[0095]
身份预测概率获取模块404可以将每个语音对象对应的语音表征e输入身份判别器,获得每个语音对象对应的身份预测概率。例如,可以使用两层前向网络来转换语音对象对应的语音表征e,并预测该语音表征e属于训练数据中所有语音对象中每个语音对象的身份预测概率。
[0096]
返回参照图2,在图2中的训练阶段,可以将每个语音对象的第一语音信号样本x(t)和重叠语音信号样本y(t)作为语音提取器的输入,此时,语音提取器的输出即为从该语音对象的重叠语音信号样本y(t)中提取出的潜在的该语音对象的第三语音信号样本s

(t)。接下来,可以将第三语音信号样本s

(t)作为语音表征提取器的输入,进而语音表征提取器可以输出该语音对象对应的语音表征e。最后,可以将该语音对象对应的语音表征e作为身份判别器的输入,获得该语音对象对应的身份预测概率,即可以获得将该语音对象预测为语音对象1、语音对象2,
……
,语音对象m中每个语音对象的身份预测概率。
[0097]
计算模块405可以根据每个语音对象对应的第三语音信号样本s

(t)、第二语音信号样本s(t)、身份预测概率以及标识标签,计算损失。
[0098]
根据本公开的示例性实施例,语音提取器需要尽可能提升提取出的潜在语音对象的语音信号的snr,语音表征提取器需要尽可能提升语音对象的分类准确率,因此,可以采取联合训练的方式,把语音提取器对应的损失函数和语音表征提取器对应的损失函数进行加权求和作为实际训练时使用的损失函数。例如,计算模块405可以根据每个语音对象对应的第三语音信号样本s

(t)以及第二语音信号样本s(t),计算第一损失j1;计算模块405可以根据每个语音对象对应的身份预测概率以及标识标签,计算第二损失j2。接下来,计算模块405可以对第一损失j1和第二损失j2进行加权求和,获得实际训练时的损失j:
[0099]
j=j1+α*j2[0100]
其中,α为权重,示例性的,α可以为10。
[0101]
根据本公开的示例性实施例,第一损失j1可以通过尺度不变的信号对失真比sisdr损失函数计算得到。
[0102]
根据本公开的示例性实施例,第二损失j2可以通过交叉熵损失函数计算得到。
[0103]
调整模块406可以通过损失调整语音提取器、语音表征提取器和身份判别器的参数,从而对语音对象识别模型进行训练。
[0104]
图5是示出根据本公开的示例性实施例的一种语音对象的识别装置的框图。
[0105]
参照图5,该装置500可包括被测语音信号获取模块501,第一语音表征获取模块502、第二语音表征获取模块503、语音表征相似度获取模块504和确定模块505。
[0106]
被测语音信号获取模块501可以获取被测语音信号z(t)。其中,被测语音信号z(t)可能为一个语音对象的语音信号,也可能为多个语音对象的语音信号。
[0107]
需要说明的是,多个候选对象中的每个候选对象需要预先注册一个候选语音信号,得到一个所有候选对象的候选语音信号库a1(t),a2(t),

,an(t)。当获取到被测语音信号z(t)之后,可以把候选语音信号库中每个候选对象预先注册的候选语音信号a1(t),a2(t),

,an(t)和被测语音信号z(t)组成测试对:(a1(t),z(t)),(a2(t),z(t)),

,(an(t),z(t))。
[0108]
针对多个候选语音信号中的每个候选语音信号可以执行以下操作:
[0109]
第一语音表征获取模块502可以将每个候选语音信号输入经图1中的训练方法训练出的语音提取器和语音表征提取器,获得该候选语音信号对应的第一语音表征er。
[0110]
第二语音表征获取模块503可以将每个候选语音信号与被测语音信号z(t)输入语音提取器和语音表征提取器,获得该候选语音信号对应的第二语音表征e
t

[0111]
返回参照图2,在图2中的测试阶段,可以将候选对象1预先注册的候选语音信号a1(t)输入语音提取器,获得s

1r
(t)。然后,可以将s

1r
(t)输入语音表征提取器,获得该候选语音信号a1(t)对应的第一语音表征
[0112]
还可以将候选对象1预先注册的候选语音信号a1(t)与被测语音信号z(t)输入语音提取器,获得从被测语音信号z(t)中提取出的候选对象1的潜在语音信号s

1t
(t)。然后,可以将s

1t
(t)输入语音表征提取器,获得该候选语音信号a1(t)对应的第二语音表征此时,即获得测试对(a1(t),z(t))对应的语音表征对类似的,还可以获得测试对(a2(t),z(t))对应的(s

2r
(t),s

2t
(t)),并利用(s

2r
(t),s

2t
(t))获得语音表征对可以获得测试对(an(t),z(t))对应的(s

nr
(t),s

nt
(t)),并利用(s

nr
(t),s

nt
(t))获得语音表征对等等。
[0113]
语音表征相似度获取模块504可以获取每个候选语音信号对应的第一语音表征er与第二语音表征e
t
之间的语音表征相似度。例如,可以获取候选语音信号a1(t)对应的第一语音表征与第二语音表征之间的语音表征相似度;可以获取候选语音信号a2(t)对应的第一语音表征与第二语音表征之间的语音表征相似度;可以获取候选语音信号an(t)对应的第一语音表征与第二语音表征之间的语音表征相似度等等。
[0114]
需要说明的是,可以通过余弦相似度(cosine similarity)或者概率线性判别分析plda计算得到每个语音表征对所包含的第一语音表征er与第二语音表征e
t
之间的语音表征相似度。
[0115]
确定模块505可以根据每个候选语音信号对应的语音表征相似度,确定被测语音
信号z(t)对应的被测语音对象的身份。
[0116]
根据本公开的示例性实施例,确定模块505可以确定多个候选语音信号对应的多个语音表征相似度中的最大语音表征相似度。然后,可以判断该最大语音表征相似度是否大于预设阈值,获得判断结果。接下来,可以基于判断结果,确定被测语音对象的身份。
[0117]
根据本公开的示例性实施例,在判断结果指示上述最大语音表征相似度大于预设阈值的情况下,确定模块505可以确定被测语音对象为最大语音表征相似度对应的候选对象。
[0118]
根据本公开的示例性实施例,在判断结果指示上述最大语音表征相似度小于或者等于预设阈值的情况下,确定模块505可以确定无法识别被测语音对象的身份。
[0119]
图6是示出根据本公开的示例性实施例的一种电子设备600的框图。
[0120]
参照图6,电子设备600包括至少一个存储器601和至少一个处理器602,所述至少一个存储器601中存储有指令,当指令被至少一个处理器602执行时,执行根据本公开的示例性实施例的语音对象识别模型的训练方法以及语音对象的识别方法。
[0121]
作为示例,电子设备600可以是pc计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令的装置。这里,电子设备600并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备600还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
[0122]
在电子设备600中,处理器602可包括中央处理器(cpu)、图形处理器(gpu)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
[0123]
处理器602可运行存储在存储器601中的指令或代码,其中,存储器601还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。
[0124]
存储器601可与处理器602集成为一体,例如,将ram或闪存布置在集成电路微处理器等之内。此外,存储器601可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储器601和处理器602可在操作上进行耦合,或者可例如通过i/o端口、网络连接等互相通信,使得处理器602能够读取存储在存储器中的文件。
[0125]
此外,电子设备600还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备600的所有组件可经由总线和/或网络而彼此连接。
[0126]
根据本公开的示例性实施例,还可提供一种计算机可读存储介质,当计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行根据本公开的语音对象识别模型的训练方法以及语音对象的识别方法。这里的计算机可读存储介质的示例包括:只读存储器(rom)、随机存取可编程只读存储器(prom)、电可擦除可编程只读存储器(eeprom)、随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、闪存、非易失性存储器、cd-rom、cd-r、cd+r、cd-rw、cd+rw、dvd-rom、dvd-r、dvd+r、dvd-rw、dvd+rw、dvd-ram、bd-rom、bd-r、bd-r lth、bd-re、蓝光或光盘存储器、硬盘驱动器(hdd)、固态硬盘(ssd)、卡式存储器(诸如,多媒体卡、安全数字(sd)卡或极速数字(xd)卡)、
磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
[0127]
根据本公开的示例性实施例,还可提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据本公开的语音对象识别模型的训练方法以及语音对象的识别方法。
[0128]
根据本公开的语音对象识别模型的训练方法、识别方法和装置,由于采用了大量的语音对象的纯净语音信号样本以及重叠语音信号样本对语音对象识别模型进行训练,因此,经过训练的语音对象识别模型可以从多个语音对象的语音信号中精准提取出指定语音对象的语音表征,在多个语音对象均输出语音时,可以保证辨认当前语音对象的身份的准确度;并且,本公开的语音对象的识别方法,可以在候选语音信号的帮助下,利用经过训练的语音提取器和语音表征提取器,从被测语音信号中提取潜在的候选语音信号对应的第二语音表征,进而可以根据候选语音信号对应的第一语音表征以及第二语音表征之间的语音表征相似度,确定被测语音对象的身份。由于本公开的语音对象的识别方法可以从单个语音对象的语音信号或者多个语音对象的语音信号中提取出指定语音对象的语音表征,因此在多个语音对象均输出语音时,也可以精准辨认当前语音对象的身份。
[0129]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0130]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1