(57)【要約】インターネット２００におけるユーザの行動を行動モデルとしてモデル化する行動モデル生成部５２０と、行動モデルの類似度に応じて、ユーザをグループ化し、グループ内において、他のユーザのプロファイルを用いて、特定のユーザのユーザプロファイルを推測した後、特定ユーザのプロファイルを、推測されたユーザプロファイルに更新するユーザプロファイル更新部５４０とを備えている。
2003017137.tif 000002
【特許請求の範囲】
【請求項１】
インターネットにおけるユーザの行動を行動モデルとしてモデル化するモデル化手段と、
行動モデルの類似度に応じて、ユーザをグループ化するグループ化手段と、
グループ内において、他のユーザのプロファイルを用いて、特定のユーザのユーザプロファイルを推測する推測手段と、
前記特定ユーザのプロファイルを、前記推測手段により推測されたユーザプロファイルに更新する更新手段と、
を備えたことを特徴とするユーザプロファイル管理装置。
【請求項２】
前記推測手段により推測されたユーザプロファイルを構成する各要素について、確信度を算出する確信度算出手段と、前記確信度がしきい値以下の要素について、ユーザに選択させる選択手段とを備えたことを特徴とする請求の範囲第１項に記載のユーザプロファイル管理装置。
【請求項３】
前記モデル化手段は、定期的にユーザの行動を行動モデルとしてモデル化することを特徴とする請求の範囲第１項または第２項に記載のユーザプロファイル管理装置。
【請求項４】
インターネットにおけるユーザの行動を行動モデルとしてモデル化するモデル化手段と、
前記行動モデルに基づいて、ユーザの行動傾向を分析する行動傾向分析手段と、
他のユーザの行動傾向と購入された商品との対応関係を表す事例ベースから、あるユーザの行動傾向との類似度が高い行動傾向を検索し、該行動傾向に対応する商品をユーザに推薦する推薦手段と、
を備えたことを特徴とする推薦装置。
【請求項５】
推薦された前記商品の購入履歴および当該ユーザの行動傾向を前記事例ベースに反映させる事例ベース更新手段を備えたことを特徴とする請求の範囲第４項に記載の推薦装置。
【発明の詳細な説明】
技術分野
本発明は、インターネットのユーザに関するユーザプロファイルを管理し、このユーザプロファイルに基づいて商品等を推薦するユーザプロファイル管理装置および推薦装置に関するものである。
背景技術
近時、インターネットの普及により、情報発信が容易となり、また、インターネットをインフラとした電子決済等が一般的になってきたことにより、企業にとっては、これらを用いたビジネスチャンスが広がりつつある。
一方、ユーザの視点からも多くの情報をインターネットから容易に入手可能となっていることは、より良い製品やサービスを得る機会の増加に繋がることから、ユーザにとって歓迎すべき点である。
しかしながら、ユーザの機会選択の幅が広がったことにより、顧客の満足度が高い意志決定を行うために多くの情報収集が欠かせなくなったという面もあり、企業としては、ユーザの一人一人に適した情報提供および商品推薦を行うことにより、顧客として囲い込み、ビジネスチャンスを逃さないという企業努力が不可欠な要素となっている。
このような背景より、近時では、ユーザプロファイルを用いたパーソナリゼーションや商品推薦の技術が注目されている。ここで、ユーザプロファイルは、ユーザに関する情報の総称であり、例えば、性別、年齢、未婚／既婚の別、住所や興味ジャンル、購買履歴等である。
例えば、近時では、ユーザプロファイルと、ユーザに提示する情報および商品との関連が高いものを推薦するコンテンツベースの推論システムや、ユーザプロファイルが似通ったユーザは、似通ったものを好むという観点から、コラボレーティブ・フィルタリング技術を用いた推薦システムが脚光を浴びている。
かかる推論システムや推薦システムに共通している点は、より質の高いサービスをユーザに提供するために、より正確で詳細なユーザプロファイルを保持する必要があることである。
しかしながら、ユーザプロファイル（特に、興味ジャンル等）は、時々刻々と変化する。従って、企業側で入手したユーザプロファイルは、時間の経過とともに、実際のユーザプロファイルとの差が開くという陳腐化現象が生じるため、役に立たなくなるという特性を有している。
このように陳腐化したユーザプロファイルによって推薦された商品等は、現時点のユーザに受け入れ難いものとなってしまう。従って、このような事態が発生した場合、企業は、ユーザの関心の低下や、ユーザと企業との接触機会の損失等により、顧客を逃してしまう。
本発明は、上記に鑑みてなされたもので、ユーザの手を煩わせることなくユーザプロファイルを更新することができ、より精度が高い推薦を行うことができるユーザプロファイル管理装置および推薦装置を提供することを目的としている。
発明の開示
上記目的を達成するために、本発明は、インターネットにおけるユーザの行動を行動モデルとしてモデル化するモデル化手段と、行動モデルの類似度に応じて、ユーザをグループ化するグループ化手段と、グループ内において、他のユーザのプロファイルを用いて、特定のユーザのユーザプロファイルを推測する推測手段と、前記特定ユーザのプロファイルを、前記推測手段により推測されたユーザプロファイルに更新する更新手段とを備えたことを特徴とする。
本発明によれば、インターネットにおけるユーザの行動モデルの類似度に応じて、ユーザをグループ化し、グループ内において、他のユーザのプロファイルを用いて、特定のユーザのユーザプロファイルを推測し、特定ユーザのプロファイルを、推測手段により推測されたユーザプロファイルに更新するようにしたので、ユーザの手を煩わせることなく、ユーザプロファイルを更新することができる。
また、本発明は、インターネットにおけるユーザの行動を行動モデルとしてモデル化するモデル化手段と、前記行動モデルに基づいて、ユーザの行動傾向を分析する行動傾向分析手段と、他のユーザの行動傾向と購入された商品との対応関係を表す事例ベースから、あるユーザの行動傾向との類似度が高い行動傾向を検索し、該行動傾向に対応する商品をユーザに推薦する推薦手段とを備えたことを特徴とする。
本発明によれば、他のユーザの行動傾向と購入された商品との対応関係を表す事例ベースから、あるユーザの行動傾向との類似度が高い行動傾向を検索し、該行動傾向に対応する商品をユーザに推薦するようにしたので、より精度が高い推薦を行うことができる。
発明を実施するための最良の形態
以下、図面を参照して本発明にかかる一実施の形態について詳細に説明する。第１図は、本発明にかかる一実施の形態の構成を示すブロック図である。この図には、インターネット上の複数のユーザに関する行動（ＷＥＢページの閲覧等）に基づいて、例えば、商品をユーザに推薦するための推薦システムが図示されている。
同図において、ＷＥＢサーバ１００は、インターネット２００を介して、コンテンツＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ページ１１０１〜１１０ｎ（第１０図参照）や属性情報入力ＨＴＭＬページ１３０（第１１図参照）をクライアント３００１〜３００ｍへ提供する。
これらのコンテンツＨＴＭＬページ１１０１〜１１０ｎは、Ｗｅｂ（ｗｏｒｌｄ  ｗｉｄｅ  Ｗｅｂ）ページを記述するためのＨＴＭＬファイルから構成されており、Ｗｅｂブラウザにより閲覧される。第１０図は、コンテンツＨＴＭＬページ１１０１の一例を示す図である。このコンテンツＨＴＭＬページ１１０１は、コンテンツとしてのプロ野球速報に関するページであり、試合結果、これまでの成績、今日のカード、球団情報等を表示している。リンク情報Ａは、コンテンツＨＴＭＬページ１１０１に元々含まれいる。リンク情報Ｂは、設問生成部５５０により提示される。また、リンク情報Ｃは、推薦部５７０により提示される。
同図に下線表示された「これまでの成績」、「今日のカード」、「球団情報」は、他のコンテンツＨＴＭＬページ１１０１〜１１０ｎへのリンク情報である。従って、「これまでの成績」がクリックされると、例えば、コンテンツＨＴＭＬページ１１０２によりこれまでの成績に関する情報が閲覧される。
第１１図は、第１図に示した属性情報入力ＨＴＭＬページ１３０の一例を示す図である。この属性情報入力ＨＴＭＬページ１３０は、インターネット上のユーザの属性情報を入力するためのページである。この属性情報としては、生年月日、性別、職業、郵便番号、年収、興味分野等が挙げられる。属性情報は、属性情報入力ＨＴＭＬページ１３０を介して、ユーザまたは管理者により明示的に入力される。
第１図に戻り、アクセスログデータベース１２０は、コンテンツＨＴＭＬページ１１０１〜１１０ｎへのアクセスがあった場合に当該ユーザに関するアクセスログを格納するデータベースである。このアクセスログは、ＷＥＢサーバ１００におけるユーザの行動（ページを閲覧、ＵＲＬを指定、あるページのリンク情報により別のページを閲覧等）、アクセス時刻、アクセスページ、アクセスしたユーザ等に関する情報である。
クライアント３００１〜３００ｍは、ｍ人のユーザ側にそれぞれ設置されており、インターネット２００を介して、ＷＥＢサーバ１００にそれぞれアクセス可能とされている。これらのクライアント３００１〜３００ｍは、ユーザ操作に基づいて、Ｗｅｂページを閲覧するためのＷＥＢブラウザ４００１〜４００ｍにより、前述したコンテンツＨＴＭＬページ１１０１〜１１０ｎや属性情報入力ＨＴＭＬページ１３０を閲覧する。
推薦装置５００は、ユーザプロファイルの更新を行う機能と、後述するユーザの行動傾向に着目して、ユーザに商品を推薦する機能とを備えている。
推薦装置５００において、通信制御部５１０は、所定の通信プロトコルに従って、ＷＥＢサーバ１００との間の通信を制御する。行動モデル生成部５２０は、定期的に、アクセスログデータベース１２０に格納されているアクセスログに基づいて、ユーザの行動を数理的に表す行動モデルを生成する。この行動モデルの生成には、例えば、第１２図に示したＨＭＭ（Ｈｉｄｄｅｎ  Ｍａｒｋｏｖ  Ｍｏｄｅｌ；隠れマルコフモデル）が適用される。この行動モデルは、初期確率π、内部状態遷移確率ｐおよび出力確率ｑ［ｑ１、ｑ２、ｑ３］（第２図参照）で表現される。
第１図に戻り、属性情報入力部５３０は、ユーザまたは管理者により、属性情報入力ＨＴＭＬページ１３０（第１１図参照）を介して、明示的に入力された属性情報Ａｉ（第２図参照）を入力する。
ユーザプロファイルデータベース６００は、ユーザ毎のプロファイルを格納するデータベースである。具体的には、ユーザプロファイルデータベース６００は、第２図に示したように、「ユーザＩＤ（Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｄａｔａ）」、「行動モデルＭｉ」および「属性情報Ａｉ」というフィールドを備えている。
「ユーザＩＤ」は、ユーザを識別するための識別子である。「行動モデルＭｉ」は、ユーザ毎に、行動モデル生成部５２０により生成された行動モデル（初期確率、内部状態遷移確率および出力確率）に関する情報である。ｉは、ユーザを表すユーザカウンタであり、「ユーザＩＤ」に対応している。
「属性情報Ａｉ」は、属性情報入力部５３０に入力された属性情報、すなわち、属性情報入力ＨＴＭＬページ１３０（第１１図参照）を介して明示的に入力された属性情報である。ユーザプロファイルは、行動モデルＭｉおよび属性情報Ａｉから構成されている。
ここで、ユーザプロファイルデータベース６００は、Ｐｉ＝｛Ｍｉ；Ａｉ｝で表されるユーザプロファイルの集合で表される。Ｐｉは、複数のユーザプロファイルの集合である。Ｍｉは、複数のユーザに関する行動モデルの集合である。Ａｉは、複数のユーザに関する属性情報の集合であり、Ａｉ＝［ａ１、ａ２、・・・、ａｋ］で表される。属性情報ａ１は、「性別」である。属性情報ａ２は、「年齢」である。以下、同様にして、属性情報ａｋは、「語学」である。
第１図に戻り、ユーザプロファイル更新部５４０は、定期的に、複数のユーザを行動モデルの類似度に応じてグループ化する機能と、上記類似度に基づいて、あるユーザの属性情報を推測する機能とを備えている。
また、ユーザプロファイル更新部５４０は、推測された属性情報とこれに対応する行動モデルとを新たなユーザプロファイルとして、ユーザプロファイルデータベース６００（第２図参照）に格納する機能や、ユーザプロファイルデータベース６００にすでに格納されているユーザプロファイルを、上記新たなユーザプロファイルに更新する機能を備えている。
設問生成部５５０は、ユーザプロファイルの属性情報の確信度が低い場合に、ユーザに対して選択用の設問を生成する機能を備えている。
行動傾向出力部５６０は、あるユーザに行動があった場合に、ユーザプロファイルデータベース６００に格納されている行動モデルに基づいて、当該ユーザの行動傾向を予測し、予測結果を出力する機能を備えている。
事例ベース６１０は、ユーザの行動傾向およびユーザプロファイルと、当該ユーザが好む商品との対応関係を事例に基づいて表すデータベースである。具体的には、事例ベース６１０は、第３図に示したように、「行動傾向」、「性別」、「年齢」、「年収」、・・・、「語学」、「商品」というフィールドを備えている。
「行動傾向」は、ＷＥＢサーバ１００におけるユーザ毎の行動傾向を識別するための識別子である。「性別」、「年齢」、・・・、「語学」は、属性情報である。「商品」は、当該行動傾向およびユーザプロファイルに対応するユーザへ推薦すべき商品に関する情報である。
第１図に戻り、推薦部５７０は、事例ベース６１０（第３図参照）を参照して、ユーザプロファイルデータベース６００に格納されているユーザプロファイルと、行動傾向出力部５６０からの行動傾向の予測結果とに基づいて、当該ユーザに適した商品を推薦する機能を備えている。
入力部５８０は、キーボード、マウス等の入力デバイスである。表示部５９０は、各種画面、推薦結果等を表示するためのＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）やＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）である。
つぎに、一実施の形態の動作について、第４図〜第９図に示したフローチャートを参照しつつ詳述する。
まず、第１図に示した行動モデル生成部５２０は、定期的にアクセスログデータベース１２０からユーザ毎にアクセスログを取得し、このアクセスログと第１２図に示した隠れマルコフモデル（ＨＭＭ）とを用いて、ユーザ毎の行動モデルＭｉ（ｉはユーザを示すユーザカウンタ）を生成する。
また、行動モデル生成部５２０は、ユーザ毎に生成された行動モデルＭｉを第２図に示したユーザプロファイルデータベース６００に格納する。
第４図に示したステップＳＡ１では、ユーザプロファイル更新部５４０は、ユーザプロファイルデータベース６００（第２図参照）に格納されたユーザプロファイルを更新するためのユーザプロファイル更新処理を実行する。
具体的には、第５図に示したステップＳＢ１では、ユーザプロファイル更新部５４０は、ＷＥＢサーバ１００における行動の類似度に応じて、ユーザをグループ化するための類似ユーザ集合取得処理を実行する。ここでいう行動とは、コンテンツＨＴＭＬページ１１０１〜１１０ｎのうちいずれかのページへのアクセス（連続的なアクセスも含む）をいう。
すなわち、第６図に示したステップＳＣ１では、ユーザプロファイル更新部５４０は、ユーザがコンテンツＨＴＭＬページ１１０１〜１１０ｎのうちいずれかのコンテンツＨＴＭＬページにアクセスしたか否かを判断し、この場合、判断結果を「Ｎｏ」として、同判断を繰り返す。
そして、あるユーザ（以下、特定ユーザと称する）がクライアント３００１の操作により、インターネット２００を介して、コンテンツＨＴＭＬページ１１０１（第１０図参照）にアクセスすると、ユーザプロファイル更新部５４０は、ステップＳＣ１の判断結果を「Ｙｅｓ」とする。
このアクセスに伴い、アクセスログデータベース１２０には、特定ユーザに関するアクセスログが逐次格納される。
ステップＳＣ２では、ユーザプロファイル更新部５４０は、特定ユーザに関する行動としての、アクセスページｕ∈Ｕ（Ｕに含まれるｕという意味）をアクセスログデータベース１２０から取得する。
上記Ｕは、ユーザがアクセス可能な全ページ（コンテンツＨＴＭＬページ１１０１〜１１０ｎ）である。この全ページＵは、Ｕ＝｛ｕ１、ｕ２、・・・、ｕｎ｝で表される。ｕ１、ｕ２、・・・、ｕｎは、コンテンツＨＴＭＬページ１１０１、１１０２、・・・、１１０ｎにそれぞれ対応している。
アクセスページｕは、全ページＵ＝｛ｕ１、ｕ２、・・・、ｕｎ｝のうち、当該ユーザがアクセスしたページである。例えば、ユーザがコンテンツＨＴＭＬページ１１０１に続いてコンテンツＨＴＭＬページ１１０２にアクセスした場合には、アクセスページｕは、ｕ＝｛ｕ１、ｕ２｝で表される。この場合、当該ユーザの行動Ｅは、Ｅ＝ｕ１、ｕ２として与えられる。
ステップＳＣ３では、ユーザプロファイル更新部５４０は、特定ユーザの行動Ｅを、上記アクセスページｕに基づいて更新（Ｅ＝Ｅｕ）する。ステップＳＣ４〜ステップＳＣ９では、ユーザプロファイル更新部５４０は、つぎの（１）式で表される類似ユーザ集合Ｇを取得する。
Ｇ＝｛Ｐｉ｜Ｓｉｍ（Ｍ、Ｍｉ、Ｅ）＜ε｝・・・・（１）
（１）式において、ユーザカウンタｉは、第２図に示したユーザＩＤに対応している。Ｐｉは、当該ユーザに関するユーザプロファイルであり、第２図に示した行動モデルＭｉおよび属性情報Ａｉである。Ｓｉｍ（Ｍ、Ｍｉ、Ｅ）は、特定ユーザの行動Ｅに対応する行動モデルＭと、その他のユーザに関する行動モデルＭｉとの類似度を表す類似度関数であり、つぎの（２）式で表される。
Ｓｉｍ（Ｍ、Ｍｉ、Ｅ）＝｜Ｐｒｏｂ（Ｅ；Ｍ）−Ｐｒｏｂ（Ｅ；Ｍｉ）｜
・・・・・（２）
上記（２）式において、Ｐｒｏｂ（Ｅ；Ｍ）は、特定ユーザに関する行動Ｅが行動モデルＭによって出力される確率分布を表す確率分布ベクトルである。Ｐｒｏｂ（Ｅ；Ｍｉ）は、特定ユーザに関する行動Ｅがその他のユーザに関する行動モデルＭｉによって出力される確率分布を表す確率分布ベクトルである。
ここで、（２）式で表される類似度関数Ｓｉｍ（Ｍ、Ｍｉ、Ｅ）では、特定ユーザに関する短期的な行動傾向を考慮した類似度が計算される。
はじめに、ステップＳＣ４では、ユーザプロファイル更新部５４０は、類似ユーザ集合Ｇを空集合φで初期化する。また、ユーザプロファイル更新部５４０は、全ユーザにわたって類似度の比較を行うため、ユーザＩＤに対応するユーザカウンタｉを０で初期化する。
ステップＳＣ５では、ユーザプロファイル更新部５４０は、ユーザカウンタｉを１インクリメントする。ステップＳＣ６では、ユーザプロファイル更新部５４０は、ユーザカウンタｉが全ユーザ数Ｎ以下であるか否かを判断し、この場合、判断結果を「Ｙｅｓ」とする。この全ユーザ数Ｎは、第２図に示したユーザプロファイルデータベース６００における最終のユーザＩＤに対応している。
ステップＳＣ７では、ユーザプロファイル更新部５４０は、上述した（２）式より、類似度関数Ｓｉｍ（Ｍ、Ｍｉ、Ｅ）を計算する。すなわち、ユーザプロファイル更新部５４０は、行動Ｅを考慮して、特定ユーザの行動モデルＭとその他のユーザの行動モデルＭｉとの類似度を計算する。ここで、類似度関数Ｓｉｍ（Ｍ、Ｍｉ、Ｅ）が小さいほど、特定ユーザの行動モデルＭとその他の行動モデルＭｉとが類似していることを意味している。
ステップＳＣ８では、ユーザプロファイル更新部５４０は、ステップＳＣ７で計算された類似度関数Ｓｉｍ（Ｍ、Ｍｉ、Ｅ）がしきい値εより小さいか否か、すなわち、類似度が高いか否かを判断する。ここで、ステップＳＣ８の判断結果が「Ｎｏ」である場合、ステップＳＣ５以降では、ユーザプロファイル更新部５４０は、ユーザカウンタｉを１インクリメントし、特定ユーザと、つぎの他のユーザとに関する類似度判定を行う。
一方、ステップＳＣ８の判断結果が「Ｙｅｓ」である場合、すなわち、類似度が高い場合、ステップＳＣ９では、ユーザプロファイル更新部５４０は、特定ユーザの行動モデルＭとの類似度が高い、他のユーザの行動モデルＭｉをつぎの（３）式で表される類似ユーザ集合Ｇに組み入れることにより、類似ユーザ集合Ｇを更新する。
Ｇ＝ＧＵ｛Ｍｉ｝・・・・・・（３）
以後、ユーザプロファイル更新部５４０は、ステップＳＣ６の判断結果が「Ｎｏ」となるまでステップＳＣ５以降の処理を実行する。そして、ステップＳＣ６の判断結果が「Ｎｏ」になると、第５図に示したステップＳＢ２〜ステップＳＢ９では、ユーザプロファイル更新部５４０は、つぎの（４）式で表される未確定属性集合Ｂを取得する。
Ｂ＝｛ａｋ｜Ｃｏｎｆ（ａｋ）＜σ｝・・・（４）
未確定属性集合Ｂは、ステップＳＢ１で取得された類似ユーザ集合Ｇにおける属性情報Ａｉ＝［ａ１、ａ２、・・・、ａｋ］（第２図参照）を構成する属性情報ａ１、ａ２、・・・、ａｋの確信度Ｃｏｎｆ（ａｋ）（ｋ＝１〜ｋ）がしきい値σより小さいものの集合である。すなわち、未確定属性集合Ｂは、確信度が低く、推測が難しい属性情報の集合である。
確信度Ｃｏｎｆ（ａｋ）は、つぎの（５）式で表される。
Ｃｏｎｆ（ａｋ）＝１／Ｖ（ａｋ）・・・（５）
（５）式において、Ｖ（ａｋ）は、属性情報ａｋの分散である。
はじめに、ステップＳＢ２では、ユーザプロファイル更新部５４０は、未確定属性集合Ｂを空集合φで初期化する。また、ユーザプロファイル更新部５４０は、全属性にわたって確信度としきい値σとの比較を行うため、属性情報Ａ１に対応する属性カウンタｋを０で初期化する。
ステップＳＢ３では、ユーザプロファイル更新部５４０は、属性カウンタｋを１インクリメントする。ステップＳＢ４では、ユーザプロファイル更新部５４０は、属性カウンタｋが全属性数ｎ以下であるか否かを判断し、この場合、判断結果を「Ｙｅｓ」とする。この全属性数ｎは、第２図に示したユーザプロファイルデータベース６００における属性情報Ａｉにおける「語学」（属性情報ａｎ）に対応している。
ステップＳＢ５では、ユーザプロファイル更新部５４０は、属性情報ａｋ（この場合、第２図に示した「性別」（属性情報ａ１）の確信度Ｃｏｎｆ（ａｋ）を前述した（５）式から求める。
ステップＳＢ６では、ユーザプロファイル更新部５４０は、ステップＳＢ５で求められた確信度Ｃｏｎｆ（ａｋ）がしきい値σ以下であるか否かを判断する。
ステップＳＢ６の判断結果が「Ｙｅｓ」である場合、すなわち、当該属性情報ａｋに関する確信度Ｃｏｎｆ（ａｋ）が低い（しきい値σ以下）である場合、ステップＳＢ７では、ユーザプロファイル更新部５４０は、当該属性情報ａｋを未確定属性集合Ｂに組み入れいることにより、未確定属性集合Ｂを更新する。
以後、ユーザプロファイル更新部５４０は、ステップＳＢ４の判断結果が「Ｎｏ」になるまで、ステップＳＢ３以降を実行する。
一方、ステップＳＢ６の判断結果が「Ｎｏ」である場合、すなわち、確信度Ｃｏｎｆ（ａｋ）が高い（しきい値σを超える）場合、ステップＳＢ８では、ユーザプロファイル更新部５４０は、類似ユーザ集合Ｇの中で属性情報ａｋの属性値ｂｋｊに関して多数決を行う。Ｄｋは、属性情報ａｋの定義域を表す。具体的には、類似ユーザ集合Ｇの中で属性情報ａｋの値として、属性値ｂｋｊをとる割合をＰｒｏｂ（ｂｋｊ｜Ｇ））とする。このＰｒｏｂ（ｂｋｊ｜Ｇ））を最大とするｊの値を用いて、現時点で対象しているユーザの属性情報ａｋの属性値ｂｋｊが求められる。
そして、ステップＳＢ４の判断結果が「Ｎｏ」になると、第４図に示したステップＳＡ２では、ユーザプロファイル更新部５４０は、ベクトルを生成するためのベクトル生成処理を実行する。
具体的には、第７図に示したステップＳＤ１では、ユーザプロファイル更新部５４０は、ステップＳＢ１（第５図参照）で取得された類似ユーザ集合Ｇから全てのユーザプロファイルを取得したか否かを判断し、この場合、判断結果を「Ｎｏ」とする。
ステップＳＤ２では、ユーザプロファイル更新部５４０は、類似ユーザ集合Ｇに属する一つのユーザプロファイルＰｉ｛Ｍｉ；Ａｉ｝を取得する。
ステップＳＤ３では、ユーザプロファイル更新部５４０は、特定ユーザが、行動Ｅ（例えば、ページｕ１（第１０図に示したコンテンツＨＴＭＬページ１１０１にアクセス））に続いて行動ＥｕＬ（ページｕＬにアクセス）をとる発生確率を、確率分布ベクトルＰｒｏｂ（ＥｕＬ｜Ｍｉ）として求める。ここで、ページｕＬは、特定ユーザがアクセス可能な全ページ（ページｕ１、ｕ２、ｕ３、・・・）である。
従って、ステップＳＤ３では、上記ページｕ１、ｕ２、ｕ３、・・・に関する確率分布ベクトルＰｒｏｂ（Ｅｕ１｜Ｍｉ）、Ｐｒｏｂ（Ｅｕ２｜Ｍｉ）、Ｐｒｏｂ（Ｅｕ３｜Ｍｉ）、・・・が求められる。
以下では、確率分布ベクトルＰｒｏｂ（Ｅｕ１｜Ｍ１）、Ｐｒｏｂ（Ｅｕ２｜Ｍｉ）、Ｐｒｏｂ（Ｅｕ３｜Ｍｉ）・・・を確率分布ベクトルＰｒｏｂ（ＥｕＬ｜Ｍｉ）と表現する。
ステップＳＤ４では、ユーザプロファイル更新部５４０は、ステップＳＤ３で求められたページ毎の確率分布ベクトルＰｒｏｂ（ＥｕＬ｜Ｍｉ）と、しきい値δとを比較して、特定ユーザが当該ページにアクセスする度合いを、「アクセスする」、「アクセスしない」または「不明」という三つの状態により判定する。
具体的には、ユーザプロファイル更新部５４０は、つぎの（ａ）〜（ｃ）の条件により判定する。
（ａ）確率分布ベクトルＰｒｏｂ（ＥｕＬ｜Ｍｉ）＞１−δ（アクセスする）
（ｂ）確率分布ベクトルＰｒｏｂ（ＥｕＬ｜Ｍｉ）＜δ（アクセスしない）
（ｃ）δ≦確率分布ベクトルＰｒｏｂ（ＥｕＬ｜Ｍｉ）≦（１−δ）（不明）
ここで、ユーザプロファイル更新部５４０は、（ａ）の条件に合致した場合、判定値ｕ（ｉ）Ｌを「１」とし、（ｂ）の条件に合致した場合には、判定値ｕ（ｉ）Ｌを「０」とする。また、ユーザプロファイル更新部５４０は、（ｃ）の条件に合致した場合、判定値ｕ（ｉ）Ｌを「？」とする。
以後、ユーザプロファイル更新部５４０は、ステップＳＤ１の判断結果が「Ｙｅｓ」となるまで、ステップＳＤ１〜ステップＳＤ４を繰り返す。
そして、ステップＳＤ１の判断結果が「Ｙｅｓ」になると、つぎの（６）式で表されるベクトルが生成される。
［ｕ（ｉ）１、ｕ（ｉ）２、ｕ（ｉ）３、・・・；Ａｉ］、Ｐｉ∈Ｇ、ｕ（ｉ
）Ｌ∈｛？、０、１｝                                    ・・・・・（６）
また、ステップＳＤ１の判断結果が「Ｙｅｓ」になると、第４図に示したステップＳＡ３では、ユーザプロファイル更新部５４０は、（６）式で表されるベクトルにおける属性情報ａｋの確信度Ｉｎｆｏ（ａｋ）をつぎの（７）式より求める。
Ｉｎｆｏ（ａｋ）＝ΣＬＩｎｆｏｋ（ｕＬ）・・・（７）
上記（７）式において、属性情報ａｋは、前述した未確定属性集合Ｂに含まれている。Ｉｎｆｏｋ（ｕＬ）は、行動Ｅを行った特定ユーザに対し、つぎの行動（ページｕＬのアクセス）を行うことによって属性情報ａｋの確信度をどの程度増すことができるかという量である。
ステップＳＡ４では、設問生成部５５０は、つぎの（８）式より確信度Ｉｎｆｏ（ａｋ）が最小となるようなｋをκとして求める。
κ＝ａｒｇ  ｍｉｎｋ  Ｉｎｆｏ（ａｋ）  ・・・（８）
つぎに、設問生成部５５０は、つぎの（９）式より、情報利得Ｉｎｆｏｋ（ｕＬ）が最大となるようなＬをλとして求める。
λ＝ａｒｇ  ｍａｘＬ  Ｉｎｆｏκ（ｕＬ）  ・・・（９）
つぎに、設問生成部５５０は、第１０図に示したように、設問ページｕλへのリンク情報Ｂを提示した後、ステップＳＡ１以降の処理を実行する。このリンク情報Ｂは、確信度が低い属性情報に関してユーザに選択させるためのページへジャンプさせるための情報である。
つぎに、一実施の形態における推薦処理について、第８図に示したフローチャートを参照しつつ詳述する。前述した特定ユーザが第１０図に示したコンテンツＨＴＭＬページ１１０１にアクセスしたとすると、第８図に示したステップＳＥ１では、行動傾向出力部５６０は、特定ユーザの行動Ｅを取得する。
ステップＳＥ２では、行動傾向出力部５６０は、当該特定ユーザの行動モデルＭｉ（第２図参照）を用いて、行動傾向Ｑを得る。
ステップＳＥ３以降では、推薦部５７０は、上記行動傾向Ｑ、属性情報Ａｉ（第２図参照）および事例ベース６１０（第３図参照）に基づいて、特定ユーザに商品を推薦する。
ここで、第３図に示した事例ベース６１０においては、事例（「行動傾向」、「性別」、・・・、「語学」および「商品」）をｃｚと定義する。事例ｃｚにおける事例変数ｚは、各レコードに対応しており、第３図の例では１〜７までの値をとる。一般的には、レコード数が非常に多いため、全事例数をＺと表す。
ステップＳＥ３では、推薦部５７０は、上記事例変数ｚを０とし、類似事例集合Ｔをリセットする。この類似事例集合Ｔは、特定ユーザの行動傾向Ｑおよび属性情報Ａと、第３図に示した事例における行動傾向および属性情報（「性別」、・・・、「語学」）との類似度が高い（後述するしきい値δ以上）事例ｃｚの集合である。
ステップＳＥ４では、推薦部５７０は、事例変数ｚを１インクリメントする。ステップＳＥ５では、推薦部５７０は、事例変数ｚが全事例数Ｚ以下であるか否かを判断する。この全事例数Ｚは、第３図に示した最終レコードの事例ｃ７の「７」に対応している。この場合、推薦部５７０は、ステップＳＥ５の判断結果を「Ｎｏ」とする。
ステップＳＥ６では、推薦部５７０は、特定ユーザの行動傾向Ｑおよび属性情報Ａ（第２図参照）と、事例ｃｚ（この場合、第３図に示した事例ｃ１）における行動傾向Ｑ４および属性情報（「性別」、・・・、「語学」）との類似度ｓをつぎの（１０）式から求める。
ｓ＝Ｓｉｍ（｛Ｑ、Ａ｝、ｃｚ）・・・（１０）
ステップＳＥ７では、推薦部５７０は、類似度ｓが、しきい値δ以上（高）であるか否かを判断する。このステップＳＥ７の判断結果が「Ｎｏ」である場合、推薦部５７０は、ステップＳＥ５の判断結果が「Ｙｅｓ」となるまで、ステップＳＥ４以降を実行する。
一方、ステップＳＥ７の判断結果が「Ｙｅｓ」である場合、ステップＳＥ８では、推薦部５７０は、特定ユーザの行動傾向Ｑおよび属性情報Ａとの類似度が高い当該事例ｃｚを類似事例集合Ｔに組み込む。
そして、ステップＳＥ５の判断結果が「Ｙｅｓ」になると、ステップＳＥ９では、推薦部５７０は、類似事例集合Ｔを用いて、周知の事例ベース推論を実施し、推論結果を推薦商品Ｒとする。この場合には、第３図に示した事例ｃ１の「商品」であるＢＳ内蔵ビデオが推薦商品Ｒとされたとする。
つぎに、推薦部５７０は、第１０図に示したように、上記推薦商品Ｒに関するリンク情報Ｃを特定ユーザに提示する。このリンク情報Ｃがクリックされると、上記ＢＳ内蔵ビデオに関するページが表示される。また、推薦部５７０は、推薦対象であるＢＳ内蔵ビデオが特定ユーザにより購入された場合、特定ユーザの行動傾向、属性情報および商品を事例ベース６１０（第３図参照）に反映する。
なお、前述した一実施の形態では、第６図に示した類似ユーザ集合取得処理に代えて、第９図に示した類似ユーザ集合取得処理を実行するようにしてもよい。
具体的には、第９図に示したステップＳＦ１では、ユーザプロファイル更新部５４０は、行動モデル生成部５２０により行動モデルが生成されたか否かを判断し、この場合、判断結果を「Ｎｏ」として、同判断を繰り返す。
そして、あるユーザ（以下、特定ユーザと称する）に関する行動モデルが生成されると、ユーザプロファイル更新部５４０は、ステップＳＦ１の判断結果を「Ｙｅｓ」とする。
ステップＳＦ２〜ステップＳＦ７では、ユーザプロファイル更新部５４０は、つぎの（１１）式で表される類似ユーザ集合Ｇを取得する。
Ｇ＝｛Ｐｉ｜Ｓｉｍ（Ｍ、Ｍｉ）＜ε｝・・・・（１１）
（１１）式において、ユーザカウンタｉは、第２図に示したユーザＩＤに対応している。Ｐｉは、当該ユーザに関するユーザプロファイルであり、第２図に示した行動モデルＭｉおよび属性情報Ａｉである。Ｓｉｍ（Ｍ、Ｍｉ）は、特定ユーザの行動モデルＭと、その他のユーザに関する行動モデルＭｉとの類似度を表す類似度関数であり、第１２図に示した隠れマルコフモデルに対応するつぎの（１２）式で表される。
Ｓｉｍ（Ｍ、Ｍｉ）＝Σｓｔ｜ｐｓｔ−ｐ（ｉ）ｓｔ｜
＋Σｖｗ｜ｑｖ（ｕｗ）−ｑ（ｉ）ｖ（ｕｗ）｜・・・（１２）
上記（１２）式で表される類似度関数Ｓｉｍ（Ｍ、Ｍｉ）では、特定ユーザに関する長期的な嗜好が反映されている。
はじめに、ステップＳＦ２では、ユーザプロファイル更新部５４０は、類似ユーザ集合Ｇを空集合φで初期化する。また、ユーザプロファイル更新部５４０は、全ユーザにわたって類似度としきい値との比較を行うために、ユーザＩＤに対応するユーザカウンタｉを０で初期化する。
ステップＳＦ３では、ユーザプロファイル更新部５４０は、ユーザカウンタｉを１インクリメントする。ステップＳＦ４では、ユーザプロファイル更新部５４０は、ユーザカウンタｉがしきい値Ｎ以下であるか否かを判断し、この場合、判断結果を「Ｙｅｓ」とする。このしきい値Ｎは、第２図に示したユーザプロファイルデータベース６００における最終のユーザＩＤに対応している。
ステップＳＦ５では、ユーザプロファイル更新部５４０は、上述した（１２）式より、類似度関数Ｓｉｍ（Ｍ、Ｍｉ）を計算する。すなわち、ユーザプロファイル更新部５４０は、特定ユーザの行動モデルＭとその他のユーザの行動モデルＭｉとの類似度を計算する。ここで、類似度関数Ｓｉｍ（Ｍ、Ｍｉ）が小さいほど、特定ユーザの行動モデルＭとその他のユーザの行動モデルＭｉとが類似していることを意味している。
ステップＳＦ６では、ユーザプロファイル更新部５４０は、ステップＳＦ５で計算された類似度関数Ｓｉｍ（Ｍ、Ｍｉ）がしきい値εより小さいか否か、すなわち、類似度が高いか否かを判断する。ここで、ステップＳＦ６の判断結果が「Ｎｏ」である場合、ステップＳＦ３以降では、ユーザプロファイル更新部５４０は、ユーザカウンタｉを１インクリメントし、特定ユーザと、つぎの他のユーザとに関する類似度判定を行う。
一方、ステップＳＦ６の判断結果が「Ｙｅｓ」である場合、すなわち、類似度が高い場合、ステップＳＦ７では、ユーザプロファイル更新部５４０は、特定ユーザの行動モデルＭとの類似度が高い、他のユーザの行動モデルＭｉを前述した（３）式で表される類似ユーザ集合Ｇに組み入れることにより、類似ユーザ集合Ｇを更新する。
以後、ユーザプロファイル更新部５４０は、ステップＳＦ４の判断結果が「Ｎｏ」となるまでステップＳＦ３以降の処理を実行する。そして、ステップＳＦ４の判断結果が「Ｎｏ」になると、ユーザプロファイル更新部５４０は、第５図に示したステップＳＢ２以降の処理を実行する。
以上本発明にかかる一実施の形態について図面を参照して詳述してきたが、具体的な構成例はこの一実施の形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
例えば、前述した一実施の形態においては、推薦装置５００の機能を実現するためのユーザプロファイル管理プログラムおよび推薦プログラムを第１３図に示したコンピュータ読み取り可能な記録媒体８００に記録して、この記録媒体８００に記録されたユーザプロファイル管理プログラムおよび推薦プログラムを同図に示したコンピュータ７００に読み込ませ、実行することにより推薦装置５００の機能を実現するようにしてもよい。
同図に示したコンピュータ７００は、上記ユーザプロファイル管理プログラムおよび推薦プログラムを実行するＣＰＵ７１０と、キーボード、マウス等の入力装置７２０と、各種データを記憶するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）７３０と、演算パラメータ等を記憶するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）７４０と、記録媒体８００からユーザプロファイル管理プログラムおよび推薦プログラムを読み取る読取装置７５０と、ディスプレイ、プリンタ等の出力装置７６０と、装置各部を接続するバス７７０とから構成されている。
ＣＰＵ７１０は、読取装置７５０を経由して記録媒体８００に記録されているユーザプロファイル管理プログラムおよび推薦プログラムを読み込んだ後、ユーザプロファイル管理プログラムおよび推薦プログラムを実行することにより、前述した推薦装置５００の機能を実現する。なお、記録媒体８００には、光ディスク、フロッピーディスク、ハードディスク等の可搬型の記録媒体が含まれることはもとより、ネットワークのようにデータを一時的に記録保持するような伝送媒体も含まれる。
以上説明したように、一実施の形態によれば、第４図〜第７図を参照して説明したように、インターネット２００におけるユーザの行動モデルの類似度に応じて、ユーザをグループ化し、グループ内において、他のユーザのプロファイルを用いて、特定のユーザのユーザプロファイルを推測し、特定ユーザのプロファイルを、推測手段により推測されたユーザプロファイルに更新するようにしたので、ユーザの手を煩わせることなく、ユーザプロファイルを更新することができる。
また、一実施の形態によれば、第５図を参照して説明したように、推測されたユーザプロファイルを構成する各属性情報について、確信度を算出し、この確信度がしきい値σ以下の属性情報に関して、ユーザに選択させるようにしたので、ユーザプロファイルの精度を高めることができる。
また、一実施の形態によれば、行動モデル生成部５２０により、定期的にユーザの行動を行動モデルとしてモデル化するようにしたので、時間の経過とともにユーザプロファイルが陳腐化するという事態を回避することができる。
また、一実施の形態によれば、他のユーザの行動傾向と購入された商品との対応関係を表す事例ベース６１０（第３図参照）から、特定ユーザの行動傾向との類似度が高い行動傾向を検索し、該行動傾向に対応する商品をユーザに推薦するようにしたので、より精度が高い推薦を行うことができる。
また、一実施の形態によれば、推薦部５７０により、推薦された商品の購入履歴および当該ユーザの行動傾向を事例ベース６１０に反映させるようにしたので、次回以降の推薦の精度をより高めることができる。
以上説明したように、本発明によれば、インターネットにおけるユーザの行動モデルの類似度に応じて、ユーザをグループ化し、グループ内において、他のユーザのプロファイルを用いて、特定のユーザのユーザプロファイルを推測し、特定ユーザのプロファイルを、推測手段により推測されたユーザプロファイルに更新するようにしたので、ユーザの手を煩わせることなく、ユーザプロファイルを更新することができるという効果を奏する。
また、本発明によれば、推測手段により推測されたユーザプロファイルを構成する各要素について、確信度を算出し、この確信度がしきい値以下の要素について、ユーザに選択させるようにしたので、ユーザプロファイルの精度を高めることができるという効果を奏する。
また、本発明によれば、定期的にユーザの行動を行動モデルとしてモデル化するようにしたので、時間の経過とともにユーザプロファイルが陳腐化するという事態を回避することができるという効果を奏する。
また、本発明によれば、他のユーザの行動傾向と購入された商品との対応関係を表す事例ベースから、あるユーザの行動傾向との類似度が高い行動傾向を検索し、該行動傾向に対応する商品をユーザに推薦するようにしたので、より精度が高い推薦を行うことができるという効果を奏する。
また、本発明によれば、推薦された商品の購入履歴および当該ユーザの行動傾向を事例ベースに反映させるようにしたので、次回以降の推薦の精度をより高めることができるという効果を奏する。
産業上の利用可能性
以上のように、本発明にかかるユーザプロファイル管理装置および推薦装置は、インターネット上におけるユーザプロファイルの管理および精度の高い商品の推薦に対して有用である。
【図面の簡単な説明】
第１図は、本発明にかかる一実施の形態の構成を示すブロック図であり、第２図は、第１図に示したユーザプロファイルデータベース６００のテーブル構造を示す図であり、第３図は、第１図に示した事例ベース６１０のテーブル構造を示す図であり、第４図は、同一実施の形態における設問生成処理を説明するフローチャートであり、第５図は、第４図に示したユーザプロファイル更新処理を説明するフローチャートであり、第６図は、第５図に示した類似ユーザ集合取得処理を説明するフローチャートであり、第７図は、第４図に示したベクトル生成処理を説明するフローチャートであり、第８図は、同一実施の形態における推薦処理を説明するフローチャートであり、第９図は、第５図に示した類似ユーザ集合取得処理を説明するフローチャートであり、第１０図は、第１図に示したコンテンツＨＴＭＬページ１１０１の一例を示す図であり、第１１図は、第１図に示した属性情報入力ＨＴＭＬページ１３０の一例を示す図であり、第１２図は、同一実施の形態における隠れマルコフモデルを示す図であり、第１３図は、同一実施の形態の変形例の構成を示すブロック図である。
【図１】
2003017137.tif 000003
【図２】
2003017137.tif 000004
【図３】
2003017137.tif 000005
【図４】
2003017137.tif 000006
【図５】
2003017137.tif 000007
【図６】
2003017137.tif 000008
【図７】
2003017137.tif 000009
【図８】
2003017137.tif 000010
【図９】
2003017137.tif 000011
【図１０】
2003017137.tif 000012
【図１１】
2003017137.tif 000013
【図１２】
2003017137.tif 000014
【図１３】
2003017137.tif 000015
【国際調査報告】
2003017137.tif 000016
2003017137.tif 000017
2003017137.tif 000018
2003017137.tif 000019