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

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

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

<>
  • 特表-グループホットワード 図1A
  • 特表-グループホットワード 図1B
  • 特表-グループホットワード 図1C
  • 特表-グループホットワード 図2A
  • 特表-グループホットワード 図2B
  • 特表-グループホットワード 図3
  • 特表-グループホットワード 図4
  • 特表-グループホットワード 図5
  • 特表-グループホットワード 図6
  • 特表-グループホットワード 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-12-21
(54)【発明の名称】グループホットワード
(51)【国際特許分類】
   G10L 15/28 20130101AFI20231214BHJP
   G10L 15/10 20060101ALI20231214BHJP
   G10L 15/32 20130101ALI20231214BHJP
【FI】
G10L15/28 230K
G10L15/10 200W
G10L15/32 220Z
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023535574
(86)(22)【出願日】2021-12-09
(85)【翻訳文提出日】2023-08-03
(86)【国際出願番号】 US2021062707
(87)【国際公開番号】W WO2022125836
(87)【国際公開日】2022-06-16
(31)【優先権主張番号】17/118,687
(32)【優先日】2020-12-11
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
(71)【出願人】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】マシュー・シャリフィ
(72)【発明者】
【氏名】ヴィクター・カルブネ
(57)【要約】
方法は、第1のアシスタント対応デバイス(AED)が、第1のAEDと、1つまたは複数の他のAEDとを含む選択されたグループのAEDにグループホットワードを割り当てる割当て命令を受け取ることを含む。各AEDは、AEDのうちの少なくとも1つによってストリーミングオーディオにおいてグループホットワードが検出されたとき、低電力状態から起動するように構成される。また、方法は、ユーザによって話された発話に対応し、実行すべき動作を指定するクエリーを含むオーディオデータを受け取ることも含む。オーディオデータにおいてグループホットワードを検出することに応答して、方法は、低電力状態から起動するように第1のAEDをトリガすること、および第1のAEDと選択されたグループのAEDの中の他の各AEDに、クエリーによって指定された動作の実行を遂行するために互いに協働させる協働ルーチンを実行することも含む。
【特許請求の範囲】
【請求項1】
第1のアシスタント対応デバイス(AED)のデータ処理ハードウェアにおいて、ユーザに関連付けられた選択されたグループのAEDにグループホットワードを割り当てる割当て命令を受け取るステップであって、前記選択されたグループのAEDは、前記第1のAEDと、1つまたは複数の他のAEDとを含み、前記選択されたグループのAEDの中の各AEDは、前記選択されたグループのAEDの中の前記AEDのうちの少なくとも1つによってストリーミングオーディオにおいて前記グループホットワードが検出されたとき、低電力状態から起動するように構成された、ステップと、
前記データ処理ハードウェアにおいて、前記ユーザによって話された発話に対応するオーディオデータを受け取るステップであって、前記オーディオデータは、実行すべき動作を指定するクエリーを含む、ステップと、
前記データ処理ハードウェアによって、ホットワード検出モデルを使用して、前記オーディオデータにおいて前記グループホットワードを検出するステップと、
前記オーディオデータにおいて前記グループホットワードを検出することに応答して、
前記データ処理ハードウェアによって、前記低電力状態から起動するように前記第1のAEDをトリガするステップと、
前記データ処理ハードウェアによって、前記第1のAEDと前記選択されたグループのAEDの中の他の各AEDに、前記クエリーによって指定された前記動作の実行を遂行するために互いに協働させる協働ルーチンを実行するステップと
を含む方法。
【請求項2】
前記割当て命令を受け取った後、前記データ処理ハードウェアによって、前記選択されたグループのAEDの中の各AEDに関連付けられたそれぞれのデバイス特性に基づいて、前記選択されたグループのAEDの代理として前記ストリーミングオーディオにおいて前記グループホットワードの存在をリッスンすべき1つまたは複数のAEDを前記選択されたグループのAEDから選択するリーダー選択プロセスを実行するステップをさらに含み、
前記選択されたグループのAEDの中の少なくとも前記第1のAEDは、前記ストリーミングオーディオにおいて前記グループホットワードの存在をリッスンすべく前記リーダー選択プロセスによって選択される、請求項1に記載の方法。
【請求項3】
前記グループホットワードが割り当てられた前記選択されたグループのAEDの更新が、前記選択されたグループのAEDに1つまたは複数の追加のAEDを追加し、かつ/または前記選択されたグループのAEDから前記AEDのうちの1つまたは複数を除去すること、または
前記選択されたグループのAEDの中の前記AEDのうちの1つにおけるデバイス状態変化の発生
の少なくとも1つに応答して、前記データ処理ハードウェアによって、前記リーダー選択プロセスを再実行するステップをさらに含む、請求項2に記載の方法。
【請求項4】
前記選択されたグループのAEDの中の各AEDに関連付けられた前記それぞれのデバイス特性は、処理能力、デバイスタイプ、ユーザにより構成可能なデバイス設定、電力使用量、バッテリレベル、AEDの物理的位置、またはネットワーク能力のうちの少なくとも1つを含む、請求項2に記載の方法。
【請求項5】
前記オーディオデータにおいて前記グループホットワードを検出することに応答して、前記データ処理ハードウェアによって、前記オーディオデータにおいて前記グループホットワードを検出しなかった、前記選択されたグループのAEDの中の他の各AEDを、前記低電力状態から起動して、前記クエリーによって指定された前記動作の実行を遂行すべく前記選択されたグループのAEDの中のすべてのAEDと協働するために呼び出すステップをさらに含む、請求項1に記載の方法。
【請求項6】
前記オーディオデータにおいて前記グループホットワードを検出することに応答して、
前記データ処理ハードウェアによって、ホットワードレジストリにアクセスすることによって、前記グループホットワードが割り当てられた前記選択されたグループのAEDの中の前記1つまたは複数の他のAEDの各々を識別するステップであって、前記ホットワードレジストリは、前記ユーザに関連付けられた1つまたは複数のAEDに各々が割り当てられた1つまたは複数のホットワードのリストを含み、1つまたは複数のホットワードの前記リストは、前記グループホットワードを含む、ステップをさらに含み、
前記選択されたグループのAEDの中の他の各AEDを呼び出すステップは、前記ホットワードレジストリにアクセスすることによって識別された前記グループホットワードが割り当てられた前記1つまたは複数の他のAEDの各々に基づく、請求項5に記載の方法。
【請求項7】
前記ホットワードレジストリは、
前記第1のAED、
前記ユーザに関連付けられた少なくとも1つの他のAED、または
前記第1のAEDと通信するサーバ
のうちの少なくとも1つに記憶される、請求項6に記載の方法。
【請求項8】
前記選択されたグループのAEDに前記グループホットワードを割り当てる前記割当て命令を受け取るステップは、
前記グループホットワードを有効化して、前記グループホットワードを前記選択されたグループのAEDに割り当てるようデジタルアシスタントに要求する音声入力を、前記ユーザから受け取るステップと、
前記音声入力についての自動化された音声認識(ASR)結果を生成するために前記オーディオデータに対して音声認識を実行するよう音声認識器に命令するステップと、
有効化すべき前記グループホットワードの名前、および前記グループホットワードが割り当てられるべき前記選択されたグループのAEDの中の各AEDを指定するグループホットワードクエリーを識別するために、前記音声入力についての前記ASR結果に対してクエリー解釈を実行するステップと
を含む、請求項1に記載の方法。
【請求項9】
前記選択されたグループのAEDに前記グループホットワードを割り当てる前記割当て命令を受け取るステップは、前記グループホットワードを有効化して、前記グループホットワードが割り当てられるべき前記グループのAEDを選択するようデジタルアシスタントに命令するために、グラフィカルユーザインターフェースにおいて表示される1つまたは複数のオブジェクトとのユーザ対話を示すユーザ入力指示を受け取るステップを含む、請求項1に記載の方法。
【請求項10】
前記データ処理ハードウェアにおいて、前記ユーザによって発話され、デジタルアシスタントが前記ユーザに関連付けられた2つ以上のAEDにおいて長期存続するアクションを実行するためのコマンドに対応する、前のオーディオデータを受け取るステップであって、前記デジタルアシスタントは、前記長期存続するアクションに関係のあるフォローアップクエリーにおいて使用するために前記グループホットワードを自動的に作成するように構成された、ステップをさらに含み、
前記選択されたグループのAEDに前記グループホットワードを割り当てる前記割当て命令を受け取るステップは、前記デジタルアシスタントによって自動的に作成された前記グループホットワードを受け取るステップを含み、前記グループホットワードが割り当てられた前記選択されたグループのAEDは、前記長期存続するアクションを実行する前記2つ以上のAEDを含む、請求項1に記載の方法。
【請求項11】
前記データ処理ハードウェアによって、前記第1のAEDからの可聴の再生のために、長期存続するアクションの実行が進行中であること、および前記長期存続するアクションに関係のあるフォローアップクエリーにおいて使用するために前記自動的に作成されたグループホットワードを示す前記デジタルアシスタントからの応答に対応する合成された音声を出力するステップをさらに含み、
前記デジタルアシスタントは、前記長期存続するアクションが終了したとき、前記自動的に作成されたグループホットワードの使用を取り消す、請求項10に記載の方法。
【請求項12】
前記選択されたグループのAEDの中の各AEDは、同一のデバイスタイプに関連付けられ、または共通の属性を共有し、
前記選択されたグループのAEDに割り当てられた前記グループホットワードは、前記選択されたグループのAEDに関連付けられた前記デバイスタイプまたは前記共通の属性を一意に識別する暗黙のホットワードを含み、
前記ホットワード検出モデルは、前記オーディオデータに対して音声認識を実行することなしにストリーミングオーディオにおいて前記グループホットワードの存在を検出するためにあらかじめ訓練される、請求項1に記載の方法。
【請求項13】
前記選択されたグループのAEDに割り当てられた前記グループホットワードは、前記ユーザに対する近接性において現在、最も近くにある、前記選択されたグループのAEDからの1つまたは複数のAEDのサブセットのみを、前記1つまたは複数のAEDの前記サブセットの中のいずれの特定のAEDも明示的に識別することなしに、宛先とする近接性ベースのホットワードを含み、
前記ホットワード検出モデルは、前記オーディオデータに対して音声認識を実行することなしにストリーミングオーディオにおいて前記グループホットワードの存在を検出するためにあらかじめ訓練され、
前記協働ルーチンを実行するステップは、前記第1のAEDおよび前記選択されたグループのAEDの中の他の各AEDにそれぞれ、前記ユーザに対するそれぞれの近接性値を決定させ、かつ前記クエリーによって指定された前記動作の実行を遂行すべき前記1つまたは複数のAEDの前記サブセットを選択するために前記選択されたグループのAEDにわたって前記それぞれの近接性値を使用して調停を実行させる、請求項1に記載の方法。
【請求項14】
前記グループホットワードは、
前記ユーザによって作成されたカスタムホットワード、または
1つまたは複数の利用可能なグループホットワードのリストから選択された事前定義されたホットワード
のうちの1つを含む、請求項1に記載の方法。
【請求項15】
前記協働ルーチンの実行中、前記第1のAEDと前記選択されたグループのAEDの中の他の各AEDは、
前記オーディオデータについての音声認識結果を生成し、
前記音声認識結果が、実行すべき前記動作を指定する前記クエリーを識別することを判定するために、前記音声認識結果に対してクエリー解釈を実行し、かつ
前記音声認識結果に対して実行された前記クエリー解釈を前記選択されたグループのAEDの中の前記他のAEDと共有する
ために前記選択されたグループのAEDの中の前記AEDのうちの1つを指定することによって互いに協働する、請求項1に記載の方法。
【請求項16】
実行すべき前記動作を指定する前記クエリーは、長期存続する動作を実行する前記選択されたグループのAEDについてのクエリーを含み、
前記協働ルーチンの実行中、前記選択されたグループのAEDの中の各AEDは、
前記長期存続する動作の持続時間にわたって互いにペアになること、および
前記長期存続する動作と関係のあるサブアクションの実行を調整すること
によって互いに協働する、請求項1に記載の方法。
【請求項17】
前記クエリーによって指定された前記動作は、前記選択されたグループのAEDの中の各AEDにおいて実行すべきデバイスレベルの動作を含み、
前記協働ルーチンの実行中、前記選択されたグループのAEDの中の各AEDは、前記デバイスレベルの動作の実行を独立に遂行することによって互いに協働する、請求項1に記載の方法。
【請求項18】
データ処理ハードウェアと、
前記データ処理ハードウェアと通信するメモリハードウェアと
を含む第1のアシスタント対応デバイス(AED)であって、
前記メモリハードウェアは、前記データ処理ハードウェアにおいて実行されると、前記データ処理ハードウェアに、
ユーザに関連付けられた選択されたグループのAEDにグループホットワードを割り当てる割当て命令を受け取ることであって、前記選択されたグループのAEDは、前記第1のAEDと、1つまたは複数の他のAEDとを含み、前記選択されたグループのAEDの中の各AEDは、前記選択されたグループのAEDの中の前記AEDのうちの少なくとも1つによってストリーミングオーディオにおいて前記グループホットワードが検出されたとき、低電力状態から起動するように構成された、前記受け取ることと、
前記ユーザによって話された発話に対応するオーディオデータを受け取ることであって、前記オーディオデータは、実行すべき動作を指定するクエリーを含む、前記オーディオデータを受け取ることと、
ホットワード検出モデルを使用して、前記オーディオデータにおいて前記グループホットワードを検出することと、
前記オーディオデータにおいて前記グループホットワードを検出することに応答して、
前記低電力状態から起動するように前記第1のAEDをトリガし、かつ
前記第1のAEDと前記選択されたグループのAEDの中の他の各AEDに、前記クエリーによって指定された前記動作の実行を遂行するために互いに協働させる協働ルーチンを実行することと
を含む動作を実行させる命令を記憶する、第1のアシスタント対応デバイス(AED)。
【請求項19】
前記動作は、前記割当て命令を受け取った後、前記選択されたグループのAEDの中の各AEDに関連付けられたそれぞれのデバイス特性に基づいて、前記選択されたグループのAEDの代理として前記ストリーミングオーディオにおいて前記グループホットワードの存在をリッスンすべき1つまたは複数のAEDを前記選択されたグループのAEDから選択するリーダー選択プロセスを実行することをさらに含み、
前記選択されたグループのAEDの中の少なくとも前記第1のAEDは、前記ストリーミングオーディオにおいて前記グループホットワードの存在をリッスンすべく前記リーダー選択プロセスによって選択される、請求項18に記載の第1のAED。
【請求項20】
前記動作は、
前記グループホットワードが割り当てられた前記選択されたグループのAEDの更新が、前記選択されたグループのAEDに1つまたは複数の追加のAEDを追加し、かつ/または前記選択されたグループのAEDから前記AEDのうちの1つまたは複数を除去すること、または
前記選択されたグループのAEDの中の前記AEDのうちの1つにおけるデバイス状態変化の発生
の少なくとも1つに応答して、前記リーダー選択プロセスを再実行することをさらに含む、請求項19に記載の第1のAED。
【請求項21】
前記選択されたグループのAEDの中の各AEDに関連付けられた前記それぞれのデバイス特性は、処理能力、デバイスタイプ、ユーザにより構成可能なデバイス設定、電力使用量、バッテリレベル、AEDの物理的位置、またはネットワーク能力のうちの少なくとも1つを含む、請求項19に記載の第1のAED。
【請求項22】
前記動作は、前記オーディオデータにおいて前記グループホットワードを検出することに応答して、前記オーディオデータにおいて前記グループホットワードを検出しなかった、前記選択されたグループのAEDの中の他の各AEDを、前記低電力状態から起動して、前記クエリーによって指定された前記動作の実行を遂行すべく前記選択されたグループのAEDの中のすべてのAEDと協働するために呼び出すことをさらに含む、請求項18に記載の第1のAED。
【請求項23】
前記動作は、前記オーディオデータにおいて前記グループホットワードを検出することに応答して、
ホットワードレジストリにアクセスすることによって、前記グループホットワードが割り当てられた前記選択されたグループのAEDの中の前記1つまたは複数の他のAEDの各々を識別することであって、前記ホットワードレジストリは、前記ユーザに関連付けられた1つまたは複数のAEDに各々が割り当てられた1つまたは複数のホットワードのリストを含み、1つまたは複数のホットワードの前記リストは、前記グループホットワードを含む、前記識別することをさらに含み、
前記選択されたグループのAEDの中の他の各AEDを呼び出すことは、前記ホットワードレジストリにアクセスすることによって識別された前記グループホットワードが割り当てられた前記1つまたは複数の他のAEDの各々に基づく、請求項22に記載の第1のAED。
【請求項24】
前記ホットワードレジストリは、
前記第1のAED、
前記ユーザに関連付けられた少なくとも1つの他のAED、または
前記第1のAEDと通信するサーバ
のうちの少なくとも1つに記憶される、請求項23に記載の第1のAED。
【請求項25】
前記選択されたグループのAEDに前記グループホットワードを割り当てる前記割当て命令を受け取ることは、
前記グループホットワードを有効化して、前記グループホットワードを前記選択されたグループのAEDに割り当てるようデジタルアシスタントに要求する音声入力を、前記ユーザから受け取ることと、
前記音声入力についての自動化された音声認識(ASR)結果を生成するために前記オーディオデータに対して音声認識を実行するよう音声認識器に命令することと、
有効化すべき前記グループホットワードの名前、および前記グループホットワードが割り当てられるべき前記選択されたグループのAEDの中の各AEDを指定するグループホットワードクエリーを識別するために、前記音声入力についての前記ASR結果に対してクエリー解釈を実行することと
を含む、請求項18に記載の第1のAED。
【請求項26】
前記選択されたグループのAEDに前記グループホットワードを割り当てる前記割当て命令を受け取ることは、前記グループホットワードを有効化して、前記グループホットワードが割り当てられるべき前記グループのAEDを選択するようデジタルアシスタントに命令するために、グラフィカルユーザインターフェースにおいて表示される1つまたは複数のオブジェクトとのユーザ対話を示すユーザ入力指示を受け取ることを含む、請求項18に記載の第1のAED。
【請求項27】
前記動作は、前記ユーザによって発話され、デジタルアシスタントが前記ユーザに関連付けられた2つ以上のAEDにおいて長期存続するアクションを実行するためのコマンドに対応する、前のオーディオデータを受け取ることであって、前記デジタルアシスタントは、前記長期存続するアクションに関係のあるフォローアップクエリーにおいて使用するために前記グループホットワードを自動的に作成するように構成された、前記受け取ることをさらに含み、
前記選択されたグループのAEDに前記グループホットワードを割り当てる前記割当て命令を受け取ることは、前記デジタルアシスタントによって自動的に作成された前記グループホットワードを受け取ることを含み、前記グループホットワードが割り当てられた前記選択されたグループのAEDは、前記長期存続するアクションを実行する前記2つ以上のAEDを含む、請求項18に記載の第1のAED。
【請求項28】
前記動作は、前記第1のAEDからの可聴の再生のために、前記長期存続するアクションの実行が進行中であること、および前記長期存続するアクションに関係のあるフォローアップクエリーにおいて使用するために前記自動的に作成されたグループホットワードを示す前記デジタルアシスタントからの応答に対応する合成された音声を出力することをさらに含み、
前記デジタルアシスタントは、前記長期存続するアクションが終了したとき、前記自動的に作成されたグループホットワードの使用を取り消す、請求項27に記載の第1のAED。
【請求項29】
前記選択されたグループのAEDの中の各AEDは、同一のデバイスタイプに関連付けられ、または共通の属性を共有し、
前記選択されたグループのAEDに割り当てられた前記グループホットワードは、前記選択されたグループのAEDに関連付けられた前記デバイスタイプまたは前記共通の属性を一意に識別する暗黙のホットワードを含み、
前記ホットワード検出モデルは、前記オーディオデータに対して音声認識を実行することなしにストリーミングオーディオにおいて前記グループホットワードの存在を検出するためにあらかじめ訓練される、請求項18に記載の第1のAED。
【請求項30】
前記選択されたグループのAEDに割り当てられた前記グループホットワードは、前記ユーザに対する近接性において現在、最も近くにある、前記選択されたグループのAEDからの1つまたは複数のAEDのサブセットのみを、前記1つまたは複数のAEDの前記サブセットの中のいずれの特定のAEDも明示的に識別することなしに、宛先とする近接性ベースのホットワードを含み、
前記ホットワード検出モデルは、前記オーディオデータに対して音声認識を実行することなしにストリーミングオーディオにおいて前記グループホットワードの存在を検出するためにあらかじめ訓練され、
前記協働ルーチンを実行することは、前記第1のAEDおよび前記選択されたグループのAEDの中の他の各AEDに各々、前記ユーザに対するそれぞれの近接性値を決定させ、かつ前記クエリーによって指定された前記動作の実行を遂行すべき前記1つまたは複数のAEDの前記サブセットを選択するために前記選択されたグループのAEDにわたって前記それぞれの近接性値を使用して調停を実行させる、請求項18に記載の第1のAED。
【請求項31】
前記グループホットワードは、
前記ユーザによって作成されたカスタムホットワード、または
1つまたは複数の利用可能なグループホットワードのリストから選択された事前定義されたホットワード
のうちの1つを含む、請求項18に記載の第1のAED。
【請求項32】
前記協働ルーチンの実行中、前記第1のAEDと前記選択されたグループのAEDの中の他の各AEDは、
前記オーディオデータについての音声認識結果を生成し、
前記音声認識結果が、実行すべき前記動作を指定する前記クエリーを識別することを判定するために、前記音声認識結果に対してクエリー解釈を実行し、かつ
前記音声認識結果に対して実行された前記クエリー解釈を前記選択されたグループのAEDの中の前記他のAEDと共有する
ために前記選択されたグループのAEDの中の前記AEDのうちの1つを指定することによって互いに協働する、請求項18に記載の第1のAED。
【請求項33】
実行すべき前記動作を指定する前記クエリーは、長期存続する動作を実行する前記選択されたグループのAEDについてのクエリーを含み、
前記協働ルーチンの実行中、前記選択されたグループのAEDの中の各AEDは、
前記長期存続する動作の持続時間にわたって互いにペアになること、および
前記長期存続する動作と関係のあるサブアクションの実行を調整すること
によって互いに協働する、請求項18に記載の第1のAED。
【請求項34】
前記クエリーによって指定された前記動作は、前記選択されたグループのAEDの中の各AEDにおいて実行すべきデバイスレベルの動作を含み、
前記協働ルーチンの実行中、前記選択されたグループのAEDの中の各AEDは、前記デバイスレベルの動作の実行を独立に遂行することによって互いに協働する、請求項18に記載の第1のAED。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、グループホットワードに関する。
【背景技術】
【0002】
音声対応環境(例えば、自宅、職場、学校、自動車、その他)は、ユーザが、クエリーに対応して答えること、および/またはコマンドに基づいて機能を実行することをするコンピュータベースのシステムにクエリーまたはコマンドを声に出して話すことを可能にする。音声対応環境は、環境の様々な部屋または区域にわたって配置された接続されたマイクロフォンデバイスのネットワークを使用して実装され得る。これらのデバイスは、所与の発話が、環境に存在する別の個人に向けた発話ではなく、システムに向けられた場合を区別するのに役立つようにホットワードを使用してよい。したがって、デバイスは、スリープ状態または休止状態で動作して、検出された発話がホットワードを含む場合に限り、起動してよい。起動すると、デバイスは、完全にオンデバイスの自動化された音声認識(ASR)、またはサーバベースのASRなどのより高いコストの処理を実行することに取り掛かることができる。
【発明の概要】
【課題を解決するための手段】
【0003】
本開示の一態様は、グループホットワードを有効化して、2つ以上の選択されたグループのアシスタント対応デバイスに割り当てるための方法を提供する。方法は、第1のアシスタント対応デバイス(AED)のデータ処理ハードウェアにおいて、ユーザに関連付けられた選択されたグループのAEDにグループホットワードを割り当てる割当て命令を受け取ることを含む。選択されたグループのAEDは、第1のAEDと、1つまたは複数の他のAEDとを含む。選択されたグループのAEDの中の各AEDは、選択されたグループのAEDの中のAEDのうちの少なくとも1つによってストリーミングオーディオにおいてグループホットワードが検出されたとき、低電力状態から起動するように構成される。また、方法は、データ処理ハードウェアにおいて、ユーザによって話された発話に対応し、実行すべき動作を指定するクエリーを含むオーディオデータを受信することも含む。オーディオデータにおいてグループホットワードを検出することに応答して、方法は、データ処理ハードウェアによって、低電力状態から起動するよう第1のAEDをトリガすることを含む。また、方法は、データ処理ハードウェアによって、第1のAEDと選択されたグループのAEDの中の他の各AEDに、クエリーによって指定された動作の実行を遂行すべく互いに協働するようにさせる協働ルーチンを実行することも含む。
【0004】
本開示の実装形態は、以下のオプションの特徴のうちの1つまたは複数を含んでよい。一部の実装形態において、方法は、データ処理ハードウェアによって、選択されたグループのAEDの中の各AEDに関連するそれぞれのデバイス特性に基づいて、選択されたグループのAEDの代理としてストリーミングオーディオにおいてグループホットワードの存在をリッスンすべき1つまたは複数のAEDを選択されたグループのAEDから選択するリーダー選択プロセスを実行することをさらに含む。ここで、選択されたグループのAEDの中の少なくとも第1のAEDが、ストリーミングオーディオにおいてグループホットワードの存在をリッスンすべくリーダー選択プロセスによって選択される。これらの実装形態において、方法は、グループホットワードを割り当てられた選択されたグループのAEDの更新が、選択されたグループのAEDに1つまたは複数の追加のAEDを追加し、かつ/または選択されたグループのAEDからAEDのうちの1つまたは複数を除去すること、あるいは選択されたグループのAEDの中のAEDのうちの1つにおいてデバイス状態変化が生じること、のうちの少なくとも1つに応答して、データ処理ハードウェアによって、リーダー選択プロセスを再実行することを含んでもよい。オプションとして、選択されたグループのAEDの中の各AEDに関連するそれぞれのデバイス特性は、処理能力、デバイスタイプ、ユーザにより構成可能なデバイス設定、電力使用量、バッテリレベル、AEDの物理的位置、またはネットワーク能力のうちの少なくとも1つを含んでよい。
【0005】
オーディオデータにおいてグループホットワードを検出することに応答して、方法は、データ処理ハードウェアによって、オーディオデータにおいてグループホットワードを検出しなかった、選択されたグループのAEDの中の他の各AEDを、低電力状態から起動して、クエリーによって指定された動作の実行を遂行すべき選択されたグループのAEDの中のすべてのAEDと協働するために呼び出すことをさらに含んでよい。一部の実装形態において、オーディオデータにおいてグループホットワードを検出することに応答して、方法は、データ処理ハードウェアによって、ホットワードレジストリにアクセスすることによって、グループホットワードが割り当てられた、選択されたグループのAEDの中の1つまたは複数の他のAEDの各々を識別することをさらに含む。ホットワードレジストリは、ユーザ(またはユーザのグループ)に関連付けられた1つまたは複数のAEDに各々が割り当てられた1つまたは複数のホットワードのリストを含み、1つまたは複数のホットワードのリストは、グループホットワードを含む。これらの実装形態において、選択されたグループのAEDの中の他の各AEDを呼び出すことは、ホットワードレジストリにアクセスすることによって識別された、グループホットワードが割り当てられた1つまたは複数の他のAEDの各々に基づく。一部の実施例において、ホットワードレジストリは、第1のAED、ユーザに関連付けられた少なくとも1つの他のAED、または第1のAEDと通信するサーバのうちの少なくとも1つにおいて記憶される。
【0006】
オプションとして、選択されたグループのAEDにグループホットワードを割り当てる割当て命令を受け取ることは、グループホットワードを有効化して、グループホットワードを選択されたグループのAEDに割り当てるようデジタルアシスタントに要求する音声入力をユーザから受け取ること、音声入力についての自動化された音声認識(ASR)結果を生成するためにオーディオデータに対して音声認識を実行するよう音声認識器に命令すること、および選択されたグループのAEDの中の各AEDがグループホットワードに割り当てられることを有効化するようにグループホットワードの名前を指定するグループホットワードを識別すべく、音声入力に関するASR結果に対してクエリー解釈を実行することを含んでよい。一部の実装形態において、選択されたグループのAEDにグループホットワードを割り当てる割当て命令を受け取ることは、グループホットワードを有効化し、選択されたグループのAEDの中の各AEDにグループホットワードが割り当てられることを有効化するようにデジタルアシスタントに命令すべくグラフィカルユーザインターフェースに表示された1つまたは複数のオブジェクトとのユーザ対話を示すユーザ入力指示を受け取ることを含む。
【0007】
方法は、データ処理ハードウェアにおいて、デジタルアシスタントがユーザに関連付けられた2つ以上のAEDにおいて長期存続するアクションを実行するためのコマンドに対応する、ユーザによって発話された前のオーディオデータを受信することをさらに含んでよい。デジタルアシスタントは、長期存続するアクションに関係のあるフォローアップクエリーにおいて使用するためにグループホットワードを自動的に作成するように構成される。ここで、選択されたグループのAEDにグループホットワードを割り当てる割当て命令を受け取ることは、デジタルアシスタントによって自動的に作成されたグループホットワードを受け取ることを含む。グループホットワードが割り当てられた選択されたグループのAEDは、長期存続するアクションを実行している2つ以上のAEDを含む。一部の実装形態において、方法は、データ処理ハードウェアによって、第1のAEDからの可聴の再生のために、長期存続するアクションの実行が進行中であることを示すデジタルアシスタントからの応答、および長期存続するアクションに関係のあるフォローアップクエリーにおいて使用するために自動的に作成されたグループホットワードに対応する合成された音声を出力することをさらに含む。これらの実装形態において、デジタルアシスタントは、長期存続するアクションが終了したとき、自動的に作成されたグループホットワードの使用を取り消す。一部の実施例において、選択されたグループのAEDの中の各AEDは、同一のデバイスタイプに関連付けられ、または共通の属性を共有し、選択されたグループのAEDに割り当てられたグループホットワードは、選択されたグループのAEDに関連付けられたデバイスタイプ、または共通の属性を一意に識別する暗黙のホットワードを含み、ホットワード検出モデルは、オーディオデータに対して音声認識を実行することなしにストリーミングオーディオにおいてグループホットワードの存在を検出するためにあらかじめ訓練される。
【0008】
一部の実装形態において、選択されたグループのAEDに割り当てられたグループホットワードは、1つまたは複数のAEDのサブセットの中のいずれの特定のAEDも明示的に識別することなしに、ユーザに対する近接性において現在、最も近くにある、選択されたグループのAEDからの1つまたは複数のAEDのサブセットのみを宛先とする近接性ベースのホットワードを含む。ホットワード検出モデルは、オーディオデータに対して音声認識を実行することなしにストリーミングオーディオにおいてグループホットワードの存在を検出するためにあらかじめ訓練され、協働ルーチンを実行することは、第1のAEDおよび選択されたグループのAEDの中の他の各AEDに各々、ユーザに対するそれぞれの近接性値を決定させ、かつクエリーによって指定された動作の実行を遂行すべき1つまたは複数のAEDのサブセットを選択するために選択されたグループのAEDにわたってそれぞれの近接性値を使用して調停を実行させる。オプションとして、グループホットワードは、ユーザによって作成されたカスタムホットワード、または1つまたは複数の利用可能なグループホットワードのリストから選択された事前定義されたホットワードのうちの1つを含んでよい。協働ルーチンの実行中、第1のAEDおよび選択されたグループのAEDの中の他の各AEDは、オーディオデータに関して音声認識結果を生成し、音声認識結果が、実行すべき動作を指定するクエリーを識別すると判定するために、音声認識結果に対するクエリー解釈を実行し、かつ音声認識結果に対して実行されたクエリー解釈を、選択されたグループのAEDの中の他のAEDと共有するために、選択されたグループのAEDの中のAEDのうちの1つを指定することによって互いに協働する。
【0009】
一部の実装形態において、実行すべき動作を指定するクエリーは、長期存続する動作を実行すべき選択されたグループのAEDに関するクエリーを含み、協働ルーチンによる実行中、選択されたグループのAEDの中の各AEDは、長期存続する動作の持続時間にわたって互いにペアとなること、および長期存続する動作と関係のあるサブアクションの実行を調整することによって互いに協働する。クエリーによって指定された動作は、選択されたグループのAEDの中の各AEDにおいて実行すべきデバイスレベルの動作を含んでよく、協働ルーチンの実行中、選択されたグループのAEDの中の各AEDは、デバイスレベルの動作の実行を独立に遂行することによって互いに協働する。
【0010】
本開示の他の態様は、グループホットワードを有効化して、2つ以上の選択されたグループのアシスタント対応デバイスに割り当てるための第1のアシスタント対応デバイス(AED)を提供する。第1のAEDは、データ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアとを含む。メモリハードウェアは、データ処理ハードウェアにおいて実行されると、データ処理ハードウェアに動作を実行させる命令を記憶する。動作は、グループホットワードを、ユーザに関連付けられた選択されたグループのAEDに割り当てる割当て命令を受け取ることを含む。選択されたグループのAEDは、第1のAEDと、1つまたは複数の他のAEDとを含む。選択されたグループのAEDの中の各AEDは、選択されたグループのAEDの中のAEDのうちの少なくとも1つによってストリーミングオーディオにおいてグループホットワードが検出されたとき、低電力状態から起動するように構成される。また、動作は、ユーザによって話された発話に対応し、実行すべき動作を指定するクエリーを含むオーディオデータを受信することも含む。オーディオデータにおいてグループホットワードを検出することに応答して、動作は、低電力状態から起動するよう第1のAEDをトリガすることを含む。また、動作は、第1のAEDと選択されたグループのAEDの中の他の各AEDに、クエリーによって指定された動作の実行を遂行すべく互いに協働するようにさせる協働ルーチンを実行することも含む。
【0011】
本開示の実装形態は、以下のオプションの特徴のうちの1つまたは複数を含んでよい。一部の実装形態において、動作は、選択されたグループのAEDの中の各AEDに関連するそれぞれのデバイス特性に基づいて、選択されたグループのAEDの代理としてストリーミングオーディオにおいてグループホットワードの存在をリッスンすべき1つまたは複数のAEDを選択されたグループのAEDから選択するリーダー選択プロセスを実行することをさらに含む。ここで、選択されたグループのAEDの中の少なくとも第1のAEDが、ストリーミングオーディオにおいてグループホットワードの存在をリッスンすべくリーダー選択プロセスによって選択される。これらの実装形態において、動作は、グループホットワードを割り当てられた選択されたグループのAEDの更新が、選択されたグループのAEDに1つまたは複数の追加のAEDを追加し、かつ/または選択されたグループのAEDからAEDのうちの1つまたは複数を除去すること、あるいは選択されたグループのAEDの中のAEDのうちの1つにおいてデバイス状態変化が生じること、のうちの少なくとも1つに応答して、リーダー選択プロセスを再実行することを含んでもよい。オプションとして、選択されたグループのAEDの中の各AEDに関連するそれぞれのデバイス特性は、処理能力、デバイスタイプ、ユーザにより構成可能なデバイス設定、電力使用量、バッテリレベル、AEDの物理的位置、またはネットワーク能力のうちの少なくとも1つを含んでよい。
【0012】
オーディオデータにおいてグループホットワードを検出することに応答して、動作は、オーディオデータにおいてグループホットワードを検出しなかった、選択されたグループのAEDの中の他の各AEDを、低電力状態から起動して、クエリーによって指定された動作の実行を遂行すべき選択されたグループのAEDの中のすべてのAEDと協働するために呼び出すことをさらに含んでよい。一部の実装形態において、オーディオデータにおいてグループホットワードを検出することに応答して、動作は、ホットワードレジストリにアクセスすることによって、グループホットワードが割り当てられた、選択されたグループのAEDの中の1つまたは複数の他のAEDの各々を識別することをさらに含む。ホットワードレジストリは、ユーザに関連付けられた1つまたは複数のAEDに各々が割り当てられた1つまたは複数のホットワードのリストを含み、1つまたは複数のホットワードのリストは、グループホットワードを含む。これらの実装形態において、選択されたグループのAEDの中の他の各AEDを呼び出すことは、ホットワードレジストリにアクセスすることによって識別された、グループホットワードが割り当てられた1つまたは複数の他のAEDの各々に基づく。一部の実施例において、ホットワードレジストリは、第1のAED、ユーザに関連付けられた少なくとも1つの他のAED、または第1のAEDと通信するサーバのうちの少なくとも1つにおいて記憶される。
【0013】
オプションとして、選択されたグループのAEDにグループホットワードを割り当てる割当て命令を受け取ることは、グループホットワードを有効化して、グループホットワードを選択されたグループのAEDに割り当てるようデジタルアシスタントに要求する音声入力をユーザから受け取ること、音声入力についての自動化された音声認識(ASR)結果を生成するためにオーディオデータに対して音声認識を実行するよう音声認識器に命令すること、および選択されたグループのAEDの中の各AEDがグループホットワードに割り当てられることを有効化するようにグループホットワードの名前を指定するグループホットワードを識別すべく、音声入力に関するASR結果に対してクエリー解釈を実行することを含んでよい。一部の実装形態において、選択されたグループのAEDにグループホットワードを割り当てる割当て命令を受け取ることは、グループホットワードを有効化し、選択されたグループのAEDの中の各AEDにグループホットワードが割り当てられることを有効化するようにデジタルアシスタントに命令すべくグラフィカルユーザインターフェースに表示された1つまたは複数のオブジェクトとのユーザ対話を示すユーザ入力指示を受け取ることを含む。
【0014】
一部の実施例において、動作は、デジタルアシスタントがユーザに関連付けられた2つ以上のAEDにおいて長期存続するアクションを実行するためのコマンドに対応する、ユーザによって発話された前のオーディオデータを受信することをさらに含む。デジタルアシスタントは、長期存続するアクションに関係のあるフォローアップクエリーにおいて使用するためにグループホットワードを自動的に作成するように構成される。ここで、選択されたグループのAEDにグループホットワードを割り当てる割当て命令を受け取ることは、デジタルアシスタントによって自動的に作成されたグループホットワードを受け取ることを含む。グループホットワードが割り当てられた選択されたグループのAEDは、長期存続するアクションを実行している2つ以上のAEDを含む。一部の実装形態において、動作は、第1のAEDからの可聴の再生のために、長期存続するアクションの実行が進行中であることを示すデジタルアシスタントからの応答、および長期存続するアクションに関係のあるフォローアップクエリーにおいて使用するための自動的に作成されたグループホットワードに対応する合成された音声を出力することをさらに含む。これらの実装形態において、デジタルアシスタントは、長期存続するアクションが終了したとき、自動的に作成されたグループホットワードの使用を取り消す。一部の実施例において、選択されたグループのAEDの中の各AEDは、同一のデバイスタイプに関連付けられ、または共通の属性を共有し、選択されたグループのAEDに割り当てられたグループホットワードは、選択されたグループのAEDに関連付けられたデバイスタイプ、または共通の属性を一意に識別する暗黙のホットワードを含み、ホットワード検出モデルは、オーディオデータに対して音声認識を実行することなしにストリーミングオーディオにおいてグループホットワードの存在を検出するためにあらかじめ訓練される。
【0015】
一部の実装形態において、選択されたグループのAEDに割り当てられたグループホットワードは、1つまたは複数のAEDのサブセットの中のいずれの特定のAEDも明示的に識別することなしに、ユーザに対する近接性において現在、最も近くにある、選択されたグループのAEDからの1つまたは複数のAEDのサブセットのみを宛先とする近接性ベースのホットワードを含む。ホットワード検出モデルは、オーディオデータに対して音声認識を実行することなしにストリーミングオーディオにおいてグループホットワードの存在を検出するためにあらかじめ訓練され、協働ルーチンを実行することは、第1のAEDおよび選択されたグループのAEDの中の他の各AEDに各々、ユーザに対するそれぞれの近接性値を決定させ、かつクエリーによって指定された動作の実行を遂行すべき1つまたは複数のAEDのサブセットを選択するために選択されたグループのAEDにわたってそれぞれの近接性値を使用して調停を実行させる。オプションとして、グループホットワードは、ユーザによって作成されたカスタムホットワード、または1つまたは複数の利用可能なグループホットワードのリストから選択された事前定義されたホットワードのうちの1つを含んでよい。協働ルーチンの実行中、第1のAEDと選択されたグループのAEDの中の他の各AEDは、オーディオデータに関して音声認識結果を生成し、音声認識結果が、実行すべき動作を指定するクエリーを識別すると判定するために、音声認識結果に対するクエリー解釈を実行し、かつ音声認識結果に対して実行されたクエリー解釈を、選択されたグループのAEDの中の他のAEDと共有するために、選択されたグループのAEDの中のAEDのうちの1つを指定することによって互いに協働する。
【0016】
一部の実装形態において、実行すべき動作を指定するクエリーは、長期存続する動作を実行すべき選択されたグループのAEDに関するクエリーを含み、協働ルーチンによる実行中、選択されたグループのAEDの中の各AEDは、長期存続する動作の持続時間にわたって互いにペアとなること、および長期存続する動作と関係のあるサブアクションの実行を調整することによって互いに協働する。クエリーによって指定された動作は、選択されたグループのAEDの中の各AEDにおいて実行すべきデバイスレベルの動作を含んでよく、協働ルーチンの実行中、選択されたグループのAEDの中の各AEDは、デバイスレベルの動作の実行を独立に遂行することによって互いに協働する。
【0017】
本開示の1つまたは複数の実装形態の詳細は、添付の図面、および後段の説明において提示される。他の態様、他の特徴、および他の利点が、説明および図面、ならびに特許請求の範囲から明白となろう。
【図面の簡単な説明】
【0018】
図1A】グループホットワードを有効化して、選択されたグループのアシスタント対応デバイスに割り当てるためのシステムを示す概略図である。
図1B】グループホットワードを有効化して、選択されたグループのアシスタント対応デバイスに割り当てるためのシステムを示す概略図である。
図1C】グループホットワードを有効化して、選択されたグループのアシスタント対応デバイスに割り当てるためのシステムを示す概略図である。
図2A】グループホットワードを有効化して、異なる選択されたグループのアシスタント対応デバイスに割り当てるための例示的なグラフィカルユーザインターフェースを示す概略図である。
図2B】グループホットワードを有効化して、異なる選択されたグループのアシスタント対応デバイスに割り当てるための例示的なグラフィカルユーザインターフェースを示す概略図である。
図3】ストリーミングオーディオにおいてグループホットワードの存在をリッスンすべき1つまたは複数のアシスタント対応デバイスを選択するための例示的なリーダー選択プロセスを示す概略図である。
図4】環境の様々な区域に配置された複数のアシスタント対応デバイスを含む例示的な音声対応環境を示す概略図である。
図5図4の音声対応環境に配置された異なる選択されたグループのアシスタント対応デバイスにそれぞれが割り当てられたホットワードのリストを含む例示的なホットワードレジストリを示す図である。
図6】グループホットワードを有効化して、選択されたグループのアシスタント対応デバイスに割り当てる方法に関する動作の例示的な構成を示すフローチャートである。
図7】例示的なコンピューティングデバイスを示す図である。
【発明を実施するための形態】
【0019】
様々な図面における同様の符号は、同様の要素を示す。
【0020】
理念的には、デジタルアシスタントインターフェースと会話するとき、ユーザは、デジタルアシスタントインターフェースを実行するユーザのアシスタント対応デバイスに向けられた口頭の要求を介して、ユーザが別の個人に話しているかのようにコミュニケーションをとることができるはずである。デジタルアシスタントインターフェースは、アクションが実行されることが可能であるように口頭の要求を処理し、認識する自動化された音声認識器にこれらの口頭の要求を与える。しかし、実際には、スマートフォンまたはスマートウォッチなどのリソースの制約された音声対応デバイス上で音声認識を継続的に実行するのは、法外に高いコストがかかるので、デバイスがこれらの口頭の要求に常時、応答することは、困難である。
【0021】
常時オンの音声をサポートするユーザ体験をもたらすべく、アシスタント対応デバイスは、通常、ユーザによって話されたとき、ユーザによって話される任意の後続の音声に対して完全な自動化された音声認識(ASR)を開始する、狭いセットの句を特徴づけるオーディオ特徴を認識するように構成されたコンパクトなホットワード検出モデルを実行する。有利なこととして、ホットワード検出モデルは、デジタルシグナルプロセッサ(DSP)チップなどの低電力ハードウェア上で実行されることが可能であり、「Hey Google」(おい、グーグル)または「Hey living room speaker」(おい、居間スピーカ)などの様々な固定句コマンドに応答してよい。
【0022】
ユーザの環境(例えば、自宅またはオフィス)内のアシスタント対応デバイスの数が増加するにつれ、ユーザは、例えば、グループのアシスタント対応スマートスピーカにわたって音量レベルを調整すべく、またはグループのアシスタント対応スマート照明にわたって照光レベルを調整すべく、多数のアシスタント対応デバイスを同時にトリガすることを所望することがあり得る。ユーザが多数の異なるアシスタント対応デバイスをトリガすることを所望する場合、ユーザは、現行では、各デバイスに別々のクエリーを独立に発行することを要求される。例えば、ユーザの自宅におけるキッチン照明およびダイニングルーム照明をオフにするのに、ユーザは、「Hey kitchen lightbulb, turn off」(おい、キッチンの電灯、消灯)および「Hey dining room lightbulb, turn off」(おい、居間の電灯、消灯)などの別々のクエリーを話す必要がある。
【0023】
本明細書における実装形態は、ユーザが同時に制御することを所望する可能性がある多数の異なるアシスタント対応デバイス(AED)とのより迅速で、より自然な対話を可能にすべく、ユーザがグループのアシスタント対応デバイスに単一のクエリーを発行することを可能にすることを対象とする。具体的には、実装形態は、各デバイスが、ストリーミングオーディオにおいてグループホットワードが検出されたとき、低電力状態からトリガすることによってグループホットワードを含む口頭のクエリーに応答するように、グループホットワードを作成して、ユーザによって選択されたグループの2つ以上のAEDに割り当てることを対象とする。すなわち、ホットワードが割り当てられた選択されたグループのAEDの中の各AEDが、音声認識を実行することなしにストリーミングオーディオにおいてグループホットワードの存在を検出すべく訓練されたホットワード検出モデルを実行してよい。一部の実装形態において、選択されたグループのAEDに割り当てられたグループホットワードは、対応するホットワード検出モデルが、事前定義されたグループホットワードの存在を検出するためにあらかじめ訓練されるように事前定義される。他方、ユーザは、ユーザが、単一のクエリーにおいて特定のグループのAEDを宛先とするために使用することを所望する任意の語または句を含むカスタムグループホットワードを作成することをしてもよい。ここで、ユーザは、カスタムホットワードを検出するように対応するホットワード検出モデルを訓練すべく、カスタムホットワードを話しているユーザの1つまたは複数の訓練発話を提供するように要求されてよい。
【0024】
一部の実施例において、ユーザは、グループのAEDを選択し、ユーザが、単一のクエリーにおいて同時に宛先とすることを所望する選択されたグループのAEDにグループホットワード(例えば、事前定義された、またはカスタムの)が割り当てられることを手動で有効化すべくデジタルアシスタントインターフェースを使用する。選択されたグループのAEDの中のAEDが、グループホットワードをグループのAEDに割り当てるデジタルアシスタントインターフェースから割当て命令を受け取って、その結果、選択されたグループのAEDの中のAEDのうちの少なくとも1つによってストリーミングオーディオにおいてグループホットワードが検出されたとき、選択されたグループの中の各AEDが低電力状態から起動するように構成されてよい。例えば、ユーザは、「family room speakers」(ファミリールームスピーカ)というグループホットワードを、ユーザの自宅の居間に配置されたグループの4つのスマートスピーカに割り当てて、ユーザが、「Family room speakers」というグループホットワードと、その後に続く、実行すべき動作を指定する、単一のクエリー、例えば、「play that 12-6-97 Phish show」を含む発話を話すことによって、これらのスマートスピーカの4つすべてを宛先とすることが可能であるようにしてよい。この実例において、グループの4つのスマートスピーカの中のスマートスピーカのうちの少なくとも1つが、ユーザの発話において「Family room speakers」というグループホットワードを検出することが、対応するスマートスピーカが低電力状態から起動して、グループの4つのスマートスピーカの中の各スマートスピーカに、クエリーによって指定された動作の実行を遂行すべく互いに協働するようにさせる協働ルーチンを実行することをトリガする。例えば、4つの居間スピーカは、1997年12月6日の日付にPhish(フィッシュ)というバンドによって上演されたコンサートに対応する曲を再生すべく協働してよい。この実施例において、スピーカのうちの1つが、ローカルストレージデバイス、ネットワークストレージデバイス、または遠隔ストリーミングサービスからその曲をストリーミングすること、および、次に、その他のスピーカにその曲をブロードキャストして、それらのスピーカからその曲を可聴であるように再生することを任せられてよい。オプションとして、動作を遂行すべく協働する際、スマートスピーカのうちの2つが、左チャネルに対応するオーディオを再生してよく、スマートスピーカのうちの他の2つが、右チャネルに対応するオーディオを再生してよく、その結果、ステレオ構成をもたらすようにするなど、スマートスピーカのうちのいくつかが、動作と関係する異なる再生責務を実行してよい。
【0025】
この同じ実施例を続けると、スマートスピーカ以外のデバイスタイプに対応するAED、およびユーザの自宅の居間以外の部屋に配置されたスマートスピーカなどの、グループホットワードに割り当てられていない、選択されたグループの他のAEDは、グループホットワードに応答せず、ユーザが「Family room speakers」と発話するとき、スリープ状態に留まったままである。さらに、各AEDに、ユーザが対応するAEDだけを宛先にすることを所望する場合、対応するAEDだけがストリーミングオーディオにおいて検出するように構成された一意のデバイス特有のホットワードが割り当てられてよい。例えば、AEDに割り当てられた一意のデバイス特有のホットワードは、「Hey Device 1」(おい、デバイス1)などのAEDの識別子を含んでよく、または「Hey Smart Speaker 1」(おい、スマートスピーカ1)などのデバイスタイプ、および/またはAEDに関連付けられた他の属性を含むことも可能である。さらに、居間に配置された、選択されたグループの4つのスマートスピーカ、ならびにユーザに関連付けられているが、グループホットワードが割り当てられていない他の任意のAEDは、「Hey Assistant」(おい、アシスタント)などの包括的なデフォルトのホットワードにも応答するように構成されてよい。一部の実施例において、ユーザに関連付けられた少なくとも1つのAEDに2つ以上のグループホットワードが同時に割り当てられて、その少なくとも1つのAEDが、その2つ以上のグループホットワードのうちの対応する1つがそれぞれに割り当てられた、異なる選択されたグループのAEDのメンバであるようにすることが可能である。これらの実施例において、各選択されたグループのAEDは、異なる対応するホットワードが割り当てられたAEDの組合せとは異なる、対応するグループホットワードが割り当てられたAEDの組合せを含んでよい。
【0026】
一部の実装形態において、ユーザは、グループホットワードが選択されたグループのAEDに割り当てられることを手動で有効化する。例えば、ユーザは、ユーザがユーザに関連付けられたすべてのAEDの設定を構成すること、および調整することを可能にするためのグラフィカルユーザインターフェースを表示するデジタルアシスタントアプリケーションにアクセスしてよい。ここで、グラフィカルユーザインターフェースは、グループホットワードを作成し、有効化するため、およびいずれのAEDにユーザがグループホットワードを割り当てることを所望するかを選択するための様々なグラフィカルオブジェクト(テクストフィールド、ボタン、プルダウンメニュー)をレンダリングするグループホットワード画面を提示してよい。このため、選択されたグループのAEDは、グループホットワードを有効化し、選択されたグループのAEDの中の各AEDにグループホットワードが割り当てられるようデジタルアシスタントに命令するようにグラフィカルユーザインターフェースにおいて表示された1つまたは複数のオブジェクトとのユーザ対話を示すユーザ入力指示を受け取ることに応答して、グループホットワードを割り当てる割当て命令を受け取ってよい。ユーザは、グループに追加すべき1つまたは複数のさらなるAEDを選択すること、および/またはグループから除去すべき1つまたは複数のAEDを選択することによって、GUIを介して選択されたグループのAEDを更新してよい。
【0027】
また、ユーザは、グループホットワードクエリーに対応する音声入力を介して、グループのAEDを選択し、グループホットワードが選択されたグループのAEDに割り当てられることを有効化してもよい。ここで、ユーザは、グループホットワードを有効化し、グループホットワードを選択されたグループのAEDに割り当てるようデジタルアシスタントに要求する音声入力を話してよい。例えば、ユーザの自宅の階下の区域に配置された第1のAEDおよび第2のAEDにグループホットワードが割り当てられることを有効化すべくユーザによって話された音声入力が、「Device 1 and device 2, respond to downstairs devices」(デバイス1とデバイス2、階下のデバイスに応答してください)を含んでよい。ここで、第1のAEDおよび第2のAEDのそれぞれが、そのAEDそれぞれのデバイス特有のホットワードを検出し、「respond to downstairs devices」というグループホットワードクエリーに対応する後続のオーディオデータを処理すべく起動するように、ユーザによって話された「Device 1」という用語は、第1のAEDに割り当てられたそれぞれのデバイス特有のホットワードを含み、ユーザによって話された「Device 2」という用語は、第2のAEDに割り当てられた、異なるそれぞれのデバイス特有のホットワードを含む。このため、第1のAEDまたは第2のAEDのうちの少なくとも1つが、音声入力に関するASR結果を生成し、次に、グループホットワードクエリーを識別するようにASR結果に対してクエリー解釈を実行すべくオーディオデータに対して音声認識を実行するよう音声認識器(例えば、オンデバイスASRまたはサーバ側ASR)に命令してよい。ASR結果に対して実行されたクエリー解釈によって識別されるグループホットワードクエリーは、有効化すべきグループホットワードの名前(例えば、「downstairs devices」)、およびグループホットワードが割り当てられるべき選択されたセットのAEDの中の各AEDを指定する。ユーザは、包括的なホットワードを通して直接にデジタルアシスタントを呼び出すことによって、グループホットワードクエリーに対応する音声入力を与えることも同様に可能であった。例えば、ユーザは、「Hey Assistant, have device 1 and device 2 respond to downstairs devices」(おいアシスタント、デバイス1とデバイス2を階下のデバイスに応答させてください)というグループホットワードクエリーを話すことが可能であった。この実施例において、ユーザに関連付けられた任意のAEDが、「Hey Assistant」という事前定義されたデフォルトのホットワードを検出してよく、ASR結果を生成し、グループホットワード、およびグループホットワードが割り当てられるべき選択されたグループのAEDの中の各AEDを識別すべく音声認識を実行するようにオーディオデータに対して音声認識を開始するよう起動してよい。
【0028】
前述のGUI実施例の場合と同様に、ユーザは、グループに追加すべき1つまたは複数のさらなるAEDを指定する後続の音声入力、および/またはグループから除去すべき1つまたは複数のAEDを選択する後続の音声入力を介して、選択されたグループのAEDを同様に更新してよい。例えば、ユーザは、「downstairs devices」というグループホットワードが割り当てられたグループのAEDに第3のAED104c(デバイス3)を追加すべく「Hey downstairs devices, add device 3」(おい階下のデバイス、デバイス3を追加してください)と発話してよい。同様に、ユーザは、第1のAEDにもはやグループホットワードが割り当てられず、ユーザが「Hey downstairs devices」と発話したときにトリガされないように、グループから第1のAED104a(デバイス1)を除去すべく「Hey device 1, leave the downstairs devices group」(おいデバイス1、階下のデバイスグループを切り離してください)と発話してよい。ユーザは、グループのAEDに行われた更新を確認する(または元に戻す)口頭の確認を与えてよい。さらに、すべてのデバイスが選択されたグループを離れると、ホットワードは、存在することを止めてよく、ユーザが、グループホットワードを再作成すること、または再有効化することを要求する。
【0029】
さらなる実施例において、グループホットワードは、暗黙に利用可能である。例えば、ユーザは、ユーザに対して近い近接性にあるAEDだけを宛先とすべく「Hey nearby devices」または「Hey nearby device」(おい、近くのデバイス)というグループホットワードを発話してよい。ホットワード検出器は、単数形のグループホットワードも、複数形のグループホットワードも検出することが可能であり、または単数形だけを検出して、「s」という接尾辞を認識すべく音声認識に依拠することが可能である。このタイプの暗黙のグループホットワードは、近接性ベースのグループホットワードを含む。ユーザは、いずれのAEDに暗黙の近接性ベースのグループホットワードが割り当てられるべきかを指定すべく、デジタルアシスタントアプリケーションにアクセスして、GUIと対話してよい。したがって、この実例におけるグループホットワードは、AEDに割り当てられたそれぞれの一意のホットワードによっても、発話のクエリー部分においてAEDを指名することによっても、ユーザがそれらのAEDを明示的に識別することを要求することなしに、ユーザが、ユーザに対する近接性において現在、最も近くにある1つまたは複数のAEDだけを呼び出すことを所望することを指定するコンテクストを与える。留意すべきこととして、暗黙の近接性ベースのグループホットワードが割り当てられた各AEDは、起動プロセスをトリガし、オーディオに対する音声認識を開始すべくストリーミングオーディオにおいてグループホットワードの存在を検出するようにホットワード検出モデルを実行してよい。この実例における暗黙のグループホットワードは、近接性ベースであるので、多数のAEDが、キャプチャされたストリーミングオーディオにおいてグループホットワードを検出してよいものの、これらのAEDはそれぞれ、ユーザに対するそれぞれの近接性値を決定し、次に、ユーザのクエリーによって指定された動作を遂行すべき、これらのAEDのうちの1つまたは複数を選択するようにその多数のAEDにわたってこれらの近接性値を使用して調停を実行するように、その後、オーディオを処理してよい。ここで、ユーザからの何らかの上限距離しきい値の外にあるAEDは、クエリーを遂行するのに不適格であってよい。オプションとして、「Hey nearby device(s)」という近接性ベースのグループホットワードを検出したユーザのポケットの中のスマートフォンAEDなどの、何らかの下限距離しきい値の内にあるAEDもまた、クエリーに応答するのに不適格であってよい。また、ユーザは、近接性ベースのグループホットワードが割り当てられた、選択されたグループにAEDを追加する/そのような選択されたグループからAEDを除去するオプションも有する。
【0030】
さらに、または代替として、ユーザのクエリーに応答すべく選択される1つまたは複数のAEDは、クエリーを遂行するのに最適である1つまたは複数のAEDだけが選択されるように、クエリーのタイプ、および/または各AEDに関連するそれぞれのデバイス特性に基づいてよい。この場合、各AEDに関連するデバイス特性は、処理能力、デバイスタイプ、ユーザにより構成可能なデバイス設定、電力使用量、バッテリレベル、AEDの物理的位置、またはネットワーク能力、その他を含んでよい。このため、クエリーが、「Hey nearby device, set a timer」(おい近くのデバイス、タイマーをセットしてください)などの単一デバイスクエリーである場合、AEDが、バッテリ電源のスマートスピーカであり、バッテリ容量が非常に低い(例えば、5%より少ない)という理由で、デバイス調停が、ユーザに対して最も近いAEDは、クエリーを遂行するのに不適格であると判定してよい。したがって、暗黙の近接性ベースのグループホットワードが割り当てられた次に最も近いAEDが、クエリーを遂行してよい。
【0031】
一部の実装形態において、暗黙のグループホットワードが、同一のデバイスタイプに関連付けられた、選択されたグループの中のAEDに割り当てられる。例えば、暗黙のデバイスタイプグループホットワードは、スマートスピーカのデバイスタイプを含む、ユーザに関連付けられたすべてのAEDを宛先とするように「Hey smart speakers」を含むことが可能である。同様に、別の暗黙のデバイスタイプグループホットワードは、スマート照明のデバイスタイプを含むすべてのAEDを宛先とするように「Hey smart lights」(おい、スマート照明)を含むことが可能である。留意すべきこととして、デバイスタイプグループホットワードは、選択されたグループのAEDに関連付けられたデバイスタイプを一意に識別することによって、ユーザがいずれのAEDを宛先とすることを所望するかを示すコンテクストを与える。各AEDが、オーディオデータに対して音声認識を実行することなしにストリーミングオーディオにおいてデバイスタイプグループホットワードの存在を検出するためにあらかじめ訓練されたホットワード検出モデルを実行してよい。
【0032】
さらなる実装形態において、暗黙のグループホットワードが、共通の属性を共有する、選択されたグループにおけるAEDに割り当てられる。例えば、暗黙の属性ベースのグループホットワードは、青色を有するものとしてラベルが付けられた、ユーザに関連付けられたすべてのAEDを宛先とするように「Hey blue devices」(おい、青デバイス)を、または赤色を有するものとしてラベルが付けられた、ユーザに関連付けられたすべてのAEDを宛先とするように「Hey red devices」(おい、赤デバイス)を含むことが可能である。属性ベースのグループホットワードは、サイズなどの他の任意の属性、例えば、「Hey large devices」(おい大きいデバイス)または「Hey small devices」(おい、小さいデバイス)を同様に指定することが可能である。留意すべきこととして、属性ベースのグループホットワードは、ユーザが宛先とすることを所望する特定のグループのAEDをさらに絞り込むことが可能である。「Hey smart speakers」という暗黙のデバイスタイプグループホットワードが、ユーザの自宅全体にわたるすべてのスマートスピーカを宛先とし、「Hey family room speakers」という手動で有効化されたグループホットワードが、ユーザの自宅の居間に配置された4つのスマートスピーカだけを宛先とする、非限定的な実施例において、「Hey blue devices」という暗黙の属性ベースのグループホットワードが、赤色の外観を有するものとしてラベルが付けられたユーザの居間に配置された4つのスマートスピーカのうちの2つだけを宛先とするのに使用されることが可能である。
【0033】
暗黙のグループホットワードは、デジタルアシスタントアプリケーションのGUIを介して有効化/無効化されてよい。同様に、暗黙のグループホットワードを割り当てられたグループのAEDは、デジタルアシスタントアプリケーションのGUIを介して指定されて/選択されてよい。暗黙のグループホットワードが割り当てられた、選択されたグループのAEDは、前述されるとおり、グループにさらなるAEDを追加すること、および/またはグループからAEDを除去することによって更新されてよい。
【0034】
さらなる実装形態において、デジタルアシスタントは、長期存続するアクションが進行中である間、グループホットワードを作成して、長期存続するアクションを実行している選択されたグループのAEDに割り当てることを自動的に行う。例えば、ユーザは、2つ以上のAED上で長期存続するアクションを実行するようデジタルアシスタントに命じる音声クエリー/コマンドを発話してよい。非限定的な実施例において、「Hey Assistant, play party music playlist on speaker 1 and speaker 2」(おいアシスタント、スピーカ1とスピーカ2でパーティ曲再生リストを再生してください)という音声クエリー/コマンドが、ユーザのパーティ曲再生リストを可聴の再生としてスピーカ1およびスピーカ2からストリーミングすることによって、デジタルアシスタントに長期存続する動作を実行させる。この実施例において、デジタルアシスタントは、ユーザが長期存続する動作に関係のあるフォローアップクエリーにおいて使用するように、「Party music」というアクション特有のグループホットワードを自動的に作成するように構成される。このため、スピーカ1およびスピーカ2はそれぞれ、デジタルアシスタントによって自動的に作成された「Party music」というグループホットワードを割り当てる割当て命令を受け取る。その後、ユーザは、「Party music」と単に発話することによって、スピーカ1およびスピーカ2の上で実行される長期存続する動作を宛先としてよい。例えば、ユーザは、再生リストにおける次のトラックに進むように「Party music, next song」(パーティ曲、次の音楽)という発話を話してよく、またはスピーカ1およびスピーカ2にそれぞれスピーカの音量を増加させるように命令すべく「Party music, turn up the volume」(パーティ曲、音量を上げてください)という発話をしてよい。ユーザに、デジタルアシスタントによって作成されたアクション特有のグループホットワードについて知らせるべく、デジタルアシスタントは、AEDのうちの1つ(例えば、スピーカ1またはスピーカ2)からの可聴の再生のために、長期存続する動作の実行が進行中であること、および長期存続するアクションに関係のあるフォローアップクエリーにおいて使用するために自動的に作成されたグループホットワードを示すように応答に対応する合成された音声を出力してよい。前述の実施例において、応答は、「Got it, now playing that. In the future, you can control playback using the 'party music' hotword」(分かりました、今それを再生します。これからは「パーティ曲」ホットワードを使用して再生を制御できます)と伝える合成された音声を含んでよい。デジタルアシスタントは、長期存続するアクションが終了したとき、自動的に作成されたグループホットワードの使用を取り消してよい。
【0035】
図1A図1Cは、ユーザ102が、グループホットワード50gを発話することによって単一のクエリーにおいて選択されたグループの2つ以上のAEDを宛先とすることを可能にするように、ユーザ102に関連付けられた、選択されたグループの2つ以上のアシスタント対応デバイス(AED)104にグループホットワード50gを割り当てるためのシステム100を例示する。簡単に述べると、後段でより詳細に説明されるとおり、図1Aは、ユーザ102が、「Hey Assistant, have device 1 and device 2 respond to downstairs speakers」(おいアシスタント、デバイス1とデバイス2を階下のスピーカに応答させてください)という発話106をすることによって、ユーザ102に関連付けられた、選択されたグループの2つ以上のAED104、104a~cにグループホットワードが割り当てられることを手動で有効化することを示す。発話106に応答して、AED104(および、オプションとして、AEDと通信する遠隔サーバ120)上で実行されるデジタルアシスタント105が、「device 1」と名付けられた第1のAED104aと、「device 2」と名付けられた第2のAED104bとを含む選択されたグループのAED104に「downstairs speakers」というグループホットワードを割り当てる割当て命令をもたらす。グループホットワードが割り当てられた各AED104a、AED104bは、選択されたグループのAED104a、AED104bの中のAEDのうちの少なくとも1つによってストリーミングオーディオにおいてグループホットワードが検出されたとき、低電力状態から起動するように構成される。例えば、ユーザが、「Downstairs speakers, play my playlist」という後続の発話126を話したとき、第1のAED104aおよび第2のAED104bが、各AED104a、AED104bが低電力状態から起動して、ユーザの102再生リスト(例えば、トラック#1)から曲122を再生することを始めるように互いに協働する協働ルーチン150を実行することをトリガする発話126に対応するオーディオデータにおいて「Downstairs speakers」というグループホットワードを検出する。
【0036】
図示される実施例において、システム100は、ユーザ102に関連付けられ、ユーザ102が音声を通じて対話してよいデジタルアシスタント105を実行する3つのAED104a~cを含む。3つのAED104が示されるものの、ユーザ102は、ユーザ102に関連付けられた音声対応環境全体にわたって配置された任意の数のAED104を含んでよい。AED104はすべて、スマートスピーカに対応するが、AED104は、限定なしに、スマートフォン、タブレット、スマートディスプレイ、デスクトップ/ラップトップ、スマートウォッチ、スマート機器、ヘッドフォン、または車両インフォテインメントデバイスなどの他のコンピューティングデバイスを、本開示の範囲を逸脱することなしに、含むことが可能である。各AED104は、データ処理ハードウェア10と、データ処理ハードウェア10上で実行されると、データ処理ハードウェア10に動作を実行させる命令を記憶するメモリハードウェア12とを含む。各AED104は、AED104に向けられた音声などの音響サウンドをキャプチャするように構成された1つまたは複数のマイクロフォン16のアレイを含む。また、各AED104は、デジタルアシスタント105からの曲122および/または合成された音声450(図4)などのオーディオを出力してよいオーディオ出力デバイス(例えば、スピーカ)18を含んでもよく、またはそのようなオーディオ出力デバイス18と通信していてもよい。
【0037】
図1Aは、ユーザ102が、「downstairs speakers」というグループホットワードを有効化して、「device 1」と名付けられた第1のAED104aと、「device 2」と名付けられた第2のAED104bとを含む選択されたグループのAEDにそのグループホットワードを割り当てるようデジタルアシスタント105に要求すべく、少なくとも第1のAED104aの付近で「Hey Assistant, have device 1 and device 2 respond to downstairs speakers」という発話106を話すことを示す。第1のAED104aのマイクロフォン16が、発話106を受け取り、発話106に対応するオーディオデータ20を処理する。オーディオデータ20の初期の処理は、オーディオデータ20をフィルタリングすること、およびオーディオデータ20をアナログ信号からデジタル信号に変換することを含んでよい。第1のAED104aが、オーディオデータ20を処理し、第1のAED104aは、さらなる処理のためにオーディオデータ20をメモリハードウェア12のバッファに記憶してよい。オーディオデータ20がバッファ内にある状態で、第1のAED104aは、オーディオデータ20が、ユーザ102に関連付けられた各AEDに割り当てられた「Hey Assistant」という事前定義された包括的なホットワード50を含むかどうかを検出すべくホットワード検出器108を使用してよい。ホットワード検出器108は、オーディオデータ20に対して音声認識を実行することなしにオーディオデータ20に含まれるホットワードを識別するように構成される。ホットワード検出器108は、ホットワード50の存在を粗くリッスンし、検出された場合、ホットワード50の存在を確認する第2のホットワード検出段をトリガする初期ホットワード検出段を含んでよい。初期ホットワード検出段は、データ処理ハードウェア10の低電力デジタルシグナルプロセッサ(DSP)上で実行されてよく、他方、第2のホットワード検出段は、より正確なホットワード検出を可能にすべく、より計算コストの高くつくアプリケーションプロセッサ(AP)(例えば、システムオンチップ(SoC))上で実行されてよい。
【0038】
一部の実装形態において、ホットワード検出器108は、発話106の初期部分にあるホットワードを識別するように構成される。この実施例において、ホットワード検出器108は、ホットワード検出器108が、ホットワード50に特徴的である、オーディオデータ20における音響特徴を検出した場合、「Hey Assistant, have device 1 and device 2 respond to downstairs speakers」という発話106が「Hey Assistant」という事前定義された包括的なホットワード50を含むと判定してよい。音響特徴は、発話106の短期パワースペクトル(short-term power spectrums)の表現であるメル周波数ケプストラム係数(MFCC)であってよく、または発話106のメルスケールフィルタバンクエネルギーであってよい。例えば、ホットワード検出器108は、オーディオデータ20からMFCCを生成すること、およびそのMFCCが、ホットワード検出器108のホットワードモデルに記憶された、「Hey Assistant」というホットワードに特徴的であるMFCCと類似したMFCCを含むと分類することに基づいて、「Hey Assistant, have device 1 and device 2 respond to downstairs speakers」という発話106が「Hey Assistant」というホットワード50を含むことを検出してよい。別の実施例として、ホットワード検出器108は、オーディオデータ402からメルスケールフィルタバンクエネルギーを生成すること、およびそのメルスケールフィルタバンクエネルギーが、ホットワード検出器108のホットワードモデルに記憶された、「Hey Assistant」というホットワードに特徴的であるメルスケールフィルタバンクエネルギーと類似したメルスケールフィルタバンクエネルギーを含むと分類することに基づいて、「Hey Assistant, have device 1 and device 2 respond to downstairs speakers」という発話106が「Hey Assistant」というホットワード50を含むことを検出してよい。
【0039】
ホットワード検出器108が、発話106に対応するオーディオデータ20が事前定義された包括的なホットワード50を含むと判定した場合、AED104は、発話106に対応するオーディオデータ20に対して音声認識を開始する起動プロセスをトリガしてよい。例えば、AED104上で実行されている音声認識器116が、発話106に対応するオーディオデータ20に対して音声認識および/または意味解釈を実行してよい。音声認識器116は、発話106に関する自動化された音声認識(ASR)結果を生成すべくオーディオデータ20に対して音声認識を実行してよく、次に、有効化されるべきグループホットワードの名前、およびグループホットワードが割り当てられるべき選択されたグループのAEDの中の各AED104を指定するグループホットワードクエリー118を識別するようにASR結果に対してクエリー解釈を実行してよい。この実施例において、音声認識器116は、「have devices 1 and 2 respond to downstairs devices」という句を、グループホットワードの「downstairs speakers」という名前、およびグループホットワードが割り当てられるべき選択されたグループのAED104の中の各AED04a、104bである「device 1 and device 2」を指定するグループホットワードクエリー118として含むASR結果に対してクエリー解釈を実行してよい。
【0040】
一部の実装形態において、音声認識器116は、AED104上に配置されることに加えて、またはその代わりにサーバ120上に配置される。ホットワード検出器108が、発話106において事前定義された包括的なホットワード50を検出することに応答して、起動するようAED104aをトリガすると、AED104aは、発話106に対応するオーディオデータ20を、ネットワーク132を介してサーバ120に送信してよい。AED104aは、サーバ120が包括的なホットワード50の存在を確認するようにホットワード50を含むオーディオデータ20の部分を送信してよい。代替として、AED104aは、包括的なホットワード50の後の発話106の部分に対応するオーディオデータ20の部分だけをサーバ120に送信してよい。サーバ120は、音声認識を実行すべく音声認識器116を実行して、オーディオデータ20の転記をAED104aに戻す。すると、AED104aは、発話106における語を識別し、AED104aは、意味解釈を実行し、グループホットワードクエリー118を識別する。AED104a(および/またはサーバ120)は、デジタルアシスタント105が、「downstairs speakers」というグループホットワードを、第1のAED104aと、第2のAED104bとを含む選択されたグループのAED104に割り当てる割当て命令を有効化し、与えるようにグループホットワードクエリー118を識別してよい。図示される実施例において、デジタルアシスタント105は、曲122を再生する長期存続する動作を、AED104のスピーカ18からの再生オーディオとして実行することを始める。デジタルアシスタント105は、ストリーミングサービス(図示せず)から曲122をストリーミングしてよく、またはデジタルアシスタント105は、AED104上に記憶された曲を再生するようAED104に命令してよい。
【0041】
「downstairs devices」というグループホットワード50gが有効化されて、第1のAED104aおよび第2の104bに割り当てられた後、第1のAED104aおよび第2の104bのそれぞれの上で実行されるそれぞれのホットワード検出器108は、後続の発話126に対応するオーディオデータ20において「downstairs devices」というグループホットワード50gを識別するように構成される。ここで、それぞれのホットワード検出器108は、キャプチャされたオーディオに対して音声認識を実行することなしにAED104a、AED104bそれぞれによってキャプチャされたストリーミングオーディオにおいて「downstairs speakers」というグループホットワード50gの後続の発話126を検出すべく訓練されたそれぞれのグループホットワードモデル114がAED104a、AED104bそれぞれの上で実行されるように活性化してよい。グループホットワードモデル114は、AED104またはサーバ120のメモリハードウェア12上に記憶されてよい。サーバ120上に記憶される場合、AED104は、AED104がグループホットワードモデル114を活性化することができるように、対応するグループホットワード50gに関するグループホットワードモデル114を取得し、取得されたグループホットワードモデル114を提供するようサーバに要求してよい。一部の実施例において、グループホットワード50gは、事前定義され、ユーザ102が有効化して、選択されたグループのAED104に割り当ててよい、示唆されるグループホットワードとして利用可能である。これらの実施例において、対応するグループホットワードモデル114は、ストリーミングオーディオにおいてグループホットワード50gを検出すべくあらかじめ訓練される。他の実施例において、グループホットワード50gは、ユーザによって作成されるカスタムグループホットワードである。これらの他の実施例において、ユーザ102は、ユーザ102がカスタムグループホットワード50gを話すことを含む訓練発話を話すことによって、カスタムグループホットワード50gを検出すべく、対応するグループホットワードモデル114を訓練してよい。
【0042】
さらなる実装形態において、選択されたグループのAED104にグループホットワードを割り当てることが、AED104のうちの1つまたは複数に、低電力かつ低忠実度状態で音声認識器116を実行させ、音声認識器116は、AED104によってキャプチャされた後続の発話126において話された場合に限って、AED104に割り当てられたグループホットワード50gを認識するように制約される、またはバイアスがかけられる。音声認識器116は、限られた数の用語/句だけしか認識しないので、音声認識器116のパラメータの数が、大幅に削減されて、その結果、音声においてグループホットワード50gを認識するために必要とされるメモリ要件、および計算の数が減らされてよい。したがって、音声認識器116の低電力および低忠実度の特徴は、デジタルシグナルプロセッサ(DSP)上で実行するのに適していることが可能である。これらの実装形態において、AED104のうちの少なくとも1つの上で実行される音声認識器116が、グループホットワードモデル114を使用する代わりに、その少なくとも1つのAED104によってキャプチャされたストリーミングオーディオにおいて、有効化されたグループホットワード50gの発話106を認識してよい。
【0043】
AED104のうちの1つまたは複数が、ホットワードレジストリ500をメモリハードウェア12上にローカルで記憶してよい。ホットワードレジストリ500は、ユーザ102に関連付けられた1つまたは複数のAED104にそれぞれが割り当てられた1つまたは複数のホットワード50のリストを含む。デジタルアシスタント105および/または選択されたグループの中のAED104は、1つまたは複数のホットワードのリストの中の有効化されたグループホットワード50gを含み、グループホットワード50gが割り当てられた選択されたグループのAED104の中の各AED104を識別するようにホットワードレジストリ500に追加してよい。「downstairs speakers」というグループホットワード50gを有効化して、デバイス1と名付けられた第1のAED104aおよびデバイス2と名付けられた第2のAED104bに割り当てると、図1Aが、デジタルアシスタント105がデバイス1およびデバイス2に対する「downstairs speakers」というグループホットワード50gの割当てを指定すべくホットワードレジストリ500を更新することを示す。
【0044】
一部の実施例において、選択されたグループのAEDの中の第1のAED104aおよび第2のAED104bが、グループホットワード50gを割り当てる割当て命令を受け取った後、第1のAED104aおよび第2のAED104bは、各AED104に関連付けられたそれぞれのデバイス特性302に基づいて、選択されたグループのAEDの代理としてストリーミングオーディオにおいてグループホットワード50gの存在をリッスンすべき1つまたは複数のAEDを選択されたグループから選択するリーダー選択プロセス300を実行する。図3は、選択されたグループのAEDの中の各AED104に関連付けられたそれぞれのデバイス特性302を入力として受け取り、グループホットワード50gの存在をリッスンするようにAEDのうちの1つまたは複数を選択する選択命令310を出力として生成するように構成された例示的なリーダー選択プロセス300を示す。各AED104に関連付けられたデバイス特性302は、限定なしに、処理能力、デバイスタイプ、ユーザにより構成可能なデバイス設定、電力使用量、バッテリレベル、AEDの物理的位置、またはネットワーク能力のうちの少なくとも1つを含んでよい。図1Aの実施例において、デバイス2と名付けられた第2のAED104bに関連付けられたデバイス特性302は、第2のAED102bがポータブルデバイスであり、バッテリによって現在、給電されていることを示してよい一方で、デバイス1と名付けられた第1のAED104aに関連付けられたデバイス特性302は、第1のAED102aが、外部電源、例えば、電源コンセントによって給電される据え置き型デバイスであることを示してよい。このため、リーダー選択プロセス300によって出力される選択命令310は、デバイス2のバッテリレベルが5パーセント(5%)より少なくなければ、「downstairs devices」と発話するユーザ102に対してデバイス1またはデバイス2のうちのより近い方が、クエリーを識別すべく音声認識および意味解釈を実行することによって応答すべきことを示してよい。すなわち、「downstairs devices」というグループホットワード50gを含む後続の発話126が、AED104a、AED104bのそれぞれによってストリーミングオーディオにおいて検出されたとき、AED104a、AED104bによる協働ルーチン150の実行が、デバイス2と名付けられた第2のAED104bに、デバイス2がユーザ102の最も近くにある場合でさえ、バッテリレベルが5パーセントより少ない場合、応答することをしないようにさせる。このことは、デバイス2が、オーディオデータに対して音声認識および/または意味解釈を実行する処理リソースを消費しなくてもよいようにすることによって電力を節約することを可能にする。そうではなく、電力節約が関心事ではない場合、リーダー選択プロセス300は、オーディオを処理すべく最も近くにあるAED104を、そのAED104によってキャプチャされたオーディオが、より離れたところにあるAED104によってキャプチャされたオーディオと比べて、より高い品質を有して、それゆえ、より正確な音声認識をもたらす尤度がより高いので、一般に選択してよい。
【0045】
さらなる実施例において、リーダー選択プロセス300は、より粒度の細かい選択命令310を生成することができる。例えば、選択命令310は、第1の段のホットワード検出器108がグループホットワード50gを初期に検出した場合、AED104のうちの1つだけを、グループホットワード50gの存在を確認すべく第2の段のホットワード検出(すなわち、計算コストの高くつくホットワード検出モデル114を使用して、または音声認識器116を使用して)をトリガするように選択してよい。すなわち、選択命令310は、グループホットワード50gが割り当てられた選択されたグループのAEDの中の各AED104に、各AED104が第1の段のホットワード検出器108を使用してグループホットワード50gの存在を検出したとき、AED104のうちの選択された1つだけが、グループホットワード50gの存在を確認すべく第2段のホットワード検出をトリガすることを通知してよい。さらに敷衍すると、デバイス特性302は、AEDのうちの1つが、バッテリを電源とし、グループホットワード50gを粗くリッスンする低忠実度という犠牲を払って低電力を消費するDSPチップ上で第1の段のホットワード検出器108を実行するように構成されていることを示してよく、グループホットワード50gが、第1の段のホットワード検出器108によって検出されると、アプリケーションプロセッサ(例えば、SoCチップ)が、起動して、グループホットワード50gの存在を確認すべく第2の段のホットワード検出(例えば、ホットワードモデル114またはオンデバイスASR116)を実行するようにトリガされる。このため、デバイス特性302が、選択されたグループのAEDの中の1つまたは複数の他のAEDが非バッテリ電源のデバイスであることを示す場合、低電力状態から起動するようにAPをトリガすることによってバッテリ電源のデバイスが電力を浪費することがないように、それらのデバイスを、少なくとも、第2の段のホットワード検出のタスクのために活用することが効率的であり得る。
【0046】
選択されたグループのAEDの中のAEDに関するデバイス特性302が、限られたセットの一般的なクエリー/コマンドに関して、AEDが、音声認識をオンデバイスで実行することができる一方で、選択されたグループの中の他のAEDは、サーバ側ASRを実行すべくサーバ120にオーディオを提供する必要があることを示す、他のシナリオが存在することが可能である。リーダー選択プロセス300は、協働ルーチン150に、限られたセットの中の一般的なクエリー/コマンドのうちの1つがキャプチャされたオーディオデータ20において認識されるかどうかを判定すべく、キャプチャされたオーディオデータ20に対してオンデバイスで音声認識を実行することを最初に試みるように、オンデバイス音声認識を実行することができるAEDを選択させる選択命令310を生成してよい。一般的なクエリー/コマンドのうちの1つが認識されない場合、生成された選択命令310は、協働ルーチン150が、オーディオデータ20に対してサーバ側ASRを実行すべくサーバ120にオーディオデータ20を提供するようにその他のAEDのうちの1つを選択することを許してよい。
【0047】
引き続き図3を参照すると、選択されたグループのAED104の中のAED104が、リーダー選択プロセス300を周期的に、および/または特定のイベントに応答して再実行してよい。一実施例において、リーダー選択プロセス300を再実行することは、選択されたグループのAED104の中のAEDのうちの1つにおけるデバイス状態変化304に応答して行われる。デバイス状態変化304は、限定なしに、AED104にかかる処理負荷が、処理しきい値に違反するレベルにまで増加すること、AED104にかかる処理負荷が、処理レベルにもはや違反しなくなるレベルにまで減少すること、背景ノイズレベルの変化、バッテリ容量がバッテリ容量しきい値を下回って低下すること、ネットワーク接続が失われること、AED104が電源オフになること、その他を含んでよい。デバイス状態変化304は、リーダー選択プロセス300に、グループホットワードをリッスンするのに現在、最もよく適している1つまたは複数のAEDを選択すべく、選択されたグループの中の各AED104に関連付けられたそれぞれのデバイス特性302を再評価させる。
【0048】
一実施例において、リーダー選択プロセス300を再実行することは、1つまたは複数のさらなるAED104を選択されたグループのAED104に追加する、選択されたグループのAED104の更新306に応答して行われる。例えば、図1Bが、ユーザ102が、デバイス1と名付けられた第1のAED104aおよびデバイス2と名付けられた第2のAED104bに加えて、「デバイス3」と名付けられた第3のAED104cに「downstairs speakers」というグループホットワード50gを割り当てるようデジタルアシスタント105に要求すべく、少なくとも、第1のAED104aの付近で「Downstairs speakers, add device 3」という別の発話136を話すことを示す。ここで、発話136は、少なくとも第1のAED104aが(すなわち、選択命令310に基づいて)、低電力状態から起動するように第1のAED104aをトリガすべく、グループホットワード50gに対応するホットワード検出モデル114を使用して発話136に対応するオーディオデータ20において検出する「downstairs speakers」というグループホットワード50gを含む。起動すると、第1のAED104aは、発話136に関するASR結果を生成して、さらなるAED102cに関する「Device 3」というデバイス識別子を、「downstairs devices」というグループホットワード50gが割り当てられた選択されたグループのAED104に追加するよう指定するグループホットワードクエリー118を識別すべく、ASR結果に対してクエリー解釈を実行するようにオーディオデータ20に対して音声認識を実行するよう音声認識器116に命令する。したがって、第3のAED104cは、「downstairs speakers」というグループホットワード50gを、今や第3のAED104cを含むように更新されている選択されたグループのAEDに割り当てる割当て命令を受け取ってよい。第3のAED104cは、図1Aを参照して前述されるとおり、グループホットワード50cに対応するホットワード検出モデル114を活性化してよい。デジタルアシスタント105が、デバイス3と名付けられた第3のAED104cを、「downstairs speakers」というグループホットワード50gが割り当てられた、選択されたグループのAED104に追加するようにホットワードレジストリ500を更新してよい。図3のリーダー選択プロセス300は、第3のAED104cを選択されたグループのAED104に追加する更新306に応答して、第3のAED104cに関連付けられたそれぞれのデバイス特性302を考慮するように再実行されてよい。3つすべてのAED104a~cが、ユーザの再生リストからの曲122をストリーミングする長期存続する動作の実行を遂行すべく互いに協働してよい。
【0049】
さらに、または代替として、リーダー選択プロセス300を再実行することは、選択されたグループのAED104から1つまたは複数のAED104を除去する、選択されたグループのAED104の更新306に応答して行われてよい。例えば、図1Cが、ユーザ102が、デバイス1と名付けられた第1のAED104aを、「downstairs speakers」というグループホットワード50gが割り当てられた、選択されたグループのAED104から除去するようデジタルアシスタント105に要求すべく、少なくとも第1のAED104aの付近で「Device 1, leave the downstairs speakers group」という別の発話146を話すことを示す。ここで、発話146は、低電力状態から起動して、「downstairs speakers」というグループホットワード50gが割り当てられた、選択されたグループのAED104から第1のAED104aを除去するようデジタルアシスタント105に要求するグループホットワードクエリー118を識別すべくオーディオデータ20を処理するように第1のAED104aをトリガする、第1のAED104aに一意で割り当てられ、発話146に対応するオーディオデータ20において第1のAED10aによって検出される、「Device 1」というデバイス特有のホットワード50dを含む。したがって、第1のAED104aは、グループホットワード50gに対応するホットワード検出モデル114を不活性化して、第1のAED104aが、オーディオデータにおいてグループホットワード50gの存在をもはやリッスンしないようにしてよい。デジタルアシスタント105は、デバイス1と名付けられた第1のAED104aを、「downstairs speakers」というグループホットワード50gが割り当てられた、選択されたグループのAED104から除去するようにホットワードレジストリ500を更新してよい。図3のリーダー選択プロセス300は、デバイス1がもはや、選択されたグループのAEDのメンバではないことに基づいて、更新された選択命令310を決定するように再実行されてよい。第2のAED104bと第3のAED104cは今や、図1Aにおいてユーザ102によって話される発話126におけるクエリー128によって指定された長期存続する動作の実行を遂行するのに、第1のAED104aなしに互いに協働してよい。
【0050】
図1Aを再び参照すると、少なくとも第1のAED104aが、対応するグループホットワードモデル114を使用して、実行されるべき動作を指定するクエリー128を含む、ユーザ102によって発話された後続の発話126に対応するオーディオデータ20において「downstairs devices」(階下のデバイス)というグループホットワード50gの存在を検出する。具体的には、実施例は、ユーザ102が、「Downstairs speakers, play my playlist」(階下のスピーカ、私の再生リストを再生してください)という後続の発話126を話すこと、および少なくとも第1のAED104aが、グループホットワードモデル114を使用して、対応するオーディオデータ20において「downstairs devices」というグループホットワード50gを検出することを示す。オーディオデータ20においてグループホットワード50gを検出することは、第1のAED104a(および、オプションとして、第2のAED104b)が、低電力状態から起動して、グループホットワード50gが割り当てられた第1のAED104aと他の各AED104に、クエリー128によって指定された動作の実行を遂行すべく互いに協働させる協働ルーチン150を実行するようにトリガする。ここで、クエリー128は、長期存続する動作を指定し、第1のAED104aと第2のAED104bは、長期存続する動作の持続時間にわたって互いにペアになること、およびユーザの再生リストからの曲122を再生すべく長期存続する動作と関係のあるサブアクションの実行を調整することによって互いに協働する。例えば、一方のAED104が、再生リストをストリーミングする遠隔の曲ストリーミングサービスに接続するサブアクションを実行して、ストリーミング再生リストを他方のAED104にブロードキャストしてよい。一部の実施例において、協働するAED104は、AEDの一方が、左オーディオチャネルの役割を担い、AEDの他方が、右オーディオチャネルの役割を担って、ステレオ構成をもたらすなど、異なる曲再生責務を担ってよい。図1Aは、デバイス1と名付けられた第1のAED104aとデバイス2と名付けられた第2のAED104bが、ユーザの再生リストからの曲122(例えば、トラック#1)を再生する長期存続する動作の実行を遂行すべく互いに協働する協働ルーチン150を実行することを示す。
【0051】
一部の実施例において、第1のAED104aがオーディオデータ20においてグループホットワード50gを検出することに応答して、第1のAED104aは、グループホットワード50gを検出しなかった、選択されたグループのAED104の中の他の各AED104を、低電力状態から起動して、クエリー128によって指定された動作の実行を遂行すべく第1のAED104aと協働するために呼び出す。これらの実施例において、グループホットワード50gを検出することに応答して、第1のAED104aは、グループホットワードが割り当てられた選択されたグループの中の1つまたは複数の他のAED104のうちのそれぞれを、ホットワードレジストリ500にアクセスすることによって識別してよい。ここで、1つまたは複数のホットワードのリストを含むホットワードレジストリ500は、デバイス1と名付けられた第1のAED104a、およびデバイス2と名付けられた第2のAED104bに割り当てられた「downstairs stairs」(階下の階段)というグループホットワード50gを含む。このため、第1のAED104aは、デバイス2と名付けられた第2のAED104bにもやはりグループホットワード50gが割り当てられていることを識別して、その結果、クエリー128によって指定された動作(例えば、ユーザ102の再生リストからの曲122をストリーミングすること)の実行を遂行すべく第1のAED104aと協働するように第2のAED104bを呼び出してよい。
【0052】
図示される実施例におけるクエリー128は、実行すべき長期存続する動作を指定するが、他の実施例は、選択されたグループのAEDの中の各AED上で個々に実行されるべきデバイスレベルの動作を指定するクエリーを含んでよい。すなわち、協働ルーチン150の実行中、選択されたグループのAEDの中の各AEDは、デバイスレベルの動作の実行を独立に遂行することによって協働する。例えば、第1のAED104aおよび第2のAED104bが、同一のグループホットワード50gが割り当てられたスマート電球に対応する場合、照明をオフにするデバイスレベルの動作を指定するクエリーは、各スマート電球に、電源オフの動作を独立に実行させる。
【0053】
図2Aを参照すると、一部の実装形態において、デジタルアシスタント105に関連付けられたソフトウェアアプリケーション205が、ユーザデバイスのグラフィカルユーザインターフェース(GUI)208においてユーザによって定義されたグループホットワード選択画面200、200aを表示するようにユーザデバイス上で実行される。図示される実施例において、ユーザデバイスは、スマートフォン(例えば、図4のスマートフォン104j)に対応するAED104を含む。ユーザによって定義されたグループホットワード選択画面200aは、ユーザが、グループホットワード50gを有効化して、ユーザによって選択された、グループの2つ以上のAED104に割り当てることを可能にする。ユーザ102は、図1A~1Cを参照して前述されるとおり音声入力を与えることに加えて、またはその代わりに、グループホットワード選択画面200aを使用してグループホットワードを有効化して、割り当ててよい。図示される実施例において、グループホットワード選択画面200aは、グループホットワード50gを有効化して、グループホットワード50gが割り当てられるべきグループのAED104を選択するようデジタルアシスタント105に命令すべくユーザが対話してよい複数のオブジェクト210、210a~dをGUI208において表示する。
【0054】
GUI208は、ユーザが、ユーザが作成することを所望するカスタムグループホットワードの名前をタイプ入力することによってカスタムグループホットワードを作成することを可能にするテクストフィールドオブジェクト210aとのユーザ対話を示すユーザ入力指示を受け取ってよい。オプションとして、ユーザ102は、ユーザ102がカスタムグループホットワードを発話することに対応する音声入力を与えるべく音声入力グラフィック(例えば、グラフィカルマイクロフォン)を選択してよい。カスタムグループホットワードを作成する際、グループホットワード選択画面200aが、ストリーミングオーディオにおいてカスタムグループホットワードを検出すべくグループホットワード検出モデル114を訓練する際に使用するためのカスタムグループホットワードを含むいくつかの訓練例を発話するようユーザを促してよい。
【0055】
他方、ユーザ102は、選択するように利用可能な事前定義されたグループホットワードのリストを提示するドロップダウンオブジェクト210bとのユーザ対話を示すユーザ入力指示を与えることによって、事前定義されたグループホットワードを有効化してよい。ドロップダウンオブジェクト210は、デバイスタイプを記述するグループホットワード、例えば、「Smart Speakers」(スマートスピーカ)および「Smart Lights」(スマート照明)、環境における一般的な区域/領域を記述するグループホットワード、例えば、「Family Room Devices」(居間デバイス)、ならびにデバイスタイプと区域/領域の両方を記述するグループホットワード、例えば、「Bedroom Speakers」(寝室スピーカ)などから選択するように、一般的に使用されるグループホットワードを、利用可能な事前定義されたグループホットワードとして提示してよい。ユーザは、利用可能なグループホットワードのリストの中でスクロールすべくドロップダウンオブジェクト210bと対話することができる。一部の実施例において、カスタムグループホットワードが、利用可能なグループホットワードのリストに追加されることが可能である。図示される実施例において、GUI208は、利用可能な事前定義されたグループホットワードのリストから「Family Room Devices」という事前定義されたグループホットワードを選択するドロップダウンオブジェクト210とのユーザ対話を示すユーザ入力指示を受け取る。ここで、事前定義されたグループホットワードの選択は、事前定義されたグループホットワードを有効化するようデジタルアシスタント105に命令してよい。また、アシスタントは、グループのAED104に割り当てられるように有効化/活性化すべきグループホットワードを示唆してもよい。例えば、ユーザは、すべて或る意味グループに属するグループのデバイスに手動で(例えば、順次に、またはデバイスの個々の名前を介して)クエリーすることに気を配ってよい。
【0056】
さらに、グループホットワード選択画面200aは、ユーザ102に関連付けられた複数のAED104のうちのそれぞれの1つにそれぞれが対応する複数の選択オブジェクト210cを表示する。ユーザ102は、テクストフィールドオブジェクト210aを介して作成された、またはドロップダウンオブジェクト210bから選択されたグループホットワード50gが割り当てられるべきグループのAED104に含めるように各AED104を選択するユーザ入力(例えば、タッチ)を与えてよい。図示される実施例において、GUI208は、スピーカ1、スピーカ2、スピーカ3、スピーカ4、およびスマートTVと名付けられたAED104に対応する、「Family Room Devices」というグループホットワードが割り当てられるべく選択されたグループのAEDの中にこれらのAEDを含める選択オブジェクト210cとのユーザ対話を示すユーザ入力指示を受け取る。「Family Room Devices」というグループホットワードを有効化して、スピーカ1~4およびスマートTVを含む選択されたグループのAED104に割り当てるようデジタルアシスタント105に命令すべく、ユーザ102は、有効化オブジェクト210dとのユーザ対話を示すユーザ入力指示を与えてよい。有効化オブジェクト210dが選択されたものと想定して、デジタルアシスタント105は、選択されたグループのAEDに対する「Family Room Speakers」というグループホットワードの割当てを示す割当て命令を、スピーカ1~4およびスマートTVを含む選択されたグループのAEDに与える。また、デジタルアシスタントは、図5に示されるホットワードレジストリ500にグループホットワードおよび選択されたグループのAEDを追加してもよい。
【0057】
図2Bを参照すると、一部の実装形態において、デジタルアシスタント105に関連付けられたソフトウェアアプリケーション205が、AED104のGUI208において暗黙のグループホットワード選択画面200、200bを表示するように構成される。暗黙のグループホットワード選択画面200bは、複数の利用可能な暗黙のグループホットワードを表示し、ユーザ102が、各暗黙のグループホットワードが割り当てられるべきグループのAEDを選択することを可能にする。各暗黙のグループホットワードに関して、暗黙のグループホットワード選択画面200bは、AEDに関連付けられた属性に基づいて、暗黙のグループホットワードが割り当てられることが可能なすべての適格なAEDをリストアップしてよい。例えば、ユーザ102に関連付けられたAED104のすべてが、「Hey nearby devices」および/または「Hey nearby device」という近接性ベースのグループホットワードが割り当てられるべき適格なAEDとしてリストアップされる。したがって、ユーザ102は、口頭のグループホットワードを検出するAEDが、クエリーによって指定された動作を遂行するためにユーザ102の最も近くにあるデバイスまたは複数のデバイスを選択するように調停を実行することによって互いに協働するように、単一のクエリーにおいて、「Hey nearby devices」または「Hey nearby device」という近接性ベースのグループホットワードを単に発話することによって、任意の所与の時点でユーザ102の最も近くにある1つまたは複数のAEDを宛先としてよい。有利なこととして、近接性ベースのグループホットワードは、ユーザ102が、ユーザ102に対する近接性において現在、最も近くにあるサブセットの1つまたは複数のAEDだけを宛先とすることを、ユーザがそのサブセットの1つまたは複数のAEDの中のいずれの特定のAEDも明示的に識別することを要求することなしに可能にする。
【0058】
図示される実施例において、「Hey nearby devices」という近接性ベースのグループホットワードが、デフォルトでユーザに関連付けられたすべてのAEDに割り当てられる。ユーザは、近接性ベースのグループホットワードが割り当てられた選択されたグループのAEDから任意のAEDを除去すべく選択オブジェクトと対話してよい。例えば、GUI208は、近接性ベースのグループホットワードが割り当てられたグループからスマートフォンを除去するようにスマートフォンと名付けられたAED104に対応する選択オブジェクト210cとのユーザ対話を示すユーザ入力指示を受け取ってよい。したがって、スマートフォンは、スマートフォンがユーザ102に対して最も近くにあるAEDである場合でさえ、ユーザが「Hey Nearby Devices」と発話することを検出することも、それに応答することもしない。
【0059】
他の暗黙のグループホットワードは、すべて同一のデバイスタイプを共有する選択されたグループのAEDに割り当てられることが可能なデバイスタイプグループホットワードを含む。図示される実施例において、暗黙のグループホットワード選択画面200bは、スピーカ1~7と名付けられたAEDがすべて、スマートスピーカの同一のデバイスタイプを含むので、スピーカ1~7だけを、「Hey smart speakers」という暗黙のデバイスタイプグループホットワードが割り当てられるべき適格なAEDとしてリストアップする。したがって、ユーザ102は、「Hey smart speakers」というグループホットワードが割り当てられるべきグループのAEDを選択するように(またはグループからAEDを選択解除するように)GUI208において表示された選択オブジェクト210cと対話してよく、その後、単一のクエリーにおいてスマートスピーカのデバイスタイプを含む、ユーザ102に関連付けられたすべてのAEDを宛先とすべく、「Hey smart speakers」というグループホットワードを含む発話を話してよい。
【0060】
また、暗黙のグループホットワード選択画面200bは、共通の属性を共有するそれぞれの選択されたグループのAED104にそれぞれが割り当てられてよい2つの異なる暗黙の属性ベースのホットワードを表示する。例えば、第1の属性ベースのグループホットワードは、ユーザが、単一のクエリーにおいて青色を有する(または、それ以外で「Blue」とラベルが付けられた)属性を共有するすべてのスマートスピーカを宛先とすることを可能にすべく、ユーザ102がスピーカ1およびスピーカ2に割り当ててよい、「Blue Speakers」を含む。同様に、第2の属性ベースのグループホットワードは、ユーザが、単一のクエリーにおいて赤色を有する(または、それ以外で「Red」とラベルが付けられた)属性を共有するすべてのスマートスピーカを宛先とすることを可能にすべく、ユーザがスピーカ3およびスピーカ4に割り当ててよい、「Red Speakers」を含む。後段で図4を参照して明白となるとおり、属性ベースのグループホットワードは、ユーザが宛先とすることを所望する特定のグループのAEDをさらに絞り込むことが可能である。
【0061】
図4は、ユーザ102に関連付けられた複数のAED104を含む例示的な音声対応環境400を示す。図示される実施例において、音声対応環境400は、居間と、キッチンと、寝室とを含む多数の部屋および区域を有するユーザ102の自宅である。音声対応環境400は、図4において自宅を示すが、音声対応環境400は、教育環境、事業、または自動車などの多数のAEDのネットワークを実装する任意の環境を含むことが可能である。
【0062】
AED104は、音声対応環境全体にわたって位置づけられた、7つのスマートスピーカ104a~g(SP1~7)、スマートディスプレイ104h、スマートTV104i、およびスマートフォン104jを含む。スマートスピーカSP1 104a、SP2 104b、SP3 104c、SP4 104d、およびスマートTV104iは、ポータブル/モバイルであり、音声対応環境400における様々な部屋/区域全体にわたって移動させられてよいスマートフォン104jに加えて、音声対応環境400の居間に位置づけられる。スマートスピーカSP1~SP4とスマートTV104iは、「Family Room」と名付けられたそれぞれの区域を形成すべく結合してよく、またはそれ以外で一緒にペアになってよい。さらに、第1のスマートスピーカSP1、および第2のスマートスピーカSP2は、青色であるそれらのスピーカの物理的属性を記述すべく「Blue」デバイスとしてラベル付けされてよく、第3のスマートスピーカSP3、および第4のスマートスピーカSP4は、赤色であるそれらのスピーカの属性を記述すべく「Red」デバイスとしてラベル付けされてよい。サイズ(例えば、大きい対小さい)、タイプ/ブランド(例えば、高忠実度スピーカ)、あるいはユーザが、音声対応環境400における特定の区域内で、または多数の区域にわたってAEDを識別する/グループ化するのに使用する他の任意のラベルなどの他の属性が、使用されてよい。また、音声対応環境400は、キッチンに位置づけられ、「Kitchen」と名付けられたそれぞれの区域を形成すべく互いに結合する/ペアになるスマートスピーカSP5 104e、およびスマートディスプレイ104hを示す。同様に、スマートスピーカSP6 104fとスマートスピーカSP7 104gが、「Bedroom」と名付けられたそれぞれの区域を形成すべく一緒に結合して/ペアになってよい。
【0063】
図4の音声対応環境400を参照して説明されて、図5は、音声対応環境400に配置されたそれぞれの選択されたグループのAED104にそれぞれが割り当てられたホットワード50のリストを含む例示的なホットワードレジストリ500を示す。AED104のうちの1つまたは複数がそれぞれ、それぞれのローカルメモリハードウェア12上にホットワードレジストリ500を記憶してよい。ホットワードレジストリ500を記憶しないAED104は、ネットワークにおける他のAED104を発見して、いずれのホットワードがいずれのAEDに割り当てられているかを確かめるべく、他のAED104上のホットワードレジストリ500にアクセスしてよい。さらに、または代替として、ホットワードレジストリ500は、集中型デバイス上に記憶されて、AEDのうちの1つまたは複数と通信していてよい。例えば、ホットワードレジストリ500は、ホットワードレジストリをユーザ102に関するプロファイルに関連付ける、デジタルアシスタント105と提携する遠隔サーバなどの遠隔サーバ上に記憶されてよい。
【0064】
AED104のそれぞれに、AEDのうちの1つまたは複数によってストリーミングオーディオにおいて検出されたとき、AED104が低電力状態から起動して、デフォルトのホットワード50の後に続く1つまたは複数の他の用語の処理を開始するよう第1のデジタルアシスタント105を呼び出すようにトリガする、「Hey Assistant」というデフォルトのホットワード50が割り当てられる。ここで、第1のデジタルアシスタントは、第1の音声アシスタントサービス(例えば、GOOGLE社のアシスタント)と提携していてよい。さらに、スマートスピーカSP2 104b、スマートディスプレイ104h、およびスマートフォン104jにもまた、AED104b、104h、104jのうちのいずれか1つによってストリーミングオーディオにおいて検出されたとき、AEDが、その別のデフォルトのホットワードの後に続く1つまたは複数の他の用語の処理を開始するように第2のデジタルアシスタントを呼び出すようにトリガする、「Other Assistant」(他のアシスタント)という別のデフォルトのホットワードが割り当てられる。ここで、第2のデジタルアシスタントは、第1の音声アシスタントサービスとは異なる第2の音声アシスタントサービス(例えば、AMAZON社のAlexaまたはAPPLE社のSiri)と提携していてよい。さらに、各AED104に、ユーザが対応するAEDだけを宛先とすることを所望する場合、対応するAEDだけがストリーミングオーディオにおいて検出するように構成された一意のデバイス特有のホットワードが割り当てられてよい。例えば、環境400における第1のスマートスピーカSP1 104aに割り当てられた一意のデバイス特有のホットワードは、「Hey Device 1」または単に「Device 1」などのAEDの識別子を含んでよく、または「Hey Smart Speaker 1」または単に「Smart Speaker 1」などの、AEDに関連付けられたデバイスタイプおよび/または他の属性を含むことが可能である。
【0065】
前述したとおり、それぞれの選択されたグループのAEDに割り当てられたグループホットワードは、それぞれの選択されたグループのAED104にユーザ102によって割り当てられた手動で有効化されたホットワード50を含んでよい。手動で有効化されたホットワードは、ユーザ102によって作成されたカスタムホットワード、および/またはユーザ102によって選択されるように利用可能な事前定義されたホットワードであってよい。事前定義されたホットワードは、関連付けられたホットワードを検出すべく訓練された事前定義されたホットワードモデルに関連付けられてよい。しかし、ユーザ102によって作成されたカスタムホットワードは、カスタムホットワードを検出すべくカスタムホットワード検出モデルを訓練するようユーザに要求してよい。例えば、ユーザ102は、カスタムホットワードを含む1つまたは複数の発話を話してよい。
【0066】
一部の実施例において、ユーザ102は、ユーザが選択されたグループのAEDに含めることを所望する各AEDを選択する音声入力(例えば、発話)106(図1A)を与え、選択されたグループのAED104に手動で有効化されたグループホットワード50gを割り当てる。同様に、ユーザは、既存の選択されたグループのAED(図1B)に1つまたは複数のさらなるAEDを追加すること、および/または既存の選択されたグループのAED(図1C)から1つまたは複数のAEDを除去することによって選択されたグループのAED104を更新すべく、後続の音声入力136、146(図1Bおよび図1C)を与えてよい。さらに、または代替として、ユーザは、手動のグループホットワードを有効化して、グループホットワードが割り当てられるべきグループのAEDを選択するようデジタルアシスタント105に命令するように、図2Aのユーザによって定義されたグループホットワード選択画面200aなどの、GUI208において表示された1つまたは複数のオブジェクトとのユーザ対話を示すユーザ入力指示を与えてよい。ユーザ102は、既存の選択されたグループにさらなるAEDを追加すること、および/または既存の選択されたグループからAEDを除去することによって、選択されたグループのAED104を更新すべくGUI208に後続のユーザ対話指示を与えてよい。
【0067】
音声対応環境400に関する例示的なホットワードレジストリ500において、ユーザ102は、「Family Room Devices」という手動のグループホットワードを有効化して、「Family Room」と名付けられた区域に配置されたスマートスピーカSP1~SP4 104a~dおよびスマートTV 104iを含むそれぞれの選択されたグループのAEDに割り当てる。また、ユーザ102は、「Kitchen Devices」という手動のグループホットワードを有効化して、「Kitchen」と名付けられた区域に配置されたスマートスピーカSP5 104eおよびスマートディスプレイ104hに割り当てる。同様に、「Bedroom Speakers」という手動のグループホットワードが、ユーザによって有効化されて、「Bedroom」と名付けられた区域に配置されたスマートスピーカSP6、SP7 104f~gに割り当てられる。ここで、それぞれの手動で有効化されたグループホットワードは、対応するグループホットワード50が割り当てられたそれぞれの選択されたグループのAEDが配置された、音声対応環境400(例えば、ユーザの自宅)内の位置/区域を記述するものであってよい。留意すべきこととして、スマートスピーカSP6、SP7に割り当てられた、「Bedroom Speakers」という手動で有効化されたグループホットワードは、それぞれの選択されたグループのAEDに関連付けられたデバイスタイプ(例えば、スマートスピーカ)を記述するものである。
【0068】
図示される実施例において、ユーザ102は、スマートフォン104jに手動で有効化されたグループホットワードをまったく割り当てていない。しかし、ストリーミングオーディオにおいてクエリーに先行する対応するグループホットワードが検出された場合、選択されたグループのAEDのうちの1つまたは複数が、スマートフォン104jがクエリーによって指定された動作を遂行すべくそれぞれのグループの中のその他のAEDと協働することを可能にするようにスマートフォン104jを追加するように/含めるように更新されてよい。
【0069】
また、図5の例示的なホットワードレジストリ500は、複数の異なる暗黙のグループホットワード50gがそれぞれ、異なるそれぞれの選択されたグループのAED104に割り当てられることも示す。図2Bを参照して前述されるとおり、デジタルアシスタント105に関連付けられたソフトウェアアプリケーション205が、GUI208において暗黙のグループホットワード選択画面200bをレンダリングしてよく、ユーザ102が、利用可能な暗黙のグループホットワードを閲覧して、暗黙のグループホットワードに割り当てられるべきグループのAEDを選択するように画面200bと対話してよい。例えば、「Hey nearby devices」および/または「Hey nearby devices」という近接性ベースのグループホットワードが、図4の音声対応環境400に配置された、ユーザ102に関連付けられたAED104a~jのすべてに割り当てられる。したがって、ユーザ102は、口頭のグループホットワードを検出するAEDが、クエリーによって指定された動作を遂行するためにユーザ102の最も近くにあるデバイスまたは複数のデバイスを選択するように調停を実行することによって互いに協働するように、単一のクエリーにおいて、「Hey nearby devices」または「Hey nearby device」という近接性ベースのグループホットワードを単に発話することによって、任意の所与の時点で音声対応環境400においてユーザ102の最も近くにある1つまたは複数のAEDを宛先としてよい。有利なこととして、近接性ベースのグループホットワードは、ユーザ102が、ユーザ102に対する近接性において現在、最も近くにあるサブセットの1つまたは複数のAEDだけを宛先とすることを、ユーザがそのサブセットの1つまたは複数のAEDの中のいずれの特定のAEDも明示的に識別することを要求することなしに可能にする。
【0070】
暗黙の近接性ベースのグループホットワードが割り当てられた各AED104が、起動プロセスをトリガして、オーディオに対して音声認識を開始すべくストリーミングオーディオにおいてグループホットワードの存在を検出するようにホットワード検出モデルを実行してよい。この事例における暗黙のグループホットワードは、近接性ベースであるので、多数のAED104が、キャプチャされたストリーミングオーディオにおいてグループホットワードを検出してよいものの、これらのAED104はそれぞれ、ユーザ102に対するそれぞれの近接性値を決定し、次に、ユーザのクエリーによって指定された動作を遂行すべき、これらのAED104のうちの1つまたは複数を選択するようにその多数のAED104にわたってこれらの近接性値を使用して調停を実行するように、その後、オーディオを処理してよい。ここで、ユーザからの何らかの上限距離しきい値の外にあるAED104は、クエリーを遂行するのに不適格であってよい。オプションとして、「Hey nearby device(s)」という近接性ベースのグループホットワードを検出したユーザのポケットの中のスマートフォンAEDなどの、何らかの下限距離しきい値の内にあるAED104もまた、クエリーに応答するのに不適格であってよい。下限距離しきい値は、クエリーのタイプに依存して適用されることが可能である。例えば、クエリーが、近くのデバイスが探索結果を合成された音声として提供することになっている探索クエリーである場合、スマートフォン104jがユーザ102のあまりにも近くにあって、スマートフォン104jがユーザのポケットの中にあることを示すという事実が、合成された音声が弱められ、ユーザ102によって理解されない/聞き取られないことになるので、クエリーを遂行することからスマートフォン104jを不適格にする。また、ユーザは、近接性ベースのグループホットワードが割り当てられた選択されたグループにAEDを追加する/そのようなグループからAEDを除去するオプションを有する。さらに、ユーザ102の最も近くにある選択されたデバイスが、ユーザ102が、ユーザの最も近くにある単一のデバイスだけがクエリーを遂行することを所望することを示すべく、ユーザ102によって「nearby device」が発話されたか、またはユーザが、2つ以上の近くにあるデバイスがクエリーを遂行することを所望することを示すべく、「nearby devices」が発話されたかを判定するように音声認識およびクエリー解釈を実行してよい。
【0071】
さらに、図5の例示的なホットワードレジストリ500は、それぞれの同一のデバイスタイプに関連付けられた、音声対応環境400におけるそれぞれの選択されたグループのAED104にそれぞれが割り当てられた2つの異なる暗黙のデバイスタイプグループホットワードも示す。例えば、第1のデバイスタイプグループホットワードは、ユーザが、単一のクエリーにおいてスマートスピーカのデバイスタイプを含む、ユーザ102に関連付けられたすべてのAED104a~hを宛先とすることを可能にすべく、音声対応環境400におけるすべてのスマートスピーカSP1~SP7に割り当てられた「Smart Speakers」を含む。ここで、「Smart Speakers」というデバイスタイプグループホットワードは、「Family Room」と名付けられた区域に配置された4つのスマートスピーカSP1~SP4、「Kitchen」と名付けられた区域に配置されたスマートスピーカSP5、および「Bedroom」と名付けられた区域に配置されたスマートスピーカSP6、SP7を宛先とする。留意すべきこととして、「Family Room Devices」という手動で有効化されたグループホットワードも、スマートスピーカSP1~SP4に割り当てられ、「Kitchen Devices」という手動で有効化されたグループホットワードも、スマートスピーカSP5に割り当てられ、「Bedroom Speakers」という手動で有効化されたグループホットワードも、スマートスピーカSP5、SP7に割り当てられる。
【0072】
さらに、第2のデバイスタイプグループホットワードは、「Kitchen」と名付けられた区域に配置されたスマートディスプレイ104h、および「Family Room」と名付けられた区域に配置されたスマートTV104iを含むそれぞれの選択されたグループのAEDに割り当てられた「Smart Displays」を含む。留意すべきこととして、「Family Room Devices」という手動で有効化されたグループホットワードも、スマートTV104iに割り当てられ、「Kitchen Devices」という手動で有効化されたグループホットワードも、スマートディスプレイ104hに割り当てられる。
【0073】
図4の音声対応環境400、および図5の例示的なホットワードレジストリ500を引き続き参照すると、2つの異なる暗黙の属性ベースのホットワードがそれぞれ、共通の属性を共有する、音声対応環境400におけるそれぞれの選択されたグループのAED104に割り当てられる。例えば、第1の属性ベースのグループホットワードが、ユーザが、単一のクエリーにおいて青色を有する(または、それ以外で「Blue」とラベルが付けられた)属性を共有するすべてのスマートスピーカ104a~bを宛先とすることを可能にすべく、環境400の「Family Room」と名付けられた区域に配置された第1のスマートスピーカSP1および第2のスマートスピーカSP2に割り当てられた「Blue Speakers」を含む。同様に、第2の属性ベースのグループホットワードが、単一のクエリーにおいて赤色を有する(または、それ以外で「Red」とラベルが付けられた)属性を共有するすべてのスマートスピーカ104c~dに割り当てられた「Red Speakers」を含む。留意すべきこととして、「Blue Speakers」というグループホットワードが割り当てられた第1のスマートスピーカSP1および第2のスマートスピーカSP2、ならびに「Red Speakers」というグループホットワードが割り当てられた第3のスマートスピーカSP3および第4のスマートスピーカSP4は、「Smart Speakers」というデバイスタイプグループホットワードが割り当てられた選択されたグループの7つ(七)のスマートスピーカ104a~g、ならびにスマートスピーカSP1~4およびスマートTV104iを含む、「Family Room Devices」という手動で有効化されたグループホットワードが割り当てられた選択されたグループの5つ(五)のAED104a~d、104iの中にも入っている。このため、属性ベースのグループホットワードが、ユーザが宛先とすることを所望する特定のグループのAEDをさらに絞り込むことが可能である。
【0074】
図4を参照すると、一部の実施例において、音声対応環境400の居間と名付けられた区域に位置するユーザ102が、デジタルアシスタント105が、第1のスマートスピーカSP1 104aおよびスマートTV104iの上で再生するために音楽ビデオをストリーミングする長期存続するアクションを実行するためのコマンド418に対応する「Speaker 1 & Smart TV, Play music videos」(スピーカ1とスマートTV、音楽ビデオを再生してください)という発話406を話す。デジタルアシスタント105は、音声対応環境400におけるAED104のすべてにわたって実行してよい。「Speaker 1」および「Smart TV」という用語が、コマンド418の先頭に付加されて、第1のスマートスピーカSP1 104aに割り当てられたそれぞれのデバイス特有のホットワード50a、および「Smart TV」に割り当てられたそれぞれのデバイス特有のホットワード50bに対応する。ここで、第1のスマートスピーカSP1 104aは、SP1 104aが低電力状態から起動して、オーディオデータに対する処理を開始するようにトリガするように発話14に対応するオーディオデータにおいて「Speaker 1」というホットワード50aを検出すべく訓練されたホットワード検出モデルを実行する。同時に、スマートTV104iが、スマートTV104iが低電力状態から起動して、オーディオデータに対する処理を開始するようにトリガするように発話14に対応するオーディオデータにおいて「Smart TV」というホットワード50bを検出すべく訓練されたホットワード検出モデルを実行する。ASR結果を生成すべく音声認識を実行すること、および第1のスマートスピーカSP1 104aおよびスマートTV104iの上で長期存続するアクションを実行するコマンド418を識別すべくASR結果に対してクエリー解釈を実行することによってオーディオデータを処理した後、SP1とスマートTVが、長期存続するアクションを遂行すべく互いに協働する。例えば、スマートTV104iが、音楽ビデオのビデオ部分を表示すべくビデオデータをストリーミングしてよい一方で、SP1が、音楽ビデオのオーディオ部分を可聴で出力すべくオーディオデータをストリーミングしてよい。
【0075】
実施例を続けると、デジタルアシスタント105は、長期存続するアクションが進行中である間、アクション特有のグループホットワードを作成すること、および長期存続するアクションを実行している第1のスマートスピーカSP1 104aおよびスマートTV104iを含む選択されたグループのAEDにアクション特有のグループホットワードを割り当てることを自動的に行うようにも構成される。ユーザ102は、第1のスマートスピーカSP1 104aおよびスマートTV104iの上で音楽ビデオを再生する長期存続するアクションに関係のあるフォローアップクエリーにおいてアクション特有のグループホットワードを使用してよい。したがって、第1のスマートスピーカSP1 104aおよびスマートTV104iに対応するAEDがそれぞれ、デジタルアシスタント105によって自動的に作成された「Music Videos」というアクション特有のグループホットワードを割り当てる割当て命令を受け取る。その後、ユーザ102は、「Music Videos」という句の後に続けて、長期存続するアクションを制御するクエリー/コマンドを単に話すことによって、第1のスマートスピーカSP1 104aおよびスマートTV104iの上で実行される長期存続するアクションを宛先としてよい。例えば、ユーザ102は、次の音楽ビデオに進むべく、または音量を増加させるよう第1のスマートスピーカSP1に命令すべく「Music Videos, next song」または「Music Videos, turn up the volume」と発話してよい。アクション特有のグループホットワードを作成すること、ならびに第1のスマートスピーカSP1 104aおよびスマートTV104iに割当て命令を与えることに応答して、デジタルアシスタント105は、「Music Videos」というアクション特有のグループホットワードが、第1のスマートスピーカSP1 104aおよびスマートTV104iを含む選択されたグループのAEDに割り当てられることを示すように図5のホットワードレジストリ500を更新してよい。
【0076】
一部の実施例において、第1のスマートスピーカSP1 104aは、可聴の再生のために、長期存続するアクションの実行が進行中であること、および長期存続するアクションに関係のあるフォローアップクエリーにおいて使用するために自動的に作成されたアクション特有のグループホットワードを示すデジタルアシスタント105からの応答に対応する合成された音声を出力する。例えば、図4が、SP1 104aが、「Ok, playing music videos now...In the future, you can control playback using the 'Music Videos' hotword」(はい、今、音楽ビデオを再生しています。これからは「音楽ビデオ」ホットワードを使用して再生を制御できます)を含むデジタルアシスタント105からの応答450に対応する合成された音声を出力することを示す。デジタルアシスタント105は、長期存続するアクションが終了したとき、長期存続するアクションに関係のあるアクション特有のグループホットワードの使用を取り消すように構成される。このため、長期存続するアクションが終了したとき、デジタルアシスタント105は、アクション特有のホットワードを除去するようにホットワードレジストリ500を更新してよく、そのアクション特有のグループホットワードにもはや応答しないように選択されたグループのAEDに通知してよい。ユーザ102は、音声入力を与えることによって、または図2Aおよび図2BのGUIを介して任意の時点でアクション特有のグループホットワードの使用を拒否してよい。
【0077】
図6は、グループホットワードを有効化して、選択されたグループのアシスタント対応デバイス(AED)104に割り当てる方法600に関する動作の例示的な構成のフローチャートである。動作602において、方法600は、第1のAED104aのデータ処理ハードウェア10において、ユーザに関連付けられた選択されたグループのAED104にグループホットワード50gを割り当てる割当て命令を受け取ることを含む。選択されたグループのAED104は、第1のAED104aと、1つまたは複数の他のAED104b~nとを含む。選択されたグループのAEDの中の各AEDは、選択されたグループのAEDの中のAEDのうちの少なくとも1つによってストリーミングオーディオにおいてグループホットワード50gが検出されたとき、低電力状態から起動するように構成される。
【0078】
動作604において、方法600は、データ処理ハードウェア10において、ユーザ102によって話された発話126に対応するオーディオデータ20を受け取ることを含む。オーディオデータ20は、実行すべき動作を指定するクエリー128を含む。動作606において、方法600は、データ処理ハードウェア10による、ホットワード検出モデル114を使用して、オーディオデータ20においてグループホットワード50gを検出することを含む。
【0079】
動作608において、オーディオデータ20においてグループホットワード50gを検出することに応答して、方法600は、データ処理ハードウェア10による、低電力状態から起動するように第1のAED104aをトリガすること、およびデータ処理ハードウェア10による、選択されたグループのAEDにおける第1のAED104aと他の各AED104に、クエリー128によって指定された動作の実行を遂行すべく互いに協働させる協働ルーチン150を実行することを含む。
【0080】
ソフトウェアアプリケーション(すなわち、ソフトウェアリソース)とは、コンピューティングデバイスにタスクを実行させるコンピュータソフトウェアを指すことが可能である。一部の実施例において、ソフトウェアアプリケーションは、「アプリケーション」、「アプリ」、または「プログラム」と呼ばれることが可能である。例示的なアプリケーションは、システム診断アプリケーション、システム管理アプリケーション、システムメンテナンスアプリケーション、ワードプロセシングアプリケーション、スプレッドシートアプリケーション、メッセージングアプリケーション、メディアストリーミングアプリケーション、ソーシャルネットワーキングアプリケーション、およびゲーミングアプリケーションを含むが、これらには限定されない。
【0081】
非一時的メモリは、プログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を、コンピューティングデバイスによって使用されるように一時的に、または永久に記憶するのに使用される物理デバイスであってよい。非一時的メモリは、揮発性および/または不揮発性のアドレス指定可能な半導体メモリであってよい。不揮発性メモリの例は、フラッシュメモリおよび読取り専用メモリ(ROM)/プログラマブル読取り専用メモリ(PROM)/消去可能なプログラマブル読取り専用メモリ(EPROM)/電気的に消去可能なプログラマブル読取り専用メモリ(EEPROM)(例えば、通常、ブートプログラムなどのファームウェアのために使用される)を含むが、これらには限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、ならびにディスクまたはテープを含むが、これらには限定されない。
【0082】
図7は、本文書において説明されるシステムおよび方法を実装するのに使用されてよい例示的なコンピューティングデバイス700の概略図である。コンピューティングデバイス700は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなどの、様々な形態のデジタルコンピュータを代表することを意図している。ここで図示される構成要素、構成要素の接続および関係、構成要素の機能は、単に例示的であることが意図され、本文書において説明される発明および/または請求される発明の実装形態を限定することは意図していない。
【0083】
コンピューティングデバイス700は、プロセッサ710と、メモリ720と、ストレージデバイス730と、メモリ720および高速拡張ポート750に接続される高速インターフェース/コントローラ740と、低速バス770およびストレージデバイス730に接続される低速インターフェース/コントローラ760とを含む。構成要素710、720、730、740、750、および760のそれぞれは、様々なバスを使用して互いに接続され、共通のマザーボード上に、または適宜、他の様態で実装されてよい。プロセッサ710は、高速インターフェース740に結合されたディスプレイ780などの、外部入出力デバイス上でグラフィカルユーザインターフェース(GUI)のためのグラフィカル情報を表示すべくメモリ720に、またはストレージデバイス730上に記憶された命令を含む、コンピューティングデバイス700内で実行するための命令を処理することができる。他の実装形態において、多数のプロセッサおよび/または多数のバスが、適宜、多数のメモリ、および多数のタイプのメモリと一緒に使用されてよい。また、多数のコンピューティングデバイス700が、各デバイスが必要な動作の部分を提供して(例えば、サーババンクとして、グループのブレードサーバとして、またはマルチプロセッサシステムとして)、接続されてよい。
【0084】
メモリ720は、情報を、コンピューティングデバイス700内に非一時的に記憶する。メモリ720は、コンピュータ可読媒体、(複数の)揮発性メモリユニット、または(複数の)不揮発性メモリであってよい。非一時的メモリ720は、プログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を、コンピューティングデバイス700によって使用されるように一時的に、または永久に記憶するのに使用される物理デバイスであってよい。不揮発性メモリの例は、フラッシュメモリおよび読取り専用メモリ(ROM)/プログラマブル読取り専用メモリ(PROM)/消去可能なプログラマブル読取り専用メモリ(EPROM)/電気的に消去可能なプログラマブル読取り専用メモリ(EEPROM)(例えば、通常、ブートプログラムなどのファームウェアのために使用される)を含むが、これらには限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、ならびにディスクまたはテープを含むが、これらには限定されない。
【0085】
ストレージデバイス730は、コンピューティングデバイス700のための大容量ストレージを提供することができる。一部の実装形態において、ストレージデバイス730は、コンピュータ可読媒体である。様々な異なる実装形態において、ストレージデバイス730は、フロッピーディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくは他の類似したソリッドステートメモリデバイス、あるいはストレージエリアネットワークもしくは他の構成におけるデバイスを含む、デバイスのアレイであってよい。さらなる実装形態において、コンピュータプログラム製品は、情報担体において有形で実体化される。コンピュータプログラム製品は、実行されると、前述した方法などの1つまたは複数の方法を実行する命令を含む。情報担体は、メモリ720、ストレージデバイス730、またはプロセッサ710上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
【0086】
高速コントローラ740が、コンピューティングデバイス700のために帯域幅を多く要する動作を管理する一方で、低速コントローラ760は、帯域幅をそれほど多く要さない動作を管理する。デューティのそのような割振りは、単に例示的である。一部の実装形態において、高速コントローラ740は、メモリ720、ディスプレイ780(例えば、グラフィックスプロセッサもしくはアクセラレータを介して)、ならびに様々な拡張カード(図示せず)を受け付けてよい高速拡張ポート750に結合される。一部の実装形態において、低速コントローラ760は、ストレージデバイス730および低速拡張ポート790に結合される。様々な通信ポート(例えば、USB、Bluetooth、イーサネット、無線イーサネット)を含んでよい低速拡張ポート790は、キーボード、ポインティングデバイス、スキャナなどの1つまたは複数の入出力デバイスに、あるいは、例えば、ネットワークアダプタを介して、スイッチもしくはルータなどのネットワーキングデバイスに結合されてよい。
【0087】
コンピューティングデバイス700は、図に示されるとおり、いくつかの異なる形態で実装されてよい。例えば、コンピューティングデバイス700は、標準のサーバ700a、もしくはグループのそのようなサーバ700aの多数の重複として、ラップトップコンピュータ700b、またはラックサーバシステム700cの一部として実装されてよい。
【0088】
本明細書において説明されるシステムおよび技術の様々な実装形態は、デジタル電子回路および/またはデジタル光回路、集積回路、専用設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはその組合せにおいて実現されることが可能である。これらの様々な実装形態は、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受け取ること、およびストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスにデータおよび命令を送ることを行うように結合された、専用であっても、汎用であってもよい、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能、および/または解釈可能である1つまたは複数のコンピュータプログラムにおける実装を含むことが可能である。
【0089】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)は、プログラマブルプロセッサのための機械命令を含み、高レベルの手続き型プログラミング言語および/またはオブジェクト指向プログラミング言語、および/またはアセンブリ/機械言語において実装されることが可能である。本明細書において使用される「機械可読媒体」および「コンピュータ可読媒体」という術語は、機械命令を機械可読信号として受け取る機械可読媒体を含む、機械命令および/またはデータをプログラマブルプロセッサに提供するのに使用される、任意のコンピュータプログラム製品、非一時的コンピュータ可読媒体、コンピュータ可読装置および/またはコンピュータ可読デバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。「機械可読信号」という術語は、機械命令および/またはデータをプログラマブルプロセッサに提供するのに使用される任意の信号を指す。
【0090】
本明細書において説明されるプロセスおよび論理フローは、入力データを操作すること、および出力を生成することによって機能を実行すべく1つまたは複数のコンピュータプログラムを実行する、データ処理ハードウェアとも呼ばれる1つまたは複数のプログラマブルプロセッサによって実行されることが可能である。また、処理および論理フローは、専用ロジック回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行されることが可能である。コンピュータプログラムの実行に適したプロセッサは、例として、汎用のマイクロプロセッサと専用のマイクロプロセッサの両方、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、読取り専用メモリから、またはランダムアクセスメモリから、あるいはその両方から命令およびデータを受け取る。コンピュータの基本要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1つまたは複数のメモリデバイスである。また、一般に、コンピュータは、データを記憶するための1つまたは複数の大容量ストレージデバイス、例えば、磁気ディスク、光磁気ディスク、または光ディスクも含む、あるいはそのような大容量ストレージデバイスからデータを受け取るように、またはそのような大容量ストレージデバイスにデータを送るように、あるいはその両方を行うように動作上、結合されもする。しかし、コンピュータは、そのようなデバイスを有さなくてもよい。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、半導体メモリデバイス、例えば、EPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、例えば、内部ハードディスクもしくは着脱可能なディスク、光磁気ディスク、ならびにCD ROMディスクおよびDVD-ROMディスクを例として含む、すべての形態の不揮発性メモリ、不揮発性媒体、および不揮発性メモリデバイスを含む。プロセッサおよびメモリは、専用ロジック回路によって補足されること、または専用ロジック回路に組み込まれることが可能である。
【0091】
ユーザとの対話を可能にすべく、本開示の1つまたは複数の態様は、ユーザに情報を表示するためのディスプレイデバイス、例えば、CRT(陰極線管)、LCD(液晶ディスプレイ)モニタ、またはタッチスクリーン、ならびに、オプションとして、ユーザがコンピュータに入力を与えることができるキーボードおよびポインティングデバイス、例えば、マウスまたはトラックボールを有するコンピュータ上で実装されることが可能である。他の種類のデバイスもまた、ユーザとの対話を可能にすべく使用されることが可能であり、例えば、ユーザに提供されるフィードバックは、任意の形態の知覚フィードバック、例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであることが可能であり、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む、任意の形態で受け取られることが可能である。さらに、コンピュータは、ユーザによって使用されるデバイスに文書を送ること、およびそのようなデバイスから文書を受け取ることによって、例えば、ユーザのクライアントデバイス上のウェブブラウザに、ウェブブラウザから受け取られた要求に応答して、ウェブページを送ることによって、ユーザと対話することができる。
【0092】
いくつかの実装形態について説明されてきた。それでも、様々な変形形態が、本開示の趣旨および範囲を逸脱することなく、作成されてよいことが理解されよう。したがって、他の実装形態が、添付の特許請求の範囲に含まれる。
【符号の説明】
【0093】
10 データ処理ハードウェア
12 メモリハードウェア
14、106、126、136、146、406 発話
16 マイクロフォン
18 オーディオ出力デバイス
20 オーディオデータ
50、50a、50b、50c、50d、50e、50f、50g ホットワード
100 システム
102 ユーザ
104、104b、104c、104d、104e、104f、104g、104h、104i、104j アシスタント対応デバイス
105 デジタルアシスタント
108 ホットワード検出器
114 ホットワードモデル
116 音声認識器
118 クエリー
120 サーバ
122 曲
132 ネットワーク
150 協働ルーチン
200、200a、200b グループホットワード選択画面
205 ソフトウェアアプリケーション
208 グラフィカルユーザインターフェース
210、210a、210b、210c、210d オブジェクト
300 リーダー選択プロセス
302 デバイス特性
304 デバイス状態変化
306 更新
310 選択命令
400 音声対応環境
418 コマンド
450 音声
500 ホットワードレジストリ
700、700a、700b、700c コンピューティングデバイス
710 プロセッサ
720 メモリ
730 ストレージデバイス
740、760 インターフェース/コントローラ
750、790 拡張ポート
770 バス
780 ディスプレイ
図1A
図1B
図1C
図2A
図2B
図3
図4
図5
図6
図7
【国際調査報告】