🚀 Parakeet RNNT 1.1B (en)
parakeet-rnnt-1.1b
は、英語の音声を小文字のアルファベットで文字起こしする自動音声認識(ASR)モデルです。このモデルは、NVIDIA NeMoとSuno.aiのチームによって共同開発されました。FastConformer Transducer [1] のXXLバージョン(約11億パラメータ)です。詳細なアーキテクチャについては、モデルアーキテクチャセクションとNeMoドキュメントを参照してください。
🚀 クイックスタート
NVIDIA NeMo: トレーニング
モデルをトレーニング、ファインチューニング、または操作するには、NVIDIA NeMoをインストールする必要があります。最新のPyTorchバージョンをインストールした後に、以下のコマンドでインストールすることをおすすめします。
pip install nemo_toolkit['all']
このモデルの使用方法
このモデルは、NeMoツールキット [3] で使用でき、推論や別のデータセットでのファインチューニングのための事前学習済みチェックポイントとして利用できます。
基本的な使用法
import nemo.collections.asr as nemo_asr
asr_model = nemo_asr.models.EncDecRNNTBPEModel.from_pretrained(model_name="nvidia/parakeet-rnnt-1.1b")
高度な使用法
Pythonを使用した文字起こし
まず、サンプル音声ファイルを取得します。
wget https://dldata-public.s3.us-east-2.amazonaws.com/2086-149220-0033.wav
次に、以下のコードで文字起こしを行います。
output = asr_model.transcribe(['2086-149220-0033.wav'])
print(output[0].text)
多数の音声ファイルの文字起こし
python [NEMO_GIT_FOLDER]/examples/asr/transcribe_speech.py
pretrained_name="nvidia/parakeet-rnnt-1.1b"
audio_dir="<DIRECTORY CONTAINING AUDIO FILES>"
入力
このモデルは、16000 Hzのモノラルチャンネル音声(wavファイル)を入力として受け付けます。
出力
このモデルは、与えられた音声サンプルに対して文字起こしされた音声を文字列として提供します。
✨ 主な機能
モデルアーキテクチャ
FastConformer [1] は、Conformerモデルの最適化バージョンで、8倍の深さ方向分離畳み込みダウンサンプリングを備えています。このモデルは、Transducerデコーダ(RNNT)損失を用いたマルチタスク設定でトレーニングされています。FastConformerの詳細については、Fast-Conformer Modelを参照してください。
トレーニング
NeMoツールキット [3] を使用して、数百エポック以上にわたってモデルをトレーニングしました。これらのモデルは、このサンプルスクリプトとこの基本設定を使用してトレーニングされています。
これらのモデルのトークナイザーは、トレーニングセットのテキストトランスクリプトを使用して、このスクリプトで構築されました。
データセット
このモデルは、NVIDIA NeMoとSunoチームによって収集および準備された64,000時間の英語音声でトレーニングされています。
トレーニングデータセットは、40,000時間の英語音声のプライベートサブセットと、以下の公開データセットからの24,000時間で構成されています。
- Librispeech - 960時間の英語音声
- Fisher Corpus
- Switchboard-1 Dataset
- WSJ-0とWSJ-1
- National Speech Corpus (Part 1, Part 6)
- VCTK
- VoxPopuli (EN)
- Europarl-ASR (EN)
- Multilingual Librispeech (MLS EN) - 2,000時間のサブセット
- Mozilla Common Voice (v7.0)
- People's Speech - 12,000時間のサブセット
パフォーマンス
自動音声認識モデルのパフォーマンスは、単語誤り率(Word Error Rate)を使用して測定されます。このデータセットは複数のドメインとより大きなコーパスでトレーニングされているため、一般的に音声の文字起こしにおいて良好なパフォーマンスを発揮します。
以下の表は、このコレクションで利用可能なモデルのTransducerデコーダによるパフォーマンスを要約しています。ASRモデルのパフォーマンスは、貪欲デコーディングによる単語誤り率(WER%)で報告されています。
バージョン |
トークナイザー |
語彙サイズ |
AMI |
Earnings-22 |
Giga Speech |
LS test-clean |
SPGI Speech |
TEDLIUM-v3 |
Vox Populi |
Common Voice |
1.22.0 |
SentencePiece Unigram |
1024 |
17.10 |
14.11 |
9.96 |
1.46 |
2.47 |
3.11 |
3.92 |
5.39 |
これらは外部言語モデルを使用しない貪欲WERの数値です。評価の詳細については、HuggingFace ASR Leaderboardを参照してください。
NVIDIA Riva: デプロイメント
NVIDIA Rivaは、オンプレミス、すべてのクラウド、マルチクラウド、ハイブリッド、エッジ、および組み込み環境で展開可能な高速化された音声AI SDKです。
さらに、Rivaは以下の機能を提供します。
- 数十万のGPUコンピュート時間で独自データを使用してトレーニングされたモデルチェックポイントによる、最も一般的な言語の世界クラスの精度
- 実行時の単語ブースト(例:ブランドや製品名)および音響モデル、言語モデル、逆テキスト正規化のカスタマイズによる最高水準の精度
- ストリーミング音声認識、Kubernetes互換のスケーリング、およびエンタープライズグレードのサポート
このモデルはまだRivaでサポートされていませんが、サポートされているモデルのリストはこちらです。Rivaのライブデモもご覧ください。
🔧 技術詳細
参考文献
[1] Fast Conformer with Linearly Scalable Attention for Efficient Speech Recognition
[2] Google Sentencepiece Tokenizer
[3] NVIDIA NeMo Toolkit
[4] Suno.ai
[5] HuggingFace ASR Leaderboard
📄 ライセンス
このモデルを使用するためのライセンスは、CC-BY-4.0に準拠しています。モデルの公開バージョンをダウンロードすることにより、CC-BY-4.0ライセンスの条件に同意するものとみなされます。