杨道武, 陈文洁, 陈爱斌
(1.中南林业科技大学 计算机与信息工程学院 湖南 长沙 410004;2.中南林业科技大学 人工智能应用研究所 湖南 长沙 410004)
音频源分离的目的是从给定的混合音乐信号中分离出独立的声源。基于深度学习的许多方法被用来解决该任务,一般可以分为波形到波形的时域模型和基于谱图的模型两类。谱图是时域波形的紧凑表示,典型的基于谱图的模型是对混合波形应用短时傅里叶变换(STFT)来获得输入谱图,然后根据这个输入估计声谱图,最后通过逆STFT(ISTFT)恢复音频波形。由于音频的高时间分辨率,直接在时域波形上操作的网络比在谱图上运行的网络需要更大的卷积核。因此,基于波形的模型中可训练网络参数通常多于基于谱图的模型。
此外,大多数基于深度学习的音频源分离模型都是通过训练单一模型来估计多个信号源。在这种情况下,模型根据应用的条件输出特定源,一个数据样本通常需要在每个训练期间多次经过模型。多源分离的一个简单扩展是一次生成多个输出[1],但这种方法存在一个可伸缩性问题,即随着乐器数量的增多,输出源数量的增加会导致共享瓶颈,并出现性能下降以及内存使用效率低等问题。条件反射学习[2-3]借助于条件控制机制,可以分离不同的乐器,因为它不需要多头输出层,所以不存在共享瓶颈。例如,Conditioned-U-Net[2]通过特征线性调制(FiLM)[4]来扩展U-Net[5-6],将混合音频的频谱图和控制变量作为输入,其中控制变量指示要分离的乐器,并输出目标乐器的估计频谱图。同时,基于谱图的语音分离[7]和语音增强[8]方法采用频率变换(FT)块来捕获频率模式,并经过堆叠二维卷积得到显著的结果。但对于小尺寸的卷积来说,很难确定其沿频率轴的长期依赖性关系。
本文引入编解码器形式,编码器将输入的混合频谱图转换成一个缩小的类谱图表示,解码器接收并返回估计的目标谱图;寻找一组通用的源分离过滤器,以混合音频信号的频谱图和控制变量为输入,由控制变量定义的分离乐器为输出。该方法的优点在于直接使用不同工具之间的共性,且该架构具有扩展性。尽管FT块可以通过捕获在所有音频源中观察到的常见频率模型来提高源失真比,但这种完全连接形式缺少多样化和更多的非线性变化。因此,本文采用重参数化结构思想,提出一种替代的时频转换块,称为时频重参数变换卷积(TFR),以同时获取声源中的时域和频域特征。
与传统的U-Net不同,本文在网络最前端使用一个复杂的特征提取器,将k个二维卷积层收集的信息串联起来,称为类U-Net网络。本文建立了一个基于条件控制机制的类U-Net网络,利用条件生成器生成的条件参数对中间特征进行调整,并提出一种新型的时频转换块,可以捕获与音频源相关的时频模式。
(1)
其中:∠X(t,f)是混合音频片段的相位;⊙是元素方面的乘法。学习目标是最小化原始音频源和估计源之间的基于音频的l2范数,即
(2)
基于复值谱图的音频源条件分离框架如图1所示,主要接收一个c通道的混合源信号,并输出c个通道的声音信号。谱图提取层通过对c个通道输入信号应用STFT来提取混合谱图,STFT的输出是一个2c通道的复数谱图,把虚部和实部看作独立的实值通道,可以得到混合谱图M∈Rc×T×F作为2c通道的实值谱图M′∈R2c×T×F。复值谱图以经过STFT后的混合信号的谱图M为输入,估计目标谱图T∈R2c×T×F的神经网络,并用于接下来的音频信号重构。信号重建层将估计的谱图T重构为复值谱图T′∈Rc×T×F,然后,通过ISTFT恢复估计的音频信号。对于给定的混合谱图,以监督的方式训练复值谱图估计网络,以使音频信号的输出与实测谱图之间的均方误差最小。
图1 基于复值谱图的音频源条件分离框架Figure 1 A framework for conditional separation of audio sources based on complex-valued spectrograms
此外,还引入编解码器。编码器第一层由k个1×2卷积层组成,用于调整通道数,然后进行线性整流函数[9],中间层保留通道数。为了恢复原来的通道数,对最后一个TFR块的输出应用一个1×2卷积,用于2c个输出通道的变换。由于目标谱图是复数的,在这里不应用任何激活函数。为从输入信号中捕获更多的特征,将k个1×2卷积层收集的信息串联起来,多核滤波器通过这种方式能够以更高的保真度捕获更宽的频率范围。将随后的网络层设计为改进的U-Net网络,扩展U-Net结构如图2所示。
图2 扩展U-Net结构Figure 2 Extending U-Net structure
在图2中,TFR-TDF块将类似光谱图的张量输入到一个同样大小的张量中(通道数可能不同),下采样/上采样在时频域中输入张量的比例(减半/翻倍),使用跨步卷积和转置卷积用于下采样和上采样。下采样通过降低输入的维数,同时为分离保留相关信息,以获取上下文特征信息,创建一个压缩的、深层的输入表示。上采样用于精确的定位,重构和解释深层特征,并将其转换为最终的声谱图。跳过连接在编码器和解码器之间串联相同比例的输出特征映射,有助于U-Net网络恢复数据的细粒度细节。
不同于最初的U-Net,本文通过应用FiLM层来控制解码器中的内部特征。应用FiLM是调节网络的一种有效方法,FiLM允许在原始模型的任何深度插入一个或多个FiLM层来调制神经网络,主要通过对中间特征应用仿射变换来约束网络计算,
FiLM(x)=γ(z)·x+β(z),
(3)
其中:x是FiLM的输入,即要修改的中间特征;γ和β是要学习的参数,根据外部信息z缩放和调节x。FiLM的输出具有与中间特征输入x相同的尺寸。
本文提出的TFR-TDF块如图3所示。TFR块由密集连接的复合重参数层组成,其中每一层用(3×3-BN-1×1-BN+平均池化-BN+1×1-BN)来表示。这一记法用三个分支的加和来参数化3×3的二维卷积,常被应用于时频域的类谱输入表示。训练二维滤波器以联合捕获沿频率和时间轴的特征,通过对网络高效推理法则的探索,用多分支的结构丰富卷积块的特征空间,最后融合成一个主分支。此外,将3×3卷积设置为深度可分离卷积。然后,引用一个TDF块[7]用于密集输出,并添加一个残差连接以实现高效的梯度流。
图3 TFR-TDF块Figure 3 TFR-TDF block
假设二维卷积层(例如TFR)采用类似输入谱图的内在表示形式X∈Rc×T×F,并输出相同大小的X′,将TDF块以时间分布的方式分别应用于每个帧(即X′[i,j,:])。每一层都定义为以下连续的操作:完全连接的层;批归一化[10];ReLU。f1和f2分别表示输入和输出的频谱箱数,并设置瓶颈因素bn_factor。如果没有设置,则TDF块仅包含一个线性层,隐藏单元bn_units取16和f2/16之间的最大值。滤波器应用于像特征图一样的谱图的单个帧,这些块尝试提取与时间无关的特性,这些特性有助于在不使用帧间操作的情况下分离声音。正如文献[11]中所述,密集连接的结构使每一层都能将梯度直接传播到前面所有的层,使深层CNN训练更加有效。
尽管TFR-TDF块也可以通过捕获所有乐器中观察到的共同频率模式来提高源失真比,但它并没有很好地捕获频率轴存在的长距离相关性。为此,分离模型采用缩放点积注意力机制,进一步提高音频源的注意力频率变换。首先对于给定帧V∈RF,复制TDF的第二层L,获得依赖于潜在乐器源的频率相关性,用V′∈RF×L表示。以嵌入ze∈RE的乐器作为输入,它有一个可学习的权重K∈RL×dk,其中dk表示每个乐器所隐藏的维数。通过应用一个ze到dk的线性层,可得Q∈Rdk。计算输出为
(4)
算法模型在编码器中的每个TDF之后和解码器的每个FiLM层之后应用该频率变换注意力机制。
条件生成器执行核心计算并获得最终输出的网络,能根据外部参数表现出不同的行为。条件生成器以one-hot编码器向量z∈{0,1}L作为输入,将z投影到目标乐器的嵌入空间ze∈RE,其中E为嵌入空间的尺寸。在该网络中,ReLU作为每一层的激活函数,对最后两层应用ρ=0.5的输出,然后进行批归一化。最后一层的隐藏单元被送入两个完全连通的层中,以预测γ和β。
本文使用MUSDB18数据集[12],该数据集包含84个用于训练的音频轨道,16个用于验证的音频轨道和50个用于测试的音频轨道。每个音轨都采用立体声编码,并以44 100 Hz采样,包含混合音轨以及Vocals、Drums、Bass和Other四个独立音轨。根据模型深度使用Adam[13]优化器训练模型,学习率设置为lr∈{0.000 5,0.001}。使用目标信号的均方误差(MSE)和估计值,并动态应用数据增强[14],以获得固定长度的混合音频片段,该片段包含来自不同音轨的源音频片段。使用由SiSEC2018组织者提供的官方评估工具[15],将源失真比(SDR)[16]用作评估指标。
针对公共数据集进行了消融研究,通过对比基准模型来验证所提出模块的有效性。STFT窗口大小为2 048,跳数大小为1 024,进行频谱图估计;使用帧长为128的频率帧,得到大小相同的输入样本。
基准模型的配置为:使用7个TFR-TDF块(L=3),每个TFR-TDF块包含5个TFR块,通道数的增长率设为24,设置第一层的输入通道c为24,并使用32作为条件嵌入空间的维度。
所有模型都在3 s(即128个STFT帧)的音频片段上进行训练。由于频率箱的数量远大于帧数,因此具有7个以上神经变换的模型会同时使用2×2或2×1大小的向下/向上采样层,使频率轴缩放3倍以上,同时保持时间轴上的缩放数为3。将每个TFR块设置为5个复合重参数卷积层,每个块的通道数依次设置为24、48、72、96、120。通过使用此TFR块配置,实现了基于TFR-TDF的条件分离U-Net网络。随后,将FiLM层应用于解码器的内部功能,尝试对网络进行初始化。
消融实验结果见表1。表中的“+TDF”是指在TFR和TDF之间添加一个相同副本的TDF,“no TFR”和“nokConv”分别表示仅将复合重参数卷积层和k个特征提取器替换为一个二维卷积和一个1×2的二维卷积注入基准模型。结果表明,尽管全连接层可以有效地对远程相关性进行建模,但通过将额外的TDF块注入基准模型并没有获得更佳的SDR值,这说明有很多空间可以改进。TFR-TDF具有更有效的参数和更好地捕获长时间时频依赖性的潜力,表明帧间操作对于更高质量的分离是有必要的。
表1 消融实验结果Table 1 Results of ablation experiment
此外,在MUSDB18数据集上与已有的一些模型进行了比较,表2显示了这些模型的SDR得分。为了公平比较,基准模型STFT的窗口大小设置为4 096。结果表明,本文提出的分离模型与这些已有模型性能相当。
表2 不同模型的SDR比较Table 2 Comparison of SDR by different models
本文模型能够提取潜在的乐器注意频率模式,这在Bass方面的SDR值上得到了体现。文献[7-8]研究表明,基于STFT的方法有利于语音分离,这解释了模型在Vocals方面出色的SDR表现。
本文设计了一个基于复值谱图的条件机制网络来捕获依赖于声源的时频模式,重参数化结构增加了多样化连接和训练时的非线性变化,这为基于U-Net架构的音频源分离模型的开发提供了较为实用的指导原则。通过将控制机制添加到U-Net体系结构中,并将条件学习应用于乐器源分离问题,这为系统提升了灵活性。在下一步工作中,将尝试减少模型的内存使用量和参数量,并考虑复杂任务的性能,即分离更多的乐器或分离几种乐器组合(例如吉他和钢琴),探索更有效的时频重参数化结构来捕获频率模式。