トランスフォーマーベースの効率的で低遅延のストリーミング音声認識モデル

トランスフォーマーベースの効率的で低遅延のストリーミング音声認識モデル

シナリオの観点から、音声認識はストリーミング音声認識と非ストリーミング音声認識に分けられます。非ストリーミング音声認識 (オフライン認識) とは、ユーザーが文章または段落を話し終えた後にモデルが認識することを意味し、ストリーミング音声認識とは、ユーザーがまだ話している間にモデルが同期的に音声認識を実行することを意味します。ストリーミング音声認識は、遅延が少ないため、ディクテーションの文字起こしなど、業界で幅広い用途に使用されています。

Transformer ストリーミング音声認識チャレンジ

現在、Transformer モデルはオフライン シナリオでは正確な音声認識を実行できますが、ストリーミング音声認識では 2 つの致命的な問題が発生します。

1) 音声の長さが長くなるにつれて、計算の複雑さとメモリストレージのオーバーヘッドが増加します。

Transformer は自己注意モデルを使用する際にすべての履歴情報を考慮するため、保存と計算の複雑さは音声の長さに比例して増加します。ただし、ストリーミング音声認識では音声入力が非常に長いことが多いため、ネイティブ Transformer をストリーミング音声認識に適用することは困難です。

図1: ストリーミング音声認識のためのTransformer自己注意の概略図

2) Transformer モデルのレイヤーが多すぎるため、将来のウィンドウ サイズ (先読みウィンドウ) が転送されます。

下の図に示すように、Transformer モデルの各レイヤーが 1 フレーム前を振り返る場合、Transformer レイヤーの数が増えるにつれて最終的な先読みが蓄積されます。たとえば、18 層の Transformer では、最終的に 18 フレームの遅延が蓄積され、実際のアプリケーションでは大きな遅延の問題が発生し、音声認識の応答速度が遅くなり、ユーザー エクスペリエンスが低下します。

図2: トランスフォーマーの将来ウィンドウは層の数に応じて増加します

ブロックベースおよびメモリベースのソリューション

ストリーミング音声認識におけるトランスフォーマー モデルの上記の問題を解決するために、研究者はチャンクベースとメモリベースの 2 つのソリューションを提案しました。

1) チャンクベースのソリューション

1 つ目は、次の図に示すように、ブロックベースのソリューションです。点線はブロックの区切りです。主なアイデアは、隣接するフレームをブロックに変換し、ブロックに従って処理することです。この方法の利点は、トレーニングとデコードを迅速に実行できることですが、ブロック間の接続がないため、モデルの精度が低下します。

図3: ブロックベースのストリーミング音声認識ソリューション

2) メモリベースのソリューション

メモリベースのソリューションの主なアイデアは、異なるブロックを接続できるように、ブロックベースでメモリを導入することです。ただし、この方法ではトレーニング中の非自己ループ メカニズムが破壊され、モデルのトレーニングが遅くなります。

図4: メモリベースのストリーミング音声認識ソリューション

業界では大量のトレーニング データが存在することが多く、メモリベースのソリューションではモデル トレーニングのコストが増加します。このため、研究者は精度、トレーニング速度、テスト速度のバランスをとることができるソリューションを見つける必要に迫られています。

高速トレーニングとデコード、必要なのはマスクだけです

上記の問題に対処するために、Microsoft の研究者は高速なトレーニングとデコードの方法を提案しました。この方法は非常にシンプルで、非ストリーミング Transformer をストリーミング Transformer に変換するために必要なのはマスク マトリックスだけです。

下の図は、ストリームなし、遅延なしのマスク マトリックス (すべて 1 のマトリックス、つまり下三角マトリックス) を示しています。

図5: オフライン音声認識エンコーダーマスクマトリックス

図6: ゼロ遅延ストリーミング音声認識エンコーダーマスクマトリックス

研究者たちは、ブロックベースのアプローチでさまざまなブロックを接続し、Transformer の並列トレーニング機能を維持したいと考えています。この目標を達成するために、研究者はブロックベースのストリーミング Transformer を提案しました。具体的なアルゴリズムは次のとおりです。

まず、現在のフレームの左側で、各レイヤーの各フレームがそれぞれ n フレーム先を見据えるようにします。これにより、レイヤーの数を重ねるごとに、Transformer の履歴のビジョンが蓄積されます。 m 個のレイヤーがある場合、n*m 個のフレームの履歴を見ることができます。余分な n*m フレームが表示されますが、これらのフレームの表現は履歴計算で計算され、現在のブロックでは再計算されないため、デコード時間が遅くなることはありません。デコード時間に関連し、各レイヤーで確認されるフレームの数のみ。

将来の情報の遅延が小さくなることを望むため、レイヤー数による視野への累積的な影響を避ける必要があります。この目標を達成するために、各ブロックの右端のフレームは将来のビューを持たないようにし、ブロック内のフレームは互いを見ることができるようにすることで、レイヤーの数に応じて遅延が増加するのを防ぐことができます。

最後に、各ブロック間では、異なるフレームが相互に認識されるようになるため、平均遅延はブロック長の半分になります。

この方法により、Transformer は並列トレーニングの利点を維持し、トレーニングを迅速に実行できます。結果として得られるマスク マトリックスは次のようになります。

図7: 提案手法のエンコーダマスク行列

デコード処理中、デコード時間は主にブロック サイズによって決まります。繰り返しの計算を回避し、デコードを高速化するために、以前のキーと値をキャッシュします。この方法の式は次のとおりです。履歴キーと値(赤でマーク)は、アテンションウェイトの計算中にキャッシュされます。

実験

データセットとモデルの設定

研究者の実験は、マイクロソフト社内で 65,000 時間以上のトレーニングを通じて実施され、約 180 万語のマイクロソフト社内テスト セットでテストされました。実験では 32 個の GPU を使用し、モデルを収束させるために約 2 日間にわたって混合精度方式でモデルをトレーニングし、速度測定には torchjit を使用しました。研究者らは、ストリーミング音声認識を実装するためにトランスデューサ フレームワークを使用しました。実験では、Transformer Transducer (TT)、Conformer Transducer (CT)、RNN Transducer (RNN-T) を比較しました。Transformer と Conformer のエンコード部分では 18 層が使用され、各層には 512 個のパラメータ (隠し状態) がありました。 Transducer の予測ネットワークは LSTM ネットワーク構造を使用し、各層の隠し状態が 1024 の 2 つの層で構成されています。 RNN-T もサイズは同様です。

低遅延デコード効果

表1: 低遅延デコード効果

表 1 から、次のことがわかります。1) 低レイテンシ条件下では、TT と CT は RNN-T と比較して単語エラー率 (WER) を 10% 削減できます。2) 各レイヤーが 60 フレーム (1.8 秒) 左を見ると、パフォーマンスの低下は全体の履歴を確認した結果と比較してそれほど大きくなく、約 1% です。3) ただし、TT は RNN-T よりも遅くなります。4 つのスレッドの場合、Transformer は RNN よりも約 3 倍遅くなります。この問題は、バッチ方式、つまり隣接する複数のフレームをまとめてデコードし、Transformer の並列機能を使用してデコードを高速化することで解決できます。

表2: 変圧器のリアルタイムレート

表 2 は、バッチ内のフレーム数に応じたさまざまなトランスフォーマーのリアルタイム レートを示しています。 2 つのフレームを一緒にデコードすると、Transformer は RTF < 1 を達成し、5 つのフレームを一緒にデコードすると RTF < 5 を達成していることがわかります。これに基づいて、TT は、遅延をわずかに犠牲にして (2 フレームは約 40 ミリ秒)、量子化なしで実際のシナリオに適用できると結論付けることができます。

低遅延デコード効果

表3: 低遅延デコード効果

低レイテンシーの場合、Transformer Transducer ファミリーの利点はさらに顕著になります。従来のハイブリッド モデルと比較すると、TT では WER が 13% 向上します。ストリーミング S2S モデル (同じ数のパラメーター) と比較すると、トランスデューサー モデルの方が優れた結果を達成することがよくあります (RNN S2S と Trans S2S を比較)。同じトランスデューサー フレームワークでは、Transformer モデルは RNN モデルよりも優れた結果を達成し、速度の面でも大きな利点があります。驚くべきことに、上記の方法では、TT オフラインとストリーミング間の現在の距離は 10% 未満であり、これは研究者が提案したストリーミング方法の有効性を証明し、精度の低下を最小限に抑えることができます。

8ビット量子化

表4: 8ビット量子化結果

8 ビットの量子化後、より高速なトランスデューサ モデルを取得できます。シングルスレッドの場合、Transformer は速度を 2 倍にすることができますが、RNN-T は速度を約 4 倍に上げることができます。このうち、Transformer の速度向上が限定的である理由は、SoftMax や Layer Norm などの演算が 8 ビットでは高速化が難しいためです。

結論

この記事では、Microsoft Azure Speech チームと Microsoft Research Asia の研究者が、Transformer ファミリ エンコーダーとストリーミング Transducer フレームワークを組み合わせたストリーミング音声認識ソリューションを提案しました。このソリューションは、「マスクだけあれば十分」というメカニズムを使用して、ストリーミング音声認識モデルを迅速にトレーニングおよびデコードします。 65,000 時間の大規模トレーニング データを使用した実験では、Transformer モデルは RNN モデルと比較して認識精度が大幅に向上し、低遅延シナリオでのデコード速度が速いことがわかりました。

今後、研究者はトランスフォーマーベースの音声認識モデルの研究を継続し、デコードの計算コストをさらに削減して、ゼロ遅延シナリオでトランスフォーマーモデルがRNNモデルと同じデコード速度を達成できるように努めます。

<<:  Pythonを使用して独自の音声認識システムをトレーニングします。この操作の波は安定しています

>>:  転移学習とクロスドメイン推奨、およびクロスドメイン推奨のソリューション

ブログ    

推薦する

作業効率を大幅に向上できるAIツール

AI はワークフローを強化し、反復的なタスクを削減し、出力を増幅します。スタンフォード大学とMITの...

...

Foreign Media Express: 2017 年の機械学習に関する 10 の予測

[51CTO.com オリジナル記事] Foreign Media Express は、ヌカ・コーラ...

生死に関わる問題:病院のICU病棟で人工知能は何ができるのか?

病院の集中治療室 (ICU) では、重病の患者を一日中一連の機器に接続し、いつでもバイタルサインを監...

RealAIは、業界の信頼できる発展を促進するために人工知能セキュリティ技術ツールを作成します。

4月26日、中国サイバースペース管理局の主催で「人工知能-社会実験の観点から見た社会ガバナンス」を...

...

「小学生」は荷物受け取りのためのFengchaoの顔スキャンシステムを解読できるのか?

資金が足りない、2Dで補う? 先日、Fengchaoのスマートエクスプレスロッカーが「小学生」によっ...

Soraはどのように機能しますか?

翻訳者 |ブガッティレビュー | Chonglou先週、 OpenAIチームは、物理世界の基本的な側...

...

...

...

...

AIは中所得層に影響を与えるでしょうか?周連:移行の痛みに対処するには政策支援が必要

[[403918]]近年、経済の継続的な発展に伴い、わが国では中間所得層の総数が増加しています。現在...

分類アルゴリズムの概要

[[151327]]決定木分類アルゴリズム決定木誘導は古典的な分類アルゴリズムです。これは、トップダ...

多くの場所で違法な顔認識を禁止する法律が制定されています。ビッグデータは個人にどのような悪影響を及ぼすでしょうか?

先月、個人情報保護のため、「ヘルメットをかぶって家を眺める」男性の短い動画がネット上で拡散され、ネッ...