Ch09 音频与语音 · 50 张闪卡 (v1.2 配比)¶
分布: 5 节各 10 张, 定义 13 (26%) + 公式 13 (26%) + 直觉 12 (24%) + 反例 10 (20%) + 类比 2 (4%) = 50。 关键公式覆盖 (≥ 8, 实际 15): Hz↔Mel、梅尔滤波器组 + MFCC 流水线、Hamming 窗、HMM 前向变量、Viterbi、CTC 多对一坍缩、RNN-T 联合网络、WaveNet 门控激活、HiFi-GAN 损失、x-vector 统计池化、AAM-Softmax 角度间隔、ICA 解混、LMS 权重更新、SI-SDR、NMF V≈WH。 三色标签: 🟢 16 / 🟡 26 / 🔴 8。
§01 数字信号处理 (10 张)¶
卡片 1(🟢 定义)¶
Q: 奈奎斯特-香农采样定理 (Nyquist-Shannon) 一句话, 并给一个反例。 A: 连续信号能被采样值完美重建, 当且仅当采样率 \(f_s \geq 2 f_{\max}\), \(f_s/2\) 叫奈奎斯特频率。反例: 15 kHz 音在 16 kHz 采样 (\(f_{\text{Nyquist}} = 8\) kHz) 下会混叠成 \(|15 - 16| = 1\) kHz, 听起来完全不同的音高且不可逆。 提示: 超过频率要折叠。 来源: 01. 数字信号处理 §采样
卡片 2(🟢 定义)¶
Q: 声音三参数及它们分别决定什么听感? 给一组具体数。 A: 振幅 \(A\) 决定响度; 频率 \(f\) (Hz) 决定音高; 相位 \(\phi\) (弧度) 决定周期起点。具体数: \(A=1\)、\(f=440\) Hz、\(\phi=0\), 这就是 A4 音乐会标准音。频率翻倍 → 升高一个八度 (A4 → A5 是 440 → 880 Hz)。 提示: 响度、音高、相位。 来源: 01. 数字信号处理 §波形
卡片 3(🟢 定义)¶
Q: 短时傅立叶变换 (STFT) 的两个轴分别是什么? 典型语音参数是什么? A: STFT 输出二维复数矩阵: 横轴是时间帧索引 \(m\), 纵轴是频率 bin \(k\), 颜色表示复数幅度。典型语音参数: 帧长 25 ms (16 kHz 下 \(N=400\))、帧移 10 ms (\(H=160\))、汉明窗、512 点 FFT (零填充便于频谱插值)。 提示: 时频矩阵。 来源: 01. 数字信号处理 §STFT
卡片 4(🟡 公式)¶
Q: Hz 转 Mel 的公式及其反函数; 给一个具体数例。 A: \(m = 2595 \log_{10}(1 + f/700)\), 反函数 \(f = 700(10^{m/2595} - 1)\)。锚点: 1000 Hz 对应 1000 mel, 这是公式常数 2595/700 的来历。具体例: 8000 Hz → \(2595 \log_{10}(12.43) = 2595 \times 1.094 \approx 2840\) mel。 提示: 1000 Hz = 1000 mel。 来源: 01. 数字信号处理 §梅尔刻度
卡片 5(🟡 公式)¶
Q: MFCC 流水线的 7 个步骤名 + 关键超参数。 A: (1) 预加重 \(y[n]=x[n]-0.97 x[n-1]\); (2) 分帧 25 ms、帧移 10 ms; (3) 加汉明窗; (4) FFT 求功率谱; (5) 40-80 个三角形梅尔滤波器组; (6) 取对数; (7) DCT 取前 13 个倒谱系数。完整特征常配合 Delta / Delta-Delta, 凑 39 维。 提示: 预-分-加-FFT-Mel-log-DCT。 来源: 01. 数字信号处理 §MFCC
卡片 6(🟡 公式)¶
Q: 汉明窗公式 + 它和汉宁窗的取舍。 A: \(w[n] = 0.54 - 0.46 \cos(2\pi n/(N-1))\), \(n=0,\dots,N-1\)。边缘削减到近似零, 大幅减少频谱泄漏。汉宁窗 \(w[n] = 0.5 - 0.5\cos(2\pi n/(N-1))\) 边缘正好减到零; 50% 重叠时 Hann 完美重建, 是更安全的默认。 提示: 主瓣 vs 旁瓣的权衡。 来源: 01. 数字信号处理 §窗函数
卡片 7(🟡 直觉)¶
Q: Gabor 极限 \(\Delta t \cdot \Delta f \geq 1/(4\pi)\) 在说什么? 工程上怎么选? A: 时间和频率分辨率之积有下界 — 帧长大会频率分辨率高但时间分辨率差; 帧长小则反。这是测不准原理在信号处理中的版本。工程取舍: 语音用 25 ms 帧长, 牺牲时间分辨率换取频谱细节; 鼓声瞬态用 5 ms 帧长, 牺牲频率分辨率捕获短促起音。 提示: 鱼与熊掌。 来源: 01. 数字信号处理 §Gabor
卡片 8(🟡 直觉)¶
Q: 为什么 STFT 之前要乘窗? 频谱泄漏和频率分辨率是什么关系? A: 不加窗时 FFT 假设这一帧无限重复, 帧边缘的突然截断把能量摊到所有频率, 出现频谱泄漏。窗函数让边缘平滑趋向 0。代价: 窗主瓣变宽, 两个相邻频率不容易分开。Blackman 旁瓣压制最好但主瓣最宽; 矩形窗泄漏最严重。语音默认用汉明窗就是这个取舍。 提示: 平滑边缘换窄主瓣。 来源: 01. 数字信号处理 §窗函数
卡片 9(🔴 反例)¶
Q: "对深度学习 ASR, MFCC 比对数梅尔频谱图更好输入"对吗? A: 错。现代神经网络 ASR 标准输入是对数梅尔频谱图 (跳过 MFCC 第 7 步的 DCT), 让模型自己学去相关。MFCC 的 DCT 压缩是手工设计的瓶颈, 神经网络能学更优的特征压缩。MFCC 在经典 GMM-HMM、低资源场景以及理解信号处理原理时仍有用。 提示: DCT 是手工瓶颈。 来源: 01. 数字信号处理 §MFCC vs 现代
卡片 10(🔴 反例)¶
Q: "直接对整段几小时音频做一次大 FFT 即可得到完整频谱图"对吗? A: 错。FFT 是基变换, 一次性只能给出整段时间里的平均频谱。频谱图需要时频联合表示, 所以必须先分短帧 (典型 25 ms) 再分别做 FFT。如果直接对几小时信号 FFT, 任何一秒内瞬变的音符都会被淹没在整体平均值里, 完全没有时间信息。 提示: 时频联合 vs 全局平均。 来源: 01. 数字信号处理 §STFT
§02 自动语音识别 (10 张)¶
卡片 11(🟢 定义)¶
Q: ASR 任务的核心难点, "对齐问题" (alignment problem) 指什么? A: 输入是每秒数百帧音频特征, 输出是每秒几个字符的转录, 二者长度差 1-2 个数量级; 训练时不知道哪些帧对应哪些字符, 这就是对齐问题。CTC 通过引入 blank + 多对一坍缩绕过它; RNN-T 用预测网络显式建模输出依赖; LAS 用注意力让解码器看完整输入。 提示: 变长映射。 来源: 02. 自动语音识别 §端到端 ASR
卡片 12(🟢 定义)¶
Q: 音素 / 三音素 / senone 三级粒度, 数量级各是多少? A: 音素是语言里最小可区分声音单位, 英语约 39-44 个。三音素 (triphone) 考虑左右邻音, 三音素总数 = 音素³ ≈ 64000 个, 但用决策树聚类聚成 2000-10000 个 senone, 每个 senone 有自己的声学模型 (GMM 状态或 DNN 输出)。 提示: 三级聚类。 来源: 02. 自动语音识别 §音素
卡片 13(🟡 公式)¶
Q: HMM 前向变量 \(\alpha_t(j)\) 的递推式; 它用于估计什么? A: \(\alpha_t(j) = b_j(\mathbf{x}_t) \cdot \sum_i \alpha_{t-1}(i) a_{ij}\), 其中 \(a_{ij}\) 是状态转移概率, \(b_j\) 是发射概率。它是网格上观测序列 \(\mathbf{x}_{1:t}\) 且落在状态 \(j\) 的联合概率。后向变量 \(\beta\) 类似但从终点回推, 二者结合做 EM (Baum-Welch) 训练和状态后验计算。 提示: 前向-后向。 来源: 02. 自动语音识别 §HMM
卡片 14(🟡 公式)¶
Q: Viterbi 递推 \(\delta_t(j) = \max_i [\delta_{t-1}(i) \cdot a_{ij}] \cdot b_j(\mathbf{x}_t)\) 解的是哪类问题? A: 解码问题 — 找状态序列使给定观测的对数联合概率最大。解码后用回溯恢复最佳路径。这与 HMM 前向算法的区别是 \(\max\) 取代 \(\sum\), 复杂度同为 \(O(T \cdot S^2)\)。贪心但精确; 真实 ASR 在 WFST 组合图上做 Viterbi (\(H \circ C \circ L \circ G\)) 找出全局最优词序列。 提示: max vs sum。 来源: 02. 自动语音识别 §Viterbi
卡片 15(🟡 公式)¶
Q: CTC 多对一映射 + 概率公式; 为什么需要前向-后向算法? A: 映射 \(\mathcal{B}\) 把任意长对齐路径 (含 blank) 坍缩到标签 \(\mathbf{y}\)。概率 \(P(\mathbf{y}|\mathbf{x}) = \sum_{\pi \in \mathcal{B}^{-1}(\mathbf{y})} \prod_t p(\pi_t | \mathbf{x})\)。枚举路径是指数级 — 用前向-后向 (对插空白后的扩展标签序列填表) 把复杂度降到 \(O(T \cdot |\mathbf{y}|)\), 与 HMM 类似。 提示: blank + 折叠。 来源: 02. 自动语音识别 §CTC
卡片 16(🟡 公式)¶
Q: RNN-T 联合网络 \(p(y|t,u)\) 的公式; 它去掉 CTC 的什么限制? A: \(p(y \mid t, u) = \text{softmax}(W \cdot \tanh(W_{\text{enc}} \mathbf{h}^{\text{enc}}_t + W_{\text{pred}} \mathbf{h}^{\text{pred}}_u + b))\), 其中 \(\mathbf{h}^{\text{enc}}_t\) 是音频编码器状态、\(\mathbf{h}^{\text{pred}}_u\) 是预测网络状态。CTC 假设输出条件独立 (给定输入); RNN-T 让每个输出条件依赖前面的输出 (经预测网络), 从而无需外接 LM。 提示: 加预测网络。 来源: 02. 自动语音识别 §RNN-T
卡片 17(🟡 直觉)¶
Q: LAS (Listen-Attend-Spell) 为何不适合流式场景, 但仍是离线 ASR 强基线? A: 注意力机制让解码器每一步都能看完整编码器序列, 建模能力最强; 但代价是必须等音频全部到位才能解码。流式场景 (实时字幕、语音助手) 延迟敏感, 必须用单向编码器 + 分块注意力 + 前瞻窗口。Conformer + CTC / RNN-T 是流式默认; Conformer + LAS-like attention 是离线默认。 提示: 看未来 vs 增量。 来源: 02. 自动语音识别 §LAS vs 流式
卡片 18(🟡 直觉)¶
Q: Conformer 块的"马卡龙"结构是什么, 为什么这种顺序? A: 三明治: 半步 FFN → 多头自注意力 → 1D 卷积模块 → 半步 FFN, 输出经 LayerNorm 与残差。Conv 捕捉局部 (类似特征序列 n-gram)、Attn 捕捉全局、FFN 加非线性, 半步残差防止任一模块压制信号。这是经验发现, 比 FFN-Conv-Attn 或 Attn-Conv 等其他排列稳定更好。 提示: 局部 + 全局 + 半残差。 来源: 02. 自动语音识别 §Conformer
卡片 19(🔴 反例)¶
Q: "CTC 自身能建模输出之间的依赖 (比如 'q' 后面总是 'u')"对吗? A: 错。CTC 假设每个时刻的输出条件独立于其他时刻, 无法建模 'q' → 'u' 这类语言学依赖。这也是为什么经典 CTC 系统要外接 n-gram 或神经 LM (浅融合 / 重打分 / ILME)。RNN-T 通过预测网络让输出条件依赖前面输出, 砍掉这一限制。 提示: 条件独立假设。 来源: 02. 自动语音识别 §CTC 局限
卡片 20(🔴 反例)¶
Q: "报 WER = 5% 就够精确, 不必报 S/D/I 拆分"对吗? A: 错。WER 公式 \(\text{WER} = (S+D+I)/N\), 但同样 5% 背后的错误结构可能完全相反: 大量删除 (漏检) 与大量插入 (幻觉) 的 WER 都是 5%, 处置方法却相反。诊断与改进时必须报 S/D/I 三项细分。CER 对中文等无明确词界语言更实用 (同样 1 个错, 字符层影响小)。 提示: S/D/I 拆分。 来源: 02. 自动语音识别 §WER
§03 文本到语音 (10 张)¶
卡片 21(🟢 定义)¶
Q: TTS 标准四段流水线是什么? 现代端到端模型 (VITS) 砍掉了哪几步的边界? A: (1) 文本归一化 (Dr. → Doctor, 1984 → nineteen eighty-four); (2) 字素-音素转换 (G2P); (3) 声学模型 (音素 → 梅尔频谱图); (4) 声码器 (梅尔 → 波形)。VITS 把 (3)(4) 合一: VAE + 归一化流 + 对抗训练联合优化, 避免两阶段 "预测梅尔" 与 "真值梅尔" 的失配。 提示: 文本-音素-梅尔-波形。 来源: 03. 文本到语音与声音 §流水线
卡片 22(🟢 定义)¶
Q: Tacotron 2 解码器每一步为何预测"停止 token"? 位置敏感注意力 (location-sensitive) 多用了一项什么输入? A: 自回归解码逐帧生成梅尔频谱图, 必须知道何时停止; 每步预测 stop token 概率, 超阈值即收尾。位置敏感注意力在能量函数 \(e_{i,j} = w^\top \tanh(W_s s_{i-1} + W_h h_j + W_f f_{i,j} + b)\) 多了 \(W_f f_{i,j}\) 项, 其中 \(f_{i,j}\) 是先前注意力权重经 1D 卷积后的"位置特征", 防跳字与重复。 提示: 停止 + 位置特征。 来源: 03. 文本到语音与声音 §Tacotron 2
卡片 23(🟢 定义)¶
Q: VALL-E 与 Orpheus "离散音频 token 语言模型" 的两步范式是什么? A: 神经编解码器 (EnCodec 或 SNAC) 把语音编码成多码本层离散 token。AR 模型逐 token 自回归预测第一层码本 (语义级); NAR 模型以第一层为条件, 并行预测剩余码本层 (声学级)。给定 3 秒注册音频 + 文本提示, 这种范式实现零样本声音克隆: 模型学到 "注册音频内部声纹一致是统计规律", 直接续写。 提示: AR+NAR, 两层码。 来源: 03. 文本到语音与声音 §VALL-E
卡片 24(🟡 公式)¶
Q: WaveNet 门控激活 \(z = \tanh(W_f * x) \odot \sigma(W_g * x)\) 中膨胀因果卷积的"膨胀因子 1,2,4,...,512"带来什么? A: 感受野随膨胀因子指数级增长, 参数量只线性增长。24 kHz 音频只要几层就能覆盖上万采样点的上下文。因果 (只看过去) 保留自回归性, 但推理必须串行: 生成 1 秒 24 kHz 音频要跑 24000 次串行前向 — 这正是后来 Parallel WaveNet、WaveGlow、HiFi-GAN 要解决的速度瓶颈。 提示: 指数感受野, 线性参数。 来源: 03. 文本到语音与声音 §WaveNet
卡片 25(🟡 公式)¶
Q: HiFi-GAN 生成器损失 \(\mathcal{L}_G = \mathcal{L}_{\text{adv}}(G) + \lambda_{\text{mel}} \mathcal{L}_{\text{mel}}(G) + \lambda_{\text{fm}} \mathcal{L}_{\text{fm}}(G)\) 三项各起什么作用? A: 对抗项让 G 骗过判别器 (质感); 梅尔项 \(\mathcal{L}_{\text{mel}} = \|\text{mel}(\hat{y}) - \text{mel}(y)\|_1\) 强制 G 在感知相关频带上贴近真值 (粗管); 特征匹配项 \(\mathcal{L}_{\text{fm}}\) 让 G 在判别器各层中间特征也贴近真值 (细管)。合成音质可比肩 WaveNet, 推理比 WaveNet 快 1000 倍以上。 提示: 质 + 谱 + 层特征。 来源: 03. 文本到语音与声音 §HiFi-GAN
卡片 26(🟡 直觉)¶
Q: 自回归 (Tacotron 2) vs 非自回归 (FastSpeech 2) TTS 在 5 秒语音上的延迟差几个数量级? A: 5 秒语音对应 80 帧/秒 × 5 = 400 帧梅尔频谱。Tacotron 2 每帧串行跑一次 LSTM 解码, 400 次串行调用是主要瓶颈。FastSpeech 2 用时长预测器把所有 400 帧并行生成, 推理快 10-20 倍。非自回归代价是必须显式建模时长 / 音高 / 能量, 自回归则让注意力隐式决定。 提示: 串行 vs 并行。 来源: 03. 文本到语音与声音 §FastSpeech
卡片 27(🟡 直觉)¶
Q: HiFi-GAN 的多周期判别器 (MPD) 与多尺度判别器 (MSD) 各负责什么失真? A: MPD 把 1D 波形按周期 (2,3,5,7,11) 折叠为 2D 再 2D 卷积, 抓不同基频下的周期性伪影 (泛音、抖动)。MSD 直接在原波形、2 倍下采样、4 倍下采样的版本上跑, 抓不同时间分辨率下的相位 / 包络失真。两类判别器输出结合, 一管周期、一管相位。 提示: 周期 vs 相位。 来源: 03. 文本到语音与声音 §HiFi-GAN
卡片 28(🔴 反例)¶
Q: "Tacotron 2 自回归模型推理快, 适合实时应用"对吗? A: 错。Tacotron 2 自回归本性意味着串行帧解码, 每帧一次 LSTM, 实时因子常常 > 1 (生成比实时慢)。FastSpeech 2 / VITS 这类非自回归或端到端模型才是实时首选。Tacotron 2 改进音质时仍用 WaveNet / HiFi-GAN 加速声码器, 但声学模型本身的串行性不变。 提示: 实时因子 RTF。 来源: 03. 文本到语音与声音 §Tacotron 速度
卡片 29(🔴 反例)¶
Q: "任何声码器都能从给定的梅尔频谱图还原出真值波形"对吗? A: 错。梅尔频谱图丢掉了相位, 同一张频谱图可对应多个不同波形 — 这就是不适定反问题。Griffin-Lim 迭代相位重建、WaveNet、HiFi-GAN、VITS 都只能学一个"听着合理"的近似, 不是还原真值。这也是为什么神经声码器训练需要 GAN + 梅尔损失 + 特征匹配多项联合, 只用梅尔 L1 训不出能听的结果。 提示: 相位信息缺失。 来源: 03. 文本到语音与声音 §声码器病态
卡片 30(🟡 类比)¶
Q: 把 TTS 想成舞台演出, 4 个角色各对应 TTS 哪段流水线? A: 剧本是输入文本; 导演 (声学模型) 决定每句怎么念 — 音高、时长、重音; 乐队 (声码器) 按谱演奏, 生成真正听见的声波; 排版校对 (文本归一化) 把 "Dr." "1984" 这类书面符号先变成可念的形式; 拼读手册 (G2P) 把字面变成音素。神经网络 TTS 抛掉了规则系统的死板腔, 演到接近真人。 提示: 剧本、导演、乐队。 来源: 03. 文本到语音与声音 §TTS 总览
§04 说话人与音频分析 (10 张)¶
卡片 31(🟢 定义)¶
Q: 说话人验证 (SV) vs 说话人识别 (SI), 二元 vs 多分类? A: 验证是给定一段声称身份的音频, 二元判定"是 / 不是那个人" (语音身份认证)。识别是给定一段音频和一组候选说话人, 多分类"是哪一位" (法医归属)。底层共用同一套说话人嵌入表示, 区别只在决策阶段: 验证比对两个嵌入的相似度加阈值; 识别在候选库里找最近邻。 提示: 是谁 vs 哪一个。 来源: 04. 说话人与音频分析 §任务定义
卡片 32(🟢 定义)¶
Q: AST (Audio Spectrogram Transformer) 与第 07 章 ViT 的关系? 它能从哪里预训练再迁移? A: AST = ViT 直接搬到频谱图。频谱图切成 \(16 \times 16\) 图块, 展平线性投影, 加位置嵌入, 喂 Transformer 编码器, 用 [CLS] 输出分类。AST 可从 ImageNet 预训练 ViT 直接迁移到音频 — 频谱图是 2D 图像, 低层特征 (边缘、纹理) 通用, 位置嵌入插值即可适配不同尺寸。 提示: 频谱当图像切 patch。 来源: 04. 说话人与音频分析 §AST
卡片 33(🟡 公式)¶
Q: x-vector 统计池化 \(\mu, \sigma\) 公式与它的不变性? A: \(\mu = \frac{1}{T} \sum_t h_t\), \(\sigma = \sqrt{\frac{1}{T} \sum_t (h_t - \mu)^2}\), 拼接 \([\mu; \sigma]\) 是定长向量。无论输入长度 \(T\) 多大, 输出维度恒等于 \(2 \times\) 隐藏维, 让段级全连接层处理。比 RNN 池化简单且并行友好。统计池化的均值 + 标准差足以聚合整段时序信息。 提示: 时序定长化。 来源: 04. 说话人与音频分析 §x-vector
卡片 34(🟡 公式)¶
Q: 余弦相似度 \(s = (e \cdot t)/(\|e\|\|t\|)\) 与 EER 如何联合报告? A: 取一堆目标 (同说话人) 与冒名 (不同说话人) 试对, 计算所有 \(s\), 在阈值 \(\theta\) 上扫 FAR (\(\text{impostor} \geq \theta\) 比例) 与 FRR (\(\text{target} < \theta\) 比例); EER 是 FAR = FRR 的操作点。当前 SOTA 在 VoxCeleb 上 EER 已低于 1%, 即同 / 异说话人得分分布几乎完全分离。 提示: FAR vs FRR。 来源: 04. 说话人与音频分析 §验证指标
卡片 35(🟡 公式)¶
Q: AAM-Softmax 加性角度间隔 \(L = -\log \frac{e^{s \cos(\theta_{y_i} + m)}}{e^{s \cos(\theta_{y_i} + m)} + \sum_{j \ne y_i} e^{s \cos \theta_j}}\) 的 \(s, m\) 怎么取? A: \(m\) 是间隔 (典型 0.2), \(s\) 是缩放 (典型 30)。分类损失同时驱动嵌入与类别权重在单位超球上拉开角度间隔, 同说话人聚得更紧、异说话人被推开 \(m\)。把"分类"目标转成"度量学习", 这是 ArcFace 思路用在说话人验证上的成功。 提示: 超球面间隔。 来源: 04. 说话人与音频分析 §AAM-Softmax
卡片 36(🟡 直觉)¶
Q: ECAPA-TDNN 在 x-vector 之上做了哪三处改进? A: (1) Squeeze-Excitation 通道注意力 (来自 SENet) 用全局上下文重新加权通道; (2) Res2Net 多尺度特征, 把通道分组层级处理, 多个时间分辨率同时建模; (3) 注意力统计池化 \(\alpha_t = \exp(v^\top f(h_t))/\sum_\tau\), 给元音等富含说话人信息的帧更高权重, 取代等权均值 / 标准差。三者一起成为 x-vector 系 SOTA。 提示: SE + Res2Net + 注意力池化。 来源: 04. 说话人与音频分析 §ECAPA-TDNN
卡片 37(🟡 直觉)¶
Q: 说话人分离 (diarisation) 为何被类比成"给时间线上色"? 与 STT 的根本区别? A: 任务是给多说话人录音的每一帧标"谁在说话" (着色), 而非"说了什么字" (STT)。基于聚类流水线: 切分 + 嵌入 + AHC + 重切分, 但难处理重叠 (同时说话)。端到端 EEND 用 Transformer 每帧输出多说话人活动向量 \(\hat{y}_{t,s} = \sigma(f_s(h_t))\), 加 PIT 解决标签置换歧义, 原生支持重叠。 提示: 给时间线上色。 来源: 04. 说话人与音频分析 §diarisation
卡片 38(🟡 直觉)¶
Q: EEND 中"排列不变训练 (PIT)" 为什么必须? A: 网络有 \(S\) 个输出头对应 \(S\) 个说话人活动, 但训练标签里说话人没有天然顺序: 头 1 配说话人 A 或头 1 配说话人 B 都是合法对应。PIT 对所有可能置换 \(\pi \in \mathcal{P}\) 算一遍损失, 取最小。\(S=2\) 只有 2 种置换; 更大 \(S\) 用匈牙利算法高效解。 提示: 所有排列取最小。 来源: 04. 说话人与音频分析 §PIT
卡片 39(🔴 反例)¶
Q: "说话人识别就是自动把语音转文字"对吗? A: 错。说话人识别回答"是谁在说" (音色、习惯), 与 ASR 回答"说了什么" 是正交问题。一段录音可以同时跑说话人识别 + ASR: 前者给说话人标签, 后者给文本转录。两者技术栈共用 MFCC / 频谱图前端, 但目标函数与嵌入意义完全不同 (speaker embedding vs 语言学输出)。 提示: 谁 vs 什么。 来源: 04. 说话人与音频分析 §任务区别
卡片 40(🔴 反例)¶
Q: "深度 x-vector 永远胜过经典 i-vector"对吗? A: 不一定。在低数据 (说话人极少)、短音频 (几秒) 场景 i-vector + PLDA 仍可竞争, 因为它对训练集规模要求低。x-vector / ECAPA-TDNN 在大数据集充分训练后才稳定超越 i-vector。VoxCeleb 上 SOTA EER < 1%, i-vector 同基准约 5-8%, 但 i-vector 在嵌入式端推理更快、内存更小。 提示: 数据规模换精度。 来源: 04. 说话人与音频分析 §i-vector vs x-vector
§05 源分离与降噪 (10 张)¶
卡片 41(🟢 定义)¶
Q: 鸡尾酒会问题 (cocktail party problem) 是什么, 为什么难? A: 多说话人 + 背景噪声混合录进麦克风, 人耳能聚焦单段对话 (Cherry 1953), 算法却难。单麦克风情形严重欠定: 一方程解 \(C\) 未知数。必须引入额外假设: 源独立性 (ICA)、频谱结构 (NMF)、空间时延 (波束成形) 或学到的先验 (深度网络)。 提示: 人耳简单, 机器难。 来源: 05. 源分离与降噪 §引言
卡片 42(🟢 定义)¶
Q: Conv-TasNet 三段式架构与它"完全时域运行"的意义? A: (1) 编码器: 1D 卷积把波形短片段映射到 \(N\) 个学到的基上; (2) 分离器: TCN (膨胀深度可分离 1D 卷积, 因子 \(1,2,4,\dots,2^{B-1}\)) 估出 \(C\) 个掩码; (3) 解码器: 转置 1D 卷积把每掩码表示转回波形。完全不用 STFT, 学到的编码器-解码器基保留相位, 显著优于频谱图方法。 提示: 时域、TCN、学到基。 来源: 05. 源分离与降噪 §Conv-TasNet
卡片 43(🟡 公式)¶
Q: FastICA 通过最大化"非高斯性"求解解混矩阵 \(W\), 牛顿更新是? A: 假设源非高斯且独立, \(w \leftarrow E[X \, g(w^\top X)] - E[g'(w^\top X)] w\), 其中 \(g(u) = \tanh(u)\)。每步正交化去相关; 用 \(\min |\text{diag}(W W_{\text{old}}^\top)|\) 判收敛。约束: 麦克风数 \(\geq\) 源数, 混合瞬时, 否则失效 (卷积混响、超定源、违反独立性都破)。 提示: 最大化非高斯性。 来源: 05. 源分离与降噪 §ICA
卡片 44(🟡 公式)¶
Q: LMS 权重更新 \(\mathbf{w}(n+1) = \mathbf{w}(n) + \mu e(n) \mathbf{x}(n)\) 是哪类 SGD, 稳定条件? A: 是均方误差 \(E[e^2]\) 上的一步随机梯度下降, 用瞬时梯度 \(-2 e(n) \mathbf{x}(n)\) 估计真梯度。稳定条件 \(0 < \mu < 2/\lambda_{\max}\), \(\lambda_{\max}\) 是输入自相关矩阵 \(R = E[\mathbf{x}\mathbf{x}^\top]\) 的最大特征值。太小收敛慢, 太大发散。NLMS 用 \(\|\mathbf{x}\|^2 + \epsilon\) 归一化, 收敛不受信号电平影响。 提示: SGD + 步长上界。 来源: 05. 源分离与降噪 §LMS
卡片 45(🟡 公式)¶
Q: SI-SDR (Scale-Invariant SDR) 公式, 为什么 "尺度不变" 是可取的? A: \(s_{\text{target}} = \frac{\langle\hat{s}, s\rangle}{\|s\|^2} s\), \(e_{\text{noise}} = \hat{s} - s_{\text{target}}\), \(\text{SI-SDR} = 10 \log_{10} \frac{\|s_{\text{target}}\|^2}{\|e_{\text{noise}}\|^2}\) (dB 越高越好)。把估计信号投影到参考方向得目标分量, 残差作噪声。尺度不变是因为分离质量与绝对音量无关, 调一个全局增益不应影响指标。WSJ0-2mix 当前 SOTA 约 20-22 dB SI-SDR 提升。 提示: 投影、尺度无关。 来源: 05. 源分离与降噪 §SI-SDR
卡片 46(🟡 公式)¶
Q: NMF 把幅度谱 \(V \in \mathbb{R}_+^{F \times T}\) 分解成 \(V \approx WH\), 源分离时如何用? A: \(W \in \mathbb{R}_+^{F \times K}\) 是 \(K\) 个频谱基字典, \(H \in \mathbb{R}_+^{K \times T}\) 是时变激活。源分离给每源学独立字典 (\(W_{\text{speech}}\) 抓共振峰, \(W_{\text{noise}}\) 抓噪声模式), 混合谱分解为 \(V \approx W_{\text{speech}} H_{\text{speech}} + W_{\text{noise}} H_{\text{noise}}\), 用各源占比做软掩码。代价函数选 Frobenius 或 KL 散度, 乘法更新最小化。 提示: 非负分解、软掩码。 来源: 05. 源分离与降噪 §NMF
卡片 47(🟡 直觉)¶
Q: 时频掩码 IRM\(_c(t,f) = \frac{|S_c|^2}{\sum_j |S_j|^2}\) 与 IBM 的软硬差异? A: IBM 是硬开关: 源 \(c\) 主导某时频格就置 1, 否则 0; IRM 是软权重, 取值 \((0,1)\), 等于源的功率占比, 是 oracle 上界。两者都假设线性合成 \(X \approx \sum_c S_c\)。实用系统训网络估软掩码, 学习难度比硬判低且抗噪更稳。 提示: 硬开关 vs 软权重。 来源: 05. 源分离与降噪 §掩码
卡片 48(🟡 直觉)¶
Q: ANC (主动降噪) 物理原理与"残余噪声"来源? A: 物理: 若噪声 \(n(t)\) 在空间同一点叠加 \(-n(t)\), 振幅相加得寂静。工程难点是反噪声必须在时间、幅度、相位上精确匹配 — 任何错位都留下残余。频响不平坦、空间多点降噪难、算法延迟不可消, 这些都是真实 ANC 耳机无法彻底静音的现实原因; 它们只能对低频稳态噪声 (引擎、风扇) 高效。 提示: 相消干涉 vs 对齐误差。 来源: 05. 源分离与降噪 §ANC
卡片 49(🔴 反例)¶
Q: "波束成形就是装越多麦克风越好"对吗? A: 不一定。空间分辨率由阵列几何决定: 大阵列窄波束但难做大; 小阵列宽波束。在低频 (波长远超麦克风间距) 时, 阵列几乎无方向选择性。MVDR / 延时相加只在满足"目标方向信号相干、干扰不相关"时才有显著增益; 混响强烈、源数 \(>>\) 麦克风数时反而失效。麦克风多寡并非唯一决定因素。 提示: 阵列 + 频率匹配。 来源: 05. 源分离与降噪 §波束成形
卡片 50(🟡 类比)¶
Q: 把 ANC 类比成什么日常场景最容易理解? 它对什么类型的噪声束手无策? A: 类比成一个反相位的"消音箱": 你用另一只喇叭放出一份与噪声波形相反的副本, 两份在同点叠加相互抹平。对瞬态噪声 (拍手、口哨、键盘敲击) 与人声这类非平稳噪声, 反噪声必须毫秒级跟踪才能对齐, 系统带宽和算法延迟做不到, 所以 ANC 对低频稳态噪声 (飞机舱引擎、空调、地铁) 效果拔群, 对中高频瞬态噪声只能给耳机被动隔音兜底。 提示: 反相叠加, 不擅长瞬态。 来源: 05. 源分离与降噪 §ANC
附: 关键公式清单 (≥ 8 项核对)¶
| # | 公式 | 涉及卡片 |
|---|---|---|
| 1 | Hz↔Mel: \(m = 2595 \log_{10}(1 + f/700)\) | C4 |
| 2 | MFCC 7 步流水线 (预-分-加-FFT-Mel-log-DCT) | C5 |
| 3 | Hamming 窗: \(w[n] = 0.54 - 0.46\cos(2\pi n/(N-1))\) | C6 |
| 4 | HMM 前向变量 \(\alpha_t(j)\) 递推 | C13 |
| 5 | Viterbi \(\delta_t(j) = \max_i [\delta_{t-1}(i) a_{ij}] b_j\) | C14 |
| 6 | CTC 多对一坍缩 + 前向-后向 \(O(T \cdot \|\mathbf{y}\|)\) | C15 |
| 7 | RNN-T 联合 \(p(y \mid t, u) = \text{softmax}(W \tanh(\cdot))\) | C16 |
| 8 | WaveNet 门控 \(\tanh(W_f * x) \odot \sigma(W_g * x)\) | C24 |
| 9 | HiFi-GAN 损失 (对抗 + 梅尔 + 特征匹配) | C25 |
| 10 | x-vector 统计池化 \(\mu, \sigma\) | C33 |
| 11 | 余弦相似度 + EER | C34 |
| 12 | AAM-Softmax 角度间隔 \(s\cos(\theta_{y_i} + m)\) | C35 |
| 13 | FastICA 牛顿更新 + 收敛判据 | C43 |
| 14 | LMS \(\mathbf{w}(n+1) = \mathbf{w}(n) + \mu e(n) \mathbf{x}(n)\) | C44 |
| 15 | SI-SDR (dB) 投影定义 | C45 |
统计: 定义 13 / 公式 13 / 直觉 12 / 反例 10 / 类比 2 = 50 张。🟢 16 / 🟡 26 / 🔴 8。Ch09 公式密集度居中, 反例聚焦"经典误解" (CTC 条件独立、Hamming/Blackman 取舍、声码器相不适定、ANC 带宽边界)。