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

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

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

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を使用して独自の音声認識システムをトレーニングします。この操作の波は安定しています

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

ブログ    
ブログ    

推薦する

Alibaba の軽量オープンソース Web サーバー Tengine 負荷分散アルゴリズム

序文Alibaba レイヤー 7 トラフィック エントリ アクセス レイヤー (アプリケーション ゲ...

...

OpenAIはAIモデルのトレーニング用データセットを生成するパートナーを募集している

IT Homeは11月10日、OpenAIがAIモデルのトレーニング用にパブリック/プライベートデー...

音声アシスタント業界はどこへ向かうのでしょうか?

プログレス・パートナーズの創設者兼シニアマネージングディレクターのニック・マクシェーン氏は、「今後数...

ヒット曲予測の成功率は97%?このリストは「偽造品と戦う」ためにあります

トレンドや動向を予測することは、あらゆる業界が熱心に取り組んでいることです。これにより、実務者は業界...

76ページのレビュー+300以上の参考文献で、Tiandaチームは大規模言語モデルアライメント技術を包括的に紹介しています。

最近、天津大学の熊徳一教授のチームが大規模言語モデルアライメント技術に関するレビュー論文(以下、アラ...

TigerGraph がトップ 10 のグラフ データベース アルゴリズム ライブラリをオープンソース化

最近、世界最速のエンタープライズ レベルのグラフ分析プラットフォームである TigerGraph は...

デジタル変革、人工知能、そして生産性の問題

企業がデジタル変革を進める際に、生成 AI がいかにして企業の生産性を向上させることができるかについ...

ロボットが自律的に人間を助けるというアイデアはもはや手の届かないものではない

サイエンスフィクションネットワーク、11月18日(朱熹偉)技術の発展に伴い、さまざまな形や大きさのロ...

ソニー、AI製品の倫理審査を実施へ

日経新聞によると、ソニーは早ければ2021年春にも、倫理的リスクのスクリーニングに人工知能を活用した...

...

AIと機械学習の品質保証

[51CTO.com クイック翻訳]人工知能はここ数年間、人々の注目を集めてきました。 「あなたのた...

CTR は成功と失敗の鍵です。なぜクリックスルー率はアルゴリズム エンジニアにとって悪夢となっているのでしょうか?

[[409064]]みなさんこんにちは。私は梁唐です。今日は、検索、広告、推奨アルゴリズムにおける...

調査結果: 回答者の 64% が生成 AI による作業の功績を認めている

Salesforce が実施した調査では、生成 AI の使用に関する明確なポリシーが存在しない状況で...