(57)【要約】【課題】コンテキストアウェアプロアクティブデジタルアシスタントの提供。【解決手段】ユーザによってウェアラブルであり、前記ユーザの環境と関連付けられた視覚データおよび聴覚データの内の少なくとも１つを検出するように構成されたセンサと、前記ユーザに情報を提示するように構成された出力モジュールと、前記ユーザの前記環境と関連付けられた視覚データおよび聴覚データの内の前記検出された少なくとも１つから前記ユーザの前記環境のコンテキストを識別することと、前記識別されたコンテキストに関連性のある情報を取り出すことと、前記出力モジュールを通して前記ユーザに前記取り出された情報をプロアクティブに提示することとを含む動作を実行するように構成された制御ロジックとを備える、情報をプロアクティブに提供するためのシステム。【選択図】図２
2015115069.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによってウェアラブルであり、前記ユーザの環境と関連付けられた視覚データおよび聴覚データの内の少なくとも１つを検出するように構成されたセンサと、
前記ユーザに情報を提示するように構成された出力モジュールと、
前記ユーザの前記環境と関連付けられた視覚データおよび聴覚データの内の前記検出された少なくとも１つから前記ユーザの前記環境のコンテキストを識別することと、
前記識別されたコンテキストに関連性のある情報を取り出すことと、
前記出力モジュールを通して前記ユーザに前記取り出された情報をプロアクティブに提示することと
を含む動作を実行するように構成された制御ロジックと
を備える、情報をプロアクティブに提供するためのシステム。
【請求項２】
前記出力モジュールが、前記ユーザの外耳道内にまたは前記ユーザの外耳道に最も近く配置されるように構成されたスピーカを備え、前記ユーザに前記取り出された情報をプロアクティブに提示することが、前記スピーカを通して前記ユーザに音声フォーマットで前記取り出された情報を提示することを含む、請求項１に記載のシステム。
【請求項３】
前記出力モジュールが、前記ユーザによってウェアラブルで、前記ユーザの視線に配置されるように構成された視覚ディスプレイを備え、前記ユーザに前記取り出された情報をプロアクティブに提示することが、前記視覚ディスプレイを通して前記ユーザにビデオフォーマットで前記取り出された情報を提示することを含む、請求項１に記載のシステム。
【請求項４】
前記ウェアラブルセンサが、前記ユーザの前記声を検出するように構成されたマイクを備え、前記ユーザの前記環境のコンテキストを識別することが、
前記ユーザの前記話された言葉を検出することと、
前記話された言葉の内の少なくとも１つに関係するコンテキストを識別することと
を含む、請求項１に記載のシステム。
【請求項５】
前記システムが、前記マイクが所定の期間前記ユーザの前記声を検出しないときに前記取り出された情報をプロアクティブに提示する、請求項４に記載のシステム。
【請求項６】
前記センサが、前記ユーザの前記環境からの音声を検出するように構成されたマイクを備え、前記ユーザの前記環境のコンテキストを識別することが、
前記ユーザの前記環境での音声および声の内の少なくとも１つを検出することと、
前記音声および声の内の少なくとも１つに関係するコンテキストを識別することと
を含む、請求項１に記載のシステム。
【請求項７】
前記システムが、前記マイクが所定の期間前記ユーザの環境で音声および声の内の少なくとも１つを検出しないときに前記取り出された情報をプロアクティブに提示する、請求項６に記載のシステム。
【請求項８】
前記ウェアラブルセンサが、前記ユーザの前記環境の画像をキャプチャするように構成された撮像センサを備え、前記ユーザの前記環境のコンテキストを識別することが、
前記ユーザの前記環境で少なくとも１つの画像をキャプチャすることと、
前記ユーザの前記環境で少なくとも１つの画像に関係するコンテキストを識別することと
を含む、請求項１に記載のシステム。
【請求項９】
前記センサ、前記出力モジュールおよび前記制御ロジックが、共通のハウジングの中に統合され、前記ハウジングが前記ユーザによってウェアラブルである、請求項１に記載のシステム。
【請求項１０】
ユーザの環境と関連付けられた視覚データおよび聴覚データの内の少なくとも１つを、前記ユーザと関連付けられた環境センサを使用して検出することと、
前記検出された態様と前記ユーザと関連付けられた属性との間の関連性に基づいて前記ユーザの前記環境と関連付けられた視覚データおよび聴覚データの内の前記検出された少なくとも１つから前記ユーザの前記環境のコンテキストを識別することと、
前記識別されたコンテキストに関連性がある情報を取り出すことと、
前記ユーザに前記取り出された情報をプロアクティブに提示することと
を含む、情報をプロアクティブに提供するための方法。
【請求項１１】
前記ユーザに前記取り出された情報をプロアクティブに提示することが、音声フォーマットで前記ユーザに前記取り出された情報を提示することを含む、請求項１０に記載の方法。
【請求項１２】
前記ユーザに前記取り出された情報をプロアクティブに提示することが、前記ユーザに前記取り出された情報を視覚フォーマットで提示することを含む、請求項１０に記載の方法。
【請求項１３】
前記ユーザの前記環境と関連付けられた前記視覚データおよび前記聴覚データの内の少なくとも１つを検出することが、話された言葉を検出することを含み、前記ユーザの前記環境のコンテキストを識別することが、前記話された言葉の内の少なくとも１つに関係するコンテキストを識別することを含む、請求項１０に記載の方法。
【請求項１４】
前記ユーザに前記取り出された情報をプロアクティブに提示することが、所定の期間話された言葉が検出されない後に前記ユーザに前記取り出された情報を提示することを含む、請求項１３に記載の方法。
【請求項１５】
前記ユーザの前記環境と関連付けられた視覚データおよび聴覚データの内の少なくとも１つを検出することが、前記ユーザの前記環境の少なくとも１つの画像をキャプチャすることを含み、前記ユーザの前記環境のコンテキストを識別することが、前記キャプチャされた画像の内の少なくとも１つに関係するコンテキストを識別することを含む、請求項１０に記載の方法。
【請求項１６】
前記人物に前記取り出された情報をプロアクティブに提示することが、キャプチャされた画像がキャプチャされた画像のシーケンスを通して相対的に未変更である後に、前記人物に前記取り出された情報を提示することを含む、請求項１５に記載の方法。
【請求項１７】
情報をプロアクティブに提供するためのコンピュータプログラム製品であって、
コンピュータ可読記憶媒体を用いて具体化されたコンピュータ可読プログラムコードを有するコンピュータ可読記憶媒体であって、前記コンピュータプログラムコードが
ユーザと関連付けられた環境コンテキストデータをキャプチャするように構成されたコンピュータ可読プログラムコードと、
前記キャプチャされたコンテキストデータの中でユーザの活動を識別するように構成されたコンピュータ可読プログラムコードと、
前記活動を評価して、前記ユーザに前記活動に関する補足情報を提供するかどうかを判断するように構成されたコンピュータ可読プログラムコードと、
前記補足データを提供すると判断すると、前記活動と関連付けられた補足情報を取り出すように構成されたコンピュータ可読プログラムコードと、
前記ユーザに前記取り出された情報をプロアクティブに提示するように構成されたコンピュータ可読プログラムコードと
を備える、コンピュータ可読記憶媒体と
を備える、コンピュータプログラム製品。
【請求項１８】
前記コンピュータ可読プログラムコードが、音声プレゼンテーションとして前記ユーザに前記取り出された情報を提示するように構成される、請求項１７に記載のコンピュータプログラム製品。
【請求項１９】
前記活動を評価して、補足情報を提供するかどうかを判断することが、
一時的な時間値または前記活動と関連付けられた活動タイプに基づいて前記活動を特徴付けることと、
関連性閾値に前記活動の前記特徴付けを比較することであって、前記特徴付けが前記関連性閾値を満たす場合、前記補足情報が取り出されるべきであることを示し、それ以外の場合、前記補足情報が取り出されるべきではないことを示すように、比較することと
を含む、請求項１７に記載のコンピュータプログラム製品。
【請求項２０】
前記コンピュータ可読プログラムコードが、前記キャプチャされた環境データから話された言葉を検出し、前記話された言葉に基づいて前記活動を識別するように構成される、請求項１７に記載のコンピュータプログラム製品。
【発明の詳細な説明】
【背景技術】
【０００１】
多くのアプリケーションは、アプリケーションに関連情報を提供するのをユーザに頼っており、アプリケーションは次いで、ユーザにとって重要である可能性がある補足情報を識別するために関連情報を使用する。たとえば、ユーザは、標準的なインターネット検索を実行しているとき、自分が回答されることを希望する質問、またはより多くの情報を希望する話題を提供できる。この情報に基づいて、検索エンジンは、ユーザが必要とする情報をユーザに提供し得る結果のリストを発見するために進んでよい。ユーザの検索に関連性がある結果のリストを識別し、提供する上で多くの進歩がなされてきたが、これらのアルゴリズムは、ユーザが初期のクエリーを提供することに依存している。すなわち、アプリケーションは、アプリケーションが自らのアルゴリズムを使用して、回答を見つけ出すことができる前に、まずユーザがアプリケーションに対し、ユーザが知ることを希望する内容を告げることを必要としている。たとえば、ユーザが質問を尋ねられるが、回答を知らない場合、ユーザはまずパーソナルコンピューティング装置（たとえば、スマートフォン）を取り出し、回答を識別するためにコマンドを話すまたは入力しなければならない。
【発明の概要】
【課題を解決するための手段】
【０００２】
本開示の一実施形態は、情報をプロアクティブに提供するためのシステムを含む。システムは、ユーザによってウェアラブルであり、ユーザの環境の少なくとも１つの態様を検出するように構成されたセンサ、およびユーザに情報を提示するように構成された出力モジュールを含む。システムは制御ロジックを使用し、ユーザの環境の検出された態様からユーザの環境のコンテキストを識別し、識別されたコンテキストに関連性のある情報を取り出し、出力モジュールを通して、取り出された情報をプロアクティブにユーザに提示する。
【０００３】
本開示の別の実施形態は、情報をプロアクティブに提供するための方法を含む。方法は、ユーザと関連付けられた環境センサを使用してユーザの環境の少なくとも１つの態様を検出すること、および検出された態様とユーザと関連付けられた属性との間の関連性に基づき、ユーザの環境の検出された少なくとも１つの態様からユーザの環境のコンテキストを識別することを含む。また、方法は識別されたコンテキストに関連性のある情報を取り出し、取り出された情報をユーザにプロアクティブに提示する。
【０００４】
本開示の別の実施形態は、ユーザに情報をプロアクティブに提供するためのコンピュータプログラム製品を含む。プログラム製品は、ユーザと関連付けられた環境コンテキストデータをキャプチャし、キャプチャされたコンテキストデータの中でユーザの活動を識別するように構成されたコンピュータ可読プログラムコードを含む。さらに、プログラム製品は、活動を評価して、活動に関する補足情報をユーザに提供するかどうかを判断するプログラムコードを含む。プログラム製品は、補足データを提供すると判断すると、活動に関連付けられた補足情報を取り出し、取り出された情報をユーザにプロアクティブに提示する。
例えば、本願発明は以下の項目を提供する。
（項目１）
ユーザによってウェアラブルであり、上記ユーザの環境と関連付けられた視覚データおよび聴覚データの内の少なくとも１つを検出するように構成されたセンサと、
上記ユーザに情報を提示するように構成された出力モジュールと、
上記ユーザの上記環境と関連付けられた視覚データおよび聴覚データの内の上記検出された少なくとも１つから上記ユーザの上記環境のコンテキストを識別することと、
上記識別されたコンテキストに関連性のある情報を取り出すことと、
上記出力モジュールを通して上記ユーザに上記取り出された情報をプロアクティブに提示することと
を含む動作を実行するように構成された制御ロジックと
を備える、情報をプロアクティブに提供するためのシステム。
（項目２）
上記出力モジュールが、上記ユーザの外耳道内にまたは上記ユーザの外耳道に最も近く配置されるように構成されたスピーカを備え、上記ユーザに上記取り出された情報をプロアクティブに提示することが、上記スピーカを通して上記ユーザに音声フォーマットで上記取り出された情報を提示することを含む、上記項目に記載のシステム。
（項目３）
上記出力モジュールが、上記ユーザによってウェアラブルで、上記ユーザの視線に配置されるように構成された視覚ディスプレイを備え、上記ユーザに上記取り出された情報をプロアクティブに提示することが、上記視覚ディスプレイを通して上記ユーザにビデオフォーマットで上記取り出された情報を提示することを含む、上記項目のいずれかに記載のシステム。
（項目４）
上記ウェアラブルセンサが、上記ユーザの上記声を検出するように構成されたマイクを備え、上記ユーザの上記環境のコンテキストを識別することが、
上記ユーザの上記話された言葉を検出することと、
上記話された言葉の内の少なくとも１つに関係するコンテキストを識別することと
を含む、上記項目のいずれかに記載のシステム。
（項目５）
上記システムが、上記マイクが所定の期間上記ユーザの上記声を検出しないときに上記取り出された情報をプロアクティブに提示する、上記項目のいずれかに記載のシステム。
（項目６）
上記センサが、上記ユーザの上記環境からの音声を検出するように構成されたマイクを備え、上記ユーザの上記環境のコンテキストを識別することが、
上記ユーザの上記環境での音声および声の内の少なくとも１つを検出することと、
上記音声および声の内の少なくとも１つに関係するコンテキストを識別することと
を含む、上記項目のいずれかに記載のシステム。
（項目７）
上記システムが、上記マイクが所定の期間上記ユーザの環境で音声および声の内の少なくとも１つを検出しないときに上記取り出された情報をプロアクティブに提示する、上記項目のいずれかに記載のシステム。
（項目８）
上記ウェアラブルセンサが、上記ユーザの上記環境の画像をキャプチャするように構成された撮像センサを備え、上記ユーザの上記環境のコンテキストを識別することが、
上記ユーザの上記環境で少なくとも１つの画像をキャプチャすることと、
上記ユーザの上記環境で少なくとも１つの画像に関係するコンテキストを識別することと
を含む、上記項目のいずれかに記載のシステム。
（項目９）
上記センサ、上記出力モジュールおよび上記制御ロジックが、共通のハウジングの中に統合され、上記ハウジングが上記ユーザによってウェアラブルである、上記項目のいずれかに記載のシステム。
（項目１０）
ユーザの環境と関連付けられた視覚データおよび聴覚データの内の少なくとも１つを、上記ユーザと関連付けられた環境センサを使用して検出することと、
上記検出された態様と上記ユーザと関連付けられた属性との間の関連性に基づいて上記ユーザの上記環境と関連付けられた視覚データおよび聴覚データの内の上記検出された少なくとも１つから上記ユーザの上記環境のコンテキストを識別することと、
上記識別されたコンテキストに関連性がある情報を取り出すことと、
上記ユーザに上記取り出された情報をプロアクティブに提示することと
を含む、情報をプロアクティブに提供するための方法。
（項目１１）
上記ユーザに上記取り出された情報をプロアクティブに提示することが、音声フォーマットで上記ユーザに上記取り出された情報を提示することを含む、上記項目に記載の方法。
（項目１２）
上記ユーザに上記取り出された情報をプロアクティブに提示することが、上記ユーザに上記取り出された情報を視覚フォーマットで提示することを含む、上記項目のいずれかに記載の方法。
（項目１３）
上記ユーザの上記環境と関連付けられた上記視覚データおよび上記聴覚データの内の少なくとも１つを検出することが、話された言葉を検出することを含み、上記ユーザの上記環境のコンテキストを識別することが、上記話された言葉の内の少なくとも１つに関係するコンテキストを識別することを含む、上記項目のいずれかに記載の方法。
（項目１４）
上記ユーザに上記取り出された情報をプロアクティブに提示することが、所定の期間話された言葉が検出されない後に上記ユーザに上記取り出された情報を提示することを含む、上記項目のいずれかに記載の方法。
（項目１５）
上記ユーザの上記環境と関連付けられた視覚データおよび聴覚データの内の少なくとも１つを検出することが、上記ユーザの上記環境の少なくとも１つの画像をキャプチャすることを含み、上記ユーザの上記環境のコンテキストを識別することが、上記キャプチャされた画像の内の少なくとも１つに関係するコンテキストを識別することを含む、上記項目のいずれかに記載の方法。
（項目１６）
上記人物に上記取り出された情報をプロアクティブに提示することが、キャプチャされた画像がキャプチャされた画像のシーケンスを通して相対的に未変更である後に、上記人物に上記取り出された情報を提示することを含む、上記項目のいずれかに記載の方法。
（項目１７）
情報をプロアクティブに提供するためのコンピュータプログラム製品であって、
コンピュータ可読記憶媒体を用いて具体化されたコンピュータ可読プログラムコードを有するコンピュータ可読記憶媒体であって、上記コンピュータプログラムコードが
ユーザと関連付けられた環境コンテキストデータをキャプチャするように構成されたコンピュータ可読プログラムコードと、
上記キャプチャされたコンテキストデータの中でユーザの活動を識別するように構成されたコンピュータ可読プログラムコードと、
上記活動を評価して、上記ユーザに上記活動に関する補足情報を提供するかどうかを判断するように構成されたコンピュータ可読プログラムコードと、
上記補足データを提供すると判断すると、上記活動と関連付けられた補足情報を取り出すように構成されたコンピュータ可読プログラムコードと、
上記ユーザに上記取り出された情報をプロアクティブに提示するように構成されたコンピュータ可読プログラムコードと
を備える、コンピュータ可読記憶媒体と
を備える、コンピュータプログラム製品。
（項目１８）
上記コンピュータ可読プログラムコードが、音声プレゼンテーションとして上記ユーザに上記取り出された情報を提示するように構成される、上記項目に記載のコンピュータプログラム製品。
（項目１９）
上記活動を評価して、補足情報を提供するかどうかを判断することが、
一時的な時間値または上記活動と関連付けられた活動タイプに基づいて上記活動を特徴付けることと、
関連性閾値に上記活動の上記特徴付けを比較することであって、上記特徴付けが上記関連性閾値を満たす場合、上記補足情報が取り出されるべきであることを示し、それ以外の場合、上記補足情報が取り出されるべきではないことを示すように、比較することと
を含む、上記項目のいずれかに記載のコンピュータプログラム製品。
（項目２０）
上記コンピュータ可読プログラムコードが、上記キャプチャされた環境データから話された言葉を検出し、上記話された言葉に基づいて上記活動を識別するように構成される、上記項目のいずれかに記載のコンピュータプログラム製品。
(摘要）
デジタルアシスタントシステムは、ユーザの環境および／または活動の識別されたコンテキストに基づいてプロアクティブに情報を取り出し、ユーザに提供するために使用されてよい。ユーザの環境および／または活動を監視することによって、ユーザがどの補足情報を役立つおよび／または関連性があると感じる可能性があるかについて推論することができる。補足情報はプロアクティブに取り出し、ユーザに提示することができる。システムは、ユーザの環境および／または活動について情報を収集するために１台または複数のセンサを含むことがある。また、システムは、ユーザに、聴覚フォーマットで情報を提供するためのスピーカおよび視覚フォーマットで情報を提供するためのディスプレイ等の、ユーザに情報をプロアクティブに提供するための１つまたは複数の出力モジュールを含むこともある。システムは、システムが迅速にかつ目立たないようにユーザに情報を提供できるように、ウェアラブルであり、つねにオンとなることができる。
【図面の簡単な説明】
【０００５】
【図１】デジタルアシスタントシステムを示す図である。
【図２】ユーザの耳に対して配置されたウェアラブルデジタルアシスタントの一実施形態の断面図である。
【図３】デジタルアシスタントシステムの構成要素のブロック図である。
【図４】ウェアラブルデジタルウィスパリングアシスタントの例示的な構成を示す図である。
【図５】デジタルアシスタントシステムの処理モジュールによって実行されるプロセスの一実施形態の流れ図である。
【図６Ａ】デジタルアシスタントシステムを使用してコンテキストをキャプチャするための例示的なシナリオを示す図である。
【図６Ｂ】図６Ａに関して上述されたシナリオでのユーザの環境および／または活動の、撮像モジュールによってキャプチャされ得る例示的な画像を示す図である。
【図７Ａ】デジタルアシスタントシステムを使用してコンテキストをキャプチャするための例示的なシナリオを示す図である。
【図７Ｂ】図７Ａに関して上述されたシナリオでのユーザの環境および／または活動の、撮像モジュールによってキャプチャされ得る例示的な画像を示す図である。
【図８Ａ】デジタルアシスタントシステムを使用してコンテキストをキャプチャするための例示的なシナリオを示す図である。
【図８Ｂ】図８Ａに関して上述されたシナリオでのユーザの環境および／または活動の、撮像モジュールによってキャプチャされ得る例示的な画像を示す図である。
【発明を実施するための形態】
【０００６】
本開示の実施形態は、少なくとも１台のセンサ、出力モジュール、および制御ロジックを含むことがあるデジタルアシスタントシステムを含む。センサ（複数の場合がある）は、話された言葉、音声、ユーザの周囲の画像、および／またはユーザのアクション等のユーザの環境の１つまたは複数の態様を検出できる。処理モジュールに含むことができる制御ロジックはたとえば、センサ（複数の場合がある）によって検出された態様（複数の場合がある）からユーザの活動および／または環境のコンテキストを識別できる。次いで、システムは、ユーザの活動および／または環境の識別されたコンテキストに関連する追加情報および／または補足情報をプロアクティブに取り出し、取り出された情報をユーザにプロアクティブに提示できる。
【０００７】
図１は、本明細書に説明される一実施形態に係るデジタルアシスタントシステム１００を示す。一実施形態では、デジタルアシスタントシステム１００は、システム１００に最も近い環境をコンテキストアウェアし得る。デジタルアシスタントシステム１００によってキャプチャされるコンテキストは、システム１００に最も近い環境における人間または物体の場所、方向、向き、移動の速度、輸送の方式、または社会的相互作用を含むことがあるが、これに限定されるものではない。システム１００によってキャプチャされるコンテキストは、ユーザの心的状態、呼吸数、体温、皮膚電気反応、視線方向（つまり、ユーザが見つめている方向）、移動、顔の表情、瞳孔拡張、健康診断（たとえば、インシュリンレベル）等の、デジタルアシスタントシステム１００のユーザについての情報をさらに含んでよい。
【０００８】
コンテキストをキャプチャするために、デジタルアシスタントシステム１００は、デジタルアシスタントシステム１００がユーザについての情報だけではなくシステム１００に最も近い環境のカレントコンテキストも識別できるようにする環境データを個別に、または組み合わせて収集し得る複数のセンサ１０１を含んでよい。多様なタイプのセンサ１０１が、以下により詳細に説明される。概して、センサ１０１は環境データをキャプチャし、環境データを、処理モジュール１５０によって処理できるデータに変換する。たとえば、センサまたは処理モジュール１５０は、アナログ環境データを採取し、このデータをデジタルデータに変換してよい。処理モジュール１５０は、次いで本明細書に説明される多様な技法を使用して、ユーザの活動および／または環境のコンテキストに関連性がある追加情報および／または補足情報をプロアクティブに識別してよい。
【０００９】
いったん関連性のある追加情報および／または補足情報が識別されると、デジタルアシスタントシステム１００は出力モジュール１３０を使用して、ユーザにこの情報を提供してよい。図１に示されるように、出力モジュール１３０は、デジタルアシスタントシステム１００のユーザに関連情報を「囁いて」（つまり音声を出力して）よい。このようにして、デジタルアシスタントシステム１００は、情報に対するユーザからの明示的な要求なしで、プロアクティブに関連情報を識別し、提供してよい。
【００１０】
デジタルアシスタントシステム１００のセンサ１０１、処理モジュール１５０、および出力モジュール１３０は、単一のフィジカルデバイスに統合されることもあれば、分散され、有線通信または無線通信を介して通信で接続されることもある。システム１００の多様な構成要素が単一のデバイスに統合される場合、デバイスはユーザによって着用されるイヤホーンであってよい。代わりに、構成要素は、スタンドアロン構成要素として分散されてよい、または複数の異なるフィジカルデバイスに統合されてよい。たとえば、センサ１０１および処理モジュール１５０は、スマートフォン、タブレットコンピュータまたは他のモバイル機器またはウェアラブルコンピューティング装置に統合されてよい。一方、出力モジュール１３０はイヤホーンに統合される。本明細書に使用されるように、「ウェアラブル」は、構成要素またはシステムが、設計によってもしくは固締要素を使用することによってのどちらかでユーザに物理的に取り付けることができること、または構成要素もしくはシステムがユーザによって携帯可能である‐つまり、ユーザが構成要素もしくはシステムを持ち運ぶことができることを示す。イヤホーンは、データが、関連情報をユーザにプロアクティブに提供するためにセンサ１０１、処理モジュール１５０、および出力モジュール１３０の間で転送されるようにコンピューティング装置に通信で結合され得る。
【００１１】
ここで図２を参照すると、プロアクティブデジタルアシスタント１００の多様な実施形態は、ユーザの耳１１０に対して配置できるハウジング１０２を含むことがある。ハウジング１０２は、ユーザの外耳道１１２の内部に収まることができる内部部分１２２、およびユーザの外耳道１１２の外側にある外部部分１２０を含むことがある。ハウジング１０２の内部部分１２２の壁１２４は、ユーザの外耳道１１０の壁１１４と係合して、ユーザの耳１１０の中にハウジング１０２をしっくりと保持できる。ハウジング１０２は、処理モジュール１５０、通信モジュール１７０、メモリモジュール１８０、および電源１６０を含むことがある。電源１６０は、デジタルアシスタント１００の残りの構成要素に電力を供給できる。多様な実施形態では、電源１６０は、たとえば電池、燃料電池、無線送電モジュール、および／またはコンデンサを含むことがある。ハウジング１０２は、ユーザの環境および／または活動を検知するための１台または複数のセンサを含むことがある。たとえば、ハウジング１０２は、ユーザの環境からの音声を検出する外向きマイク１４２を含むことがある。また、ハウジング１０２は、内向きマイク１４０が、たとえば骨および組織の伝導性の効果を利用することによってユーザの頭の中の音しか検出しないように、ユーザの外耳道１１０の壁１１４に対して押し付けられる内向きマイク１４０を含むこともある。たとえば、内向きマイク１４０は、ユーザの声の音を検出できるが、ユーザに最も近い他の人の声は検出できない。また、ハウジング１０２は、ユーザの環境の画像および／または映像をキャプチャできるデジタルカメラ等の撮像モジュール１９０を含むこともある。特定の実施形態では、撮像モジュール１９０は、撮像モジュール１９０がほぼユーザが見ていることを見るように前方を向いていることがある。
【００１２】
デジタルアシスタント１００は、処理モジュール１５０がユーザの環境および／または活動のコンテキストを決定できるようにする環境データを収集するために他のセンサを含む、および／または使用することがある。アシスタント１００は、上述された視覚センサおよび聴覚センサに加えて、視線センサおよび他のユーザ身体追跡調査センサ等の、アシスタント１００を着用するユーザの場所および向きを決定するために使用される追加のセンサを含んでよい。他のセンサの例は、温度センサ、磁気センサ、慣性センサ、深度センサおよび距離センサ、皮膚伝導度センサ、筋活動センサ、神経作用センサ、嗅覚センサ等を含むことがあるが、これに限定されるものではない。
【００１３】
ハウジング１０２は、通信モジュール１７０および／またはメモリモジュール１８０を含む。たとえば、通信モジュール１７０は、情報を取り出すために外部のデータシステムとの通信を可能にするＷｉ−Ｆｉアダプタ、セルラー通信アダプタ、ＢＬＵＥＴＯＯＴＨ（登録商標）アダプタ、および／またはユニバーサルシリアルバス（ＵＳＢ）アダプタを含むことがある。また、ハウジング１０２は、ハウジング１０２の場所を決定できるグローバルポジショニングシステム（「ＧＰＳ」）も含むことがある。ＧＰＳアダプタは、たとえば、通信モジュール１７０の中に組み込むことができる、異なるモジュール（たとえば、処理モジュール１５０）の中に組み込むことができる、および／またはスタンドアロン構成要素であることがある。多様な実施形態では、通信モジュール１７０は、外部コンピューティング装置、セルラーネットワーク、および／またはインターネットと通信できる。多様な実施形態では、通信モジュール１７０は、処理モジュール１５０と通信していることがある。多様な他の実施形態では、通信モジュール１７０は、処理モジュール１５０と一体となることがある。
【００１４】
また、ハウジング１０２は、ハウジング１０２の内部部分１２２に配置される、スピーカ等の聴覚出力モジュール１３０を含むこともある。ハウジング１０２の内部部分１２２は、聴覚出力モジュール１３０からの音声がユーザの外耳道１１２に到達できるチャネル１３２（たとえば、開口部および／または通路）を含むことがある。再び図３を参照すると、聴覚出力装置は、処理モジュール１５０によって取り出される関連情報が、聴覚出力モジュール１３０を介してユーザに伝達できるように処理モジュール１５０と通信できる。聴覚出力モジュール１３０の代わりに、または聴覚出力モジュール１３０と組み合わせて、処理モジュール１５０は、ユーザの視線に配置されたビデオスクリーン等の光学出力装置と通信して、取り出された情報をユーザに伝達できる。ビデオスクリーンの例は、専用のビデオディスプレイ、ユーザによって着用されるメガネの中に組み込まれた小型ビデオディスプレイ、スマートフォンディスプレイ、またはウェアラブルディスプレイを含むことがあるが、これに限定されるものではない。
【００１５】
一実施形態では、デジタルアシスタント１００の多様な構成要素は、構成要素がデジタルアシスタント１００のフォームファクターに対するアドオンとして実装され得るように、モジュール式であってよい。たとえば、ＧＰＳ構成要素、セルラー構成要素、ＢＬＵＥＴＯＯＴＨ（登録商標）構成要素等は、デジタルアシスタント１００に容易に切断または接続され得る。したがって、ユーザは、アシスタント１００に接続された異なるモジュラー式構成要素を通信インタフェースで変更することによってデジタルアシスタント１００をカスタマイズし得る。
【００１６】
図３に関して、多様な実施形態では、内向きマイク１４０、外向きマイク１４２、および撮像モジュール１９０は、処理モジュール１５０が、それぞれマイク１４０、１４２、および／または撮像モジュール１９０の音声および／または画像を受信できるように処理モジュール１５０と通信していることがある。処理モジュール１５０は、音声および／または画像を分析して、ユーザの環境および／または活動のコンテキストを識別できる。
【００１７】
メモリモジュール１８０は、ＤＲＡＭ、ＳＲＡＭ、フラッシュメモリ等の形のランダムアクセスメモリを含むことがある。再び図３を参照すると、多様な実施形態で、メモリモジュール１８０は、処理モジュール１５０と通信していることがある。多様な他の実施形態では、メモリモジュール１８０は、処理モジュール１５０と一体化できる。処理モジュール１５０がマイク１４０、１４２および／または撮像モジュール１９０からの音声および／または画像を分析した後、処理モジュール１５０は、通信モジュール１７０および／またはメモリモジュール１８０からユーザの環境および／または活動に関連性がある補足情報を取り出すことができる。たとえば、メモリモジュール１８０は、米国大統領のリスト等の、処理モジュール１５０が取り出すことができる一般的な事実の記憶されている情報を含んでよい。また、メモリモジュール１８０は、ユーザにとって特定である情報も記憶できる。一実施形態では、モジュール１８０は、ユーザの関心、ユーザの関心に関係する一般的な事実、またはユーザの嫌いなことを含むユーザプロファイル１８１を記憶してよい。たとえば、ユーザが科学者である場合、メモリモジュール１８０は一般的に使用される科学的な定数、科学公式等の科学に関係した情報を記憶できる。対照的に、ユーザが美術史家である場合、メモリモジュール１８０は、有名な絵画の名称および芸術家の氏名等の美術に関係した情報を記憶するように構成できる。
【００１８】
多様な実施形態では、メモリモジュール１８０は、ユーザの最新の活動のログを維持できる。たとえば、メモリモジュール１８０は、ユーザが最近食料品店で購入した品目のレコードを維持できる。多様な実施形態では、撮像モジュール１９０は、ユーザが取り上げる品目の画像をキャプチャすることができ、処理モジュール１５０はメモリモジュール１８０に品目のレコードを記憶できる。別の例では、メモリモジュールがユーザのイベントのカレンダのレコードを保持できる。たとえば、メモリモジュールは、通信モジュールを介してコンピュータネットワークで維持されるユーザのカレンダのコピーを取り出すことができる。制御ロジックおよび／または処理モジュールは、メモリモジュールと通信して、ユーザの活動および／または環境に関連性がある情報を取り出すことができる。一実施形態では、ユーザの最新の活動またはイベントのカレンダは、ユーザプロファイル１８１を更新するために使用されてよい。
【００１９】
ここで、図４Ａから図４Ｊを参照すると、本明細書に説明されるデジタルアシスタント１００は多様な方法で構成できる。たとえば、図４Ａから図４Ｅ、図４Ｈおよび図４Ｉは、ハウジング１０２が、取り付けられた撮像モジュール１９０をユーザの耳に対して異なる場所に配置するために、異なる形状および構成を含むことができるウェアラブルデジタルアシスタントの異なる実施形態を示す。対照的に、図４Ｇは、撮像モジュール１９０がハウジングに取り付けられていない実施形態を示す。代わりに、撮像モジュール１９０は、別の方法でユーザに取り付けることができる。たとえば、図４Ｇは、ネックレスペンダント３００または類似する宝石類の部分に取り付けられるとして撮像モジュール１９０を示す。他の実施形態では、撮像モジュール１９０は、たとえば腕時計、スマートフォン、および／または衣料品に取り付けるおよび／または組み込むことができる。図４Ｊは、デジタルアシスタントが撮像モジュールを含んでいない実施形態を示す。むしろ、デジタルアシスタントは、たとえばＢＬＵＥＴＯＯＴＨ（登録商標）ワイヤレス接続を介してスマートフォンのカメラに接続する等、異なる撮像素子から撮像信号を受信するように構成できる。同様に、他のセンサ（たとえば、マイク）は遠隔で配置できる。
【００２０】
特定の実施形態では、マイク１４０、１４２および聴覚出力モジュール１３０等のデジタルアシスタント１３０の他の特長は、ハウジング１０２に取り付けられていない、および／または組み込まれていない。たとえば、特定の実施形態では、デジタルアシスタントは、ポケットの中で保持されるまたはベルトにクリップで留められるハウジングを含むことがある。さらに、多様なセンサは、ユーザと関連付けられた車両‐たとえば、自動車、自転車、またはオートバイ‐に取り付けられてよい。係る実施形態では、聴覚出力モジュールは、有線コネクタまたは例えば、ＢＬＵＥＴＯＯＴＨ（登録商標）無線接続等の無線接続によってハウジング内の処理モジュールに接続されるヘッドフォンを含むことがある。同様に、内向きマイクおよび外向きマイクは、ハウジング１０２から別個である場合があり、有線接続または無線接続によってハウジング内の処理モジュールに接続できる。一実施形態では、デジタルアシスタントは、ユーザと関連付けられた電子機器にリンクされてよい。たとえば、デジタルアシスタントのサイズを縮小するため、またはデジタルアシスタントの電池寿命を延ばすために、デジタルアシスタントは、ユーザに最も近いスマートフォン、タブレットコンピュータ、または他のコンピューティング装置を使用して、ユーザのための出力をプロアクティブに決定してよい。
【００２１】
一実施形態では、デジタルアシスタントシステムは通信プロトコルを使用して、センサによってキャプチャされる環境データを近接する電子機器に転送してよい。電子機器のプロセッサは、処理モジュール１５０として使用され得る。電子機器は、次いで、ユーザに提案を出力する出力モジュール１３０に提案を送信してよい。そうすることで、ユーザの耳に装着されるデジタルアシスタントシステムの部分の（コストだけではなく）フォームファクターも削減し、近接する電子機器での処理力を利用し得る。さらに、デジタルアシスタントシステムは、キャプチャされた環境データを近接する電子機器に転送する代わりに、セルラー接続を使用してクラウドのコンピューティングシステムにデータを送信し、クラウドのコンピューティングシステムは、セルラー接続を使用して出力モジュール１３０に次いで送信される提案を生成するために環境データを使用できる。
【００２２】
多様な実施形態では、撮像モジュール１９０は、撮像モジュール１９０の視野を調整できるようにするためにハウジング１０２を基準にして操縦可能となることがある。たとえば、処理モジュール１５０は、多様な方向で指し示すために撮像モジュール１９０を操縦できる操縦コマンドを電気モータ等に提供できる。たとえば、撮像モジュールは、ユーザの視線の一般的な方向、ユーザの背後の方向、ユーザの視線方向の上方または下方の方向、および／またはユーザの視線方向の側の方向に向けられることがある。
【００２３】
図５は、処理モジュール１５０の多様な実施形態が、デジタルアシスタントシステム１００のユーザに関連情報をプロアクティブに提供するために実装できるプロセスの例示的なフローチャートを示す。プロセスの開始（ステップ５００）後、処理モジュール１５０は、内向きマイク１４０（ステップ５０２）、外向きマイク１４２（ステップ５０４）、撮像モジュール１９０（ステップ５０６）、および処理モジュール１５０に接続された任意の他のセンサによって検出される環境データを分析できる。処理モジュール１５０は、マイク１４０、１４２、および撮像モジュール１９０の内の１つまたは複数から検出された環境データを分析して、ユーザの環境および／または活動のコンテキストを識別できる（ステップ５０８）。一実施形態では、デジタルアシスタントシステム１００は、センサによってキャプチャされた環境データをたえず分析して、コンテキストを識別してよい。ただし、他の実施形態では、デジタルアシスタントシステム１００は、ユーザの場所、時刻、またはユーザプロファイルに記憶された情報に基づいてコンテキストを識別してよい。たとえば、電力を節約するために、システム１００は、ユーザがデジタルアシスタントからの補足情報を希望しそうにないときに、特定の所定の期間の間環境データをキャプチャするためにセンサを使用しないことがある。
【００２４】
ユーザの環境および／または活動のコンテキストを決定した後（ステップ５０８）、処理モジュール１５０は、ユーザがプロアクティブに提供されている追加情報から恩恵を受けることができるかどうかを判断できる（ステップ５１０）。たとえば、ユーザの環境および／または活動は、活動または活動タイプ（たとえば、ショッピング、会議に参加すること、質問をすること等）と関連付けられた時間に基づいて特徴付けられてよい。特徴付けに応じて、デジタルアシスタントシステムは、追加情報または補足情報を提供するのかどうかを判断する。より一般には、デジタルアシスタントシステムは、環境のコンテキストをユーザと関連付けられた属性と比較してよく、係る属性の例は、ユーザが実行している活動（ショッピング、テレビを見ること、レストランで食事をすること等）、およびユーザの特徴（たとえば、ユーザプロファイルに記憶された情報、職位、趣味、家族状態等）を含む。提供しない場合、処理モジュール１５０は、プロセスの開始（ステップ５００）に戻ることができる。プロセッサが、ユーザがプロアクティブに提供されている追加情報から恩恵を受けることができると判断する場合、次いで、処理モジュール１５０は、ユーザの環境および／または活動に関連性がある情報を取り出すことができる（ステップ５１２）。一実施形態では、関連情報は、ステップ５０２、５０４、および５０６でキャプチャされた聴覚情報または映像情報から直接的に取り出すことができない、または識別できない情報であってよい。たとえば、処理モジュール１５０は、コンテキストを使用して、ユーザに関連性がある補足情報を提供するためにデータソース（たとえば、内部メモリまたはインターネット）に問い合わせしてよい。このように、処理モジュール１５０は、ユーザに関連性がある可能性があるキャプチャされたコンテキストで見つからない情報を検索する。係る補足情報のコンテキストに対する関連付けは、意味論的比較、オントロジー、オブジェクト認識等の使用によって達成され得る。処理モジュール１５０は、次いで取り出された情報を、ユーザが理解できる形式に変換できる（ステップ５１４）。たとえば、処理モジュール１５０は、取り出された情報を英語の音声に変換できる。たとえば、処理モジュール１５０が無理数パイ（３．１４１５９．．．）の数値を取り出した場合、処理モジュール１５０は、データを「三点一四一五九」に変換できる。プロセッサは、次いでユーザが聞くために、変換したデータを聴覚出力モジュール１３０に送信できる（ステップ５１６）。
【００２５】
ユーザにプロアクティブに情報を提供することによって、デジタルアシスタント１００は、より短い時間で関連性のあるデータを提供し得る。たとえば、デジタルアシスタント１００は、環境センサ（たとえば、映像センサおよび／または音声センサ）を使用して関連性のある環境データを識別することによって、ユーザからのプロンプトなしで関連データについての補足情報を提供できる。本明細書に使用されるように、ユーザからのプロンプトは、言葉によるコマンド、（たとえば、マウス、タッチスクリーン、キーボード、トラックボール等を使用して）電子機器に入力を提供すること、またはアプリケーションを起動することを含むが、これに限定されるものではない。それにも関わらず、デジタルアシスタント１００は、ユーザからのプロンプトに反応してもよい。たとえば、デジタルアシスタント１００が、ユーザによって現在見られている本のコストをプロアクティブに提供する場合、ユーザはデジタルアシスタントに言葉による指示を発行して、次いでオンライン書店で本を購入してよい。または、デジタルアシスタント１００は、ユーザが言葉によるコマンドを発行することによって再生および／または記憶のためにアクセスできる場合がある、ユーザに最も近い音声データの最後の３０秒を記録してよい。
【００２６】
特定の実施形態では、デジタルアシスタント１００は、ステップ５１６で取り出された情報をプロアクティブに提供する前に、ユーザが情報を受け入れる準備が完了している旨の合図を待機することがある。たとえば、処理モジュール１５０は、取り出された情報をプロアクティブに出力する前に、ユーザが話すのを止めた後、つまり内向きマイク１４０がある期間ユーザの声を検出しないときまで待機できる。同様に、ユーザが会話に関与する場合、処理モジュール１５０は、ユーザおよび他の人が話すのをやめた後、つまりある期間、内向きマイク１４０がユーザの声を検出せず、外向きマイク１４２が他の人の声を検出しないときまで、取り出された情報をプロアクティブに出力するのを待つことができる。別の例として、処理モジュール１５０は、ユーザがある時間の長さ物体に注目する場合だけ、ユーザの環境にある物体についての補足情報をプロアクティブに提供してよい。たとえば、ユーザが都市の歩道に沿って歩いている場合、撮像モジュール１９０は、その視野を通過する看板、ポスター等の多くの物体を検出できる。ユーザが、ポスター等の特定の物体を見るために止まる、または振り向く場合、物体は撮像モジュール１９０の視界では相対的に静止しているだろう。処理モジュール１５０は、撮像モジュール１９０によってキャプチャされる物体の相対的に静止した画像が、ユーザが興味がある何かであると判断し、物体に関係する情報をプロアクティブに取り出し、ユーザに出力できる。
【００２７】
次の例は、図５に関連して上述された例示的なプロセスに関して、デジタルアシスタント１００等のプロアクティブデジタルアシスタントの考えられる使用を示す。第１の例では、ユーザは本屋に入り、本を取り上げる。撮像モジュール１９０は本の画像をキャプチャでき、画像は表紙に印刷された本の題名を含むことがある（ステップ５０６）。処理モジュール１５０はキャプチャされた画像を分析し、ユーザがショッピング中であり、本のユーザレビューに関係する情報から恩恵を受けるだろうと判断できる（ステップ５１０）。処理モジュール１５０は、次いでインターネットウェブサイトに接続するために通信モジュール１７０と通信して、本のレビュー情報を調べることができる。たとえば、ユーザによって取り上げられた本のためのウェブサイトは、本が５つ星の中から４つ星の平均評価を受けたことを示す、本についての評価情報を含んでよい。処理モジュール１５０は、ウェブサイトからこの評価情報を取り出すことができる（ステップ５１２）。処理モジュール１５０は、次いでユーザのために、取り出された評価情報の話し言葉のプレゼンテーションを生成できる（ステップ５１４）。たとえば、処理モジュール１５０は、「この本は５つ星の中から４つ星の平均評価を受けました」という音声によるフレーズを生成できる。取り出された評価情報の話し言葉のプレゼンテーションが生成された後、処理モジュール１５０は、ユーザが聞くために聴覚出力モジュール１３０に話し言葉のプレゼンテーションを出力できる（ステップ５１６）。代替実施形態では、処理モジュール１５０は、「この本は５つ星の中から４つ星の平均評価を受けました」と述べるテキスト等のグラフィック出力を生成し（ステップ５１４）、ユーザの視線内の視覚ディスプレイ（たとえば、ビデオスクリーン）にグラフィック出力を出力できる（ステップ５１６）。
【００２８】
処理モジュール１５０が話し言葉のプレゼンテーションを聴覚出力モジュール１３０に出力した後、処理モジュール１５０は、図５に説明されるプロセスの開始５００に戻ることができる。たとえば、ユーザは、上述された平均評価のプレゼンテーションを聞いた後、「本の価格はいくらですか」と声に出して尋ねてよい。処理モジュール１５０は、内向きマイク１４０からの音声データを分析し（ステップ５０２）、ユーザの言葉のコンテキストから、ユーザが価格情報に関心があると判断できる（ステップ５０８）。一実施形態では、処理モジュール１５０は、まず、ユーザが、たとえば、別の人間に尋ねるのと異なって、処理モジュール１５０に価格情報を決定することを求めていると判断してよい。たとえば、処理モジュール１５０は、質問の構文を使用して（たとえば、ユーザが質問を「失礼ですが」で始めた場合）、ユーザが、デジタルアシスタントシステム１００ではなく、人間に質問をしているのかどうか、したがってシステム１００は回答すべきではないのかどうかを判断してよい。。または、デジタルアシスタントシステム１００は、場所（たとえば、ユーザがヘルプデスクにいるのか、それとも人間に向き合っているのか）またはユーザの声の音量（たとえば、ユーザがデジタルアシスタントのセンサだけが検出できる質問を囁いている）を使用して、質問に回答するかどうかを判断してよい。処理モジュール１５０は、ユーザが支援を求めていると判断することができ（ステップ５１０）、再び通信モジュール１７０を使用して書籍を販売しているウェブサイトに接続する、またはインターネット検索を実行して、ユーザが保持している本の価格情報を取り出すことができる。たとえば、本のウェブサイトが、＄１２．９９の販売価格を示す本の価格情報を含むことがある。処理モジュール１５０は、ウェブサイトからの価格情報を取り出し（ステップ５１２）、次いで取り出された価格情報の話し言葉のプレゼンテーションを生成できる。たとえば、処理モジュール１５０は、「この本は十二ドル九十九セントで書籍販売ウェブサイトで販売されています」の話されるフレーズを生成できる（ステップ５１４）。取り出された評価情報の話し言葉のプレゼンテーションが生成された後、処理モジュール１５０は、ユーザが聞くために聴覚出力モジュール１３０に対して話し言葉のプレゼンテーションを出力できる（ステップ５１６）。
【００２９】
第２の例では、ユーザは飛行場にいて、フライトに搭乗するのを待機しており、自分の搭乗券を見ている。撮像モジュール１９０は、処理モジュール１５０に通信できる搭乗券の画像をキャプチャすることができ、処理モジュール１５０はキャプチャされた画像を分析して、フライト番号、ゲート番号、および出発時刻をはっきりさせることができる（ステップ５０６）。処理モジュール１５０は、ユーザが自分のフライトを待っており（ステップ５０８）、ユーザが自分のフライトまたは空港／ゲートまでの方向についての更新されたおよび／または変更された情報から恩恵を受ける（ステップ５１０）だろうと判断できる。たとえば、処理モジュール１５０は、ユーザがフライト情報を見ていて、出発時間が未来であると判断してよい。したがって、モジュール１５０は次いで更新されたフライト情報をプロアクティブに提供することが、ユーザにとって役に立つことがあると判断してよい。処理モジュール１５０は、次いで通信モジュール１７０と通信して、フライトについての最新の情報にアクセスできる。たとえば、通信モジュール１７０は、セルラーアダプタまたはＷｉ−Ｆｉアダプタを使用して、航空会社のウェブサイトにアクセスし、フライト番号に関連付けられたゲート番号および出発時刻をチェックし、オンライン情報をチケットからパースされた情報に比較してよい。たとえば、チケットは午後６：００の出発時刻を示していることがあるが、航空会社のウェブサイトは、午後６：３０の遅延した出発時刻を示す情報を含んでいることがある。処理モジュール１５０は、ウェブサイトから遅延した出発時刻を取り出し（ステップ５１２）、取り出された出発時刻の話し言葉のプレゼンテーションを生成できる（ステップ５１４）。たとえば、処理モジュール１５０は、「あなたのフライトは午後六時三十分まで遅れています」の話されるフレーズを生成できる。取り出されたフライト遅延情報の話し言葉のプレゼンテーションが生成された後、処理モジュール１５０は、ユーザが聞くために聴覚出力モジュール１３０に話し言葉のプレゼンテーションを出力できる（ステップ５１６）。
【００３０】
多様な状況では、デジタルアシスタント１００によって提供される情報は変更される可能性がある。上記の搭乗券の例を参照すると、出発時刻はさらに遅延される可能性がある、または遅延は、フライトが時間通りに発つことができるように解決される可能性がある。係る実施形態では、処理モジュール１５０は、変更があったかどうかを確かめるために再度情報を周期的に取り出すことができる。処理モジュール１５０は、変更があった場合にだけ更新された情報を提供してよい。たとえば、処理モジュール１５０が再び出発時刻をチェックし、遅延した出発時刻が依然として午後６：３０であると判断する場合、処理モジュール１５０は二度目にユーザに情報を提示しないことがある。ただし、処理モジュール１５０が、遅延した出発時刻が現在午後７：００であると判断すると、処理モジュール１５０は次いで、更新された情報の話し言葉のプレゼンテーションを生成できる。たとえば、処理モジュール１５０は、「あなたのフライトは現在さらに３０分遅延し・・・出発時刻は現在午後七時を予定しています」の話し言葉のフレーズを生成できる。デジタルアシスタント１００は、提供された最新情報のログを（たとえば、メモリモジュール１８０に）記憶して、ユーザにすでに提供された情報を追跡調査し、情報が繰り返されていないことを確実にしてよい。多様な実施形態では、デジタルアシスタント１００は、デジタルアシスタント１００が更新されたが変更されていない情報のプレゼンテーションを繰り返すことを可能にするユーザによって選択可能な優先順位を含むことができる。
【００３１】
第３の例では、ユーザは、ウェアラブルプロアクティブデジタルアシスタント１００が認識し、応答することができるジェスチャを実行してよい。たとえば、ユーザは腕時計を付けていない可能性があるが、時計を見ているかのように目に向かって腕を動かし、手首の上に丸を描く、または手首を軽くたたいてよい。デジタルアシスタンス１００の撮像モジュール１９０は、ユーザの目に向かう腕の移動をキャプチャできる（ステップ５０６）。処理モジュール１５０は、ユーザの腕の移動を、人が時計を見るために行う可能性があるジェスチャと同じまたは類似していると認識し（ステップ５０８）、ユーザが時間を知りたいのだろうと判断する（ステップ５１０）。処理モジュール１５０は通信モジュール１７０と通信して、たとえばインターネットから現在時刻のデータを取り出すことができる。代わりに、処理装置は、現在時刻を追跡調査する内蔵時計を含んでもよい。どちらのイベントでも、処理モジュール１５０は、現在時刻を取り出し（ステップ５１２）、取り出された時間データの話し言葉のプレゼンテーションを生成できる（ステップ５１４）。話し言葉のプレゼンテーションは、ユーザが聞くために聴覚出力モジュール１３０に出力できる（ステップ５１６）。
【００３２】
第４の例では、ユーザは同僚と話をしている可能性があり、同僚は「…まさに昨日の会議での男が言っていたように…いま彼の名前を思い出すことができない…」と言う可能性がある。同僚の声は外向きマイク１４２によって検出でき、処理モジュール１５０は同僚の話した言葉を分析して（ステップ５０４）、同僚が昨日の会議について話し合っており、ユーザとともに会議に出席していた人物の名前を探していることを識別できる（ステップ５０８）。処理モジュール１５０は、会議に出席した人物の名前を提供することがユーザに役に立つだろうと判断できる（ステップ５１０）。メモリモジュール１８０は、ユーザがいつ質問に回答できないのか、または履歴イベントを思い出そうと試みているのかを示すために使用される複数のキーワードを含んでよい。たとえば、デジタルアシスタントが「思い出すことができない」または「わからない」の話された言葉を検出すると、アシスタントは次いでユーザにプロアクティブに情報を提供することを決定してよい。特定の実施形態では、メモリモジュール１８０は、ユーザの過去のイベント、現在のイベント、および未来のイベントのカレンダを含むことがある。たとえば、メモリモジュール１８０は、出席者の名前を含む昨日の会議のレコードを記憶できる。処理モジュール１５０はメモリモジュール１８０と通信して、記憶されているレコードおよび出席者の名前を取り出すことができる（ステップ５１２）。処理モジュール１５０は、次いで聴覚出力モジュール１３０に出力される出席者の名前の話し言葉のプレゼンテーションを生成できる（ステップ５１４）。たとえば、処理モジュール１５０は、聴覚出力モジュール１３０に出力できる「ジョンスミスとジェーンドーが昨日の会議に参加しました」の話し言葉のフレーズを生成できる（ステップ５１６）。
【００３３】
特定の実施形態では、デジタルアシスタント１００は、マイク１４０、１４２および撮像モジュール１９０のすべてからの組み合わされた入力に基づいて関連性を推論できる。たとえば、ならびに図４、図６Ａ、および図６Ｂを参照すると、ユーザ６０２がデジタルアシスタント１００を着用しながら（たとえば、耳にまたは耳の中にデジタルアシスタント１００を着用しながら）会議６００に参加している場合、外向きマイク１４２は複数の声６１２ａ、６１２ｂ、および６１２ｃを検出できる。同様に内向きマイク１４０は、ユーザの声６０３を検出することができている。最後に、撮像モジュール１９０は、ユーザ６０２が、たとえば会議で着席している等、静止している場合、相対的に静的な画像６２２をおそらく検出している。矢印６２２は、撮像モジュール１９０の視野の方向を示す。たとえば、撮像モジュール１９０は、テーブル６０６の回りの、それぞれ椅子６０８ａ、６０８ｂ、および６０８に着席している三人６１０ａ、６１０ｂおよび６１０ｃの相対的に静的な（つまり静止）画像６２２を検出していてよい。さらに、相対的に静的な画像６２２は、会議室の壁６１４および室内の絵６１８を検出していてよい。別の壁６１６上の第２の絵６２０は、撮像モジュール１９０によってキャプチャされる画像６２２にはないことがある。処理モジュール１５０は、マイク１４０、１４２からの音声データ（ステップ５０２および５０４）、ならびに画像モジュール１９０からの画像データ（ステップ５０６）を分析し、ユーザが静止しており、議論に参加していると推論できる。その結果として、処理モジュール１５０は、会話に無関係である入力を無視できる。たとえば、撮像モジュール１９０は、会議室の壁６１４に掛けられている絵６１８を検出し得るが、処理モジュール１５０は、絵６１８が会話とは関連性がないと仮定し、絵６１８を無視できる。代わりに、処理モジュール１５０は、マイク１４０、１４２によって検出された声６１２ａ、６１２ｂ、６１２ｃおよび６０３の言葉およびフレーズを分析し、ユーザが会話に関係する追加情報から恩恵を受けることができるかどうかを判断できる。
【００３４】
別の例として、図４、図７Ａ、および図７Ｂを参照すると、ユーザ７０２が矢印Ａの方向で人通りの多い都市の歩道７０６に沿って一人で歩いている場合、デジタルアシスタント１００の外向きマイク１４２は、ユーザ７０２が歩くのにつれて通り過ぎる、それぞれ異なる人々７１８ａおよび７１８ｂの複数の声７２０ａおよび７２０ｂを検出することができている。たとえば、二人の人７１８ａおよび７１８ｂは矢印Ｂの方向で歩いていることがある。ただし、ユーザは誰にも話しかけていないので、内向きマイク１４０はユーザの声を検出していない。さらに、撮像モジュール１９０は、ユーザが歩いていくにつれてたえず変化する画像７２２を検出することができている。矢印７２２は、撮像モジュール１９０の視線の方向を示す。たとえば、キャプチャされた画像７２２が、歩道７０６、壁７０８、壁７０８の上のポスター７１２および７１４等の多様な物体の画像を含むことがある。また、キャプチャされた画像７２２は、他の人７１８ａおよび７１８ｂ、ならびにバス停の標識等の標識７１６を含むこともある。ユーザ７０２が矢印Ａの方向で歩くにつれて、画像７２２のシーケンスでキャプチャされる物体はユーザ７０２に向かって（つまり、図７Ｂに示されるようにページから外へ）移動する。処理モジュール１５０はマイク１４０、１４２からの音声データ（ステップ５０２および５０４）、ならびに撮像モジュール１９０からの画像データ（ステップ５０６）を分析し、ユーザが歩行中であり、誰にも話しかけていないこと、ならびに外向きマイク１４２によって検出されている声７２０ａおよび７２０ｂがユーザにとって重要ではないことを推論できる。その結果として、処理モジュール１５０は、外向きマイク１４２によって検出される会話が重要ではなく、無視できると仮定できる。さらに、処理モジュール１５０は、撮像モジュール１９０によって検出されているユーザ７０２の変化する周囲についての情報が、ユーザにとってより関連性があり、役立つ可能性があると推論できる。
【００３５】
別の例として、図４、図８Ａ、および図８Ｂを参照すると、ユーザ８０２が、ユーザ８０２が話しをしている同僚８０３といっしょに人通りの多い都市の歩道に沿って歩いている可能性がある。ここで、外向きマイク１４０は同僚８３０の声８３３、ならびにそれぞれ他の人８１８ａおよび８１８ｂの声８２０ａおよび８２０ｂも検出してよい。内向きマイク１４０は、ユーザ８０２が同僚８３０に話しかけるときにユーザの声８０３を検出できる。また、撮像モジュール１９０は、ユーザが歩くにつれたえず変化する場面を検出できる。矢印８２２は、撮像モジュール１９０の視界の方向を示す。たとえば、キャプチャされた画像８２２は、歩道８０６、壁８０８、壁８０８の上のポスター８１２および８１４等の多様な物体の画像を含むことがある。また、キャプチャされた画像８２２は、他の人８１８ａおよび８１８ｂ、ならびにバス停の標識８１６等の標識８１６を含むこともある。ユーザ８０２が矢印Ａの方向で歩くにつれ、画像８２２のシーケンスでキャプチャされる物体は、ユーザ８０２に向かって（つまり、図８Ｂに示されるようにページから外へ）移動する。処理モジュール１５０はマイク１４０、１４２からの音声データ（ステップ５０２および５０４）、ならびに撮像モジュール１９０からの画像データ（ステップ５０６）を分析し、ユーザ８０２が歩行中であること、および撮像モジュール１９０によって検出されているユーザ８０２の変化する周囲についての情報がユーザに関連性があり、役立つ可能性があることを推論できる。ただし、上述の例とは異なり、ユーザ８０２は歩行中であり、同僚８３０に話しかけている。処理モジュール１５０は、マイク１４０、１４２からの音声データ（ステップ５０２および５０４）を分析して、外向きマイク１４２によって検出されている１つの声、つまり同僚の声８３３が、ユーザ８０２が歩くのにつれて一定であるのに対し、それぞれ他の通行人８２０ａおよび８２０ｂの声８２０ａおよび８２０ｂの声が、ユーザ８０２が通行人を通り越して移動するのにつれ、行ったり来たりすると判断できる。また、処理モジュール１５０は、内向きマイク１４０によって検出されるユーザの声８０３が、同僚の声８３３が検出されないときにだけ検出される、つまりユーザ８０２および同僚８３０が代わる代わる話をしていることも判断できる。この分析から、処理モジュール１５０は、ユーザ８０２が同僚８０３と会話しているが、ユーザの声および同僚の声以外の声は無視できると識別できる。このようにして、処理モジュール１５０は、デジタルアシスタントのセンサによってキャプチャされる環境データから関連性のある情報を識別してよい。
【００３６】
多様な実施形態では、デジタルアシスタント１００は、広告用のプラットホームを提供できる。たとえば、雑誌は、通信モジュール１７０に、たとえばセルラーデータ接続等のデータ接続を提供するサービスプロバイダに広告料を支払うことができる。たとえばユーザが雑誌を販売するニューススタンドを通過する場合等、撮像モジュール１９０がユーザの環境で雑誌の画像を検出する場合、処理モジュール１５０は次いで聴覚出力モジュール１３０に広告を出力できる。たとえば、広告は「この雑誌はたった１５ドルでの年間購読できます」の話し言葉のフレーズであるだろう。広告収入は、デジタルアシスタント１００に無線データサービスを提供するコストのいくらかまたはすべてを相殺できるだろう。
【００３７】
特定の例では、デジタルアシスタント１００は、ヒントまたは合図を提供される場合、どの情報がユーザに関連性があるおよび／または役立つ可能性があるのかをよりうまく判断できる。多様な実施形態では、ユーザは、処理モジュール１５０がユーザがどのタイプの情報を聞きたいと思うのかを判断するのを助けるためにデジタルアシスタント１００に優先順位を事前設定できる（ステップ５１０）。たとえば、ユーザは、ユーザが環境保全を意識していることを示すためにデジタルアシスタント１００のユーザプロファイルと関連付けられた優先順位を設定することがある。その後、（ステップ５０６で撮像モジュール１９０によって見られる）ユーザが店舗で洗濯洗剤のビンを取り上げると、処理モジュール１５０は、ユーザが洗濯洗剤を買い求めていると判断できる（ステップ５０８）。処理モジュール１５０は、ユーザの現在の活動をプロファイルのユーザの事前設定された優先順位と一致させることによって、ユーザが、より環境に優しい可能性がある他の洗濯洗剤についての情報を、役立つ情報と感じるだろうと判断できる（ステップ５１０）。別の言い方をすれば、デジタルアシスタントは、ユーザプロファイルに設定された優先順位を使用して、デジタルアシスタントの視覚センサまたは聴覚センサによってキャプチャされる関連性のある情報をフィルタにかけ、識別してよい。この例では、処理モジュール１５０は通信モジュール１７０と通信して、より環境に優しい（ステップ５１４）洗濯洗剤のブランドについてインターネットから情報を取り出し（ステップ５１２）、ユーザに取り出された情報をプロアクティブに伝達できる（ステップ５１６）。
【００３８】
別の例として、ユーザは、お金を節約しようとしていることを示すためにデジタルアシスタント１００に優先順位を設定してよい。その後、（ステップ５０６で撮像モジュール１９０によって見られる）ユーザが店舗で洗濯洗剤のビンを取り上げると、処理モジュール１５０は、ユーザが洗濯洗剤を買い求めていると判断できる（ステップ５０８）。処理モジュール１５０は、ユーザプロファイルのユーザの事前に設定された優先順位を使用して、ユーザがより高価ではない洗濯洗剤についての情報を役立つ情報と感じるだろうと判断できる（ステップ５１０）。次いで、処理モジュール１５０は通信モジュール１７０と通信して、より高価ではない（ステップ５１４）洗濯洗剤のブランドについてインターネットから情報を取り出し（ステップ５１２）、ユーザに取り出された情報をプロアクティブに伝達できる（ステップ５１６）。
【００３９】
また、ユーザプロファイルは、騒音抑制を実行するために使用されてもよい。たとえば、デジタルアシスタント１００のイヤホーンは、選択可能な騒音抑制特長を含んでよい。キャプチャ環境データに基づいて、デジタルアシスタントは、ユーザがスポーツクレーコースにいると判断することがある。ユーザプロフファイルは、音声センサが誰かが「引け」と叫んだことを検出すると、処理モジュール１５０が、続く銃の発射音の音響を遮断するためにデジタルアシスタントの騒音抑制機能を起動するスポーツクレー優先順位を有していることがある。処理モジュール１５０は、発射音が消えたと判断した後、騒音抑制特長を解除してよい。言うまでもなく、係る例では、ユーザは、両方とも選択可能な騒音抑制特長を有する２つのイヤホーン（耳ごとに１つ）を有してよい。
【００４０】
一実施形態では、デジタルアシスタントは、ユーザと関連付けられた複数のユーザプロファイルを記憶してよい。デジタルアシスタントは、ユーザのカレントコンテキストに基づいてユーザにプロアクティブに情報を提供するためにどのユーザプロファイルを使用するのかを選択してよい。たとえば、デジタルアシスタントは、たとえば、ショッピング対仕事等、ユーザによって実行されている現在の活動に応じて異なるプロファイルを有してよい。デジタルアシスタントは、センサによってキャプチャされた環境データを評価することによってプロファイルを切り替えてよい。たとえば、ユーザがショッピング市場の中に歩いていく場合、デジタルアシスタントはユーザと関連付けられたショッピングプロファイルを使用してよい。対照的に、ユーザが自宅に入っていく場合、デジタルアシスタントは、たとえばユーザにもうすぐやってくる誕生日、記念日、もうすぐやってくる学校行事等を思い出させる等、家族プロファイルに切り替えてよい。
【００４１】
また、デジタルアシスタント１００は、ユーザについて記憶された情報を使用して、提案を提供することもできる。たとえば、ユーザは、最近食料品を買物し、デジタルアシスタント１００のメモリモジュール１８０は、ユーザが購入したすべてのもののリストを記憶しているだろう。特定の実施形態では、処理モジュール１５０は、撮像モジュール１９０によってキャプチャされるユーザのショッピングカートに入れられた品目の画像を分析し、各品目が何であるのかを判断し、メモリモジュール１８０に記憶されるリストに各品目を追加することによってリストを生成できる。ユーザがデジタルアシスタント１００に、ユーザがお金を節約しようとしていることを示すために優先順位を設定しており、後にレストランに入る場合、撮像モジュール１９０はレストランの画像をキャプチャし、処理モジュール１５０は画像を分析し（ステップ５０６）、ユーザがレストランでの食べ物にお金を使うところであると判断できる（ステップ５０８）。ユーザのお金を節約するという事前に設定された優先順位に基づいて、処理モジュール１５０は、ユーザが、より高価ではないレストランに対する代替策に関係する情報から恩恵を受けるだろうと認識できる（ステップ５１０）。たとえば、処理モジュール１５０はメモリモジュール１８０と通信して、購入された食料品の品目のリストから情報を取り出して、家で作る食事を提案することができる（ステップ５１２）。たとえば、購入された食料品の品目の取り出されたリストは、パスタおよびパスタソースを含むことがある。処理モジュール１５０は、「食料品店でパスタとパスタソースを昨日購入しました…家でパスタを作る方が外食するよりもより費用がかからないでしょう」等の話し言葉のフレーズを生成し（ステップ５１４）、聴覚出力モジュール１３０にこのフレーズをプロアクティブに出力できる（ステップ５１６）。または、ユーザがユーザのダイエットまたは健康的に食べたいという欲望に対応する優先順位を設定している場合、デジタルアシスタントは現在ユーザによって見られているメニュー品目に関連付けられた栄養成分（たとえば、カロリー、脂肪のグラム、ビタミン等）をプロアクティブに提供してよいか、またはアシスタントはレストランのレビューを調べ、最高評価の料理をユーザに知らせてもよい。
【００４２】
特定の実施形態では、デジタルアシスタント１００は、ユーザがどの情報を関連性があり、役立つと感じるのかを判断するためにユーザについて学習できる。たとえば、ユーザが、たとえば価格情報等、特定のタイプのプロアクティブに提供された情報に対してフォローアップの質問を尋ねる場合、デジタルアシスタント１００は、ユーザが将来価格情報を役立ち、関連性があると気付くだろうと推論できる。逆に、ユーザが製品評価についてのプロアクティブに提供された情報を無視する場合、デジタルアシスタント１００は、ユーザが評価に関心がないと推論でき、将来評価を提供するのをやめることができる。
【００４３】
多様な実施形態では、処理モジュール１５０は、機械学習アルゴリズムを組み込んで、コンテキストを識別する処理モジュール１５０の能力を改善できる。たとえば、処理モジュール１５０は、並行マルチインスタンス学習（ＭＩＬ）を使用して、複数のセンサからの多様な入力がどのようにある特定のコンテキストと関連付けられる可能性があるのかを学習できる。ＭＩＬフレームワークでは、バッグおよびインスタンスという２つのレベルのトレーニング入力がある。バッグは、複数のインスタンスを含む。ここで、バッグとは、ユーザの環境および／または活動のコンテキストであり、インスタンスとは、内向きマイク１４０によってもしくは外向きマイク１４２によって聞かれる音、または撮像モジュール１９０によって見られる等の、センサからの入力である。バッグは、インスタンスの内の少なくとも１つが識別されたコンテキストの範囲に含まれる場合、正とラベルが付けられる。ＭＩＬを使用したマシントレーニングの間、ラベルは、バッグ内のインスタンスではなく、バッグだけに必要とされる。コンテキストを識別する場合、ラベル付きのコンテキスト（たとえば、会議のために会議室に着席している）がバッグであり、センサからの異なる入力（たとえば、内向きマイク１４０によって検出されるユーザの声、外向きマイク１４２によって検出される他者の声、および撮像モジュール１９０によって検出される相対的に静的な画像）がインスタンスである。センサ入力（たとえば、他の人の声を検出する）のいずれか１つだけでは会議を示さない可能性があるが、センサ入力の組合せは会議中に同時に出現する傾向がある。係る共存または同時並列性は、組み合わされたセンサ入力（つまり、組み合わされたインスタンス）がユーザの環境および／または活動のコンテキストとして会議を示すという信頼水準を大幅に強化できる。多様な実施形態では、処理モジュール１５０は、異なるタイプのセンサ入力および異なるセンサ入力間の同時並列性のデータベースを含む、および／またはデータベースにアクセスできる。また、データベースは、センサ入力の同時並列性が発生するときに存在する可能性があるコンテキストのタイプを含むこともある。一実施形態では、コンテキストタイプは、情報がユーザにプロアクティブに提供されるべきである状況を識別するために、ユーザと関連付けられた特定のプロファイルを選択するために使用されてよい。
【００４４】
多様な実施形態では、デジタルアシスタント１００は、ユーザによって、より詳細な情報またはより詳細ではない情報を提供するようにカスタマイズできる。また、デジタルアシスタントは、より頻繁に、またはより頻繁にではなく情報を提供するようにカスタマイズすることもできる。たとえば、特定の実施形態では、ハウジング１０２は、ユーザが係る設定値を調整できるようにするためのボタンを含むことがある。他の実施形態では、ユーザは、これらの設定値を調整するために、通信モジュール１７０（たとえば、ＵＳＢアダプタ）を介してデジタルアシスタント１００をスマートフォン、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ等に接続できる。
【００４５】
多様な実施形態の説明が、例示のために提示されてきたが、包括的である、または開示されている実施形態に制限されることを意図していない。多くの変更形態および変形形態が、説明されている実施形態の範囲および精神から逸脱することなく当業者に明らかになるだろう。
【００４６】
本実施形態の態様は、システム、方法、またはコンピュータプログラム製品として具体化されてよい。したがって、本開示の態様は、すべて概して本明細書において「回路」、「モジュール」、または「システム」と呼ばれてよい、完全にハードウェアの実施形態、（ファームウェア、常駐ソフトウェア、マイクロコード等を含む）完全にソフトウェアの実施形態、またはソフトウェア態様およびハードウェア態様を結合する実施形態の形をとってよい。さらに、本開示の態様は、コンピュータ可読媒体（複数の場合がある）上に具体化されるコンピュータ可読プログラムコードを有する１つまたは複数のコンピュータ可読媒体（複数の場合がある）で具体化されるコンピュータプログラム製品の形をとってもよい。
【００４７】
１つまたは複数のコンピュータ可読媒体（複数の場合がある）の任意の組合せが活用されてよい。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であってよい。コンピュータ可読記憶媒体は、たとえば電子、磁気、光学、電磁気、赤外線または半導体のシステム、装置、もしくはデバイスまたは前記の任意の適切な組合せであってよいが、これに限定されるものではない。コンピュータ可読記憶媒体のより詳細な例（包括的ではないリスト）は、以下を含むだろう：１本または複数のワイヤを有する電気接続、携帯用コンピュータディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、消去可能ＰＲＯＭ（ＥＰＲＯＭまたはフラッシュメモリ）、光ファイバ、携帯用シーディーロム（ＣＤ−ＲＯＭ）、光記憶装置、磁気記憶装置、または前記の任意の適切な組合せ。本書との関連では、コンピュータ可読記憶媒体は、命令実行システム、命令実行装置、もしくは命令実行デバイスによってまたは命令実行システム、命令実行装置、もしくは命令実行デバイスとの関連で使用するためのプログラムを含む、または記憶できる任意の有形の媒体であってよい。
【００４８】
コンピュータ可読信号媒体は、例えばベースバンド内のまたは搬送波の一部として、その中で具体化されたコンピュータ可読プログラムコードとともに、伝搬データ信号を含んでよい。係る伝搬信号は、電磁気、光学、またはその任意の適切な組合せを含むが、これに限定されるものではないさまざまな形の内のいずれかをとってよい。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではなく、命令実行システム、命令実行装置、もしくは命令実行デバイスによってまたは命令実行システム、命令実行装置、もしくは命令実行デバイスとの関連で使用するためのプログラムを通信できる、伝搬できる、またはトランスポートできる任意のコンピュータ可読媒体であってよい。
【００４９】
コンピュータ可読媒体で具体化されたプログラムコードは、無線、有線、光ファイバケーブル、ＲＦ等、または前記の任意の適切な組合せを含むが、これに限定されるものではない任意の適切な媒体を使用して送信されてよい。
【００５０】
本開示の態様のための動作を実施するためのコンピュータプログラムコードは、Ｊａｖａ（登録商標）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋等のオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語または類似するプログラミング言語等の従来の手続き型プログラミング言語を含む、１つまたは複数のプログラミング言語の任意の組合せで作成されてよい。プログラムコードは、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、スタンドアロンソフトウェアパッケージとして、部分的にユーザのコンピュータ上および部分的にリモートコンピュータ上で、または完全にリモートコンピュータもしくはリモートサーバ上で実行してよい。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク（ＬＡＮ）もしくは広域ネットワーク（ＷＡＮ）を含む任意のタイプのネットワークを通してユーザのコンピュータに接続されてよい、または接続は（たとえば、インターネットサービスプロバイダを使用してインターネットを通して）外部コンピュータに対してなされてよい。
【００５１】
本開示の態様は、本開示の実施形態に係る方法、装置（システム）およびコンピュータプログラム製品のフローチャート図および／またはブロック図を参照して上述される。フローチャート図および／またはブロック図の各ブロック、ならびにフローチャート図および／またはブロック図のブロックの組合せは、コンピュータプログラム命令によって実装できることが理解されるだろう。これらのコンピュータプログラム命令は、汎用コンピュータ、特殊目的コンピュータのプロセッサ、または他のプログラマブルデータ処理装置に提供されてマシンを生み出すことができ、それによりコンピュータのプロセッサまたは他のプログラマブルデータ処理装置を介して実行する命令が、フローチャートおよび／またはブロック図の１つまたは複数のブロックに指定される機能／行為を実装するための手段を作成する。
【００５２】
また、これらのコンピュータプログラム命令は、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイスに特定の方法で機能するように命令することができる、たとえば固定コンピュータ可読媒体に記憶されてもよく、それによりコンピュータ可読媒体に記憶された命令は、フローチャートおよび／またはブロック図の１つまたは複数のブロックに指定される機能／行為を実装する命令を含む製造品を生み出す。
【００５３】
また、コンピュータプログラム命令は、コンピュータ、他のプログラマブルデータ処理装置または他のデバイスにロードされて、一連の操作ステップをコンピュータ、他のプログラマブル装置、または他のデバイスで実行し、コンピュータまたは他のプログラマブル装置で実行する命令が、フローチャートおよび／またはブロック図の１つまたは複数のブロックに指定される機能／行為を実装するためのプロセスを提供するようにコンピュータ実装プロセスを生み出してよい。
【００５４】
本開示の実施形態は、クラウドコンピュータインフラストラクチャを通してエンドユーザに提供されてよい。クラウドコンピューティングは、概してネットワーク上でのサービスとしてスケラブルなコンピューティングリソースを提供することを指す。より正式には、クラウドコンピューティングは、コンピューティングリソースとその基本的な技術アーキテクチャ（たとえば、サーバ、記憶領域、ネットワーク）との間で抽象概念を提供し、最小の管理努力またはサービスプロバイダの相互作用で迅速に調達およびリリースできる構成可能なコンピューティングリソースの共有プールへの便利でオンデマンドなネットワークアクセスを可能にするコンピューティング機能として定義されてよい。したがって、クラウドコンピューティングは、ユーザが、コンピューティングリソースを提供するために使用される基本的な物理システム（またはそれらのシステムの場所）を顧みることなく、「クラウド」内の仮想コンピューティングリソース（たとえば、記憶領域、データ、アプリケーション、および完全な仮想化されたコンピューティングシステム）にもアクセスできるようにする。
【００５５】
通常、クラウドコンピューティングリソースは、利用回数制料金でユーザに提供され、ユーザは実際に使用したコンピューティングリソース分（たとえば、ユーザによって消費された記憶領域空間の量またはユーザによってインスタンス化された仮想システムの数）だけ請求される。ユーザは、いつでも、およびインターネット全体でどこからでも、クラウドに常駐するリソースのいずれかにアクセスできる。本開示との関連では、ユーザは、アプリケーション（たとえば、映像処理アプリケーションおよび／または音声分析アプリケーション）またはクラウドで利用可能な関係データにアクセスしてよい。
【００５６】
図のフローチャートおよびブロック図は、本開示の多様な実施形態に係るシステム、方法、およびコンピュータプログラム製品の考えられる実装のアーキテクチャ、機能性、および動作を示す。この点で、フローチャートまたはブロック図の各ブロックは、指定された論理機能（複数の場合がある）を実装するための１つまたは複数の実行可能命令を含むモジュール、セグメント、またはコードの一部を表してよい。いくつかの代替実施形態では、ブロックに注記される機能が図中に注記される順序から外れて発生することがあることも留意されるべきである。たとえば、連続して示される２つのブロックは、事実上、実質的に並行して実行されることもあれば、ブロックは、関与している機能性に応じて逆の順序で実行されることもある。ブロック図および／またはフローチャート図の各ブロック、ならびにブロック図および／またはフローチャート図のブロックの組合せは、指定された機能もしくは行為、または特殊目的のハードウェアおよびコンピュータ命令の組合せを実行する特殊目的のハードウェアベースのシステムによって実装できることも留意されるだろう。
【００５７】
上記は、本開示の実施形態を対象にしているが、本開示の他の実施形態および追加の実施形態は、本開示の基本的な範囲から逸脱することなく考案されてよく、本開示の範囲は続く特許請求の範囲によって決定される。
【図１】
2015115069.tif 000003
【図２】
2015115069.tif 000004
【図３】
2015115069.tif 000005
【図４】
2015115069.tif 000006
【図５】
2015115069.tif 000007
【図６Ａ】
2015115069.tif 000008
【図６Ｂ】
2015115069.tif 000009
【図７Ａ】
2015115069.tif 000010
【図７Ｂ】
2015115069.tif 000011
【図８Ａ】
2015115069.tif 000012
【図８Ｂ】
2015115069.tif 000013
【外国語明細書】
2015115069000001.pdf