(57)【要約】【課題】本発明は、文脈情報からユーザに対する行動種別を決定する推論モデルを生成するプログラムを提供することを目的としている。【解決手段】プログラムは、ユーザに関連する、少なくとも位置座標のセットを含む文脈情報のセットを受信し、文脈情報と行動種別との関連性を決定し、関連性の一部に基づいて、行動推論モデルを生成し、行動推論モデルは、文脈情報の１つのインスタンスを入力パラメータとして用いて、対応する行動種別を出力し、行動推論モデルのパラメータは、ユーザの文脈の履歴の全内容にではなく、ユーザの文脈の履歴に関連する少なくとも統計値に基づいている、ことをコンピュータに実行させる。【選択図】図１
2011108245.tif 000002
【特許請求の範囲】
【請求項１】
文脈情報からユーザに対する行動種別を決定する推論モデルを生成するプログラムであって、
前記プログラムは、
前記ユーザに関連する、少なくとも位置座標のセットを含む文脈情報のセットを受信し、
前記文脈情報と前記行動種別との関連性を決定し、
前記関連性の一部に基づいて、行動推論モデルを生成し、前記行動推論モデルは、前記文脈情報の１つのインスタンスを入力パラメータとして用いて、対応する行動種別を出力し、前記行動推論モデルのパラメータは、前記ユーザの文脈の履歴の全内容にではなく、前記ユーザの前記文脈の履歴に関連する少なくとも統計値に基づいている、
ことを、コンピュータに実行させるためのプログラム。
【請求項２】
前記文脈情報は、複数のタイムスタンプされた位置座標を含む、請求項１に記載のプログラム。
【請求項３】
前記文脈情報は、１つの場所に関連する１つ以上の行動から適切な行動種別を識別しやすくする、場所特定文脈データを含む、請求項１に記載のプログラム。
【請求項４】
前記文脈情報の各インスタンスは、時刻、時間範囲、曜日、曜日範囲、日にち、日にち範囲、気象条件、交通条件、社会的文脈、感知動作、周囲音、及び周囲ビデオフィードのうちの１つ以上を示す、請求項１に記載のプログラム方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、推薦システム(recommender system)に関する。より具体的には、本発明は、ユーザの位置追跡（location trace）及び文脈データ（contextual data）に関連する行動を推論する方法、装置、及びプログラムに関する。
【背景技術】
【０００２】
推薦システムの目的は、個人が、個人では必ずしも見つけることのできないものを発見することを助けることである。このような推薦システムは、ユーザからの問合せ（クエリ）に応答して、個別に推薦を行うことができる。効果的な推薦は、システムがどの程度正確にユーザのニーズ及び好みを推定できるかで決まる。例えば、オンラインショッピングサイトのようなシステムは、ユーザの調査結果、又はユーザの過去の選択を用いて、このような情報を導出する。しかしながら、ユーザの選択の履歴へのアクセスが制限されているシステム、又はユーザの調査結果を得るのが難しいシステムでは、このような情報を集めることは困難となる。更に、一般的な推薦システムは、各ユーザに対する多くの様々な位置、及び文脈情報を扱うようには構成されていない。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明は、文脈情報からユーザに対する行動種別を決定する推論モデルを生成するプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００４】
本発明の態様は、文脈情報からユーザに対する行動種別を決定する推論モデルを生成するシステムを提供する。作動中、システムは、ユーザに関連する、少なくとも位置座標のセットを含む、文脈情報のセットを受信する。次にシステムは、文脈情報と行動種別との関連性を決定する。次にシステムは、この関連性の一部に基づいて、行動推論モデルを生成し、この行動推論モデルは、文脈情報の１つのインスタンスを入力パラメータとして用いて、対応する行動種別を出力する。このモデルのパラメータは、ユーザの文脈の履歴の全内容にではなく、ユーザの文脈の履歴に関連する少なくとも統計値に基づいている。
【０００５】
本発明の態様では、文脈情報は、複数のタイムスタンプされた位置座標を含む。
【０００６】
本発明の態様では、文脈情報は、１つの場所に関連する１つ以上の行動から適切な行動種別を識別しやすくする、場所特定文脈データを含む。
【０００７】
本発明の態様では、文脈情報の各インスタンスは、時刻、時間範囲、曜日、曜日範囲、日にち、日にち範囲、気象条件、交通条件、社会的文脈、感知動作、周囲音、及び周囲ビデオフィードのうちの１つ以上を示す。
【０００８】
本発明の態様では、システムは、ユーザに対する場所特定文脈を決定する。このときシステムは、１つの場所に関連するユーザ役割セットを示す情報を受信する。システムは、更に、この場所に関連する文脈情報を分析してパターンを決定し、この決定したパターンに合うユーザ関連役割を決定する。
【０００９】
本発明の態様では、役割は、行動推論モデルと関連して決定される。
【００１０】
本発明の態様では、システムは、その場所に関連する決定された役割に対応する、ユーザに対する行動種別を決定する。
【００１１】
本発明の第１の態様は、文脈情報からユーザに対する行動種別を決定する推論モデルを生成するプログラムであって、プログラムは、ユーザに関連する、少なくとも位置座標のセットを含む文脈情報のセットを受信し、文脈情報と行動種別との関連性を決定し、関連性の一部に基づいて、行動推論モデルを生成し、行動推論モデルは、文脈情報の１つのインスタンスを入力パラメータとして用いて、対応する行動種別を出力し、行動推論モデルのパラメータは、ユーザの文脈の履歴の全内容にではなく、ユーザの文脈の履歴に関連する少なくとも統計値に基づいている、ことをコンピュータに実行させる。
【００１２】
本発明の第２の態様は、第１の態様のプログラムであって、文脈情報は、複数のタイムスタンプされた位置座標を含む。
【００１３】
本発明の第３の態様は、第１の態様のプログラムであって、文脈情報は、１つの場所に関連する１つ以上の行動から適切な行動種別を識別しやすくする、場所特定文脈データを含む。
【００１４】
本発明の第４の態様は、第１の態様のプログラムであって、文脈情報の各インスタンスは、時刻、時間範囲、曜日、曜日範囲、日にち、日にち範囲、気象条件、交通条件、社会的文脈、感知動作、周囲音、及び周囲ビデオフィードのうちの１つ以上を示す。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態による、推薦システムのコンピュータ環境を示す図である。
【図２】本発明の実施形態による、ユーザに関連する行動を決定する処理を示すフローチャートである。
【図３】実施形態による、文脈情報及び位置追跡の履歴から行動クラスタのセットを生成する処理を示すフローチャートである。
【図４】本発明の実施形態による、行動推論モデルを生成する処理を示すフローチャートである。
【図５】本発明の実施形態による、１つの場所に特有のユーザに対する文脈を決定する処理を示すフローチャートである。
【図６】本発明の実施形態による、地図上における文脈情報及び位置追跡のマッピングを示す図である。
【図７】本発明の実施形態による、ユーザの位置、及び時間情報を格納している文脈情報及び位置追跡の一部を示す図である。
【図８】本発明の実施形態による、地図上に空間的に表された、場所データベースに格納されているデータの一部を示す図である。
【図９】本発明の実施形態による、地図上に空間的に表された行動ラベルのセットを示す図である。
【図１０】本発明の実施形態による、ユーザに対する行動を決定する推論モデルを生成しやすくする、コンピュータシステムを示す図である。
【図１１】本発明の実施形態による、ユーザに対する行動を決定する推論モデルを生成しやすくする、装置を示す図である。
【発明を実施するための形態】
【００１６】
本発明の実施形態は、調査結果を用いずに或いは、学習するように手でラベル付けされた例を必要とせずに、ユーザの行動の好み、及び習慣を推測する、推論システムを提供する。学習システムと同様、この推論システムは、ユーザの現在の状況、又は文脈を説明するデータ測定値と、これらの文脈においてそのユーザが好む可能性のある行動と、の関連性を、学習する。この推論システムは、ユーザの文脈に対する明確な行動ラベルを受信する必要がなく、このような情報を間接的に推論することができる。システムは、センサが生成した位置測定値（例えば、グローバルポジショニングシステム（ＧＰＳ）座標、場所(venue)の説明、場所の説明（例えば、「レストラン」）と場所タイプによって支持される行動（例えば、「食事」）とのマッピングを受信する。
【００１７】
システムは、このような位置情報を用いて、文脈データ値が測定された位置付近の場所に関連する行動から、ユーザが好む可能性のある行動にわたる分布を推論する。その結果、システムは、様々な文脈に関連する行動種別を示す、行動ラベルのセットを得ることができる。いくつかの実施形態では、システムは、これらの行動ラベルをユーザから直接的に得てもよい。更に、システムは、ユーザが訪れている場所のタイプに関連する行動ラベルセットを識別し得る。更に、システムは、ユーザの行動の長期パターン若しくは特徴（例えば、特定の雇用形態）に基づいて、行動ラベルのセットを推論し得る。次に、これらの行動ラベルを用いてユーザの問合せを処理することによって、推薦行動がそのユーザの好みとより適切に一致し得る。
【００１８】
図１は、実施形態による、一例としての推薦システムを示している。コンピュータ環境１００は、推論システム１０２、ネットワーク１０４、モバイル機器１０６、アプリケーションサーバ１０８、場所データベース１１０、ユーザ位置追跡データベース１１２、及び推論モデルデータベース１１４を含む。
【００１９】
作動中、推論システム１０２は、ユーザから（例えば、モバイル機器１０６を介して）位置追跡１１６を受信し、推論モデルデータベース１１４に格納されている行動推論モデルの一部に基づいて、対応する行動１２０を決定する。いくつかの実施形態では、推論システム１０２は、計算機器（例えば、モバイル機器１０６）に対するコンテンツを生成するアプリケーションサーバ１０８と通信する。例えば、アプリケーションサーバ１０８は、モバイル機器から（又は、その計算機器用のＷｉ−Ｆｉ若しくはセルラーネットワークから）ＧＰＳデータを受信すると共に、推論システム１０２と相互作用し、その計算機器のユーザに対する行動を決定する。次に、アプリケーションサーバ１０８は、この行動情報を、その計算機器で作動しているクライアントアプリケーションに送信する。更に、アプリケーションサーバ１０８は、この行動情報を用いて、その計算機器に対する行動に基づくコンテンツを生成する、又はその計算機器に対する行動に基づくサービスを行う。
【００２０】
いくつかの実施形態では、文脈１１８は、時刻、時間範囲、曜日、曜日範囲、日にち、日にち範囲、気象条件、交通条件、社会的文脈、感知動作、周囲音、及び周囲ビデオフィードのうちの１つ以上を示す。更に、社会的文脈は、ユーザが、直接、又は、通信媒体（例えば、携帯電話、インターネットプロトコル（ＩＰ）電話、固定電話、ビデオ会議システム、インスタントメッセージサービス、電子メールなど）を介して、やりとりする人を含む。
【００２１】
場所データベース１１０は、場所の位置、場所のタイプ、及びその場所に関連する何らかの属性を含む、場所情報を格納している。例えば、場所のタイプは、レストラン、劇場、スポーツ施設、公園などを含み得る。場所の属性は、例えば、レストランで出される料理のタイプ、映画館で上映される映画のタイプ、バーのテーマ、店で提供される商品のタイプなどを含む。
【００２２】
ユーザ位置追跡データベース１１２は、１人以上のユーザに対する複数の位置追跡を格納している。実施形態では、余暇行動推薦アプリケーションを提供するユーザの携帯機器は、ＧＰＳ装置も含む。従って、同じ携帯機器が、そのユーザに対する、位置及び時間の記録を含む位置追跡を生成する。必要に応じて、携帯機器は、これらの位置追跡を定期的にユーザ位置追跡データベース１１２にアップロードする。
【００２３】
推論モデルデータベース１１４は、１人以上のユーザに対する１つ以上の行動推論モデルを格納している。いくつかの実施形態では、推論システム１０２は、場所データベース１１０及びユーザ位置追跡データベース１１２に格納されている、文脈情報及び位置追跡及び場所情報の履歴の一部に基づいて、ユーザに対する行動推論モデルを生成するための、オフライン前処理動作を行う。更に、推論システム１０２は、行動推論モデルを用いてユーザに対する行動１２０を決定する、ランタイム問合せ処理動作を行う。
【００２４】
通常、推論システムの動作は、２つの部分、即ち、オフライン前処理動作、及びランタイム問合せ処理動作に分けられる。オフライン前処理動作中、システムは、ユーザの文脈情報及び位置追跡を収集し、様々な場所を仮想訪問先(hypothetical visits)として識別し、これらの場所を行動種別にマッピングする。また、システムは、位置に関連する文脈を推論行動にマッピングする、１つ以上の行動推論モデルも生成する。更に、この推論システムは、同じ推論処理を用いて、行動の特定属性（例えば、禁煙場所での食事）を推論してもよい。ランタイム問合せ処理中、システムは、問合せ文脈及び格納されている行動推論モデルに基づいて、推論行動を決定する。
【００２５】
図２は、実施形態による、ユーザに関連する行動を決定する処理を示すフローチャートである。この処理は、処理を実施する命令を格納している記憶装置と、この格納されている命令を実行する処理装置とを備える、コンピュータシステムにおいて行われる。
【００２６】
オフライン前処理ステップ２０１中、推論システム１０２は、文脈情報及び位置追跡の一部に基づいて、行動推論モデルを生成する（ステップ２０２）。このとき、推論システム１０２は、推論ポイントのセットを生成する。１つの推論ポイントは、文脈情報及び位置追跡と場所と行動の関連性を示す、変数のセットのためのデータ値を含む。また、推論システム１０２は、ほぼ類似した推論ポイントのセットをグループ化して、この類似した推論ポイントのセットに対する行動を示す。実施形態では、いくつかの推論ポイント変数に関して定義された距離メトリックに基づいて、１つの推論ポイントともう１つの推論ポイントとの類似度が算出される。例えば、推論システム１０２は、いくつかの変数の値間における論理的「距離」を計算して、この論理的距離が所定の閾値よりも低い場合、２つの推論ポイントはほぼ類似していると判断することができる。推論システム１０２は、この論理的距離を計算するのに、様々な方法を用いてもよい。例えば、変数が時刻である場合、推論システム１０２は、論理的文脈距離（logical contextual distance）として、分差(difference in minutes)を用いる。別の実施形態では、推論システム１０２は、推論ポイント間の類似度を決定するのに、位置座標間の物理的距離を用いる。他の推論ポイント類似度定義も可能である。
【００２７】
他の実施形態では、推論システム１０２は、次に、これらの推論ポイントを用いて、行動推論モデルを生成する。行動推論モデルは、データ構造及び／又は実行可能コードを含む計算モジュールであって、推薦システム１０２に用いられることによって、ユーザの文脈情報に部分的に基づいて、そのユーザに対する行動を決定する。推論システム１０２は、まず、類似した推論ポイントをグループ化して行動クラスタを形成するために、推論ポイントがそのまま用いられた場合に必要とされる数よりも少ない数のデータポイントを分析することによって、行動推論モデルを生成する。更に、行動クラスタを用いることによって、推論システム１０２は、推論ポイントがそのまま用いられた場合に可能である数よりも多くの数のユーザデータを行動推論モデルに組み込むことができる。
【００２８】
次に、ランタイム問合せ処理ステップ２０３中、推論システム１０２は、ユーザに関連する位置追跡及び対応する文脈を受信する（ステップ２０４）。推論システム１０２は、この位置追跡及び文脈を入力パラメータとして行動推論モデルに入力し（ステップ２０６）、この行動推論モデルを用いて、ユーザに関連する行動を決定する（ステップ２０８）。また、推論システム１０２は、ランタイム中に集められた位置追跡及び文脈情報を用いて、既存の推論モデルを更新するか、或いは、新しいモデルを生成する。そうすることによって、推論システム１０２は、ユーザの新しい好みを学習するか、或いは、ユーザの生活における変化（例えば、新しい住居、新しい仕事、好みの変化など）に適応できる。
【００２９】
図３は、実施形態による、文脈情報及び位置追跡の履歴から行動クラスタのセットを生成する処理を示すフローチャートである。推論システム１０２は、こ文脈情報及び位置追跡の履歴を受信することによって開始し（ステップ３０２）、場所データベース１１０を用いて文脈情報及び位置追跡に対する場所のセットを導出する（ステップ３０４）。次に、推論システム１０２は、場所のセットに部分的に基づいて、文脈に関連する行動種別のセットを導出する（ステップ３０６）。次に、推論システム１０２は、１つの推論ポイントが、文脈情報及び位置追跡と場所と行動の関連性を示す変数のセットのためのデータ値を含むように、推論ポイントセットを生成する（ステップ３０８）。次に、推論システム１０２は、１つの行動クラスタが、ほぼ類似した推論ポイントを含むように、推論ポイントのセットの一部に基づいて、行動クラスタのセットを生成する（ステップ３１０）。
【００３０】
具体的には、推論システム１０２は、ユーザ位置追跡データベース１１２から文脈情報及び位置追跡を、場所データベース１１０から場所情報を受信することによって、ステップ３０２を行うことができる。次に、推論システム１０２は、文脈情報及び位置追跡を分析し、これらの追跡に沿った、ユーザが少しは過ごしたと思われる位置を識別し、これらの位置付近にある場所を識別することによって、ステップ３０４を行う。つまり、推論システム１０２は、文脈情報及び位置追跡における位置付近にある様々な場所を仮想訪問先として識別する。
【００３１】
他の実施形態では、推論システム１０２は、これらの仮想訪問先を生成する処理において、いくつかの課題に直面する。一般的に、ＧＰＳ追跡は、ユーザの移動の軌跡を表す。消費者向けのＧＰＳ装置は、通常、空間分解能が限られている。例えば、ＧＰＳ信号は、ユーザが通りのどちら側にいるか区別できるほど細かくない。更に、ユーザは、ビルの立ち並ぶ都市部にいて、ビル表面に信号が反射することにより、不正確なＧＰＳ信号を受けることもある。実施形態では、推論システム１０２は、一定時間、位置クラスタを考察し、この位置クラスタ付近の場所を探索することによって、ＧＰＳ追跡を「平滑化」する。このようにして、推論システム１０２は、ＧＰＳ追跡におけるノイズを統計的に取り除き、複数の追跡に関し、より長い時間にわたって所望の行動情報を導出することができる。
【００３２】
別の実施形態では、ＧＰＳ信号は、カルマンスムーザ(Kalman smoother)のような統計的処理を用いて平滑化される。
【００３３】
ＧＰＳ信号に関連する別の問題は、時間分解能が限られていることである。一般的に、ＧＰＳ装置は、その位置情報を、一定間隔で（例えば、１０秒ごとに）更新する。しかしながら、ユーザは、人通りの多い区域にいる場合、この間隔中に店や地下鉄の駅に入ってＧＰＳ信号を失うこともある。その結果、ＧＰＳ追跡は不完全なものとなる。実施形態では、推論システム１０２は、このようなセンサのドロップアウト中における可能性のあるサンプル位置を補充する補間処理を行う。
【００３４】
実施形態では、推論システム１０２は、文脈情報及び位置追跡に関連する文脈情報も受信する。このような文脈情報には、曜日及び現在の気象条件が含まれ得る。この情報は、行動種別を更に限定するために、推論システム１０２によって用いられ、後で、推論システム１０２がユーザ問合せに対処しているときに、問合せ文脈と共に用いられる。
【００３５】
次に、推論システム１０２は、文脈情報及び位置追跡における重要な位置を識別する。このとき、推論システム１０２は、ユーザがかなりの時間を過ごしたと思われる位置（若しくは、位置クラスタ）を識別する。例えば、推論システム１０２は、ユーザが５分よりも長くいる位置を探索する。他の時間閾値も可能である。
【００３６】
これらの位置を識別した後、次に、推論システム１０２は、場所データベース１１０を探索して、この重要な位置若しくは位置クラスタ付近にある場所を識別する。例えば、推論システム１０２は、１つの位置若しくは位置範囲から１２０フィート（約３６．６ｍ）以内にある全ての場所を探索することができる。本実施形態では、この位置は、経度と緯度の組み合わせ、若しくは、経度範囲と緯度範囲の組み合わせによって表される。このような位置付近で識別された場所は、次に、仮想訪問先として考えられる。
【００３７】
実施形態では、推論システム１０２は、場所を行動種別に関連付けるマッピングセットを保持している、ということに留意されたい。推論システム１０２は、これらのマッピングを用いて、ステップ３０６において、行動種別のセットを導出する。例えば、レストランは「食べる」の行動種別にマッピングされ、劇場は「見る」の行動種別にマッピングされ、ジムは「する」の行動種別にマッピングされる。推論システム１０２は、いずれの行動種別カテゴリー化方式を採用してもよい。
【００３８】
場所を行動種別にマッピングするのに加えて、推論システム１０２は、必要に応じて、その場所の属性を抽出し、これらの属性を行動種別及び文脈情報に関連付けることができる。例えば、持ち帰り用のレストランは、「中で食事をする」に対して、「持ち帰る」という属性を有し得る。次に、この属性は、例えば、時刻（例えば、午後１２時）及び／又は気象条件（例えば、晴れや雨）のような、ユーザの文脈情報に関連付けられ得る。後日、同じユーザが、天気が晴れのときの正午ごろの行動を問い合わせた場合、推論システム１０２は、そのユーザが楽しめる行動の１つは、昼食用に持ち帰りの食べ物を注文することである、ということを知っている。天気が晴れのときにそのユーザが昼食用の持ち帰りの食べ物を実際に好む確率は、統計的処理を用いて計算することができる。
【００３９】
行動クラスタを生成することは、行動推論モデルを構築する１つの方法にすぎない、ということに留意されたい。このようなモデルを構築するのに、例えば、決定木、ニューラルネットワーク、ベイズ推論法(Bayesian inference procedure)などを用いるような、他の方法を用いてもよい。推論システム１０２は、これらの方法を利用する場合、必要に応じて行動のクラスタ化を用いる。
【００４０】
図４は、実施形態による、行動推論モデルを生成する処理を示すフローチャートである。作動中、推論システム１０２は、ユーザに関連する文脈情報及び位置追跡に対して、その文脈情報及び位置追跡に適合する行動クラスタのサブセットを決定する（ステップ４０２）。次に、推論システム１０２は、この行動クラスタのサブセットに関連するいくつかの行動種別を識別する（ステップ４０４）。次に、推論システム１０２は、それぞれの行動種別に、それに関連する行動クラスタと文脈情報及び位置追跡との類似度に基づいて重み付けをする（ステップ４０６）。次に、推論システム１０２は、文脈情報及び位置追跡を最も重みの大きい識別された行動種別にマッピングする、行動推論モデルに対する文脈行動マッピング関数を生成する（ステップ４０８）。
【００４１】
いくつかの実施形態では、この文脈行動マッピング関数は、行動種別に付与される重みの様々な分布を明らかにする。言い換えれば、この文脈行動マッピング関数は、文脈パラメータの様々な組み合わせを明らかにし、これにより、ユーザの文脈パラメータの所定の組み合わせに適した行動種別を導出することができる。
【００４２】
１つの文脈情報及び位置追跡に関連し、いくつかの場所と、これらの場所への対応する数の仮想訪問先があり得る、ということに留意されたい。これは、ユーザが同時に複数の場所を訪問し得る、ということを意味しない。推論システム１０２は、ステップ４０２中にこれらの仮想訪問先を用いて、特定位置及び文脈データセットに関連する行動分布を導出する。
【００４３】
例えば、特定位置付近にレストランが３つ、バーが２つ、デパートが１つあり、対応するタイムスタンプが土曜日の午後５時を示す場合、推論システム１０２は、土曜日の午後５時にそのユーザが食べている可能性は５０％、飲んでいる可能性は３３％、買い物している可能性は１７％ということを導出する。実施形態では、推論システム１０２は、そのユーザがその場所に関連するその行動を行う確率を算出する際、そのユーザに対して測定されたその位置からその場所までの距離も考慮に入れる。
【００４４】
更に、推論システム１０２は、ステップ４０４中に、１つの行動ラベルが、１つの位置に関連すると共に、様々な行動種別の分布を含み得るように、行動ラベルのセットを生成する。更に、１つの行動ラベルは、関連する文脈情報セット（例えば、時刻、時間範囲、曜日、曜日範囲、日にち、日にち範囲、気象条件、交通条件、社会的文脈、感知動作、周囲音、及び周囲ビデオフィード）を特定することができる。
【００４５】
同じユーザに対し、推論システム１０２は、一般的に、上述したようなオフライン前処理を複数のＧＰＳ追跡に関して行い、いくつかの行動ラベルを得る。これらのラベルのうちのいくつかは、類似した文脈情報に関連するであろう。その結果、推論システム１０２は、特定の文脈情報は特定の行動種別及び／又は行動属性に関連付けられる可能性が高い、ということを学習する。この処理は、例えば、その街の異なる地区で異なる日にちに測定される一方、文脈データ値（例えば、時刻や現在の気象条件）を共有している文脈のような、複数の独立したユーザ行動サンプルがある場合に、最も効果的である。
【００４６】
下の表１は、本発明の実施形態による、異なる日に得た文脈情報及び位置追跡から抽出された３つの例としてのラベルを示している。各ラベルは、仮想訪問先に基づいた行動種別分布と、この場合には時刻及び曜日を含む文脈情報セットとを示す。推論システム１０２は、１つのラベルに基づいてどの行動が行われる可能性が高いかを導出することはできないが、平日の午後１２時ごろにはそのユーザは食べている可能性が高いということを導出することができる。この表１に示されているラベルは単純化された例にすぎない、ということに留意されたい。実際の推論システム１０２では、各ラベルはより多くの情報を含み得る。１つのラベルは、より多くの行動種別を含み得ると共に、各行動種別は、１つ以上の属性に関連付けられ得る。例えば、「食べる」行動種別は、料理タイプ、レストランタイプ、料金範囲などに関連付けられ得る。また、各ラベルは、更に詳細な文脈情報（例えば、局地的な交通条件）を含んでいてもよい。
【００４７】
【表１】
2011108245.tif 000003
【００４８】
現在の実施形態では、１つの文脈ともう１つの文脈との類似度（例えば、ユーザの文脈と推論ポイントに関連した文脈との類似度）は、文脈変数に関して定義された多属性距離メトリックに基づいて算出される。言い換えれば、推論システム１０２は、マッピング文脈と問合せ文脈との間の論理的「距離」を計算する。推論システム１０２は、このような論理的距離を計算するのに、様々な方法を用いてもよい。例えば、対象とされる文脈情報が時刻である場合、推論システム１０２は、論理的文脈距離として、分差を用い得る。別の実施形態では、推論システム１０２は、論理的文脈距離として、マッピング文脈の位置とユーザの問合せ文脈の位置との間における実際の物理的距離を用い得る。他の文脈類以度定義も可能である。別の実施形態では、他のユーザに対する文脈行動マッピングに重み付けをしてもよく、これにより、同じようなカテゴリーに興味のあるユーザは、同じクラスの他のメンバーに関して収集されたデータから利益を得ることができる。
【００４９】
ユーザに関連する文脈を用いることによって、可能性のある様々な行動の確率を予測することができる、ということに留意されたい。ステップ４０６中に、推論システム１０２は、重みを計算して、以前に検索された関連文脈に対する予測を組み合わせる。実施形態では、推論システム１０２は、ユーザに特有の文脈と推論ポイントに関連した文脈との類以度メトリック若しくは論理的距離に基づいて、各マッピングに重みを付与する。
【００５０】
次に、推論システム１０２は、最も類似した文脈を用いたマッピングから得られた兆候(evidence)を、可能性のある行動種別のそれぞれに割り当てる。この割り当て方法の１つは、以下のように行われる。ｍｉを、ｉ番目の関連マッピングとし、ｍｉ(ａ)を、行動ａがマッピングｉによって予測される場合には１を返し、そうでなければ０を返す、指標関数とすると共に、ｗｉを、マッピング文脈とユーザの現在の文脈との類以度関数に基づいた重みとする。そうすると、行動ａに対する兆候ｅ(ａ)は、以下の式で表される。
【００５１】
【数１】
2011108245.tif 000004
【００５２】
いくつかの実施形態では、推論システム１０２は、機械学習分類子に部分的に基づいて、行動種別分布を生成することができる。例えば、推論システム１０２は、重み付けされた兆候を標準化することによって、ユーザの意図する行動種別にわたる分布を作成することができる。
【００５３】
【数２】
2011108245.tif 000005
【００５４】
他の行動種別分布生成方法も可能である。
【００５５】
推薦システム１０２は、ステップ４０６によって生成された行動種別分布に基づいて行動を推薦することによって、推薦の有効性を高めることができる。例えば、火曜日の午後１２時という時刻の文脈においてユーザ問合せが出されたと推論システム１０２が判断した場合、行動種別分布は、食べる６０％、買い物する２０％、運動する２０％であり得る。推薦システム１０２は、この分布を用いて、お薦めのレストランを６つ、お薦めの店を２つ、お薦めの地域のジムを２つ返信すると共に、お薦めのミュージアムについては無視することができる。これにより、この推薦システムは、ユーザが興味のある可能性が最も高い行動を提示し、そのユーザが的外れなお薦めを探索するのを防ぐ。
【００５６】
更に、火曜日の午前８時という時刻の文脈に関し、この推薦システムは、ユーザは通勤中であると判断し、そのユーザに交通支援を行い得る。例えば、推論システム１０２は、そのユーザの一般的な通勤ルートに沿ったあらゆる交通事故を知らせたり、そのユーザの職場までの最適な通勤ルートを提供したりし得る。
【００５７】
本明細書中で説明したこの推論モデルは、行動推薦を行う以外の、文脈を意識した様々なアプリケーションを有していてもよい。例えば、推論システム１０２は、文脈を意識した時間払い(time billing)、マルチメディアコンテンツのストリーミング、及び交通支援に用いられてもよい。また、他のアプリケーションも可能である。
【００５８】
いくつかの実施形態では、推論システム１０２は、ユーザの文脈情報を用いて、そのユーザに対する何らかのタスクを自動化することができる。例えば、推論システム１０２は、ユーザによって行われるタスクを追跡することができると共に、支払を目的とする各タスクにかかった時間を追跡することができる。更に、推論システム１０２は、ユーザのウェブログを更新することによって、そのユーザの行動のいくつかの詳細を含めることができる。
【００５９】
ステップ４０８中に、推論システム１０２は、対応する文脈情報及び位置追跡セットに対し、最も重みの大きい行動に基づいて、文脈行動マッピング関数を生成する。ランタイム中、推論システム１０２は、ユーザに対する文脈情報を含む問合せを受信することができ、文脈行動マッピング関数を用いて、この問合せに対応する行動を決定する。より具体的には、この文脈行動マッピング関数は、ランタイム時に推論ポイントセットを分析する必要なく文脈情報から行動を決定する効率的解法を提供する。
【００６０】
図５は、実施形態による、１つの場所に特有のユーザに対する文脈を決定する処理を示すフローチャートである。作動中、推論システム１０２は、１つの場所に関連するユーザ役割セットと、対応する文脈情報及び位置追跡のセットとを受信する（ステップ５０２）。次に、推論システム１０２は、その場所に関連するユーザの文脈情報及び位置追跡の履歴を分析して、パターンを決定する（ステップ５０４）。次に、推論システム１０２は、ユーザが決定したパターンに合う場所に関連する役割を決定する（ステップ５０６）。例えば、推論システム１０２は、ユーザが平日はほとんど週末は時々病院を訪れていると判断して、そのユーザはその病院の従業員であることを示す、そのユーザに対する文脈を生成し得る。更に、推論システム１０２は、別のユーザが１年に多くても数回その病院（又は、あらゆる他の病院）を訪れていると判断して、このユーザはその病院の患者又は訪問者であることを示す、このユーザに対する文脈を生成し得る。特定のユーザと特定の場所との関係を示すこのような追加の文脈情報は、ユーザに対する行動を決定するタスクを更に単純化する。これは、ユーザに特有の文脈情報を活用することによって、そのユーザの生活パターンに最も合った行動が推論されるからである。
【００６１】
図６は、本発明の実施形態による、地図上における一例としての文脈情報及び位置追跡のマッピングを示している。この例に示されているように、文脈情報及び位置追跡は、地図上に空間的に表され得るいくつかのポイントを示す。一定時間の間に、より多くのＧＰＳデータポイントが特定の位置に集中することがあり、これは、ユーザがその地域でかなりの時間を過ごしていることを示す。図６の他の部分では、ＧＰＳデータポイントがよりまばらであって、これは、ユーザがそれらの位置をただ通り過ぎているだけであることを示す。行動種別分析処理中、推論システム１０２は、まばらなデータポイントを取り除いて、ユーザが自分の時間のほとんどを過ごしている位置を示す固まったデータポイントを重点的に扱うことができる。位置信号が妨げられたと分かったときには、予測モデルを用いることによって、追跡から抜け落ちた可能性のある位置サンプルを補間することができる。
【００６２】
図７は、本発明の実施形態による、ユーザの位置及び時間情報を格納している一例としての文脈情報及び位置追跡の一部を示している。実施形態では、各文脈情報及び位置追跡データポイントは、ユーザ識別子、緯度、経度、及び、これらの緯度と経度の組み合わせによって特定される位置にユーザがいた時間を示すタイムスタンプを含む。
【００６３】
図８は、本発明の実施形態による、地図上に空間的に表された、場所データベース１１０に格納されているデータの一部を示している。この例では、多数の場所が地図上に表示されている。各場所は、黒い点で示されているその位置と、その場所名とによって示される。実際の場所データベース１１０では、各場所エントリは、場所タイプ（例えば、レストラン、ミュージアム）、その位置を示す緯度と経度の組み合わせ、場所名、簡単な場所説明、及び、必要に応じて１つ以上の場所属性（例えば、料理のタイプ、喫煙／禁煙）を含み得る。格納されている場所データの実際のフォーマットは、推論システム１０２によって様々であってよい。他のデータフォーマットも可能である。
【００６４】
図９は、本発明による、地図上に空間的に表された行動ラベルのセットを示している。図９のこの地図に示されているように、各文脈行動マッピングは、文脈変数（例えば、位置、曜日、時刻、行動種別）のデータ値を特定する。実際には、文脈行動ラベルマッピングは、その位置における全ての行動種別にわたる確率分布を暗に特定する２つ以上の行動種別を含み得る、ということに留意されたい。更に、この文脈行動マッピングは、より多くの文脈情報（例えば、気象条件）を含んでいてもよい。
【００６５】
図１０は、本発明の実施形態による、ユーザに対する行動を決定する推論モデルを生成しやすくする、一例としてのコンピュータシステムを示している。コンピュータシステム１００２は、プロセッサ１００４、メモリ１００６、及び記憶装置１００８を含む。更に、このコンピュータシステム１００２は、表示装置１０１０、キーボード１０１２、及び／又はポインティングデバイス１０１３につながれる。
【００６６】
記憶装置１００８は、オペレーティングシステム１０１４、推薦システム１０１６、位置追跡１０２６、場所１０３０、行動１０３２、推論ポイント１０３４、行動クラスタ１０３６、及び行動推論モデル１０３８のうちの少なくとも１つを記憶する。更に、推薦システム１０１６は、グラフィカルユーザインタフェース（ＧＵＩ）１０１８、データベースアクセスモジュール１０２０、推論モジュール１０２２、及びユーザ問合せモジュール１０２４を含み得る。
【００６７】
作動中、コンピュータシステム１００２は、推薦システム１０１６を記憶装置１００８からメモリ１００６に読み込み、この推薦システム１０１６をプロセッサ１００４で実行する。オフライン前処理動作中、データベースアクセスモジュール１０２０は、ユーザ位置追跡データベース１１２２及び場所データベース１１２０にアクセスすることによって、これまでの文脈情報及び位置追跡（例えば、位置追跡１０２６）を受信すると共に、場所情報（例えば、場所１０３０）を受信することができる。次に、これらの文脈情報１０２８及び位置追跡１０２６及び場所１０３０に対し、推論モジュール１０２２は、対応する行動１０３２を決定し、関連するデータポイント１０２６、１０３０、１０３２に対する推論ポイント１０３４を生成する。次に、この推論モジュール１０２２は、ほぼ類似した推論ポイントセットに対する行動クラスタ１０３６を生成する。次に、この推論モジュール１０２２は、推論ポイントセット及び／又は行動クラスタを用いて、行動推論モデル１０３８を生成する。更に、ランタイム問合せ処理動作中、ユーザ問合せモジュール１０２４は、行動推論モデル１０３８を用いて、ユーザに関連する文脈情報１０２８及び位置追跡１０２６から行動１０３２を決定することができる。
【００６８】
図１１は、本発明の実施形態による、ユーザに対する行動を決定する推論モデルを生成しやすくする、一例としての装置を示している。装置１１００は、有線又は無線通信チャネルを介して互いと通信し得るいくつかの機構を備え得る。この装置１１００は、１つ以上の集積回路を用いて実装され、コンピュータシステムに集積化されてもよいし、或いは、他のコンピュータシステム及び／又はデバイスと通信することのできる別個のデバイスとして実装されてもよい。具体的には、この推薦装置１１００は、ユーザ問合せ機構１１０２、データベースアクセス機構１１０４、及び推論機構１１０６を含み得る。
【００６９】
オフライン前処理動作中、データベースアクセス機構１１０４は、場所データベース１１２０及びユーザ位置追跡データベース１１２２にアクセスすることによって、ユーザ情報の履歴１１１２（例えば、文脈情報及び位置追跡及び対応する場所）を受信することができる。次に、推論機構１１０６は、このこれまでのユーザ情報１１１２の一部に基づいて行動推論モデル１１１４を生成し、この行動推論モデル１１１４を推論モデルデータベース１１２４に格納する。更に、ランタイム問合せ処理動作中、ユーザ問合せ機構１１０２は、ユーザから文脈情報１１１０及び位置追跡１１０８を受信し、行動推論モデル１１１４を用いてユーザに関連する行動１１１６を決定することができる。また、このユーザ問合せ機構１１０２は、ユーザ位置追跡データベース１１２２に文脈情報１１１０及び位置追跡１１０８を格納するようにデータベースアクセス機構１１０４を構成することによって、ユーザ情報の履歴１１１２を拡充することができる。
【図１】
2011108245.tif 000006
【図２】
2011108245.tif 000007
【図３】
2011108245.tif 000008
【図４】
2011108245.tif 000009
【図５】
2011108245.tif 000010
【図６】
2011108245.tif 000011
【図７】
2011108245.tif 000012
【図８】
2011108245.tif 000013
【図９】
2011108245.tif 000014
【図１０】
2011108245.tif 000015
【図１１】
2011108245.tif 000016