Mms Lid 256
這是一個基於Wav2Vec2架構的語音語言識別模型,能夠識別256種語言,屬於Facebook大規模多語言語音(MMS)項目的一部分。
下載量 48.38k
發布時間 : 6/13/2023
模型概述
該模型用於語音語言識別任務,可將輸入的音頻分類為256種語言中的一種。基於10億參數的Wav2Vec2架構,在256種語言上進行了微調。
模型特點
多語言支持
支持256種語言的語音識別,覆蓋全球大多數主要語言和許多少數民族語言
大規模預訓練
基於10億參數的Wav2Vec2架構,具有強大的語音特徵提取能力
高準確率
在多種語言上表現出色,能夠準確識別語音的語言類別
模型能力
語音語言識別
多語言音頻分類
即時語言檢測
使用案例
語音技術
多語言語音助手
自動檢測用戶語音的語言,為多語言語音助手提供支持
可準確識別256種語言,提高語音助手的語言適應能力
語音內容分析
分析音頻內容中的語言分佈
可用於媒體監測、內容審核等場景
教育技術
語言學習應用
識別學習者發音的語言背景
幫助個性化語言學習體驗
🚀 大規模多語言語音 (MMS) - 微調後的語言識別模型
本模型是一個經過微調的語音語言識別 (LID) 模型,是 Facebook 大規模多語言語音項目 的一部分。該模型基於 Wav2Vec2 架構,可將原始音頻輸入分類為 256 個輸出類別的概率分佈(每個類別代表一種語言)。此模型包含 10 億個參數,是在 256 種語言上對 facebook/mms-1b 進行微調得到的。
🚀 快速開始
安裝依賴
首先,我們需要安裝 transformers
和其他一些必要的庫:
pip install torch accelerate torchaudio datasets
pip install --upgrade transformers
注意:為了使用 MMS,你需要安裝至少 transformers >= 4.30
版本。如果 4.30
版本尚未在 PyPI 上發佈,請確保從源代碼安裝 transformers
:
pip install git+https://github.com/huggingface/transformers.git
加載音頻樣本
接下來,我們通過 datasets
加載一些音頻樣本。請確保音頻數據的採樣率為 16000 kHz。
from datasets import load_dataset, Audio
# 英語樣本
stream_data = load_dataset("mozilla-foundation/common_voice_13_0", "en", split="test", streaming=True)
stream_data = stream_data.cast_column("audio", Audio(sampling_rate=16000))
en_sample = next(iter(stream_data))["audio"]["array"]
# 阿拉伯語樣本
stream_data = load_dataset("mozilla-foundation/common_voice_13_0", "ar", split="test", streaming=True)
stream_data = stream_data.cast_column("audio", Audio(sampling_rate=16000))
ar_sample = next(iter(stream_data))["audio"]["array"]
加載模型和處理器
from transformers import Wav2Vec2ForSequenceClassification, AutoFeatureExtractor
import torch
model_id = "facebook/mms-lid-256"
processor = AutoFeatureExtractor.from_pretrained(model_id)
model = Wav2Vec2ForSequenceClassification.from_pretrained(model_id)
音頻分類
現在我們處理音頻數據,並將處理後的音頻數據傳遞給模型,以將其分類為某種語言,就像我們通常對 Wav2Vec2 音頻分類模型(如 ehcalabres/wav2vec2-lg-xlsr-en-speech-emotion-recognition)所做的那樣。
# 英語音頻分類
inputs = processor(en_sample, sampling_rate=16_000, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs).logits
lang_id = torch.argmax(outputs, dim=-1)[0].item()
detected_lang = model.config.id2label[lang_id]
# 'eng'
# 阿拉伯語音頻分類
inputs = processor(ar_sample, sampling_rate=16_000, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs).logits
lang_id = torch.argmax(outputs, dim=-1)[0].item()
detected_lang = model.config.id2label[lang_id]
# 'ara'
查看支持的語言
要查看模型支持的所有語言,可以按如下方式打印語言 ID:
processor.id2label.values()
有關該架構的更多詳細信息,請查看 官方文檔。
✨ 主要特性
- 多語言支持:該模型支持 256 種語言,能夠準確識別多種語言的語音。
- 基於先進架構:基於 Wav2Vec2 架構,具有良好的性能和泛化能力。
📦 安裝指南
安裝所需的庫,具體安裝命令如下:
pip install torch accelerate torchaudio datasets
pip install --upgrade transformers
若 transformers
版本未達到要求,可從源代碼安裝:
pip install git+https://github.com/huggingface/transformers.git
💻 使用示例
基礎用法
from datasets import load_dataset, Audio
from transformers import Wav2Vec2ForSequenceClassification, AutoFeatureExtractor
import torch
# 加載英語音頻樣本
stream_data = load_dataset("mozilla-foundation/common_voice_13_0", "en", split="test", streaming=True)
stream_data = stream_data.cast_column("audio", Audio(sampling_rate=16000))
en_sample = next(iter(stream_data))["audio"]["array"]
# 加載模型和處理器
model_id = "facebook/mms-lid-256"
processor = AutoFeatureExtractor.from_pretrained(model_id)
model = Wav2Vec2ForSequenceClassification.from_pretrained(model_id)
# 處理音頻數據
inputs = processor(en_sample, sampling_rate=16_000, return_tensors="pt")
# 進行推理
with torch.no_grad():
outputs = model(**inputs).logits
# 獲取預測的語言 ID
lang_id = torch.argmax(outputs, dim=-1)[0].item()
detected_lang = model.config.id2label[lang_id]
print(detected_lang)
高級用法
# 可以通過循環處理多個音頻樣本
from datasets import load_dataset, Audio
from transformers import Wav2Vec2ForSequenceClassification, AutoFeatureExtractor
import torch
model_id = "facebook/mms-lid-256"
processor = AutoFeatureExtractor.from_pretrained(model_id)
model = Wav2Vec2ForSequenceClassification.from_pretrained(model_id)
languages = ["en", "ar"] # 要處理的語言列表
for lang in languages:
stream_data = load_dataset("mozilla-foundation/common_voice_13_0", lang, split="test", streaming=True)
stream_data = stream_data.cast_column("audio", Audio(sampling_rate=16000))
sample = next(iter(stream_data))["audio"]["array"]
inputs = processor(sample, sampling_rate=16_000, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs).logits
lang_id = torch.argmax(outputs, dim=-1)[0].item()
detected_lang = model.config.id2label[lang_id]
print(f"Detected language for {lang}: {detected_lang}")
📚 詳細文檔
支持的語言
本模型支持 256 種語言。點擊下面的按鈕展開查看此模型支持的所有語言的 ISO 639-3 代碼。你可以在 MMS 語言覆蓋概述 中找到有關這些語言及其 ISO 649-3 代碼的更多詳細信息。
點擊展開
- ara
- cmn
- eng
- spa
- fra
- mlg
- swe
- por
- vie
- ful
- sun
- asm
- ben
- zlm
- kor
- ind
- hin
- tuk
- urd
- aze
- slv
- mon
- hau
- tel
- swh
- bod
- rus
- tur
- heb
- mar
- som
- tgl
- tat
- tha
- cat
- ron
- mal
- bel
- pol
- yor
- nld
- bul
- hat
- afr
- isl
- amh
- tam
- hun
- hrv
- lit
- cym
- fas
- mkd
- ell
- bos
- deu
- sqi
- jav
- kmr
- nob
- uzb
- snd
- lat
- nya
- grn
- mya
- orm
- lin
- hye
- yue
- pan
- jpn
- kaz
- npi
- kik
- kat
- guj
- kan
- tgk
- ukr
- ces
- lav
- bak
- khm
- fao
- glg
- ltz
- xog
- lao
- mlt
- sin
- aka
- sna
- ita
- srp
- mri
- nno
- pus
- eus
- ory
- lug
- bre
- luo
- slk
- ewe
- fin
- rif
- dan
- yid
- yao
- mos
- hne
- est
- dyu
- bam
- uig
- sck
- tso
- mup
- ctg
- ceb
- war
- bbc
- vmw
- sid
- tpi
- mag
- san
- kri
- lon
- kir
- run
- ubl
- kin
- rkt
- xmm
- tir
- mai
- nan
- nyn
- bcc
- hak
- suk
- bem
- rmy
- awa
- pcm
- bgc
- shn
- oci
- wol
- bci
- kab
- ilo
- bcl
- haw
- mad
- nod
- sag
- sas
- jam
- mey
- shi
- hil
- ace
- kam
- min
- umb
- hno
- ban
- syl
- bxg
- xho
- mww
- epo
- tzm
- zul
- ibo
- abk
- guz
- ckb
- knc
- nso
- bho
- dje
- tiv
- gle
- lua
- skr
- bto
- kea
- glk
- ast
- sat
- ktu
- bhb
- emk
- kng
- kmb
- tsn
- gom
- ven
- sco
- glv
- sot
- sou
- gno
- nde
- bjn
- ina
- fmu
- esg
- wes
- pnb
- phr
- mui
- bug
- mrr
- kas
- lir
- vah
- ssw
- rwr
- pcc
- hms
- wbr
- swv
- mtr
- haz
- aii
- bns
- msi
- wuu
- hsn
- bgp
- tts
- lmn
- dcc
- bew
- bjj
- ibb
- tji
- hoj
- cpx
- cdo
- daq
- mut
- nap
- czh
- gdx
- sdh
- scn
- mnp
- bar
- mzn
- gsw
模型詳情
屬性 | 詳情 |
---|---|
開發者 | Vineel Pratap 等人 |
模型類型 | 多語言自動語音識別模型 |
支持語言 | 256 種語言,詳見 支持的語言 |
許可證 | CC-BY-NC 4.0 許可證 |
參數數量 | 10 億 |
音頻採樣率 | 16000 kHz |
引用方式 | @article{pratap2023mms, title={Scaling Speech Technology to 1,000+ Languages}, author={Vineel Pratap and Andros Tjandra and Bowen Shi and Paden Tomasello and Arun Babu and Sayani Kundu and Ali Elkahky and Zhaoheng Ni and Apoorv Vyas and Maryam Fazel-Zarandi and Alexei Baevski and Yossi Adi and Xiaohui Zhang and Wei-Ning Hsu and Alexis Conneau and Michael Auli}, journal={arXiv}, year={2023} } |
額外鏈接
📄 許可證
本模型使用 CC-BY-NC 4.0 許可證。
Mms Lid 126
基於Facebook大規模多語言語音項目微調的語言識別模型,支持126種語言的音頻分類
音頻分類
Transformers 支持多種語言

M
facebook
2.1M
26
Wav2vec2 Base Finetuned Speech Commands V0.02
Apache-2.0
該模型是基於facebook/wav2vec2-base在speech_commands數據集上微調的語音命令識別模型,準確率達97.59%。
音頻分類
Transformers

W
0xb1
1.2M
0
Whisper Medium Fleurs Lang Id
Apache-2.0
基於OpenAI Whisper-medium微調的語音語種識別模型,在FLEURS數據集上達到88.05%準確率
音頻分類
Transformers

W
sanchit-gandhi
590.30k
14
Wav2vec2 Large Robust 12 Ft Emotion Msp Dim
該模型通過對Wav2Vec2-Large-Robust進行微調訓練,用於語音情感識別,輸出喚醒度、支配度和效價三個維度的預測值。
音頻分類
Transformers 英語

W
audeering
394.51k
109
Lang Id Voxlingua107 Ecapa
Apache-2.0
基於SpeechBrain框架和ECAPA-TDNN架構的語音語言識別模型,支持107種語言的識別和語音嵌入向量提取。
音頻分類
PyTorch 支持多種語言
L
speechbrain
330.01k
112
Ast Finetuned Audioset 10 10 0.4593
Bsd-3-clause
音頻頻譜圖變換器(AST)是基於AudioSet微調的模型,將音頻轉換為頻譜圖後應用視覺變換器進行音頻分類。
音頻分類
Transformers

A
MIT
308.88k
311
Whisper Small Ft Common Language Id
Apache-2.0
基於openai/whisper-small微調的通用語言識別模型,在評估集上準確率達88.6%
音頻分類
Transformers

W
sanchit-gandhi
256.20k
2
Emotion Recognition Wav2vec2 IEMOCAP
Apache-2.0
使用微調的wav2vec2模型進行語音情感識別,在IEMOCAP數據集上訓練
音頻分類
PyTorch 英語
E
speechbrain
237.65k
131
Ast Finetuned Audioset 14 14 0.443
Bsd-3-clause
基於AudioSet數據集微調的音頻頻譜圖變換器,將音頻轉換為頻譜圖後使用視覺變換器架構處理,在音頻分類任務中表現優異。
音頻分類
Transformers

A
MIT
194.20k
5
Wav2vec2 Large Xlsr 53 Gender Recognition Librispeech
Apache-2.0
基於Librispeech-clean-100數據集微調的性別識別模型,在測試集上F1分數達0.9993
音頻分類
Transformers

W
alefiury
182.33k
42
精選推薦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