(57)【要約】  １つ以上のマイクとスピーカとを備える電子デバイスにおける方法は、自由形式の第１の音声入力を受信するステップと、第１の音声入力を、電子デバイスに対応付けられた複数のユーザに対応付けられた音声モデルのセットと比較するステップとを含み、音声モデルは電子デバイスに合わせて訓練され、さらに、上記比較に基づいて、第１の音声入力が複数のユーザのうちの第１のユーザに対応すると判断するステップと、この判断に従ってレスポンスを与えるステップとを含む。
2019535035.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のマイクと、スピーカと、１つ以上のプロセッサと、前記１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備える電子デバイスにおいて、
自由形式の第１の音声入力を受信するステップと、
前記第１の音声入力を、前記電子デバイスに対応付けられた複数のユーザに対応付けられた音声モデルのセットと比較するステップとを含み、前記音声モデルは前記電子デバイスに合わせて訓練され、
前記比較に基づいて、前記第１の音声入力は前記複数のユーザのうちの第１のユーザに対応すると判断するステップと、
前記判断に従ってレスポンスを与えるステップとを含む、方法。
【請求項２】
前記レスポンスは可聴音声出力であり、前記レスポンスを与えるステップは、前記可聴音声出力を出力するステップを含む、請求項１に記載の方法。
【請求項３】
前記第１の音声入力に基づいてユーザ要求を判断するステップと、
前記判断したユーザ要求に従って前記レスポンスを生成するステップとをさらに含む、請求項１または２に記載の方法。
【請求項４】
前記判断したユーザ要求は、前記電子デバイスを起動することを求める要求を含み、
前記レスポンスは可聴挨拶を含み、前記挨拶は、前記判断における前記第１のユーザのアイデンティティの表示を含む、請求項３に記載の方法。
【請求項５】
前記判断したユーザ要求は、情報を求める要求を含み、
前記判断した要求に従って前記レスポンスを生成するステップは、前記第１のユーザについて要求された前記情報を取得するステップを含む、請求項３に記載の方法。
【請求項６】
前記判断における前記第１のユーザについて要求された前記情報を取得するステップは、前記第１のユーザに対応付けられたアカウントにアクセスするステップを含む、請求項５に記載の方法。
【請求項７】
第２の音声入力を受信するステップと、
前記第２の音声入力を前記音声モデルのセットと比較するステップと、
前記比較に基づいて、前記第２の音声入力は前記複数のユーザのうちの第２のユーザに対応すると判断するステップと、
前記第２の音声入力は前記第２のユーザに対応するという判断に従ってレスポンスを与えるステップとをさらに含む、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
第３の音声入力を受信するステップと、
前記第３の音声入力を前記音声モデルのセットと比較するステップと、
前記比較に基づいて、前記第３の音声入力は前記複数のユーザのうちのいずれのユーザにも対応しないと判断するステップと、
前記第３の音声入力は前記複数のユーザのうちのいずれのユーザにも対応しないという判断に従い、前記電子デバイスの機能を制限するステップとさらに含む、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
前記電子デバイスはディスプレイを含み、
前記方法は、前記判断における前記第１のユーザのアイデンティティの表示を前記ディスプレイに示すステップをさらに含む、請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
前記電子デバイスはディスプレイを含み、
前記方法は、前記判断における前記第１のユーザに対応付けられた視覚ユーザインターフェイスを前記ディスプレイに示すステップをさらに含む、請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
１つ以上のマイクと、
スピーカと、
１つ以上のプロセッサと、
請求項１〜１０に記載の方法のうちのいずれかを実施するために前記１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備える、電子デバイス。
【請求項１２】
１つ以上のプログラムを格納する非一時的なコンピュータ読取可能記憶媒体であって、前記１つ以上のプログラムは、１つ以上のマイクとスピーカと１つ以上のプロセッサとを備える電子デバイスによって実行されると前記電子デバイスに請求項１〜１０に記載の方法のうちのいずれかを実行させる命令を含む、非一時的なコンピュータ読取可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
開示する実装例は、概して音声インターフェイスおよび関連するデバイスに関し、音声インターフェイスデバイスにおいて複数のユーザを扱うための方法およびシステムを含むが、これらに限定される訳ではない。
【背景技術】
【０００２】
背景
マイクが組み込まれた電子デバイスは、ユーザからの音声入力を収集しこの音声入力に従って音声起動機能を実現するために、広範囲にわたって使用されてきた。たとえば、多くの最新モバイルデバイスは音声アシスタント機能（たとえばＳｉｒｉ（登録商標）、Ｇｏｏｇｌｅアシスタント（登録商標））を含む。音声アシスタント機能は、音声入力を用いて、通話を開始する、レストラン検索を実行する、地図上でルーティングを開始する、カレンダーイベントを作成する、ソーシャルネットワークにポストを追加する、歌を認識する、およびその他多くのタスクを完了するように、構成されている。
【発明の概要】
【０００３】
ある場所（たとえば部屋または家屋内の空間）が、音声アシスタントシステムを含む複数のデバイスと、そのようなデバイスの１人以上のユーザとを含む場合がある。これらのデバイスは、今まで以上にユーザ固有の情報にアクセスしこの情報を提示する能力を備えるように構成されているので、音声アシスタントデバイスが複数のユーザを優雅に扱えることおよびユーザ固有の情報を適切なユーザに提供できることが望ましい。そのような場所では、ユーザの混乱を少なくするために、ユーザの音声入力に対して応答する責任を負うリーダーが音声アシスタントデバイスの中に存在することも望ましい。さらに、音声アシスタントデバイスは、騒々しい場所に置かれた場合に備えて、雑音緩和手段を含むことが望ましい。
【０００４】
概要
このように、複数のユーザを扱うため、複数のデバイスを調整してリーダーを決定するため、および雑音緩和のための方法およびシステムを取り入れた音声アシスタントシステムおよび／または音声アシスタントサーバシステムを備える電子デバイスに対する需要がある。上記デバイスおよび／またはサーバシステムは、音声モデルとの比較に基づいて音声入力の話し手を識別し、識別した話し手に合わせてレスポンスをパーソナライズするように構成することができる。また、このデバイスおよび／またはサーバシステムは、話し手に対して返答するためのリーダーシップを複数のデバイスの中で協議により決定するように構成することができる。さらに、このデバイスおよび／またはサーバシステムは、デバイスの周囲の環境の雑音が十分に大きいことを検出しホットワード音声入力に代わるデバイスの起動方法を推奨するように構成することができる。
【０００５】
いくつかの実装例に従うと、方法は、１つ以上のマイクと、スピーカと、１つ以上のプロセッサと、当該１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備える電子デバイスにおいて、自由形式の第１の音声入力を受信するステップと、第１の音声入力を、電子デバイスに対応付けられた複数のユーザに対応付けられた音声モデルのセットと比較するステップとを含み、音声モデルは電子デバイスに合わせて訓練され、上記比較に基づいて、第１の音声入力は複数のユーザのうちの第１のユーザに対応すると判断するステップと、この判断に従ってレスポンスを与えるステップとを含む。
【０００６】
いくつかの実装例において、電子デバイスは、１つ以上のマイクと、スピーカと、１つ以上のプロセッサと、当該１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備える。１つ以上のプログラムは命令を含み、これらの命令は、自由形式の第１の音声入力を受信し、第１の音声入力を、電子デバイスに対応付けられた複数のユーザに対応付けられた音声モデルのセットと比較し、音声モデルは電子デバイスに合わせて訓練され、上記比較に基づいて、第１の音声入力は複数のユーザのうちの第１のユーザに対応すると判断し、この判断に従ってレスポンスを与えるための、命令である。
【０００７】
いくつかの実装例において、非一時的なコンピュータ読取可能記憶媒体は、１つ以上のプログラムを格納する。この１つ以上のプログラムは、１つ以上のマイクとスピーカと１つ以上のプロセッサとを備える電子デバイスによって実行されると、この電子デバイスに動作を実行させる。これらの動作は、自由形式の第１の音声入力を受信することと、第１の音声入力を、電子デバイスに対応付けられた複数のユーザに対応付けられた音声モデルのセットと比較することとを含み、音声モデルは電子デバイスに合わせて訓練され、上記比較に基づいて、第１の音声入力は複数のユーザのうちの第１のユーザに対応すると判断することと、この判断に従ってレスポンスを与えることとを含む。
【０００８】
いくつかの実装例に従うと、方法は、各々が１つ以上のマイクと、スピーカと、１つ以上のプロセッサと、当該１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備える、複数の電子デバイスのうちの第１の電子デバイスにおいて、音声入力を検出するステップと、検出した音声入力の品質スコアを求めるステップと、品質スコアを複数の電子デバイスのうちの他のデバイスに伝えるステップと、複数の電子デバイスのうちの他のデバイスによる音声入力の検出に関する、これらの他のデバイスが生成した品質スコアを受信するステップと、第１の電子デバイスが生成した品質スコアは、上記音声入力に関して生成した品質スコアおよび受信した品質スコアのうちで最高であるという判断に従って、検出した音声入力に対する可聴および／または視覚レスポンスを出力するステップとを含み、上記複数の電子デバイスのうちの他のデバイスは、検出した音声入力に対する可聴レスポンスの出力を差し控え、第１の電子デバイスが生成した品質スコアは複数の電子デバイスが生成した音声入力に関する品質スコアのうちで最高ではないという判断に従って、検出した音声入力に対するレスポンスの出力を差し控えるステップを含む。
【０００９】
いくつかの実装例に従うと、複数の電子デバイスのうちの第１の電子デバイス、および、複数の電子デバイス各々は、１つ以上のマイクと、スピーカと、１つ以上のプロセッサと、当該１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備える。１つ以上のプログラムは命令を含み、これらの命令は、音声入力を検出し、検出した音声入力の品質スコアを求め、品質スコアを複数の電子デバイスのうちの他のデバイスに伝え、複数の電子デバイスのうちの他のデバイスによる音声入力の検出に関する、これらの他のデバイスが生成した品質スコアを受信し、第１の電子デバイスが生成した品質スコアは、上記音声入力に関して生成した品質スコアおよび受信した品質スコアのうちで最高であるという判断に従って、検出した音声入力に対する可聴および／または視覚レスポンスを出力し、複数の電子デバイスのうちの他のデバイスは、検出した音声入力に対する可聴レスポンスの出力を差し控え、第１の電子デバイスが生成した品質スコアは複数の電子デバイスが生成した音声入力に関する品質スコアのうちで最高ではないという判断に従って、検出した音声入力に対するレスポンスの出力を差し控えるための、命令である。
【００１０】
いくつかの実装例に従うと、非一時的なコンピュータ読取可能記憶媒体は１つ以上のプログラムを格納する。１つ以上のプログラムは命令を含み、この命令は、各々が１つ以上のマイクとスピーカと１つ以上のプロセッサとを備える複数の電子デバイスのうちの第１の電子デバイスによって実行されると、第１の電子デバイスに、音声入力を検出することと、検出した音声入力の品質スコアを求めることと、品質スコアを複数の電子デバイスのうちの他のデバイスに伝えることと、複数の電子デバイスのうちの他のデバイスによる音声入力の検出に関する、これらの他のデバイスが生成した品質スコアを受信することと、第１の電子デバイスが生成した品質スコアは、上記音声入力に関して生成した品質スコアおよび受信した品質スコアのうちで最高であるという判断に従って、検出した音声入力に対する可聴および／または視覚レスポンスを出力することとを含み、複数の電子デバイスのうちの他のデバイスは、検出した音声入力に対する可聴レスポンスの出力を差し控え、第１の電子デバイスが生成した品質スコアは複数の電子デバイスが生成した音声入力に関する品質スコアのうちで最高ではないという判断に従って、検出した音声入力に対するレスポンスの出力を差し控えることを含む、動作を、実行させる。
【００１１】
いくつかの実装例に従うと、方法は、１つ以上のマイクとスピーカと１つ以上のプロセッサと当該１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備える電子デバイスであって、音声ベースのアフォーダンスを含む複数のアフォーダンスのうちのいずれかによって起動されるように構成された電子デバイスにおいて、電子デバイスの周囲の環境の雑音プロファイルを求めるステップと、雑音プロファイルが音声ベースのアフォーダンスを妨害するか否かを判断するステップと、雑音プロファイルが音声ベースのアフォーダンスを妨害するという判断に従って、電子デバイスを起動するために音声ベースのアフォーダンス以外の複数のアフォーダンスのうちのアフォーダンスを使用するようユーザに示唆するステップとを含む。
【００１２】
いくつかの実装例に従うと、電子デバイスは、１つ以上のマイクと、スピーカと、１つ以上のプロセッサと、当該１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備える。電子デバイスは、音声ベースのアフォーダンスを含む複数のアフォーダンスのうちのいずれかによって起動されるように構成される。１つ以上のプログラムは命令を含み、これらの命令は、電子デバイスの周囲の環境の雑音プロファイルを求め、雑音プロファイルが音声ベースのアフォーダンスを妨害するか否かを判断し、雑音プロファイルが音声ベースのアフォーダンスを妨害するという判断に従って、電子デバイスを起動するために音声ベースのアフォーダンス以外の複数のアフォーダンスのうちのアフォーダンスを使用するようユーザに示唆するための、命令である。
【００１３】
非一時的なコンピュータ読取可能記憶媒体は１つ以上のプログラムを格納する。１つ以上のプログラムは命令を含み、この命令は、１つ以上のマイクとスピーカと１つ以上のプロセッサとを備える電子デバイスであって音声ベースのアフォーダンスを含む複数のアフォーダンスのうちのいずれかによって起動されるように構成された電子デバイスによって実行されると、この電子デバイスに、電子デバイスの周囲の環境の雑音プロファイルを求めることと、雑音プロファイルが音声ベースのアフォーダンスを妨害するか否かを判断することと、雑音プロファイルが音声ベースのアフォーダンスを妨害するという判断に従って、電子デバイスを起動するために音声ベースのアフォーダンス以外の複数のアフォーダンスのうちのアフォーダンスを使用するようユーザに示唆することとを含む、動作を実行させる。
【００１４】
記載される各種実装例のより良い理解のためには以下の図面とともに以下の実装例の説明を参照しなければならない。これらの図面を通して同様の参照番号は対応する部分を指している。
【図面の簡単な説明】
【００１５】
【図１】いくつかの実装例に従う動作環境の一例を示す図である。
【図２Ａ】いくつかの実装例に従う動作環境においてユーザの音声コマンドを収集するための音声インターフェイスとして適用される電子デバイスの一例を示すブロック図である。
【図２Ｂ】いくつかの実装例に従う動作環境においてユーザの音声コマンドを収集するための音声インターフェイスとして適用される電子デバイスの一例を示すブロック図である。
【図３】いくつかの実装例に従う動作環境のサーバシステムにおけるサーバの一例を示すブロック図である。サーバの一例は音声アシスタントサーバのうちの１つである。
【図４Ａ】いくつかの実装例に従うデバイスリーダーシップの協議の一例を示す図である。
【図４Ｂ】いくつかの実装例に従うデバイスリーダーシップの協議の一例を示す図である。
【図５】いくつかの実装例に従うユーザの音声入力に対して応答する方法を示すフロー図である。
【図６】いくつかの実装例に従う複数の音声インターフェイスデバイスの中でリーダーシップを協議により決定する方法を示すフロー図である。
【図７】いくつかの実装例に従う音声インターフェイスデバイスの周囲の雑音を緩和する方法を示すフロー図である。
【図８Ａ】いくつかの実装例に従う音声起動電子デバイスの正面図である。
【図８Ｂ】いくつかの実装例に従う音声起動電子デバイスの背面図である。
【図８Ｃ】いくつかの実装例に従う音声起動電子デバイスの平面図である。
【図８Ｄ】いくつかの実装例に従う音声処理状態を示すためのフルカラーＬＥＤのアレイによって表示される６つの視覚パターンを示す図である。
【発明を実施するための形態】
【００１６】
図面のうちのいくつかの図面において同様の参照番号は対応する部分を指す。
実装例の説明
デジタル革命は、情報の公開共有から、地球規模の共同体という感覚まで、数多くの利益を提供してきたが、出現した新たな技術はしばしば、消費者の間に混乱、懐疑、および不安を生じさせ、そのために、消費者がこの技術の利益を享受するのが妨げられることがある。電子デバイスは、ユーザからの音声入力を受信し音声起動機能を開始することにより、既存の技術および出現した技術双方にアプローチするための、アイズフリー・ハンズフリーソリューションを提供する、音声インターフェイスとして、便利に使用される。具体的には、電子デバイスで受信する音声入力は、たとえユーザの視線が不明瞭でありかつ手が塞がっていても、命令および情報を伝えることができる。ハンズフリー・アイズフリー体験を可能にするために、音声起動電子デバイスは、常に周囲の音を聴いている（すなわち、常に周囲から収集したオーディオ信号を処理している）、または、トリガされたときにのみ周囲の音を聴く。一方、ユーザのアイデンティティは、ユーザの声とユーザが使用する言語とに関連付けられる。ユーザのアイデンティティを守るために、これらの音声起動電子デバイスは通常、保護され管理された親密な空間（たとえば自宅および自動車）である非公共的な場所で使用される。
【００１７】
いくつかの実装例に従い、音声起動電子デバイスは、音声入力の話し手を、対応付けられたまたは登録された１人以上のユーザのうちの１人として識別する。話し手の出力に対する電子デバイスのレスポンスは、識別した話し手に合わせてパーソナライズされる。話し手は、話し手の音声入力を、訓練された音声モデルまたは音声フィンガープリントのセットと比較することによって識別される。いくつかの実装例において、音声モデルを訓練するために話し手が使用する単語およびフレーズは、必ずしも予め定められたものでなくてよく、電子デバイスによる話し手の識別のために話し手が後で話す単語と一致している必要はない。
【００１８】
さらに、いくつかの実装例に従い、複数の音声起動電子デバイスが、ユーザからの音声入力に対して応答するために、これらのデバイスの中でリーダーを協議により決定する。この協議は、どのデバイスが音声入力を最も上手く検出したか、または、どのデバイスがユーザに最も近いかに基づいていてもよい。加えて、音声入力がデバイスのうちの１つに特に関連がある場合は、そのデバイスを、たとえそれ以外の状況では応答用に選択されない場合であっても、選択して応答すればよい。音声入力に含まれるコマンドの、特定のデバイスに対する関連性（たとえば、「音楽停止」は音楽を再生するデバイスに対するものであるはず）、および、音声入力を受信するデバイスの状態（たとえば、「画面オン」対「画面オフ」）は、どのデバイスをリーダーにするかを判断する際に考慮される。
【００１９】
さらに、いくつかの実装例に従うと、音声起動デバイスは、周囲の雑音が、デバイスを起動するために発話されたホットワード（いくつかの実装例において、「ホットワード」は、音声起動デバイスを「起動（wake-up）」またはトリガし、ホットワードに続いて与えられる発話されたコマンドを聴くおよび／またはそれに応答するようにさせるために使用される、ユーザが定めたまたは予め定められた単語またはフレーズ）、または、発話されたその他の音声入力の検出を妨げるほどの雑音であるか否かを判断する。雑音がそれを妨げるほどの雑音である場合、デバイスはそのことを表示し、デバイスを起動する代替方法、またはその他の音声緩和手段を使用するようユーザに示唆する。
【００２０】
音声アシスタント動作環境
図１は、いくつかの実装例に従う動作環境の一例である。動作環境１００は、１つ以上の音声起動電子デバイス１９０（たとえば電子デバイス１９０−１〜１９０−Ｎ）を含む。この１つ以上の音声起動電子デバイス１９０は、１つ以上の場所に置かれていてもよい（たとえば、すべてが１つの部屋の中もしくは構造物（structure）の空間の中にあってもよく、１つの構造物の中の複数の空間に分散していてもよく、または、複数の構造物に分散していてもよい（たとえば１つは家屋内、１つはユーザの車の中））。任意に、環境１００は、音声起動電子デバイス１９０が通信できるようにするために用いられる１つ以上のデバイス（たとえばメディアデバイス、スマートホームデバイス）（図示せず）を含む。
【００２１】
電子デバイス１９０は、通信ネットワーク１１０を介して音声アシスタントサービスの音声アシスタントサーバ１１２に通信可能に結合される。電子デバイス１９０のうちの１つ以上（たとえば電子デバイス１９０−１および１９０−２）はローカルネットワーク１０４に通信可能に結合され、ローカルネットワーク１０４は通信ネットワーク１１０に通信可能に結合される。いくつかの実装例において、ローカルネットワーク１０４はネットワークインターフェイス（たとえばルータ）において実現されるローカルエリアネットワークである。ローカルネットワーク１０４に通信可能に結合された電子デバイス１９０は、ローカルネットワーク１０４を通して互いに通信することもできる。
【００２２】
任意に、電子デバイス１９０のうちの１つ以上（たとえば電子デバイス１９０−Ｎ）は、通信ネットワーク１１０に通信可能に結合されるが、ローカルネットワーク１０４上にはない。たとえば、これらの電子デバイス１９０は、ローカルネットワーク１０４に対応するＷｉ−Ｆｉ（登録商標）ネットワーク上にはないが、セルラー接続を通して通信ネットワーク１１０に接続される。いくつかの実装例において、ローカルネットワーク１０４上にある電子デバイス１９０とローカルネットワーク１０４上にない電子デバイス１９０との間の通信は、音声アシスタントサーバ１１２を介して行われる。電子デバイス１９０は、音声アシスタントサービスのデバイスレジストリ１１８に登録されるので、音声アシスタントサーバ１１２に知られている。
【００２３】
この環境１００はまた、１つ以上のコンテンツホスト１１４を含む。コンテンツホスト１１４は遠隔コンテンツソースであってもよく、この遠隔コンテンツソースからのコンテンツは、ストリーミングされるか、そうでなければユーザ音声要求に従って取得される。コンテンツホスト１１４は情報源であってもよく、音声アシスタントサーバ１１２は、ユーザ音声要求に従って情報をこの情報源から取り出す。
【００２４】
いくつかの実装例において、電子デバイス１９０は、ユーザドメイン内にそれぞれのアカウントを有する複数のユーザに対応付けられていてもよい。これらユーザのうちのいずれのユーザも、当該デバイスに対応付けられていないユーザも、電子デバイス１９０に対して音声入力を行うことができる。電子デバイス１９０がこれらのユーザ１０２−１〜１０２−Ｍ（対応付けられたユーザおよび対応付けられていないユーザを含む）からの音声入力を受けると、電子デバイス１９０および／または音声アシスタントサーバ１１２は、音声入力について、この音声入力を行ったユーザを特定する。ユーザが特定されると、この音声入力に対するレスポンスを、特定したユーザに合わせてパーソナライズすることができる。
【００２５】
いくつかの実装例において、環境１００は複数の電子デバイス１９０（たとえば電子デバイス１９０−１〜１９０−Ｎ）を含む。デバイス１９０は、環境１００の至るところに存在する（たとえばすべてが１つの部屋の中もしくは１つの構造物の内部空間の中、構造物全体に分散、一部は構造物の内部で一部はその外部）。ユーザ１０２が音声入力を行うと、デバイス１９０は各々、この音声を受信する、または受信しない（たとえば、デバイスがユーザから離れすぎている場合）。この入力を受けるデバイスは、受ける入力の品質の程度が異なっており、あるデバイスにおける音声入力のサンプルの品質は複数の要素に基づく。これらの複数の要素は、限定されないが、デバイスからユーザまでの距離およびデバイス周囲の雑音を含む。複数のデバイス１９０は、音声入力のサンプルの品質に基づいて、ユーザに対して応答しユーザ１０２からさらに音声入力を受けるリーダーを協議によって決定する。
【００２６】
いくつかの実装例において、電子デバイス１９０は、このデバイスの周囲の雑音のレベルを判定し、判定した雑音レベルが、音声入力に含まれるホットワードの認識を妨害しひいては音声によるこのデバイスの起動または音声要求の認識を妨害するほど大きいか否かを判断する。雑音レベルがこれを妨害するほど大きいと判断すると、電子デバイス１９０は、ユーザに対し、雑音レベルが妨害レベルであることを表示するとともに、電子デバイス１９０の起動方法として別の方法（たとえばボタンを起動）を使用すべきであることを示唆する。妨害雑音レベルの表示および別のデバイス起動方法の使用の示唆は、同じ表現（たとえば起動ボタンを点灯）によって行われてもよい。
【００２７】
いくつかの実装例において、１つ以上のメディアデバイスが、動作環境１００の中に配置されて、その１人以上の占有者（occupant）に、メディアコンテンツ、ニュースおよび／またはその他の情報を提供する。いくつかの実装例において、メディアデバイスが提供するコンテンツは、ローカルコンテンツソースに格納されている、遠隔コンテンツソース（たとえばコンテンツホスト１１４）からストリーミングされる、または、ローカルで生成される（たとえば、ローカルテキストから音声プロセッサに対して生成され、音声プロセッサは、カスタマイズされたニュース解説、電子メール、テキスト、局地天気予報等を、動作環境１００の１人以上の占有者に対して読み上げる）。いくつかの実装例において、メディアデバイスは、メディアコンテンツを受け手（たとえば１人以上のユーザ）に対して直接出力するメディア出力デバイスと、メディア出力デバイスに対してメディアコンテンツをストリーミングするようにネットワーク接続されたキャストデバイスとを含む。メディア出力デバイスの例は、テレビ（ＴＶ）表示装置および音楽再生機を含むが、これらに限定されない。キャストデバイスの例は、セットトップボックス（ＳＴＢ）、ＤＶＤ再生機、ＴＶボックス、および、Google社のChromecast（登録商標）メディアストリーミングデバイス等のメディアストリーミングデバイスを含むが、これらに限定されない。
【００２８】
いくつかの実装例において、メディアデバイスは、占有者の音声コマンドを受信し、処理し、それに対して応答する１つ以上の音声起動電子デバイスを含む。いくつかの実装例において、音声起動電子デバイス１９０は、音声コマンドに対する応答として、音声コマンドに対する発話レスポンスを生成し提供する（たとえば「何時ですか」という質問に対して現在時刻を発話する）、ユーザが要求したメディアコンテンツをストリーミングする（たとえば「ビーチボーイズの歌を再生」）、ユーザのために準備されたニュース記事またはデイリーニュース解説を読み上げる、個人情報端末もしくはローカルネットワーク上に格納されたメディアアイテムを再生する、状態を変更するもしくは動作環境１００内の接続された他の１つ以上のデバイスを動作させる（たとえばライト、機器またはメディアデバイスをオン／オフする、ロックを作動／解除する、窓を開ける等）、または、ネットワーク１１０を介して対応する要求をサーバに対して行う。
【００２９】
いくつかの実装例において、１つ以上の電子デバイス１９０は、動作環境１００に配置され、メディアデバイスのメディア再生機能を含む各種機能を開始するためのオーディオ入力を収集する。いくつかの実装例において、これらの音声起動電子デバイス１９０（たとえばデバイス１９０−１〜１９０−Ｎ）は、メディアデバイスの近傍に、たとえばキャストデバイスおよびメディア出力デバイスと同一の部屋に、配置される。これに代えて、いくつかの実装例において、音声起動電子デバイス１９０は、１つ以上のスマートホームデバイスを有するがメディアデバイスを有しない部屋に配置される。これに代えて、いくつかの実装例では、音声起動電子デバイス１９０は、ネットワーク接続された電子デバイスがない場所に配置される。さらに、いくつかの実装例において、部屋または構造物の中の空間が複数の電子デバイス１９０を備えていてもよい。
【００３０】
いくつかの実装例において、電子デバイス１９０は、１つ以上のマイクと、スピーカと、プロセッサと、プロセッサが実行する少なくとも１つのプログラムを格納するメモリとを、少なくとも含む。スピーカは、動作環境１００の中で電子デバイス１９０が位置する場所に、電子デバイス１９０が音声メッセージおよびその他の音声（たとえば可聴音）を配信することにより、電子デバイス１９０のユーザに対して音楽をブロードキャストする、オーディオ入力処理の状態を報告する、このユーザと対話する、またはこのユーザに命令を与えることができるように、構成される。音声メッセージに代わるものとして、視覚信号を用いてオーディオ入力処理の状態に関するフィードバックを電子デバイス１９０のユーザに与えることもできる。電子デバイス１９０がモバイルデバイス（たとえば携帯電話またはタブレットコンピュータ）である場合、その表示画面は、オーディオ入力処理の状態に関する通知を表示するように構成される。
【００３１】
いくつかの実装例において、電子デバイス１９０は音声インターフェイスデバイスである。この音声インターフェイスデバイスは、ネットワーク接続されて音声アシスタントサーバ１１２および／または任意にクラウドキャストサービスサーバ（図示せず）の助けを借りて音声認識機能を提供する。たとえば、電子デバイス１９０は、音楽をユーザに提供するとともに音声アシスタントサービス（たとえばＧｏｏｇｌｅアシスタント）へのアイズフリー・ハンズフリーアクセスを可能にするスマートスピーカを含む。任意に、電子デバイス１９０は、デスクトップまたはラップトップコンピュータ、タブレット、マイクを含む携帯電話、マイクおよび任意にスピーカを含むキャストデバイス、マイクおよびスピーカを含むオーディオシステム（たとえばステレオシステム、スピーカシステム、ポータブルスピーカ）、マイクおよびスピーカを含むテレビ、ならびに、マイクとスピーカと任意にディスプレイとを含む自動車内のユーザインターフェイスシステムのうちの、１つである。任意に、電子デバイス１９０は、簡素で低コストの音声インターフェイスデバイスである。一般的に、電子デバイス１９０は、ネットワーク接続でき、かつ、マイクとスピーカとプログラムとモジュールと音声アシスタントサービスとやり取りするためのデータとを含む何らかのデバイスであればよい。電子デバイス１９０が簡素で低コストであることを考慮すると、電子デバイス１９０は、全表示画面ではなく発光ダイオード（ＬＥＤ）のアレイを含み、ＬＥＤ上に視覚パターンを表示してオーディオ入力処理の状態を示す。いくつかの実装例において、ＬＥＤはフルカラーＬＥＤであり、ＬＥＤの色はＬＥＤに表示される視覚パターンの一部として用いることができる。情報またはデバイスの状態を伝えるためにＬＥＤを用いて視覚パターンを表示する複数の例が、２０１６年５月１３日に出願され「LED Design Language for Visual Affordance of Voice User Interfaces」と題されその内容全体を本明細書に引用により援用する米国仮特許出願第６２／３３６，５６６号に記載されている。いくつかの実装例において、音声処理動作の状態を示す視覚パターンは、音声処理動作を実行している電子デバイスに対応付けられた従来の表示装置上に示される特徴的な画像を用いて表示される。
【００３２】
いくつかの実装例では、ＬＥＤまたはその他の視覚表示装置を用いて、関係している複数の電子デバイスの全体的な音声処理状態を伝える。たとえば、複数の音声処理または音声インターフェイスデバイス（たとえば下記の図８Ａに複製された第６２／３３６，５６６号出願の図４Ａに示されるような複数の電子デバイス４００、複数の電子デバイス１９０）が存在する動作環境において、それぞれの電子デバイスに対応付けられたカラーＬＥＤ（たとえば第６２／３３６，５６６号出願の図４Ａに示されるＬＥＤ４０４）のグループを用いて、これらの電子デバイスのうちのどれがユーザの話を聴いているか、および、聴いているデバイスのうちのどれがリーダーであるか（一般的に「リーダー」デバイスがユーザによる発話要求に対する応答において主導する）を、伝えることができる。
【００３３】
より一般的には、第６２／３３６，５６６号出願は、「ホットワード検出状態およびリスニング状態」、「シンキングモードまたはワーキングモード」、および「応答モードまたは発話モード」等の電子デバイスの各種音声処理状態をＬＥＤの集合体を用いて視覚的に示すための「ＬＥＤ設計言語」について説明している（たとえば段落［００８７］〜［０１００］参照）。いくつかの実装例において、本明細書に記載の音声処理動作の固有の状態は、第６２／３３６，５６６号出願の「ＬＥＤ設計言語」の１つ以上の態様に従い、ＬＥＤのグループを用いて表される。これらの視覚インジケータを、音声処理動作を実行している電子デバイスが生成する１つ以上の可聴インジケータと組み合わせることもできる。得られた音声および／または視覚インジケータにより、音声対話環境にいるユーザは、この環境内の各種音声処理電子デバイスの状態を理解することができ、かつ、これらのデバイスと、自然で直感的なやり方で効果的に対話することができる。
【００３４】
電子デバイス１９０からの音声入力を用いキャストデバイスを介してメディア出力デバイスを制御する場合、電子デバイス１９０は効果的に、キャスト対応メディアデバイスの新たなレベルの制御を可能にする。ある具体例において、電子デバイス１９０は、遠距離音声アクセスの日常娯楽用スピーカを含み、音声アシスタントサービス用の音声インターフェイスデバイスとして機能する。電子デバイス１９０は動作環境１００内の任意の場所に配置することができる。複数の電子デバイス１９０が複数の部屋に分散している場合、これらのデバイスは、同期されてこれらすべての部屋から音声入力を提供するキャストオーディオ受信機となる。
【００３５】
具体的には、いくつかの実装例において、電子デバイス１９０は、音声起動音声アシスタントサービス（たとえばＧｏｏｇｌｅアシスタント）に接続されるマイクを有するＷｉ−Ｆｉスピーカを含む。ユーザは、電子デバイス１９０のマイクを介してメディア再生要求を出し、電子デバイス１９０自体で、または、接続された別のメディア出力デバイスで、メディアコンテンツを再生するよう音声アシスタントサービスに依頼することができる。たとえば、ユーザは、Ｗｉ−Ｆｉスピーカに対し「ＯＫグーグル、リビングのＴＶで猫のビデオを再生して」と言うことにより、メディア再生要求を出すことができる。そうすると、音声アシスタントサービスは、デフォルトまたは指定のメディアアプリケーションを用いて、要求されたメディアコンテンツを要求されたデバイスで再生することにより、メディア再生要求に応える。
【００３６】
いくつかの実装例において、ユーザは、表示装置で既に再生されたまたは再生中のメディアコンテンツに関し、電子デバイス１９０のマイクを介して音声要求を出すことができる（たとえばユーザは、メディアコンテンツに関する情報を要求する、オンライストアを通してメディアコンテンツを購入する、または、メディアコンテンツに関するソーシャルポストを作成して発行することができる）。
【００３７】
いくつかの実装例において、ユーザは、家の中で移動しながら現在のメディアセッションを持ち運びたいと思う場合があり、このようなサービスを、電子デバイス１９０のうちの１つ以上に要求することができる。そのためには、音声アシスタントサービスが、現在のメディアセッションを、第１のキャストデバイスから、第１のキャストデバイスに直接接続されていないまたは第１のキャストデバイスの存在を知らない第２のキャストデバイスに転送する必要がある。メディアコンテンツの転送後、第２のキャストデバイスに結合された第２の出力デバイスが、第１のキャストデバイスに結合された第１の出力デバイスが前に再生していた楽曲またはビデオクリップ内の、第１の出力デバイスが再生を止めたポイントから、メディアコンテンツの再生を継続する。いくつかの実装例において、メディアセッションの転送要求を受けた電子デバイス１９０は、この要求に応えることができる。いくつかの実装例において、メディアセッションの転送要求を受けた電子デバイス１９０は、この要求を、処理のために別のデバイスまたはシステム（たとえばハブデバイス、音声アシスタントサーバ１１２）に中継する。
【００３８】
さらに、いくつかの実装例において、ユーザは、電子デバイス１９０のマイクを介して、情報、またはあるアクションもしくは動作の実行を求める要求を出すことができる。要求される情報は、個人情報（たとえばユーザの電子メール、ユーザのカレンダーイベント、ユーザのフライト情報等）、非個人情報（たとえば、スポーツのスコア、ニュース記事等）、またはその中間（たとえばユーザが好きなチームまたはスポーツのスコア、ユーザが好きなソースからのニュース記事等）であってもよい。要求される情報またはアクション／動作は、個人情報へのアクセスを要する場合がある（たとえば、ユーザが提供する支払情報でデジタルメディアアイテムを購入、物理的商品を購入）。電子デバイス１９０は、この要求に対して、ユーザに対する音声メッセージレスポンスで応答し、このレスポンスは、たとえば、この要求を満たすための追加情報を求める要求、要求は満たされたという確認、要求を満たすことができないという通知等を含み得る。
【００３９】
いくつかの実装例において、音声起動電子デバイス１９０およびメディアデバイス（たとえば出力デバイスおよびキャストデバイス）に加えて、動作環境１００は、１つ以上のスマートホームデバイス（図示せず）も含み得る。一体化されたスマートホームデバイスは、スマートホームネットワーク内で互いに、および／または中央サーバもしくはクラウドコンピューティングシステムとシームレスに統合されることにより、各種有用なスマートホーム機能を提供する、インテリジェントなマルチセンシングのネットワーク接続型デバイスを含む。いくつかの実装例において、スマートホームデバイスは、キャストデバイスおよび／または出力デバイスと同一場所に配置されるので、キャストデバイスおよび出力デバイスの近傍にある、または、キャストデバイスおよび出力デバイスからわかっている距離を隔てたところにある。
【００４０】
動作環境１００の中のスマートホームデバイスは、１つ以上のインテリジェントなマルチセンシングのネットワーク接続型サーモスタット、１つ以上のインテリジェントなネットワーク接続型マルチセンシングハザード検出器、１つ以上のインテリジェントなマルチセンシングのネットワーク接続型進入経路インターフェイスデバイス（以下「スマートドアベル」および「スマートドアロック」と呼ぶ）、１つ以上のインテリジェントなマルチセンシングのネットワーク接続型アラームシステム、１つ以上のインテリジェントなマルチセンシングのネットワーク接続型カメラシステム、１つ以上のインテリジェントなマルチセンシングのネットワーク接続型壁スイッチ、および、１つ以上のインテリジェントなマルチセンシングのネットワーク接続型電源ソケットを含み得るが、これらに限定されない。いくつかの実装例において、図１の動作環境１００におけるスマートホームデバイスは、複数のインテリジェントなマルチセンシングのネットワーク接続型機器（以下「スマート機器」と呼ぶ）を含み、これは、たとえば、冷蔵庫、ストーブ、オーブン、テレビ、洗濯機、乾燥機、照明器具、ステレオ、インターコムシステム、ガレージドアオープナー、床ファン、天井ファン、壁用空気調和機、プール加熱器、灌水システム、セキュリティシステム、空間加熱器、窓用ＡＣユニット、電動ダクトベント等である。いくつかの実装例において、これらのスマートホームデバイスタイプのうちのいずれかに、マイクおよび本明細書に記載の１つ以上の音声処理機能を与えることにより、占有者またはユーザからの音声要求に対し、全面的にまたは部分的に応えることができる。
【００４１】
いくつかの実装例において、キャストデバイスおよび音声起動電子デバイス１９０の各々は、他のキャストデバイス、音声起動電子デバイス１９０、スマートホームデバイス、中央サーバもしくはクラウドコンピューティングシステム、および／またはネットワーク接続される他のデバイス（たとえばクライアントデバイス）とのデータ通信および情報共有が可能である。データ通信は、さまざまなカスタムもしくは標準ワイヤレスプロトコル（たとえば、IEEE 802.15.4、Wi-Fi、ZigBee、6LoWPAN、Thread、Z-Wave、Bluetooth（登録商標） Smart、ISA100.11a、WirelessHART、MiWi等）のうちのいずれか、および／またはさまざまなカスタムもしくは標準有線プロトコル（たとえば、Ethernet（登録商標）、HomePlug等）のうちのいずれか、または、本願の出願日の時点でまだ開発されていない通信プロトコルを含む任意の他の好適な通信プロトコルを用いて行うことができる。
【００４２】
通信ネットワーク（たとえばインターネット）１１０を通して、キャストデバイス、電子デバイス１９０、およびスマートホームデバイスは、サーバシステム（本明細書では中央サーバシステムおよび／またはクラウドコンピューティングシステムとも呼ばれる）と通信することができる。任意に、サーバシステムを、キャストデバイスとユーザに表示されるメディアコンテンツとに対応付けられる、製造者、サポートエンティティ、またはサービスプロバイダに対応付けてもよい。したがって、サーバシステムは、音声起動電子デバイス１９０によって収集されたオーディオ入力を処理する音声アシスタントサーバ１１２と、表示されるメディアコンテンツを提供する１つ以上のコンテンツホスト１１４と、分散したデバイス端末に基づいて仮想ユーザドメインを生成するクラウドキャストサービスサーバと、仮想ユーザ環境における分散したデバイス端子の記録を保持するデバイスレジストリ１１８とを含む。分散したデバイス端末の例は、キャストデバイス、メディア出力デバイス、電子デバイス１９０、およびスマートホームデバイスを含むが、これらに限定されない。いくつかの実装例において、これらの分散したデバイス端末は、仮想ユーザドメイン内のユーザアカウント（たとえばＧｏｏｇｌｅユーザアカウント）にリンクされる。電子デバイス１９０が収集したオーディオ入力の処理は、電子デバイス１９０、音声アシスタントサーバ１１２、別のスマートホームデバイス（たとえばハブデバイス）、または上記デバイスのうちのすべてまたは下位セットの何らかの組み合わせにおいて、ローカルに実行できることが、理解されるはずである。
【００４３】
いくつかの実装例において、電子デバイス１９０は、スマートホームデバイスがない環境でも機能する。たとえば、電子デバイス１９０は、スマートホームデバイスがない場合であっても、情報またはあるアクションの実行を求めるユーザ要求に応答する、および／または各種メディア再生機能を開始もしくは制御することができる。また、電子デバイス１９０は、車両、船舶、ビジネスまたは製造環境を含むがこれらに限定されない広範囲にわたる環境において、機能することができる。
【００４４】
いくつかの実装例において、電子デバイス１９０は、ホットワード（「ウェイクワード（wake word）」とも呼ばれる）を含む音声入力によって「起こされる」（たとえば、電子デバイス１９０上の音声アシスタントサービスのためのインターフェイスを起動する、電子デバイス１９０を、音声アシスタントサービスに対する音声要求を受ける準備ができた状態にする）。いくつかの実装例において、電子デバイス１９０は、少なくとも所定期間（たとえば５分間）音声入力の受信に関してアイドル状態であった場合は、起動しなければならない。上記所定期間は、音声インターフェイスセッションまたは会話のタイムアウト前に与えられるアイドル時間に相当する。ホットワードは、ある単語またはフレーズであればよく、予め定められたデフォルトであってもよく、および／またはユーザによってカスタマイズされてもよい（たとえば、ユーザは、特定の電子デバイス１９０に対し、このデバイスのホットワードとしてニックネームを設定してもよい）。いくつかの実装例において、電子デバイス１９０を起動できるホットワードは複数あってもよい。ユーザは、ホットワードを発話し、電子デバイス１９０からの確認レスポンスを待ち（たとえば電子デバイス１９０は挨拶を出力）、それから第１の音声要求を行う。代わりに、ユーザは、ホットワードと第１の音声要求とを組み合わせて１つの音声入力にしてもよい（たとえば音声入力は、ホットワードとそれに続く音声要求とを含む）。
【００４５】
いくつかの実装例において、電子デバイス１９０に対してユーザが発話する音声入力は、一般的に、自由形式または自然言語の発話である。すなわち、音声入力は、おそらくは特定の例外（たとえばユーザはデバイスを起動するために最初にホットワードを発話しなければならない）を除いて、予め定められたシンタックス内の予め定められた一組の単語およびフレーズに厳密に限定される必要はない。
【００４６】
いくつかの実装例において、電子デバイス１９０は、電子デバイス１９０に対してホットワードを発話すること以外にも、このデバイスを起動するための１つ以上のその他のやり方またはアフォーダンスを含む。上記その他のやり方またはアフォーダンスは、たとえば、電子デバイス１９０上の所定のボタンまたはタッチセンサ（たとえばタッチセンスアレイ）を起動することを含み得る。
【００４７】
いくつかの実装例において、音声起動電子デバイス１９０は、いくつかの実装例に従い、動作環境１００のキャストデバイス、クライアントデバイス、またはサーバシステムとやり取りする。音声起動電子デバイス１９０は、音声起動電子デバイス１９０の近傍の環境からオーディオ入力を受けるように構成される。任意に、電子デバイス１９０は、オーディオ入力を記憶し、このオーディオ入力の少なくとも一部をローカルで処理する。任意に、電子デバイス１９０は、受けたオーディオ入力または一部を処理したオーディオ入力を、さらに処理するために通信ネットワーク１１０を介して音声アシスタントサーバ１１２に送信する。キャストデバイスは、キャストデバイスに結合された出力デバイスで表示するために、１つ以上のコンテンツホスト１１４からメディアコンテンツまたはインターネットコンテンツを取得するように構成される。いくつかの実装例において、キャストデバイスおよび音声起動電子デバイス１９０は、ユーザドメイン内で互いにリンクされ、より具体的には、ユーザドメイン内でユーザアカウントを介して相互に対応付けられる。キャストデバイスの情報および電子デバイス１９０の情報は、ユーザアカウントと対応付けてデバイスレジストリ１１８に格納される。いくつかの実装例において、キャストデバイス用のデバイスレジストリと、音声起動電子デバイス１９０用のレジストリとが存在する。いくつかの実装例において、クラウドキャストサービスサーバはキャストデバイスレジストリを管理し、音声アシスタントサーバ１１２は音声起動電子デバイスレジストリを管理する。キャストデバイスレジストリは、ユーザドメインにおいて対応付けられた音声起動電子デバイスのレジストリ内のデバイスを参照することができ、またその逆も可能である。
【００４８】
いくつかの実装例において、電子デバイス１９０（および１つ以上のキャストデバイス）のうちの１つ以上は、クライアントデバイス（図示せず）を介して音声アシスタントサービスに委託される（commissioning）。いくつかの実装例において、音声起動電子デバイス１９０は、表示画面を含まないので、委託プロセス中はユーザインターフェイスの提供をクライアントデバイスに頼る。これはキャストデバイスについても同様である。具体的には、クライアントデバイスの近傍に配置された新たな音声起動電子デバイス１９０の委託をユーザインターフェイスが容易にすることを可能にするアプリケーションが、クライアントデバイスにインストールされる。ユーザは、このクライアントデバイスのユーザインターフェイスに要求を送信することにより、委託が必要な新たな電子デバイス１９０のための委託プロセスを開始することができる。クライアントデバイスは、この委託要求を受けた後に、委託が必要な新たな電子デバイス１９０に対する短距離通信リンクを構築する。任意に、短距離通信リンクは、近距離無線通信（ＮＦＣ）、Bluetooth、Bluetoothローエナジー（ＢＬＥ）等に基づいて構築される。次に、クライアントデバイスは、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）（たとえばローカルネットワーク１０４）に対応付けられたワイヤレスコンフィギュレーションデータを、新たなまたは電子デバイス１９０に伝える。ワイヤレスコンフィギュレーションデータは、少なくとも、ＷＬＡＮセキュリティコード（すなわちサービスセット識別子（ＳＳＩＤ）パスワード）を含み、任意にＳＳＩＤ、インターネットプロトコル（ＩＰ）アドレス、プロキシコンフィギュレーション、およびゲートウェイコンフィギュレーションを含む。短距離通信リンクを介してワイヤレスコンフィギュレーションデータを受信した後、新たな電子デバイス１９０は、ワイヤレスコンフィギュレーションデータを復号して回復し、ワイヤレスコンフィギュレーションデータに基づいてＷＬＡＮに参加する。
【００４９】
いくつかの実装例において、その他のユーザドメイン情報が、クライアントデバイスに表示されたユーザインターフェイスに入力され、新たな電子デバイス１９０をユーザドメイン内のアカウントにリンクするのに用いられる。任意に、このその他のユーザドメイン情報は、短距離通信リンクを介して、ワイヤレス通信データとともに、新たな電子デバイス１９０に伝えられる。任意に、このその他のユーザドメイン情報は、新たな電子デバイス１９０がＷＬＡＮに参加した後に、ＷＬＡＮを介して新たな電子デバイス１９０に伝えられる。
【００５０】
電子デバイス１９０がユーザドメインに委託されると、その他のデバイスおよびこれらのデバイスに対応付けられたアクティビティは、複数の制御経路を介して制御することができる。１つの制御経路に従い、クライアントデバイスにインストールされたアプリケーションを用いて、他のデバイスおよびこのデバイスに対応付けられたアクティビティ（たとえばメディア再生アクティビティ）を制御する。これに代わるものとしては、別の制御経路に従い、電子デバイス１９０を用いて、他のデバイスおよびこのデバイスに対応付けられたアクティビティのアイズフリー・ハンズフリー制御を可能にする。
【００５１】
メディア出力デバイスにおける音声起動メディアの再生
いくつかの実装例において、キャストデバイスおよび音声起動電子デバイス１９０双方が、共通のユーザドメインに委託されリンクされた後に、音声起動電子デバイス１９０を音声ユーザインターフェイスとして用いて、キャストデバイスにストリーミングされるメディアコンテンツのアイズフリー・ハンズフリー制御を、遠隔制御、クライアントデバイスまたは他の第２の画面デバイスを伴わずに、行うことができる。たとえば、ユーザは、「リビングルームのスピーカでレディー・ガガを再生」といった音声コマンドを与えることができる。レディー・ガガの楽曲またはビデオクリップが、「リビングルームのスピーカ」に対応付けられたキャストデバイスにストリーミングされる。クライアントデバイスも、クライアントデバイスにロードされたいずれのキャストデバイスアプリケーションまたはメディア再生アプリケーションも、関与していない。
【００５２】
いくつかの実装例において、プロキシサービス（たとえば音声アシスタントサービス、クラウドキャストサービス）が、音声起動電子デバイス１９０を、キャストデバイスに通信可能にリンクし、クライアントデバイス上のどのアプリケーションも関与させることなく、キャストデバイスへのキャストを可能にする。具体的には、音声メッセージが電子デバイス１９０によって捕捉されて記録される。この音声メッセージは、メディア出力デバイスにおけるメディアの再生を要求するように構成されている。任意に、電子デバイス１９０は音声メッセージの一部をローカルで処理する。任意に、電子デバイス１９０は、音声メッセージまたは一部が処理された音声メッセージを、さらに処理するために通信ネットワーク１１０を介して音声アシスタントサーバ１１２に送信する。音声アシスタントサーバ１１２またはクラウドキャストサービスサーバは、音声メッセージが第１のメディア再生要求を含むと判断するとともに、第１のメディア再生要求は、メディア出力デバイスでメディアコンテンツを再生することを求めるユーザ音声コマンドと、メディア出力デバイスのユーザ音声指定とを含むと判断する。ユーザ音声コマンドはさらに、第１のメディア再生アプリケーション（たとえばYouTube（登録商標）およびNetflix（登録商標））および再生が必要なメディアコンテンツ（たとえばレディー・ガガの音楽）の情報を、少なくとも含む。
【００５３】
メディア出力デバイスの音声指定に従い、音声アシスタントサーバ１１２またはクラウドキャストサービスサーバは、デバイスレジストリ１１８内の、ユーザドメインにおいて電子デバイス１９０に対応付けられメディア出力デバイスに結合されたキャストデバイスを特定する。このキャストデバイスは、１つ以上のメディアコンテンツホスト１１４から受信したメディアコンテンツを再生するためにメディア出力デバイスを制御するための１つ以上のメディア再生アプリケーションを実行するように構成される。次に、クラウドキャストサービスサーバは、キャストデバイスに、第２のメディア再生要求を送信する。第２のメディア再生要求は、第１のメディア再生アプリケーションおよび再生が必要なメディアコンテンツの情報を含む。キャストデバイスは、クラウドキャストサービスサーバから送信されたこの情報を受信すると、第１のメディア再生アプリケーションを実行し、要求されたメディアコンテンツを再生するためにメディア出力デバイスを制御する。
【００５４】
いくつかの実装例において、メディア出力デバイスのユーザ音声指定は、宛先メディア出力デバイスの記述を含む。音声アシスタントサーバ１１２またはクラウドキャストサービスサーバは、宛先メディア出力デバイスの記述に従い、デバイスレジストリ１１８内の、複数のメディア出力デバイスのうちの宛先メディア出力デバイスを特定する。いくつかの実装例において、宛先メディア出力デバイスの記述は、ブランド（「Samsung TV」）またはメディア出力デバイス（「私のリビングルームＴＶ」）の場所を少なくとも含む。
【００５５】
メディア出力デバイス間における音声起動メディアの転送
いくつかの実装例において、動作環境１００は、第１のキャストデバイス（図示せず）と、第１のキャストデバイスに結合された第１の出力デバイス（図示せず）とを含む。また、動作環境１００は、第２のキャストデバイス（図示せず）と、第２のキャストデバイスに結合された第２の出力デバイス（図示せず）とを含む。これらのキャストデバイスは、任意に、同一の場所（たとえばリビングルーム）にあってもよく、動作環境１００の中の異なる２つの場所（たとえば２つの部屋）にあってもよい。キャストデバイスは各々、それぞれのキャストデバイスに結合された出力デバイスで表示するためのメディアコンテンツまたはインターネットコンテンツをコンテンツホスト１１４から取得するように構成される。第１および第２のキャストデバイスはどちらも、音声アシスタントサーバ１１２に通信可能に結合され、任意にクラウドキャストサービスサーバに通信可能に結合され、コンテンツホスト１１４に通信可能に結合される。
【００５６】
動作環境１００はさらに、音声アシスタントサーバ１１２に通信可能に結合され任意にクラウドキャストサービスサーバに通信可能に結合された、１つ以上の音声起動電子デバイス１９０を含む。いくつかの実装例において、音声起動電子デバイス１９０は、キャストデバイスおよび出力デバイスとは別に配置される。たとえば、電子デバイス１９０は、キャストデバイスも出力デバイスもない部屋に配置される。いくつかの実装例において、第１の電子デバイス１９０は、第１のキャストデバイスおよび第１の出力デバイスの近傍に配置され、たとえば、第１の電子デバイス１９０、第１のキャストデバイス、および第１の出力デバイスは、同一の部屋にある。任意に、第２の電子デバイス１９０が、第２のキャストデバイスおよび第２の出力デバイスとは別に、またはこれらの近傍に配置される。
【００５７】
第１の出力デバイスにおいてメディアコンテンツが再生されているときに、ユーザは、このメディアコンテンツの再生を第２の出力デバイスに転送することを求める音声コマンドを、電子デバイス１９０のうちのいずれかに送信することができる。この音声コマンドはメディア再生転送要求を含む。ある状況において、ユーザは、目的の場所に移動する前に、第１のキャストデバイスの近くに配置された電子デバイス１９０にこの音声コマンドを発してもよい。これに代えて、別の状況において、ユーザは、目的の場所に着いた後で、第２のデバイスの近くに配置された電子デバイス１９０にこの音声コマンドを発してもよい。
【００５８】
上記音声コマンドは音声アシスタントサーバ１１２に送信される。音声アシスタントサーバ１１２は、メディア表示情報要求を第１のキャストデバイスに送信し、第１のキャストデバイスに結合された第１の出力デバイスで現在再生されているメディアコンテンツの即時メディア再生情報を要求する。そうすると、第１のキャストデバイスは、第１のメディア再生アプリケーション（たとえばYouTube）、現在再生中のメディアコンテンツ（たとえば「レディー・ガガ−国歌−スーパーボウル２０１６」）、およびこのメディアコンテンツの再生に関する時間的位置の情報を少なくとも含む、要求された即時再生情報を、音声アシスタントサーバ１１２に返す。次に、第２のキャストデバイスが、音声アシスタントサーバ１１２から、即時再生情報を含むメディア表示要求を受け、即時再生情報に従って、メディアコンテンツを上記時間的位置から再生するよう第２の出力デバイスを制御する第１のメディア再生アプリケーションを実行する。
【００５９】
たとえば、ある音楽再生リストが第１の出力デバイスで再生されているときに、ユーザが「私のリビングルームのスピーカで再生」と言ったとする。第１の出力デバイスは、現在再生中の歌の再生を停止し、停止された音楽はリビングルームのスピーカで再び再生される。この歌が終わると、リビングルームのスピーカは引き続き、第１の出力デバイスで再生されていた音楽再生リストの次の歌を再生する。このように、ユーザが動作環境１００の中で移動しているとき、メディアコンテンツの再生は途切れることなくユーザを追いかけ、このときのユーザの介入はごく限られたものでよい（すなわち音声コマンドを与えること）。
【００６０】
動作環境に関与する個々のデバイス
図２Ａ〜図２Ｂは、いくつかの実装例に従う、動作環境（たとえば動作環境１００）においてユーザ音声コマンドを収集するための音声インターフェイスとして適用される一例としての電子デバイス１９０を示すブロック図である。電子デバイス１９０は、典型的に、１つ以上の処理ユニット（ＣＰＵ）５０２と、１つ以上のネットワークインターフェイス５０４と、メモリ５０６と、これらのコンポーネント（チップセットと呼ばれることもある）を相互に接続するための１つ以上の通信バス５０８とを含む。電子デバイス１９０は、ボタン５１２、タッチセンスアレイ５１４、および１つ以上のマイク５１６等の、ユーザ入力を容易にする１つ以上の入力デバイス５１０を含む。電子デバイス１９０はまた、１つ以上のスピーカ５２０と、任意にＬＥＤアレイ５２２と、任意にディスプレイ５２４とを含む、１つ以上の出力デバイス５１８を含む。いくつかの実装例において、ＬＥＤアレイ５２２はフルカラーＬＥＤのアレイである。いくつかの実装例において、電子デバイス１９０は、デバイスの種類に応じて、ＬＥＤアレイ５２２およびディスプレイ５２４のうちのいずれか、または双方を有する。いくつかの実装例において、電子デバイス１９０はまた、位置検出装置５２６（たとえばＧＰＳモジュール）と、１つ以上のセンサ５２８（たとえば加速度計、ジャイロスコープ、光センサ等）とを含む。
【００６１】
メモリ５０６は、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭ等の高速ランダムアクセスメモリまたはその他のランダムアクセス固体メモリデバイスを含み、任意に、１つ以上の磁気ディスク記憶デバイス、１つ以上の光ディスク記憶デバイス、１つ以上のフラッシュメモリデバイス、または１つ以上のその他の不揮発性固体記憶デバイス等の不揮発性メモリを含む。メモリ５０６は、任意に、１つ以上の処理ユニット５０２から遠く離れた場所にある１つ以上の記憶デバイスを含む。メモリ５０６または代替的にメモリ５０６内の不揮発性メモリは、非一時的なコンピュータ読取可能記憶媒体を含む。いくつかの実装例において、メモリ５０６またはメモリ５０６の非一時的なコンピュータ読取可能記憶媒体は、以下のプログラム、モジュール、およびデータ構造、またはその下位セットもしくは上位セットを格納する。
【００６２】
・各種基本システムサービスを扱いハードウェア依存タスクを実行するためのプロシージャを含むオペレーティングシステム５３２
・１つ以上のネットワークインターフェイス５０４（有線または無線）と、インターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク（たとえばローカルネットワーク１０４）、メトロポリタンエリアネットワーク等の１つ以上のネットワーク１１０とを介して、電子デバイス１９０を他のデバイス（たとえば、サーバシステム１４０、１つ以上のキャストデバイス、１つ以上のクライアントデバイス、１つ以上のスマートホームデバイス、および他の電子デバイス１９０）に接続するためのネットワーク通信モジュール５３４
・１つ以上の入力デバイスを介して入力を受信し、１つ以上の出力デバイス５１８を介して電子デバイス１９０で情報を提示することを可能にするための入出力制御モジュール５３６であって、
−電子デバイス１９０の周囲の環境で収集されたオーディオ入力もしくは音声メッセージを処理するため、または、音声アシスタントサーバ１１２での処理のために収集されたオーディオ入力もしくは音声メッセージを準備するための音声処理モジュール５３８、
−電子デバイス１９０のデバイス状態に従ってＬＥＤ５２２上に視覚的パターンを生成するためのＬＥＤ制御モジュール５４０、および
−電子デバイス１９０の上面上（たとえばタッチセンサアレイ５１４上）のタッチイベントを検知するためのタッチセンスモジュール５４２
を含む。
【００６３】
・電子デバイス１９０に対応付けられたデータを少なくとも記憶するための音声起動デバイスデータ５４４であって、
−電子デバイス１９０自体に対応付けられた情報を記憶するための音声デバイス設定５４６であり、これは、共通デバイス設定（たとえば、サービス層（service tier）、デバイスモデル、記憶容量、処理能力、通信能力等）、ユーザドメイン内の１つ以上のユーザアカウントの情報、登録されていないユーザを扱うときの制限に関する設定、および、ＬＥＤ５２２によって表示される１つ以上の視覚的パターンに対応付けられた表示仕様を含み、
−オーディオ信号、音声メッセージ、レスポンスメッセージ、および、電子デバイス１９０の音声インターフェイス機能に関するその他のデータを記憶するための音声制御データ５４８、および
−電子デバイス１９０に対応付けられた、ユーザドメイン内のユーザに対応する音声モデルまたは音声フィンガープリントを記憶するための音声モデルデータ５５０、
を含む。
【００６４】
・ユーザ音声入力に応答して複数の電子デバイス１９０の中からリーダーを決定するためのデバイスリーダーシップモジュール５５２
・電子デバイス１９０に対応付けられた、ユーザドメイン内のユーザを識別し明らかにするために使用できる音声モデルまたは音声フィンガープリント５５０を訓練し生成するための音声モデル訓練モジュール５５４
・音声アシスタントサーバ１１２が生成した音声要求レスポンスに含まれる命令を実行するための、また、いくつかの実装例では、特定の音声入力に対するレスポンスを生成するための、レスポンスモジュール５５６
・電子デバイス１９０の周囲の雑音レベルを求め、妨害雑音レベルを表示し電子デバイスを起動する代替方法を使用するよう示唆するための雑音モジュール５５８。
【００６５】
いくつかの実装例において、音声処理モジュール５３８は以下のモジュール、すなわち、
・電子デバイス１９０に音声入力を与えたユーザを識別し明確にするためのユーザ識別モジュール５６０、
・電子デバイス１９０を起動するためのホットワードを音声入力が含むか否かを判断し、音声入力中のそのホットワードを認識するためのホットワード認識モジュール５６２、
・音声入力に含まれるユーザ要求を判断するための要求認識モジュール５６４、
・音声入力中のホットワードおよび／または要求の認識の品質の程度（たとえばスコア）を求めるための認識品質モジュール５６６、
を含む。
【００６６】
いくつかの実装例において、雑音モジュール５５８は以下のモジュール、すなわち、
・特定の電子デバイス１９０に関して、音声処理モジュール５３８（たとえば、特にホットワード認識モジュール５６２および／または要求認識モジュール５６４）の動作に対して異なるレベルの雑音がどのように影響するかを解析するための認識解析モジュール５６８、
・電子デバイス１９０から所定の距離について、電子デバイス１９０に対してユーザが発する音声入力の最大快適音量レベルを求めるためのユーザ音量しきい値モジュール５６８、
・電子デバイス１９０の周囲の雑音レベルおよび雑音プロファイルを求めるための雑音判定モジュール５７２、
・音声入力内のホットワードおよび／または要求の認識を妨害する雑音の雑音プロファイルを訓練し生成するための雑音プロファイルモジュール５７４、および、
・妨害すると判断された雑音プロファイルを保存するための雑音プロファイルストア５７６、
を含む。
【００６７】
上記要素は各々、先に述べたメモリデバイスのうち１つ以上に格納されてもよく、上述の機能を行うための命令のセットに対応する。上記モジュールまたはプログラム（すなわち命令のセット）は、別個のソフトウェアプログラム、プロシージャ、モジュール、またはデータ構造として実現される必要はなく、そのため、これらのモジュールのさまざまな下位セットをさまざまな実装例で組み合わせたりそうでなければ再配置してもよい。いくつかの実装例において、メモリ５０６は、任意に、上記モジュールおよびデータ構造の下位セットを格納する。さらに、メモリ５０６は、任意に、上で記載していないその他のモジュールおよびデータ構造を格納する。いくつかの実装例において、メモリ５０６に格納されたプログラム、モジュール、および／またはデータの下位セットは、サーバシステム１４０／音声アシスタントサーバ１１２に格納する、および／またはサーバシステム１４０／音声アシスタントサーバ１１２によって実行されることができる。
【００６８】
いくつかの実装例において、上記メモリ５０６内のモジュールのうちの１つ以上は、モジュールの音声処理ライブラリの一部である。音声処理ライブラリは、多種多様なデバイスにおいて実現または埋込むことができる。音声処理ライブラリの一例が、その全体を本明細書に引用により援用する、２０１６年５月１０日に出願された「Implementations for Voice Assistant on Devices」と題される米国仮特許出願第６２／３３４，４３４号に記載されている。
【００６９】
図３は、いくつかの実装例に従う、動作環境（たとえば動作環境１００）のサーバシステム１４０内のサーバの一例を示すブロック図である。サーバの一例は音声アシスタントサーバ１１２の１つである。サーバ１４０は、典型的に、１つ以上の処理ユニット（ＣＰＵ）７０２と、１つ以上のネットワークインターフェイス７０４と、メモリ７０６と、これらのコンポーネント（チップセットと呼ばれることもある）を相互に接続するための１つ以上の通信バス７０８とを含む。サーバ１４０は、ユーザ入力を容易にする１つ以上の入力デバイス７１０を含み得る。入力デバイスは、キーボード、マウス、音声コマンド入力ユニットもしくはマイク、タッチスクリーンディスプレイ、タッチ感知入力パッド、ジェスチャー撮影カメラ、またはその他の入力ボタンもしくは制御装置等の入力デバイスである。さらに、サーバ１４０は、マイクと音声認識、またはカメラとジェスチャー認識を用いて、キーボードを補足する、またはキーボードに置き換えることができる。いくつかの実装例において、サーバ１４０は、たとえば電子デバイス上に印刷された一連のグラフィックコードの画像を撮影するための、１つ以上のカメラ、スキャナ、または、フォトセンサユニットを含む。また、サーバ１４０は、ユーザインターフェイスおよび表示コンテンツの提示を可能にする、１つ以上のスピーカおよび／または１つ以上の視覚的ディスプレイを含む１つ以上の出力デバイス７１２を含む。
【００７０】
メモリ７０６は、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭ等の高速ランダムアクセスメモリまたはその他のランダムアクセス固体メモリデバイスを含み、任意に、１つ以上の磁気ディスク記憶デバイス、１つ以上の光ディスク記憶デバイス、１つ以上のフラッシュメモリデバイス、または１つ以上のその他の不揮発性固体記憶デバイス等の不揮発性メモリを含む。メモリ７０６は、任意に、１つ以上の処理ユニット７０２から遠く離れた場所にある１つ以上の記憶デバイスを含む。メモリ７０６または代替的にメモリ７０６内の不揮発性メモリは、非一時的なコンピュータ読取可能記憶媒体を含む。いくつかの実装例において、メモリ７０６またはメモリ７０６の非一時的なコンピュータ読取可能記憶媒体は、以下のプログラム、モジュール、およびデータ構造、またはその下位セットもしくは上位セットを格納する。
【００７１】
・各種基本的なシステムサービスを扱いハードウェア依存タスクを実行するためのプロシージャを含むオペレーティングシステム７１６
・１つ以上のネットワークインターフェイス７０４（有線または無線）と、インターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワーク等の１つ以上のネットワーク１１０とを介して、サーバシステム１４０を他のデバイス（たとえば、サーバシステム１４０内の各種サーバ、クライアントデバイス、キャストデバイス、電子デバイス１９０、およびスマートホームデバイス）に接続するためのネットワーク通信モジュール７１８
・クライアントデバイスで情報（たとえば、アプリケーション８２６〜８３０、ウィジェット、ウェブサイト、およびそのウェブページ、および／またはゲーム、オーディオおよび／またはビデオコンテンツ、テキスト等）を提示することを可能にするためのユーザインターフェイスモジュール７２０
・サーバ側で実行されるコマンド実行モジュール７２１（たとえば、ゲーム、ソーシャルネットワークアプリケーション、スマートホームアプリケーション、および／またはクライアントデバイス、キャストデバイス、電子デバイス１９０、およびスマートホームデバイスを制御しこれらのデバイスが捕捉したデータをレビューするための、その他のウェブもしくは非ウェブベースのアプリケーション）であって、
−キャストデバイスに対応付けられた、デバイスプロビジョニング、デバイス制御、およびユーザアカウント管理のためのサーバ側機能を提供するために実行されるキャストデバイスアプリケーション７２２、
−対応するメディアソースに対応付けられた、メディア表示およびユーザアカウント管理のためのサーバ側機能を提供するために実行される１つ以上のメディアプレーヤアプリケーション７２４、
−対応するスマートホームデバイスの、デバイスプロビジョニング、デバイス制御、データ処理およびデータレビューのためのサーバ側機能を提供するために実行される１つ以上のスマートホームデバイスアプリケーション、および、
−電子デバイス１９０から受信した音声メッセージの音声処理を手配するため、または、音声メッセージを直接処理することによってユーザ音声コマンドおよびユーザ音声コマンドのための１つ以上のパラメータを抽出するために実行される音声アシスタントアプリケーション、
のうちの１つ以上を含む。
【００７２】
・メディア表示の自動制御（たとえば自動メディア出力モードおよびフォローアップモード）に対応付けられたデータを少なくとも格納するサーバシステムデータ７３０であって、
−共通デバイス設定（たとえば、サービス層、デバイスモデル、記憶容量、処理能力、通信能力等）、および自動メディア表示制御のための情報を含む、１つ以上のクライアントデバイスに対応付けられた情報を格納するためのクライアントデバイス設定７３２、
−アカウントアクセス情報、デバイス設定用の情報（たとえば、サービス層、デバイスモデル、記憶容量、処理能力、通信能力等）、および自動メディア表示制御用の情報のうちの１つ以上を含む、キャストデバイスアプリケーション７２２のユーザアカウントに対応付けられた情報を格納するためのキャストデバイス設定７３４、
−アカウントアクセス情報、メディアコンテンツタイプのユーザ嗜好、レビュー履歴データ、および自動メディア表示制御用の情報を含む、１つ以上のメディアプレーヤアプリケーション７２４のユーザアカウントに対応付けられた情報を格納するためのメディアプレーヤアプリケーション設定７３６、
−アカウントアクセス情報、１つ以上のスマートホームデバイスの情報（たとえばサービス層、デバイスモデル、記憶容量、処理能力、通信能力等）のうちの１つ以上を含む、スマートホームアプリケーション７２６のユーザアカウントに対応付けられた情報を格納するためのスマードホームデバイス設定７３８、
−アカウントアクセス情報、１つ以上の電子デバイス１９０のための情報（たとえば、サーバ層、デバイスモデル、記憶容量、処理能力、通信能力等）のうちの１つ以上を含む、音声アシスタントアプリケーション７２８のユーザアカウントに対応付けられた情報を格納する音声アシスタントデータ７４０、
−ユーザのサブスクリプション（たとえば音楽ストリーミングサービス加入、ビデオストリーミングサービス加入、ニューズレター購読）、ユーザデバイス（たとえばそれぞれのユーザに対応付けられたデバイスレジストリ１１８に登録されたデバイス）、ユーザアカウント（たとえば、ユーザの電子メールアカウント、カレンダーアカウント、財務アカウント）、およびその他のユーザデータを含む、ユーザドメイン内のユーザに対応付けられた情報を格納するためのユーザデータ７４２、および
−たとえばユーザの音声モデルまたは音声フィンガープリントおよびユーザの快適音量レベルしきい値を含む、ユーザドメイン内のユーザの音声プロファイルを格納するためのユーザ音声プロファイル７４４、
のうちの１つ以上を含む。
【００７３】
・音声アシスタントサーバ１１２に結合されたデバイスレジストリ１１８を管理するためのデバイス登録モジュール７５０
・動作環境内の電子デバイス１９０間におけるデバイスリーダーシップの決定を仲裁するためのデバイスリーダーシップモデレータ７８０
・電子デバイス１９０の周囲の雑音レベルを求めるための雑音モジュール７９０
・電子デバイス１９０の周囲の環境で収集されたオーディオ入力または音声メッセージを処理するための音声処理モジュール７１００。
【００７４】
いくつかの実装例において、音声アシスタントサーバ１１２は、主として音声入力の処理および雑音緩和の役割を担っており、したがって、図２Ａ〜図２Ｂを参照しながら先に説明したメモリ５０６内のプログラム、モジュール、およびデータ構造のうちの１つ以上が、メモリ７０６内のそれぞれのモジュールに含まれている（たとえば、音声処理モジュール５３８とともに含まれるプログラム、モジュール、およびデータ構造は、音声処理モジュール７１００に含まれ、雑音モジュール５５８とともに含まれるプログラム、モジュール、およびデータ構造は、雑音モジュール７９０に含まれる）。電子デバイス１９０は、捕捉された音声入力を処理のために音声アシスタントサーバ１１２に送信するか、または、音声入力を先ず前処理し、前処理した音声入力を処理のために音声アシスタントサーバ１１２に送信する。いくつかの実装例において、音声アシスタントサーバ１１２および電子デバイス１９０は、音声入力の処理および雑音緩和について、一部の責任は共有し、一部の責任は分担し、図２Ａ〜図２Ｂに示されるプログラム、モジュール、およびデータ構造は、音声アシスタントサーバ１１２および電子デバイス１９０のうちいずれにも含まれていても、分割して含まれていてもよい。図２Ａ〜図２Ｂに示されるその他のプログラム、モジュール、およびデータ構造（たとえば音声モデルデータ５５０、音声モデル訓練モジュール５５４）、またはそれに類似するものも、音声アシスタントサーバ１１２に含まれていてもよい。
【００７５】
上記要素は各々、上述のメモリデバイスのうちの１つ以上に格納することができ、上記機能を実行するための命令セットに対応する。上記モジュールまたはプログラム（すなわち命令のセット）は、別々のソフトウェアプログラム、プロシージャ、モジュールまたはデータ構造として実現する必要はなく、したがって、これらのモジュールの各種下位セットを、各種実装例において組み合わせるかそうでなければ再構成することができる。いくつかの実装例において、メモリ７０６は、任意に、先に述べてモジュールおよびデータ構造の下位セットを格納する。さらに、メモリ７０６は、任意に、先に述べていないその他のモジュールおよびデータ構造を格納する。
【００７６】
デバイスリーダーシップの協議の例
図４Ａ〜図４Ｂは、いくつかの実装例に従う、複数の電子デバイス（たとえば電子デバイス１９０）間におけるデバイスリーダーシップの協議の一例を示す。複数の電子デバイス１９０を有する動作環境（たとえば動作環境１００）において、この環境内のユーザが音声入力を行うと、複数の電子デバイス１９０のうちの１つ以上が、この音声入力を検出し受信する。電子デバイス１９０は、このユーザの音声入力に応答しこのユーザからのさらに他の音声入力を検出するためのリーダーを、これらの電子デバイスの中から決定する。
【００７７】
図４Ａは、ある動作環境（たとえば動作環境１００）における３つの音声起動電子デバイス１００２−１〜１００２−３（たとえば電子デバイス１９０）を示す。これらはすべてユーザ（図示せず）と同じ空間、たとえば同じ部屋の中にあってもよい。ユーザは音声入力を行い（たとえば発話する）（図示せず）、３つの電子デバイス１００２−１〜１００２−３は、この音声のサンプルを、異なる品質の程度またはレベルで検出し捕捉する。ある電子デバイスで捕捉された音声入力のサンプルの品質は、１つ以上の要素の影響を受ける可能性があり、この要素は、周囲の雑音、デバイスの能力、ユーザからのデバイスの距離および位置、空間内におけるデバイスの位置などを含むが、これらに限定されない。
【００７８】
いくつかの実装例において、電子デバイスは各々、自身が捕捉した音声入力のサンプルの品質のレベルを求める。品質レベルは、スコアまたはその他何らかの値で表すことができる。たとえば、図４Ａにおいて、電子デバイス１００２は各々、ユーザの音声入力のサンプルを捕捉し、そのサンプルのスコアを次のように求めている。電子デバイス１００２−１におけるサンプルのスコアは０．９８（スケールは０〜１、１は最高品質に相当する）、電子デバイス１００２−２におけるサンプルのスコアは０．３７，電子デバイス１００２−３におけるサンプルのスコアは０．６１である。いくつかの実装例において、電子デバイス１００２における認識品質モジュール５６６（図２Ｂ）は、捕捉されたサンプルの品質レベルを求める。いくつかの実装例において、音声サンプルの品質評価の基準は、たとえば、サンプルの音の大きさまたは振幅、雑音（たとえばクロストーク、シュー音（hissing））が存在するか否かおよび対応するレベル、ひずみ（たとえばエコー）が存在するか否かおよび対応するレベル、サンプルの周波数プロファイル等を含む。
【００７９】
電子デバイス１００２はそれぞれの品質スコアを互いに伝える。したがって、たとえば、電子デバイス１００２−１は、電子デバイス１００２−２および１００２−３から品質スコアを受信する。電子デバイス１００２−２は、電子デバイス１００２−１および１００２−３から品質スコアを受信する。電子デバイス１００２−３は電子デバイス１００２−１および１００２−２から品質スコアを受信する。電子デバイス１００２すべてが同一のローカルネットワーク（たとえばローカルネットワーク１０４、図１）上にある場合、電子デバイス１００２は、このローカルネットワークを介してスコアをやり取りする。たとえば、電子デバイス１００２は、その品質スコアを、ローカルネットワーク内でマルチキャストメッセージを送信することによってその他の電子デバイス１００２に送信する。電子デバイス１００２のうちの少なくとも１つがこのローカルネットワーク上にない場合、スコアはサーバシステム１４０に送信され、音声アシスタントサーバ１１２のデバイスリーダーシップモデレータモジュール７８０がこのスコアを電子デバイス１００２に配信する。これに代わるものとしては、デバイスリーダーシップモデレータモジュール７８０が、受信したスコアに基づいてデバイスのうちどのデバイスをリーダーにするかを判断し、その判断結果をデバイスに送信する。いくつかの実装例において、電子デバイス１００２は、音声アシスタントサーバ１１２およびレジストリ１１８を通してお互いを発見しその位置を発見する（たとえばデバイス１００２は、音声アシスタントサーバ１１２に定期的に連絡し、デバイスレジストリ１１８内の情報に基づいて同一のユーザアカウントに対応付けられたその他のデバイスについて知らされる）。
【００８０】
いくつかの実装例において、複数の電子デバイス１００２のうちの１つの電子デバイスのみが音声入力のサンプルを捕捉した場合（たとえばその他の電子デバイス１００２はユーザから遠すぎて音声入力を検出できなかった場合）、音声入力サンプルを捕捉したデバイスがリーダーであると判断される。いくつかの実装例において、ある電子デバイス１００２が音声入力のサンプルを捕捉しなかった場合（たとえば、このデバイスはユーザから遠すぎて音声入力を検出できなかった場合）、このデバイスの、音声入力の品質スコアは、０．００またはゼロスコアであり、「０．００」またはゼロスコアのデバイスは、リーダーの競合から除外される。
【００８１】
電子デバイス１００２は、その他の電子デバイス１００２からスコアを受信すると、自身の品質スコアを、その他の電子デバイスのスコアと比較する。電子デバイスは、自身のスコアが電子デバイスのスコアのうちで最も良い（たとえば最高）ではない場合、音声入力に対するレスポンス（たとえばサーバシステム１４０が生成したレスポンス）の出力を、（たとえばスピーカ５２０の電源を落とすまたは「オフにする」ことによって）差し控える。電子デバイスは、自身のスコアが電子デバイスのスコアのうちで最も良い場合、「リーダー」であると判断される。いくつかの実装例において、リーダーはまた、ユーザからのその後の音声入力を引き続き検出して処理するかまたは前処理し（音声入力を処理しレスポンスを生成するのがリーダーであろうとなかろうと、リーダーは、音声入力を、レスポンスを生成する音声アシスタントサーバ１１２に送信するために前処理する、または、リーダーは単純に音声入力を音声アシスタントサーバ１１２に送信し音声アシスタントサーバ１１２がレスポンスを生成する）、リーダーでない電子デバイスは、ユーザからのその後の音声入力の受信、検出、および処理を差し控える。
【００８２】
いくつかの実装例において、リーダーの決定は、デバイスを起動するためのユーザの音声入力（たとえばホットワードを含む音声入力）に応答して行われる。いくつかの実装例において、リーダーの決定は、ユーザからの各音声入力に応答して行われてもよく、または、ユーザからの予め定められた数の音声入力ごとに（たとえばユーザからの５つの音声入力ごとに）行われてもよい。このようにして、リーダーシップの決定を更新することにより、変化する状況（たとえばユーザが動き回っている、デバイスの周囲の雑音レベルが変動する等）に対応することができる。
【００８３】
いくつかの実装例において、品質スコアに基づくリーダーの決定は、追加の基準に基づいて無効にされてもよい。すなわち、あるデバイスは、品質スコアのみに基づいて、そうでなければリーダーと判断されないであろう場合であっても、リーダーであると判断されることがある。追加の基準は、たとえば、音声入力における要求またはコマンドのタイプ、および、デバイスの状態を含み得る。たとえば、音声入力が、ビデオの再生または再生の停止を求める要求を含む場合、この要求は、ビデオを再生できる電子デバイス１００２（たとえば、スマートＴＶ、キャストデバイス）に特別な関連があり、オーディオ専用のデバイス１００２（たとえばサウンドシステム、ポータブルスピーカ）には特に関連はない。要求が、ある電子デバイス１００２に特別な関連がある場合、この電子デバイス１００２は、このデバイスの品質スコアが最高でなくても、リーダーであると判断することができる。いくつかの実装例において、要求が、空間内の複数の電子デバイスに特別な関連がある場合、この要求が特別な関連がある複数のデバイスのうちで品質スコアが最も良いものがリーダーであると判断される。別の例として、音声入力におけるコマンドが、デバイス状態変更のコマンドである場合（たとえば「画面オフ」）、このコマンドを適用できる状態のデバイス（たとえば、現在画面がオンであるスマートＴＶ）を、品質スコアが低くてもリーダーであると判断することができ、コマンドが適用できない状態のデバイス（たとえば画面が既にオフにされているスマートＴＶ）は、リーダーシップに関して除外される。さらに、要求／コマンドが、デバイス１００２のうちのいずれにも特別な関連がない場合（たとえば、デバイス１００２がオーディオ専用の音声インターフェイスデバイスであって音声インターフェイスサーバ１１２を介して非音声インターフェイスキャストデバイスと通信でき、コマンドがキャストデバイスを介してビデオを再生することを求める要求である場合）、リーダーシップは、先に述べたように品質スコアに基づいて判断される。いくつかの実装例において、マルチステップリーダーシップ判定として複数のリーダーシップ判定基準（たとえば上記品質スコア、コマンドの関連性、およびデバイスの状態）を実現してもよく（たとえば、コマンドの関連性およびデバイス状態を判断することによってリーダーシップ候補を絞ってから、品質スコアに基づいてリーダーを決定し、最高スコアのデバイスを決定してから、コマンドの関連性またはデバイス状態の基準がその他のデバイスに適用できるか否かを確認する）、または重み付け判定として複数のリーダーシップ判定基準を実現してもよい（たとえば各基準は重み付けされたスコアで説明され重み付けされる）。
【００８４】
図４Ｂは、図４Ａにおける電子デバイス１００２間のデバイスリーダーシップ協議の結果を示す。電子デバイス１００２−１は、その品質スコアが３つの電子デバイス１００２のうちで最も良いと判断し、ユーザに対するレスポンスの出力においてリーダーシップを取る。電子デバイス１００２−２および１００２−３は、それぞれの品質スコアが３つの電子デバイス１００２のうちで最も良いスコアではないと判断し、それぞれのスピーカ５２０の電源を落とし、ユーザに対するレスポンスの出力を差し控える。
【００８５】
いくつかの実装例において、リーダーではない電子デバイス１００２はまた、それぞれのマイク５１６の電源を落とし、したがって、ユーザからのさらに他の音声入力を検出しない。リーダーデバイスは、ユーザからのさらに他の音声入力の検出および処理においてもリーダーである。いくつかの実装例において、リーダーではない電子デバイス１００２は、それぞれのマイク５１６の電源を維持し、ユーザからのさらに他の音声入力の再検出を支援する。たとえば、リーダーデバイスおよびリーダーでないデバイスはそれぞれ、音声入力のサンプルを受信して記録し、音声アシスタントサーバ１１２に送信する。音声アシスタントサーバ１１２は、これら複数のサンプルを一緒に使用することによって音声入力をより上手く処理することができる（たとえば、これらのサンプルを集約する、処理のために最良のサンプルを選択する、各々の最も良い部分を得るためにサンプル同士を比較する）。
【００８６】
いくつかの実装例において、電子デバイス１００２は、ユーザからの各音声入力後に、上記リーダーシップ決定プロセスを繰り返す。いくつかの実装例において、電子デバイス１００２は、上記リーダーシップ決定プロセスを、予め定められた数の音声入力ごとに繰り返す（たとえば、５もしくは１０の音声入力ごとに、何度もリーダーを決定する）。
【００８７】
いくつかの実装例において、電子デバイス１００２のうちの１つ以上は、リーダーの決定後に視覚レスポンスを出力する（たとえば音声入力に対するオーディオレスポンスとともに出力し、決定したリーダーは、自身がリーダーであることを示す通知または予め定められたＬＥＤ光パターンを表示する）。
【００８８】
いくつかの実装例において、電子デバイス１００２は各々、ユーザの声を聴いているとき（たとえばユーザの音声入力を受信し検出しているとき）は常に、聴いていることを示す視覚表示（たとえば予め定められたＬＥＤ光パターン）を出力し、その後、リーダーデバイスのみが、リーダーシップ決定ごとに、音声入力に対するレスポンスを出力する。たとえば、ユーザが音声入力を発話しているとき、電子デバイス１００２−１〜１００２−３は、この音声入力を聴きつつ、聴いていることを示す視覚表示を示し、その後は、リーダーデバイス１００２−１のみが、リーダーシップ決定ごとにレスポンスを出力する。
【００８９】
いくつかの実装例において、電子デバイス１００２は、第６２／３３６，５６６号出願の図４Ｇ（下記図８Ｄとして複製）に示されるパターンのうちの１つのような特徴的な視覚パターンを、ＬＥＤのグループを用いて表示することにより、聴いていることを示す。視覚パターンは静的（変化しない）でもよく、または動的（個々のＬＥＤの色、輝度、デューティサイクルなどの変化によって動いている印象を与える）であってもよい。いくつかの実装例において、電子デバイス１００２は、そのＬＥＤを用いて別の特徴的な視覚パターンを表示することにより、聴いている複数のデバイスのうちで自身がリーダーであることを示す。同様に、どのデバイスがリーダーであるべきかの判断のための協議に関わる、聴いている複数のデバイスは、それぞれのＬＥＤを用いて別の特徴的な視覚パターンを表示することにより、協議が進行中であることを示すことができる。
【００９０】
マルチユーザパーソナライゼーションのためのプロセスの例
図５は、いくつかの実装例に従う、ユーザの音声入力に応答する方法１１００を示すフロー図である。方法１１００は、１つ以上のマイクと、スピーカと、１つ以上のプロセッサと、１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備える電子デバイス１９０において実現される。
【００９１】
電子デバイス１９０は、１つ以上のマイク５１６を介してユーザからの第１の音声入力を受信する（１１０２）。電子デバイス１９０は、マイク５１６を介した第１の音声入力のサンプルを捕捉し記録する。いくつかの実装例において、第１の音声入力は、この音声入力が、予め定められたシンタックス内の予め定められた一組の単語およびフレーズに厳密に限定される必要がないという意味において、自由形式の音声入力であり、この音声入力はたとえば自然言語の音声入力であってもよい。
【００９２】
電子デバイス１９０は、第１の音声入力を、電子デバイス１９０に対応付けられた複数のユーザに対応付けられた音声モデルのセットと比較し、これらの音声モデルは、電子デバイスに合わせて訓練されたものである（１１０４）。ユーザ識別モジュール５６０は、記録された第１の音声入力のサンプルを、音声モデルデータ５５０内の音声モデルと比較する。音声モデルデータ５５０は、電子デバイス１９０に対応付けられたユーザドメイン内の１人以上のユーザ（たとえば電子デバイス１９０に対して登録されたユーザ）の音声モデルまたは音声フィンガープリントを含む。いくつかの実装例において、音声モデルは、音声モデル訓練モジュール５５４によって、電子デバイス１９０に合わせて訓練される。
【００９３】
上記比較に基づいて、電子デバイス１９０は、第１の音声入力が、複数のユーザのうちの第１のユーザに対応すると判断する（１１０６）。たとえば、ユーザ識別モジュール５６０は、第１の音声入力に最も一致する、音声モデルデータ５５０内の音声モデルを識別し、この一致度の識別に従って、第１の音声入力を発話しているユーザが、一致する音声モデルに対応するユーザであると判断する。いくつかの実装例において、ユーザ識別モジュール５６０はまた、音声モデルと音声入力との一致の品質または近さの信頼レベルまたはその他同様の何らかの基準を判断し、一致が最良であり信頼レベルが予め定められたしきい値を超える場合にのみ、一致を識別する。
【００９４】
電子デバイス１９０は、上記判断に従ってレスポンスを与える（１１０８）。いくつかの実装例において、電子デバイス１９０は、このレスポンスを、上記判断と第１の音声入力とに従って生成する。このレスポンスは、識別された第１のユーザのアイデンティティの表示を、第１のユーザが識別されたことを第１のユーザに知らせるために、含む。このレスポンスはまた、第１の音声入力における何らかの音声要求に対するレスポンスを含む。たとえば、電子デバイス１９０を起動するためのホットワード音声入力に応答して、電子デバイス１９０は、第１のユーザの名前を含む音声挨拶（たとえば、「デイビッドこんにちは」、「メアリーおはよう」）を生成して与える（たとえば出力する）。レスポンスは、音声出力および／またはある動作の実行を求める、別のデバイスに対する命令を含んでいてもよい。動作実行命令の場合は、識別されたユーザに関してその動作が実行されるよう、識別されたユーザのアイデンティティの表示が含まれる。たとえば動作が、会員制音楽配信サービスからの音楽の再生である場合、デバイスは、識別されたユーザが会員である音楽配信サービスからの音楽を再生する。
【００９５】
いくつかの実装例において、レスポンスは可聴音声出力であり、レスポンスを与えることは、可聴音声出力を出力することを含む。電子デバイス１９０は、可聴音声出力をスピーカ５２０を通して出力する。
【００９６】
いくつかの実装例において、電子デバイスは、第１の音声入力に基づいてユーザ要求を判断し、判断したユーザ要求に従ってレスポンスを生成する。いくつかの実装例において、上記判断および第１の音声入力に従ってレスポンスを生成することは、これらの判断する動作および生成する動作を含む。音声入力の話し手を識別することに加えて、電子デバイス１９０は、音声入力内のユーザ要求（たとえばメディア再生要求、ニュースの見出しを求める要求、電子メール読み上げ要求等）を判断し、この要求に応じたレスポンスを生成する（たとえば要求の可聴確認、要求に応えるのに必要なより多くの情報を求める、ユーザに対する可聴問い合わせ）。
【００９７】
いくつかの実装例において、判断されたユーザ要求は、電子デバイスの起動を求める要求を含み、レスポンスは、可聴挨拶を含む。この挨拶は、判断された第１のユーザのアイデンティティの表示を含む。音声入力がホットワードを含む場合（すなわち、音声入力が電子デバイス１９０の起動を求める要求である場合）、生成されたレスポンスは、第１のユーザのアイデンティティを含む可聴挨拶（たとえば「おはよう、デイブ」）を含む。この挨拶は、電子デバイス１９０が起動されたことを示すとともに、電子デバイス１９０が識別したユーザのアイデンティティを示す。
【００９８】
いくつかの実装例において、判断されたユーザ要求は情報を求める要求を含み、判断した要求に従ってレスポンスを生成することは第１のユーザに関連する要求された情報を取得することを含む。要求が情報を求める要求である場合（たとえばユーザの電子メールを読み上げることを求める要求、ユーザの近づいているカレンダーイベントを大きな声で話すことを求める要求）、電子デバイス１９０は、識別されたユーザの情報（たとえばユーザの電子メール、ユーザのカレンダー）にアクセスしてレスポンスを生成する。いくつかの実装例において、判断された第１のユーザに関する要求された情報を取得することは、第１のユーザに対応付けられたアカウントにアクセスすることを含み、レスポンスについて識別されたユーザの情報を取得するために、電子デバイス１９０は、ユーザのアカウント（たとえばユーザの電子メールアカウント、ユーザのカレンダーアカウント）にアクセスする。電子デバイス１９０において、ユーザアカウント情報は、音声デバイス設定５４６に格納することができる。
【００９９】
いくつかの実装例において、電子デバイス１９０は、第２の音声入力を受信し、第２の音声入力を音声モデルのセットと比較し、この比較に基づいて、第２の音声入力は複数のユーザのうちの第２のユーザに対応すると判断し、第２の音声入力が第２のユーザに対応するという判断に従ってレスポンスを与える。いくつかの実装例において、電子デバイスは、上記判断と第２の音声入力とに従ってレスポンスを生成する。電子デバイス１９０に対応付けられた、異なるユーザが、電子デバイス１９０に対して音声入力を発話した場合、電子デバイス１９０は、第１のユーザの識別と同様のやり方でこの異なるユーザを識別する、すなわち、この異なるユーザの音声入力を音声モデルと比較し、最も一致するものを発見する。異なるユーザを識別したので、電子デバイス１９０は、この新たな識別に基づいてレスポンスを生成することができる。このように、電子デバイス１９０は、音声入力を音声モデルと比較しこの比較に基づいて話し手であるユーザを識別することにより、対応付けられたユーザ間で切り替えることができ、そのため、ユーザは、電子デバイス１９０に対し、対象をあるユーザから別のユーザに切り替えることを求めるコマンドを明確に発話する必要はない。
【０１００】
いくつかの実装例において、電子デバイス１９０は、第３の音声入力を受信し、第３の音声入力を音声モデルのセットと比較し、この比較に基づいて、第３の音声入力は複数のユーザのうちのどのユーザにも対応しないと判断し、第３の音声入力は複数のユーザのうちのどのユーザにも対応しないという判断に従い、電子デバイスの機能を制限する。電子デバイス１９０に対応付けられていないユーザが電子デバイス１９０に対する音声入力を発話した場合、電子デバイス１９０はこの音声入力を受信しユーザを識別しようと試みる。このユーザは電子デバイス１９０に対応付けられておらずしたがって音声モデルデータ５５０内に対応付けられた音声モデルはないので、電子デバイス１９０は、このユーザな未確認ユーザであると判断する。この未確認ユーザについて、電子デバイス１９０は、個人または機密情報がアクセスされるのを防止するために、その機能を制限する。たとえば、電子デバイス１９０は、未確認ユーザからの、非機密または非個人情報を含む要求（たとえば、スポーツのスコア、ニュース、株、天気）のみに対して作用することができる。いくつかの実装例において、電子デバイス１９０は、電子デバイス１９０および音声アシスタントサービスの機能への、未確認ユーザのアクセスを（たとえば未確認ユーザの音声入力を無視する、または、このユーザは認証されないことを示すレスポンスで応答することによって）拒否することができる。いくつかの実装例において、未確認ユーザに対する機能制限は、デバイスの設定（たとえば音声デバイス設定５４６）に基づく。デバイスの所有者は、たとえば、未確認ユーザについて、機能の全体を制限するのかまたは個人もしくは機密情報を含まない機能のみにするかを、設定することができる。
【０１０１】
いくつかの実装例において、電子デバイスはディスプレイを含み、判断した第１のユーザのアイデンティティの表示をディスプレイ上に示す。電子デバイス１９０がディスプレイ５２４を含む場合、電子デバイス１９０は、ディスプレイ５２４上に、識別されたユーザのアイデンティティを示す（たとえば識別されたユーザの名前を示す、識別されたユーザの名前とともに挨拶を示す、識別されたユーザの写真、アバター、または識別されたユーザに対応付けられたその他の画像を示す）ことにより、電子デバイス１９０が音声入力の話し手を識別したことを示すとともに、ユーザに対してこの識別を検証する機会を与えることができる。
【０１０２】
いくつかの実装例において、電子デバイスはディスプレイを含み、判断した第１のユーザに対応付けられた視覚ユーザインターフェイスをディスプレイ上に表示する。電子デバイス１９０がディスプレイ５２４を含む場合、電子デバイス１９０は、識別されたユーザによって特定される視覚ユーザインターフェイス（たとえば、識別されたユーザに対応するテーマを有するユーザインターフェイス）を表示することができる。いくつかの実装例において、電子デバイス１９０は、ＬＥＤ５２２上に、識別されたユーザに対応付けられたパターンを表示する。
【０１０３】
いくつかの実装例において、電子デバイス１９０は、ステップ１１０２と同様に、音声入力を受信し（たとえば音声入力のサンプルを捕捉）、この音声入力を音声アシスタントサーバ１１２に送信する。音声アシスタントサーバ１１２は、ステップ１１０４および１１０６と同様に、音声入力を、電子デバイス１９０に対応付けられた複数のユーザに対応付けられた音声モデル（たとえばユーザ音声プロファイル７４４における音声モデル）のセットと比較し、この比較に基づいて、音声入力を発話したユーザのアイデンティティを判断する。音声アシスタントサーバ１１２は、音声入力に対するレスポンスを生成し、生成したレスポンスを電子デバイス１９０に送信し、電子デバイス１９０はこのレスポンスを出力する。いくつかの実装例において、音声アシスタントサーバ１１２は、ユーザを識別し、ユーザ識別結果を電子デバイス１９０に送信し、電子デバイス１９０は音声アシスタントサーバ１１２から受信した識別結果に従ってレスポンスを生成し出力する。
【０１０４】
いくつかの実装例において、電子デバイス１９０は、ステップ１１０２と同様に、音声入力を受信し（たとえば音声入力のサンプルを捕捉）、音声入力に対する前処理を実行し、前処理された音声入力を音声アシスタントサーバ１１２に送信する。前処理は、ステップ１１０４および１１０６と同様に、発話したユーザの識別を含み、識別結果は、音声アシスタントサーバ１１２に対する音声入力に添付される。これに代わるものとして、ユーザの識別は音声アシスタントサーバ１１２によって実行される。音声アシスタントサーバ１１２は、前処理された音声入力を受信し、発話したユーザの識別を（ステップ１１０４および１１０６と同様に）電子デバイス１９０が既に行っていなければ、実施し、音声入力に対するレスポンスを生成し、生成したレスポンスを電子デバイス１９０に送信し、電子デバイス１９０はこのレスポンスを出力する。
【０１０５】
いくつかの実装例において、電子デバイス１９０は、音声入力を受信し（たとえば音声入力のサンプルを捕捉）、この音声入力を音声アシスタントサーバ１１２に送信するか、または前処理を実行して前処理された音声入力を音声アシスタントサーバ１１２に送信する。ステップ１１０４および１１０５と同様に、音声アシスタントサーバ１１２は、この音声入力を、電子デバイス１９０に対応付けられた複数のユーザに対応付けられた音声モデル（たとえばユーザ音声プロファイル７４４における音声モデル）のセットと比較し、この比較に基づいて、音声入力を発話したユーザのアイデンティティを判断する。音声アシスタントサーバ１１２は、音声入力に対するレスポンスを生成し、生成したレスポンスを電子デバイス１９０に送信し、電子デバイス１９０はこのレスポンスを出力する。いくつかの実装例において、音声アシスタントサーバ１１２は、ユーザを識別し、ユーザの識別結果を電子デバイス１９０に送信し、電子デバイス１９０は、音声アシスタントサーバ１１２から受信した識別結果に従ってレスポンスを生成し出力する。
【０１０６】
上述のように、話し手であるユーザを、音声モデルまたは音声フィンガープリントを音声入力と突き合わせることによって識別する。いくつかの実装例において、電子デバイス１９０は、音声モデルまたは音声フィンガープリントを捕捉し訓練するためのプロセスを実行するように構成される。たとえば、ユーザを電子デバイス１９０に対応付ける（たとえばこのデバイスに登録する）ときに、電子デバイス１９０（たとえば音声モデル訓練モジュール５５４）は、段階的なプロセスを通してユーザを電子デバイス１９０に対応付けられるように導き、このユーザの音声モデルを捕捉し訓練することができる。このプロセスの間、電子デバイス１９０は、音声モデルを生成し訓練するために、１つ以上の単語またはフレーズ（たとえばホットワード、複数の異なる音素を含むフレーズまたはセンテンス）を話すようユーザを促してもよい。音声モデル訓練モジュール５５４は、音声モデル捕捉・訓練プロセスの状態をユーザに対して示すために、各種視覚パターンをＬＥＤ上に点灯させるよう、ＬＥＤ制御モジュール５４０に指示することができる。いくつかの実装例において、電子デバイス１９０は、訓練された音声モデルを音声モデルデータ５５０に格納し、任意に、訓練された音声モデルを、（たとえばユーザ音声プロファイル７４４に）保存するために音声アシスタントサーバ１１２に送信する。
【０１０７】
いくつかの実装例において、所定のユーザは、このユーザが対応付けられている電子デバイス１９０ごとに音声モデルを有する。それぞれのデバイス１９０における音声モデルは、対応するデバイスに合わせて訓練されるので、対応するデバイスおよびそれぞれのデバイスの周囲の環境を考慮する。
【０１０８】
いくつかの実装例において、音声モデル訓練プロセスは、電子デバイス１９０とともに音声アシスタントサーバ１１２によって実行される。たとえば、あるユーザをある電子デバイス１９０に対応付けるとき、音声アシスタントサーバ１１２における音声モデル訓練モジュール（図示せず）が、電子デバイス１９０に対して命令およびオーディオ出力を送信する。電子デバイス１９０は、この命令を実行しオーディオ出力を出力することにより、上記音声モデル訓練モジュール５５４が実行する訓練プロセスと同様の訓練プロセスを通してユーザを導く。電子デバイス１９０は、ユーザが訓練プロセスに対して発話した音声入力を捕捉し、捕捉した音声入力を音声アシスタントサーバ１１２に送信し、音声アシスタントサーバ１１２は、音声モデルを生成しユーザ音声プロファイル７４４に格納する。いくつかの実装例において、音声アシスタントサーバ１１２は、（たとえば音声モデルデータ５５０に）格納するためおよびローカルで使用するために、電子デバイス１９０に対応付けられたユーザの音声モデルを電子デバイス１９０に送信する。
【０１０９】
いくつかの実装例において、あるユーザのための音声モデルが生成され訓練されると、このユーザのための認証トークンも生成される。認証トークンは、音声アシスタントサーバ１１２に対してユーザを認証する。話し手の音声入力を、さまざまなユーザに対応付けられた音声モデルと突き合わせる。この話し手の音声入力について一致する音声モデルが発見されると、一致する音声モデルに対応付けられたユーザアカウントのための認証トークンが使用される。いくつかの実装例において、認証トークンは前もって生成されるが、最初はどの音声モデルにも対応付けられていない。訓練プロセスは、訓練プロセスの結果として訓練された音声モデルを、予め生成された認証トークンに対応付ける。いくつかの実装例において、電子デバイス１９０が音声入力の話し手を識別した後に、音声入力（またはユーザの要求と、音声入力から求めた関連するパラメータとを含むデータ）を、話し手に対応付けられた認証トークンとともに、音声アシスタントサーバ１１２に送信し、認証トークンは、音声アシスタントサーバ１１２に対して話し手を認証する。いくつかの実装例において、話し手は、いずれかの話し手に対して許可を与えたユーザの認証トークンに対応付けられてもよい。たとえば、電子デバイス１９０に対応付けられたユーザは、このユーザのアカウントを、自身の音楽サービスログインクレデンシャルを誰でも使用できるように構成することにより、その他のユーザが、ユーザのデバイス１９０の近くにある接続されたどの出力デバイス（たとえばスピーカ）にもアクセスできるようにしてもよい。
【０１１０】
いくつかの実装例において、電子デバイス１９０は、話しているユーザを、この話しているユーザに対応付けられた近傍のキーデバイスを検出することによって識別する（たとえばBluetoothローエナジーまたは超音波ＲＦを用いて）。
【０１１１】
いくつかの実装例において、コンテンツホスト１１４は、音声入力に対する可聴レスポンスを生成する。たとえば、音声入力は、ユーザに対応付けられた銀行口座の残高を求める要求を含むことがある（たとえば「私のChase銀行の口座の残高は？」）。このような音声入力に対し、電子デバイス１９０または音声アシスタントサーバ１１２は、上述のように話しているユーザを識別する。ユーザを識別し銀行口座情報を（たとえばユーザデータ７４２から）取得した後に、電子デバイス１９０または音声アシスタントサーバ１１２は、口座残高についてのクエリを（たとえばアプリケーションプログラミングインターフェイス（ＡＰＩ）を通して）、この銀行口座がある場所である（たとえば銀行のデータベースシステム）、銀行に対応付けられたコンテンツホスト１１４に送信する。銀行コンテンツホストは、そのデータベースから残高を取得し、要求に応じて可聴レスポンスを生成する。銀行コンテンツホストは、可聴レスポンスを電子デバイス１９０または音声アシスタントサーバ１１２（これは可聴レスポンスを電子デバイス１９０に送信する）に送信し、電子デバイス１９０は可聴レスポンスを出力する。このようにして、数値形式の口座データのネットワーク上における送信およびデバイスへの格納が減じられ、それによってユーザデータのセキュリティと機密性が促進される。
【０１１２】
デバイスリーダーシップ協議のプロセスの例
図６は、いくつかの実装例に従う、複数の音声インターフェイスデバイスの中からデバイスリーダーシップを協議により決定する方法１２００を示すフロー図である。この方法１２００は、２つ以上の電子デバイス１９０（電子デバイス１００２）のうちのある電子デバイス（たとえばデバイス１００２−１、１００２−２、または１００２−３）において実現され、２つ以上の電子デバイスは各々、１つ以上のマイクと、スピーカと、１つ以上のプロセッサと、１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを含む。
【０１１３】
電子デバイス１９０が音声入力を検出する（１２０２）。電子デバイス１９０は、マイク５１６を介したユーザからの音声入力のサンプルを捕捉し記録する。
【０１１４】
電子デバイス１９０は、検出した音声入力の品質スコアを求める（１２０４）。電子デバイス１９０は、捕捉した音声入力サンプルの、スコア、格付け、または品質のその他何らかの基準を求める。サンプルの品質は、デバイスからユーザまでの距離、ユーザが音声入力を発話する音量、周囲の環境および雑音、デバイスの能力などを含む、複数の要素の影響を受ける可能性がある。いくつかの実装例において、音声サンプルの品質の評価基準は、たとえば、サンプルの音の大きさまたは振幅、雑音（たとえばクロストーク、シュー音）があるか否か、および対応するレベル、対応するひずみ（たとえばエコー）があるか否か、および対応するレベル、サンプルの周波数プロファイル等を含む。
【０１１５】
電子デバイス１９０は、複数の電子デバイスのうちの他のデバイスに、品質スコアを伝え（１２０６）、複数の電子デバイスのうちの他のデバイスによる音声入力の検出について他のデバイスが生成した品質スコアを受信する（１２０８）。電子デバイス１９０は、その音声入力サンプルのスコアを、複数の電子デバイスのうちの他のデバイスに送信し、他のデバイスそれぞれの音声入力のサンプルのスコアを、他のデバイスから受信する。
【０１１６】
第１の電子デバイスが生成した品質スコアが、音声入力について生成した品質スコアおよび受信した品質スコアのうちで最も高いという判断に従い、電子デバイスは、検出された音声入力に対する可聴レスポンスおよび／または視覚レスポンス（たとえば通知またはＬＥＤの光パターン）を出力し、複数のデバイスのうちの他のデバイスは、検出した音声入力に対する可聴レスポンスの出力を差し控える（１２１０）。いくつかの実装例において、複数のデバイスのうちで音声入力のスコアが最も高い（またはより一般的には最も良いスコア）のデバイスは、任意にその音声入力サンプルを前処理し、音声入力サンプルまたは前処理した音声入力サンプルを、音声アシスタントサーバ１１２に送信し、音声アシスタントサーバ１１２は、音声入力に対する可聴出力（たとえばユーザ要求の音声確認、ユーザが要求した情報の読み上げ）を含むレスポンスを生成し、デバイスに送信する。これに代わるものとしては、最高スコアを有するデバイスが、音声入力に対するレスポンスを生成する。いずれの状況においても、最高スコアを有するデバイス（たとえばデバイス１００２−１）がレスポンスを出力し、スコアがそれよりも低いその他のデバイス（たとえばデバイス１００２−２、１００２−３）は、レスポンスを生成しない。いくつかの実装例において、リーダーである電子デバイス（たとえばこの例では最高スコアを有するデバイス）はまた、ユーザからのその後の音声入力の処理または前処理についてもリーダーである。
【０１１７】
第１の電子デバイスが生成した品質スコアは、複数の電子デバイスが生成した音声入力の品質スコアのうちで最高ではないという判断に従い、電子デバイス１９０は、検出した音声入力に対するレスポンスの出力を差し控える。あるデバイスが、このデバイスの音声入力のスコアがデバイス（たとえばデバイス１００２−２、１００２−３）のうちで最高ではないと判断した場合、このデバイスは、音声入力に対するレスポンスを出力しない。たとえば、スコアがより低いデバイスはそのスピーカ５２０の電源を落とす。いくつかの実装例において、スコアがより低いデバイスは、それぞれのマイク５１６の電源も落として、最高スコアのデバイスのみがその他の音声入力を検出するようにする。いくつかの実装例において、第１の電子デバイスが生成した音声入力の品質スコアは、複数の電子デバイスが生成した音声入力の品質スコアのうちで最高ではないという判断に従い、電子デバイス１９０は、検出した音声入力に対する可聴レスポンスの出力を差し控え、視覚レスポンス（たとえばこのデバイスはリーダーと判断されなかったことを視覚的に示すもの）を出力してもよい。
【０１１８】
いくつかの実装例において、複数の電子デバイスはローカルネットワークを介して通信可能に結合され、通信および受信はこのローカルネットワークを介して行われる。電子デバイス１９０は、ローカルネットワーク（たとえばローカルネットワーク１０４）を介して通信可能に結合され、このローカルネットワークを介してそれぞれのスコアを互いに送信することができる。たとえば、あるデバイスはローカルネットワークを介してそのスコアをマルチキャストまたはブロードキャストしてもよい。
【０１１９】
デバイスのうちの少なくとも１つがローカルネットワーク上にない場合、これらのデバイスは、それぞれのスコアを音声アシスタントサーバ１１２に送信すればよい。いくつかの実装例において、デバイスリーダーシップモデレータモジュール７８０は、受信したスコアをデバイスに送信し、デバイスは、それぞれのスコアが最高であるか否かを判断する。いくつかの実装例において、デバイスリーダーシップモデレータモジュールは、どのスコアが最も高いかを判断し、この判断結果をデバイスに送信する。いくつかの実装例において、ハブデバイスが、デバイスリーダーシップモデレータモジュール７８０と同様のモジュールを含み同様の役割を果たしてもよい。
【０１２０】
いくつかの実装例において、品質スコアは、音声入力の検出の信頼レベルを含み、品質スコアは、音声入力サンプルの信頼レベルの値である。いくつかの実装例において、品質スコアは、音声入力の検出の信号対雑音の格付けを含み、品質スコアは、音声入力サンプルの信号対雑音の格付けまたはその値（たとえば信号対雑音比）である。
【０１２１】
いくつかの実装例において、電子デバイス１９０は、音声入力におけるコマンドを認識し、このコマンドのタイプが第１の電子デバイスに関連するという判断に従って、検出した音声入力に対する可聴および／または視覚レスポンスを出力する。音声入力におけるコマンドまたは要求が、音声入力を検出した複数のデバイスのうちのあるデバイスに特別の関連があると認識された場合、このデバイスが、コマンドが特別に関連するこのデバイスの音声入力のスコアが複数のデバイスのうちで最高でなくても、音声入力に対するレスポンスを出力し、その他のデバイスはレスポンスの出力を差し控える。特別な関連があるコマンドまたは要求の例は、（たとえばキャストまたはＴＶデバイスに対する）ビデオ再生要求および（たとえばオーディオシステムまたはスピーカシステムに対する）音楽再生要求を含む。加えて、コマンドまたは要求は、ユーザが要求を叶えたい特定のデバイスを識別する場合に、この特定のデバイスに対して特別な関連を有し得る（たとえば「私の寝室のＴＶでビデオを再生」というコマンドは、寝室のＴＶデバイスを明確に特定しているので、このＴＶデバイスに特別な関連がある）、または、コマンド／要求が、デバイスの現在の状態に適用可能なデバイス状態パラメータを含む場合に、このデバイスに対して特別な関連を有し得る（たとえば「画面オフ」コマンドは、その画面がオンであるデバイスに関連があり、画面がないデバイスまたは画面オフのデバイスには関連がない）。
【０１２２】
このようにして、複数のデバイスはそれぞれ音声入力のサンプルを捕捉し、どのサンプルが最良であるかが判断される。この判断に基づいて、複数のデバイスのうちの１つがこの音声入力およびユーザからのさらに他の音声入力に対して応答する。いくつかの実装例において、複数のデバイスは、各音声入力ごとに、または予め定められた数の音声入力ごとに、上記プロセスを繰り返す（たとえば５個の音声入力ごとに、もしくは１０個の音声入力ごとに、リーダーを再び決定する）。
【０１２３】
いくつかの実装例において、複数のデバイスは、音声入力を検出し、それぞれ捕捉した音声入力のサンプルを、音声アシスタントサーバ１１２に送信する。音声アシスタントサーバ１１２は、処理の対象として、これらのサンプルを集めるかまたは最良品質のサンプルを選択する、またはこれらのサンプルを比較することにより、各々の最良の部分を得る。いくつかの実装例において、複数のデバイスが音声入力を受信し検出している場合、これらのデバイスは各々、ユーザの声を聴いていることを示す視覚表示（たとえば予め定められたＬＥＤパターン）を示す。
【０１２４】
雑音緩和のためのプロセスの例
図７は、いくつかの実装例に従う音声インターフェイスデバイスの周囲の雑音を緩和する方法１３００を示すフロー図である。この方法１３００は、１つ以上のマイクと、スピーカと、１つ以上のプロセッサと、１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備える電子デバイス１９０において実現される。電子デバイス１９０は、音声ベースのアフォーダンス（たとえばホットワードを含む音声入力）を含む複数のアフォーダンスのうちのいずれかによって起動されるように構成される。
【０１２５】
電子デバイスは、この電子デバイスの周囲の環境の現在の雑音プロファイルを求める（１３０２）。電子デバイス１９０は、アイドル中に、雑音モジュール５５８（たとえば雑音判定モジュール５７２）を実行することにより、その周囲の雑音プロファイルを求めることができる。いくつかの実装例において、現在の雑音プロファイルを求めることは、雑音の雑音レベル（たとえば音量）を求め、周囲雑音を捕捉し処理することを含む。この処理は、たとえば、周囲雑音の周波数およびその他のパラメータを求めることを含み得る。
【０１２６】
電子デバイスは、雑音プロファイルが音声ベースのアフォーダンスを妨害するか否かを判断する（１３０４）。電子デバイス１９０は、求めた雑音プロファイルを、雑音プロファイルストア５７６内の雑音プロファイルと比較し、雑音プロファイルのパラメータを評価することにより、この雑音プロファイル（すなわち電子デバイス１９０の周囲の現在の雑音）が音声ベースのアフォーダンスを妨害するか否かを判断する。
【０１２７】
雑音プロファイルが音声ベースのアフォーダンスを妨害するという判断に従い、電子デバイス１９０は、電子デバイスを起動するために音声ベースのアフォーダンス以外の複数のアフォーダンスのうちのアフォーダンスを使用するようユーザに対して示唆する（１３０６）。この示唆は、ユーザを、電子デバイス１９０を起動するために音声ベースのアフォーダンス以外の別のアフォーダンスを使用するように導く。いくつかの実装例において、この示唆は、さらに、またはそうでなければ、周囲の雑音がホットワード認識を妨害するという表示を含む。たとえば、電子デバイス１９０はＬＥＤ５２２上に予め定められたパターンを表示してもよい。このパターンは、周囲の雑音が音声ベースのアフォーダンスを妨害することを示すとともに、ユーザはデバイスの起動のために別のアフォーダンス（たとえばボタン５１２を押す、タッチセンサアレイ５１４にタッチする、電子デバイス１９０に通信可能に結合されたスマートフォン等の別のデバイスを使用する）を使用すべきであるという示唆を示す。この表示／示唆は、ディスプレイ５２４に表示されてもよく、または、スピーカ５２０を通して音声または音として出力されてもよい。
【０１２８】
いくつかの実装例において、音声ベースのアフォーダンスは、発話されたホットワードを含む。音声ベースのアフォーダンスは、先に述べたようにユーザがホットワードを発話することによって電子デバイス１９０を起動することを含む。
【０１２９】
いくつかの実装例において、雑音プロファイルが音声ベースのアフォーダンスを妨害するか否かを判断することは、雑音プロファイルが、電子デバイスによって検出された音声入力におけるホットワードの認識に悪影響を及ぼすか否かを判断することを含む。電子デバイス１９０は、周囲の雑音（雑音プロファイルによって表される）が、電子デバイス１９０によるホットワードの検出／認識に悪影響を与えるか否か（たとえば、雑音は、ユーザのホットワードを含む音声入力をかき消すほど大きいか、雑音は、ホットワードを含むユーザの音声入力を妨害する周波数プロファイルを有するか、雑音はホットワードを含むユーザの音声入力を歪ませるか）を判断する。
【０１３０】
いくつかの実装例において、雑音プロファイルが音声入力におけるホットワードの認識に悪影響を及ぼすか否かを判断することは、雑音プロファイルを、電子デバイスに対応付けられたホットワード認識プロセスの雑音レベルしきい値と比較することを含む。電子デバイス１９０（または音声アシスタントサーバ１１２）の認識解析モジュール５６８は、（たとえば電子デバイス１９０がアイドル状態のときに）電子デバイス１９０のホットワード認識モジュール５６２を解析することにより、モジュールが使用するアルゴリズムまたはプロセスに対して雑音が問題を生じさせるであろう雑音しきい値を求める。これらのしきい値を保存しておいて、現在の雑音プロファイルと比較することにより、現在の雑音プロファイルがホットワード認識モジュール５６２に対して問題を引き起こすか否かを判断する。ホットワード認識モジュールの解析は、電子デバイス１９０に関するものであり、したがって、しきい値はデバイス間で異なり得る。
【０１３１】
いくつかの実装例において、雑音プロファイルが音声入力におけるホットワードの認識に悪影響を及ぼすか否かを判断することは、雑音プロファイルを音量レベルしきい値と比較することを含み、この音量レベルしきい値は、電子デバイスからの予め定められた距離に基づいて定められる。電子デバイス１９０（または音声アシスタントサーバ１１２）のユーザ音量しきい値モジュール５７０は、ユーザの音声入力の解析を実行することにより、予め定められた距離（たとえば、「典型的なユーザ距離」に基づく予め定められた距離であって、この距離を超えると音声入力は減衰する）に基づく判断に従い、ユーザが音声入力を発話するときの最大快適音量レベルを求める。
【０１３２】
いくつかの実装例において、雑音プロファイルが音声入力におけるホットワードの認識に悪影響を及ぼすか否かを判断することは、音声プロファイルを、電子デバイスに対応付けられた雑音プロファイルの予め定められたセットと比較することを含み、この雑音プロファイルの予め定められたセットにおける雑音プロファイルは、音声入力におけるホットワードの電子デバイスによる認識に悪影響を及ぼすことがわかっている。電子デバイス１９０は、雑音プロファイルを、ホットワードの検出を妨害した（たとえば雑音プロファイルストア５７６における）以前の雑音プロファイルと比較する。
【０１３３】
いくつかの実装例において、電子デバイスはボタンを含み、複数のアフォーダンスのうちの、音声ベースのアフォーダンス以外のアフォーダンスは、このボタンを起動することを含む。電子デバイス１９０は、物理押しボタン５１２を含み、ユーザは、ホットワードを含む音声入力を発話する代わりにボタン５１２を起動することによってデバイスを起動することができる。
【０１３４】
いくつかの実装例において、電子デバイスを起動するために複数のアフォーダンスのうちの音声ベースのアフォーダンス以外のアフォーダンスを使用するようユーザに示唆することは、複数のアフォーダンスのうちのボタンベースのアフォーダンスに対応する電子デバイス上のボタンを点灯することを含む。ボタン５１２は照明を含んでいてもよく（たとえば埋込みＬＥＤライト）、電子デバイス１９０は、ボタン５１２を点灯することにより、ホットワードを発話する代わりにボタン５１２を使用するようユーザに示唆してもよい。
【０１３５】
いくつかの実装例において、電子デバイスを起動するために複数のアフォーダンスのうちの音声ベースのアフォーダンス以外のアフォーダンスを使用するようユーザに対して示唆することは、予め定められた可聴音を出力することを含む。電子デバイス１９０は、スピーカ５２０を通して予め定められた音声または音（または一組の音声または音）を出力することにより、代わりのアフォーダンスを使用するようユーザに示唆してもよい。
【０１３６】
いくつかの実装例において、電子デバイスはディスプレイを含み、電子デバイスを起動するために複数のアフォーダンスのうちの音声ベースのアフォーダンス以外のアフォーダンスを使用するようユーザに対して示唆することは、上記示唆をディスプレイに表示することを含む。電子デバイス１９０は、ディスプレイ５２４に示唆メッセージを表示することにより、代わりのアフォーダンスを使用するようユーザに示唆してもよい。
【０１３７】
いくつかの実装例において、電子デバイスは１つ以上のＬＥＤライトを含み、電子デバイスを起動するために複数のアフォーダンスのうちの音声ベースのアフォーダンスと異なるアフォーダンスを使用するようユーザに対して示唆することは、上記１つ以上のＬＥＤを用いてこの示唆を表示することを含む。電子デバイス１９０は、ＬＥＤ５２２に予め定められた光のパターンを表示することにより、代わりのアフォーダンスを使用するようユーザに示唆してもよい。
【０１３８】
図８Ａおよび図８Ｂはそれぞれ、いくつかの実装例に従う音声起動電子デバイス１９０の正面図４００および背面図４２０である。電子デバイス１９０は、親密で魅力的なものとして設計され、住居の多くの場所に自然に馴染む。電子デバイス１９０は、１つ以上のマイク４０２と、フルカラーＬＥＤのアレイ４０４とを含む。フルカラーＬＥＤ４０４は、電子デバイス１９０の上面の下に隠しておいて、点灯されていないときはユーザから見えないようにすることができる。いくつかの実装例において、フルカラーＬＥＤのアレイ４０４は、物理的にリング状に配置される。さらに、電子デバイス１９０の背面側は、任意に、電源に接続されるように構成された電源コネクタ４０８を含む。
【０１３９】
いくつかの実装例において、電子デバイス１９０は、目に見えるボタンがないすっきりした外観を有し、電子デバイス１９０とのやり取りは、音声およびタッチジェスチャーに基づく。これに代わるものとして、いくつかの実装例では、電子デバイス１９０は、限られた数の物理ボタン（たとえばその背面側のボタン４０６）を含み、電子デバイス１９０とのやり取りはさらに、音声およびタッチジェスチャーに加えてこのボタンを押すことに基づく。
【０１４０】
いくつかの実装例において、電子デバイス１９０が簡素で低コストであることを考慮し、電子デバイス１９０は、全表示画面ではなくフルカラー発光ダイオード（ＬＥＤ）のアレイを含む。ＬＥＤ設計言語を採用することにより、フルカラーＬＥＤアレイの照明を構成し、電子デバイス１９０の異なる音声処理状態を示す各種視覚パターンを可能にする。このＬＥＤ設計言語は、色、パターン、および、フルカラーＬＥＤの固定セットに適用される特定の動きの文法で構成される。この言語の要素を組み合わせることにより、電子デバイス１９０の使用中の特定のデバイス状態を視覚的に表示する。いくつかの実装例において、フルカラーＬＥＤの照明は、その他重要な状態のうち、受動聴き取り状態と能動聴き取り状態とを明確に視覚的に表すことを意図している。フルカラーＬＥＤを配置することは、電子デバイス１９０の物理的制約に従っており、フルカラーＬＥＤのアレイは、特定の技術（たとえばＧｏｏｇｌｅアシスタント）に基づく第三者相手先商標製品製造会社（ＯＥＭ）が製造するスピーカにおいて使用することができる。
【０１４１】
フルカラーＬＥＤのアレイを、特定技術に基づく第三者ＯＥＭが製造するスピーカにおいて使用する場合、フルカラーＬＥＤおよびＬＥＤ設計言語は、ＯＥＭスピーカの対応する物理ユーザインターフェイスに適合するように構成される。この状況において、ＯＥＭスピーカのデバイス状態を同じ状態のままにしておく一方で、デバイス状態を表す特定の視覚パターンを変化させることができる（たとえば、フルカラーＬＥＤの色は異なっているが同様のアニメーション効果が出るように表示される）。
【０１４２】
音声起動電子デバイス１９０において、受動聴き取りは、電子デバイス１９０が、周囲環境から収集したオーディオ入力を処理するものの、このオーディオ入力を格納しないかまたはいずれかの遠隔サーバに送信しないときに、生じる。これに対し、能動聴き取りは、電子デバイス１９０が、周囲環境から収集した音声入力を格納し、および／またはこの音声入力を遠隔サーバと共有するときに、生じる。本願のいくつかの実装例において、電子デバイス１９０は、その周囲の環境におけるオーディオ入力を受動的に聴き取るだけであって、電子デバイス１９０のユーザのプライバシーを侵害しない。
【０１４３】
図８Ｃは、いくつかの実装例に従う音声起動電子デバイス１９０の平面図であり、図８Ｄは、いくつかの実装例に従う音声処理状態を示すためにフルカラーＬＥＤのアレイが示す６つの視覚パターンを示す。いくつかの実装例において、電子デバイス１９０は表示画面を含んでおらず、フルカラーＬＥＤは、全表示画面と比較すると簡素で低コストの視覚ユーザインターフェイスを提供する。フルカラーＬＥＤは、電子デバイスの上面の下に隠しておいて、点灯されていないときはユーザから見えないようにすることができる。図８Ｃおよび図８Ｄを参照して、いくつかの実装例において、フルカラーＬＥＤのアレイは物理的にリング状に配置される。
【０１４４】
その例が添付の図面に示される実装例を詳細に参照してきた。上記詳細な説明においては、記載されている各種実装例が十分に理解されるよう、数多くの具体的な詳細事項について説明している。しかしながら、記載されている各種実装例を、これらの具体的な詳細事項がなくても実施し得ることは、当業者には明らかであろう。その他の例において、周知の方法、プロシージャ、コンポーネント、回路、およびネットワークは、実装例の態様を不必要に曖昧にするのを避けるために、詳細には説明していない。
【０１４５】
また、本明細書において場合によっては第１、第２等の用語を各種要素の説明のために使用しているが、これらの要素はこれらの用語によって限定されてはならないことが理解されるであろう。これらの用語は、ある要素を別の要素と区別するためだけに使用される。たとえば、記載されている各種実装例の範囲から外れることなく、第１のデバイスを第２のデバイスと呼ぶこともでき、同様に、第２のデバイスを第１のデバイスと呼ぶこともできる。第１のデバイスも第２のデバイスも、デバイスの種類ではあるが、これらのデバイスは同一のデバイスではない。
【０１４６】
本明細書に記載のさまざまな実装例の説明で用いる術語は、特定の実装例のみを説明するためのものであり、限定を意図するものではない。記載されるさまざまな実装例の説明および以下の請求項で用いられる「ａ」、「an」、および「the」という単数形は、文脈が明確にそうでないと示していなければ、複数形も含むことが意図される。本明細書で用いる「および／または」という用語は、列挙される関連の項目のうち１つ以上のありとあらゆる可能な組み合わせを参照しかつこれを包含することも理解される。「含む」、「含んでいる」、「備える」、および／または「備えている」という用語は、この明細書で用いる場合、述べる特徴、整数、ステップ、動作、要素、および／または構成要素の存在を特定するが、１つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、および／またはその群の存在または追加を排除するわけではないことがさらに理解される。
【０１４７】
本明細書中で用いる「ならば」という用語は、任意に、文脈に依存して、「したとき」または「すると」または「判定することに応答して」または「検出することに応答して」または「という判定に従って」を意味すると解釈される。同様に、「判定されれば」または「［述べた条件またはイベントが］検出されれば」という句は、任意に、文脈に依存して、「判定すると」または「判定に応答して」または「［述べた条件またはイベントを］検出すると」または「［述べた条件またはイベントを］検出するのに応答して」または「［述べた条件またはイベントが］検出されるという判定に従って」を意味すると解釈される。
【０１４８】
上記システムが、ユーザに関する情報を収集するという状況において、個人情報（たとえばユーザの嗜好またはスマートデバイスの用途に関する情報）を収集し得るプログラムまたは特徴にオプトイン／からオプトアウトする機会をユーザに与えてもよい。加えて、いくつかの実装例において、特定のデータを、格納または使用する前に１つ以上のやり方で匿名化して、個人を特定できる情報を削除してもよい。たとえば、ユーザのアイデンティティを匿名化することで、個人を特定可能な情報を判定できないまたはユーザに対応付けられないようにし、ユーザの嗜好またはユーザのやり取りを、特定のユーザに対応付けるのではなく、一般化（たとえば、ユーザの人口統計に基づいて一般化）してもよい。
【０１４９】
さまざまな図面のうちのいくつかは特定の順序で複数の論理的段階を示すが、順序に依存しない段階を再度順序付けてもよく、他の段階を組み合わせたり切離したりしてもよい。何らかの再順序付けまたは他のグループ分けに具体的に言及がされるが、他のものが当業者には自明であり、そのため、本明細書中に提示される順序付けおよびグループ分けは代替策の網羅的な列挙ではない。さらに、ハードウェア、ファームウェア、ソフトウェア、またはその任意の組み合わせで段階を実現可能であることを認識すべきである。
【０１５０】
具体的な実装例を参照して、説明の目的のための以上の説明を記載した。しかしながら、例示的な上記の議論は、網羅的であることまたは開示される正確な形態に請求項の範囲を限定することを意図しない。上記教示に鑑みて多数の修正例および変更例が可能である。実装例は、請求項の基礎をなす原則およびそれらの実践的な適用例を最良に説明し、それにより、当業者が、企図される特定の用途に適するようなさまざまな修正例とともに実装例を最良に用いることができるようにするために選択された。
【図１】
2019535035.tif 000003
【図２Ａ】
2019535035.tif 000004
【図２Ｂ】
2019535035.tif 000005
【図３】
2019535035.tif 000006
【図４Ａ】
2019535035.tif 000007
【図４Ｂ】
2019535035.tif 000008
【図５】
2019535035.tif 000009
【図６】
2019535035.tif 000010
【図７】
2019535035.tif 000011
【図８Ａ】
2019535035.tif 000012
【図８Ｂ】
2019535035.tif 000013
【図８Ｃ】
2019535035.tif 000014
【図８Ｄ】
2019535035.tif 000015
【手続補正書】
【提出日】令和1年6月27日(2019.6.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
１つ以上のマイクと、スピーカと、１つ以上のプロセッサと、前記１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備え、複数の占有者に対応付けられた構造物に位置し、前記複数の占有者に情報を与えるように構成された、電子デバイスにおいて、
要求に対応付けられた第１の音声入力を受信するステップと、
前記第１の音声入力を受信したことに応じて、１つ以上の音声モデルにアクセスするステップとを含み、前記１つ以上の音声モデルはそれぞれ、前記複数の占有者のうちの異なる占有者に合わせて訓練され、
前記第１の音声入力を前記１つ以上の音声モデルと比較するステップと、
前記比較に基づいて、前記第１の音声入力は前記複数の占有者のうちのいずれかに対応するか否かを判断するステップと、
前記第１の音声入力は前記複数の占有者のうちの第１の占有者に対応するという判断に従い、前記第１の占有者を認証し、前記電子デバイスにおいてレスポンスを与えるステップと、
前記第１の音声入力は前記複数の占有者のうちのいずれにも対応しないという判断に従い、前記電子デバイスの機能を制限するステップとを含む、方法。
【請求項２】
前記要求は個人情報を求める要求であり、前記レスポンスは、前記第１の占有者に関する前記要求された個人情報を含み、前記電子デバイスの機能を制限するステップは、非個人情報に関係する要求のみに対処するステップを含む、請求項１に記載の方法。
【請求項３】
前記レスポンスは、数値形式の個人アカウントデータを含む可聴レスポンスであり、前記レスポンスを与えるステップは、
前記可聴レスポンスをコンテンツホストから受信するステップと、
前記可聴レスポンスを出力するステップとを含む、請求項１〜２のいずれか１項に記載の方法。
【請求項４】
前記第１の音声入力に基づいて前記要求を判断するステップと、
前記判断した要求に従って前記レスポンスを生成するステップとをさらに含む、請求項２に記載の方法。
【請求項５】
前記判断した要求は、前記電子デバイスを起動することを求める要求を含み、
前記レスポンスは可聴挨拶を含み、前記挨拶は、前記判断における前記第１の占有者のアイデンティティの表示を含む、請求項４に記載の方法。
【請求項６】
前記個人情報は、電子メール、カレンダーイベント、または銀行残高を含み、
前記判断した要求に従って前記レスポンスを生成するステップは、前記第１の占有者に関する前記要求された個人情報を取得するステップを含む、請求項４に記載の方法。
【請求項７】
前記判断における前記第１の占有者に関する前記要求された個人情報を取得するステップは、前記第１の占有者に対応付けられた個人アカウントにアクセスするステップを含む、請求項６に記載の方法。
【請求項８】
第２の音声入力を受信するステップと、
前記第２の音声入力を前記１つ以上の音声モデルと比較するステップと、
前記比較に基づいて、前記第２の音声入力は前記複数の占有者のうちの第２の占有者に対応すると判断し、前記第２の占有者を認証するステップと、
前記第２の音声入力は前記第２の占有者に対応するという判断に従うとともに前記第２の占有者の認証に従い、前記第２の占有者に関する前記要求された個人情報を含むレスポンスを前記電子デバイスにおいて与えるステップとをさらに含む、請求項２に記載の方法。
【請求項９】
前記電子デバイスはディスプレイを含み、
前記方法は、
前記判断に従い、前記第１の占有者のアイデンティティの表示を前記ディスプレイに示すことにより、前記電子デバイスが前記第１の占有者を識別したことを示すステップと、
前記第１の占有者に、前記識別を検証する機会を提供するステップとをさらに含む、請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
前記電子デバイスはディスプレイを含み、
前記方法は、
前記判断に従い、前記第１の占有者に対応付けられた視覚ユーザインターフェイスを前記ディスプレイに示すことにより、前記電子デバイスが前記第１の占有者を識別したことを示すステップと、
前記第１の占有者に、前記識別を検証する機会を提供するステップとをさらに含む、請求項１〜８のいずれか１項に記載の方法。
【請求項１１】
複数の占有者に対応付けられた構造物に位置し、前記複数の占有者に情報を与えるように構成され、
１つ以上のマイクと、
スピーカと、
１つ以上のプロセッサと、
前記１つ以上のプロセッサが実行する１つ以上のプログラムを格納するメモリとを備え、前記１つ以上のプログラムは請求項１〜１０に記載の動作のうちのいずれかを実行するための命令を含む、電子デバイス。
【請求項１２】
請求項１〜１０のいずれか１項に記載の前記方法をコンピュータに実行させるためのプログラム。
【国際調査報告】
2019535035.tif 000016
2019535035.tif 000017