(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-27
(45)【発行日】2023-11-07
(54)【発明の名称】アテンションベースのジョイント音響およびテキストのオンデバイス・エンド・ツー・エンドモデル
(51)【国際特許分類】
G10L 15/06 20130101AFI20231030BHJP
G10L 15/16 20060101ALI20231030BHJP
G06N 3/0455 20230101ALI20231030BHJP
G06N 3/044 20230101ALI20231030BHJP
【FI】
G10L15/06 300Y
G10L15/16
G10L15/06 300D
G10L15/06 300Z
G06N3/0455
G06N3/044
(21)【出願番号】P 2022544371
(86)(22)【出願日】2021-01-21
(86)【国際出願番号】 US2021014468
(87)【国際公開番号】W WO2021150791
(87)【国際公開日】2021-07-29
【審査請求日】2022-07-21
(32)【優先日】2020-01-22
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100142907
【氏名又は名称】本田 淳
(72)【発明者】
【氏名】サイナス、ターラ エヌ.
(72)【発明者】
【氏名】パン、ルオミン
(72)【発明者】
【氏名】ワイス、ロン
(72)【発明者】
【氏名】ホー、ヤンチャン
(72)【発明者】
【氏名】チウ、チャン-チョン
(72)【発明者】
【氏名】ストローマン、トレバー
【審査官】菊地 陽一
(56)【参考文献】
【文献】国際公開第2019/116606(WO,A1)
【文献】国際公開第2018/168509(WO,A1)
【文献】Takaaki Hori et. al.,Cycle-consistency Training for End-to-end Speech Recognition,2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP),2019年05月17日,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8683307
(58)【調査した分野】(Int.Cl.,DB名)
G10L 15/06
G10L 15/16
G06N 3/0455
G06N 3/044
(57)【特許請求の範囲】
【請求項1】
データ処理ハードウェア(112)上での実行時に、前記データ処理ハードウェア(112)に動作を実行させるコンピュータが実施する方法(300)であって、前記動作は、
2パスストリーミングニューラルネットワークモデル(200)のリッスン・アテンド・スペル(以下LASとする)デコーダ(230)用のトレーニング例(203)を受信することと、
前記トレーニング例(203)が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを決定することと、
前記トレーニング例(203)が前記非ペアのテキストシーケンスに対応している場合、前記トレーニング例(203)の言語コンテキストベクトル(246)に関連付けられた対数確率に基づいてクロスエントロピー損失を決定することと、
決定された前記クロスエントロピー損失に基づいて、前記LASデコーダ(230)および前記言語コンテキストベクトル(246)を更新することと、を含
み、
前記対数確率が、音響コンテキストベクトル(244)から生成された第1の個々の対数確率および前記言語コンテキストベクトル(246)から生成された第2の個々の対数確率の補間によって定義される、コンピュータが実施する方法(300)。
【請求項2】
前記動作は、さらに、
前記2パスストリーミングニューラルネットワークモデル(200)の前記LASデコーダ(230)用の第2のトレーニング例(203)を受信することと、
前記第2のトレーニング例(203)が前記教師付き音声・テキストペアに対応していることを決定することと、
音響コンテキストベクトル(244)に関する対数確率に基づいて、前記LASデコーダ(230)および前記音響コンテキストベクトル(244)に関連付けられた音響コンテキストベクトルパラメータを更新することと、を含む、請求項1に記載のコンピュータが実施する方法(300)。
【請求項3】
前記トレーニング例(203)が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを決定することは、前記トレーニング例(203)が前記教師付き音声・テキストペアに対応しているか、または前記非ペアのテキストシーケンスに対応しているかを示すドメイン識別子を識別することを含む、請求項1または2に記載のコンピュータが実施する方法(300)。
【請求項4】
前記LASデコーダ(230)を更新することにより、ロングテールエンティティに関する前記2パスストリーミングニューラルネットワークモデル(200)の単語誤り率(WER)を低減させる、請求項1乃至3のいずれか一項に記載のコンピュータが実施する方法(300)。
【請求項5】
前記LASデコーダ(230)が、前記2パスストリーミングニューラルネットワークモデル(200)の第1のパス(206)を通じてリカレントニューラルネットワークトランスデューサ(RNN-T)デコーダ(220)によって生成された仮説に基づいてビームサーチモードで動作する、請求項1乃至
4のいずれか一項に記載のコンピュータが実施する方法(300)。
【請求項6】
前記動作は、エンコードされた音響フレーム(212)からエンコーダ(210)の特徴を要約するように構成されたアテンション機構(242)を用いて、前記トレーニング例(203)の前記言語コンテキストベクトル(246)を生成することをさらに含む、請求項1乃至
5のいずれか一項に記載のコンピュータが実施する方法(300)。
【請求項7】
システム(500)であって、
データ処理ハードウェア(112)と、
前記データ処理ハードウェア(112)と通信し、かつ命令を格納するメモリハードウェア(114)と、を備え、前記命令は、前記データ処理ハードウェア(112)上での実行時に、前記データ処理ハードウェア(112)に
2パスストリーミングニューラルネットワークモデル(200)のリッスン・アテンド・スペル(以下LASとする)デコーダ(230)用のトレーニング例(203)を受信することと、
前記トレーニング例(203)が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを決定することと、
前記トレーニング例(203)が前記非ペアのテキストシーケンスに対応している場合、前記トレーニング例(203)の言語コンテキストベクトル(246)に関連付けられた対数確率に基づいてクロスエントロピー損失を決定することと、
決定された前記クロスエントロピー損失に基づいて、前記LASデコーダ(230)および前記言語コンテキストベクトル(246)を更新することと、を含む動作を実行さ
せ、
前記対数確率が、音響コンテキストベクトル(244)から生成された第1の個々の対数確率および前記言語コンテキストベクトル(246)から生成された第2の個々の対数確率の補間によって定義される、システム(500)。
【請求項8】
前記動作は、さらに
前記2パスストリーミングニューラルネットワークモデル(200)の前記LASデコーダ(230)用の第2のトレーニング例(203)を受信することと、
前記第2のトレーニング例(203)が前記教師付き音声・テキストペアに対応していることを決定することと、
音響コンテキストベクトル(244)に関する対数確率に基づいて、前記LASデコーダ(230)および前記音響コンテキストベクトル(244)に関連付けられた音響コンテキストベクトルパラメータを更新することと、を含む、請求項
7に記載のシステム(500)。
【請求項9】
前記トレーニング例(203)が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを決定することは、前記トレーニング例(203)が前記教師付き音声・テキストペアに対応しているか、または前記非ペアのテキストシーケンスに対応しているかを示すドメイン識別子を識別することを含む、請求項
7または
8に記載のシステム(500)。
【請求項10】
前記LASデコーダ(230)を更新することにより、ロングテールエンティティに関する前記2パスストリーミングニューラルネットワークモデル(200)の単語誤り率(WER)を低減させる、請求項
7乃至
9のいずれか一項に記載のシステム(500)。
【請求項11】
前記LASデコーダ(230)が、前記2パスストリーミングニューラルネットワークモデル(200)の第1のパス(206)を通じてリカレントニューラルネットワークトランスデューサ(RNN-T)デコーダ(220)によって生成された仮説に基づいてビームサーチモードで動作する、請求項
7乃至
10のいずれか一項に記載のシステム(500)。
【請求項12】
前記動作は、エンコードされた音響フレーム(212)からエンコーダ(210)の特徴を要約するように構成されたアテンション機構(242)を用いて、前記トレーニング例(203)の前記言語コンテキストベクトル(246)を生成することをさらに含む、請求項
7乃至
11のいずれか一項に記載のシステム(500)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、2パスのエンド・ツー・エンドの音声認識に関する。
【背景技術】
【0002】
最新の自動音声認識(ASR:automated speech recognition)システムは、高品質(例えば、低い単語誤り率(WER:word error rate))のみならず、低遅延(例えば、ユーザが話してから文字起こし(transcription)が表示されるまでの短い遅延)を提供することに重点を置いている。さらに、現在ASRシステムを使用する場合、ASRシステムは、リアルタイムに対応するか、またはリアルタイムよりもさらに高速に対応するストリーミング方式で発話をデコードすることが要求されている。例えば、ユーザとの直接対話を行う携帯電話にASRシステムが搭載されている場合、ASRシステムを使用する携帯電話上のアプリケーションは、単語が話されるとすぐに画面上に表示されるように音声認識がストリーミングされることを必要とする場合がある。ここで、携帯電話のユーザは、遅延に対する許容度が低い可能性もある。この低い許容度により、音声認識は、ユーザエクスペリエンスに悪影響を与える可能性のある遅延および不正確性による影響を最小限に抑えるようにモバイルデバイス上で動作することを目指している。
【発明の概要】
【0003】
本開示の一態様は、データ処理ハードウェア上での実行時に、データ処理ハードウェアに動作を実行させるコンピュータが実施する方法を提供し、動作は、2パスストリーミングニューラルネットワークモデルのリッスン・アテンド・スペル(LAS:listen-attend-spell)デコーダのトレーニング例を受信すること、およびトレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを決定することを含む。動作は、トレーニング例が非ペアのテキストシーケンスに対応している場合、トレーニング例のコンテキストベクトルに関連付けられた対数確率(log probability)に基づいてクロスエントロピー損失(cross entropy loss)を決定すること、および決定されたクロスエントロピー損失に基づいてLASデコーダおよびコンテキストベクトルを更新することも含む。
【0004】
本開示の実施形態は、以下の任意の機能のうちの1つまたは複数を含み得る。いくつかの実施形態では、動作は、2パスストリーミングニューラルネットワークのLASデコーダに関する第2のトレーニング例を受信すること、第2のトレーニング例が教師付き音声・テキストペアに対応していると決定すること、および音響コンテキストベクトルに関する対数確率に基づいて、LASデコーダおよび音響コンテキストベクトルに関連付けられた音響コンテキストベクトルパラメータを更新することも含む。いくつかの例では、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを決定することは、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを示すドメイン識別子を識別することを含む。
【0005】
追加の実施形態では、LASデコーダを更新することにより、ロングテールエンティティに関する2パスストリーミングニューラルネットワークモデルの単語誤り率(WER)を低減させる。対数確率は、音響コンテキストベクトルから生成された第1の個々の対数確率およびテキストコンテキストベクトルから生成された第2の個々の対数確率の補間(interpolation)によって定義することができる。さらに、LASデコーダは、2パスストリーミングニューラルネットワークモデルの第1のパスを通じてリカレントニューラルネットワークトランスデューサ(RNN-T:recurrent neural network transducer)デコーダによって生成された仮説に基づいてビームサーチモードで動作し得る。いくつかの例では、動作は、エンコードされた音響フレームからエンコーダの特徴を要約する(summarize)ように構成されたアテンション機構を用いて、トレーニング例のコンテキストベクトルを生成することも含む。
【0006】
本開示の別の態様は、データ処理ハードウェア上での実行時に、データ処理ハードウェアに動作を実行させるコンピュータが実施する方法を提供し、動作は、2パスストリーミングニューラルネットワークモデルのリッスン・アテンド・スペル(LAS)デコーダのトレーニング例を受信すること、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのトレーニングデータに対応しているかを決定すること、トレーニング例が非ペアのトレーニングデータに対応している場合、非ペアのトレーニングデータの欠落部分を生成して、生成音声・テキストペアを形成すること、生成音声・テキストペアに基づいて、LASデコーダおよび非ペアのデータに関連付けられたコンテキストベクトルを更新することを含む。
【0007】
この態様は、以下の任意の特徴のうちの1つまたは複数を含み得る。いくつかの実施形態では、動作は、生成音声・テキストペアに基づいて音響コンテキストベクトルを決定すること、および音響コンテキストベクトルから生成された第1の個々の対数確率およびテキストコンテキストベクトルから生成された第2の個々の対数確率の補間を決定することも含む。これらの実施形態では、LASデコーダを更新することは、第1の個々の対数確率および第2の個々の対数確率の補間にさらに基づく。
【0008】
いくつかの例では、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのトレーニングデータに対応しているかを決定することは、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのトレーニングデータに対応しているかを示すドメイン識別子を識別することを含む。さらに、LASデコーダを更新することにより、ロングテールエンティティに関する2パスストリーミングニューラルネットワークモデルの単語誤り率(WER)を低減させ得る。いくつかの実施形態では、動作は、エンコードされた音響フレームからエンコーダの特徴を要約するように構成されたアテンション機構を用いて、トレーニング例のコンテキストベクトルを生成することも含む。
【0009】
本開示のさらに別の態様は、データ処理ハードウェアと、データ処理ハードウェアと通信し、かつ命令を格納するメモリハードウェアとを備えるシステムを開示し、命令は、データ処理ハードウェアによる実行時に、データ処理ハードウェアに動作を実行させ、動作は、2パスストリーミングニューラルネットワークモデルのリッスン・アテンド・スペル(LAS)デコーダに関するトレーニング例を受信すること、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを決定することを含む。動作は、トレーニング例が非ペアのテキストシーケンスに対応している場合、トレーニング例のコンテキストベクトルに関連付けられた対数確率に基づいてクロスエントロピー損失を決定すること、および決定されたクロスエントロピー損失に基づいてLASデコーダおよびコンテキストベクトルを更新することも含む。
【0010】
この態様は、以下の任意の特徴のうちの1つまたは複数を含み得る。いくつかの実施形態では、動作は、2パスストリーミングニューラルネットワークのLASデコーダの第2のトレーニング例を受信すること、第2のトレーニング例が教師付き音声・テキストペアに対応することを決定すること、および音響コンテキストベクトルの対数確率に基づいてLASデコーダおよび音響コンテキストベクトルに関連付けられた音響コンテキストベクトルパラメータを更新することも含む。いくつかの例では、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを決定することは、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを示すドメイン識別子を識別することを含む。
【0011】
追加の実施形態では、LASデコーダを更新することにより、ロングテールエンティティに関する2パスストリーミングニューラルネットワークモデルの単語誤り率(WER)を低減させる。対数確率は、音響コンテキストベクトルから生成された第1の個々の対数確率およびテキストコンテキストベクトルから生成された第2の個々の対数確率の補間によって定義することができる。さらに、LASデコーダは、2パスストリーミングニューラルネットワークモデルの第1のパスを通じてリカレントニューラルネットワークトランスデューサ(RNN-T)デコーダによって生成された仮説に基づいてビームサーチモードで動作し得る。いくつかの例では、動作は、エンコードされた音響フレームからエンコーダの特徴を要約するように構成されたアテンション機構を用いて、トレーニング例のコンテキストベクトルを生成することも含む。
【0012】
本開示のさらに別の態様は、データ処理ハードウェアと、データ処理ハードウェアと通信し、かつ命令を格納するメモリハードウェアとを備えるシステムを提供し、命令は、データ処理ハードウェアによる実行時に、データ処理ハードウェアに動作を実行させ、動作は、2パスストリーミングニューラルネットワークモデルのリッスン・アテンド・スペル(LAS)デコーダ用のトレーニング例の受信すること、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのトレーニングデータに対応しているかを決定すること、トレーニング例が非ペアのトレーニングデータに対応している場合、非ペアのトレーニングデータの欠落部分を生成して、生成音声・テキストペア形成すること、および生成音声・テキストペアに基づいてLASデコーダおよび非ペアのデータに関連付けられたコンテキストベクトルを更新することを含む。
【0013】
この態様は、以下の任意の特徴のうちの1つまたは複数を含み得る。いくつかの実施形態では、動作は、生成音声・テキストペアに基づいて音響コンテキストベクトルを決定すること、および音響コンテキストベクトルから生成された第1の個々の対数確率およびテキストコンテキストベクトルから生成された第2の個々の対数確率の補間を決定することも含む。これらの実施形態では、LASデコーダを更新することは、第1の個々の対数確率および第2の個々の対数確率の補間にさらに基づく。
【0014】
いくつかの例では、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのトレーニングデータに対応しているかを決定することは、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのトレーニングデータに対応しているかを示すドメイン識別子を識別することを含む。さらに、LASデコーダを更新することにより、ロングテールエンティティに関する2パスストリーミングニューラルネットワークモデルの単語誤り率(WER)を低減させ得る。いくつかの実施形態では、動作は、エンコードされた音響フレームからエンコーダの特徴を要約するように構成されたアテンション機構を用いて、トレーニング例のコンテキストベクトルを生成することも含む。
【0015】
本開示の1つまたは複数の実施の詳細は、添付の図面および以下の詳細な説明に記載されている。他の態様、特徴、および利点は、詳細な説明および図面、ならびに特許請求の範囲から明らかになる。
【図面の簡単な説明】
【0016】
【
図1A】ジョイント音響およびテキストモデルを備えた2パスアーキテクチャを使用した例示的な発話環境の概略図である。
【
図1B】ジョイント音響およびテキストモデルを備えた2パスアーキテクチャを使用した例示的な発話環境の概略図である。
【
図2A】音声認識用の従来の例示的な2パスアーキテクチャの概略図である。
【
図2B】音声認識のために
図2Aの2パスアーキテクチャに組み込まれた例示的なジョイント音響およびテキストモデルの概略図である。
【
図3】ジョイント音響およびテキストモデルを組み込んだ
図2Bの2パスアーキテクチャを実施する方法の動作のための例示的な構成のフローチャートである。
【
図4】ジョイント音響およびテキストモデルを組み込んだ
図2Bの2パスアーキテクチャを実施する方法の動作のための例示的な構成のフローチャートである。
【
図5】本明細書で説明されるシステムおよび方法を実施するために使用され得る例示的なコンピューティングデバイスの概略図である。
【発明を実施するための形態】
【0017】
様々な図面の同様の参照記号は、同様の構成要素を示す。
音声認識は、モバイル環境の非拘束性および機敏性の要求を満たすために進化し続けている。自動音声認識システム(ASR)の品質を向上させるために、新たな音声認識アーキテクチャまたは既存のアーキテクチャの改良が引き続き開発されている。例えば、音声認識は、当初、各モデルが専用の目的を持つ複数のモデルを採用していた。例えば、ASRシステムは、音響モデル(AM)、発音モデル(PM)、および言語モデル(LM)を含んでいた。音響モデルは、音声のセグメント(即ち、音声のフレーム)を音素(phonemes)にマッピングした。発音モデルは、これらの音素をつなぎ合わせて単語を形成し、言語モデルは、所与のフレーズの可能性(即ち、単語のシーケンスの確率)を表現するために使用された。これらの個々のモデルは連携して機能したが、各モデルは個別にトレーニングされ、多くの場合、異なるデータセットに対して手動で設計された。
【0018】
個別のモデルのアプローチにより、特に所与のモデルに対するトレーニングコーパス(即ち、トレーニングデータの集合体)がモデルの有効性に対応している場合に、音声認識システムの精度をかなり向上させることが可能になったが、個別のモデルを個別にトレーニングする必要性により、それ自体が複雑になるため、統合モデルを備えたアーキテクチャが採用された。これらの統合モデルは、単一のニューラルネットワークを使用して、音声波形(即ち、入力シーケンス)を出力センテンス(即ち、出力シーケンス)に直接マッピングしようとするものである。これにより、任意の音声特徴のシーケンスが与えられると、単語(または書記素(graphemes))のシーケンスが生成されるシーケンス・ツー・シーケンスのアプローチが実現された。シーケンス・ツー・シーケンスモデルの例には、「アテンションベース」モデルおよび「リッスン・アテンド・スペル」(LAS)モデルが含まれる。LASモデルは、リスナー(listener)コンポーネント、アテンダ(attender)コンポーネント、およびスペラー(speller)コンポーネントを使用して、音声の発話を文字に変換する。ここで、リスナーは、音声入力(例えば、音声入力の時間周波数表現)を受信し、音声入力をより高レベルの特徴表現にマッピングするリカレントニューラルネットワーク(RNN:recurrent neural network)エンコーダである。アテンダは、より高レベルの特徴にアテンションを向けて、入力特徴と予測されるサブワード単位(例えば、書記素または単語ピース)との間のアラインメントを学習する。スペラーは、アテンションベースのRNNデコーダであり、仮説単語のセットに対して確率分布を生成することによって、入力から文字シーケンスを生成する。統合化された構造により、モデルの全てのコンポーネントを単一のエンド・ツー・エンド(E2E:end-to-end)ニューラルネットワークとしてジョイントでトレーニングさせることができる。ここで、E2Eモデルとは、アーキテクチャが全てニューラルネットワークで構成されているモデルを指す。完全なニューラルネットワークは、外部コンポーネントおよび/または手動で設計したコンポーネント(例えば、有限状態トランスデューサ、辞書(lexicon)、またはテキスト正規化モジュール)なしで機能する。さらに、E2Eモデルをトレーニングする場合、これらのモデルは通常、決定木からのブートストラップ、または別のシステムからの時間調整を必要としない。
【0019】
初期のE2Eモデルは正確であり、個別にトレーニングされたモデルよりもトレーニングが改善されたが、LASモデルなどのこれらのE2Eモデルは、出力テキストを生成する前に入力シーケンス全体を確認することによって機能していたため、入力が受信されたときに出力をストリーミングすることはできなかった。ストリーミング機能がないと、LASモデルは、リアルタイムの音声文字起こし(voice transcription)を実行することができない。この欠陥のため、遅延に敏感な、かつ/またはリアルタイムの音声文字起こしを必要とする音声アプリケーションに対してLASモデルを搭載すると、問題が発生する可能性がある。このため、リアルタイムアプリケーション(例えば、リアルタイム通信アプリケーション)に依存することが多いモバイル技術(例えば、携帯電話)にとって、LASモデルだけでは、理想的なモデルではない。
【0020】
さらに、音響モデル、発音モデル、および言語モデル、またはそれらが共に構成されているモデルを有する音声認識システムは、これらのモデルに関連する比較的大規模のサーチグラフをサーチする必要があるデコーダに依存し得る。大規模のサーチグラフでは、この種の音声認識システムを完全オンデバイスでホストするのに有利ではない。ここで、音声認識システムが「オンデバイス(on-device)」でホストされている場合、音声入力を受信するデバイスは、そのプロセッサ(単数または複数)を使用して音声認識システムの機能を実行する。例えば、音声認識システムが完全にオンデバイスでホストされている場合、デバイスのプロセッサは、音声認識システムの機能を実行するために、デバイス外のコンピューティングリソースと連携する必要はない。完全にオンデバイスではない音声認識を実行するデバイスは、音声認識システムの少なくとも一部の機能を実行するために、リモートコンピューティング(例えば、リモートコンピューティングシステムまたはクラウドコンピューティング)、従ってオンライン接続に依存している。例えば、音声認識システムは、サーバベースのモデルとのネットワーク接続を使用して、大規模なサーチグラフによりデコーディングを実行する。
【0021】
残念ながら、リモート接続に依存している状態では、音声認識システムは、遅延の問題および/または通信ネットワークに固有の信頼性の低さに対して脆弱になる。これらの問題を回避することによって音声認識の有用性を向上させるために、音声認識システムは、リカレントニューラルネットワークトランスデューサ(RNN-T)として知られるシーケンス・ツー・シーケンス(sequence-to-sequence)モデルの形態に再び進化した。RNN-Tはアテンション機構を採用しておらず、かつ出力(例えば、センテンス)を生成するためにシーケンス全体(例えば、音声波形)を処理する必要がある他のシーケンス・ツー・シーケンスモデルとは異なり、RNN-Tは、入力サンプルを連続的に処理して、出力シンボルをストリーミングするという、リアルタイム通信にとって特に魅力的な特徴を有している。例えば、RNN-Tを使用した音声認識では、話した通りに文字が1つずつ出力され得る。ここで、RNN-Tは、モデルによって予測されたシンボルを自身にフィードバックするフィードバックループを使用して、次のシンボルを予測する。RNN-Tのデコーディングは、大規模なデコーダグラフではなく、単一のニューラルネットワークを介したビームサーチを含むため、RNN-Tは、サーバベースの音声認識モデルの数分の1のサイズにスケーリングすることができる。サイズの縮小により、RNN-Tは完全にオンデバイスで搭載され、オフラインで(即ち、ネットワーク接続なしで)動作させることができるため、通信ネットワークの信頼性の問題を回避することができる。
【0022】
音声認識システムが低遅延で動作することに加えて、音声認識システムには、音声を正確に認識することが求められる。音声認識を実行するモデルの場合、モデルの精度を定義するメトリックとして、単語誤り率(WER)が用いられることが多い。WERは、実際に話された単語の数と比較して、どれだけ単語が変更されたかを示す尺度である。一般に、これらの単語の変更は、置換(即ち、単語が置き換えられる場合)、挿入(即ち、単語が追加される場合)、および/または削除(即ち、単語が省略される場合)を指す。例えば、話者は「カー(car)」と言っているが、ASRシステムは、「カー(car)」という単語を「バー(bar)」と文字起こしする。これは、音素(phonetic)の類似性による置換の例である。他のASRシステムと比較してASRシステムの能力を測定する場合、WERは、別のシステムまたはあるベースラインと比較して、改善または品質保証能力の尺度を示すことができる。
【0023】
RNN-Tモデルは、オンデバイスの音声認識に関する有力な候補モデルとして有望であることを示したが、RNN-Tモデルのみでは、品質(例えば、音声認識精度)の観点で、大規模な最先端の従来モデル(例えば、別個のAM、PM、およびLMを備えたサーバベースのモデル)に遅れをとっている。しかし、非ストリーミングE2E,LASモデルは、大規模な最先端の従来モデルに匹敵する音声認識品質を備えている。非ストリーミングE2E LASモデルの品質を活用するために、RNN-Tネットワークの第1のパスのコンポーネントと、それに続くLASネットワークの第2のパスのコンポーネントとを含む2パス音声認識システム(例えば、
図2Aに示す)が開発された。この設計により、2パスモデルは、低遅延のRNN-Tモデルのストリーミング特性の恩恵を受け、LASネットワークを組み込んだ第2のパスを通じてRNN-Tモデルの精度を向上させている。LASネットワークは、RNN-Tモデルのみと比較して遅延を増加させるが、遅延の増加は、適度にわずかであり、かつオンデバイス動作に関する遅延制約に適合している。精度に関しては、2パスモデルは、RNN-T単独と比較した場合に17~22%のWER低減を達成し、大規模な従来モデルと比較した場合に同程度のWERを有している。
【0024】
残念ながら、RNN-Tネットワークの第1のパスとLASネットワークの第2のパスとを備えたこの2パスモデルには、いくつかの欠点がある。例えば、この種の2パスモデルは、教師付き音声・テキストペアでのみトレーニングされるという問題がある。教師付き音声・テキストペアのみでトレーニングを行うと、2パスモデルは、稀少な単語(rare words)またはロングテールエンティティ(long tail entities)に対してパフォーマンスが低下する。ロングテールエンティティとは、テキストコーパスにおいて比較的少ない(即ち、周波数が低い)インスタンスを有する多数のエンティティを指す。言い換えれば、一般的ではない稀少な単語は、それゆえ、小規模なトレーニングデータセットでも本質的に一般的ではない。2パスモデルなどのストリーミングE2Eモデルをトレーニングする場合、トレーニングは、従来の言語モデル(LM)のトレーニングに使用されるテキストデータのサイズのごく一部である従来の音響モデル(AM)用のトレーニングセットを使用して行われる。稀少な単語に対する2パスモデルのパフォーマンスを向上させるために提案された技術があるが、提案された技術の多くは、モデルサイズ(例えば、リカレントニューラルネットワーク言語モデル(RNN-LM)を音声認識システムに組み込む)、トレーニング時間(例えば、教師なし音声・テキストペアを使用したトレーニング)、および/または推論コストを大幅に増加させる。
【0025】
稀少な単語に対する2パスモデルの有効性を高めるために、本明細書の実施形態は、2パスモデルアーキテクチャにジョイント音響・テキストデコーダ(JATD:joint acoustic and text decoder)を組み込むことに向けられている。JATD機能は、トレーニング例が教師付き音声・テキストペアに対応しているか、非ペアのデータ(例えば、テキストのみのサンプルまたは音声のみのサンプル)から生成された音声・テキスト例に対応しているかを示すドメイン識別子(ID)を提供する。非ペアのデータの場合、ペアの欠落している半分は、テキスト読み上げ(TTS:text-to-speech)システムを使用して欠落している音声部分を生成するか、ASRシステムを使用して欠落しているテキスト部分を生成することで合成され得る。トレーニング中、エンコーダは、エンコーダがペアの例を受信したときに、デコーダに供給される音響コンテキストベクトルを生成する。ここで、音響コンテキストベクトルの生成の成功によって、ペアのデータを示すドメインIDが表されるか、または形成される。一方、デコーダが非ペアの例を受ける場合、エンコーダネットワークを迂回させるために、固定ではあるが学習可能なコンテキストベクトルドメインIDが使用される。これらの例は両方とも、デコーダでのトレーニングに使用されるため、モデルサイズを大きくすることなく、ペアのデータと非ペアのデータの両方に対してデコーダを同時にトレーニングさせることができる。さらに、入力ソースに基づいてエンコーダへの入力のパラメータのみを変更する、全てのモードにわたってアテンションおよびデコーダのパラメータを共有するアプローチの代わりに、このJATDアプローチは、デコーダのパラメータのみを共有し、かつ異なるアテンションコンテキストパラメータを使用する。様々な固有名詞および稀少な単語のテストセットにおいて、JATDモデルは、ペアのデータのみでトレーニングされた2パスアーキテクチャと比較して、WERを3~10%相対的に削減することを達成した。
【0026】
図1Aおよび
図1Bは、発話環境100の例である。発話環境100において、ユーザデバイス110などのコンピューティングデバイスと対話するユーザの10の方法は、音声入力を介するものであり得る。ユーザデバイス110(一般にデバイス110とも呼ばれる)は、発話対応環境100内の1人または複数人のユーザ10からの音(例えば、ストリーミング音声データ)をキャプチャするように構成されている。ここで、ストリーミング音声データ12は、デバイス110によってキャプチャされる可聴の問い合わせ(クエリ)、デバイス110に対する命令(コマンド)、または可聴の会話(コミュニケーション)としての役割を持つ、ユーザ10によって話された発話を指すことができる。デバイス110の発話対応システムは、問い合わせに応答することによって、かつ/またはコマンドを実行させることによって、問い合わせまたは命令を処理し得る。
【0027】
ユーザデバイス110は、ユーザ10に関連付けられ、かつ音声データ12を受信することが可能な任意のコンピューティングデバイスに対応し得る。ユーザデバイス110のいくつかの例は、モバイルデバイス(例えば、携帯電話、タブレット、ラップトップなど)、コンピュータ、ウェアラブルデバイス(例えば、スマートウォッチ)、スマート家電、モノのインターネット(IoT)デバイス、スマートスピーカなどを含むが、これらに限定されない。ユーザデバイス110は、データ処理ハードウェア112と、データ処理ハードウェア112と通信し、かつ命令を格納するメモリハードウェア114とを含み、命令は、データ処理ハードウェア112による実行時に、データ処理ハードウェア112に1つまたは複数の動作を実行させる。ユーザデバイス110は、発話対応システム100内で話された発話12をキャプチャして電気信号に変換するための音声キャプチャデバイス(例えば、マイクロフォン)116、116aと、可聴音声信号を(例えば、デバイス110からの出力音声データとして)伝達するための発話出力デバイス(例えばスピーカの)116、116bとを有する音声サブシステムをさらに含む。図示される例では、ユーザデバイス110は単一の音声キャプチャデバイス116aを実装しているが、ユーザデバイス110は、本開示の範囲から逸脱することなく、音声キャプチャデバイス116aのアレイを実装してもよく、それにより、アレイ内の1つまたは複数のキャプチャデバイス116aは、ユーザデバイス110上に物理的に存在していないが、音声サブシステム116と通信状態になり得る。(例えば、ハードウェア112、114を使用する)ユーザデバイス110は、音声認識器200を使用して、ストリーミング音声データ12に対して音声認識処理を実行するようにさらに構成される。いくつかの例では、音声キャプチャデバイス116aを含むユーザデバイス110の音声サブシステム116は、音声データ12(例えば、話された発話)を受信し、音声データ12を音声認識器200と互換性のあるデジタル形式に変換するように構成される。デジタル形式は、メルフレーム(mel frames)などの音響フレーム(例えば、パラメータ化された音響フレーム)に対応し得る。例えば、パラメータ化された音響フレームは、ログメルフィルタバンク(log-mel filterbank)のエネルギーに対応する。
【0028】
図1Aなどのいくつかの例では、ユーザ10は、音声認識器200を使用するユーザデバイス110のプログラムまたはアプリケーション118と対話する。例えば、
図1Aは、ユーザ10が自動アシスタントアプリケーションと通信している状態を示している。この例では、ユーザ10が自動アシスタントに「今夜のコンサートは何時から?(What time is the concert tonight?)」と尋ねている。ユーザ10からのこの質問は、音声キャプチャデバイス116aによってキャプチャされ、ユーザデバイス110の音声サブシステム116によって処理される話された発話12である。この例では、ユーザデバイス110の音声認識器200は、「今夜のコンサートは何時から」という音声入力202を(例えば、音響フレームとして)受信し、音声入力202を文字起こし204(例えば、「今夜のコンサートは何時から?」というテキスト表現)に転写する。ここで、アプリケーション118の自動アシスタントは、自然言語処理を使用して、ユーザ10によって投げかけられた質問に対して回答し得る。自然言語処理とは、一般に、書き言葉(例えば、文字起こし204)を解釈し、書き言葉が何らかのアクションを促しているかどうかを判断するプロセスを指す。この例では、自動アシスタントは、自然言語処理を使用して、ユーザ10からの質問がユーザのスケジュール、より具体的にはユーザのスケジュールでのコンサートに関するものであることを認識する。自動アシスタントは、自然言語処理でこれらの詳細を認識することによって、ユーザの問い合わせに対して、「今夜のコンサートは午後8時30分に開場です(Doors open at 8:30 pm for the concert tonight)」という回答を返す。いくつかの構成では、自然言語処理は、ユーザデバイス110のデータ処理ハードウェア112と通信するリモートシステム上で行われ得る。
【0029】
図1Bは、音声認識器200を用いた音声認識の別の例である。この例では、ユーザデバイス110に関連付けられたユーザ10は、通信アプリケーション118を用いてジェーン・ドゥという名前の友人と通信している。ここで、テッドという名前のユーザ10は、音声認識器200に自身の音声入力を文字起こしさせることによって、ジェーンと通信する。音声キャプチャデバイス116は、これらの音声入力をキャプチャし、それらを音声認識器200にデジタル形式(例えば、音響フレーム)で伝達する。音声認識器200は、これらの音響フレームを、通信アプリケーション118を介してジェーンに送信されるテキストに文字起こしする。この種類のアプリケーション118はテキストを介して通信するため、音声認識器200からの文字起こし204は、さらなる処理(例えば、自然言語処理)なしでジェーンに送信され得る。
【0030】
図2Aおよび
図2Bなどのいくつかの例では、音声認識器200は2パスアーキテクチャで構成されている。一般的に、音声認識器200の2パスアーキテクチャは、少なくとも1つの共有エンコーダ210、RNN-Tデコーダ220、およびLASデコーダ230を含む。ここで、
図2Aは従来の2パスアーキテクチャを示し、
図2BはJATDモデル240を組み込んだ拡張2パスアーキテクチャを示す。これらの図からわかるように、
図2Bの拡張2パスアーキテクチャは、
図2Aの基本的な2パス構造に基づいている。2パスデコーディングにおいて、第2のパス208(例えば、LASデコーダ230として示される)は、第1のパス206(例えば、RNN-Tデコーダ220として示される)からの初期出力を格子再スコアリング(lattice rescoring)またはnベスト再ランク付け(n-best re-ranking)などの技術を用いて改善し得る。言い換えれば、RNN-Tデコーダ220はストリーミング予測を生成し、LASデコーダ230は予測を確定する。ここで、具体的には、LASデコーダ230は、RNN-Tデコーダ220からのストリーミングされた仮説y
R222を再スコアリングする。一般に、LASデコーダ230は、RNN-Tデコーダ220からストリーミングされた仮説y
R222を再スコアリングする再スコアリングモードで機能すると説明されているが、LASデコーダ230は、設計またはその他の要因(例えば、発話の長さ)に応じてビームサーチモード(beam search mode)などの異なるモードで動作することも可能である。
【0031】
少なくとも1つのエンコーダ210は、ストリーミング音声データ12に対応する音響フレームを音声入力202として受信するように構成される。音響フレームは、音声サブシステム116によってパラメータ化された音響フレーム(例えば、メルフレームおよび/またはスペクトルフレーム)に事前に処理され得る。いくつかの実施形態では、パラメータ化された音響フレームは、ログメル特徴(log-mel features)を有するログメルフィルタバンクエネルギーに対応する。例えば、音声サブシステム116によって出力され、エンコーダ210に入力されるパラメータ化された入力音響フレームは、x=(x1,...,xT)として表すことができ、ここで、
【0032】
【数1】
は、ログメルフィルタバンクエネルギーであり、Tはxのフレーム数を示し、dはログメル特徴の数を表す。いくつかの例では、各パラメータ化された音響フレームは、短いシフトウィンドウ(例えば、32ミリ秒、10ミリ秒ごとにシフト)内で計算された128次元のログメル特徴を含む。各特徴は、前のフレーム(例えば、3つ前のフレーム)と重ねられて、より高次元のベクトル(例えば、3つ前のフレームを使用した512次元のベクトル)が形成されてもよい。次に、ベクトルを形成する特徴は、(例えば、30ミリ秒のフレームレートに)ダウンサンプリングされ得る。エンコーダ210は、音声入力202に基づいて、エンコーディングeを生成するように構成される。例えば、エンコーダ210は、エンコードされた音響フレーム(例えば、エンコードされたメルフレームまたは音響埋め込み(acoustic embeddings))を生成する。
【0033】
エンコーダ210の構造は、異なる方法で実施することができるが、いくつかの実施形態では、エンコーダ210は、長・短期記憶(LSTM:long-short term memory)ニューラルネットワークである。例えば、エンコーダ210は、8個のLSTM層を含む。ここで、各層は、2048個の隠れユニットと、それに続く640次元の射影層(projection layer)とを含む。いくつかの例では、エンコーダ210の第2のLSTM層の後に、短縮係数(reduction factor)N=2を有する時間短縮層(time-reduction layer)が挿入される。
【0034】
いくつかの構成では、エンコーダ210は共有エンコーダネットワークである。言い換えれば、各パスネットワーク206、208がそれ自体の別個のエンコーダを有する代わりに、各パス206、208は単一のエンコーダ210を共有する。エンコーダを共有することによって、2パスアーキテクチャを使用するASR音声認識器200は、そのモデルサイズおよび/またはその計算コストを削減することができる。ここで、モデルサイズの縮小は、音声認識器200が完全にオンデバイス(on-device)で良好に機能することを可能にするのに役立ち得る。
【0035】
いくつかの例では、
図2Aの音声認識器200はまた、LASデコーダ230の第2のパス208に適したものとなるようにエンコーダ210の出力212を適応させるための音響エンコーダ250などの追加のエンコーダを含む。音響エンコーダ250は、出力212をエンコードされた出力252にさらにエンコードするように構成される。いくつかの実施形態では、音響エンコーダ250は、エンコーダ210からの出力212をさらにエンコードするLSTMエンコーダ(例えば、2層LSTMエンコーダ)である。追加のエンコーダを含むことによって、エンコーダ210は、パス206、208の間の共有エンコーダとして依然として保持され得る。
【0036】
第1のパス206を通じて、エンコーダ210は、音声入力202の各音響フレームを受信して、出力212(例えば、音響フレームのエンコーディングeとして示される)を生成する。RNN-Tデコーダ220は、各フレームの出力212を受信して、仮説yRとして示される出力222を各タイムステップにおいてストリーミング方式で生成する。いくつかの実施形態では、RNN-Tデコーダ220は、予測ネットワークおよび結合ネットワークを含む。ここで、予測ネットワークは、2048個の隠れユニットおよび640次元の射影(層ごと)の2つのLSTM層、並びに128ユニットの埋め込み層を有し得る。エンコーダ210および予測ネットワークの出力212は、ソフトマックス予測層を含む結合ネットワークに供給され得る。いくつかの例では、RNN-Tデコーダ220の結合ネットワークは、640個の隠れユニットと、それに続く4096個の大文字と小文字が混在する単語ピースを予測するソフトマックス層とを含む。
【0037】
図2Aの2パスモデルにおいて、第2のパス208を通じて、LASデコーダ230は、各フレームに関してエンコーダ210からの出力212(またはエンコードされた出力252)を受信し、仮説y
Lとして指定された出力232を生成する。LASデコーダ230がビームサーチモードで動作する場合、LASデコーダ230は、出力212(または出力252)のみから出力232を生成し、RNN-Tデコーダ220の出力222を無視する。LASデコーダ230が再スコアリングモードで動作する場合、LASデコーダ230は、RNN-Tデコーダ220からトップK仮説を取得し、次いで、LASデコーダ230は、出力212(または出力252)にアテンション(attention)しつつ、教師強制モードで各シーケンスに対して動作して、スコアを計算する。例えば、スコアは、シーケンスの対数確率とアテンションカバレッジペナルティ(attention coverage penalty)とを組み合わせたものである。LASデコーダ230は、最も高いスコアを有するシーケンスを出力232として選択する。ここで、再スコアリングモードでは、LASデコーダ230は、出力212(または出力252)にアテンションを向けるために、(例えば、4つのヘッドを有する)マルチヘッデドアテンション(multi-headed attention)を含み得る。さらに、LASデコーダ230は、予測のためのソフトマックス層を備えた2層LASデコーダ230であり得る。例えば、LASデコーダ230の各層は、2048個の隠れユニットと、それに続く640次元の射影とを有する。ソフトマックス層は、RNN-Tデコーダ220のソフトマックス層から同じ大文字と小文字が混在する単語ピースを予測するために、4,096次元を含み得る。
【0038】
いくつかの実施形態では、
図2Aの2パスモデルのトレーニングは2段階で行われる。第1段階の間に、エンコーダ210およびRNN-Tデコーダ220は、
【0039】
【数2】
を最大化するようにトレーニングされる。第2段階では、エンコーダ210が固定され、LASデコーダ230が
【0040】
【数3】
を最大化するようにトレーニングされる。2パスモデルが追加のエンコーダ250を含む場合、追加のエンコーダ250は、エンコーダ210が固定されている間に、第2段階で
【0041】
【0042】
図2Bを参照すると、第1のパス206は同じままであるが、第2のパス208は、LASデコーダ230でデコーディングする前に、アテンション機構242を含むJATDモデル240を使用する。ここで、アテンション機構242は、エンコードされた出力212(または出力252)を受信して、各出力ステップに対するエンコードされた特徴を要約するコンテキストベクトルc、c
A、c
Lを決定する。アテンション機構242は、入力トレーニングデータの種類に応じて、LASデコーダ230に渡されるコンテキストベクトルcを変更するように構成される。言い換えれば、アテンション機構242は、入力トレーニングデータ(即ち、特定のトレーニング例)が教師付き音声・テキストペアである場合に音響コンテキストベクトル(acoustic context vector) 244、c
Aを生成し、入力トレーニングデータ(例えば、トレーニング例203)が非ペアのテキストシーケンスである場合に固定言語コンテキストベクトル(fixed linguistic context vector)246、c
Lを生成する。JATDモデル240がLASデコーダ230と統合されている場合、JATDモデル240は、ペアのデータおよび/または非ペアのデータを利用するようにLASデコーダ230の推論およびトレーニングの両方を変更する。
【0043】
推論の間に、LASデコーダ230は、以下の式に基づいて対数確率(log probabilities)を計算する。例えば、音響入力を用いて、音響コンテキストベクトルcaは、各デコーダステップuにおけるLASデコーダ230に関する対数確率を決定する。ここで、
【0044】
【数5】
は、推論の間に以前にデコードされた単一の仮説のラベルを示す。同様に、テキストベースの入力を用いて、言語コンテキストベクトルc
Lは、各デコーダステップにおけるLASデコーダ230に関する対数確率を決定する。これらの両方の状況では、対数確率は、音声機能が完全に無視されるように、以前のラベルのみに基づいてラベルを予測する。言い換えれば、音響コンテキストベクトルまたは言語コンテキストベクトルcのいずれかから対数確率を生成することにより、確率は、一般に音響スコアおよび/または言語スコアを示す。従って、各デコーダの時間ステップは、混合重みλ(例えば、混合重みは、音響サンプルと言語サンプルの比率に対応する)を使用した音響ベースの対数確率および言語ベースの対数確率の補間として表すことができる。いくつかの例では、この推論は、LASデコーダ230が再スコアモードまたはビームサーチモードで動作するときに適用される。様々なデータソースとテストセットを使用した反復に基づいて、0.05前後の混合重みが推論に最適であり得る。
【0045】
【数6】
トレーニング中、RNN-Tデコーダ220は、従来の2パスアーキテクチャと同じ方法でトレーニングする。言い換えれば、RNN-Tデコーダ220は、教師付き音声・テキストペアデータでトレーニングする。しかし、LASデコーダ230をトレーニングする際、複数のトレーニング戦略が使用され得る。例えば、第1のトレーニング戦略は個別のトレーニング戦略であり、第2のトレーニング戦略はジョイントトレーニング戦略である。個別のトレーニング戦略において、音声・テキストペアが使用される場合、LASデコーダ230は、音響コンテキストベクトルc
a、244を使用して式(2a)の決定に基づいて更新する。ここで、LASデコーダ230の更新に加えて、式(2a)の解は、音響コンテキストベクトルパラメータを更新する。一方、非ペアのデータが使用される場合、トレーニング損失は式(2b)から計算されたクロスエントロピー損失に減少する。ここで、c
Lは、トレーニング可能なコンテキストベクトルである。この状況では、LASデコーダ230およびコンテキストベクトルのみが更新される。
【0046】
【数7】
ジョイントトレーニング戦略を使用して、いくつかの実施形態では、音響および言語コンテキストベクトル244、246から生成された対数確率の補間は、推論と同様の方法でトレーニング損失を定義する。ここでは、教師付き音声データはx
aとして表される。教師付き音声・テキストペアを含む例では、LASデコーダ230および音響アテンションパラメータは、
【0047】
【数8】
の補間に基づいて更新される。非ペアのデータの場合、適切な対数確率を決定するための音響コンテキストベクトルc
aが不足している。これが発生した場合、2つの潜在的な選択肢がある。第一に、従来のモデルは、実際の音声を取得した後、仮説テキスト(例えば、テキストの文字起こし)を生成し得る。ここで、文字起こしされた音声の使用は、モデルの蒸留(model distillation)に似ている。第2のアプローチでは、第1のアプローチを逆にして、TTSのようなシステムが実際のテキストから音響信号を合成するようにする。これらのアプローチを使用すると、非ペアのデータは、音響コンテキストベクトルが不足することはなくなる。従って、解決された音響コンテキストベクトルc
aを用いて、音声認識器200は、非ペアのデータに対する対数確率を補間することができる。この補間に基づいて、音声認識器200は、LASデコーダ230および固定コンテキストベクトルパラメータを更新する。いくつかの実施形態では、音声認識器200は、アテンション機構242の音響アテンションパラメータが偏らないように混合重みλを調整する。
【0048】
【数9】
図3は、自動音声認識(例えば、ASR)を実行する方法300のための例示的な動作の構成のフローチャートである。動作302において、方法300は、2パスストリーミングニューラルネットワークモデルのLASデコーダ230用のトレーニング例を受信する。動作304において、方法300は、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのテキストシーケンスに対応しているかを決定する。トレーニング例が非ペアのテキストシーケンスに対応している場合、動作306において、方法300は、トレーニング例のコンテキストベクトルcに関連付けられた対数確率に基づいてクロスエントロピー損失を決定する。動作308において、方法300は、決定されたクロスエントロピー損失に基づいて、LASデコーダ230およびコンテキストベクトルcを更新する。
【0049】
図4は、自動音声認識(例えば、ASR)を実行する方法400のための例示的な動作の構成の別のフローチャートである。動作402において、方法400は、2パスストリーミングニューラルネットワークモデルのLASデコーダ230用のトレーニング例を受信する。ここで、トレーニング例は、LASデコーダ230をトレーニングするように構成されている。動作404において、方法400は、トレーニング例が教師付き音声・テキストペアに対応しているか、または非ペアのトレーニングデータに対応しているかを決定する。トレーニング例が非ペアのトレーニングデータに対応している場合、動作406において、方法400は、非ペアのトレーニングデータの欠落部分を生成して、生成音声・テキストペアを形成する。動作408において、方法400は、生成音声・テキストペアに基づいて、LASデコーダ230および非ペアのデータに関連付けられたコンテキストベクトルcを更新する。
【0050】
図5は、本明細書で説明されるシステム(例えば、音声認識器200)および方法(例えば、方法300、400)を実施するために使用され得る例示的なコンピューティングデバイス500の概略図である。コンピューティングデバイス500は、ラップトップ、デスクトップ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなどの様々な形態のデジタルコンピュータを代表することが意図されている。本明細書に示された構成要素、それらの接続および関係、およびそれらの機能は、例示的なものに過ぎず、本明細書に記載および/または特許請求の範囲に記載される本発明の実施形態を限定するものではない。
【0051】
コンピューティングデバイス500は、プロセッサ510(例えば、データ処理ハードウェア)、メモリ520(例えば、メモリハードウェア)、ストレージデバイス530、メモリ520および高速拡張ポート540に接続する高速インタフェース/コントローラ540、および低速バス570およびストレージデバイス530に接続する低速インタフェース/コントローラ560を含む。構成要素510、520、530、540、550、および560の各々は、様々なバスを使用して相互接続され、かつ共通のマザーボード上に、または適切な他の方法で搭載され得る。プロセッサ510は、メモリ520またはストレージデバイス530に格納された命令を含むコンピューティングデバイス500内での実行のための命令を処理して、高速インタフェース540に接続されたディスプレイ580などの外部入力/出力デバイス上にグラフィカルユーザインタフェース(GUI)用のグラフィカル情報を表示する。他の実施形態では、複数のメモリおよび複数のタイプのメモリと共に、複数のプロセッサおよび/または複数のバスが適宜使用されてもよい。また、複数のコンピューティングデバイス500が接続され、各デバイスが(例えば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な処理の一部を提供してもよい。
【0052】
メモリ520は、コンピューティングデバイス500内に非一時的に情報を記憶する。メモリ520は、コンピュータ可読媒体、揮発性メモリユニット、または不揮発性メモリユニットであってもよい。非一時的メモリ520は、コンピューティングデバイス500による使用のための一時的または永久的な基準でプログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を格納するために使用される物理的デバイスであってもよい。不揮発性メモリの例には、これらに限定されないが、フラッシュメモリおよび読み出し専用メモリ(ROM)/プログラム可能読み出し専用メモリ(PROM)/消去可能プログラム可能読み出し専用メモリ(EPROM)/電子消去可能プログラム可能読み出し専用メモリ(EEPROM)(例えば、通常、ブートプログラムなどのファームウェアに使用される)が含まれる。揮発性メモリの例には、これらに限定されないが、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、およびディスクまたはテープが含まれる。
【0053】
ストレージデバイス530は、コンピューティングデバイス500の大容量ストレージデバイスを提供することができる。いくつかの実施形態では、ストレージデバイス530は、コンピュータ可読媒体である。種々の異なる実施形態では、ストレージデバイス530は、フロッピーディスク(登録商標)デバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリまたは他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークまたはその他の構成におけるデバイスを含むデバイスのアレイであり得る。追加の実施形態では、コンピュータプログラム製品は、情報媒体に有形的に具体化される。コンピュータプログラム製品は、実行時に、上記したような1つまたは複数の方法を実行する命令を含む。情報媒体は、メモリ520、ストレージデバイス530、またはプロセッサ510上のメモリなどの、コンピュータ可読媒体または機械可読媒体である。
【0054】
高速コントローラ540は、コンピューティングデバイス500の帯域幅を大量に使用する処理を管理し、低速コントローラ560は、より低い帯域幅を大量に使用する処理を管理する。このような役割の配分は、例示的なものに過ぎない。いくつかの実施形態では、高速コントローラ540は、メモリ520、ディスプレイ580(例えば、グラフィックプロセッサまたはアクセラレータを介する)、および各種拡張カード(図示せず)を受け入れる高速拡張ポート550に接続される。いくつかの実施形態では、低速コントローラ560は、ストレージデバイス530および低速拡張ポート590に接続される。様々な通信ポート(例えば、USB、ブルートゥース(登録商標)、イーサネット(登録商標)、無線イーサネット(登録商標))を含む低速拡張ポート590は、キーボード、ポインティングデバイス、スキャナ、または例えばネットワークアダプターを介するスイッチまたはルータなどのネットワークデバイスなどの1つまたは複数の入力/出力デバイスに接続され得る。
【0055】
コンピューティングデバイス500は、図面に示されるように、いくつかの異なる形態で実施することができる。例えば、標準サーバ500aとして、またはそのようなサーバ500aのグループ内で複数回、ラップトップコンピュータ500bとして、またはラックサーバシステム500cの一部として実施することができる。
【0056】
本明細書に記載のシステムおよび技術の様々な実施形態は、デジタル電子回路および/または光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせにおいて実現することができる。これらの様々な実施形態は、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信し、それらにデータおよび命令を送信するように接続された、特別または一般的な目的であってもよい、少なくとも1つのプログラム可能なプロセッサを含むプログラム可能なシステム上で実行可能および/または解釈可能な1つまたは複数のコンピュータプログラムにおける実施形態を含むことができる。
【0057】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られている)は、プログラマブルプロセッサ用の機械命令を含み、高水準の手続き型言語および/またはオブジェクト指向のプログラミング言語、および/またはアセンブリ言語/機械語で実施することができる。本明細書で使用する場合、「機械可読媒体」および「コンピュータ可読媒体」という用語は、任意のコンピュータプログラム製品、非一時的なコンピュータ可読媒体、機械命令を機械可読信号として受け取る機械可読媒体を含む、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される装置および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【0058】
本明細書で説明するプロセスおよび論理フローは、入力データを処理して出力を生成することによって機能を実行する1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラマブルプロセッサによって実行することができる。プロセスおよび論理フローは、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)などの特定用途論理回路によっても実行することができる。コンピュータプログラムの実行に適したプロセッサは、一例として、汎用マイクロプロセッサおよび専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、読み出し専用メモリまたはランダムアクセスメモリ、あるいはその両方から命令およびデータを受信する。コンピュータの必須要素は、命令を実行するプロセッサと、命令およびデータを格納するための1つまたは複数のメモリデバイスとである。一般に、コンピュータは、データを格納するための1つまたは複数の大容量ストレージデバイス(例えば、磁気ディスク、光磁気ディスク、または光ディスク)からのデータを受信するか、またはデータを転送するか、あるいはその両方を行うように動作可能に結合される。しかしながら、コンピュータはそのようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを格納するのに適したコンピュータ可読媒体には、半導体メモリデバイス(例えば、EPROM、EEPROM、およびフラッシュメモリデバイス)、磁気ディスク(例えば、内蔵ハードディスクまたはリムーバブルディスク)、光磁気ディスク、およびCDROMおよびDVD-ROMディスクを含む全ての形態の不揮発性メモリ、媒体およびメモリデバイスが含まれる。プロセッサおよびメモリは、特定用途論理回路によって補完または特定用途論理回路に組み込むことができる。
【0059】
ユーザとのインタラクションを提供するために、本開示の1つまたは複数の態様は、例えば、CRT(陰極線管)、LDC(液晶ディスプレイ)モニタ、またはタッチスクリーンなどのユーザに情報を表示するためのディスプレイデバイスと、任意選択でユーザがコンピュータに入力を提供するキーボードおよびポインティングデバイス(例えば、マウスやトラックボール)とを有するコンピュータ上で実施することができる。他の種類の装置を使用して、例えば、任意の形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であり得るユーザに提供されるフィードバックとともにユーザとのインタラクションを提供することもでき、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態で受信することができる。さらに、コンピュータは、ユーザによって使用されるデバイスとの間でドキュメントを送受信することによって(例えば、ウェブブラウザから受信した要求に応答してユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって)、ユーザとインタラクションすることができる。
【0060】
いくつかの実施形態が説明されている。それにもかかわらず、本開示の技術思想および範囲から逸脱することなく、様々な変更がなされ得ることが理解されるであろう。従って、他の実施形態も以下の特許請求の範囲内にある。