Page 160 - 《应用声学》2022年第4期
P. 160
658 2022 年 7 月
ˆ
2.2.2 IS代价函数 (X k − X k ),logMSE 代价函数的权重函数是对数谱
ˆ
IS代价函数由 Itakura 等 [24] 提出,并已成功应 误差 (log X k − log X k )。因此,与 logMSE 代价函数
用于语声识别。IS代价函数是计算干净语声在各频 相比,WLR 代价函数对对数谱峰的权重大于对对
率分量上的估计功率谱和真实功率谱之间的误差, 数谱谷值的权重。
其计算公式为 表 1 总结了本文所研究的 5 种基于人耳听觉的
( ) 代价函数。其中,当 p = 0 时,WE 代价函数退化成
( ) X 2 X 2
2 ˆ 2
d IS X , X = k − log k − 1. (11) MSE代价函数。
k k ˆ 2 ˆ 2
X X
k k
由式 (11) 可以看出,IS 代价函数是不对称的,它更 表 1 基于人耳听觉的代价函数
强调语声谱峰的重要性,侧重于恢复谱峰值附近的 Table 1 Cost functions based on human
auditory
[19]
干净语声。根据 Loizou 的推导,IS代价函数关于
功率谱的贝叶斯估计与 MSE 代价函数关于功率谱
代价函数 公式
的贝叶斯估计相同,可表示为
p
ˆ
ˆ
WE d WE (X k , X k ) = X (X k − X k ) 2
( ) ( ) 2 k
ˆ 2
2
2 ˆ 2
d IS X , X k = X − X k . (12) 2 ˆ 2 2 ˆ 2 2
k
k
IS
d IS (X , X ) = (X − X )
k k k k
( ˆ )
与式(11) 所示的IS代价函数相比,式(12)代价 COSH d COSH (X k , X k ) = 1 X k + X k − 1
ˆ
ˆ
2 X k X k
函数形式更简单,易推导,更适用于网络训练。实验
ˆ
ˆ
ˆ
WLR d WLR (X k , X k ) = (log X k − log X k )(X k − X k )
结果证明,在基于LSTM的语声增强算法中,式 (11)
ˆ
ˆ
logMSE d log MSE (X k , X k ) = (log X k − log X k ) 2
所示代价函数的性能比式 (12) 所示函数稍差。因
此,本文使用公式 (12)作为 IS代价函数的形式与其
3 实验结果和分析
他代价函数进行性能对比。
2.2.3 COSH 代价函数 3.1 实验设置
构 建 训 练 集 的 干 净 语 声 取 自 TIMIT 数 据
如式 (11) 所示,IS 代价函数是非对称的。Gray
库 [27] 。TIMIT 数据库包括 TIMIT 训练数据集和
等 [25] 通过将 IS代价函数的两种不同形式结合构成
TIMIT 测试数据集。训练集使用了 115 种噪声,
了一种对称性的代价函数,称为 COSH 代价函数,
包括 100 种录制环境噪声 [28] 和 15 种自制噪声类
其计算公式为
型 [29] 。在构建训练集时,从 TIMIT 训练数据集
( )
( ) X k
ˆ
d COSH X k , X k = cosh log − 1 中随机选取 3000 句不同说话人语声,与各种噪声
ˆ
X k
( ) 按照 [−5, 0, 5, 10, 15, 20] dB 的信噪比 (Signal-noise
ˆ
1 X k X k
= + − 1. (13) ratio, SNR) 进行混合,构建约 60 h 的训练集。从
ˆ
2 X k X k
TIMIT训练数据集中另选 300 句干净语声与 115 种
2.2.4 WLR代价函数
噪声按照不同SNR合成带噪语声,生成了不同SNR
为了进一步强调语声谱峰的重要性,Shikano
条件下的验证集,约为 6 h。在训练模型时,利用训
等 [26] 提出了WLR代价函数,其计算公式为
练集产生的误差根据反向传播方法对网络的权重
( ) ( )( )
ˆ
ˆ
ˆ
d WLR X k , X k = log X k − log X k X k − X k . 进行更新,利用模型在验证集上的误差判断模型的
(14) 收敛情况。
WLR 代 价 函 数 与 logMSE 代 价 函 数 相 似, 当模型训练完成之后,在测试阶段,从 TIMIT
logMSE代价函数的计算公式为 测试数据集中选取 30 句男性说话人语声和 30 句
女性说话人语声,与噪声按照不同 SNR 进行混叠,
ˆ
ˆ
( ) ( ) 2
d log MSE X k , X k = log X k − log X k . (15)
构建测试集对算法性能进行评估。为了测试算法
WLR 和 logMSE 代价函数都引入了对数谱误 在未见噪声场景下的泛化性能,将这些干净语声
差项,是对对数谱误差项的加权,但是它们的权重函 与NOISEX-92数据库 [30] 的6 种噪声类型按照不同
数不同。WLR 代价函数的权重函数是线性谱误差 SNR合成带噪语声对算法进行测试。