(57)【要約】  複数の接続されたスマート家電に関してユーザに最も適切なステータス情報を含む短縮されたテキスト要約を提供するための方法を実装すること。方法は、複数の有効化されたスマート家電に関する現在のステータスのリストを決定し、ユーザの関心の対象でない可能性があるステータスを削除するためにリストをフィルタリングすることを含む。リストのフィルタリングは、要求元のユーザの現在のコンテキストおよびユーザの1つまたは複数の以前のコンテキストに基づく。そして、結果として得られるフィルタリングされたステータスが、テキストスニペットに変換され、要約され、1つまたは複数の出力デバイスを介してユーザに提供される。
2021527882.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによって実施される方法であって、
ユーザによって制御される複数のスマート家電の現在のステータスのリストを決定するステップと、
前記ユーザによって制御される1つまたは複数のコンピューティングデバイスによって生成された1つまたは複数のコンテキスト信号に基づいて現在のユーザコンテキストを決定するステップと、
前記現在のユーザコンテキストと比較可能である1つまたは複数の比較可能な過去のユーザコンテキストを複数の過去のユーザコンテキストから特定するステップと、
前記1つまたは複数の比較可能な過去のユーザコンテキストの各々に関して、前記複数のスマート家電の対応する過去のステータスのリストを取得するステップと、
前記現在のステータスのリストをフィルタリングして、前記現在のステータスのうちの1つまたは複数を削除し、現在のステータスのフィルタリングされたリストを生成するステップであって、前記フィルタリングが、1つまたは複数の前記過去のステータスのリストとの前記現在のステータスのリストの比較に基づく、ステップと、
前記フィルタリングされた現在のステータスのリストに基づいて1つまたは複数のテキストスニペットを生成するステップと、
前記1つまたは複数のテキストスニペットのテキスト要約を生成するステップと、
前記ユーザによって制御される前記コンピューティングデバイスのうちの1つまたは複数の出力デバイスに前記テキスト要約を提供するステップと
を含む、方法。
【請求項２】
前記フィルタリングが、前記過去のステータスのリストからの対応する過去のステータスに一致する前記現在のステータスのうちの1つまたは複数を前記現在のステータスのリストから削除することを含む、請求項1に記載の方法。
【請求項３】
前記フィルタリングされた現在のステータスのリストが、前記過去のステータスのリストから外れる前記現在のステータスのリストからの現在のステータスを含む、請求項1または請求項2に記載の方法。
【請求項４】
前記フィルタリングされたリストの前記ステータスのうちの1つまたは複数をグループにまとめるステップであって、前記グループの前記スマート家電の現在のステータスの間の類似性に基づく、ステップをさらに含み、
前記テキスト要約を生成するステップが、前記グループに関するテキスト節を生成することを含む、請求項1に記載の方法。
【請求項５】
前記出力デバイスが、オーディオによって前記テキスト要約を前記ユーザに提供する、請求項1から4のいずれか一項に記載の方法。
【請求項６】
前記スマート家電のうちの1つまたは複数を示すオーディオプロンプト、および前記示したスマート家電のステータスを変更するオファーを提供するステップをさらに含む、請求項5に記載の方法。
【請求項７】
前記出力デバイスが、視覚的な表示を含む、請求項1から6のいずれか一項に記載の方法。
【請求項８】
前記ユーザが前記スマート家電のうちの少なくとも1つの前記現在のステータスを調整することを可能にするために前記ユーザに制御インターフェースを提供するステップをさらに含む、請求項1に記載の方法。
【請求項９】
前記制御インターフェースを提供することに応じて、前記スマート家電のうちの少なくとも1つの前記現在のステータスを調整する前記ユーザからのインジケーションを受け取るステップと、
前記少なくとも1つのスマート家電に前記インジケーションを示すデータを提供するステップとをさらに含む、請求項8に記載の方法。
【請求項１０】
前記コンピューティングデバイスのうちの前記1つまたは複数の入力デバイスを介して前記ユーザから要求を受け取るステップであって、前記入力デバイスが、位置に関連付けられる、ステップをさらに含み、
前記現在のユーザコンテキストが、前記位置に少なくとも部分的に基づいて決定される、請求項1から9のいずれか一項に記載の方法。
【請求項１１】
前記現在のステータスのリストをフィルタリングすることが、前記位置に関連付けられる1つまたは複数のステータスをフィルタリングによって取り除くことを含む、請求項10に記載の方法。
【請求項１２】
前記現在のユーザコンテキストが、現在時刻に少なくとも部分的に基づいて決定される、請求項1から11のいずれか一項に記載の方法。
【請求項１３】
前記コンピューティングデバイスのうちの1つまたは複数の1つまたは複数のマイクロフォンにおいて前記ユーザからのオーディオ入力を受け取るステップと、
複数のユーザのオーディオプロファイルを特定するステップと、
前記オーディオ入力および前記オーディオプロファイルに基づいて前記ユーザのアイデンティティを決定するステップであって、前記1つまたは複数の過去のユーザコンテキストが、前記決定されたアイデンティティに関連付けられる、ステップとをさらに含む、請求項1から12のいずれか一項に記載の方法。
【請求項１４】
前記現在のユーザコンテキストを前記複数の過去のユーザコンテキストとともに記憶するステップをさらに含む、請求項1から13のいずれか一項に記載の方法。
【請求項１５】
ユーザによって制御される複数のスマート家電の現在のステータスのリストを決定するステップと、
前記複数のスマート家電の前記現在のステータスのリストを、前記スマート家電のデバイスの種類によってスマート家電のグループにまとめるステップと、
スマート家電の前記グループのうちの1つまたは複数に関するデバイスの種類のテキストスニペットを生成するステップと、
前記1つまたは複数のデバイスの種類のテキストスニペットのテキスト要約を生成するステップと、
前記ユーザによって制御される1つまたは複数のコンピューティングデバイスの出力デバイスに前記テキスト要約を提供するステップとを含む、コンピュータによって実施される方法。
【請求項１６】
スマート家電の前記グループのうちの1つが、複数の照明ユニットを含み、前記方法が、
特定のステータスを有する前記複数の照明ユニットのうちの照明ユニットのカウントを決定するステップをさらに含み、
デバイスの種類のテキストスニペットを生成するステップが、複数のトークンを含む照明ユニットのテキストスニペットを生成することを含み、前記複数のトークンのうちの少なくとも1つが、前記カウントである、請求項15に記載のコンピュータによって実施される方法。
【請求項１７】
コンピュータによって実施される方法であって、
ユーザによって制御される複数のスマート家電の現在のステータスのリストを決定するステップと、
前記ユーザによって制御される1つまたは複数のコンピューティングデバイスによって生成された1つまたは複数のコンテキスト信号に基づいて現在のユーザコンテキストを決定するステップと、
前記現在のユーザコンテキストと比較可能である1つまたは複数の過去のユーザコンテキストを特定するステップと、
前記複数のスマート家電のうちの1つまたは複数を制御することに関連して前記ユーザによって発せられた1つまたは複数の要求またはコマンドを特定するステップであって、前記1つまたは複数の要求またはコマンドが、前記ユーザが前記1つまたは複数の過去のユーザコンテキストにあった間に前記ユーザによって発せられた、ステップと、
前記現在のステータスのリストをフィルタリングして、前記現在のステータスのうちの1つまたは複数を削除し、現在のステータスのフィルタリングされたリストを生成するステップであって、前記フィルタリングが、前記特定された1つまたは複数の要求またはコマンドに少なくとも部分的に基づく、ステップと、
前記フィルタリングされた現在のステータスのリストに基づいて1つまたは複数のテキストスニペットを生成するステップと、
前記1つまたは複数のテキストスニペットのテキスト要約を生成するステップと、
前記ユーザによって制御される前記コンピューティングデバイスのうちの1つまたは複数の出力デバイスに前記テキスト要約を提供するステップとを含む、方法。
【請求項１８】
前記フィルタリングされたリストの前記ステータスのうちの1つまたは複数をグループにまとめるステップであって、グループの前記スマート家電の現在のステータスの間の類似性に基づく、ステップをさらに含み、
前記テキスト要約を生成するステップが、前記グループに関するテキスト節を生成することを含む、請求項17に記載の方法。
【請求項１９】
前記出力デバイスが、オーディオによって前記テキスト要約を前記ユーザに提供する、請求項17または請求項18に記載の方法。
【請求項２０】
前記スマート家電のうちの1つまたは複数を示すオーディオプロンプト、および前記示したスマート家電のステータスを変更する要請を提供するステップをさらに含む、請求項19に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、スマート家電のステータスの要約伝達に関する。
【背景技術】
【０００２】
人は、本明細書において「自動化されたアシスタント」(「チャットボット」、「インタラクティブパーソナルアシスタント」、「インテリジェントパーソナルアシスタント」、「パーソナルボイスアシスタント」、「会話エージェント」、「バーチャルアシスタント」などとも呼ばれる)と呼ばれるインタラクティブなソフトウェアアプリケーションを用いて人とコンピュータとの対話に従事し得る。たとえば、人(自動化されたアシスタントとインタラクションするときは「ユーザ」と呼ばれることがある)は、テキストに変換され、それから処理される音声の発話を含み得る自由形式の自然言語入力および/またはタイピングされた自由形式の自然言語入力を使用してコマンド、クエリ、および/または要求(本明細書においては集合的に「問い合わせ」と呼ばれる)を与え得る。自動化されたアシスタントは、ユーザの意図を特定し、ユーザの意図に応じるために、自然言語処理、統語処理、意味処理などの様々な種類の処理を自然言語入力に対して実行し得る。今日利用可能な多くのスタンドアロンのインタラクティブスピーカなどの主としてまたはもっぱら自動化されたアシスタントと関わり合うために構成されたコンピューティングデバイスは、本明細書において「アシスタントデバイス」と呼ばれることがある。
【０００３】
自動化されたアシスタントの1つのよくある用途は、スマート家電を制御することである。本明細書において使用される「スマート家電」は、(たとえば、Wi-Fi、ZigBee、Z-Wave、Bluetooth(登録商標)などによる)ネットワーク通信のために構成され、したがって、アシスタントデバイス、スマートフォンなどのコンピューティングデバイスを使用して遠隔で制御可能であるデバイスおよび/または家電を指す。スマート家電は、スマートロック、スマートライト、スマートサーモスタット、アラームシステム、スマートカメラ、スマートガレージドア開閉機、スマートコンセント、スマート蛇口、スマートスプリンクラーシステム、スマートキッチン家電(たとえば、オーブン、コーヒーメーカー、冷蔵庫)、スマートブラインド、スマート窓、およびコンピューティングデバイスを使用して遠隔で制御可能な任意のその他のネットワークに接続された家電を含み得るがこれらに限定されない。
【０００４】
より多くのスマート家電が家庭および職場に設置されるにつれて、それらの家電を管理することは、より複雑になる。例として、ユーザが、そのユーザの家のすべての(または一部の)スマート家電のステータスを知りたいと仮定する。ユーザは、自動化されたアシスタントを介して制御可能なスマート家電の現在のステータスについての情報を提供するように自動化されたアシスタントに自然言語入力の要求を送り得る。自動化されたアシスタントは、自動化されたアシスタントと現在通信しているすべての家電の可聴のまたは視覚的な列挙を提供し得る。たとえば、家電のステータスは、各家電に関する名前および/またはエイリアスと一緒に提供され得る(たとえば、「電灯1はオンになっています。電灯2は50パーセントです。ドア1は現在施錠されています」など)。しかし、より多くのスマート家電が有効化され、自動化されたアシスタントと通信するにつれて、すべての接続された家電のステータスの可聴のまたは視覚的なリストは、長くなり得る。さらに、スマート家電のステータスの一部は、ユーザの関心の対象ではない可能性がある。たとえば、家庭のユーザは、(単純にライト自体を見ることによって明らかである)ユーザと同じ部屋の中のスマートライトのステータスを聞くこと、またはスマートアラームシステムが現在解除されていることを聞くことに関心がない可能性がある。したがって、すべてのスマート家電のステータスの広範囲の列挙は、ユーザにとって有用でない可能性がある。
【０００５】
加えて、多数の家電のステータスを検証し、伝えることは、所与の場合にユーザが有用な情報を提供される結果とならない可能性がある計算リソースの消費を必要とする。さらに、列挙される情報が増えるにつれてユーザはステータスメッセージにさらなる問い合わせおよび/またはコマンドによって応答する可能性が低いかまたは応答することができない可能性があるので、多数の家電のステータスを単に列挙することは、ユーザが意味のあるやり方で自動化されたアシスタントとの対話に再び従事することを可能にしない可能性がある。
【発明の概要】
【課題を解決するための手段】
【０００６】
関連性のより低いスマート家電のステータス情報を省略するかまたは降格させながら、複数の接続されたスマート家電に関するユーザに最も適切なステータス情報を含むおよび/または昇格させるスマート家電のステータスについての要約情報を生成し、提供するための実装が、本明細書において説明される。一部の実装においては、複数の有効化されたスマート家電に関する現在のステータスのリストが、決定され、ユーザの関心の対象でない可能性があるステータスを削除するためにフィルタリングされ得る。リストのフィルタリングは、たとえば、要求しているユーザの現在のコンテキスト(context)および/またはユーザの1つもしくは複数の以前のコンテキストに基づき得る。そして、結果として得られるフィルタリングされたステータスは、テキストスニペット、グラフィカルな情報などの要約情報を生成するために使用され得る。それから、これらのデータは、1つまたは複数の出力デバイスを介してユーザに提供され得る。スマート家電の種類および特定のコンテキストにおいてスマート家電に発せられた過去のユーザのコマンドまたは要求に基づいてスマート家電のステータスを要約するための密接に関連する技術も、本明細書において説明される。
【０００７】
例として、ユーザは、「家の現在のステータスはどうなっている」という要求を自動化されたアシスタントに与え得る。現在のステータスのリストが、ライト、家電、アラームシステム、ドアロック、ならびに/またはシステムによって制御および/もしくは監視され得るその他のデバイスなどの、システムに関連付けられるスマート家電に関して決定される。これらのスマート家電は、システムを使用して/通じてユーザによって制御される(または制御可能である)と考えられ得る。現在のユーザコンテキストに基づいて、常に同じステータス(たとえば、常に「オン」)を有するデバイス、ユーザの現在のコンテキスト(たとえば、時刻)においてユーザの関心の対象である可能性が高くないデバイスなどの、ステータスのうちの1つまたは複数が、フィルタリングによって取り除かれ得る。
【０００８】
一部の実装においては、ステータスがフィルタリングされると、テキストスニペットが、残っている家電のステータスに関して生成され得る。たとえば、スマート照明器具に関して、ステータス「Name="Kitchen Light" Status="Off"」が、照明器具のサードパーティコントローラによって提供され得る。テキストスニペット「台所のライトはオフになっています」が、ステータスに関して(または基づいて)生成され得るし、そして、そのテキストスニペットが、家のステータスの最新情報の一部としてユーザに提供され得る。別の例として、スマートロックのためのインターフェースが、ステータス「Back door unlocked」を提供し得るし、テキストスニペット「裏口のドアは未施錠です」が、デバイスに関して生成され得る。
【０００９】
一部の実装において、テキストスニペットは、それから、ユーザに短縮されたステータスレポートを提供するためのテキスト要約を生成するためにまとめられ、要約され得る。要約は、たとえば、同じ種類およびステータスのデバイスに関するテキストスニペットを全体的なステータスに組み合わせること、特定の場所のデバイスをデバイスのグループ分けに組み合わせること、ならびに/またはすべてのデバイスを必ずしもリスト化することなく複数のデバイスのステータスがユーザに提供されることを可能にするその他の要約を含み得る。例として、すべてのライトに関するテキストスニペットが、「オン」のライトを1つの要約にグループ分けし、残りのライトを第2の「オフ」のグループ分けにグループ分けすることに基づいてステータス「ライト1、2、および3はオンです...残りのライトはオフです」に要約され得る。このようにして、フィルタリングされたリストのステータスのうちの1つまたは複数を、グループのスマート家電の現在のステータス(この例においては「オン」または「オフ」)の間の類似性に基づいてグループにまとめることが、行われ得る。また、別の例においては、「オフ」のステータスを有する部屋(つまり、「台所」の部屋)内のすべてのデバイスのテキストスニペットから、テキスト要約「台所はすべてオフです」が、生成され得る。したがって、ユーザは、各デバイスに関して別々のステータスを提供されず、その代わりに、ステータスの要約を提供され、要約は、場合によっては、特定の状況に関して異なるおよび/または普通でないステータスのみを含み得る。ステータスのグループに関する複数のテキストスニペットが、結果として得られるテキスト要約において完全な文のうちのそれぞれの節(clause)(ステータスの各グループに関する「テキスト節」)として要約され、提示され得る。
【００１０】
一部の実装において、テキストスニペットの要約(テキスト要約)は、1つまたは複数の出力デバイスを介してユーザに提供される。一部の実装において、出力デバイスは、アシスタントに関連付けられる(たとえば、登録される)1つまたは複数のスマート家電のステータスを要約するオーディオステータスレポートを生成されたテキスト要約に基づいて提供し得る。一部の実装においては、生成されたテキスト要約に基づいて視覚的な要約が、グラフィカルユーザインターフェースを介するなどして1つまたは複数のスマート家電のステータスの要約として提供され得る。一部の実装においては、テキスト要約のオーディオ出力と視覚的出力との両方が、1つまたは複数の出力デバイスを介してユーザに提供され得る。
【００１１】
一部の実装においては、追加的なインターフェース情報が、テキストスニペットの要約とともにユーザに提供され得る。たとえば、ユーザは、家電の要約をグラフィカルに提供される可能性もあり、さらに、1つまたは複数の家電のステータスを変更するためのインターフェースを提供され得る。これは、その他の家電と異なるスマート家電の状態を変えるオプション(たとえば、ステータス「台所のライト以外、下の階のライトはすべてオフです。台所のライトをオフにしますか」)を提供すること、および/またはユーザが異なるステータスを有する家電を視覚的に特定し、ステータスのうちの1つまたは複数を変更することを可能にするインターフェースを提供することを含み得る。一部の実装においては、視覚的に提供されるテキスト要約の中で、特定のスマート家電を示す様々なトークン(token)が、選択可能なリンクとして提示され得る。ユーザは、そのスマート家電を制御するためのインターフェースを提供されるためにこれらのリンクを選択し得るし、またはリンク自体が、家電のオン/オフを切り替えるように、範囲設定(たとえば、スマートライトの明るさ)を調整するようになど動作可能であり得る。一部の実装において、ユーザは、予測されるステータスにない1つまたは複数のスマート家電を示すオーディオの要約を提供され、さらに、1つまたは複数の家電のステータスを変更するためのプロンプトを提供され得る。たとえば、自動化されたアシスタントは、(現在のユーザコンテキストの一部と考えられ得る)ユーザの就寝時刻に概して近い時刻にユーザが家電のステータスを要求する場合に、「裏口のドアは現在施錠されていません。施錠しますか」などの自然言語出力を提供し得る。
【００１２】
以上は、本明細書において開示される一部の実装の概要として提供されている。これらのおよびその他の実装のさらなる説明が、以下に与えられる。
【００１３】
一部の実装においては、ユーザによって制御される複数のスマート家電の現在のステータスのリストを決定するステップと、ユーザによって制御される1つまたは複数のコンピューティングデバイスによって生成された1つまたは複数のコンテキスト信号に基づいて現在のユーザコンテキストを決定するステップと、現在のユーザコンテキストと比較可能である1つまたは複数の比較可能な過去のユーザコンテキストを複数の過去のユーザコンテキストから特定するステップと、1つまたは複数の比較可能な過去のユーザコンテキストの各々に関して、複数のスマート家電の対応する過去のステータスのリストを取得するステップと、現在のステータスのリストをフィルタリングして現在のステータスのうちの1つまたは複数を削除し、現在のステータスのフィルタリングされたリストを生成するステップであって、フィルタリングが、過去のステータスの1つまたは複数のリストとの現在のステータスのリストの比較に基づく、ステップと、現在のステータスのフィルタリングされたリストに基づいて1つまたは複数のテキストスニペットを生成するステップと、1つまたは複数のテキストスニペットのテキスト要約を生成するステップと、ユーザによって制御されるコンピューティングデバイスのうちの1つまたは複数の出力デバイスにテキスト要約を提供するステップとを含む、1つまたは複数のプロセッサによって実行される方法が、提供される。このようにしてユーザに要約を提供することによって、各家電についての情報を個々に提供するのにリソースが浪費されないので、ユーザは、より計算効率の良いやり方でスマート家電のステータスに関する関連する情報を提供され得る。これは、スマート家電のより効率的な制御を容易にし得る。さらに、ユーザがスマート家電のステータスをより容易に確かめ、したがって、制御することを可能にすることによって、前記家電による全体的な電力消費が、削減され得る。
【００１４】
様々な実装において、フィルタリングは、過去のステータスのリストからの対応する過去のステータスに一致する現在のステータスのうちの1つまたは複数を現在のステータスのリストから削除することを含み得る。様々な実装において、現在のステータスのフィルタリングされたリストは、過去のステータスのリストから外れる現在のステータスのリストからの現在のステータスを含み得る。これらの実装のうちの1つまたは複数によってリストをフィルタリングすることによって、ユーザは、異常のスマート家電に関する情報のみを提供され得るし、これは、より効率的に前記デバイスの制御を容易にし得る。
【００１５】
様々な実装において、方法は、フィルタリングされたリストのステータスのうちの1つまたは複数を、グループのスマート家電の現在のステータスの間の類似性に基づいてグループにまとめるステップをさらに含み得る。様々な実装において、テキスト要約を生成するステップは、グループに関するテキスト節を生成することを含み得る。
【００１６】
様々な実装において、出力デバイスは、オーディオによってテキスト要約をユーザに提供し得る。様々な実装において、方法は、スマート家電のうちの1つまたは複数を示すオーディオプロンプト、および示したスマート家電のステータスを変更するオファーを提供するステップをさらに含み得る。様々な実装において、出力デバイスは、視覚的な表示を含み得る。
【００１７】
様々な実装において、方法は、ユーザがスマート家電のうちの少なくとも1つのステータスを調整することを可能にするためにユーザに制御インターフェースを提供するステップをさらに含み得る。様々な実装において、方法は、制御インターフェースを提供することに応じて、スマート家電のうちの少なくとも1つのステータスを調整するユーザからのインジケーションを受け取るステップと、少なくとも1つのスマート家電にインジケーションを提供するステップとをさらに含み得る。
【００１８】
様々な実装において、方法は、コンピューティングデバイスのうちの1つまたは複数の入力デバイスを介してユーザから要求を受け取るステップであって、入力デバイスが、位置に関連付けられる、ステップをさらに含み得る。様々な実装において、現在のユーザコンテキストは、位置に少なくとも部分的に基づいて決定され得る。様々な実装において、現在のステータスのリストをフィルタリングすることは、位置に関連付けられる1つまたは複数のステータスをフィルタリングによって取り除くことを含み得る。様々な実装において、現在のユーザコンテキストは、現在時刻に少なくとも部分的に基づいて決定され得る。
【００１９】
様々な実装において、方法は、コンピューティングデバイスのうちの1つまたは複数の1つまたは複数のマイクロフォンにおいてユーザからのオーディオ入力を受け取るステップと、複数のユーザのオーディオプロファイルを特定するステップと、オーディオ入力およびオーディオプロファイルに基づいてユーザのアイデンティティ(identity)を決定するステップとをさらに含み得る。様々な実装においては、1つまたは複数の過去のユーザコンテキストが、決定されたアイデンティティに関連付けられ得る。様々な実装において、方法は、現在のユーザコンテキストを複数の過去のユーザコンテキストとともに記憶するステップをさらに含み得る。
【００２０】
別の態様においては、コンピュータによって実施される方法が、ユーザによって制御される複数のスマート家電の現在のステータスのリストを決定するステップと、複数のスマート家電の現在のステータスのリストをスマート家電のデバイスの種類によってスマート家電のグループにまとめるステップと、スマート家電のグループのうちの1つまたは複数に関するデバイスの種類のテキストスニペットを生成するステップと、1つまたは複数のデバイスの種類のテキストスニペットのテキスト要約を生成するステップと、ユーザによって制御される1つまたは複数のコンピューティングデバイスの出力デバイスにテキスト要約を提供するステップとを含み得る。このようにしてユーザに要約を提供することによって、それぞれのデバイスの種類についての情報を個々に提供するのにリソースが浪費されないので、ユーザは、より計算効率の良いやり方で様々なデバイスの種類のステータスに関する関連する情報を提供され得る。これは、前記デバイスの種類のスマート家電のより効率的な制御を容易にし得る。さらに、ユーザがスマート家電のステータスをより容易に確かめ、したがって、制御することを可能にすることによって、前記家電による全体的な電力消費が、削減され得る。
【００２１】
さらに別の態様においては、コンピュータによって実施される方法が、ユーザによって制御される複数のスマート家電の現在のステータスのリストを決定するステップと、ユーザによって制御される1つまたは複数のコンピューティングデバイスによって生成された1つまたは複数のコンテキスト信号に基づいて現在のユーザコンテキストを決定するステップと、現在のユーザコンテキストと比較可能である1つまたは複数の過去のユーザコンテキストを特定するステップと、複数のスマート家電のうちの1つまたは複数を制御することに関連してユーザによって発せられた1つまたは複数の要求またはコマンドを特定するステップであって、1つまたは複数の要求またはコマンドが、ユーザが1つまたは複数の過去のユーザコンテキストにあった間にユーザによって発せられた、ステップと、現在のステータスのリストをフィルタリングして現在のステータスのうちの1つまたは複数を削除し、現在のステータスのフィルタリングされたリストを生成するステップであって、フィルタリングが、特定された1つまたは複数の要求またはコマンドに少なくとも部分的に基づく、ステップと、現在のステータスのフィルタリングされたリストに基づいて1つまたは複数のテキストスニペットを生成するステップと、1つまたは複数のテキストスニペットのテキスト要約を生成するステップと、ユーザによって制御されるコンピューティングデバイスのうちの1つまたは複数の出力デバイスにテキスト要約を提供するステップとを含み得る。このようにしてユーザに要約を提供することによって、各家電についての情報を個々に提供するのにリソースが浪費されないので、ユーザは、より計算効率の良いやり方で所与の時間に制御される可能性が最も高いそれらのスマート家電のステータスに関する情報を提供され得る。これは、スマート家電のより効率的な制御を容易にし得る。さらに、ユーザが関連するスマート家電をより容易に確かめ、したがって、制御することを可能にすることによって、前記家電による全体的な電力消費が、削減され得る。
【００２２】
加えて、一部の実装は、1つまたは複数のコンピューティングデバイスの1つまたは複数のプロセッサ(たとえば、中央演算処理装置(CPU))、グラフィックス処理ユニット(GPU)、および/またはテンソルプロセッシングユニット(TPU)を含み、1つまたは複数のプロセッサは、関連するメモリに記憶された命令を実行するように動作可能であり、命令は、上述の方法のいずれかの実行を引き起こすように構成される。一部の実装は、上述の方法のいずれかを実行するために1つまたは複数のプロセッサによって実行され得るコンピュータ命令を記憶する1つまたは複数の非一時的コンピュータ可読記録媒体も含む。一部の実装は、上述の方法のいずれかを実行するために1つまたは複数のプロセッサによって実行され得る命令を含むコンピュータプログラムまたはコンピュータプログラム製品も含む。
【００２３】
上述の概念および本明細書においてより詳細に説明される追加的な概念のすべての組合せは、本明細書において開示される主題の一部であると考えられることを理解されたい。たとえば、本開示の最後に現れる特許請求される主題のすべての組合せは、本明細書において開示される主題の一部であると考えられる。
【図面の簡単な説明】
【００２４】
【図１】本明細書において開示される実装が実装され得る例示的な環境のブロック図である。
【図２】ユーザにデバイスの要約を提供することを含むユーザと自動化されたアシスタントとの間の例示的な対話を示す図である。
【図３】ユーザにデバイスの要約をグラフィカルに提供する出力デバイスのためのインターフェースを示す図である。
【図４】本開示の選択された態様を実施するための例示的な方法の流れ図である。
【図５】本開示の選択された態様を実施するための例示的な方法の別の流れ図である。
【図６】本開示の選択された態様を実施するための例示的な方法のさらに別の流れ図である。
【図７】コンピューティングデバイスの例示的なアーキテクチャを示す図である。
【発明を実施するための形態】
【００２５】
ここで図1に目を向けると、本明細書において開示される技術が実装され得る例示的な環境が示される。例示的な環境は、クライアントデバイス105およびリモートコンピュータ110を含む。クライアントデバイス105とリモートコンピュータ110との両方は図1においてそれぞれ単一の構成要素として示されるが、どちらかの1つまたは複数のモジュールおよび/または態様は、全体または一部が1つまたは複数のその他のデバイスによって実装され得ることが理解される。たとえば、一部の実装においては、モジュールおよび/または態様の第1の組が、第1のリモートシステムの1つまたは複数のプロセッサによって実装され、モジュールおよび/または態様の第2の組が、リモートコンピュータ110とネットワーク通信する1つまたは複数の別個のリモートサーバデバイスの1つまたは複数のプロセッサによって実装される。リモートサーバデバイスは、たとえば、1つまたは複数のクライアントデバイスからの要求ならびに追加的なデバイスからの要求を扱う高性能なリモートサーバデバイスのクラスタであることが可能である。
【００２６】
クライアントデバイス105は、モバイル電話コンピューティングデバイス、タブレットコンピューティングデバイス、ユーザの乗り物のコンピューティングデバイス(たとえば、車載通信システム、車載エンターテインメントシステム、車載ナビゲーションシステム)、および/またはコンピューティングデバイスを含むユーザのウェアラブル装置(たとえば、コンピューティングデバイスを有するユーザの腕時計、コンピューティングデバイスを有するユーザのメガネ、仮想もしくは拡張現実コンピューティングデバイス)であり得る。追加的なおよび/または代替的なクライアントデバイスが、提供され得る。さらに、クライアントデバイス105の1つまたは複数の構成要素は、別個のデバイスに実装され得る。たとえば、自動化されたアシスタント106および/またはインターフェース107は、クライアントデバイス105と通信する1つまたは複数の代替的なコンピューティングデバイスに実装され得る。クライアントデバイス105の構成要素およびリモートコンピュータ110の構成要素は、通信ネットワークを介して通信することができる。通信ネットワークは、たとえば、広域ネットワーク(WAN)(たとえば、インターネット)を含み得る。さらに、クライアントデバイス105の構成要素は、通信ネットワークを介して1つまたは複数のその他の構成要素と通信し得る。たとえば、通信ネットワークは、ローカルエリアネットワーク(LAN)および/またはBLUETOOTH(登録商標)を含み得るし、LANおよび/またはBLUETOOTH(登録商標)を介して1つまたは複数のその他のデバイス(たとえば、ユーザのハンドヘルドコンピューティングデバイスと通信する自動化されたアシスタントデバイス)と通信し得る。
【００２７】
一部の実装において、クライアントデバイス105は、ユーザが自動化されたアシスタント106などのクライアントデバイス105の1つまたは複数のモジュールに自然言語(声またはスピーチ)入力を与えることを可能にするマイクロフォンを含み得る。オーディオデータが、マイクロフォンによって受け取られ得るし、自動化されたアシスタント106は、オーディオを処理してテキストおよび/またはその他のオーディオデータを生成し得るし、そのテキストおよび/またはその他のオーディオデータは、クライアントデバイス105の1つもしくは複数のモジュールによってさらに処理されるおよび/またはさらなる処理のためにネットワーク通信によってリモートコンピュータ110に与えられ得る。たとえば、クライアントデバイスは、キャプチャされたオーディオを処理してリモートコンピュータ110に提供するテキストにするように構成されたスピーチトゥテキスト(「STT」)モジュール(図示せず)を含み得る。追加的にまたは代替的に、オーディオデータ(またはオーディオデータから生成された潜在空間(latent space)埋め込み(embedding)などの、オーディオデータを示すその他のデータ)は、オーディオデータのさらなる処理のためのSTTモジュール(図示せず)を含み得るリモートコンピュータ110に直接提供され得る。自然言語入力は、タイピングされた入力を使用して与えられる可能性もある。
【００２８】
自動化されたアシスタント106は、ユーザの自然言語入力を処理し、複数の対話のやりとりを含む対話の形態で応答を提供し得る。対話のやりとりは、ユーザの自然言語入力への応答と、それに続くユーザによって送られたさらなる自然言語入力とを含み得る。したがって、ユーザが会話式に自動化されたアシスタント106とインタラクションすることを可能にするユーザと自動化されたアシスタント106との間の対話が、生成され得る。例として、ユーザは、自然言語入力「私のデバイスの現在のステータスはどうなっている」を自動化されたアシスタント106に送り得る。自動化されたアシスタント106は、自然言語入力を処理し、さらなる処理のために1つまたは複数のその他のモジュールに入力を与え得る。
【００２９】
一部の実装において、ユーザは、インターフェース107などの1つまたは複数のインターフェースを介してリモートコンピュータ110および/または自動化されたアシスタント106とインタラクションし得る。たとえば、インターフェース107は、グラフィカルインターフェースであり、本明細書において説明されるように、ユーザがクリック可能なアイコンおよび/またはその他のグラフィカルな要素を介してデバイスのステータス情報を提供されることに対する関心を示すことを可能にし得る。一部の実装において、インターフェース107は、ユーザがオーディオの要求を送るデバイスとは異なるデバイスに実装され得る。たとえば、ユーザは、デバイスの要約のオーディオの要求を与えるために第1のデバイスを利用し得るし、ユーザは、第2のデバイスのインターフェース107を介して要約および/またはその他の情報を提供され得る。一部の実装において、インターフェース107は、スピーカおよび/またはマイクロフォンを含み得るし、ユーザは、デバイスの要約をスピーチとして提供され得る。したがって、自動化されたアシスタント106および/またはインターフェース107は、デバイスの要約をスピーチに変換し、クライアントデバイス105のスピーカによってスピーチをレンダリングするテキストトゥスピーチ(「TTS」)モジュール(図示せず)をさらに含み得る。その後、ユーザは、自動化されたアシスタント106との対話を継続するために自動化されたアシスタント106に追加の自然言語入力を送る、および/またはインターフェース107を利用して1つもしくは複数のデバイスのステータスを調整する要求などの追加の要求を1つまたは複数のモジュールに与えることができる。
【００３０】
リモートコンピュータ110は、150Aなどのスマート家電と直接か、または1つもしくは複数のスマート家電150Bおよび150Cを制御および/もしくは監視するスマート家電コントローラ160を介してかのどちらかで1つまたは複数のスマート家電と通信する。上述のように、スマート家電は、たとえば、照明デバイス、家電、サーモスタット、コンセント、電子デバイス、および/またはリモートデバイスと通信するための構成要素を含むその他のデバイス(たとえば、Wi-Fi通信構成要素を有するデバイス)を含み得る。さらに、スマート家電150A、150B、および150Cは、1つもしくは複数のコンピューティングネットワーク(図示せず)上で遠隔で動作可能であり得るし、ならびに/または遠隔通信によってスマート家電150の1つもしくは複数の態様のステータスの変更を可能にし得る。
【００３１】
例として、スマート家電150Aは、1つまたは複数の通信チャネル(たとえば、Wi-Fi、Bluetooth(登録商標)、ZigBee、Z-Waveなど)を介してリモートコンピュータ110などの1つまたは複数のリモート構成要素にステータスを提供することができるスマート照明器具であり得る。さらに、ユーザは、リモートコンピュータ110と通信する1つまたは複数のその他の構成要素を介して照明器具のステータスを変更し得る。たとえば、ユーザは、スマート家電150Aのステータスを変更する(たとえば、デバイスをオンにする、デバイスをオフにする、デバイスによって発せられる光の強度および/または色を変更する)ためにリモートコンピュータ110を介して要求を送るために自動化されたアシスタント106を利用し得る。また、たとえば、リモートコンピュータ110は、複数のスマート家電を制御するコントローラ160と通信し得る。たとえば、スマートコントローラ160は、サードパーティによって製造されたデバイスに制御信号を与えるおよび/またはそのコントローラ160と通信するデバイスに関するステータスインジケーションをポーリングし、提供するそのサードパーティのシステムの通信ハブであり得る(たとえば、A社によって製造されたすべてのデバイスは、第1のコントローラと通信し得るし、B社によって製造されたすべてのデバイスは、第2のコントローラと通信し得る)。
【００３２】
スマート家電150Aおよび/またはスマート家電コントローラ160は、スマート家電150Aまたはスマート家電コントローラ160と通信するスマート家電150Bおよび150Cの現在のステータスのインジケーションを提供するように構成され得る。ステータスは、ユーザによって割り振られたスマート家電に関するエイリアスなどの特定のデバイスの識別子およびステータスまたは状態のインジケーションを含み得る。例として、ユーザは、エイリアス「Kitchen Light」を器具に割り振ることによってスマート照明器具を構成し得る。照明器具は、エイリアス「kitchen_light」を有する器具が現在オンになっていることを示すために「NAME=kitchen_light STATUS=on」などのエイリアスおよびステータスを示すステータスをリモートコンピュータ110に提供し得る。また、たとえば、ステータスは、スマート家電の種類に特有であり得るし、デバイスは、デバイスに関連する1つまたは複数のステータスを有し得る。たとえば、オーブンであるスマート家電150Aは、現在のオーブンの温度、オーブンの1つもしくは複数の照明器具のステータス、および/またはタイマーの現在の時間、および/または排気ファンの動作ステータスなどの1つまたは複数のステータスを含み得る。
【００３３】
ステータスエンジン117は、ユーザによって制御されるスマート家電の現在のステータスのリストを決定する。一部の実装において、スマート家電150Aおよび/またはデバイスコントローラ160は、1つまたは複数のスマート家電に関するステータスを周期的に提供し得る。たとえば、デバイスコントローラ160は、毎分、5分毎、10秒毎などにコントローラ160に関連するすべての関連するスマート家電の現在のステータスを提供し得る。一部の実装において、スマート家電150Aおよび/またはデバイスコントローラ160は、スマート家電がステータスを変えたときにはいつでもステータスの最新情報を提供し得る。たとえば、コントローラ160に関連する照明器具に関して、コントローラ160は、器具の照明の強度が変更される(たとえば、器具がオンにされる、オフにされる、強度が変更される)ときにはいつでも器具の現在のステータスについてのステータスの最新情報を提供し得る。一部の実装において、ステータスエンジン117は、接続されたデバイスの現在のステータスの要求をそれらの接続されたデバイスに与え得る。代替的に、スマート家電150および/またはコントローラ160は、周期的に、1つまたは複数のスマート家電のステータスが変わるときに、要求に応じてなど、現在のスマート家電のステータスを非同期に提供し得る。リストは、ユーザがデバイスのステータス情報を提供されることに対する関心を示すときに現在のステータスによって更新され得るし、またはたとえば、ステータスの最新情報がステータスエンジン117によって受信される/要求されるときにはいつでも更新され得る。
【００３４】
コンテキストエンジン115は、ユーザのコンピューティングデバイスによって生成された1つまたは複数のコンテキスト信号に基づいてユーザの現在のユーザコンテキストを決定する。現在のユーザコンテキストは、たとえば、ユーザの現在の状態および/またはユーザの位置の現在の天気などの前記ユーザの環境に関する外部要因のインジケーションである。ユーザのコンテキストの属性(「コンテキスト属性(contextual attribute)」)--属性はユーザによって制御される1つまたは複数のコンピューティングデバイスによって決定されるおよび/または生成され得る--は、時刻、ユーザの位置、ユーザのスケジュール(たとえば、ユーザのカレンダーが、ユーザが現在活動に従事していることを示すか)、ユーザのソーシャルネットワーキングステータス、ユーザが現在関わり合っている1つまたは複数のコンピュータアプリケーション、ユーザによって現在消費されているメディアなどを含み得るがこれらに限定されない。
【００３５】
様々な実装において、ユーザのコンテキストは、どのデバイスがユーザがスマート家電の要約の中で提供されることに関心がある可能性が最も高いかを決定するために利用され得る。たとえば、ユーザは、ユーザの位置、時刻、および/またはデバイスの要約を要求することに対するユーザの現在の関心を示し得るユーザのコンテキストの1つもしくは複数のその他の属性に基づいて特定のスマート家電により関心があり得る。したがって、ユーザの現在のコンテキストに基づいて、1つまたは複数のスマート家電のステータスが、ユーザが現在のユーザコンテキストにある間にそれらのフィルタリングされるデバイスに関心を持たない見込み(likelihood)に基づいて現在のスマート家電のステータスのリストからフィルタリングされ得る。
【００３６】
一部の実装において、現在のユーザコンテキストは、現在時刻を含み得る。たとえば、ユーザは、クライアントデバイス105を利用してデバイスの要約を提供される要求を与え得るし、現在のユーザコンテキストは、ユーザが要求を与えた時刻を含み得る。時刻に基づいて、ユーザは、その他の時刻とは異なるスマート家電に関心がある可能性が高い可能性がある。たとえば、ユーザが一日の終わりに要求を送る場合、ユーザは、(ユーザがいる可能性が高いまたは少ししたらいるであろう)寝室の照明器具のステータスよりも(たとえば、ドアが施錠されていることを保証するために)スマートロックのステータスおよび/または(たとえば、オーブンが現在オンでないことを保証するために)スマートオーブンのステータスを提供されることに関心がある可能性がより高い可能性がある。したがって、本明細書においてさらに説明されるように、時刻が、1つまたは複数のデバイスの信号をフィルタリングするために1つまたは複数のその他の構成要素によって利用され得る。さらに、時刻に応じて現在のステータスのフィルタリングされたリストに基づいて要約を提供することによって、ユーザは、たとえば、要約によって不必要な照明をオフにするように促され得る。したがって、エネルギーの無駄が、削減され得る。
【００３７】
一部の実装においては、現在のユーザコンテキストが、ユーザの現在位置および/またはユーザがデバイスの要約の要求を与えるために利用したデバイスに関連付けられ得る。たとえば、位置が、クライアントデバイス105に関連付けられ得るし、クライアントデバイス105の位置が、ユーザがクライアントデバイス105を介して要求を送るときのユーザの位置を示し得る。そのとき、位置を含むユーザコンテキストが、デバイスの要約から1つまたは複数のデバイスのステータスをフィルタリングするために利用され得る。たとえば、ユーザによって使用される部屋内の照明ユニットが、フィルタリングによって取り除かれ得るし、一方、ユーザに容易に見えないその他の照明ユニットは、それらの照明ユニットのステータスを要約させ得る。一部の実装においては、現在のユーザコンテキストが、ユーザの現在位置の天気に関連付けられ得る。たとえば、天気が現在のコンテキストの一部として使用されるとき、照明および/または暖房ユニットのステータスが、要約され、ユーザに提供され得るし、天気が晴れであることを示すとき、照明および/または暖房ユニットは、必要とされない可能性がある一方、天気が雨または曇りであることを示すとき、ユーザは、照明および/または暖房家電をオンにしたい可能性がある。天気に基づくコンテキストに応じてフィルタリングされたリストに基づいて要約を提供することによって、ユーザが家電のステータスの要約によって、たとえば、照明ユニットをオフにし、暖房ユニットを弱くするように促され得るので、全体的な電力消費が、削減され得る。したがって、エネルギーの無駄が、削減され得る。
【００３８】
一部の実装においては、現在のステータスのリストおよびユーザの現在のユーザコンテキストが、ユーザコンテキストデータベース140に記憶され得る。ユーザコンテキストデータベース140は、上述のコンテキスト属性のうちの1つまたは複数を含むユーザコンテキストおよびスマート家電のステータスを含む。一部の実装において、ユーザコンテキストおよびデバイスのステータスは、ユーザがデバイスの要約の要求を送るときにユーザコンテキストデータベース140に記憶され得る。一部の実装において、ユーザコンテキストおよびデバイスのステータスは、ユーザが1つまたは複数のデバイスのステータスを更新するときにユーザコンテキストデータベース140に記憶され得る。たとえば、ユーザコンテキストおよびデバイスのステータスは、ユーザが照明器具をオンにするおよび/または照明器具のステータスを調べるときにユーザコンテキストデータベース140に記憶され得る。
【００３９】
現在のユーザコンテキストが決定されると、コンテキストエンジン115は、現在のユーザコンテキストと比較可能なユーザの1つまたは複数の過去のコンテキストを特定する。2つのユーザコンテキストは、それらのコンテキストが十分に似ている場合、比較可能である(または互いに「一致する」)可能性がある。たとえば、一部の実装において、ユーザコンテキストは、(潜在空間に埋め込まれてもよい、または埋め込まれなくてもよい)特徴ベクトルとして定義され得るし、これらの特徴ベクトルの間の類似性および/または距離が、たとえば、類似性の測定値として決定されるおよび/または計算され得る。一部のそのような実装においては、2つ(以上)のユーザコンテキストの間の類似性の測定値が閾値を超えるなど何らかの基準を満たす場合、それらの2つのコンテキストは、比較可能であると考えられ得る。追加的にまたは代替的に、その他の実装において、ユーザコンテキストは、時刻と位置との両方が十分に似ているかまたは同一でさえあること、それぞれの時刻が互いにn分以内であること、それぞれのユーザの位置が互いにm距離単位(たとえば、フィート、メートルなど)以内であることなどのその他の基準および/またはヒューリスティックスに基づいて比較可能であるとみなされ得る。
【００４０】
ユーザの過去のコンテキストは、本明細書において説明されるようにユーザコンテキストデータベース140と1つまたは複数の特徴を共有するデータベースに記憶され得るし、ユーザのスマート家電の過去のステータスのリストを決定するために利用され得る。たとえば、コンテキストエンジン115は、ユーザが午後10時にデバイスの要約の要求を送ったことを特定し得るし、コンテキストエンジン115は、現在時刻に時間的に近い過去のユーザコンテキスト(たとえば、現在時刻の時間を有する過去のユーザコンテキスト)に関するユーザコンテキストデータベース140内のエントリをさらに特定し得る。また、たとえば、位置の現在のユーザコンテキストが、同じ位置の過去のユーザコンテキストを含むユーザコンテキストデータベース140内のエントリを特定するために利用され得る。現在のユーザコンテキストと比較可能であるコンテキストデータベース140内の過去のユーザコンテキストを特定することに基づいて、過去のステータスのリストが、特定され得る。
【００４１】
例として、ユーザは、毎朝家を出る前にサーモスタットを調整し得る。ユーザがサーモスタットを調整する度に、エントリが、ユーザコンテキスト(つまり、時刻)およびサーモスタットの温度(つまり、スマート家電のステータス)を示すためにユーザコンテキストデータベース140に記憶され得る。その後、ユーザは、午前10時にデバイスのステータスの要約を提供される要求を送り得るし、コンテキストエンジン115は、「朝」または現在時刻を現在のユーザコンテキストとして特定し、時刻および/または「朝」に関連付けられるユーザコンテキストデータベース140内のエントリを特定し、サーモスタットの過去のステータスのリストをさらに特定し得る。
【００４２】
フィルタリングエンジン120は、現在のステータスのリストをフィルタリングして現在のステータスのうちの1つまたは複数を削除し、現在のステータスのフィルタリングされたリストを生成する。一部の実装において、現在のステータスのリストをフィルタリングすることは、ユーザコンテキストデータベース140から特定された過去のステータスのリストとスマート家電の現在のステータスとの間の比較に基づき得る。たとえば、現在のステータスのリストは、本明細書において説明されるように、スマート家電にポーリングすることに基づいて、ならびに/またはデバイス自体(150)および/もしくはデバイスコントローラ(160)から最新情報を受信することによって決定され得る。デバイスの過去のステータスのリストは、本明細書においてさらに説明されるように、(たとえば、現在のユーザコンテキストに類似した過去のユーザコンテキストに対応する過去のステータスを見つけることによって)ユーザの現在のコンテキストに基づいてユーザコンテキストデータベース140から特定され得る。フィルタリングエンジン120は、要約内でユーザに提供されるデバイスのステータスの数を制限するためにリストから現在のステータスのうちの1つまたは複数を削除し、任意で、過去のステータスに基づいて現在のステータスを削除する。したがって、提供されるステータスの数を制限することによって、デバイスの要約を提供するためにより少ない計算時間が必要とされる。たとえば、ユーザは、常に同じ状態である、ユーザによって利用されない、および/または特定の時間もしくは特定の位置でのみユーザの関心の対象になるデバイスを含み得る20個のスマート家電を有し得る。ユーザが特定のコンテキストを有する間はユーザの関心の対象である可能性が高くないデバイスを削除することによって、ユーザは、不必要なステータス情報を提供されず、要約を生成するのに使用される計算リソースが、削減され得る。さらに、要約内でユーザに20個すべてのデバイスのステータスを提供しないことによって、ユーザは、自動化されたアシスタントとの対話において追加の入力を与えるためにデバイスの要約を利用する可能性がより高くなる。
【００４３】
一部の実装において、現在のステータスのリストをフィルタリングすることは、対応するデバイスの特定された過去のステータスに一致する現在のステータスのうちの1つまたは複数を削除することを含み得る。たとえば、スマート照明器具が、「オン」の現在のステータスを有し得る。さらに、コンテキストエンジン115は、「朝」の現在のユーザコンテキストを特定し、「オン」の照明器具に関する過去のステータスに関連付けられるユーザコンテキストデータベース140内の「朝」の過去のユーザコンテキストをさらに特定し得る。現在のステータスのリストは、照明器具が朝に「オン」のステータスを有することをユーザが既に知っている可能性が高いと判定することに基づいてその照明器具に関する現在のステータスを削除するためにフィルタリングされ得る。
【００４４】
一部の実装において、現在のステータスのフィルタリングされたリストは、過去のステータスのリストから外れる現在のステータスのリストからの現在のステータスを含み得る。同じ例について続けると、ユーザコンテキストが「朝」であるときに常に「オン」として特定される照明器具は、デバイスの現在のステータスが「オフ」である場合、現在のステータスのフィルタリングされたリストに含められ得る。したがって、フィルタリングされたリストは、ユーザの現在のコンテキストを考慮すると予期されない可能性があるデバイスの現在のステータスを含み得る。
【００４５】
一部の実装において、現在のステータスのフィルタリングされたリストは、ユーザの位置および/またはデバイスの要約の要求を送るためにユーザによって利用されたデバイスの位置に基づいてフィルタリングされ得る。上述のように、ユーザは、位置に関連付けられるクライアントデバイス105を介してデバイスのステータスの要約を提供される要求を送り得る。位置は、現在のステータスのうちの1つまたは複数をフィルタリングするために現在のユーザコンテキストに加えて利用され得る。例として、ユーザは、「台所」の部屋内にある(つまり、「台所」の部屋に関連する)クライアントデバイス105を介してデバイスのステータスの要約を提供される要求を送り得る。さらに、現在のリスト内のステータスを有するデバイスのうちの1つまたは複数は、ステータスとともに位置を含み得る(たとえば、Name="oven" Location="kitchen" Status="off")。現在のステータスのフィルタリングされたリストは、「台所」の部屋にさらに関連付けられるデバイスの1つまたは複数の現在のステータスを削除するためにフィルタリングされ得る。したがって、一部の実装において、ユーザは、ユーザの位置に基づいてユーザに既に明らかであり得るデバイスのステータスを提供されない可能性がある。
【００４６】
一部の実装において、フィルタリングされたリストは、スマート家電を制御することに関連してユーザによって発せられた以前の要求またはコマンドに基づいて生成され得る。したがって、過去のユーザコンテキストに基づいてユーザが以前インタラクションしたデバイスを特定することに加えて、ユーザがスマート家電のうちの1つまたは複数とほとんどまたはまったくインタラクションしないことを特定することに基づいて、1つまたは複数のステータスが、リストからフィルタリングされ得る。たとえば、照明器具は、常に「オン」状態のままであり得るし、ユーザは、過去のインタラクションにおいて、デバイスの状態を変更しないかまたはデバイスを制御するためにいかなる要求もしくはコマンドも与えなかった。その照明器具のステータスは、ユーザがデバイスに関心がないかおよび/またはデバイスのステータスを既に知っているかのどちらかであると判定することに基づいてリストから削除され得る。さらに、一部の実装において、フィルタリングされたリストは、1つまたは複数のステータスに関連する時間に基づいて生成され得る。たとえば、ユーザは、デバイスと最近インタラクションした可能性があり、そのデバイスのステータスは、ユーザがデバイスのステータスを既に知っている可能性が高いと判定することに基づいてステータスのリストから削除され得る。
【００４７】
テキストジェネレータ125は、ステータスのフィルタリングされたリストに含まれる現在のステータスの各々に関してテキストスニペット(小さなテキストまたはテキストの一部)を生成する。テキストスニペットは、ユーザに伝えられ得るテキスト形式のステータスに関する情報を含む。たとえば、ステータス「Name='bedroom light' Location='left' Status='Off'」に関して、テキストジェネレータ125は、テキストスニペット「左の寝室のライトはオフです」を生成し得る。テキストスニペットのその他の例は、デバイスのエイリアス、位置、数字で示される状態(たとえば、温度「350度」のオーブン、強度「50%」の照明器具)、ならびに/またはテキストフォーマットで表されるデバイスおよび/もしくはデバイスのステータスに関連付けられ得るその他の情報を含み得る。
【００４８】
要約生成エンジン130は、デバイスのステータスのフィルタリングされたリストからテキストジェネレータ125によって生成されるテキストスニペットのテキスト要約を生成するために抽出型の方法(extractive method)、抽象型の方法(abstractive method)、再帰型ニューラルネットワーク(RNN)を使用するディープラーニング(たとえば、シーケンストゥシーケンス(sequence-to-sequence)学習、TensorFlow)などの様々なテキスト要約技術を使用し得る。テキストスニペットに基づいて、ユーザに対して提示される短縮された形式でテキストスニペットからの関連する情報を含むテキスト要約が、生成される。テキスト要約を生成することは、たとえば、スニペットからキーフレーズを抽出すること、複数の類似したスニペットを単一のテキストのフレーズに要約すること、繰り返されるフレーズおよび/もしくは語を単一のフレーズにまとめること、ならびに/またはテキストスニペットからの重要な情報を維持しながら結果として得られるテキスト要約の長さを短くするその他の動作を含み得る。たとえば、複数のテキストスニペットが、完全な文のそれぞれの節として提示され得る。
【００４９】
例として、テキストスニペット「ライト1はオフです」、「ライト2はオフです」、および「ライト3はオフです」が、テキスト要約「ライト1、2、および3はオフです」へと要約され得る。さらに、それらしかテキストスニペットがない(またはそれらしかライトであるスニペットがない)場合、テキスト要約「すべてのライトはオフです」が、生成され得る。代替的に、テキストスニペットがスニペット「ライト4はオンです」をさらに含む場合、テキスト要約「ライト4だけがオンです」および/または「ライト4以外のすべてのライトはオフです」が、テキスト要約として生成され得る。一部の実装において、テキスト要約は、フィルタリングされたリストに含まれる異なるデバイスのステータスの要約をそれぞれが示す複数のフレーズを含み得る。テキスト要約のその他の例は、「ライトのすべてはオフで、サーモスタットは65に設定されています」および「台所のライト以外の下の階のライトのすべてはオフです。ドアは未施錠です」を含む。
【００５０】
一部の実装において、リモートコンピュータ110は、デバイスグループ分けエンジン135をさらに含み得る。デバイスグループ分けエンジン135は、グループのスマート家電の現在のステータスに基づいておよび/またはスマート家電のデバイスの種類(たとえば、照明、調理、キッチン家電、HVACなど)に基づいてフィルタリングされたリストの現在のステータスのうちの1つまたは複数をグループにまとめ得る。たとえば、デバイスグループ分けエンジン135は、照明デバイスのグループからテキストスニペットを特定し、1つまたは複数の要約のフレーズを生成するために要約生成エンジン130にテキストスニペットをグループとして提供し得る。また、たとえば、デバイスグループ分けエンジン135は、ある場所にあるすべてのデバイスを特定し、特定されたグループのステータスに基づくテキストスニペットを要約生成エンジン130に提供し得る。
【００５１】
一部の実装において、テキストジェネレータ125は、デバイスグループ分けエンジン135によって決定されたグループのうちの1つまたは複数に関してデバイスの種類のテキストスニペット(特定のデバイスの種類に関連する小さなテキストまたはテキストの一部)を生成し得るし、デバイスの種類のテキストスニペットは、それぞれのグループ内のスマート家電のステータスに基づいて、たとえば、スマート家電の現在のステータスのリストに基づいて生成され得る。たとえば、デバイスグループ分けエンジン135は、リスト内のすべての照明器具の現在のステータスを含むグループを生成し、3つの照明器具のステータスを含むグループに関する「ライト1はオンです。ライト2はオフです。ライト3はオフです」などのグループに関するテキストスニペットを生成するためにテキストジェネレータ125にグループを提供し得る。そして、要約生成エンジン130が、グループのテキストスニペットを、ユーザに提供するための要約「ライト1はオンです。残りのライトはオフです」へと要約し得る。一部の実装においては、テキストスニペットが、グループのステータスの各々に関して別々に生成され得るし、スニペットは、要約するために要約生成エンジン130に直接グループとして提供され得る。たとえば、テキストスニペット「玄関のドアは施錠されています」および「裏口のドアは施錠されています」が、テキストジェネレータ125によって生成され得る。テキストスニペットに基づいて、デバイスグループ分けエンジン135は、スニペットのデバイスの種類のグループ分けを生成し、テキストスニペットをデバイスグループ分けエンジン135に提供し得るし、デバイスグループ分けエンジン135は、要約「ドアは施錠されています」を生成し得る。デバイスのグループに関する複数のテキストスニペットが、結果として得られるテキスト要約において完全な文のそれぞれの節(それぞれのデバイスのグループに関する「テキスト節」)として要約され、提示され得る。
【００５２】
一部の実装においては、デバイスの種類のテキストスニペットが、特定のステータスを有するデバイスの種類のデバイスのカウントを決定することと、複数のトークンを含むテキストスニペットを生成することであって、複数のトークンのうちの1つが特定のステータスを有するデバイスのカウントである、生成することとに基づいて生成され得る。たとえば、グループは、4つの照明デバイスに関するステータスおよび/またはテキストスニペットを含み得るし、それら4つの照明デバイスのうちの3つは、ステータスとして「オン」を示し、それら4つの照明デバイスのうちの1つは、ステータスとして「オフ」を示す。テキストジェネレータ125は、グループのデバイスのステータスの各々に関するトークンを含むテキストスニペットを生成し得る。たとえば、テキストジェネレータ125は、テキストスニペット「3つのライトがオンで、1つがオフです」および/または「ライト1はオフで、3つのライトはオンです」を生成し得る。
【００５３】
テキスト要約が生成されると、要約生成エンジン130は、(たとえば、適宜、テキスト形式、グラフィカルな形式、および/またはオーディオ形式で)ユーザに対して出力するためにユーザの出力デバイスにテキスト要約を与える。一部の実装において、出力デバイスは、クライアントデバイス105と1つまたは複数の特徴を共有し得る。たとえば、テキスト要約は、自動化されたアシスタント106を介して、ならびに/またはグラフィカルな構成要素および/もしくはテキストの構成要素を両方含み得るインターフェース107を介してユーザに提供され得る。
【００５４】
一部の実装において、テキスト要約は、オーディオとしてユーザに提供され得る。たとえば、自動化されたアシスタント106などのリモートコンピュータ110および/またはクライアントデバイス105の1つまたは複数の構成要素は、テキスト要約をユーザに提供するためのオーディオに変換するテキストトゥスピーチ構成要素を含み得る。図2を参照すると、自動化されたアシスタント106を実行するクライアントデバイス105とユーザ101との間の例示的な対話が、示される。対話のやりとり205において、ユーザ101が、デバイスの要約の要求を与える。要求は、リモートコンピュータ110に送られ、リモートコンピュータ110が、ユーザ101に提供するためのテキスト要約を決定する。対話のやりとり210において、テキスト要約が、オーディオ出力としてユーザ101に提供される。
【００５５】
一部の実装において、(ユーザにテキストまたはオーディオとして提供される)テキスト要約は、スマート家電のうちの1つまたは複数のステータスを変更するためのユーザからの応答の要請を含む追加のオーディオが後に続き得る。たとえば、図2を再び参照すると、クライアントデバイス105の自動化されたアシスタントが、その他のデバイスと異なるステータスを有する、対話のやりとり210からのスマート家電(つまり、その他のデバイスが「オフ」である一方で「オン」であるデバイス)を示し、スマート家電のステータスを変更するためのユーザへの質問を含むオーディオ215を提供する。したがって、ユーザは、応答220「はい、それをオフにして」を与え、応答220は、示したスマート家電のステータスを変更するために1つまたは複数の構成要素によって利用され得る。たとえば、1つまたは複数の構成要素は、応答220の中の「それ」を「ライト1」に解決し得るし、要求「ライト1をオフにして」が、さらなる処理のためにリモートコンピュータ110に与えられ得る。
【００５６】
一部の実装において、テキスト要約は、インターフェース107を介してグラフィカルにユーザに提供され得る。テキスト要約は、インターフェース107と1つまたは複数の特徴を共有するインターフェースを介して提供され得る。たとえば、図3を参照すると、テキスト要約を提供することを示す例示的なインターフェース300が、与えられる。インターフェース300は、要約生成エンジン130によってテキスト形式で決定されたテキスト要約301を含む。一部の実装において、インターフェース300は、オーディオの能力をさらに含むデバイスによって実装され得る。たとえば、インターフェース300は、(図2に示したデバイスと同様に)テキスト要約のオーディオを提供し、テキスト要約の視覚的な表現を提供するクライアントデバイス105上で実行され得る。たとえば、302において、ユーザは、ライトおよびそれらのライトのステータスのリストを含むグラフィカルユーザインターフェースを提示され、ステータスは、ラジオボタンを使用して調整され得る可能性がある。別の例として、テキスト要約301内で、単語「ドア」および「ライト」は、ユーザがそれらの構成要素を制御するために操作し得る302と同様のそれぞれのグラフィカルユーザインターフェースを表示するためにそれらの単語が選択可能であることを示すために太字および下線で強調される。
【００５７】
再び図3を参照すると、インターフェース300は、制御インターフェース302を含む。制御インターフェース302は、テキスト要約に含まれるデバイス(つまり、ライト1から4)のためのインターフェースと、ユーザがデバイスのいずれかのステータスを変更することを可能にする(たとえば)ラジオボタンとを含む。テキスト要約に含まれるように、ライト1から3は、現在、ステータス「オフ」に設定されており、ライト4は、ステータス「オン」に設定されている。ユーザは、デバイスをオフにするためにライト4の「オフ」のラジオボタンを選択するなど、対応するデバイスのステータスが変更されるべきであることを示すために制御インターフェースのいずれかのラジオボタンを選択し得る。一部の実装において、制御インターフェース302は、テキスト要約に含まれないデバイスを含み得る。たとえば、現在制御されている20個のデバイスを有するユーザは、デバイスのすべて、テキスト要約に含まれる数よりも多いデバイスを含む選出されたデバイス、および/またはテキスト要約に含まれるのと同じデバイスを含む制御インターフェースを提供され得る。一部の実装においては、ユーザの選択が、ユーザによって制御されるスマート家電のうちの1つまたは複数のステータスを調整するために利用され得る。そして、更新されたステータスが、スマート家電150Aなどのスマート家電に提供され、および/または1つもしくは複数のスマート家電のコントローラ160に提供され得る。
【００５８】
一部の実装においては、複数のユーザが、1つまたは複数の入力デバイスに関連付けられ得る。ユーザの各々が、1つまたは複数の過去のユーザコンテキストに関連付けられ、フィルタリングエンジン120によるステータスのフィルタリングに影響を与え得る異なる過去のインタラクションを有し得る。したがって、一部の実装においては、1つまたは複数の構成要素が、対応する過去のユーザコンテキストを特定する前に、複数のユーザのうちの誰がデバイスの要約を要求しているのかを判定するためにまずオーディオデータおよび/またはその他の識別データを受け取り得る。たとえば、ユーザコンテキストデータベース140が、本明細書において説明されるように、以前に記憶されたユーザ1およびユーザ2に関する過去のユーザコンテキストを含み得る。ユーザのうちの1人がデバイスのステータスのテキスト要約が提供されるようにとの口頭の要求を自動化されたアシスタント106に送るとき、1つまたは複数の構成要素が、まず、要求がユーザ1から生じたのかまたはユーザ2から生じたのかを判定し、その後、特定されたユーザに対応する過去のユーザコンテキストのみを特定し得る。このようにして、スマート家電の制御が、よりリソースの効率が高いやり方で提供され得る。
【００５９】
図4は、ユーザによって制御されるスマート家電のステータスのテキスト要約を提供するための例示的な方法の流れ図を示す。図4のステップは、クライアントデバイスの1つまたは複数のプロセッサなどの1つまたは複数のプロセッサによって実行され得る。その他の実装は、図4に示されるステップ以外の追加的なステップを含み得るし、図4のステップを異なる順序でおよび/もしくは並列に実行し得るし、ならびに/または図4のステップのうちの1つもしくは複数を省略し得る。
【００６０】
ステップ405において、ユーザによって制御される複数のスマート家電の現在のステータスのリストが、決定される。現在のステータスは、スマート家電のうちの1つまたは複数にポーリングすることおよびポーリングに応答してステータスを受信することに基づいて決定され得る。一部の実装においては、1つもしくは複数のスマート家電および/またはスマート家電のコントローラが、ステータスエンジン117と特徴を共有する1つまたは複数の構成要素にステータスを周期的に提供し得る。たとえば、スマート家電150Aおよび/またはスマート家電コントローラ160のうちの1つまたは複数が、10秒毎、1分に1回、および/または関連するデバイスのうちの1つのステータスが変わるときにはいつでもステータスを提供し得る。一部の実装においては、自動化されたアシスタント106などの1つまたは複数の構成要素が、スマート家電およびそれらの最後の知られているステータスの途中集計を、たとえば、メモリに保持し得るし、リストは、この途中集計から決定され得る。
【００６１】
ステップ410において、現在のユーザコンテキストが、ユーザの1つまたは複数のデバイスから受信された1つまたは複数のコンテキスト信号に基づいて決定される。現在のユーザコンテキストは、たとえば、ユーザの現在位置、ユーザがデバイスの要約を提供される要求を送った現在時刻、デバイスの要約を要求する前のユーザの1つもしくは複数の行為、および/またはユーザがデバイスの要約を要求しているコンテキストを示す1つもしくは複数のその他の信号を含み得る。たとえば、コンテキスト信号は、ユーザがユーザの家の寝室にあるデバイスを利用して午後10時にデバイスの要約を要求することを含み得る。特定された時間およびユーザの位置に基づいて、ユーザが就寝の準備をしている現在のユーザコンテキストが、決定され得る。一部の実装において、現在のユーザコンテキストは、コンテキストエンジン115と1つまたは複数の特徴を共有する構成要素によって決定され得る。一部の実装において、現在のユーザコンテキストは、ユーザの環境に関連する1つまたは複数の外部要因を含み得る。
【００６２】
ステップ415において、現在のユーザコンテキストと比較可能である1つまたは複数の過去のユーザコンテキストが、特定される。過去のユーザコンテキストは、ユーザコンテキストデータベース140と1つまたは複数の特徴を共有するデータベースに記憶され得る。たとえば、ユーザがデバイスのステータスを変更するおよび/またはデバイスのステータスを要求するなど1つまたは複数のデバイスとインタラクションするとき、現在のユーザコンテキストならびにステータスの変更および/またはインタラクションが、現在のコンテキストとともにユーザコンテキストデータベース140に記憶され得る。その後、記憶されたインタラクションは、ユーザがステータスの最新情報を要求し、記憶されたコンテキストと比較可能なコンテキスト(たとえば、同様の時刻、同じ位置、1つまたは複数のその他の行為を行った後)にあるときに特定され得る。
【００６３】
ステップ420において、1つまたは複数の特定された過去のユーザコンテキストに関連する過去のステータスのリストが、特定される。過去のステータスのリストは、ユーザコンテキストデータベース140と1つまたは複数の特徴を共有するデータベース内で特定され得る。たとえば、ユーザコンテキストデータベース140は、過去のユーザコンテキストが記録されたときに存在したスマート家電のうちの1つまたは複数のステータスにマッピングされたそれらのコンテキストを含み得る。一部の実装において、所与のユーザコンテキストに関する過去のステータスのリストは、対応する過去のユーザコンテキストと現在のユーザコンテキストとの間の類似性に基づいて特定され得る。
【００６４】
ステップ425において、デバイスの現在のステータスのリストが、ステータスのうちの1つまたは複数を削除するためにフィルタリングされる。フィルタリングは、現在のユーザコンテキストと比較可能であるユーザの過去のユーザコンテキストに関連する1つまたは複数の過去のステータスに基づき得る。たとえば、ユーザが現在のユーザコンテキストと比較可能である過去のユーザコンテキストにある間に関連するデバイスのステータスを概して変更しなかったことを特定することに基づいて、1つまたは複数のステータス(およびしたがってスマート家電)が、リストから削除され得る。また、たとえば、ステータスがユーザが過去に現在のコンテキストにあった間のデバイスのステータスに一致することを特定することに基づいて、1つまたは複数のステータスが、削除され得る(たとえば、ライトが夜には常にステータス「オフ」を有し、ライトが現在「オフ」であり、ユーザコンテキストが「夜」であり--そのステータスは、リストから削除され得る)。
【００６５】
ステップ430において、1つまたは複数のテキストスニペットが、ステータスのフィルタリングされたリスト内のステータスの各々に関して生成される。テキストスニペットは、ユーザに提供するためにテキスト形式にされたデバイスのステータスからの情報を含む。例として、デバイスのステータスは、「Name=LIGHT, Location=Kitchen, Status=ON」などの情報を有する複数のスロットを含み得るし、ステータスは、テキストスニペット「台所のライトはオンです」に変換され得る。テキストスニペットは、テキストジェネレータ125と1つまたは複数の特徴を共有する構成要素によって生成され得る。
【００６６】
ステップ435において、テキスト要約が、テキストスニペットに基づいて生成される。テキスト要約は、テキストスニペットから情報を抽出すること、要約で提供される情報を減らすためにテキストスニペットからの情報を一般化すること、グループのステータスを一般化するためにテキストスニペットのうちの1つもしくは複数をグループ分けすること、および/または関連する情報を維持しながら出力を減らす要約のその他の方法を含み得る。たとえば、4つのライトのステータスに関するテキストスニペットは、「ライト1はオンです」、「ライト2はオンです」、「ライト3はオンです」、および「ライト4はオンです」を含み得る。デバイスグループ分けエンジン135と1つまたは複数の特徴を共有する構成要素が、スニペットのすべてが「ライト」タイプのデバイスに関するものであると特定し得るし、要約生成エンジン130が、グループに関する要約「ライトのすべてはオンです」ならびに/または「ライト1、2、3、および4はオンです」を生成し得る。一部の実装においては、「4つのライトがオンです」および/または「3つのライトがオンで、1つがオフです」のように、デバイスのカウントが、要約にトークンとして含まれ得る。
【００６７】
ステップ440において、テキスト要約が、ユーザに出力するためにユーザの出力デバイスに与えられる。そして、テキスト要約は、ユーザに提供され得るし、テキスト要約がオーディオおよび/または視覚的な表示によってユーザに提供され得ることは、理解されるであろう。たとえば、TTSモジュールが、テキスト要約をオーディオに変換し、ユーザがデバイスの要約を要求することに応じて自動化されたアシスタントを介してオーディオを提供し得る。一部の実装において、テキスト要約は、インターフェース107と1つまたは複数の特徴を共有する構成要素を介するなどしてグラフィカルに提供され得る。一部の実装において、テキスト要約は、追加的な情報とともに提供され得る。たとえば、テキスト要約は、インターフェース107を介してグラフィカルに提供される要約に含まれるデバイスのステータスおよび/またはその他のデバイスのステータスに関連する追加の情報をオーディオによって提供され得る。一部の実装において、追加の情報は、ユーザがデバイスのうちの1つまたは複数のステータスを更新することを可能にするための1つまたは複数の制御インターフェースを含み得る。たとえば、図3に示したテキスト要約は、ユーザが1つまたは複数のデバイスのステータスを更新することを可能にするための制御インターフェース302とともに提供され得る。
【００６８】
図5は、ユーザによって制御されるスマート家電のステータスのテキスト要約を提供するための例示的な方法の流れ図を示す。図5のステップは、クライアントデバイスの1つまたは複数のプロセッサなどの1つまたは複数のプロセッサによって実行され得る。便宜上、図5の動作は、システムによって実行されるものとして説明される。その他の実装は、図5に示されるステップ以外の追加的なステップを含み得るし、図5のステップを異なる順序でおよび/もしくは並列に実行し得るし、ならびに/または図5のステップのうちの1つもしくは複数を省略し得る。
【００６９】
ブロック505は、図4のブロック405の動作と実質的に同様であり得る。ブロック510において、システムが、複数のスマート家電の現在のステータスのリストをスマート家電のデバイスの種類によってグループにまとめ得る。たとえば、システムは、照明ユニット(たとえば、スマート電球、スマートライトストリップ、スマート照明設備(luminaire)など)を1つのグループにまとめ、HVACに関連するスマート家電を別のグループにまとめ、スマートロックをさらに別のグループにまとめてもよい。
【００７０】
ブロック515において、システムが、ブロック510においてまとめられたスマート家電のグループのうちの1つまたは複数に関するデバイスの種類のテキストスニペットを生成し得る。たとえば、合計10個のスマートライトが存在し、そのうちの3つがアクティブ化される場合、テキストスニペットは、「10個のライトのうち3つがオンです」のようなものであり得る。ブロック520および525において、システムが、図4のブロック435および440と同様にして、1つまたは複数のデバイスの種類のテキストスニペットのテキスト要約を生成し、ユーザによって制御される1つまたは複数のコンピューティングデバイスの出力デバイスにテキスト要約を提供し得る。そして、テキスト要約は、任意の好適な形式でユーザに提供され得る。
【００７１】
図6は、ユーザによって制御されるスマート家電のステータスのテキスト要約を提供するための例示的な方法の流れ図を示す。図6のステップは、クライアントデバイスの1つまたは複数のプロセッサなどの1つまたは複数のプロセッサによって実行され得る。便宜上、図6の動作は、システムによって実行されるものとして説明される。その他の実装は、図6に示されるステップ以外の追加的なステップを含み得るし、図6のステップを異なる順序でおよび/もしくは並列に実行し得るし、ならびに/または図6のステップのうちの1つもしくは複数を省略し得る。
【００７２】
ブロック605、610、および615は、それぞれ、図4のブロック405、410、および415と同様であり得る。しかし、ブロック620において、システムが、複数のスマート家電のうちの1つまたは複数を制御することに関連してユーザによって発せられた1つまたは複数の要求またはコマンドを特定し得るし、1つまたは複数の要求またはコマンドは、ユーザが1つまたは複数の過去のユーザコンテキストにあった間にユーザによって発せられた。ブロック625において、システムが、現在のステータスのリストをフィルタリングして現在のステータスのうちの1つまたは複数を削除し、現在のステータスのフィルタリングされたリストを生成し得る。様々な実装において、フィルタリングは、特定された1つまたは複数の要求またはコマンドに少なくとも部分的に基づき得る。直観的に、これらの過去の要求/コマンドが比較可能なユーザコンテキストにある間にユーザによって発せられたという事実は、ユーザが、同様の状況下でこれらの要求/コマンドを受けるスマート家電に関心がある可能性がより高いことを示す。
【００７３】
ブロック630において、システムが、図4のブロック430と同様にして、現在のステータスのフィルタリングされたリストに基づいて1つまたは複数のテキストスニペットを生成し得る。ブロック635において、システムが、図4のブロック435と同様にして、1つまたは複数のテキストスニペットのテキスト要約を生成し得る。図4のブロック440と同様に、ブロック640において、システムが、ユーザによって制御されるコンピューティングデバイスのうちの1つまたは複数の出力デバイスにテキスト要約を提供し得る。そして、テキスト要約は、出力デバイスを介してユーザに提供され得る。
【００７４】
図7は、本明細書において説明される技術の1つまたは複数の態様を実行するために任意で利用され得る例示的なコンピューティングデバイス710のブロック図である。概して、コンピューティングデバイス710は、バスサブシステム712を介していくつかの周辺デバイスと通信する少なくとも1つのプロセッサ714を含む。これらの周辺デバイスは、たとえば、メモリサブシステム725およびファイルストレージサブシステム726を含むストレージサブシステム724と、ユーザインターフェース出力デバイス720と、ユーザインターフェース入力デバイス722と、ネットワークインターフェースサブシステム716とを含み得る。入力および出力デバイスは、コンピューティングデバイス710とのユーザインタラクションを可能にする。ネットワークインターフェースサブシステム716は、外部ネットワークへのインターフェースを提供し、その他のコンピューティングデバイスの対応するインターフェースデバイスに結合される。
【００７５】
ユーザインターフェース入力デバイス722は、キーボード、マウス、トラックボール、タッチパッド、もしくはグラフィックスタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システムなどのオーディオ入力デバイス、マイクロフォン、および/またはその他の種類の入力デバイスを含み得る。概して、「入力デバイス」という用語の使用は、コンピューティングデバイス710または通信ネットワークに情報を入力するためのすべての可能な種類のデバイスおよび方法を含むように意図される。
【００７６】
ユーザインターフェース出力デバイス720は、ディスプレイサブシステム、プリンタ、ファックスマシン、またはオーディオ出力デバイスなどの非視覚的表示を含み得る。ディスプレイサブシステムは、ブラウン管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、プロジェクションデバイス、または可視画像を生成するための何らかのその他のメカニズムを含み得る。ディスプレイサブシステムは、オーディオ出力デバイスを介するなどして非視覚的表示を提供する可能性もある。概して、「出力デバイス」という用語の使用は、コンピューティングデバイス710からユーザまたは別のマシンもしくはコンピューティングデバイスに情報を出力するためのすべての可能な種類のデバイスおよび方法を含むように意図される。ストレージサブシステム724は、本明細書において説明されるモジュールの一部またはすべての機能を提供するプログラミングおよびデータ構造を記憶する。たとえば、ストレージサブシステム724は、本明細書において説明される方法の選択された態様を実行するためおよび図1に示した様々な構成要素を実装するための論理を含み得る。
【００７７】
これらのソフトウェアモジュールは、概して、プロセッサ714によって単独で、またはその他のプロセッサとの組合せで実行される。ストレージサブシステム724において使用されるメモリ725は、プログラムの実行中の命令およびデータの記憶のためのメインランダムアクセスメモリ(RAM)730と、決まった命令が記憶される読み出し専用メモリ(ROM)732とを含むいくつかのメモリを含み得る。ファイルストレージサブシステム726は、プログラムおよびデータファイルのための永続的ストレージを提供することができ、ハードディスクドライブ、関連する取り外し可能な媒体をともなうフロッピーディスクドライブ、CD-ROMドライブ、光学式ドライブ、または取り外し可能なメディアカートリッジを含み得る。特定の実装の機能を実装するモジュールは、ストレージサブシステム724内のファイルストレージサブシステム726によって、またはプロセッサ714によりアクセスされ得るその他のマシンに記憶され得る。
【００７８】
バスサブシステム712は、コンピューティングデバイス710の様々な構成要素およびサブシステムに意図されたように互いに通信させるためのメカニズムを提供する。バスサブシステム712は単一のバスとして概略的に示されているが、バスサブシステムの代替的な実装は複数のバスを使用し得る。コンピューティングデバイス710は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または任意のその他のデータ処理システムもしくはコンピューティングデバイスを含む様々な種類であり得る。コンピュータおよびネットワークの変わり続ける性質が原因で、図7に示したコンピューティングデバイス710の説明は、いくつかの実装を示すことを目的とする特定の例としてのみ意図される。図7に示した構成要素よりも多くのまたは図7に示した構成要素よりも少ない構成要素を有するコンピューティングデバイス710の多くのその他の構成が、可能である。
【００７９】
本明細書において検討された特定の実装がユーザについての個人情報(たとえば、その他の電子的な通信から抽出されたユーザのデータ、ユーザのソーシャルネットワークについての情報、ユーザの位置、ユーザの時間、ユーザのバイオメトリック情報、ならびにユーザの活動およびデモグラフィックス(demographic)情報、ユーザの間の関係など)を収集するかまたは使用し得る状況において、ユーザは、情報が収集されるかどうか、個人情報が記憶されるかどうか、個人情報が使用されるかどうか、および情報がユーザについてどのようにして収集され、記憶され、使用されるかを制御する1つまたは複数の機会を与えられる。つまり、本明細書において検討されたシステムおよび方法は、そのようにする関連するユーザからの明示的な認可を受け取るときにのみユーザの個人情報を収集、記憶、および/または使用する。
【００８０】
たとえば、ユーザは、プログラムまたは特徴がプログラムまたは特徴に関連するその特定のユーザまたはその他のユーザについてのユーザ情報を収集するかどうかを制御することを可能にされる。個人情報が収集されるべきである各ユーザは、情報が収集されるかどうかおよび情報のどの部分が収集されるべきであるかに関するパーミッションまたは認可を与えるための、そのユーザに関連する情報収集の制御を可能にする1つまたは複数の選択肢を提示される。たとえば、ユーザは、通信ネットワークを介して1つまたは複数のそのような制御の選択肢を与えられ得る。さらに、特定のデータが、個人を特定できる情報が削除されるように、記憶されるかまたは使用される前に1つまたは複数の方法で処理され得る。一例として、ユーザのアイデンティティが、個人を特定できる情報が決定され得ないように処理され得る。別の例として、ユーザの地理的位置が、ユーザの特定の位置が決定され得ないようにより大きな地域に一般化され得る。
【００８１】
いくつかの実装が本明細書において説明され、図示されたが、本明細書において説明された機能を実行するならびに/あるいは結果および/または利点のうちの1つもしくは複数を得るための様々なその他の手段および/または構造が利用され得るし、そのような変更および/または修正の各々は本明細書において説明された実装の範囲内にあるとみなされる。より一般的には、本明細書において説明されたすべてのパラメータ、寸法、材料、および構成は、例示的であるように意図されており、実際のパラメータ、寸法、材料、および/または構成は、教示が使用される特定の1つの応用または複数の応用に依存する。当業者は、本明細書において説明された特定の実装の多くの均等物を通常の実験だけを使用して認識するかまたは確かめることができる。したがって、上述の実装は単に例として提示されており、添付の特許請求の範囲およびその均等物の範囲内で、実装が、特に説明され、特許請求されたのとは異なる方法で実施され得ることを理解されたい。本開示の実装は、本明細書において説明されたそれぞれの個々の特徴、システム、品物、材料、キット、および/または方法を対象とする。さらに、2つ以上のそのような特徴、システム、品物、材料、キット、および/または方法の任意の組合せは、そのような特徴、システム、品物、材料、キット、および/または方法が相互に矛盾しない場合は本開示の範囲内に含まれる。
【符号の説明】
【００８２】
101  ユーザ
105  クライアントデバイス
106  自動化されたアシスタント
107  インターフェース
110  リモートコンピュータ
115  コンテキストエンジン
117  ステータスエンジン
120  フィルタリングエンジン
125  テキストジェネレータ
130  要約生成エンジン
135  デバイスグループ分けエンジン
140  ユーザコンテキストデータベース
150  スマート家電
150A  スマート家電
150B  スマート家電
150C  スマート家電
160  スマート家電コントローラ
205  対話のやりとり
210  対話のやりとり
215  オーディオ
220  応答
300  インターフェース
301  テキスト要約
302  制御インターフェース
710  コンピューティングデバイス
712  バスサブシステム
714  プロセッサ
716  ネットワークインターフェースサブシステム
720  ユーザインターフェース出力デバイス
722  ユーザインターフェース入力デバイス
724  ストレージサブシステム
725  メモリサブシステム
726  ファイルストレージサブシステム
730  ランダムアクセスメモリ(RAM)
732  読み出し専用メモリ(ROM)
【図１】
2021527882.tif 000003
【図２】
2021527882.tif 000004
【図３】
2021527882.tif 000005
【図４】
2021527882.tif 000006
【図５】
2021527882.tif 000007
【図６】
2021527882.tif 000008
【図７】
2021527882.tif 000009
【手続補正書】
【提出日】令和3年2月12日(2021.2.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータによって実施される方法であって、
ユーザによって制御される複数のスマート家電の現在のステータスのリストを決定するステップと、
前記ユーザによって制御される1つまたは複数のコンピューティングデバイスによって生成された1つまたは複数のコンテキスト信号に基づいて現在のユーザコンテキストを決定するステップと、
前記現在のユーザコンテキストと比較可能である1つまたは複数の比較可能な過去のユーザコンテキストを複数の過去のユーザコンテキストから特定するステップと、
前記1つまたは複数の比較可能な過去のユーザコンテキストの各々に関して、前記複数のスマート家電の対応する過去のステータスのリストを取得するステップと、
前記現在のステータスのリストをフィルタリングして、前記現在のステータスのうちの1つまたは複数を削除し、現在のステータスのフィルタリングされたリストを生成するステップであって、前記フィルタリングが、1つまたは複数の前記過去のステータスのリストとの前記現在のステータスのリストの比較に基づく、ステップと、
前記フィルタリングされた現在のステータスのリストに基づいて1つまたは複数のテキストスニペットを生成するステップと、
前記1つまたは複数のテキストスニペットのテキスト要約を生成するステップと、
前記ユーザによって制御される前記コンピューティングデバイスのうちの1つまたは複数の出力デバイスに前記テキスト要約を提供するステップと
を含み、
前記フィルタリングが、前記過去のステータスのリストからの対応する過去のステータスに一致する前記現在のステータスのうちの1つまたは複数を前記現在のステータスのリストから削除することを含む、方法。
【請求項２】
前記フィルタリングされた現在のステータスのリストが、前記過去のステータスのリストから外れる前記現在のステータスのリストからの現在のステータスを含む、請求項1または請求項1に記載の方法。
【請求項３】
前記フィルタリングされたリストの前記ステータスのうちの1つまたは複数をグループにまとめるステップであって、前記グループの前記スマート家電の現在のステータスの間の類似性に基づく、ステップをさらに含み、
前記テキスト要約を生成するステップが、前記グループに関するテキスト節を生成することを含む、請求項1に記載の方法。
【請求項４】
前記出力デバイスが、オーディオによって前記テキスト要約を前記ユーザに提供する、請求項1から3のいずれか一項に記載の方法。
【請求項５】
前記スマート家電のうちの1つまたは複数を示すオーディオプロンプト、および前記示したスマート家電のステータスを変更するオファーを提供するステップをさらに含む、請求項4に記載の方法。
【請求項６】
前記出力デバイスが、視覚的な表示を含む、請求項1から5のいずれか一項に記載の方法。
【請求項７】
前記ユーザが前記スマート家電のうちの少なくとも1つの前記現在のステータスを調整することを可能にするために前記ユーザに制御インターフェースを提供するステップをさらに含む、請求項1に記載の方法。
【請求項８】
前記制御インターフェースを提供することに応じて、前記スマート家電のうちの少なくとも1つの前記現在のステータスを調整する前記ユーザからのインジケーションを受け取るステップと、
前記少なくとも1つのスマート家電に前記インジケーションを示すデータを提供するステップとをさらに含む、請求項7に記載の方法。
【請求項９】
前記コンピューティングデバイスのうちの前記1つまたは複数の入力デバイスを介して前記ユーザから要求を受け取るステップであって、前記入力デバイスが、位置に関連付けられる、ステップをさらに含み、
前記現在のユーザコンテキストが、前記位置に少なくとも部分的に基づいて決定される、請求項1から8のいずれか一項に記載の方法。
【請求項１０】
前記現在のステータスのリストをフィルタリングすることが、前記位置に関連付けられる1つまたは複数のステータスをフィルタリングによって取り除くことを含む、請求項9に記載の方法。
【請求項１１】
前記現在のユーザコンテキストが、現在時刻に少なくとも部分的に基づいて決定される、請求項1から10のいずれか一項に記載の方法。
【請求項１２】
前記コンピューティングデバイスのうちの1つまたは複数の1つまたは複数のマイクロフォンにおいて前記ユーザからのオーディオ入力を受け取るステップと、
複数のユーザのオーディオプロファイルを特定するステップと、
前記オーディオ入力および前記オーディオプロファイルに基づいて前記ユーザのアイデンティティを決定するステップであって、前記1つまたは複数の過去のユーザコンテキストが、前記決定されたアイデンティティに関連付けられる、ステップとをさらに含む、請求項1から11のいずれか一項に記載の方法。
【請求項１３】
前記現在のユーザコンテキストを前記複数の過去のユーザコンテキストとともに記憶するステップをさらに含む、請求項1から12のいずれか一項に記載の方法。
【国際調査報告】
2021527882.tif 000010
2021527882.tif 000011
2021527882.tif 000012
2021527882.tif 000013
2021527882.tif 000014