中英混合的语音识别XPhoneBERT 监督的音频到音素的编码器结合 f0 特征LID
完整项目包获取点击文末名片
完成一个 Code-Switching(中英混合)的语音识别系统,整个流程如下思路进行:
163. (Step 1) 训练音频到音素的编码器(Audio → Phoneme Encoder)
- 你已经完成了此部分。
- 核心思路是利用对比学习(NT-Xent Loss),将你自定义的 “音频到音素” 编码器输出的向量,与 XPhoneBERT 对文本产生的音素向量对齐,形成一个共享或可对齐的表示空间。
- 这样,模型学会了把音频的特征映射到一个接近 XPhoneBERT 的音素向量空间。
- (Step 2) 用 f0 特征训练一个字符级的语言识别 (LID, Language ID) 模型
- 目标是判断出每个字符(或者更细粒度可以是每个音素/词)属于哪种语言(如 “zh” / “en” / “num”)。
- 由于中英文在声调、语速、F0 高度等方面有差异,可用 f0 作为强特征;再结合简单的卷积或 Transformer,对 f0 序列进行分类/序列标注。
- 这一步的重点是:需要在输入端对音频进行 F0 提取,并且在输出端做一个“字符级”的多类分类(如果需要更精细可以做音素级/帧级)。
- 训练好一个 LID 模型后,你就可以在推理时,对于一段音频的每个字符/音素,预测它最可能属于哪一种语言。