mmse-stsa

对于语音信号,对于单通道语音增强,y(t)=x(t)+d(t)y(t)=x(t)+d(t),其 x 是干净语音, d 是噪声, y 代表麦克风接受到的语音。对上式进行DFT得到Y(k)=X(k)+D(k)Y(k)=X(k)+D(k)
高斯模型中的统计独立性假设实际上等同于假设傅里叶展开系数是不相关的,即Y1,Y2,…相互独立,且分别都符合高斯分布

了解MMSE方法:
根据 MMSE算法介绍视频 中的解法,
对于目标函数:

J=E{[xg(z)]2}=min(1)J=E\{[x-g(z)]^2\}=min \tag{1}

p(x,z)=p(xz).p(z)(2)p(x,z)=p(x|z).p(z)\tag{2}

E{[xg(z)]2}=[xg(z)]2p(x,z)dxdz=p(z)[xg(z)]2.p(xz)dxdz(3)\begin{aligned}E\{[x-g(z)]^2\}&=\int_{-\infty}^{\infty}\int_{-\infty}^{\infty} [x-g(z)]^2 \cdot p(x,z)\, dx \,dz \\ &= \int_{-\infty}^{\infty}p(z)\int_{-\infty}^{\infty}[x-g(z)]^2.p(x|z)\,dx \,dz \tag{3} \end{aligned}

要求(3)式子最小,

[xg(z)]2.p(xz)dx(4)\int_{-\infty}^{\infty}[x-g(z)]^2.p(x|z)\,dx \tag{4}

就是要求(4)最小,把外层积分拆分为无数个z值来理解,对于每一个z值,内层积分值都最小,那么总体的积分就是最小的。
对于(4)的求解,g(z)可以看作常数项,令 a=g(z) ,同时定义

E(xz)=xp(xz)dx(5)E(x|z)=\int_{-\infty}^{\infty}xp(x|z) \,dx \tag{5}

因此 (4) 变为:

(xa)2p(xz)dx=E[(xa)2z]=E(x2z)2aE(xz)+a2(6)\begin{aligned}\int_{-\infty}^{\infty}(x-a)^2p(x |z)\,dx &=E[(x-a)^2|z] \\ &=E(x^2|z)-2aE(x|z)+a^2 \end{aligned} \tag{6}

问题变为求f(a)=E(x2z)2aE(xz)+a2f(a)=E(x^2|z)-2aE(x|z)+a^2取最小值时 a 的取值,令一阶导数为0

fa=2a2E(xz)=0(7)\frac{\partial f}{\partial a}=2a-2E(x|z)=0 \tag{7}

这里需要注意的是虽然 a=g(z)a=g(z),但对a求导时 E(xz)E(x|z)并不是关于 a 的函数,这是因为 E(xz)=xp(xz)dxE(x|z)=\int_{-\infty}^{\infty}xp(x|z) \,dx,而 p(xz)p(x|z)表示已知 z 的情况下关于 x 的概率密度函数,它是没有 z 变量的。

解得 a=E(xz)=x.p(xz)dxa=E(x|z)=\int_{-\infty}^{\infty}x.p(x|z)\,dx
同时二阶导

2fa2=2>0\frac{\partial^2 f}{\partial a^2}=2>0

可知 a=E(xz)a=E(x|z) 时取得极小值
由上面的结论可知(4)最小时g(z)=E(xz)=x.p(xz)dxg(z)=E(x|z)=\int_{-\infty}^{\infty}x.p(x|z)\,dx

对于干净语音X(k)X(k)

X(k)=A(k)ejα(k)X(k)=A(k)e^{j\alpha(k)}

对于估计干净语音X^(k)\hat{X}(k)

X^(k)=A^(k)ejα^(k)\hat{X}(k)=\hat{A}(k)e^{j\hat\alpha(k)}

对于问题

E{[A(k)A^(k)]2}=min(8)E\{[A(k)-\hat A(k)]^2\}=min \tag{8}

由(1)的解法知A^(k)=E[A(k)Y(k)]\hat A(k)=E[A(k)|Y(k)]这里的每一个 k 值都代表了一个式子
其中为什么Y(k)相当于z?因为估计干净语音A^(k)\hat A(k)是从混合语音Y(k)中估计得到的,即A^(k)=g[Y(k)]\hat A(k)=g[Y(k)]

E[A(k)Y(k)]=002πakp[ak,αkY(k)]dakdαk(9)E[A(k)|Y(k)]=\int_{0}^{\infty}\int_0^{2\pi}a_k p[a_k,\alpha_k|Y(k)]\,da_k \,d\alpha_k \tag{9}

p[ak,αkY(k)]=p[ak,αk,Y(k)]p[Y(k)](10)p[a_k,\alpha_k|Y(k)]=\frac{p[a_k,\alpha_k,Y(k)]}{p[Y(k)]} \tag{10}

p[Y(k)]=002πp[ak,αk,Y(k)]dakdαk(11)p[Y(k)]=\int_{0}^{\infty}\int_0^{2\pi}p[a_k,\alpha_k,Y(k)]\,da_k \,d\alpha_k \tag{11}

p[ak,αk,Y(k)]=p[Y(k)ak,αk]p(ak,αk)(12)p[a_k,\alpha_k,Y(k)]=p[Y(k)|a_k,\alpha_k]\cdot p(a_k,\alpha_k)\tag{12}

将(12)和(11)代入(10),则(9)变为

E[A(k)Y(k)]=002πakp[Y(k)ak,αk]p(ak,αk)002πp[Y(k)ak,αk]p(ak,αk)(13)E[A(k)|Y(k)]= \frac{\int_{0}^{\infty}\int_0^{2\pi}a_kp[Y(k)|a_k,\alpha_k]\cdot p(a_k,\alpha_k)}{\int_{0}^{\infty}\int_0^{2\pi}p[Y(k)|a_k,\alpha_k]\cdot p(a_k,\alpha_k)} \tag{13}

p[Y(k)ak,αk]p[Y(k)|a_k,\alpha_k]表示已知 ak,αka_k,\alpha_k,即X(k)X(k)Y(k)Y(k)的概率密度函数,又 Y(k)=X(k)+D(k)Y(k)=X(k)+D(k),X(k)X(k)为常数项,那么根据概率论知识,可以通过D(k)D(k)的概率密度函数来获得Y(k)Y(k)的概率密度函数。
假设噪声的分布为零均值复高斯分布

p[D(k)=z]=1πλd(k)e(z2λd(k))(14)p[D(k)=z​]=\frac{1}{πλ_d​(k)​}e^{(−\frac{∣z∣^2}{λ_d​(k)}​)} \tag{14}

Y(k)=D(k)+akejαk(15)Y(k)=D(k)+a_k e^{j\alpha_k} \tag{15}

由复高斯分布的线性性质可得

p[Y(k)ak,αk]=1πλd(k)e(Y(k)akejαk2λd(k))(16)p[Y(k)|a_k,\alpha_k]=\frac{1}{πλ_d​(k)​}e^{(−\frac{∣Y(k)-a_k e^{j\alpha_k}∣^2}{λ_d​(k)}​)} \tag{16}