🚀 M-CTC-T
M-CTC-T 是 Meta AI 推出的大規模多語言語音識別器。該模型是一個具有 10 億參數的 Transformer 編碼器,配備了一個針對 8065 個字符標籤的 CTC 頭部和一個針對 60 個語言 ID 標籤的語言識別頭部。它在 Common Voice(2020 年 12 月發佈的 6.1 版本)和 VoxPopuli 數據集上進行訓練。在這兩個數據集上完成訓練後,模型僅在 Common Voice 上繼續訓練。標籤為未歸一化的字符級轉錄(未去除標點和大小寫)。該模型以 16Khz 音頻信號的梅爾濾波器組特徵作為輸入。

原始的 Flashlight 代碼、模型檢查點和 Colab 筆記本可在 此處 找到。
✨ 主要特性
- 大規模多語言語音識別能力。
- 基於 10 億參數的 Transformer 編碼器架構。
- 配備 CTC 頭部和語言識別頭部。
📚 詳細文檔
引用信息
- 論文
- 作者:Loren Lugosch、Tatiana Likhomanenko、Gabriel Synnaeve、Ronan Collobert
@article{lugosch2021pseudo,
title={Pseudo-Labeling for Massively Multilingual Speech Recognition},
author={Lugosch, Loren and Likhomanenko, Tatiana and Synnaeve, Gabriel and Collobert, Ronan},
journal={ICASSP},
year={2022}
}
貢獻者
非常感謝 Chan Woo Kim 將模型從 Flashlight C++ 移植到 PyTorch。
訓練方法

有關該模型的訓練方式的更多信息,請查看 官方論文。
💻 使用示例
基礎用法
import torch
import torchaudio
from datasets import load_dataset
from transformers import MCTCTForCTC, MCTCTProcessor
model = MCTCTForCTC.from_pretrained("speechbrain/m-ctc-t-large")
processor = MCTCTProcessor.from_pretrained("speechbrain/m-ctc-t-large")
ds = load_dataset("patrickvonplaten/librispeech_asr_dummy", "clean", split="validation")
input_features = processor(ds[0]["audio"]["array"], sampling_rate=ds[0]["audio"]["sampling_rate"], return_tensors="pt").input_features
with torch.no_grad():
logits = model(input_features).logits
predicted_ids = torch.argmax(logits, dim=-1)
transcription = processor.batch_decode(predicted_ids)
模型表現
Common Voice 數據集上所有語言的平均結果:
屬性 |
詳情 |
字符錯誤率 (CER) - 驗證集 |
21.4 |
字符錯誤率 (CER) - 測試集 |
23.3 |
📄 許可證
本項目採用 Apache-2.0 許可證。
📥 問題與幫助
如果您對該模型有疑問或需要幫助,請考慮在本倉庫中開啟討論或提交拉取請求,並標記 @lorenlugosch、@cwkeam 或 @patrickvonplaten。