(57)【要約】【課題】仮想文脈情報を推薦に自動的に組み込む方法を提供する。【解決手段】この方法は、ユーザから１つ以上の推薦に対する要求を受信（４０２）し、要求に実質的に関連した現在の文脈を受信し、要求に対する仮想文脈を決定（４０４）し、仮想文脈に基づいて、ユーザに対する１つ以上の推薦を決定（４０８）し、この１つ以上の推薦をユーザに返信（４１０）する、ことから成る。仮想文脈は、現在の文脈から決定されてもよく、ユーザに関連した１つ以上の未来の時間及び／又は１つ以上の未来の場所から構成されてもよく、離散値、連続値、及び／又は、離散値と連続値との組み合わせを有し得る、１つ以上の文脈変数の結合分布を含んでもよい。【選択図】図４
2009181580.tif 000002
【特許請求の範囲】
【請求項１】
仮想文脈情報を推薦に自動的に組み込む方法であって、
ユーザから１つ以上の推薦に対する要求を受信し、
前記要求に実質的に関連した現在の文脈を受信し、
前記要求に対する仮想文脈を決定し、
前記仮想文脈に基づいて、前記ユーザに対する１つ以上の推薦を決定し、
前記１つ以上の推薦を前記ユーザに返信する、
ことを含む、方法であって、
前記仮想文脈は、前記現在の文脈から決定されてもよく、
前記仮想文脈は、前記ユーザに関連する、１つ以上の未来の時間、及び／又は、１つ以上の未来の場所を含んでもよく、
前記各仮想文脈は、離散値、連続値、及び／又は、離散値と連続値との組み合わせを有する１つ以上の文脈変数における結合分布を含んでもよい、
前記方法。
【請求項２】
前記仮想文脈を決定することは、
マッピング関数を構成し、
前記マッピング関数を前記現在の文脈に適用し、
前記マッピング関数の出力として、仮想文脈を生成する、
ことを含む、請求項１に記載の方法。
【請求項３】
前記マッピング関数を構成することは、
以前のユーザ要求に関連した以前の文脈と、以前のユーザ要求に関連して得られた以前の仮想文脈と、以前の文脈と該以前の文脈に対応する以前のユーザ要求に関する以前の仮想文脈との間のマッピング関係と、及び、以前のユーザ推薦要求に関連したユーザとの対話と、のうちの１つ以上のデータソースに基づいて、機械学習法により前記マッピング関数を決定する、
ことを含む、請求項２に記載の方法。
【請求項４】
前記各仮想文脈を決定することは、
時間分布を推定する、
場所分布を推定する、
前記場所分布及び前記時間分布に対する天候分布を決定する、
文脈に関連する好みの分布を決定する、及び／又は、
その他の文脈変数分布に関する公開データから推測される、仮想文脈関連状況分布を決定する、
ことを含む、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、推薦システム（ｒｅｃｏｍｍｅｎｄｅｒ  ｓｙｓｔｅｍ）に関する。より具体的には、本発明は、仮想文脈（ｈｙｐｏｔｈｅｔｉｃａｌ  ｃｏｎｔｅｘｔ）情報を推薦（ｒｅｃｏｍｍｅｎｄａｔｉｏｎ）に組み込む推薦システムに関する。
【背景技術】
【０００２】
ユーザは、自力で探すのは困難であると思われる項目又は箇所を見つけ出すために、推薦システムを用いる場合が多い。このような推薦システムは、ユーザに関する好み情報（ｐｒｅｆｅｒｅｎｃｅ  ｉｎｆｏｒｍａｔｉｏｎ）を有している場合のみ、効果的に機能する。特定のユーザに関して、システムが有している好み情報が多いほど、一般的に推薦がより効果的である。
【０００３】
しかしながら、好み情報を得ることは困難であり得る。多数の好みがあるため、ほとんどのユーザは、時間をかけて、好みの全てを指定したいとは思わない。更に、好みは、使用文脈に応じて変化し得る。この場合、ユーザは、モバイル機器を用いて好みを明示的に調整し得るが、ユーザインタフェースの制約によって、調整は煩雑となる。最後に、ユーザは、自分が無意識に行っているいくつかの選択に気付いていないこともある。
【０００４】
既存のシステムは、文脈、データを用いて好みを自動的に調整する。例えば、通常、ユーザは、自分が現在いる場所に近い場所を好む。モバイル推薦システムは、ユーザへの近接性によって分類された場所リストを示してもよい。しかしながら、今日の文脈依存型システムは、現在の文脈のみを用いて好みを修正する。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、仮想文脈情報を推薦に自動的に組み込む方法を提供することを目的としている。
【課題を解決するための手段】
【０００６】
本発明の一実施形態によって、仮想文脈又は、仮想文脈の分布（ｄｉｓｔｒｉｂｕｔｉｏｎ）を自動的に決定しやすくするシステムが提供される。作動中、システムは、ユーザから１つ以上の推薦に対する要求を受信する。また、システムは、要求に実質的に関連した現在の文脈を受信する。次に、システムは、要求に対する仮想文脈を決定する。仮想文脈は、複数の情報源（例えば、現在の文脈、過去の文脈、及び、現在の文脈と過去の文脈との間の関係が挙げられるが、これらに限定されない）を考慮して決定されてもよい。仮想文脈は、ユーザに関連する、１つ以上の未来の時間及び／又は１つ以上の未来の場所から構成されてもよい。また、各仮想文脈は、離散値、連続値、及び／又は、離散値と連続値との組み合わせを有する１つ以上の文脈変数の結合分布を含んでもよい。次に、システムは、仮想文脈に基づいて、ユーザに対する１つ以上の推薦を決定する。最後に、システムは、１つ以上の推薦をユーザに返信する。文脈変数は、要求に対する文脈における１つのパラメータを表す。文脈変数としては、場所、時間、天気、会場のタイプ、アクティビティに含まれる他の人々、及び、以前の要求に関連した観察可能変数を調べることによって推測された、選択的隠れ変数が挙げられる。
【０００７】
本発明のある実施形態では、１つ以上の仮想文脈を決定することは、マッピング関数を構成し、マッピング関数を現在の文脈に適用し、マッピング関数の出力として仮想文脈を生成する、ことを含む。
【０００８】
本発明のある実施形態では、マッピング関数は、以前のユーザ要求に関連した以前の文脈と、以前のユーザ要求に関連して得られた以前の仮想文脈と、以前の文脈と該以前の文脈に対応する以前のユーザ要求に関連した以前の仮想文脈との間のマッピング関係と、以前のユーザ推薦要求に関連したユーザとの対話と、のうちの１つ以上のデータソースに基づいて、機械学習法により決定される。
【０００９】
本発明のある実施形態では、各仮想文脈を決定することは、時間分布を推定する、場所分布を推定する、場所分布及び時間分布に対する天候分布を決定する、文脈に関連する好みの分布を決定する、及び／又は、その他の文脈変数分布に関する公開データから推測される、仮想文脈関連状況分布を決定する、ことを含む。
【００１０】
本発明のある実施形態では、システムは、時間分布を推定する際、現在の文脈の場所に関連した１つ以上の以前のユーザ要求を調べる。また、システムは、以前の各ユーザ要求に関連した文脈、及び、以前の各ユーザ要求に関連して得られた仮想文脈を決定する。更に、システムは、現在の文脈からそれに対応する仮想文脈の時間分布へのマッピングを決定する。マッピングを決定することは、現在の文脈に関連した時間に基づいて時間分布を生成すること、及び／又は、カレンダーエントリに関連した時間に基づいて時間分布を生成することを含み得る。次に、システムは、決定されたマッピングに基づいてマッピング関数を構成し、マッピング関数を現在の文脈に適用して仮想文脈の時間分布を決定する。
【００１１】
本発明のある実施形態では、場所分布を推定することは、ユーザが以前に指定したことのある場所分布、及び／又は、ユーザが以前に訪れたことのある場所から１セットの候補場所を収集することを含む。１セットの候補場所からは、所定回数より多く訪れていない候補場所、所定回数より多く指定されていない場所分布、現在の文脈に関連した時間から得られた期間内に指定されなかった場所分布、及び／又は、仮想文脈に関連した時間分布に対応する１つ以上の時間内に訪れなかった候補場所を、選択的に除外することができる。システムは、更に、１セットの候補場所、又は、１セットの候補場所の１つ以上の統計値から場所分布を決定する。例えば、統計値は、候補場所の平均値、中央値、最頻値、最大値、最小値、最終項目、又は、第１項目に基づいてもよい。
【００１２】
本発明のある実施形態では、１セットの候補場所の統計値は、各候補場所に最も近い会場のタイプに基づいて決定される。更に、場所分布は、１セットの候補場所中ではなく、少なくとも１つの候補場所の会場のタイプに関連した場所を含んでもよい。
【００１３】
本発明のある実施形態では、仮想文脈を決定することは、関連した時間が仮想文脈の時間分布とほぼ一致する文脈をカレンダーから取り出すことを含む。システムは、仮想文脈のその他の変数を、カレンダーから取り出した文脈の変数に設定する。
【００１４】
本発明のある実施形態では、天候分布を決定することは、検索を行って場所分布及び時間分布に対応する天気予報分布を決定することを含んでもよい。
【００１５】
本発明のある実施形態では、システムは、仮想文脈をカレンダーに保存することによって、次の仮想文脈を決定しやすくする。
【００１６】
本発明のある実施形態では、システムは、仮想文脈をユーザに提示し、仮想文脈に対する変更をユーザから受信し、変更を仮想文脈に適用する。
【００１７】
本発明の第１の態様は、仮想文脈情報を推薦に自動的に組み込む方法であって、ユーザから１つ以上の推薦に対する要求を受信し、要求に実質的に関連した現在の文脈を受信し、要求に対する仮想文脈を決定し、仮想文脈に基づいて、ユーザに対する１つ以上の推薦を決定し、１つ以上の推薦をユーザに返信する、ことを含む、方法であって、仮想文脈は、現在の文脈から決定されてもよく、仮想文脈は、ユーザに関連する、１つ以上の未来の時間、及び／又は、１つ以上の未来の場所、を含んでもよく、各仮想文脈は、離散値、連続値、及び／又は、離散値と連続値との組み合わせを有する１つ以上の文脈変数における結合分布を含んでもよい。
【００１８】
本発明の別の態様は、第１の態様の方法であって、仮想文脈を決定することは、マッピング関数を構成し、マッピング関数を現在の文脈に適用し、マッピング関数の出力として、仮想文脈を生成する、ことを含む。
【００１９】
本発明の別の態様は、第１の態様の方法であって、マッピング関数を構成することは、以前のユーザ要求に関連した以前の文脈と、以前のユーザ要求に関連して得られた以前の仮想文脈と、以前の文脈と該以前の文脈に対応する以前のユーザ要求に関する以前の仮想文脈との間のマッピング関係と、及び、以前のユーザ推薦要求に関連したユーザとの対話と、のうちの１つ以上のデータソースに基づいて、機械学習法によりマッピング関数を決定する、ことを含む。
【００２０】
本発明の別の態様は、第１の態様の方法であって、各仮想文脈を決定することは、時間分布を推定する、場所分布を推定する、場所分布及び時間分布に対する天候分布を決定する、文脈に関連する好みの分布を決定する、及び／又は、その他の文脈変数分布に関する公開データから推測される、仮想文脈関連状況分布を決定する、ことを含む。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態による、コンピュータ環境を示す図である。
【図２】本発明の一実施形態による、仮想文脈に基づいた推薦システムの一例を示す図である。
【図３】本発明の一実施形態による仮想文脈生成エンジンの動作の一例を示すブロック図である。
【図４】本発明の一実施形態による、仮想文脈を推薦質問に自動的に組み込むプロセスを示すフローチャートである。
【図５】本発明の一実施形態による、仮想文脈を決定するプロセスの一例を示すフローチャートである。
【図６】本発明の一実施形態による、時間を推定するプロセスの一例を示すフローチャートである。
【図７】本発明の一実施形態による、場所を推定するプロセスの一例を示すフローチャートである。
【図８】本発明による、仮想文脈を決定しやすくする、コンピュータ及び通信システムの一例を示す図である。
【発明を実施するための形態】
【００２２】
ユーザが、情報検索タスクを実行する際、文脈情報を追加して質問（ｑｕｅｒｙ）を補うと、有益であることが多い。例えば、ユーザは、メキシコ料理のレストランを探している場合、自分が大抵夕方によく行く街の一画にあり、且つ、予算が普段と同じで、且つ、大抵夜更かしするので深夜営業しているレストランが、応答に含まれることを望むであろう。しかしながら、１つの質問においてこれらの検索語を全て指定することは、システムにかなりの情報量を提供することを必要とするため、困難である。更に、このような指定は、ユーザが望む全ての質問のタイプに対する全ての質問パラメータの組み合わせを、複雑なユーザインタフェースを用いて指定することを要求する。
【００２３】
本発明の実施形態によれば、ユーザが即時文脈に関する推薦を必ずしも望まない状況に適応される、文脈依存型推薦システム（ｃｏｎｔｅｘｔ−ａｗａｒｅ  ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  ｓｙｓｔｅｍ）が提供される。例えば、ユーザは、水曜日の残業において、週末の遊びの計画を立てたい場合、勤務地付近で水曜日の遅くに関する推薦は、望まないであろう。代わりに、ユーザは、特定文脈に関する推薦を求めるであろう。以下の説明では、このような所望の特定文脈を「仮想文脈」と呼ぶ。
【００２４】
仮想文脈は、特定空間地点又は特定時間に限定されないことに留意されたい。１つの空間領域を指定できるし、複数の空間領域を指定することもできる。また、１つの期間を指定することもできるし、いくつかの期間を指定することもできる。これらの空間領域は隣接していなくてもよく、これらの期間は連続していなくてもよい。例えば、仮想文脈の一般的な表現は、空間と、時間と、その仮想文脈に含まれるその他のあらゆる変数との間における、従属的関係を特定することのできる、結合分布（ｊｏｉｎｔ  ｄｉｓｔｒｉｂｕｔｉｏｎ）である。また、結合分布は、確率密度（又は、離散変数の場合には確率質量）を特定し、確率密度は、変数値（例えば、空間領域や期間）の重みを異ならせることができる。これは、推薦作成の際における仮想文脈の使用可能程度に影響を及ぼす。例えば、推薦は、重みの軽い変数値よりも重みの重い変数値に適している可能性が高い。
【００２５】
ユーザは、例えば、地図位置をクリックしたり、時間を入力したり、その他の文脈要素（天気、社会集団、感情状態など）を提供したりすることによって、仮想文脈を推薦システムに明示的に伝えることができる。しかしながら、特に物理インタフェースの小さいモバイル機器においては、このようなパラメータを全て適切に調整することは困難であり、且つ、時間がかかる可能性が高い。
【００２６】
本発明の実施形態によれば、ユーザの質問に関する文脈データが自動的に決定され得るプロセスが、提供される。このような実施形態は、ユーザの現在の文脈（場所、時刻、曜日、カレンダー情報、天候など）、及び、これまでの文脈を利用する。本明細書中で使用する「文脈」という語は、ユーザの行動に関連する情報だけでなく、物理的環境（例えば、時間、場所、天気）に関する情報も指す、ということに留意されたい。このプロセスの出力が仮想文脈であり、仮想文脈は、最も可能性の高い文脈であるか、或いは、可能文脈の一確率分布である。この出力を用いることによって、後の段階で行われる、予測文脈情報が与えられた質問に応えるために最適な推薦を検索するプロセスに、情報を提供してもよい。
【００２７】
本発明の一実施形態によれば、ユーザに対する推薦に仮想文脈情報を自動的に組み込みやすくするシステムが、提供される。作動中、システムは、ユーザから推薦要求を受信する。次に、システムは、要求に対する仮想文脈を決定する（仮想文脈は、現在の文脈から決定されてもよい）。仮想文脈は、時間、場所、時間分布、及び／又は場所分布から構成され得る、ということに留意されたい。次に、システムは、仮想文脈に基づいて、ユーザに対する推薦を決定する。最後に、システムは、推薦をユーザに返信する。
【００２８】
前記推薦をユーザに返信することは、項目リストをユーザに返信することを含んでもよいことに留意されたい。リストは、仮想文脈から得られる基準に基づいて、分類されてもよい。
【００２９】
一実施形態では、システムは、機械学習（ｍａｃｈｉｎｅ−ｌｅａｒｎｉｎｇ）メカニズムを介する質問関連文脈から仮想文脈へのマッピングを自動的に決定する。機械学習メカニズムへの入力データは、以前の質問関連文脈及びそれに関連した以前の仮想文脈から成る。以前の仮想文脈は、自動的に決定されたものであってもよいし、システムとの明示的なユーザとの対話によって決定されたものであってもよい。これらの入力データから、機械学習メカニズムはマッピングを構成し、次に、マッピングを新しい入力状況に適用することによって、仮想文脈を算出することができる。
【００３０】
本発明のある実施形態では、仮想文脈を決定することは、時間分布を推定する、場所分布を推定する、天候分布を決定する、文脈に関連する好みの分布を決定する、及び、その他の変数の結合分布に対応する公開データから推測され得る現在の文脈に関連した状況分布を決定する、ことを含む。
【００３１】
本発明の一実施形態では、質問関連文脈から仮想文脈へのマッピングを決定するのに十分な以前の質問がない場合、デフォルト仮想文脈を構成してもよい。例えば、ユーザが自分の行ったことのない、又は、限られた回数しか訪れたことのない場所に関する情報を要求している場合、システムは、ユーザは即時情報を求めていると推測し、仮想文脈の時間を現在の時間又は現在の時間より少しだけ（例えば、１５分）先の時間に設定してもよい。一方、ユーザは、自分が以前に何回も尋ねたことのある（例えば、自宅又は職場付近の）場所に関する情報を求めている場合には、（例えば、未来時間における又は異なる場所に関する）異なる文脈を想定して問い合わせている。
【００３２】
本発明のある実施形態では、システムは、仮想文脈を決定した後に、１つの推薦又は一連の推薦を作成する一方、本発明の別の実施形態では、システムは、決定された仮想文脈を推薦エンジンに送ることに留意されたい。
【００３３】
本発明のある実施形態では、前記時間分布を推定することは、場所に関連した以前の要求を調べる、要求に対する以前の文脈を決定する、以前の要求の際にユーザが設定した以前の時間を決定する、ことを含む。
【００３４】
例えば、以前の要求が全て週末に設定されている場合、システムは、現在の仮想文脈時間を週末に設定する。更に、システムは、仮想文脈時間を、ユーザのカレンダーにおける他のイベントに関連して設定することができる。例えば、以前の仮想文脈時間が、ユーザのカレンダーにおける稀なイベントの直前に設定されていた場合、システムは、仮想文脈時間を、ユーザのカレンダーにおける次の稀なイベントの直前に設定することができる。
【００３５】
本発明のある実施形態では、待機時間中にカレンダー項目及び仮想文脈をスキャンしてこれらにインデックスを付けることにより、より速く検索しやすくすることができることに留意されたい。
【００３６】
本発明のある実施形態では、場所分布を推定することは、ユーザが以前に指定したことのある場所分布、及び／又は、ユーザが以前に訪れたことのある場所から、１セットの候補場所を収集することを含む。１セットの候補場所からは、所定回数より多く訪れていない候補場所、所定回数より多く指定されていない場所分布、現在の文脈に関連した時間から得られた期間内に指定されなかった場所分布、及び／又は、仮想文脈に関連した時間分布に対応する１つ以上の時間内に訪れなかった候補場所を、選択的に除外することができる。システムは、更に、１セットの候補場所又は１セットの候補場所の１つ以上の統計値から場所分布を決定する。例えば、統計値は、候補場所の平均値、中央値、最頻値、最大値、最小値、最終項目、又は、第１項目に基づき得る。本発明のある実施形態では、システムは、ユーザのアドレス帳からアドレスを利用することによって、仮想文脈場所の決定を助けてもよい。
【００３７】
本発明のある実施形態では、前記仮想文脈を決定することは、関連した時間が仮想文脈の時間分布とほぼ一致する文脈をカレンダーから取り出すことを含む。システムは、仮想文脈のその他の変数を、カレンダーから取り出した文脈の変数に設定する。別の実施形態では、システムは、場所の分かる未来のイベントと過去のイベントとの共通キーワードを探すことによって、仮想文脈を決定する。
【００３８】
本発明のある実施形態では、システムは、仮想文脈を各カレンダーエントリと共に記憶することによって、未来の仮想文脈を作成しやすくすることに留意されたい。
【００３９】
本発明のある実施形態では、前記天候分布を決定することは、検索を行って前記場所分布及び前記時間分布に対応する天気予報分布を決定することを含み得る。
【００４０】
ある実施形態では、システムは、仮想文脈及び現在の文脈に基づいて、ユーザに対する推薦を決定する。例えば、システムは、ユーザが（ＧＰＳ装置からの入力データに基づいて）現在地下鉄に乗っていると判別した場合、ユーザが地下鉄の中で設定した以前の仮想文脈を決定することによって、現在の仮想文脈の決定を助けることができる。このような実施形態では、特定の場所は、一般カテゴリーの場所ほど重要ではないこともある。
【００４１】
ある実施形態では、システムは、ユーザの現在の場所を決定する。次に、システムは、仮想文脈、及び、現在の場所に基づいて、ユーザに対する推薦を決定する。現在の場所は、一地点ではなく同質地域全体を表し得ることに留意されたい。例えば、システムは、ユーザに関連した現在の場所が大学のキャンパス内であると判別した場合、大学のキャンパス内における場所を含む、以前の質問データを全て組み合わせることによって、現在の仮想文脈の決定を助けてもよい。
【００４２】
ある実施形態では、システムは、仮想文脈をカレンダーエントリと共に保存することによって、次の仮想文脈を決定しやすくする。
【００４３】
ある実施形態では、システムは、仮想文脈をユーザに提示し、仮想文脈に対する変更をユーザから受信し、変更を仮想文脈に適用する。例えば、システムは、推奨仮想文脈をユーザに提示して、ユーザが変更を行うことができるようにしてもよい。これは、ユーザに対して、押し付けがましくない方法で行うことができるため、ユーザは、推奨仮想文脈を単に無視することを選択してもよいことに留意されたい。
【００４４】
図１は、本発明の一実施形態によるコンピュータ環境１００を示している。コンピュータ環境１００は、多数のコンピュータシステムを含み、通常、これらのコンピュータシステムは、マイクロプロセッサ、メインフレームコンピュータ、デジタル信号プロセッサ、携帯用コンピュータデバイス、電子手帳、デバイスコントローラ、又は、電気器具内の計算エンジンに基づいた、あらゆるタイプのコンピュータシステムを含み得る。より具体的には、図１を参照すると、コンピュータ環境１００は、クライアント１１０〜１１２、ユーザ１２０及び１２１、サーバ１３０、１４０、１５０、ネットワーク１６０、データベース１７０、並びに、デバイス１８０を含む。
【００４５】
クライアント１１０〜１１２は、計算機能と、ネットワークを介して通信するメカニズムとを含む、ネットワーク上のあらゆるノードを含み得る。
【００４６】
同様に、通常、サーバ１３０、１４０、１５０は、クライアントからの要求を計算及び／又はデータ記憶リソースに提供するメカニズムを含む、ネットワーク上のあらゆるノードを含み得る。
【００４７】
ユーザ１２０及び１２１は、個人、個人のグループ、組織、組織のグループ、コンピュータシステム、コンピュータシステムのグループ、又は、コンピュータ環境１００とやりとりすることのできる、あらゆるエンティティを含み得る。
【００４８】
ネットワーク１６０は、計算ノード同士をつなぎ合わせることのできる、あらゆるタイプの有線又は無線通信チャネルを含み得る。例としては、ローカルエリアネットワーク、広域ネットワーク、又は、ネットワークを組み合わせたものが挙げられるが、これらに限定されない。本発明の一実施形態では、ネットワーク１６０は、インターネットを含む。また、本発明のある実施形態では、ネットワーク１６０は、電話及び携帯電話ネットワークを含む。
【００４９】
データベース１７０は、不揮発性記憶装置にデータを記憶する、あらゆるタイプのシステムを含み得る。例としては、磁気、光、又は光磁気記憶装置、並びに、フラッシュメモリ及び／又はバッテリーバックアップメモリに基づいた記憶装置に基づいたシステムが挙げられるが、これらに限定されない。データベース１７０は、サーバ（例えば、サーバ１５０）につなぐ、クライアントにつなぐ、又は、ネットワークから直接つなぐ、ことができることに留意されたい。
【００５０】
デバイス１８０は、クライアント（例えば、クライアント１１２）につなぐことのできる、あらゆるタイプの電子機器を含み得る。例としては、携帯電話、携帯情報端末（ＰＤＡ）、スマートフォン、パーソナル音楽プレーヤー（例えば、ＭＰ３プレーヤー）、ゲーム機、デジタルカメラ、携帯用記憶媒体、又は、クライアントにつなぐことのできるその他のあらゆるデバイスが挙げられるが、これらに限定されない。本発明のある実施形態では、デバイス１８０は、ネットワーク１６０に直接つなぐことができると共に、クライアント１１０〜１１２と同様に機能することができることに留意されたい。デバイス１８０は、デバイスのための入力メカニズムと、ユーザ１２０及び１２１に情報を表示するための出力メカニズムとの両方を提供する、タッチセンサー式ディスプレイを含み得る。
【００５１】
本発明の異なる実施形態には、異なる構造を用いてもよく、コンピュータ環境１００に示されている構造に限定されないことに留意されたい。
【００５２】
図２は、本発明の一実施形態による、仮想文脈に基づいた一例としての推薦システムを示している。システムは、推薦要求２０２をユーザから受信すると、推薦要求２０２を仮想文脈生成エンジン２０６に提供する。仮想文脈生成エンジン２０６は、１セットの現在の文脈情報２０４（一実施形態では、例として、時刻、曜日、ユーザの場所、現在の天気、ユーザのカレンダーのコンテンツ、ユーザの電子メール又はインスタントメッセージから抽出されたキーワードなど）を、入力データとして用いる。ユーザは、推薦要求２０２と共にいくらかの好み情報も提供し得ることに留意されたい。推薦要求２０２及び現在の文脈情報２０４に基づいて、仮想文脈生成エンジン２０６は、１セットの仮想文脈２１０を生成する。仮想文脈２１０は、ユーザにアクティビティを推薦するのに用いることができる、異なる場所、異なる時間、又はユーザの好み情報を示し得ることに留意されたい。場合によっては、これらの仮想文脈２１０は、異なる文脈値の確率分布であってもよい。
【００５３】
仮想文脈２１０及び推薦要求２０２に基づいて、推薦生成エンジン２０８は、１セットの推薦２１２を生成する。例えば、推薦２１２としては、未来の時間又はユーザの現在の場所とは異なる場所に関連したアクティビティや会場が挙げられる。つまり、システムは、仮想文脈を用いることによって、現在の文脈の範囲外にあるユーザの好みを予測することができる。
【００５４】
一実施形態では、仮想文脈生成エンジンは、現在の文脈情報から仮想文脈へのマッピング関数を構成する機械学習メカニズムを含み得る。図３は、本発明の一実施形態による仮想文脈生成エンジンの動作を示す、一例としてのブロック図である。この例では、学習エンジン３１０は、現在の文脈から仮想文脈へのマッピング関数を構成することができる。
【００５５】
一実施形態では、学習エンジン３１０は、２つの入力データを有する。第１の入力データは過去の文脈情報３０６を含み、第２の入力データは、推薦との過去のユーザとの対話３０８を含む。これらの過去の文脈３０６及びシステムとの過去のユーザとの対話３０８は、ユーザの過去の推薦要求例と関連付けられている。一実施形態では、ユーザの過去の推薦要求、要求時間に対応する文脈情報、及び、推薦要求に関連した前の又は後のユーザとの対話（例えば、ユーザ及び／又はユーザの推薦選択によって提供された好み情報）が、データベース３０４に記憶される。
【００５６】
これらの入力データに基づいて、学習エンジン３１０は、マッピング関数３１２を構成する。学習エンジン３１０は、マッピング関数３１２を構成するのに様々な機械学習法を用いることができることに留意されたい。このような機械学習法としては、ルールベース学習法、最近傍法、カーネル法、ベイジアンネットワーク、及び、階層隠れマルコフモデルが挙げられるが、これらに限定されない。同様に、マッピング関数３１２は、入力文脈情報の関数として、１セットの決定論的ルールであってもよいし、１セットの確率分布であってもよい。
【００５７】
マッピング関数適用モジュール３１６は、ユーザの推薦要求３１８に基づいて、マッピング関数３１２を１セットの現在の文脈３２０に適用する。ユーザの推薦要求３１８は、何らかの文脈値（例えば、時間及び／又は場所）を指定してもよいし、指定しなくてもよい。結果として、マッピング関数適用モジュール３１６は、１セットの仮想文脈３１４（一実施形態では、例として、ラベル付けされた１セットの出力特性）を生成する。次に、仮想文脈３１４を推薦生成エンジンが用いることにより、推薦リストが生成され得る。仮想文脈３１４、及び、その後のシステムとのユーザとの対話が、データベース３０４に記憶されることによって、学習エンジン３１０は、マッピング関数３１２を調整することができる。
【００５８】
図４〜図７に示されている例としてのプロセスに関する以下の説明は、現在の文脈から仮想文脈へのマッピング関数を構成する、いずれの特定方法にも限定されない。システムは、決定論的ルールベース法を用いてもよいし、上に挙げたようないずれの機械学習法を用いてもよい。
【００５９】
図４は、本発明の一実施形態による、仮想文脈を推薦質問に自動的に組み込むプロセスを示す、フローチャートである。
【００６０】
作動中、システムは、ユーザ（例えば、ユーザ１２０）から、少なくとも１つの質問パラメータから成る推薦要求を受信する（４０２）。次に、システムは、要求に対する仮想文脈を、現在の文脈から決定する（４０４）。仮想文脈は、ユーザに関連した未来の時間及び／又は未来の場所から構成され得ることに留意されたい。
【００６１】
本発明のある実施形態では、システムは、推薦を作成する前に、検討及び／又は了承のため、仮想文脈をユーザ１２０に提示する（４０６）。次に、システムは、質問パラメータ及び仮想文脈に基づいて、ユーザ１２０に対する推薦を決定する（４０８）。最後に、システムは、推薦をユーザに返信する（４１０）。
【００６２】
図５は、本発明の一実施形態による、仮想文脈を決定する一例としてのプロセスを示す、フローチャートである。
【００６３】
作動中、システムは、いくつかの変数の分布を推定することによって、仮想文脈を決定する。この例では、システムは、要求に対する時間分布を推定する（５０２）。システムは、更に、要求に対する場所分布を推定する（５０６）。必要に応じて、システムは、天候分布も推定することができる（５０７）。更に、システムは、文脈に関係する好みを決定する（５０８）。次に、システムは、これらの推定及び決定に基づいて、仮想文脈を作成する（５１０）。上記動作はどのような順序で行われてもよいことに留意されたい。
【００６４】
図６は、本発明の一実施形態による、時間分布を推定する一例としてのプロセスを示す、フローチャートである。
【００６５】
作動中、システムは、現在の要求に関連した場所に対する以前の要求を調べる（６０２）。次に、システムは、以前の要求に関連した以前の文脈を決定し（６０４）、ユーザが設定した以前の時間を決定する（６０６）。その後、システムは、情報を用いて時間分布を決定する（６０８）。
【００６６】
一実施形態では、システムは時間パターンを検索することに留意されたい。例えば、推薦システムの以前の使用によって、通常ユーザは、午前８時にその日の夕方に関する質問を行うということが示された場合、システムは、このような時間パターンを学習することができる。次回ユーザが午前８時に質問を行った場合、システムは、仮想文脈の時間をその日の夕方に設定する。仮想文脈生成エンジンは、現在の時間と仮想文脈の時間との差を設定することによって、時間的推移を符号化することができる。
【００６７】
１日の中の時間差に加えて、他の時間パターンを取り込むこともできる。例えば、ユーザは、平日の午前８時に、土曜の午後にすることについて知ろうと求める。この場合、仮想文脈生成エンジンの出力は、週の始まりとユーザが関心のある時間との差として符号化される。これは、（１つは入力時間に対し、もう１つは週の始まりに対する）２つの時間出力変数を予測することによって、機械学習フレームワークに組み込むことができる。また、更なる時間変数（例えば、１日の始まりに対する時間、特定のイベントに対する時間など）を含めることもできる。更に、システムは、正しい可能性が最も高いのはどの時間出力変数であるかを示すことができる。
【００６８】
図７は、本発明の一実施形態による、場所分布を推定する一例としてのプロセスを示す、フローチャートである。
【００６９】
作動中、システムは、まず、ユーザが最もよく指定する場所を決定する（７０２）。次に、システムは、時間分布に対応する時間にユーザが最もよくいる場所を決定する（７０４）。次に、システムは、全ての候補場所の平均値を計算し、１つの場所範囲を平均値の標準偏差に設定する（７０６）。次に、システムは、これらの入力データを用いて場所分布を推定する（７０８）。図７に示されている例は、場所分布を計算する多数の方法のうちの１つにすぎないことに留意されたい。また、他の方法も可能である。
【００７０】
図８は、本発明による、仮想文脈を決定しやすくする、一例としてのコンピュータ及び通信システムを示している。コンピュータ及び通信システム８００は、通信モジュール８４０につながれており、プロセッサ８１０、メモリ８２０、及び記憶装置８３０を含む。記憶装置８３０は、いくつかのアプリケーション（例えば、アプリケーション８４２及び８４４）を記憶している。また、記憶装置８３０は、仮想文脈生成器８３４を含む推薦アプリケーション８３２も記憶している。
【００７１】
作動中、推薦アプリケーション８３２は、記憶装置８３０からメモリ８２０にロードされ、プロセッサ８１０によって実行されることにより、ユーザに、レジャー活動を推薦する。
【図１】
2009181580.tif 000003
【図２】
2009181580.tif 000004
【図３】
2009181580.tif 000005
【図４】
2009181580.tif 000006
【図５】
2009181580.tif 000007
【図６】
2009181580.tif 000008
【図７】
2009181580.tif 000009
【図８】
2009181580.tif 000010