Wav2vec2 Xlsr Multilingual 56
這是一個支持56種語言的多語言自動語音識別(ASR)模型,基於facebook/wav2vec2-large-xlsr-53在通用語音數據集上微調而成。
下載量 21.69k
發布時間 : 3/2/2022
模型概述
該模型用於多語言自動語音識別任務,支持包括阿拉伯語、中文、英語、法語等在內的56種語言。
模型特點
多語言支持
支持56種語言的語音識別,覆蓋廣泛的語言需求
基於XLSR架構
基於facebook/wav2vec2-large-xlsr-53模型微調,具有強大的語音識別能力
通用語音數據集
使用通用語音(Common Voice)數據集進行訓練,數據來源廣泛
模型能力
自動語音識別
多語言語音轉文本
語音內容分析
使用案例
語音轉寫
多語言會議記錄
將多語言會議錄音自動轉寫為文本
支持56種語言的語音轉寫
語音助手
為多語言語音助手提供語音識別能力
語音分析
語音內容分析
分析語音內容中的關鍵詞和主題
🚀 XLSR Wav2Vec2 56 語言模型卡
本模型是用於 56 種語言的自動語音識別模型,由 Voidful 開發,基於 Apache-2.0 許可證開源。它在多種語言的語音識別任務中表現出色,為多語言語音處理提供了強大的支持。
🚀 快速開始
使用以下代碼開始使用該模型:
點擊展開
環境設置:
!pip install torchaudio
!pip install datasets transformers
!pip install asrp
!wget -O lang_ids.pk https://huggingface.co/voidful/wav2vec2-xlsr-multilingual-56/raw/main/lang_ids.pk
使用方法
import torchaudio
from datasets import load_dataset, load_metric
from transformers import (
Wav2Vec2ForCTC,
Wav2Vec2Processor,
AutoTokenizer,
AutoModelWithLMHead
)
import torch
import re
import sys
import soundfile as sf
model_name = "voidful/wav2vec2-xlsr-multilingual-56"
device = "cuda"
processor_name = "voidful/wav2vec2-xlsr-multilingual-56"
import pickle
with open("lang_ids.pk", 'rb') as output:
lang_ids = pickle.load(output)
model = Wav2Vec2ForCTC.from_pretrained(model_name).to(device)
processor = Wav2Vec2Processor.from_pretrained(processor_name)
model.eval()
def load_file_to_data(file,sampling_rate=16_000):
batch = {}
speech, _ = torchaudio.load(file)
if sampling_rate != '16_000' or sampling_rate != '16000':
resampler = torchaudio.transforms.Resample(orig_freq=sampling_rate, new_freq=16_000)
batch["speech"] = resampler.forward(speech.squeeze(0)).numpy()
batch["sampling_rate"] = resampler.new_freq
else:
batch["speech"] = speech.squeeze(0).numpy()
batch["sampling_rate"] = '16000'
return batch
def predict(data):
features = processor(data["speech"], sampling_rate=data["sampling_rate"], padding=True, return_tensors="pt")
input_values = features.input_values.to(device)
attention_mask = features.attention_mask.to(device)
with torch.no_grad():
logits = model(input_values, attention_mask=attention_mask).logits
decoded_results = []
for logit in logits:
pred_ids = torch.argmax(logit, dim=-1)
mask = pred_ids.ge(1).unsqueeze(-1).expand(logit.size())
vocab_size = logit.size()[-1]
voice_prob = torch.nn.functional.softmax((torch.masked_select(logit, mask).view(-1,vocab_size)),dim=-1)
comb_pred_ids = torch.argmax(voice_prob, dim=-1)
decoded_results.append(processor.decode(comb_pred_ids))
return decoded_results
def predict_lang_specific(data,lang_code):
features = processor(data["speech"], sampling_rate=data["sampling_rate"], padding=True, return_tensors="pt")
input_values = features.input_values.to(device)
attention_mask = features.attention_mask.to(device)
with torch.no_grad():
logits = model(input_values, attention_mask=attention_mask).logits
decoded_results = []
for logit in logits:
pred_ids = torch.argmax(logit, dim=-1)
mask = ~pred_ids.eq(processor.tokenizer.pad_token_id).unsqueeze(-1).expand(logit.size())
vocab_size = logit.size()[-1]
voice_prob = torch.nn.functional.softmax((torch.masked_select(logit, mask).view(-1,vocab_size)),dim=-1)
filtered_input = pred_ids[pred_ids!=processor.tokenizer.pad_token_id].view(1,-1).to(device)
if len(filtered_input[0]) == 0:
decoded_results.append("")
else:
lang_mask = torch.empty(voice_prob.shape[-1]).fill_(0)
lang_index = torch.tensor(sorted(lang_ids[lang_code]))
lang_mask.index_fill_(0, lang_index, 1)
lang_mask = lang_mask.to(device)
comb_pred_ids = torch.argmax(lang_mask*voice_prob, dim=-1)
decoded_results.append(processor.decode(comb_pred_ids))
return decoded_results
predict(load_file_to_data('audio file path',sampling_rate=16_000)) # 注意音頻文件的採樣率
predict_lang_specific(load_file_to_data('audio file path',sampling_rate=16_000),'en') # 注意音頻文件的採樣率
✨ 主要特性
- 多語言支持:支持 56 種語言的自動語音識別。
- 基於 XLSR Wav2Vec2:利用先進的預訓練模型進行微調。
- 在多個數據集上訓練:在 Common Voice 等數據集上進行訓練,提高模型的泛化能力。
📦 安裝指南
在使用該模型之前,需要安裝以下依賴:
!pip install torchaudio
!pip install datasets transformers
!pip install asrp
!wget -O lang_ids.pk https://huggingface.co/voidful/wav2vec2-xlsr-multilingual-56/raw/main/lang_ids.pk
📚 詳細文檔
模型詳情
模型描述
- 開發者:voidful
- 共享方:Hugging Face
- 模型類型:自動語音識別
- 支持語言:多語言(56 種語言,1 個多語言自動語音識別模型)
- 許可證:Apache-2.0
- 相關模型:
- 父模型:wav2vec
- 更多信息資源:
使用場景
直接使用
該模型可用於自動語音識別任務。
下游使用
更多信息待補充。
超出使用範圍
該模型不應被用於故意為人們創造敵對或疏遠的環境。
偏差、風險和侷限性
大量研究已經探討了語言模型的偏差和公平性問題(例如,參見 Sheng 等人 (2021) 和 Bender 等人 (2021))。模型生成的預測可能包含針對受保護類別、身份特徵以及敏感、社會和職業群體的令人不安和有害的刻板印象。
建議
用戶(直接用戶和下游用戶)應該瞭解該模型的風險、偏差和侷限性。關於進一步的建議,更多信息待補充。
訓練詳情
訓練數據
請參閱 Common Voice 數據集卡片。該模型在 56 種語言上對 facebook/wav2vec2-large-xlsr-53 進行了微調,使用的數據集為 Common Voice。
訓練過程
預處理
更多信息待補充。
速度、大小、時間
使用該模型時,請確保語音輸入的採樣率為 16kHz。
評估
測試數據、因素和指標
測試數據
更多信息待補充。
因素
更多信息待補充。
指標
更多信息待補充。
結果
點擊展開
通用語音語言 | 數據數量 | 時長(小時) | 詞錯誤率(WER) | 字符錯誤率(CER) |
---|---|---|---|---|
ar | 21744 | 81.5 | 75.29 | 31.23 |
as | 394 | 1.1 | 95.37 | 46.05 |
br | 4777 | 7.4 | 93.79 | 41.16 |
ca | 301308 | 692.8 | 24.80 | 10.39 |
cnh | 1563 | 2.4 | 68.11 | 23.10 |
cs | 9773 | 39.5 | 67.86 | 12.57 |
cv | 1749 | 5.9 | 95.43 | 34.03 |
cy | 11615 | 106.7 | 67.03 | 23.97 |
de | 262113 | 822.8 | 27.03 | 6.50 |
dv | 4757 | 18.6 | 92.16 | 30.15 |
el | 3717 | 11.1 | 94.48 | 58.67 |
en | 580501 | 1763.6 | 34.87 | 14.84 |
eo | 28574 | 162.3 | 37.77 | 6.23 |
es | 176902 | 337.7 | 19.63 | 5.41 |
et | 5473 | 35.9 | 86.87 | 20.79 |
eu | 12677 | 90.2 | 44.80 | 7.32 |
fa | 12806 | 290.6 | 53.81 | 15.09 |
fi | 875 | 2.6 | 93.78 | 27.57 |
fr | 314745 | 664.1 | 33.16 | 13.94 |
fy-NL | 6717 | 27.2 | 72.54 | 26.58 |
ga-IE | 1038 | 3.5 | 92.57 | 51.02 |
hi | 292 | 2.0 | 90.95 | 57.43 |
hsb | 980 | 2.3 | 89.44 | 27.19 |
hu | 4782 | 9.3 | 97.15 | 36.75 |
ia | 5078 | 10.4 | 52.00 | 11.35 |
id | 3965 | 9.9 | 82.50 | 22.82 |
it | 70943 | 178.0 | 39.09 | 8.72 |
ja | 1308 | 8.2 | 99.21 | 62.06 |
ka | 1585 | 4.0 | 90.53 | 18.57 |
ky | 3466 | 12.2 | 76.53 | 19.80 |
lg | 1634 | 17.1 | 98.95 | 43.84 |
lt | 1175 | 3.9 | 92.61 | 26.81 |
lv | 4554 | 6.3 | 90.34 | 30.81 |
mn | 4020 | 11.6 | 82.68 | 30.14 |
mt | 3552 | 7.8 | 84.18 | 22.96 |
nl | 14398 | 71.8 | 57.18 | 19.01 |
or | 517 | 0.9 | 90.93 | 27.34 |
pa-IN | 255 | 0.8 | 87.95 | 42.03 |
pl | 12621 | 112.0 | 56.14 | 12.06 |
pt | 11106 | 61.3 | 53.24 | 16.32 |
rm-sursilv | 2589 | 5.9 | 78.17 | 23.31 |
rm-vallader | 931 | 2.3 | 73.67 | 21.76 |
ro | 4257 | 8.7 | 83.84 | 21.95 |
ru | 23444 | 119.1 | 61.83 | 15.18 |
sah | 1847 | 4.4 | 94.38 | 38.46 |
sl | 2594 | 6.7 | 84.21 | 20.54 |
sv-SE | 4350 | 20.8 | 83.68 | 30.79 |
ta | 3788 | 18.4 | 84.19 | 21.60 |
th | 4839 | 11.7 | 141.87 | 37.16 |
tr | 3478 | 22.3 | 66.77 | 15.55 |
tt | 13338 | 26.7 | 86.80 | 33.57 |
uk | 7271 | 39.4 | 70.23 | 14.34 |
vi | 421 | 1.7 | 96.06 | 66.25 |
zh-CN | 27284 | 58.7 | 89.67 | 23.96 |
zh-HK | 12678 | 92.1 | 81.77 | 18.82 |
zh-TW | 6402 | 56.6 | 85.08 | 29.07 |
模型檢查
更多信息待補充。
環境影響
可以使用 Lacoste 等人 (2019) 中提出的 機器學習影響計算器 來估算碳排放量。
- 硬件類型:更多信息待補充
- 使用時長:更多信息待補充
- 雲服務提供商:更多信息待補充
- 計算區域:更多信息待補充
- 碳排放:更多信息待補充
技術規格(可選)
模型架構和目標
更多信息待補充。
計算基礎設施
硬件
更多信息待補充。
軟件
更多信息待補充。
引用
BibTeX
More information needed
APA
More information needed
術語表(可選)
更多信息待補充。
更多信息(可選)
更多信息待補充。
模型卡片作者(可選)
voidful 與 Ezi Ozoani 和 Hugging Face 團隊合作完成。
模型卡片聯繫方式
更多信息待補充。
📄 許可證
該模型遵循 Apache-2.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