Whisperとは
OpenAIが公開した、多言語対応のオープンソース音声認識(ASR)モデル
ひとことで言うと
話した言葉を文字に書き起こす、OpenAI製の無料で使える音声認識AI。
概要
Whisperは、OpenAIが公開したオープンソースの自動音声認識(ASR)モデル。 Web上から収集した68万時間分という大規模かつ多言語・多様なノイズ環境の音声データで学習されており、単一言語のクリーンな音声だけでなく、雑音混じりの音声や多様なアクセントに対しても高い認識精度を発揮する。 Encoder-DecoderのTransformerアーキテクチャを採用し、音声からテキストへの書き起こし(文字起こし)だけでなく、音声の言語検出や、他言語の音声を英語のテキストへ翻訳するタスクも同一モデルでこなせる。 モデルの重みと推論コードがオープンソースとして公開されており、OpenAIのAPI経由だけでなく自前のサーバーやローカル環境でも実行できる。 多くの文字起こしサービスや、音声を含むマルチモーダルAIアプリケーションの音声認識コンポーネントとして、業界標準的に広く採用されている。
背景
従来の音声認識モデルの多くは、特定の言語やクリーンな録音環境に最適化されており、雑音混じりの実環境や多様な言語への汎化性能に課題があった。 Whisperは、Web上の大規模かつ多様な音声データで学習することで、実環境でも頑健に機能する汎用的な音声認識モデルを目指して開発された。
歴史
2022年: OpenAIがWhisperを論文とともにオープンソースで公開。 2023年: OpenAI APIを通じて音声認識サービスとしても提供開始。 2023年以降: リアルタイム性を高めた派生実装(faster-whisper等)がコミュニティで広がる。
アーキテクチャ
音声入力は短い区間ごとにログメルスペクトログラムへ変換され、Transformerのエンコーダへ入力される。 デコーダは、エンコーダが出力した音声の特徴表現を参照しながら、テキストのトークン列を自己回帰的に生成する。 学習時に文字起こし・翻訳・言語識別など複数のタスクを同じフォーマットで扱えるようにすることで、単一モデルで複数の音声関連タスクをこなせるようにしている。
利点
- 多言語かつ雑音混じりの音声にも頑健で、実環境での認識精度が高い
- 文字起こしだけでなく、言語検出や音声翻訳も同一モデルでこなせる
- オープンソースで公開されており、ローカル環境での実行やカスタマイズが可能
欠点
- モデルサイズが大きいバージョンほど、リアルタイム処理には相応の計算資源が必要になる
- 専門用語や固有名詞が多い音声では、認識精度が下がりやすい
- 長時間の音声を処理する際、途中で文脈を見失い誤った書き起こしを続けてしまう現象が報告されている
比較
- マルチモーダル — Whisperは音声とテキストを扱うモデルで、マルチモーダルAIの音声認識コンポーネントとして組み込まれることが多い
- Transformer — WhisperはEncoder-DecoderのTransformerアーキテクチャを音声認識タスクに応用したモデル
- Seq2Seq — Whisperの音声からテキストへの変換は、Seq2Seqの枠組みに基づいている
関連用語
よくある質問
Whisperは日本語も認識できる?
多言語対応のモデルとして学習されており、日本語を含む多数の言語の音声認識に対応している。言語ごとの学習データ量により精度には差がある。
Whisperは無料で使える?
モデルの重みと推論コードがオープンソースで公開されており、自前の環境で実行する分には無料で利用できる。OpenAIのAPI経由で使う場合は利用量に応じた料金がかかる。
参考文献
- GitHubopenai/whisper