JP7843855B2 - 動的モデルサイズのための統合されたカスケードエンコーダasrモデル - Google Patents

動的モデルサイズのための統合されたカスケードエンコーダasrモデル

Info

Publication number
JP7843855B2
JP7843855B2 JP2024556056A JP2024556056A JP7843855B2 JP 7843855 B2 JP7843855 B2 JP 7843855B2 JP 2024556056 A JP2024556056 A JP 2024556056A JP 2024556056 A JP2024556056 A JP 2024556056A JP 7843855 B2 JP7843855 B2 JP 7843855B2
Authority
JP
Japan
Prior art keywords
encoder
model
decoder
speech recognition
output steps
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2024556056A
Other languages
English (en)
Other versions
JP2025509923A (ja
Inventor
ディン、シャオジン
ホー、ヤンチャン
ワン、シン
ワン、ウェイラン
ストローマン、トレバー
エヌ サイナス、ターラ
プラバーバルカル、ロヒット
ロバート、デイビッド
パニグラヒ、リナ
ボトロス、ラミ
リャン、チャオ
マグロウ、イアン
チャオ、ディン
ファン、ドンソン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of JP2025509923A publication Critical patent/JP2025509923A/ja
Application granted granted Critical
Publication of JP7843855B2 publication Critical patent/JP7843855B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/32Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Theoretical Computer Science (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Telephonic Communication Services (AREA)
  • Machine Translation (AREA)

Description

特許法第30条第2項適用 令和4年4月13日にウェブサイトのアドレスhttps://arxiv.org/pdf/2204.06164にて発表
本開示は、簡略化されたストリーミング及び非ストリーミング自動音声認識(ASR)のためのオンデバイスエンドツーエンドモデルに関する。
自動音声認識(ASR)システムは、各モデルが専用の目的を有する複数のモデルから、単一のニューラルネットワークを使用して音声波形(すなわち、入力シーケンス)を出力文(すなわち、出力シーケンス)に直接マッピングする統合モデルに進化した。この統合により、音声特徴のシーケンスが与えられると、ワード(または書記素)のシーケンスが生成される、シーケンスツーシーケンス手法がもたらされた。統合された構造を用いると、モデルの全ての構成要素は、単一のエンドツーエンド(E2E)ニューラルネットワークとして共同でトレーニングされ得る。ここで、E2Eモデルとは、そのアーキテクチャが完全にニューラルネットワークで構築されたモデルを指す。完全なニューラルネットワークは、外部及び/または手動で設計された構成要素(例えば、有限状態トランスデューサ、レキシコン、またはテキスト正規化モジュール)なしで機能する。さらに、E2Eモデルをトレーニングする場合、これらのモデルは一般に、決定木からのブートストラップ、または別個のシステムからの時間アラインメントを必要としない。これらE2E自動音声認識(ASR)システムは大きな進歩を遂げており、単語誤り率(WER)を含むいくつかの一般的な基準で従来のASRシステムを上回っている。E2E ASRモデルのアーキテクチャは、大部分がアプリケーションに依存している。例えば、音声検索またはデバイス上の音声入力など、ユーザインタラクションを伴う多くのアプリケーションでは、モデルがストリーミング方式で認識を実行する必要がある。オフラインのビデオキャプションなどの他のアプリケーションでは、モデルをストリーミングする必要がなく、将来のコンテキストを利用して性能を向上させることができる。さらに、オンデバイスASRシステムのモデルサイズは、デバイスのハードウェアの制約に大きく依存する。例えば、より大きな計算出力を持つ処理ハードウェアを備えた車両デバイスは、より大きなASRモデルサイズをサポートし得るが、限られた処理ハードウェアを備えるモバイルデバイスは、より小さなASRモデルサイズの恩恵を受けることができる場合がある。既存のE2Eアプローチは通常、ストリーミングアプリケーション用及び非ストリーミングアプリケーション用の別個のASRモデルを含む。異なる用途に対して複数のモデルを管理すると、独特の課題があり、ASRシステムの実行時間が遅くなる可能性がある。
本開示の一態様は、第1のエンコーダ、第1のデコーダ、第2のエンコーダ、及び第2のデコーダを含む自動音声認識(ASR)モデルを提供する。第1のエンコーダは、音響フレームのシーケンスを入力として受信し、複数の出力ステップのそれぞれで、音響フレームのシーケンス内の対応する音響フレームの第1の高次特徴表現を生成する。第1のデコーダは、複数の出力ステップのそれぞれで第1のエンコーダによって生成された第1の高次特徴表現を入力として受信し、複数の出力ステップのそれぞれで、可能性のある音声認識仮説に対して第1の確率分布を生成する。第2のエンコーダは、複数の出力ステップのそれぞれで第1のエンコーダによって生成された第1の高次特徴表現を入力として受信し、複数の出力ステップのそれぞれで、対応する第1の高次特徴フレームの第2の高次特徴表現を生成する。第2のデコーダは、複数の出力ステップのそれぞれで第2のエンコーダによって生成された第2の高次特徴表現を入力として受信し、複数の出力ステップのそれぞれで、可能性のある音声認識仮説に対して第2の確率分布を生成する。
本開示の実施態様は、以下の任意選択の特徴のうちの1つ以上を含み得る。いくつかの実施態様では、第1のデコーダは、可能性のある音声認識仮説に対する第1の確率分布に基づいて、部分的な音声認識結果を生成する。いくつかの例では、第1のエンコーダは、複数の単方向長短期記憶(LSTM)層、複数のコンフォーマ層、または複数のトランスフォーマ層のうちの1つを含む因果エンコーダを含む。追加的または代替的に、第2のエンコーダは、複数の単方向長短期記憶(LSTM)層、複数のコンフォーマ層、または複数のトランスフォーマ層のうちの1つを含む非因果エンコーダを含む。
いくつかの例では、第1のデコーダは、予測ネットワーク及び結合ネットワークを含む。予測ネットワークは、最終ソフトマックス層によって出力される非空白記号のシーケンスを入力として受信し、複数の出力ステップのそれぞれで密な表現を生成する。結合ネットワークは、複数の出力ステップのそれぞれで予測ネットワークによって生成された密な表現と、複数の出力ステップのそれぞれで第1のエンコーダによって生成された第1の高次特徴表現を入力として受信し、複数の出力ステップのそれぞれで、可能性のある音声認識仮説に対して第1の確率分布を生成する。これらの例では、予測ネットワークは、長短期記憶(LSTM)ベースの予測ネットワーク、またはV2埋め込みルックアップテーブルを含む。
いくつかの実施態様では、第2のデコーダは、予測ネットワーク及び結合ネットワークを含む。予測ネットワークは、最終ソフトマックス層によって出力される非空白記号のシーケンスを入力として受信し、複数の出力ステップのそれぞれで密な表現を生成する。結合ネットワークは、複数の出力ステップのそれぞれで予測ネットワークによって生成された密な表現と、複数の出力ステップのそれぞれで第2のエンコーダによって生成された第2の高次特徴表現を入力として受信し、複数の出力ステップのそれぞれで、可能性のある音声認識仮説に対して第2の確率分布を生成する。これらの実施態様では、予測ネットワークは、長短期記憶(LSTM)ベースの予測ネットワーク、またはV2埋め込みルックアップテーブルを含む。
いくつかの例では、第1のエンコーダは、第2のエンコーダよりも多い数のパラメータを含む。いくつかの実施態様では、ASRモデルは、第3のエンコーダ及び第3のデコーダをさらに含む。第3のエンコーダは、複数の出力ステップのそれぞれで第2のエンコーダによって生成された第2の高次特徴表現を入力として受信し、複数の出力ステップのそれぞれで、対応する第2の高次特徴フレームの第3の高次特徴表現を生成する。第3のデコーダは、複数の出力ステップのそれぞれで第3のエンコーダによって生成された第3の高次特徴表現を入力として受信し、複数の出力ステップのそれぞれで、可能性のある音声認識仮説に対して第3の確率分布を生成する。
本開示の別の態様は、データ処理ハードウェア上で実行されると、自動音声認識(ASR)モデルへの入力として、音響フレームのシーケンスを受信することと、音響フレームのシーケンスに対してASRモデルを使用して、ストリーミング音声認識及び非ストリーミング音声認識を実行することとを含む動作をデータ処理ハードウェアに実行させるコンピュータ実装方法を提供する。動作はまた、第1のエンコーダによって、複数の出力ステップのそれぞれで、音響フレームのシーケンス内の対応する音響フレームの第1の高次特徴表現を生成することと、複数の出力ステップのそれぞれで第1のエンコーダによって生成された第1の高次特徴表現を、第1のデコーダと第2のエンコーダの両方への入力として受信することとを含む。動作はまた、第2のエンコーダによって、複数の出力ステップのそれぞれで、対応する第1の高次特徴表現に対する第2の高次特徴表現を生成することと、第1のデコーダによって、複数の出力ステップのそれぞれで、可能性のある音声認識仮説に対する第1の確率分布を生成することを含む。動作はさらに、複数の出力ステップのそれぞれで第2のエンコーダによって生成された第2の高次特徴表現を第2のデコーダへの入力として受信することと、第2のデコーダによって、複数の出力ステップのそれぞれで、可能性のある音声認識仮説に対して第2の確率分布を生成することとを含む。
この態様は、以下の任意選択の特徴のうちの1つ以上を含んでもよい。いくつかの実施態様では、動作はさらに、可能性のある音声認識仮説に対する第1の確率分布に基づいて、部分的な音声認識結果を生成することを含む。いくつかの例では、第1のエンコーダは、複数の単方向長短期記憶(LSTM)層、複数のコンフォーマ層、または複数のトランスフォーマ層のうちの1つを含む因果エンコーダを含む。追加的または代替的に、第2のエンコーダは、複数の単方向長短期記憶(LSTM)層、複数のコンフォーマ層、または複数のトランスフォーマ層のうちの1つを含む非因果エンコーダを含む。
いくつかの実施態様では、ASRモデルがストリーミングモードで動作しているとき、動作はさらに、第1のデコーダの予測ネットワークへの入力として、最終ソフトマックス層によって出力される非空白記号のシーケンスを受信することと、第1のデコーダの予測ネットワークによって、複数の出力ステップのそれぞれで、密な表現を生成することとを含む。ここでは、動作はさらに、第1のデコーダの結合ネットワークへの入力として、複数のステップのそれぞれで予測ネットワークによって生成される密な表現、及び複数の出力ステップのそれぞれで第1のエンコーダによって生成される第1の高次特徴表現を受信することと、複数の出力ステップのそれぞれで第1のデコーダの結合ネットワークによって、可能性のある音声認識仮説に対して第1の確率分布を生成することとを含む。これらの実施態様では、第1のデコーダの予測ネットワークは、長短期記憶(LSTM)ベースの予測ネットワーク、またはV2埋め込みルックアップテーブルを含む。
いくつかの実施例では、ASRモデルが非ストリーミングモードで動作しているとき、動作はまた、第2のデコーダの予測ネットワークへの入力として、最終ソフトマックス層によって出力される非空白記号のシーケンスを受信することと、第2のデコーダの予測ネットワークによって、複数の出力ステップのそれぞれで、密な表現を生成することとを含む。ここでは、動作はさらに、第2のデコーダの結合ネットワークへの入力として、複数の出力ステップのそれぞれで予測ネットワークによって生成された密な表現、及び複数の出力ステップのそれぞれで第2のエンコーダによって生成された第2の高次特徴表現を受信することと、複数の出力ステップのそれぞれで、第2のデコーダの結合ネットワークによって可能性のある音声認識仮説に対して第2の確率分布を生成することとを含む。これらの例では、第2のデコーダの予測ネットワークは、長短期記憶(LSTM)ベースの予測ネットワーク、またはV2埋め込みルックアップテーブルを含む。
いくつかの実施態様では、第1のエンコーダは、第2のエンコーダよりも多い数のパラメータを含む。いくつかの例では、動作はまた、音響フレームのシーケンス上でストリーミング音声認識及び非ストリーミング音声認識を実行している間、第3のエンコーダへの入力として、複数の出力ステップのそれぞれで第2のエンコーダによって生成された第2の高次特徴表現を受信することを含む。これらの実施態様では、動作はさらに、複数の出力ステップのそれぞれで第3のエンコーダによって、対応する第2の高次特徴表現のための第3の高次特徴表現を生成することと、第3のデコーダへの入力として、複数の出力ステップのそれぞれで第3のエンコーダによって生成される第3の高次特徴表現を受信することと、複数の出力ステップのそれぞれで第3のデコーダによって、可能性のある音声認識仮説に対して第3の確率分布を生成することとを含む。
本開示の1つ以上の実施態様の詳細は、添付の図面及び以下の説明に記載される。他の態様、特徴、及び利点は、説明及び図面、ならびに特許請求の範囲から明らかになる。
自動音声認識のためのカスケードエンコーダモデルアーキテクチャを使用するシステムの概略図である。 自動音声認識のためのカスケードエンコーダモデルアーキテクチャを使用するシステムの概略図である。 カスケードエンコーダモデルアーキテクチャの概略図である。 カスケードエンコーダモデルアーキテクチャの概略図である。 カスケードエンコーダモデルアーキテクチャの概略図である。 カスケードエンコーダモデルアーキテクチャの概略図である。 カスケードエンコーダモデルを促進して、ストリーミング自動音声認識及び非ストリーミング自動音声認識の両方に関して一貫した予測を学習するための例示的なトレーニングプロセスの概略図である。 カスケードエンコーダモデルを促進して、ストリーミング自動音声認識及び非ストリーミング自動音声認識の両方に関して一貫した予測を学習するための例示的なトレーニングプロセスの概略図である。 ストリーミング自動音声認識及び非ストリーミング自動音声認識の両方のためのカスケードエンコーダモデルを実施する方法についての例示的な動作手順のフローチャートである。 本明細書に記載のシステム及び方法を実装するために使用できる例示的な計算装置の概略図である。
種々の図面における同様の参照記号は、同様の要素を指す。
エンドツーエンド(E2E)自動音声認識(ASR)モデルは、従来、ストリーミングモードまたは非ストリーミングモードのいずれかで動作するように構造化される。従来、E2E ASRモデルは、主要な構成要素としてエンコーダ及びデコーダを含む。音声検索またはオンデバイスの音声入力など、エンドユーザとのインタラクションを伴うアプリケーションでは、モデルがストリーミング方式で認識を実行する必要があり得、レイテンシを最小限に抑えて、言葉が話されると同時に出力されることが期待される。これにより、双方向LSTMなど、精度を向上させるために将来のコンテキストを用いるモデルを使用することが妨げられる。対照的に、オフラインのビデオキャプションなどのアプリケーションは、ストリーミング認識を必要とせず、利用可能なあらゆる将来のコンテキストを十分に利用して、性能を向上させることができる。さらに、オンデバイスASRシステムのモデルサイズは、デバイスのハードウェアの制約に大きく依存する。例えば、より大きな計算出力を持つ処理ハードウェアを備えた車両デバイスは、より大きなASRモデルサイズをサポートし得るが、限られた処理ハードウェアを備えるモバイルデバイスは、より小さなASRモデルサイズの恩恵を受けることができる場合がある。同じデバイス上でも、大きいASRモデルサイズは、音声検索などの短い形式のアプリケーションに使用される場合があるが、ディクテーションまたはビデオキャプションなどの長時間実行されるアプリケーションには、中程度のASRモデルサイズまたは小さいASRモデルサイズの方が、低消費電力を維持するためにより適している場合がある。
本明細書の実施態様は、カスケードエンコーダと2つの別々のデコーダとを使用して、様々なモデルパラメータを用いたストリーミングモード及び非ストリーミングモードの両方での動作を可能にする単一のE2E ASRモデルを対象とする。カスケードエンコーダは、ストリーミングエンコーダ及び非ストリーミングエンコーダを含み、2つの別々のデコーダは、それぞれのストリーミングエンコーダからの出力、またはそれぞれの非ストリーミングエンコーダからの出力をデコードすることを学習するように構成されるストリーミングデコーダ及び非ストリーミングデコーダを含む。ASRモデルに加えて、アーキテクチャは、ストリーミングモードと非ストリーミングモードの両方を実装する機械翻訳などの他のモデルに適用され得る。
図1A及び図1Bを参照すると、いくつかの実施態様において、システム100、100a~bは、音声環境内で、ユーザ104が音声対応ユーザ装置10(デバイス10またはユーザ装置10とも呼ばれる)とインタラクションすることを含む。システム100では、ユーザ104がユーザ装置10とインタラクションする方法は、音声入力を通じて行われるものであってもよい。ユーザ装置10は、音声環境内で1人以上のユーザ104から音(例えば、ストリーミング音声データ)を取得するように構成される。ここで、ストリーミング音声データは、可聴クエリ、デバイス10に対するコマンド、またはデバイス10によって取得された可聴通信として機能する、ユーザ104による発話106を指し得る。デバイス10の音声対応システムは、クエリに応答することによって、及び/またはコマンドを1つ以上の下流のアプリケーションによって実行/遂行させることによって、クエリまたはコマンドに対処し得る。
ユーザ装置10は、ユーザ104に関連付けられており、音声データを受信することができる任意の計算装置に対応し得る。ユーザ装置10のいくつかの例は、モバイルデバイス(例えば、携帯電話、タブレット、ラップトップなど)、コンピュータ、ウェアラブルデバイス(例えば、スマートウォッチ)、スマートアプライアンス、モノのインターネット(IoT)デバイス、車載インフォテインメントシステム、スマートディスプレイ、スマートスピーカなどを含むが、これらに限定されない。ユーザ装置10は、データ処理ハードウェア12及びデータ処理ハードウェア12と通信するメモリハードウェア14を含み、データ処理ハードウェア12によって実行されるとき、データ処理ハードウェア12に1つまたは複数の動作を実行させる命令を格納する。ユーザ装置10はさらに、音声環境内での発話106を取得し電気信号に変換するための音声取得装置(例えば、マイクロフォン)16、16aと、(例えば、装置10からの出力音声データとして)可聴音声信号を通信するための音声出力装置(例えば、スピーカ)16、16bとを備えた音声システム16を含む。図示の例では、ユーザ装置10は単一の音声取得装置16aを実装しているが、ユーザ装置10は、本開示の範囲から逸脱することなく、音声取得装置16aのアレイを実装し得、この場合、アレイの1つ以上の取得装置16aは、ユーザ装置10に物理的に常駐せずに、音声システム16と通信し得る。
システム100では、ASRモデル200(モデル200とも呼ばれる)を実装する自動音声認識(ASR)システム109が、ユーザ104のユーザ装置10、及び/またはネットワーク40を介してユーザ装置10と通信する遠隔計算装置60(例えば、クラウドコンピューティング環境で実行する分散システムの1つまたは複数の遠隔サーバ)に常駐する。遠隔計算装置60は、遠隔データ処理ハードウェア62(例えば、遠隔サーバまたはCPU)及び/または遠隔メモリハードウェア64(例えば、遠隔データベースまたは他のストレージハードウェア)を含み得る。ユーザ装置10及び/または遠隔計算装置60はまた、ユーザ104が発し、音声取得装置16aによって取得された発話106を受信し、発話106をASRシステム109で処理可能な入力音響フレーム110に関連付けられた対応するデジタル形式に変換するように構成された音声サブシステム108を含む。図1Aに示されている実施例では、ユーザ104はそれぞれの発話106を行い、音声サブシステム108は、ASRシステム109への入力用に、発話106を対応する音声データ(例えば、音響フレーム)110に変換する。その後、モデル200は、発話106に対応する音声データ110を入力として受信し、発話106の対応するトランスクリプション120(例えば、認識結果/仮説120とも呼ばれる)を出力として生成/予測する。以下(例えば、図3A及び2B)でより詳細に説明するように、モデル200は、モデル200をトレーニングするプロセスを簡素化するために2段階のトレーニングでトレーニングされて、ストリーミングモードと非ストリーミングモードで動作し得る。モデル200はまた、第1のデコーダ204(ストリーミングデコーダ204とも呼ばれる)及び第2のデコーダ206(非ストリーミングデコーダ206とも呼ばれる)を含み、これによって、(例えば、ストリーミングモード又は非ストリーミング専用の2つの別々のモデルとは対照的に)モデル200がストリーミングモード及び非ストリーミングモードで動作することが可能になる。
例えば、1Aに示すように、ユーザ装置10上で実行されるデジタルアシスタントアプリケーション50は、音声認識をストリーミングすることを必要とする場合があり、これにより言葉、言葉の一部、及び/または個々の文字が発話されるとすぐに画面上に現れる。さらに、ユーザ装置10のユーザ104は、デジタルアシスタントアプリケーション50が実行するためのクエリを発行するとき、レイテンシに対する許容度が低いことも考えられる。アプリケーションが最小限のレイテンシを要求し、小さなモデルサイズの恩恵を受けるこれらのシナリオでは、モデル200はストリーミングモードで動作し、ユーザ104が発話106をすると同時にリアルタイムでストリーミングトランスクリプション機能を提供し得る。他方、ユーザ104が音声認識レイテンシに対してより高い許容度を有する場合、及び/または認識される発話106が、長尺の音声(すなわち、完全な段落または複数の文からなる音声を参照する)及びより大きいモデルの容量に関連付けられる場合、同じモデル200は、非ストリーミングモードで動作し得、予測ネットワークを活用して正確なトランスクリプション120を提供し得るが、レイテンシが増加する可能性がある。さらに、ユーザ104が音声認識レイテンシに対してさらに高い許容度を有するシナリオ、及び/または精度が最も重要であるシナリオでは、モデル200は、追加のコンテキストを使用して精度を向上させる非ストリーミングモードで動作することができるが、その分音声認識のレイテンシが増加することになる。したがって、ASRシステム109は、ASRモデル200をさまざまな音声認識タスクに実装し、ストリーミングと非ストリーミングの両方のトランスクリプション機能を提供することができ、タスクごとに別々にトレーニングされたASRモデルを使用する必要がない。さらに、様々な音声認識タスクに対して単一のASRモデル200を使用することで、別々のASRモデルを動作させるための計算要件が削減される。
いくつかの実施態様では、モデル200は、最初に音声データ110に対してストリーミング音声認識を実行し、次にストリーミングエンコーダの出力に対して非ストリーミング音声認識を実行する。例えば、示される例では、モデル200は、第1のエンコーダ(すなわち、低レイテンシエンコーダ(図2B))を使用して音声データ110に対してストリーミング音声認識を実行して、部分音声認識結果120、120aを生成し、第2のエンコーダ(すなわち、高レイテンシエンコーダ(図2C))を使用して、エンコードされた音声データ110に対して非ストリーミング音声認識を実行し、最終音声認識結果120、120bを生成する。特に、モデル200は、音声データ110が受信されると同時に部分音声認識結果120aを出力し、ユーザ104が発話106を終えた後にすべての音声データ110が受信された時点で最終音声認識結果120bを出力する。したがって、入力発話106に対する最終音声認識結果120bの出力は、部分音声認識結果120aから遅延する場合がある。
ユーザ装置10及び/または遠隔計算装置60はまた、発話106のトランスクリプション120の表現をユーザ装置10のユーザ104に提示するように構成されたユーザインタフェース生成器107も実行する。以下でより詳細に説明するように、ユーザインタフェース生成器107は、時間1中にストリーミング方式で部分音声認識結果120aを表示し得、その後、時間2中に最終音声認識結果120bを表示する。いくつかの構成では、ASRシステム109から出力されたトランスクリプション120は、例えば、ユーザ装置10または遠隔計算装置60で実行される自然言語理解(NLU)モジュールによって処理され、発話106によって指定されたユーザコマンド/クエリが実行される。追加的にまたは代替的に、テキスト読み上げシステム(図示せず)(例えば、ユーザ装置10または遠隔計算装置60の任意の組み合わせで実行される)は、トランスクリプション120を合成音声に変換し、ユーザ装置10及び/または他の装置で可聴出力することができる。
図1Aの例示的なシステム100aでは、音声環境内のユーザ104は、ASRシステム109を使用する、ユーザ装置10のプログラムまたはアプリケーション50(例えば、デジタルアシスタントアプリケーション50a)とインタラクションする。例えば、図1Aでは、ユーザー104がデジタルアシスタントアプリケーション50aとコミュニケーションをとっている様子が描かれており、デジタルアシスタントアプリケーション50aがユーザーデバイス10の画面にデジタルアシスタントインターフェース18を表示し、ユーザー104とデジタルアシスタントアプリケーション50aのデジタルアシスタントとの会話を表している。この例では、ユーザ104は、デジタルアシスタントアプリケーション50aに、「今、どの曲をプレイしているの?」と質問する。ユーザ104からのこの質問は発話106であり、音声取得装置16aによって取得され、ユーザ装置10の音声システム16によって処理される。この実施例では、音声システム16は発話106を受信し、それを、ASRシステム109へ入力するための音響フレーム110に変換する。
実施例を続けると、モデル200は、ユーザ104が発話106すると同時に発話に対応する音響フレーム110を受信し、第1のエンコーダ210(すなわち、図2A及び2B)を使用して音響フレーム110をエンコードし、その後、第1のデコーダ204(図2Aおよび2B)を使用して音響フレーム110のエンコードされた表現を部分音声認識結果120aにデコードする。時間1中に、ユーザインタフェース生成器107は、デジタルアシスタントインタフェース18を介して、発話106の部分音声認識結果120aの表現をユーザ装置10のユーザ104にストリーミング方式で提示し、これにより、言葉、言葉の一部、及び/または個々の文字が発話されると同時に画面上に表示される。
発話106に対応する全て(またはいくらか)の音響フレーム110が受信され、第1のエンコーダ210がこれらの音響フレーム110をエンコードした後、第2のエンコーダ220(すなわち、図2A及び図2C)は、第1のエンコーダ210からのエンコード出力をエンコードして、すでに第1のエンコーダ210によってエンコードされた発話106に対応する音響フレーム110のセットに対するエンコードを生成する。第2のデコーダ206(すなわち、図2A及び2C)は、次に、第2のエンコーダ220によって最終音声認識結果120bにエンコードされた音響フレーム110をデコードする。例えば、第1のエンコーダ210が、発話106に対応するすべての音響フレーム110をエンコードするとき(例えば、音響フレーム110が受信されると同時に)、第2のエンコーダ220は、第1のエンコーダ210によってエンコードされたすべての音響フレーム110をエンコードする。この点において、複数のエンコードされた音響フレーム110をエンコードすることによって、第2のエンコーダ220は、非ストリーミング方式でより高いコンテキスト認識を提供することができ(例えば、発話106に対するすべての音響フレーム110の表現を受信することによって)、これにより、第1のエンコーダ210のストリーミング特性によって欠落したまたは誤解釈された発話106の態様(複数可)を調整または訂正することが潜在的に可能となる。いくつかの例では、ユーザ104が発話106を終了したことを示す表示、例えばエンドポイントが、モデル200の第2のエンコーダ220をトリガし、すべての音響フレーム110をエンコードする。
時間2中に、ユーザインタフェース生成器107は、デジタルアシスタントインタフェース18を介して、発話106の最終音声認識結果120bの表現をユーザ装置10のユーザ104に提示する。いくつかの実施態様では、ユーザインタフェース生成器107は、部分音声認識結果120aの表現を、最終音声認識結果120bの表現に置き換える(または変更する)。例えば、最終音声認識結果120bは、部分音声認識結果120aよりもより正確であると考えられ、部分音声認識結果120aで誤認識された可能性のある用語を修正するために、最終音声認識結果120bは、最終的にトランスクリプション120として表示される。この実施例では、モデル200(すなわち、第1のエンコーダ210及び第1のデコーダ204)によって出力され、時間1においてユーザ装置10の画面に表示された部分音声認識結果120aは、低レイテンシと関連付けられ、ユーザ104に対して、そのユーザのクエリが処理されていることを示す応答性を提供する。したがって、部分音声認識結果120aは、ユーザ104の発話106を「今、どの曲をプレイしているの?」であると誤って予測する可能性がある。モデル200(すなわち、カスケードエンコーダ202及び第2のデコーダ206)によって出力され、レイテンシが増加することで、時間2で画面に表示された最終音声認識結果120bは、ユーザ104が「プレイしている」と述べたことを識別して、正確さの観点から音声認識品質を向上させる。しかし、ユーザインタフェース生成器107はユーザが発話106を行っている間に部分音声認識結果を表示するため、最終認識結果120bを生成し最終的に表示することに関連するレイテンシが高くても、ユーザ104にはあまり気付かれない。
図1Aに示す例では、デジタルアシスタントアプリケーション50aは、自然言語処理を使用して、ユーザ104が提起する質問に応答することができる。自然言語処理は、一般に、書かれた言語(例えば、部分音声認識結果120a及び/または最終音声認識結果120b)を解釈し、その書かれた言語が何らかのアクションを促すかどうかを判断するプロセスを指す。この例では、デジタルアシスタントアプリケーション50aは、自然言語処理を使用して、ユーザ104からの質問が、ユーザの環境、より具体的にはユーザの近くで再生されている曲に関するものであることを認識する。自然言語処理を用いてこれらの詳細を認識することにより、自動アシスタントはユーザのクエリに対して応答19を返し、応答19は「クラウドプレイが現在再生中です」と示す。いくつかの構成では、自然言語処理は、ユーザ装置10のデータ処理ハードウェア12と通信する遠隔計算装置60上で行われる。
図1Bは、音声環境100bのASRシステム109を用いた音声認識の別の例である。この実施例に示されるように、ユーザ104は、ユーザ装置10の画面上にボイスメールアプリケーションインタフェース18、18bを表示するボイスメールアプリケーション50、50bとインタラクションし、ジェーン・ドウがユーザ104に残したボイスメールをトランスクリプトする。この実施例では、レイテンシは重要ではない。レイテンシを考慮せずに、ASRシステム109のモデル200は、ボイスメールに対応するすべての音響フレーム110が生成されるまで待機することにより、音声の完全なコンテキストを活用することができる。このボイスメールシナリオはまた、モデル200がどのようにして長尺の音声を処理することができるのかを示し、なぜならば、ボイスメールは複数の文やさらには数段落にわたることが多いためである。長尺の音声を処理する能力は、LASデコーダを備えたマルチパスモデルなどの他のASRモデルに対して特に有利であり、これは、これらのモデルが、長尺の音声を認識するときに性能の低下(例えば、長尺の音声に対する単語削除率が高い)を被ることが多いためである。例えば、カスケードエンコーダ202(例えば、第1のエンコーダ210及び第2のエンコーダ220)と組み合わせて、第2のエンコーダ220の特徴でトレーニングされた専用の第2のデコーダ206を使用することで、モデル200は、性能の低下を招くことなく、長尺の音声に対して音声認識を実行するときに、入力音声の完全なコンテキストを活用することができる。以下でさらに詳細に説明するように、モデル200のカスケードエンコーダ202は、第1のエンコーダ210及び第2のエンコーダ220とカスケード接続された第3のエンコーダ230と、第3のエンコーダ230によって最終音声認識結果120bにエンコードされた音響フレーム110をデコードする専用の第3のデコーダ208とを任意で含み得る。
図1Bを引き続き参照すると、図1Aに関して説明したように、モデル200は、音響フレーム110を受信しながら、第1のエンコーダ210を使用して音響フレーム110をエンコードする。モデル200がすべての音響フレーム110を受信し、それらを第1のエンコーダ210でエンコードした後、モデル200は、第1のエンコーダ出力を第2のエンコーダ220に入力として提供する。第2のエンコーダ220は、第2のデコーダ206が最終音声認識結果120bを生成する前に、第1のエンコーダ出力をエンコードする。その後、ユーザインタフェース生成器107は、デジタルアシスタントインタフェース18bを介して、部分音声認識結果120aを最初に表示することなく、最終音声認識結果120bの表現を提示する。例えば、最終音声認識結果120bは、ジェーン・ドウからの長尺のボイスメールのトランスクリプションであり、「これを受け取ったら折り返し電話してね。新年の計画を考えようとしているところよ。」となる。
図2A~図2Dは、ストリーミングモード及び非ストリーミングモードの様々な組み合わせで動作する例示的なモデル200a~dを含む。具体的には、モデル200a~dはそれぞれ、カスケードエンコーダ202、第1のデコーダ204、及び第2のデコーダ206を含む。カスケードエンコーダ202は、エンコーディング経路がカスケード接続されるエンコーダ210及び220を含むモデル構造を指し、これにより1つのエンコーダ210の出力がデコード前の第2のエンコーダ220の入力に供給される。ここでは、各エンコーダの基盤となるアーキテクチャに関係なく、エンコーダ210及び220をカスケード接続することができる。図2Dに示され、以下でより詳細に説明されるように、モデル200は、3パスモデル200(すなわち、大きなモデル)に一般化することができ、ここで、カスケードエンコーダ202は、エンコーダ210、220とカスケード接続され、専用の第3のデコーダ208に接続される、第3のエンコーダ230を含む。ここで、第2のエンコーダ220の出力は、第3のデコーダ208によるデコードの前に、第3のエンコーダ230の入力に供給される。
いくつかの例では、エンコーダ210、220、230は、512次元のコンフォーマ層のスタックを含む。他の例では、第1のエンコーダ210(すなわち、第1のパス)は、256次元の因果コンフォーマ層のスタック(例えば、6層)を含み、第2のエンコーダ220(すなわち、第2のパス)は、512次元の非因果コンフォーマ層のスタック(例えば、6層)を含み、第3のエンコーダ230(すなわち、第3のパス)は、640次元の非因果コンフォーマ層のスタック(例えば、6層)を含む。因果的畳み込み層及び左側のコンテキスト注意層を各コンフォーマ層に使用して、将来の入力を使用しないようにモデルを厳密に制限することができる。マルチヘッド(例えば、8つのヘッド)の注意機構は、自己注意層で使用され得る。
エンコーダ210は、モデル200が第1のパスモデルとして動作するとき、約2000万のパラメータを有する6つのコンフォーマ層を含む。カスケードエンコーダ210、220は、モデル200が第2のパスモデルとして動作するとき、約5000万のパラメータを有する12個のコンフォーマ層を含み得る。ここで、第1のエンコーダ210は、約2000万のパラメータを有する6つのコンフォーマ層を含んでよく、最初の3つの層は自己注意を有さず(例えば、92フレームの左コンテキストと右コンテキストがない)、モデル200が将来の入力を使用することを防ぎ、一方、第2のエンコーダ220は、約3000万のパラメータを有し追加の右コンテキスト(例えば、5.04秒)を取り込む6つのコンフォーマ層を含み得る。カスケードエンコーダ210、220、230は、モデル200が第3のパスモデルとして動作するとき、約1億1000万のパラメータを有する18個の層を含み、ここで、第3のエンコーダ230は、追加の右コンテキスト(例えば、約6000万のパラメータを有する900ミリ秒(ms)の30フレームの右コンテキスト)を有する6つの非因果コンフォーマ層を含む。任意選択で、コンフォーマ層の代わりに、トランスフォーマー層などの自己注意機構を組み込んだ他のタイプの層を使用することができる。第1のエンコーダ210は、因果エンコーダと呼ばれることがあり、第2のエンコーダ220及び第3のエンコーダ230は、それぞれ、非因果エンコーダと呼ばれることがある。
他の実施態様では、一方のエンコーダはLSTM構造を用いて構築され、他方のエンコーダは双方向LSTM層またはコンフォーマ層(例えば、コンフォーマ-トランスデューサ)を使用して構築される。言い換えれば、エンコーダ210、220、230は、異なるアーキテクチャまたは類似のアーキテクチャを有してもよい。例えば、カスケードエンコーダ202は、従来のASRシステムの音響モデル(AM)におおむね類似し得、積層された長短期記憶(LSTM)層の再帰型ネットワークを含み得る。ここで、第1のエンコーダ210は、単方向長短期記憶(LSTM)層を含むストリーミングエンコーダである一方、第2のエンコーダ220は、双方向LSTM層またはコンフォーマ層を含む非ストリーミングエンコーダである。カスケードエンコーダ202において、エンコーダ210、220、230がLSTM層を含み、第1のエンコーダ210の出力を受信する第2のエンコーダ220は、第1のエンコーダ210のLSTM層を利用することができるため、第2のエンコーダ220が第1のエンコーダ210より少ないLSTM層(及び完全な非ストリーミングモデルより少ないLSTM層)を含む。より少ないLSTM層を有することにより、カスケードエンコーダ202は、より計算負荷の高い双方向層の数を減らすことができ、従来のストリーミングモデルを従来の非ストリーミングモデルと単に組み合わせるよりも、モデル200をより合理化することができる。
図2Aを参照すると、第1のエンコーダ210は、d次元特徴ベクトルのシーケンス(例えば、図1A及び1Bに示される音響フレーム110)を読み出す。x=x1,x,・・・,x)式中、xt∈Rd)は各出力ステップで、第1の高次特徴表現を生成する。この第1の高次特徴表現は、eとして表される。同様に、第2のエンコーダ220は、第1のエンコーダ210にカスケード接続され、第1の高次の特徴eを入力として受信し、第2の高次特徴表現を出力するようにトレーニングされる。この第2の高次特徴表現は、eとして表される。任意選択で、第3のエンコーダ230は、第2のエンコーダ220にカスケード接続され、第2の高次特徴表現eを入力として受信し、第3の高次特徴表現を出力するようにトレーニングされる。この第3の高次特徴表現は、eとして表される。第1のエンコーダ210、第2のエンコーダ220、及び第3のエンコーダ230は、それぞれ専用のより小さいデコーダ204、206、208に直接接続される。具体的には、第1のエンコーダ210は第1のデコーダ204に接続され、第2のエンコーダ220は第2のデコーダ206に接続され、第3のエンコーダ230は第3のデコーダ208に接続される。したがって、第1のデコーダ204は、第1の高次特徴表現eの入力を受信し、第2のデコーダ206は、第2の高次特徴表現eを入力として受信し、第3のデコーダ208は、3次の高次特徴表現eを入力として受け取る。
第1のデコーダ204、第2のデコーダ206、及び第3のデコーダ208はそれぞれ、384次元の全結合ジョイント層240、240a~cに基づいて440万のパラメータを有する再帰型ニューラルネットワークトランスデューサ(RNN-T)アーキテクチャと、それぞれ320次元の埋め込み予測ネットワーク250、250a~cとを含んでもよい。モデル200がストリーミングモード(すなわち、図2B)で動作するとき、第1のデコーダ204のジョイント層240aは、予測ネットワーク250aから埋め込み出力(以前の予測yr-1)を受信し、第1のエンコーダ210から出力された第1の高次特徴表現eと組み合わせて、第1デコーダ204の出力を生成する。モデル200が2パス非ストリーミングモード(図2C)で動作するとき、第2のデコーダ206は、ジョイント層240bを使用して、カスケードエンコーダ202によって出力された第2の高次特徴表現eと予測ネットワーク250bからの埋め込み出力(以前の予測yr-1)を組み合わせて、第2のデコーダ206の出力を生成する。同様に、モデル200が3パス非ストリーミングモード(図2D)で動作するとき、第3のデコーダ208は、ジョイント層240cを使用して、カスケードエンコーダ202によって出力された第3の高次特徴表現eと予測ネットワーク250cからの埋め込み出力(以前の予測yr-1)を組み合わせて、第3のデコーダ208の出力を生成する。
デコーダ204、206、208のそれぞれの出力は、現在のサブワードユニットyに対する確率分布P(y|yi-1,...,y,x)であり得、これはN個の前の非空白記号の前のユニットのシーケンス{yi-1,...,yi-N}と入力xに基づいている。図示されていないが、モデル200は、デコーダ204、206、208の出力を受信するソフトマックス層を含み得る。いくつかの実施態様では、ソフトマックス層は、デコーダ204、206、208とは別に存在し、デコーダ204、206、208からの出力yを処理する。次に、ソフトマックス層の出力は、正字要素を選択するためにビーム探索プロセスで使用される。いくつかの実施態様では、ソフトマックス層は、デコーダ204、206、208のそれぞれの内部に統合され、それぞれのデコーダ204、206、208の出力yは、ソフトマックス層の出力を表す。
デコーダ204、206、208は、出力ステップのそれぞれにおいて、可能性のある音声認識仮説に対して確率分布を生成するよう構成されている。別の言い方をすれば、デコーダ204、206、208のそれぞれについて、それぞれのジョイント層240は、各出力ステップ(例えば、時間ステップ)において、可能性のある音声認識仮説に対して確率分布を生成する。ここで、「可能性のある音声認識仮説」は、それぞれが特定の自然言語の書記素(例えば、記号/文字)または言葉の一部を表す出力ラベル/記号のセット(「音声ユニット」とも呼ばれる)に対応する。例えば、自然言語が英語の場合、出力ラベルのセットには27個の記号、例えば、英語のアルファベットの26文字それぞれに1つのラベルと、スペースを表す1つのラベルとが含まれ得る。したがって、各ジョイント層240は、所定の出力ラベルセットの各々の発生可能性を示す値のセットを出力し得る。この値のセットはベクトルであり得(例えば、1-ホットベクトル)、出力ラベルのセットの確率分布を示し得る。場合によっては、出力ラベルは書記素(例えば、個々の文字、潜在的な句読点やその他の記号)であるが、出力ラベルのセットはそれらに限定されない。例えば、出力ラベルのセットは、書記素に加えて、または書記素の代わりに、言葉の一部及び/または言葉全体を含むことができる。出力ラベルはまた、音素または副音素など、他のタイプの音声ユニットであり得る。ジョイント層240の出力分布は、異なる出力ラベルのそれぞれに対する事後確率値を含み得る。したがって、異なる書記素または他の記号を表す100個の異なる出力ラベルがある場合、ジョイント層240の出力は、出力ラベルごとに1つずつ、100個の異なる確率値を含むことができる。次に、確率分布を使用して、(例えば、ソフトマックス層による)ビーム検索プロセスで候補の正字要素(例えば、書記素、言葉の一部、及び/または言葉)を選択し、スコアを割り当てて、トランスクリプション120を決定することができる。
デコーダ204、206、208のそれぞれの内部で、それぞれの予測ネットワーク250は、2つの2048次元のLSTM層を有してよく、各LSTM層には640次元の投影層が続くため、LSTMベースの予測ネットワークは、約2340万のパラメータを有し得る。言い換えると、各予測ネットワーク250は、LSTM層を含み得る。他の構成では、予測ネットワーク250は、LSTM層の代わりにコンフォーマ層またはトランスフォーマ層を含み得る。さらに他の構成では、予測ネットワーク250は、埋め込み予測ネットワークを含むV2埋め込みルックアップテーブルを含む。各時間ステップにおいて、V2埋め込みルックアップテーブルは、予測ネットワーク250によって出力された以前の2つの予測(例えば、1-ホットベクトル)を入力として受信し、以前の2つの予測のそれぞれについて、それぞれの埋め込みd、dを計算し、連結出力[d,d]をジョイント層240に提供する。比較すると、V2埋め込みルックアップテーブルは、約200万のパラメータしか有さない場合があるが、LSTMベースの予測ネットワークは、約2340万のパラメータを含み得る。最後に、予測ネットワーク250はまた、640個の隠れユニットを有する1層のニューラルネットワークであってもよい。ソフトマックス層は、複数のトレーニング発話132、132a~n(図3A~3B)の中のすべての固有の言葉の一部または書記素を使用して生成される統合された言葉の一部または書記素セットから構成されてもよい。いくつかの実施態様では、ASRモデル200が見る将来のコンテキストの量を制限するために、第2のエンコーダ220は、特定の量の右コンテキスト(例えば、5秒の右コンテキスト)といくつかのコンフォーマ層(例えば、2層)を使用する一方、第1のエンコーダ210は、LSTM層を使用し続ける。これらの実施態様では、第2のエンコーダ220内の各コンフォーマ層は、LSTM層と一致する640個のユニットを有し得、約1000万の追加パラメータを追加する。
いくつかの実施態様では、モデル200はストリーミングモード(すなわち、1パスモデル)で動作し、ファネルプーリングは入力音響フレーム110をダウンサンプリングするために使用され、これにより、モデル200の性能を維持しながら、モデル200のパラメータの数を削減する。例えば、第1のエンコーダ210の自己注意層は、入力として特徴マップx∈RT×Dを受信するが、ここで、Tは元のシーケンスの長さであり、Dは特徴次元である。その後、ダウンサンプリングされたシーケンスx’∈RT×Dが平均プーリングによって生成され、これは次のように表される。
x’=Avgプール(x) (1)
式中、T’=T/2である。x’を自己注意層への入力として提供するのではなく、クエリベクトルqとして使用する。ここで、鍵ベクトルk及び値ベクトルvは、入力特徴マップxに基づき、y∈RTD次のような自己注意層の出力特徴としてマッピングされる。
y=自己注意(q=x’,kv=x) (2)
図2Aの例を続けると、いくつかの実施態様では、モデル200aはストリーミングモードと非ストリーミングモードの両方で並行して動作する。ストリーミングモード及び非ストリーミングモードの両方で同時に動作する場合、モデル200aは最初に、第1のエンコーダ210を使用して音声データ110に対してストリーミング音声認識を実行し、第2のエンコーダ220及び第1のデコーダ204の両方に対する第1の高次特徴表現eを生成する。次に、第1のデコーダ204は、第1の高次特徴表現eに基づいて、部分音声認識結果120、120aを生成する。モデル200bも、エンコードされた音声データ110に対して非ストリーミング音声認識を実行し、第2のエンコーダ220は、第1のエンコーダ210から受信した第1の高次特徴表現eを使用して第2の高次特徴表現eを生成する。次に第2のデコーダ206は、第2の高次特徴表現eに基づいて、最終音声認識結果120、120bを生成する。「時間」によって示されるように、第1のデコーダ204は、第1のエンコーダ210からの出力を使用してストリーミング方式で部分音声認識結果120aを出力し、その後モデル200a発話が完了するのを待って、非ストリーミングモードで動作し、第2のデコーダ206は、第2のエンコーダ220からの出力を使用して、最終音声認識結果120bを生成する。したがって、入力発話106に対する最終音声認識結果120bは、部分音声認識結果120aから遅延する場合がある。
図2Bを参照すると、いくつかの実施態様では、モデル200bはストリーミングモード(すなわち、シングルパスモード)でのみ動作する。これは、例えば、ユーザ104が、音声検索またはデバイス上でのディクテーションなど、レイテンシを最小限に抑える必要があるアプリケーションを使用しているときに発生し得る。ここで、モデル200bは、第1のエンコーダ210のみを使用して、音声データ110のストリーミング音声認識を実行して、第1のデコーダ204に対する第1の高次特徴表現eを生成する。第1のデコーダ204は、次に、部分音声認識結果120、120aを生成する。モデル200bのストリーミングモードは、部分音声認識結果120、120aを迅速に生成するため、用語「再生」の不正確さは、ユーザ104に一般に許容される。
図2Cを参照すると、いくつかの実施態様では、モデル200cは、非ストリーミングモード(すなわち、2パスモデル)でのみ動作する。非ストリーミングモードは、例えば、ユーザ104が自分の電話に残されたボイスメールのトランスクリプションを閲覧している(例えば、図1B)などの非レイテンシ集約型アプリケーションで発生してもよい。上記のように、このタイプのアプリケーションは、将来のコンテキストを使用することで性能を向上させ、処理時間の増加と引き換えに恩恵を受ける。ここで、モデル200cは、第1のエンコーダ210を使用して、第2のエンコーダ220への入力のために各時間ステップで第1の高次特徴表現eを生成するが、第1のデコーダ204は、第1の高次特徴表現eのいずれもデコードしない。その後、モデル200cは、すべての音声データ110に対して非ストリーミング音声認識を実行し、第2のエンコーダ220は、第1のエンコーダ210から受信した第1の高次特徴表現eを使用して、第2の高次特徴表現eを生成する。次に、第2のデコーダ206は、最終音声認識結果120、120bを生成する。ストリーミング音声認識をリアルタイムで生成することは、ユーザにとってほとんど価値がなく、レイテンシは要因ではないため、モデル200cは単に非ストリーミングモードのみで動作し、最終的な音声認識結果120,120bを生成する場合がある。
2Dを参照すると、モデル200は、非ストリーミングモードでのみ動作する3パスモデル200d(すなわち、大きいモデル)に一般化することができる。この非ストリーミングモードは、例えば、ユーザ104がモデル200から音声認識においてより高い精度を期待する非レイテンシ集約型アプリケーションで発生し得る。上記のように、このタイプのアプリケーションは、最終音声認識結果120、120bに対するレイテンシの増加と引き換えに、将来のコンテキストの量を増やすことで利益を得る。ここで、モデル200dは、第1のエンコーダ210を使用して、第2のエンコーダ220への入力のために各時間ステップで第1の高次特徴表現eを生成するが、第1のデコーダ204は、第1の高次特徴表現eのいずれもデコードしない。モデル200dは次に、すべての音声データ110に対して非ストリーミング音声認識を実行し、第2のエンコーダ220は、第1のエンコーダ210から受信した第1の高次特徴表現eを使用して、第2の高次特徴表現eを生成する。モデル200cとは異なり、第2のデコーダ206は、第2の高次特徴表現eのいずれもデコードしない。それどころか、モデル200dも、すべての音声データ110に対して非ストリーミング音声認識を実行し、第3のエンコーダ230は、第2のエンコーダ220から受信した第2の高次特徴表現eを使用して、第3の高次特徴表現eを生成する。次に、第3のデコーダ208は、最終音声認識結果120、120bを生成する。
図3A及び図3Bは、様々なモデルサイズのストリーミングモード及び/または非ストリーミングモードの間で動的に動作するようにモデル200をトレーニングするための2段階トレーニングプロセス300、300a~bの例を示す。いくつかの構成では、トレーニングプロセス300は、図1A及び図1Bの遠隔計算装置60上で実行される。トレーニングプロセス300は、サンプルデータベース130に保存された複数のトレーニング発話132、132a~nを取得し、2段階のプロセスを使用してモデル200をトレーニング発話132でトレーニングする。サンプルデータベース130は、遠隔計算装置60のメモリハードウェア上に常駐してもよい。図2Aに関して上述した通り、第1のエンコーダ210、第2のエンコーダ220、及び第3のエンコーダ230は、共同でまたは一緒にトレーニングすることができ、トレーニングプロセス300を簡素化する。エンコーダ210、220、230を共同でトレーニングするということは、非ストリーミングエンコーダ220が、入力音響特徴(例えば、入力音響フレーム110)の代わりに、ストリーミングエンコーダ210の出力で直接トレーニングされ得る(例えば、第1の高次特徴表現e)一方で、非ストリーミングエンコーダ230は、入力音響特徴(例えば、入力音響フレーム110)の代わりに非ストリーミングエンコーダ220(例えば、第2の高次特徴表現e)の出力で直接トレーニングされ得ることを意味する。有利なことに、これにより、モデル200が推論中にストリーミングモードまたは非ストリーミングモードのいずれかで動作することを学習することが保証される。
図3A及び図3Bに示すように、モデル200には3つの処理パスがあり、1つはモデル200bのストリーミングモード(図2Bに示す)、1つはモデル200cの非ストリーミングモード(図2Cに示す)、もう1つはモデル200dの非ストリーミングモード(図2Dに示す)である。図3Aを参照すると、トレーニングプロセス300は、第1段階のトレーニングプロセス300aを採用している。第1段階では、トレーニングプロセス300aは、トレーニング発話132の同じミニバッチを、カスケードエンコーダモデル200b、200c、200dのそれぞれを介して転送することにより交差エントロピートレーニングを使用し、各カスケードエンコーダモデル200b、200c、200dの損失を、合計が1になる重みで線結合する。トレーニングプロセス300aの第1段階において、カスケードエンコーダ210、220、230を共同でトレーニングすることは、入力処理パス間の損失の重み付き合計を最小にすることを含む。
トレーニングプロセス300内には3つの入力処理パスがあるため、モデルの損失には3つの損失関数が含まれる。具体的には、モデル200bのストリーミングモードにおける損失は、入力トレーニング発話132に基づく、可能性のある音声認識仮説に対する確率分布に対応する負の対数確率の合計として一般に定義される。すなわち、第1のエンコーダ210からデコーダ204への接続のモデル損失は、
として定義される。非ストリーミングモード(例えば、モデル200c)におけるモデル損失はまた、入力トレーニング発話132に基づく、可能性のある音声認識仮説に対する確率分布に対応する負の対数確率の合計として一般に定義される。したがって、第2のエンコーダ220からデコーダ204への接続のモデル損失は
として定義される。非ストリーミングモード(例えば、モデル200b)におけるモデル損失はまた、入力トレーニング発話132に基づく、可能性のある音声認識仮説に対する確率分布に対応する負の対数確率の合計として一般に定義される。したがって、第3のエンコーダ230から第3のデコーダ206へ接続するモデル損失は
として定義される。いくつかの実施態様では、モデル200がエンコーダ210、220及びデコーダ204、206のみを含む場合、第1のデコーダ204及び第2のデコーダ206の2つの入力パスの間の総損失
は、各入力パスの加重和として計算され、λは重み付け項である。
第2段階では、交差エントロピートレーニングを使用して、第1段階のトレーニング300a中に初期化されたモデル200を微調整するために、トレーニングプロセス300bが識別トレーニングを実行する。ここで、識別トレーニングは、最小単語誤り率(MWER)基準を使用して、モデル200を微調整することを含む。トレーニングプロセス300bの第2段階の間、各トレーニング発話132に対して、トレーニングはストリーミングまたは非ストリーミング経路/パスのいずれかで行われ得る。言い換えると、入力処理パスは、モデル200b、またはモデル200c、またはモデル200dのいずれかをトレーニングするように確率的に選択され、トレーニングプロセス300bはその損失重みと等しい確率で、各モデル200b、200c、200dをランダムにサンプリングする。ここで、モデル200bの損失重みは0.8、モデル200cの損失重みは0.15、モデル200dの損失重みは0.05であってよい。モデル200bの経路のトレーニングに最も多くの時間を費やすことにより、後の経路200c、200dでの性能を犠牲にすることなく、モデルの精度が向上する。その後、サンプリングされた経路のそれぞれのデコーダ204、206、208は、トレーニング発話132に対してビーム検索を実行して、仮説のn-ベストリストを生成し、すべての仮説について負の対数尤度が計算され、n-ベスト空間で再正規化されて、モデル200での損失の最小化のために単語誤り損失が近似される。したがって、対応するトレーニング発話に対してそれぞれのデコーダによって生成されたnベストリスト内の各仮説について、対応するトレーニング発話の正解トランスクリプションに対するそれぞれの数の単語誤りが識別され、トレーニングプロセスは対応するトレーニング発話132のnベストリスト内の各仮説について識別されたそれぞれの単語誤り数に基づいて単語誤り率を最小化するためにMWER基準を使用する。本明細書で使用される場合、n―ベストリストは、n個の最も高いランクの仮説を含み、n―ベストリスト内の各仮説は、同じ対応するトレーニング発話132に対する候補トランスクリプションを含む。いくつかの実施態様では、nは4に等しいので、サンプリングされた経路のそれぞれのデコーダ204、206、208は、トレーニング発話132に対してビーム検索を実行して、上位4つの仮説を生成し、全ての仮説(4より多い)に対して負の対数尤度が計算され、上位4つの空間で再正規化される。さらに、トレーニング発話132をサンプリングすることにより、トレーニングプロセスは、各パス/経路でトレーニング発話132ごとに損失を一度計算するだけ必要とするだけでよく、これにより、トレーニングプロセス300bの第2段階が大幅に高速化される。いくつかの実施態様では、より長いトレーニング時間が許容される場合、代替のトレーニングプロセスが採用され、各トレーニング発話を用いて各入力処理経路/パスをトレーニングし、各トレーニング発話132に対してモデル200b及びモデル200cの両方の損失を計算する。
図3Aに示す例では、トレーニング発話132b、132cは、トレーニングプロセス300aの第1段階でカスケードエンコーダモデル200b、200c、200dによって表される処理経路のそれぞれをトレーニングするように選択される。カスケードエンコーダモデル200bは、トレーニング発話132b、132cを受信し、第1のエンコーダ210は、トレーニング発話132b、132cを出力として第1の高次特徴表現(例えば、音声埋め込み)に変換する。次に、第1のデコーダ204は、トレーニング発話132b、132cの第1の高次特徴表現を入力として受信し、その精度についてテストされた出力を生成する。同様に、トレーニング発話132b、132cが選択されて、カスケードエンコーダモデル200cによって表される第2の処理経路をトレーニングする。カスケードエンコーダモデル200cは、トレーニング発話132b、132cを受信し、第1のエンコーダ210は、トレーニング発話132b、132cを出力として第1の高次特徴表現(例えば、音声埋め込み)に変換する。第2のエンコーダ220は、トレーニング発話132b、132cの第1の高次特徴表現を入力として受信し、トレーニング発話132b、132cの第2の高次特徴表現を出力として生成する。次に、第2のデコーダ206は、トレーニング発話132b、132cの第2の高次特徴表現を入力として受信し、その精度についてテストされた出力を生成する。同様に、カスケードエンコーダモデル200dは、トレーニング発話132b、132cを受信し、第1のエンコーダ210は、トレーニング発話132b、132cを出力として第1の高次特徴表現(例えば、音声埋め込み)に変換する。第2のエンコーダ220は、トレーニング発話132b、132cの第1の高次特徴表現を入力として受信し、トレーニング発話132b、132cの第2の高次特徴表現を出力として生成する。第3のエンコーダ230は、トレーニング発話132b、132cの第2の高次特徴表現を入力として受信し、トレーニング発話132b、132cの第3の高次特徴表現を出力として生成する。次に、第3のデコーダ208は、トレーニング発話132b、132cの第3の高次特徴表現を入力として受信し、その精度についてテストされた出力を生成する。
図3Bに示すように、トレーニングプロセス300bの第2段階では、トレーニングプロセス300bによって使用されるトレーニング発話132がランダムに選択され、モデル200の各パスは、モデル200の各経路に割り当てられる損失重みと等しい確率でランダムに選択される。その損失重みに基づいて、カスケードエンコーダモデル200bは、トレーニング発話132a、132b、132cを受信し、第1のエンコーダ210は、トレーニング発話132a、132b、132cを出力として第1の高次特徴表現(例えば、音声埋め込み)に変換する。次に、第1のデコーダ204は、トレーニング発話132a、132b、132cの第1の高次特徴表現を入力として受信し、その精度についてテストされた出力を生成する。その損失重みに基づいて、カスケードエンコーダモデル200cは、トレーニング発話132b、132dを受信し、第1のエンコーダ210は、トレーニング発話132b、132dを出力として第1の高次特徴表現(例えば、音声埋め込み)に変換する。第2のエンコーダ220は、トレーニング発話132b、132dの第1の高次特徴表現を入力として受信し、トレーニング発話132b、132dの第2の高次特徴表現を出力として生成する。次に、第2のデコーダ206は、トレーニング発話132b、132dの第2の高次特徴表現を入力として受信し、その精度についてテストされた出力を生成する。その損失重みに基づいて、カスケードエンコーダモデル200dは、トレーニング発話132cを受信し、第1のエンコーダ210は、トレーニング発話132cを出力として第1の高次特徴表現(例えば、音声埋め込み)に変換する。第2のエンコーダ220は、トレーニング発話132cの第1の高次特徴表現を入力として受信し、トレーニング発話132cの第2の高次特徴表現を出力として生成する。第3のエンコーダ230は、トレーニング発話132cの第2の高次特徴表現を入力として受信し、トレーニング発話132cの第3の高次特徴表現を出力として生成する。次に、第3のデコーダ208は、トレーニング発話132cの第3の高次特徴表現を入力として受信し、その精度についてテストされた出力を生成する。
図4は、ASRモデル200を使用してストリーミング及び非ストリーミング音声認識を実行する方法400の例示的な動作手順のフローチャートを含む。動作402において、方法400は、ASRモデル200への入力として、音響フレーム110のシーケンスを受信することを含む。動作404では、方法400はまた、第1のエンコーダ210によって、複数の出力ステップのそれぞれで、音響フレーム110のシーケンス内の対応する音響フレーム110の第1の高次特徴表現を生成することを含む。動作406では、方法400は、第1のデコーダ204及び第2のエンコーダ220の両方への入力として、複数の出力ステップそれぞれで、第1のエンコーダ210によって生成された第1の高次特徴表現を受信することを含む。
方法400はまた、動作408において、複数の出力ステップのそれぞれで第2のエンコーダ220によって、対応する第1の高次特徴表現に対して第2の高次特徴表現を生成することを含む。動作410では、方法400は、複数の出力ステップのそれぞれで第1のデコーダ204によって、可能性のある音声認識仮説に対する第1の確率分布を生成することを含む。方法400は、動作412で、第2のデコーダ206への入力として、複数の出力ステップのそれぞれで第2のエンコーダ220によって生成された第2の高次特徴表現を受信することをさらに含む。動作414では、方法400はまた、複数の出力ステップのそれぞれで第2のデコーダ206によって、可能性のある音声認識仮説に対する第2の確率分布を生成することを含む。
図5は、本明細書で説明されるシステム(例えば、音声サブシステム108、ASRシステム109、ユーザインタフェース生成器107、及び/またはモデル200)及び方法(例えば、方法400)を実装するために使用され得る例示的な計算装置500の概略図である。計算装置500は、ラップトップ、デスクトップ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレーム、及びその他の適切なコンピュータなど、様々な形式のデジタルコンピュータを表すことを意図している。ここで示されている構成要素、それらの接続と関係、及びそれらの機能は、例示のみを目的としており、この文書で説明及び/または特許請求されている本発明の実施態様を制限することを意図してはいない。
計算装置500には、プロセッサ510(例えば、データ処理ハードウェア)、メモリ520(例えば、メモリハードウェア)、記憶装置530、メモリ520及び高速拡張ポート550に接続する高速インターフェイス/コントローラ540、ならびに低速バス570及び記憶装置530に接続する低速インターフェイス/コントローラ560が含まれる。各構成要素510、520、530、540、550、及び560は、様々なバスを使用して相互接続されており、共通のマザーボードに据え付けられるか、または必要に応じて他の方法で存在することもできる。プロセッサ510(例えば、図1A~図1Bのデータ処理ハードウェア12、62)は、メモリ520または記憶装置530に記憶された命令を含む、計算装置500内で実行するための命令を処理して、高速インターフェイス540に接続されたディスプレイ580などの外部入出力デバイスにグラフィカルユーザインターフェイス(GUI)のグラフィカル情報を表示することができる。他の実施態様では、複数のメモリ及び複数のメモリタイプと共に、必要に応じて複数のプロセッサ及び/または複数のバスが使用されてもよい。また、複数の計算装置500が接続され、(例えば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)各デバイスが必要な動作の一部を行う場合もある。
メモリ520(すなわち、図1A~図1Bのメモリハードウェア14、64)は、計算装置500内に非一時的に情報を記憶する。メモリ520は、コンピュータ可読媒体、揮発性メモリユニット(複数可)、または不揮発性メモリユニット(複数可)であってもよい。非一時的なメモリ520は、計算装置500による使用のために一時的または永続的にプログラム(例えば、命令シーケンス)またはデータ(例えば、プログラム状態情報)を格納するために使用される物理デバイスであってよい。不揮発性メモリの例は、フラッシュメモリ及び読み出し専用メモリ(ROM)/プログラマブル読み出し専用メモリ(PROM)/消去可能なプログラマブル読み出し専用メモリ(EPROM)/電子的に消去可能なプログラマブル読み出し専用メモリ(EEPROM)(例えば、通常はブートプログラムなどのファームウェアに使用される)を含むが、これらに限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、及びディスクまたはテープを含むが、これらに限定されない。
記憶装置530は、計算装置500に大容量ストレージを設けることができる。いくつかの実施態様では、記憶装置530は、コンピュータ可読媒体である。様々な異なる実施態様では、記憶装置530は、フロッピーディスク(登録商標)デバイス、ハードディスクデバイス、光ディスクデバイス、もしくはテープデバイス、フラッシュメモリもしくはその他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくはその他の構成のデバイスを含む、デバイスアレイであってもよい。追加の実施態様では、コンピュータプログラム製品は、情報キャリアに有形に具現化される。コンピュータプログラム製品は、実行時に上記のような1つ以上の方法を実行する命令を含む。情報キャリアは、メモリ520、記憶装置530、またはプロセッサ510上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
高速コントローラ540は、計算装置500の帯域幅集約動作をより管理する一方、低速コントローラ560は、低帯域幅集約動作を管理する。このような役割の割り振りは単なる例である。いくつかの実施態様では、高速コントローラ540は、メモリ520、ディスプレイ580(例えば、グラフィックプロセッサまたはアクセラレータを介して)、及び様々な拡張カード(図示せず)を受け入れることができる高速拡張ポート550に結合される。いくつかの実施態様では、低速コントローラ560は、記憶装置530及び低速拡張ポート590に結合される。低速拡張ポート590には、様々な通信ポート(USB、Bluetooth(登録商標)、イーサネット(登録商標)、ワイヤレスイーサネットなど)が含まれる場合があり、ネットワークアダプタなどを介して、キーボード、ポインティングデバイス、スキャナ、またはスイッチやルータなどのネットワークデバイスなどの1つ以上の入出力デバイスに接続できる。
計算装置500は、図に示すように、多くの様々な形式で実装できる。例えば、それは、標準サーバ500aとして、またはそれらのようなサーバ500aの群内の複数回、ラップトップコンピュータ500bとして、またはラックサーバシステム500cの一部として実装されてよい。
本明細書で説明するシステム及び技術の様々な実施態様は、デジタル電子及び/または光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/またはそれらの組み合わせで実現できる。これらの様々な実施態様は、特殊または汎用であり得、ストレージシステムからデータ及び命令を受信し、ストレージシステムにデータ及び命令を送信するように結合された、少なくとも1つのプログラマブルプロセッサ、少なくとも1つの入力デバイス、及び少なくとも1つの出力デバイスを含むプログラム可能なシステムで実行可能及び/または解釈可能な1つまたは複数のコンピュータプログラムにおける実施態様を含むことができる。
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)は、計算装置にタスクを実行させるコンピュータソフトウェアを指してもよい。いくつかの例では、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」、または「プログラム」と呼ばれることがある。例示的なアプリケーションは、システム診断アプリケーション、システム管理アプリケーション、システムメンテナンスアプリケーション、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、メッセージアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、及びゲームアプリケーションを含むが、これらに限定されない。
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られる)は、プログラマブルプロセッサのための機械命令を含み、かつ高水準手続型及び/またはオブジェクト指向プログラミング言語、及び/またはアセンブリ/機械言語で実装されることができる。本明細書で使用する場合、「機械可読媒体」及び「コンピュータ可読媒体」という用語は、機械可読信号として機械命令を受け取る機械可読媒体を含むプログラマブルプロセッサに機械命令及び/またはデータを提供するために用いられる、あらゆるコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置及び/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。「機械可読信号」という用語は、機械命令及び/またはデータをプログラマブルプロセッサに提供するために用いられるあらゆる信号を指す。
本明細書に説明するプロセス及び論理フローは、1つ以上のプログラマブルプロセッサがまた、データ処理ハードウェアとして言及され、1つ以上のコンピュータプログラムを実行して、入力データに作用し、出力を生成することにより機能を実行することによって実行できる。プロセス及び論理フローはまた、特殊用途論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)により実行され得る。コンピュータプログラムの実行に適切なプロセッサは、例えば、汎用及び特殊目的のプロセッサの両方、並びにいずれかの種類のデジタルコンピュータのいずれか1つまたは複数のプロセッサを含む。概して、プロセッサは、読み出し専用メモリ、ランダムアクセスメモリ、またはその両方から命令及びデータを受信する。コンピュータの基本的な要素は、命令を実行するためのプロセッサ、ならびに命令及びデータを格納するための1つ以上のメモリデバイスである。概して、コンピュータはまた、データを格納するための1つまたは複数の大容量記憶デバイス、例えば磁気ディスク、光磁気ディスク、または光ディスクを含む、またはそれらからデータを受信するもしくはそれらにデータを送信する、あるいはその両方を行うよう動作可能に接続される。しかし、コンピュータがそのようなデバイスを有している必要はない。コンピュータプログラム命令およびデータを格納するのに適したコンピュータ読み取り可能なメディアには、あらゆる形式の不揮発性メモリ、メディア、およびメモリデバイスが含まれ、たとえば、EPROM、EEPROM、及びフラッシュメモリデバイスなどの半導体メモリデバイス、内蔵ハードディスクまたはリムーバブルディスクなどの磁気ディスク、光磁気ディスク、及びCD-ROMおよびDVD-ROMディスクが含まれる。プロセッサ及びメモリは、専用論理回路によって補完されるか、または専用論理回路に組み込まれ得る。
ユーザとのインタラクションを行うために、本発明の1つ以上の態様は、ユーザに情報を表示するためのディスプレイ装置(例えばCRT(ブラウン管)またはLCD(液晶画面)モニタ、またはタッチスクリーン)を有するコンピュータに、ユーザがそれによってコンピュータへの入力を行うことができる、任意でキーボード及びポインティングデバイス(例えばマウスまたはトラックボール)を実装することができる。他の種類のデバイスもまた、ユーザとのインタラクションを提供するために用いられ得る。例えば、ユーザに提供されるフィードバックは、あらゆる形式の感覚的フィードバック、例えば視覚フィードバック、聴覚フィードバック、または触覚フィードバックであることができ、ユーザからの入力は、音響、音声言語、または触覚入力を含む、任意の形式で受け取られ得る。さらに、コンピュータは、ユーザが使用するデバイスにドキュメントを送受信することで、例えば、ウェブブラウザから受信した要求に応じて、ユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することで、ユーザとインタラクトできる。
いくつかの実施態様が説明されてきた。それにも関わらず、本開示の趣旨及び範囲から逸脱することなく、様々な修正を行い得ることが理解される。したがって、他の実施態様は、以下の特許請求の範囲内である。

Claims (20)

  1. ストリーミングモード及び非ストリーミングモードの両方での動作を実行させるための、コンピュータを機能させる自動音声認識(ASR)モデル(200)であって、
    第1のエンコーダ(210)であって、
    複数の音響フレーム(110)からなるシーケンスを入力として受信し、
    複数の出力ステップのそれぞれにおいて、前記複数の音響フレーム(110)からなるシーケンスにおける対応する音響フレーム(110)に対して第1の高次特徴表現を生成するよう構成されている、前記第1のエンコーダ(210)と、
    第1のデコーダ(204)であって、
    前記複数の出力ステップのそれぞれで前記第1のエンコーダ(210)によって生成された前記第1の高次特徴表現を入力として受信し、
    前記複数の出力ステップのそれぞれにおいて、可能性のある音声認識仮説に対して第1の確率分布を生成するよう構成されている、前記第1のデコーダ(204)と、
    第2のエンコーダ(220)であって、
    前記複数の出力ステップのそれぞれで前記第1のエンコーダ(210)によって生成された前記第1の高次特徴表現を入力として受信し、
    前記複数の出力ステップのそれぞれで、対応する第1の高次特徴フレーム対して第2の高次特徴表現を生成するように構成されている、前記第2のエンコーダ(220)と、
    第2のデコーダ(206)であって、
    前記複数の出力ステップのそれぞれで前記第2のエンコーダ(220)によって生成された前記第2の高次特徴表現を入力として受信し、
    前記複数の出力ステップのそれぞれにおいて、可能性のある音声認識仮説に対して第2の確率分布を生成するよう構成されている、前記第2のデコーダ(206)とを含み、
    前記ASRモデル(200)は、2段階トレーニングプロセスを使用してトレーニングされ、前記2段階トレーニングプロセスは、
    トレーニング発話の同じミニバッチを、(i)前記第1のエンコーダ(210)と前記第1のデコーダ(204)とからなるカスケードエンコーダモデル(200b)と、(ii)前記第1のエンコーダ(210)と前記第2のエンコーダ(220)と前記第2のデコーダ(206)とからなるカスケードエンコーダモデル(200c)と、のそれぞれを介して転送することにより交差エントロピートレーニングを使用し、各カスケードエンコーダモデル(200b、200c)の損失を、合計が1になる重みで線結合する、第1段階と、
    交差エントロピートレーニングを使用して前記第1段階のトレーニング中に初期化された前記ASRモデル(200)を微調整するために、識別トレーニングを実行する、第2段階と、を含む、自動音声認識(ASR)モデル(200)。
  2. 前記第1のデコーダ(204)が、可能性のある音声認識仮説に対する前記第1の確率分布に基づいて、部分音声認識結果(120)を生成するようにさらに構成される、請求項1に記載のASRモデル(200)。
  3. 前記第1のエンコーダ(210)が、
    複数の単方向長短期記憶(LSTM)層と、
    複数のコンフォーマ層と、
    複数のトランスフォーマ層とのうちの1つを含む因果エンコーダを含む、請求項1または2に記載のASRモデル(200)。
  4. 前記第2のエンコーダ(220)が、
    複数の単方向長短期記憶(LSTM)層と、
    複数のコンフォーマ層と、
    複数のトランスフォーマ層とのうちの1つを含む非因果エンコーダを含む、請求項1または2に記載のASRモデル(200)。
  5. 前記第1のデコーダ(204)が、
    予測ネットワーク(250)であって、
    最終ソフトマックス層によって出力される非空白記号のシーケンスを入力として受信し、
    前記複数の出力ステップのそれぞれで密な表現を生成するよう構成されている、前記予測ネットワーク(250)と、
    結合ネットワーク(240)であって、
    前記複数の出力ステップのそれぞれで前記予測ネットワーク(250)によって生成された前記密な表現と、前記複数の出力ステップのそれぞれで前記第1のエンコーダ(210)によって生成された前記第1の高次特徴表現とを入力として受信し、
    前記複数の出力ステップのそれぞれにおいて、可能性のある音声認識仮説に対して第1の確率分布を生成するよう構成されている、前記結合ネットワーク(240)とを含む、請求項1または2に記載のASRモデル(200)。
  6. 前記予測ネットワーク(250)が、
    長短期記憶(LSTM)ベースの予測ネットワーク(250)、または
    V2埋め込みルックアップテーブルを含む、請求項5に記載のASRモデル(200)。
  7. 前記第2のデコーダ(206)が、
    予測ネットワーク(250)であって、
    最終ソフトマックス層によって出力される非空白記号のシーケンスを入力として受信し、
    前記複数の出力ステップのそれぞれで密な表現を生成するよう構成されている、前記予測ネットワーク(250)と、
    結合ネットワーク(240)であって、
    前記複数の出力ステップのそれぞれで前記予測ネットワーク(250)によって生成された前記密な表現と、前記複数の出力ステップのそれぞれで前記第2のエンコーダ(220)によって生成された前記第2の高次特徴表現とを入力として受信し、
    前記複数の出力ステップのそれぞれで、可能性のある音声認識仮説に対して第2の確率分布を生成するよう構成されている、前記結合ネットワーク(240)とを含む、請求項1または2に記載のASRモデル(200)。
  8. 前記予測ネットワーク(250)が、
    長短期記憶(LSTM)ベースの予測ネットワーク(250)、または
    V2埋め込みルックアップテーブルを含む、請求項7に記載のASRモデル(200)。
  9. 前記第1のエンコーダ(210)が、前記第2のエンコーダ(220)より多くのパラメータを含む、請求項1または2に記載のASRモデル(200)。
  10. 第3のエンコーダ(230)であって、
    前記複数の出力ステップのそれぞれで前記第2のエンコーダ(220)によって生成された前記第2の高次特徴表現を入力として受信し、
    前記複数の出力ステップのそれぞれで、対応する第2の高次特徴表現に対して第3の高次特徴表現を生成するように構成されている、前記第3のエンコーダ(230)と、
    第3のデコーダ(208)であって、
    前記複数の出力ステップのそれぞれで前記第3のエンコーダ(230)によって生成された前記第3の高次特徴表現を入力として受信し、
    前記複数の出力ステップのそれぞれにおいて、可能性のある音声認識仮説に対して第3の確率分布を生成するよう構成されている、前記第3のデコーダ(208)とをさらに含む、請求項1または2に記載のASRモデル(200)。
  11. コンピュータ実装方法(400)であって、データ処理ハードウェア(610)によって実行されるとき、前記データ処理ハードウェア(610)に、
    複数の音響フレーム(110)からなるシーケンスを受信することと、
    ストリーミングモード及び非ストリーミングモードの両方での動作を実行させるための、コンピュータを機能させる自動音声認識(ASR)モデル(200)に含まれる第1のエンコーダ(210)によって、複数の出力ステップのそれぞれで、前記複数の音響フレーム(110)からなるシーケンスにおける対応する音響フレーム(110)に対して第1の高次特徴表現を生成することと、
    前記ASRモデル(200)に含まれる第2のエンコーダ(220)によって、前記複数の出力ステップのそれぞれで、対応する第1の高次特徴表現に対して第2の高次特徴表現を生成することと、
    前記ASRモデル(200)に含まれる第1のデコーダ(204)によって、前記複数の出力ステップのそれぞれで、可能性のある音声認識仮説に対して第1の確率分布を生成することと、
    前記ASRモデル(200)に含まれる第2のデコーダ(206)によって、前記複数の出力ステップのそれぞれで、可能性のある音声認識仮説に対して第2の確率分布を生成することとを含む動作を実行させ
    前記ASRモデル(200)は、2段階トレーニングプロセスを使用してトレーニングされ、前記2段階トレーニングプロセスは、
    トレーニング発話の同じミニバッチを、(i)前記第1のエンコーダ(210)と前記第1のデコーダ(204)とからなるカスケードエンコーダモデル(200b)と、(ii)前記第1のエンコーダ(210)と前記第2のエンコーダ(220)と前記第2のデコーダ(206)とからなるカスケードエンコーダモデル(200c)と、のそれぞれを介して転送することにより交差エントロピートレーニングを使用し、各カスケードエンコーダモデル(200b、200c)の損失を、合計が1になる重みで線結合する、第1段階と、
    交差エントロピートレーニングを使用して前記第1段階のトレーニング中に初期化された前記ASRモデル(200)を微調整するために、識別トレーニングを実行する、第2段階と、を含む、コンピュータ実装方法(400)。
  12. 前記動作は、可能性のある音声認識仮説に対する前記第1の確率分布に基づいて、部分音声認識結果(120)を生成することをさらに含む、請求項11に記載のコンピュータ実装方法(400)。
  13. 前記第1のエンコーダ(210)が因果エンコーダを含み、前記因果エンコーダが、
    複数の単方向長短期記憶(LSTM)層、
    複数のコンフォーマ層、または
    複数のトランスフォーマ層のうちの1つを含む、請求項11または12に記載のコンピュータ実装方法(400)。
  14. 前記第2のエンコーダ(220)が非因果エンコーダを含み、前記非因果エンコーダが、
    複数の単方向長短期記憶(LSTM)層、
    複数のコンフォーマ層、または
    複数のトランスフォーマ層のうちの1つを含む、請求項11または12に記載のコンピュータ実装方法(400)。
  15. 前記動作が、前記複数の出力ステップのそれぞれで、
    最終ソフトマックス層によって出力される非空白記号のシーケンスに基づいて、前記第1のデコーダ(204)の予測ネットワーク(250)によって、密な表現を生成することと、
    前記第1のデコーダ(204)の結合ネットワーク(240)によって、前記予測ネットワーク(250)によって生成された前記密な表現に基づいて、可能性のある音声認識仮説に対して前記第1の確率分布を生成することとをさらに含む、請求項11または12に記載のコンピュータ実装方法(400)。
  16. 前記第1のデコーダ(204)の前記予測ネットワーク(250)が、
    長短期記憶(LSTM)ベースの予測ネットワーク(250)、または
    V2埋め込みルックアップテーブルを含む、請求項15に記載のコンピュータ実装方法(400)。
  17. 前記動作が、前記複数の出力ステップのそれぞれで、
    前記第2のデコーダ(206)の予測ネットワーク(250)によって、前記複数の出力ステップのそれぞれで密な表現を生成することと、
    前記複数の出力ステップのそれぞれで前記第2のエンコーダ(220)によって生成された前記第2の高次特徴表現、及び前記複数の出力ステップのそれぞれで前記予測ネットワーク(250)によって生成された密な表現を、前記第2のデコーダ(206)の結合ネットワーク(240)への入力として受信し、
    前記複数の出力ステップのそれぞれで前記第2のデコーダ(206)の前記結合ネットワークによって、可能性のある音声認識仮説に対して、前記第2の確率分布を生成することをさらに含む、請求項11または12に記載のコンピュータ実装方法(400)。
  18. 前記第2のデコーダ(206)の前記予測ネットワーク(250)が、
    長短期記憶(LSTM)ベースの予測ネットワーク(250)、または
    V2埋め込みルックアップテーブルを含む、請求項17に記載のコンピュータ実装方法(400)。
  19. 前記第1のエンコーダ(210)が、前記第2のエンコーダ(220)より多い数のパラメータを含む、請求項11または12に記載のコンピュータ実装方法(400)。
  20. 前記動作は、前記複数の音響フレーム(110)からなるシーケンスでストリーミング音声認識及び非ストリーミング音声認識を実行しながら、
    前記複数の出力ステップのそれぞれで前記第2のエンコーダ(220)によって生成された前記第2の高次特徴表現を、第3のエンコーダ(230)への入力として受信することと、
    前記複数の出力ステップのそれぞれで前記第3のエンコーダ(230)によって、対応する第2の高次特徴表現に対して第3の高次特徴表現を生成することと、
    前記複数の出力ステップのそれぞれで前記第3のエンコーダ(230)によって生成された前記第3の高次特徴表現を、第3のデコーダ(208)への入力として受信することと、
    前記複数の出力ステップのそれぞれで前記第3のデコーダ(208)によって、可能性のある音声認識仮説に対して第3の確率分布を生成することをさらに含む、請求項11または12に記載のコンピュータ実装方法(400)。
JP2024556056A 2022-03-21 2023-03-13 動的モデルサイズのための統合されたカスケードエンコーダasrモデル Active JP7843855B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202263269703P 2022-03-21 2022-03-21
US63/269,703 2022-03-21
PCT/US2023/064253 WO2023183730A1 (en) 2022-03-21 2023-03-13 Unified cascaded encoder asr model for dynamic model sizes

Publications (2)

Publication Number Publication Date
JP2025509923A JP2025509923A (ja) 2025-04-11
JP7843855B2 true JP7843855B2 (ja) 2026-04-10

Family

ID=85937494

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2024556056A Active JP7843855B2 (ja) 2022-03-21 2023-03-13 動的モデルサイズのための統合されたカスケードエンコーダasrモデル

Country Status (4)

Country Link
US (1) US12417770B2 (ja)
EP (1) EP4476720A1 (ja)
JP (1) JP7843855B2 (ja)
WO (1) WO2023183730A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12417770B2 (en) * 2022-03-21 2025-09-16 Google Llc Unified cascaded encoder ASR model for dynamic model sizes
US12505827B1 (en) * 2023-03-31 2025-12-23 Amazon Technologies, Inc. Customizable latency for automatic speech recognition

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021150791A1 (en) 2020-01-22 2021-07-29 Google Llc Attention-based joint acoustic and text on-device end-to-end model

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020153736A1 (en) * 2019-01-23 2020-07-30 Samsung Electronics Co., Ltd. Method and device for speech recognition
WO2020226777A1 (en) * 2019-05-03 2020-11-12 Google Llc End-to-end automated speech recognition on numeric sequences
US12136411B2 (en) * 2020-04-03 2024-11-05 International Business Machines Corporation Training of model for processing sequence data
US12154581B2 (en) * 2020-10-20 2024-11-26 Google Llc Cascaded encoders for simplified streaming and non-streaming ASR
US11908458B2 (en) * 2020-12-29 2024-02-20 International Business Machines Corporation Customization of recurrent neural network transducers for speech recognition
US11715458B2 (en) * 2021-03-23 2023-08-01 Google Llc Efficient streaming non-recurrent on-device end-to-end model
US11810552B2 (en) * 2021-07-02 2023-11-07 Mitsubishi Electric Research Laboratories, Inc. Artificial intelligence system for sequence-to-sequence processing with attention adapted for streaming applications
JP7559288B1 (ja) * 2021-10-04 2024-10-01 グーグル エルエルシー カスケードエンコーダのためのトランスデューサベースのストリーミングの審議
US12417770B2 (en) * 2022-03-21 2025-09-16 Google Llc Unified cascaded encoder ASR model for dynamic model sizes
CN119096292A (zh) * 2022-03-25 2024-12-06 谷歌有限责任公司 利用联合语言标识的流式端到端多语言语音识别
US12586579B2 (en) * 2022-11-17 2026-03-24 Google Llc End-to-end segmentation in a two-pass cascaded encoder automatic speech recognition model
WO2024182213A1 (en) * 2023-02-28 2024-09-06 Google Llc Semantic segmentation with language models for long-form automatic speech recognition

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021150791A1 (en) 2020-01-22 2021-07-29 Google Llc Attention-based joint acoustic and text on-device end-to-end model

Also Published As

Publication number Publication date
US20230326461A1 (en) 2023-10-12
EP4476720A1 (en) 2024-12-18
WO2023183730A1 (en) 2023-09-28
US12417770B2 (en) 2025-09-16
JP2025509923A (ja) 2025-04-11

Similar Documents

Publication Publication Date Title
JP7575640B1 (ja) 希少単語音声認識のための大規模言語モデルデータ選択
JP7679468B2 (ja) トランスフォーマトランスデューサ:ストリーミング音声認識と非ストリーミング音声認識を統合する1つのモデル
JP7554925B2 (ja) 簡略化されたストリーミングおよび非ストリーミングasr用のカスケードエンコーダ
JP7488381B2 (ja) デリバレーションモデルベースの2パスのエンド・ツー・エンド音声認識
JP7590520B2 (ja) エンド・ツー・エンド音声認識における固有名詞認識
JP7741196B2 (ja) 効率的なストリーミング非リカレントオンデバイスエンドツーエンドモデル
JP7559288B1 (ja) カスケードエンコーダのためのトランスデューサベースのストリーミングの審議
JP2025111462A (ja) 自己アライメントを用いたストリーミングasrモデル遅延の短縮
JP7765622B2 (ja) Rnn-tとして実装された自動音声認識システムにおける音響表現およびテキスト表現の融合
JP2025510175A (ja) 共同言語識別を用いたエンドツーエンド多言語音声認識のストリーミング
JP7843855B2 (ja) 動的モデルサイズのための統合されたカスケードエンコーダasrモデル
JP7802924B2 (ja) 非自己回帰デコーディングによるストリーミングrnnトランスデューサの検討

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250115

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20250115

A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A801

Effective date: 20241218

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20241218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20251021

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20260109

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20260317

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260331

R150 Certificate of patent or registration of utility model

Ref document number: 7843855

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150