倒谱均值归一化


15

谁能解释倒谱均值归一化,卷积的等效性如何影响它?是否必须在基于MFCC的说话人识别中执行CMN?为什么卷积的属性是MFCC的基本需求?

我对这种信号处理非常陌生。请帮忙


在不使用滤波器组的情况下,将频率直接转换为melscale可以在MFCC过程中工作吗?
— 紫色

Answers:


18

只是为了弄清楚-这个属性不是基本的,但重要的。在使用DCT代替DFT进行频谱计算时,这是根本的区别。

为什么要进行倒谱均值归一化

在说话人识别中,我们要消除任何声道效果(声道的冲激响应,音频路径,房间等)。假设输入信号为且信道脉冲响应由,则记录的信号为两者的线性卷积:h [ n ]x[n]h[n]

y[n]=x[n]⋆h[n]

通过傅立叶变换,我们得到:

ÿ[F]=X[F]⋅H[F]

由于FT的卷积乘法等价特性- 这就是为什么在此步骤中FFT如此重要的特性。

计算倒频谱的下一步是获取频谱的对数:

ÿ[q]=日志⁡ÿ[F]=日志⁡(X[F]⋅H[F])=X[q]+H[q]

因为:。显然,q是quefrency。可能有人注意到,通过在时域中进行卷积倒谱,我们最终在倒谱(querency)域中增加了结果。日志⁡(一种b)=日志⁡一种+日志⁡bq

什么是倒谱均值归一化?

现在我们知道在倒频谱域中任何卷积失真都由加法表示。我们假设它们都是固定的(这是一个很强的假设,因为声道和声道的响应没有改变),并且固定的语音部分可以忽略不计。我们可以观察到,对于第i个帧,真实的是:

ÿ一世[q]=H[q]+X一世[q]

通过取所有帧的平均值,我们得到

1ñ∑一世ÿ一世[q]=H[q]+1ñ∑一世X一世[q]

定义区别:

[R一世[q]=ÿ一世[q]-1ñ∑ĴÿĴ[q]=H[q]+X一世[q]-(H[q]+1ñ∑ĴXĴ[q])=X一世[q]-1ñ∑ĴXĴ[q]

最后,我们去除了通道失真的信号。将以上所有方程式变成简单的英语:

  • 计算倒谱
  • 从每个系数中减去平均值
  • (可选)除以方差除以执行倒谱均值归一化(与减法相反)。

倒谱均值归一化是否必要?

这不是强制性的,尤其是当您试图在单个环境中识别一位发言人时。实际上,它甚至会恶化您的结果,因为它容易因附加噪声而导致错误:

ÿ[ñ]=X[ñ]⋆H[ñ]+w[ñ]

ÿ[F]=X[F]⋅H[F]+w ^[F]

日志⁡ÿ[F]=日志⁡[X[F](H[F]+w ^[F]X[F])]=日志⁡X[F]+日志⁡(H[F]+w ^[F]X[F])

在较差的SNR条件下,标记项可能会超过估算值。

尽管执行CMS时,通常可以获得很少的额外收益。如果您从系数的导数中获得更高的性能提升,那么您的识别率就会真正提高。最终的决定权取决于您,尤其是还有很多其他方法可用于改善语音识别系统。


@mun:很高兴它有所帮助。为什么不将对问题的答案标记为已接受,这样就可以消除新用户限制?
— jojek

@mun:恭喜!现在,您发布更多链接,对问题和答案+标记帖子投票。
— jojek

谢谢@jojek ..我对所有这些都很陌生。但是很高兴我解决了我的问题。
— mun 2014年

@mun:那我绝对建议您快速浏览
— 一下

在最后一个答案中,我无法真正理解“从系数导数中获得的性能提升”。你能给一些简单的解释吗?非常感谢
— Shuai Wang
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.