(57)【特許請求の範囲】
【請求項１】
プロセッサと、記憶装置と、表示装置と、活動関連のキーワードとキーワードカテゴリとが関連付けられて記憶されたコンテンツデータベースと、を有するコンピュータにおいて、ユーザから送信されるメッセージから活動関連のコンテキスト情報を推測するための方法であって、
前記プロセッサが、
前記メッセージを受信するステップと、
前記メッセージおよび前記コンテンツデータベースを参照し、前記メッセージの中から、前記コンテンツデータベースに保持されている活動関連のキーワード及び前記キーワードに関連する時刻情報を探すステップと、
前記メッセージの中で見つかった前記キーワード、前記キーワードと関連付けられたキーワードカテゴリ、及び前記時刻情報に基づいて、前記メッセージに関連するコンテキスト情報を推測して前記記憶装置に記憶させるステップと、
前記記憶装置に記憶されたコンテキスト情報に基づいて、特定の時点における特定の最上レベルの活動へのユーザの関心を示す活動モデルを構築するステップと、
前記活動モデルと、前記コンテキスト情報に基づいて構築され前記最上レベルの活動内におけるユーザの嗜好を示すユーザ選好モデルとに基づいて、前記ユーザが好むであろう活動を推測して前記表示装置に表示させることで、或る活動を前記ユーザに推奨するステップと、
を実行することを特徴とする方法。
【請求項２】
請求項１に記載の方法であって、
前記コンテキスト情報を推測して前記記憶装置に記憶させるステップは、
前記メッセージの中で見つかったキーワードが複数のキーワードカテゴリと関連付けられている場合は、前記メッセージの中における当該キーワードの周囲のテキストに基づいて、いずれか１のキーワードカテゴリを選択し、前記選択されたキーワードカテゴリに基づいて、前記コンテキスト情報を推測する、
ことを特徴とする方法。
【請求項３】
請求項１に記載の方法であって、
前記周囲のテキストは、特定のタイプの活動を示す動詞である、
ことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、ＮＬＰ（Ｎａｔｕｒａｌ  Ｌａｎｇｕａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ：自然言語処理）技術に関する。より具体的には、本発明は、活動関連のコンテンツデータベースを使用して、メッセージから活動に関するコンテキスト情報を推測する方法および装置に関する。
【背景技術】
【０００２】
オンラインカレンダは、活動を調整すること、ユーザに思い出させること、および作業をスケジュールすることなどの、多くの役立つ機能をサポートする。しかし、オンラインカレンダは、しばしば、ユーザの実際の活動を正確に反映しない。この不一致の１つの理由は、ユーザが、しばしば、将来の活動をオンラインカレンダに記録しないことである。その結果、ユーザは、意図される約束について忘れる可能性がある。しかし、ユーザは、電子メールまたはテキストメッセージなどの電子メッセージを介して、活動に関するユーザの計画を頻繁に通信する。時として、これらの電子メッセージは、自然言語処理技術を介して解析されて、この情報が得られるが、しばしば、これらの電子メッセージは、電子メッセージが、通常、カレンダエントリに関する関係のある情報のすべてを含む詳細な記述（例えば、「Ｗａｎｔ  ｔｏ  ｍｅｅｔ  ａｔ  ｔｈｅ  Ｃｅｎｔｕｒｙ  Ｃｉｎｅｍａｓ  １６，１５００  Ｎ．Ｓｈｏｒｅｌｉｎｅ  Ｂｌｖｄ．，Ｍｏｕｎｔａｉｎ  Ｖｉｅｗ，ＣＡ，ｔｏ  ｓｅｅ  ｔｈｅ  ｍｏｖｉｅ’Ｆｉｎｄｉｎｇ  Ｎｅｍｏ’  ｆｒｏｍ  ７：１５ｐｍ  ｔｏ  ９：００ｐｍ  ｔｏｎｉｇｈｔ」）ではなく、イベントの簡潔な記述（例えば、「ｎｅｍｏ  ｔｏｎｉｇｈｔ？」）を含むため、解析することができない。
【０００３】
また、活動と関係する推奨を生成する作業も、ユーザが、通常、そのような活動に関する選好情報を記録しないため、困難である。しかし、理論上、ユーザ選好情報は、ユーザからの電子メッセージを解析することによって同様に得ることができる。しかし、そのようなユーザ選好情報を解析することも、そのような活動の簡潔な記述のため、同様に難しい。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
したがって、必要とされているのは、前述した問題なしに、電子通信から活動関連の情報を自動的に得ることを容易にする方法および装置である。提案されるシステムは、コンテンツデータベースを使用して、活動関連の情報の抽出を誘導し、支援する。
【課題を解決するための手段】
【０００５】
本発明の一部の実施形態は、メッセージから活動関連のコンテキスト情報を推測するシステムを提供する。メッセージを受信すると、システムは、メッセージの中の活動関連のキーワードを探し、活動関連のキーワードは、コンテンツデータベースからである。１つ以上の活動関連のキーワードが、メッセージの中で見出された場合、システムは、その１つ以上の活動関連のキーワードからメッセージ関連のコンテキスト情報を推測する。次に、システムは、メッセージ関連のコンテキスト情報を使用して、或る活動をユーザに推奨することを円滑にする。
【０００６】
一部の実施形態では、メッセージ関連のコンテキスト情報を使用して、或る活動をユーザに推奨することを円滑にしながら、システムは、そのメッセージ関連のコンテキスト情報を使用して、そのメッセージ関連のコンテキスト情報に関連する１つ以上の活動に関する活動モデルを構築する。また、システムは、メッセージ関連のコンテキスト情報を使用して、そのユーザに関するユーザ選好モデルを構築する。最後に、システムは、その活動モデル、およびそのユーザ選好モデルを使用して、そのユーザに或る活動を推奨する。
【０００７】
一部の実施形態では、メッセージの中で、コンテンツデータベースによって誘導されて活動関連のキーワードを探しながら、システムは、メッセージの中で活動関連のキーワードの存在を示す周囲のテキストを探す。例えば、そうすることは、見込みのある活動関連のキーワードの周囲のテキストにおいて、特定のタイプの活動を示す動詞を探すことを含むことが可能である。
【０００８】
一部の実施形態では、システムは、メッセージの中の場所標識および時間標識を識別し、その識別された場所標識および時間標識を使用して、或る活動をユーザに推奨することを円滑にすることも行う。
【０００９】
一部の実施形態では、メッセージ関連のコンテキスト情報を使用して、活動をユーザに推奨することを円滑にすることは、メッセージ関連のコンテキスト情報、およびコンテンツデータベースを使用して、キーワード検索を強化して、ユーザの関心対象の活動を識別することを含む。
【００１０】
一部の実施形態では、メッセージ関連のコンテキスト情報は、型付き単語を含む。
【００１１】
一部の実施形態では、型付き単語は、信頼度重みに関連付けられる。
【００１２】
一部の実施形態では、型付き単語には、活動カテゴリ、活動場所、活動時間、活動時間に関する不確かさ、メッセージに関連する時制、および活動についてのユーザ意見が含まれることが可能である。
【００１３】
一部の実施形態では、コンテンツデータベースは、以下の活動の１つ以上と関係する活動特有のコンテンツを含む。すなわち、レストランで食べること、映画および／またはライブパフォーマンスを観ること、物理的店舗またはオンライン店舗で買い物をすること、本またはオンラインコンテンツを読むこと、および他の活動を実行することである。
【００１４】
一部の実施形態では、メッセージは、テキストメッセージまたは電子メールメッセージであることが可能である。
【発明を実施するための最良の形態】
【００１５】
本発明の一実施形態は、ＮＬＰ（自然言語処理）技術を使用して、コンテンツのデータベースに基づくメッセージのコーパス（ＳＭＳ、電子メールなど）からメッセージ関連のコンテキスト情報を推測するシステムを提供する。このシステムは、データベースを使用して、どのような種類のコンテキスト情報が探されるか（例えば、システムが、レストランについてのコンテンツを有する場合、システムは、食事をすること、レストランに行くこと、料理タイプなどと関係があるキーワードを探す）を誘導する。したがって、これは、単に場所、時間などの標識を探す以上のことを行う。
【００１６】
本発明の一実施形態は、活動特有のコンテンツデータベースセットを使用する。例えば、システムは、映画、レストラン、および公園についてのコンテンツを含むデータベースを使用することができる。
【００１７】
メッセージ（テキストメッセージまたは電子メールメッセージなどの）が分析されると、データベースの中のエントリが、探すべきキーワードセットを提供する。例えば、映画データベースの場合、映画の題名が、キーワードとなることが可能である。本発明の一実施形態では、これらのデータベースに格納されたキーワードは、（１）それらのキーワードが出現した場合に、メッセージにフラグが付けられるようにする単純なキーワードとしても、（２）周囲のテキストが、関係のあるタイプのコンテンツを示す場合、メッセージ分類タイプにさらなる重みが与えられるようにするコンテキスト依存のキーワードとしても使用される。
【００１８】
以下の単純化された例を考慮されたい。或る映画データベースが、「Ｂａｔｍａｎ」、「Ｆｉｎｄｉｎｇ  Ｎｅｍｏ」、および「１９８４」という映画タイトルを含むことが可能である。これらの句の１つに遭遇するといつでも、メッセージには、映画と関係するというマークが付けられて、関係のある映画の題名が示される。しかし、題名の句の前に「ｓｅｅ」または「ｗａｔｃｈ」という語が付く場合、またはこの題名の句が、映画のメッセージスレッドの中で、より早期に出現する場合、そのメッセージに関連する映画事実の重みは、増加される。このことは、題名が、普通の句である可能性があるため、映画関連のコンテンツに関して特に重要である。前述の例において、「１９８４」は、年を指す可能性もある（「ｓｈｅ  ｇｒａｄｕａｔｅｄ  ｉｎ  １９８４」）。したがって、コンテンツデータベース内のデータを使用して、このタイプのコンテンツに関係のあるキーワードにフラグが付けられるべきことが合図される。このため、映画データベースとレストランデータベースの両方を参照するアプリケーションが、映画およびレストランと関係のあるキーワードを有するメッセージにマークを付けるとともに、データベースからの映画名およびレストラン名にマークを付けることが可能である。異なるアプリケーションは、ホテルデータベース、列車データベース、およびレストランデータベースを参照することが可能であり、このため、これらの領域を使用して、メッセージにフラグを付ける関係のあるキーワードを生成することができる。
【００１９】
データベースに関連するキーワードは、手書きの規則および／または確率的方法によって生成されることが可能である。これらの規則は、従来の意味におけるキーワード（例えば、「ｍｏｖｉｅ」、「ｆｉｌｍ」、「ｓｅｅ」）を含むだけでなく、句情報および位置情報も含むことが可能である。例えば、「ｓｅｅ  ａ  ｆｉｌｍ」という句は、非常に大きい重みを受け取り、「ｓｅｅ」という語の直後に、データベースの中の或る映画の名前が続く場合も同様である。これに対して、「ｓｅｅ」という語の前に、或る映画の名前がくる場合は、はるかに小さい重みを受け取る。
【００２０】
コンテンツ情報は、孤立したメッセージからだけでなく、メッセージスレッドからも抽出されることが可能である。メッセージスレッドは、コンテンツが、関係がある尤度（ゆうど：ｔｈｅ  Ｌｉｋｅｌｉｈｏｏｄ  ｏｆ  ｃｏｎｔｅｎｔ）を高めるのに活用されることが可能であることに留意されたい。例えば、タイプＸのコンテンツを有するメッセージが、タイプＸのコンテンツを有するメッセージと同一のスレッドに入っている場合、そのコンテンツタイプの尤度が、高められる。さらに、それらのメッセージが、スレッドの中で近いほど、尤度の重みの増加が大きくなる。例えば、送信されたメッセージが、或るレストランの名前を含み、外食することについてのメッセージに応答している場合、その名前が、レストランの名前である信頼度スコアが、相当に高められる。
【００２１】
本発明の一実施形態では、システムによって抽出された情報には、各メッセージに関連する関係のある型付きの単語が含まれる。前述したとおり、これらの型付きの単語は、信頼度重みを有することが可能である。メッセージは、複数のデータベースからの単語に関連付けることが可能であることに留意されたい。このため、短いＳＭＳまたはテキストメッセージでさえ、映画および場所についての情報を含むことが可能である。より長い電子メールメッセージは、例えば、映画情報とレストラン情報をともに含むことが可能である。例として、夕食に行き、映画を観ることを所望するかどうかを受信者に尋ねる電子メールが、ｔｙｐｅ＝ｍｏｖｉｅ、ｔｉｔｌｅ＝ｂａｔｍａｎ、ｔｉｍｅ＝ｔｏｄａｙ、ｔｙｐｅ＝ｒｅｓｔａｕｒａｎｔ、ｎａｍｅ＝ｇｉｏｖａｎｎｉ’ｓ、ｃｕｉｓｉｎｅ＝Ｉｔａｌｉａｎ、ｔｉｍｅ＝ｔｏｄａｙのような単語に関連することが可能である。この例では、「ｔｙｐｅ＝」情報は、アプリケーション特有のデータベースに関連するキーワードに由来し、「ｔｉｔｌｅ＝」および「ｎａｍｅ＝」は、データベースエントリからのキーワードであり、「ｃｕｉｓｉｎｅ＝」は、さらなるデータベース情報であり、「ｔｉｍｅ＝」は、メッセージから従来のキーワード抽出を介して得られる。
【００２２】
本発明の説明される実施形態は、英語に特有であるが、この技術は、一般に、任意の言語に適用されることが可能であることに留意されたい。
【００２３】
テキストメッセージは、通常、そのようなメッセージにおける一般的な略語を変換するのに、いくつかのアプリケーション特有のＮＬＰ技術を要求する（これは、電子メールメッセージの場合、幾分、該当しない）。変換の一部は、リストにおいて定義されることが可能である。例えば、英語のテキストメッセージにおいて、文字「２」は、「ｔｏ」、「ｔｗｏ」、または「ｔｏｏ」に変換されることが可能であり、このため、メッセージが関係のあるコンテンツを含む尤度を高める位置情報を提供する際に重要である可能性がある。他の変換は、より体系化されていることが可能である。例えば、英語のテキストメッセージにおいて、母音は、省略されることが可能であり（例えば、「ｔａｌｋ」は、「ｔｌｋ」になることが可能であり）、文字は、置き換えられることが可能である（例えば、「ｋｓ」の代わりに「ｘ」）。そのような体系化された変換規則は、位置コンテキスト情報およびキーワード自体を正しく識別するのに役立つ可能性がある。
【００２４】
最後に、コンテンツデータベースとの対話中、名前が参照されることが可能な仕方が、データベースコンテンツをメッセージテキストと正しくマッチングするために重要である。例えば、映画の題名において、題名または副題が、使用される可能性がある（例えば、「Ｆａｎｔａｓｔｉｃ  Ｆｏｕｒ：Ｒｉｓｅ  ｏｆ  ｔｈｅ  Ｓｉｌｖｅｒ  Ｓｕｒｆｅｒ」が、メッセージにおいて「Ｓｉｌｖｅｒ  Ｓｕｒｆｅｒ」である可能性がある）。レストラン名において、「Ｃａｆｅ」および「Ｒｅｓｔａｕｒａｎｔ」のような言葉は、しばしば、省略される（例えば、「Ｇｉｏｖａｎｎｉ’ｓ  Ｃａｆｅ」が、「Ｇｉｖａｎｎｉ’ｓ」である可能性がある）。語のより一般的な改変（母音を省略することなどの）が、データベースキーワード、およびそれらのキーワードの省略に適用されることが可能である。このため、システムは、キーワードを正しく識別するために、これらの変種の組合せを考慮に入れることができる。
【００２５】
本発明の一実施形態では、このコンテンツ抽出技術は、いくつかの仕方で使用されることが可能である。より具体的には、この技術は、オフラインアプリケーションにおいて使用されて、ユーザ選好モデルを構築するのに役立てられることが可能である。例えば、メッセージの大量のコーパスが分析されて、関係のある活動パターンのモデルが構築されることが可能である。アプリケーションが、レストランデータベース、映画データベース、および買い物データベースを使用する場合、情報は、ユーザが、いつレストランで食事をしているか、いつ映画を観ているか、またはいつ買い物をしているかについて、各ユーザに関して抽出されることが可能である。
【００２６】
さらに、人々が、いつ、そのような活動を計画しているかについての情報を抽出することが可能である。例えば、そのような情報は、ユーザが、昼下がりに友人に日常的に電子メールを送信して、その夕方の食事活動に関する計画を整える場合、抽出されることが可能である。
【００２７】
メインコンテンツデータベースクラス（例えば、レストラン、映画、買い物）に対応する粗粒の分類に加えて、メッセージからのコンテンツ抽出は、特定のデータベースにおいて使用されるコンテンツの特定のタイプについての、より細粒の情報を提供することができる。例えば、映画の題名を使用して、映画ジャンルの選好を知ることができ、レストランの名前を使用して、料理タイプの選好を知ることができる。このことにより、モデルが、抽出されたメッセージ内容を、サブタイプ分類についてのデータベースの中に格納された情報と組み合わせることにより、より正確なパターンおよび選好を知ることが可能になる。このため、ユーザ選好モデルは、ユーザが物理的に何をしているかと、ユーザが、所与の日の所与の時間に関して、どのような計画をしているかの両方についてメッセージコンテンツによって強化されることが可能である。
【００２８】
また、コンテンツ抽出技術は、オンラインで使用されて、活動またはコンテンツをユーザに推奨することを円滑にすることも可能である。そのケースにおいて、ユーザが、データベースコンテンツおよび活動と関係するメッセージ（送信された、または受信された）を有する場合、システムは、メッセージから抽出された単語および重みを、どのような活動を推奨すべきかを判定する際に、またはユーザが参加しているとシステムが考える活動に関するコンテンツ示唆を提供するのに、ファクタとして使用することができる。例えば、食事をする場所を取り決めるメッセージが存在する場合、システムは、データベースからレストラン推奨をユーザに与えることができる。
【００２９】
別の実施例において、ユーザが、しばしば、午後にディスコまたは映画に行くことを示すモデルをシステムが有するものと想定されたい。そのケースでは、ユーザが、夕方の計画について尋ねる一般的なメッセージを有する場合、システムは、ディスコまたは映画に行くことを推奨することが可能である。
【００３０】
また、コンテンツ抽出技術は、スケジュール詳細が、メッセージの中で入手できない場合に、スケジュール詳細を埋めるのに使用されることも可能である。例えば、或る映画が、メッセージの本文中の語と映画の題名が合致するために、識別されることが可能であるが、時刻は、地元の映画上映に関する可能な時刻のデータベースから得られる。
【００３１】
次に、前述した技術に関するいくつかの実施形態詳細を提示する。
【００３２】
図１は、本発明の実施形態によるコンピュータシステム１００を示す。コンピュータシステム１００には、一般に、マイクロプロセッサに基づくコンピュータシステム、メインフレームコンピュータ、デジタルシグナルプロセッサ、ポータブルコンピューティングデバイス、パーソナルオーガナイザ、携帯電話機、デバイスコントローラ、または器具内部の計算エンジンを含むが、以上には限定されない任意のタイプのコンピュータシステムが含まれることが可能である。
【００３３】
図１を参照すると、コンピュータシステム１００は、推論モジュール１０４を使用してメッセージ１０２を処理する。メッセージ１０２は、一般に、電子メールメッセージやテキストメッセージなどの、任意のタイプの電子通信であることが可能であることに留意されたい。
【００３４】
メッセージ１０２を処理しながら、推論モジュール１０４は、コンテンツデータベース１０６にアクセスする。本発明の一実施形態では、コンテンツデータベース１０６は、１つ以上の活動特有のデータベースを含む。例えば、これらの活動特有のデータベースには、映画に関するデータベース、レストランに関するデータベース、および小売業者に関するデータベースが含まれることが可能である。また、推論モジュール１０４は、コンテンツデータベース１０６からの情報を使用して、メッセージ１０２の中で話し合われている活動についての情報を推測することも行う。このプロセスは、後段でより詳細に説明される。
【００３５】
推論モジュール１０４からの出力は、活動モデル１０８に供給され、モデル１０８は、ユーザが、特定の活動に関心があるかどうかを判定するのに使用されることが可能である。
【００３６】
推論モジュール１０４からの情報は、ユーザ選好モデル１１０にも供給され、モデル１１０は、特定のユーザの選好を追跡する。
【００３７】
活動モデル１０８およびユーザ選好モデル１１０は、推奨モデル１１２によって使用されて、推奨１１４を生成し、推奨１１４は、ディスプレイ１２０を介してユーザ１２２によって見られることが可能である。推奨を生成するプロセスは、後段でより詳細に説明される。
【００３８】
図２は、本発明の実施形態による推奨を行うプロセスを示す流れ図を提示する。最初に、システムは、電子メールメッセージまたはテキストメッセージなどのメッセージ１０２を受信する（ステップ２０２）。次に、システムは、メッセージの中で活動関連のキーワードを探し（ステップ２０４）、活動関連のキーワードは、コンテンツデータベース１０６の中に含まれる。次に、システムは、それらの活動関連のキーワードを使用して、メッセージ関連のコンテキスト情報を推測する（ステップ２０６）。例えば、システムが、テキストメッセージの中で「ｆｉｎｄｉｎｇ」および「ｎｅｍｏ」というキーワードを見つけた場合、システムは、テキストメッセージが、映画「Ｆｉｎｄｉｎｇ  Ｎｅｍｏ」について話し合っていると推測することができる。
【００３９】
また、システムは、メッセージ１０２（および、通常、多数のさらなるメッセージ）からのメッセージ関連のコンテキスト情報を使用して、活動モデル１０８を構築するのを助ける（ステップ２０８）。これを行う際、システムは、送受信された電子メールメッセージのコンテンツを分析して、将来の活動に関するユーザの計画についての情報を抽出する。抽出された情報は、次に、活動モデル１０８に送られ、特定の時点における特定の活動へのユーザの関心の確率を推測するさらなる手がかりとして使用される。
【００４０】
例えば、本発明の一実施形態では、システムは、いくつかの最上レベルの活動（ＥＡＴ、ＢＵＹ、ＳＥＥ、ＤＯ、およびＲＥＡＤ）についての情報にユーザが関心を持っている確率を、ユーザが、近い将来にそれらの活動を行うというシステムの信念に基づき、計算する。この推測は、母集団の人口統計学的に類似したセグメントにおいて観察されるパターンと、そのユーザの個別の個人的行動履歴との組合せに基づくことが可能である。システムは、或るタイプの場所の訪問を特定の活動と関連付けることにより、或る活動をおそらく行っていることを推測することができる。例えば、ユーザが、小売店を訪問する場合、システムは、ユーザが、ＢＵＹ活動を行っているものと推測する。別の例として、ユーザが、レストランまたはカフェを訪問する場合、システムは、ユーザが、ＥＡＴ活動を行っているものと推測することができる。同様に、劇場または博物館を訪問することは、ＳＥＥ活動に関連することが可能であり、ジムを訪問することは、ＤＯ活動に関連することが可能であり、デバイス自体の上のコンテンツを読むことは、ＲＥＡＤ活動に関連することが可能である。
【００４１】
また、システムは、このメッセージ関連のコンテキスト情報を使用して、ユーザ選好モデル１１０を構築することを助け（ステップ２１０）、モデル１１０は、ユーザの個々の嗜好および選好を示す。本発明の一部の実施形態では、ユーザ選好モジュール１１０は、ＵＣＰＭ（Ｕｓｅｒ  Ｃｏｎｔｅｎｔ  Ｐｒｅｆｅｒｅｎｃｅ  Ｍｏｄｅｌ：ユーザコンテンツ選好モデル）を含む、いくつかの構成要素を含み、ＵＣＰＭは、ユーザが、過去に見たＷｅｂページおよび文書のコンテンツから構築されて、標準のｔｆ／ｉｄｆ（単語頻度／逆文書頻度）メトリックを使用して、重み付きトピック単語のリストを生成する。また、ユーザ選好モデル１１０は、各タイプの活動内の属性に関するユーザの言明される選好も含むことが可能である。例えば、ＥＡＴ活動内で、ユーザは、いくつかのタイプの料理（アメリカ料理、アジア料理など）、価格範囲、活気のある雰囲気、駐車、喫煙などのそれぞれに関するユーザの選好を言明することができる。この属性リストは、レストラン批評で見られる一般的な属性から導き出されることが可能である（同様のアプローチが、他の活動に適用可能なコンテンツに対して使用される）。また、ユーザ選好モデル１１０は、前述した活動モデル学習プロセスと類似した機構を使用して、時とともに自動的に選好を推測することも可能である。
【００４２】
最後に、推奨モジュール１１２は、活動モデル１０８およびユーザ選好モデル１１０からの情報を使用して、或る活動をユーザ１２２に推奨する（ステップ２１２）。本発明の一実施形態では、所与のユーザおよびコンテキストに関して、推奨モジュール１１２は、様々なモデルからの結果を組み合わせることにより、各コンテンツアイテムの値を計算する。すべてのアイテムにスコアが付けられると、一番上からＮ個のアイテムが、戻される。ほとんどの既存の推奨システムは、１つのモデルに排他的に依拠し、このモデルは、たいてい、或る形態の協調フィルタリングであり、このモデルの内部実装は、極めて複雑である可能性があることに留意されたい。
【００４３】
これに対して、本発明の一実施形態では、アイテムに関する最終スコアが、１つではなく、任意の数のモデルの結果に基づいて計算される。この実施形態では、セットジェネレータが、すべての利用可能なモデルのリストを保持し、システムの他の構成要素からセットジェネレータが受け取る入力に応じてケースバイケースで、それらのモデルを組み合わせる。モデルが、組み合わされる仕方は、規則セットにおいて指定されることが可能であり、あるいは現在のユーザのコンテキストから推測されることが可能である。また、セットジェネレータは、所与のコンテキストにおける所与のユーザに、どのようなモデルが最も適切であるかを、時間をかけて学習することもできる。
【００４４】
例えば、本発明の一実施形態は、以下のモデルタイプを組み合わせる。すなわち、
【００４５】
（１）格付けを使用して、アイテム間の類似度を計算する協調フィルタリングモデル。このタイプのモデルは、各アイテムに対するユーザによる格付けが、どれだけ類似しているかに基づき、各アイテムにスコアを付ける。
【００４６】
（２）時とともに進化する可能性がある、ユーザによって表明された選好を組み込むソフトクエリモデル。例えば、ユーザは、ユーザが、日本食を特に好むが、騒々しい場所を嫌う傾向があることを示すことが可能である。このタイプのモデルは、これらの主観的な選好に合致するアイテムに高いスコアを与える。各活動タイプの特定の属性が、スコアを計算する際に考慮に入れられる（例えば、料理は、ＥＡＴ活動に関して関係のある属性であるが、製品タイプがより有用である、ＢＵＹ活動には関係がない）。
【００４７】
（３）コンテキストソフトクエリモデル。このモデルタイプは、ソフトクエリモデルタイプに似通った仕方で機能するが、言明された選好からではなく、以前のユーザ行動から学習された選好を使用する。
【００４８】
（４）距離ベースのモデル。これらのモデルにおいて、ユーザに関する或る距離範囲（ユーザによって明示的に入力された、またはユーザの場所追跡から推測された）を所与として、モデルは、その範囲内でアイテムに最大の有用性を与え、指数関数的減衰関数を使用して、その他のアイテムを格付けする。
【００４９】
（５）レコメンダが、前述したＵＣＰＭを使用して、ユーザが以前に見たコンテンツに対するコンテンツの類似度を測定するコンテンツ選好モデル。
【００５０】
（６）経験的な結果に従って、どのようなアイテムをユーザが読む可能性が最も高いかを示すリーディングベースのモデル。
【００５１】
（７）前に見られたアイテムのスコアを低減する（ユーザの退屈さを減らすように）モデル。
【００５２】
（８）コンテンツ分析技術（後段で説明される）からの情報を使用して、コンテンツと関係するアイテムのスコアを上げるモデル。これらのモデルを使用して、システムは、推奨可能な各アイテムの合計の平均スコアを計算し、各活動カテゴリ内の最高の格付けをされたコンテンツから推奨を行う。
【００５３】
図３は、活動関連のキーワードを使用して、メッセージ関連のコンテキスト情報を推測するプロセスを示す流れ図を提示する。この流れ図は、図２の流れ図のステップ２０４およびステップ２０６にかかわる動作を、より詳細に示す。
【００５４】
さらに、システムは、メッセージからのデータを片付ける（ステップ３０２）。例えば、片付けることは、メッセージからＸＭＬ（拡張マークアップ言語）コードを、後続スペースと一緒に除去することを含むことが可能である。また、片付けることは、ホワイトスペースを「正規化」し、すべての文字を小文字に変換することも含むことが可能である。
【００５５】
次に、システムは、例えば、一般的な省略形を展開することにより、言語を「正規化」する（ステップ３０４）。例えば、展開することは、２つのホワイトスペースに挟まれた文字「ｕ」を「ｙｏｕ」という語で置き換えることを含むことが可能である。
【００５６】
次に、システムは、メッセージの中で活動を示すキーワードおよびパターンを識別する（ステップ３０６）。例えば、メッセージの中の「ｍｏｖｉｅ」というキーワードが、そのメッセージに映画活動がかかわることを示すことが可能である。
【００５７】
また、システムは、メッセージの中の語を証拠語リストと比較する（ステップ３０８）。これらの証拠語リストには、例えば、時制情報または意見を示す語またはパターンのリストが含まれることが可能である。また、証拠語リストには、データベースからの語のリストも含まれることが可能であり、語は、例えば、活動の場所、映画の題名、料理タイプ、レストラン名などを指定することが可能である。
【００５８】
また、システムは、データから絶対時刻、および時間についての不確かさを抽出する、または推測する（ステップ３１０）。例えば、システムは、データの中で日付および時刻を探すことができる。また、システムは、時間表現を標準形にして、不確かさの値を時間表現に割り当てることもできる。
【００５９】
最後に、システムパターンは、メッセージの中の語と合致し、識別された合致に基づき、値を属性に割り当てる（ステップ３１２）。例えば、ＭＯＶＩＥ活動に関する属性には、以下が含まれることが可能である。すなわち、
ＡＣＴＣＡＴ：ａｃｔｉｖｉｔｙ  ｃａｔｅｇｏｒｙ；
ＡＣＴＬＯＣ：ａｃｔｉｖｉｔｙ  ｌｏｃａｔｉｏｎ；
ＡＣＴＴＩＭＥ：ａｃｔｉｖｉｔｙ  ｔｉｍｅ；
ＵＮＣＥＲＴＡＩＮＴＹ：ｕｎｃｅｒｔａｉｎｔｙ  ｆｏｒ  ｔｈｅ  ａｃｔｉｖｉｔｙ  ｔｉｍｅ；
ＴＥＮＳＥ：ｔｅｎｓｅ  ｉｎｆｏｒｍａｔｉｏｎ  ｆｏｒ  ｔｈｅ  ｍｅｓｓａｇｅ；
ＴＩＴＬＥ：ｍｏｖｉｅ  ｔｉｔｌｅ；ａｎｄ
ＯＰＩＮＩＯＮ：ａ  ｕｓｅｒ’ｓ  ｏｐｉｎｉｏｎ  ａｂｏｕｔ  ａ  ｍｏｖｉｅ．となる。
【００６０】
別の実施例では、ＥＡＴ活動に関する属性には、以下が含まれることが可能である。すなわち、
ＡＣＴＣＡＴ：ａｃｔｉｖｉｔｙ  ｃａｔｅｇｏｒｙ；
ＳＵＢＣＡＴ：ａｃｔｉｖｉｔｙ  ｓｕｂｃａｔｅｇｏｒｙ；
ＣＵＩＳＩＮＥ−ＴＹＰＥ；
ＡＣＴＬＯＣ：ａｃｔｉｖｉｔｙ  ｌｏｃａｔｉｏｎ；
ＲＥＳＴＡＵＲＡＮＴ−ＮＡＭＥ；
ＡＣＴＴＩＭＥ：ａｃｔｉｖｉｔｙ  ｔｉｍｅ；
ＵＮＣＥＲＴＡＩＮＴＹ：ｕｎｃｅｒｔａｉｎｔｙ  ｆｏｒ  ｔｈｅ  ａｃｔｉｖｉｔｙ  ｔｉｍｅ；
ＴＥＮＳＥ：ｔｅｎｓｅ  ｉｎｆｏｒｍａｔｉｏｎ  ｆｏｒ  ｔｈｅ  ｍｅｓｓａｇｅ；ａｎｄ
ＯＰＩＮＩＯＮ：ａ  ｕｓｅｒ’ｓ  ｏｐｉｎｉｏｎ  ａｂｏｕｔ  ａ  ｒｅｓｔａｕｒａｎｔ．となる。
【００６１】
例として、テキストメッセージ「ｈｅｙ  ｊｏｅ．．．ｄｏ  ｙｏｕ  ｗａｎｔ  ｔｏ  ｗａｔｃｈ  ａ  ｍｏｖｉｅ  ｔｏｎｉｇｈｔ？」を考慮されたい。このテキストメッセージは、以下の属性値割り当てを生じさせることが可能である。すなわち、
ＡＣＴＣＡＴ＝ＭＯＶＩＥ；
ＡＣＴＬＯＣ＝ＮＯＮＥ；
ＡＣＴＴＩＭＥ＝２００７／０５／２５  ２０：００；
ＵＮＣＥＲＴＡＩＮＴＹ＝２ｈｏｕｒｓ
ＴＥＮＳＥ＝ＦＵＴＵＲＥ；
ＴＩＴＬＥ＝ＮＯＮＥ；
ＯＰＩＮＩＯＮ＝ＮＯＮＥ．となる。
【図面の簡単な説明】
【００６２】
【図１】本発明の一実施形態によるコンピュータシステムを示す図である。
【図２】本発明の一実施形態による推奨を行うプロセスを示す流れ図である。
【図３】活動関連のキーワードを使用して、メッセージ関連のコンテキスト情報を推定するプロセスを示す流れ図である。
【符号の説明】
【００６３】
１０２  メッセージ、１０４  推論モジュール、１０６  コンテンツデータベース、１０８  活動モデル、１１０  ユーザ選好モデル、１１２  推奨モジュール、１１４  推奨、１２０  ディスプレイ、１２２  ユーザ。
【図１】
0005336105.tif 000002
【図２】
0005336105.tif 000003
【図３】
0005336105.tif 000004