mozilla-deepspeech-0.8.2¶
ユースケースと概要説明¶
mozilla-deepspeech-0.8.2
モデルは、変更されたニューラル・ネットワーク・トポロジーを備えた DeepSpeech アーキテクチャー (ビーム検索および n-gram 言語モデルを備えた CTC デコーダー) に基づいて Mozilla によって事前トレーニングされた音声認識ニューラル・ネットワークです。
オリジナルの DeepSpeech の詳細については、論文を参照してください。
このモデルの詳細は、リポジトリーを参照してください。
仕様¶
メトリック |
値 |
---|---|
タイプ |
音声認識 |
オーディオフレームごとの GFlops |
0.0472 |
オーディオの 1 秒あたりの GFlops |
2.36 |
MParams |
47.2 |
ソース・フレームワーク |
TensorFlow* |
精度¶
メトリック |
値 |
パラメーター |
---|---|---|
WER @ LibriSpeech test-clean |
8.39% |
LM あり、beam_width = 32、Python CTC デコーダー、精度チェッカー |
WER @ LibriSpeech test-clean |
6.13% |
LM あり、beam_width = 500、C++ CTC デコーダー、精度チェッカー |
WER @ LibriSpeech test-clean |
6.15% |
LM あり、beam_width = 500、C++ CTC デコーダー、デモ |
NB: beam_width=32 は CTC デコーダーとしては低い値であり、精度チェッカーで Python CTC デコーダーを使用して妥当な評価時間を達成するために使用されました。beam_width を増やすと、WER メトリックが向上し、デコードが遅くなります。音声認識 DeepSpeech デモには、より高速な C++ CTC デコーダーモジュールが含まれています。
追加のモデル属性へのパスを指定するには、accuracy_check [...] --model_attributes <path_to_folder_with_downloaded_model>
を使用します。path_to_folder_with_downloaded_model
は、現在のモデルがモデル・ダウンローダーによってダウンロードされるフォルダーへのパスです。
入力¶
元のモデル¶
-
オーディオ MFCC 係数、名前:
input_node
、形状:1, 16, 19, 26
、形式:B, N, T, C
。説明:
B
- バッチサイズ、1 に固定N
-input_lengths
(以下参照)、オーディオセクションのオーディオフレーム数T
- コンテキスト・フレーム: 現在のフレームとともに、ネットワークは 9 つの先行フレームと 9 つの後続フレームを予期します。存在しないコンテキスト・フレームはゼロで埋められます。C
- 各フレームあたり 26 の MFCC 係数
すべてのオーディオ前処理パラメーターと特徴抽出パラメーターについては、
<omz_dir>/models/public/mozilla-deepspeech-0.8.2/accuracy-check.yml
を参照してください。 オーディオフレームの数、INT32 値、名前:
input_lengths
、形状1
。LSTM インステート (c) ベクトル、名前:
previous_state_c
、形状:1, 2048
、形式:B, C
。LSTM 入力 (h、別名隠れ状態) ベクトル、名前:
previous_state_h
、形式:1, 2048
、形式:B, C
。
長いオーディオをチャンクに分割する場合、最後の 2 つの入力には前のチャンクからの対応する出力が供給される必要があります。チャンクの処理順序は、オーディオ位置の早い方から遅い方の順である必要があります。
変換されたモデル¶
-
オーディオ MFCC 係数、名前:
input_node
、形状:1, 16, 19, 26
、形式:B, N, T, C
。説明:
B
- バッチサイズ、1 に固定N
- オーディオセクションのオーディオフレーム数、16 に固定T
- コンテキスト・フレーム: 現在のフレームとともに、ネットワークは 9 つの先行フレームと 9 つの後続フレームを予期します。存在しないコンテキスト・フレームはゼロで埋められます。C
- 各フレームに 26 個の MFCC 係数
すべてのオーディオ前処理パラメーターと特徴抽出パラメーターについては、
<omz_dir>/models/public/mozilla-deepspeech-0.8.2/accuracy-check.yml
を参照してください。 LSTM インステート・ベクトル、名前:
previous_state_c:0
、形状:1, 2048
, format:B, C
。LSTM 入力ベクトル、名前:
previous_state_h:0
、形状:1, 2048
、形式:B, C
。
長いオーディオをチャンクに分割する場合、最後の 2 つの入力には前のチャンクからの対応する出力が供給される必要があります。チャンクの処理順序は、オーディオ位置の早い方から遅い方の順である必要があります。
出力¶
元のモデル¶
-
アルファベットの各シンボルのフレームごとの確率 (ソフトマックス後)、名前:
logits
、形状:16, 1, 29
、形式:N, B, C
。説明:
N
- オーディオセクションのオーディオフレーム数B
- バッチサイズ、1 に固定C
- アルファベットのサイズ (CTC ブランク記号を含む)
フレームごとの確率は、CTC デコーダーでデコードされます。アルファベットは: 0 = スペース、1…26 = “a” から “z”、27 = アポストロフィ、28 = CTC 空白記号です。
NB:
logits
は、名前とは異なり softmax の後の確率です。 LSTM アウトステート・ベクトル、名前:
new_state_c
、形状:1, 2048
、形式:B, C
。入力を参照してください。LSTM 出力ベクトル、名前:
new_state_h
、形状:1, 2048
、形式:B, C
。入力を参照してください。
変換されたモデル¶
-
アルファベットの各シンボルのフレームごとの確率 (ソフトマックス後)、名前:
logits
、形状:16, 1, 29
、形式:N, B, C
。説明:
N
- オーディオセクションのオーディオフレーム数、16 に固定B
- バッチサイズ、1 に固定C
- アルファベットのサイズ (CTC ブランク記号を含む)
フレームごとの確率は、CTC デコーダーでデコードされます。アルファベットは: 0 = スペース、1…26 = “a” から “z”、27 = アポストロフィ、28 = CTC 空白記号です。
NB:
logits
は、名前とは異なり softmax の後の確率です。 LSTM アウトステート・ベクトル、名前:
cudnn_lstm/rnn/multi_rnn_cell/cell_0/cudnn_compatible_lstm_cell/GatherNd'
(new_state_c
用)、形状:1, 2048
、形式:B, C
。入力を参照してください。LSTM アウトステート・ベクトル、名前:
cudnn_lstm/rnn/multi_rnn_cell/cell_0/cudnn_compatible_lstm_cell/GatherNd_1
(new_state_h
用)、形状:1, 2048
、形式:B, C
。入力を参照してください。
モデルをダウンロードして OpenVINO™ IR 形式に変換¶
以下の例に示すように、モデルをダウンロードし、必要に応じてモデル・ダウンローダーやその他の自動化ツールによってモデルを OpenVINO™ IR 形式に変換できます。
モデル・ダウンローダーの使用例:
omz_downloader --name <model_name>
モデル・コンバーターの使用例:
omz_converter --name <model_name>
法務上の注意書き¶
元のモデルは、Mozilla パブリック・ライセンス・バージョン 2.0 に基づいて配布されています。ライセンスの内容は、<omz_dir>/models/public/licenses/MPL-2.0-Mozilla-Deepspeech.txt
で確認できます。