(57)【要約】      （修正有）【課題】インターネット上におけるユーザのコンテンツ検索を支援する技術であって、関連するコンテンツ（例えば、嗜好が類似するコンテンツ）を効果的に提示できるコンテンツ提示機能を実現するための技術を提供する。【解決手段】コンテンツ提示装置は、コンテンツに関するユーザの行動ログを記憶し（行動ログ記憶手段）、行動ログに基づいてコンテンツ間の相関関係を示すコンテンツグラフを生成し（コンテンツグラフ生成手段）、コンテンツグラフから所定の条件を満たすコンテンツの集合からなるコミュニティを抽出し（コミュニティ抽出手段）、コンテンツグラフ及び抽出されたコミュニティに基づいてコミュニティを１つのノードとして置換したコミュニティグラフを生成する（コミュニティグラフ生成手段）。そして、指定されたコンテンツに基づいて、コミュニティグラフ内のコミュニティに属する任意のコンテンツを提示する（コミュニティ提示手段）。【選択図】図７
2010170173.tif 000002
【特許請求の範囲】
【請求項１】
インターネット上で提供されているコンテンツをクライアント端末に提示するコンテンツ提示装置であって、
前記コンテンツに関するユーザの行動ログを記憶する行動ログ記憶手段と、
前記行動ログに基づいて、同一ユーザの行動ログによって関連付けられたコンテンツを取得することによりコンテンツグラフを生成するコンテンツグラフ生成手段と、
前記コンテンツグラフから、所定の条件を満たすコンテンツの集合からなるコミュニティを抽出するコミュニティ抽出手段と、
前記コンテンツグラフ及び前記抽出されたコミュニティに基づいて、コミュニティを一つのノードとして置換したコミュニティグラフを生成するコミュニティグラフ生成手段と、
指定されたコンテンツに基づいて、前記コミュニティグラフ内のコミュニティに属する任意のコンテンツを提示するコンテンツ提示手段と、
を備えることを特徴とするコンテンツ提示装置。
【請求項２】
前記コンテンツ提示手段は、１つのコンテンツが指定されたときに、前記コミュニティグラフにおいて前記指定されたコンテンツ自身が属するコミュニティの他の任意のコンテンツ又は前記指定されたコンテンツに関連するコミュニティに属する任意のコンテンツを提示することを特徴とする請求項１に記載のコンテンツ提示装置。
【請求項３】
前記コンテンツ提示手段は、２つのコンテンツが指定されたときに、前記コミュニティグラフにおいて前記２つのコンテンツを結ぶ経路を算出し、この算出した経路上にあるコミュニティに属する任意のコンテンツ又は前記経路上にあるコンテンツに関連するコミュニティに属する任意のコンテンツを提示することを特徴とする請求項１に記載のコンテンツ提示装置。
【請求項４】
前記コンテンツ提示手段は、前記経路上に少なくとも１つのコミュニティが含まれるように前記経路を算出することを特徴とする請求項３に記載のコンテンツ提示装置。
【請求項５】
インターネット上で提供されているコンテンツをコンテンツ提示装置によってクライアント端末に提示するコンテンツ提示方法であって、
前記コンテンツに関するユーザの行動ログを記憶するステップと、
前記行動ログに基づいて、同一ユーザの行動ログによって関連付けられたコンテンツを取得することによりコンテンツグラフを生成するステップと、
前記コンテンツグラフから、所定の条件を満たすコンテンツの集合からなるコミュニティを抽出するステップと、
前記コンテンツグラフ及び前記抽出されたコミュニティに基づいて、コミュニティを１つのノードとして置換したコミュニティグラフを生成するステップと、
指定されたコンテンツに基づいて、前記コミュニティグラフ内のコミュニティに属する任意のコンテンツを提示するステップと、
を含むことを特徴とするコンテンツ提示方法。
【請求項６】
インターネット上で提供されているコンテンツをクライアント端末に提示するコンテンツ提示装置のコンピュータに、
前記コンテンツに関するユーザの行動ログを記憶するステップと、
前記行動ログに基づいて、同一ユーザの行動ログによって関連付けられたコンテンツを取得することによりコンテンツグラフを生成するステップと、
前記コンテンツグラフから、所定の条件を満たすコンテンツの集合からなるコミュニティを抽出するステップと、
前記コンテンツグラフ及び前記抽出されたコミュニティに基づいて、コミュニティを１つのノードとして置換したコミュニティグラフを生成するステップと、
指定されたコンテンツに基づいて、前記コミュニティグラフ内のコミュニティに属する任意のコンテンツを提示するステップと、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネット上におけるユーザのコンテンツ検索を支援するコンテンツ提示装置、コンテンツ提示方法及びプログラムに関する。
【背景技術】
【０００２】
近年、インターネットの普及に伴い、所望のコンテンツを紹介しているウェブページを閲覧してそのコンテンツに関する情報を収集したり、コンテンツを購入したりすることが日常的に行われている。ここで、コンテンツには、画像、音楽、文章又はこれらの組み合わせの他、ショッピングモールなどのウェブサイト（以下、オンラインショップと称する）において扱っている商品自体も含まれる。
【０００３】
オンラインショップでは、階層化されているカテゴリ（分野）を辿って目的のコンテンツ（商品）に辿り着くディレクトリ検索や、検索窓にキーワードを入力して目的のコンテンツを直接検索するキーワード検索により所望のコンテンツを検索するのが一般的である。また、オンラインショップでは、コンテンツが紹介されているウェブページにおいて、そのコンテンツに関連する他のコンテンツ（例えば、アーティストが同じＣＤアルバム等）へのリンクを張ることで、ユーザの購買意欲が高まるようにしている。
【０００４】
そのため、オンラインショップが数多くのコンテンツを取り扱っているにも関わらず、ユーザの検索要求に合致しやすい一部の人気コンテンツ又はこの人気コンテンツからリンクを張られた特定のコンテンツだけが閲覧され、購入されるという現象が生じている。つまり、オンラインショップが保有するコンテンツの数が増大しているために、ユーザが自分の嗜好にあったコンテンツを検索することが困難となっている。
【０００５】
そこで、オンラインショップにおいて、予め登録されたユーザの基本属性（興味、嗜好）や行動ログ（購入履歴、閲覧履歴）等に基づいてユーザが興味を持っていると考えられるコンテンツを自動的に推薦する、いわゆるレコメンド機能が提案されている。
【０００６】
例えば、特許文献１には、ユーザごとに購入又は閲覧したコンテンツを記録しておき、あるユーザがコンテンツを閲覧したときに、そのコンテンツを購入又は閲覧したことがあるユーザは、他にどのようなコンテンツを購入又は閲覧しているかを提示することで、このユーザの嗜好にあったコンテンツを推薦する技術が開示されている。また、推薦されたコンテンツを紹介しているウェブページへのリンクが張られており、このリンクをユーザがクリックすることで１つ先のコンテンツに遷移できることが開示されている。
このようなレコメンド機能は、オンラインショップにおける客単価や顧客満足度を向上させる上で有効である。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】米国特許第６，９１２，５０５号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に記載のレコメンド機能では、現在閲覧中のコンテンツに直接的に関連するコンテンツ、すなわち、このコンテンツを購入又は閲覧したユーザが購入又は閲覧した他のコンテンツが推薦されるだけである。このような、レコメンド機能では人気のあるコンテンツが推薦されやすくなるため、意外性もなく冗長なコンテンツの提示となり、提示されるコンテンツに偏りが生じてしまう。また、推薦されたコンテンツに関連するコンテンツも現在閲覧中のコンテンツと嗜好が比較的近いと考えられるが、そのようなコンテンツまでは推薦されない。
ここで、直接的に関連しないコンテンツとは、共通するコンテンツ属性（例えば、ＣＤアルバム等の楽曲コンテンツであれば、アーティストやジャンル等）を有していない場合や、一方のコンテンツを閲覧又は購入したユーザが他方のコンテンツを閲覧又は購入していない場合の２つのコンテンツのことである。
このように、従来のレコメンド機能では、ユーザがコンテンツ検索を行う上で有用な情報が十分に提示されているとはいえない。
【０００９】
本発明は、インターネット上におけるユーザのコンテンツ検索を支援するコンテンツ提示装置、コンテンツ提示方法及びプログラムであって、関連するコンテンツを効果的に提示できるコンテンツ提示機能を実現するための技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、請求項１に記載の発明は、インターネット上で提供されているコンテンツをクライアント端末に提示するコンテンツ提示装置であって、
前記コンテンツに関するユーザの行動ログを記憶する行動ログ記憶手段と、
前記行動ログに基づいて、同一ユーザの行動ログによって関連付けられたコンテンツを取得することによりコンテンツグラフを生成するコンテンツグラフ生成手段と、
前記コンテンツグラフから、所定の条件を満たすコンテンツの集合からなるコミュニティを抽出するコミュニティ抽出手段と、
前記コンテンツグラフ及び前記抽出されたコミュニティに基づいて、コミュニティを一つのノードとして置換したコミュニティグラフを生成するコミュニティグラフ生成手段と、
指定されたコンテンツに基づいて、前記コミュニティグラフ内のコミュニティに属する任意のコンテンツを提示するコンテンツ提示手段と、を備えることを特徴とする。
【００１１】
請求項２に記載の発明は、請求項１に記載のコンテンツ提示装置において、前記コンテンツ提示手段は、１つのコンテンツが指定されたときに、前記コミュニティグラフにおいて前記指定されたコンテンツ自身が属するコミュニティの他の任意のコンテンツ又は前記指定されたコンテンツに関連するコミュニティに属する任意のコンテンツを提示することを特徴とする。
【００１２】
請求項３に記載の発明は、請求項１に記載のコンテンツ提示装置において、前記コンテンツ提示手段は、２つのコンテンツが指定されたときに、前記コミュニティグラフにおいて前記２つのコンテンツを結ぶ経路を算出し、この算出した経路上にあるコミュニティに属する任意のコンテンツ又は前記経路上にあるコンテンツに関連するコミュニティに属する任意のコンテンツを提示することを特徴とする。
【００１３】
請求項４に記載の発明は、請求項３に記載のコンテンツ提示装置において、前記コンテンツ提示手段は、前記経路上に少なくとも１つのコミュニティが含まれるように前記経路を算出することを特徴とする。
【００１４】
請求項５に記載の発明は、インターネット上で提供されているコンテンツをコンテンツ提示装置によってクライアント端末に提示するコンテンツ提示方法であって、
前記コンテンツに関するユーザの行動ログを記憶するステップと、
前記行動ログに基づいて、同一ユーザの行動ログによって関連付けられたコンテンツを取得することによりコンテンツグラフを生成するステップと、
前記コンテンツグラフから、所定の条件を満たすコンテンツの集合からなるコミュニティを抽出するステップと、
前記コンテンツグラフ及び前記抽出されたコミュニティに基づいて、コミュニティを１つのノードとして置換したコミュニティグラフを生成するステップと、
指定されたコンテンツに基づいて、前記コミュニティグラフ内のコミュニティに属する任意のコンテンツを提示するステップと、を含むことを特徴とする。
【００１５】
請求項６に記載の発明は、インターネット上で提供されているコンテンツをクライアント端末に提示するコンテンツ提示装置のコンピュータに、
前記コンテンツに関するユーザの行動ログを記憶するステップと、
前記行動ログに基づいて、同一ユーザの行動ログによって関連付けられたコンテンツを取得することによりコンテンツグラフを生成するステップと、
前記コンテンツグラフから、所定の条件を満たすコンテンツの集合からなるコミュニティを抽出するステップと、
前記コンテンツグラフ及び前記抽出されたコミュニティに基づいて、コミュニティを１つのノードとして置換したコミュニティグラフを生成するステップと、
指定されたコンテンツに基づいて、前記コミュニティグラフ内のコミュニティに属する任意のコンテンツを提示するステップと、を実現させるためのプログラムである。
【発明の効果】
【００１６】
本発明によれば、なんらかの共通点（関連性）を有するコンテンツが同一コミュニティにクラスタリングされ、指定したコンテンツに関連するコミュニティに属する任意のコンテンツが提示される。したがって、冗長なコンテンツの提示を防止し、偏りのない効果的なコンテンツの提示が可能となる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態のネットワーク構成について示す概略図である。
【図２】ウェブサーバのハードウェア構成の概略を示すブロック図である。
【図３】行動ログデータベースのデータ構成の一例を示す説明図である。
【図４】コンテンツデータベースのデータ構成の一例を示す説明図である。
【図５】ウェブサーバにおけるコンテンツグラフ生成処理の一例について示すフローチャートである。
【図６】図５に示すコンテンツグラフ生成処理を視覚的に示す概念図である。
【図７】図５に示すコンテンツグラフ生成処理（コミュニティ抽出処理）を視覚的に示す概念図である。
【図８】ウェブサーバがコンテンツナビゲーション機能を実行するときのウェブサーバ及びクライアント端末における処理手順の一例について示すフローチャートである。
【図９】図７に示すコンテンツグラフにおけるコンテンツＪを提示するときのコンテンツ提示画面の一例について示す説明図である。
【図１０】ウェブサーバがコンテンツナビゲーション機能を実行するときのウェブサーバ及びクライアント端末における処理手順の他の一例について示すフローチャートである。
【図１１】図７に示すコンテンツグラフにおける経路Ａ〜Ｘ上にあるコンテンツを提示するときのコンテンツ提示画面の一例について示す説明図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態について詳細に説明する。
図１は、本発明に係るコンテンツ提示装置を適用したネットワーク構成について示す概略図である。本実施形態では、ウェブサーバ１が複数のコンテンツを保有し、このウェブサーバ１がネットワークＮを介してクライアント端末２にコンテンツを提供する場合について示している。
【００１９】
図１に示すように、ウェブサーバ１には、クライアント端末２が通信ネットワークＮを介して接続され、互いにデータ通信可能となっている。通信ネットワークＮは、インターネットや電気通信事業者等の電話回線網、携帯電話通信網等である。
【００２０】
ウェブサーバ１は、例えば、コンテンツ（商品）を販売するオンラインショップのサーバである。ウェブサーバ１は、一般的なコンテンツの販売に関するサービス（以下、ショッピングサービスと称する）を提供する。
また、ショッピングサービス内で、ユーザが所望のコンテンツを検索するための一般的な検索機能（ディレクトリ検索やキーワード検索）を有している。そして、クライアント端末２によって検索要求（コンテンツの指定）がなされたときに、検索要求に適合するコンテンツとともに、このコンテンツに関連するコミュニティに属する任意のコンテンツを提示（推薦）するコンテンツナビゲーション機能を有している。すなわち、本実施形態におけるウェブサーバ１が本発明に係るコンテンツ提示装置となる。
【００２１】
クライアント端末２は、例えば、パーソナルコンピュータ２ａや、携帯電話機等の携帯端末２ｂである。ユーザはクライアント端末２を操作することで、ネットワークを介してショッピングサービスを利用することができる。
本実施形態では、ウェブサーバ１に予め登録されたユーザ（登録ユーザ）が、ウェブサーバ１によるショッピングサービスを受けられるものとする。登録ユーザの行動ログを監視することによりコンテンツ間の相関関係を構築し、この相関関係を利用したレコメンド機能を実現するためである。
ここで、行動ログとは登録ユーザの行動履歴を示す情報であり、コンテンツを閲覧した履歴やコンテンツを購入した履歴が含まれる。
【００２２】
図２は、ウェブサーバ１のハードウェア構成の概略を示すブロック図である。
図２に示すように、ウェブサーバ１は、制御部１１、記憶部（補助記憶）１２、入出力部１３、通信部１４、行動ログデータベース１５、コンテンツグラフデータベース１７、コンテンツデータベース１８等を備えた一般的なコンピュータである。各ブロックはバスライン１６により電気的に接続されている。なお、行動ログデータベース１５、コンテンツグラフデータベース１７、コンテンツデータベース１８等は通信部を介して接続されていてもよい。
【００２３】
制御部１１は、演算／制御装置としてのＣＰＵ（Central Processing Unit）１１１、主記憶装置としてのＲＡＭ（Random Access Memory）１１２及びＲＯＭ（Read Only Memory）１１３で構成される。
ＲＯＭ１１３には、ＢＩＯＳ（Basic Input Output System）と呼ばれるプログラムや基本的な設定データが記憶されている。ＲＡＭ１１２には、記憶部１２から読み出されたＯＳや各種アプリケーションなどのプログラムが展開される。
ＣＰＵ１１１は、ＲＡＭ１１２に展開されたプログラムに従って各種処理を実行し、各ブロックを制御する。
【００２４】
記憶部１２は、例えばハードディスク等で構成され、ＯＳ、各種アプリケーションプログラム（例えば、サーバ用プログラムやウェブアプリケーションプログラム）、及び各種データ等が記憶されている。
入出力部１３は、ウェブサーバ１の管理者が利用するためのユーザインターフェースを構成する。例えば、液晶モニタ等の表示装置が出力部となり、キーボードやマウス等の操作手段が入力部となる。
通信部１４は、ＴＣＰ／ＩＰ等の通信プロトコルに従って処理を行い、ネットワークＮを介してクライアント端末２とデータの送受信を行う。
【００２５】
行動ログデータベース１５には、ウェブサーバ１により提供されるショッピングサービスを利用可能なユーザに関する情報（ユーザ属性）が登録されている。ユーザ属性には、ユーザＩＤやパスワード等の認証情報の他、ユーザの個人情報（氏名、住所、電話番号、興味（嗜好）など）が含まれる。
また、行動ログデータベース１５には、登録ユーザごとに、複数のコンテンツに関する行動ログが記憶されている（図３参照）。つまり、行動ログデータベース１５により、どの登録ユーザがどのようなコンテンツを閲覧又は購入したかが管理されている。図３では、ユーザ“＃１”はコンテンツａ，ｂ，ｃを閲覧又は購入したことを示し、ユーザ“＃２”はコンテンツａ，ｄを閲覧又は購入したことを示している。
【００２６】
例えば、登録ユーザがショッピングサービスにログインすると、その後の行動（ページ遷移など）が監視され、登録ユーザの行動履歴が一時的にＲＡＭ１１２に記憶される。そして、ＲＡＭ１１２に記憶された行動履歴は、バッチ処理により行動ログとして行動ログデータベース１５に登録される。なお、このような行動ログの保存方法については、既存の技術を適用できる。
【００２７】
図２において、コンテンツグラフデータベース１７には、ウェブサーバ１が保有しているコンテンツ間の相関関係を示す複数のコンテンツグラフが格納されている。ここで、コンテンツグラフとは、コンテンツを示すノード間をエッジで連結し、コンテンツ間の相関関係を抽象化したものである。
このコンテンツグラフは、前述した行動ログ及び後述するコンテンツ属性に基づいて生成される。つまり、行動ログ及びコンテンツ属性に基づいて関連付けられたコンテンツ群で１つのコンテンツグラフが構成される。したがって、ウェブサーバ１が保有している個々のコンテンツは何れかのコンテンツグラフに属することとなる。
【００２８】
また、コンテンツグラフデータベース１７には、生成されたコンテンツグラフからなんらかの共通点（関連性）を有する所定の条件を満たすコミュニティが予め抽出され、コンテンツグラフにおける一群のコンテンツをコミュニティとして一つのノードに置換したコミュニティグラフが格納される。例えば、複数のコンテンツの中で嗜好が類似するコンテンツの集合をコミュニティとすることができる。
コンテンツグラフデータベース１７は、行動ログデータベースの更新に伴い更新される。コミュニティグラフを生成する処理の詳細については後述する。
【００２９】
コンテンツデータベース１８には、ウェブサーバ１が保有している全てのコンテンツに関する情報が格納されている（図４参照）。図４に示すように、コンテンツに関する情報には、例えば、コンテンツに対して予め設定されているコンテンツ属性、このコンテンツを紹介するウェブページのＵＲＬ及びこのコンテンツをウェブページ上で紹介するための画像データ（サムネイルを含む）の他、コンテンツが属しているコミュニティ等が含まれる。例えば、コンテンツがＣＤアルバムである場合は、アーティストやジャンル等がコンテンツ属性となる。
【００３０】
コンテンツ提示装置としてのウェブサーバ１は上述した構成を備えている。ウェブサーバ１のＣＰＵ１１１は、サーバ用ソフトウェア（例えば、ＡＳＰ（Active Server Pages）など）を実行することにより、ログインしたクライアント端末２に対してショッピングサービスを提供する。
そして、登録ユーザがショッピングサービスを利用すると、このときの行動履歴を行動ログデータベース１５に登録するとともに、コンテンツグラフデータベース１７に登録されているコンテンツグラフ及びコミュニティグラフを更新する。
【００３１】
ショッピングサービス内でコンテンツナビゲーション機能が選択され、コンテンツの検索要求がなされると、この検索要求に適合するコンテンツを提示コンテンツとして設定し、クライアント端末２に提示する。このとき、提示コンテンツに関連するコミュニティがあれば、このコミュニティに属する任意のコンテンツも提示できるようになっている。
【００３２】
図５は、ウェブサーバ１におけるコミュニティグラフ生成処理の一例について示すフローチャートである。図５に示す処理は、例えば、バッチ処理により行動ログデータベース１５が更新されたことに伴い実行される。
また、図６，７は、図５に示すコミュニティグラフ生成処理を視覚的に示す概念図である。図６におけるａ，ｂ，ｃ，・・、図７におけるＡ，Ｂ，Ｃ，・・はそれぞれ個々のコンテンツを示す。また、図６において、実線で結ばれているコンテンツ同士は行動ログに基づいて関連付けられたコンテンツであり、点線で結ばれているコンテンツ同士はコンテンツ属性に基づいて関連付けられたコンテンツであることを示す。
【００３３】
図５のステップＳ１０１では、行動ログデータベース１５から登録ユーザの行動ログ（図３参照）を取得する。この行動ログにより、あるコンテンツを閲覧又は購入した登録ユーザは、その他にどのようなコンテンツを閲覧又は購入しているか分かる。例えば、図３に示すユーザ“＃１”についてみると、コンテンツａを閲覧又は購入した登録ユーザは、コンテンツｂ，ｃを閲覧又は購入していることになる。
【００３４】
ステップＳ１０２では、ステップＳ１０１で取得した行動ログに基づいて、２つのコンテンツを関連付けてグラフ化する。この処理により、図６に示すグラフＧ１（Ｇ１１〜Ｇ１７）が生成される。
例えば、取得した行動ログが図３に示すデータ構成を有する場合、コンテンツａを閲覧又は購入した登録ユーザの一人（ユーザ“＃１”）はコンテンツｂ，ｃを閲覧又は購入し、他の一人（ユーザ“＃２”）はコンテンツｄを閲覧又は購入しているので、図６のグラフＧ１１が生成される。また、コンテンツｂを閲覧又は購入した登録ユーザの一人（ユーザ“＃１”）はコンテンツａ，ｃを閲覧又は購入し、他の一人（ユーザ“＃３”）はコンテンツｅ，ｆを閲覧又は購入しているので、図６のグラフＧ１２が生成される。
【００３５】
このように、二つのコンテンツ間（例えばコンテンツａとコンテンツｂ）は、同一の登録ユーザの行動ログに基づき関連付けられ、このような一つ一つの関連を全登録ユーザの分全て組み合わせていくことでコンテンツグラフが生成される。
なお、図６では、重複するコンテンツ間の関係は簡略化して１つのコンテンツについてのみ示している。例えば、グラフＧ１２では、コンテンツｂを閲覧又は購入した登録ユーザはコンテンツａも閲覧又は購入しているはずであるが、この関係についてはグラフＧ１１に示されているので省略している。
【００３６】
ステップＳ１０３では、コンテンツデータベース１８からコンテンツごとに予め設定されているコンテンツ属性を取得する。共通するコンテンツ属性を有しているコンテンツ同士が関連コンテンツとなる。
【００３７】
ステップＳ１０４では、ステップＳ１０３で取得したコンテンツ属性に基づいて、２つのコンテンツを関連付けてグラフ化する。この処理により、図６に示すグラフＧ２（Ｇ２１〜Ｇ２４）が生成される。
例えば、コンテンツデータベース１８が図４に示すデータ構成を有する場合、コンテンツａ１，ａ２，ａ３はアーティストが“ＡＡＡ”であり、コンテンツａと共通するコンテンツ属性を有している。したがって、コンテンツａ１，ａ２，ａ３はコンテンツａの関連コンテンツとなるので、図６のグラフＧ２１が生成される。
【００３８】
ステップＳ１０５では、グラフＧ１，Ｇ２を組み合わせて、全コンテンツの相関をグラフ化する。この処理により、図６に示すコンテンツグラフＧが生成され、コンテンツグラフデータベース１７に登録される。
具体的には、グラフＧ１（Ｇ１１〜Ｇ１７）を組み合わせると、３つのコンテンツグラフＧａ，Ｇｂ，Ｇｃが生成される。これにグラフＧ２（Ｇ２１〜Ｇ２４）を組み合わせると、３つのコンテンツグラフＧａ，Ｇｂ，Ｇｃが連結され、１つのコンテンツグラフＧとなる。図６に示すコンテンツグラフＧでは、関連コンテンツ（例えば、コンテンツａ１，ａ２，ａ３）同士をそれぞれ連結する点線については省略している。
【００３９】
なお、図６には、１つのコンテンツグラフＧが生成される場合について示しているが、実際には複数のコンテンツグラフが生成される。
また、コンテンツグラフを生成する際には、２つのコンテンツを双方閲覧又は購入しているユーザ数、同時に閲覧又は購入したユーザ数などに応じて関連度を決定し、それをノード間のエッジの重みとして定義し、コンテンツグラフを重み付きグラフとする。つまり、２つのコンテンツの双方を閲覧又は購入したユーザ数に応じてこのコンテンツ間のエッジの重みを大きくし、同時閲覧又は購入の場合にはさらにエッジの重みを大きくする。
【００４０】
ステップＳ１０６では、生成されたコンテンツグラフＧにおいて、所定のアルゴリズムに従って、例えば嗜好が類似するコンテンツの集合からなるコミュニティを抽出する。コンテンツグラフにおいて、多数のコンテンツと関連度が高いコンテンツ、すなわち、多数のコンテンツと連結し、エッジに付与された重みも大きいコンテンツは、ハブと呼ばれる。つまり、誰でも知っているような人気コンテンツがハブとなる。
例えば、コンテンツグラフにおいてハブを検出し、このハブを基点として関連付けられた複数のコンテンツを所定の条件に基づいてグループ化することでコミュニティが抽出される。
ここで、所定の条件とは、例えばノード間の重みなどが考えられる。すなわち、購入ユーザが多いコンテンツ間のエッジは重みの値が高いとし、購入ユーザが少ないコンテンツ間のエッジは重みの値が低いとすると、所定の条件として、あるハブを基点としたコンテンツ（分かりやすく言うと「あるハブの先にあるコンテンツ」）であって、所定のエッジの重みで繋がっている一群のコンテンツをコミュニティとみなす。
コミュニティを抽出するためのアルゴリズムとしては、例えば、最大フロー最小カット定理（Minimum cut maximum flow）や、Edge between community、Spin glass community、Walk trap communityを利用した手法などが知られている。
【００４１】
ステップＳ１０７では、コンテンツグラフにおける一群のコンテンツをコミュニティで置換した、すなわち抽出されたコミュニティを１つのノードとしたコミュニティグラフを生成する。
例えば、図７（ａ）に示すコンテンツグラフにおいて、コンテンツＥ〜ＩがコミュニティＣＭ１、コンテンツＫ〜ＯがコミュニティＣＭ２、コンテンツＱ〜ＴがコミュニティＣＭ３として抽出されると、図７（ｂ）に示すコミュニティグラフが生成されることとなる。
このコミュニティグラフは、コンテンツグラフとともにコンテンツグラフデータベース１７に登録される。
一般に、抽出されたコミュニティ内ではエッジの本数が多く、重みも大きくなる。つまり、同じコミュニティに属するコンテンツ同士は関連度が高いため、嗜好が類似しているといえる。一方、２つのコミュニティ間（コミュニティ−コンテンツ間を含む）ではエッジの本数は少なく、重みは小さくなる。
【００４２】
図５に示すコミュニティグラフ生成処理では、登録ユーザの行動ログとコンテンツ属性に基づいてコンテンツグラフＧを生成するようにしているが、行動ログのみに基づいてコンテンツグラフを生成するようにしてもよい。
すなわち、コンテンツ属性によるコンテンツ間の相関関係（グラフＧ２）は、行動ログのみを組み合わせて生成されたコンテンツグラフＧａ，Ｇｂ，Ｇｃ間の関係を補完するために利用される。つまり、充分な行動ログを取得できない場合は、コンテンツグラフＧａ，Ｇｂ，Ｇｃという独立した３つのコンテンツグラフが生成されるが、コンテンツ属性によりこれらを関連づけることができるようにしている。
これにより、行動ログだけでは関連づけられないコンテンツがある場合に対応することができるので、推薦可能なコンテンツ数が増大することとなり、コンテンツ提示機能の利便性が向上する。
【００４３】
このように、行動ログ及びコンテンツ属性に基づいて関連付けられたコンテンツ群で１つのコンテンツグラフが構成される。そして、このコンテンツグラフからコミュニティが抽出され、コミュニティグラフが生成される。
したがって、コミュニティには、直接的に関連するコンテンツ（例えば、図７のコンテンツＤに対するコンテンツＥ，Ｆ，Ｇ）だけでなく、間接的に関連するコンテンツ（例えば、図７のコンテンツＤに対するコンテンツＨ，Ｉ）も属することとなる。
本実施形態では、クライアント端末２による検索要求に応答してコンテンツを提示する場合に、このコミュニティグラフを利用することで、提示コンテンツに関連するコミュニティに属する任意のコンテンツを容易に提示できるようにしている。
【００４４】
図８は、ウェブサーバ１がコンテンツナビゲーション機能を実行するときのウェブサーバ１及びクライアント端末２における処理手順の一例について示すフローチャートである。この処理は、例えば、ウェブサーバ１が提供するショッピングサービス内で、コンテンツナビゲーション機能が選択されたときに実行される。
ここでは、クライアント端末２により１つのコンテンツが指定されたときの検索要求に応答してコンテンツを提示する場合について説明する。
【００４５】
図８のステップＳ２０１では、ウェブサーバ１からクライアント端末２に対して、コンテンツナビゲーション画面のＨＴＭＬファイルが送信される。このＨＴＭＬファイルには、ユーザ操作によりコンテンツが指定されたときに、これをウェブサーバ１に送信するための制御プログラム（例えば、ＪＡＶＡ（登録商標）プログラム）が埋め込まれている。
【００４６】
ステップＳ２０２では、クライアント端末２のウェブブラウザによりＨＴＭＬファイルが解析され、表示部にコンテンツナビゲーション画面が表示される。ユーザは、このコンテンツナビゲーション画面内に配置された検索窓にコンテンツのタイトル等を示すキーワードを入力し、検索を指示することで、所望するコンテンツ及びこれに類似するコンテンツの情報（タイトル、抜粋された本文、ＵＲＬ等を含む）を入手することができる。
【００４７】
ステップＳ２０３では、コンテンツナビゲーション画面におけるユーザ操作に基づいて、指定されたコンテンツによる検索要求がウェブサーバ１に対して送信される。
【００４８】
ステップＳ２０４では、ウェブサーバ１において、指定されたコンテンツが取得され、このコンテンツが属しているコミュニティグラフが選択される。図７（ｂ）に示すコミュニティグラフが構築されている場合に、ステップＳ２０３においてコンテンツＪが指定されると、このコンテンツＪが属する図７（ｂ）に示すコミュニティグラフが選択されることとなる。
【００４９】
ステップＳ２０５では、選択されたコミュニティグラフにおいて、指定されたコンテンツに関連するコンテンツ及びコミュニティが抽出される。
図７（ｂ）に示すコミュニティグラフが構築されている場合に、コンテンツＪが指定されると、図７（ｂ）に示すコミュニティグラフから、例えば一つ先に繋がっているコンテンツ及びコミュニティを関連するものとした場合、コンテンツＤ，Ｐが関連コンテンツとして抽出され、コミュニティＣＭ１，ＣＭ２が関連コミュニティとして抽出される。
【００５０】
ステップＳ２０６では、抽出されたコンテンツ及びコミュニティに属する任意のコンテンツに関する情報がコンテンツデータベース１８から取得される。例えば、抽出されたコンテンツのコンテンツ属性、サムネイル画像、ＵＲＬなどが取得される。
【００５１】
ステップＳ２０７では、ステップＳ２０６で取得したコンテンツに関する情報に基づいてコンテンツ提示画面が生成される。このコンテンツ提示画面には、指定されたコンテンツとともに、これに関連するコンテンツ及びコミュニティに属する任意のコンテンツが提示される。
ここで、コミュニティに属する任意のコンテンツはいくつであっても構わない。また、どのコンテンツを選択するかも、例えばコミュニティの中心となる（一番購入されている）コンテンツ、またはコミュニティの中で一番購入数の少ない（レアな）コンテンツ、のように所定の取り決めに従えばよい。
【００５２】
ステップＳ２０８では、ウェブサーバ１からクライアント端末２に対してコンテンツ提示画面のＨＴＭＬファイルが送信される。このＨＴＭＬファイルには、コンテンツ提示画面におけるユーザ操作をウェブサーバ１に送信するための制御プログラムが埋め込まれている。
【００５３】
ステップＳ２０９では、クライアント端末２のウェブブラウザによりＨＴＭＬファイルが解析され、表示部にコンテンツ提示画面が表示される（図９参照）。
図９に示すように、例えば、指定されたコンテンツＪの詳細情報Ｉ１とともに、コンテンツＪに関連するコンテンツＤ，Ｐの情報（例えば、コンテンツＤ，Ｐのサムネイル画像）Ｉ２及びコンテンツＪに関連するコミュニティＣＭ１に属する任意のコンテンツ，ＣＭ２に属する任意のコンテンツの情報（例えば、コミュニティＣＭ１，ＣＭ２の中心となるコンテンツのサムネイル画像）Ｉ３が表示される。また、図示を省略するが、コミュニティＣＭ１，ＣＭ２の情報をクリックすると、それぞれのコミュニティＣＭ１，ＣＭ２を構成するコンテンツの情報が表示されるようになっている。
【００５４】
図７におけるコンテンツＪが検索キーワードに適合した場合、従来のレコメンド機能では、コンテンツＪ及びこれに直接的に関連するコンテンツＤ，Ｇ，Ｋ，Ｌ，Ｍ，Ｐの全部又は一部が提示されていた。これに対して、本発明によれば、コンテンツＪに関連するコミュニティＣＭ１又はＣＭ２に属するコンテンツを提示できるので、コンテンツＪに直接エッジで繋がっていないコンテンツＨやＩなども提示することができる。
【００５５】
なお、上記実施形態では、コミュニティグラフにおいて指定されたコンテンツに関連するコミュニティに属する任意のコンテンツを提示するようにしているが、指定されたコンテンツ自身がコミュニティに属している場合はそのコミュニティに属する別のコンテンツや、指定されたコンテンツ自身が属するコミュニティから最短の距離で繋がっているコミュニティに属する任意のコンテンツを提示するようにしてもよい。
【００５６】
このように、本実施形態では、クライアント端末２によって１つのコンテンツが指定されたときに、コミュニティグラフにおいて指定されたコンテンツ自身が属するコミュニティの他の任意のコンテンツや指定されたコンテンツに関連するコミュニティに属する任意のコンテンツを提示する。
したがって、指定したコンテンツ及びこれに直接関連するコンテンツだけでなく、直接エッジで繋がっていないが関連するコミュニティに属する任意のコンテンツも提示されるので、ユーザは、コミュニティとしては距離が近く関連しているといえるが、その中でも例えば人気の少ない（購入／閲覧頻度の少ないレアな）コンテンツも知得することができる。すなわち、本実施形態のコンテンツ提示装置によれば、冗長なコンテンツの提示が防止され、偏りのない効果的なコンテンツの提示が実現される。
【００５７】
図１０は、ウェブサーバ１がコンテンツナビゲーション機能を実行するときのウェブサーバ１及びクライアント端末２における処理手順の他の一例について示すフローチャートである。この処理は、例えば、ウェブサーバ１が提供するショッピングサービス内で、コンテンツナビゲーション機能が選択されたときに実行される。
ここでは、クライアント端末２により２つのコンテンツが指定されたときの検索要求に応答してコンテンツを提示する場合について説明する。
【００５８】
図１０のステップＳ３０１では、ウェブサーバ１からクライアント端末２に対して、コンテンツナビゲーション画面のＨＴＭＬファイルが送信される。このＨＴＭＬファイルには、ユーザ操作により２つのコンテンツが指定されたときに、これをウェブサーバ１に送信するための制御プログラム（例えば、ＪＡＶＡ（登録商標）プログラム）が埋め込まれている。
【００５９】
ステップＳ３０２では、クライアント端末２のウェブブラウザによりＨＴＭＬファイルが解析され、表示部にコンテンツナビゲーション画面が表示される。ユーザは、このコンテンツナビゲーション画面内に配置された検索窓にコンテンツのタイトルを示すキーワードを入力し、検索を指示することで、２つのコンテンツに類似するコンテンツの情報（タイトル、抜粋された本文、ＵＲＬ等を含む）を入手することができる。
【００６０】
なお、コンテンツを指定する方法としては、２つのコンテンツをそれぞれ指定することができれば特に限定しないが、例えばキーワードによって直接指定する方法の他、予め提示された複数のコンテンツ（例えば、キーワード検索による検索結果）の中から選択させるようにしてもよい。
【００６１】
また、２つのコンテンツのうちの一方を、サービス提供者（ウェブサーバ）側で予め指定しておくようにしてもよい。例えば、人気ランキング１位のコンテンツや広告主のコンテンツを指定コンテンツの一つとして設定しておいてもよい。
【００６２】
指定された２つのコンテンツの他に、複数の経由点となるコンテンツを指定できるようにしてもよい。この場合、複数の経由点は、ユーザまたはサービス提供者側で指定可能であり、後述するステップＳ３０５の経路算出においては、２つのコンテンツの間に経由点となるコンテンツを通るようにして経路を算出することとなる。
ユーザが経由点を指定する場合は、より多様性のあるコンテンツの変遷を確認することが可能となり、サービス提供者側が経由点を指定する場合は、その経由点を広告主などのコンテンツとすることで、ユーザに提示したいコンテンツも含めて提示することが可能となる。
【００６３】
ステップＳ３０３では、コンテンツナビゲーション画面において、ユーザ操作により２つのコンテンツが指定され検索要求が指示されると、この指定されたコンテンツによる検索要求がウェブサーバ１に対して送信される。
【００６４】
ステップＳ３０４では、ウェブサーバ１において、指定された２つのコンテンツが取得され、これらのコンテンツが属しているコンテンツグラフが選択される。図７に示すコミュニティグラフが構築されている場合に、ステップＳ３０３においてコンテンツＡとコンテンツＸが指定されると、これらのコンテンツＡ，Ｘが属する図７に示すコミュニティグラフが選択されることとなる。
このとき、２つのコンテンツが別々のコミュニティグラフに属している場合は、これらのコンテンツは間接的にも関連することのない全く嗜好が異なるコンテンツとなるので、本発明に係るレコメンド機能は実行されない。
【００６５】
ステップＳ３０５では、選択されたコミュニティグラフにおいて、指定された２つのコンテンツを結ぶ経路が算出される。例えば、ダイクストラ法などの既存のグラフの最短経路探索アルゴリズムにより、コンテンツグラフにおける２点間を結ぶ最短経路を算出することができる。図７に示すコミュニティグラフが構築されている場合に、コンテンツＡ，Ｘが指定されると、例えば、Ａ→Ｂ→Ｄ→Ｊ→Ｐ→Ｗ→Ｘが経路として算出される。
【００６６】
なお、重み付きのコミュニティグラフの場合、経路を算出する上で、エッジの重みの値が高いものを優先的にたどる経路(例えば、同時購入頻度が高いもの)や、重みの値が低いものを優先的にたどる経路（例えば、同時購入頻度が低いもの。この場合は、珍しいものを発見する可能性が高くなる）を算出するようにしてもよい。
【００６７】
また、上述したようなユーザあるいはサービス提供者が決めた経由点（コンテンツ）を通過する経路を算出する場合は、スタートから経由点１まで、経由点１から経由点２まで、経由点Ｎからゴールまで、というように、順次２点間の最短経路を、最短経路探索アルゴリズムにより求め、それらをつなげることで経由点を通過する経路を生成できる。
【００６８】
ステップＳ３０６では、算出された経路上のコンテンツ（例えば、図７のコンテンツＡ，Ｂ，Ｄ，Ｊ，Ｐ，Ｗ，Ｘ）に関する情報がコンテンツデータベース１８から取得される。例えば、経路上のコンテンツのコンテンツ属性、サムネイル画像、ＵＲＬなどが取得される。
【００６９】
ステップＳ３０７では、ステップＳ３０６で取得したコンテンツに関する情報に基づいてコンテンツ提示画面が生成される。このコンテンツ提示画面には、経路上のコンテンツが、指定された２つのコンテンツの関連性を把握できる態様で配置されている。
図７に示すコンテンツグラフが構築されている場合に、コンテンツＡ，Ｘが指定されると、コンテンツＡ，Ｂ，Ｄ，Ｊ，Ｐ，Ｗ，Ｘの遷移順が把握できるように、コンテンツ提示画面が生成されることとなる。例えば、経路上のコンテンツを遷移順に配置したスライダが利用される。
そして、経路上のコンテンツに関連するコミュニティがある場合には（例えば、図７のコンテンツＤ，Ｊ，Ｐ）、このコンテンツを提示するときに関連するコミュニティに属する任意のコンテンツが提示されることとなる。
【００７０】
ステップＳ３０８では、ウェブサーバ１からクライアント端末２に対してコンテンツ提示画面のＨＴＭＬファイルが送信される。このＨＴＭＬファイルには、コンテンツ提示画面におけるユーザ操作をウェブサーバ１に送信するための制御プログラムが埋め込まれている。
【００７１】
ステップＳ３０９では、クライアント端末２のウェブブラウザによりＨＴＭＬファイルが解析され、表示部にコンテンツ提示画面が表示される。ユーザは、このコンテンツ提示画面により、自分の嗜好に合うコンテンツを容易に知得することができる。また、嗜好から外れているわけではないが、今まで気付かなかった意外性のあるコンテンツを発見することもできる。
【００７２】
図１１は、図７に示すコンテンツグラフにおける経路Ａ〜Ｘ上にあるコンテンツを提示するコンテンツ提示画面の一例について示す説明図である。
図１１に示すコンテンツ提示画面は、経路上のコンテンツＡ〜Ｘのコンテンツ情報としてのサムネイル画像を表示する領域Ｒ１１と、コンテンツ情報としてコンテンツ名を表示したスライダＳＬを表示する領域Ｒ１２と、選択されたコンテンツの詳細情報を表示する領域Ｒ１３と、で構成されている。
表示領域Ｒ１３には、詳細情報が表示されるコンテンツ（提示コンテンツ）に関連するコミュニティに属する任意のコンテンツを表示するためのコミュニティ表示領域Ｒ１３１が設けられている。
【００７３】
表示領域Ｒ１２には、経路上のコンテンツを遷移順に配置したスライダＳＬが表示されている。このスライダＳＬ上のスライダボックス（つまみ）ＳＬＢを移動させることで、表示領域Ｒ１１及び表示領域Ｒ１３に表示させるコンテンツを変更することができる。
すなわち、表示領域Ｒ１１には、経路上のコンテンツＡ〜Ｘのうち、スライダボックスＳＬＢで指定されたコンテンツを中心とする５つのコンテンツのサムネイル画像ＳＮ１〜ＳＮ５が縦方向に表示される。なお、表示領域Ｒ１１では、スライダボックスＳＬＢのスライド操作に連動してサムネイル画像が上下にスライドするような表示制御が行われる。
また、表示領域Ｒ１３には、スライダボックスＳＬＢで指定されたコンテンツの詳細情報が表示される。
【００７４】
図１１（ａ）には、スライダボックスＳＬＢによりコンテンツＡが指定され、提示コンテンツとなっている場合について示している。コンテンツＡはユーザによって指定されたコンテンツの一つ（スタートコンテンツ）であり、経路上の端点に位置するため、表示領域Ｒ１１には３つのコンテンツＤ，Ｂ，Ａのサムネイル画像だけが表示され、表示領域Ｒ１３にはコンテンツＡの詳細情報が表示されている。
【００７５】
図１１（ｂ）には、図１１（ａ）に示す状態からスライダボックスＳＬＢがスライドされてコンテンツＪが指定され、提示コンテンツとなっている場合について示している。このとき、表示領域Ｒ１１にはコンテンツＪを中心とする５つのコンテンツＷ，Ｐ，Ｊ，Ｄ，Ｂのサムネイル画像が表示され、表示領域Ｒ１３にはコンテンツＪの詳細情報が表示されることとなる。
さらに、表示領域Ｒ１３に表示されるコンテンツＪは、関連コミュニティとしてコミュニティＣＭ１，ＣＭ２を有しているので、これらのコミュニティに属する任意のコンテンツの情報がコミュニティ表示領域Ｒ１３１に表示される。図１１（ｂ）では、関連コミュニティの１つであるコミュニティＣＭ２に属するコンテンツＫ〜Ｏのサムネイル画像がコミュニティ表示領域Ｒ１３１に表示されている。
このとき、提示されるコンテンツＪと関連度が高いコンテンツを優先して提示するようにすれば、限られた表示領域を有効に利用することができる。なお、コミュニティ表示領域Ｒ１３１に提示するコンテンツ数は特に限定されず、スクロール表示によりすべてのコンテンツを提示可能としてもよい。
【００７６】
図１１では表示領域Ｒ１２にスライダを採用した例について示しているが、コンテンツ情報（コンテンツ名やサムネイル画像などコンテンツを特定できる事項）を遷移順に配置したものであれば、ボタンなどを採用してもよい。
【００７７】
このように、本実施形態では、クライアント端末２によって２つのコンテンツが指定されたときに、コミュニティグラフにおいて２つのコンテンツを結ぶ経路を算出し、この算出した経路上にあるコミュニティに属する任意のコンテンツ又は経路上にあるコンテンツに関連するコミュニティに属する任意のコンテンツを提示する。
したがって、指定した２つのコンテンツに基づいて算出された経路上のコンテンツ及びこれに直接関連するコンテンツを知得して、直接エッジでつながっていないが関連するコミュニティに属する任意のコンテンツも提示されるので、ユーザは、人気の少ない（購入／閲覧頻度の少ないレアな）コンテンツも知得することができる。すなわち、本実施形態のコンテンツ提示装置によれば、２つのコンテンツ間の変遷をみるときに、その間に介在するコンテンツがハブのようなものばかりで面白みがないコンテンツの提示となることを回避し、コミュニティに属する任意のコンテンツも含めて提示することで冗長なコンテンツの提示が防止され、偏りのない効果的なコンテンツの提示が実現される。
【００７８】
また、指定された２つのコンテンツの関連性を把握できる態様で経路上にあるコンテンツを配置したコンテンツ提示画面が提示されるので、直接的に関連しない２つのコンテンツ（例えば、図７のコンテンツＡ，Ｘ）を、他のコンテンツ（例えば、図７のコンテンツＢ，Ｄ，Ｊ，Ｐ，Ｗ）を介在させて間接的に結びつけ、その経路上にあるコンテンツをクライアント端末２に提示するので、ユーザは２つのコンテンツ間の関連性、すなわち２つのコンテンツ間の移り変わりの変化を容易に把握できる。
したがって、ユーザは、２つのコンテンツ間の関連性を把握した上で、所望のコンテンツを容易に発見できるので、ユーザにとって効果的なコンテンツ提示機能となる。
【００７９】
上述した説明では、図７に示すコミュニティグラフの中のコンテンツＡ，Ｘがユーザにより指定されたときに、単純にコンテンツ間の最短距離に基づいて、Ａ→Ｂ→Ｄ→Ｊ→Ｐ→Ｗ→Ｘを経路として算出した場合について示している。
図１０のステップＳ３０５において経路を算出するとき、コミュニティグラフ上のコミュニティＣＭ１，ＣＭ２，ＣＭ３を１つのノードとして考えると、例えば、Ａ→Ｂ→Ｄ→「ＣＭ１」→「ＣＭ３」→Ｘを経路として算出することもできる。この場合、２つのコンテンツＡ，Ｘを結ぶ経路上のコンテンツを提示するにあたり、それぞれのコミュニティに属する任意のコンテンツを提示すればよい。例えば、コミュニティＣＭ１に属する任意のコンテンツとしてコンテンツＩが提示され、コミュニティＣＭ３に属する任意のコンテンツとしてコンテンツＲが提示される。
図１０のステップＳ３０５において、経路上に少なくとも１つのコミュニティが含まれるように経路を算出するようにすれば、ユーザにより指定されたコンテンツに関連するコミュニティに属する任意のコンテンツが確実に提示されることとなる。
【００８０】
上述したように、コンテンツ提示装置としてのウェブサーバ１は、複数のコンテンツに関する登録ユーザの行動ログを記憶する行動ログ記憶手段（行動ログデータベース１５）を備えている。
また、行動ログに基づいて複数のコンテンツ間の相関関係を示すコンテンツグラフを生成するコンテンツグラフ生成手段（図５のステップＳ１０１〜Ｓ１０５）と、生成されたコンテンツグラフから、所定の条件を満たす（例えば、嗜好が類似する）コンテンツの集合からなるコミュニティを抽出するコミュニティ抽出手段（図５のステップＳ１０６）と、コンテンツグラフ及び抽出されたコミュニティに基づいてコミュニティグラフを生成するコミュニティグラフ生成手段（図５のステップＳ１０７）と、クライアント端末２によって指定されたコンテンツに基づいて、コミュニティグラフ内のコミュニティに属する任意のコンテンツを提示するコンテンツ提示手段（図８のステップＳ２０４〜Ｓ２０８、図１０のステップＳ３０４〜ステップＳ３０８）と、を備えている。
【００８１】
これにより、共通するトピックを有するコンテンツが同一コミュニティにクラスタリングされ、現在閲覧中のコンテンツ（提示コンテンツ）とともに、この提示コンテンツに関連するコミュニティに属する任意のコンテンツが提示される。つまり、ハブとなるコンテンツだけでなく、ハブの先に繋がれたコミュニティに属する任意のコンテンツまで提示される。したがって、類似するコンテンツを効果的に提示する等、安易なハブの提示にとどまらない、多様なコンテンツ提示機能（コンテンツナビゲーション機能）が実現される。
ある程度嗜好が似ているが直接的に関連しないために、従来のレコメンド機能では推薦されなかったコンテンツ（例えば、図７におけるコンテンツＤに対するコンテンツＨ，Ｉなど）であっても、ユーザは効率よく発見することが可能となる。
【００８２】
以上、本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明は上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で変更可能である。
例えば、本発明は、オンラインショップのウェブサーバだけでなく、保有しているコンテンツをクライアント端末に提供する場合に適用できる。
また、上記実施形態では、例としてコンテンツをＣＤやＤＶＤとして説明したが、コンテンツはこれらに限られるものではなく、小説や本、家具や食品などあらゆるものであってよい。また、２つのコンテンツとして、２枚のＣＤ、２枚のＤＶＤのように同一種類のコンテンツだけではなく、ＣＤと本、ＤＶＤと電気製品、というように、異なる種類のコンテンツに対して適用してもよい。
【００８３】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００８４】
１  ウェブサーバ（コンテンツ提示装置）
２  クライアント端末
Ｎ  通信ネットワーク
【図１】
2010170173.tif 000003
【図２】
2010170173.tif 000004
【図３】
2010170173.tif 000005
【図４】
2010170173.tif 000006
【図５】
2010170173.tif 000007
【図６】
2010170173.tif 000008
【図７】
2010170173.tif 000009
【図８】
2010170173.tif 000010
【図９】
2010170173.tif 000011
【図１０】
2010170173.tif 000012
【図１１】
2010170173.tif 000013