IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

特許7336537組み合わせで行うエンドポイント決定と自動音声認識
<>
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図1
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図2
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図3A
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図3B
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図4
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図5
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図6A
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図6B
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図6C
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図7
  • 特許-組み合わせで行うエンドポイント決定と自動音声認識 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-23
(45)【発行日】2023-08-31
(54)【発明の名称】組み合わせで行うエンドポイント決定と自動音声認識
(51)【国際特許分類】
   G10L 15/04 20130101AFI20230824BHJP
   G10L 15/28 20130101ALI20230824BHJP
   G10L 15/16 20060101ALI20230824BHJP
【FI】
G10L15/04 300Z
G10L15/28 500
G10L15/16
【請求項の数】 24
(21)【出願番号】P 2021562016
(86)(22)【出願日】2020-03-04
(65)【公表番号】
(43)【公表日】2022-06-23
(86)【国際出願番号】 US2020021025
(87)【国際公開番号】W WO2020214269
(87)【国際公開日】2020-10-22
【審査請求日】2021-12-07
(31)【優先権主張番号】62/834,482
(32)【優先日】2019-04-16
(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)【参考文献】
【文献】特表2018-523156(JP,A)
【文献】特表2018-513398(JP,A)
【文献】特開2019-035936(JP,A)
【文献】国際公開第2018/043138(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 15/04
G10L 15/28
G10L 15/16
(57)【特許請求の範囲】
【請求項1】
データ処理ハードウェア(111)において、ユーザデバイス(110)のユーザによって話された発話(120)のオーディオデータ(125)を受信することと、
前記データ処理ハードウェア(111)によって、前記オーディオデータ(125)を処理して、発話の音声デコードおよびエンドポイント決定を組み合わせで実行するように構成された単一の音声認識モデル(140)からの出力として、複数の出力ラベルからなるデコードされたシーケンスと、前記複数の出力ラベルからなるデコードされた前記シーケンスに含まれる1つ以上の言語単位に基づいた前記発話(120)の部分的な音声認識結果と、エンドポイント標示(175)であって、前記エンドポイント標示(175)に対応する発話エンドポイント記号が、前記複数の出力ラベルからなるデコードされた前記シーケンスに含まれていると判定することにより前記発話(120)がいつ終了したかを示す前記エンドポイント標示(175)と、を取得することと、
前記音声認識モデル(140)から出力された前記エンドポイント標示(175)応じて、前記オーディオデータ(125)の処理中に、前記データ処理ハードウェア(111)によって、前記発話(120)の前記終了を検出することと、
前記発話(120)の前記終了を検出することに応じて、前記データ処理ハードウェア(111)によって、前記発話(120)の前記終了が検出された後に受信された後続のオーディオデータ(125)の前記処理を終結することと、
を含み、
前記音声認識モデル(140)は、出力として、前記オーディオデータ(125)の音響特性を示す複数のオーディオ特徴(135)からなるシーケンスにおけるオーディオ特徴(135)毎の複数の出力ラベル(265)のセットに係る確率分布を生成するように構成されたニューラルネットワークを含み、前記複数の出力ラベル(265)は、前記言語単位および前記発話エンドポイント記号を含む
方法(800)。
【請求項2】
前記発話(120)の前記終了を検出することに応じて、前記データ処理ハードウェア(111)によって、前記発話(120)の転写(165)を検索エンジンまたはデジタル会話アシスタントシステムに送信することであって、前記転写(165)は、前記オーディオデータ(125)の処理中に前記音声認識モデル(140)によって出力された前記部分的な音声認識結果に基づくことをさらに含む
請求項1に記載の方法(800)。
【請求項3】
前記音声認識モデル(140)は、前記エンドポイント標示(175)が前記発話(120)がいつ終了したかを示す前に、前記発話(120)の前記部分的な音声認識結果を出すように構成されているストリーミング音声認識モデル(140)を含む
請求項1または2に記載の方法(800)。
【請求項4】
前記発話(120)の前記終了を検出する前に、前記データ処理ハードウェア(111)によって、前記データ処理ハードウェア(111)と通信する画面上に表示するために、音声認識オーディオによって出される部分的な音声認識結果を提供することをさらに含む
請求項3に記載の方法(800)。
【請求項5】
前記音声認識モデル(140)は、リカレントニューラルネットワークトランスデューサ(RNN-T)を含む
請求項3または4に記載の方法(800)。
【請求項6】
前記データ処理ハードウェア(111)は、前記ユーザの前記ユーザデバイス(110)上に常駐し、前記音声認識モデル(140)を実行する
請求項1~5のいずれか一項に記載の方法(800)。
【請求項7】
前記発話(120)の前記終了を検出することに応じて、前記データ処理ハードウェア(111)によって、前記ユーザによって話された前記発話(120)をキャプチャした1つまたは複数のマイクロフォン(105)のアレイを非アクティブ化することをさらに含む
請求項1~6のいずれか一項に記載の方法(800)。
【請求項8】
前記オーディオデータ(125)を処理して前記エンドポイント標示(175)を取得することは、前記発話エンドポイント記号を含む前記出力ラベルが、閾値スコアを満たす確率スコアに関連付けられている場合において、前記音声認識モデル(140)が前記エンドポイント標示(175)を出力したと判定することを含む
請求項1~7のいずれか一項に記載の方法(800)。
【請求項9】
前記言語単位は、書記素、ワードピース、または単語を含む
請求項1~8のいずれか一項に記載の方法(800)。
【請求項10】
前記複数の出力ラベル(265)は、発話(120)の開始を示す発話開始記号と、句読要素を示す句読記号と、スペース文字を示すスペース記号と、正書法要素に対応しない空白記号とのうちの少なくとも1つをさらに含む
請求項1~9のいずれか一項に記載の方法(800)。
【請求項11】
前記エンドポイント標示(175)に対応する前記発話エンドポイント記号が、前記音声認識モデル(140)によって出力された複数の出力ラベルからなる前記デコードされたシーケンスに含まれると判定することは、前記発話エンドポイント記号に関連付けられている確率スコアが閾値スコアを満たすと決定することを含む
請求項1~10のいずれか一項に記載の方法(800)。
【請求項12】
前記オーディオデータ(125)を処理して、前記発話(120)の前記終了を示す前記エンドポイント標示(175)を取得することは、前記音声認識モデル(140)の複数の出力にわたるビームサーチ処理(145)中、前記エンドポイント標示(175)に対応する発話エンドポイント記号が、前記ビームサーチ処理(145)における1つまたは複数のビームに含まれるかどうかを判定することを含む
請求項1~11のいずれか一項に記載の方法(800)。
【請求項13】
データ処理ハードウェア(111)と、
前記データ処理ハードウェア(111)と通信するメモリハードウェア(113)と、を備え、前記メモリハードウェア(113)は命令を記憶し、前記命令は、前記データ処理ハードウェア(111)上で実行されるとき、前記データ処理ハードウェア(111)に、
ユーザデバイス(110)のユーザによって話された発話(120)のオーディオデータ(125)を受信することと、
前記オーディオデータ(125)を処理して、発話の音声デコードおよびエンドポイント決定を組み合わせで実行するように構成された単一の音声認識モデル(140)からの出力として、複数の出力ラベルからなるデコードされたシーケンスと、前記複数の出力ラベルからなるデコードされた前記シーケンスに含まれる1つ以上の言語単位に基づいた前記発話(120)の部分的な音声認識結果と、エンドポイント標示(175)であって、前記エンドポイント標示(175)に対応する発話エンドポイント記号が、前記複数の出力ラベルからなるデコードされた前記シーケンスに含まれていると判定することにより前記発話(120)がいつ終了したかを示す前記エンドポイント標示(175)と、を取得することと、
前記音声認識モデル(140)から出力された前記エンドポイント標示(175)応じて、前記オーディオデータ(125)の処理中に、前記発話(120)の前記終了を検出することと、
前記発話(120)の前記終了を検出することに応じて、前記発話(120)の前記終了が検出された後に受信された後続のオーディオデータ(125)の前記処理を終結することと、を含む動作を実行させ
前記音声認識モデル(140)は、出力として、前記オーディオデータ(125)の音響特性を示す複数のオーディオ特徴(135)からなるシーケンスにおけるオーディオ特徴(135)毎の複数の出力ラベル(265)のセットに係る確率分布を生成するように構成されたニューラルネットワークを含み、前記複数の出力ラベル(265)は、前記言語単位および前記発話エンドポイント記号を含む
システム(100)。
【請求項14】
前記動作は、前記発話(120)の前記終了を検出することに応じて、前記発話(120)の転写(165)を検索エンジンまたはデジタル会話アシスタントシステムに送信することであって、前記転写(165)は、前記オーディオデータ(125)の処理中に前記音声認識モデル(140)によって出力された前記部分的な音声認識結果に基づくことをさらに含む
請求項13に記載のシステム(100)。
【請求項15】
前記音声認識モデル(140)は、前記エンドポイント標示(175)が前記発話(120)がいつ終了したかを示す前に、前記発話(120)の前記部分的な音声認識結果を出すように構成されているストリーミング音声認識モデル(140)を含む
請求項13または14に記載のシステム(100)。
【請求項16】
前記動作は、前記発話(120)の前記終了を検出する前に、前記データ処理ハードウェア(111)と通信する画面上に表示するために、音声認識オーディオによって出される部分的な音声認識結果を提供することをさらに含む
請求項15に記載のシステム(100)。
【請求項17】
前記音声認識モデル(140)は、リカレントニューラルネットワークトランスデューサ(RNN-T)を含む
請求項15または16に記載のシステム(100)。
【請求項18】
前記データ処理ハードウェア(111)は、前記ユーザの前記ユーザデバイス(110)上に常駐し、前記音声認識モデル(140)を実行する
請求項1317のいずれか一項に記載のシステム(100)。
【請求項19】
前記動作は、前記発話(120)の前記終了を検出することに応じて、前記ユーザによって話された前記発話(120)をキャプチャした1つまたは複数のマイクロフォン(105)のアレイを非アクティブ化することをさらに含む
請求項1318のいずれか一項に記載のシステム(100)。
【請求項20】
前記オーディオデータ(125)を処理して前記エンドポイント標示(175)を取得することは、前記発話エンドポイント記号を含む前記出力ラベルが、閾値スコアを満たす確率スコアに関連付けられている場合において、前記音声認識モデル(140)が前記エンドポイント標示(175)を出力したと判定することを含む
請求項13~19のいずれか一項に記載のシステム(100)。
【請求項21】
前記言語単位は、書記素、ワードピース、または単語を含む
請求項13~20のいずれか一項に記載のシステム(100)。
【請求項22】
前記複数の出力ラベル(265)は、発話(120)の開始を示す発話開始記号と、句読要素を示す句読記号と、スペース文字を示すスペース記号と、正書法要素に対応しない空白記号とのうちの少なくとも1つをさらに含む
請求項13~21のいずれか一項に記載のシステム(100)。
【請求項23】
前記エンドポイント標示(175)に対応する前記発話エンドポイント記号が、前記音声認識モデル(140)によって出力された複数の出力ラベルからなる前記デコードされたシーケンスに含まれると判定することは、前記発話エンドポイント記号に関連付けられている確率スコアが閾値スコアを満たすと決定することを含む
請求項13~22のいずれか一項に記載のシステム(100)。
【請求項24】
前記オーディオデータ(125)を処理して、前記発話(120)の前記終了を示す前記エンドポイント標示(175)を取得することは、前記音声認識モデル(140)の複数の出力にわたるビームサーチ処理(145)中、前記エンドポイント標示に対応する発話エンドポイント記号が、前記ビームサーチ処理における1つまたは複数のビームに含まれるかどうかを判定することを含む
請求項13~23のいずれか一項に記載のシステム(100)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、組み合わせで行うエンドポイント決定(endpointing)と自動音声認識に関する。
【背景技術】
【0002】
自然言語処理システムは通常、エンドポインタを使用して、いつユーザが発話を話すことを始めて終えたかを決定する。一部の従来のエンドポインタは、発話がいつ開始または終了するかを決定する際に、単語間のポーズ期間を評価する。例えば、ユーザが「夕食は<長いポーズ>何か(what is <long pause> for dinner)」と言った場合、従来のエンドポインタは、長いポーズの箇所でボイス入力をセグメントに分ける場合があり、自然言語処理システムに、完全なフレーズ「夕食は何か(what is for dinner)」ではなく、不完全なフレーズ「何か(what is)」の処理を行うよう指示する場合がある。エンドポインタが、ボイス入力に関して誤った開始点またはエンドポイント(endpointing)を指定した場合、ボイス入力を処理した結果は、不正確または望ましくない場合がある。話された発話の終了を認識すること、すなわちエンドポイント決定は、ストリーミング自動音声認識(ASR)システムの重要な機能である。
【発明の概要】
【発明が解決しようとする課題】
【0003】
組み合わせで行うエンドポイント決定と自動音声認識を提供する。
【課題を解決するための手段】
【0004】
本明細書の実装形態は、発話の内容をデコードするとともに発話の終了を決定する音声認識モデルを対象とする。例えば、音声認識モデルは、音声デコードと音声エンドポイント決定の両方を組み合わせで実行するニューラルネットワークモデルであってよい。モデルは、例えば、発話のオーディオ特性を示す入力データを受信し、外部言語モデルを使用せずに正書法データ(書記素、ワードピース、単語など)を出力する、エンドツーエンドモデルであってよい。
【0005】
単一のモデルでエンドポイントと音声コンテンツを組み合わせで予測することで、いくつかの利点が得られる。例えば、モデルにおける組み合わせの性質により、モデルは、(i)発話の音響情報と、(ii)発話の言語内容またはセマンティック意味のモデルの解釈の両方に基づいてエンドポイント決定(endpointing decision)を行うことができる。これにより、オーディオ特性のみを評価するモデルよりも高速で正確なエンドポイント決定(endpointing decisions)が可能となる。さらに、エンドポイントと音声内容の両方を組み合わせで予測することで、最初に転写を決定し、続いて転写を使用してエンドポイント決定を行うシステムよりも、非常に高速にエンドポイントを検出できる。
【0006】
一般に、エンドポイント決定とは、フレーズ、文、疑問、または要求の終了など、話された発話の終了を識別する処理を指す。一部のエンドポイント決定技術では、ボイスアクティビティ検出器またはクエリ終了検出器をエンドポインタとして使用し、これは通常、音声認識モデルとともに動作するが音声認識モデルとは別個に動作する、別個のモデルまたはモジュールである。本明細書の実装形態は、エンドポイント決定機能を音声認識モデルに組み込むことによって、自動音声認識(ASR)システムのエンドポイント決定を強化することを目的としている。具体的には、エンドツーエンドモデルを使用して、音声認識とエンドポイントの両方を組み合わせで実行できる。明らかになるように、音声認識とエンドポイント決定を組み合わせで実行できるエンドツーエンドモデルを採用することで、発話エンドポイントの検出における遅延/レイテンシを大幅に削減でき、場合によっては、エンドポイントの検出の遅延/レイテンシを半分に削減する。
【0007】
任意選択により、音声認識とエンドポイント決定の組み合わせモデルを別のエンドポイント決定モジュールとともに使用して、冗長性を持たせ、平均レイテンシを減らしてもよい。例えば、組み合わせモデルは、多くの状況でより速く、より正確なエンドポイント決定結果を提供する可能性があるが、ただし、専用のエンドポイント決定モデルは、他の状況でより良い結果を提供する場合がある。両方の技術を併せて使用すると、幅広い状況で最良の結果を得ることができる。例えば、システムは、エンドポイントが2つのモデルからの最も早い信号に設定されるように構成され得る。換言すると、いずれのモデルもオーディオを並行して評価でき、2つのモデルのいずれかが最初にエンドポイントを示している場合、発話のエンドポイントが設定される。
【0008】
本開示の一態様によれば、発話のエンドポイント決定の方法が提供される。方法は、データ処理ハードウェアにおいて、ユーザデバイスのユーザによって話された発話のオーディオデータを受信することと、データ処理ハードウェアによって、オーディオデータを処理して、発話の音声デコードおよびエンドポイント決定を組み合わせで実行するように構成された音声認識モデルからの出力として、発話の部分的な音声認識結果と、発話がいつ終了したかを示すエンドポイント標示と、を取得することと、を含む。オーディオデータの処理中、この方法はまた、データ処理ハードウェアによって、音声認識モデルから出力されたエンドポイント標示に基づいて、発話の終了を検出することを含む。方法は、発話の終了を検出することに応じて、データ処理ハードウェアによって、発話の終了が検出された後に受信された後続のオーディオデータの処理を終結することをさらに含む。
【0009】
本開示の実装形態は、以下の任意の特徴のうちの1つまたは複数を含み得る。一部の実装形態では、方法は、発話の終了を検出することに応じて、データ処理ハードウェアによって、発話の転写を検索エンジンまたはデジタル会話アシスタントシステムに送信することであって、転写は、オーディオデータの処理中に音声認識モデルによって出力された部分的な音声認識結果に基づくことをさらに含む。一部の例では、音声認識モデルは、エンドポイント決定により発話がいつ終了したかが示される前に、発話の部分的な音声認識結果を出すように構成されているストリーミング音声認識モデルを含む。例えば、ストリーミング音声認識モデルは、リカレントニューラルネットワークトランスデューサ(RNN-T)を含んでいてもよい。これらの例では、方法は、発話の終了を検出する前に、データ処理ハードウェアによって、データ処理ハードウェアと通信する画面上に表示するために、音声認識オーディオによって出される部分的な音声認識結果を提供することをさらに含む。
【0010】
データ処理ハードウェアは、ユーザのユーザデバイス上に常駐し、音声認識モデルを実行することができる。一部の実装形態では、発話の終了を検出することに応じて、方法は、データ処理ハードウェアによって、ユーザによって話された発話をキャプチャした1つまたは複数のマイクロフォンのアレイを非アクティブ化することをさらに含む。
【0011】
音声認識モデルは、出力として、複数のオーディオ特徴からなるシーケンスにおけるオーディオ特徴毎の複数の出力ラベルのセットに係る確率分布を生成するように構成されたニューラルネットワークを含んでいてもよい。出力ラベルは、言語単位と発話エンドポイント記号を含んでいてもよい。ここで、オーディオデータを処理してエンドポイント標示を取得することは、発話エンドポイント記号を含む出力ラベルが、閾値スコアを満たす確率スコアに関連付けられている場合において、音声認識モデルがエンドポイント標示を出力したと判定することを含んでいてもよい。さらに、言語単位は、書記素、ワードピース、または単語を含んでいてもよい。一部の例では、複数の出力ラベルは、発話の開始を示す発話開始記号と、句読要素を示す句読記号と、スペース文字を示すスペース記号と、正書法要素に対応しない空白記号とのうちの少なくとも1つをさらに含む。
【0012】
一部の例では、音声認識モデルは、発話のオーディオデータに基づいて、複数の記号からなるデコードされたシーケンスを出力するように構成され、オーディオデータを処理してエンドポイント標示を取得することは、エンドポイント標示に対応するエンドポイント記号が、音声認識モデルによって出力された複数の記号からなるデコードされたシーケンスに含まれるかどうかを判定することを含む。これらの例では、エンドポイント標示に対応するエンドポイント記号が、音声認識モデルによって出力された複数の記号からなるデコードされたシーケンスに含まれるかどうかを判定することは、エンドポイント記号に関連付けられている確率スコアが閾値スコアを満たすと決定することを含んでいてもよい。追加の例では、オーディオデータを処理して、発話の終了を示すエンドポイント標示を取得することは、音声認識モデルの複数の出力にわたるビームサーチ処理中、エンドポイント標示に対応する記号が、ビームサーチ処理における1つまたは複数のビームに含まれるかどうかを判定することを含む。
【0013】
本開示の別態様によれば、データ処理ハードウェアと、メモリハードウェアと、を備えるシステムが提供される。メモリハードウェアは命令を記憶し、命令は、データ処理ハードウェアによって実行されるとき、データ処理ハードウェアに、ユーザデバイスのユーザによって話された発話のオーディオデータを受信することと、オーディオデータを処理して、発話の音声デコードおよびエンドポイント決定を組み合わせで実行するように構成された音声認識モデルからの出力として、発話の部分的な音声認識結果と、発話がいつ終了したかを示すエンドポイント標示と、を取得することと、を含む動作を実行させる。オーディオデータの処理中、動作はまた、音声認識モデルから出力されたエンドポイント標示に基づいて、発話の終了を検出することを含む。動作は、発話の終了を検出することに応じて、発話の終了が検出された後に受信された後続のオーディオデータの処理を終結することをさらに含む。
【0014】
本態様は、以下の任意の特徴のうちの1つまたは複数を含み得る。一部の実装形態では、動作は、発話の終了を検出することに応じて、発話の転写を検索エンジンまたはデジタル会話アシスタントシステムに送信することであって、転写は、オーディオデータの処理中に音声認識モデルによって出力された部分的な音声認識結果に基づくことをさらに含む。一部の例では、音声認識モデルは、エンドポイント決定が発話がいつ終了したかを示す前に、発話の部分的な音声認識結果を出すように構成されているストリーミング音声認識モデルを含む。例えば、ストリーミング音声認識モデルは、リカレントニューラルネットワークトランスデューサ(RNN-T)を含んでいてもよい。これらの例では、動作は、発話の終了を検出する前に、データ処理ハードウェアと通信する画面上に表示するために、音声認識オーディオによって出される部分的な音声認識結果を提供することをさらに含む。
【0015】
データ処理ハードウェアは、ユーザのユーザデバイス上に常駐し、音声認識モデルを実行することができる。一部の実装形態では、発話の終了を検出することに応じて、動作は、ユーザによって話された発話をキャプチャした1つまたは複数のマイクロフォンのアレイを非アクティブ化することをさらに含む。音声認識モデルは、出力として、複数のオーディオ特徴からなるシーケンスにおけるオーディオ特徴毎の複数の出力ラベルのセットに係る確率分布を生成するように構成されたニューラルネットワークを含んでいてもよい。出力ラベルは、言語単位と発話エンドポイント記号を含んでいてもよい。ここで、オーディオデータを処理してエンドポイント標示を取得することは、発話エンドポイント記号を含む出力ラベルが、閾値スコアを満たす確率スコアに関連付けられている場合において、音声認識モデルがエンドポイント標示を出力したと判定することを含んでいてもよい。さらに、言語単位は、書記素、ワードピース、または単語を含んでいてもよい。一部の例では、複数の出力ラベルは、発話の開始を示す発話開始記号と、句読要素を示す句読記号と、スペース文字を示すスペース記号と、正書法要素に対応しない空白記号とのうちの少なくとも1つをさらに含む。
【0016】
一部の例では、音声認識モデルは、発話のオーディオデータに基づいて、複数の記号からなるデコードされたシーケンスを出力するように構成され、オーディオデータを処理してエンドポイント標示を取得することは、エンドポイント標示に対応するエンドポイント記号が、音声認識モデルによって出力された複数の記号からなるデコードされたシーケンスに含まれるかどうかを判定することを含む。これらの例では、エンドポイント標示に対応するエンドポイント記号が、音声認識モデルによって出力された複数の記号からなるデコードされたシーケンスに含まれるかどうかを判定することは、エンドポイント記号に関連付けられている確率スコアが閾値スコアを満たすと決定することを含んでいてもよい。追加の例では、オーディオデータを処理して、発話の終了を示すエンドポイント標示を取得することは、音声認識モデルの複数の出力にわたるビームサーチ処理中、エンドポイント標示に対応する記号が、ビームサーチ処理における1つまたは複数のビームに含まれるかどうかを判定することを含む。
【0017】
本開示の1つまたは複数の実装形態の詳細は、添付の図面および以下の説明に記載されている。他の態様、特徴、および利点は、説明、図面、および特許請求の範囲から明らかとなる。
【図面の簡単な説明】
【0018】
図1】クエリ終了(EOQ)エンドポインタとともに、自動音声認識(ASR)とエンドポイント決定モデルを組み合わせて使用した例示的な音声認識装置の概略図である。
図2】発話の音声デコードとエンドポイント決定を組み合わせで実行するべく、図1の組み合わされたASRとエンドポイント決定モデルをトレーニングするための例示的なトレーニングプロセスの概略図である。
図3A】エンドポインタモジュールによって予測された複数のクエリ終了(EOQ)分類ラベルからなるシーケンスのプロットである。
図3B図1の組み合わされたASRおよびエンドポイント決定モデルによって出力されたエンドポイントトークンを含む、デコードされた複数の出力ラベルからなるシーケンスのプロットである。
図4】リカレントニューラルネットワークートランスデューサー(RNN-T)モデルのアーキテクチャの例を示す図である。
図5】EOQ分類装置、エンドツーエンドエンドポインタ、およびEOQエンドポインタとエンドツーエンドエンドポインタを合わせた結合システムに係る、単語誤り率(WER)とメディアンレイテンシのプロットである。
図6A】EOQエンドポインタのレイテンシを示すヒストグラムである。
図6B】エンドツーエンドのエンドポインタのレイテンシを示すヒストグラムである。
図6C】EOQエンドポイントとエンドツーエンドエンドポインタを合わせた結合システムのレイテンシを示すヒストグラムである。
図7】本明細書で説明されるシステムおよび方法を実装するために使用され得る例示的なコンピューティングデバイスの概略図である。
図8】音声認識モデルを使用して発話のエンドポイント決定を行う方法の動作の例示的な構成のフローチャートである。
【発明を実施するための形態】
【0019】
さまざまな図面での同様の参照番号は、同様の要素を示す。
汎用自動音声認識(ASR)システムは、フレーズ、文、質問、または要求の終わりなど、行われた発話の終了を認識するように構成され得る。発話が終了したことを迅速かつ正確に判定することは、ローレイテンシで正確な結果を提供するためにしばしば重要である。例えば、ASRシステムのオーディオのキャプチャと処理の終了が早すぎると、ユーザの発話の終了が含まれなくなり、得られる転写が不完全になる可能性がある。一方、発話が終了した後もASRシステムが追加のオーディオ待ち続けると、システムはユーザへの応答の提供を不必要に遅らせる可能性がある。
【0020】
ASRシステムには、エンドポインタを含めることができ、これは、ユーザがいつ話し終えたかを判定するためのASRシステムのコンポーネントである。エンドポインタの目的は、ボイスアシスタントやボイス検索などのストリーミング音声認識アプリケーションで自然で高速なボイス対話を保証することである。ユーザが話し終えたらすぐにマイクロフォンを閉じることが望ましい。これにより、レイテンシと呼ばれるシステム応答の遅延が最小限に抑えられる。しかしながら、発話が途中で途切れないようにすることも重要である。エンドポイント決定のエラーは、ユーザエクスペリエンスに大きな影響を与える可能性がある。システムがマイクロフォンを閉じるのに待ちすぎると、ユーザエクスペリエンスにおいて遅く感じられる。システムが急ぎすぎると、ユーザは話している最中に切れてしまう。したがって、転写の精度(例えば、単語誤り率(WER)で測定)とレイテンシの間のトレードオフは、ASRアプリケーションにとって非常に重要である。したがって、ASRシステムは、認識精度を低下させることなく、発話が終了した後、可及的に早く、エンドポイント決定を行うとともにマイクロフォンを閉じるか、あるいは、現在の発話にさらなるオーディオを含めるのを停止することが望ましい。
【0021】
一部のASRシステムは、個別の音響、発音、および言語モデルのコンポーネントを含む。これらのASRシステムは、個別にトレーニングされたエンドポイント決定モジュールに依存する場合があり、これは、個々のコンポーネントと相互作用して、行われた発話の終了を識別する。
【0022】
発話の終了を認識する1つの方法は、ボイスアクティビティ検出器(VAD)を使用して、オーディオ信号の各フレームを音声または無音として分類することであり、ここで、無音は厳密に非音声である。VADを使用する場合、システムが音声を観察し、後に長い無音間隔が続くとすぐにエンドポイントが設定される。VADは、現在の音声と現在の無音を区別する音響キューを検出するが、現在の無音の後に後続の音声が続くかどうかを予測するのに役立つ可能性のある潜在的なキューを無視する。これらの潜在的な音響キューは、人間の話し手が所与のポーズの後に話し続ける意図があるか否かの決定について情報提供する、フィラーサウンド、話すリズム、またはピッチを含む。したがって、VADはシステム応答に長い遅延をもたらす可能性がある。一般に、VADは長い形式の音声をエンドポイント决定するのに適している。
【0023】
別のタイプのエンドポインタは、確率的クエリ終了(EOQ)分類装置であり、これは、ユーザが所与の時間に話し終えたかどうかを直接予測するようにトレーニングされる。EOQ分類装置は、音声、初期無音、中間無音、および最終無音を探す。EOQ分類装置は、ユーザが音声をさらに発する意図があるかどうかを示すのに役立つ音響キューを検出できる。さらに、VADは発話の開始と終了近くの無音を同じように処理するのに対して、EOQ分類装置はそれらを異なる方法で処理する。EOQ分類装置では、エンドポイント決定の確率は発話全体を通して時間とともに増加する。EOQ分類装置は、言語モデルからの情報を考慮せずに、音響情報のみに基づいてエンドポイントの決定を行う。EOQ分類装置は、音響モデル、発音モデル、言語モデルなど、ASRの他のコンポーネントから独立してトレーニングされる。
【0024】
一部のASRシステムは、音響、発音、および言語モデルを単一のエンドツーエンドニューラルネットワークにまとめたエンドツーエンドモデルを使用するので、認識パイプラインが簡素化される。多くの最新のASRシステムの重要な要件は、例えば、話者が話し続けている間、デコードされた音声の同時判定と出力が可能である等、ストリーミング操作を可能とすることである。ストリーミングモデルは、音声コンテンツをデコードするよう、発話の終了を待たずに、ユーザが話しているときに決定を出す。ストリーミングモデルは、発話が終了するまでデコードの実行を待つことはできない。ストリーミングニューラルネットワークモデルの1つのタイプは、リカレントニューラルネットワークトランスデューサー(RNN-T)であり、内部メモリを使用して複数の入力からなるシーケンスを処理できる。RNN-Tモデルは、オーディオ信号が処理されるときに部分的な認識結果を出すことができる。
【0025】
エンドポイント決定は、エンドポインタを音声認識ニューラルネットワークに組み込むことにより、組み合わされたモデルが音声認識(デコードなど)とエンドポイント決定の両方を実行できるようにした、エンドツーエンドのASRモデルを使用して改良され得る。この組み合わせモデルを、任意選択により、別のエンドポイント決定モジュールとともに組として使用して、冗長性を持たせ、平均レイテンシを減らしてもよい。結合システムは、組み合わされたエンドポイント決定/音声認識モデルと専用のエンドポイント決定モデル(EOQモデルやVADなど)との両方を使用してエンドポイント決定をトリガーし、2つのモデルのどちらが最初にエンドポイントをトリガーするかに基づいてエンドポイントを設定する。
【0026】
図1は、EOQエンドポインタ150とともに、ASRとエンドポイント決定モデルを組み合わせて使用した例示的な音声認識装置100を示している。示されている例では、音声認識装置140は、ユーザデバイス110のデータ処理ハードウェア111上で実行し、ユーザデバイス110がユーザ115によって話された発話120をキャプチャすることを可能とし、発話120の音声認識とエンドポイント決定をローカルで実行する。ユーザデバイス110は、データ処理ハードウェア111によって実行されると、動作(特に、音声認識装置100の実行を含む)をデータ処理ハードウェアに実行させる命令を記憶するメモリハードウェア113を含む。他の例では、音声認識装置100のコンポーネントのいくつかまたはすべては、リモートコンピューティングデバイス、例えば、クラウドコンピューティング環境を提供する分散システムの1つまたは複数のサーバ上に存在し得る。例えば、組み合わされたASRおよびエンドポイントモデル140は、ユーザデバイス110またはリモートコンピューティングデバイスのうちの1つに存在していてもよく、EOQエンドポインタ150は、ユーザデバイス110またはリモートコンピューティングデバイスのうちの他方に存在していてもよい。したがって、組み合わされた音声認識およびエンドポイント決定技術は、クライアントデバイスおよびサーバシステムが情報を交換して音声処理を完了する構成で、クライアントデバイスまたはサーバシステムによって使用され得る。
【0027】
音声認識装置100は、発話120をエンコードしたオーディオデータ125を受信し、オーディオデータ125の音響特性を示す複数のオーディオ特徴135を生成するように構成された特徴抽出モジュール130を含む。複数のオーディオ特徴135は、組み合わされたASRおよびエンドポイント決定モデル(「組み合わせモデル」)140と、EOQエンドポインタ150とに入力される。組み合わせモデル140の出力は、ビームサーチ処理145または別のプロセスを使用して評価される。例えば、認識装置は、組み合わせモデル140の複数の出力から得られた音声格子155上でビームサーチ処理145を実行して、オーディオデータ125にエンコードした発話120の転写165を生成することができる。音声認識装置100は、組み合わせモデル140またはEOQエンドポインタ150のいずれか最初に発生した方から、エンドポイント信号を受信することに応じて、エンドポイント検出160をトリガーすることができる。エンドポイント信号は、発話120の終了を示す組み合わせモデル140またはEOQエンドポインタ150によって出力されるエンドポイント標示に対応する。一部の例では、エンドポイント標示(例えば、エンドポイント信号)は、ビームサーチ145によって選択された転写165にエンドポイントトークン175を含み得る。音声認識装置100がエンドポイント検出160をトリガーすると、ユーザデバイス110は、発話120の検出を終了することができ、これは、例えば、組み合わせモデル140を使用してさらなるオーディオの処理を停止することによって行われてもよいし、あるいは、一部の実装形態では、マイクロフォン105のアレイからシステム100の少なくともいくつかの部分への入力を無効にすることによって行われてもよい。例えば、音声認識装置100は、マイクロフォンを閉じるイベントとしても知られる、マイクロフォン105を非アクティブ化するための命令を提供することができる。エンドポイント信号はまた、デバイス110をトリガーして、別のアクション170を実行することが可能であり、例えば、検索結果を要求または提供することによって、発話120への応答を始めること、コマンドを実行すること等が可能である。
【0028】
示されている例では、ユーザ115は、コマンドに関連付けられる発話120をユーザデバイス110に話す。ユーザデバイス110の1つまたは複数のマイクロフォン105からなるアレイ(一部の例では、アレイ内の1つまたは複数のマイクロフォンは、ユーザデバイス110から離れており、データ処理ハードウェア111と通信している場合がある)は、発話120のオーディオデータ125を取得し、特徴抽出モジュール130は、組み合わせモデル140への入力のために、発話120の音響特性に対応する複数の音声特徴135を抽出する。ここで、組み合わせモデル140は、ストリーミング音声認識を実行するために、継続的な方法でオーディオ特徴135を継続的に受信および処理することができる。このプロセスは、音声認識処理をトリガーするウェイクワードまたはホットワードの検出から始まる場合がある。
【0029】
音声認識プロセスの一部として、特徴抽出モジュール130は、オーディオデータ125の音響特性を表す複数のオーディオ特徴135を識別することによって、オーディオデータ125を処理する。例えば、特徴抽出モジュール130は、しばしばフレームと呼ばれる、オーディオの互いに異なる時間ウィンドウに関し、オーディオ特徴ベクトルを生成する。一連の複数の特徴ベクトルは、さまざまなモデルへの入力とされる。オーディオ特徴ベクトルは、メル周波数ケプストラム(ceptral)係数(MFCC)などのオーディオデータ125の特性に関する情報を含む。複数のオーディオ特徴は、オーディオのピッチ、ラウドネス、周波数、エネルギーなど、さまざまな要因のいずれかを示す場合がある。複数のオーディオ特徴135は、組み合わせモデル140(例ではRNN-Tなどのリカレントニューラルネットワークモデル)と、EOQエンドポインタ150とに対する入力として提供される。一部の実装形態では、複数の特徴ベクトルは、モデル140、150に1つずつ順次提供され得る。
【0030】
ニューラルネットワークベースの組み合わせモデル140は、複数のオーディオ特徴135を評価して、複数のASRスコアを計算する。ASRスコアは、さまざまな言語単位が発生した可能性を示す。例えば、モデルは、正書法要素(書記素、ワードピース、単語など)を含む複数の出力ラベルの分布にわたって複数のスコアを出力できる、ここで、分布における複数のスコアが、対応する正書法の複数の単位が話された単語を表す確率を表す。
【0031】
音声の転写を行うときに、あり得るすべての単語シーケンスを評価することは不可能である。したがって、複数のASRスコアが計算されると、認識装置100は、最も有望な記号パスに検索を導くよう、プルーニングを含むビームサーチ処理145を実行する。換言すると、ビームサーチ処理145は、限られた数のアクティブビームを使用して、話された複数の単語からなる最も可能性の高いシーケンスを検索することによって、伴われる計算を制限することができる。格子プルーニングなどの他の関連するプロセスを使用して、組み合わせモデル140の複数の出力から得られる格子155のサイズを縮小することができる。組み合わせモデルは、複数の出力ステップのそれぞれについて複数の出力(出力ラベルなど)からなるセットを判定するとともに、ビームサーチ処理145は、可能性の低い探索パスをプルーニングし、最も可能性の高いパスのみを維持することができる。多くの場合、これには限られた数のサーチビームのみを維持することが含まれる。
【0032】
一部の実装形態では、RNN-T組み合わせモデル140は、RNN-T組み合わせモデル140が生成する複数の出力ラベルからなる各セットの複数の出力スコアを生成し、複数の出力ラベルからなる各セットにおける複数の出力ラベルの1つは、エンドポイントの決定を予測するために使用する特別なエンドポイントトークン</s>175を含む。エンドポイントトークン175は、発話の終了を示すためにモデル140によって生成/予測される、予期される出力ラベルシーケンスの一部として含まれるエンドポイント標示に対応する。以下でより詳細に説明するように、組み合わせモデル140は、エンドポイントトークン175に高い確率スコアを割り当てることによって、発話のエンドポイントに到達したことを示すことができる。例えば、エンドポイントトークン175の組み合わせモデル140からの確率スコアがしきい値スコアを満たす場合、および/または、ビームサーチ処理145が転写にエンドポイントトークン175を含む場合、認識装置100は、発話の終了に到達したことを検出することができる。特に、エンドポイントに到達したかどうかを示すエンドポイント決定160は、ビームサーチ処理145中に、最高スコアのビームにエンドポイントトークン</s>175が含まれている場合に行われ得る。このように、組み合わせモデル140は、音声デコーダおよびエンドポインタとして組み合わせで機能し、エンドポイント決定160は、文末トークン</s>175の出力に基づいている。
【0033】
システムはまた、組み合わせモデル140と並行してエンドポインタ150を動作させることができる。エンドポイントが判定される前に、両方のモデル140、150は、オーディオデータ125が受信/検出されるときに、追加のオーディオデータ125から特徴抽出モジュール130によって抽出された複数の新たな特徴ベクトル135を受信することができる。エンドポインタ150は、オーディオ特徴135を評価して、ユーザが所与の時間に話し終えたかどうかを予測する。エンドポインタ150は、ユーザが音声をさらに発する意図があるかどうかを示すのに役立つ音響キューを検出できるEOQ型であってもよい。エンドポインタ150は、言語モデルまたは他の音声認識モデルからの情報を考慮することなく、音響情報のみに基づいてエンドポイント決定を行うことができる。
【0034】
音声認識装置100は、EOQエンドポインタ150と組み合わせモデル140の両方を使用して、エンドポイント決定160を行うことができる。エンドポイントは、モデル140、150のいずれかが、最初に、発話のエンドポイントに到達したことを示すエンドポイント標示を信号で示すことに基づいて、トリガーされる。多くの場合、組み合わせモデル140が、最初に、エンドポイント決定を行う。これは、エンドポイント決定は、組み合わせモデル140のデコードと併せて実行されることによる。これにより、音響データの意味をよりセマンティックに認識した解釈が可能となる。しかしながら、組み合わせモデル140がエンドポイント標示を出力できない可能性があり得る。これは、不完全なフレーズや典型的でない単語の選択など、ユーザの音声の異常が原因である可能性があり、ここでは、検出された音声のセマンティック意味が、さらなる音声が来ることを誤って示唆している可能性がある。これらの例では、EOQエンドポインタ150は、組み合わせモデル140がまだエンドポイントを決定していない場合でも、音響データ(例えば、有意なポーズまたは無音)に基づいてエンドポイント決定をトリガーするよう、冗長性を提供する。
【0035】
エンドポイントが検出されると、EOQエンドポインタ150または組み合わせモデル140の出力によるかどうかにかかわらず、デバイス110は、発話の検出を終了する。これには、さらなる音声の聴取または処理を減らす、または停止するための1つ以上のアクションが伴われる場合がある。同様に、それは、組み合わせモデル140(または他の任意の音声認識モデル)またはリモートシステムへのオーディオデータの提供を停止することを含み得る(サーバシステム等)。一部の実装形態では、デバイス110は、音声認識プロセスを終結するが、デバイス110は、キーワードスポッティングモデルを使用して、ホットワードまたはウェイクワードなどの特定のキーワードを検出し続けることができる。エンドポイントの検出に応じて、デバイス110は、検索エンジンまたはデジタル会話アシスタントに転写を送信するなど、発話に対する応答の取得および提供を始めることができる。さらに、エンドポイントの検出に応じて、現在の発話を終了することができ、それ以降の発話は新しい別個の発話の一部と見なされてよい。
【0036】
図1の例では、認識装置は、発話の転写165を生成する。次に、ユーザデバイス110は、転写165からアクション170を判定し、話されたコマンド120に応じたアクション180を実行することができる。例えば、転写165が「音楽を再生(Play music)」の場合、ユーザデバイス110は、転写165がコマンドを表すことを判定することができ、デバイス110は、モバイルデバイス110上の音楽アプリから音楽を再生し始めることができる。
【0037】
当然のことながら、この方法で生成された転写は、ボイスコマンドを判定することに加えて、またはその代わりに、様々な方法で使用可能である。例えば、転写165は、デバイス110の画面上に表示するために提供されてもよいし、デバイス110上のアプリケーションに提供されてもよいし、ネットワークを介してサーバシステムに提供されてもよいし、検索エンジンまたは他のシステムへのリクエストに含めてもよいし、口述されたメッセージまたは文書に含めてもよい。エンドポイントの検出は、これらのアクションのいずれか、および追加の音声認識モデル(言語モデルなど)または他の処理による再スコアリングなどの他のアクションをトリガーできる。さらに、オーディオデータ125が受信されている間、および発話の終了を検出する前において、認識装置100は、RNN-T組み合わせモデル140によって出力された部分的な音声認識結果(例えば、書記素、ワードピース、または単語)から部分的な転写165を生成することができる。ここで、認識装置100は、ユーザ115がまだ話している間に、ストリーミング方式でユーザデバイス110(または別のデバイス)の画面上に部分的な転写165を表示することができる。
【0038】
図1の例では、音声認識装置100(例えば、ASRシステム)は、音声認識モデル140および追加のエンドポイント決定モデル140が、メモリハードウェア113に記憶されてデバイス110のデータ処理ハードウェア111上でローカルに実行されるものとして、モバイルデバイス110上でセルフコンテインドの態様で示されている。この構成では、デバイス110は、ネットワークへの接続を必要とせずに音声認識機能を提供することができる場合がある。それでも、同じモデリング手法は、リモートデバイスによるエンドポイント決定の実行に用いられてもよいし、処理が複数のデバイス間で共有されている場合に用いられてもよい。例えば、ネットワークを介して受信されたオーディオデータを処理するサーバシステムは、組み合わされたエンドポイント決定と音声認識モデル140を使用して、同様に応答を提供する際のレイテンシを短縮することができる。
【0039】
図2は、音声のデコードと発話のエンドポイント決定を組み合わせで実行するべく、組み合わせモデル140をトレーニングするための例示的なトレーニングプロセス200を示している。トレーニングプロセス200は、複数のトレーニングサンプル236を含むトレーニングデータ235により、組み合わされたASRおよびエンドポイント決定モデル140をトレーニングし、複数のトレーニングサンプル236の各々が、トレーニング発話220と、トレーニング発話220に対応する転写220と、および対応する転写220についての複数の参照出力ラベル222からなるシーケンスとを含む。トレーニングプロセス200は、話された発話から音響データ210を収集することによってトレーニングデータ235を生成することができる。場合によっては、数千、数十万、または数百万の発話が収集されて使用される。トレーニングサンプル236の例は、2000万の英語の発話211(10,000時間を超える)を含み得る。複数のトレーニング発話211は、匿名化され、転写プロセス215によって転写されて、対応するテキスト転写220を生成する。転写プロセス215は、トレーニングされた音声認識システムによって、または人間によって手動で実行され得る。実世界の状態での堅牢性を向上させるために、トレーニングサンプル236の少なくとも一部におけるトレーニング発話220は、部屋シミュレータを使用して様々な程度のノイズおよび残響を追加する225ことによって人為的に破壊されてもよい。一例では、複数のトレーニング例からなるセットは、全体的な信号対雑音比(SNR)が異なる(0dBから30dBであり、平均SNRが12dB)複数のトレーニング発話220を持っている場合がある。結果として、各トレーニングサンプル236は、トレーニング発話211のオーディオデータと、対応する参照転写220と、複数の参照出力ラベル222からなるシーケンスとを含むことができる。
【0040】
トレーニングプロセス200中、トレーニングモジュール270は、組み合わせモデル140のパラメータを調整する。例えば、トレーニングモジュール270は、組み合わせモデル140への入力として、一度に1つのトレーニング発話211に関連付けられる特徴ベクトルを供給可能であり、組み合わせモデル140は、出力として、複数の出力スコア260からなる様々なセットを生成/予測することができる。個々の複数の出力スコア260はそれぞれ、出力ラベルセット265内における異なる複数の出力ラベルに対応する。出力ラベルセット265は、言語単位、例の書記素、およびエンドポイントトークン</s>275を含む。複数の出力スコア260はそれぞれ、対応する記号が、発話を表すデコードされたシーケンスに追加されるべき相対尤度を表す。追加のタイプの出力ラベルが使用されてもよく、例えば、スペース文字の出力ラベル、句読点の出力ラベル、およびデコードされたラベルシーケンスへの正書法(たとえば、記述された)要素の追加を表さない「空白」出力ラベルが使用されてもよい。トレーニングモジュール270は、予測された複数の出力ラベル265および関連付けられた複数の出力スコア260を、対応する参照転写211についての複数の参照出力ラベル222と比較するように構成されるとともに、予測の精度を改善するために、組み合わせモデル140のパラメータ、例えば、ニューラルネットワークの重みを調整するように構成される。エンドポイントトークン</s>275の予測精度を向上させるためのトレーニングは、言語単位の出力ラベルのトレーニングと組み合わせで同時に行うことができる。モデルパラメータを調整するこのプロセスは、多くの異なるトレーニングサンプル236に対して繰り返されて、組み合わせモデル140をトレーニングして、音声デコードおよびエンドポイント決定の両方について正確な予測を行うことができる。
【0041】
図1を再び参照して、エンドポインタ150は、ユーザがいつ話し終えたかを判定するための音声認識装置のコンポーネントである。エンドポインタの目的は、ボイスアシスタントやボイス検索などのストリーミング音声認識アプリケーションで自然で高速なボイス対話を保証することである。ユーザが話し終えたらすぐにマイクロフォンを閉じることが望ましい。これにより、システム応答の遅延またはレイテンシが最小限に抑えられる。ただし、ユーザがまだ話している間は切断しないようにすることも重要である。エンドポイント決定のエラーは、ユーザエクスペリエンスに大きな影響を与える可能性がある。システムがマイクロフォンを閉じるのに待ちすぎると、ユーザエクスペリエンスにおいて遅く感じられる。システムが急ぎすぎると、ユーザは話している最中に切れてしまう。したがって、転写の精度(単語誤り率(WER)で測定)とレイテンシの間のトレードオフは、ASRアプリケーションにとって非常に重要である。システムは、WERを低下させることなく、発話後に可及的に早くエンドポイント決定を行いマイクロフォンをと閉じる必要がある。
【0042】
一部のASRシステムは、個別の音響、発音、および言語モデルのコンポーネントを含む。これらのASRシステムは、個別にトレーニングされたエンドポイント決定モジュールに依存する場合があり、これは、個々のコンポーネントと相互作用して、行われた発話の終了を識別する。
【0043】
発話の終了を認識する1つの方法は、VADを使用して、オーディオ信号の各フレームを音声または無音として分類することである。VADでは、システムが音声を観察し、後に長い無音間隔が続くとすぐにマイクロフォンが閉じる。VADは、現在の音声と現在の無音を区別する音響キューを検出するが、現在の無音の後に後続の音声が続くかどうかを予測するのに役立つ可能性のある潜在的なキューを無視する。これらの潜在的な音響キューは、人間の話し手が所与のポーズの後に話し続ける意図があるか否かの決定について情報提供する、フィラーサウンド、話すリズム、または基本周波数を含む。したがって、この方法はシステム応答に長い遅延をもたらす可能性がある。
【0044】
確率的クエリ終了(EOQ)分類装置は、ユーザが所与の時間に話し終えたかどうかを直接予測するようにトレーニングされる。EOQ分類装置は、音声、初期無音、中間無音、および最終無音を探す。EOQ分類装置は、ユーザが音声をさらに発する意図があるかどうかを示すのに役立つ音響キューを検出できる。さらに、VADは発話の開始と終了近くの無音を同じように処理するのに対して、EOQ分類装置はそれらを異なる方法で処理する。EOQ分類装置では、エンドポイント決定の確率は発話全体を通して時間とともに増加する。EOQ分類装置は、言語モデルからの情報を考慮せずに、音響情報のみに基づいてエンドポイントの決定を行う。EOQ分類装置は、音響モデル、発音モデル、言語モデルなど、ASRの他のコンポーネントから独立してトレーニングされる。
【0045】
図3Aは、複数のオーディオ特徴135からなるシーケンスによって表される発話120について、EOQ分類装置によって出力された複数のクエリ終了(EOQ)検出ラベルからなるシーケンスのプロット300aを示している。プロット300aはまた、発話120について、対応する転写165を示している。EOQ検出ラベルは、音声(「0」)、初期無音(「3」)、中間無音(「2」)、および最終無音(「3」)を含む。シーケンス出力ラベルの記号<sp>は、スペースを表す。フレームに関し最終的な無音の後は、ハードマイクロフォンの終了決定を取得するためにしきい値処理される。EOQ分類装置は、同じWERでVADベースのエンドポインタよりも約100ミリ秒のレイテンシの改善を示している。
【0046】
VAD分類装置とEOQ分類装置はどちらも、言語モデルからの情報を無視して、音響情報のみに基づいてエンドポイントの決定を行う。さらに、これらの分類装置は、音響モデル、発音モデル、言語モデルなど、ASRパイプラインの他のコンポーネントから独立してトレーニングされる。デコードとエンドポイント決定を組み合わせで実行するようにエンドツーエンドモデルをトレーニングすることにより、VADおよびEOQ分類装置を改善できる。
【0047】
図3Bは、RNN-Tの組み合わせモデル140によって出力された、デコードされた複数の出力ラベル265からなるシーケンスのプロット300bである。RNN-Tモデルによる組み合わせデコードおよびエンドポイント決定を有効にするために、RNN-Tモデルは文末(エンドポイントなど)トークン</s>175でトレーニングされる。ここで、ビームサーチ処理145は、</s>が出力されると終結する。ここで、エンドポイントトークン</s>175は、発話120の終了を示すエンドポイント標示に対応する。これにより、エンドポイント決定がエンドツーエンドモデルに組み合わせで統合され、外部のVADまたはEOQ分類装置への依存が最小限に抑えられる。
【0048】
図4は、組み合わせモデル400のRNN-Tのアーキテクチャを示している。アーキテクチャでは、エンコーダ410は、音響特徴ベクトル
【0049】
【数1】
【0050】
を受信する音響モデルに類似している。これに対し、予測ネットワーク420は、以前の書記素ラベル予測yu-1を入力として受信し、出力ベクトルpを計算する言語モデルとして機能する。音響フレーム入力tとラベルuの組み合わせごとに、エンコーダ410の複数の出力hおよび予測の複数の出力pは、出力ロジットを計算するために組み合わせネットワーク430に渡され、これは、複数の出力ターゲットからなるセットにわたる確率分布を定義するソフトマックス層440へと供給される。したがって、RNN-Tは、追加の外部言語モデルを使用せずに直接書記素を直接出力するように構成されているので、エンドツーエンドモデルとしてしばしば説明される。
【0051】
RNN-Tの条件付き確率分布は、次のように表すことができる。
【0052】
【数2】
【0053】
ここで、xは特徴ベクトルであり、各フレーム1…Tの80次元のログメルフィルターバンク特徴である。長さUのグラウンドトゥルースラベルシーケンスは、y、y、…、yとして表される。ここで、
【0054】
【数3】
【0055】
であり、Sは複数の書記素記号からなるセットである。特別な記号y=<sos>は、シーケンスの開始を示す。定式化の便宜のために、Sは、追加の空白記号<b>で拡張され、可能なすべてのアラインメントのセットは、次のように記述される。
【0056】
【数4】
【0057】
ここで、
【0058】
【数5】
【0059】
はすべてのラベルシーケンス
【0060】
【数6】
【0061】
を表し、
【0062】
【数7】
【0063】
は、<b>を取り除くとyに等しくなるようになっている。この表記を使用して、所与の音響のラベル付けの条件付き確率P(y|x)は、アライメントを単純に合計することによって得られる。
【0064】
アラインメント
【0065】
【数8】
【0066】
においてでいくつかのラベルが表れる確率は、時間tまでの音響特性と、これまでに出た非空白ラベル
【0067】
【数9】
【0068】
の履歴により条件付けられている。時間tまでの部分的なアラインメント
【0069】
【数10】
【0070】
の確率は、将来のフレームからの音響特徴に依存しないという唯一の独立仮定がなされている。これにより、ストリーミング方式での推論が可能になり、計算を開始する前にすべてのオーディオを待つ必要がなくなる。これにより、実行が高速化されるだけでなく、オーディオの処理中に認識結果が生成され、組み合わせのエンドポイント決定が可能となる。
【0071】
エンドポイント決定でRNN-Tを拡張するよう、特別な記号</s>は、予想されるラベルシーケンスの一部として発話の終わりを示す。一部の例では、RNNTモデル140は、トップビームに</s>が含まれている場合に、マイロフォンを閉じる決定を行う。したがって、モデルはデコーダとエンドポインタとして組み合わせで機能する。
【0072】
</s>の予測ミスは、特に</s>の予測が早すぎる場合、他の記号よりも品質に大きな影響を与える可能性がある。したがって、</s>の後において、デコードのためにビーム検索を実行するときに、2つの異なる側面で正確に制御を行う。
【0073】
まず、</s>ラベルは、以下に示すように正のスケールαで制限が課される。
【0074】
【数11】
【0075】
αを制御することにより、</s>の後においては、他の記号と競合すると、直接変更が行われる。αが1より大きい値に設定されている場合、追加の制限が</s>に追加される。この場合、</s>を含む仮説は、サーチビーム内の他の仮説よりもコストが高いため、上位に表示される可能性は低くなる。エンドポイントの決定を宣言することは最上位の仮説に依存しているため、変更によりエンドポイントの決定は急いで行われにくくなる。逆に、小さいαを使用すると、エンドポイント決定がより急いで行われるようになり、削除エラーが発生してWERに悪影響を与える可能性がある。
【0076】
第2に、</s>に係る検索空間は、後方において変更が行われて事前定義されたしきい値βを超えている場合にのみ拡張され、早期のエンドポイント決定をさらに低減する。エンドポイントトークン</s>は、次の条件が満たされた場合にのみサーチビームに追加される。
【0077】
【数12】
【0078】
αをスイープすると、検索中に仮説を拡張するときに</s>記号が破棄または許容される。したがって、βは</s>記号をサーチビームに表示が許容されるかどうかを決定し、αは</s>を使用した仮説の順序に影響を与える。
【0079】
図5は、(a)EOQ、(b)エンドツーエンドエンドポインタ、および(c)EOQとエンドツーエンドエンドポインタの両方を使用してエンドポイント決定をトリガーする複合システムの実装(いずれかのシステムが最初にトリガーするかに基づいている)について、WERとレイテンシの実験結果を示す例示的なプロット500を示している。エンドポイント決定の目標は、レイテンシで測定される高速エンドポイント決定とWERで測定される精度の間の最良のトレードオフを見つけることである。アグレッシブなエンドポインタはWERを毀損することを犠牲にしてより速い応答を提供する可能性があるが、パッシブなエンドポインタはWERを改善するかも可能性があるが、レイテンシを増大させる可能性がある。
【0080】
以下は、組み合わせのデコードとエンドポイント決定に使用できるRNN-Tモデルの具体例であるが、他の多くの構成が効果的に使用され得る。RNN-Tモデルの例では、25ミリ秒のウィンドウを使用して計算された10ミリ秒のフレームステップで80次元のログメル特徴を使用している。これらの特徴は、左側に3フレームでスタックされ、30ミリ秒のフレームレートにダウンサンプリングされる。エンコーダネットワークアーキテクチャは、8つの長短期記憶(LSTM)で構成され、各層には2,048の隠れユニットがあり、その後に640次元の射影(projection)層が続く。デコーダは2つのLSTM層で、2,000の隠れユニットと640次元の射影がある(層ごと)。トレーニングを安定させるために、エンコーダとデコーダの各LSTM層の後にレイヤーノルム層が入力される。エンコーダとデコーダは、640個の隠れユニットを持つ組み合わせネットワークに供給される。組み合わせネットワークは、合計76の書記素ユニットを持つソフトマックス層に供給される。例示的なRNN-Tモデルは、グローバルバッチサイズが4,096の8x8テンソルプロセッシングユニット(TPU)スライスでトレーニングされる。
【0081】
以下は、エンドポイント決定に使用できるEOQ検出装置の例である。例示的なEOQ入力音響特徴ベクトルシーケンスは、上限が4kHzでフレームステップが10msで25ミリ秒のウィンドウを使用して、40次元のログメルフィルターバンクで構成される。例示的なEOQ分類装置では、畳み込みLSTMディープニューラルネットワーク(DNN)を使用しており、これは、畳み込みスタックLSTM層とDNN層の組み合わせである。複数の特徴は、周波数畳み込み層に渡され(8つの周波数帯域のフィルター幅、ストライド3でプール)、その後、64ノードのReLU DNN層、2つの64セルLSTM層のシーケンス、別の64ノードのReLU DNNレイヤー、および4ノードのソフトマックスレイヤーが続く。
【0082】
エンドツーエンドのエンドポインタの場合、エンドポイント決定の速度と転写の精度のトレードオフは、スケールαとしきい値βをスイープすることで管理できる。αが大きいほど、エンドポイント記号</s>に大きな制限が加わることを意味し、これにより、エンドポイント決定が遅くなるが、削除も回避される。同様に、より大きなβを使用すると、検索空間でのエンドポイント記号の可用性の拡大が回避され、エンドポイントの決定がそれほどアグレッシブにならない。両方のパラメータを組み合わせでスイープして、最適な動作点を見つける。αとβの値の例は、α=2.0とβ=0.65である。
【0083】
図5の例示的なプロット500では、結合システムでは、EOQエンドポインタよりもはるかに高速であるため、エンドツーエンドのエンドポインタが優勢である。エンドツーエンドエンドポインタは、メディアンレイテンシを500ミリ秒から200ミリ秒に低減する(60%の相対的な改善)。しかしながら、エンドツーエンドのエンドポインタは、レイテンシとWERの両方でEOQよりも優れているが、エンドポイント決定のカバレッジ損失は約10%である。これは、エンドツーエンドのエンドポインタがエンドポイントを決定すると、EOQエンドポインタよりもはるかに短いレイテンシで非常に迅速にエンドポイント決定を行うことを示している。ただし、発話のサブセットの場合、エンドツーエンドのエンドポインタは、エンドポイント決定を全く行えない可能性がある。一方、結合システムは、EOQシステムから補助されてこのカバレッジ損失を補償すると同時に、発話の大部分についてエンドツーエンドのエンドポインタによる高速エンドポイント決定を行う。結合システムは、EOQベースラインと比較して、WERまたはエンドポイントカバレッジの低下がない、結合システムによる270ミリ秒の改善(54%の相対的な改善)を示している。結合システムでは、エンドツーエンドエンドポインタは、発話の82%の決定を宣言する主要なエンドポインタであり、EOQエンドポインタは発話の16%のリセットをカバーする。したがって、結合システムは、EOQエンドポインタによる高いカバレッジとエンドツーエンドエンドポインタによるローレイテンシの両方を維持できる。
【0084】
図6A図6Cは、EOQエンドポインタ(図6A)、エンドツーエンドのエンドポインタ(図6B)、およびEOQとエンドツーエンドエンドポインタの両方を使用してエンドポイント決定をトリガーする複合システム(図6C)(いずれかのシステムが最初にエンドポイントをトリガーするかに基づいている)について、レイテンシを比較する実験結果を示す一連のヒストグラム600a~cを示している。図6Aは、実際にエンドポイント決定された発話のEOQエンドポインタレイテンシのヒストグラム600aを示している。エンドポインタレイテンシが300ミリ秒未満の発話はごくわずかである。レイテンシは主に300msから1400msの間に散らばっている。
【0085】
図6Bは、エンドツーエンドのエンドポインタのレイテンシに関し、同様のヒストグラム600bを示している。この場合、ほとんどすべてのレイテンシは0~400ミリ秒である。図6Cは、エンドツーエンドおよびEOQエンドポインタのヒストグラム600cを示している。発話の大部分は、エンドツーエンドのエンドポインタにより、レイテンシが400ミリ秒以内であるため、システムは迅速に動作する。EOQは600ミリ秒から1400ミリ秒に散らばったレイテンシで少量のコーナーケースを処理するため、ヒストグラム600cのロングテールが予想される。
【0086】
ここで説明する技法を実装するために使用できるコンピューティングデバイス700およびモバイルコンピューティングデバイス750の例を示している。コンピューティングデバイス700は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すことを目的としている。モバイルコンピューティングデバイス750は、携帯情報端末、携帯電話、スマートフォン、および他の同様のコンピューティングデバイスなどの様々な形態のモバイルデバイスを表すことを目的としている。ここに示されているコンポーネント、それらの接続と関係、およびそれらの機能は、単なる例であり、限定するものではない。
【0087】
コンピューティングデバイス700は、プロセッサ702、メモリ704、ストレージデバイス706、メモリ704および複数の高速拡張ポート710に接続する高速インターフェース708、および低速拡張ポート714および記憶装置706に接続する低速インターフェース712を含む。プロセッサ702、メモリ704、記憶装置706、高速インターフェース708、高速拡張ポート710、および低速インターフェース712のそれぞれは、様々なバスを使用して相互接続され、必要に応じて、一般的なマザーボードまたは他の方法で取り付けられてもよい。プロセッサ702は、メモリ704または記憶装置706に記憶された命令を含む、コンピューティングデバイス700内で実行するための命令を処理することができ、これにより、高速インターフェース708に結合されたディスプレイ716などの外部入力/出力デバイス上にGUIのグラフィック情報を表示する。他の実装形態では、複数のメモリおよびメモリのタイプとともに、必要に応じて、複数のプロセッサおよび/または複数のバスを使用することができる。また、複数のコンピューティングデバイスを接続して、各デバイスが必要な操作の一部を提供することも可能である(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)。
【0088】
メモリ704は、コンピューティングデバイス700内に情報を記憶する。一部の実装形態では、メモリ704は、揮発性メモリユニットまたは複数のユニットである。一部の実装形態では、メモリ704は、不揮発性メモリユニットまたは複数のユニットである。メモリ704はまた、磁気ディスクまたは光ディスクなどの別の形態のコンピュータ可読媒体であり得る。
【0089】
ストレージデバイス706は、コンピューティングデバイス700に大容量ストレージを提供することができる。一部の実装では、ストレージデバイス706は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリまたは他の同様のソリッドステートメモリデバイスなどのコンピュータ可読媒体、あるいはストレージエリアネットワークまたはその他の構成のデバイスを含むデバイスの配列であり得るか、またはそれらを含み得る。命令は情報キャリアに記憶されてもよい。命令は、1つまたは複数の処理装置(例えば、プロセッサ702)によって実行されると、上記のような1つまたは複数の方法を実行する。命令はまた、コンピュータまたは機械可読媒体(例えば、メモリ704、記憶装置706、またはプロセッサ702上のメモリ)などの1つまたは複数の記憶装置によって記憶することができる。
【0090】
高速インターフェース708は、コンピューティングデバイス700の帯域幅集約型の動作を管理し、低速インターフェース712は、帯域幅集約型のより低い動作を管理する。このような機能の割り当ては一例に過ぎない。いくつかの実装形態では、高速インターフェース708は、メモリ704、ディスプレイ716(例えば、グラフィックプロセッサまたはアクセラレータを介して)、および高速拡張ポート710に結合されており、高速拡張ポート710は、さまざまな拡張カードを受容できる(図示せず)。実装において、低速インターフェース712は、記憶装置706および低速拡張ポート714に結合される。低速拡張ポート714は、様々な通信ポート(例えば、USB、ブルートゥース(登録商標)、イーサネット(登録商標)、ワイヤレスイーサネット)を含み得る。低速拡張ポート714は、キーボード、ポインティングデバイス、スキャナ、またはスイッチまたはルータなどのネットワークデバイス(例えば、ネットワークアダプタを介して)などの1つまたは複数の入力/出力デバイスに結合することができる。
【0091】
コンピューティングデバイス700は、図に示されるように、いくつかの異なる形態で実装され得る。例えば、それは、標準サーバ720として、またはそのようなサーバのグループに複数回実装され得る。さらに、それは、ラップトップコンピュータ722などのパーソナルコンピュータに実装され得る。それはまた、ラックサーバシステム724の一部として実装され得る。あるいは、コンピューティングデバイス700からのコンポーネントは、モバイルコンピューティングデバイス750などのモバイルデバイス(図示せず)内の他のコンポーネントと組み合わせることができる。そのようなデバイスのそれぞれは、コンピューティングデバイス700およびモバイルコンピューティングデバイス750のうちの1つまたは複数を含む場合があり、システム全体は、互いに通信する複数のコンピューティングデバイスから構成され得る。
【0092】
モバイルコンピューティングデバイス750は、他の構成要素の中でも、プロセッサ752、メモリ764、ディスプレイ754などの入力/出力デバイス、通信インターフェース766、およびトランシーバ768を含む。モバイルコンピューティングデバイス750はまた、追加のストレージを提供するために、マイクロドライブまたは他のデバイスなどのストレージデバイスを備えてもよい。プロセッサ752、メモリ764、ディスプレイ754、通信インターフェース766、およびトランシーバ768のそれぞれは、様々なバスを使用して相互接続され、いくつかの構成要素は、共通のマザーボードに、または必要に応じて他の方法で取り付けられ得る。
【0093】
プロセッサ752は、メモリ764に格納された命令を含む、モバイルコンピューティングデバイス750内の命令を実行することができる。プロセッサ752は、別個の複数のアナログおよびデジタルプロセッサを含むチップのチップセットとして実装され得る。プロセッサ752は、例えば、ユーザインターフェースの制御、モバイルコンピューティングデバイス750によって実行されるアプリケーション、およびモバイルコンピューティングデバイス750による無線通信などの、モバイルコンピューティングデバイス750の他のコンポーネントの調整のために提供することができる。
【0094】
プロセッサ752は、ディスプレイ754に結合されたディスプレイインターフェース756および制御インターフェース758を介してユーザと通信することができる。ディスプレイ754は、例えば、TTF(薄膜トランジスタ液晶ディスプレイ)ディスプレイまたはOLED(有機発光ダイオード)ディスプレイ、または他の適切なディスプレイ技術であり得る。ディスプレイインターフェース756は、グラフィックおよび他の情報をユーザに提示するためにディスプレイ754を駆動するための適切な回路を備え得る。制御インターフェース758は、ユーザからコマンドを受信し、それらをプロセッサ752に提出するために変換することができる。さらに、外部インターフェース762は、モバイルコンピューティングデバイス750と他のデバイスとの近距離通信を可能にするために、プロセッサ752との通信を提供することができる。外部インターフェース762は、例えば、いくつかの実装における有線通信、または他の実装における無線通信を提供することができ、複数のインターフェースも使用することができる。
【0095】
メモリ764は、モバイルコンピューティングデバイス750内に情報を記憶する。メモリ764は、コンピュータ可読媒体または複数の媒体、揮発性メモリユニットまたは複数のユニット、または不揮発性メモリユニットまたは複数のユニットのうちの1つまたは複数として実装することができる。拡張メモリ774はまた、例えば、SIMM(シングルインラインメモリモジュール)カードインターフェースを含み得る拡張インターフェース772を介して提供され、モバイルコンピューティングデバイス750に接続され得る。拡張メモリ774は、モバイルコンピューティングデバイス750に追加の記憶空間を提供することができ、またはモバイルコンピューティングデバイス750にアプリケーションまたは他の情報を記憶することもできる。具体的には、拡張メモリ774は、上記のプロセスを実行または補足するための命令を含んでいてもよく、セキュアな情報も含み得る。したがって、例えば、拡張メモリ774は、モバイルコンピューティングデバイス750のためのセキュリティモジュールとして提供されてよく、モバイルコンピューティングデバイス750のセキュアな使用を可能にする命令でプログラムされ得る。さらに、セキュアなアプリケーションは、SIMMカードにハッキングできない方法で識別情報を配置するなどの追加情報とともに、SIMMカードを介して提供される場合がある。
【0096】
メモリは、例えば、以下で説明するように、フラッシュメモリおよび/またはNVRAMメモリ(不揮発性ランダムアクセスメモリ)を含み得る。いくつかの実装形態では、命令は、情報キャリアに記憶される。命令は、1つまたは複数の処理装置(例えば、プロセッサ752)によって実行されると、上記のような1つまたは複数の方法を実行する。命令はまた、1つまたは複数のコンピュータまたは機械可読媒体(例えば、メモリ764、拡張メモリ774、またはプロセッサ752上のメモリ)などの1つまたは複数の記憶装置によって記憶することができる。いくつかの実装形態では、命令は、例えば、トランシーバ768または外部インターフェース762を介して、伝播された信号で受信することができる。
【0097】
モバイルコンピューティングデバイス750は、必要に応じてデジタル信号処理回路を含み得る通信インターフェース766を介して無線で通信することができる。通信インターフェース766は、例えば、GSM(登録商標)ボイス通話(モバイル通信用グローバルシステム)、SMS(ショートメッセージサービス)、EMS(拡張メッセージングサービス)、またはMMSメッセージング(マルチメディアメッセージングサービス)、CDMA(符号分割多元接続)、TDMA(時分割多元接続)、PDC(パーソナルデジタルセルラー)、WCDMA(登録商標)(広帯域符号分割多元接続)、CDMA2000、またはGPRS(一般パケット無線サービス)等、様々なモードまたはプロトコルの下での通信を提供することができる。そのような通信は、例えば、無線周波数を使用するトランシーバ768を介して発生し得る。さらに、ブルートゥース、WiFi、または他のそのようなトランシーバ(図示せず)を使用するなど、短距離通信が発生する可能性がある。さらに、GPS(全地球測位システム)受信機モジュール770は、モバイルコンピューティングデバイス750上で実行されるアプリケーションによって適切に使用され得る、追加のナビゲーションおよび位置関連の無線データをモバイルコンピューティングデバイス750に提供し得る。
【0098】
モバイルコンピューティングデバイス750はまた、オーディオコーデック760を使用して聴覚的に通信することができ、オーディオコーデック760は、ユーザから音声情報を受信し、それを使用可能なデジタル情報に変換することができる。オーディオコーデック760は、同様に、例えば、モバイルコンピューティングデバイス750の受話器内のスピーカーを通してなど、ユーザのために可聴音を生成することができる。そのような音は、音声電話からの音を含んでいてもよく、録音された音(例えば、音声メッセージ、音楽ファイルなど)を含んでいてもよく、また、モバイルコンピューティングデバイス750上で動作するアプリケーションによって生成された音を含み得る。
【0099】
モバイルコンピューティングデバイス750は、図に示されるように、いくつかの異なる形態で実装され得る。例えば、それは、携帯電話780として実装され得る。それはまた、スマートフォン782、携帯情報端末、または他の同様のモバイルデバイスの一部として実装され得る。
【0100】
図8は、発話のエンドポイント決定を行う方法800の動作の例示的な構成のフローチャートである。動作802において、方法800は、処理ハードウェア111において、ユーザデバイス110のユーザ115によって話された発話120のオーディオデータ125を受信することを含む。動作804において、方法800は、データ処理ハードウェア111によって、オーディオデータ125を処理して、発話の音声デコードおよびエンドポイント決定を組み合わせで実行するように構成された音声認識モデル140からの出力として、発話の部分的な音声認識結果165と、発話がいつ終了したかを示すエンドポイント標示175と、を取得することを含む。オーディオデータ125の処理中に、方法800は、動作806において、データ処理ハードウェア111によって、音声認識モデル140から出力されたエンドポイント標示175に基づいて、発話120の終了を検出することを含む。動作808において、方法800は、発話120の終了を検出することに応じて、データ処理ハードウェア111によって、発話120の終了が検出された後に受信された後続のオーディオデータ125の処理を終結することをさらに含む。
【0101】
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)は、コンピューティングデバイスにタスクを実行させるコンピュータソフトウェアを指す場合がある。いくつかの例では、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」、または「プログラム」を指す場合がある。アプリケーションの例には、システム診断アプリケーション、システム管理アプリケーション、システムメンテナンスアプリケーション、ワード処理アプリケーション、スプレッドシートアプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲームアプリケーションが含まれるが、これらに限定されない。
【0102】
非一時的メモリは、コンピューティングデバイスによって使用するために一時的または永続的にプログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を格納するために使用される物理デバイスであり得る。非一時的メモリは、揮発性および/または不揮発性のアドレス可能な半導体メモリであり得る。不揮発性メモリの例には、フラッシュメモリおよび読み取り専用メモリ(ROM)/プログラム可能な読み取り専用メモリ(PROM)/消去可能なプログラム可能な読み取り専用メモリ(EPROM)/電子的に消去可能なプログラム可能な読み取り専用が含まれるが、これらに限定されない。メモリ(EEPROM)(例えば、通常、ブートプログラムなどのファームウェアに使用される)。揮発性メモリの例には、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、およびディスクまたはテープが含まれるが、これらに限定されない。
【0103】
本明細書に記載のシステムおよび技術の様々な実装は、デジタル電子および/または光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせで実現することができる。これらの様々な実装は、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信し、データおよび命令を送信するために結合された、特別または汎用であり得る少なくとも1つのプログラム可能なプロセッサを含プログラム可能なシステム上で実行可能および/または解釈可能な1つまたは複数のコンピュータプログラムでの実装を含むことができる。
【0104】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとも呼ばれる)は、プログラム可能なプロセッサのマシン命令を含み、高レベルの手続き型および/またはオブジェクト指向プログラミング言語、および/またはアセンブリ/機械語で実装され得る。本明細書で使用される場合、「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械命令および/またはデータをプログラム可能なプロセッサに提供するために使用される、任意のコンピュータプログラム製品、非一時的なコンピュータ可読媒体、装置および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す場合があり、機械命令を機械可読信号として受信する機械可読媒体が含まれる。「機械可読信号」という用語は、プログラム可能なプロセッサに機械命令および/またはデータを提供するために使用される任意の信号を指す。
【0105】
本明細書に記載のプロセスおよび論理フローは、データ処理ハードウェアとも呼ばれる1つまたは複数のプログラム可能なプロセッサによって実行でき、1つまたは複数のコンピュータプログラムを実行して、入力データを操作し、出力を生成することによって機能を実行する。プロセスとロジックフローは、FPGA(フィールドプログラマブルゲートアレイ)やASIC(特定用途向け集積回路)などの特殊用途のロジック回路によっても実行できる。コンピュータプログラムの実行に適したプロセッサには、例として、汎用および特殊目的の両方のマイクロプロセッサ、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサが含まれる。一般に、プロセッサは、読み取り専用メモリまたはランダムアクセスメモリ、あるいはその両方から命令とデータを受信する。コンピュータの重要な要素は、命令を実行するためのプロセッサと、命令とデータを格納するための1つまたは複数のメモリデバイスである。一般に、コンピュータはまた、データを格納するための1つまたは複数の大容量記憶装置、例えば、磁気、光磁気ディスク、または光ディスクを含むか、またはデータを受信するか、データを転送するか、またはその両方に動作可能に結合される。ただし、コンピュータにそのようなデバイスが必要としない。コンピュータプログラムの命令およびデータを格納するのに適したコンピュータ可読媒体には、不揮発性メモリ、メディア、およびメモリデバイスの全ての形態が含まれ、例として、半導体メモリデバイス(例えば、EPROM、EEPROM、およびフラッシュメモリデバイス)、磁気ディスク(例えば、内蔵ハードディスクまたはリムーバブルディスク)光磁気ディスク、CDROMおよびDVD-ROMディスクが含まれる。プロセッサとメモリは、特別な目的の論理回路によって補完または組み込むことができる。
【0106】
ユーザとの対話を提供するために、本開示の1つまたは複数の態様は、ユーザに情報を表示するためのCRT(ブラウン管)、LCD(液晶ディスプレイ)モニター、またはタッチスクリーン等のディスプレイデバイス、任意選択でユーザがコンピュータに入力を提供可能とするキーボードとポインティングデバイス(マウスやトラックボールなど)を有するコンピュータ上に実装することができる。他の種類のデバイスを使用して、ユーザとの対話を提供することもできる。例えば、ユーザに提供されるフィードバックは、視覚的フィードバック、聴覚的フィードバック、または触覚的フィードバックなど、任意の形態の感覚的フィードバックであり得る。また、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形式で受信できる。さらに、コンピュータは、ユーザが使用するデバイスとの間でドキュメントを送受信することにより、ユーザと対話できる。例えば、Webブラウザから受信した要求に応答して、ユーザのクライアントデバイス上のWebブラウザにWebページを送信する。
【0107】
いくつかの実装形態が説明されている。しかしながら、本開示の趣旨および範囲から逸脱することなく、様々な変更を行うことができることが理解されるであろう。したがって、他の実装形態は、以下の特許請求の範囲内にある。
図1
図2
図3A
図3B
図4
図5
図6A
図6B
図6C
図7
図8