特点
power-normalized cepstral coefficients相比于MFCC特征:
- 在噪声和混响场景下提升识别效果,尤其在训练语料是clean语音的时候
- 相比于MFCC,计算量提升34.6%
使用pncc相比mfcc,噪声和口音测试集可以得到10-15%的相对提升
细节
和MFCC/PLP特征的整体对比如上图
filter bank
相比于MFCC的triangular filters,PNCC使用gammatone filters,40维,截止频率分别是200/8000。
获得
P
[
m
,
l
]
P[m,l]
P[m,l],m表示frame,l表示channel
medium-time power calculation
由于噪声的能量变化相比语音慢很多,所以更大的时间窗口可以得到更好的性能,所以对每一帧进行了平滑处理(左右2帧做平均)。
Q
ˉ
[
m
,
l
]
=
1
2
M
+
1
∑
m
′
=
m
−
M
m
+
M
P
[
m
′
,
l
]
\bar Q[m,l]=\frac{1}{2M+1}\sum_{m'=m-M}^{m+M}P[m',l]
Qˉ[m,l]=2M+11m′=m−M∑m+MP[m′,l]
得到的
Q
ˉ
[
m
,
l
]
\bar Q[m,l]
Qˉ[m,l]用于后面的噪声估计和补偿
asymmetric noise suppression
因为语音的能量相比噪声变化快,所以使用谱减法来过滤掉低频部分以达到抑制噪声的目的。
其中的temperal masking的引入可以减弱混响的影响,首先获得每个channel的moving peak,如果某一帧的能量低于这个peak曲线,缩小对应的能量。
获得
R
ˉ
[
m
,
l
]
\bar R[m,l]
Rˉ[m,l]
spectral weight smoothing
在不同的channel之间做平滑。
s
ˉ
[
m
,
l
]
=
(
1
l
2
−
L
1
+
1
∑
l
′
=
l
1
l
2
R
ˉ
[
m
,
l
′
]
Q
ˉ
[
m
,
l
′
]
)
\bar s[m,l]=(\frac{1}{l_2-L_1+1}\sum_{l'=l_1}^{l_2}\frac{\bar R[m,l']}{\bar Q[m,l']})
sˉ[m,l]=(l2−L1+11l′=l1∑l2Qˉ[m,l′]Rˉ[m,l′])
其中
l
2
=
m
i
n
(
l
+
N
,
L
)
l_2=min(l+N,L)
l2=min(l+N,L),
L
L
L表示channel的个数,
l
1
=
m
a
x
(
l
−
N
,
1
)
l_1=max(l-N,1)
l1=max(l−N,1),
N
N
N设为4
S
ˉ
[
m
,
l
]
\bar S[m,l]
Sˉ[m,l]通过medium-time power calculation实现了在时间维度上的平滑,通过spectral weight smoothing则实现了在频率维度上的平滑,时域是左右2帧,频域是左右4个channel
最后调制
P
[
m
,
l
]
P[m,l]
P[m,l]得到
T
[
m
,
l
]
=
P
[
m
,
l
]
S
ˉ
[
m
,
l
]
T[m,l]=P[m,l]\bar S[m,l]
T[m,l]=P[m,l]Sˉ[m,l]
mean power normalization
均值的获取使用online的形式
μ
[
m
]
=
λ
μ
μ
[
m
−
1
]
+
1
−
λ
μ
L
∑
l
=
0
L
−
1
T
[
m
,
l
]
\mu[m]=\lambda_{\mu}\mu [m-1]+\frac{1-\lambda_{\mu}}{L}\sum_{l=0}^{L-1}T[m,l]
μ[m]=λμμ[m−1]+L1−λμl=0∑L−1T[m,l]
归一化以后:
U
[
m
,
l
]
=
k
T
[
m
,
l
]
μ
[
m
]
U[m,l]=k\frac{T[m,l]}{\mu [m]}
U[m,l]=kμ[m]T[m,l]
###rate-level nonlinearity
相比于MFCC使用的log非线性函数,PNCC使用指数函数,更符合人耳听觉神经的压缩感知
V
[
m
,
l
]
=
U
[
m
,
l
]
1
/
15
V[m,l]=U[m,l]^{1/15}
V[m,l]=U[m,l]1/15
参考
Power-Normalized Cepstral Coefficients (PNCC) for Robust Speech Recognition
http://www.cs.cmu.edu/~robust/archive/algorithms/PNCC_C