CN118215961A - 对语音增强中的语音保留的控制 - Google Patents
对语音增强中的语音保留的控制 Download PDFInfo
- Publication number
- CN118215961A CN118215961A CN202280074139.3A CN202280074139A CN118215961A CN 118215961 A CN118215961 A CN 118215961A CN 202280074139 A CN202280074139 A CN 202280074139A CN 118215961 A CN118215961 A CN 118215961A
- Authority
- CN
- China
- Prior art keywords
- denoising
- audio signal
- mask
- machine learning
- learning model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000014759 maintenance of location Effects 0.000 title abstract description 25
- 230000005236 sound signal Effects 0.000 claims abstract description 141
- 238000000034 method Methods 0.000 claims abstract description 119
- 238000010801 machine learning Methods 0.000 claims abstract description 112
- 238000012549 training Methods 0.000 claims abstract description 86
- 238000012360 testing method Methods 0.000 claims abstract description 6
- 230000006870 function Effects 0.000 claims description 42
- 238000001228 spectrum Methods 0.000 claims description 38
- 238000013527 convolutional neural network Methods 0.000 claims description 23
- 238000004321 preservation Methods 0.000 claims description 23
- 238000009499 grossing Methods 0.000 claims description 20
- 230000006835 compression Effects 0.000 claims description 8
- 238000007906 compression Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 description 48
- 230000009467 reduction Effects 0.000 description 25
- 238000001914 filtration Methods 0.000 description 11
- 238000012805 post-processing Methods 0.000 description 10
- 230000001629 suppression Effects 0.000 description 8
- 230000001965 increasing effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 208000020442 loss of weight Diseases 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 235000004257 Cordia myxa Nutrition 0.000 description 1
- 244000157795 Cordia myxa Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 210000003477 cochlea Anatomy 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000010339 dilation Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Soundproofing, Sound Blocking, And Sound Damping (AREA)
Abstract
提供了一种用于对音频信号执行去噪的方法。在一些实施方式中,方法涉及确定调节要应用的语音保留的程度的激进性控制参数值。在一些实施方式中,方法涉及获得训练样本的训练集,训练样本具有有噪声音频信号和目标去噪掩码。在一些实施方式中,方法涉及训练机器学习模型,其中,经训练的机器学习模型可用于将有噪声测试音频信号作为输入,并生成对应的去噪测试音频信号,并且其中,激进性控制参数值被用于以下各项:1)生成包括在训练集中的有噪声音频信号的频域表示;2)修改目标去噪掩码;3)确定机器学习模型的架构;或4)确定机器学习模型的训练期间的损失。
Description
相关申请的交叉引用
本申请要求于2021年11月9日提交的PCT专利申请号PCT/CN2021/129573、于2022年5月13日提交的美国临时申请号63/364,661以及于2021年12月15日提交的美国临时申请号63/289,846的优先权,所有这些申请均通过引用以其全文并入本文。
技术领域
本公开涉及用于控制语音增强中的语音保留的***、方法和介质。
背景技术
例如,去噪技术可以应用于有噪声音频信号,以生成去噪的或纯净的音频信号。然而,执行去噪技术可能很困难,特别是对于各种类型的音频内容,比如包括音乐、多个说话者之间的对话或交谈、音乐和语音的混合等的音频内容。
符号和术语
在整个本公开中,包括在权利要求书中,术语“扬声器(speaker)”、“扩音器(loudspeaker)”和“音频再现换能器”同义地用于表示任何发声换能器(或一组换能器)。一套典型的耳机包括两个扬声器。扬声器可以被实施为包括多个换能器(例如,低音扬声器和高音扬声器),所述换能器可以由单个公共扬声器馈送或多个扬声器馈送驱动。在一些示例中,(多个)扬声器馈送可以在耦接到不同换能器的不同电路分支中经历不同处理。
在整个本公开中,包括在权利要求中,在广义上使用“对”信号或数据执行操作的表达(例如,对信号或数据进行滤波、缩放、变换或应用增益)来表示直接对信号或数据执行操作或对信号或数据的已处理版本(例如,在对其执行操作之前已经历了初步滤波或预处理的信号版本)执行操作。
在整个本公开中,包括在权利要求中,在广义上使用表达“***”来表示设备、***或子***。例如,实施解码器的子***可以被称为解码器***,并且包括这样的子***的***(例如,响应于多个输入而生成X个输出信号的***,其中,子***生成M个输入,而其他X-M个输入是从外部源接收的)也可以被称为解码器***。
在整个本公开中,包括在权利要求中,在广义上使用术语“处理器”来表示可编程或以其他方式可配置(例如,用软件或固件)成对数据(例如,音频或视频或其他图像数据)执行操作的***或设备。处理器的示例包括现场可编程门阵列(或其他可配置集成电路或芯片组)、被编程和/或以其他方式被配置成对音频或其他声音数据执行流水线式处理的数字信号处理器、可编程通用处理器或计算机、以及可编程微处理器芯片或芯片组。
发明内容
本公开的至少一些方面可以经由方法来实施。一些方法可以涉及由控制***确定激进性控制参数值,所述激进性控制参数值调节在对音频信号进行去噪时要应用的语音保留的程度。一些方法可以涉及由所述控制***获得训练样本的训练集,所述训练集中的训练样本具有有噪声音频信号和目标去噪掩码。一些方法可以涉及由所述控制***通过以下操作训练机器学习模型:a)生成与所述训练样本相对应的所述有噪声音频信号的频域表示;b)将所述有噪声音频信号的频域表示提供给所述机器学习模型;c)基于所述机器学习模型的输出生成预测去噪掩码;d)确定表示所述预测去噪掩码相对于与所述训练样本相对应的所述目标去噪掩码的误差的损失;e)更新与所述机器学习模型相关联的权重;以及f)重复a)至e),直到达到停止标准为止。在一些方法中,经训练的机器学习模型可用于将有噪声测试音频信号作为输入,并生成对应的去噪测试音频信号,并且其中,所述激进性控制参数值被用于以下各项中的至少一项:1)生成在所述训练集中包括的所述有噪声音频信号的频域表示;2)修改在所述训练集中包括的所述目标去噪掩码;3)在训练所述机器学习模型之前确定所述机器学习模型的架构;或4)确定所述损失。
在一些示例中,生成所述有噪声音频信号的频域表示包括:生成所述有噪声音频信号的频谱;以及通过将所述有噪声音频信号的频谱的仓分组为多个频带来生成所述有噪声音频信号的频域表示,其中,频带数量是基于所述激进性控制参数值来确定的。
在一些示例中,修改在所述训练集中包括的所述目标去噪掩码包括对所述目标去噪掩码中的目标去噪掩码应用幂函数,并且其中,所述幂函数的指数是基于所述激进性控制参数值来确定的。
在一些示例中,所述机器学习模型包括卷积神经网络(CNN),并且其中,确定所述机器学习模型的架构包括基于所述激进性控制参数值来确定所述CNN的卷积块的滤波器大小。
在一些示例中,所述机器学习模型包括U-Net,并且其中,确定所述机器学习模型的架构包括基于所述激进性控制参数值来确定所述U-Net的深度。
在一些示例中,确定所述损失包括对所述预测去噪掩码相对于所述目标去噪掩码的误差应用惩罚权重,并且其中,所述惩罚权重是至少部分地基于所述激进性控制参数值来确定的。在一些示例中,所述惩罚权重至少部分地基于与所述训练样本相关联的对应有噪声音频信号是否包括语音。
一些方法涉及由控制***确定激进性控制参数值,所述激进性控制参数值调节在对音频信号进行去噪时要应用的语音保留的程度。一些方法涉及由所述控制***将有噪声音频信号的频域表示提供给经训练的模型以生成去噪掩码。一些方法涉及由所述控制***至少部分地基于所述激进性控制参数值来修改所述去噪掩码。一些方法涉及由所述控制***将经修改的去噪掩码应用于所述有噪声音频信号的频域表示以获得去噪频谱。一些方法涉及由所述控制***生成所述去噪频谱的时域表示以生成去噪音频信号。
在一些示例中,修改所述去噪掩码包括对所述去噪掩码应用压缩函数,其中,与所述压缩函数相关联的参数是基于所述激进性控制参数值来确定的。在一些示例中,所述压缩函数包括幂函数,其中,所述幂函数的指数是基于所述激进性控制参数值来确定的。在一些示例中,所述压缩函数包括指数函数,并且其中,所述指数函数的参数是基于所述激进性控制参数值来确定的。
在一些示例中,修改所述去噪掩码包括基于为所述有噪声音频信号的前一帧生成的去噪掩码对用于所述有噪声音频信号的帧的去噪掩码执行平滑。在一些示例中,执行所述平滑包括将用于所述有噪声音频信号的帧的所述去噪掩码与为所述有噪声音频信号的前一帧生成的所述去噪掩码的加权版本相乘,其中,用于生成所述加权版本的权重是基于所述激进性控制参数值来确定的。在一些示例中,用于所述有噪声音频信号的帧的所述去噪掩码包括时间轴和频率轴,并且其中,相对于所述时间轴执行平滑。在一些示例中,用于所述有噪声音频信号的帧的所述去噪掩码包括时间轴和频率轴,并且其中,相对于所述频率轴执行平滑。
在一些示例中,所述激进性控制参数值是基于所述有噪声音频信号的当前帧是否包括语音来确定的。
在一些示例中,一些方法进一步涉及使生成的去噪音频信号经由一个或多个扩音器或耳机呈现。
本文描述的一些或所有操作、功能和/或方法可以由一个或多个设备根据存储在一个或多个非暂态介质上的指令(例如,软件)来执行。这种非暂态介质可以包括比如本文描述的那些存储器设备,包括但不限于随机存取存储器(RAM)设备、只读存储器(ROM)设备等。因此,可以经由其上存储有软件的一种或多种非暂态介质来实施本公开中描述的主题的一些创新方面。
本公开的至少一些方面可以经由装置来实施。例如,一个或多个设备可以能够至少部分地执行本文公开的方法。在一些实施方式中,装置是或包括具有接口***和控制***的音频处理***。控制***可以包括一个或多个通用单芯片或多芯片处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑设备、离散门或晶体管逻辑、离散硬件部件或其组合。
在以下附图和说明中阐述了本说明书中所描述的主题的一个或多个实施方式的细节。根据说明书、附图和权利要求,其他特征、方面和优点将变得显而易见。注意,以下附图的相对尺寸可能不是按比例来绘制的。
附图说明
图1示出了根据一些实施方式的用于对音频信号执行去噪的示例***的框图。
图2示出了根据一些实施方式的用于对音频信号执行去噪的示例***的框图。
图3图示了根据一些实施方式的可以使用的示例卷积神经网络。
图4图示了根据一些实施方式的可以使用的示例U-Net架构。
图5是根据一些实施方式的用于训练执行去噪的模型的示例过程的流程图。
图6是根据一些实施方式的用于控制后处理中的语音保留程度的示例过程的流程图。
图7示出了图示能够实施本公开的各个方面的装置的部件的示例的框图。
在各个附图中,相似的附图标记和名称指示相似的元素。
具体实施方式
可以使用任何数量的去噪技术来执行对有噪声音频信号的去噪。然而,从输入的有噪声信号中生成去噪的或纯净的音频信号可能需要在降噪与语音保留之间进行折衷。具体地,优先考虑降噪的更加激进的方法可能导致语音保留减少,而优先考虑语音保留的更加保守的方法可能导致过多的噪声保留在生成的去噪音频信号中。当单个去噪技术被应用于多种类型的音频内容时,这种折衷可能特别难以管理。例如,将相同的去噪技术应用于包括对话的音频内容和不包括对话的音频内容可能导致对话内容中语音保留不足和/或非对话内容中的噪声增加,这两种情况都可能是不利的。
本文公开了用于在降噪技术的应用中控制激进性或语音保留与降噪之间的折衷的技术、方法、***和介质。在一些实施例中,去噪技术的激进性可以通过激进性控制参数值来控制。例如,激进性控制参数值可以指示语音保留与降噪之间的期望平衡。在一些实施方式中,激进性控制参数值可以基于与输入的有噪声音频信号相关联的音频内容的类型诸如输入的有噪声音频信号是否包括对话、音乐等来设置。
在一些实施例中,可以在用于生成去噪音频信号的机器学习模型的训练期间利用激进性控制参数值。例如,在一些实施方式中,激进性控制参数值可以用于修改机器学习模型在训练期间使用的训练样本,和/或可以通过损失函数用于训练机器学习模型。在一些实施例中,激进性控制参数值可以用于确定或选择机器学习模型的结构。
在一些实施方式中,可以对用于生成去噪音频信号的算法的输出利用激进性控制参数值。在算法输出上使用激进性控制参数值在本文中通常被称为“后处理”。例如,在一些实施例中,可以对用于生成去噪音频信号的经训练机器学习模型的输出利用激进性控制参数值。
图1总体上图示了用于使用机器学习模型来生成去噪音频信号的***。图2总体上描绘了可以使用——无论是在机器学习模型的训练期间还是在后处理中使用——激进性控制参数值的各种方式。图3和图4示出了根据一些实施例的可以使用的机器学习模型的示例架构。图5描绘了用于在机器学习模型的训练期间利用激进性控制参数值的过程的示例流程图,并且图6描绘了用于在后处理中利用激进性控制参数值的过程的示例流程图。
在一些实施方式中,可以使用经训练的机器学习模型来增强输入音频信号。在一些实施方式中,可以通过提取频域特征将输入音频信号变换到频域。在一些实施方式中,可以将基于人耳蜗处理的感知变换应用于频域表示以获得带状特征。可以应用于频域表示的感知变换的示例包括伽马通滤波器(Gammatone filter)、等效矩形带宽滤波器、基于梅尔标度(Mel scale)的变换等。在一些实施方式中,频域表示可以作为输入提供给经训练的机器学习模型,所述经训练的机器学习模型生成预测去噪掩码作为输出。预测去噪掩码可以是掩码的频域表示,所述掩码在应用于输入音频信号的频域表示时生成去噪音频信号的频谱。在一些实施方式中,可以将感知变换的逆变换应用于预测去噪掩码以生成经修改的预测去噪掩码。然后,可以通过将输入音频信号的频域表示与经修改的预测去噪掩码相乘来生成增强的音频信号的频域表示。然后,可以通过将增强的音频信号的频域表示变换到时域来生成增强的音频信号。
换句话说,用于增强音频信号的经训练的机器学习模型可以被训练成为给定的频域输入音频信号生成预测去噪掩码,所述预测去噪掩码在应用于频域输入音频信号时生成对应的去噪音频信号的频域表示。在一些实施方式中,可以通过将输入音频信号的频域表示与预测去噪掩码相乘来将预测去噪掩码应用于输入音频信号的频域表示。可替代地,在一些实施方式中,可以取输入音频信号的频域表示的对数。在这样的实施方式中,可以通过将预测去噪掩码的对数与输入音频信号的频域表示的对数相加来获得去噪音频信号的频域表示。在一些实施方式中,可以将输入音频信号的对数变换到线性域,而不是将预测去噪掩码的对数与频域表示的对数相加,并且可以通过将线性预测去噪掩码与原始有噪声信号的线性频域表示相乘来获得去噪信号。
应当注意,在一些实施方式中,训练机器学习模型可以包括确定与机器学习模型的一个或多个节点和/或节点之间的连接相关联的权重。在一些实施方式中,可以在第一设备(例如,服务器、台式计算机、膝上型计算机等)上训练机器学习模型。一旦进行训练,与经训练的机器学习模型相关联的权重然后可以被提供给(例如,传输到)第二设备(例如,服务器、台式计算机、膝上型计算机、媒体设备、智能电视、移动设备、可穿戴计算机等),以供第二设备用于对音频信号进行去噪。
图1示出了用于对音频信号进行去噪的示例***。应当注意,尽管图1描述了对音频信号进行去噪,但是结合图1描述的***和技术也可以应用于其他类型的增强,比如去混响、噪声抑制和去混响的组合等。换句话说,在一些实施方式中,可以生成预测增强掩码,而不是生成预测去噪掩码和预测的去噪音频信号,并且预测增强掩码可以用于生成预测的增强音频信号,其中,预测的增强音频信号是失真输入音频信号的去噪和/或去混响版本。
图1示出了根据一些实施方式的用于对音频信号进行去噪的***100的示例。在一些示例中,***100可以由控制***诸如本文中参考图7描述的控制***710来实施。如所图示的,去噪部件106将输入音频信号102作为输入,并生成去噪音频信号104作为输出。在一些实施方式中,去噪部件106包括特征提取器108。特征提取器108可以生成输入音频信号102的频域表示,所述频域表示可以被认为是输入信号频谱。输入信号频谱然后可以被提供给经训练的机器学习模型110。经训练的机器学习模型110可以生成预测去噪掩码作为输出。预测去噪掩码可以被提供给去噪信号频谱生成器112。去噪信号频谱生成器112可以将预测去噪掩码应用于输入信号频谱,以生成去噪信号频谱(例如,去噪音频信号的频域表示)。去噪信号频谱然后可以被提供给时域变换部件114。时域变换部件114可以生成去噪音频信号104。
如在图1中示出并在上文中结合该图进行描述的,可以使用经训练的机器学习模型从输入的有噪声音频信号中生成去噪音频信号。在一些实施方式中,可能期望控制去噪音频信号中的语音保留程度。例如,更加激进的去噪技术可以产生更大程度的降噪,同时在语音保留方面具有较差的性能,反之亦然。在一些实施方式中,用于从输入的有噪声音频信号中生成对应的去噪音频信号的去噪技术的激进性可以通过激进性控制参数来控制。在一些实施方式中,可以使用激进性控制参数来在机器学习模型的训练期间控制语音保留的程度。例如,可以在生成要由机器学习模型使用的训练集时利用激进性控制参数。作为更具体的示例,可以利用激进性控制参数来修改包括在训练集中的有噪声音频信号的频域表示。作为另一个具体示例,可以利用激进性控制参数来修改在机器学习模型的训练期间使用的目标去噪掩码。作为另一个示例,在一些实施例中,可以利用激进性控制参数可以来构建机器学习模型的架构。作为又一个示例,在一些实施例中,可以利用激进性控制参数来确定机器学习模型在训练过程期间迭代地确定权重参数所使用的损失。另外地或可替代地,在一些实施方式中,可以使用激进性控制参数来改变由经训练的机器学习模型生成的去噪音频信号。在使用经训练的机器学习模型生成的输出上使用激进性控制参数通常被称为“后处理”。应当注意,在一些实施例中,激进性控制参数可以以多种方式和/或在多个阶段中使用,这可以包括在机器学习模型训练期间和/或在后处理中使用。图2图示了一种描绘了在生成去噪音频信号时可以使用激进性控制参数来控制语音保留的多种可能方式的***。图5描绘了用于在机器学习模型的训练期间使用激进性控制参数的示例过程的流程图。图6描绘了用于在后处理中使用激进性控制参数的示例过程的流程图。
如图2所图示的,***200包括训练集创建部件202。在一些示例中,***200的一个或多个部件可以由控制***诸如本文中参考图7描述的控制***710来实施。训练集创建部件202可以生成训练集,所述训练集可以被机器学习模型用于对音频信号进行去噪。在一些实施方式中,训练集部件202可以例如在生成和/或存储训练集208的设备上实施。在一些实施方式中,每个训练样本可以包括有噪声音频信号和将由机器学习模型生成的对应的目标去噪掩码。目标去噪掩码可以从目标去噪掩码数据库206获得。在一些实施方式中,可以使用激进性控制参数来修改目标去噪掩码,如下文结合图5所描述的。在一些实施方式中,训练集部件202可以生成在训练样本中利用的有噪声音频信号。例如,训练集部件202可以将噪声(例如,从一组候选噪声信号中随机选择的噪声信号、随机生成的噪声等)应用于存储在纯净音频信号数据库204中的纯净音频信号。继续该示例,在一些实施方式中,可以基于纯净音频信号和用于生成有噪声音频信号的噪声来确定目标去噪掩码。
训练集208然后可以用于训练机器学习模型210a。在一些实施方式中,机器学习模型210a可以是或者可以包括卷积神经网络(CNN)、U-Net或任何其他合适类型的架构。示例架构在图3和图4中示出,并在下文中结合这些图进行描述。机器学习模型210a可以包括预测部件212a和损失确定部件214。预测部件212a可以为从训练集208获得的有噪声音频信号生成预测去噪掩码。用于生成预测去噪掩码的示例技术在上文中结合图1进行了更详细的描述,并且在下文中结合图5进行描述。损失确定部件214可以确定与预测去噪掩码相关联的损失。例如,损失可以指示预测去噪掩码与真实去噪掩码(例如,与特定训练样本相关联的目标)之间的差异。损失可以用于更新与预测部件212a相关联的权重。应当注意,激进性控制参数可以被预测部件212a使用(例如,用于生成预测去噪信号)和/或被损失确定部件214使用(例如,用于确定用于更新机器学习模型210a的权重的损失),如下文结合图5更详细地描述的。
在训练之后,经训练的机器学习模型210b可以利用经训练的预测部件212b(例如,对应于最终确定的权重)来生成去噪音频信号。例如,经训练的机器学习模型210b可以将有噪声音频信号214作为输入,并且可以生成去噪掩码216作为输出。去噪掩码216然后可以被应用于输入的有噪声音频信号214的频域表示,以生成去噪音频信号。应当注意,经训练的机器学习模型210b可以具有与机器学习模型210a相同的架构。另外,应当注意,在一些实施方式中,可以利用激进性控制参数来调整由经训练的机器学习模型210b生成的去噪掩码216中的语音保留。在生成的去噪掩码上应用激进性控制参数在本文中通常被称为在后处理中应用激进性控制参数,并且结合图6进一步描述。
在一些实施方式中,用于生成去噪音频信号的机器学习模型可以是CNN。在一些实施方式中,可以使用激进性控制参数来构建CNN的架构。例如,在一些实施例中,CNN的卷积层的内核大小可以为k,其中,卷积层实施大小为(k,k)的滤波器。继续该示例,相对于较小的k值,较大的滤波器大小(例如,较大的k值)可以对应于更加保守的结果或更高的语音保留度。换句话说,在一些实施方式中,可以使用激进性控制参数来选择将在要训练的CNN的一个或多个卷积层中使用的内核大小。应当注意,在一些实施方式中,基于CNN的模型可以包括多条卷积路径,每条卷积路径利用不同的滤波器大小。在这样的实施方式中,可以使用激进性控制参数来设置与每条卷积路径相关联的权重。例如,在激进性控制参数指示较高的激进性(例如,较多的降噪和较少的语音保留)的实例中,可以使用激进性控制参数来对与较小滤波器大小相关联的卷积路径进行较重的加权,并对与较大滤波器大小相关联的卷积路径进行较轻的加权。相反,在激进性控制参数指示较高的保守性(例如,较少的降噪和较多的语音保留)的实例中,可以使用激进性控制参数来对与较大滤波器大小相关联的卷积路径进行较重的加权,并对与较小滤波器大小相关联的卷积路径进行较轻的加权。
图3图示了根据一些实施方式的包括多条卷积路径的示例CNN。如所图示的,输入301被提供给多条卷积路径。在一些实施例中,每条卷积路径可以包括L个卷积层,其中,L是大于或等于1的自然数。例如,第一卷积路径包括层304a、306a和308a,第二卷积路径包括层304b、306b和308b,并且第三卷积路径包括层304c、306c和308c。继续该示例,L个层中的第l层可以具有Nl个滤波器,其中,l=1…L。L的示例包括3、4、5、10等。在一些实施例中,对于每条并行卷积路径,第l层的滤波器数量Nl可以通过Nl=1*N0给出,其中,N0是大于或等于1的预定常数。
在一些实施例中,滤波器的滤波器大小在每条并行卷积路径中可以是相同的(例如,一致的)。例如,可以在并行卷积路径(例如,304a、306a和308a)中的每一层L中使用3×3的滤波器大小。通过在每条并行卷积路径中使用相同大小的滤波器,可以避免不同尺度特征的混合。以这种方式,CNN在每条路径中学习到了相同尺度的特征提取,这大大提高了CNN的收敛速度。在实施例中,滤波器的滤波器大小在不同的卷积路径之间可以是不同的。例如,包括304a、306a和308a的第一卷积路径的滤波器大小是3×3。继续该示例,包括304b、306b和308b的第二卷积路径的滤波器大小是5×5。更进一步地继续该示例,包括304c、306c和308c的第三卷积路径的滤波器大小是7×7。应当注意,可以使用不同于图3所描绘的滤波器大小。在一些实施例中,滤波器大小可以取决于谐波长度以进行特征提取。
在一些实施例中,对于给定的卷积路径,在L个卷积层中的每一层中执行卷积操作之前,可以对每一层的输入进行零填充。以这种方式,可以从输入到输出保持相同的数据形状。
在一些实施例中,对于给定的卷积路径,可以在L个卷积层中的每一层中执行非线性操作。非线性操作可以包括以下各项中的一个或多个:参数修正线性单元(PRelu)、修正线性单元(Relu)、泄漏修正线性单元(LeakyRelu)、指数线性单元(Elu)和/或缩放指数线性单元(Selu)。在一些实施例中,非线性操作可以用作L个卷积层中的每一层中的激活函数。
在一些实施方式中,对于给定的并行卷积路径,所述并行卷积路径的至少一层的滤波器可以是膨胀2D卷积滤波器。膨胀滤波器的使用使得能够提取不同感受野中的谐波特征的相关性。膨胀使得能够通过跳过一系列时频(TF)仓来到达远感受野。在一些实施例中,所述并行卷积路径的至少一层的滤波器的膨胀操作可以仅在频率轴上执行。例如,在本公开的上下文中,(1,2)的膨胀可以指示不存在沿时间轴的膨胀(膨胀因子1),而沿频率轴的每隔一个仓被跳过(膨胀因子2)。一般而言,(1,d)的膨胀可以指示沿频率轴在用于由相应滤波器进行特征提取的仓之间跳过(d-1)个仓。
在一些实施例中,对于给定的卷积路径,并行卷积路径的两层或更多层的滤波器可以是膨胀2D卷积滤波器,其中,膨胀2D卷积滤波器的膨胀因子随着层数l的增加而指数增加。以这种方式,可以实现随深度呈指数增长的感受野。如图3的示例所图示的,在实施例中,对于给定的并行卷积路径,在L个卷积层的第一层中膨胀可以是(1,1),在L个卷积层的第二层中膨胀可以是(1,2),在L个卷积层的第l层中膨胀可以是(1,2^(l-1)),并且在L个卷积层的最后一层中膨胀可以是(1,2^(L-1)),其中,(c,d)指示沿时间轴的膨胀因子c和沿频率轴的膨胀因子d。
可以训练聚合多尺度CNN。聚合多尺度CNN的训练可以涉及以下步骤:(i)计算原始有噪声语音和目标语音的帧FFT系数;(ii)通过忽略相位来确定有噪声语音和目标语音的幅度;(iii)通过确定有噪声语音与目标语音的幅度之间的差异来确定目标输出掩码;(iv)将目标掩码限制在基于统计直方图的范围内;(v)使用有噪声语音的多帧频率幅度作为输入;(vi)使用步骤(iii)的对应目标掩码作为输出。
应当注意,在步骤(iii)中,可以使用下式来确定目标输出掩码:
目标掩码=||Y(t,f)||/||X(t,f)||
在一些实施例中,输出从来自原始有噪声语音信号输入301的多个帧的时频变换的聚合多尺度CNN的每个并行卷积路径中提取的特征。然后在聚集块302中聚集来自每个并行卷积路径的输出以获得聚集输出。在一些实施例中,如图3所示,可以将权重310a、310b和310c应用于每个并行卷积路径。权重310a、310b和310c可以至少部分地基于激进性控制参数值来确定,例如,以设置或修改与并行卷积路径的不同滤波器大小相关联的权重。
在一些实施方式中,用于生成去噪掩码的机器学习模型可以是具有U-Net架构的CNN。这种U-Net可以具有M个编码层和M个对应的解码层。可以经由跳过连接将来自特定编码层m的特征信息传递到对应的第m个解码层,从而允许解码层不仅利用来自先前解码层的特征信息,而且还利用经由跳过连接传递的来自对应编码层的特征信息。如本文所使用的,跳过连接是指将特征信息从网络的一层传递到后续的下一层之外的层。指示编码层和对应的解码层的数量的M值表示U-Net的深度。在一些实施方式中,可以基于激进性控制参数来确定U-Net的深度。特别地,在一些实施方式中,较深的U-Net或对应地较大的M值可以用于相对于具有较小M值的较浅U-Net产生更激进的去噪掩码的机器学习模型。换句话说,利用较大M值的U-Net可以产生更激进的去噪掩码,所述更激进的去噪掩码以牺牲语音保留为代价更有效地降低噪声,而利用较小M值的U-Net可以产生更保守的去噪掩码,所述更保守的去噪掩码以牺牲降噪为代价更有效地保留语音。
图4示出了根据一些实施方式的可以与机器学习模型相关联地实施的U-Net架构400的示例。U-Net 400包括一组编码层402和对应的一组解码层404。输入可以连续通过所述一组编码层402的编码层,其中,从编码层生成的特征信息被传递到后续编码层。例如,可以向编码层402a提供输入。继续该示例,编码层402a的输出可以被提供给编码层402b,该输出然后被提供给编码层402c。最终编码层生成潜在特征408,所述潜在特征然后被传递到所述一组解码层404的第一解码层。如图4中的箭头所示的,每个解码层的输出然后被传递到后续解码层,使得最顶层的解码层生成最终输出。例如,信息可以从解码层404c传递到解码层404b,然后传递到生成最终输出的解码层404a。如所图示的,每个编码层还经由跳过连接将特征信息传递到U-Net的对应级别的解码器层。例如,如图4所图示的,由编码层402a生成的特征信息经由跳过连接406传递到解码层404a。注意,图4中图示了三个编码层和对应的三个解码层,以描绘深度为3的U-Net。根据一些实施方式,增加U-Net的深度(例如,增加到4层、5层、8层等)可以增加利用由U-Net生成的去噪掩码的去噪技术的激进性。相反,降低U-Net的深度(例如,降低到2层)可以增加利用由U-Net生成的去噪掩码的去噪技术的语音保留。
如上文结合图2所描述的,在训练生成用于生成去噪信号的去噪掩码的机器学***衡。激进性控制参数可以以不同的方式或多种方式的组合来使用。例如,激进性控制参数可以用于:生成有噪声音频信号的频域表示,所述频域表示在训练期间被提供给机器学习模型;修改目标去噪掩码,所述目标去噪掩码是机器学习模型在训练期间为给定输入生成的目标;机器学习模型的架构;和/或确定用于在训练期间更新机器学习模型的权重的损失。
图5图示了用于训练机器学习模型的示例过程500的流程图,所述机器学习模型生成可以用于生成去噪音频信号的去噪掩码。在一些实施例中,过程500的框可以由控制***执行。这种控制***的示例在图7中示出并在下文中结合该图进行描述。在一些实施方式中,过程500的框可以按照不同于图5所示的顺序执行。在一些实施例中,过程500的两个或更多个框可以基本上并行执行。在一些实施例中,过程500的一个或多个框可以被省略。
过程500可以开始于502,即确定激进性控制参数值,所述激进性控制参数值调节在对有噪声音频信号进行去噪时要使用的语音保留的程度。在一些实施方式中,可以基于要使用机器学习模型进行处理的音频内容的类型来确定激进性控制参数值。例如,在机器学习模型将生成要应用于包括会话内容(例如,具有多个讲话者)等的音频内容的去噪掩码的实例中,激进性控制参数可以被设置为相对较低(例如,保守)并且因此相对于降噪优先考虑语音保留的值。相反,在机器学习模型将生成要应用于包括单个讲话者或其他非对话繁重内容的音频内容的去噪掩码的实例中,激进性控制参数可以被设置为相对较大的值,所述值相对于语音保留优先考虑降噪。
在504处,过程500可以获得训练样本的训练集,每个训练样本具有有噪声音频信号和目标去噪掩码。在一些实施方式中,包括在训练集中的有噪声音频信号可以通过将噪声信号应用于纯净音频信号来生成。在一些实施方式中,噪声信号可以从一组候选噪声信号中随机选择并与纯净音频信号混合,例如以实现随机选择的信噪比(SNR)。在一些实施方式中,噪声信号可以是为了与纯净音频信号混合而生成的随机噪声。
在506处,过程500可以针对训练集的训练样本可选地基于激进性控制参数值来生成有噪声音频信号的频域表示。如上文结合图1所描述的,可以通过确定具有N个仓的有噪声音频信号的频谱(在本文中表示为SpecT*N)来生成有噪声音频信号的频域表示,其中,T是音频信号的帧数,并且其中,N是频率仓。然后,可以通过将频谱的频率仓分组为各种频率带(在本文中可以简称为“频带”)来对频谱进行“频带划分”或修改。在一些实施方式中,可以基于人耳的耳蜗处理的表示来确定频带。在频谱被分组为B个频带并且其中W表示频带矩阵(其可以基于伽马通滤波器组(Gammatone filterbank)、等效矩形带宽、梅尔滤波器(Melfilter)等来确定)的实例中,带状频谱可以通过下式确定:
Bamdedspectrum=SpecT*N*WN*B
在一些实施方式中,可以基于激进性控制参数值来确定B值或频谱的频率仓被分组的频带的数量。例如,较小的B值或较小的频带数量可能导致:包括对话片段的音频信号的语音保留增加;非对话片段中的降噪激进;以及对话片段中的残留噪声增加。换句话说,较小的B值可能导致对话片段的语音保留增加,代价是对话片段中的残留噪声增加并且非对话片段中的降噪激进。相反,较大的B值或较大的频带数量可能导致:对话片段中的降噪更加激进,代价是牺牲语音保留;以及非对话片段中的残留噪声增加。
在508处,过程500可以基于激进性控制参数值可选地修改目标去噪掩码。应当注意,在一些实施例中,框508可以被省略,并且过程500可以前进到框510。
目标去噪掩码在本文中通常表示为MSM(t,f),其中,t对应于时间分量,并且f对应于频率分量。在一些实施方式中,去噪掩码可以通过下式确定:
在以上给出的等式中,Y和X分别表示纯净音频信号和有噪声音频信号的频谱。例如,Y可以是纯净音频信号的频谱,并且X可以是音频信号的噪声的频谱。换句话说,在给定去噪掩码的情况下,可以通过将去噪掩码与有噪声音频频谱的频谱相乘来获得纯净音频频谱。
注意,如上文结合框504所描述的,每个训练样本可以包括目标去噪掩码,所述目标去噪掩码将由机器学习模型针对对应的有噪声音频信号进行预测。在一些实施方式中,可以基于激进性控制参数值来修改用于特定训练样本的目标去噪掩码。例如,可以通过向目标去噪掩码施加幂来修改目标去噪掩码,其中,幂用α表示。通过施加幂α来修改目标去噪掩码的示例由下式给出:
幂α可以在0至1的范围内,以生成优先考虑语音保留的更加保守的结果。在一些实施例中,幂α可以大于1,以生成优先考虑降噪的更加激进的结果。α的示例值包括0.2、0.5、0.8、1、1.2、1.5、2、2.5、3等。在一些实施方式中,α可以基于激进性控制参数值来确定。例如,响应于指示以降噪为代价优先考虑语音保留的激进性控制参数值,可以将α设置为相对较小的值,反之亦然。
在510处,过程500可以向机器学习模型提供有噪声音频信号的频域表示,所述机器学习模型的架构可选地取决于激进性控制参数值。如上文结合图1所描述的,有噪声音频信号的频域表示作为机器学习模型的输入提供,所述频域表示可以是如上文结合框506所描述的有噪声音频信号的带状频谱。如上文结合图3和图4所描述的,可能已经基于激进性控制参数值确定或选择了机器学习模型的架构。例如,在机器学习模型包括CNN的实例中,卷积层中使用的滤波器大小可以基于激进性控制参数值来确定。作为更具体的示例,如在图3中示出并在上文中结合该图进行描述的,较大的滤波器大小可能使机器学习模型产生更加保守的结果,所述结果相对于降噪优先考虑语音保留。相反,较小的滤波器大小可能使机器学习模型产生更加激进的结果,所述结果相对于语音保留优先考虑降噪。作为另一个示例,在机器学习模型包括U-Net的实例中,可以基于激进性控制参数值来确定或选择U-Net的深度,如上文结合图4所描述的。作为更具体的示例,U-Net的深度可能相对较大,以生成更加激进的结果,所述结果相对于降噪优先考虑语音保留。相反,可以利用相对较浅的U-Net来生成更加保守的结果,所述结果相对于降噪优先考虑语音保留。
在512处,过程500可以使用机器学习模型来生成预测去噪掩码。例如,如上文结合图1所描述的,当有噪声音频信号的频域表示作为机器学习模型的输入提供时,预测去噪掩码可以是机器学习模型的输出。
在514处,过程500可以确定表示预测去噪掩码相对于训练样本的目标去噪掩码的误差的损失,其中,所述损失是使用损失函数来确定的,所述损失函数可选地取决于激进性控制参数值。例如,在一些实施方式中,可以使用激进性控制参数值来设置损失函数中使用的惩罚因子,其中,惩罚因子指示损失函数是对噪声抑制过度还是对噪声抑制不足进行更严重的惩罚。在一个示例中,损失函数可以表示为:
损失=mean(P*|ypred(i,j)-ytrue(t,j)|γ)
在以上给出的等式中,γ表示幂因子,ytrue表示训练样本的目标去噪掩码,ypred表示由机器学习模型在框512处生成的预测去噪掩码,i表示帧索引,j表示频率带索引,并且P表示惩罚权重矩阵。在一些实施方式中,P具有与ypred和ytrue相同的维度。
在一些实施例中,P可以通过下式确定:
在给定以上等式的情况下,在a>b的实例中,损失函数中应用的惩罚权重在预测去噪掩码小于目标去噪掩码的实例中可能较大,这指示以牺牲语音保留为代价的过度噪声抑制。
在一些实施例中,损失函数可以通过下式确定:
损失=|ypred-ytrue|*(sign(ytrue-ypred)*α+β))
在以上给出的等式中,α和β的值可以是用作用于惩罚噪声抑制过度或噪声抑制不足的惩罚权重的两个参数。α和β的值可以基于激进性控制参数值来设置。α和β的示例值包括0.3、0.5、0.7、1、1.2等。
注意,在以上给出的损失函数示例中,不论包括在训练样本中的音频内容的类型如何,都使用相同的惩罚权重参数。例如,对对话片段和非对话片段使用相同的惩罚权重参数。在一些实施方式中,当应用损失函数时,可以不同地考虑对话片段和非对话片段。应当注意,在一些实施例中,可以使用任何合适的技术来识别对话片段和非对话片段,如通过识别指定音频信号的特定帧或片段是对应于对话片段还是非对话片段的元数据或其他标志等。这可以允许相对于非对话片段,对话片段的以牺牲语音保留为代价的噪声过度抑制将受到更重的惩罚。在一些实施例中,损失函数可以包括两个分量,一个设置应用于对话片段的第一惩罚权重,另一个设置应用于非对话片段的第二惩罚权重。损失函数的两个分量可以由选通阈值g选通。这种损失函数的示例由下式给出:
损失=mean(g*P1*|ypred(i,j)-ytrue(i,j)|γ+(1-g)*P2*|ypred(i,j)-ytrue(i,j)|γ
在以上给出的等式中,选通控制可以由下式给出:
在以上给出的损失函数中,P1和P2可以表示基于选通控制分别应用于对话片段和非对话片段的两个惩罚权重矩阵。在一个示例中,P1可以由下式给出:
如上所述,a和b是常数,所述常数可以基于激进性控制参数值来确定,以用于控制对话片段的相对于噪声抑制不足的惩罚的噪声抑制过度的惩罚。
在一个示例中,P2可以由下式给出:
类似于上文结合P1所描述的,c和d表示常数,所述常数可以基于激进性控制参数值来确定,以相对于非对话片段的噪声抑制不足的惩罚来控制噪声抑制过度的惩罚。
在516处,过程500可以基于(多个)损失来更新机器学习模型的权重。例如,过程500可以基于损失来更新与机器学习模型的一层或多层相关联的权重。可以使用任何合适的技术来更新权重,比如梯度下降、分批梯度下降等。注意,在一些实施方式中,过程500可以分批更新权重,而不是更新每个训练样本的权重。
在518处,过程500可以确定机器学习模型的训练是否已经完成。例如,过程500可以确定是否已经处理了所有训练样本,是否已经完成了多于预定数量的训练时期,和/或机器学习模型的权重在连续训练迭代中的变化是否小于预定变化阈值。
如果在518处,过程500确定机器学习模型的训练尚未完成(在框518处为“否”),则过程500可以循环回到框506,并且可以例如用训练集中的另一训练样本继续训练机器学习模型。在一些实施方式中,过程500可以循环通过框506-518,直到过程500确定训练完成。
相反,如果在518处,过程500确定机器学习的训练已经完成(在518处为“是”),则过程500可以继续到框520,并且可以可选地利用经训练的机器学习模型。例如,在一些实施例中,过程500可以将表示经训练的机器学习模型的权重存储为参数。继续该示例,过程500可以在推断时将测试的有噪声音频信号的频域表示应用于经训练的机器学习模型,以生成可以用于生成去噪音频信号的去噪掩码,如在图1和图2中示出并在上文中结合这些图所描述的。在一些实施例中,与经训练的机器学习模型相关联的权重可以被提供给终端用户设备,所述终端用户设备然后可以在推断时利用这些权重来对有噪声音频信号进行去噪。
在一些实施方式中,可以将激进性控制参数应用于例如由机器学***滑来修改去噪掩码。
图6是用于基于激进性控制参数来修改去噪掩码的示例过程600的流程图。在一些实施例中,过程600的框可以由控制***执行。这种控制***的示例在图7中示出并在下文中结合该图进行描述。在一些实施方式中,过程600的框可以按照不同于图6所示的顺序执行。在一些实施例中,过程600的两个或更多个框可以基本上并行执行。在一些实施例中,过程600的一个或多个框可以被省略。
过程600可以开始于602,即确定激进性控制参数值,所述激进性控制参数值调节在对有噪声音频信号进行去噪时要应用的语音保留的程度。如上所述,在一些实施方式中,可以基于要使用机器学习模型进行处理的音频内容的类型来确定激进性控制参数值。例如,在对包括会话内容(例如,具有多个讲话者)等的音频内容应用去噪的实例中,激进性控制参数可以被设置为相对较低并且因此相对于降噪优先考虑语音保留的值。相反,在对包括单个讲话者或其他非对话繁重内容的音频内容应用去噪的实例中,激进性控制参数可以被设置为相对较大的值,所述值相对于语音保留优先考虑降噪。应当注意,在一些实施方式中,过程600可以确定要去噪的有噪声音频信号的特定片段包括对话内容还是非对话内容。例如,在一些实施例中,过程600可以基于与有噪声音频信号相结合地存储的指示有噪声音频信号的包括对话的部分或片段的元数据或标志来确定片段是包括对话内容还是非对话内容。还应当注意,一些有噪声音频信号诸如电影声轨等可以包括一些对话片段和一些非对话片段。在这种情况下,过程600可以基于例如特定片段或部分是否包括对话来为有噪声音频信号的不同片段或部分设置不同的激进性控制参数值。
在604处,过程600可以获得去噪掩码,其中,去噪掩码是使用有噪声音频信号的频域表示来生成的。例如,如上文结合图1、图2和图5所描述的,有噪声音频信号的频域表示可以包括有噪声音频信号的频谱。在一些实施例中,有噪声音频信号的频域表示可以包括有噪声音频信号的频谱,所述频谱例如基于表示与人类耳蜗相关联的感知特性的感知变换、通过对频谱的频率仓进行频带划分来修改。
在一些实施例中,可以通过向机器学习模型提供有噪声音频信号的频域表示来获得去噪掩码,所述机器学习模型已经被训练成生成去噪掩码作为输出。机器学习模型可以具有任何合适的架构,例如,CNN、U-Net、循环神经网络(RNN)等。在一些实施例中,可能与在框602处获得的激进性控制参数相同或可能不同的激进性控制参数可能已经在机器学习模型的训练期间使用,或者用于选择机器学习模型的架构,如上文结合图2至图5所描述的。然而,应当理解,在一些实施方式中,可以使用在训练机器学习模型和/或构建机器学习模型时先前没有使用激进性控制参数的机器学习模型。去噪掩码在本文中通常被称为MSM(t,f)。
在606处,过程600可以通过执行以下各项中的至少一项来修改去噪掩码:1)对去噪掩码应用幂律压缩器;2)对去噪掩码应用高斯压缩器;和/或3)对去噪掩码进行平滑。
在一些实施方式中,可以应用幂律压缩器以通过下式来生成经修改的去噪掩码(在本文中通常被称为MSMmod(t,f)):
MSMmod(t,f)=MSM(t,f)α
在以上给出的等式中,α是应用于在框604处获得的去噪掩码的幂值。α的值可以基于激进性控制参数值来确定。例如,响应于基于激进性控制参数值确定去噪将更加保守,例如,相对于降噪优先考虑语音保留,α的值可以被选择为处于0与1之间。用于生成相对于降噪优先考虑语音保留的结果的α的示例值包括0.1、0.2、0.6、0.8等。相反地,响应于基于激进性控制参数值确定去噪将更加激进,例如,相对于语音保留优先考虑降噪,α的值可以被选择为大于1。用于生成相对于语音保留优先考虑降噪的结果的α的示例值包括1.05、1.1、1.2、1.3、1.8等。
在一些实施方式中,可以应用高斯压缩器以通过下式来生成经修改的去噪掩码(在本文中通常被称为MSMmod):
在以上给出的等式中,var可以是可调参数,其可以至少部分地基于激进性控制参数值来确定。对去噪掩码应用高斯压缩器可以使得经修改的去噪掩码具有s形,其中,经修改的去噪掩码的值对于音频信号的高信噪比部分大于约0.5,并且对于音频信号的低信噪比部分小于约0.5。var的值可以相应地使函数向左或向右移位,从而改变信噪比方面的中点,在所述中点处,经修改的去噪掩码的值大于或小于0.5。注意,s形函数本质上可以是在下限和上限处被截断的指数函数。应当注意,在一些实施方式中,通过将经修改的去噪掩码设置为原始去噪掩码和应用高斯压缩器之后的经修改的去噪掩码中的最小值,可以在利用经修改的去噪掩码的移位S形的同时保持原始去噪掩码值。
在一些实施方式中,可以对去噪掩码执行平滑以生成经修改的去噪掩码。在一些实施例中,可以通过用与前一帧相关联的掩码值对与当前帧相关联的掩码值进行平滑来执行平滑。可以使用任何合适的滤波技术来执行平滑,比如均值滤波、中值滤波、自适应滤波等。在一些实施例中,较大的滤波器大小可以在去噪音频信号中产生更加保守的结果。相应地,用于执行滤波/平滑的滤波器大小可以通过激进性控制参数值来确定。特别地,响应于指示优选更加保守的结果或者相对于降噪优先考虑语音保留的激进性控制参数值,可以使用较大的滤波器大小。应当注意,平滑可以仅用于生成相对于在框604处获得的原始去噪掩码优先考虑语音保留而不是降噪的更加保守的去噪音频信号。然而,可以使用激进性控制参数值来改变去噪音频信号中的语音保留的程度。
应当注意,可以相对于时间轴或者相对于频率轴执行平滑/滤波。在一个示例中,可以通过下式在时间轴上执行平滑/滤波:
MSMmod(t,f)=max(Mask(t,f),β*Mask(t-1,f))
在以上给出的等式中,β是可以至少部分地基于激进性控制参数值来确定以改变去噪音频信号中的语音保留程度的参数,其中,β的较大值对应于增加的语音保留或更加保守的结果。在一些实施例中,β可以在0至1的范围内,包括0和1。β的示例值包括0、0.2、0.5、0.7、0.8、1等。
在另一个示例中,可以通过下式在频率轴上执行平滑/滤波:
MSMmod(t,f)=max(Mask(t,f),β*Mask(t,f-1))
类似于上述内容,β是可以至少部分地基于激进性控制参数值来确定以改变去噪音频信号中的语音保留程度的参数,其中,β的较大值对应于增加的语音保留或更加保守的结果。在一些实施例中,β可以在0至1的范围内。β的示例值包括0、0.2、0.5、0.7、0.8、0.99等。
应当注意,可以以多种方式修改去噪掩码。例如,在一些实施例中,可以通过应用压缩器函数(幂律压缩器、高斯压缩器等)以及通过执行平滑/滤波来修改去噪掩码。
在608处,过程600将经修改的去噪掩码应用于有噪声音频信号的频域表示以获得去噪频谱。在给定用MSMmod(t,f)表示的经修改的去噪掩码以及用X(t,f)表示的有噪声音频信号的频域表示的情况下,表示为Y(t,f)的去噪频谱可以通过下式确定:
Y(t,f)=X(t,f)*MSMmod(t,f)
换句话说,在一些实施方式中,可以通过将有噪声音频信号的频域表示与经修改的去噪掩码相乘来获得去噪频谱。
在610处,过程600可以生成去噪频谱的时域表示以生成去噪音频信号。例如,如上文结合图1所描述的,过程600可以对去噪频谱应用逆频率变换以生成去噪音频信号。在一些实施方式中,过程600可以在应用逆频率变换之前反转频率仓的频带。
图7是示出了能够实施本公开的各个方面的装置的部件的示例的框图。与本文提供的其他图一样,图7中示出的元件的类型和数量仅作为示例提供。其他实施方式可以包括更多、更少和/或不同类型和数量的元件。根据一些示例,装置700可以被配置用于执行本文公开的方法中的至少一些方法。在一些实施方式中,装置700可以是或者可以包括电视、音频***的一个或多个部件、移动设备(诸如蜂窝电话)、膝上型计算机、平板设备、智能扬声器或另一种类型的设备。
根据一些替代性实施方式,装置700可以是或者可以包括服务器。在一些这样的示例中,装置700可以是或者可以包括编码器。因此,在一些情况下,装置700可以是被配置用于在如家庭音频环境的音频环境内使用的设备,然而在其他情况下,装置900可以是被配置用于在“云”中使用的设备,例如,服务器。
在该示例中,装置700包括接口***705和控制***710。在一些实施方式中,接口***705可以被配置用于与音频环境中的一个或多个其他设备进行通信。在一些示例中,音频环境可以是家庭音频环境。在其他示例中,音频环境可以是另一种类型的环境,比如办公室环境、汽车环境、火车环境、街道或人行道环境、公园环境等。在一些实施方式中,接口***705可以被配置用于与音频环境的音频设备交换控制信息和相关联的数据。在一些示例中,控制信息和相关联的数据可以与装置700正执行的一个或多个软件应用程序有关。
在一些实施方式中,接口***705可以被配置用于接收内容流或用于提供内容流。内容流可以包括音频数据。音频数据可以包括但可以不限于音频信号。在一些实例中,音频数据可以包括如声道数据和/或空间元数据等空间数据。在一些示例中,内容流可以包括视频数据和与视频数据相对应的音频数据。
接口***705可以包括一个或多个网络接口和/或一个或多个外部设备接口(诸如一个或多个通用串行总线(USB)接口)。根据一些实施方式,接口***705可以包括一个或多个无线接口。接口***705可以包括用于实施用户接口的一个或多个设备,比如一个或多个麦克风、一个或多个扬声器、显示***、触摸传感器***和/或手势传感器***。在一些示例中,接口***705可以包括控制***710与存储器***诸如图7中示出的可选存储器***715之间的一个或多个接口。然而,在一些情况下,控制***710可以包括存储器***。在一些实施方式中,接口***705可以被配置用于从环境中的一个或多个麦克风接收输入。
例如,控制***710可以包括通用单芯片或多芯片处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑设备、离散门或晶体管逻辑、和/或离散硬件部件。
在一些实施方式中,控制***710可以驻留在多于一个设备中。例如,在一些实施方式中,控制***710的一部分可以驻留在本文描绘的环境之一内的设备中,并且控制***710的另一部分可以驻留在环境之外的设备中,例如服务器、移动设备(例如,智能电话或平板电脑)等。在其他示例中,控制***710的一部分可以驻留在一种环境内的设备中,并且控制***710的另一部分可以驻留在所述环境的一个或多个其他设备中。例如,控制***710的一部分可以驻留在实施基于云的服务的设备诸如服务器中,并且控制***710的另一部分可以驻留在实施基于云的服务的另一设备诸如另一服务器、存储器设备等中。在一些示例中,接口***705还可以驻留在多于一个设备中。
在一些实施方式中,控制***710可以被配置用于至少部分地执行本文公开的方法。根据一些示例,控制***710可以被配置用于实施在训练机器学习模型时利用激进性控制参数、在后处理中利用激进性控制参数等的方法。
本文描述的一些或所有方法可以由一个或多个设备根据存储在一种或多种非暂态介质上的指令(例如,软件)来执行。这种非暂态介质可以包括比如本文描述的那些存储器设备,包括但不限于随机存取存储器(RAM)设备、只读存储器(ROM)设备等。一种或多种非暂态介质可以例如位于图7中所示的可选存储器***715和/或控制***710中。因此,可以在其上存储有软件的一种或多种非暂态介质中实施本公开中描述的主题的各个创新方面。例如,软件可以包括用于在训练机器学习模型时利用激进性控制参数、在后处理中利用激进性控制参数等的指令。例如,软件可以由如图7的控制***710等控制***的一个或多个部件执行。
在一些示例中,装置700可以包括图7中示出的可选麦克风***720。可选麦克风***720可以包括一个或多个麦克风。在一些实施方式中,一个或多个麦克风可以是另一个设备诸如扬声器***的扬声器、智能音频设备等的一部分或与其相关联。在一些示例中,装置700可以不包括麦克风***720。然而,在一些这样的实施方式中,装置700仍然可以被配置成经由接口***710接收音频环境中的一个或多个麦克风的麦克风数据。在一些这样的实施方式中,装置700的基于云的实施方式可以被配置成经由接口***710从音频环境中的一个或多个麦克风接收麦克风数据或至少部分地与麦克风数据相对应的噪声指标。
根据一些实施方式,装置700可以包括图7中示出的可选扩音器***725。可选扩音器***725可以包括一个或多个扩音器,所述扩音器在本文中也可以被称为“扬声器”,或更通常地被称为“音频再现换能器”。在一些示例(例如,基于云的实施方式)中,装置700可以不包括扩音器***725。在一些实施方式中,装置700可以包括耳机。耳机可以经由耳机插孔或经由无线连接(例如,蓝牙)连接或耦接到装置700。
本公开的一些方面包括一种被配置(例如,被编程)成执行所公开方法的一个或多个示例的***或设备,以及一种存储用于实施所公开方法或其步骤的一个或多个示例的代码的有形计算机可读介质(例如,磁盘)。例如,一些公开的***可以是或者包括可编程通用处理器、数字信号处理器或微处理器,该可编程通用处理器、数字信号处理器或微处理器用软件或固件编程为和/或以其他方式被配置成对数据执行各种操作中的任一个,包括所公开方法或其步骤的实施例。这样的通用处理器可以是或者包括计算机***,该计算机***包括输入设备、存储器和处理子***,该处理子***被编程(和/或以其他方式被配置)为响应于向其断言的数据而执行所公开方法(或其步骤)的一个或多个示例。
一些实施例可以被实施为可配置的(例如,可编程的)数字信号处理器(DSP),该数字信号处理器被配置(例如,被编程和以其他方式被配置)为对(多个)音频信号执行需要的处理,包括对所公开方法的一个或多个示例的执行。可替代地,所公开***(或其元件)的实施例可以被实施为通用处理器(例如,个人计算机(PC)或其他计算机***或微处理器,其可以包括输入设备和存储器),该通用处理器用软件或固件编程为和/或以其他方式被配置成执行各种操作中的任一个,包括所公开方法的一个或多个示例。可替代地,本发明***的一些实施例的元件被实施为被配置(例如,被编程)成执行所公开方法的一个或多个示例的通用处理器或DSP,并且该***还包括其他元件(例如,一个或多个扩音器和/或一个或多个麦克风)。被配置成执行所公开方法的一个或多个示例的通用处理器可以耦接到输入设备(例如,鼠标和/或键盘)、存储器和显示设备。
本公开的另一方面是一种计算机可读介质(例如,磁盘或其他有形存储介质),该计算机可读介质存储用于执行所公开方法或其步骤的一个或多个示例的代码(例如,可执行以执行所公开方法或其步骤的一个或多个示例的编码器)。
虽然在本文中已经描述了本公开的具体实施例和本公开的应用,但是对于本领域普通技术人员而言显而易见的是,在不脱离本文描述的并要求保护的本公开的范围的情况下,可以对本文描述的实施例和应用进行许多改变。应当理解,虽然已经示出和描述了本公开的某些形式,但是本公开不限于所描述和示出的具体实施例或所描述的具体方法。
Claims (19)
1.一种对音频信号执行去噪的方法,包括:
由控制***确定激进性控制参数值,所述激进性控制参数值调节在对音频信号进行去噪时要应用的语音保留的程度;
由所述控制***获得训练样本的训练集,所述训练集中的训练样本具有有噪声音频信号和目标去噪掩码;以及
由所述控制***通过以下操作训练机器学习模型:
(a)生成与所述训练样本相对应的所述有噪声音频信号的频域表示,
(b)将所述有噪声音频信号的所述频域表示提供给所述机器学习模型,
(c)基于所述机器学习模型的输出生成预测去噪掩码,
(d)确定表示所述预测去噪掩码相对于与所述训练样本相对应的所述目标去噪掩码的误差的损失,
(e)更新与所述机器学习模型相关联的权重,以及
(f)重复(a)至(e),直到达到停止标准为止,
其中,经训练的机器学习模型能够用于将有噪声测试音频信号作为输入,并生成对应的去噪测试音频信号,并且其中,所述激进性控制参数值被用于以下各项中的至少一项:1)生成在所述训练集中包括的所述有噪声音频信号的频域表示;2)修改在所述训练集中包括的所述目标去噪掩码;3)在训练所述机器学习模型之前确定所述机器学习模型的架构;或4)确定所述损失。
2.如权利要求1所述的方法,其中,生成所述有噪声音频信号的频域表示包括:
生成所述有噪声音频信号的频谱;以及
通过将所述有噪声音频信号的频谱的仓分组为多个频带来生成所述有噪声音频信号的频域表示,其中,频带数量是基于所述激进性控制参数值来确定的。
3.如权利要求1或2中任一项所述的方法,其中,修改在所述训练集中包括的所述目标去噪掩码包括对所述目标去噪掩码中的目标去噪掩码应用幂函数,并且其中,所述幂函数的指数是基于所述激进性控制参数值来确定的。
4.如权利要求1至3中任一项所述的方法,其中,所述机器学习模型包括卷积神经网络(CNN),并且其中,确定所述机器学习模型的架构包括基于所述激进性控制参数值来确定所述CNN的卷积块的滤波器大小。
5.如权利要求1至3中任一项所述的方法,其中,所述机器学习模型包括U-Net,并且其中,确定所述机器学习模型的架构包括基于所述激进性控制参数值来确定所述U-Net的深度。
6.如权利要求1至5中任一项所述的方法,其中,确定所述损失包括对所述预测去噪掩码相对于所述目标去噪掩码的误差应用惩罚权重,并且其中,所述惩罚权重是至少部分地基于所述激进性控制参数值来确定的。
7.如权利要求6所述的方法,其中,所述惩罚权重至少部分地基于与所述训练样本相关联的对应有噪声音频信号是否包括语音。
8.一种对音频信号执行去噪的方法,所述方法包括:
由控制***确定激进性控制参数值,所述激进性控制参数值调节在对音频信号进行去噪时要应用的语音保留的程度;
由所述控制***将有噪声音频信号的频域表示提供给经训练的模型以生成去噪掩码;
由所述控制***至少部分地基于所述激进性控制参数值来修改所述去噪掩码;
由所述控制***将经修改的去噪掩码应用于所述有噪声音频信号的频域表示以获得去噪频谱;以及
由所述控制***生成所述去噪频谱的时域表示以生成去噪音频信号。
9.如权利要求8所述的方法,其中,修改所述去噪掩码包括对所述去噪掩码应用压缩函数,其中,与所述压缩函数相关联的参数是基于所述激进性控制参数值来确定的。
10.如权利要求9所述的方法,其中,所述压缩函数包括幂函数,并且其中,所述幂函数的指数是基于所述激进性控制参数值来确定的。
11.如权利要求9所述的方法,其中,所述压缩函数包括指数函数,并且其中,所述指数函数的参数是基于所述激进性控制参数值来确定的。
12.如权利要求8至11中任一项所述的方法,其中,修改所述去噪掩码包括基于为所述有噪声音频信号的前一帧生成的去噪掩码对用于所述有噪声音频信号的帧的去噪掩码执行平滑。
13.如权利要求12所述的方法,其中,执行所述平滑包括将用于所述有噪声音频信号的帧的所述去噪掩码与为所述有噪声音频信号的前一帧生成的所述去噪掩码的加权版本相乘,其中,用于生成所述加权版本的权重是基于所述激进性控制参数值来确定的。
14.如权利要求12或13中任一项所述的方法,其中,用于所述有噪声音频信号的帧的所述去噪掩码包括时间轴和频率轴,并且其中,相对于所述时间轴执行平滑。
15.如权利要求12或13中任一项所述的方法,其中,用于所述有噪声音频信号的帧的所述去噪掩码包括时间轴和频率轴,并且其中,相对于所述频率轴执行平滑。
16.如权利要求8至15中任一项所述的方法,其中,所述激进性控制参数值是基于所述有噪声音频信号的当前帧是否包括语音来确定的。
17.如权利要求8至16中任一项所述的方法,进一步包括使生成的去噪音频信号经由一个或多个扩音器或耳机呈现。
18.一种装置,其被配置用于实施如权利要求1至17中任一项所述的方法。
19.一种或多种非暂态介质,其上存储有软件,所述软件包括用于控制一个或多个设备执行如权利要求1至17中任一项所述的方法的指令。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNPCT/CN2021/129573 | 2021-11-09 | ||
CN2021129573 | 2021-11-09 | ||
US63/289,846 | 2021-12-15 | ||
US202263364661P | 2022-05-13 | 2022-05-13 | |
US63/364,661 | 2022-05-13 | ||
PCT/US2022/049193 WO2023086311A1 (en) | 2021-11-09 | 2022-11-08 | Control of speech preservation in speech enhancement |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118215961A true CN118215961A (zh) | 2024-06-18 |
Family
ID=91450988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280074139.3A Pending CN118215961A (zh) | 2021-11-09 | 2022-11-08 | 对语音增强中的语音保留的控制 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118215961A (zh) |
-
2022
- 2022-11-08 CN CN202280074139.3A patent/CN118215961A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112105902B (zh) | 基于机器学习的用于音频编码和解码的基于感知的损失函数 | |
US10755728B1 (en) | Multichannel noise cancellation using frequency domain spectrum masking | |
JP6987075B2 (ja) | オーディオ源分離 | |
CN104637491A (zh) | 用于内部mmse计算的基于外部估计的snr的修改器 | |
JP6764923B2 (ja) | 音声処理方法、装置、デバイスおよび記憶媒体 | |
EP3970141A1 (en) | Method and apparatus for speech source separation based on a convolutional neural network | |
EP4189677B1 (en) | Noise reduction using machine learning | |
US20240177726A1 (en) | Speech enhancement | |
CN113571047B (zh) | 一种音频数据的处理方法、装置及设备 | |
CN114373473A (zh) | 通过低延迟深度学习实现同时降噪和去混响 | |
CN104637493A (zh) | 改进噪声抑制性能的语音概率存在修改器 | |
WO2023086311A1 (en) | Control of speech preservation in speech enhancement | |
CN104637490A (zh) | 基于mmse语音概率存在的准确正向snr估计 | |
WO2015027168A1 (en) | Method and system for speech intellibility enhancement in noisy environments | |
CN108899041B (zh) | 语音信号加噪方法、装置及存储介质 | |
CN118215961A (zh) | 对语音增强中的语音保留的控制 | |
WO2023287782A1 (en) | Data augmentation for speech enhancement | |
WO2023118644A1 (en) | Apparatus, methods and computer programs for providing spatial audio | |
CN110648681B (zh) | 语音增强的方法、装置、电子设备及计算机可读存储介质 | |
US20230402050A1 (en) | Speech Enhancement | |
CN116092465B (zh) | 一种车载音频降噪方法、装置、存储介质和电子设备 | |
US20230343312A1 (en) | Music Enhancement Systems | |
EP4258263A1 (en) | Apparatus and method for noise suppression | |
Qiang et al. | Speech Dereverberation Based on Scale-Aware Mean Square Error Loss | |
GB2620747A (en) | Method and apparatus for speech enhancement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |