Wav2vec2 Base Vn 270h
模型概述
該模型是基於Wav2Vec2架構的越南語自動語音識別(ASR)模型,使用Common Voice、VIVOS和VLSP2020等數據集共約270小時的標註語音數據進行微調。
模型特點
多數據集訓練
整合了Common Voice、VIVOS和VLSP2020等多個越南語語音數據集進行訓練
低詞錯誤率
在VIVOS測試集上達到3.70%的WER,表現優異
支持語言模型
可配合4-gram語言模型使用,顯著提升識別準確率
模型能力
越南語語音識別
音頻轉文本
16kHz採樣率語音處理
使用案例
語音轉錄
越南語會議記錄
將越南語會議錄音自動轉換為文字記錄
準確率超過90%
語音助手
為越南語語音助手提供語音識別能力
🚀 Wav2Vec2-Base-Vietnamese-270h
本項目是在越南語語音識別任務上微調的Wav2Vec2模型,使用了約270小時來自多個數據集的標註數據,包括Common Voice、VIVOS和VLSP2020。該模型使用SpeechBrain工具包和自定義分詞器進行微調。為獲得更好的使用體驗,建議您進一步瞭解SpeechBrain。
🚀 快速開始
使用此模型時,請確保您的語音輸入採樣率為16kHz。有關如何在特定語言上微調Wav2Vec2模型的詳細信息,請參考huggingface博客或speechbrain。
✨ 主要特性
- 基於Wav2Vec2模型在越南語語音識別任務上進行微調。
- 使用多個數據集的約270小時標註數據進行訓練。
- 採用SpeechBrain工具包和自定義分詞器。
📦 安裝指南
要使用此模型,您需要安裝版本大於0.5.10的SpeechBrain:
# 安裝SpeechBrain
pip install speechbrain > 0.5.10
💻 使用示例
基礎用法
該模型可以直接(不使用語言模型)按以下方式使用:
from speechbrain.pretrained import EncoderASR
model = EncoderASR.from_hparams(source="dragonSwing/wav2vec2-base-vn-270h", savedir="pretrained_models/asr-wav2vec2-vi")
model.transcribe_file('dragonSwing/wav2vec2-base-vn-270h/example.mp3')
# Output: được hồ chí minh coi là một động lực lớn của sự phát triển đất nước
高級用法
在GPU上進行推理
要在GPU上進行推理,在調用from_hparams
方法時添加run_opts={"device":"cuda"}
:
from speechbrain.pretrained import EncoderASR
model = EncoderASR.from_hparams(source="dragonSwing/wav2vec2-base-vn-270h", savedir="pretrained_models/asr-wav2vec2-vi", run_opts={"device":"cuda"})
model.transcribe_file('dragonSwing/wav2vec2-base-vn-270h/example.mp3')
模型評估
該模型可以在Common Voice 8.0的越南語測試數據上按以下方式進行評估:
import torch
import torchaudio
from datasets import load_dataset, load_metric, Audio
from transformers import Wav2Vec2FeatureExtractor
from speechbrain.pretrained import EncoderASR
import re
test_dataset = load_dataset("mozilla-foundation/common_voice_8_0", "vi", split="test", use_auth_token=True)
test_dataset = test_dataset.cast_column("audio", Audio(sampling_rate=16_000))
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
wer = load_metric("wer")
extractor = Wav2Vec2FeatureExtractor.from_pretrained("dragonSwing/wav2vec2-base-vn-270h")
model = EncoderASR.from_hparams(source="dragonSwing/wav2vec2-base-vn-270h", savedir="pretrained_models/asr-wav2vec2-vi", run_opts={'device': device})
chars_to_ignore_regex = r'[,?.!\-;:"“%\'�]'
# Preprocessing the datasets.
# We need to read the audio files as arrays
def speech_file_to_array_fn(batch):
audio = batch["audio"]
batch["target_text"] = re.sub(chars_to_ignore_regex, '', batch["sentence"]).lower()
batch['speech'] = audio['array']
return batch
test_dataset = test_dataset.map(speech_file_to_array_fn)
def evaluate(batch):
# For padding inputs only
inputs = extractor(
batch['speech'],
sampling_rate=16000,
return_tensors="pt",
padding=True,
do_normalize=False
).input_values
input_lens = torch.ones(inputs.shape[0])
pred_str, pred_tokens = model.transcribe_batch(inputs, input_lens)
batch["pred_strings"] = pred_str
return batch
result = test_dataset.map(evaluate, batched=True, batch_size=1)
print("WER: {:2f}".format(100 * wer.compute(predictions=result["pred_strings"], references=result["target_text"])))
測試結果:12.155553%
📚 詳細文檔
基準WER結果
VIVOS | COMMON VOICE 7.0 | COMMON VOICE 8.0 | |
---|---|---|---|
無語言模型 | 8.23 | 12.15 | 12.15 |
使用4-gram語言模型 | 3.70 | 5.57 | 5.76 |
語言模型使用OSCAR數據集,基於約32GB的爬取文本進行訓練。
信息表格
屬性 | 詳情 |
---|---|
模型類型 | 微調的Wav2Vec2模型 |
訓練數據 | 來自Common Voice、VIVOS和VLSP2020等多個數據集的約270小時標註數據 |
評估指標 | WER(詞錯誤率) |
語言模型訓練數據 | OSCAR數據集的約32GB爬取文本 |
引用
@misc{SB2021,
author = {Ravanelli, Mirco and Parcollet, Titouan and Rouhe, Aku and Plantinga, Peter and Rastorgueva, Elena and Lugosch, Loren and Dawalatabad, Nauman and Ju-Chieh, Chou and Heba, Abdel and Grondin, Francois and Aris, William and Liao, Chien-Feng and Cornell, Samuele and Yeh, Sung-Lin and Na, Hwidong and Gao, Yan and Fu, Szu-Wei and Subakan, Cem and De Mori, Renato and Bengio, Yoshua },
title = {SpeechBrain},
year = {2021},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\\\\url{https://github.com/speechbrain/speechbrain}},
}
關於SpeechBrain
SpeechBrain是一個開源的一體化語音工具包,設計簡單、極其靈活且用戶友好,在多個領域取得了有競爭力或領先的性能。
📄 許可證
本項目採用CC BY-NC 4.0許可證。
Voice Activity Detection
MIT
基於pyannote.audio 2.1版本的語音活動檢測模型,用於識別音頻中的語音活動時間段
語音識別
V
pyannote
7.7M
181
Wav2vec2 Large Xlsr 53 Portuguese
Apache-2.0
這是一個針對葡萄牙語語音識別任務微調的XLSR-53大模型,基於Common Voice 6.1數據集訓練,支持葡萄牙語語音轉文本。
語音識別 其他
W
jonatasgrosman
4.9M
32
Whisper Large V3
Apache-2.0
Whisper是由OpenAI提出的先進自動語音識別(ASR)和語音翻譯模型,在超過500萬小時的標註數據上訓練,具有強大的跨數據集和跨領域泛化能力。
語音識別 支持多種語言
W
openai
4.6M
4,321
Whisper Large V3 Turbo
MIT
Whisper是由OpenAI開發的最先進的自動語音識別(ASR)和語音翻譯模型,經過超過500萬小時標記數據的訓練,在零樣本設置下展現出強大的泛化能力。
語音識別
Transformers 支持多種語言

W
openai
4.0M
2,317
Wav2vec2 Large Xlsr 53 Russian
Apache-2.0
基於facebook/wav2vec2-large-xlsr-53模型微調的俄語語音識別模型,支持16kHz採樣率的語音輸入
語音識別 其他
W
jonatasgrosman
3.9M
54
Wav2vec2 Large Xlsr 53 Chinese Zh Cn
Apache-2.0
基於facebook/wav2vec2-large-xlsr-53模型微調的中文語音識別模型,支持16kHz採樣率的語音輸入。
語音識別 中文
W
jonatasgrosman
3.8M
110
Wav2vec2 Large Xlsr 53 Dutch
Apache-2.0
基於facebook/wav2vec2-large-xlsr-53微調的荷蘭語語音識別模型,在Common Voice和CSS10數據集上訓練,支持16kHz音頻輸入。
語音識別 其他
W
jonatasgrosman
3.0M
12
Wav2vec2 Large Xlsr 53 Japanese
Apache-2.0
基於facebook/wav2vec2-large-xlsr-53模型微調的日語語音識別模型,支持16kHz採樣率的語音輸入
語音識別 日語
W
jonatasgrosman
2.9M
33
Mms 300m 1130 Forced Aligner
基於Hugging Face預訓練模型的文本與音頻強制對齊工具,支持多種語言,內存效率高
語音識別
Transformers 支持多種語言

M
MahmoudAshraf
2.5M
50
Wav2vec2 Large Xlsr 53 Arabic
Apache-2.0
基於facebook/wav2vec2-large-xlsr-53微調的阿拉伯語語音識別模型,在Common Voice和阿拉伯語語音語料庫上訓練
語音識別 阿拉伯語
W
jonatasgrosman
2.3M
37
精選推薦AI模型
Llama 3 Typhoon V1.5x 8b Instruct
專為泰語設計的80億參數指令模型,性能媲美GPT-3.5-turbo,優化了應用場景、檢索增強生成、受限生成和推理任務
大型語言模型
Transformers 支持多種語言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一個基於SODA數據集訓練的超小型對話模型,專為邊緣設備推理設計,體積僅為Cosmo-3B模型的2%左右。
對話系統
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基於RoBERTa架構的中文抽取式問答模型,適用於從給定文本中提取答案的任務。
問答系統 中文
R
uer
2,694
98