(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-04-04
(45)【発行日】2025-04-14
(54)【発明の名称】フリーズワード
(51)【国際特許分類】
G10L 15/28 20130101AFI20250407BHJP
G10L 15/10 20060101ALI20250407BHJP
【FI】
G10L15/28 230K
G10L15/10 200W
(21)【出願番号】P 2023534715
(86)(22)【出願日】2021-11-17
(86)【国際出願番号】 US2021059775
(87)【国際公開番号】W WO2022125283
(87)【国際公開日】2022-06-16
【審査請求日】2023-07-26
(32)【優先日】2020-12-08
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】マシュー・シャリフィ
(72)【発明者】
【氏名】アレクサンダー・クラカン
【審査官】中村 天真
(56)【参考文献】
【文献】特表2018-504623(JP,A)
【文献】特表2023-501283(JP,A)
【文献】特表2022-548064(JP,A)
【文献】特開2021-111191(JP,A)
【文献】特開2020-076884(JP,A)
【文献】特開2017-211608(JP,A)
【文献】特表2016-505888(JP,A)
【文献】国際公開第2020/129421(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 15/00-15/34
(57)【特許請求の範囲】
【請求項1】
データ処理ハードウェア(510)において、ユーザによって話されて、前記ユーザと関連付けられたユーザデバイス(102)によって取り込まれる発話(119)に対応する音声データ(120)を受信するステップと、
前記データ処理ハードウェア(510)によって、前記発話(119)にデジタルアシスタント(109)が動作を行うためのクエリ(122)を含むと判定するために、音声認識器(200)を使用して、前記音声データ(120)を処理するステップであって、前記音声認識器(200)が、前記音声データ(120)における所定の継続時間の非音声の後に前記発話(119)の終端処理をトリガするように構成される、ステップと、
前記音声データ(120)における前記所定の継続時間の非音声の前において、
前記データ処理ハードウェア(510)によって、前記音声データ(120)にフリーズワード(123)を検出するステップであって、前記フリーズワード(123)が、前記ユーザによって話されて前記ユーザデバイス(102)によって取り込まれる前記発話(119)において前記クエリ(122)に続く、ステップと、
前記音声データ(120)に前記フリーズワード(123)を検出したことに応答して、前記データ処理ハードウェア(510)によって、前記ユーザデバイス(102)が前記フリーズワード(123)の後のいかなる音声も取り込むのを防止するために前記ユーザデバイス(102)においてハードマイクロホン遮断イベント(125)をトリガするステップと
、
前記音声データ(120)に前記フリーズワード(123)を検出したことに基づいて、前記音声データ(120)にホットワードが存在することを検証するステップと、
を含む方法(300)。
【請求項2】
前記フリーズワード(123)が、
所与の言語で全てのユーザにわたる1つもしくは複数の固定語を含む既定のフリーズワード(123)、
前記ユーザデバイス(102)の前記ユーザによって特定される1つもしくは複数の語を含むユーザ選択のフリーズワード(123)、または
前記デジタルアシスタント(109)によって行われるべき前記動作と関連付けられたアクション特定のフリーズワード(123)の1つを含む、請求項1に記載の方法(300)。
【請求項3】
前記音声データ(120)に前記フリーズワード(123)を検出するステップが、
前記音声データ(120)から音声特徴を抽出するステップと、
フリーズワード検出モデル(160)を使用して、前記抽出された音声特徴を処理することによってフリーズワード信頼スコアを生成するステップであって、前記フリーズワード検出モデル(160)が前記データ処理ハードウェア(510)上で実行する、ステップと、
前記フリーズワード信頼スコアがフリーズワード(123)信頼閾値を満たす場合に前記発話(119)に対応する前記音声データ(120)が前記フリーズワード(123)を含むと判定するステップとを含む、請求項1または2に記載の方法(300)。
【請求項4】
前記音声データ(120)に前記フリーズワード(123)を検出するステップが、前記データ処理ハードウェア(510)上で実行する前記音声認識器(200)を使用して、前記音声データ(120)に前記フリーズワード(123)を認識するステップを含む、請求項1から3のいずれか一項に記載の方法(300)。
【請求項5】
前記音声データ(120)に前記フリーズワード(123)を検出したことに応答して、
前記データ処理ハードウェア(510)によって、前記音声認識器(200)に前記音声データ(120)へのいかなるアクティブな処理も中止するように命令するステップと、
前記データ処理ハードウェア(510)によって、前記デジタルアシスタント(109)に前記動作の履行を果たすように命令するステップとを更に含む、請求項1から4のいずれか一項に記載の方法(300)。
【請求項6】
前記発話(119)に前記デジタルアシスタント(109)が前記動作を行うための前記クエリ(122)を含むと判定するために前記音声データ(120)を処理するステップが、
前記音声データ(120)に対する音声認識結果(215)を生成するために、前記音声認識器(200)を使用して、前記音声データ(120)を処理するステップと、
前記音声データ(120)が前記動作を行う前記クエリ(122)を含むと判定するために前記音声データ(120)に対する前記音声認識結果(215)に意味解釈を行うステップとを含む、請求項1から5のいずれか一項に記載の方法(300)。
【請求項7】
前記音声データ(120)に前記フリーズワード(123)を検出したことに応答して、
前記データ処理ハードウェア(510)によって、前記音声認識結果(215)から前記フリーズワード(123)を取り除くことによって前記音声データ(120)に対する前記音声認識結果(215)を修正するステップと、
前記データ処理ハードウェア(510)によって、前記修正された音声認識結果(215)を使用して、前記デジタルアシスタント(109)に前記クエリ(122)によって要求される前記動作を行うように命令するステップとを更に含む、請求項6に記載の方法(300)。
【請求項8】
前記音声認識器(200)を使用して前記音声データ(120)を処理するのに先立ち、
前記データ処理ハードウェア(510)によって、ホットワード検出モデル(150)を使用して、前記クエリ(122)に先行する前記音声データ(120)にホットワード(121)を検出するステップと、
前記ホットワード(121)を検出したことに応答して、前記データ処理ハードウェア(510)によって、前記ホットワード(121)および/または前記音声データ(120)において前記ホットワード(121)に続く1つもしくは複数の語に音声認識を行うことによって前記音声データ(120)を処理するように前記音声認識器(200)をトリガするステップとを更に含む、請求項1から7のいずれか一項に記載の方法(300)。
【請求項9】
前記データ処理ハードウェア(510)によって、前記音声データ(120)に前記フリーズワード(123)を検出したことに基づいて前記ホットワード検出モデル(150)によって検出される前記ホットワード(121)の存在を検証するステップを更に含む、請求項8に記載の方法(300)。
【請求項10】
前記音声データ(120)に前記フリーズワード(123)を検出するステップが、前記音声データ(120)に音声認識を行うことなく前記音声データ(120)に前記フリーズワード(123)を検出するように構成される前記データ処理ハードウェア(510)上のフリーズワード検出モデル(160)を実行するステップを含み、
前記フリーズワード検出モデル(160)および前記ホットワード検出モデル(150)が同じまたは異なるニューラルネットワークベースのモデルを各々備える、
請求項1から3のいずれか一項を引用するときの請求項
8に記載の方法(300)。
【請求項11】
データ処理ハードウェア(510)と、
前記データ処理ハードウェア(510)と通信しているメモリハードウェア(520)とを備え、前記メモリハードウェア(520)が、前記データ処理ハードウェア(510)上で実行されると前記データ処理ハードウェア(510)に動作を行わせる命令を記憶しており、前記動作が、
ユーザによって話されて、前記ユーザと関連付けられたユーザデバイス(102)によって取り込まれる発話(119)に対応する音声データ(120)を受信することと、
前記発話(119)にデジタルアシスタント(109)が動作を行うためのクエリ(122)を含むと判定するために、音声認識器(200)を使用して、前記音声データ(120)を処理することであって、前記音声認識器(200)が、前記音声データ(120)における所定の継続時間の非音声の後に前記発話(119)の終端処理をトリガするように構成される、ことと、
前記音声データ(120)における前記所定の継続時間の非音声の前において、
前記音声データ(120)にフリーズワード(123)を検出することであって、前記フリーズワード(123)が、前記ユーザによって話されて前記ユーザデバイス(102)によって取り込まれる前記発話(119)において前記クエリ(122)に続く、ことと、
前記音声データ(120)に前記フリーズワード(123)を検出したことに応答して、前記ユーザデバイス(102)が前記フリーズワード(123)の後のいかなる音声も取り込むのを防止するために前記ユーザデバイス(102)においてハードマイクロホン遮断イベント(125)をトリガすることと
、
前記音声データ(120)に前記フリーズワード(123)を検出したことに基づいて、前記音声データ(120)にホットワードが存在することを検証することと、を含む、
システム(100)。
【請求項12】
前記フリーズワード(123)が、
所与の言語で全てのユーザにわたる1つもしくは複数の固定語を含む既定のフリーズワード(123)、
前記ユーザデバイス(102)の前記ユーザによって特定される1つもしくは複数の語を含むユーザ選択のフリーズワード(123)、または
前記デジタルアシスタント(109)によって行われるべき前記動作と関連付けられたアクション特定のフリーズワード(123)の1つを含む、請求項
11に記載のシステム(100)。
【請求項13】
前記音声データ(120)に前記フリーズワード(123)を検出することが、
前記音声データ(120)から音声特徴を抽出することと、
フリーズワード検出モデル(160)を使用して、前記抽出された音声特徴を処理することによってフリーズワード信頼スコアを生成することであって、前記フリーズワード検出モデル(160)が前記データ処理ハードウェア(510)上で実行する、ことと、
前記フリーズワード信頼スコアがフリーズワード(123)信頼閾値を満たす場合に前記発話(119)に対応する前記音声データ(120)が前記フリーズワード(123)を含むと判定することとを含む、請求項
11または
12に記載のシステム(100)。
【請求項14】
前記音声データ(120)に前記フリーズワード(123)を検出することが、前記データ処理ハードウェア(510)上で実行する前記音声認識器(200)を使用して、前記音声データ(120)に前記フリーズワード(123)を認識することを含む、請求項
11から
13のいずれか一項に記載のシステム(100)。
【請求項15】
前記動作が、前記音声データ(120)に前記フリーズワード(123)を検出したことに応答して、
前記音声認識器(200)に前記音声データ(120)へのいかなるアクティブな処理も中止するように命令することと、
前記デジタルアシスタント(109)に前記動作の履行を果たすように命令することとを更に含む、請求項
11から
14のいずれか一項に記載のシステム(100)。
【請求項16】
前記発話(119)に前記デジタルアシスタント(109)が前記動作を行うための前記クエリ(122)を含むと判定するために前記音声データ(120)を処理することが、
前記音声データ(120)に対する音声認識結果(215)を生成するために、前記音声認識器(200)を使用して、前記音声データ(120)を処理することと、
前記音声データ(120)が前記動作を行う前記クエリ(122)を含むと判定するために前記音声データ(120)に対する前記音声認識結果(215)に意味解釈を行うこととを含む、請求項
11から
15のいずれか一項に記載のシステム(100)。
【請求項17】
前記動作が、前記音声データ(120)に前記フリーズワード(123)を検出したことに応答して、
前記音声認識結果(215)から前記フリーズワード(123)を取り除くことによって前記音声データ(120)に対する前記音声認識結果(215)を修正することと、
前記修正された音声認識結果(215)を使用して、前記デジタルアシスタント(109)に前記クエリ(122)によって要求される前記動作を行うように命令することとを更に含む、請求項
16に記載のシステム(100)。
【請求項18】
前記動作が、前記音声認識器(200)を使用して前記音声データ(120)を処理するのに先立ち、
ホットワード検出モデル(150)を使用して、前記クエリ(122)に先行する前記音声データ(120)にホットワード(121)を検出することと、
前記ホットワード(121)を検出したことに応答して、前記ホットワード(121)および/または前記音声データ(120)において前記ホットワード(121)に続く1つもしくは複数の語に音声認識を行うことによって前記音声データ(120)を処理するように前記音声認識器(200)をトリガすることとを更に含む、請求項
11から
17のいずれか一項に記載のシステム(100)。
【請求項19】
前記動作が、前記音声データ(120)に前記フリーズワード(123)を検出したことに基づいて前記ホットワード検出モデル(150)によって検出される前記ホットワード(121)の存在を検証することを更に含む、請求項
18に記載のシステム(100)。
【請求項20】
前記音声データ(120)に前記フリーズワード(123)を検出することが、前記音声データ(120)に音声認識を行うことなく前記音声データ(120)に前記フリーズワード(123)を検出するように構成される前記データ処理ハードウェア(510)上のフリーズワード検出モデル(160)を実行することを含み、
前記フリーズワード検出モデル(160)および前記ホットワード検出モデル(150)が同じまたは異なるニューラルネットワークベースのモデルを各々備える、
請求項11から13のいずれか一項を引用するときの請求項
18に記載のシステム(100)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、フリーズワードに関する。
【背景技術】
【0002】
音声対応環境(例えば、家庭、職場、学校、自動車等)により、ユーザは、クエリに対応して答えかつ/またはコマンドに基づいて機能を行うコンピュータベースのシステムにはっきりと声に出してクエリまたはコマンドを話すことができる。音声対応環境は、環境の様々な部屋または領域を通して分散される、接続されたマイクロホンデバイスのネットワークを使用して実装できる。これらのデバイスは、環境に存在する別の個人に向けられる発話と対照的に、所与の発話がいつシステムに向けられるかを見分けるのを補助するためにホットワードを使用してよい。したがって、デバイスは、スリープ状態またはハイバネーション状態で動作し、そして検出された発話がホットワードを含むときだけウェイクアップしてよい。一旦ウェイクすると、デバイスは、完全なオンデバイス自動音声認識(ASR)またはサーバベースのASRなどのより高価な処理を行い続けることができる。
【発明の概要】
【課題を解決するための手段】
【0003】
本開示の1つの態様が、フリーズワードを検出するための方法を提供する。上記方法は、データ処理ハードウェアにおいて、ユーザによって話されて、ユーザと関連付けられたユーザデバイスによって取り込まれる発話に対応する音声データを受信するステップを含む。上記方法は、データ処理ハードウェアによって、発話にデジタルアシスタントが動作を行うためのクエリを含むと判定するために、音声認識器を使用して、音声データを処理するステップも含む。音声認識器は、音声データにおける所定の継続時間の非音声の後に発話の終端処理をトリガするように構成される。音声データにおける所定の継続時間の非音声の前において、上記方法は、データ処理ハードウェアによって、音声データにフリーズワードを検出するステップを含む。フリーズワードは、ユーザによって話されてユーザデバイスによって取り込まれる発話においてクエリに続く。音声データにフリーズワードを検出したことに応答して、上記方法は、データ処理ハードウェアによって、ユーザデバイスがフリーズワードの後のいかなる音声も取り込むのを防止するためにユーザデバイスにおいてハードマイクロホン遮断イベントをトリガするステップを含む。
【0004】
本開示の実装例は、以下の任意選択の特徴の1つまたは複数を含んでよい。一部の実装例において、フリーズワードは、所与の言語で全てのユーザにわたる1つもしくは複数の固定語を含む既定のフリーズワード、ユーザデバイスのユーザによって特定される1つもしくは複数の語を含むユーザ選択のフリーズワード、またはデジタルアシスタントによって行われるべき動作と関連付けられたアクション特定のフリーズワードの1つを含む。一部の例では、音声データにフリーズワードを検出するステップは、音声データから音声特徴を抽出するステップと、フリーズワード検出モデルを使用して、抽出された音声特徴を処理することによってフリーズワード信頼スコアを生成するステップであって、フリーズワード検出モデルがデータ処理ハードウェア上で実行する、ステップと、フリーズワード信頼スコアがフリーズワード信頼閾値を満たす場合に発話に対応する音声データがフリーズワードを含むと判定するステップとを含む。
【0005】
音声データにフリーズワードを検出するステップは、データ処理ハードウェア上で実行する音声認識器を使用して、音声データにフリーズワードを認識するステップを含んでよい。任意選択で、上記方法は、音声データにフリーズワードを検出したことに応答して、データ処理ハードウェアによって、音声認識器に音声データへのいかなるアクティブな処理も中止するように命令するステップと、データ処理ハードウェアによって、デジタルアシスタントに動作の履行を果たすように命令するステップとを更に含んでよい。
【0006】
一部の実装例において、発話にデジタルアシスタントが動作を行うためのクエリを含むと判定するために音声データを処理するステップは、音声データに対する音声認識結果を生成するために、音声認識器を使用して、音声データを処理するステップと、音声データが動作を行うクエリを含むと判定するために音声データに対する音声認識結果に意味解釈を行うステップとを含む。これらの実装例において、音声データにフリーズワードを検出したことに応答して、上記方法は、データ処理ハードウェアによって、音声認識結果からフリーズワードを取り除くことによって音声データに対する音声認識結果を修正するステップと、データ処理ハードウェアによって、修正された音声認識結果を使用して、デジタルアシスタントにクエリによって要求される動作を行うように命令するステップも含む。
【0007】
一部の例では、音声認識器を使用して音声データを処理するのに先立ち、上記方法は、データ処理ハードウェアによって、ホットワード検出モデルを使用して、クエリに先行する音声データにホットワードを検出するステップと、ホットワードを検出したことに応答して、データ処理ハードウェアによって、ホットワードおよび/または音声データにおいてホットワードに続く1つもしくは複数の語に音声認識を行うことによって音声データを処理するように音声認識器をトリガするステップとを更に含む。これらの例では、上記方法は、データ処理ハードウェアによって、音声データにフリーズワードを検出したことに基づいてホットワード検出モデルによって検出されるホットワードの存在を検証するステップも含んでよい。任意選択で、音声データにフリーズワードを検出するステップは、音声データに音声認識を行うことなく音声データにフリーズワードを検出するように構成されるデータ処理ハードウェア上のフリーズワード検出モデルを実行するステップを含んでよい。ここで、フリーズワード検出モデルおよびホットワード検出モデルは、同じまたは異なるニューラルネットワークベースのモデルを各々含んでよい。
【0008】
本開示の別の態様が、フリーズワードを検出するための方法を提供する。上記方法は、データ処理ハードウェアにおいて、デジタルアシスタントがユーザによって話される可聴内容を表記させるためのディクテーションベースのクエリに対応する音声データの第1のインスタンスを受信するステップを含む。ディクテーションベースのクエリは、ユーザによって話されて、ユーザと関連付けられたアシスタント対応デバイスによって取り込まれる。上記方法は、データ処理ハードウェアにおいて、ユーザによって話されてアシスタント対応デバイスによって取り込まれる可聴内容の発話に対応する音声データの第2のインスタンスを受信するステップも含む。上記方法は、データ処理ハードウェアによって、可聴内容の表記を生成するために、音声認識器を使用して、音声データの第2のインスタンスを処理するステップも含む。音声データの第2のインスタンスの処理中に、上記方法は、データ処理ハードウェアによって、音声データの第2のインスタンスにフリーズワードを検出するステップを含む。フリーズワードは、ユーザによって話されてアシスタント対応デバイスによって取り込まれる発話において可聴内容に続く。音声データの第2のインスタンスにフリーズワードを検出したことに応答して、上記方法は、データ処理ハードウェアによって、ユーザによって話される可聴内容の表記をアシスタント対応デバイスからの出力のために提供するステップを含む。
【0009】
本開示の実装例は、以下の任意選択の特徴の1つまたは複数を含んでよい。一部の実装例において、音声データの第2のインスタンスにフリーズワードを検出したことに応答して、上記方法は、データ処理ハードウェアによって、アシスタント対応デバイスがフリーズワードの後のいかなる音声も取り込むのを防止するためにアシスタント対応デバイスにおいてハードマイクロホン遮断イベントを開始するステップと、データ処理ハードウェアによって、音声データの第2のインスタンスへのいかなるアクティブな処理も中止するステップと、可聴内容の表記をアシスタント対応デバイスからの出力のために提供するのに先立ち、データ処理ハードウェアによって、表記の末尾からフリーズワードを取り除くステップとを更に含む。
【0010】
任意選択で、上記方法は、データ処理ハードウェアによって、音声認識結果を生成するために、音声認識器を使用して、音声データの第1のインスタンスを処理するステップと、データ処理ハードウェアによって、音声データの第1のインスタンスがユーザによって話される可聴内容を表記させるディクテーションベースのクエリを含むと判定するために音声データの第1のインスタンスに対する音声認識結果に意味解釈を行うステップとを更に含んでよい。一部の例では、表記を生成するために音声データの第2のインスタンスへの処理を開始するのに先立ち、上記方法は、データ処理ハードウェアによって、音声データの第1のインスタンスに対する音声認識結果に行われる意味解釈に基づいてディクテーションベースのクエリがフリーズワードを特定すると判定するステップと、データ処理ハードウェアによって、終端器に可聴内容の発話を終端するための終端処理タイムアウト時間を増加させるように命令するステップも含む。
【0011】
本開示の別の態様が、フリーズワードを検出するためのシステムを提供する。上記システムは、データ処理ハードウェアと、データ処理ハードウェア上で実行されるとデータ処理ハードウェアに動作を行わせる命令を記憶するメモリハードウェアとを含む。上記動作は、ユーザによって話されて、ユーザと関連付けられたユーザデバイスによって取り込まれる発話に対応する音声データを受信することを含む。上記動作は、発話にデジタルアシスタントが動作を行うためのクエリを含むと判定するために、音声認識器を使用して、音声データを処理することも含む。音声認識器は、音声データにおける所定の継続時間の非音声の後に発話の終端処理をトリガするように構成される。音声データにおける所定の継続時間の非音声の前において、上記動作は、音声データにフリーズワードを検出することを含む。フリーズワードは、ユーザによって話されてユーザデバイスによって取り込まれる発話においてクエリに続く。音声データにフリーズワードを検出したことに応答して、上記動作は、ユーザデバイスがフリーズワードの後のいかなる音声も取り込むのを防止するためにユーザデバイスにおいてハードマイクロホン遮断イベントをトリガすることを含む。
【0012】
本開示の実装例は、以下の任意選択の特徴の1つまたは複数を含んでよい。一部の実装例において、フリーズワードは、所与の言語で全てのユーザにわたる1つもしくは複数の固定語を含む既定のフリーズワード、ユーザデバイスのユーザによって特定される1つもしくは複数の語を含むユーザ選択のフリーズワード、またはデジタルアシスタントによって行われるべき動作と関連付けられたアクション特定のフリーズワードの1つを含む。一部の例では、音声データにフリーズワードを検出することは、音声データから音声特徴を抽出することと、フリーズワード検出モデルを使用して、抽出された音声特徴を処理することによってフリーズワード信頼スコアを生成することと、フリーズワード信頼スコアがフリーズワード信頼閾値を満たす場合に発話に対応する音声データがフリーズワードを含むと判定することとを含む。これらの例では、フリーズワード検出モデルは、データ処理ハードウェア上で実行する。
【0013】
音声データにフリーズワードを検出することは、データ処理ハードウェア上で実行する音声認識器を使用して、音声データにフリーズワードを認識することを含んでよい。任意選択で、上記動作は、音声データにフリーズワードを検出したことに応答して、音声認識器に音声データへのいかなるアクティブな処理も中止するように命令することと、デジタルアシスタントに動作の履行を果たすように命令することとを更に含んでよい。
【0014】
一部の実装例において、発話にデジタルアシスタントが動作を行うためのクエリを含むと判定するために音声データを処理することは、音声データに対する音声認識結果を生成するために、音声認識器を使用して、音声データを処理することと、音声データが動作を行うクエリを含むと判定するために音声データに対する音声認識結果に意味解釈を行うこととを含む。これらの実装例において、音声データにフリーズワードを検出したことに応答して、上記動作は、音声認識結果からフリーズワードを取り除くことによって音声データに対する音声認識結果を修正することと、修正された音声認識結果を使用して、デジタルアシスタントにクエリによって要求される動作を行うように命令することも含む。
【0015】
一部の例では、音声認識器を使用して音声データを処理するのに先立ち、上記動作は、ホットワード検出モデルを使用して、クエリに先行する音声データにホットワードを検出することと、ホットワードを検出したことに応答して、ホットワードおよび/または音声データにおいてホットワードに続く1つもしくは複数の語に音声認識を行うことによって音声データを処理するように音声認識器をトリガすることとを更に含む。これらの例では、上記動作は、音声データにフリーズワードを検出したことに基づいてホットワード検出モデルによって検出されるホットワードの存在を検証することも含む。任意選択で、音声データにフリーズワードを検出することは、音声データに音声認識を行うことなく音声データにフリーズワードを検出するように構成されるデータ処理ハードウェア上のフリーズワード検出モデルを実行することを含んでよい。フリーズワード検出モデルおよびホットワード検出モデルは、同じまたは異なるニューラルネットワークベースのモデルを各々含む。
【0016】
本開示の別の態様が、フリーズワードを検出するためのシステムを提供する。上記システムは、データ処理ハードウェアと、データ処理ハードウェア上で実行されるとデータ処理ハードウェアに動作を行わせる命令を記憶するメモリハードウェアとを含む。上記動作は、デジタルアシスタントがユーザによって話される可聴内容を表記させるためのディクテーションベースのクエリに対応する音声データの第1のインスタンスを受信することを含む。ディクテーションベースのクエリは、ユーザによって話されて、ユーザと関連付けられたアシスタント対応デバイスによって取り込まれる。上記動作は、ユーザによって話されてアシスタント対応デバイスによって取り込まれる可聴内容の発話に対応する音声データの第2のインスタンスを受信することも含む。上記動作は、可聴内容の表記を生成するために、音声認識器を使用して、音声データの第2のインスタンスを処理することも含む。音声データの第2のインスタンスの処理中に、上記動作は、音声データの第2のインスタンスにフリーズワードを検出することを含む。フリーズワードは、ユーザによって話されてアシスタント対応デバイスによって取り込まれる発話において可聴内容に続く。音声データの第2のインスタンスにフリーズワードを検出したことに応答して、上記動作は、ユーザによって話される可聴内容の表記をアシスタント対応デバイスからの出力のために提供することを含む。
【0017】
本開示の実装例は、以下の任意選択の特徴の1つまたは複数を含んでよい。一部の実装例において、音声データの第2のインスタンスにフリーズワードを検出したことに応答して、上記動作は、アシスタント対応デバイスがフリーズワードの後のいかなる音声も取り込むのを防止するためにアシスタント対応デバイスにおいてハードマイクロホン遮断イベントを開始することと、音声データの第2のインスタンスへのいかなるアクティブな処理も中止することと、可聴内容の表記をアシスタント対応デバイスからの出力のために提供するのに先立ち、表記の末尾からフリーズワードを取り除くこととを更に含む。
【0018】
任意選択で、上記動作は、音声認識結果を生成するために、音声認識器を使用して、音声データの第1のインスタンスを処理することと、音声データの第1のインスタンスがユーザによって話される可聴内容を表記させるディクテーションベースのクエリを含むと判定するために音声データの第1のインスタンスに対する音声認識結果に意味解釈を行うこととを更に含んでよい。一部の例では、表記を生成するために音声データの第2のインスタンスへの処理を開始するのに先立ち、上記動作は、音声データの第1のインスタンスに対する音声認識結果に行われる意味解釈に基づいてディクテーションベースのクエリがフリーズワードを特定すると判定することと、終端器に可聴内容の発話を終端するための終端処理タイムアウト時間を増加させるように命令することも含む。
【0019】
本開示の1つまたは複数の実装例の詳細が添付の図面および以下の説明に明らかにされる。他の態様、特徴および利点は、同説明および図面から、ならびに特許請求の範囲から明らかであろう。
【図面の簡単な説明】
【0020】
【
図1】フリーズワードを検出するように構成されるアシスタント対応デバイスを含むシステム例である。
【
図2A】ユーザ発話の第2のインスタンスを終端するためのフリーズワードを特定するディクテーションベースのクエリに対応するユーザ発話の第1のインスタンスの概略図である。
【
図2B】発話にフリーズワードを検出したことに応答して終端器に発話を終端するように命令する音響特徴検出器の概略図である。
【
図3】発話にフリーズワードを検出する方法のための動作の配置例のフローチャートである。
【
図4】発話にフリーズワードを検出する方法のための動作の配置例のフローチャートである。
【
図5】本明細書に記載されるシステムおよび方法を実装するために使用され得るコンピューティングデバイス例の概略図である。
【発明を実施するための形態】
【0021】
様々な図面における同様の参照記号は同様の要素を示す。
【0022】
デジタルアシスタントなどの音声ベースのインタフェースが、限定することなく、移動電話および音声を取り込むためのマイクロホンを含むスマートスピーカ/ディスプレイを含む、各種のデバイスにわたってますます一般的になっている。アシスタント対応デバイスとの音声対話を開始する一般的なやり方は、ストリーミング音声に音声対応デバイスによって検出されると、ユーザによって話されるクエリを確認するためにその後の音声を記録および処理し始めるウェイクアッププロセスを開始するようにアシスタント対応デバイスをトリガする固定句、例えば、ホットワードを話すことである。そのため、ホットワードは、それによりユーザが、アシスタント対応デバイスが完全な自動音声認識ASRまたはサーバベースのASRなどのより高価な処理を行い続けることができるようにそれらのアシスタント対応デバイスを低電力状態からウェイクアップさせることができるので、デジタルアシスタントインタフェーススタック全体における重要な構成要素である。
【0023】
アシスタント対応デバイスに対して向けられるユーザによって話されるクエリは、典型的にクエリの2つのカテゴリ内に収まる:会話型クエリおよび非会話型クエリ。会話型クエリは、「タイマを設定して」、「牛乳を買うことを思い出させて」、「バラクオバマの身長はどれくらい」等などの、デジタルアシスタントに動作を行うように問い合わせる標準的なデジタルアシスタントクエリを指す。他方で、非会話型クエリは、ユーザが電子メール、メッセージ、文書、ソーシャルメディア投稿または何らかの他の内容を表記させるために話すより長い形式のクエリであるディクテーションベースのクエリを指す。例えば、ユーザは、クエリ「アレックスに次の電子メールを送って」を話し、次いでデジタルアシスタントが表記させる/することになる電子メールメッセージの内容を話し続け、その後ユーザの電子メールクライアントから受取人(例えば、アレックス)の電子メールクライアントに送ってよい。
【0024】
ASRシステムは、ユーザがいつ話し始めていつ終えたかを判定するために終端器を典型的に使用する。一旦画定されると、音声認識結果を生成するためにユーザの言葉を表す音声の一部分を処理でき、そして一部の事例では、ユーザによって話されるクエリを確認するために音声認識結果に意味解釈を行うことができる。終端器は、発話がいつ始まるまたは終わるかを判定する際に単語間の休止の継続時間を典型的に評価する。例えば、ユーザが「何が<長い休止>夕食か」と言えば、終端器は、長い休止において音声入力を分割し、ASRシステムには、完全句「何が夕食か」の代わりに不完全句「何が」を処理するだけにさせてよい。終端器が発話に対して誤った終端を指定すれば、発話を処理する結果は不正確かつ望ましくなくなり得る。同時に、発話がいつ始まるまたは終わるかを判定する際に単語間の休止のより長い継続時間を見込むことで尚早の終端処理を防ぐのに対して、発話を検出するユーザのアシスタント対応デバイスのマイクロホンが開いたままであり、ユーザデバイスを目的としない音を検出し得る。追加的に、マイクロホンの遮断を遅らせることで、結果的に発話によって特定されるアクションの実行を遅らせる。例えば、ユーザによって話される発話が、デジタルアシスタントが「母に電話する」アクションを行うためのクエリであったならば、ユーザが話すのを止めたらしいことを確認するために終端処理タイムアウト時間が経過するのを終端器が待っている間、デジタルアシスタントが電話を開始するのに必然的に遅れがあることになる。このシナリオでは、アシスタント対応デバイスは、ユーザが意図したものとは異なるアクションの履行に至り得る追加の意図されていない音声も検出し得る結果、ユーザがいつ話し終えたらしいかを適時に判定することができないために検出された追加の音声を解釈してそれに作用する際に計算資源の浪費に至り得る。
【0025】
短すぎる終端処理タイムアウト時間と関連付けられた欠点、例えばユーザが話し終える前に言葉を遮る可能性があること、ならびに長すぎる終端処理タイムアウト時間と関連付けられた欠点、例えば意図されていない言葉を取り込む可能性を増加させること、および発話によって特定されるアクションを実行するための待ち時間増加を軽減するために、本明細書における実装例は、発話の終了時に話されると、ユーザがいつアシスタント対応デバイスに話し終えたかを特定する、フリーズワードを目的とする。或る程度は、「フリーズワード」は、ユーザが音声ベースの会話または長い形式の発話を終了させるために発話を人手で終端してハードマイクロホン遮断イベントを開始できるようにすることによってホットワードの反対に相当する。すなわち、ホットワードがスリープまたはハイバネーション状態からウェイクアップして音声を処理し始めるようにアシスタント対応デバイスをトリガすることになるのに対して、フリーズワードは、音声への全てのアクティブな処理を中止させかつアシスタント対応デバイス上のマイクロホンを停止させることによって反対を行い、それによってアシスタント対応デバイスを逆にスリープまたはハイバネーション状態に遷移させることになる。
【0026】
進行中の音声処理の一部または全てをオフにすることに加えて、一旦フリーズワードが検出されると、アシスタント対応デバイスは、効果的にアシスタント対応デバイスを応答しにくくするために、追加的に多少の時間量の間、将来の処理を無効にしてまたは適合させてよい。例えば、ユーザがフリーズワードを話した後に多少の時間窓の間その後のクエリを出すことを難しく/しにくくするためにホットワード検出閾値が一時的に上げられてよい。このシナリオでは、上げられたホットワード検出閾値は、逆に時間とともに徐々にデフォルト値に低下してよい。追加的または代替的に、特定のユーザによって話されるフリーズワードを検出した後に、音声入力は、その特定のユーザに対して無効にされる。
【0027】
アシスタント対応デバイスは、音声データに音声認識または意味解釈を行うことなく発話に対応する音声データにフリーズワードの存在を検出するように構成される音響特徴検出モデルを実行する。ここで、音響特徴検出モデルは、1つまたは複数のフリーズワードを検出するように訓練されるニューラルネットワークベースのモデルでよい。アシスタント対応デバイスは、音声データにホットワードの存在を検出するための同じまたは異なる音響特徴検出モデルを利用してよい。ホットワード検出のためにもフリーズワード検出のためにも同じ音響特徴検出モデルが使用される場合には、ホットワード検出およびフリーズワード検出の一方だけのための機能性が一度にアクティブであり得る。特に、音響特徴検出モデルは、それらの比較的コンパクトなサイズおよびASRモデルと比較して低い処理要件のためにユーザデバイス上で実行することが可能である。
【0028】
一部の構成では、ハードマイクロホン遮断イベントをトリガすることに加えて、音声データにおけるフリーズワードの検出は、アシスタント対応デバイスがスリープまたはハイバネーション状態であった間に音声データに最近検出されたホットワードの存在を検証する。ここで、検出されたホットワードは、低ホットワード検出信頼スコアと関連付けられ得るが、フリーズワードのその後の検出は、ホットワードが音声データに存在することを検証するための代用として役立ち得る。これらの構成では、ホットワード検出およびフリーズワード検出が行われる間、音声データはアシスタント対応デバイス上にバッファされてよく、そして一旦バッファされた音声データにフリーズワードの検出が検出されると、アシスタント対応デバイスは、バッファされた音声データに音声認識を行うためにウェイクアッププロセスを開始してよい。
【0029】
一部の追加の実装例において、フリーズワード検出は、フリーズワードの存在を認識するためにデバイスまたはサーバ側で現在実行している自動音声認識器を活用する。音声認識器は、1つまたは複数の特定のフリーズワードを認識するためにバイアスされてよい。
【0030】
一部の例では、音声にフリーズワードが検出されるかどうかを判定するために言語モデルが活用されてよい。これらの例では、言語モデルにより、アシスタント対応デバイスは、フリーズワードが実際にはユーザの発話/クエリの一部であり、発話/クエリを終端するためにユーザによって話されるものではないシナリオを識別でき得る。更に、言語モデルは、語句がフリーズワードと類似しており、フリーズワードが言語モデルスコアにつきユーザのクエリ/発話の一部でありそうにない、フリーズワードの準一致も見込むことができる。
【0031】
アシスタント対応デバイスは、限定することなく、既定のフリーズワード、カスタムフリーズワード、ユーザ選択のフリーズワード、アクション特定のフリーズワードおよびクエリ特定のフリーズワードなどの、1つまたは複数の異なる種類/カテゴリのフリーズワードを認識することが可能でよい。既定のフリーズワードは、所与の言語で全てのユーザにわたる1つまたは複数の固定語の語句を含んでよい。例えば、「母に電話して今すぐ」および「外の気温を教えて、ありがとうGoogle」の会話型クエリに関しては、語句「今すぐ」および「ありがとうGoogle」が、ユーザがそれぞれのクエリを人手で終端できるようにするためのフリーズワードに相当する。
【0032】
ユーザ選択のフリーズワードは、前もって、例えばデジタルアシスタントの設定中に、特定のユーザによって特定されるフリーズワードに相当し得る。例えば、ユーザは、提案されたフリーズワードのリストからフリーズワードを選択してよい。任意選択で、ユーザは、語をタイプするまたは話すことによってフリーズワードとして使用するために1つまたは複数のカスタム語を特定してよい。一部のシナリオでは、ユーザは、特定の種類のクエリに対してアクティブであるようにユーザ選択のフリーズワードを特定する。ここで、ユーザは、会話型クエリに対してとは異なるユーザ選択のフリーズワードをディクテーションベースのクエリに対して割り当ててよい。例えば、ディクテーションベースのクエリ「ヘイGoogle、アレックスに次のメッセージを送って、『会議に遅れそうです』完了」において。この例では、「ヘイGoogle」はホットワードに相当し、語句「アレックスに次のメッセージを送って」は、デジタルアシスタントがメッセージを表記させて受取人に送るためのクエリに相当し、語句「会議に遅れそうです」はメッセージの内容に相当し、そして語句「完了」は、クエリを人手で終端するためのユーザ選択のフリーズワードを含む。そのため、フリーズワード「完了」を検出した上で、アシスタント対応デバイスは、発話を直ちに終端し、そして音声認識器に、受取人に送る前に表記されたメッセージからフリーズワードを取り除かせることになる。代替的に、語句「アレックスに次のメッセージを送って」は、代わりにデジタルアシスタントがユーザと受取人との間の音声ベースの通信を容易にするためのクエリに相当し得、メッセージの内容「会議に遅れそうです」は、または単に受取人のデバイス上での可聴再生のために受取人に音声メッセージとして送られる。特に、フリーズワード「完了」は、アシスタント対応デバイスによって検出されると、発話を直ちに終端し、そして受取人に送る前に音声メッセージからフリーズワードの音声を取り除くことになる。
【0033】
アクション特定のフリーズワードは、デジタルアシスタントが行うためのクエリによって特定される特定の動作/アクションと関連付けられる。例えば、クエリ「ヘイGoogle、ただいまとブロードキャストして、ブロードキャスト終了」を話すユーザは、デジタルアシスタントによって行われるブロードキャストアクションに特定のフリーズワード「ブロードキャスト終了」を含める。この例では、語「ただいまとブロードキャストして」は、ユーザが家に帰ったことを他の個人に示すために1つまたは複数のスピーカを通して可聴通知をブロードキャストするアクションを特定する。可聴通知は、可聴通知を聞いた個人がユーザが家に帰ったことを確認できるようにする特定のメロディまたはチャイムを含んでよい。一部の実装例において、アクション特定のフリーズワードは、ユーザ指定のフリーズワードおよび/または既定のフリーズワードと並列に使用可能にされる。
【0034】
クエリ特定のフリーズワードは、ユーザによって話されるクエリの一部として特定されてよい。例えば、以下の発話「ヘイGoogle、終わりと言うまで以下の仕訳記入を表記させて<仕訳記入の内容>終わり」は、デジタルアシスタントが仕訳記入のためにユーザによって話される内容を表記させるためのディクテーションベースのクエリを含む。追加的に、ディクテーションベースのクエリは、ユーザが仕訳記入の内容を話し始める前にフリーズワード「終わり」を更に特定する。ここで、ディクテーションベースのクエリの一部として特定されるフリーズワード「終わり」は、終端器に、フリーズワード「終わり」が検出されるまで終端処理をトリガするのを待つ、または少なくとも終端タイムアウト時間を延ばすように命令する。終端持続時間を延ばすことは、さもなければ終端処理をトリガするであろう、ユーザが仕訳記入の内容を話している間の長い休止を見込む。一部の例では、クエリ特定のフリーズワードは、ユーザ指定のフリーズワードおよび/または既定のフリーズワードと並列に使用可能にされる。
【0035】
図1を参照すると、一部の実装例において、システム例100は、1人または複数のユーザ10と関連付けられかつネットワーク104を介して遠隔システム111と通信しているアシスタント対応デバイス(AED)102を含む。AED102は、移動電話、コンピュータ(ラップトップまたはデスクトップ)、タブレット、スマートスピーカ/ディスプレイ、スマートアプライアンス、スマートヘッドホン、ウェアラブル、車両インフォテインメントシステム等などの、コンピューティングデバイスに相当してよく、かつデータ処理ハードウェア103およびメモリハードウェア105が装備される。AED102は、それぞれのユーザ10から発話を取り込むための1つまたは複数のマイクロホン106を含むまたはそれらと通信している。遠隔システム111は、スケーラブル/弾力的な計算資源113(例えば、データ処理ハードウェア)および/または記憶資源115(例えば、メモリハードウェア)を有する単一のコンピュータ、複数コンピュータまたは分散システム(例えば、クラウド環境)でよい。
【0036】
AED102は、ストリーミング音声118に意味解析または音声認識処理を行うことなくストリーミング音声118にホットワード121および/またはフリーズワード123の存在を検出するように構成される音響特徴検出器110を含む。AED102は、音響特徴検出器110の一部または音響特徴検出器110と別々の部品として実装されてよい音響特徴抽出器112も含む。音響特徴抽出器112は、発話119から音響特徴を抽出するように構成される。例えば、音響特徴抽出器112は、ユーザ10によって話される発話119に対応する、AED102の1つまたは複数のマイクロホン106によって取り込まれるストリーミング音声118を受信し、そして発話119に対応する音声データ120から音響特徴を抽出してよい。音響特徴は、発話119に対応する音声データ120の窓にわたって計算されるメル周波数ケプストラム係数(MFCC)またはフィルタバンクエネルギーを含んでよい。
【0037】
音響特徴検出器110は、音響特徴抽出器112によって抽出された音響特徴を含む音声データ120を受信してよく、そして抽出された特徴に基づいて、ホットワード分類器150が、発話119がユーザ10によって話される特定のホットワード121を含むかどうかを分類するように構成される。AED102は、抽出された音響特徴をメモリハードウェア105のバッファに記憶してよく、そしてホットワード分類器150は、音声データ120がホットワード121を含むかどうかを検出するためにバッファにおける音響特徴を使用してよい。ホットワード分類器150は、ホットワード検出モデル150とも称されてよい。AED102は、特定の語/句と関連付けられた異なるホットワードを検出するように各々訓練される複数のホットワード分類器150を含んでよい。これらのホットワードは、既定のホットワードおよび/またはユーザ10によって割り当てられるカスタムホットワードでよい。一部の実装例において、ホットワード分類器150は、ネットワーク104を介して遠隔システム111から受信される訓練されたニューラルネットワークベースのモデルを含む。
【0038】
音響特徴検出器110は、発話119がユーザ10によって話されるフリーズワード123を含むかどうかを分類するように構成されるフリーズワード分類器160も含む。フリーズワード分類器160は、フリーズワード検出モデル160とも称されてよい。AED102は、特定の語/句と関連付けられた異なるフリーズワードを検出するように各々訓練される複数のフリーズワード分類器160を含んでよい。上記注釈に記載されるように、フリーズワードは、既定のフリーズワード、ユーザ選択のフリーズワード、アクション特定のフリーズワードおよび/またはクエリ特定のフリーズワードを含んでよい。ホットワード分類器150のように、フリーズワード分類器160は、遠隔システム111から受信される訓練されたニューラルネットワークベースのモデルを含んでよい。一部の例では、フリーズワード分類器160およびホットワード分類器150は、同じニューラルネットワークベースのモデルへ組み込まれる。これらの例では、ホットワード分類器150およびフリーズワード分類器160に相当するニューラルネットワークモデルのそれぞれの部分は、決して同時にアクティブにならない。例えば、AED102がスリープ状態である間、ホットワード分類器150は、ストリーミング音声118にホットワード121を聞くためにアクティブでよく、そしてフリーズワード分類器160は非アクティブでよい。一旦ホットワード121が検出されて、AED102を、ウェイクアップしてその後の音声を処理するようにトリガすると、ホットワード分類器150は目下非アクティブでよく、そしてフリーズワード分類器160は、ストリーミング音声118にフリーズワード123を聞くためにアクティブでよい。音響特徴検出器110の分類器150、160は、デジタル信号プロセッサ(DSP)などのAED102の第1のプロセッサ、および/または第1のプロセッサより動作している間に多くの電力を消費する、アプリケーションプロセッサ(AP)もしくはCPUなどのAED102の第2のプロセッサ上で実行してよい。
【0039】
一部の実装例において、ホットワード分類器150は、発話119の初期部分にあるホットワードを識別するように構成される。図示される例では、ホットワード分類器150がホットワード121に特有である音声データ120における音響特徴を検出すれば、ホットワード分類器150は、発話119「Ok Google、ただいまとブロードキャストして、ブロードキャスト終了」がホットワード121「Ok Google」を含むと判定してよい。例えば、ホットワード分類器150は、音声データからMFCCを生成し、そしてMFCCがホットワード分類器150のモデルに記憶されるホットワード「Ok Google」に特有であるMFCCと類似しているMFCCを含むと分類したことに基づいて、発話119「Ok Google、ただいまとブロードキャストして、ブロードキャスト終了」がホットワード121「Ok Google」を含むことを検出してよい。別の例として、ホットワード分類器150は、音声データからメル尺度フィルタバンクエネルギーを生成し、そしてメル尺度フィルタバンクエネルギーがホットワード分類器150のモデルに記憶されるホットワード「Ok Google」に特有であるメル尺度フィルタバンクエネルギーと類似しているメル尺度フィルタバンクエネルギーを含むと分類したことに基づいて、発話119「Ok Google、ただいまとブロードキャストして、ブロードキャスト終了」がホットワード121「Ok Google」を含むことを検出してよい。
【0040】
音響特徴検出器110の段階Aで、発話119に対応する音声データ120がホットワード121を含むとホットワード分類器150が判定すると、AED102は、発話119に対応する音声データ120に音声認識を開始するためにウェイクアッププロセスをトリガしてよい。例えば、AED102上で実行する自動音声認識(ASR)エンジン200(互換的に『音声認識器』200と称される)が、発話119に対応する音声データに音声認識または意味解釈を行ってよい。音声認識器200は、ASRモデル210、自然言語理解(NLU)モジュール220および終端器230を含んでよい。ASRモデル210は、音声認識結果215を生成するために音声データ120を処理してよく、そしてNLUモジュール220は、音声データ120にデジタルアシスタント109が動作を行うためのクエリ122を含むと判定するために音声認識結果215に意味解釈を行ってよい。この例では、ASRモデル210は、「ただいまとブロードキャストして、ブロードキャスト終了」に対する音声認識結果215を生成するために音声データ120を処理してよく、そしてNLUモジュール220は、「ただいまとブロードキャストして」を、ユーザが家に帰ったことを他の個人に示す1つまたは複数のスピーカからの可聴出力のための可聴通知をデジタルアシスタント109がブロードキャストする動作を行うためのクエリ122として識別してよい。代替的に、クエリ122は、デジタルアシスタント109が1つまたは複数のスピーカからの可聴出力のためのユーザが「ただいま」と話す音声メッセージをブロードキャストするためでよい。NLUモジュール220は、音声データ120に検出されるフリーズワードの存在が実際にはクエリ122の一部であり、そのため発話を終端するためにユーザによって話されるものではなかったかどうかを判定するために活用されてもよい。そのため、NLU220は、フリーズワードが実際には発話の一部であるシナリオにおいてフリーズワードの検出をオーバーライドしてよい。NLU220は、これらのシナリオにおいて言語モデルスコアを活用してよい。
【0041】
一部の実装例において、音声認識器200は、AED102に加えて、またはその代わりに遠隔システム111に設けられる。ホットワード分類器150が、発話119にホットワード121を検出したことに応じて、AED102をウェイクアップするようにトリガした上で、AED102は、ネットワーク104を介して遠隔システム111に発話119に対応する音声データ120を送信してよい。AED102は、遠隔システム111がホットワード121の存在を確認するためにASRモデル210を介して音声認識を行うためにホットワード121を含む音声データの部分を送信してよい。代替的に、AED102は、遠隔システム111にホットワード121の後の発話119の部分に対応する音声データ120の部分だけを送信してよい。遠隔システム111は、音声データ120に対する音声認識結果215を生成するためにASRモデル210を実行する。遠隔システム111は、デジタルアシスタント109が動作を行うためのクエリ122を識別するために音声認識結果215に意味解釈を行うためにNLUモジュール220も実行してよい。代替的に、遠隔システム111は、AED102に音声認識結果215を送信してよく、そしてAED102は、クエリ122を識別するためにNLUモジュール220を実行してよい。
【0042】
引き続き
図1を参照して、終端器230は、音声データ120における所定の継続時間の非音声の後に発話の終端処理をトリガするように構成される。ここで、所定の継続時間の非音声は、終端器230が少なくとも所定の継続時間の間の非音声の期間を検出した上で発話を終端することになる終端処理タイムアウト時間に相当してよい。すなわち、終端器230は、AED102における1つまたは複数のマイクロホン106に遮断してストリーミング音声118をもはや取り込まないように命令するハードマイクロホン遮断決定をすることによって発話を終端する。終端処理タイムアウト時間は、ユーザが話し終える前に発話の内容が遮られないように発話を尚早に終端することを防止するのに十分長いデフォルト値に典型的に設定される。同時に、より長い終端処理タイムアウト時間を設定することで、音声における単語間のより長い休止を見込んで、不完全句を処理することを防止するのに対して、アシスタント対応デバイスのマイクロホンが開いたままであり、アシスタント対応デバイスに対して向けられていない音を検出し得る。追加的に、マイクロホンの遮断を遅らせることで、結果的にクエリによって特定されるアクション/動作の実行を遅らせる。
【0043】
音声認識器200が音声データ120を処理している間、かつ終端器230が音声データに所定の継続時間の非音声を検出する前に、フリーズワード分類器160は、同時にAED102上で実行して、音声データ120にフリーズワード123「ブロードキャスト終了」を検出する。ここで、フリーズワード123「ブロードキャスト終了」は、ユーザ10によって話される発話119の終わりにクエリ122に続き、アクション特定のフリーズワード123に相当する。すなわち、フリーズワード123「ブロードキャスト終了」は、音響スピーカを通して通知またはメッセージをブロードキャストするアクション/動作に特定である。一部の例では、NLU220は、音声データ120に対する音声認識結果215にデジタルアシスタント109がブロードキャストする動作を行うためのクエリ122を含むと判定したことに応じてフリーズワード123「ブロードキャスト終了」をアクティブ/有効にするために音響特徴検出器110に命令222を提供する。これらの例では、音響特徴検出器110は、フリーズワード123「ブロードキャスト終了」を検出するように構成されるフリーズワード検出モデルを起動させ/有効にしてよい。
【0044】
一部の実装例において、AED102上で実行するフリーズワード分類器160は、音声認識または意味解釈を行うことなく発話119の終わりにあるフリーズワード123を識別するように構成される。例えば、この例では、フリーズワード分類器160がフリーズワード123に特有である音声データ120における音響特徴を検出すれば、フリーズワード分類器160は、発話119「Ok Google、ただいまとブロードキャストして、ブロードキャスト終了」がフリーズワード123「ブロードキャスト終了」を含むと判定してよい。例えば、フリーズワード分類器160は、音声データからMFCCを生成し、そしてMFCCがフリーズワード分類器160のモデルに記憶されるフリーズワード123「ブロードキャスト終了」に特有であるMFCCと類似しているMFCCを含むと分類したことに基づいて、発話119「Ok Google、ただいまとブロードキャストして、ブロードキャスト終了」がフリーズワード123「ブロードキャスト終了」を含むことを検出してよい。別の例として、フリーズワード分類器160は、音声データからメル尺度フィルタバンクエネルギーを生成し、そしてメル尺度フィルタバンクエネルギーがフリーズワード分類器160のモデルに記憶されるフリーズワード「ブロードキャスト終了」に特有であるメル尺度フィルタバンクエネルギーと類似しているメル尺度フィルタバンクエネルギーを含むと分類したことに基づいて、発話119「Ok Google、ただいまとブロードキャストして、ブロードキャスト終了」がフリーズワード123「ブロードキャスト終了」を含むことを検出してよい。フリーズワード分類器160は、音声データ120における抽出された音声特徴を処理することによってフリーズワード信頼スコアを生成し、そしてフリーズワード信頼スコアがフリーズワード信頼閾値を満たす場合に発話119に対応する音声データ120がフリーズワード123を含むと判定してよい。
【0045】
音響特徴検出器110の段階Bで、終端器230が音声データに所定の継続時間の非音声を検出する前にフリーズワード分類器160が音声データ120にフリーズワード123を検出したことに応答して、AED102は、AED102がフリーズワード123の後のいかなるストリーミング音声118も取り込むのを防止するAED102におけるハードマイクロホン遮断イベント125をトリガしてよい。例えば、ハードマイクロホン遮断イベント125をトリガすることは、AED102が1つまたは複数のマイクロホン106を停止させることを含んでよい。そのため、フリーズワード123は、ユーザ10がいつクエリ122を話し終えるかを示し、それによって終端器230が発話を終端できるように終端器タイムアウト時間が経過するのを待つことなくハードマイクロホン遮断イベント125をトリガする、人手によるキューとしてユーザ10によって話される。代わりに、フリーズワード123を検出したことに応じてハードマイクロホン遮断イベント125をトリガすることにより、AED102が終端器230および/またはASRモデル210に発話を直ちに終端するように命令するようになる。ハードマイクロホン遮断イベント125をトリガすることにより、AED102がASRシステム200に音声データへのいかなるアクティブな処理も中止するように命令し、かつデジタルアシスタント109に動作の履行を果たすように命令するようにもなる。結果として、ユーザがフリーズワード123を話した後は、その後の音声または背景雑音がマイクロホン106によって取り込まれないので、音声認識精度が改善される一方で、発話119が人手で終端されることで、終端処理タイムアウト時間が経過するのを待つ必要なくクエリ122によって特定される動作の履行をデジタルアシスタント109が果たし始めるようにするので、同時に待ち時間が改善される。図示される例では、ASRシステム200は、クエリ122によって特定される動作をデジタルアシスタント109に行わせる出力250をデジタルアシスタント109に提供する。出力250は、動作を行う命令を含んでよい。
【0046】
一部のシナリオでは、出力250は、発話119に対応する音声データ120に対する音声認識結果215も含む。これらのシナリオは、ASRシステム200によって識別されるクエリ122が検索クエリに相当するときに発生し得るが、この場合検索クエリ122に対する音声認識結果215は、検索結果を取り出す検索エンジン(図示せず)に出力250として提供される。例えば、「ヘイGoogle、明日の天気を教えて、今Google」という発話119は、ホットワード「ヘイGoogle」、会話型の検索クエリ122「明日の天気を教えて」、および最後にフリーズワード「今Google」を含んでよい。ASRシステム200は、発話119に対する音声認識結果215を生成するために音声データ120を処理し、そして検索クエリ122を識別するために音声認識結果215に意味解釈を行ってよい。この例を続けると、フリーズワード分類器160がフリーズワード「今Google」を検出したことに応じて、AED102は、ハードマイクロホン遮断イベント125をトリガしてよく、そしてASRシステム200は、音声認識結果215(例えば、表記225)の末尾から語句「今Google」を取り除き、そして明日の天気予報に対する検索結果を取り出すための検索エンジンに検索クエリとして音声認識結果215を提供する。この例では、フリーズワード「今Google」は、音声認識がアクティブである間に話されると、ハードマイクロホン遮断イベント125を人手でトリガする、所与の言語の全てのユーザに共通の既定のフリーズワード123を含んでよい。
【0047】
一部の実装例において、デジタルアシスタント109は、デジタルアシスタント109が前のクエリへの応答を出力した後にユーザから後続のクエリを受け入れるためにマイクロホン106が開いたままにされてよい継続会話に対して有効にされる。例えば、上記の例を使用して、デジタルアシスタント109は、明日の天気予報に対する検索結果を合成音声として可聴に出力し、次いでユーザ10が後続のクエリへのプレフィックスとしてホットワード121を話すことを繰り返す必要なく後続のクエリを話すことができるように、マイクロホン106に開いたままであるように命令してよい。この例では、ユーザ10が後続のクエリを有しなければ、ユーザ10は、語句「ありがとうGoogle」(または1つもしくは複数の固定語の他の語句)を話して、フリーズワード123としてハードマイクロホン遮断イベントをトリガしてよい。ユーザ10が話すかも話さないかもしれない後続のクエリを受け入れるためにマイクロホン106を固定時間の間、開いたままにすると、マイクロホン106が開いている間は音声処理がアクティブであるので、必然的に更なる処理を必要とし、それによって消費電力および/または帯域幅使用を増加させる。そのため、ユーザ10は、AED102が意図されていない音声を取り込むのを防止するために、フリーズワードを話して、ハードマイクロホン遮断イベントをトリガし、かつAED102が低電力スリープまたはハイバネーション状態に遷移し得るので、電力および帯域幅節減を提供してよい。
【0048】
一部の例では、ユーザ10がマイクロホン106を遮断して継続会話を終わらせるためにフリーズワードを話せば、AED102は、ホットワード検出閾値を一時的に上げかつ/または多少の期間の間、同じユーザ10によって話されるその後の言葉を無視する。AED102は、発話から抽出される検証話者埋込みと比較できるユーザの音声特性を示すユーザ10に対する基準話者埋込みを記憶してよい。例えば、検証話者埋込みはテキスト依存であることができ、埋込みが口頭のホットワードから抽出され、そして基準話者埋込みは、登録中に同じホットワードを1回もしくは複数回話すユーザ10からかつ/またはデジタルアシスタント109との1つもしくは複数の前の対話から抽出できる。その後の発話から抽出される検証話者埋込みがユーザ10に対する基準話者埋込みと一致すると、ユーザ10がハードマイクロホン遮断をトリガするためにフリーズワードを話した直後にその後の発話が提供されたならば、言葉は無視されてよい。
【0049】
図2Aおよび
図2Bは、ASRエンジン200が、デジタルアシスタント109が可聴内容124を表記させるためのディクテーションベースのクエリ122に対応する音声データの第1のインスタンス120a(
図2A)および可聴内容124の発話119、119bに対応する音声データ120の第2のインスタンス120b(
図2B)を受信するのを図示する。
図2Aを参照すると、AED102は、「ヘイGoogle、終わりと言うまでアレックスへのメッセージを表記させて」を含む、ユーザ10によって話される発話119の第1のインスタンス119aを取り込む。この例では、「ヘイGoogle」はホットワード121に相当し、語句「アレックスへのメッセージを表記させて」は、デジタルアシスタント109がアレックスへのメッセージを表記させるためのディクテーションベースのクエリ122に相当し、そして語句「終わりと言うまで」は、メッセージのための可聴内容124を終端するためのフリーズワードを特定しており、語句「終わり」がフリーズワード123に相当する。
【0050】
音響特徴検出器110は、発話119の第1のインスタンス119aに対応する、AED102の1つまたは複数のマイクロホン106によって取り込まれるストリーミング音声118を受信する。ホットワード分類器150は、ストリーミング音声118がホットワード121を含むと判定する。例えば、ホットワード分類器150は、ストリーミング音声118がホットワード121「ヘイGoogle」を含むと判定する。ストリーミング音声118がホットワード121を含むとホットワード分類器150が判定した後に、AED102は、発話119の第1のインスタンス119aに対応する音声データ120の第1のインスタンス120aに音声認識を開始するためにウェイクアッププロセスをトリガする。
【0051】
ASR200は、音響特徴検出器110から音声データ120の第1のインスタンス120aを受信する。ASRモデル210は、音声認識結果215を生成するために音声データ120の第1のインスタンス120aを処理してよい。例えば、ASRモデル210は、発話119a「終わりと言うまでアレックスへのメッセージを表記させて」に対応する音声データ120の第1のインスタンス120aを受信し、そして対応する音声認識結果215を生成する。NLUモジュール220は、ASRモデル210から音声認識結果215を受信し、そして音声データ120の第1のインスタンス120aにデジタルアシスタント109がユーザ10によって話される可聴内容124を表記させるためのディクテーションベースのクエリ122を含むと判定するために音声認識結果215に意味解釈を行ってよい。特に、音声認識結果215にNLU220によって行われる意味解釈は、語句「アレックスへのメッセージを表記させて」を、デジタルアシスタント109が受取人アレックスへのメッセージ(例えば、電子メッセージまたは電子メール)のための可聴内容124を表記させるためのディクテーションベースのクエリ122として識別する。メッセージに加えて、ディクテーションベースのクエリ122は、文書に記憶されるべき仕訳記入またはメモに相当する可聴内容などの他の種類の内容を表記させることと関連付けられてよい。
【0052】
一部の実装例において、ASR200は、音声データ120の第1のインスタンスに対する音声認識結果215に行われる意味解釈に基づいてディクテーションベースのクエリ122がフリーズワード123を特定すると更に判定する。例えば、図示される例では、NLU220は、語句「終わりと言うまで」を、メッセージの可聴内容124を終端するためのフリーズワード123として語句「終わり」を設定する命令として識別する。一部の例では、NLU220は、音声データの第1のインスタンス120aに対する音声認識結果215がフリーズワード123を特定すると判定したことに応じてフリーズワード123「終わり」をアクティブ/有効にするために音響特徴検出器110に命令222を提供する。これらの例では、音響特徴検出器110は、AED102によって取り込まれるその後のストリーミング音声118にフリーズワード123「終わり」を検出するためにフリーズワード分類器(例えば、フリーズワード検出モデル)160を起動させ/有効にしてよい。
【0053】
一部の例では、フリーズワード分類器160およびホットワード分類器150は、決して同時にアクティブにならない。
図2Aにおけるフリーズワード分類器160を囲む点線が、フリーズワード分類器160が現在非アクティブであることを示す一方で、ホットワード分類器150を囲む実線は、ホットワード分類器150がアクティブであることを示す。例えば、NLU220が、フリーズワード123「終わり」を検出するためにフリーズワード分類器160を起動させ/有効にするために音響特徴検出器110に命令222を送る前は、ホットワード分類器150は、ストリーミング音声118にホットワード121を聞くためにアクティブでよく(例えば、実線によって示される)、そしてフリーズワード分類器160は非アクティブでよい(例えば、点線によって示される)。一旦NLU220が、音声認識結果215にディクテーションベースのクエリ122を含み、かつディクテーションベースのクエリ122がフリーズワード123を特定すると判定すると、NLU220は、音響特徴検出器110に、その後のストリーミング音声118にフリーズワード「終わり」を検出するためにフリーズワード分類器160を起動させ、かつホットワード分類器150を停止させるために、音響特徴検出器110に命令222を送信する。
【0054】
図示される例では、フリーズワード123「終わり」は、ユーザ10によって話されるクエリ122の一部として特定されるクエリ特定のフリーズワードに相当する。特に、ディクテーションベースのクエリ122は、ユーザがメッセージの可聴内容124を話し始める前にフリーズワード123「終わり」を特定する。ここで、ディクテーションベースのクエリの一部として特定されるフリーズワード「終わり」は、終端器に、フリーズワード「終わり」が検出されるまで終端処理をトリガするのを待つ、または少なくとも終端タイムアウト時間を延ばすように命令する。一部の実装例において、NLU220は、終端処理タイムアウト時間を増加させるために終端器230に命令224を送る。終端持続時間を延ばすことで、一旦ユーザ10がメッセージの可聴内容124を話し始めると、さもなければ終端処理をトリガするであろう、長い休止を見込む。一部の例では、クエリ特定のフリーズワードは、アクション特定のフリーズワード(例えば、「メッセージ終了」)および/またはユーザ指定のフリーズワード(例えば、「完了」)および/または既定のフリーズワード(例えば、「ありがとうGoogle」)と並列に使用可能にされる。
【0055】
NLU220が、音声認識結果215にディクテーションベースのクエリ122を含むが、ディクテーションベースのクエリ122がクエリ特定のフリーズワード123を特定しないと判定する、シナリオでは、クエリ122によって何も特定されないので、NLU220は、音響特徴検出器110に命令222を送らずに、音響特徴検出器110に、いかなるクエリ特定のフリーズワードも検出するようにフリーズワード分類器160を起動させ/有効にさせるであろう。しかしながら、NLU220は、それでもアクション特定のフリーズワード、ユーザ定義のフリーズワードまたは既定のフリーズワードの少なくとも1つを検出するようにフリーズワード分類器160を起動させ/有効にするために音響特徴検出器110に命令222を送り得る。任意選択で、音響特徴検出器110は、発話119の第1のインスタンス119aに対応するストリーミング音声118にホットワード121を検出した上で、その後のストリーミング音声118にユーザ定義および/または既定のフリーズワードを検出するためにフリーズワード分類器160を自動的に起動させ/有効にしてよい。
【0056】
ここで
図2Bを参照すると、ユーザ10がホットワード121およびクエリ特定のフリーズワード123を特定するディクテーションベースのクエリ122を伝える発話119の第1のインスタンス119aを話した後に、ユーザ10はその後、ユーザ10がデジタルアシスタント109に表記させてもらいたいメッセージの可聴内容124に続いてユーザ10がメッセージの可聴内容124を話すことを完了したことを示すクエリ特定のフリーズワード123を伝えるために発話119の第2のインスタンス119bを話す。特に、ホットワード分類器150が発話119の第1のインスタンス119aにホットワード121「ヘイGoogle」を検出したことに応じて今ではAED102がウェイクしており、ASR200はアクティブなままであるので、ユーザ10は、ホットワード121で発話119の第2のインスタンス119bにプレフィックスを付ける必要がない。図示される例では、発話119の第2のインスタンス119bは、「アレックス、遅れそうだ、終わり」を含む。この例では、語句「アレックス、遅れそうだ」はメッセージの可聴内容124に相当し、そして語句「終わり」は、
図2Aにおいてユーザ10によって話された発話119の第1のインスタンス119aにディクテーションベースのクエリ122によって特定されたクエリ特定のフリーズワード123に相当する。可聴内容124に続くクエリ特定のフリーズワード「終わり」の代わりに、可聴内容124の終端処理を類似してトリガするために他の種類のフリーズワード123が可聴内容124に続き得る。
【0057】
AED102上で実行する音響特徴検出器110は、発話119の第2のインスタンス119bに対応する、AEDの1つまたは複数のマイクロホン106によって取り込まれるストリーミング音声118を受信する。音響特徴検出器110が、ストリーミング音声118にクエリ特定のフリーズワード123の存在を聞くようにフリーズワード分類器160を起動させる/有効にするために
図2AにおいてNLU220から命令222を受信したことに応じて、ホットワード分類器150は今では非アクティブであり(例えば、点線によって示される)そしてフリーズワード分類器160が今ではアクティブである(例えば、実線によって示される)。音響特徴検出器110は、ストリーミング音声118がフリーズワード123を含むかどうかを判定するためにフリーズワード分類器160を活用する。音響特徴検出器110は、ASR200に音声データ120の第2のインスタンス120bを送信する。ASR200は、ユーザ10によって話されてAED102によって取り込まれる可聴内容124の発話119の第2のインスタンス119bに対応する音声データ120の第2のインスタンス120bを受信する。その上、終端器230は、
図2Aの発話119の第1のインスタンス119aにフリーズワード123「終わり」を特定するディクテーションベースのクエリ122に基づいてNLU220から命令224を受信したことに応じて延長した終端処理タイムアウト時間を適用している。
【0058】
ASR200は、可聴内容124の表記225を生成するために音声データ120の第2のインスタンス120bを処理する。例えば、ASR200は、可聴内容124「アレックス、遅れそうだ」の表記225を生成する。ASR200における音声データ120の第2のインスタンス120bの処理中に、音響特徴検出器110は、音声データ120の第2のインスタンス120bにフリーズワード123を検出する。詳細には、フリーズワード分類器(例えば、フリーズワード検出モデル)160が音声データ120の第2のインスタンス120bにフリーズワード123の存在を検出する。図示される例では、フリーズワード123は、可聴内容124の末尾を示すためにクエリ特定のフリーズワード「終わり」を含む。フリーズワード123は、ユーザ10によって話される発話119の第2のインスタンス119aにおいて可聴内容124に続く。
【0059】
音声データ120の第2のインスタンス120bにフリーズワード123を検出したことに応答して、ASR200は、ユーザ10によって話される可聴内容124の表記225をAED102からの出力のために提供する。AED102は、受取人アレックスと関連付けられた受取人デバイス(図示せず)に表記225を送信することによって表記225を出力してよい。表記225がメモまたは仕訳記入に関連した可聴内容124を表記するシナリオでは、AED102は、文書に表記225を記憶することまたは関連アプリケーションに表記225を送ることによって表記225を出力のために提供してよい。更に、AED102は、AEDのグラフィカルユーザインタフェース(利用可能であれば)に表記を表示することによって表記225を出力してよい。ここで、ユーザ10が表記225を再表記させる、誤表記された語を訂正する、および/またはメッセージの内容のいずれかを変更することを望む場合、ユーザ10は、受取人デバイスに送る前に表記225を見ることができる。追加的または代替的に、AED102は、表記225が受取人デバイスに送られることをユーザ10が望むことをユーザ10が確認できるようにユーザ10への可聴再生のために表記225を合成音声に変換するためにテキスト音声(TTS)モジュールを利用してよい。ASR200が遠隔システム111(
図1)上でサーバ側を実行する構成では、ASR200は、AED102に表記225を送信しかつ/または受取人デバイスに表記225を送信してよい。すなわち、ASR200は、音声データ120の第2のインスタンス120bの可聴内容124に対応する表記225「アレックス、遅れそうだ」を提供する。
【0060】
一部の例では、音声データ120の第2のインスタンス120bにフリーズワード123を検出したことに応答して、音響特徴検出器110は、AED102においてハードマイクロホン遮断イベント125を開始/トリガする。ハードマイクロホン遮断イベント125は、AED102がフリーズワード123の後のいかなる音声も取り込むのを防止する。すなわち、AED102においてハードマイクロホン遮断イベント125をトリガすることは、AED102が1つまたは複数のマイクロホン106を停止させることを含んでよい。そのため、フリーズワード123は、ユーザ10がいつディクテーションベースのクエリ122に対する可聴内容124を話し終えるかを示し、それによって終端器230が直ちに発話119の第2のインスタンス119bを終端できるように終端器タイムアウト時間が経過するのを待つことなくハードマイクロホン遮断イベント125をトリガする、人手によるキューとしてユーザ10によって話される。代わりに、フリーズワード123を検出したことに応じてハードマイクロホン遮断イベント125をトリガすることにより、AED102が終端器230および/またはASRモデル210に発話を直ちに終端するように命令するようになる。ハードマイクロホン遮断イベント125をトリガすることにより、AED102がASRシステム200に音声データ120の第2のインスタンス120bへのいかなるアクティブな処理も中止するように命令し、かつデジタルアシスタント109に動作の履行を果たすように命令するようにもなる。
【0061】
一部の追加の実装例において、ASRシステム200は、音響特徴検出器110のフリーズワード分類器160に加えて、またはその代わりに音声データ120の第2のインスタンス120bにフリーズワード123の存在を検出する。すなわち、ホットワード分類器150が音声データ120の第1のインスタンス120aにホットワード121を検出したことに応じてASR200が既にアクティブで音声データ120の第2のインスタンス120bを処理しているので、ASR200は、音声データ120の第2のインスタンス120bにフリーズワード123の存在を認識することが可能である。したがって、ASR200は、AED102においてハードマイクロホン遮断イベント125を開始し、音声データ120の第2のインスタンス120bへのアクティブな処理を中止し、そして表記225の末尾から認識されたフリーズワード123を取り除くように構成されてよい。ASRシステム200のこの能力を更に拡張して、フリーズワード分類器160は、第1段フリーズワード検出器としてAED102上で実行してよく、そしてASRシステム200は、フリーズワード分類器160によって音声データに検出されるフリーズワードの存在を確認するために第2段フリーズワード検出器として利用されてよい。
【0062】
一部の実装例において、可聴内容124の表記225を生成するために音声データ120の第2のインスタンス120bを処理する間、ASR200は、表記225への包含のためにフリーズワード123も表記する。例えば、可聴内容124の表記225は、「アレックス、遅れそうだ、終わり」を含んでよい。ここで、可聴内容124の表記225は、不注意にもメッセージの可聴内容124の一部分としてフリーズワード123「終わり」を含む。すなわち、ユーザ10は、表記225に含まれるべき可聴内容124の一部としてフリーズワード123をデジタルアシスタント109が表記させると意図したのではなく、むしろ可聴内容124の終わりを意味するために話された。したがって、フリーズワード123を検出したことに応じてAED102において開始されるハードマイクロホン遮断イベント125は、ASR200に、可聴内容124の表記225をAED102からの出力のために提供するのに先立ち表記225の末尾からフリーズワード123を取り除かせてよい。追加的または代替的に、ASR200は、表記225の末尾にフリーズワード123の存在を認識し、それに応じて表記225の末尾からフリーズワード123を取り除いてよい。図示される例では、ASR200は、表記225を出力250のために提供するのに先立ち表記225「アレックス、遅れそうだ、終わり」からフリーズワード123「終わり」を取り除く。そのため、ASR200が表記225からフリーズワード123を取り除いた後、ASR200は、表記225「アレックス、遅れそうだ」をAED102からの出力250のために提供する。
【0063】
図3は、フリーズワードを検出するための方法300のための動作の例証的な配置のフローチャートである。方法300は、動作302で、データ処理ハードウェア113において、ユーザ10によって話されて、ユーザ10と関連付けられたユーザデバイス102によって取り込まれる発話119に対応する音声データ120を受信することを含む。動作304で、方法300は、データ処理ハードウェア113によって、発話119にデジタルアシスタント109が動作を行うためのクエリ122を含むと判定するために、音声認識器200を使用して、音声データ120を処理することを含む。音声認識器200は、音声データ120における所定の継続時間の非音声の後に発話119の終端処理をトリガするように構成される。
【0064】
動作306で、音声データ120における所定の継続時間の非音声の前において、方法300は、データ処理ハードウェア113によって、音声データ120にフリーズワード123を検出することを含む。フリーズワード123は、ユーザ10によって話されてユーザデバイス102によって取り込まれる発話119においてクエリ122に続く。動作308で、音声データ120にフリーズワード123を検出したことに応答して、方法300は、データ処理ハードウェア113によって、ユーザデバイス102においてハードマイクロホン遮断イベント125をトリガすることを含む。ハードマイクロホン遮断イベント125は、ユーザデバイス102がフリーズワード123の後のいかなる音声も取り込むのを防止する。
【0065】
図4は、フリーズワードを検出するための方法400のための動作の例証的な配置のフローチャートである。動作402で、方法400は、データ処理ハードウェア113において、デジタルアシスタント109がユーザ10によって話される可聴内容124を表記させるためのディクテーションベースのクエリ122に対応する音声データ120の第1のインスタンス120aを受信することを含む。ディクテーションベースのクエリ122は、ユーザ10によって話されて、ユーザ10と関連付けられたアシスタント対応デバイス(AED)102によって取り込まれる。動作404で、方法400は、データ処理ハードウェア113において、ユーザ10によって話されてアシスタント対応デバイス102によって取り込まれる可聴内容124の発話119に対応する音声データ120の第2のインスタンス120bを受信することを含む。動作406で、方法400は、データ処理ハードウェア113によって、可聴内容124の表記225を生成するために、音声認識器200を使用して、音声データ120の第2のインスタンス120bを処理することを含む。
【0066】
動作408で、音声データ120の第2のインスタンス120bの処理中に、方法400は、データ処理ハードウェア113によって、音声データ120の第2のインスタンス120bにフリーズワード123を検出することを含む。フリーズワード123は、ユーザ10によって話されてアシスタント対応デバイス102によって取り込まれる発話119において可聴内容124に続く。動作410で、音声データ120の第2のインスタンス120bにフリーズワード123を検出したことに応答して、方法400は、データ処理ハードウェア113によって、アシスタント対応デバイス102からの出力250のために、ユーザ10によって話される可聴内容124の表記225を提供することを含む。
【0067】
ソフトウェアアプリケーション(すなわち、ソフトウェア資源)は、コンピューティングデバイスにタスクを行わせるコンピュータソフトウェアを指してよい。一部の例では、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」または「プログラム」と称されてよい。アプリケーション例は、システム診断アプリケーション、システム管理アプリケーション、システム保守アプリケーション、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーションおよびゲーミングアプリケーションを含むが、これらに限定されない。
【0068】
非一時的メモリは、コンピューティングデバイスによる使用のために一時的または永続的にプログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を記憶するために使用される物理デバイスでよい。非一時的メモリは、揮発性および/または不揮発性のアドレス指定可能な半導体メモリでよい。不揮発性メモリの例は、フラッシュメモリおよびリードオンリメモリ(ROM)/プログラマブルリードオンリメモリ(PROM)/消去可能プログラマブルリードオンリメモリ(EPROM)/電子的消去可能プログラマブルリードオンリメモリ(EEPROM)(例えば、ブートプログラムなどのファームウェアのために典型的に使用される)を含むが、これらに限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)の他にディスクまたはテープを含むが、これらに限定されない。
【0069】
図5は、本文書に記載されるシステムおよび方法を実装するために使用され得るコンピューティングデバイス例500の概略図である。コンピューティングデバイス500は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレームおよび他の適切なコンピュータなどの、様々な形態のデジタルコンピュータを表すと意図される。ここで図示される部品、それらの接続および関係、ならびにそれらの機能は、単に例証的であるものであり、本文書に記載および/または特許請求される本発明の実装例を限定するものではない。
【0070】
コンピューティングデバイス500は、プロセッサ510、メモリ520、ストレージデバイス530、メモリ520および高速拡張ポート550に接続する高速インタフェース/コントローラ540、ならびに低速バス570およびストレージデバイス530に接続する低速インタフェース/コントローラ560を含む。部品510、520、530、540、550および560の各々は、様々なバスを使用して相互接続され、かつ共通のマザーボードにまたは適宜他の方式で装着されてよい。プロセッサ510は、ユーザデバイス102または遠隔システム111のデータ処理ハードウェア103、113を含んでよい。データ処理ハードウェア510は、メモリ520にまたはストレージデバイス530に記憶される命令を含め、コンピューティングデバイス500内での実行のための命令を処理して、高速インタフェース540に結合されるディスプレイ580などの外部入出力デバイス上にグラフィカルユーザインタフェース(GUI)のためのグラフィック情報を表示できる。他の実装例において、複数のプロセッサおよび/または複数のバスが、適宜、複数個のメモリおよび複数種類のメモリと共に使用されてよい。同じく、複数のコンピューティングデバイス500が接続されて、各デバイスが必要な動作の一部分を提供してよい(例えば、サーババンク、一群のブレードサーバまたはマルチプロセッサシステムとして)。
【0071】
メモリ520は、コンピューティングデバイス500内で非一時的に情報を記憶する。メモリ520は、ユーザデバイス102または遠隔システム111のメモリハードウェア105、115を含むことができる。メモリハードウェア520は、コンピュータ可読媒体、揮発性メモリユニットまたは不揮発性メモリユニットでよい。非一時的メモリ520は、コンピューティングデバイス500による使用のために一時的または永続的にプログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を記憶するために使用される物理デバイスでよい。不揮発性メモリの例は、フラッシュメモリおよびリードオンリメモリ(ROM)/プログラマブルリードオンリメモリ(PROM)/消去可能プログラマブルリードオンリメモリ(EPROM)/電子的消去可能プログラマブルリードオンリメモリ(EEPROM)(例えば、ブートプログラムなどのファームウェアのために典型的に使用される)を含むが、これらに限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)の他にディスクまたはテープを含むが、これらに限定されない。
【0072】
ストレージデバイス530は、コンピューティングデバイス500のために大容量記憶を提供することが可能である。一部の実装例において、ストレージデバイス530は、コンピュータ可読媒体である。様々な異なる実装例において、ストレージデバイス530は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくは他の類似のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくは他の構成のデバイスを含め、デバイスのアレイでよい。追加の実装例において、コンピュータプログラム製品が情報担体で有形に具現化される。コンピュータプログラム製品は、実行されると、上記したものなど、1つまたは複数の方法を行う命令を含む。情報担体は、メモリ520、ストレージデバイス530またはプロセッサ510上のメモリなど、コンピュータまたは機械可読媒体である。
【0073】
高速コントローラ540がコンピューティングデバイス500のための帯域幅集約動作を管理する一方で、低速コントローラ560は低帯域幅集約動作を管理する。そのような役割の割当ては単に例証である。一部の実装例において、高速コントローラ540は、メモリ520、ディスプレイ580(例えば、グラフィックプロセッサまたはアクセラレータを通じて)に、および様々な拡張カード(図示せず)を受け入れ得る、高速拡張ポート550に結合される。一部の実装例において、低速コントローラ560は、ストレージデバイス530および低速拡張ポート590に結合される。低速拡張ポート590は、様々な通信ポート(例えば、USB、ブルートゥース(登録商標)、イーサネット、無線イーサネット)を含んでよく、キーボード、ポインティングデバイス、スキャナ、または例えばネットワークアダプタを通じて、スイッチもしくはルータといったネットワークデバイスなど、1つまたは複数の入出力デバイスに結合されてよい。
【0074】
コンピューティングデバイス500は、図に図示されるように、幾つかの異なる形態で実装されてよい。例えば、それは、1つの標準的なサーバ500aもしくは多重にして一群のそのようなサーバ500aとして、ラップトップコンピュータ500bとして、またはラックサーバシステム500cの一部として実装されてよい。
【0075】
本明細書に記載されるシステムおよび技術の様々な実装例は、デジタル電子および/もしくは光回路網、集積回路網、特別設計のASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、ならびに/またはその組合せで実現できる。これらの様々な実装例は、記憶システム、少なくとも1つの入力デバイスおよび少なくとも1つの出力デバイスからデータおよび命令を受信するように、ならびにそれらにデータおよび命令を送信するように結合される、専用または汎用でよい、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能である1つまたは複数のコンピュータプログラムによる実装を含むことができる。
【0076】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)は、プログラマブルプロセッサのための機械命令を含み、そして高水準手続き型および/もしくはオブジェクト指向プログラミング言語で、ならびに/またはアセンブリ/機械語で実装できる。本明細書で使用される場合、用語「機械可読媒体」および「コンピュータ可読媒体」は、機械命令を機械可読信号として受信する機械可読媒体を含め、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される任意のコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD))を指す。用語「機械可読信号」は、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される任意の信号を指す。
【0077】
本明細書に記載されるプロセスおよび論理フローは、1つまたは複数のコンピュータプログラムを実行して、入力データに演算し出力を生成することによって機能を行う、データ処理ハードウェアとも称される、1つまたは複数のプログラマブルプロセッサによって行うことができる。プロセスおよび論理フローは、専用論理回路網、例えばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって行うこともできる。コンピュータプログラムの実行に適するプロセッサは、例として、汎用および専用の両マイクロプロセッサ、ならびに任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、リードオンリメモリまたはランダムアクセスメモリまたは両方から命令およびデータを受けることになる。コンピュータの必須要素は、命令を行うためのプロセッサ、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。一般に、コンピュータは、データを記憶するための1つまたは複数の大容量ストレージデバイス、例えば磁気、光磁気ディスクまたは光ディスクも含み、または動作的に結合されて、それからデータを受信するもしくはそれにデータを転送するもしくは両方行うことになる。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適するコンピュータ可読媒体は、例として半導体メモリデバイス、例えばEPROM、EEPROMおよびフラッシュメモリデバイス、磁気ディスク、例えば内蔵ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCD ROMおよびDVD-ROMディスクを含め、全ての形態の不揮発性メモリ、媒体およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路網によって補足、またはそれに組み込みできる。
【0078】
ユーザとの対話に備えるために、本開示の1つまたは複数の態様は、ユーザに情報を表示するためのディスプレイデバイス、例えばCRT(陰極線管)、LCD(液晶表示)モニタ、またはタッチスクリーン、ならびに任意選択でユーザがコンピュータに入力を提供できる、キーボードおよびポインティングデバイス、例えばマウスまたはトラックボールを有するコンピュータ上に実装できる。ユーザとの対話を提供するために他の種類のデバイスも使用でき、例えば、ユーザに提供されるフィードバックが任意の形態の感覚フィードバック、例えば視覚フィードバック、聴覚フィードバックまたは触覚フィードバックであることができ、そしてユーザからの入力は、音響、音声または触覚入力を含め、任意の形態で受信できる。加えて、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、それから文書を受信することによって、例えばユーザのクライアントデバイス上のウェブブラウザから受信される要求に応答してウェブブラウザにウェブページを送信することによって、ユーザと対話できる。
【0079】
幾つかの実装例が記載された。それでも、本開示の趣旨および範囲から逸脱することなく様々な修正がなされ得ることが理解されるであろう。したがって、他の実装例は以下の特許請求の範囲内である。
【符号の説明】
【0080】
10 ユーザ
100 システム
102 アシスタント対応デバイス(AED)
103 データ処理ハードウェア
104 ネットワーク
105 メモリハードウェア
106 マイクロホン
109 デジタルアシスタント
110 音響特徴検出器
111 遠隔システム
112 音響特徴抽出器
113 計算資源
115 記憶資源
118 ストリーミング音声
119、119a、119b 発話
120、120a、120b 音声データ
121 ホットワード
122 クエリ
123 フリーズワード
124 可聴内容
125 ハードマイクロホン遮断イベント
150 ホットワード分類器
160 フリーズワード分類器
200 自動音声認識(ASR)エンジン
210 ASRモデル
215 音声認識結果
220 自然言語理解(NLU)モジュール
222 命令
224 命令
225 表記
230 終端器
250 出力
500 コンピューティングデバイス
510 プロセッサ
520 メモリ
530 ストレージデバイス
540 高速インタフェース/コントローラ
550 高速拡張ポート
560 低速インタフェース/コントローラ
570 低速バス
580 ディスプレイ
590 低速拡張ポート
500a サーバ
500b ラップトップコンピュータ
500c ラックサーバシステム