🚀 Wav2Vec2-Large-Robust在Switchboard上微調
本模型基於Facebook的Wav2Vec2,是在wav2vec2-large-robust模型基礎上進行微調得到的。它可用於語音識別任務,能處理多種語音數據,在嘈雜的電話語音數據上表現出色。
🚀 快速開始
本模型是 wav2vec2-large-robust 模型的微調版本。它在以下數據集上進行了預訓練:
隨後,該模型在300小時的 Switchboard 電話語音語料庫(嘈雜的電話數據)上進行了微調。
使用該模型時,請確保輸入的語音採樣率為16Khz。
相關論文:Paper Robust Wav2Vec2
作者:Wei - Ning Hsu, Anuroop Sriram, Alexei Baevski, Tatiana Likhomanenko, Qiantong Xu, Vineel Pratap, Jacob Kahn, Ann Lee, Ronan Collobert, Gabriel Synnaeve, Michael Auli
摘要
語音表徵的自監督學習是一個非常活躍的研究領域,但大多數工作都集中在單一領域,例如有大量標註和未標註數據的朗讀有聲書籍。在本文中,我們探索了更通用的設置,即預訓練的未標註數據領域與微調的標註數據領域不同,而這兩者又可能與測試數據領域不同。我們的實驗表明,在預訓練期間使用目標領域數據可在各種設置下大幅提高性能。在大規模競爭設置中,我們發現對未標註的領域內數據進行預訓練可使在領域內和領域外標註數據上訓練的模型之間的差距縮小66% - 73%。這具有明顯的實際意義,因為獲取未標註的目標領域數據比獲取標註數據容易得多。此外,我們發現對多個領域進行預訓練可提高在訓練期間未見過的領域上的泛化性能。代碼和模型將在指定的URL上提供。
原始模型可在 https://github.com/pytorch/fairseq/tree/master/examples/wav2vec#wav2vec-20 找到。
✨ 主要特性
- 多領域預訓練:在多個不同的語音數據集上進行預訓練,包括有聲書籍、眾包語音和電話語音等,增強了模型的泛化能力。
- 特定領域微調:在Switchboard電話語音語料庫上進行微調,使其在嘈雜的電話語音識別任務中表現出色。
📦 安裝指南
暫未提供安裝步驟相關內容,若有需要,可參考原始模型的安裝說明。
💻 使用示例
基礎用法
from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC
from datasets import load_dataset
import torch
processor = Wav2Vec2Processor.from_pretrained("facebook/wav2vec2-large-robust-ft-swbd-300h")
model = Wav2Vec2ForCTC.from_pretrained("facebook/wav2vec2-large-robust-ft-swbd-300h")
ds = load_dataset("patrickvonplaten/librispeech_asr_dummy", "clean", split="validation")
input_values = processor(ds[0]["audio"]["array"], return_tensors="pt", padding="longest").input_values
logits = model(input_values).logits
predicted_ids = torch.argmax(logits, dim=-1)
transcription = processor.batch_decode(predicted_ids)
高級用法
暫未提供高級用法的相關代碼示例。
📚 詳細文檔
數據集信息
屬性 |
詳情 |
訓練數據集 |
Libri - Light、CommonVoice、Switchboard、Fisher |
微調數據集 |
Switchboard |
注意事項
⚠️ 重要提示
使用該模型時,請確保輸入的語音採樣率為16Khz。
🔧 技術細節
本模型基於自監督學習,通過在多個不同的語音數據集上進行預訓練,學習到語音的通用特徵。然後在Switchboard電話語音語料庫上進行微調,以適應嘈雜的電話語音環境。實驗表明,在預訓練期間使用目標領域數據可顯著提高模型在各種設置下的性能,對多個領域進行預訓練可提高模型在未見過領域上的泛化能力。
📄 許可證
本模型使用的許可證為 apache - 2.0
。