🚀 Wav2vec2 Large 100k Voxpopuli を Common Voice と M-AILABS でロシア語にファインチューニングしたモデル
このモデルは、Wav2vec2 Large 100k Voxpopuli を Common Voice 7.0 と M-AILABS を使用してロシア語にファインチューニングしたものです。このモデルは、自動音声認識タスクに特化しており、ロシア語の音声データを高精度に認識することができます。
🚀 クイックスタート
モデルの使用方法
以下のコードを使用して、このモデルを簡単に使い始めることができます。
from transformers import AutoTokenizer, Wav2Vec2ForCTC
tokenizer = AutoTokenizer.from_pretrained("Edresson/wav2vec2-large-100k-voxpopuli-ft-Common-Voice_plus_TTS-Dataset-russian")
model = Wav2Vec2ForCTC.from_pretrained("Edresson/wav2vec2-large-100k-voxpopuli-ft-Common-Voice_plus_TTS-Dataset-russian")
コモンボイスデータセットでのテスト例
以下は、Common Voice データセットを使用したテスト例です。
dataset = load_dataset("common_voice", "pt", split="test", data_dir="./cv-corpus-6.1-2020-12-11")
resampler = torchaudio.transforms.Resample(orig_freq=48_000, new_freq=16_000)
def map_to_array(batch):
speech, _ = torchaudio.load(batch["path"])
batch["speech"] = resampler.forward(speech.squeeze(0)).numpy()
batch["sampling_rate"] = resampler.new_freq
batch["sentence"] = re.sub(chars_to_ignore_regex, '', batch["sentence"]).lower().replace("’", "'")
return batch
ds = dataset.map(map_to_array)
result = ds.map(map_to_pred, batched=True, batch_size=1, remove_columns=list(ds.features.keys()))
print(wer.compute(predictions=result["predicted"], references=result["target"]))
✨ 主な機能
- 高精度な音声認識:Common Voice 7.0 と M-AILABS のデータセットを使用してファインチューニングされたため、ロシア語の音声を高精度に認識することができます。
- 簡単な使用方法:
transformers
ライブラリを使用することで、簡単にモデルをロードして使用することができます。
📦 インストール
このモデルを使用するには、transformers
ライブラリが必要です。以下のコマンドでインストールできます。
pip install transformers
💻 使用例
基本的な使用法
from transformers import AutoTokenizer, Wav2Vec2ForCTC
tokenizer = AutoTokenizer.from_pretrained("Edresson/wav2vec2-large-100k-voxpopuli-ft-Common-Voice_plus_TTS-Dataset-russian")
model = Wav2Vec2ForCTC.from_pretrained("Edresson/wav2vec2-large-100k-voxpopuli-ft-Common-Voice_plus_TTS-Dataset-russian")
高度な使用法
dataset = load_dataset("common_voice", "pt", split="test", data_dir="./cv-corpus-6.1-2020-12-11")
resampler = torchaudio.transforms.Resample(orig_freq=48_000, new_freq=16_000)
def map_to_array(batch):
speech, _ = torchaudio.load(batch["path"])
batch["speech"] = resampler.forward(speech.squeeze(0)).numpy()
batch["sampling_rate"] = resampler.new_freq
batch["sentence"] = re.sub(chars_to_ignore_regex, '', batch["sentence"]).lower().replace("’", "'")
return batch
ds = dataset.map(map_to_array)
result = ds.map(map_to_pred, batched=True, batch_size=1, remove_columns=list(ds.features.keys()))
print(wer.compute(predictions=result["predicted"], references=result["target"]))
📚 ドキュメント
結果については、論文を参照してください。
🔧 技術詳細
このモデルは、Wav2vec2 Large 100k Voxpopuli をベースに、Common Voice 7.0 と M-AILABS のデータセットを使用してロシア語にファインチューニングされています。
📄 ライセンス
このモデルは、Apache 2.0 ライセンスの下で提供されています。
📋 情報一覧
属性 |
詳情 |
モデルタイプ |
Wav2vec2 Large 100k Voxpopuli をロシア語でファインチューニングしたもの |
訓練データ |
Common Voice 7.0 と M-AILABS |
評価指標 |
WER(Word Error Rate) |
タグ |
audio, speech, wav2vec2, ru, russian-speech-corpus, automatic-speech-recognition, speech, PyTorch |
ライセンス |
apache-2.0 |
モデル名 |
Edresson Casanova Wav2vec2 Large 100k Voxpopuli fine-tuned with Common Voice and M-AILABS in Russian |
タスク |
音声認識(Speech Recognition) |
テスト Common Voice 7.0 WER |
24.80 |