变分循环神经网络与神经图灵机在语音分离中的应用
立即解锁
发布时间: 2025-09-08 01:19:36 阅读量: 14 订阅数: 22 AIGC 


源分离与机器学习
### 变分循环神经网络与神经图灵机在语音分离中的应用
#### 1. 变分循环神经网络(VRNN)
##### 1.1 概述
变分循环神经网络(VRNN)是一种基于生成随机网络和变分自编码器构建的随机学习机器,用于语音分离。其核心思想是通过变分学习准确刻画循环神经网络隐藏状态的随机性,通过最大化对数边缘似然的变分下界来估计潜在变量模型下的神经参数。
##### 1.2 变分自编码器(VAE)
变分自编码器(VAE)用于估计隐藏变量 z 的分布,并利用该信息重建原始信号 x,忽略不同 x 中的时间信息。这种分布刻画了隐藏单元的随机性,使得能够重建输出信号的不同实现,而非传统自编码器中的点估计输出。VAE 由编码器和解码器组成:
- 编码器:作为识别模型,使用具有参数 φ 的变分后验 qφ(z|x) 识别随机潜在变量 z。
- 解码器:基于具有参数 θ 的似然函数 pθ(x|z),使用采样得到的潜在变量 z 生成或重建原始信号 ˆx。
整个模型使用变分贝叶斯期望最大化算法进行公式化,通过最大化对数似然 logp(x≤T) 的变分下界来估计变分参数 φ 和模型参数 θ。
```mermaid
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(原始输入 x):::process --> B(编码器):::process
B --> C(潜在变量 z):::process
C --> D(解码器):::process
D --> E(重建输出 ˆx):::process
```
##### 1.3 VRNN 模型构建与推理
VRNN 通过将 VAE 引入 RNN 的构建中,实现了 RNN 的随机实现。在 VRNN 中,对应于观察到的混合信号 x≤T,估计一组 T 个与时间相关的隐藏单元 h≤T,用于生成 RNN 输出 y≤T 作为解混信号。隐藏单元 h≤T 由隐藏变量 z≤T 表征和生成。
VRNN 同样配备了编码器和解码器:
- 编码器:设计用于从每个时间 t 的输入 - 输出对 {xt,yt} 和前一个时间 t - 1 的隐藏特征 ht−1 中编码或识别潜在变量 zt 的分布 qφ(zt|xt,yt,ht−1)。
- 解码器:根据变分分布 qφ(·) 的随机样本 zt,实现当前时间 t 的隐藏单元 ht = F(xt,zt,ht−1)。
VRNN 的推理过程通过最大化条件似然 p(y≤T |x≤T) 的对数的变分下界 L 来实现:
\[
p(y_{\leq T} | x_{\leq T}) = \prod_{t = 1}^{T} \int_{z_t} p_{\theta}(y_t | x_{\leq t}, z_{\leq t}) \times p_{\omega}(z_t | x_{\leq t}, z_{< t})
\]
变分下界 L 表示为:
\[
L \triangleq E_{q_{\varphi}(z_{\leq T} | x_{\leq T}, y_{\leq T})} \left[ \sum_{t = 1}^{T} \left( \log p_{\theta}(y_t | x_{\leq t}, z_{\leq t}) - D_{KL}(q_{\varphi}(z_t | x_{\leq t}, y_{\leq t}, z_{< t}) \parallel p_{\omega}(z_t | x_{\leq t}, z_{< t})) \right) \right]
\]
推理过程包括以下步骤:
1. **编码阶段**:
- 计算潜在变量 zt 的先验分布 pω(zt|x′t,ht−1) = N(μ0,t,diag(σ20,t)),其中均值和方差由先验网络 [μ0,t,σ20,t] = ψpriorω(x′t,ht−1) 计算。
- 计算每个时间帧的变分分布 qφ(zt|x′t,y′t,ht−1) = N(μz,t,diag(σ2z,t)),均值和方差由推理网络 [μz,t,σ2z,t] = ψencφ(x′t,y′t,ht−1) 计算。
2. **解码阶段**:
- 应用特征提取器 ψz(zt) 估计对应于潜在变量 zt 的特征 z′t。
- 计算每个时间 t 的条件似然 pθ(yt|ht),用于计算回归输出 ˆyt。
为了解决直接从高斯分布采样 zt 不稳定的问题,采用重参数化技巧,即采样 ϵ ∼N(0,I),并通过 zt ← μz,t + σz,t ⊙ ϵ 确定潜在变量的样本。
以下是 VRNN 的随机训练过程:
```plaintext
Algorithm 7.1 Variational Recurren
```
0
0
复制全文
相关推荐









