(57)【特許請求の範囲】
【請求項１】
コンテンツ群のなかから所定の条件を満たすコンテンツを選択する情報処理装置において、
前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた階層のそれぞれにおいて複数の第１のクラスタのいずれかに分類するコンテンツ分類手段と、
各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記第１のクラスタとの対応関係を示すデータベースを保持する保持手段と、
前記階層毎に前記所定の条件に対応する前記第１のクラスタを指定し、指定した前記第１のクラスタに対応するコンテンツを特定する特定手段と、
前記特定手段によって特定された前記コンテンツを提示する提示手段と
を含むことを特徴とする情報処理装置。
【請求項２】
前記コンテンツ分類手段によって前記コンテンツが分類される各第１のクラスタに、ユーザの嗜好の程度を示す嗜好値を対応付けて記憶する記憶手段をさらに含み、
前記特定手段は、前記記憶手段によって記憶されている嗜好値に基づいて前記第１のクラスタを指定し、指定した前記第１のクラスタに対応するコンテンツを特定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記特定手段は、指定した前記第１のクラスタに対応するコンテンツの中から、前記嗜好値に応じた階層毎の重みにより重み付けした、ユーザのコンテンツの嗜好の度合いを示す評価値で、さらにコンテンツを特定する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記コンテンツ分類手段によって前記コンテンツが分類される各第１のクラスタに対してキーワードを設定する設定手段と、
前記設定手段によって設定されたキーワードを用い、コンテンツの提示理由を表す理由文を生成する生成手段とをさらに含み、
前記提示手段は、前記理由文も提示する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記コンテンツは楽曲であり、
前記メタデータには、前記楽曲のテンポ、ビート、またはリズムのうちの少なくとも１つが含まれる
ことを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記メタデータには、対応するコンテンツに対するレビューテキストが含まれる
ことを特徴とする請求項１に記載の情報処理装置。
【請求項７】
コンテンツのメタデータを複数の第２のクラスタのいずれかに分類し、第２のクラスタに前記階層を割り当てるメタデータ分類手段をさらに含み、
前記コンテンツ分類手段は、各コンテンツを、割り当てられた前記階層のそれぞれにおいて複数の第１のクラスタのいずれかに分類する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項８】
前記特定手段は、類似元となるコンテンツが分類される前記第１のクラスタに対応するコンテンツの中から、類似元となるコンテンツとの類似の度合いを示す類似度で、さらにコンテンツを特定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項９】
前記特定手段は、類似元となるコンテンツの前記第１のクラスタへの帰属の重みに応じた階層毎の重みにより重み付けした前記類似度でコンテンツを特定する
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
コンテンツ群のなかから所定の条件を満たすコンテンツを選択する情報処理装置の情報処理方法において、
前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた階層のそれぞれにおいて複数のクラスタのいずれかに分類する分類ステップと、
各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースを保持する保持ステップと、
前記階層毎に前記所定の条件に対応する前記クラスタを指定し、指定した前記クラスタに対応するコンテンツを特定する特定ステップと、
特定された前記コンテンツを提示する提示ステップと
を含むことを特徴とする情報処理方法。
【請求項１１】
コンテンツ群のなかから所定の条件を満たすコンテンツを選択するためのプログラムであって、
前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた階層のそれぞれにおいて複数のクラスタのいずれかに分類する分類ステップと、
各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースを保持する保持ステップと、
前記階層毎に前記所定の条件に対応する前記クラスタを指定し、指定した前記クラスタに対応するコンテンツを特定する特定ステップと、
特定された前記コンテンツを提示する提示ステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、およびプログラムに関し、特に、コンテンツをクラスタに分類し、コンテンツが分類されたクラスタを用いてコンテンツの特徴を管理し、コンテンツの検索や推薦に利用するようにした情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
従来、ユーザの嗜好に基づいてテレビジョン番組、楽曲などのコンテンツを検索し、ユーザに推薦する（いわゆる、コンテンツパーソナライゼーション）ための発明が提案されている（例えば、特許文献１参照）。
【０００３】
コンテンツパーソナライゼーションには、コンテントベーストフィルタリング(CBF)と称される手法が広く使われている。CBF手法では、コンテンツに対して配信側や販売側によって予め付与されているメタデータが直接的に嗜好の抽出やコンテンツの推薦に利用されていた。例えばコンテンツが楽曲である場合、各楽曲にはメタデータとしてタイトル、アーティスト名、ジャンル、レビューテキストなどが予め付与されている。予め付与されている情報の他、楽曲のテンポ、リズムなどを検出してメタデータを追加する場合もある。
【０００４】
ユーザの嗜好情報は、楽曲のメタデータを特徴ベクトルとみなし、楽曲に対するユーザの操作（再生、録音、スキップ、消去など）に応じて楽曲の特徴ベクトルを足し合わせることにより生成していた。例えば、再生した楽曲の特徴ベクトルは１倍、録音した楽曲の特徴ベクトルは２倍、スキップした楽曲の特徴ベクトルは−１倍、消去した楽曲の特徴ベクトルは−２倍にして足し合わされていた。
【０００５】
ユーザの嗜好に合致した楽曲を推薦する場合、ユーザの嗜好を示す特徴ベクトルと、候補となる各楽曲の特徴ベクトルとの距離（余弦相関など）を算出し、算出された距離の短い楽曲がユーザの嗜好に合致したものとして推薦されるようになされていた。
【０００６】
【特許文献１】特開２００４−１９４１０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述したようにユーザの嗜好情報を楽曲の嗜好ベクトルの足し合わせによって生成した場合、嗜好の特徴が埋もれてしまう、いわゆる、嗜好の足し合わせによるなまりの問題が生じ、ユーザの嗜好に合致しないものが推薦されてしまうことがあった。
【０００８】
例えば、ユーザがアップテンポでリズミカルなロックの楽曲を好み、かつ、スローテンポでスロービートのジャズの楽曲も好むような場合、この２つの好みを足し合わせると、アップテンポとスローテンポ、リズミカルとスロービート、ロックとジャズがいずれも好きとなり、ユーザの嗜好に合致しないアップテンポなジャズの楽曲が推薦される可能性があった。
【０００９】
また、楽曲のメタデータのうち、数値によって表現されるものは名義尺度化して特徴ベクトルの要素とされることが一般的であるが、この場合、名義尺度化する際の閾値を挟む二つの値がそれぞれ異なる値に変換されてしまい、変換前の二つの値が数値的に近いという関係が消失してしまうという問題もある。
【００１０】
さらに、ユーザの嗜好を示す特徴ベクトルと候補となる各楽曲の特徴ベクトルとの距離を計算するに際し、その計算量の削減が望まれている。
【００１１】
本発明はこのような状況に鑑みてなされたものであり、ユーザの嗜好情報に合致したコンテンツあるいは指定されるコンテンツに類似したコンテンツを、より少ない演算量で検索してユーザに提示できるようにするものである。
【課題を解決するための手段】
【００１２】
本発明の一側面の情報処理装置は、コンテンツ群のなかから所定の条件を満たすコンテンツを選択する情報処理装置であって、前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた階層のそれぞれにおいて複数の第１のクラスタのいずれかに分類するコンテンツ分類手段と、各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記第１のクラスタとの対応関係を示すデータベースを保持する保持手段と、前記階層毎に前記所定の条件に対応する前記第１のクラスタを指定し、指定した前記第１のクラスタに対応するコンテンツを特定する特定手段と、前記特定手段によって特定された前記コンテンツを提示する提示手段とを含むことを特徴とする。
【００１３】
前記コンテンツ分類手段によって前記コンテンツが分類される各第１のクラスタに、ユーザの嗜好の程度を示す嗜好値を対応付けて記憶する記憶手段をさらに設け、前記特定手段には、前記記憶手段によって記憶されている嗜好値に基づいて前記第１のクラスタを指定し、指定した前記第１のクラスタに対応するコンテンツを特定させることができる。
【００１４】
前記特定手段には、指定した前記第１のクラスタに対応するコンテンツの中から、前記嗜好値に応じた階層毎の重みにより重み付けした、ユーザのコンテンツの嗜好の度合いを示す評価値で、さらにコンテンツを特定させることができる。
【００１５】
前記コンテンツ分類手段によって前記コンテンツが分類される各第１のクラスタに対してキーワードを設定する設定手段と、前記設定手段によって設定されたキーワードを用い、コンテンツの提示理由を表す理由文を生成する生成手段とをさらに設け、前記提示手段には、前記理由文も提示させることができる。
【００１６】
前記コンテンツは楽曲であり、前記メタデータには、楽曲のテンポ、ビート、またはリズムのうちの少なくとも１つが含まれるようにすることができる。
【００１７】
前記メタデータには、対応するコンテンツに対するレビューテキストが含まれるようにすることができる。
【００１８】
コンテンツのメタデータを複数の第２のクラスタのいずれかに分類し、第２のクラスタに前記階層を割り当てるメタデータ分類手段をさらに設け、前記コンテンツ分類手段には、各コンテンツを、割り当てられた前記階層のそれぞれにおいて複数の第１のクラスタのいずれかに分類させることができる。
【００１９】
前記特定手段には、類似元となるコンテンツが分類される前記第１のクラスタに対応するコンテンツの中から、類似元となるコンテンツとの類似の度合いを示す類似度で、さらにコンテンツを特定させることができる。
【００２０】
前記特定手段には、類似元となるコンテンツの前記第１のクラスタへの帰属の重みに応じた階層毎の重みにより重み付けした前記類似度でコンテンツを特定させることができる。
【００２１】
本発明の一側面の情報処理方法は、コンテンツ群のなかから所定の条件を満たすコンテンツを選択する情報処理装置の情報処理方法であって、前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた階層のそれぞれにおいて複数のクラスタのいずれかに分類する分類ステップと、各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースを保持する保持ステップと、前記階層毎に前記所定の条件に対応する前記クラスタを指定し、指定した前記クラスタに対応するコンテンツを特定する特定ステップと、特定された前記コンテンツを提示する提示ステップとを含むことを特徴とする。
【００２２】
本発明の一側面のプログラムは、コンテンツ群のなかから所定の条件を満たすコンテンツを選択するためのプログラムであって、前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた階層のそれぞれにおいて複数のクラスタのいずれかに分類する分類ステップと、各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースを保持する保持ステップと、前記階層毎に前記所定の条件に対応する前記クラスタを指定し、指定した前記クラスタに対応するコンテンツを特定する特定ステップと、特定された前記コンテンツを提示する提示ステップとを含む処理をコンピュータに実行させることを特徴とする。
【００２３】
本発明の一側面においては、コンテンツ群を構成する各コンテンツが、コンテンツのメタデータに応じた階層のそれぞれにおいて複数のクラスタのいずれかに分類され、各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースが保持され、前記階層毎に前記所定の条件に対応する前記クラスタが指定され、指定された前記クラスタに対応するコンテンツが特定され、特定された前記コンテンツが提示される。
【発明の効果】
【００２４】
本発明によれば、ユーザの嗜好情報に合致したコンテンツあるいは指定されるコンテンツに類似したコンテンツを、より少ない演算量で検索してユーザに提示することが可能となる。
【発明を実施するための最良の形態】
【００２５】
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２６】
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加されたりする発明の存在を否定するものではない。
【００２７】
本発明の一側面の情報処理装置（例えば、図１の推薦システム１）は、コンテンツ群のなかから所定の条件を満たすコンテンツを選択する情報処理装置であって、前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた階層のそれぞれにおいて複数の第１のクラスタのいずれかに分類するコンテンツ分類手段（例えば、図１のクラスタリング部１２）と、各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記第１のクラスタとの対応関係を示すデータベースを保持する保持手段（例えば、図１のクラスタ情報データベース１４）と、前記階層毎に前記所定の条件に対応する前記第１のクラスタを指定し、指定した前記第１のクラスタに対応するコンテンツを特定する特定手段（例えば、図１の楽曲抽出部２３）と、前記特定手段によって特定された前記コンテンツを提示する提示手段（例えば、図１の楽曲提示部２９）とを含むことを特徴とする。
【００２８】
前記コンテンツ分類手段によって前記コンテンツが分類される各第１のクラスタに、ユーザの嗜好の程度を示す嗜好値を対応付けて記憶する記憶手段（例えば、図１の嗜好情報データベース２４）をさらに設け、前記特定手段には、前記記憶手段によって記憶されている嗜好値に基づいて前記第１のクラスタを指定し、指定した前記第１のクラスタに対応するコンテンツを特定させることができる。
【００２９】
前記コンテンツ分類手段によって前記コンテンツが分類される各第１のクラスタに対してキーワードを設定する設定手段（例えば、図１のキーワード設定部１３）と、前記設定手段によって設定されたキーワードを用い、コンテンツの提示理由を表す理由文を生成する生成手段（例えば、図１の選択理由生成部２８）とをさらに設け、前記提示手段には、前記理由文も提示させることができる。
【００３０】
コンテンツのメタデータを複数の第２のクラスタのいずれかに分類し、第２のクラスタに前記階層を割り当てるメタデータ分類手段（例えば、図１７のメタデータクラスタリング部２０１）をさらに設け、前記コンテンツ分類手段（例えば、図１７の楽曲クラスタリング部２０２）には、各コンテンツを、割り当てられた前記階層のそれぞれにおいて複数の第１のクラスタのいずれかに分類させることができる。
【００３１】
本発明の一側面の情報処理方法またはプログラムは、前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた階層のそれぞれにおいて複数のクラスタのいずれかに分類する分類ステップ（例えば、図１のクラスタリング部１２による前処理）と、各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースを保持する保持ステップ（例えば、図１のクラスタリング部１２による前処理）と、前記階層毎に前記所定の条件に対応する前記クラスタを指定し、指定した前記クラスタに対応するコンテンツを特定する特定ステップ（例えば、図１１のステップＳ１乃至１２）と、特定された前記コンテンツを提示する提示ステップ（例えば、図１１のステップＳ１４）とを含む。
【００３２】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
【００３３】
図１は本発明の一実施の形態である推薦システムの構成例を示している。この推薦システム１は、ユーザの嗜好に合致した楽曲、あるいはユーザが指定した楽曲に類似した楽曲を検索し、ユーザに提示するものである。なお、推薦システム１は、楽曲以外のコンテンツ、例えばテレビジョン番組、映画、書籍などを推薦する場合にも適用することが可能である。
【００３４】
推薦システム１は、検索の対象となる数多くの楽曲のメタデータが記録されている楽曲データベース（ＤＢ）１１、楽曲データベース１１に記録されている各楽曲を、楽曲のメタデータに基づいてクラスタリングして各楽曲のクラスタ情報を生成するクラスタリング部１２、各クラスタ層および各クラスタの特徴をそれぞれ示すキーワードを設定するキーワード設定部１３、および、各楽曲のクラスタ情報を保持するクラスタ情報データベース（ＤＢ）１４から構成される。
【００３５】
さらに、推薦システム１は、検索しようとする楽曲の類似元となる楽曲（以下、元楽曲と称する）を指定する検索楽曲指定部２１、元楽曲のメタデータを従来からあるクラスタ識別手法（クラシフィケーション手法）を用いて最適なクラスタにマッピングするクラスタマッピング部２２、ユーザに提示する楽曲を１以上抽出する楽曲抽出部２３、ユーザの嗜好を示す嗜好情報が記録されている嗜好情報データベース（ＤＢ）２４、ユーザの嗜好を入力する嗜好入力部２５、抽出された楽曲の中からランダムに１つの楽曲を選択するランダム選択部２６、抽出された楽曲と元楽曲またはユーザの嗜好との類似度を算出して最も類似度の高い楽曲を選択する類似度算出部２７、ランダム選択部２６または類似度算出部２７における選択の理由を示す選択理由文を生成する選択理由生成部２８、および、選択した楽曲と選択理由文をユーザに提示する楽曲提示部２９から構成される。
【００３６】
楽曲データベース（ＤＢ）１１は、音楽ＣＤに収録されている楽曲のメタデータを供給するインタネット上のデータサーバであるCDDB(CD Data Base)やMusic Naviなどに相当する。
【００３７】
クラスタリング部１２は、楽曲データベース１１の全ての楽曲に対し、楽曲のメタデータの各項目（タイトル、アーティスト名、ジャンル、レビューテキスト、テンポ、ビート、リズムなど）を、図２に示すようなクラスタ層（第１乃至ｎ層）のいずれかに分類し、各項目の実情報を分類したクラスタ層に設けられる複数のクラスタのいずれかに楽曲を分類（クラスタリング）する。
【００３８】
なお、１つの楽曲を複数のクラスタに分類してもよい。同一クラスタ層に存在するクラスタ間の距離（類似の程度を示す）は既知であるものとする。このクラスタリングの手法については後述する。そして、メタデータの代わりに楽曲の特徴を示す情報として、メタデータの各項目の実情報を分類したクラスタのクラスタＩＤ（図２におけるＣＬ１１など）から成るクラスタ情報を生成してクラスタ情報データベース１４に出力する。
【００３９】
なお、分類に適したクラスタが存在しない場合、新たにクラスタを新設してもよい。各クラスタのサイズは任意であって複数の楽曲を包含できるものである。なお、単一の楽曲だけしか分類することができないクラスタを設けてもよい。この場合、当該クラスタのクラスタＩＤに唯一分類可能な楽曲の実情報のＩＤ（アーティストＩＤ、アルバムＩＤ、タイトルＩＤ）を用いてもよい。
【００４０】
クラスタ情報データベース１４は、クラスタリング部１２によって生成された各楽曲のクラスタ情報を保持している。また、クラスタ情報データベース１４は、保持するクラスタ情報に基づき、各クラスタにメタデータが分類された楽曲の楽曲ＩＤを示すクラスタ−楽曲ＩＤ情報を生成し、これを保持している。さらに、クラスタ情報データベース１４は、キーワード設定部１３によって設定された各クラスタ層や各クラスタに対して設定されたキーワードも保持している。
【００４１】
図３はクラスタ情報の一例を示している。同図においては、例えば、楽曲ＩＤ＝ABC123の楽曲のクラスタ情報は、（ＣＬ１２、ＣＬ２１、ＣＬ３５，ＣＬ４７，ＣＬ５２，…，ＣＬｎ２）であることを示している。また例えば、楽曲ＩＤ＝CTH863の楽曲のクラスタ情報は、クラスタＩＤ（ＣＬ１１、ＣＬ２５、ＣＬ３１，ＣＬ４２，ＣＬ５３，…，ＣＬｎ１）であることを示している。
【００４２】
図４は、図３に示されたクラスタ情報に対応するクラスタ−楽曲ＩＤ情報の一例を示している。同図においては、例えば、クラスタＩＤ＝ＣＬ１１には、楽曲ＩＤ＝CTH863が対応することを示している。また例えば、クラスタＩＤ＝ＣＬ２１には、楽曲ＩＤ＝ABC123が対応することを示している。
【００４３】
なお、クラスタリング部１２、キーワード設定部１３、およびクラスタ情報データベース１４の処理は、類似楽曲検索処理や楽曲推薦処理（後述）を実行する以前に予め実行する必要がある。
【００４４】
図１に戻る。検索楽曲指定部２１は、ユーザによって指定される元楽曲の楽曲ＩＤとメタデータをクラスタマッピング部２２に出力する。クラスタマッピング部２２は、検索楽曲指定部２１から入力された元楽曲のメタデータを、既存のクラスタ識別手法（クラシフィケーション手法）を用いて最適クラスタを選ぶ。クラスタ識別手法としては、k-Nearest-Neighbor法などを適用することができる。なお、元楽曲のクラスタ情報が既にクラスタ情報データベース１４に存在する場合、それを読み出して楽曲抽出部２３に供給するようにしてもよい。
【００４５】
楽曲抽出部２３は、クラスタマッピング部２２から供給される元楽曲のクラスタ情報に基づいてクラスタ情報データベース１４を参照し、元楽曲と同じクラスタに分類されている楽曲の楽曲ＩＤを取得してランダム選択部２６または類似度算出部２７に供給する。また、楽曲抽出部２３は、嗜好情報データベース２４の嗜好情報に基づいてクラスタ情報データベース１４を参照して、ユーザの嗜好に合致する楽曲の楽曲ＩＤを取得してランダム選択部２６または類似度算出部２７に供給する。
【００４６】
嗜好情報データベース２４は、ユーザの嗜好を示す嗜好情報が記録されている。嗜好情報には、各クラスタに対するユーザの嗜好の程度を示す嗜好値が記録されている。この嗜好値は正規化された値であり、嗜好入力部２５によって更新される。また、嗜好情報データベース２４は、各クラスタ層における嗜好値の分散を演算し、嗜好値の分散が最も小さい（すなわち、ユーザの嗜好が特定のクラスタに集中している）クラスタ層を検出する。
【００４７】
図５は嗜好情報の一例を示している。同図においては、例えばクラスタＣＬ１１に対する嗜好値が０．５であることを示している。また例えば、クラスタＣＬ３２に対する嗜好値が０．１であることを示している。
【００４８】
嗜好入力部２５は、楽曲に対するユーザの操作（再生、録音、スキップ、消去など）の履歴に基づいて各クラスタにそれぞれ対応する嗜好値を更新する。また、嗜好入力部２５は、ユーザからの設定に基づき、ユーザが重視しているクラスタ層をクラスタ情報データベース１４に通知する。
【００４９】
ランダム選択部２６は、楽曲抽出部２３によって抽出された楽曲の中からランダムに楽曲ＩＤを１つ選択して選択理由生成部２８に出力する。類似度算出部２７は、楽曲抽出部２３によって抽出された楽曲と元楽曲またはユーザの嗜好との類似度を算出し、最も類似度の高い楽曲を選択して選択理由生成部２８に出力する。なお、ランダム選択部２６と類似度算出部２７は、双方が動作する必要はなく、いずれか一方が動作すればよい。
【００５０】
選択理由生成部２８は、クラスタ情報データベース１４からクラスタ層やクラスタに対応するキーワードを取得し、取得したキーワードなどを用いて選択の理由を示す選択理由文を生成し、選択された楽曲の楽曲ＩＤとともに楽曲提示部２９に出力する。
【００５１】
選択理由文は以下のように生成する。例えば、類似した楽曲や嗜好に合致した楽曲を選択するときに優先したクラスタ層に設定されたキーワードやクラスタのキーワードを用いる。具体的には、レビューテキストに対応するクラスタ層を最も優先した場合、「レビューテキストに出てくる「夏」、「海辺」がお気に入りじゃない？」などの選択理由文を生成する。あるいは、選択された楽曲のレビューテキストをそのまま選択理由文として引用したり、選択された楽曲のレビューテキストから抽出した単語を用いて選択理由文を生成する。なお、レビューテキストから選択理由文に用いる単語を抽出するにはTf/idf法を適用することができる。
【００５２】
楽曲提示部２９は、例えばディスプレイなどからなり、選択理由生成部２８から入力される楽曲ＩＤの楽曲と選択理由文とをユーザに提示する。
【００５３】
次に、クラスタリング部１２によるメタデータの分類（クラスタリング）について説明する。
【００５４】
クラスタリング手法はいかなる手法でもかまわないが、クラスタ層毎に最適なクラスタリング手法、距離尺度を選ぶようにする。例えば、メタデータの実情報が数値であるならばそのまま、タイトルなどの場合は主成分分析等の数量化手法を用いて数値にして、ユークリッド距離などの距離尺度を定義してクラスタリングすることになる。代表的なクラスタリング手法としは、K-means法、階層クラスタリング法などを挙げることができる。
【００５５】
この際、嗜好距離を反映したクラスタリング（例えば、制約付きクラスタリング）によって実施することが望ましい。そのためには、事前調査により部分的な正解集（嗜好的に近い実情報の集合、遠い実情報の集合など）を作り、それに適合する数値表現、距離、クラスタリング手法を用いるものとする。またさらに、形成される各クラスタ層の独立性が高くなるクラスタリング手法（すなわち、特性の異なるクラスタリング手法）を選ぶことが望ましい。
【００５６】
例えば４種類のクラスタリング手法（以下、第１乃至４手法と称する）の中から特性の異なる２種類のクラスタリング手法を選択する方法について、図６乃至図１０を参照して説明する。
【００５７】
まず、第１乃至４手法によってメタデータの実情報であるアーティストＡ乃至Ｊをクラスタリングする。そして図６に示すような結果が得られたとする。
【００５８】
すなわち、第１手法により、アーティストＡ乃至ＣがクラスタＣＬ１に、アーティストＤ乃至ＧがクラスタＣＬ２に、アーティストＨ乃至ＪがクラスタＣＬ３にクラスタリングされ、第２手法により、アーティストＡ，ＢがクラスタＣＬ１に、アーティストＣ乃至ＦがクラスタＣＬ２に、アーティストＧ乃至ＪがクラスタＣＬ３にクラスタリングされ、第３手法により、アーティストＡ，Ｄ，Ｇ，ＪがクラスタＣＬ１に、アーティストＢ，Ｅ，ＨがクラスタＣＬ２に、アーティストＣ，Ｆ，ＩがクラスタＣＬ３にクラスタリングされ、第４手法により、アーティストＤ，Ｉ，ＪがクラスタＣＬ１に、アーティストＥ乃至ＧがクラスタＣＬ２に、アーティストＡ乃至ＣおよびＨがクラスタＣＬ３にクラスタリングされたとする。
【００５９】
この場合、第１乃至４手法による結果の重複率（％）は図７に示すとおりである。すなわち、第１手法と第２手法の重複率は０．８、第１手法と第３手法の重複率は０．３、第１手法と第４手法の重複率は０．４、第２手法と第３手法の重複率は０．３、第２手法と第４手法の重複率は０．３、第３手法と第４手法の重複率は０．４である。
【００６０】
図７に示された重複率が小さいほど２つの手法の特性が異なると考えられるので、重複率が最小値の０．３である第１手法と第３手法の組み合わせ、第２手法と第３手法の組み合わせ、または第２手法と第４手法の組み合わせを採用することが望ましい。
【００６１】
一方、ユーザ自身によってアーティストＡ乃至Ｊのうちの二人が同じクラスタに分類されるべきであるか否かを判定させた場合、図８に示すような結果が得られたとする。ただし、同図において、１は同じクラスタに分類されるべきであることを、０は異なるクラスタに分類されるべきであることを意味する。すなわち、同図においては、例えば、アーティストＡがアーティストＢ，Ｃ，Ｆ，Ｈ，Ｉと同じクラスタに分類されるべきであると判断されたが示されており、アーティストＢがアーティストＣ，Ｄ，Ｅ，Ｊと同じクラスタに分類されるべきであることが示されている。
【００６２】
図８に示された結果と正解として理想的なクラスタリング結果であるとするならば、上述した第１乃至４手法の正解率は図９に示すとおりである。すなわち、第１手法の正解率は６２．２％、第２手法の正解率は５５．６％、第３手法の正解率は４０．０％、第４手法の正解率は６６．７％である。
【００６３】
したがって、正解率を重視するならば、正解率が高い第１手法と第４手法の組み合わせを採用することが望ましい。
【００６４】
さらに、重複率と正解率を加味したクラスタリング手法の組み合わせを求めるため、第１乃至４手法の正解の重複率を算出すれば、図１０に示すとおりとなる。図９に示された結果から正解率が極端に低い手法を特定し、特定した当該手法を含まない組み合わせのうちの正解率の重複率が最も低い組み合わせを採用すればよい。すなわち、正解率が極端に低い手法として第３手法が特定され、第３手法を含まない組み合わせのうちの正解の重複率が最も低いものとして第２手法と第４手法の組み合わせが選択される。
【００６５】
なお、上述した重複率や正解率については絶対的な閾値を指定して、それ閾値を満たすことができない手法を除外してもよいし、バランスがとれた手法を採用するために、２つの指標（重複率と正解率）に基づいて例えば、以下に示す２例のような総合的な指標を作成し、総合的な指標に基づいてクラスタリングの手法の組み合わせを選択するようにしてもよい。
総合的な指標＝正解率×（１−重複率）
総合的な指標＝α・正解率×β（１−重複率）        （α，βは所定の係数）
【００６６】
次に、元楽曲に類似した楽曲を提示する３種類の類似楽曲検索処理と、ユーザの嗜好に合致する楽曲を提示する２種類の楽曲推薦処理について説明する。
【００６７】
なお、以下に説明する類似楽曲検索処理や楽曲推薦処理が行われる前処理として、クラスタリング部１２、キーワード設定部１３、およびクラスタ情報データベース１４が動作しており、既にクラスタ情報データベース１４には、クラスタリング部１２によって生成された各楽曲のクラスタ情報と、クラスタ情報データベース１４が生成したクラスタ−楽曲ＩＤ情報と、キーワード設定部１３によって設定された各クラスタ層や各クラスタに対して設定されたキーワードが保持されているものとする。
【００６８】
まず、類似楽曲検索処理について説明する。
【００６９】
図１１は、第１の類似楽曲検索処理を説明するフローチャートである。第１の類似楽曲検索処理の前処理として、クラスタ情報データベース１４は、嗜好入力部２５から入力されるユーザの各クラスタ層に対する優先度に応じ、優先順位が高い方のクラスタ層から順に、層番号を１，２，…，ｎまで振り直しているものとする。
【００７０】
ステップＳ１において、検索楽曲指定部２１は、ユーザによって指定される元楽曲の楽曲ＩＤとメタデータをクラスタマッピング部２２に出力する。クラスタマッピング部２２は、入力された元楽曲のメタデータを、従来のクラスタ識別手法を用いて最適クラスタにマッピングし、この結果（以下、最適クラスタ情報と称する）を楽曲抽出部２３に供給する。
【００７１】
ステップＳ２において、楽曲抽出部２３は、クラスタ情報データベース１４を参照し、クラスタ情報データベース１４にクラスタ情報が保持されている全ての楽曲の楽曲ＩＤを要素とする集合Ｃを想定する。ステップＳ３において、楽曲抽出部２３は、層番号ｉを１に初期化する。
【００７２】
ステップＳ４において、楽曲抽出部２３は、層番号ｉがｎ（ｎはクラスタ層の総数）以下であるか否かを判定する。層番号ｉがｎ以下であると判定された場合、処理はステップＳ５に進む。ステップＳ５において、楽曲抽出部２３は、クラスタマッピング部２２から入力された元楽曲の最適クラスタ情報に基づき、元楽曲が第ｉ層においてどのクラスタに属しているのかを特定する。特定したクラスタをＣＬｉｘと称する。
【００７３】
ステップＳ６において、楽曲抽出部２３は、クラスタ情報データベース１４のクラスタ−楽曲ＩＤ情報を参照し、特定したクラスタＣＬｉｘに属する楽曲の楽曲ＩＤを取得する。ステップＳ７において、楽曲抽出部２３は、ステップＳ６の処理で取得した楽曲ＩＤを要素とする集合Ａを想定する。ステップＳ８において、楽曲抽出部２３は、集合Ｃと集合Ａに共通する要素（楽曲ＩＤ）を抽出し、ステップＳ９において、共通する楽曲ＩＤが存在するか否か（すなわち、ステップＳ８の処理で、集合Ｃと集合Ａに共通する楽曲ＩＤを抽出できたか否か）を判定する。集合Ｃと集合Ａに共通する楽曲ＩＤが存在すると判定した場合、処理はステップＳ１０に進み、集合Ｃの要素を、ステップＳ８で抽出した共通する楽曲ＩＤだけに減少させる。ステップＳ１１において、楽曲抽出部２３は、層番号ｉを１だけインクリメントしてステップＳ４に戻り、それ以降の処理を繰り返す。
【００７４】
なお、ステップＳ９において、集合Ｃと集合Ａに共通する楽曲ＩＤが存在しないと判定された場合、ステップＳ１０はスキップされ、処理はステップＳ１１に進む。
【００７５】
このステップＳ４乃至Ｓ１１の処理が繰り返されることにより、集合Ｃの要素（楽曲ＩＤ）が減少されてゆく。そして、ステップＳ４において、層番号ｉがｎよりも大きくなり、ｎ以下ではないと判定された場合、処理はステップＳ１２に進む。
【００７６】
ステップＳ１２において、楽曲抽出部２３は、集合Ｃの要素（楽曲ＩＤ）をランダム選択部２６に出力する。ランダム選択部２６は、集合Ｃの中からランダムに１つの楽曲を選択して選択理由生成部２８に出力する。なお、ランダム選択部２６ではなく、類似度算出部２７に集合Ｃの要素（楽曲ＩＤ）を出力し、類似度算出部２７により、１つの楽曲を選択するようにしてもよい。
【００７７】
ステップＳ１３において、選択理由生成部２８は、ランダム選択部２６（または類似度算出部２７）によって選択された楽曲が選択された理由を示す選択理由文を生成して、選択された楽曲の楽曲ＩＤとともに楽曲提示部２９に出力する。ステップＳ１４において、楽曲提示部２９は、選択理由生成部２８から入力される楽曲ＩＤの楽曲と選択理由文とをユーザに提示する。
【００７８】
以上説明した第１の類似楽曲検索処理によれば、元楽曲の特徴ベクトルと他の楽曲の特徴ベクトルとの距離の算出を必須とせず、各クラスタ層に対するユーザの優先順位を考慮しつつ、元楽曲に類似した楽曲を提示することが可能となる。
【００７９】
図１２は、第２の類似楽曲検索処理を説明するフローチャートである。第２の類似楽曲検索処理の前処理として、嗜好情報データベース２４は、各クラスタ層における嗜好値の分散を演算し、嗜好値の分散が最も小さい（すなわち、ユーザの嗜好が特定のクラスタに集中している）クラスタ層を検出し、嗜好が集中しているクラスタを特定しているものとする。当該クラスタ層の層番号をＰ、当該クラスタをＣＬｐｐとする。
【００８０】
ステップＳ３１において、嗜好情報データベース２４は、各クラスタ層における嗜好値の分散を演算し、嗜好値の分散が最も小さい（すなわち、ユーザの嗜好が特定のクラスタに集中している）クラスタ層を検出して第Ｐ層とする（Ｐは１乃至ｎの整数）。さらに、第Ｐ層において嗜好が集中しているクラスタを特定してＣＬｐｐとする。
【００８１】
ステップＳ３２において、検索楽曲指定部２１は、ユーザによって指定される元楽曲の楽曲ＩＤとメタデータをクラスタマッピング部２２に出力する。クラスタマッピング部２２は、入力された元楽曲のメタデータを、従来のクラスタ識別手法を用いて最適クラスタにマッピングし、この最適クラスタ情報を生成し楽曲抽出部２３に供給する。
【００８２】
ステップＳ３３において、楽曲抽出部２３は、クラスタ情報データベース１４を参照し、クラスタ情報データベース１４にクラスタ情報が保持されている全ての楽曲の楽曲ＩＤを要素とする集合Ｃを想定する。ステップＳ３４において、楽曲抽出部２３は、層番号ｉを１に初期化する。
【００８３】
ステップＳ３５において、楽曲抽出部２３は、層番号ｉがｎ（ｎはクラスタ層の総数）以下であるか否かを判定する。層番号ｉがｎ以下であると判定された場合、処理はステップＳ３６に進む。ステップＳ３６において、楽曲抽出部２３は、ステップＳ３１で特定したＰと層番号ｉが一致するか否かを判定し、一致すると判定した場合、ステップＳ３７に進み、次のステップ３９における処理対象をクラスタＣＬｐｐに特定する。
【００８４】
一方、ステップＳ３６において、ステップＳ３１で特定したＰと層番号ｉが一致しないと判定された場合、ステップＳ３８に進む。ステップＳ３８において、楽曲抽出部２３は、クラスタマッピング部２２から入力された元楽曲の最適クラスタ情報に基づき、元楽曲が第ｉ層においてどのクラスタに属しているのかを特定する。特定したクラスタをＣＬｉｘと称する。
【００８５】
ステップＳ３９において、楽曲抽出部２３は、クラスタ情報データベース１４のクラスタ−楽曲ＩＤ情報を参照し、ステップＳ３７の処理で特定したクラスタＣＬｐｐまたはステップＳ３８の処理で特定したクラスタＣＬｉｘに属する楽曲の楽曲ＩＤを取得する。
【００８６】
ステップＳ４０において、楽曲抽出部２３は、ステップＳ３９の処理で取得した楽曲ＩＤを要素とする集合Ａを想定する。ステップＳ４１において、楽曲抽出部２３は、集合Ｃと集合Ａに共通する要素（楽曲ＩＤ）を抽出し、ステップＳ４２において、共通する楽曲ＩＤが存在するか否か（すなわち、ステップＳ４１の処理で、集合Ｃと集合Ａに共通する楽曲ＩＤを抽出できたか否か）を判定する。集合Ｃと集合Ａに共通する楽曲ＩＤが存在すると判定した場合、処理はステップＳ４３に進み、集合Ｃの要素を、ステップＳ４１で抽出した共通する楽曲ＩＤだけに減少させる。ステップＳ４４において、楽曲抽出部２３は、層番号ｉを１だけインクリメントしてステップＳ３５に戻り、それ以降の処理を繰り返す。
【００８７】
なお、ステップＳ４２において、集合Ｃと集合Ａに共通する楽曲ＩＤが存在しないと判定された場合、ステップＳ４３はスキップされ、処理はステップＳ４４に進む。
【００８８】
このステップＳ３５乃至Ｓ４４の処理が繰り返されることにより、集合Ｃの要素（楽曲ＩＤ）が減少されてゆく。そして、ステップＳ３５において、層番号ｉがｎよりも大きくなり、ｎ以下ではないと判定された場合、処理はステップＳ４５に進む。
【００８９】
ステップＳ４５において、楽曲抽出部２３は、集合Ｃの要素（楽曲ＩＤ）をランダム選択部２６に出力する。ランダム選択部２６は、集合Ｃの中からランダムに１つの楽曲を選択して選択理由生成部２８に出力する。なお、ランダム選択部２６ではなく、類似度算出部２７に集合Ｃの要素（楽曲ＩＤ）を出力し、類似度算出部２７により、１つの楽曲を選択するようにしてもよい。
【００９０】
ステップＳ４６において、選択理由生成部２８は、ランダム選択部２６（または類似度算出部２７）によって選択された楽曲が選択された理由を示す選択理由文を生成して、選択された楽曲の楽曲ＩＤとともに楽曲提示部２９に出力する。ステップＳ４７において、楽曲提示部２９は、選択理由生成部２８から入力される楽曲ＩＤの楽曲と選択理由文とをユーザに提示する。
【００９１】
以上説明した第２の類似楽曲検索処理によれば、元楽曲の特徴ベクトルと他の楽曲の特徴ベクトルとの距離の算出を必須とせず、ユーザの嗜好を示す嗜好値が高いクラスタに属する楽曲であって、かつ、元楽曲に類似した楽曲を提示することが可能となる。
【００９２】
図１３は、第３の類似楽曲検索処理を説明するフローチャートである。
【００９３】
ステップＳ６１において、検索楽曲指定部２１は、ユーザによって指定される元楽曲の楽曲ＩＤとメタデータをクラスタマッピング部２２に出力する。クラスタマッピング部２２は、入力された元楽曲のメタデータを従来のクラスタ識別手法を用いて最適クラスタにマッピングし、この最適クラスタ情報を楽曲抽出部２３に供給する。
【００９４】
ステップＳ６２において、楽曲抽出部２３は、評価値を付けた楽曲ＩＤを要素とする集合Ｃを想定して初期化する。すなわち、この時点で集合Ｃは空集合である。ステップＳ６３において、楽曲抽出部２３は、層番号ｉを１に初期化する。
【００９５】
ステップＳ６４において、楽曲抽出部２３は、層番号ｉがｎ（ｎはクラスタ層の総数）以下であるか否かを判定する。層番号ｉがｎ以下であると判定された場合、処理はステップＳ６５に進む。ステップＳ６５において、楽曲抽出部２３は、クラスタマッピング部２２から入力された元楽曲の最適クラスタ情報に基づき、元楽曲が第ｉ層においてどのクラスタに属しているのかを特定する。特定したクラスタをＣＬｉｘと称する。
【００９６】
ステップＳ６６において、楽曲抽出部２３は、嗜好情報データベース２４を参照して、ステップＳ６５の処理で特定したクラスタＣＬｉｘに対するユーザの嗜好値を取得し、取得した嗜好値に基づいて、クラスタＣＬｉｘに属する楽曲に対して付与する評価値を決定する。
【００９７】
ステップＳ６７において、楽曲抽出部２３は、クラスタ情報データベース１４のクラスタ−楽曲ＩＤ情報を参照し、特定したクラスタＣＬｉｘに属する楽曲の楽曲ＩＤを取得する。ステップＳ６８において、楽曲抽出部２３は、ステップＳ６７の処理で取得した楽曲ＩＤに、ステップＳ６６の処理で決定した評価値を付与する。そして、評価値付の楽曲ＩＤを要素とする集合Ａを想定する。
【００９８】
ステップＳ６９において、楽曲抽出部２３は、集合Ｃに集合Ａの要素（評価値付の楽曲ＩＤ）を追加する。ステップＳ７０において、楽曲抽出部２３は、層番号ｉを１だけインクリメントしてステップＳ６４に戻り、それ以降の処理を繰り返す。
【００９９】
このステップＳ６４乃至Ｓ７０の処理が繰り返されることにより、集合Ｃの要素（評価値付の楽曲ＩＤ）が増加してゆく。そして、ステップＳ６４において、層番号ｉがｎよりも大きくなり、ｎ以下ではないと判定された場合、処理はステップＳ７１に進む。
【０１００】
ステップＳ７１において、楽曲抽出部２３は、集合Ｃの要素（評価値付の楽曲ＩＤ）の中から、評価値が最も高いものを選択し、ランダム選択部２６（または類似度算出部２７）を介して選択理由生成部２８に出力する。
【０１０１】
ステップＳ７２において、選択理由生成部２８は、楽曲抽出部２３によって選択された楽曲が選択された理由を示す選択理由文を生成して、選択された楽曲の楽曲ＩＤとともに楽曲提示部２９に出力する。ステップＳ７３において、楽曲提示部２９は、選択理由生成部２８から入力される楽曲ＩＤの楽曲と選択理由文とをユーザに提示する。
【０１０２】
以上説明した第３の類似楽曲検索処理によれば、元楽曲の特徴ベクトルと他の楽曲の特徴ベクトルとの距離の算出を必須とせず、元楽曲に類似した楽曲のうち、ユーザの嗜好に応じて付与された評価値が最も高いものを提示することが可能となる。
【０１０３】
なお、上述した第１乃至第３の類似楽曲検索処理においては検索条件として楽曲を指定したが、アーティスト、アルバム等を指定して類似楽曲検索処理を行うこともできる。この場合、図３，４の楽曲ＩＤをアーティストＩＤあるいはアルバムＩＤと読みかえればよい。例えばアーティストを検索条件とする場合、図２でアーティストの関わるタイトル、アルバム、ジャンルなどに相当するクラスタ層を用いる。
【０１０４】
次に、楽曲推薦処理について説明する。
【０１０５】
図１４は、第１の楽曲推薦処理を説明するフローチャートである。第１の楽曲推薦処理の前処理として、クラスタ情報データベース１４は、嗜好入力部２５から入力されるユーザの各クラスタ層に対する優先度に応じ、優先順位が高い方のクラスタ層から順に、層番号を１，２，…，ｎまで振り直しているものとする。
【０１０６】
ステップＳ９１において、楽曲抽出部２３は、クラスタ情報データベース１４を参照し、クラスタ情報データベース１４にクラスタ情報が保持されている全ての楽曲の楽曲ＩＤを要素とする集合Ｃを想定する。ステップＳ９２において、楽曲抽出部２３は、層番号ｉを１に初期化する。
【０１０７】
ステップＳ９３において、楽曲抽出部２３は、層番号ｉがｎ（ｎはクラスタ層の総数）以下であるか否かを判定する。層番号ｉがｎ以下であると判定された場合、処理はステップＳ９４に進む。ステップＳ９４において、楽曲抽出部２３は、嗜好情報データベース２４を参照し、第ｉ層のクラスタのうち、ユーザの嗜好値が最大のクラスタを特定する。特定したクラスタをＣＬｉｘと称する。
【０１０８】
ステップＳ９５において、楽曲抽出部２３は、クラスタ情報データベース１４のクラスタ−楽曲ＩＤ情報を参照し、特定したクラスタＣＬｉｘに属する楽曲の楽曲ＩＤを取得する。ステップＳ９６において、楽曲抽出部２３は、ステップＳ９５の処理で取得した楽曲ＩＤを要素とする集合Ａを想定する。ステップＳ９７において、楽曲抽出部２３は、集合Ｃと集合Ａに共通する要素（楽曲ＩＤ）を抽出し、ステップＳ９８において、共通する楽曲ＩＤが存在するか否か（すなわち、ステップＳ９７の処理で、集合Ｃと集合Ａに共通する楽曲ＩＤを抽出できたか否か）を判定する。集合Ｃと集合Ａに共通する楽曲ＩＤが存在すると判定した場合、処理はステップＳ９９に進み、集合Ｃの要素を、ステップＳ９７で抽出した共通する楽曲ＩＤだけに減少させる。ステップＳ１００において、楽曲抽出部２３は、層番号ｉを１だけインクリメントしてステップＳ９３に戻り、それ以降の処理を繰り返す。
【０１０９】
なお、ステップＳ９８において、集合Ｃと集合Ａに共通する楽曲ＩＤが存在しないと判定された場合、ステップＳ９９はスキップされ、処理はステップＳ１００に進む。
【０１１０】
このステップＳ９３至Ｓ１００の処理が繰り返されることにより、集合Ｃの要素（楽曲ＩＤ）が減少されてゆく。そして、ステップＳ９３において、層番号ｉがｎよりも大きくなり、ｎ以下ではないと判定された場合、処理はステップＳ１０１に進む。
【０１１１】
ステップＳ１０１において、楽曲抽出部２３は、集合Ｃの要素（楽曲ＩＤ）をランダム選択部２６に出力する。ランダム選択部２６は、集合Ｃの中からランダムに１つの楽曲を選択して選択理由生成部２８に出力する。なお、ランダム選択部２６ではなく、類似度算出部２７に集合Ｃの要素（楽曲ＩＤ）を出力し、類似度算出部２７により、１つの楽曲を選択するようにしてもよい。
【０１１２】
ステップＳ１０２において、選択理由生成部２８は、ランダム選択部２６（または類似度算出部２７）によって選択された楽曲が選択された理由を示す選択理由文を生成して、選択された楽曲の楽曲ＩＤとともに楽曲提示部２９に出力する。ステップＳ１０３において、楽曲提示部２９は、選択理由生成部２８から入力される楽曲ＩＤの楽曲と選択理由文とをユーザに提示する。
【０１１３】
以上説明した第１の楽曲推薦処理によれば、ユーザの嗜好に対応する特徴ベクトルと楽曲の特徴ベクトルとの距離の算出を必須とせず、各クラスタ層に対するユーザの優先順位を考慮しつつ、ユーザの嗜好に合致した楽曲をユーザに推薦することが可能となる。
【０１１４】
図１５は、第２の楽曲推薦処理を説明するフローチャートである。
【０１１５】
ステップＳ１２１において、楽曲抽出部２３は、評価値を付けた楽曲ＩＤを要素とする集合Ｃを想定して初期化する。すなわち、この時点で集合Ｃは空集合である。ステップＳ１２２において、楽曲抽出部２３は、層番号ｉを１に初期化する。
【０１１６】
ステップＳ１２３において、楽曲抽出部２３は、層番号ｉがｎ（ｎはクラスタ層の総数）以下であるか否かを判定する。層番号ｉがｎ以下であると判定された場合、処理はステップＳ１２４に進む。ステップＳ１２４において、楽曲抽出部２３は、嗜好情報データベース２４を参照し、第ｉ層のクラスタのうち、ユーザの嗜好に対応する嗜好値が所定の値以上であるものを特定する。特定したものをクラスタ群ＣＬｉｘと称する。
【０１１７】
ステップＳ１２５において、楽曲抽出部２３は、ステップＳ１２４の処理で特定したクラスタ群ＣＬｉｘの各クラスタに対する嗜好値に基づいて、クラスタ群ＣＬｉｘの各クラスタに属する楽曲に対して付与する評価値を決定する。
【０１１８】
ステップＳ１２６において、楽曲抽出部２３は、クラスタ情報データベース１４のクラスタ−楽曲ＩＤ情報を参照し、特定したクラスタ群ＣＬｉｘの各クラスタに属する楽曲の楽曲ＩＤを取得する。ステップＳ１２７において、楽曲抽出部２３は、ステップＳ１２６の処理で取得した楽曲ＩＤに、ステップＳ１２５の処理で決定した評価値を付与する。そして、評価値付の楽曲ＩＤを要素とする集合Ａを想定する。
【０１１９】
ステップＳ１２８において、楽曲抽出部２３は、集合Ｃに集合Ａの要素（評価値付の楽曲ＩＤ）を追加する。この際、集合Ｃに同じ楽曲ＩＤがあれば評価値を足し合わせる。ステップＳ１２９において、楽曲抽出部２３は、層番号ｉを１だけインクリメントしてステップＳ１２３に戻り、それ以降の処理を繰り返す。
【０１２０】
このステップＳ１２３乃至Ｓ１２９の処理が繰り返されることにより、集合Ｃの要素（評価値付の楽曲ＩＤ）が増加してゆく。そして、ステップＳ１２３において、層番号ｉがｎよりも大きくなり、ｎ以下ではないと判定された場合、処理はステップＳ１３０に進む。
【０１２１】
ステップＳ１３０において、楽曲抽出部２３は、集合Ｃの要素（評価値付の楽曲ＩＤ）の中から、評価値が最も高いものを選択し、ランダム選択部２６（または類似度算出部２７）を介して選択理由生成部２８に出力する。
【０１２２】
ステップＳ１３１において、選択理由生成部２８は、楽曲抽出部２３によって選択された楽曲が選択された理由を示す選択理由文を生成して、選択された楽曲の楽曲ＩＤとともに楽曲提示部２９に出力する。ステップＳ１３２において、楽曲提示部２９は、選択理由生成部２８から入力される楽曲ＩＤの楽曲と選択理由文とをユーザに提示する。
【０１２３】
以上説明した第２の楽曲推薦処理によれば、ユーザの嗜好に対応する特徴ベクトルと楽曲の特徴ベクトルとの距離の算出を必須とせず、ユーザの嗜好に応じて付与された評価値が最も高い楽曲をユーザに推薦することが可能となる。
【０１２４】
以上説明した第１乃至３の類似楽曲検索処理、並びに第１および第２の楽曲推薦処理によれば、元楽曲あるいはユーザの嗜好に対応する特徴ベクトルと、検索対象の楽曲の特徴ベクトルとの距離（余弦相関など）を算出することなく、提示する楽曲を選択することができる。また、いずれの処理においても、ユーザの嗜好を優先することができるので、検索や推薦に対するユーザの満足度を向上させることができる
【０１２５】
クラスタ層毎に提示するための候補となる楽曲を選び出しているので、いわゆる嗜好の足し合わせによるなまりの問題が生じないという利点がある。
【０１２６】
さらに、楽曲のメタデータのうち、数値によって表現されるものは、それがクラスタ間の距離に反映されるように数値そのものが直接クラスタリングに使われるため、情報が最大限活用される。
【０１２７】
また、クラスタ層をグループに分けて部分的に用いてもよい。例えば｛関連アーティスト層、アーティストジャンル層、アーティストレビューテキスト層｝をアーティスト検索推薦用グループに、｛楽曲特徴量層（テンポ、リズム、etc）、曲ジャンル層、曲レビューテキスト層｝を楽曲検索推薦用グループとして定義するようにしてもよい。
【０１２８】
ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば図１６に示すように構成される汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【０１２９】
このパーソナルコンピュータ１００は、CPU(Central Processing Unit)１０１を内蔵している。CPU１０１にはバス１０４を介して、入出力インタフェース１０５が接続されている。バス１０４には、ROM(Read Only Memory)１０２およびRAM(Random Access Memory)１０３が接続されている。
【０１３０】
入出力インタフェース１０５には、ユーザが操作コマンドを入力するキーボード、マウス等の入力デバイスよりなる入力部１０６、画面を表示するCRT(Cathode Ray Tube)またはLCD(Liquid Crystal Display)等のディスプレイよりなる出力部１０７、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部１０８、およびモデム、LAN（Local Area Network）アダプタなどよりなり、インタネットに代表されるネットワークを介した通信処理を実行する通信部１０９が接続されている。また、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む）、光磁気ディスク（ＭＤ(Mini Disc)を含む）、もしくは半導体メモリなどの記録媒体１１１に対してデータを読み書きするドライブ１１０が接続されている。
【０１３１】
このパーソナルコンピュータ１００に上述した一連の処理を実行させるプログラムは、記録媒体１１１に格納された状態でパーソナルコンピュータ１００に供給され、ドライブ１１０によって読み出されて記憶部１０８に内蔵されるハードディスクドライブにインストールされている。記憶部１０８にインストールされているプログラムは、入力部１０６に入力されるユーザからのコマンドに対応するCPU１０１の指令によって、記憶部１０８からRAM１０３にロードされて実行される。
【０１３２】
図１７は、本発明の一実施の形態の推薦システム１の他の構成の例を示すブロック図である。図１７において、図１に示す場合と同様の部分には同一の符号を付してあり、その説明は省略する。
【０１３３】
図１７に示される推薦システム１は、楽曲ＤＢ１１、キーワード設定部１３、クラスタ情報ＤＢ１４、検索楽曲指定部２１、クラスタマッピング部２２、楽曲抽出部２３、嗜好情報データベース２４、嗜好入力部２５、ランダム選択部２６、類似度算出部２７、選択理由生成部２８、楽曲提示部２９、メタデータクラスタリング部２０１、および楽曲クラスタリング部２０２から構成される。
【０１３４】
メタデータクラスタリング部２０１は、楽曲データベース１１に記録されている各楽曲のメタデータをクラスタリングする。すなわち、メタデータクラスタリング部２０１は、コンテンツである楽曲のメタデータを複数のクラスタのいずれかに分類し、クラスタに階層を割り当てる。
【０１３５】
メタデータクラスタリング部２０１は、各楽曲のメタデータのクラスタリングの結果を楽曲クラスタリング部２０２に供給する。
【０１３６】
楽曲クラスタリング部２０２は、メタデータクラスタリング部２０１による各楽曲のメタデータのクラスタリングの結果を基に、クラスタリング部１２と同様に、各楽曲をクラスタリングして各楽曲のクラスタ情報を生成する。すなわち、楽曲クラスタリング部２０２は、各楽曲のクラスタリングの結果に応じたクラスタ情報を生成してクラスタ情報ＤＢ１４に出力する。
【０１３７】
次に、図１８のフローチャートを参照して、図１７に示される推薦システム１における、楽曲を推薦する処理の準備であるオフライン時の前処理の例について説明する。
【０１３８】
ステップＳ２０１において、メタデータクラスタリング部２０１は、楽曲ＤＢ１１から楽曲のメタデータを取得して、取得したメタデータの次元を圧縮する。例えば、ステップＳ２０１において、メタデータクラスタリング部２０１は、楽曲ＤＢ１１から取得した楽曲のメタデータの次元を、LSA（the latent semantic analysis）、PLSA（the probabilistic latent semantic analysis）、または数量化III類などの手法により圧縮する。
【０１３９】
なお、ステップＳ２０１において、メタデータクラスタリング部２０１は、楽曲のメタデータをベクトル化するようにしてもよい。
【０１４０】
ステップＳ２０２において、メタデータクラスタリング部２０１は、各楽曲のメタデータをクラスタリングする。例えば、ステップＳ２０２において、メタデータクラスタリング部２０１は、各楽曲のメタデータをソフトクラスタリングする。
【０１４１】
より具体的には、例えば、図１９で示されるように、メタデータクラスタリング部２０１は、それぞれの階層内において、アイテムの各クラスタへの帰属重みの和が１となるように、各楽曲のメタデータをソフトクラスタリングする。
【０１４２】
例えば、ABC123である楽曲ＩＤで特定される楽曲のメタデータの第１階層（層番号１）における第１のクラスタ、第２のクラスタ、第３のクラスタ、および第４のクラスタへの帰属重みは、それぞれ、０．０、０．８、０．０、および０．２である。ABC123である楽曲ＩＤで特定される楽曲のメタデータの第２階層（層番号２）における第５のクラスタ、第６のクラスタ、第７のクラスタ、および第８のクラスタへの帰属重みは、それぞれ、０．４、０．６、０．０、および０．０である。ABC123である楽曲ＩＤで特定される楽曲のメタデータの第３階層（層番号３）における第９のクラスタ、第１０のクラスタ、および第１１のクラスタへの帰属重みは、それぞれ、０．０、０．０、および１．０である。また、ABC123である楽曲ＩＤで特定される楽曲のメタデータの第ｎ階層（層番号ｎ）における４つのクラスタのそれぞれへの帰属重みは、それぞれ、１．０、０．０、０．０、および０．０である。
【０１４３】
例えば、CTH863である楽曲ＩＤで特定される楽曲のメタデータの第１階層における第１のクラスタ、第２のクラスタ、第３のクラスタ、および第４のクラスタへの帰属重みは、それぞれ、１．０、０．０、０．０、および０．０である。CTH863である楽曲ＩＤで特定される楽曲のメタデータの第２階層における第５のクラスタ、第６のクラスタ、第７のクラスタ、および第８のクラスタへの帰属重みは、それぞれ、０．０、０．５、０．５、および０．０である。CTH863である楽曲ＩＤで特定される楽曲のメタデータの第３階層における第９のクラスタ、第１０のクラスタ、および第１１のクラスタへの帰属重みは、それぞれ、０．７、０．３、および０．０である。また、CTH863である楽曲ＩＤで特定される楽曲のメタデータの第ｎ階層における４つのクラスタのそれぞれへの帰属重みは、それぞれ、０．０、０．８、０．２、および０．０である。
【０１４４】
例えば、XYZ567である楽曲ＩＤで特定される楽曲のメタデータの第１階層における第１のクラスタ、第２のクラスタ、第３のクラスタ、および第４のクラスタへの帰属重みは、それぞれ、０．０、０．４、０．６、および０．０である。XYZ567である楽曲ＩＤで特定される楽曲のメタデータの第２階層における第５のクラスタ、第６のクラスタ、第７のクラスタ、および第８のクラスタへの帰属重みは、それぞれ、０．０、０．０、０．０、および１．０である。XYZ567である楽曲ＩＤで特定される楽曲のメタデータの第３階層における第９のクラスタ、第１０のクラスタ、および第１１のクラスタへの帰属重みは、それぞれ、０．９、０．０、および０．１である。また、XYZ567である楽曲ＩＤで特定される楽曲のメタデータの第ｎ階層における４つのクラスタのそれぞれへの帰属重みは、それぞれ、０．３、０．０、０．０、および０．７である。
【０１４５】
なお、各楽曲のメタデータのソフトクラスタリングは、それぞれの階層内において、アイテム、すなわち楽曲の各クラスタへの帰属重みの和が１となるものに限られない。また、各アイテムが各階層において、いずれのクラスタに属さないものとしてもよい。
【０１４６】
ステップＳ２０３において、メタデータクラスタリング部２０１は、クラスタの層を割り当てる。
【０１４７】
ここで、図２０および図２１を参照して、メタデータのクラスタリングおよびクラスタの層の割り当てについて説明する。図２０は、メタデータの例を示す図である。図２０で示されるメタデータは、簡単のため、０または１のいずれかの値のカテゴリカルデータとされている。
【０１４８】
高次の分類としてのメタグループ１には、メタデータ１、メタデータ２、およびメタデータ３が属し、高次の分類としてのメタグループ２には、メタデータ４、メタデータ５、およびメタデータ６が属する。例えば、メタグループ１には、アーティストに関するメタデータが属し、メタデータ１は、アーティストの外観を示し、メタデータ２は、グループであることを示す。また、例えば、メタグループ２には、ジャンルに関するメタデータが属し、メタデータ４は、ポップスであることを示し、メタデータ５は、ロックであることを示す。
【０１４９】
図２０に示す例において、ABC123である楽曲ＩＤで特定される楽曲のメタデータ１乃至メタデータ６は、それぞれ、１，１，１，１，１，１であり、CTH863である楽曲ＩＤで特定される楽曲のメタデータ１乃至メタデータ６は、それぞれ、０，１，０，０，１，１であり、XYZ567である楽曲ＩＤで特定される楽曲のメタデータ１乃至メタデータ６は、それぞれ、１，１，１，１，１，１である。また、EKF534である楽曲ＩＤで特定される楽曲のメタデータ１乃至メタデータ６は、それぞれ、１，０，１，０，０，１であり、OPQ385である楽曲ＩＤで特定される楽曲のメタデータ１乃至メタデータ６は、それぞれ、１，０，１，１，０，０である。
【０１５０】
このとき、ABC123である楽曲ＩＤで特定される楽曲乃至OPQ385である楽曲ＩＤで特定される楽曲についての、メタデータ１をベクトルとみなす。同様に、ABC123である楽曲ＩＤで特定される楽曲乃至OPQ385である楽曲ＩＤで特定される楽曲についての、メタデータ２乃至メタデータ６のそれぞれをベクトルとみなす。すなわち、複数の楽曲についての１つのメタデータの値をベクトルとみなす。
【０１５１】
このベクトル同士の距離に注目する。
【０１５２】
図２０で示される例において、ベクトルとみなされたメタデータ１、メタデータ３、メタデータ４が、マンハッタン距離１以内のクラスタに、また、メタデータ２、メタデータ５、メタデータ６が、マンハッタン距離１以内の他のクラスタに、まとまっている。
【０１５３】
そこで、これらのクラスタを、新たなメタデータの階層とする。すなわち、階層のそれぞれの層に、より近いメタデータが割り付けられる。
【０１５４】
図２１は、このようにクラスタリングされ、層が割り付けられたメタデータの例を示す。図２１に示す例において、第１層には、メタデータ１、メタデータ３、およびメタデータ４が属し、第２層には、メタデータ２、メタデータ５、およびメタデータ６が属する。
【０１５５】
このように、相関の高いメタデータの集まりでそれぞれの層が形成され、その中で楽曲のクラスタリングが行われるので、ジャンルやアーティストなどをそのまま階層とするような通常の階層分けでは表現しきれない微妙な楽曲間の差をクラスタに反映することができる。
【０１５６】
図１８に戻り、ステップＳ２０４において、楽曲クラスタリング部２０２は、層毎に楽曲をクラスタリングして、処理は終了する。すなわち、楽曲クラスタリング部２０２は、各コンテンツを、割り当てられた階層のそれぞれにおいて複数のクラスタのいずれかに分類する。
【０１５７】
このようにすることで、メタデータによる楽曲の表現の詳細度（表現の詳細さの度合い）を保ったまま、データ量および計算量を削減して、楽曲をクラスタリングすることができる。
【０１５８】
また、以上のように、メタデータを階層化することにより、楽曲間の微妙な相違がよく表現されるように楽曲をクラスタリングすることができる。
【０１５９】
次に、図２２のフローチャートを参照して、第４の類似楽曲検索処理を説明する。ステップＳ２２１において、検索楽曲指定部２１は、類似元となる元楽曲を設定する。すなわち、例えば、ステップＳ２２１において、検索楽曲指定部２１は、クラスタマッピング部２２を介して、ユーザの指定に応じて、元楽曲の楽曲ＩＤを楽曲抽出部２３に出力することにより、元楽曲を設定する。
【０１６０】
ステップＳ２２２において、類似度算出部２７は、各クラスタの帰属重みから、元楽曲と、元楽曲以外の全ての楽曲のそれぞれとの類似度を計算する。
【０１６１】
例えば、楽曲抽出部２３は、楽曲ＩＤで特定される元楽曲のクラスタ情報と、元楽曲以外の全ての楽曲のクラスタ情報とを、クラスタ情報データベース１４から読み出す。そして、楽曲抽出部２３は、読み出したクラスタ情報を類似度算出部２７に供給する。類似度算出部２７は、元楽曲と元楽曲以外の全ての楽曲とのクラスタ情報で示される各クラスタの帰属重みから、元楽曲と、元楽曲以外の全ての楽曲のそれぞれとの類似度を計算する。
【０１６２】
より具体的には、例えば、楽曲クラスタリング部２０２により、各楽曲が、それぞれの階層内において、ソフトクラスタリングされ、各クラスタの帰属重みを示すクラスタ情報がクラスタ情報データベース１４に格納されている。
【０１６３】
図２３は、クラスタの帰属重みを示すクラスタ情報の例を示す図である。
【０１６４】
例えば、第１階層におけるクラスタである、ＣＬ１１であるクラスタＩＤで特定されるクラスタ、ＣＬ１２であるクラスタＩＤで特定されるクラスタ、ＣＬ１３であるクラスタＩＤで特定されるクラスタ、およびＣＬ１４であるクラスタＩＤで特定されるクラスタへの、ABC123である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、１．０、０．０、および０．２である。第２階層におけるクラスタである、ＣＬ２１であるクラスタＩＤで特定されるクラスタ、ＣＬ２２であるクラスタＩＤで特定されるクラスタ、ＣＬ２３であるクラスタＩＤで特定されるクラスタ、およびＣＬ２４であるクラスタＩＤで特定されるクラスタへの、ABC123である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．６、０．８、０．０、および０．０である。
【０１６５】
また、第３階層におけるクラスタである、ＣＬ３１であるクラスタＩＤで特定されるクラスタ、ＣＬ３２であるクラスタＩＤで特定されるクラスタ、およびＣＬ３３であるクラスタＩＤで特定されるクラスタへの、ABC123である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、０．０、および１．０である。さらに、第４階層におけるクラスタである、ＣＬ４１であるクラスタＩＤで特定されるクラスタ、ＣＬ４２であるクラスタＩＤで特定されるクラスタ、ＣＬ４３であるクラスタＩＤで特定されるクラスタ、およびＣＬ４４であるクラスタＩＤで特定されるクラスタへの、ABC123である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、１．０、０．０、０．０、および０．０である。
【０１６６】
例えば、第１階層におけるクラスタである、ＣＬ１１であるクラスタＩＤで特定されるクラスタ、ＣＬ１２であるクラスタＩＤで特定されるクラスタ、ＣＬ１３であるクラスタＩＤで特定されるクラスタ、およびＣＬ１４であるクラスタＩＤで特定されるクラスタへの、CTH863である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、１．０、０．０、０．０、および０．０である。第２階層におけるクラスタである、ＣＬ２１であるクラスタＩＤで特定されるクラスタ、ＣＬ２２であるクラスタＩＤで特定されるクラスタ、ＣＬ２３であるクラスタＩＤで特定されるクラスタ、およびＣＬ２４であるクラスタＩＤで特定されるクラスタへの、CTH863である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、０．７、０．７、および０．０である。
【０１６７】
また、第３階層におけるクラスタである、ＣＬ３１であるクラスタＩＤで特定されるクラスタ、ＣＬ３２であるクラスタＩＤで特定されるクラスタ、およびＣＬ３３であるクラスタＩＤで特定されるクラスタへの、CTH863である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．９、０．４、および０．０である。さらに、第４階層におけるクラスタである、ＣＬ４１であるクラスタＩＤで特定されるクラスタ、ＣＬ４２であるクラスタＩＤで特定されるクラスタ、ＣＬ４３であるクラスタＩＤで特定されるクラスタ、およびＣＬ４４であるクラスタＩＤで特定されるクラスタへの、CTH863である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、１．０、０．３、および０．０である。
【０１６８】
例えば、第１階層におけるクラスタである、ＣＬ１１であるクラスタＩＤで特定されるクラスタ、ＣＬ１２であるクラスタＩＤで特定されるクラスタ、ＣＬ１３であるクラスタＩＤで特定されるクラスタ、およびＣＬ１４であるクラスタＩＤで特定されるクラスタへの、XYZ567である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、０．６、０．８、および０．０である。第２階層におけるクラスタである、ＣＬ２１であるクラスタＩＤで特定されるクラスタ、ＣＬ２２であるクラスタＩＤで特定されるクラスタ、ＣＬ２３であるクラスタＩＤで特定されるクラスタ、およびＣＬ２４であるクラスタＩＤで特定されるクラスタへの、XYZ567である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、０．０、０．０、および１．０である。
【０１６９】
また、第３階層におけるクラスタである、ＣＬ３１であるクラスタＩＤで特定されるクラスタ、ＣＬ３２であるクラスタＩＤで特定されるクラスタ、およびＣＬ３３であるクラスタＩＤで特定されるクラスタへの、XYZ567である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、１．０、０．０、および０．１である。さらに、第４階層におけるクラスタである、ＣＬ４１であるクラスタＩＤで特定されるクラスタ、ＣＬ４２であるクラスタＩＤで特定されるクラスタ、ＣＬ４３であるクラスタＩＤで特定されるクラスタ、およびＣＬ４４であるクラスタＩＤで特定されるクラスタへの、XYZ567である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．５、０．０、０．０、および０．９である。
【０１７０】
例えば、第１階層におけるクラスタである、ＣＬ１１であるクラスタＩＤで特定されるクラスタ、ＣＬ１２であるクラスタＩＤで特定されるクラスタ、ＣＬ１３であるクラスタＩＤで特定されるクラスタ、およびＣＬ１４であるクラスタＩＤで特定されるクラスタへの、EKF534である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．９、０．０、０．０、および０．５である。第２階層におけるクラスタである、ＣＬ２１であるクラスタＩＤで特定されるクラスタ、ＣＬ２２であるクラスタＩＤで特定されるクラスタ、ＣＬ２３であるクラスタＩＤで特定されるクラスタ、およびＣＬ２４であるクラスタＩＤで特定されるクラスタへの、EKF534である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、０．６、０．０、および０．８である。
【０１７１】
また、第３階層におけるクラスタである、ＣＬ３１であるクラスタＩＤで特定されるクラスタ、ＣＬ３２であるクラスタＩＤで特定されるクラスタ、およびＣＬ３３であるクラスタＩＤで特定されるクラスタへの、EKF534である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．７、０．０、および０．７である。さらに、第４階層におけるクラスタである、ＣＬ４１であるクラスタＩＤで特定されるクラスタ、ＣＬ４２であるクラスタＩＤで特定されるクラスタ、ＣＬ４３であるクラスタＩＤで特定されるクラスタ、およびＣＬ４４であるクラスタＩＤで特定されるクラスタへの、EKF534である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、０．９、０．４、および０．３である。
【０１７２】
例えば、第１階層におけるクラスタである、ＣＬ１１であるクラスタＩＤで特定されるクラスタ、ＣＬ１２であるクラスタＩＤで特定されるクラスタ、ＣＬ１３であるクラスタＩＤで特定されるクラスタ、およびＣＬ１４であるクラスタＩＤで特定されるクラスタへの、OPQ385である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．７、０．２、０．６、および０．０である。第２階層におけるクラスタである、ＣＬ２１であるクラスタＩＤで特定されるクラスタ、ＣＬ２２であるクラスタＩＤで特定されるクラスタ、ＣＬ２３であるクラスタＩＤで特定されるクラスタ、およびＣＬ２４であるクラスタＩＤで特定されるクラスタへの、OPQ385である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、１．０、０．０、０．０、および０．０である。
【０１７３】
また、第３階層におけるクラスタである、ＣＬ３１であるクラスタＩＤで特定されるクラスタ、ＣＬ３２であるクラスタＩＤで特定されるクラスタ、およびＣＬ３３であるクラスタＩＤで特定されるクラスタへの、OPQ385である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、１．０、および０．０である。さらに、第４階層におけるクラスタである、ＣＬ４１であるクラスタＩＤで特定されるクラスタ、ＣＬ４２であるクラスタＩＤで特定されるクラスタ、ＣＬ４３であるクラスタＩＤで特定されるクラスタ、およびＣＬ４４であるクラスタＩＤで特定されるクラスタへの、OPQ385である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．４、０．９、０．０、および０．０である。
【０１７４】
例えば、類似度算出部２７は、iである楽曲ＩＤで特定される元楽曲とjである楽曲ＩＤで特定される楽曲との類似度sim（i,j）を、それぞれの楽曲のクラスタへの帰属重みから、式（１）で示される演算で計算する。
【０１７５】
【数１】
0004752623.tif 000002
【０１７６】
式（１）において、Lは、階層の数を示す値であり、lは、階層を特定する値である。C(l)は、クラスタの全体を示し、cは、クラスタを特定する値である。wilcは、iである楽曲ＩＤで特定される元楽曲の、第l層の第cクラスタの帰属重みを示す。wjlcは、jである楽曲ＩＤで特定される楽曲の、第l層の第cクラスタの帰属重みを示す。
【０１７７】
図２４は、クラスタの帰属重みを示す図２３のクラスタ情報から、式（１）で示される演算により計算された類似度の例を示す図である。なお、図２４において、ABC123である楽曲ＩＤで特定される元楽曲に対する、CTH863乃至OPQ385のそれぞれの楽曲ＩＤで特定される楽曲のそれぞれについての類似度が示されている。
【０１７８】
図２４で示されるように、図２３のクラスタ情報を基に、ABC123である楽曲ＩＤで特定される元楽曲に対して、CTH863乃至OPQ385のそれぞれの楽曲ＩＤで特定される楽曲のそれぞれの類似度を式（１）で示される演算で計算すると、CTH863乃至OPQ385のそれぞれの楽曲ＩＤで特定される楽曲のそれぞれの類似度は、０．５７、１．１８、１．２７、１．２０となる。
【０１７９】
例えば、ステップＳ２２２において、類似度算出部２７は、式（１）で示される演算により、それぞれ、０．５７、１．１８、１．２７、１．２０である、ABC123である楽曲ＩＤで特定される元楽曲に対する、CTH863乃至OPQ385のそれぞれの楽曲ＩＤで特定される楽曲のそれぞれの類似度を計算する。
【０１８０】
ステップＳ２２３において、類似度算出部２７は、類似度を基に、元楽曲に類似している順に、元楽曲以外の全ての楽曲をソートする。
【０１８１】
より具体的には、類似度算出部２７は、計算の結果得られた楽曲の類似度と、楽曲の楽曲ＩＤとを対応付けて、類似度を基に、元楽曲に類似している順に楽曲の楽曲ＩＤを並び替えることにより、元楽曲に類似している順に、元楽曲以外の全ての楽曲をソートする。
【０１８２】
ステップＳ２２４において、類似度算出部２７は、ソートされた楽曲のうち、任意の数の上位の楽曲を選択する。類似度算出部２７は、選択した楽曲の楽曲ＩＤを選択理由生成部２８に供給する。
【０１８３】
例えば、ステップＳ２２４において、類似度算出部２７は、最上位の楽曲を選択して、最上位の楽曲の楽曲ＩＤを選択理由生成部２８に供給する。または、例えば、ステップＳ２２４において、類似度算出部２７は、上位１０曲の楽曲を選択して、上位１０曲の楽曲の楽曲ＩＤを選択理由生成部２８に供給する。
【０１８４】
ステップＳ２２５において、選択理由生成部２８は、類似度算出部２７によって選択された楽曲が選択された理由を示す選択理由文を生成して、選択された楽曲の楽曲ＩＤとともに楽曲提示部２９に出力する。ステップＳ２２６において、楽曲提示部２９は、選択理由生成部２８から入力される楽曲ＩＤの楽曲と選択理由文とをユーザに提示して、処理は終了する。
【０１８５】
次に、図２５のフローチャートを参照して、第５の類似楽曲検索処理を説明する。ステップＳ２４１乃至ステップＳ２５１のそれぞれは、図１１のステップＳ１乃至ステップＳ１１のそれぞれと同様なので、その説明は省略する。
【０１８６】
ステップＳ２５２において、類似度算出部２７は、楽曲抽出部２３から供給された、集合Ｃの要素（楽曲ＩＤ）を基に、各クラスタの帰属重みから、元楽曲と、集合Ｃの楽曲のそれぞれとの類似度を計算する。例えば、ステップＳ２５２において、類似度算出部２７は、式（１）で示される演算により、元楽曲と集合Ｃの楽曲のそれぞれとの類似度を計算する。
【０１８７】
ステップＳ２５３において、類似度算出部２７は、類似度を基に、元楽曲に類似している順に、集合Ｃの楽曲をソートする。
【０１８８】
より具体的には、類似度算出部２７は、計算の結果得られた類似度と、集合Ｃの楽曲の楽曲ＩＤとを対応付けて、類似度を基に、集合Ｃの楽曲の楽曲ＩＤを並び替えることにより、元楽曲に類似している順に、集合Ｃの楽曲をソートする。
【０１８９】
ステップＳ２５４において、類似度算出部２７は、ソートされた楽曲のうち、任意の数の上位の楽曲を選択する。類似度算出部２７は、選択した楽曲の楽曲ＩＤを選択理由生成部２８に供給する。
【０１９０】
例えば、ステップＳ２５４において、類似度算出部２７は、最上位の楽曲を選択して、最上位の楽曲の楽曲ＩＤを選択理由生成部２８に供給する。または、例えば、ステップＳ２５４において、類似度算出部２７は、上位１０曲の楽曲を選択して、上位１０曲の楽曲の楽曲ＩＤを選択理由生成部２８に供給する。
【０１９１】
ステップＳ２５５において、選択理由生成部２８は、類似度算出部２７によって選択された楽曲が選択された理由を示す選択理由文を生成して、選択された楽曲の楽曲ＩＤとともに楽曲提示部２９に出力する。ステップＳ２５６において、楽曲提示部２９は、選択理由生成部２８から入力される楽曲ＩＤの楽曲と選択理由文とをユーザに提示して、処理は終了する。
【０１９２】
次に、図２６のフローチャートを参照して、第３の楽曲推薦処理を説明する。ステップＳ２６１乃至ステップＳ２７０のそれぞれは、図１４のステップＳ９１乃至ステップＳ１００のそれぞれと同様なので、その説明は省略する。
【０１９３】
ステップＳ２７１において、類似度算出部２７は、楽曲抽出部２３から供給された、集合Ｃの要素（楽曲ＩＤ）を基に、各クラスタの帰属重みを示すユーザの嗜好値と、集合Ｃの楽曲のそれぞれのクラスタ情報であって、各クラスタの帰属重みを示すクラスタ情報との類似度を計算する。
【０１９４】
ここで、図２７乃至図３１を参照して、ユーザの嗜好値と、集合Ｃの楽曲のそれぞれのクラスタ情報との類似度を説明する。
【０１９５】
例えば、嗜好情報データベース２４は、ソフトクラスタリングされ、それぞれの階層内において、各クラスタの帰属重みを示す嗜好値を記録している。
【０１９６】
図２７は、各クラスタの帰属重みを示す嗜好値の例を示す図である。
【０１９７】
例えば、第１階層におけるクラスタである、ＣＬ１１であるクラスタＩＤで特定されるクラスタ、ＣＬ１２であるクラスタＩＤで特定されるクラスタ、ＣＬ１３であるクラスタＩＤで特定されるクラスタ、およびＣＬ１４であるクラスタＩＤで特定されるクラスタへの、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みは、それぞれ、０．０、０．８、０．０、および０．６である。第２階層におけるクラスタである、ＣＬ２１であるクラスタＩＤで特定されるクラスタ、ＣＬ２２であるクラスタＩＤで特定されるクラスタ、ＣＬ２３であるクラスタＩＤで特定されるクラスタ、およびＣＬ２４であるクラスタＩＤで特定されるクラスタへの、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みは、それぞれ、０．４、０．６、０．７、および０．０である。
【０１９８】
また、第３階層におけるクラスタである、ＣＬ３１であるクラスタＩＤで特定されるクラスタ、ＣＬ３２であるクラスタＩＤで特定されるクラスタ、およびＣＬ３３であるクラスタＩＤで特定されるクラスタへの、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みは、それぞれ、０．７、０．５、および０．５である。さらに、第４階層におけるクラスタである、ＣＬ４１であるクラスタＩＤで特定されるクラスタ、ＣＬ４２であるクラスタＩＤで特定されるクラスタ、ＣＬ４３であるクラスタＩＤで特定されるクラスタ、およびＣＬ４４であるクラスタＩＤで特定されるクラスタへの、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みは、それぞれ、０．０、０．５、０．４、および０．０である。
【０１９９】
図２８は、各クラスタの帰属重みを示すクラスタ情報の例を示す図である。
【０２００】
例えば、第１階層におけるクラスタである、ＣＬ１１であるクラスタＩＤで特定されるクラスタ、ＣＬ１２であるクラスタＩＤで特定されるクラスタ、ＣＬ１３であるクラスタＩＤで特定されるクラスタ、およびＣＬ１４であるクラスタＩＤで特定されるクラスタへの、ABC123である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、１．０、０．０、および０．２である。第２階層におけるクラスタである、ＣＬ２１であるクラスタＩＤで特定されるクラスタ、ＣＬ２２であるクラスタＩＤで特定されるクラスタ、ＣＬ２３であるクラスタＩＤで特定されるクラスタ、およびＣＬ２４であるクラスタＩＤで特定されるクラスタへの、ABC123である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．６、０．８、０．０、および０．０である。
【０２０１】
また、第３階層におけるクラスタである、ＣＬ３１であるクラスタＩＤで特定されるクラスタ、ＣＬ３２であるクラスタＩＤで特定されるクラスタ、およびＣＬ３３であるクラスタＩＤで特定されるクラスタへの、ABC123である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、０．０、および１．０である。さらに、第４階層におけるクラスタである、ＣＬ４１であるクラスタＩＤで特定されるクラスタ、ＣＬ４２であるクラスタＩＤで特定されるクラスタ、ＣＬ４３であるクラスタＩＤで特定されるクラスタ、およびＣＬ４４であるクラスタＩＤで特定されるクラスタへの、ABC123である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、１．０、０．０、０．０、および０．０である。
【０２０２】
例えば、第１階層におけるクラスタである、ＣＬ１１であるクラスタＩＤで特定されるクラスタ、ＣＬ１２であるクラスタＩＤで特定されるクラスタ、ＣＬ１３であるクラスタＩＤで特定されるクラスタ、およびＣＬ１４であるクラスタＩＤで特定されるクラスタへの、CTH863である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、１．０、０．０、０．０、および０．０である。第２階層におけるクラスタである、ＣＬ２１であるクラスタＩＤで特定されるクラスタ、ＣＬ２２であるクラスタＩＤで特定されるクラスタ、ＣＬ２３であるクラスタＩＤで特定されるクラスタ、およびＣＬ２４であるクラスタＩＤで特定されるクラスタへの、CTH863である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、０．７、０．７、および０．０である。
【０２０３】
また、第３階層におけるクラスタである、ＣＬ３１であるクラスタＩＤで特定されるクラスタ、ＣＬ３２であるクラスタＩＤで特定されるクラスタ、およびＣＬ３３であるクラスタＩＤで特定されるクラスタへの、CTH863である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．９、０．４、および０．０である。さらに、第４階層におけるクラスタである、ＣＬ４１であるクラスタＩＤで特定されるクラスタ、ＣＬ４２であるクラスタＩＤで特定されるクラスタ、ＣＬ４３であるクラスタＩＤで特定されるクラスタ、およびＣＬ４４であるクラスタＩＤで特定されるクラスタへの、CTH863である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、１．１、０．３、および０．０である。
【０２０４】
例えば、第１階層におけるクラスタである、ＣＬ１１であるクラスタＩＤで特定されるクラスタ、ＣＬ１２であるクラスタＩＤで特定されるクラスタ、ＣＬ１３であるクラスタＩＤで特定されるクラスタ、およびＣＬ１４であるクラスタＩＤで特定されるクラスタへの、XYZ567である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、０．６、０．８、および０．０である。第２階層におけるクラスタである、ＣＬ２１であるクラスタＩＤで特定されるクラスタ、ＣＬ２２であるクラスタＩＤで特定されるクラスタ、ＣＬ２３であるクラスタＩＤで特定されるクラスタ、およびＣＬ２４であるクラスタＩＤで特定されるクラスタへの、XYZ567である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．０、０．０、０．０、および１．０である。
【０２０５】
また、第３階層におけるクラスタである、ＣＬ３１であるクラスタＩＤで特定されるクラスタ、ＣＬ３２であるクラスタＩＤで特定されるクラスタ、およびＣＬ３３であるクラスタＩＤで特定されるクラスタへの、XYZ567である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、１．０、０．０、および０．１である。さらに、第４階層におけるクラスタである、ＣＬ４１であるクラスタＩＤで特定されるクラスタ、ＣＬ４２であるクラスタＩＤで特定されるクラスタ、ＣＬ４３であるクラスタＩＤで特定されるクラスタ、およびＣＬ４４であるクラスタＩＤで特定されるクラスタへの、XYZ567である楽曲ＩＤで特定される楽曲の帰属重みは、それぞれ、０．４、０．０、０．０、および０．７である。
【０２０６】
例えば、類似度算出部２７は、ユーザの嗜好値におけるクラスタへの帰属重みと、iである楽曲ＩＤで特定される楽曲のクラスタ情報におけるクラスタへの帰属重みとから、式（２）で示される演算で類似度sim（u,i）を計算する。
【０２０７】
【数２】
0004752623.tif 000003
【０２０８】
式（２）において、Lは、階層の数を示す値であり、lは、階層を特定する値である。C(l)は、クラスタの全体を示し、cは、クラスタを特定する値である。wilcは、iである楽曲ＩＤで特定される楽曲のクラスタ情報の、第l層の第cクラスタの帰属重みを示す。hulcは、ユーザuの嗜好値の第l層の第cクラスタの帰属重みを示す。
【０２０９】
図２９は、図２７のクラスタの帰属重みを示す嗜好値と、図２８のクラスタの帰属重みを示すクラスタ情報とから、式（２）で示される演算により計算された類似度の例を示す図である。
【０２１０】
U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みのうちの、第１層の帰属重みと、ABC123である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みのうちの、第１層の帰属重みとが、対応する帰属重み同士で乗算され、乗算された結果が積算されると、図２９のABC123である楽曲ＩＤに対する第１層に配置した値である０．９１が求められる。同様に、第２層、第３層、および第４層について、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みと、ABC123である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みとが、対応する帰属重み同士で乗算され、乗算された結果が積算されると、図２９のABC123である楽曲ＩＤに対する第２層、第３層、および第４層のそれぞれに配置した値である０．６７、０．５３、０．００が求められる。
【０２１１】
最終的に、U001であるユーザＩＤで特定されるユーザの嗜好値とABC123である楽曲ＩＤで特定される楽曲のクラスタ情報との類似度は、第１層、第２層、第３層、および第４層のそれぞれについて求められた０．９１、０．６７、０．５３、および０．００を加算した値である２．１１とされる。
【０２１２】
U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みのうちの、第１層の帰属重みと、CTH863である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みのうちの、第１層の帰属重みとが、対応する帰属重み同士で乗算され、乗算された結果が積算されると、図２９のCTH863である楽曲ＩＤに対する第１層に配置した値である０．００が求められる。同様に、第２層、第３層、および第４層について、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みと、CTH863である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みとが、対応する帰属重み同士で乗算され、乗算された結果が積算されると、図２９のCTH863である楽曲ＩＤに対する第２層、第３層、および第４層のそれぞれに配置した値である０．９２、０．８２、０．６３が求められる。
【０２１３】
最終的に、U001であるユーザＩＤで特定されるユーザの嗜好値とCTH863である楽曲ＩＤで特定される楽曲のクラスタ情報との類似度は、第１層、第２層、第３層、および第４層のそれぞれについて求められた０．００、０．９２、０．８２、および０．６３を加算した値である２．３７とされる。
【０２１４】
U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みのうちの、第１層の帰属重みと、XYZ567である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みのうちの、第１層の帰属重みとが、対応する帰属重み同士で乗算され、乗算された結果が積算されると、図２９のXYZ567である楽曲ＩＤに対する第１層に配置した値である０．４４が求められる。同様に、第２層、第３層、および第４層について、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みと、XYZ567である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みとが、対応する帰属重み同士で乗算され、乗算された結果が積算されると、図２９のXYZ567である楽曲ＩＤに対する第２層、第３層、および第４層のそれぞれに配置した値である０．００、０．７２、０．００が求められる。
【０２１５】
最終的に、U001であるユーザＩＤで特定されるユーザの嗜好値とXYZ567である楽曲ＩＤで特定される楽曲のクラスタ情報との類似度は、第１層、第２層、第３層、および第４層のそれぞれについて求められた０．４４、０．００、０．７２、および０．００を加算した値である１．１５とされる。
【０２１６】
また、各階層における、ユーザの嗜好値の帰属重みの分布に基づいた重みを用いて類似度を計算するようにしてもよい。
【０２１７】
例えば、類似度算出部２７は、ユーザの嗜好値におけるクラスタへの帰属重みと、iである楽曲ＩＤで特定される楽曲のクラスタ情報におけるクラスタへの帰属重みとから、式（３）で示される演算で類似度sim（u,i）を計算する。
【０２１８】
【数３】
0004752623.tif 000004
【０２１９】
式（３）において、Lは、階層の数を示す値であり、lは、階層を特定する値である。C(l)は、クラスタの全体を示し、cは、クラスタを特定する値である。wilcは、iである楽曲ＩＤで特定される楽曲のクラスタ情報の、第l層の第cクラスタの帰属重みを示す。hulcは、ユーザuの嗜好値の第l層の第cクラスタの帰属重みを示す。ｂulは、ユーザuの嗜好値の第l層についての重みを示す。
【０２２０】
図３０は、ユーザの嗜好値のそれぞれの階層の帰属重みの分散である、階層毎の重みの例を示す図である。図３０に示す例において、U001であるユーザＩＤで特定されるユーザのについての第１層の重み、第２層の重み、第３層の重み、および第４層の重みは、それぞれ、０．１７、０．１０、０．０１、および０．０６である。
【０２２１】
図３１は、図２７のクラスタの帰属重みを示す嗜好値と、図２８のクラスタの帰属重みを示すクラスタ情報と、図３０の階層毎の重みとから、式（３）で示される演算により計算された類似度の例を示す図である。なお、図３１に示す類似度は、式（３）で示される演算により計算された結果を１０倍したものである。
【０２２２】
U001であるユーザＩＤで特定されるユーザの嗜好値の第１層の帰属重みと、ユーザの嗜好値の帰属重みに対応する、ABC123である楽曲ＩＤで特定される楽曲のクラスタ情報の第１層の帰属重みと、第１の層の重みとが乗算され、乗算された結果が積算されると、図３１のABC123である楽曲ＩＤに対する第１層に配置した値である１．２７が求められる。同様に、第２層、第３層、および第４層について、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みと、ユーザの嗜好値の帰属重みに対応する、ABC123である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みと、第２層、第３層、または第４層のうちのその層の重みとが乗算され、乗算された結果が積算されると、図３１のABC123である楽曲ＩＤに対する第２層、第３層、および第４層のそれぞれに配置した値である０．４９、０．０３、０．００が求められる。
【０２２３】
最終的に、U001であるユーザＩＤで特定されるユーザの嗜好値とABC123である楽曲ＩＤで特定される楽曲のクラスタ情報との類似度は、第１層、第２層、第３層、および第４層のそれぞれについて求められた１．２７、０．４９、０．０３、および０．００を加算した値である１．７９とされる。
【０２２４】
U001であるユーザＩＤで特定されるユーザの嗜好値の第１層の帰属重みと、ユーザの嗜好値の帰属重みに対応する、CTH863である楽曲ＩＤで特定される楽曲のクラスタ情報の第１層の帰属重みと、第１の層の重みとが乗算され、乗算された結果が積算されると、図３１のCTH863である楽曲ＩＤに対する第１層に配置した値である０．００が求められる。同様に、第２層、第３層、および第４層について、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みと、ユーザの嗜好値の帰属重みに対応する、CTH863である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みと、第２層、第３層、または第４層のうちのその層の重みとが乗算され、乗算された結果が積算されると、図３１のCTH863である楽曲ＩＤに対する第２層、第３層、および第４層のそれぞれに配置した値である０．６５、０．０４、０．２７が求められる。
【０２２５】
最終的に、U001であるユーザＩＤで特定されるユーザの嗜好値とCTH863である楽曲ＩＤで特定される楽曲のクラスタ情報との類似度は、第１層、第２層、第３層、および第４層のそれぞれについて求められた０．００、０．６５、０．０４、および０．２７を加算した値である０．９６とされる。
【０２２６】
U001であるユーザＩＤで特定されるユーザの嗜好値の第１層の帰属重みと、ユーザの嗜好値の帰属重みに対応する、XYZ567である楽曲ＩＤで特定される楽曲のクラスタ情報の第１層の帰属重みと、第１の層の重みとが乗算され、乗算された結果が積算されると、図３１のXYZ567である楽曲ＩＤに対する第１層に配置した値である０．５３が求められる。同様に、第２層、第３層、および第４層について、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みと、ユーザの嗜好値の帰属重みに対応する、XYZ567である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みと、第２層、第３層、または第４層のうちのその層の重みとが乗算され、乗算された結果が積算されると、図３１のXYZ567である楽曲ＩＤに対する第２層、第３層、および第４層のそれぞれに配置した値である０．００、０．０４、０．００が求められる。
【０２２７】
最終的に、U001であるユーザＩＤで特定されるユーザの嗜好値とXYZ567である楽曲ＩＤで特定される楽曲のクラスタ情報との類似度は、第１層、第２層、第３層、および第４層のそれぞれについて求められた０．５３、０．００、０．０４、および０．００を加算した値である０．５７とされる。
【０２２８】
図２７で示される嗜好値に注目すると、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みの値は、第２層乃至第４層に比較して、第１層において大きく変化しているので、第２層乃至第４層に比較して、第１層の各要素の値が、U001であるユーザＩＤで特定されるユーザの嗜好により関係すると予測される。
【０２２９】
このように、重み付けすることによって、ユーザの嗜好にあまり関係しないと予測される値に比較して、ユーザの嗜好により関係すると予測される値によって、その値がより大きく変化する類似度を求めることができるので、より正確に、ユーザの好む楽曲を検出することができる。
【０２３０】
図２６に戻り、ステップＳ２７２において、類似度算出部２７は、類似度を基に、ユーザの嗜好に類似している順に、集合Ｃの楽曲をソートする。
【０２３１】
より具体的には、類似度算出部２７は、計算の結果得られた類似度と、集合Ｃの楽曲の楽曲ＩＤとを対応付けて、類似度を基に、集合Ｃの楽曲の楽曲ＩＤを並び替えることにより、ユーザの嗜好に類似している順に、集合Ｃの楽曲をソートする。
【０２３２】
ステップＳ２７３において、類似度算出部２７は、ソートされた楽曲のうち、任意の数の上位の楽曲を選択する。類似度算出部２７は、選択した楽曲の楽曲ＩＤを選択理由生成部２８に供給する。
【０２３３】
例えば、式（２）で示される演算により類似度が計算され、ABC123である楽曲ＩＤで特定される楽曲についての類似度が２．１１とされ、CTH863である楽曲ＩＤで特定される楽曲についての類似度が２．３７とされ、XYZ567である楽曲ＩＤで特定される楽曲についての類似度が１．１５とされた場合、１つの楽曲を選択するとき、類似度が最大である、CTH863である楽曲ＩＤで特定される楽曲が選択されることになる。
【０２３４】
また、例えば、式（３）で示される演算により、各階層における、ユーザの嗜好値の帰属重みの分布に基づいた重みを用いて類似度が計算され、ABC123である楽曲ＩＤで特定される楽曲についての類似度が１．７９とされ、CTH863である楽曲ＩＤで特定される楽曲についての類似度が０．９６とされ、XYZ567である楽曲ＩＤで特定される楽曲についての類似度が０．５７とされた場合、１つの楽曲を選択するとき、類似度が最大である、ABC123である楽曲ＩＤで特定される楽曲が選択されることになる。
【０２３５】
ステップＳ２７４において、選択理由生成部２８は、類似度算出部２７によって選択された楽曲が選択された理由を示す選択理由文を生成して、選択された楽曲の楽曲ＩＤとともに楽曲提示部２９に出力する。ステップＳ２７５において、楽曲提示部２９は、選択理由生成部２８から入力される楽曲ＩＤの楽曲と選択理由文とをユーザに提示して、処理は終了する。
【０２３６】
次に、図３２のフローチャートを参照して、第４の楽曲推薦処理を説明する。ステップＳ２８１乃至ステップＳ２８４のそれぞれは、図１５のステップＳ１２１乃至ステップＳ１２４のそれぞれと同様なので、その説明は省略する。
【０２３７】
ステップＳ２８５において、楽曲抽出部２３は、特定した各クラスタにそれぞれ対応する嗜好値と第ｉ層の重みに基づき評価値を決定する。
【０２３８】
図３３は、図２７で示される嗜好値の帰属重みのうち、０．６である閾値以上の帰属重みからなる嗜好値の例を示す図である。
【０２３９】
すなわち、図２７で示される嗜好値の帰属重みのうち、０．６未満である帰属重みが０．０に置き換えられることにより、図３３で示される嗜好値が求められる。
【０２４０】
例えば、第１階層におけるクラスタである、ＣＬ１１であるクラスタＩＤで特定されるクラスタ、ＣＬ１２であるクラスタＩＤで特定されるクラスタ、ＣＬ１３であるクラスタＩＤで特定されるクラスタ、およびＣＬ１４であるクラスタＩＤで特定されるクラスタへの、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みは、それぞれ、０．０、０．８、０．０、および０．６である。第２階層におけるクラスタである、ＣＬ２１であるクラスタＩＤで特定されるクラスタ、ＣＬ２２であるクラスタＩＤで特定されるクラスタ、ＣＬ２３であるクラスタＩＤで特定されるクラスタ、およびＣＬ２４であるクラスタＩＤで特定されるクラスタへの、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みは、それぞれ、０．０、０．６、０．７、および０．０である。
【０２４１】
また、第３階層におけるクラスタである、ＣＬ３１であるクラスタＩＤで特定されるクラスタ、ＣＬ３２であるクラスタＩＤで特定されるクラスタ、およびＣＬ３３であるクラスタＩＤで特定されるクラスタへの、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みは、それぞれ、０．７、０．０、および０．０である。さらに、第４階層におけるクラスタである、ＣＬ４１であるクラスタＩＤで特定されるクラスタ、ＣＬ４２であるクラスタＩＤで特定されるクラスタ、ＣＬ４３であるクラスタＩＤで特定されるクラスタ、およびＣＬ４４であるクラスタＩＤで特定されるクラスタへの、U001であるユーザＩＤで特定されるユーザの嗜好値の帰属重みは、それぞれ、０．０、０．０、０．０、および０．０である。
【０２４２】
例えば、ステップＳ２８５において、楽曲抽出部２３は、閾値以上の帰属重みからなる嗜好値におけるクラスタへの帰属重みと、iである楽曲ＩＤで特定される楽曲のクラスタ情報におけるクラスタへの帰属重みとから、式（３）で示される演算で類似度を計算する。すなわち、元の嗜好値の帰属重みのうち、例えば０．６である閾値未満の帰属重みと乗算されて求められる値は、類似度に加算されず、元の嗜好値の帰属重みのうち、閾値以上である帰属重みと乗算されて求められる値は、類似度に加算されることになる。
【０２４３】
図３４は、図３３の閾値以上の帰属重みからなる嗜好値と、図２８のクラスタの帰属重みを示すクラスタ情報と、図３０の階層毎の重みとから、式（３）で示される演算により計算された類似度の例を示す図である。
【０２４４】
U001であるユーザＩＤで特定されるユーザの嗜好値であって、閾値以上の帰属重みからなる嗜好値の第１層の帰属重みと、ユーザの嗜好値の帰属重みに対応する、ABC123である楽曲ＩＤで特定される楽曲のクラスタ情報の第１層の帰属重みと、第１の層の重みとが乗算され、乗算された結果が積算されると、図３４のABC123である楽曲ＩＤに対する第１層に配置した値である０．１５が求められる。同様に、第２層、第３層、および第４層について、U001であるユーザＩＤで特定されるユーザの嗜好値であって、閾値以上の帰属重みからなる嗜好値の帰属重みと、ユーザの嗜好値の帰属重みに対応する、ABC123である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みと、第２層、第３層、または第４層のうちのその層の重みとが乗算され、乗算された結果が積算されると、図３４のABC123である楽曲ＩＤに対する第２層、第３層、および第４層のそれぞれに配置した値である０．０５、０．００、０．００が求められる。
【０２４５】
最終的に、U001であるユーザＩＤで特定されるユーザの嗜好値とABC123である楽曲ＩＤで特定される楽曲のクラスタ情報との類似度は、第１層、第２層、第３層、および第４層のそれぞれについて求められた０．１５、０．０５、０．００、および０．００を加算した値である０．２０とされる。
【０２４６】
U001であるユーザＩＤで特定されるユーザの嗜好値であって、閾値以上の帰属重みからなる嗜好値の第１層の帰属重みと、ユーザの嗜好値の帰属重みに対応する、CTH863である楽曲ＩＤで特定される楽曲のクラスタ情報の第１層の帰属重みと、第１の層の重みとが乗算され、乗算された結果が積算されると、図３４のCTH863である楽曲ＩＤに対する第１層に配置した値である０．００が求められる。同様に、第２層、第３層、および第４層について、U001であるユーザＩＤで特定されるユーザの嗜好値であって、閾値以上の帰属重みからなる嗜好値の帰属重みと、ユーザの嗜好値の帰属重みに対応する、CTH863である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みと、第２層、第３層、または第４層のうちのその層の重みとが乗算され、乗算された結果が積算されると、図３４のCTH863である楽曲ＩＤに対する第２層、第３層、および第４層のそれぞれに配置した値である０．１０、０．００、０．００が求められる。
【０２４７】
最終的に、U001であるユーザＩＤで特定されるユーザの嗜好値とCTH863である楽曲ＩＤで特定される楽曲のクラスタ情報との類似度は、第１層、第２層、第３層、および第４層のそれぞれについて求められた０．００、０．１０、０．００、および０．００を加算した値である０．１０とされる。
【０２４８】
U001であるユーザＩＤで特定されるユーザの嗜好値であって、閾値以上の帰属重みからなる嗜好値の第１層の帰属重みと、ユーザの嗜好値の帰属重みに対応する、XYZ567である楽曲ＩＤで特定される楽曲のクラスタ情報の第１層の帰属重みと、第１の層の重みとが乗算され、乗算された結果が積算されると、図３４のXYZ567である楽曲ＩＤに対する第１層に配置した値である０．０７が求められる。同様に、第２層、第３層、および第４層について、U001であるユーザＩＤで特定されるユーザの嗜好値であって、閾値以上の帰属重みからなる嗜好値の帰属重みと、ユーザの嗜好値の帰属重みに対応する、XYZ567である楽曲ＩＤで特定される楽曲のクラスタ情報の帰属重みと、第２層、第３層、または第４層のうちのその層の重みとが乗算され、乗算された結果が積算されると、図３４のXYZ567である楽曲ＩＤに対する第２層、第３層、および第４層のそれぞれに配置した値である０．００、０．００、０．００が求められる。
【０２４９】
最終的に、U001であるユーザＩＤで特定されるユーザの嗜好値とXYZ567である楽曲ＩＤで特定される楽曲のクラスタ情報との類似度は、第１層、第２層、第３層、および第４層のそれぞれについて求められた０．０７、０．００、０．００、および０．００を加算した値である０．０８とされる。
【０２５０】
ステップＳ２８６乃至ステップＳ２９２のそれぞれは、図１５のステップＳ１２６乃至ステップＳ１３２のそれぞれと同様なので、その説明は省略する。
【０２５１】
なお、それぞれの階層に属する帰属重みの分散である重みを用いると説明したが、これに限らず、階層における帰属重みのばらつきが大きい場合により大きい値となる重みを計算すればよく、例えば、式（４）によりエントロピーHを算出し、１からエントロピーHを引き算した結果得られる値である重みを計算するようにしてもよい。
【数４】
0004752623.tif 000005
【０２５２】
このように、情報の欠落を最小限に抑えつつ、適切なコンテンツを選択するための計算量を削減することができる。また、利用者がどのような情報に着目してコンテンツを選択しているかを確実に反映したコンテンツを提示することができるようになる。
【０２５３】
なお、本明細書において、プログラムに基づいて実行されるステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２５４】
また、プログラムは、１台のコンピュータにより処理されるものであってもよいし、複数のコンピュータによって分散処理されるものであってもよい。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであってもよい。
【０２５５】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【図面の簡単な説明】
【０２５６】
【図１】本発明を適用した推薦システムの構成例を示すブロック図である。
【図２】メタデータを分類するクラスタとクラスタ層の概念を示す図である。
【図３】クラスタ情報の一例を示す図である。
【図４】クラスタ−楽曲ＩＤ情報の一例を示す図である。
【図５】嗜好情報の一例を示す図である。
【図６】クラスタリング第１乃至４手法から２種類の手法を選択する方法を説明するための図である。
【図７】クラスタリング第１乃至４手法から２種類の手法を選択する方法を説明するための図である。
【図８】クラスタリング第１乃至４手法から２種類の手法を選択する方法を説明するための図である。
【図９】クラスタリング第１乃至４手法から２種類の手法を選択する方法を説明するための図である。
【図１０】クラスタリング第１乃至４手法から２種類の手法を選択する方法を説明するための図である。
【図１１】第１の類似楽曲検索処理を説明するフローチャートである。
【図１２】第２の類似楽曲検索処理を説明するフローチャートである。
【図１３】第３の類似楽曲検索処理を説明するフローチャートである。
【図１４】第１の楽曲推薦処理を説明するフローチャートである。
【図１５】第２の楽曲推薦処理を説明するフローチャートである。
【図１６】汎用パーソナルコンピュータの構成例を示すブロック図である。
【図１７】本発明の一実施の形態の推薦システムの他の構成の例を示すブロック図である。
【図１８】オフライン時の前処理の例を説明するフローチャートである。
【図１９】ソフトクラスタリングされた各楽曲のメタデータの例を示す図である。
【図２０】各楽曲のメタデータの例を示す図である。
【図２１】クラスタ情報の例を示す図である。
【図２２】第４の類似楽曲検索処理を説明するフローチャートである。
【図２３】クラスタ情報の例を示す図である。
【図２４】類似度の例を示す図である。
【図２５】第５の類似楽曲検索処理を説明するフローチャートである。
【図２６】第３の楽曲推薦処理を説明するフローチャートである。
【図２７】嗜好値の例を示す図である。
【図２８】クラスタ情報の例を示す図である。
【図２９】類似度の例を示す図である。
【図３０】重みの例を示す図である。
【図３１】類似度の例を示す図である。
【図３２】第４の楽曲推薦処理を説明するフローチャートである。
【図３３】嗜好値の例を示す図である。
【図３４】類似度の例を示す図である。
【符号の説明】
【０２５７】
１  推薦システム，  １１  楽曲データベース,  １２  クラスタリング部,  １３  キーワード設定部,  １４  クラスタ情報データベース,  ２１  検索楽曲指定部,  ２２  クラスタマッピング部,  ２３  楽曲抽出部,  ２４  嗜好情報データベース,  ２５  嗜好入力部，  ２６  ランダム選択部，  ２７  類似度算出部，  ２８  選択理由生成部，  ２９  楽曲提示部，  ２０１  メタデータクラスタリング部，  ２０２  楽曲クラスタリング部
【図１】
0004752623.tif 000006
【図２】
0004752623.tif 000007
【図３】
0004752623.tif 000008
【図４】
0004752623.tif 000009
【図５】
0004752623.tif 000010
【図６】
0004752623.tif 000011
【図７】
0004752623.tif 000012
【図８】
0004752623.tif 000013
【図９】
0004752623.tif 000014
【図１０】
0004752623.tif 000015
【図１１】
0004752623.tif 000016
【図１２】
0004752623.tif 000017
【図１３】
0004752623.tif 000018
【図１４】
0004752623.tif 000019
【図１５】
0004752623.tif 000020
【図１６】
0004752623.tif 000021
【図１７】
0004752623.tif 000022
【図１８】
0004752623.tif 000023
【図１９】
0004752623.tif 000024
【図２０】
0004752623.tif 000025
【図２１】
0004752623.tif 000026
【図２２】
0004752623.tif 000027
【図２３】
0004752623.tif 000028
【図２４】
0004752623.tif 000029
【図２５】
0004752623.tif 000030
【図２６】
0004752623.tif 000031
【図２７】
0004752623.tif 000032
【図２８】
0004752623.tif 000033
【図２９】
0004752623.tif 000034
【図３０】
0004752623.tif 000035
【図３１】
0004752623.tif 000036
【図３２】
0004752623.tif 000037
【図３３】
0004752623.tif 000038
【図３４】
0004752623.tif 000039