首页 > 乐器声学 专利正文
语音增强的制作方法

时间:2022-02-13 阅读: 作者:专利查询

语音增强的制作方法
语音增强


背景技术:

1.在语音录制或语音通信中,语音通常会被环境中的噪声干扰。也即,所录制或传输的音频信号将包括语音和噪声两者。语音增强旨在将受噪声干扰的语音恢复为纯净的语音。诸如视频处理、音频处理、视频会议、基于互联网协议的语音传输(voip)、语音识别、助听器的许多领域对语音增强技术具有需求。现有的语音增强方法根据其工作的信号域可以分为时间-频率(t-f)域(以下简称为时频域)方法和时域方法。


技术实现要素:

2.根据本公开的实现,提出了一种用于语音增强的方案。在该方案中,至少指示输入音频信号在不同频率上随时间变化的强度的目标时频表示被获得。输入音频信号包括语音分量和噪声分量。输入音频信号的频率相关性信息和时间相关性信息基于目标时频表示被确定。目标特征表示基于频率相关性信息、时间相关性信息和目标时频表示被生成。目标特征表示用于区分语音分量和噪声分量。输出音频信号基于目标特征表示和目标时频表示被生成。在输出音频信号中,语音分量相对于噪声分量被增强。该方案可以充分利用音频信号在时域和频域上的相关性信息。以此方式,能够提高语音增强的性能,这有助于获得完全纯净的语音。
3.提供发明内容部分是为了以简化的形式来介绍对概念的选择,其在下文的具体实施方式中将被进一步描述。发明内容部分无意标识要求保护的主题的关键特征或主要特征,也无意限制要求保护的主题的范围。
附图说明
4.图1示出了能够实施本公开的多个实现的计算设备的框图;
5.图2示出了根据本公开的实现的用于语音增强的系统的架构图;
6.图3示出了根据本公开的一些实现的相关性单元的框图;
7.图4示出了根据本公开的一些实现的注意力块的框图;
8.图5示出了根据本公开的一些实现的数据流的变化的框图;
9.图6示出了根据本公开的一些实现的生成特征表示的框图;以及
10.图7示出了根据本公开的实现的用于语音增强的方法的流程图。
11.这些附图中,相同或相似参考符号用于表示相同或相似元素。
具体实施方式
12.现在将参照若干示例实现来论述本公开。应当理解,论述了这些实现仅是为了使得本领域普通技术人员能够更好地理解且因此实现本公开,而不是暗示对本公开的范围的任何限制。
13.如本文所使用的,术语“包括”及其变体要被解读为意味着“包括但不限于”的开放式术语。术语“基于”要被解读为“至少部分地基于”。术语“一个实现”和“一种实现”要被解
读为“至少一个实现”。术语“另一个实现”要被解读为“至少一个其他实现”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
14.如本文所使用的,“神经网络”能够处理输入并且提供相应输出,其通常包括输入层和输出层以及在输入层与输出层之间的一个或多个隐藏层。在深度学习应用中使用的神经网络通常包括许多隐藏层,从而延长网络的深度。神经网络的各个层按顺序相连,从而前一层的输出被提供作为后一层的输入,其中输入层接收神经网络的输入,而输出层的输出作为神经网络的最终输出。神经网络的每个层包括一个或多个节点(也称为处理节点或神经元),每个节点处理来自上一层的输入。在本文中,术语“神经网络”、“网络”和“神经网络模型”可替换地使用。
15.如本文所使用的,“语音增强”指代如下的任务,该任务旨在将受噪声干扰的语音恢复为纯净的语音。“语音增强”可以通过提高语音信号本身的质量、消除或降低噪声信号及其组合来实现。因此,在本文中,诸如“语音相对于噪声被增强”等类似表述可以是指噪声被消除或降低。
16.示例环境
17.图1示出了能够实施本公开的多个实现的计算设备100的框图。应当理解,图1所示出的计算设备100仅仅是示例性的,而不应当构成对本公开所描述的实现的功能和范围的任何限制。如图1所示,计算设备100包括通用计算设备形式的计算设备100。计算设备100的组件可以包括但不限于一个或多个处理器或处理单元110、存储器120、存储设备130、一个或多个通信单元140、一个或多个输入设备150以及一个或多个输出设备160。
18.在一些实现中,计算设备100可以被实现为具有计算能力的各种用户终端或服务终端。服务终端可以是各种服务提供方提供的服务器、大型计算设备等。用户终端诸如是任意类型的移动终端、固定终端或便携式终端,包括移动手机、站点、单元、设备、多媒体计算机、多媒体平板、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、个人通信系统(pcs)设备、个人导航设备、个人数字助理(pda)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者其任意组合,包括这些设备的配件和外设或者其任意组合。还可预见到的是,计算设备100能够支持任意类型的针对用户的接口(诸如“可佩戴”电路等)。
19.处理单元110可以是实际或虚拟处理器并且能够根据存储器120中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高计算设备100的并行处理能力。处理单元110也可以被称为中央处理单元(cpu)、微处理器、控制器、微控制器。
20.计算设备100通常包括多个计算机存储介质。这样的介质可以是计算设备100可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器120可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(ram))、非易失性存储器(例如,只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、闪存)或其某种组合。存储器120可以包括音频处理模块122,这些程序模块被配置为执行本文所描述的各种实现的功能。音频处理模块122可以由处理单元110访问和运行,以实现相应功能。
21.存储设备130可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,其能够用于存储信息和/或数据并且可以在计算设备100内被访问。计算设备100可以进一步包
括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图1中示出,可以提供用于从可拆卸、非易失性磁盘进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。
22.通信单元140实现通过通信介质与另外的计算设备进行通信。附加地,计算设备100的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,计算设备100可以使用与一个或多个其他服务器、个人计算机(pc)或者另一个一般网络节点的逻辑连接来在联网环境中进行操作。
23.输入设备150可以是一个或多个各种输入设备,例如鼠标、键盘、追踪球、语音输入设备等。输出设备160可以是一个或多个输出设备,例如显示器、扬声器、打印机等。计算设备100还可以根据需要通过通信单元140与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与计算设备100交互的设备进行通信,或者与使得计算设备100与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(i/o)接口(未示出)来执行。
24.在一些实现中,除了被集成在单个设备上之外,计算设备100的各个部件中的一些或所有部件还可以以云计算架构的形式被设置。在云计算架构中,这些部件可以被远程布置,并且可以一起工作以实现本公开所描述的功能。在一些实现中,云计算提供计算、软件、数据访问和存储服务,它们不需要终端用户知晓提供这些服务的系统或硬件的物理位置或配置。在各种实现中,云计算使用适当的协议通过广域网(诸如因特网)提供服务。例如,云计算提供商通过广域网提供应用,并且它们可以通过web浏览器或任何其他计算组件被访问。云计算架构的软件或组件以及相应的数据可以被存储在远程位置处的服务器上。云计算环境中的计算资源可以在远程数据中心位置处被合并或者它们可以被分散。云计算基础设施可以通过共享数据中心提供服务,即使它们表现为针对用户的单一访问点。因此,可以使用云计算架构从远程位置处的服务提供商提供本文所描述的组件和功能。备选地,它们也可以从常规服务器被提供,或者它们可以直接或以其他方式被安装在客户端设备上。
25.计算设备100可以用于实施本公开的多种实现中的语音增强。如图1所示,计算设备100可以通过输入设备150接收输入音频信号170,其包括语音分量171和噪声分量172。输入音频信号170也称为待处理音频信号。如图所示,输入音频信号170呈现为时域上的波形。在一些实现中,输入音频信号170可以是预先录制并存储的一段音频信号,例如音频文件的一部分。这种实现在本文中也被称为离线实现。在另一些实现中,输入音频信号170可以是实时生成的一段音频信号,例如在视频会议中实时产生的音频数据。
26.计算设备100可以实施本文中描述的用于语音增强的方案,来生成输出音频信号180。在输出音频信号180中,语音分量171相对于噪声分量172被增强。在图1的示例中,仅保留了语音分量171,噪声分量172被消除。
27.如上文所提及的,现有的语音增强方法包括时频域方法和时域方法。时域方法使用编码器-解码器架构直接对包括语音分量和噪声分量的、时域上的波形进行建模,并对编码器的输出执行语音分量和噪声分量的分离。
28.时频域方法基于二维的语谱图(spectrogram)。在典型的时频域方法中,使用短时傅里叶变换(stft)将原始的音频信号转换成语谱图。然后,由分离网络预测t-f掩码,并且
该t-f掩码被应用于语谱图以生成输出语谱图。最后,输出语谱图通过逆stft(istft)被转换成时域上的音频信号,即时域上的波形。与时域方法相比,时频域方法可以受益于语谱图中丰富的听觉模式(pattern)信息。
29.在一些传统的时频域方案中,在分离网络的前端使用频率变换块(ftb)来捕获频域上的谐波相关性。在分离网络的较后部分,使用双向长短期记忆网络(bi-lstm)来捕获时间相关性。在另一些传统的时频域方案中,语谱图被处理为时间序列,并且采用变换器模型来捕获长程的时间相关性。
30.本技术的发明人意识到,语音分量在频域上的相关性(也称为频率相关性)不同于噪声分量在频域上的相关性。同样地,语音分量在时域上的相关性(也称为时间相关性)也不同于噪声分量在频域上的相关性。因此,频域和时域上的相关性对去噪性能是重要的。然而,在上述传统方案中,频域和时域上的相关性是分开考虑和学习的。这两种类型的相关性的分离导致不能充分融合时域和频域上的信息,这有碍于语音增强性能的提升。
31.以上讨论了在目前的语音增强方案中存在的一些问题。根据本公开的实现,提供了一种用于语音增强的方案,旨在解决上述问题以及其他潜在问题中的一个或多个。在该方案中,获得包括语音分量和噪声分量的输入音频信号的时频表示(例如,语谱图)。基于该时频表示,根据注意力机制,来确定输入音频信号的频率相关性信息和时间相关性信息。然后,基于时间相关性信息、频率相关性信息和时频表示,生成用于区分语音分量和噪声分量的目标特征表示。基于目标特征表示和时频表示,生成输出音频信号。在输出音频信号中,语音分量相对于噪声分量被增强。在此提出的语音增强方案可以充分利用音频信号在时域和频域上的相关性信息。以此方式,能够提高语音增强的性能,这有助于获得完全纯净的语音。
32.以下进一步结合附图来详细描述该方案的各种示例实现
33.系统架构
34.图2示出了根据本公开的实现的用于语音增强的系统200的架构图。系统200可以被实现在图1的计算设备100中。例如,在一些实现中,系统200可以被实现为图1的计算设备100的音频处理模块122的至少一部分,也即,被实现为计算机程序模块。如图2所示,系统200总体上可以包括分离网络250和解码器240。分离网络250可以包括至少一个相关性单元。图2示出了串联的相关性单元220-1、220-2
……
220-n(统称为或单独称为“相关性单元220”,其中n≥1)。应当理解,仅出于示例性的目的描述系统200的结构和功能而不是暗示对于本公开的范围的任何限制。本公开的实现也可以被实施在不同的结构和/或功能中。
35.如图2所示,首先获得时频表示201,其在本文中也被称为“目标时频表示”。时频表示201至少指示输入音频信号170在不同频率上随时间变化的强度。在图2中,以语谱图形式示出了时频表示201的一个示例。在一些实现中,系统200可以直接获得时频表示201,而无需处理输入音频信号170。
36.在一些实现中,系统200可以处理输入音频信号170以生成时频表示201的至少一部分。尽管未示出,系统200可以利用stft生成输入音频信号170的时频表示。在一些实现中,例如在上文所提及的离线实现中,输入音频信号170可以是预先捕获的具有预定长度(例如,3秒)的一段音频信号。在这种实现中,输入音频信号170的时频表示即是时频表示201。
37.在一些实现中,例如在上文提及的在线实现中,输入音频信号170可以是实时生成的音频信号。在这种实现中,为了满足实时性要求,输入音频信号170的时长通常较短,例如仅几十毫秒。同时为了获得高质量的语音增强,需要利用音频信号在较长时间上的相关性。因此,在这种实现中,除了输入音频信号170的时频表示(在本文中也称为“第二时频表示”),时频表示201可以还包括已处理音频信号的时频表示(在本文中也称为“第一时频表示”)。也即,时频表示201是第一时频表示和第二时频表示的组合。
38.已处理音频信号可以发生在输入音频信号170之前,例如时间上紧接在输入音频信号170之前。输入音频信号170和已处理音频信号可以具有预定的总长度。应当理解,以上所提及的时间长度仅是示意性的,而无意限制本公开的范围。
39.复数取值的时频表示201可以由表示,其中t表示时域上的时段的数目,f表示频域上的频段的数目。如图2所示,时频表示201被输入到分离网络250。
40.在一些实现中,分离网络250可以包括一个或多个卷积层210,例如1
×
7卷积层和7
×
1卷积层。在本文中,“m
×
n卷积层”是指卷积核大小为m
×
n的卷积层。时频表示201被馈送到该一个或多个卷积层210,以生成特征表示其中c表示通道数目。在另一些实现中,分离网络250也可以不包括一个或多个卷积层210。时频表示201可以被直接输入到相关性单元220-1。
41.相关性单元220-1可以基于时频表示201或特征表示s0,生成特征表示s1。其他的相关性单元220-2至220-n可以基于前一相关性单元输出的特征表示,生成新的特征表示。总体上,由第i个相关性单元220生成的特征表示可以由s
i
表示,其中i∈{1,2,...,n}。在一些实现中,例如在离线实现中,特征表示s
i
可以具有与特征表示s0相同的维度,即,在另一些实现中,例如在在线实现中,特征表示s
i
可以在时间维度上小于特征表示s0,例如将在下文参考图5描述。
42.一个或多个相关性单元220可以利用音频信号的频率相关性和时间相关性来生成特征表示s
i
。在一些实现中,可以在每个相关性单元220中均同时利用频率相关性和时间相关性。在一些实现中,可以在至少一个相关性单元中同时利用频率相关性和时间相关性,并且在其他的相关性单元中仅利用频率相关性。例如,可以至少在第一个相关性单元220-1中同时利用频率相关性和时间相关性,并且在其他的相关性单元220-2至220-n中仅利用频率相关性。
43.在本文中,由前(n-1)个相关性单元生成的特征表示s1、s2......s
n-1
也称为“中间特征表示”,并且由最后一个相关性单元220-n生成的特征表示s
n
也被称为“目标特征表示”。中间特征表示和目标特征表示用于区分语音分量和噪声分量。
44.由最后一个相关性单元220-n生成的特征表示s
n
被馈送到掩码生成层230。掩码生成层230基于特征表示s
n
生成掩码m∈t
×
f
×
c
m
,其中c
m
是通道的数目。作为示例,掩码生成层可以是头层(head layer),其可以被实现为1
×
1的卷积层并且c
m
=2。
45.如图2所示,分离网络250生成掩码m作为输出。然后,可以通过将掩码m应用于时频表示201的至少一部分来确定经掩码的时频表示s
out
。可以理解的是,在经掩码的时频表示s
out
中,语音分量相对应噪声分量被增强。因此,经掩码的时频表示s
out
也可以被称为增强的时频表示。
46.在一些实现中,例如在离线实现中,掩码m可以被应用于完整的时频表示201。作为
示例,如果掩码生成层230被实现为1
×
1的卷积层并且c
m
=2,则可以根据下式来确定经掩码的时频表示s
out

47.s
out
=f(m)

g(s
in
)
ꢀꢀꢀ
(1)
48.其中f(m)=tanh(|m|)*m/|m|,g(s
in
)=s
in
并且

表示复数乘法。
49.在另一些实现中,例如在在线实现中,时频表示201可以包括已处理音频信号的第一时频表示和输入音频信号170的第二时频表示,如上文所描述的。因此,在这种实现中,掩码m可以仅被应用于时频表示201中与第二时频表示相对应的部分。
50.经掩码的时频表示s
out
被馈送到解码器240,并且被解码器240转换为输出音频信号180。在一些实现中,解码器240可以是基于固定变换的解码器。例如,解码器240可以实现与stft相对应的istft,该stft用于生成输入音频信号170的时频表示。
51.在一些实现中,解码器240可以是经训练的解码器。这样的解码器240可以被训练为将在不同频率上随时间变化的音频信号强度转换成随时间变化的波形。尽管解码器不必执行与编码器精确相反的操作,但是在一些实现中可以利用如下的方法来确保编码器网络的收敛性。例如,解码器240的网络结构可以被配置为与istft的卷积实现相同。具体来说,编码器240可以被实现为一维转置的卷积层,其内核大小和步幅是stft中使用的窗口长度和跳跃(hop)大小。
52.在这种实现中,解码器240可以与分离网络250一起训练。系统200可以被实现为完全端到端的可学习系统。以此方式,系统200的可学习性提高,从而有助于提高语音增强的性能。
53.注意力机制
54.以上描述了用于语音增强的系统200的总体架构。下面将描述其中的相关性单元220的一些实现。图3示出了根据本公开的一些实现的相关性单元220的框图。相关性单元220可以基于输入的特征表示s
i-1
来确定所输出的特征表示s
i

55.总体上,相关性单元220可以包括两部分。第一部分包括一组卷积层311、312、313、314,第二部分包括注意力块320。在系统200的训练过程中,卷积层311、312、313、314可以学习音频信号的局部相关性。因此,在处理输入音频信号170中,通过卷积层311、312、313、314可以利用输入音频信号170的局部相关性。作为示例,卷积层311、312、313、314可以被实现为3
×
3卷积层。
56.如图3所示,在一些实现中,可以在每两个卷积层之间采用跳跃(skip)连接,其也被称为残差连接。跳跃连接的使用能够通过增加网络深度来提高语音增强的性能。
57.以上所描述的卷积层的数目、连接方式和卷积核大小仅是示意性的,而无意限制本公开的范围。在根据本公开的实现中,可以采用任何合适数目的卷积层和合适大小的卷积核。在一些实现中,不同的相关性单元220中的卷积层的数目也可以不同。
58.相关性单元220的第二部分可以包括注意力块320。在系统200的训练过程中,注意力块320可以基于注意力机制学习音频信号的长程相关性(也称为全局相关性)。因此,在处理输入音频信号170中,通过注意力块320可以利用输入音频信号170的长程相关性。具体而言,注意力块230从卷积层314接收利用局部相关性而生成的特征表示s
con
,并利用注意力机制,基于特征表示s
con
和长程相关性来确定特征表示s
i

59.在时频表示(例如,语谱图)中,在时域(即,沿着时间轴)和频域(即,沿着频率轴)
上均存在长程相关性。可以理解的是,音频信号作为时间序列包含沿着时间轴的全局相关性;沿着频率轴,存在谐波相关性。在本文中,沿着时间轴的相关性也称为时间相关性,并且沿着频率轴的相关性也称为频率相关性。
60.注意力块320可以并行地利用时间相关性和频率相关性。这种注意力也称为“双路径注意力块(dab)”。为了充分利用时间相关性和频率相关性而不带来过多的计算消耗,在此提出了一种轻量级的dab解决方案。
61.图4示出了根据本公开的一些实现的注意力块320的框图。在图4的示例中,来自卷积层314的特征表示401(也表示为s
con
)具有t
×
f
×
c的维度。如上文所述,t意味着时频表示201在时域上关联于t个频段,f意味着时频表示201在频域上关联于f个频段,并且c代表通道数目。可以理解的是,对于相关性单元220-1,特征表示401是经卷积的时频表示201;对于其他的相关性单元220-2至220-n,特征表示401是由前一相关性单元生成的特征表示,即,本文中所称的中间特征表示。
62.在频率路径上,具有c个通道的二维特征表示401被分解成tc(即,t
×
c)个频域特征表示410-1至410-8,其统称或单独称为频域特征表示410。每个频域特征表示410对应于t个时段中的一个时段,并且包括在f个频段上的多个特征。每个频域特征表示410可以被实现为维度为1
×
f的向量。
63.如箭头420所示,对每个频域特征表示410沿着频率轴应用注意力机制,得到经更新的频域特征表示430。在本文中,这种通过应用注意力机制而更新的频域特征表示的集合被称为频率相关性信息430。如果存在多个相关性单元220,在第二至第n个相关性单元220的注意力块320中的频率相关性信息也可以被称为经更新的频率相关性信息。
64.在一些实现中,可以利用自注意力机制学习每个频域特征表示(可以被视为样本)410的注意力图。注意力图中的每个元素指示音频信号在对应的频段之间的相关性。
65.本技术的发明人意识到,音频信号在频域上的谐波相关性是样本无关的,并且在一些经典的语音增强方案中,通常沿着频率轴施加均匀的非线性函数来重现谐波。因此,在一些实现中,沿着频率轴可以应用样本无关的注意力机制。具体而言,在这种实现中,如箭头420所示的注意力机制的应用可以通过全连接层来实现。可以在利用参考音频信号训练系统200的过程中,学习该全连接层的参数。换言之,该全连接层的参数指示参考音频信号在f个频段间的相关性。对某个频域特征表示410应用样本无关的注意力机制的过程相当于将1
×
f的向量与f
×
f的权重矩阵相乘的过程。在本文中,这种表示频率相关性的全连接层的参数也称为频域加权信息。
66.同样地,在时间路径上,具有c个通道的二维特征表示401被分解成fc(即,f
×
c)个时域特征表示440-1至440-8,其也可以统称或单独称为时域特征表示440。每个时域特征表示440对应于f个频段中的一个频段,并且包括在t个时段中的多个特征。每个时域特征表示440可以被实现为维度为t
×
1的向量。
67.如箭头450所示,对每个时域特征表示440沿着时间轴应用注意力机制,得到经更新的时域特征表示440。在本文中,这种通过应用注意力机制而更新的时域特征表示的集合被称为时间相关性信息460。如果存在多个相关性单元220,在第二至第n个相关性单元220的注意力块320中的时间相关性信息也称为经更新的时间相关性信息。
68.在一些实现中,可以利用自注意力机制学习每个时域特征表示(可以被视为样本)
440的注意力图。注意力图中的每个元素指示音频信号在对应的时段之间的相关性。
69.与谐波相关性是样本无关的类似,本技术的发明人意识到,时间相关性是时间不变的。因此,在一些实现中,沿着时间轴也可以利用样本无关的注意力机制。具体而言,在这种实现中,如箭头450所示的注意力机制的应用可以通过全连接层来实现。可以在利用参考音频信号训练系统200的过程中,学习该全连接层的参数。换言之,该全连接层的参数指示参考音频信号在t个时段间的相关性。对一个时域特征表示440应用样本无关的注意力机制的过程相当于将t
×
1的向量与t
×
t的权重矩阵相乘的过程。在本文中,这种表示时间相关性的全连接层的参数也称为时域加权信息。
70.在一些实现中,可以在频率路径和时间路径上均应用样本无关的注意力机制。在这种实现中,注意力块320也可以称为样本无关的双路径块(sdab)。样本无关的注意力机制的应用可以在不降低语音增强性能的情况下,降低系统200的网络的计算复杂度。
71.继续参考图4,在获得时间相关性信息430和频率相关性信息460之后,基于频率相关性信息430、时间相关性信息460和特征表示401确定特征表示s
i
。具体而言,可以将包括tc个频域特征表示的频率相关性信息430重建为维度为t
×
f
×
c的特征表示,并且将包括fc个时域特征表示的时间相关性信息460重建为维度为t
×
f
×
c的特征表示。两个经重建的特征表示与特征表示401组合成特征s
i

72.作为示例,在图4中,可以将两个经重建的特征表示与特征表示401按通道进行拼接(concatenate)。然后可以对拼接后的特征表示应用卷积层470,从而得到维度为t
×
f
×
c的特征表示s
i
。作为另一示例,也可以通过将两个经重建的特征表示、特征表示401中的同样位置的特征直接相加,来得到维度为t
×
f
×
c的特征表示s
i
。本公开的实现在此方面不受限制。
73.以上参考图4描述了dab。继续参考图2。在一些实现中,相关性单元220-1至220-n中的每一个可以均包括dab。换言之,可以在每个相关性单元220中均利用时间相关性和频率相关性。在另一些实现中,相关性单元220-1至220-n中的至少一个可以包括dab,另外的相关性单元可以仅在频率路径上利用注意力机制。
74.作为示例,可以仅在第一个相关性单元220-1中利用双路径的注意力机制,同时在后续的相关性单元220-2至220-n中仅在频率路径上应用注意力机制。在分类网络250的靠前部分利用时间相关性有助于提高语音增强性能。
75.如上文所提及的,在一些实现中,目标特征表示在时域上的维度可以小于时频表示201在时域上的维度。例如,在线实现中,为了满足实时性要求,输入音频信号170的时长通常较短。为了应用时域上的长程相关性,需要利用已处理音频信号。图5示出了根据本公开的一些实现的系统200中的数据流的变化的框图500。下面结合图2来描述图5。如图5所示,时频表示201包括已处理音频信号的第一时频表示501和输入音频信号170的第二时频表示502。在图5的示例中,未处理的输入音频信号170在时域上涉及4个时段,其对应于以阴影示出的第二时频表示502。
76.卷积层210可以基于时频表示201生成特征表示511,其中以阴影示出的部分503与第二时频表示502相关联。也即,部分503是基于第二时频表示502确定的。未以阴影示出的部分未被更新,因而可以使用处理先前输入音频信号的数据。
77.特征表示511被馈送到第一个相关性单元220-1。相关性单元220-1通过将一个或
多个卷积层(例如,图3所示的卷积层311至314)应用于特征表示511,来生成特征表示512。在特征表示512中,以阴影示出的部分504与第二时频表示502相关联。也即,部分504是基于第二时频表示502确定的。未以阴影示出的部分未被更新,因而可以沿用处理先前输入音频信号的数据。
78.接下来,相关性单元220-1通过将dab应用于特征表示512,生成特征表示513。特征表示513可以仅包括与第二时频表示502相关联的部分。从图5中可以看出,相对于特征表示512,特征表示513在时域上缩短。
79.图6示出了根据本公开的一些实现的生成特征表示的框图600。下面结合图4和图5来描述图6。特征表示512可以被视为特征表示401的一个实现。在时间路径上,特征表示512被分解为多个时域特征表示,并且通过沿着时间轴应用注意力机制,确定时间相关性信息660。时间相关性信息660可以视为时间相关性信息460的一个实现。时间相关性信息660中的一部分信息(也称为第一部分信息661)与第二时频表示502相关联。也即,第一部分信息661的确定至少部分地关联于第二时频表示502。
80.在频率路径上,特征表示512被分解为多个频域特征表示,并且通过沿着频率轴应用注意力机制,确定频率相关性信息630。频率相关性信息630可以视为频率相关性信息430的一个实现。频率相关性信息630中的一部分信息(也称为第二部分信息631)与第二时频表示502相关联。例如,第二部分信息631在时间轴上对应于第一部分信息661。
81.接下来,可以基于第一部分信息661、第二部分信息631以及特征表示512(具体地,特征表示512中在时间轴上与第一部分信息661和/或第二部分信息661相对应的部分)来确定以灰色示出的特征表示513。应当理解,可以不确定或不输出以虚线框示出的部分。特征表示513的确定与上文参考图4描述的类似,在此不重复对其描述。
82.继续参考图5,与时频表示201相比,由第一个相关性单元220-1生成的特征表示513在时域上被缩短,但在频域上保持不变。因此,在后续的相关性单元220-2至220-6中将仅在频域上应用注意力机制,即仅利用频率相关性。
83.具体而言,相关性单元220-2通过将一个或多个卷积层(例如,图3所示的卷积层311至314)应用于特征表示513,来生成特征表示514。在图5的示例中,相对于特征表示513,特征表示514由于卷积操作而在时域上被缩短。接下来,相关性单元220-2通过在频域上应用注意力机制,生成特征表示515。
84.相关性单元220-3通过将一个或多个卷积层(例如,图3所示的卷积层311至314)应用于特征表示515,来生成特征表示516。在图5的示例中,相对于特征表示515,特征表示516由于卷积操作而在时域上被缩短。接下来,相关性单元220-3通过在频域上应用注意力机制,生成特征表示517。
85.在未示出的相关性单元中,执行类似的操作。最后的相关性单元220-6在频域上将注意力机制应用于特征表示519,以确定特征表示520作为目标特征表示。从图6中可以看出,特征表示520在时域上关联于4个时段,其与输入音频信号170的时长相对应。
86.以上参考图5和图6描述了利用已处理音频信号来处理时长较短的输入音频信号的示例实现。应当理解,所描述的相关性单元的数目、在时域上关联的时段的数目等仅是示意性的,而无意限制本公开的范围。以此方式,可以并行利用时间相关性和频率相关性,以提高语音增强效果,而不影响在线场景下的时效性要求。
87.语音增强系统的训练
88.继续参考图2。可以利用包括参考语音信号和参考噪声信号的参考音频信号来训练系统200。参考语音信号可以是纯净的语音信号。将参考语音信号和参考噪声信号(例如,通过加权)合成参考音频信号,以训练系统200。
89.在一些实现中,参考噪声信号可以包括各种类型的噪声。由此训练的系统200具有通用性,并且适用于各种场景中的语音增强。
90.在一些实现中,参考噪声信号可以包括特定的一种或多种噪声(例如,发动机的声音等)。由此训练的系统200特别适用于特定场景中的语音增强。这种特定场景中存在特定的一种或多种噪声。
91.在一些实现中,可以在t-f域的架构下训练系统200。即,损失函数可以是在时频表示s
in
与经掩码的时频表示s
out
之间计算的。
92.在一些实现中,可以实现跨域的训练过程。即,损失函数可以是在输入音频信号170与输出音频信号180之间计算的。在这种实现中,系统200的语音增强性能可以被进一步提升。例如,信号失真比(sdr)和客观语音质量评估(pesq)均可以得到提升。
93.示例方法和示例实现
94.图7示出了根据本公开一些实现的用于语音增强的方法700的流程图。方法700可以由计算设备100来实现,例如可以被实现在计算设备100的存储器120中的音频处理模块122处。
95.如图7所示,在框710处,计算设备100获得至少指示输入音频信号在不同频率上随时间变化的强度的目标时频表示。输入音频信号包括语音分量和噪声分量。在框720处,计算设备100基于所述目标时频表示,确定所述输入音频信号的频率相关性信息和时间相关性信息。在框730处,计算设备100基于所述频率相关性信息、所述时间相关性信息和所述目标时频表示,生成用于区分所述语音分量和所述噪声分量的目标特征表示。在框740处,计算设备100基于所述目标特征表示和所述目标时频表示,生成输出音频信号。在所述输出音频信号中,所述语音分量相对于所述噪声分量被增强。
96.在一些实现中,生成所述目标特征表示包括:基于所述频率相关性信息、所述时间相关性信息和经卷积的所述目标时频表示,生成用于区分所述语音分量和所述噪声分量的中间特征表示;基于所述中间特征表示,更新所述频率相关性信息;以及基于所述中间特征表示和经更新的所述频率相关性信息,确定所述目标特征表示。
97.在一些实现中,生成所述目标特征表示包括:基于所述频率相关性信息、所述时间相关性信息和经卷积的所述目标时频表示,生成用于区分所述语音分量和所述噪声分量的中间特征表示;基于所述中间特征表示,更新所述频率相关性信息和所述时间相关性信息;以及基于所述中间特征表示、经更新的所述频率相关性信息和经更新的所述时间相关性信息,确定所述目标特征表示。
98.在一些实现中,获得所述目标时频表示包括:获得在所述输入音频信号发生之前的已处理音频信号的第一时频表示,所述第一时频表示指示所述已处理音频信号在所述不同频率上随时间变化的强度;确定所述输入音频信号的第二时频表示,所述第二时频表示指示所述输入音频信号在所述不同频率上随时间变化的强度;以及将所述第一时频表示和所述第二时频表示组合成所述目标时频表示。
99.在一些实现中,生成所述目标特征表示包括:确定所述时间相关性信息中与所述第二时频表示相关联的第一部分信息;确定所述频率相关性信息中与所述第二时频表示相关联的第二部分信息;以及基于所述第一部分信息、所述第二部分信息和所述目标时频表示,确定所述目标特征表示。
100.在一些实现中,所述目标时频表示与频域上的多个频段和时域上的多个时段相关联。确定所述频率相关性信息和所述时间相关性信息包括:通过处理所述时频表示,获得频域特征表示和时域特征表示,所述频域特征表示包括在所述多个时段中的一个时段内在所述多个频段中的多个特征,所述时域特征表示包括在所述多个频段中的一个频段上在所述多个时段内的多个特征;基于所述频域特征表示和频域加权信息,确定所述频率相关性信息,所述频域加权信息指示参考音频信号在所述多个频段间的相关程度;以及基于所述时域特征表示和时域加权信息,确定所述时间相关性信息,所述时域加权信息指示参考音频信号在所述多个时段间的相关程度。
101.在一些实现中,所述频域加权信息和所述时域加权信息基于包括参考语音信号和参考噪声信号的所述参考音频信号而确定。
102.在一些实现中,生成所述输出音频信号包括:通过将基于所述目标特征表示而生成的掩码应用于所述目标时频表示的至少一部分,确定经掩码的时频表示;以及将所述经掩码的时频表示转换为所述输出音频信号。
103.在一些实现中,将所述经掩码的时频表示转换为所述输出音频信号包括:通过将所述经掩码的时频表示应用于经训练的解码器,来将所述经掩码的时频表示转换为所述输出音频信号,其中所述经训练的解码器被配置为将所述不同频率上随时间变化的音频信号强度转换成随时间变化的波形。
104.基于以上描述能够看出,根据本公开的实现的语音增强方案能够可以充分利用音频信号在时域和频域上的相关性信息。以此方式,能够提高语音增强的性能,这有助于获得完全纯净的语音。。
105.以下列出了本公开的一些示例实现方式。
106.在一方面,本公开提供了一种计算机实现的方法。所述方法包括:获得至少指示输入音频信号在不同频率上随时间变化的强度的目标时频表示,所述输入音频信号包括语音分量和噪声分量;基于所述目标时频表示,确定所述输入音频信号的频率相关性信息和时间相关性信息;基于所述频率相关性信息、所述时间相关性信息和所述目标时频表示,生成用于区分所述语音分量和所述噪声分量的目标特征表示;以及基于所述目标特征表示和所述目标时频表示,生成输出音频信号,在所述输出音频信号中,所述语音分量相对于所述噪声分量被增强。
107.在一些实现中,生成所述目标特征表示包括:基于所述频率相关性信息、所述时间相关性信息和经卷积的所述目标时频表示,生成用于区分所述语音分量和所述噪声分量的中间特征表示;基于所述中间特征表示,更新所述频率相关性信息;以及基于所述中间特征表示和经更新的所述频率相关性信息,确定所述目标特征表示。
108.在一些实现中,生成所述目标特征表示包括:基于所述频率相关性信息、所述时间相关性信息和经卷积的所述目标时频表示,生成用于区分所述语音分量和所述噪声分量的中间特征表示;基于所述中间特征表示,更新所述频率相关性信息和所述时间相关性信息;
以及基于所述中间特征表示、经更新的所述频率相关性信息和经更新的所述时间相关性信息,确定所述目标特征表示。
109.在一些实现中,获得所述目标时频表示包括:获得在所述输入音频信号发生之前的已处理音频信号的第一时频表示,所述第一时频表示指示所述已处理音频信号在所述不同频率上随时间变化的强度;确定所述输入音频信号的第二时频表示,所述第二时频表示指示所述输入音频信号在所述不同频率上随时间变化的强度;以及将所述第一时频表示和所述第二时频表示组合成所述目标时频表示。
110.在一些实现中,生成所述目标特征表示包括:确定所述时间相关性信息中与所述第二时频表示相关联的第一部分信息;确定所述频率相关性信息中与所述第二时频表示相关联的第二部分信息;以及基于所述第一部分信息、所述第二部分信息和所述目标时频表示,确定所述目标特征表示。
111.在一些实现中,所述目标时频表示与频域上的多个频段和时域上的多个时段相关联。确定所述频率相关性信息和所述时间相关性信息包括:通过处理所述时频表示,获得频域特征表示和时域特征表示,所述频域特征表示包括在所述多个时段中的一个时段内在所述多个频段中的多个特征,所述时域特征表示包括在所述多个频段中的一个频段上在所述多个时段内的多个特征;基于所述频域特征表示和频域加权信息,确定所述频率相关性信息,所述频域加权信息指示参考音频信号在所述多个频段间的相关程度;以及基于所述时域特征表示和时域加权信息,确定所述时间相关性信息,所述时域加权信息指示参考音频信号在所述多个时段间的相关程度。
112.在一些实现中,所述频域加权信息和所述时域加权信息基于包括参考语音信号和参考噪声信号的所述参考音频信号而确定。
113.在一些实现中,生成所述输出音频信号包括:通过将基于所述目标特征表示而生成的掩码应用于所述目标时频表示的至少一部分,确定经掩码的时频表示;以及将所述经掩码的时频表示转换为所述输出音频信号。
114.在一些实现中,将所述经掩码的时频表示转换为所述输出音频信号包括:通过将所述经掩码的时频表示应用于经训练的解码器,来将所述经掩码的时频表示转换为所述输出音频信号,其中所述经训练的解码器被配置为将所述不同频率上随时间变化的音频信号强度转换成随时间变化的波形。
115.在另一方面,本公开提供了一种电子设备。所述电子设备包括:处理单元;以及存储器,耦合至所述处理单元并且包含存储于其上的指令,所述指令在由所述处理单元执行时,使得所述设备执行动作,所述动作包括:获得至少指示输入音频信号在不同频率上随时间变化的强度的目标时频表示,所述输入音频信号包括语音分量和噪声分量;基于所述目标时频表示,确定所述输入音频信号的频率相关性信息和时间相关性信息;基于所述频率相关性信息、所述时间相关性信息和所述目标时频表示,生成用于区分所述语音分量和所述噪声分量的目标特征表示;以及基于所述目标特征表示和所述目标时频表示,生成输出音频信号,在所述输出音频信号中,所述语音分量相对于所述噪声分量被增强。
116.在一些实现中,生成所述目标特征表示包括:基于所述频率相关性信息、所述时间相关性信息和经卷积的所述目标时频表示,生成用于区分所述语音分量和所述噪声分量的中间特征表示;基于所述中间特征表示,更新所述频率相关性信息;以及基于所述中间特征
表示和经更新的所述频率相关性信息,确定所述目标特征表示。
117.在一些实现中,生成所述目标特征表示包括:基于所述频率相关性信息、所述时间相关性信息和经卷积的所述目标时频表示,生成用于区分所述语音分量和所述噪声分量的中间特征表示;基于所述中间特征表示,更新所述频率相关性信息和所述时间相关性信息;以及基于所述中间特征表示、经更新的所述频率相关性信息和经更新的所述时间相关性信息,确定所述目标特征表示。
118.在一些实现中,获得所述目标时频表示包括:获得在所述输入音频信号发生之前的已处理音频信号的第一时频表示,所述第一时频表示指示所述已处理音频信号在所述不同频率上随时间变化的强度;确定所述输入音频信号的第二时频表示,所述第二时频表示指示所述输入音频信号在所述不同频率上随时间变化的强度;以及将所述第一时频表示和所述第二时频表示组合成所述目标时频表示。
119.在一些实现中,生成所述目标特征表示包括:确定所述时间相关性信息中与所述第二时频表示相关联的第一部分信息;确定所述频率相关性信息中与所述第二时频表示相关联的第二部分信息;以及基于所述第一部分信息、所述第二部分信息和所述目标时频表示,确定所述目标特征表示。
120.在一些实现中,所述目标时频表示与频域上的多个频段和时域上的多个时段相关联。确定所述频率相关性信息和所述时间相关性信息包括:通过处理所述时频表示,获得频域特征表示和时域特征表示,所述频域特征表示包括在所述多个时段中的一个时段内在所述多个频段中的多个特征,所述时域特征表示包括在所述多个频段中的一个频段上在所述多个时段内的多个特征;基于所述频域特征表示和频域加权信息,确定所述频率相关性信息,所述频域加权信息指示参考音频信号在所述多个频段间的相关程度;以及基于所述时域特征表示和时域加权信息,确定所述时间相关性信息,所述时域加权信息指示参考音频信号在所述多个时段间的相关程度。
121.在一些实现中,所述频域加权信息和所述时域加权信息基于包括参考语音信号和参考噪声信号的所述参考音频信号而确定。
122.在一些实现中,生成所述输出音频信号包括:通过将基于所述目标特征表示而生成的掩码应用于所述目标时频表示的至少一部分,确定经掩码的时频表示;以及将所述经掩码的时频表示转换为所述输出音频信号。
123.在一些实现中,将所述经掩码的时频表示转换为所述输出音频信号包括:通过将所述经掩码的时频表示应用于经训练的解码器,来将所述经掩码的时频表示转换为所述输出音频信号,其中所述经训练的解码器被配置为将所述不同频率上随时间变化的音频信号强度转换成随时间变化的波形。
124.在又一方面,本公开提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机存储介质中并且包括机器可执行指令,机器可执行指令在由设备执行时使设备执行上述方面的方法。
125.在又一方面,本公开提供了一种计算机可读介质,其上存储有机器可执行指令,机器可执行指令在由设备执行时使设备执行上述方面的方法。
126.本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(fpga)、专用
集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)等等。
127.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
128.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
129.此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实现的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
130.尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。