JP4378646B2 - 情報処理装置、情報処理方法、およびプログラム - Google Patents

情報処理装置、情報処理方法、およびプログラム Download PDF

Info

Publication number
JP4378646B2
JP4378646B2 JP2006151012A JP2006151012A JP4378646B2 JP 4378646 B2 JP4378646 B2 JP 4378646B2 JP 2006151012 A JP2006151012 A JP 2006151012A JP 2006151012 A JP2006151012 A JP 2006151012A JP 4378646 B2 JP4378646 B2 JP 4378646B2
Authority
JP
Japan
Prior art keywords
user
content
cluster
music
preference
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006151012A
Other languages
English (en)
Other versions
JP2007122683A (ja
Inventor
則行 山本
啓 舘野
真里 斎藤
智弘 角田
充弘 宮嵜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2006151012A priority Critical patent/JP4378646B2/ja
Priority to PCT/JP2006/318373 priority patent/WO2007037139A1/ja
Priority to KR1020077011814A priority patent/KR20080045659A/ko
Priority to EP06798036A priority patent/EP1835419A4/en
Priority to CN200680001299A priority patent/CN100594496C/zh
Priority to US11/791,361 priority patent/US8117211B2/en
Publication of JP2007122683A publication Critical patent/JP2007122683A/ja
Application granted granted Critical
Publication of JP4378646B2 publication Critical patent/JP4378646B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/912Applications of a database
    • Y10S707/913Multimedia
    • Y10S707/916Audio

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、情報処理装置、情報処理方法、およびプログラムに関し、特に、コンテンツをクラスタに分類し、コンテンツが分類されたクラスタを用いてコンテンツの特徴を管理し、コンテンツの検索や推薦に利用するようにした情報処理装置、情報処理方法、およびプログラムに関する。
従来、利用者の嗜好に基づいてテレビジョン番組、楽曲などのコンテンツを検索して推薦する(いわゆる、コンテンツパーソナライゼーション)ための発明が提案されている(例えば、特許文献1参照)。
コンテンツパーソナライゼーションには、協調フィルタリング(CF)と称する手法やコンテントベーストフィルタリング(CBF)と称される手法が広く使われている。
CF手法は、各利用者の購入履歴を管理し、コンテンツを推薦しようとする利用者Aに対し、購入履歴が似ている他の利用者Xを検出して、当該他の利用者Xが購入しており、かつ、利用者Aが購入していないコンテンツを推薦するようにしたものであり、例えば、インタネット上の通信販売サイトにおいて採用されている。
CBF手法は、コンテンツに対して配信側や販売側によって予め付与されているメタデータが直接的に嗜好の抽出やコンテンツの推薦に利用されていた。すなわち、利用者の嗜好を示す特徴ベクトルと、候補となる各楽曲の特徴ベクトルとの距離(余弦相関など)を算出し、算出された距離の短い楽曲が利用者の嗜好に合致したものとして推薦されるようになされている。
特開2004−194107号公報
上述したCF手法の以下の不都合が生じてしまう。
(1)どの利用者にも購入されていないコンテンツは、誰に対しても推薦されることがない。したがって、膨大に用意されているコンテンツのうち、推薦されるコテンツが一部に集中し、残りの大多数のコンテンツが推薦されない。
(2)新規の利用者に対してコンテンツを推薦する場合、当該利用者の購入履歴が少ないので、履歴情報が類似している他の利用者を検出することができず、コンテンツを推薦することができない(いわゆる、コールドスタート問題)。
(3)通常、コンテンツの数も利用者の数も増加していくが、その場合、購入履歴が似ている他の利用者を検出する際の演算が多くなり、推薦するコンテンツを速やかに決定することができない。
本発明はこのような状況に鑑みてなされたものであり、CF手法において一部のコンテンツに推薦が集中されてしまうことを抑止するとともに、履歴情報の少ない利用者に対してもコンテンツを推薦できるようにするものである。
本発明の一側面である情報処理装置は、コンテンツ群のなかから所定の条件を満たすコンテンツを選択して利用者に提示する情報処理装置であって、前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた階層のそれぞれにおいて複数の第1のクラスタのいずれかに分類するコンテンツ分類手段と、各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記第1のクラスタとの対応関係を示すデータベースを保持する保持手段と、前記利用者のコンテンツに対する履歴情報を管理する管理手段と、前記履歴情報に基づき、注目する第1のクラスタを特定し、特定した前記第1のクラスタに分類されているコンテンツを選択する選択手段と、前記履歴情報と前記データベースに基づき、前記利用者の嗜好を前記第1のクラスタ単位で示す嗜好情報を生成する生成手段と、前記嗜好情報と、選択された前記コンテンツが属する前記第1のクラスタの重複度が所定の割合以上である場合新規性がないと判定し、所定の割合未満である場合新規性があると判定する判定手段と、前記コンテンツ分類手段によって前記メタデータが分類される第1のクラスタのそれぞれに対してキーワードを設定する設定手段と、前記設定手段によって設定されたキーワード及び前記判定手段によって判定された新規性の有無を用い、コンテンツの提示理由を表す理由文を作成する作成手段と、選択された前記コンテンツ及び前記理由文を提示する提示手段とを含む。
前記選択手段は、第1の利用者と前記履歴情報が類似している第2の利用者を検出する検出手段と、前記第1の利用者の履歴情報上に存在せず、前記第2の利用者の履歴情報上に存在するコンテンツが分類されている第1のクラスタを特定する特定手段と、特定された前記第1のクラスタに分類されているコンテンツを抽出する抽出手段とを含み、前記提示手段は、前記第1の利用者に対して抽出された前記コンテンツを提示するようにすることができる。
本発明の一側面である情報処理装置は、前記嗜好情報に基づいて利用者をグループ化するグループ化手段とをさらに含み、前記選択手段は、第1の利用者と同じグループに属する第2の利用者を検出する検出手段と、前記第1の利用者の履歴情報上に存在せず、前記第2の利用者の履歴情報上に存在するコンテンツが分類されている第1のクラスタを特定する特定手段と、特定された前記第1のクラスタに分類されているコンテンツを抽出する抽出手段とを含み、前記提示手段は、前記第1の利用者に対して抽出された前記コンテンツを提示するようにすることができる。
記選択手段には、第1の利用者と前記嗜好情報で示される嗜好が類似している第2の利用者を検出する検出手段と、前記第1の利用者の嗜好情報と前記第2の利用者の嗜好情報に基づいて注目する第1のクラスタを特定する特定手段と、特定された前記第1のクラスタに分類されているコンテンツを抽出する抽出手段とを設け、前記提示手段には、前記第1の利用者に対して抽出された前記コンテンツを提示させることができる。
前記検出手段には、利用者の嗜好情報を正規化する正規化手段と、正規化された各利用者の嗜好情報から、利用者のそれぞれについて階層毎の重みを計算する重み計算手段と、階層毎の重みと前記嗜好情報とから、利用者のうちの第1の利用者と、利用者のうちの他の利用者との嗜好の類似の度合いを示す類似度を計算する類似度計算手段とを設け、計算された類似度から、第1の利用者と嗜好が類似している第2の利用者を検出させることができる。
本発明の一側面である情報処理装置には、前記嗜好情報に基づいて利用者をグループ化するグループ化手段とをさらに設け、前記選択手段には、第1の利用者と同じグループに属する第2の利用者を検出する検出手段と、前記第1の利用者の嗜好情報と前記第2の利用者の嗜好情報に基づいて注目する第1のクラスタを特定する特定手段と、特定された前記第1のクラスタに分類されているコンテンツを抽出する抽出手段とを設け、前記提示手段には、前記第1の利用者に対して抽出された前記コンテンツを提示させることができる。
コンテンツのメタデータを複数の第2のクラスタのいずれかに分類し、第2のクラスタに前記階層を割り当てるメタデータ分類手段を更に設け、前記コンテンツ分類手段には、各コンテンツを、割り当てられた前記階層のそれぞれにおいて複数の第1のクラスタのいずれかに分類させることができる。
記選択手段には、全部の前記階層の全部の前記第1のクラスタのうち、前記嗜好情報で示される前記第1のクラスタであって、最も多くの前記第1のクラスタに分類されているコンテンツを選択させることができる。
本発明の一側面である情報処理方法は、コンテンツ群のなかから所定の条件を満たすコンテンツを選択して利用者に提示する情報処理装置の情報処理方法であって、前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた各階層において複数のクラスタのいずれかに分類し、各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースを保持し、前記利用者のコンテンツに対する履歴情報を管理し、前記履歴情報に基づき、注目するクラスタを特定し、特定した前記クラスタに分類されているコンテンツを選択し、前記履歴情報と前記データベースに基づき、前記利用者の嗜好を前記第1のクラスタ単位で示す嗜好情報を生成し、前記嗜好情報と、選択された前記コンテンツが属する前記第1のクラスタの重複度が所定の割合以上である場合新規性がないと判定し、所定の割合未満である場合新規性があると判定し、前記メタデータが分類される第1のクラスタのそれぞれに対してキーワードを設定し、設定されたキーワード及び判定された新規性の有無を用い、コンテンツの提示理由を表す理由文を作成し、選択された前記コンテンツ及び前記理由文を提示するステップを含む。
本発明の一側面であるプログラムは、コンテンツ群のなかから所定の条件を満たすコンテンツを選択して利用者に推薦するためのプログラムであって、前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた各階層において複数のクラスタのいずれかに分類し、各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースを保持し、前記利用者のコンテンツに対する履歴情報を管理し、前記履歴情報に基づき、注目するクラスタを特定し、特定した前記クラスタに分類されているコンテンツを選択し、前記履歴情報と前記データベースに基づき、前記利用者の嗜好を前記第1のクラスタ単位で示す嗜好情報を生成し、前記嗜好情報と、選択された前記コンテンツが属する前記第1のクラスタの重複度が所定の割合以上である場合新規性がないと判定し、所定の割合未満である場合新規性があると判定し、前記メタデータが分類される第1のクラスタのそれぞれに対してキーワードを設定し、設定されたキーワード及び判定された新規性の有無を用い、コンテンツの提示理由を表す理由文を作成し、選択された前記コンテンツ及び前記理由文を提示するステップを含む処理をコンピュータに実行させる。
本発明の一側面においては、前記コンテンツ群を構成する各コンテンツが、コンテンツのメタデータに応じた各階層において複数のクラスタのいずれかに分類される。そして、各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースが保持される。また、前記利用者のコンテンツに対する履歴情報が管理される。そして、前記履歴情報に基づき、注目するクラスタが特定され、特定された前記クラスタに分類されているコンテンツが選択される。さらに、前記履歴情報と前記データベースに基づき、前記利用者の嗜好を前記第1のクラスタ単位で示す嗜好情報が生成され、前記嗜好情報と、選択された前記コンテンツが属する前記第1のクラスタの重複度が所定の割合以上である場合新規性がないと判定され、所定の割合未満である場合新規性があると判定され、前記メタデータが分類される第1のクラスタのそれぞれに対してキーワードが設定され、設定されたキーワード及び判定された新規性の有無を用い、コンテンツの提示理由を表す理由文が作成され、選択された前記コンテンツ及び前記理由文が提示される。
以上のように、本発明の一側面によれば、CF手法により利用者にコンテンツを推薦することが可能となる。
また、本発明の一側面によれば、全コンテンツのうち、一部のコンテンツに推薦が集中されてしまうことを抑止することが可能となる。
さらに、本発明の一側面によれば、履歴情報の少ない利用者に対してもコンテンツを推薦することが可能となる。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
図1は本発明の一実施の形態である推薦システムの構成例を示している。この推薦システム1は、例えばインタネット上に開設された楽曲データの販売サイトにおいて、利用者の履歴情報(楽曲データの購入、試聴、検索、保有などの情報)を管理し、CF法を用いて推薦する楽曲を選択し、利用者に提示するものである。なお、推薦システム1は、楽曲以外のコンテンツ、例えばテレビジョン番組、映画、書籍などを販売する販売サイトにも適用することが可能である。
推薦システム1は、利用者に推薦して販売するための数多くの楽曲データ(以下、単に楽曲とも記述する)のメタデータが記録されている楽曲データベース(DB)11、楽曲データベース11に記録されている各楽曲のメタデータを基に、各楽曲をクラスタリングして各楽曲のクラスタ情報を生成するクラスタリング部12、各クラスタ層とクラスタ層における各クラスタの特徴をそれぞれ示すキーワードを設定するキーワード設定部13、および、各楽曲のクラスタリング結果を保持するクラスタリング済データベース(DB)14から構成される。
クラスタリング済DB14には、クラスタリング結果として、各クラスタに属する楽曲を示すクラスタ−楽曲対応表15と、各楽曲が属するクラスタを示す楽曲−クラスタ対応表16が保持されている。
さらに、推薦システム1は、各利用者の履歴情報を管理している利用者履歴情報データベース(DB)17、利用者情報に基づいて推薦候補となる複数の楽曲を選択する推薦候補選択部18、選択された複数の推薦候補の中から1楽曲を選択する楽曲選択部25、選択された楽曲が推薦される利用者にとって新規性のあるものであるか否かを判定する新規性判定部26、選択された楽曲を利用者に提示するときの推薦理由文を生成する選択理由生成部27、および、選択された楽曲と推薦理由文を利用者に提示する提示部28から構成される。
推薦候補選択部18は、嗜好ベクトル生成部19、利用者グループ化部20、類似利用者検出部21、差分検出部22、推薦クラスタ決定部23、および抽出部24を含む。
楽曲DB11は、音楽CDに収録されている楽曲のメタデータを供給するインタネット上のデータサーバであるCDDB(CD Data Base)やMusic Naviなどと同様、推薦して販売する楽曲のメタデータを保持している。
クラスタリング部12は、楽曲DB11の全ての楽曲に対し、楽曲のメタデータの各項目(アーティスト名、ジャンル、アルバム、アーティストレビュー、楽曲レビュー、タイトル、テンポ、ビート、リズムなど)あるいはそれらの組み合わせ(テンポ、ビート、リズムなど)を基にして、図2に示すようなクラスタ層(第1乃至n層)を作り、楽曲を各クラスタ層に設けられる複数のクラスタのいずれか、あるいは複数に分類する(クラスタリングする)。
ここでは楽曲を例に説明されているが、アーティスト、アルバムに対しても同様に多くのメタを使ってそれぞれ多層にクラスタリングする。楽曲推薦、アーティスト推薦、アルバム推薦のために、それぞれ楽曲用多層クラスタ、アーティスト用多層クラスタ、アルバム用多層クラスタを用いる。
クラスタリングはいかなる手法を用いてもよいが、クラスタ層毎に最適なクラスタリング手法、距離尺度を選ぶようにする。例えば、メタデータの実情報がテンポなどの数値属性であるならばそのまま、タイトルなどの名義属性の場合は主成分分析等の数量化手法を用いて数値にして、ユークリッド距離などの距離尺度を定義してクラスタリングすることになる。代表的なクラスタリング手法としては、K-means法、階層クラスタリング法(群平均法、最遠法、ウォード法)、ソフトクラスタリング法などを挙げることができる。
この際、嗜好距離を反映したクラスタリング(例えば、制約付きクラスタリング)によって実施することが望ましい。そのためには、事前調査により部分的な正解集(嗜好的に近い実情報の集合、遠い実情報の集合など)を作り、それに適合する数値表現、距離、クラスタリング手法を用いるものとする。またさらに、形成される各クラスタ層の独立性が高くなるクラスタリング手法(すなわち、特性の異なるクラスタリング手法)を選ぶことが望ましい。
なお、1つの実情報を同一クラスタ層の複数のクラスタに分類してもよい。同一クラスタ層に存在するクラスタ間の距離(類似の程度を示す)は既知であるものとする。このクラスタリングの手法については後述する。そして、メタデータの代わりに楽曲の特徴を示す情報として、メタデータの各項目の実情報を分類したクラスタのクラスタID(図2におけるCL11など)から成るクラスタ情報を生成してクラスタリング済DB14に出力する。
なお、分類に適したクラスタが存在しない場合、新たにクラスタを新設してもよい。各クラスタのサイズは任意であって複数の実情報を包含できるものである。なお、単一の実情報だけしか分類することができないクラスタを設けてもよい。この場合、当該クラスタのクラスタIDに唯一分類可能な実情報のID(アーティストID、アルバムID、タイトルID)を用いてもよい。
クラスタリング済DB14は、クラスタリング部12によって生成された各楽曲のクラスタ情報に基づいて、クラスタ−楽曲対応表15と楽曲−クラスタ対応表16を生成して保持している。また、クラスタリング済DB14は、キーワード設定部13によって設定された各クラスタ層や各クラスタに対して設定されたキーワードも保持している。
図3は楽曲−クラスタ対応表16の一例を示している。同図においては、例えば、楽曲ID=ABC123の楽曲のクラスタ情報は、(CL12、CL21、CL35,CL47,CL52,…,CLn2)であることを示している。また例えば、楽曲ID=CTH863の楽曲のクラスタ情報は、クラスタID(CL11、CL25、CL31,CL42,CL53,…,CLn1)であることを示している。
図4は、図3に示された楽曲−クラスタ対応表16に応じたクラスタ−楽曲対応表15の一例を示している。同図においては、例えば、クラスタID=CL11には、楽曲ID=CTH863が対応することを示している。また例えば、クラスタID=CL21には、楽曲ID=ABC123が対応することを示している。さらに例えば、クラスタID=CL32には、楽曲ID=XYZ567が対応することを示している。
なお、クラスタリング部12、キーワード設定部13、およびクラスタリング済DB14の処理は、楽曲DB11に新たな楽曲のメタデータが追加される毎に実行しておく必要がある。
図1に戻る。利用者履歴情報DB17には、各利用者が当該販売サイトにて購入、試聴、または検索した楽曲、あるいは、いずれかで購入し既に保有していることを申告した楽曲を示す履歴情報が保持されている。また、利用者履歴情報DB17には、嗜好ベクトル生成部19によって生成される各利用者の嗜好ベクトルが保持されている。さらに、利用者履歴情報DB17には、利用者グループ化部20による利用者のグループ化結果、すなわち、各利用者がどの利用者グループに属するかを示す情報が保持されている。
嗜好ベクトル生成部19は、利用者履歴情報DB17に保持されている各利用者の履歴情報に基づき、各利用者に対して、全てのクラスタをそれぞれ1次元とする多次元の嗜好ベクトルを生成し、利用者履歴情報DB17に出力する。具体的には、利用者の履歴情報にある各楽曲について、クラスタリング済DB14の楽曲−クラスタ対応表16を参照し、楽曲の属するクラスタに対応する嗜好ベクトルの次元に所定の値を加算する。生成された各利用者の嗜好ベクトルは、利用者履歴情報DB17で管理される。楽曲の購入などによって利用者の履歴情報が更新されれば、嗜好ベクトルも更新されることになる。
ここで説明の便宜上、全てのクラスタが図5に示すにように、第1層には3クラスタCL11,CL12,CL13、第2層には4クラスタCL21,CL22,CL23,CL24、第3層には3クラスタCL31,CL32,CL33、第4層には3クラスタCL41,CL42,CL43のみが存在していると仮定する。この場合、嗜好ベクトルは13次元である。
例えば、利用者Aの履歴情報に2楽曲を購入した記録があり、1つ目の楽曲の属するクラスタIDがCL11,CL22,CL33,CL41であれば、これらに対応する次元の値にそれぞれ1が加算される。また、2つ目の楽曲の属するクラスタIDがCL12,CL24,CL32,CL43であれば、これらに対応する次元の値にそれぞれ1が加算される。そして、利用者Aの嗜好ベクトル(1,1,0,0,1,0,1,0,1,1,1,0,1)が生成される。
また例えば、利用者Xの履歴情報に3楽曲を購入した記録があり、1つ目の楽曲の属するクラスタIDがCL11,CL22,CL32,CL43であれば、これらに対応する次元の値にそれぞれ1が加算される。また、2つ目の楽曲の属するクラスタIDがCL12,CL22,CL33,CL42であれば、これらに対応する次元の値にそれぞれ1が加算される。さらに、3つ目の楽曲の属するクラスタIDがCL13,CL24,CL33,CL41であれば、これらに対応する次元の値にそれぞれ1が加算される。そして、利用者Xの嗜好ベクトル(1,1,1,0,2,0,1,0,1,2,1,1,1)が生成される。
なお、各次元への加算値は履歴情報の種別(すなわち、購入、試聴、検索、または保有)に応じて変更するようにしてもよい。例えば、購入または保有であれば1を加算し、試聴であれば0.5を加算し、検索であれば0.3を加算するようにしてもよい。
図1に戻る。利用者グループ化部20は、利用者履歴情報DB17に保持されている各利用者の嗜好ベクトルの類似性に基づき、全利用者をグループ化する。ただし、多次元の嗜好ベクトルの類似性を判定する処理を容易にするため、各利用者の嗜好ベクトルの各次元の値を2値化する。すなわち、各次元の値が1以上であるときには1に置換し、0であるときには0のままとする。このように、嗜好ベクトルの各次元の値を2値化すると、2値化しない場合に比較して類似性の判定これに要する演算量を減少させることができ、容易にグループ化を行うことができる。このグループ化結果は、利用者履歴情報DB17で管理される。
類似利用者検出部21は、利用者履歴情報DB17に保持されている各利用者の履歴情報を比較することにより、楽曲が推薦される利用者と履歴情報が類似している他の利用者を検出する。また、類似利用者検出部21は、利用者履歴情報DB17に保持されている各利用者の嗜好ベクトルを比較することにより、楽曲が推薦される利用者と嗜好ベクトルが類似している他の利用者を検出する。差分検出部22は、利用者履歴情報DB17に保持されている各利用者の履歴情報に基づき、楽曲が推薦される利用者と、類似利用者検出部21によって検出された他の利用者との履歴情報の差分を検出する。推薦クラスタ決定部23は、楽曲が推薦される利用者と、類似利用者検出部21によって検出された他の利用者との嗜好ベクトルの差に基づいて推薦クラスタを決定する。抽出部24は、類似利用者検出部21乃至推薦クラスタ決定部23の処理結果と、クラスタリング済DB14に基づき、推薦候補となる楽曲を抽出する。
楽曲選択部25は、抽出された複数の楽曲の中から所定の条件に従って1楽曲を選択する。例えば、より多くの推薦クラスタに属しているもの、予め設定されている優先順位が高いクラスタ層における推薦クラスタに属しているもの、またはランダムで1楽曲を選択し、選択結果を新規性判定部26、および選択理由生成部27に出力する。新規性判定部26は、楽曲が推薦される利用者の嗜好ベクトルに基づき、選択された楽曲が属するクラスタの、当該嗜好ベクトルに対する重複度が所定の割合(例えば30%)以上である場合には新規性がないものと判定し、所定の割合未満である場合には新規性があるものと判定し、判定結果を選択理由生成部27に出力する。
選択理由生成部27は、選択された楽曲の属するクラスタ層やクラスタに対応するキーワードをクラスタリング済DB14から取得し、取得したキーワードなどを用いて選択の理由を示す選択理由文を生成する。また、新規性判定部26からの判定結果に基づいても例えば、新規性のあるものについては「意外な」、新規性のないものについては「いつもの」あるいは「なじみの」などの文言を含めて選択理由文を生成する。そして、生成した選択理由文を、選択された楽曲の楽曲IDとともに提示部28に出力する。
なお、選択された楽曲のレビューテキストをそのまま選択理由文として引用したり、選択された楽曲のレビューテキストから抽出した単語を用いて選択理由文を生成してもよい。なお、レビューテキストから選択理由文に用いる単語を抽出するにはTf/idf法を適用することができる。
提示部29は、選択された楽曲に関する情報を楽曲DBから取得して、生成された選択理由文とともに利用者側に提示する。
次に、推薦システム1の動作について説明する。まず、楽曲を推薦する処理の準備であるオフライン時の前処理について、図6のフローチャートを参照して説明する。
ステップS1において、クラスタリング部12は、楽曲DB11の全ての楽曲を、楽曲のメタデータの各項目クラスタ層(第1乃至n層)のいずれかに分類し、各項目の実情報を分類したクラスタ層に設けられる複数のクラスタのいずれかに分類(クラスタリング)する。そして、クラスタリング部12は、メタデータの代わりに楽曲の特徴を示す情報として、メタデータの各項目の実情報を分類したクラスタのクラスタIDから成るクラスタ情報を生成してクラスタリング済DB14に出力する。なお、既にクラスタリング済の楽曲については、クラスタリングを省略し、未クラスタリング済の楽曲についてのみ、クラスタリングするようにしてもかまわない。クラスタリング済DB14は、クラスタリング部12によって生成された各楽曲のクラスタ情報に基づいて、クラスタ−楽曲対応表15と楽曲−クラスタ対応表16を生成する。
ステップS2において、推薦候補選択部18の嗜好ベクトル生成部19は、利用者履歴情報DB17に保持されている各利用者の履歴情報に基づき、各利用者に対して嗜好ベクトルを生成し、利用者履歴情報DB17に出力する。ステップS3において、利用者グループ化部20は、利用者履歴情報DB17に保持されている各利用者の嗜好ベクトルの類似性に基づき、全利用者をグループ化する。ただし、多次元の嗜好ベクトルの類似性を判定する処理を容易にするため、各利用者の嗜好ベクトルの各次元の値を2値化する。そして、このグループ化結果を利用者履歴情報DB17に出力する。以上で、オフライン時の前処理は終了される。
このように、楽曲DB11に保持されている全楽曲のクラスタリングと、各利用者の嗜好ベクトルの生成、および利用者のグループ化を前処理として実施することにより、後述する第1乃至7の推薦処理を速やかに実行することができる。なお、第1乃至7の推薦処理のうち、利用者のグループ情報を利用しないものがあるので、利用者のグループ情報を利用しない推薦処理のみを実行するときには、ステップS3の処理を省略してもかまわない。
次に第1の推薦処理について、図7のフローチャートを参照して説明する。以下においては、楽曲が推薦される利用者を利用者Aと記述する。この処理は、例えば、利用者Aが当該販売サイトにアクセスしたときに開始される。
ステップS11において、類似利用者検出部21は、利用者履歴情報DB17に保持されている利用者Aの履歴情報と他の利用者の履歴情報を比較することにより、利用者Aと履歴情報が最も類似している他の利用者Xを検出する。ステップS12において、差分検出部22は、利用者履歴情報DB17に保持されている利用者Aと利用者Xの履歴情報に基づき、利用者Xが有している(過去に購入した、または保有している)楽曲であって、利用者Aが有していない楽曲を検出する。なお、この条件を満たす楽曲が複数存在する場合、そのうちの1楽曲を例えばランダムに選択する。検出された楽曲を楽曲aとする。
ステップS13において、推薦クラスタ決定部23は、クラスタリング済DB14の楽曲−クラスタ対応表16を参照し、楽曲aが属する各クラスタ層のクラスタを特定する。ステップS14において、抽出部24は、クラスタリング済DB14のクラスタ−楽曲対応表15を参照し、ステップS13の処理で特定された全てのクラスタに共通して分類されている楽曲を抽出する。ここで抽出された楽曲を推薦候補とする。推薦候補は複数あってかまわない。なお、ステップS13の処理で特定した全てのクラスタに共通して分類されている楽曲が存在しない場合、ステップS13の処理で特定したクラスタのうち、できるだけ多くのクラスタに共通して分類されている楽曲を抽出し、推薦候補とする。
ステップS15において、楽曲選択部25は、推薦候補の楽曲のうち、ステップS12で検出した楽曲aとクラスタ情報が最も類似している1楽曲を選択し、選択結果を新規性判定部26、および選択理由生成部27に出力する。ステップS16において、新規性判定部26は、利用者Aの嗜好ベクトルと、選択された楽曲が属するクラスタに基づき、新規性の有無を判定し、判定結果を選択理由生成部27に出力する。選択理由生成部27は、選択された楽曲の属するクラスタ層やクラスタに対応するキーワードをクラスタリング済DB14から取得し、取得したキーワードなどを用いて選択の理由を示す選択理由文を生成する。また、新規性判定部26からの判定結果に基づいても選択理由文を生成する。そして、生成した選択理由文を、選択された楽曲の楽曲IDとともに提示部28に出力する。ステップS17において、提示部29は、選択された楽曲に関する情報を楽曲DBから取得して、生成された選択理由文とともに利用者側に提示する。以上で第1の推薦処理が終了される。
次に第2および3の推薦処理について、図8のフローチャートを参照して説明する。まず第2の推薦処理について説明する。この処理は、例えば、利用者Aが当該販売サイトにアクセスしたときに開始される。
ステップS21において、類似利用者検出部21は、利用者履歴情報DB17に保持されている利用者Aの嗜好ベクトルと他の利用者の嗜好ベクトルを比較することにより、利用者Aと嗜好ベクトルが最も類似している他の利用者Xを検出する。なお、利用者Aの嗜好ベクトルと他の利用者の嗜好ベクトルとの類似は、例えば両者の余弦相関値を算出して判断する。
ステップS22において、差分検出部22は、利用者Aの嗜好ベクトルにおいては値が0であり、利用者Xの嗜好ベクトルにおいては0以外の値である嗜好ベクトルの次元を検出し、検出した次元に相当するクラスタを推薦クラスタに決定する。
例えば、利用者Aの嗜好ベクトルが図5Aに示す(1,1,0,0,1,0,1,0,1,1,1,0,1)であり、利用者Xの嗜好ベクトルが図5Bに示す(1,1,1,0,2,0,1,0,1,2,1,1,1)である場合、図5Bに斜線で示すように、クラスタCL13、およびCL42が推薦クラスタに決定される。
ステップS23において、抽出部24は、利用者履歴情報DB17とクラスタリング済DB14のクラスタ−楽曲対応表15を参照し、推薦クラスタに分類されている全ての楽曲のうち、利用者Xが有しており、利用者Aが有していないものを抽出して推薦候補とする。
ステップS24において、楽曲選択部25は、推薦候補の楽曲のうち、以下の3方法のいずれか、または3方法を組み合わせた方法により、1楽曲を選択し、選択結果を新規性判定部26、および選択理由生成部27に出力する。1つ目の方法は、より多くの推薦クラスタに共通して属している楽曲を選択する方法である。2つ目の方法は、クラスタ層に予め優先順位を付与し、より優先順位の高いクラスタ層に属する推薦クラスタに分類されている楽曲を選択する方法である。3つ目の方法は、ランダムに選択する方法である。
ステップS25において、新規性判定部26は、利用者Aの嗜好ベクトルと、選択された楽曲が属するクラスタに基づき、新規性の有無を判定し、判定結果を選択理由生成部27に出力する。選択理由生成部27は、選択された楽曲の属するクラスタ層やクラスタに対応するキーワードをクラスタリング済DB14から取得し、取得したキーワードなどを用いて選択の理由を示す選択理由文を生成する。また、新規性判定部26からの判定結果に基づいても選択理由文を生成する。そして、生成した選択理由文を、選択された楽曲の楽曲IDとともに提示部28に出力する。ステップS26において、提示部29は、選択された楽曲に関する情報を楽曲DBから取得して、生成された選択理由文とともに利用者側に提示する。以上で第2の推薦処理が終了される。
次に第3の推薦処理について説明する。第3の推薦処理は、上述した第2の推薦処理におけるステップS23の処理で、推薦クラスタに分類されている全ての楽曲のうち、利用者Aが有していないものを抽出して推薦候補とするようにする。すなわち、利用者Xが有していないものも推薦候補とすることができる。このほかの処理については第2の推薦処理と同様であるので、その説明は省略する。
次に第4の推薦処理について、図9のフローチャートを参照して説明する。この処理は、例えば、利用者Aが当該販売サイトにアクセスしたときに開始される。
ステップS41において、類似利用者検出部21は、利用者履歴情報DB17に保持されている利用者Aのグループ情報に基づき、利用者Aと同じグループに属する他の利用者Xをランダムに決定する。ステップS42において、差分検出部22は、利用者履歴情報DB17に保持されている利用者Aと利用者Xの履歴情報に基づき、利用者Xが有している楽曲であって、利用者Aが有していない楽曲を検出する。なお、この条件を満たす楽曲が複数存在する場合、そのうちの1楽曲を例えばランダムに選択する。検出された楽曲を楽曲aとする。
ステップS43において、推薦クラスタ決定部23は、クラスタリング済DB14の楽曲−クラスタ対応表16を参照し、楽曲aが属する各クラスタ層のクラスタを特定する。ステップS44において、抽出部24は、クラスタリング済DB14のクラスタ−楽曲対応表15を参照し、ステップS43の処理で特定された全てのクラスタに共通して分類されている楽曲を抽出する。ここで抽出された楽曲を推薦候補とする。推薦候補は複数あってかまわない。なお、ステップS43の処理で特定した全てのクラスタに共通して分類されている楽曲が存在しない場合、ステップS43の処理で特定したクラスタのうち、できるだけ多くのクラスタに共通して分類されている楽曲を抽出し、推薦候補とする。
ステップS45において、楽曲選択部25は、推薦候補の楽曲のうち、ステップS42で検出した楽曲aとクラスタ情報が最も類似している1楽曲を選択し、選択結果を新規性判定部26、および選択理由生成部27に出力する。ステップS46において、新規性判定部26は、利用者Aの嗜好ベクトルと、選択された楽曲が属するクラスタに基づき、新規性の有無を判定し、判定結果を選択理由生成部27に出力する。選択理由生成部27は、選択された楽曲の属するクラスタ層やクラスタに対応するキーワードをクラスタリング済DB14から取得し、取得したキーワードなどを用いて選択の理由を示す選択理由文を生成する。また、新規性判定部26からの判定結果に基づいても選択理由文を生成する。そして、生成した選択理由文を、選択された楽曲の楽曲IDとともに提示部28に出力する。ステップS47において、提示部29は、選択された楽曲に関する情報を楽曲DBから取得して、生成された選択理由文とともに利用者側に提示する。以上で第4の推薦処理が終了される。
第4の推薦処理においては、オフライン時の前処理によってグループ化されている利用者のグループ情報を利用するので、利用者Aの履歴に類似した利用者Xを速やかに決定することができる。
次に第5および6の推薦処理について、図10のフローチャートを参照して説明する。まず第5の推薦処理について説明する。この処理は、例えば、利用者Aが当該販売サイトにアクセスしたときに開始される。
ステップS51において、類似利用者検出部21は、利用者履歴情報DB17に保持されている利用者Aのグループ情報に基づき、利用者Aと同じグループに属する他の利用者Xをランダムに決定する。
ステップS52において、差分検出部22は、利用者Aの嗜好ベクトルにおいては値が0であり、利用者Xの嗜好ベクトルにおいては0以外の値である嗜好ベクトルの次元を検出し、検出した次元に相当するクラスタを推薦クラスタに決定する。
ステップS53において、抽出部24は、利用者履歴情報DB17とクラスタリング済DB14のクラスタ−楽曲対応表15を参照し、推薦クラスタに分類されている全ての楽曲のうち、利用者Xが有しており、利用者Aが有していないものを抽出して推薦候補とする。
ステップS54において、楽曲選択部25は、推薦候補の楽曲のうち、以下の3方法のいずれか、または3方法を組み合わせた方法により、1楽曲を選択し、選択結果を新規性判定部26、および選択理由生成部27に出力する。1つ目の方法は、より多くの推薦クラスタに共通して属している楽曲を選択する方法である。2つ目の方法は、クラスタ層に予め優先順位を付与し、より優先順位の高いクラスタ層に属する推薦クラスタに分類されている楽曲を選択する方法である。3つ目の方法は、ランダムに選択する方法である。
ステップS55において、新規性判定部26は、利用者Aの嗜好ベクトルと、選択された楽曲が属するクラスタに基づき、新規性の有無を判定し、判定結果を選択理由生成部27に出力する。選択理由生成部27は、選択された楽曲の属するクラスタ層やクラスタに対応するキーワードをクラスタリング済DB14から取得し、取得したキーワードなどを用いて選択の理由を示す選択理由文を生成する。また、新規性判定部26からの判定結果に基づいても選択理由文を生成する。そして、生成した選択理由文を、選択された楽曲の楽曲IDとともに提示部28に出力する。ステップS56において、提示部29は、選択された楽曲に関する情報を楽曲DBから取得して、生成された選択理由文とともに利用者側に提示する。以上で第5の推薦処理が終了される。
次に第6の推薦処理について説明する。第6の推薦処理は、上述した第5の推薦処理におけるステップS53の処理で、推薦クラスタに分類されている全ての楽曲のうち、利用者Aが有していないものを抽出して推薦候補とするようにする。すなわち、利用者Xが有していないものも推薦候補とすることができる。このほかの処理については第5の推薦処理と同様であるので、その説明は省略する。
第5および6の推薦処理においては、オフライン時の前処理によってグループ化されている利用者のグループ情報を利用するので、利用者Aの履歴に類似した利用者Xを速やかに決定することができる。
次に第7の推薦処理について、図11のフローチャートを参照して説明する。まず第7の推薦処理について説明する。この処理は、利用者Aの履歴情報が極端に少ない場合、他の利用者が少ない場合などに適し、例えば、利用者Aが当該販売サイトにアクセスしたときに開始される。
ステップS61において、差分検出部22は、利用者Aの嗜好ベクトルの各次元のうち、その値が所定の値以上のものを検出し、その次元に相当するクラスタを推薦クラスタに決定する。
ステップS62において、抽出部24は、利用者履歴情報DB17とクラスタリング済DB14のクラスタ−楽曲対応表15を参照し、推薦クラスタに分類されている全ての楽曲のうち、利用者Aが有していないものを抽出して推薦候補とする。
ステップS63において、楽曲選択部25は、推薦候補の楽曲のうち、最も多くの推薦クラスタに属する1楽曲を選択し、選択結果を新規性判定部26、および選択理由生成部27に出力する。なお、最も多くの推薦クラスタに属する楽曲が複数存在する場合、その中から例えばランダムに1楽曲を選択する。
ステップS64において、新規性判定部26は、利用者Aの嗜好ベクトルと、選択された楽曲が属するクラスタに基づき、新規性の有無を判定し、判定結果を選択理由生成部27に出力する。選択理由生成部27は、選択された楽曲の属するクラスタ層やクラスタに対応するキーワードをクラスタリング済DB14から取得し、取得したキーワードなどを用いて選択の理由を示す選択理由文を生成する。また、新規性判定部26からの判定結果に基づいても選択理由文を生成する。そして、生成した選択理由文を、選択された楽曲の楽曲IDとともに提示部28に出力する。ステップS65において、提示部29は、選択された楽曲に関する情報を楽曲DBから取得して、生成された選択理由文とともに利用者側に提示する。以上で第7の推薦処理が終了される。
上述した第1乃至7の推薦処理によれば、利用者の履歴情報を、各クラスタを1次元とする嗜好ベクトルに置き換えてCF手法を適用するので、利用者Aに対する楽曲の推薦が楽曲DB11に存在する全楽曲のうちの一部に集中してしまうことを抑止することができる。また、履歴情報が少ない利用者に対しても楽曲を推薦することができ、いわゆるコールドスタート問題を回避することができる。さらに、推薦された楽曲が選択された理由を利用者Aに提示することができ、例えば、利用者Aは、推薦された楽曲が自身にとって新規性のあるものであるのか否かを知ることができる。
なお、本発明は、楽曲を推薦する場合のみならず、楽曲以外のコンテンツ、例えばテレビジョン番組、映画、書籍などを販売する販売サイトにも適用することが可能である。
ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば図12に示すように構成される汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
このパーソナルコンピュータ100は、CPU(Central Processing Unit)101を内蔵している。CPU101にはバス104を介して、入出力インタフェース105が接続されている。バス104には、ROM(Read Only Memory)102およびRAM(Random Access Memory)103が接続されている。
入出力インタフェース105には、利用者が操作コマンドを入力するキーボード、マウス等の入力デバイスよりなる入力部106、画面を表示するCRT(Cathode Ray Tube)またはLCD(Liquid Crystal Display)等のディスプレイよりなる出力部107、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部108、およびモデム、LAN(Local Area Network)アダプタなどよりなり、インタネットに代表されるネットワークを介した通信処理を実行する通信部109が接続されている。また、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、もしくは半導体メモリなどの記録媒体111に対してデータを読み書きするドライブ110が接続されている。
このパーソナルコンピュータ100に上述した一連の処理を実行させるプログラムは、記録媒体111に格納された状態でパーソナルコンピュータ100に供給され、ドライブ110によって読み出されて記憶部108に内蔵されるハードディスクドライブにインストールされている。記憶部108にインストールされているプログラムは、入力部106に入力される利用者からのコマンドに対応するCPU101の指令によって、記憶部108からRAM103にロードされて実行される。
図13は、本発明の一実施の形態の推薦システム1の他の構成の例を示すブロック図である。図13において、図1に示す場合と同様の部分には同一の符号を付してあり、その説明は省略する。
図13に示される推薦システム1は、楽曲DB11、キーワード設定部13、クラスタリング済DB14、利用者履歴情報DB17、推薦候補選択部18、楽曲選択部25、新規性判定部26、選択理由生成部27、提示部28、メタデータクラスタリング部201、および楽曲クラスタリング部202から構成される。
メタデータクラスタリング部201は、楽曲データベース11に記録されている各楽曲のメタデータをクラスタリングする。すなわち、メタデータクラスタリング部201は、コンテンツである楽曲のメタデータを複数のクラスタのいずれかに分類し、クラスタに階層を割り当てる。
メタデータクラスタリング部201は、各楽曲のメタデータのクラスタリングの結果を楽曲クラスタリング部202に供給する。
楽曲クラスタリング部202は、メタデータクラスタリング部201による各楽曲のメタデータのクラスタリングの結果を基に、クラスタリング部12と同様に、各楽曲をクラスタリングして各楽曲のクラスタ情報を生成する。すなわち、楽曲クラスタリング部202は、各楽曲のクラスタリングの結果に応じたクラスタ情報を生成してクラスタリング済DB14に出力する。
また、図13に示される推薦システム1の推薦候補選択部18は、嗜好ベクトル生成部19、利用者グループ化部20、差分検出部22、推薦クラスタ決定部23、抽出部24、および類似利用者検出部203を含む。
類似利用者検出部203は、利用者履歴情報DB17に保持されている各利用者の嗜好ベクトルを比較することにより、楽曲が推薦される利用者と嗜好ベクトルが類似している他の利用者を検出する。より詳細には、類似利用者検出部203は、利用者の嗜好情報の一例である嗜好ベクトルを正規化し、正規化された各利用者の嗜好ベクトルから、利用者のそれぞれについて階層毎の重みを計算し、階層毎の重みと嗜好ベクトルとから、利用者間の嗜好の類似の度合いを示す類似度を計算し、計算された類似度から、第1の利用者と嗜好が類似している第2の利用者を検出する。
次に、図14のフローチャートを参照して、図13に示される推薦システム1における、楽曲を推薦する処理の準備であるオフライン時の前処理の他の例について説明する。
ステップS201において、メタデータクラスタリング部201は、楽曲DB11から楽曲のメタデータを取得して、取得したメタデータの次元を圧縮する。例えば、ステップS201において、メタデータクラスタリング部201は、楽曲DB11から取得した楽曲のメタデータの次元を、LSA(the latent semantic analysis)、PLSA(the probabilistic latent semantic analysis)、または数量化III類などの手法により圧縮する。
なお、ステップS201において、メタデータクラスタリング部201は、楽曲のメタデータをベクトル化するようにしてもよい。
ステップS202において、メタデータクラスタリング部201は、各楽曲のメタデータをクラスタリングする。例えば、ステップS202において、メタデータクラスタリング部201は、各楽曲のメタデータをソフトクラスタリングする。
より具体的には、例えば、図15で示されるように、メタデータクラスタリング部201は、それぞれの階層内において、アイテムの各クラスタへの帰属重みの和が1となるように、各楽曲のメタデータをソフトクラスタリングする。
例えば、ABC123である楽曲IDで特定される楽曲のメタデータの第1階層における第1のクラスタ、第2のクラスタ、第3のクラスタ、および第4のクラスタへの帰属重みは、それぞれ、0.0、0.8、0.0、および0.2である。ABC123である楽曲IDで特定される楽曲のメタデータの第2階層における第5のクラスタ、第6のクラスタ、第7のクラスタ、および第8のクラスタへの帰属重みは、それぞれ、0.4、0.6、0.0、および0.0である。ABC123である楽曲IDで特定される楽曲のメタデータの第3階層における第9のクラスタ、第10のクラスタ、および第11のクラスタへの帰属重みは、それぞれ、0.0、0.0、および1.0である。また、ABC123である楽曲IDで特定される楽曲のメタデータの第n階層における4つのクラスタのそれぞれへの帰属重みは、それぞれ、1.0、0.0、0.0、および0.0である。
例えば、CTH863である楽曲IDで特定される楽曲のメタデータの第1階層における第1のクラスタ、第2のクラスタ、第3のクラスタ、および第4のクラスタへの帰属重みは、それぞれ、1.0、0.0、0.0、および0.0である。CTH863である楽曲IDで特定される楽曲のメタデータの第2階層における第5のクラスタ、第6のクラスタ、第7のクラスタ、および第8のクラスタへの帰属重みは、それぞれ、0.0、0.5、0.5、および0.0である。CTH863である楽曲IDで特定される楽曲のメタデータの第3階層における第9のクラスタ、第10のクラスタ、および第11のクラスタへの帰属重みは、それぞれ、0.7、0.3、および0.0である。また、CTH863である楽曲IDで特定される楽曲のメタデータの第n階層における4つのクラスタのそれぞれへの帰属重みは、それぞれ、0.0、0.8、0.2、および0.0である。
例えば、XYZ567である楽曲IDで特定される楽曲のメタデータの第1階層における第1のクラスタ、第2のクラスタ、第3のクラスタ、および第4のクラスタへの帰属重みは、それぞれ、0.0、0.4、0.6、および0.0である。XYZ567である楽曲IDで特定される楽曲のメタデータの第2階層における第5のクラスタ、第6のクラスタ、第7のクラスタ、および第8のクラスタへの帰属重みは、それぞれ、0.0、0.0、0.0、および1.0である。XYZ567である楽曲IDで特定される楽曲のメタデータの第3階層における第9のクラスタ、第10のクラスタ、および第11のクラスタへの帰属重みは、それぞれ、0.9、0.0、および0.1である。また、XYZ567である楽曲IDで特定される楽曲のメタデータの第n階層における4つのクラスタのそれぞれへの帰属重みは、それぞれ、0.3、0.0、0.0、および0.7である。
なお、各楽曲のメタデータのソフトクラスタリングは、それぞれの階層内において、アイテム、すなわち楽曲の各クラスタへの帰属重みの和が1となるものに限られない。また、各アイテムが各階層において、いずれのクラスタに属さないものとしてもよい。
ステップS203において、メタデータクラスタリング部201は、クラスタの層を割り当てる。
ここで、図16および図17を参照して、メタデータのクラスタリングおよびクラスタの層の割り当てについて説明する。図16は、メタデータの例を示す図である。図16で示されるメタデータは、簡単のため、0または1のいずれかの値のカテゴリカルデータとされている。
高次の分類としてのメタグループ1には、メタデータ1、メタデータ2、およびメタデータ3が属し、高次の分類としてのメタグループ2には、メタデータ4、メタデータ5、およびメタデータ6が属する。例えば、メタグループ1には、アーティストに関するメタデータが属し、メタデータ1は、アーティストの外観を示し、メタデータ2は、グループであることを示す。また、例えば、メタグループ2には、ジャンルに関するメタデータが属し、メタデータ4は、ポップスであることを示し、メタデータ5は、ロックであることを示す。
図16に示す例において、ABC123である楽曲IDで特定される楽曲のメタデータ1乃至メタデータ6は、それぞれ、1,1,1,1,1,1であり、CTH863である楽曲IDで特定される楽曲のメタデータ1乃至メタデータ6は、それぞれ、0,1,0,0,1,1であり、XYZ567である楽曲IDで特定される楽曲のメタデータ1乃至メタデータ6は、それぞれ、1,1,1,1,1,1である。また、EKF534である楽曲IDで特定される楽曲のメタデータ1乃至メタデータ6は、それぞれ、1,0,1,0,0,1であり、OPQ385である楽曲IDで特定される楽曲のメタデータ1乃至メタデータ6は、それぞれ、1,0,1,1,0,0である。
このとき、ABC123である楽曲IDで特定される楽曲乃至OPQ385である楽曲IDで特定される楽曲についての、メタデータ1をベクトルとみなす。同様に、ABC123である楽曲IDで特定される楽曲乃至OPQ385である楽曲IDで特定される楽曲についての、メタデータ2乃至メタデータ6のそれぞれをベクトルとみなす。すなわち、複数の楽曲についての1つのメタデータの値をベクトルとみなす。
このベクトル同士の距離に注目する。
図16で示される例において、ベクトルとみなされたメタデータ1、メタデータ3、メタデータ4が、マンハッタン距離1以内のクラスタに、また、メタデータ2、メタデータ5、メタデータ6が、マンハッタン距離1以内の他のクラスタに、まとまっている。
そこで、これらのクラスタを、新たなメタデータの階層とする。すなわち、階層のそれぞれの層に、より近いメタデータが割り付けられる。
図17は、このようにクラスタリングされ、層が割り付けられたメタデータの例を示す。図17に示す例において、第1層には、メタデータ1、メタデータ3、およびメタデータ4が属し、第2層には、メタデータ2、メタデータ5、およびメタデータ6が属する。
このように、相関の高いメタデータの集まりでそれぞれの層が形成され、その中でコンテンツのクラスタリングが行われるので、ジャンルやアーティストなどをそのまま階層とするような通常の階層分けでは表現しきれない微妙なコンテンツ間の差をクラスタに反映することができる。
図14に戻り、ステップS204において、楽曲クラスタリング部202は、層毎に楽曲をクラスタリングする。すなわち、楽曲クラスタリング部202は、各コンテンツを、割り当てられた階層のそれぞれにおいて複数のクラスタのいずれかに分類する。
ステップS205およびステップS206は、それぞれ、図6のステップS2およびステップS3と同様なので、その説明は省略する。
このようにすることで、メタデータによるコンテンツの表現の詳細度(表現の詳細さの度合い)を保ったまま、データ量および計算量を削減して、コンテンツをクラスタリングすることができる。
また、以上のように、メタデータを階層化することにより、コンテンツ間の微妙な相違がよく表現されるようにコンテンツをクラスタリングすることができる。
次に、類似利用者検出部203の詳細について説明する。
図18は、類似利用者検出部203の構成の例を示すブロック図である。類似利用者検出部203は、正規化部231、重み計算部232、および類似度計算部233から構成される。
正規化部231は、利用者の嗜好情報の一例である嗜好ベクトルを正規化する。重み計算部232は、正規化された各利用者の嗜好ベクトルから、利用者のそれぞれについて階層毎の重みを計算する。類似度計算部233は、階層毎の重みと嗜好ベクトルとから、楽曲を推薦しようとする利用者と、他の利用者との嗜好の類似の度合いを示す類似度を計算する。
次に、図8のステップS21に対応する、類似利用者検出部203による、嗜好の類似する利用者Xの検出の処理を、図19のフローチャートを参照して説明する。
ステップS231において、正規化部231は、利用者それぞれの嗜好ベクトルを正規化する。
図20および図21を参照して、嗜好ベクトルの正規化について説明する。図20は、嗜好ベクトル生成部19において生成され、利用者履歴情報DB17に保持されている各利用者の嗜好ベクトルの例を示す図である。すなわち、図20は、正規化される前の嗜好ベクトルの例を示す。
図20で示される嗜好ベクトルの要素のうち、最初の4つの要素が第1層に属し、次の4つの要素が第2層に属し、さらに次の3つの要素が第3層に属し、最後の4つの要素が第4層に属する。
図20に示す例において、U001であるユーザIDで特定される利用者の嗜好ベクトルは、(0.0,2.8,0.0,2.2,0.4,0.6,0.8,0.0,0.5,0.4,0.4,0.0,0.5,0.4,0.0)である。ここで、それぞれ0.0,2.8,0.0,2.2である最初の4つの要素は、第1層に属し、それぞれ0.4,0.6,0.8,0.0である次の4つの要素は、第2層に属し、それぞれ0.5,0.4,0.4であるさらに次の3つの要素は、第3層に属し、それぞれ0.0,0.5,0.4,0.0である最後の4つの要素は、第4層に属する。
図20に示す例において、U002であるユーザIDで特定される利用者の嗜好ベクトルは、(0.2,0.8,0.5,0.6,0.0,0.5,0.5,0.0,0.7,0.3,0.6,0.0,0.6,0.2,0.0)である。ここで、それぞれ0.2,0.8,0.5,0.6である最初の4つの要素は、第1層に属し、それぞれ0.0,0.5,0.5,0.0である次の4つの要素は、第2層に属し、それぞれ0.7,0.3,0.6であるさらに次の3つの要素は、第3層に属し、それぞれ0.0,0.6,0.2,0.0である最後の4つの要素は、第4層に属する。
図20に示す例において、U003であるユーザIDで特定される利用者の嗜好ベクトルは、(0.0,2.2,0.1,1.6,0.0,1.0,2.0,1.4,0.0,1.2,0.1,0.3,0.4,0.6,0.7)である。ここで、それぞれ0.0,2.2,0.1,1.6である最初の4つの要素は、第1層に属し、それぞれ0.0,1.0,2.0,1.4である次の4つの要素は、第2層に属し、それぞれ0.0,1.2,0.1であるさらに次の3つの要素は、第3層に属し、それぞれ0.3,0.4,0.6,0.7である最後の4つの要素は、第4層に属する。
例えば、ステップS231において、正規化部231は、それぞれの層におけるノルムが1になるように、それぞれの嗜好ベクトルを正規化する。
図21は、図20の嗜好ベクトルを、それぞれの層におけるノルムが1になるように正規化した嗜好ベクトルの例を示す図である。
図21に示す例において、U001であるユーザIDで特定される利用者の正規化された嗜好ベクトルは、(0.0,0.8,0.0,0.6,0.4,0.6,0.7,0.0,0.7,0.5,0.5,0.0,0.5,0.4,0.0)である。ここで、それぞれ0.0,0.8,0.0,0.6である最初の4つの要素は、第1層に属し、それぞれ0.4,0.6,0.7,0.0である次の4つの要素は、第2層に属し、それぞれ0.7,0.5,0.5であるさらに次の3つの要素は、第3層に属し、それぞれ0.0,0.5,0.4,0.0である最後の4つの要素は、第4層に属する。
図21に示す例において、U002であるユーザIDで特定される利用者の正規化された嗜好ベクトルは、(0.2,0.7,0.4,0.5,0.0,0.7,0.7,0.0,0.7,0.3,0.6,0.0,0.8,0.3,0.0)である。ここで、それぞれ0.2,0.7,0.4,0.5である最初の4つの要素は、第1層に属し、それぞれ0.0,0.7,0.7,0.0である次の4つの要素は、第2層に属し、それぞれ0.7,0.3,0.6であるさらに次の3つの要素は、第3層に属し、それぞれ0.0,0.8,0.3,0.0である最後の4つの要素は、第4層に属する。
図21に示す例において、U003であるユーザIDで特定される利用者の正規化された嗜好ベクトルは、(0.0,0.8,0.0,0.6,0.0,0.4,0.8,0.5,0.0,1.0,0.1,0.3,0.2,0.2,0.3)である。ここで、それぞれ0.0,0.8,0.0,0.6である最初の4つの要素は、第1層に属し、それぞれ0.0,0.4,0.8,0.5である次の4つの要素は、第2層に属し、それぞれ0.0,1.0,0.1であるさらに次の3つの要素は、第3層に属し、それぞれ0.3,0.2,0.2,0.3である最後の4つの要素は、第4層に属する。
図19に戻り、ステップS232において、重み計算部232は、利用者それぞれの嗜好ベクトルの階層のそれぞれについて、重みを計算する。例えば、ステップS232において、重み計算部232は、それぞれの階層毎に、1つの階層に属する要素の分散である重みを計算する。
図22は、利用者それぞれについて階層毎に計算された、それぞれの階層に属する要素の分散である重みの例を示す図である。図22に示す例において、U001であるユーザIDで特定される利用者についての第1層の重み、第2層の重み、第3層の重み、および第4層の重みは、それぞれ、0.17、0.10、0.01、および0.06である。
U002であるユーザIDで特定される利用者についての第1層の重み、第2層の重み、第3層の重み、および第4層の重みは、それぞれ、0.05、0.17、0.05、および0.16である。また、U003であるユーザIDで特定される利用者についての第1層の重み、第2層の重み、第3層の重み、および第4層の重みは、それぞれ、0.16、0.10、0.31、および0.00である。
ステップS233において、類似度計算部233は、利用者のそれぞれについて、重み付けした嗜好の類似度を計算する。ステップS234において、類似利用者検出部203は、利用者から、最大の嗜好の類似度の利用者Xを検出して、処理は終了する。
仮に、式(1)により、利用者uおよび利用者vの類似度sim(u,v)を重み付けせずに計算するとすれば、利用者XをU001であるユーザIDで特定される利用者とした場合、U002であるユーザIDで特定される利用者およびU003であるユーザIDで特定される利用者についての類似度は、図23に示されるようになる。
Figure 0004378646
式(1)において、Lは、嗜好ベクトルの階層の数を示す値であり、lは、嗜好ベクトルの階層を特定する値である。C(l)は、嗜好ベクトルのクラスタの全体を示し、cは、クラスタを特定する値である。hは、正規化された嗜好ベクトルの要素の値を示す。
U001であるユーザIDで特定される利用者の嗜好ベクトルの要素のうち、第1層の要素と、U002であるユーザIDで特定される利用者の嗜好ベクトルの要素のうち、第1層の要素とが、対応する要素同士で乗算され、乗算された結果が積算されると、図23のU002であるユーザIDの第1層に配置した値である0.88が求められる。同様に、第2層、第3層、および第4層について、U001であるユーザIDで特定される利用者の嗜好ベクトルの要素と、U002であるユーザIDで特定される利用者の嗜好ベクトルの要素とが、対応する要素同士で乗算され、乗算された結果が積算されると、図23のU002であるユーザIDの第2層、第3層、および第4層のそれぞれに配置した値である0.92、0.97、0.50が求められる。
最終的に、U001であるユーザIDで特定される利用者とU002であるユーザIDで特定される利用者との嗜好の類似度は、第1層、第2層、第3層、および第4層のそれぞれについて求められた0.88、0.92、0.97、および0.50を加算した値である3.27とされる。
同様に、U001であるユーザIDで特定される利用者の嗜好ベクトルの要素のうち、第1層の要素と、U003であるユーザIDで特定される利用者の嗜好ベクトルの要素のうち、第1層の要素とが、対応する要素同士で乗算され、乗算された結果が積算されると、図23のU003であるユーザIDの第1層に配置した値である1.00が求められる。同様に、第2層、第3層、および第4層について、U001であるユーザIDで特定される利用者の嗜好ベクトルの要素と、U003であるユーザIDで特定される利用者の嗜好ベクトルの要素とが、対応する要素同士で乗算され、乗算された結果が積算されると、図23のU003であるユーザIDの第2層、第3層、および第4層のそれぞれに配置した値である0.77、0.57、0.15が求められる。
最終的に、U001であるユーザIDで特定される利用者とU003であるユーザIDで特定される利用者との嗜好の類似度は、第1層、第2層、第3層、および第4層のそれぞれについて求められた1.00、0.77、0.57、および0.15を加算した値である2.50とされる。
このように、重み付けせずに類似度を計算すると、U001であるユーザIDで特定される利用者とU002であるユーザIDで特定される利用者との嗜好の類似度が、U001であるユーザIDで特定される利用者とU003であるユーザIDで特定される利用者との嗜好の類似度より大きいので、最大の嗜好の類似度の利用者Xとして、U002であるユーザIDで特定される利用者が検出されることになる。
これに対して、ステップS233において、類似度計算部233は、式(2)により、重み付けした、利用者uおよび利用者vの類似度sim(u,v)を計算する。
Figure 0004378646
式(1)において、Lは、嗜好ベクトルの階層の数を示す値であり、lは、嗜好ベクトルの階層を特定する値である。C(l)は、嗜好ベクトルのクラスタの全体を示し、cは、クラスタを特定する値である。hは、正規化された嗜好ベクトルの要素の値を示す。bは、階層のそれぞれについての重みを示す。
図24は、利用者XをU001であるユーザIDで特定される利用者とした場合、U002であるユーザIDで特定される利用者およびU003であるユーザIDで特定される利用者についての重み付けした嗜好の類似度の例を示す図である。なお、図24に示される値は、式(2)で算出される類似度sim(u,v)を100倍したものである。
U001であるユーザIDで特定される利用者の嗜好ベクトルの要素のうち、第1層の要素のそれぞれに、U001であるユーザIDで特定される利用者の第1層の重みが乗算され、U002であるユーザIDで特定される利用者の嗜好ベクトルの要素のうち、第1層の要素のそれぞれに、U002であるユーザIDで特定される利用者の第1層の重みが乗算され、対応する要素同士で乗算され、乗算された結果が積算されると、図24のU002であるユーザIDの第1層に配置した値である0.72が求められる。
同様に、第2層、第3層、および第4層について、U001であるユーザIDで特定される利用者の嗜好ベクトルの要素のそれぞれに、U001であるユーザIDで特定される利用者の第1層の重みが乗算され、U002であるユーザIDで特定される利用者の嗜好ベクトルの要素のそれぞれに、U002であるユーザIDで特定される利用者の第1層の重みが乗算され、対応する要素同士で乗算され、乗算された結果が積算されると、図24のU002であるユーザIDの第2層、第3層、および第4層のそれぞれに配置した値である1.54、0.03、0.48が求められる。
最終的に、U001であるユーザIDで特定される利用者とU002であるユーザIDで特定される利用者との重み付けされた嗜好の類似度は、第1層、第2層、第3層、および第4層のそれぞれについて求められた0.72、1.54、0.03、および0.48を加算した値である2.76とされる。
同様に、U001であるユーザIDで特定される利用者の嗜好ベクトルの要素のうち、第1層の要素のそれぞれに、U001であるユーザIDで特定される利用者の第1層の重みが乗算され、U003であるユーザIDで特定される利用者の嗜好ベクトルの要素のうち、第1層の要素のそれぞれに、U003であるユーザIDで特定される利用者の第1層の重みが乗算され、対応する要素同士で乗算され、乗算された結果が積算されると、図24のU003であるユーザIDの第1層に配置した値である2.74が求められる。同様に、第2層、第3層、および第4層について、U001であるユーザIDで特定される利用者の嗜好ベクトルの要素のそれぞれに、U001であるユーザIDで特定される利用者の第1層の重みが乗算され、U003であるユーザIDで特定される利用者の嗜好ベクトルの要素のそれぞれに、U003であるユーザIDで特定される利用者の第1層の重みが乗算され、対応する要素同士で乗算され、乗算された結果が積算されると、図24のU003であるユーザIDの第2層、第3層、および第4層のそれぞれに配置した値である0.79、0.10、0.00が求められる。
最終的に、U001であるユーザIDで特定される利用者とU003であるユーザIDで特定される利用者との重み付けされた嗜好の類似度は、第1層、第2層、第3層、および第4層のそれぞれについて求められた2.74、0.79、0.10、および0.00を加算した値である3.64とされる。
この結果、重み付けして類似度を計算すると、U001であるユーザIDで特定される利用者とU003であるユーザIDで特定される利用者との嗜好の類似度が、U001であるユーザIDで特定される利用者とU002であるユーザIDで特定される利用者との嗜好の類似度より大きいので、最大の嗜好の類似度の利用者Xとして、U003であるユーザIDで特定される利用者が検出される。
図20で示される嗜好ベクトルに注目すると、U001であるユーザIDで特定される利用者の嗜好ベクトルの各要素の値は、第2層乃至第4層に比較して、第1層において大きく変化しているので、第2層乃至第4層に比較して、第1層の各要素の値が、U001であるユーザIDで特定される利用者の嗜好により関係すると予測される。
U002であるユーザIDで特定される利用者の嗜好ベクトル、およびU003であるユーザIDで特定される利用者の嗜好ベクトルの第1層の各要素の値について注目すると、U003であるユーザIDで特定される利用者の嗜好ベクトルの第1層の各要素の値が、U002であるユーザIDで特定される利用者の嗜好ベクトルの第1層の各要素の値より、U001であるユーザIDで特定される利用者の嗜好ベクトルの第1層の各要素の値に近似している。従って、U002であるユーザIDで特定される利用者に比較して、U003であるユーザIDで特定される利用者の嗜好は、U001であるユーザIDで特定される利用者の嗜好に類似していると予測される。
このように、重み付けすることによって、利用者の嗜好にあまり関係しないと予測される値に比較して、利用者の嗜好により関係すると予測される値によって、その値がより大きく変化する嗜好の類似度を求めることができるので、より正確に、嗜好の類似する利用者を検出することができる。
なお、ステップS232において、重み計算部232は、例えば、それぞれの階層に属する要素の分散である重みを計算すると説明したが、これに限らず、階層における要素のばらつきが大きい場合により大きい値となる重みを計算すればよく、例えば、式(3)によりエントロピーHを算出し、1からエントロピーHを引き算した結果得られる値である重みを計算するようにしてもよい。
Figure 0004378646
このように、情報の欠落を最小限に抑えつつ、適切なコンテンツを選択するための計算量を削減することができる。また、利用者がどのような情報に着目してコンテンツを選択しているかを確実に反映したコンテンツを提示することができるようになる。
なお、本明細書において、プログラムに基づいて実行されるステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、プログラムは、1台のコンピュータにより処理されるものであってもよいし、複数のコンピュータによって分散処理されるものであってもよい。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであってもよい。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
本発明を適用した推薦システムの構成例を示すブロック図である。 楽曲のメタデータを分類するクラスタとクラスタ層の概念を示す図である。 楽曲−クラスタ対応表の一例を示す図である。 クラスタ−楽曲対応表の一例を示す図である。 利用者の嗜好ベクトルの一例を示す図である。 オフライン時の前処理を説明するフローチャートである。 第1の推薦処理を説明するフローチャートである。 第2および3の推薦処理を説明するフローチャートである。 第4の推薦処理を説明するフローチャートである。 第5および6の推薦処理を説明するフローチャートである。 第7の推薦処理を説明するフローチャートである。 汎用パーソナルコンピュータの構成例を示すブロック図である。 本発明の一実施の形態の推薦システムの他の構成の例を示すブロック図である。 オフライン時の前処理の他の例を説明するフローチャートである。 ソフトクラスタリングされた各楽曲のメタデータの例を示す図である。 各楽曲のメタデータの例を示す図である。 クラスタリングされた各楽曲のメタデータの例を示す図である。 類似利用者検出部の構成の例を示すブロック図である。 嗜好の類似する利用者Xの検出の処理を説明するフローチャートである。 嗜好ベクトルの例を示す図である。 正規化された嗜好ベクトルの例を示す図である。 重みの例を示す図である。 重み付けせずに計算した類似度の例を示す図である。 重み付けして計算した類似度の例を示す図である。
符号の説明
1 推薦システム, 11 楽曲DB, 12 クラスタリング部, 13 キーワード設定部, 14 クラスタリング済DB, 15 クラスタ−楽曲対応表, 16 楽曲−クラスタ対応表, 17 利用者履歴情報DB, 18 推薦候補選択部, 19 嗜好ベクトル生成部, 20 類似利用者検出部, 21 利用者グループ化部, 22 差分検出部, 23 推薦クラスタ決定部, 24 抽出部, 25 楽曲選択部, 26 新規性判定部, 27 選択理由生成部, 28 提示部, 100 パーソナルコンピュータ, 101 CPU, 111 記録媒体, 201 メタデータクラスタリング部, 202 楽曲クラスタリング部, 203 類似利用者検出部, 231 正規化部, 232 重み計算部, 233 類似度計算部

Claims (10)

  1. コンテンツ群のなかから所定の条件を満たすコンテンツを選択して利用者に提示する情報処理装置において、
    前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた階層のそれぞれにおいて複数の第1のクラスタのいずれかに分類するコンテンツ分類手段と、
    各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記第1のクラスタとの対応関係を示すデータベースを保持する保持手段と、
    前記利用者のコンテンツに対する履歴情報を管理する管理手段と、
    前記履歴情報に基づき、注目する第1のクラスタを特定し、特定した前記第1のクラスタに分類されているコンテンツを選択する選択手段と、
    前記履歴情報と前記データベースに基づき、前記利用者の嗜好を前記第1のクラスタ単位で示す嗜好情報を生成する生成手段と、
    前記嗜好情報と、選択された前記コンテンツが属する前記第1のクラスタの重複度が所定の割合以上である場合新規性がないと判定し、所定の割合未満である場合新規性があると判定する判定手段と、
    前記コンテンツ分類手段によって前記メタデータが分類される第1のクラスタのそれぞれに対してキーワードを設定する設定手段と、
    前記設定手段によって設定されたキーワード及び前記判定手段によって判定された新規性の有無を用い、コンテンツの提示理由を表す理由文を作成する作成手段と、
    選択された前記コンテンツ及び前記理由文を提示する提示手段と
    を含む情報処理装置。
  2. 前記選択手段は、
    第1の利用者と前記履歴情報が類似している第2の利用者を検出する検出手段と、
    前記第1の利用者の履歴情報上に存在せず、前記第2の利用者の履歴情報上に存在するコンテンツが分類されている第1のクラスタを特定する特定手段と、
    特定された前記第1のクラスタに分類されているコンテンツを抽出する抽出手段とを含み、
    前記提示手段は、前記第1の利用者に対して抽出された前記コンテンツを提示する
    請求項1に記載の情報処理装置。
  3. 記嗜好情報に基づいて利用者をグループ化するグループ化手段とをさらに含み、
    前記選択手段は、
    第1の利用者と同じグループに属する第2の利用者を検出する検出手段と、
    前記第1の利用者の履歴情報上に存在せず、前記第2の利用者の履歴情報上に存在するコンテンツが分類されている第1のクラスタを特定する特定手段と、
    特定された前記第1のクラスタに分類されているコンテンツを抽出する抽出手段とを含み、
    前記提示手段は、前記第1の利用者に対して抽出された前記コンテンツを提示する
    請求項1に記載の情報処理装置。
  4. 記選択手段は、
    第1の利用者と前記嗜好情報で示される嗜好が類似している第2の利用者を検出する検出手段と、
    前記第1の利用者の嗜好情報と前記第2の利用者の嗜好情報に基づいて注目する第1のクラスタを特定する特定手段と、
    特定された前記第1のクラスタに分類されているコンテンツを抽出する抽出手段とを含み、
    前記提示手段は、前記第1の利用者に対して抽出された前記コンテンツを提示する
    請求項1に記載の情報処理装置。
  5. 前記検出手段は、
    利用者の嗜好情報を正規化する正規化手段と、
    正規化された各利用者の嗜好情報から、利用者のそれぞれについて階層毎の重みを計算する重み計算手段と、
    階層毎の重みと前記嗜好情報とから、利用者のうちの第1の利用者と、利用者のうちの他の利用者との嗜好の類似の度合いを示す類似度を計算する類似度計算手段と
    を含み、
    計算された類似度から、第1の利用者と嗜好が類似している第2の利用者を検出する
    請求項4に記載の情報処理装置。
  6. 記嗜好情報に基づいて利用者をグループ化するグループ化手段とをさらに含み、
    前記選択手段は、
    第1の利用者と同じグループに属する第2の利用者を検出する検出手段と、
    前記第1の利用者の嗜好情報と前記第2の利用者の嗜好情報に基づいて注目する第1のクラスタを特定する特定手段と、
    特定された前記第1のクラスタに分類されているコンテンツを抽出する抽出手段とを含み、
    前記提示手段は、前記第1の利用者に対して抽出された前記コンテンツを提示する
    請求項1に記載の情報処理装置。
  7. コンテンツのメタデータを複数の第2のクラスタのいずれかに分類し、第2のクラスタに前記階層を割り当てるメタデータ分類手段を更に含み、
    前記コンテンツ分類手段は、各コンテンツを、割り当てられた前記階層のそれぞれにおいて複数の第1のクラスタのいずれかに分類する
    請求項1に記載の情報処理装置。
  8. 記選択手段は、全部の前記階層の全部の前記第1のクラスタのうち、前記嗜好情報で示される前記第1のクラスタであって、最も多くの前記第1のクラスタに分類されているコンテンツを選択する
    請求項1に記載の情報処理装置。
  9. コンテンツ群のなかから所定の条件を満たすコンテンツを選択して利用者に提示する情報処理装置の情報処理方法において、
    前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた各階層において複数のクラスタのいずれかに分類し、
    各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースを保持し、
    前記利用者のコンテンツに対する履歴情報を管理し、
    前記履歴情報に基づき、注目するクラスタを特定し、特定した前記クラスタに分類されているコンテンツを選択し、
    前記履歴情報と前記データベースに基づき、前記利用者の嗜好を前記第1のクラスタ単位で示す嗜好情報を生成し、
    前記嗜好情報と、選択された前記コンテンツが属する前記第1のクラスタの重複度が所定の割合以上である場合新規性がないと判定し、所定の割合未満である場合新規性があると判定し、
    前記メタデータが分類される第1のクラスタのそれぞれに対してキーワードを設定し、
    設定されたキーワード及び判定された新規性の有無を用い、コンテンツの提示理由を表す理由文を作成し、
    選択された前記コンテンツ及び前記理由文を提示する
    ステップを含む情報処理方法。
  10. コンテンツ群のなかから所定の条件を満たすコンテンツを選択して利用者に推薦するためのプログラムであって、
    前記コンテンツ群を構成する各コンテンツを、コンテンツのメタデータに応じた各階層において複数のクラスタのいずれかに分類し、
    各コンテンツと各コンテンツのそれぞれが分類された前記階層における前記クラスタとの対応関係を示すデータベースを保持し、
    前記利用者のコンテンツに対する履歴情報を管理し、
    前記履歴情報に基づき、注目するクラスタを特定し、特定した前記クラスタに分類されているコンテンツを選択し、
    前記履歴情報と前記データベースに基づき、前記利用者の嗜好を前記第1のクラスタ単位で示す嗜好情報を生成し、
    前記嗜好情報と、選択された前記コンテンツが属する前記第1のクラスタの重複度が所定の割合以上である場合新規性がないと判定し、所定の割合未満である場合新規性があると判定し、
    前記メタデータが分類される第1のクラスタのそれぞれに対してキーワードを設定し、
    設定されたキーワード及び判定された新規性の有無を用い、コンテンツの提示理由を表す理由文を作成し、
    選択された前記コンテンツ及び前記理由文を提示する
    ステップを含む処理をコンピュータに実行させるプログラム。
JP2006151012A 2005-09-28 2006-05-31 情報処理装置、情報処理方法、およびプログラム Expired - Fee Related JP4378646B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2006151012A JP4378646B2 (ja) 2005-09-28 2006-05-31 情報処理装置、情報処理方法、およびプログラム
PCT/JP2006/318373 WO2007037139A1 (ja) 2005-09-28 2006-09-15 情報処理装置、方法、およびプログラム
KR1020077011814A KR20080045659A (ko) 2005-09-28 2006-09-15 정보 처리 장치, 방법, 및 프로그램
EP06798036A EP1835419A4 (en) 2005-09-28 2006-09-15 DEVICE, METHOD AND INFORMATION PROGRAM FOR INFORMATION PROCESSING
CN200680001299A CN100594496C (zh) 2005-09-28 2006-09-15 信息处理装置和方法
US11/791,361 US8117211B2 (en) 2005-09-28 2006-09-15 Information processing device and method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005281357 2005-09-28
JP2006151012A JP4378646B2 (ja) 2005-09-28 2006-05-31 情報処理装置、情報処理方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2007122683A JP2007122683A (ja) 2007-05-17
JP4378646B2 true JP4378646B2 (ja) 2009-12-09

Family

ID=37899569

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006151012A Expired - Fee Related JP4378646B2 (ja) 2005-09-28 2006-05-31 情報処理装置、情報処理方法、およびプログラム

Country Status (6)

Country Link
US (1) US8117211B2 (ja)
EP (1) EP1835419A4 (ja)
JP (1) JP4378646B2 (ja)
KR (1) KR20080045659A (ja)
CN (1) CN100594496C (ja)
WO (1) WO2007037139A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020022669A1 (ko) * 2018-07-25 2020-01-30 (주)엔터랩 인공지능 과제매칭 방법, 장치 및 프로그램

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9065727B1 (en) 2012-08-31 2015-06-23 Google Inc. Device identifier similarity models derived from online event signals
CN101490683A (zh) * 2006-08-30 2009-07-22 松下电器产业株式会社 信息提示装置、信息提示方法、信息提示程序及集成电路
JP5392808B2 (ja) * 2007-11-27 2014-01-22 日本電気株式会社 コンテクスト対応情報推薦装置、コンテクスト対応情報推薦方法およびコンテクスト対応情報推薦プログラム
JP4538760B2 (ja) * 2007-12-04 2010-09-08 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体
JP4538758B2 (ja) * 2007-12-04 2010-09-08 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体
JP4433326B2 (ja) 2007-12-04 2010-03-17 ソニー株式会社 情報処理装置および方法、並びにプログラム
EP2068276A1 (en) 2007-12-04 2009-06-10 Sony Corporation Information processing device and method, program, and recording medium
US20090198666A1 (en) * 2008-02-01 2009-08-06 Winston Ronald H Affinity matching system and method
CN101547167A (zh) * 2008-03-25 2009-09-30 华为技术有限公司 内容分类方法、装置及系统
JP5166949B2 (ja) * 2008-04-10 2013-03-21 株式会社エヌ・ティ・ティ・ドコモ レコメンド情報生成装置およびレコメンド情報生成方法
JP4790753B2 (ja) * 2008-04-28 2011-10-12 日本電信電話株式会社 情報推薦装置、情報推薦方法、プログラム及び記録媒体
US8386486B2 (en) * 2008-07-02 2013-02-26 Palo Alto Research Center Incorporated Method for facilitating social networking based on fashion-related information
CN101661483B (zh) * 2008-08-29 2012-10-03 株式会社理光 一种推荐系统及推荐方法
JP4650552B2 (ja) * 2008-10-14 2011-03-16 ソニー株式会社 電子機器、コンテンツ推薦方法及びプログラム
KR101111121B1 (ko) * 2009-06-29 2012-02-13 주식회사 모임 인공지능에 기반한 개인별 맞춤형 컨텐츠 제공 장치 및 방법, 그 기록 매체
US8635255B2 (en) * 2009-06-30 2014-01-21 Verizon Patent And Licensing Inc. Methods and systems for automatically customizing an interaction experience of a user with a media content application
EP2481018A4 (en) * 2009-09-21 2013-06-12 Ericsson Telefon Ab L M METHOD AND DEVICE FOR PERFORMING A RECOMMENDATION
JP5609056B2 (ja) * 2009-10-14 2014-10-22 ソニー株式会社 コンテンツ関係可視化装置、表示制御装置、コンテンツ関係可視化方法およびプログラム
JP2011158980A (ja) * 2010-01-29 2011-08-18 Brother Industries Ltd 消費者情報処理装置
EP2565835A4 (en) 2010-04-28 2013-10-16 Jvc Kenwood Corp ARTICLES SELECTION DEVICE, ARTICLES SELECTION METHOD, AND ARTICLES SELECTION UTILIZATION PROGRAM
CN102486926B (zh) * 2010-12-03 2015-04-08 上海博泰悦臻电子设备制造有限公司 个性化音乐媒体信息获取方法及系统
US8719248B2 (en) * 2011-05-26 2014-05-06 Verizon Patent And Licensing Inc. Semantic-based search engine for content
US8990208B2 (en) * 2011-09-22 2015-03-24 Fujitsu Limited Information management and networking
JP5727920B2 (ja) * 2011-11-21 2015-06-03 株式会社Nttドコモ レコメンドコンテンツ出力装置及びレコメンドコンテンツ出力方法
JP5696025B2 (ja) * 2011-11-22 2015-04-08 日本電信電話株式会社 商品情報推薦装置及び方法及びプログラム
JP5785864B2 (ja) * 2011-12-06 2015-09-30 株式会社日立製作所 製造ラインシミュレーション装置、データ入力支援装置、およびデータ入力支援方法
US9053185B1 (en) 2012-04-30 2015-06-09 Google Inc. Generating a representative model for a plurality of models identified by similar feature data
US8914500B1 (en) 2012-05-21 2014-12-16 Google Inc. Creating a classifier model to determine whether a network user should be added to a list
JP5846442B2 (ja) * 2012-05-28 2016-01-20 ソニー株式会社 情報処理装置、情報処理方法、および、プログラム
JP6127388B2 (ja) * 2012-06-13 2017-05-17 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
US8886575B1 (en) 2012-06-27 2014-11-11 Google Inc. Selecting an algorithm for identifying similar user identifiers based on predicted click-through-rate
US8874589B1 (en) 2012-07-16 2014-10-28 Google Inc. Adjust similar users identification based on performance feedback
US8782197B1 (en) 2012-07-17 2014-07-15 Google, Inc. Determining a model refresh rate
US8886799B1 (en) 2012-08-29 2014-11-11 Google Inc. Identifying a similar user identifier
KR101464044B1 (ko) * 2012-09-28 2014-11-20 주식회사 엘지유플러스 관심 키워드 제공 장치 및 방법
US20150193821A1 (en) * 2012-09-28 2015-07-09 Rakuten, Inc. Information processing apparatus, information processing method, and information processing program
CN102917269B (zh) * 2012-09-29 2016-06-29 青岛海信电器股份有限公司 一种电视节目推荐系统及方法
JP6014515B2 (ja) * 2013-02-22 2016-10-25 株式会社エヌ・ティ・ティ・データ レコメンド情報提供システム、レコメンド情報生成装置、レコメンド情報提供方法、およびプログラム
KR101581917B1 (ko) * 2014-08-12 2016-01-04 네이버 주식회사 컨텐츠 표시 제어 장치, 컨텐츠 표시 제어 방법 및 이를 컴퓨터에서 실행하기 위한 컴퓨터 프로그램
CN104731954B (zh) * 2015-04-01 2018-01-26 天翼爱音乐文化科技有限公司 基于群透视音乐推荐方法与系统
US20190050872A1 (en) * 2016-02-05 2019-02-14 Xiao-Feng YU User interest and relationship determination
CN108681919A (zh) * 2018-05-10 2018-10-19 苏州跃盟信息科技有限公司 一种内容推送方法及装置
CN108920630B (zh) * 2018-06-29 2023-03-21 联想(北京)有限公司 一种数据处理方法及电子设备
CN109086813B (zh) * 2018-07-23 2021-05-14 广州虎牙信息科技有限公司 主播相似度的确定方法、装置、设备及存储介质
JP7003088B2 (ja) * 2019-05-27 2022-01-20 楽天グループ株式会社 レコメンド装置、レコメンド方法、及びレコメンドプログラム
KR102284393B1 (ko) * 2020-08-26 2021-08-04 (주)인더스트리미디어 학습 콘텐츠 추천 장치 및 방법
CN113949931A (zh) * 2021-10-13 2022-01-18 深圳市视壮科技有限公司 一种iptv节目推荐方法及系统
WO2024084691A1 (ja) * 2022-10-21 2024-04-25 ヤマハ発動機株式会社 対話型提案出力システム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7617127B2 (en) * 2000-04-28 2009-11-10 Netflix, Inc. Approach for estimating user ratings of items
JP3672023B2 (ja) * 2001-04-23 2005-07-13 日本電気株式会社 番組推薦システムおよび番組推薦方法
US20030033370A1 (en) * 2001-08-07 2003-02-13 Nicholas Trotta Media-related content personalization
JP2003216636A (ja) 2002-01-23 2003-07-31 Hitachi Ltd 最新記事推薦方法およびシステム
US9374451B2 (en) * 2002-02-04 2016-06-21 Nokia Technologies Oy System and method for multimodal short-cuts to digital services
JP2004178521A (ja) 2002-11-29 2004-06-24 Superstation Inc 推薦システム
JP4547596B2 (ja) 2002-12-12 2010-09-22 ソニー株式会社 情報処理装置および情報処理方法、並びにプログラム
JP4161701B2 (ja) 2002-12-12 2008-10-08 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びにプログラム
KR101084503B1 (ko) * 2002-12-12 2011-11-18 소니 주식회사 정보 처리 장치 및 정보 처리 방법, 및 기록 매체
JP2004194108A (ja) 2002-12-12 2004-07-08 Sony Corp 情報処理装置および情報処理方法、記録媒体、並びにプログラム
JP4003127B2 (ja) 2002-12-12 2007-11-07 ソニー株式会社 情報処理装置および情報処理方法、情報処理システム、記録媒体、並びにプログラム
WO2004055302A1 (ja) * 2002-12-13 2004-07-01 Matsushita Electric Industrial Co., Ltd. 車載機器制御システム、車載機器制御装置、及び車載機器制御方法
JP2004355340A (ja) * 2003-05-29 2004-12-16 Sony Corp 情報処理装置および方法、プログラム、並びに記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020022669A1 (ko) * 2018-07-25 2020-01-30 (주)엔터랩 인공지능 과제매칭 방법, 장치 및 프로그램

Also Published As

Publication number Publication date
WO2007037139A1 (ja) 2007-04-05
US20090077132A1 (en) 2009-03-19
US8117211B2 (en) 2012-02-14
JP2007122683A (ja) 2007-05-17
CN101069184A (zh) 2007-11-07
CN100594496C (zh) 2010-03-17
EP1835419A1 (en) 2007-09-19
KR20080045659A (ko) 2008-05-23
EP1835419A4 (en) 2009-09-16

Similar Documents

Publication Publication Date Title
JP4378646B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US7953735B2 (en) Information processing apparatus, method and program
US8560545B2 (en) Item recommendation system which considers user ratings of item clusters
US7743059B2 (en) Cluster-based management of collections of items
US7966225B2 (en) Method, system, and medium for cluster-based categorization and presentation of item recommendations
US8019766B2 (en) Processes for calculating item distances and performing item clustering
US7689457B2 (en) Cluster-based assessment of user interests
US8407230B2 (en) System and method for identifying similar media objects
US8650094B2 (en) Music recommendation using emotional allocation modeling
JP4622589B2 (ja) 情報処理装置および方法、プログラム、並びに記録媒体
US20080288255A1 (en) System and method for quantifying, representing, and identifying similarities in data streams
US7849092B2 (en) System and method for identifying similar media objects
US20090055376A1 (en) System and method for identifying similar media objects
JP2011175362A (ja) 情報処理装置、重要度算出方法及びプログラム
US20100325126A1 (en) Recommendation based on low-rank approximation
WO2008121872A1 (en) Cluster-based assessment of user interests
US20070192317A1 (en) Method of assessing consumer preference tendencies based on correlated communal information
JP2008117222A (ja) 情報処理装置および方法、並びにプログラム
KR102249466B1 (ko) 인공지능 추천 모델을 사용하여 추천 정보를 제공하는 데이터 카탈로그 제공 방법 및 시스템
Donaldson A hybrid social-acoustic recommendation system for popular music
JP2007115222A (ja) 情報処理装置および方法、並びにプログラム
US20180349372A1 (en) Media item recommendations based on social relationships
JP5131565B2 (ja) 情報処理装置および方法、プログラム、並びに記録媒体
Chinchalikar et al. Application of Genetic Algorithm for Audio Search with Recommender System

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090519

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090721

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090820

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090902

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121002

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4378646

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121002

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131002

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees