(57)【特許請求の範囲】
【請求項１】
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、
前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択する選択手段と、
前記選択したタイプのコンテンツを前記サーバから取得する取得手段と
を含み、
前記選択手段は、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプを選択し、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリを選択する
情報処理装置。
【請求項２】
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、
前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択する選択手段と、
前記選択したタイプのコンテンツを前記サーバから取得する取得手段と
を含む情報処理装置。
【請求項３】
前記選択手段は、前記選択したカテゴリに前記ユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から前記ユーザの嗜好度が高いタイプを優先して選択する
請求項１または２に記載の情報処理装置。
【請求項４】
前記選択手段は、前記選択したカテゴリに前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプのうち前記ユーザの嗜好と一致するタイプに近いタイプを優先して選択する
請求項３に記載の情報処理装置。
【請求項５】
前記取得手段は、前記サーバまたは前記サーバと異なるサーバから前記タイプ情報を取得する
請求項１または２に記載の情報処理装置。
【請求項６】
前記取得手段は、前記サーバまたは前記サーバと異なるサーバから、前記選択したタイプのコンテンツのリストを取得し、前記リストに基づいて前記サーバからコンテンツを取得する
請求項１または２に記載の情報処理装置。
【請求項７】
情報処理装置が、
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、
前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択するとともに、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプを選択し、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリを選択し、
前記選択したタイプのコンテンツを前記サーバから取得する
ステップを含む情報処理方法。
【請求項８】
情報処理装置が、
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、
前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択し、
前記選択したタイプのコンテンツを前記サーバから取得する
ステップを含む情報処理方法。
【請求項９】
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、
前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択するとともに、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプを選択し、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリを選択し、
前記選択したタイプのコンテンツを前記サーバから取得する
ステップを含む処理をコンピュータに実行させるためのプログラム。
【請求項１０】
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、
前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択し、
前記選択したタイプのコンテンツを前記サーバから取得する
ステップを含む処理をコンピュータに実行させるためのプログラム。
【請求項１１】
クライアント、第１のサーバ、および、第２のサーバにより構成され、
前記クライアントは、
前記第１のサーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、
前記第１のサーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択する選択手段と、
前記タイプ情報を前記第２のサーバから取得し、前記選択したタイプのコンテンツを前記第１のサーバから取得する取得手段と
を含み、
前記第１のサーバは、
前記クライアントにより選択されたタイプのコンテンツを前記クライアントに送信する第１の送信手段を
含み、
前記第２のサーバは、
前記タイプ情報を生成する情報生成手段と、
前記タイプ情報を前記クライアントに送信する第２の送信手段と
を含み、
前記選択手段は、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプを選択し、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリを選択する
情報処理システム。
【請求項１２】
クライアント、第１のサーバ、および、第２のサーバにより構成され、
前記クライアントは、
前記第１のサーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、
前記第１のサーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記第１のサーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択する選択手段と、
前記タイプ情報を前記第２のサーバから取得し、前記選択したタイプのコンテンツを前記第１のサーバから取得する取得手段と
を含み、
前記第１のサーバは、
前記クライアントにより選択されたタイプのコンテンツを前記クライアントに送信する第１の送信手段を
含み、
前記第２のサーバは、
前記タイプ情報を生成する情報生成手段と、
前記タイプ情報を前記クライアントに送信する第２の送信手段と
を含む情報処理システム。
【請求項１３】
前記第２のサーバは、
前記クライアントにより選択されたタイプのコンテンツのリストを生成するリスト生成手段を
さらに含み、
前記第２のサーバの前記第２の送信手段は、前記リストを前記クライアントにさらに送信し、
前記クライアントの前記取得手段は、前記リストを前記第２のサーバからさらに取得し、前記リストに基づいて前記第１のサーバからコンテンツを取得する
請求項１１または１２に記載の情報処理システム。
【請求項１４】
クライアントが、
第１のサーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、
第２のサーバが、
前記第１のサーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報を生成し、
前記タイプ情報を前記クライアントに送信し、
前記クライアントが、
前記タイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択するとともに、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプを選択し、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリを選択し、
前記選択したタイプのコンテンツを前記第１のサーバから取得する
ステップを含む情報処理方法。
【請求項１５】
クライアントが、
第１のサーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、
第２のサーバが、
前記第１のサーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記第１のサーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報を生成し、
前記タイプ情報を前記クライアントに送信し、
前記クライアントが、
前記タイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択し、
前記選択したタイプのコンテンツを前記第１のサーバから取得する
ステップを含む情報処理方法。
【請求項１６】
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、
前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、各タイプのコンテンツの数を示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から、前記選択したタイプのコンテンツの総数が所定の閾値以上になる条件を満たすように１つ以上のタイプを選択する選択手段と、
前記選択したタイプのコンテンツを前記サーバから取得する取得手段と
を含む情報処理装置。
【請求項１７】
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、
前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から所定の条件を満たすように１つ以上のタイプを選択する選択手段と、
前記選択したタイプのコンテンツを前記サーバから取得する取得手段と
を含み、
前記選択手段は、前記選択したカテゴリに前記ユーザの嗜好と一致するタイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択する
情報処理装置。
【請求項１８】
前記選択手段は、前記選択したカテゴリに前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプに近い前記推薦可能タイプの中から前記条件を満たすように１つ以上のタイプを選択する
請求項１６または１７に記載の情報処理装置。
【請求項１９】
前記選択手段は、前記選択したカテゴリに前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプのみの中から前記条件を満たすように１つ以上選択する
請求項１６または１７に記載の情報処理装置。
【請求項２０】
情報処理装置が、
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、
前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、各タイプのコンテンツの数を示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から、前記選択したタイプのコンテンツの総数が所定の閾値以上になる条件を満たすように１つ以上のタイプを選択し、
前記選択したタイプのコンテンツを前記サーバから取得する
ステップを含む情報処理方法。
【請求項２１】
情報処理装置が、
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、
前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から所定の条件を満たすように１つ以上のタイプを選択し、前記ユーザの嗜好と一致するタイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択し、
前記選択したタイプのコンテンツを前記サーバから取得する
ステップを含む情報処理方法。
【請求項２２】
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、
前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、各タイプのコンテンツの数を示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から、前記選択したタイプのコンテンツの総数が所定の閾値以上になる条件を満たすように１つ以上のタイプを選択し、
前記選択したタイプのコンテンツを前記サーバから取得する
ステップを含む処理をコンピュータに実行させるためのプログラム。
【請求項２３】
サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、
前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から所定の条件を満たすように１つ以上のタイプを選択し、前記ユーザの嗜好と一致するタイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択し、
前記選択したタイプのコンテンツを前記サーバから取得する
ステップを含む処理をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法、情報処理システム、並びに、プログラムに関し、特に、コンテンツの推薦を行う場合に用いて好適な情報処理装置および方法、情報処理システム、並びに、プログラムに関する。
【背景技術】
【０００２】
従来、過去にユーザが利用したり、良い評価を与えたコンテンツの属性に基づいて、ユーザの嗜好にあったコンテンツを推薦する方法が各種提案されている（例えば、特許文献１参照）。
【０００３】
例えば、ユーザが過去に良い評価を与えたコンテンツが有する属性を抽出条件とするクエリをクライアントからサーバに送信し、サーバがその抽出条件に基づいてコンテンツを抽出し、クライアントに配信するシステムが提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２０２１８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、必ずしもクライアントから指定された抽出条件を満たすコンテンツがサーバに存在するとは限らず、ユーザにコンテンツを推薦できない場合がある。この場合、クライアント−サーバ間で無駄な通信が発生したり、サーバで無駄な処理が発生したりするため、処理できるクライアント数が減少する。また、ユーザは、サーバからの応答を待ったにも関わらず、コンテンツの推薦を受けることができないため、不快感を覚えるおそれがある。
【０００６】
本発明は、このような状況を鑑みてなされたものであり、無駄な通信および処理の発生を防止しつつ、ユーザの嗜好を反映したコンテンツの推薦を行うことができるようにするにするものである。
【課題を解決するための手段】
【０００７】
本発明の第１の側面の情報処理装置は、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択する選択手段と、前記選択したタイプのコンテンツを前記サーバから取得する取得手段とを含み、前記選択手段は、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプを選択し、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリを選択する。
本発明の第２の側面の情報処理装置は、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択する選択手段と、前記選択したタイプのコンテンツを前記サーバから取得する取得手段とを含む。
【０００９】
前記選択手段には、前記選択したカテゴリに前記ユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から前記ユーザの嗜好度が高いタイプを優先して選択させることができる。
【００１０】
前記選択手段には、前記選択したカテゴリに前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプのうち前記ユーザの嗜好と一致するタイプに近いタイプを優先して選択させることができる。
【００１１】
前記取得手段には、前記サーバまたは前記サーバと異なるサーバから前記タイプ情報を取得させることができる。
【００１２】
前記取得手段には、前記サーバまたは前記サーバと異なるサーバから、前記選択したタイプのコンテンツのリストを取得させ、前記リストに基づいて前記サーバからコンテンツを取得させることができる。
【００１４】
本発明の第１の側面の情報処理方法は、情報処理装置が、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択するとともに、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプを選択し、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリを選択し、前記選択したタイプのコンテンツを前記サーバから取得するステップを含む。
本発明の第２の側面の情報処理方法は、情報処理装置が、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択し、前記選択したタイプのコンテンツを前記サーバから取得するステップを含む。
【００１５】
本発明の第１の側面のプログラムは、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択するとともに、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプを選択し、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリを選択し、前記選択したタイプのコンテンツを前記サーバから取得するステップを含む処理をコンピュータに実行させる。
本発明の第２の側面のプログラムは、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択し、前記選択したタイプのコンテンツを前記サーバから取得するステップを含む処理をコンピュータに実行させる。
【００１６】
本発明の第３の側面の情報処理システムは、クライアント、第１のサーバ、および、第２のサーバにより構成され、前記クライアントは、前記第１のサーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、前記第１のサーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択する選択手段と、前記タイプ情報を前記第２のサーバから取得し、前記選択したタイプのコンテンツを前記第１のサーバから取得する取得手段とを含み、前記第１のサーバは、前記クライアントにより選択されたタイプのコンテンツを前記クライアントに送信する第１の送信手段を含み、前記第２のサーバは、前記タイプ情報を生成する情報生成手段と、前記タイプ情報を前記クライアントに送信する第２の送信手段とを含み、前記選択手段は、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプを選択し、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリを選択する。
本発明の第４の側面の情報処理システムは、クライアント、第１のサーバ、および、第２のサーバにより構成され、前記クライアントは、前記第１のサーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、前記第１のサーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記第１のサーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択する選択手段と、前記タイプ情報を前記第２のサーバから取得し、前記選択したタイプのコンテンツを前記第１のサーバから取得する取得手段とを含み、前記第１のサーバは、前記クライアントにより選択されたタイプのコンテンツを前記クライアントに送信する第１の送信手段を含み、前記第２のサーバは、前記タイプ情報を生成する情報生成手段と、前記タイプ情報を前記クライアントに送信する第２の送信手段とを含む。
【００１７】
前記第２のサーバに、前記クライアントにより選択されたタイプのコンテンツのリストを生成するリスト生成手段をさらに設け、前記第２のサーバの前記第２の送信手段には、前記リストを前記クライアントにさらに送信させ、前記クライアントの前記取得手段には、前記リストを前記第２のサーバからさらに取得させ、前記リストに基づいて前記第１のサーバからコンテンツを取得させることができる。
【００１８】
本発明の第３の側面の情報処理方法は、クライアントが、第１のサーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、第２のサーバが、前記第１のサーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報を生成し、前記タイプ情報を前記クライアントに送信し、前記クライアントが、前記タイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択するとともに、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプを選択し、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリを選択し、前記選択したタイプのコンテンツを前記第１のサーバから取得するステップを含む。
本発明の第４の側面の情報処理方法は、クライアントが、第１のサーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、第２のサーバが、前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報を生成し、前記タイプ情報を前記クライアントに送信し、前記クライアントが、前記タイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択し、前記選択したタイプのコンテンツを前記第１のサーバから取得するステップを含む。
【００１９】
本発明の第５の側面の情報処理装置は、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、各タイプのコンテンツの数を示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から、前記選択したタイプのコンテンツの総数が所定の閾値以上になる条件を満たすように１つ以上のタイプを選択する選択手段と、前記選択したタイプのコンテンツを前記サーバから取得する取得手段とを含む。
本発明の第６の側面の情報処理装置は、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習する学習手段と、前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から所定の条件を満たすように１つ以上のタイプを選択する選択手段と、前記選択したタイプのコンテンツを前記サーバから取得する取得手段とを含み、前記選択手段は、前記選択したカテゴリに前記ユーザの嗜好と一致するタイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択する。
【００２０】
前記選択手段には、前記選択したカテゴリに前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプに近い前記推薦可能タイプの中から前記第１の条件を満たすように１つ以上のタイプを選択させることができる。
【００２１】
前記選択手段には、前記選択したカテゴリに前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプのみの中から前記第１の条件を満たすように１つ以上選択させることができる。
【００２５】
本発明の第５の側面の情報処理方法は、情報処理装置が、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、各タイプのコンテンツの数を示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から、前記選択したタイプのコンテンツの総数が所定の閾値以上になる条件を満たすように１つ以上のタイプを選択し、前記選択したタイプのコンテンツを前記サーバから取得するステップを含む。
本発明の第６の側面の情報処理方法は、情報処理装置が、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から所定の条件を満たすように１つ以上のタイプを選択し、前記ユーザの嗜好と一致するタイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択し、前記選択したタイプのコンテンツを前記サーバから取得するステップを含む。
【００２６】
本発明の第５の側面のプログラムは、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、各タイプのコンテンツの数を示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から、前記選択したタイプのコンテンツの総数が所定の閾値以上になる条件を満たすように１つ以上のタイプを選択し、前記選択したタイプのコンテンツを前記サーバから取得するステップを含む処理をコンピュータに実行させる。
本発明の第６の側面のプログラムは、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好を学習し、前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプを選択し、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から所定の条件を満たすように１つ以上のタイプを選択し、前記ユーザの嗜好と一致するタイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプを選択し、前記選択したタイプのコンテンツを前記サーバから取得するステップを含む処理をコンピュータに実行させる。
【００２７】
本発明の第１の側面においては、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好が学習され、前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプが選択され、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプが選択されるとともに、前記ユーザの嗜好の学習が行われていないカテゴリを選択した場合、前記選択したカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプが選択され、前記選択したカテゴリに前記代替タイプが存在しないとき、他のカテゴリが選択され、前記選択されたタイプのコンテンツが前記サーバから取得される。
本発明の第２の側面においては、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好が学習され、前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプが選択され、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプが選択され、前記選択されたタイプのコンテンツが前記サーバから取得される。
【００２８】
本発明の第３の側面においては、第１のサーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好が学習され、前記第１のサーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、前記推薦可能タイプのうち所定の条件を満たすタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプが選択され、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択されたカテゴリの前記代替タイプの中から１つ以上のタイプが選択され、前記タイプ情報が前記第２のサーバから取得され、前記選択されたタイプのコンテンツが前記第１のサーバから取得され、前記クライアントにより選択されたタイプのコンテンツが前記クライアントに送信され、前記タイプ情報が生成され、前記タイプ情報が前記クライアントに送信され、前記ユーザの嗜好の学習が行われていないカテゴリが選択された場合、前記選択されたカテゴリに前記代替タイプが存在するとき、その中から１つ以上のタイプが選択され、前記選択されたカテゴリに前記代替タイプが存在しないとき、他のカテゴリが選択される。
本発明の第４の側面においては、第１のサーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好が学習され、前記第１のサーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記第１のサーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプが選択され、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択されたカテゴリの前記代替タイプの中から１つ以上のタイプが選択され、前記タイプ情報が前記第２のサーバから取得され、前記選択したタイプのコンテンツが前記第１のサーバから取得され、前記クライアントにより選択されたタイプのコンテンツが前記クライアントに送信され、前記タイプ情報が生成され、前記タイプ情報が前記クライアントに送信される。
【００２９】
本発明の第５の側面においては、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好が学習され、前記サーバが推薦可能なコンテンツのタイプである推薦可能タイプ、および、各タイプのコンテンツの数を示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプが選択され、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から、前記選択したタイプのコンテンツの総数が所定の閾値以上になる条件を満たすように１つ以上のタイプが選択され、前記選択されたタイプのコンテンツが前記サーバから取得される。
本発明の第６の側面においては、サーバにあるコンテンツを分類するための各カテゴリにおける各タイプに対するユーザの嗜好が学習され、前記サーバにあるコンテンツのうち第１の閾値以上の数のコンテンツが有するタイプである推薦可能タイプ、および、前記サーバにあるコンテンツのうち前記第１の閾値より大きい第２の閾値以上の数のコンテンツが有するタイプである代替タイプを示す情報であるタイプ情報に基づいて、選択したカテゴリにユーザの嗜好と一致する前記推薦可能タイプがある場合、その中から１つ以上のタイプが選択され、前記ユーザの嗜好と一致する前記推薦可能タイプがない場合、前記選択したカテゴリにおいて、前記ユーザの嗜好と一致するタイプまたは前記ユーザの嗜好と一致するタイプに近いタイプの中から所定の条件を満たすように１つ以上のタイプが選択され、前記ユーザの嗜好と一致するタイプがない場合、前記選択したカテゴリの前記代替タイプの中から１つ以上のタイプが選択され、前記選択されたタイプのコンテンツが前記サーバから取得される。
【発明の効果】
【００３０】
本発明の第１乃至第６の側面によれば、ユーザの嗜好を反映したコンテンツの推薦を行うことができる。特に、本発明の第１乃至第３の側面によれば、無駄な通信および処理の発生を防止しつつ、ユーザの嗜好を反映したコンテンツの推薦を行うことができる。
【図面の簡単な説明】
【００３１】
【図１】本発明を適用した情報処理システムの一実施の形態を示すブロック図である。
【図２】コンテンツ属性テーブルの一例を示す図である。
【図３】リリース時期のタイプをツリー構造により表した図である。
【図４】ジャンルのタイプをツリー構造により表した図である。
【図５】コンテンツ属性情報リストの一例を示す図である。
【図６】ユーザ嗜好リストについて説明するための図である。
【図７】クライアントの機能の構成例を示すブロック図である。
【図８】コンテンツリスト生成サーバの機能の構成例を示すブロック図である。
【図９】カタログ情報生成処理について説明するためのフローチャートである。
【図１０】カタログ情報の一例を示す図である。
【図１１】カタログ情報取得処理について説明するためのフローチャートである。
【図１２】カタログ情報提供処理について説明するためのフローチャートである。
【図１３】コンテンツ取得再生処理について説明するためのフローチャートである。
【図１４】コンテンツ取得再生処理について説明するためのフローチャートである。
【図１５】ユーザ嗜好リストにおける嗜好度数の分布の例を示す図である。
【図１６】ユーザ嗜好リストにおける嗜好度数の分布の例を示す図である。
【図１７】カタログ情報の他の例を示す図である。
【図１８】ユーザ嗜好リストの更新方法について説明するための図である。
【図１９】ユーザ嗜好リストの更新方法について説明するための図である。
【図２０】ユーザ嗜好リストの更新方法について説明するための図である。
【図２１】ユーザ嗜好リストの更新方法について説明するための図である。
【図２２】コンテンツＩＤリスト提供処理について説明するためのフローチャートである。
【図２３】コンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００３２】
以下、本発明を実施するための形態（以下、実施の形態という）について説明する。なお、説明は以下の順序で行う。
１．本発明の実施の形態
２．変形例
【００３３】
＜１．本発明の実施の形態＞
［情報処理システム１の構成例］
図１は、本発明の一実施の形態である情報処理システムの構成例を示すブロック図である。
【００３４】
情報処理システム１は、クライアント１１を使用するユーザの嗜好を反映したコンテンツの推薦を行うシステムである。なお、以下、コンテンツとして楽曲データを用いる場合について説明する。
【００３５】
情報処理システム１は、クライアント１１、ユーザ嗜好ＤＢ１２、コンテンツリスト生成サーバ１３、コンテンツ属性ＤＢ（データベース）１４、コンテンツサーバ１５、および、コンテンツＤＢ（データベース）１６を含むように構成される。また、クライアント１１、コンテンツリスト生成サーバ１３、および、コンテンツサーバ１５は、インターネット等により構成される図示せぬネットワークに接続され、当該ネットワークを介して、相互に通信を行う。さらに、ユーザ嗜好ＤＢ１２はクライアント１１に接続され、コンテンツ属性ＤＢ１４はコンテンツリスト生成サーバ１３に接続され、コンテンツＤＢ１６はコンテンツサーバ１５に接続されている。
【００３６】
なお、図１に示されるクライアント１１の数は、その一例であり、任意の数に設定することが可能である
【００３７】
クライアント１１は、例えば、パーソナルコンピュータ、音楽プレーヤ、携帯電話機、ＰＤＡ（Personal Digital Assistant）など、コンテンツの再生が可能な装置により構成される。
【００３８】
ユーザ嗜好ＤＢ１２は、クライアント１１を使用するユーザのコンテンツに対する嗜好を示すユーザ嗜好リストを含む。なお、ユーザ嗜好リストの詳細は、図７を参照して後述する。
【００３９】
コンテンツリスト生成サーバ１３は、コンテンツＤＢ１６が保有するコンテンツを分類するためのカテゴリおよび各カテゴリにおける各タイプの種類、並びに、各タイプの属性等を示すカタログ情報を生成し、クライアント１１に提供する。また、コンテンツリスト生成サーバ１３は、推薦するコンテンツのコンテンツＩＤ等をリストにしたコンテンツＩＤリストを生成し、クライアント１１に提供する。
【００４０】
コンテンツ属性ＤＢ１４は、コンテンツＤＢ１６が保有するコンテンツを分類するためのカテゴリおよびタイプの種類を示すコンテンツ属性テーブル、および、各コンテンツのカテゴリおよびタイプを示すコンテンツ属性情報リストを含む。なお、コンテンツ属性テーブルの詳細は、図２乃至図４を参照して後述し、コンテンツ属性情報リストの詳細は、図５を参照して後述する。
【００４１】
コンテンツサーバ１５は、クライアント１１にコンテンツおよびコンテンツを提供する。
【００４２】
コンテンツＤＢ１６には、楽曲データからなるコンテンツ、コンテンツを識別するためのコンテンツＩＤ、および、コンテンツが相互に関連づけられて登録されている。
【００４３】
ここで、情報処理システム１におけるデータの流れについて簡単に説明する。
【００４４】
クライアント１１は、カタログ情報の送信を要求するカタログ情報・クエリをコンテンツリスト生成サーバ１３に送信する。コンテンツリスト生成サーバ１３は、カタログ情報・クエリに対して、コンテンツ属性ＤＢ１４にあるコンテンツ属性情報リストに基づいてカタログ情報を生成し、クライアント１１に送信する。
【００４５】
また、クライアント１１は、カタログ情報、および、ユーザ嗜好ＤＢ１２にあるユーザ嗜好リストに基づいて、リクエストするコンテンツのカテゴリおよびタイプを選択する。そして、クライアント１１は、選択したカテゴリおよびタイプを抽出条件とするコンテンツリスト・クエリをコンテンツリスト生成サーバ１３に送信する。コンテンツリスト生成サーバ１３は、コンテンツ属性ＤＢ１４にあるコンテンツ属性情報リストから、コンテンツリスト・クエリに示される抽出条件を満たすコンテンツを抽出する。そして、コンテンツリスト生成サーバ１３は、抽出したコンテンツのコンテンツＩＤ等をリストにしたコンテンツＩＤリストを生成し、クライアント１１に送信する。
【００４６】
さらに、クライアント１１は、コンテンツＩＤリストに基づいて、コンテンツの送信を要求するコンテンツ・クエリをコンテンツサーバ１５に送信する。コンテンツサーバ１５は、コンテンツ・クエリに示されるコンテンツＩＤと一致するコンテンツをコンテンツＤＢ１６から抽出し、抽出したコンテンツをクライアント１１に送信する。
【００４７】
［コンテンツ属性テーブル］
図２は、コンテンツ属性ＤＢ１４にあるコンテンツ属性テーブルの一例を示している。この例において、コンテンツを分類するためのカテゴリは、リリース時期とジャンルの２種類に分かれる。また、各カテゴリは、大分類、中分類、小分類の３つの階層に分かれる。さらに、各カテゴリの各階層において、複数のタイプが定義されている。換言すれば、各カテゴリの各階層は、それぞれ複数のタイプにより分類される。そして、各カテゴリの各階層におけるタイプが、属性として各コンテンツに付与される。
【００４８】
図３は、リリース時期のタイプをツリー構造により表したものである。リリース時期の大分類は、１９６０年代、１９７０年代など、１０年周期の年代を単位とするタイプにより分類される。また、リリース時期の中分類は、１９６０年、１９６１年など、年を単位とするタイプにより分類される。さらに、リリース時期の小分類は、spring、autumnなど、季節を単位とするタイプにより分類される。なお、このリリース時期の小分類のタイプは、１９６０年spring、１９６１年autumnなど、その上位の中分類のタイプである年と組み合わせて用いられる。
【００４９】
図４は、ジャンルのタイプをツリー構造により表したものである。ジャンルの大分類は、pop、rockなど音楽のジャンルを単位とするタイプにより分類される。また、ジャンルの中分類は、European-pop、Asian-popなど、世界の地域別の音楽のジャンルを単位とするタイプにより分類される。さらに、ジャンルの小分類は、Japanese-pop、Chinese-popなど、中分類より更に細かい地域別の音楽のジャンルを単位とするタイプにより分類される。
【００５０】
なお、各カテゴリにおいて、小分類のタイプは、必ず１つの中分類のタイプに属し、中分類のタイプは、必ず１つの大分類のタイプに属する。
【００５１】
［コンテンツ属性情報リスト］
図５は、コンテンツ属性ＤＢ１４にあるコンテンツ属性情報リストの一例の一部を示している。コンテンツ属性情報リストは、各コンテンツのコンテンツＩＤ、および、各コンテンツの各カテゴリにおけるタイプから構成され、各コンテンツのタイプをカテゴリ毎に示している。例えば、この例において、コンテンツＩＤがコンテンツＡであるコンテンツは、リリース時期の大分類のタイプが１９６０年代、中分類のタイプが１９６３年であり、ジャンルの大分類のタイプがpopであり、小分類のタイプがAsian-popである。
【００５２】
［ユーザ嗜好リスト］
図６は、ユーザ嗜好ＤＢ１２にあるユーザ嗜好リストに登録されるヒストグラムの例を示している。図６は、図２のコンテンツ属性テーブルに示される各カテゴリのタイプ毎に、クライアント１１のユーザが好意的な評価をしたコンテンツの数を集計したヒストグラムを示し、横軸はタイプtを示し、縦軸は度数Fn(t)を示している。そして、例えば、タイプt1のコンテンツがユーザにより「好き」と評価された場合、度数Fn(t1)が＋１され、「嫌い」と評価された場合、度数Fn(t1)が−１される。ユーザ嗜好リストには、このヒストグラムを示すデータが登録される。
【００５３】
なお、以下、ユーザ嗜好リストにおける各タイプに対する度数を嗜好度数と称する。
【００５４】
［クライアント１１の構成例］
図７は、クライアント１１の機能の構成例を示すブロック図である。クライアント１１は、入力部１０１、ユーザ嗜好学習部１０２、受信部１０３、カテゴリ・タイプ選択部１０４、クエリ生成部１０５、送信部１０６、再生部１０７、出力部１０８、表示制御部１０９、および、表示部１１０を含むように構成される。
【００５５】
入力部１０１は、例えば、スイッチ、キー、ボタン、マウス、タッチパネル等の入力装置により構成され、クライアント１１に対するユーザの指令等を入力するために用いられる。入力部１０１を介して入力されたユーザの指令等は、必要に応じて、ユーザ嗜好学習部１０２、カテゴリ・タイプ選択部１０４、再生部１０７、および、表示制御部１０９に供給される。
【００５６】
ユーザ嗜好学習部１０２は、入力部１０１を介してユーザにより入力されるコンテンツに対する評価に基づいて、ユーザ嗜好ＤＢ１２にあるユーザ嗜好リストの生成および更新を行う。
【００５７】
受信部１０３は、コンテンツリスト生成サーバ１３およびコンテンツサーバ１５と所定の方式による通信を行う。受信部１０３は、コンテンツリスト生成サーバ１３からカタログ情報を受信し、カテゴリ・タイプ選択部１０４に供給する。また、受信部１０３は、コンテンツリスト生成サーバ１３からコンテンツＩＤリストを受信し、再生部１０７に供給する。さらに、受信部１０３は、コンテンツサーバ１５からコンテンツを受信し、受信したコンテンツを再生部１０７に供給し、受信したコンテンツに含まれるメタ情報を表示制御部１０９に供給する。
【００５８】
カテゴリ・タイプ選択部１０４は、カタログ情報、および、ユーザ嗜好ＤＢ１２にあるユーザ嗜好リストに基づいて、リクエストするコンテンツのカテゴリおよびタイプを選択する。カテゴリ・タイプ選択部１０４は、選択したカテゴリおよびタイプをクエリ生成部１０５に通知する。
【００５９】
クエリ生成部１０５は、カタログ情報・クエリ、コンテンツリスト・クエリ、および、コンテンツ・クエリを生成し、送信部１０６に供給する。
【００６０】
送信部１０６は、コンテンツリスト生成サーバ１３およびコンテンツサーバ１５と所定の方式による通信を行う。送信部１０６は、カタログ情報・クエリ、および、コンテンツリスト・クエリをコンテンツリスト生成サーバ１３に送信する。また、送信部１０６は、コンテンツ・クエリをコンテンツサーバ１５に送信する。
【００６１】
再生部１０７は、楽曲データの再生を行い、その結果得られる音声データを出力部１０８に供給する。また、再生部１０７は、楽曲データの再生状況を表示制御部１０９に適宜通知する。さらに、再生部１０７は、リクエストするコンテンツのコンテンツＩＤをクエリ生成部１０５に通知する。
【００６２】
出力部１０８は、例えば、スピーカ、音声出力端子等により構成される。そして、出力部１０８は、音声データに基づく音声の出力を行ったり、出力部１０８に接続されている他の装置（例えば、ヘッドホン、スピーカ、他の音楽再生装置等）に音声データを出力したりする。
【００６３】
表示制御部１０９は、表示部１１０を制御して、操作画面や楽曲データの再生画面等の各種の画面を表示部１１０に表示させる。
【００６４】
表示部１１０は、例えば、有機ELディスプレイ、LCD（Liquid Crystal Display）等の表示装置により構成される。
【００６５】
［コンテンツリスト生成サーバ１３の構成例］
図８は、コンテンツリスト生成サーバ１３の機能の構成例を示すブロック図である。コンテンツリスト生成サーバ１３は、受信部１５１、カタログ情報生成部１５２、コンテンツＩＤリスト生成部１５３、および、送信部１５４を含むように構成される。
【００６６】
受信部１５１は、クライアント１１と所定の方式による通信を行う。受信部１０３は、カタログ情報・クエリをクライアント１１から受信し、カタログ情報生成部１５２に供給する。また、受信部１０３は、コンテンツリスト・クエリをクライアント１１から受信し、コンテンツＩＤリスト生成部１５３に供給する。
【００６７】
カタログ情報生成部１５２は、コンテンツ属性ＤＢ１４にあるコンテンツ属性情報リストに基づいて、カタログ情報を生成し、送信部１５４に供給する。
【００６８】
コンテンツＩＤリスト生成部１５３は、コンテンツ属性ＤＢ１４にあるコンテンツ属性情報リストから、コンテンツリスト・クエリに示される抽出条件と一致するコンテンツに関する情報を抽出する。そして、コンテンツＩＤリスト生成部１５３は、抽出したコンテンツに関する情報をリストにしたコンテンツＩＤリストを生成する。従って、コンテンツＩＤリストには、抽出した各コンテンツのコンテンツＩＤとともに、コンテンツのカテゴリおよびタイプが示される。そして、コンテンツＩＤリスト生成部１５３は、生成したコンテンツＩＤリストを送信部１５４に供給する。
【００６９】
送信部１５４は、クライアント１１と所定の方式による通信を行う。送信部１５４は、カタログ情報およびコンテンツＩＤリストをクライアント１１に送信する。
【００７０】
［情報処理システム１の処理］
次に、図９乃至図２２を参照して、情報処理システム１により実行される処理について説明する。
【００７１】
［カタログ情報生成処理］
まず、図９のフローチャートを参照して、コンテンツリスト生成サーバ１３により実行されるカタログ情報生成処理について説明する。なお、この処理は、例えば、コンテンツＤＢ１６のコンテンツの追加、削除等に伴い、コンテンツ属性ＤＢ１４のコンテンツ属性情報リストが更新される度に実行される。
【００７２】
ステップＳ１において、カタログ情報生成部１５２は、コンテンツ属性ＤＢ１４からコンテンツ属性情報リストを取得する。
【００７３】
ステップＳ２において、カタログ情報生成部１５２は、コンテンツ属性情報リストに基づいて、カタログ情報を生成する。具体的には、まず、カタログ情報生成部１５２は、コンテンツ属性情報リストに基づいて、各カテゴリのタイプ毎に、各タイプのコンテンツの数を集計し、集計結果を各タイプの推薦可能コンテンツ数に設定する。なお、このとき、カタログ情報生成部１５２は、重複するコンテンツがある場合、まとめて１つとして数える。従って、推薦可能コンテンツ数は、各タイプのユニークなコンテンツの数となる。
【００７４】
また、カタログ情報生成部１５２は、推薦可能コンテンツ数が所定の推薦可能タイプ閾値以上のタイプを、コンテンツサーバ１５が推薦可能なコンテンツのタイプである推薦可能タイプに設定する。すなわち、推薦可能タイプ閾値以上の数のコンテンツが有するタイプが、推薦可能タイプに設定される。なお、推薦可能タイプ閾値は、例えば、１００に設定される。
【００７５】
さらに、カタログ情報生成部１５２は、推薦可能コンテンツ数が所定の代替タイプ閾値以上のタイプを代替タイプに設定する。すなわち、代替タイプ閾値以上の数のコンテンツが有するタイプが、代替タイプに設定される。なお、代替タイプ閾値は、推薦可能タイプ閾値より大きい値に設定され、例えば、１０００に設定される。すなわち、推薦可能タイプのうち、より推薦可能コンテンツ数が多いタイプが代替タイプに設定される。
【００７６】
ここで、代替タイプとは、後述する処理において、クライアント１１が、選択したカテゴリの中にユーザの嗜好と一致する推薦可能タイプがない場合、代わりに指定することが可能なコンテンツのタイプのことである。これにより、後述するように、ユーザの嗜好と一致するタイプを推薦できない場合であっても、選択したカテゴリの中で、メジャーなタイプ（楽曲をより多く含むタイプ）を推薦することが可能になる。
【００７７】
そして、カタログ情報生成部１５２は、各カテゴリのタイプ毎に推薦可能コンテンツ数、推薦可能タイプであるか否か、および、代替タイプであるか否かを示すカタログ情報を生成する。
【００７８】
図１０は、カタログ情報の一例を示している。なお、図１０において、推薦可能タイプまたは代替タイプに設定されているタイプにはそれぞれ丸印が示され、推薦可能タイプまたは代替タイプに設定されていないタイプにはそれぞれバツ印が示されている。また、図１０では、各カテゴリの大分類のタイプしか示されていないが、中分類のタイプ、小分類のタイプについても同様のデータがカタログ情報に登録される。
【００７９】
そして、カタログ情報生成部１５２は、生成したカタログ情報をコンテンツ属性ＤＢ１４に格納する。
【００８０】
その後、カタログ情報生成処理は終了する。
【００８１】
［カタログ情報取得処理］
次に、図１１のフローチャートを参照して、クライアント１１により実行されるカタログ情報取得処理について説明する。なお、この処理は、例えば、クライアント１１の起動時に実行される。
【００８２】
ステップＳ２１において、クライアント１１のクエリ生成部１０５は、カタログ情報・クエリを生成し、送信部１０６に供給する。
【００８３】
ステップＳ２２において、送信部１０６は、カタログ情報・クエリをコンテンツリスト生成サーバ１３に送信する。
【００８４】
コンテンツリスト生成サーバ１３は、後述する図１２のステップＳ４１において、このカタログ情報・クエリを受信し、ステップＳ４３において、カタログ情報を送信する。
【００８５】
ステップＳ２３において、受信部１０３は、コンテンツリスト生成サーバ１３から送信されたカタログ情報を受信し、受信したカタログ情報をカテゴリ・タイプ選択部１０４に供給する。
【００８６】
その後、カタログ情報取得処理は終了する。
【００８７】
［カタログ情報提供処理］
次に、図１２のフローチャートを参照して、図１１のカタログ情報取得処理に対応してコンテンツリスト生成サーバ１３により実行されるカタログ情報提供処理について説明する。
【００８８】
ステップＳ４１において、コンテンツリスト生成サーバ１３の受信部１５１は、クライアント１１から送信されたカタログ情報・クエリを受信し、受信したカタログ情報・クエリをカタログ情報生成部１５２に供給する。
【００８９】
ステップＳ４２において、カタログ情報生成部１５２は、カタログ情報をコンテンツ属性ＤＢ１４から取得する。そして、カタログ情報生成部１５２は、取得したカタログ情報を送信部１５４に供給する。
【００９０】
ステップＳ４３において、送信部１５４は、カタログ情報をクライアント１１に送信する。
【００９１】
その後、カタログ情報提供処理は終了する。
【００９２】
［コンテンツ取得再生処理］
次に、図１３および図１４のフローチャートを参照して、クライアント１１により実行されるコンテンツ取得再生処理について説明する。なお、この処理は、例えば、入力部１０１を用いてユーザによりコンテンツの再生の指令が入力されたとき開始される。また、入力部１０１は、ユーザからの指令をカテゴリ・タイプ選択部１０４、再生部１０７、および、表示制御部１０９に供給する。
【００９３】
ステップＳ１０１において、カテゴリ・タイプ選択部１０４は、カテゴリをランダムに選択する。例えば、カテゴリ・タイプ選択部１０４は、リリース時期（大分類）、リリース時期（中分類）、リリース時期（小分類）、ジャンル（大分類）、ジャンル（中分類）、ジャンル（小分類）の６つのカテゴリのうちの１つをランダムに選択する。
【００９４】
ステップＳ１０２において、カテゴリ・タイプ選択部１０４は、ユーザの嗜好を学習済みのカテゴリであるか否かを判定する。具体的には、カテゴリ・タイプ選択部１０４は、ユーザ嗜好リストをユーザ嗜好ＤＢ１２から取得し、ユーザ嗜好リストに基づいて、選択したカテゴリが、ユーザの嗜好を学習済みのカテゴリであるか否かを判定する。ユーザの嗜好を学習済みのカテゴリであると判定された場合、処理はステップＳ１０３に進む。
【００９５】
ステップＳ１０３において、カテゴリ・タイプ選択部１０４は、ユーザ嗜好リストに基づいて、選択したカテゴリにおいてユーザが好きなタイプを抽出する。例えば、カテゴリ・タイプ選択部１０４は、選択したカテゴリのタイプのうち、ユーザ嗜好リストの嗜好度数が所定の閾値以上のタイプをユーザが好きなタイプとして抽出する。
【００９６】
例えば、図１５および図１６を参照して、選択したカテゴリがジャンル（中分類）の場合について考える。なお、図１５および図１６は、ユーザ嗜好リストにおけるジャンル（中分類）の各タイプの嗜好度数の分布の例を示しており、横軸がタイプを示し、縦軸が度数（嗜好度数）を示している。
【００９７】
例えば、閾値が１に設定されている場合、嗜好度数の分布が図１５に示されるようになっているとき、Asian-pop、European-pop、American-popが、ユーザが好きなタイプとして抽出される。一方、嗜好度数の分布が図１６に示されるようになっているとき、Asian-popのみが、ユーザが好きなタイプとして抽出される。
【００９８】
ステップＳ１０４において、カテゴリ・タイプ選択部１０４は、カタログ情報に基づいて、抽出したタイプの中から推薦可能タイプを抽出する。これにより、ランダムに選択したカテゴリからユーザの嗜好と一致する推薦可能タイプが抽出される。
【００９９】
例えば、図１７に示されるカタログ情報を用いて、タイプの抽出を行う場合について考える。なお、図１７は、カタログ情報のジャンル（中分類）に対応する部分の一部を示している。
【０１００】
例えば、ステップＳ１０３の処理において、図１５の嗜好度数の分布に基づいてAsian-pop、European-pop、American-popが抽出されている場合、その中から推薦可能タイプであるEuropean-pop、American-popが抽出される。
【０１０１】
また、例えば、ステップＳ１０３の処理において、図１６の嗜好度数の分布に基づいて、Asian-popが抽出されている場合、Asian-popは推薦可能タイプでないため、１つのタイプも抽出されない。
【０１０２】
ステップＳ１０５において、カテゴリ・タイプ選択部１０４は、抽出したタイプの数が０より大きいか否かを判定する。抽出したタイプの数が０より大きいと判定された場合、すなわち、選択したカテゴリにユーザの嗜好と一致する推薦可能タイプが１つ以上ある場合、処理はステップＳ１０６に進む。
【０１０３】
ステップＳ１０６において、カテゴリ・タイプ選択部１０４は、抽出したタイプの中からリクエストするタイプを選択する。
【０１０４】
例えば、カテゴリ・タイプ選択部１０４は、ユーザの嗜好に基づいて、抽出したタイプの中からリクエストするタイプを選択する。例えば、上述した図１５および図１７の例において、European-pop、American-popが抽出されている場合について考える。
【０１０５】
まず、カテゴリ・タイプ選択部１０４は、European-pop、American-popの嗜好度数を正規化し、次式（１）の離散型の確率密度関数を生成する。
【０１０６】
Probabilityk＝Frequencyk／Σ(Frequencyk) {k＝Europan-pop, American-pop}  ・・・（１）
なお、Frequencykは嗜好度数を示す。
【０１０７】
そして、カテゴリ・タイプ選択部１０４は、０から１の間でランダムな数値を生成し、生成した数値および式（１）の確率密度関数に従って、European-pop、American-popのいずれかを選択する。従って、Europan-popが７０％の確率で選択され、American-popが３０％の確率で選択される。
【０１０８】
なお、３つ以上のタイプが抽出されている場合も同様の方法によりリクエストするタイプが選択される。これにより、選択されたカテゴリにおける推薦可能タイプの中から、よりユーザの嗜好度が高いタイプが優先して選択される。
【０１０９】
また、例えば、ユーザの嗜好を考慮せずに、抽出したタイプの中からランダムにリクエストするタイプを選択するようにしてもよい。
【０１１０】
そして、カテゴリ・タイプ選択部１０４は、選択したカテゴリおよびタイプをクエリ生成部１０５に通知する。その後、処理はステップＳ１１１に進む。
【０１１１】
一方、ステップＳ１０５において、抽出したタイプの数が０であると判定された場合、すなわち、選択したカテゴリにユーザの嗜好と一致する推薦可能タイプがない場合、処理はステップＳ１０７に進む。
【０１１２】
ステップＳ１０７において、カテゴリ・タイプ選択部１０４は、カタログ情報に基づいて、選択したカテゴリにおける代替タイプの数が０より大きいか否かを判定する。選択したカテゴリにおける代替タイプの数が０であると判定された場合、すなわち、選択したカテゴリに代替タイプが存在しない場合、処理はステップＳ１０１に戻る。その後、ステップＳ１０１以降の処理が実行され、カテゴリの選択からやり直される。
【０１１３】
一方、ステップＳ１０７において、選択したカテゴリにおける代替タイプの数が０より大きいと判定された場合、すなわち、選択したカテゴリに代替タイプが存在する場合、処理はステップＳ１０８に進む。
【０１１４】
ステップＳ１０８において、カテゴリ・タイプ選択部１０４は、代替タイプの中からリクエストするタイプを選択する。
【０１１５】
例えば、カテゴリ・タイプ選択部１０４は、選択したカテゴリにおける代替タイプの中からランダムにリクエストするタイプを選択する。上述した図１６および図１７の例の場合、選択されたジャンル（中分類）において代替タイプに設定されているIndian-popとAmerican-popの中からランダムにリクエストするタイプが選択される。
【０１１６】
また、例えば、選択したカテゴリにおいてユーザが好きなタイプであるが推薦可能タイプでないタイプと、代替タイプとの間の距離を定義して、この距離に基づいてリクエストするタイプを選択するようにしてもよい。図１６および図１７の例の場合、ユーザが好きなタイプであるが推薦可能タイプでないAsian-popと代替タイプであるIndian-popおよびAmerican-popとの間の距離に基づいて、リクエストするタイプが選択される。
【０１１７】
例えば、カテゴリ・タイプ選択部１０４は、Asian-popの発祥地である東アジア地域とIndian-popの発祥地であるインドの間の地理的な距離を、Asian-popとIndian-popの間の距離として定義する。また、カテゴリ・タイプ選択部１０４は、Asian-popの発祥地である東アジア地域とAmerican-popの発祥地である北米地域の間の地理的な距離を、Asian-popとAmerican-popの間の距離として定義する。
【０１１８】
あるいは、例えば、カテゴリ・タイプ選択部１０４は、Asian-popとIndian-popの間の音楽的な特徴量の類似度に基づいて、Asian-popとIndian-popの間の距離を定義する。また、カテゴリ・タイプ選択部１０４は、Asian-popとAmerican-popの間の音楽的な特徴量の類似度に基づいて、Asian-popとAmerican-popの間の距離を定義する。
【０１１９】
そして、カテゴリ・タイプ選択部１０４は、Indian-popおよびAmerican-popのうち、Asian-popとの距離がより近いタイプをリクエストするタイプとして選択する。これにより、代替タイプの中から、ユーザが好きなタイプにより近いタイプを優先してリクエストするタイプに選択することができる。
【０１２０】
また、例えば、過去のコンテンツの再生履歴に基づいて、代替タイプの中から、過去に最も多く再生されたタイプをリクエストするタイプに選択するようにしてもよい。
【０１２１】
さらに、例えば、選択したカテゴリにおいてユーザが好きなタイプであるが推薦可能タイプでないタイプの上位の階層のタイプが推薦可能タイプである場合、その上位の階層のタイプをリクエストするタイプに選択するようにしてもよい。例えば、図１６および図１７の例の場合、Asian-popの上位の階層のタイプであるpopが推薦可能タイプである場合、popがリクエストするタイプに選択される。
【０１２２】
そして、カテゴリ・タイプ選択部１０４は、選択したカテゴリおよびタイプをクエリ生成部１０５に通知する。その後、処理はステップＳ１１１に進む。
【０１２３】
なお、推薦可能タイプのうちコンテンツ数がより多いタイプが代替タイプに設定されているので、代替タイプの中からリクエストするタイプを選択することにより、よりバラエティに富んだコンテンツの推薦を行うことが可能になる。
【０１２４】
一方、ステップＳ１０２において、選択したカテゴリが、ユーザの嗜好を学習済みのカテゴリでないと判定された場合、処理はステップＳ１０９に進む。
【０１２５】
ステップＳ１０９において、ステップＳ１０７の処理と同様に、選択したカテゴリにおける代替タイプの数が０より大きいか否かが判定される。選択したカテゴリにおける代替タイプの数が０であると判定された場合、処理はステップＳ１０１に戻る。その後、ステップＳ１０１以降の処理が実行され、カテゴリの選択からやり直される。
【０１２６】
一方、ステップＳ１０９において、選択したカテゴリにおける代替タイプの数が０より大きいと判定された場合、処理はステップＳ１１０に進む。
【０１２７】
ステップＳ１１０において、カテゴリ・タイプ選択部１０４は、選択したカテゴリにおける代替タイプの中からリクエストするタイプをランダムに選択する。カテゴリ・タイプ選択部１０４は、選択したカテゴリおよびタイプをクエリ生成部１０５に通知する。その後、処理はステップＳ１１１に進む。
【０１２８】
ステップＳ１１１において、クエリ生成部１０５は、カテゴリ・タイプ選択部１０４により選択されたカテゴリおよびタイプを抽出条件とするコンテンツリスト・クエリを生成する。クエリ生成部１０５は、生成したコンテンツリスト・クエリを送信部１０６に供給する。
【０１２９】
ステップＳ１１２において、送信部１０６は、クエリ生成部１０５により生成されたコンテンツリスト・クエリをコンテンツリスト生成サーバ１３に送信する。
【０１３０】
コンテンツリスト生成サーバ１３は、後述する図２２のステップＳ１５１において、クライアント１１からのコンテンツリスト・クエリを受信する。そして、コンテンツリスト生成サーバ１３は、ステップＳ１５４またはＳ１５５において、そのコンテンツリスト・クエリに対応するコンテンツＩＤリストを送信する。なお、このコンテンツＩＤリストには、コンテンツリスト・クエリで指定されたカテゴリおよびタイプのコンテンツのコンテンツＩＤ等の一覧が示される。
【０１３１】
そして、ステップＳ１１３において、クライアント１１の受信部１０３は、コンテンツリスト生成サーバ１３から送信されたコンテンツＩＤリストを受信する。受信部１０３は、受信したコンテンツＩＤリストを再生部１０７に供給する。
【０１３２】
ステップＳ１１４において、再生部１０７は、コンテンツＩＤリストに未再生のコンテンツが残っているか否かを判定する。コンテンツＩＤリストに未再生のコンテンツが残っていると判定された場合、処理はステップＳ１１５に進む。
【０１３３】
ステップＳ１１５において、クエリ生成部１０５は、コンテンツ・クエリを生成する。具体的には、再生部１０７は、コンテンツＩＤリストの未再生のコンテンツのうちの１つを選択し、選択したコンテンツのコンテンツＩＤをクエリ生成部１０５に通知する。クエリ生成部１０５は、そのコンテンツＩＤを抽出条件とするコンテンツ・クエリを生成し、送信部１０６に供給する。
【０１３４】
ステップＳ１１６において、送信部１０６は、クエリ生成部１０５により生成されたコンテンツ・クエリをコンテンツサーバ１５に送信する。
【０１３５】
コンテンツサーバ１５は、そのコンテンツ・クエリを受信すると、コンテンツ・クエリに示されるコンテンツＩＤと一致するコンテンツをコンテンツＤＢ１６から抽出する。そして、コンテンツサーバ１５は、抽出したコンテンツをクライアント１１に送信する。
【０１３６】
そして、ステップＳ１１７において、クライアント１１の受信部１０３は、コンテンツサーバ１５から送信されたコンテンツを受信する。受信部１０３は、受信したコンテンツを再生部１０７に供給し、受信したコンテンツに含まれるメタ情報を表示制御部１０９に供給する。
【０１３７】
ステップＳ１１８において、再生部１０７は、コンテンツサーバ１５から取得したコンテンツを再生する。再生部１０７は、その結果得られた音声データを出力部１０８に供給する。出力部１０８は、例えば、音声データに基づく音声の出力を行ったり、出力部１０８に接続されている他の装置に音声データを出力したりする。
【０１３８】
また、再生部１０７は、コンテンツの再生状況を表示制御部１０９に適宜通知する。表示制御部１０９は、再生中のコンテンツのタイトル等の情報や再生状況を表示部１１０に表示させる。また、表示制御部１０９は、再生中のコンテンツに対するユーザの評価を入力するための画面を表示部１１０に表示させる。
【０１３９】
ステップＳ１１９において、ユーザ嗜好学習部１０２は、コンテンツに対する評価が入力されたか否かを判定する。ユーザ嗜好学習部１０２は、コンテンツの再生中に、ユーザが入力部１０１を用いて再生中のコンテンツに対する評価を入力し、その評価結果が入力部１０１から供給された場合、コンテンツに対する評価が入力されたと判定し、処理はステップＳ１２０に進む。
【０１４０】
ステップＳ１２０において、ユーザ嗜好学習部１０２は、ユーザ嗜好ＤＢ１２のユーザ嗜好リストを更新する。例えば、上述した図５のコンテンツＡの再生中に、ユーザがコンテンツＡを「好き」と評価した場合について考える。この場合、コンテンツＡのリリース時期（大分類）のタイプは１９６０年代なので、図１８のリリース時期（大分類）の嗜好度数の分布において丸で囲まれた１９６０年代の嗜好度数が１つインクリメントされる。同様に、図１９のリリース時期（中分類）の嗜好度数の分布において丸で囲まれた１９６３年の嗜好度数が１つインクリメントされる。また、同様に、図２０のジャンル（大分類）の嗜好度数の分布において丸で囲まれたpopの嗜好度数、図２１のジャンル（中分類）の嗜好度数の分布において丸で囲まれたAsian-popの嗜好度数が、それぞれ１つずつインクリメントされる。
【０１４１】
逆に、ユーザがコンテンツＡを「嫌い」と評価した場合、図１８乃至図２１の丸で囲まれた各タイプの嗜好度数が、それぞれ１つずつデクリメントされる。
【０１４２】
このようにして、ユーザ嗜好学習部１０２は、ユーザ嗜好リストに含まれる、各タイプに対するユーザの嗜好を表すヒストグラムのデータを更新する。
【０１４３】
その後、処理はステップＳ１１４に戻る。
【０１４４】
一方、ステップＳ１１９において、コンテンツに対する評価が入力されなかったと判定された場合、ステップＳ１２０の処理は行われずに、処理はステップＳ１１４に戻る。
【０１４５】
その後、ステップＳ１１４において、コンテンツＩＤリストに未再生のコンテンツが残っていないと判定されるまで、ステップＳ１１４乃至Ｓ１２０の処理が繰り返し実行される。これにより、コンテンツＩＤリストに従って、コンテンツサーバ１５からクライアント１１に順次コンテンツが供給され、クライアント１１においてコンテンツが再生される。また、再生したコンテンツに対するユーザの評価に基づいて、ユーザ嗜好リストが更新される。
【０１４６】
一方、ステップＳ１１４において、コンテンツＩＤリストに未再生のコンテンツが残っていないと判定された場合、コンテンツ取得再生処理は終了する。
【０１４７】
［コンテンツＩＤリスト提供処理］
次に、図２２のフローチャートを参照して、図１３および図１４のクライアント１１によるコンテンツ取得再生処理に対応してコンテンツリスト生成サーバ１３により実行されるコンテンツＩＤリスト提供処理について説明する。
【０１４８】
ステップＳ１５１において、コンテンツリスト生成サーバ１３の受信部１５１は、クライアント１１から送信されるコンテンツリスト・クエリを受信する。受信部１５１は、受信したコンテンツリスト・クエリをコンテンツＩＤリスト生成部１５３に供給する。
【０１４９】
ステップＳ１５２において、コンテンツＩＤリスト生成部１５３は、コンテンツリスト・クエリの抽出条件と一致するコンテンツを抽出する。すなわち、コンテンツＩＤリスト生成部１５３は、コンテンツ属性ＤＢ１４のコンテンツ属性情報リストから、クライアント１１からリクエストされたカテゴリおよびタイプと一致するコンテンツに関する情報を抽出する。
【０１５０】
ステップＳ１５３において、コンテンツＩＤリスト生成部１５３は、抽出したコンテンツの数が０より大きいか否かを判定する。抽出したコンテンツの数が０より大きいと判定された場合、処理はステップＳ１５４に進む。
【０１５１】
ステップＳ１５４において、コンテンツリスト生成サーバ１３は、抽出したコンテンツを示すコンテンツＩＤリストを生成し、送信する。具体的には、コンテンツＩＤリスト生成部１５３は、コンテンツ属性情報リストから抽出したコンテンツに関する情報をリストにしたコンテンツＩＤリストを生成し、送信部１５４に供給する。送信部１５４は、取得したコンテンツＩＤリストをクライアント１１に送信する。その後、コンテンツＩＤリスト提供処理は終了する。
【０１５２】
一方、ステップＳ１５３において、抽出したコンテンツの数が０であると判定された場合、処理はステップＳ１５５に進む。なお、上述したように、クライアント１１において、推薦可能タイプまたは代替タイプからリクエストするタイプが選択されるため、抽出したコンテンツの数が０になる場合はほぼないと考えられる。ただし、例えば、クライアント１１側で古いカタログ情報が使用された場合に、抽出したコンテンツの数が０になることが想定される。
【０１５３】
ステップＳ１５５において、コンテンツリスト生成サーバ１３は、空のコンテンツＩＤリストを生成し、送信する。具体的には、コンテンツＩＤリスト生成部１５３は、空のコンテンツＩＤリストを生成し、送信部１５４に供給する。送信部１５４は、取得したコンテンツＩＤリストをクライアント１１に送信する。その後、コンテンツＩＤリスト提供処理は終了する。
【０１５４】
以上のようにして、クライアント１１から、コンテンツサーバ１５が推薦可能なタイプに対するリクエストが行われ、推薦できないタイプに対するリクエストが行われなくなる。その結果、クライアント１１は、リクエストに対して、確実に所定の数以上のコンテンツの推薦をコンテンツサーバ１５から受けることができる。また、クライアント１１とコンテンツサーバ１５間の無駄な通信や、コンテンツサーバ１５の無駄な処理の発生を防止することができる。従って、コンテンツサーバ１５の資源を有効に活用することができ、処理できるクライアント数を増やすことができる。また、無駄な通信を省くことで、応答時間に優れたシステムを実現することができる。
【０１５５】
また、ユーザの嗜好を学習済みのカテゴリからは、ユーザの嗜好と一致するタイプのコンテンツが優先して推薦されるため、ユーザの満足度を高めることができる。さらに、ユーザの嗜好を学習していないカテゴリからもコンテンツが推薦されるため、ユーザの嗜好の幅を広げることができる。
【０１５６】
また、コンテンツリスト生成サーバ１３からカタログ情報およびコンテンツＩＤリストをクライアント１１に配信することで、クライアント１１で、コンテンツの追加および削除にタイムリーに対応したリクエストを行うことが可能になる。
【０１５７】
＜２．変形例＞
以下、本発明の実施の形態の変形例について説明する。
【０１５８】
［変形例１］
本発明は、楽曲データ以外の各種のコンテンツを、コンテンツのカテゴリおよびタイプに基づいて推薦する場合にも適用することができる。例えば、映画、テレビ番組、ビデオクリップなどの映像コンテンツ、写真、ゲーム、電子書籍等のコンテンツを推薦する場合にも適用することができる。
【０１５９】
［変形例２］
また、以上の説明では、コンテンツリスト生成サーバ１３とコンテンツサーバ１５を分けて設ける例を示したが、同じサーバにより実現するようにしてもよい。なお、２つのサーバを分けた方が、コンテンツを配信するサーバの負荷を軽減することができ、より迅速にコンテンツを配信することが可能になる。
【０１６０】
［変形例３］
さらに、以上の説明では、クライアント１１が、１つのカテゴリおよびタイプを選択する例を示したが、２以上のカテゴリおよびタイプを選択するようにしてもよい。例えば、複数のタイプを選択するようにした場合、コンテンツリスト生成サーバ１３が、選択された複数のタイプのいずれか１つを有するコンテンツを抽出するようにしてもよいし、全てのタイプを有するコンテンツを抽出するようにしてもよい。なお、後者の場合、複数のタイプの組み合わせについても、推薦可能タイプおよび代替タイプの判定を行い、その結果をコンテンツ属性情報リストに登録することが考えられる。
【０１６１】
［変形例４］
また、以上の説明では、選択したカテゴリにユーザの嗜好と一致する推薦可能タイプがない場合、そのカテゴリの代替タイプの中からリクエストするタイプを選択する例を示したが、代替タイプに限定しない方法も考えられる。
【０１６２】
例えば、選択したカテゴリにおいて、ユーザの嗜好と一致するタイプまたはユーザの嗜好と一致するタイプに近いタイプの中から、推薦可能コンテンツ数の合計が所定の閾値以上になるように、１つ以上のタイプを選択するようにしてもよい。この場合、選択されるタイプの種類は限定されないため、推薦可能タイプおよび代替タイプも選択可能である。なお、この場合の閾値として、例えば、上述した推薦可能タイプの設定に用いる推薦可能タイプ閾値、または、代替タイプの設定に用いる代替タイプ閾値を用いることが考えられる。
【０１６３】
また、選択するタイプを、ユーザの嗜好と一致するタイプに近いタイプは除外して、ユーザの嗜好と一致するタイプに限定するようにしてもよい。すなわち、選択したカテゴリにおいて、ユーザの嗜好と一致するタイプの中から、推薦可能コンテンツ数の合計が所定の閾値以上になるように、複数のタイプを選択するようにしてもよい。なお、この場合の閾値として、例えば、推薦可能タイプ閾値または代替タイプ閾値を用いることが考えられる。
【０１６４】
さらに、選択するタイプを推薦可能タイプに限定するようにしてもよい。すなわち、選択したカテゴリにおいて、ユーザの嗜好と一致するタイプに近い推薦可能タイプの中から、推薦可能コンテンツ数の合計が所定の閾値以上になるように、１つ以上のタイプを選択するようにしてもよい。なお、この場合、代替タイプも推薦可能タイプに含まれるため選択可能である。また、この場合の閾値として、例えば、代替タイプ閾値を用いることが考えられる。
【０１６５】
なお、ユーザの嗜好と一致するタイプに近いタイプを選択する方法として、例えば、上述したタイプ間の距離を定義して、ユーザの嗜好と一致するタイプからの距離が近い順に選択するようにすることが考えられる。あるいは、例えば、タイプ間の距離だけでなく、各タイプの推薦可能コンテンツ数も考慮して、選択するタイプの数を調整するようにすることも考えられる。
【０１６６】
以上により、代替タイプに限定する場合と比較して、よりユーザの嗜好に合ったコンテンツを確実に所定の数以上推薦することが可能になる。
【０１６７】
なお、以上のいずれの場合においても、選択したカテゴリにユーザの嗜好と一致するタイプがなく、ユーザの嗜好に基づいてタイプを選択できない場合には、例えば、代替タイプの中から選択するようにすればよい。
【０１６８】
［変形例５］
さらに、以上の説明では、クライアント１１のカテゴリ・タイプ選択部１０４が、ランダムにカテゴリを選択する例を示したが、例えば、所定のアルゴリズムやルールに従ってカテゴリを選択するようにしてもよい。また、例えば、ユーザがカテゴリを選択できるようにしてもよい。
【０１６９】
［変形例６］
また、クライアント１１が、コンテンツＩＤリストを取得せずに、選択したカテゴリおよびタイプを抽出条件とするクエリをコンテンツサーバ１５に送信し、抽出条件と一致するコンテンツをコンテンツサーバ１５から直接取得するようにしてもよい。この場合でも、推薦可能タイプの中からリクエストするタイプが選択されるため、クライアント１１は、通信や処理の無駄の発生を防止しつつ、確実にコンテンツの推薦をコンテンツサーバ１５から受けることができる。
【０１７０】
［変形例７］
さらに、カタログ情報から推薦可能コンテンツ数を削除することも可能である。また、カタログ情報から推薦可能タイプおよび代替タイプを削除して、クライアント１１が、推薦可能コンテンツ数に基づいて、推薦可能タイプおよび代替タイプの判定を行うようにしてもよい。
【０１７１】
［変形例８］
また、以上の説明では、コンテンツの数に基づいて、推薦可能タイプ、代替タイプを設定する例を示したが、コンテンツの数以外の条件や、コンテンツの数と他の条件を組み合わせて設定するようにしてもよい。
【０１７２】
例えば、新しいコンテンツ（例えば、リリース時期が新しいコンテンツ等）を多く含むタイプを優先して推薦可能タイプや代替タイプに設定するようにしてもよい。これにより、新たに追加されたコンテンツを積極的に推薦することが可能になる。
【０１７３】
また、例えば、時節（例えば、クリスマス、ハロウィンなど）に合わせて推薦可能タイプや代替タイプを設定するようにしてもよい。これにより、時節に合ったコンテンツを積極的に推薦することが可能になる。
【０１７４】
［変形例９］
さらに、以上に示したコンテンツのカテゴリおよびタイプは、その一例であり、任意のカテゴリおよびタイプを設定することが可能である。また、カテゴリの数およびタイプの数も任意の値に設定することが可能である。さらに、必ずしもカテゴリを階層構造にする必要はない。
【０１７５】
［変形例１０］
また、ユーザ嗜好ＤＢ１２、コンテンツ属性ＤＢ１４、コンテンツＤＢ１６は、クライアント１１、コンテンツリスト生成サーバ１３、コンテンツサーバ１５にそれぞれ含めるようにしてもよいし、別に設けるようにしてもよい。
【０１７６】
［変形例１１］
さらに、以上の説明では、各クライアント１１がユーザの嗜好を学習する例を示したが、コンテンツリスト生成サーバ１３が、各クライアント１１のユーザの嗜好を学習するようにしてもよい。具体的には、例えば、ユーザが、「好き」「嫌い」などのコンテンツに対する評価をクライアント１１に入力した場合、クライアント１１が、入力された評価を示す情報をコンテンツリスト生成サーバ１３に送信する。そして、コンテンツリスト生成サーバ１３は、取得した情報に基づいて、ユーザ毎に上述したユーザ嗜好リストを作成し、各クライアント１１に提供する。これにより、コンテンツリスト生成サーバ１３から各クライアント１１に送信されるコンテンツＩＤリストに、コンテンツのカテゴリおよびタイプを付加する必要がなくなる。
【０１７７】
さらに、コンテンツリスト生成サーバ１３が、各クライアント１１からのリクエストに応じて、各ユーザのユーザ嗜好リストを用いて、推薦するコンテンツのカテゴリおよびタイプの選択まで行うようにしてもよい。この場合、コンテンツリスト生成サーバ１３から各クライアント１１へのユーザ嗜好リストの提供が不要になる。
【０１７８】
なお、クライアント１１からコンテンツリスト生成サーバ１３へのユーザの評価情報の送信は、入力される度に行うようにしてもよいし、ある程度蓄積してからまとめて行うようにしてもよい。
【０１７９】
［変形例１２］
また、ユーザのコンテンツに対する評価入力として、「好き」「嫌い」以外にも、例えば、数値による評価入力（明示的なフィードバック）や、再生/停止/音量大・小/繰り返し再生/スキップなどの操作履歴に基づく評価入力（暗示的なフィードバック）を採用するようにしてもよい。そして、その評価入力に基づいて、ユーザ嗜好リストを生成するようにしてもよい。
【０１８０】
［コンピュータの構成例］
上述したクライアント１１、コンテンツリスト生成サーバ１３、コンテンツサーバ１５の一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【０１８１】
図２３は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
【０１８２】
コンピュータにおいて、CPU（Central Processing Unit）３０１，ROM（Read Only Memory）３０２，RAM（Random Access Memory）３０３は、バス３０４により相互に接続されている。
【０１８３】
バス３０４には、さらに、入出力インタフェース３０５が接続されている。入出力インタフェース３０５には、入力部３０６、出力部３０７、記憶部３０８、通信部３０９、及びドライブ３１０が接続されている。
【０１８４】
入力部３０６は、キーボード、マウス、マイクロフォンなどよりなる。出力部３０７は、ディスプレイ、スピーカなどよりなる。記憶部３０８は、ハードディスクや不揮発性のメモリなどよりなる。通信部３０９は、ネットワークインタフェースなどよりなる。ドライブ３１０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア３１１を駆動する。
【０１８５】
以上のように構成されるコンピュータでは、CPU３０１が、例えば、記憶部３０８に記憶されているプログラムを、入出力インタフェース３０５及びバス３０４を介して、RAM３０３にロードして実行することにより、上述した一連の処理が行われる。
【０１８６】
コンピュータ（CPU３０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア３１１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【０１８７】
コンピュータでは、プログラムは、リムーバブルメディア３１１をドライブ３１０に装着することにより、入出力インタフェース３０５を介して、記憶部３０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部３０９で受信し、記憶部３０８にインストールすることができる。その他、プログラムは、ROM３０２や記憶部３０８に、あらかじめインストールしておくことができる。
【０１８８】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１８９】
また、本明細書において、システムの用語は、複数の装置、手段などより構成される全体的な装置を意味するものとする。
【０１９０】
さらに、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０１９１】
１  情報処理システム，  １１  クライアント，  １２  ユーザ嗜好ＤＢ，  １３  コンテンツリスト生成サーバ，  １４  コンテンツ属性ＤＢ，  １５  コンテンツサーバ，  １６  コンテンツＤＢ，  １０１  入力部，  １０２  ユーザ嗜好学習部，  １０３  受信部，  １０４  カテゴリ・タイプ選択部，  １０５  クエリ生成部，  １０６  送信部，  １０７  再生部，  １０８  出力部，  １０９  表示制御部，  １１０  表示部，  １５１  受信部，  １５２  カタログ情報生成部，  １５３  コンテンツＩＤリスト生成部１５３，  １５４  送信部
【図１】
0005578040.tif 000002
【図２】
0005578040.tif 000003
【図３】
0005578040.tif 000004
【図４】
0005578040.tif 000005
【図５】
0005578040.tif 000006
【図６】
0005578040.tif 000007
【図７】
0005578040.tif 000008
【図８】
0005578040.tif 000009
【図９】
0005578040.tif 000010
【図１０】
0005578040.tif 000011
【図１１】
0005578040.tif 000012
【図１２】
0005578040.tif 000013
【図１３】
0005578040.tif 000014
【図１４】
0005578040.tif 000015
【図１５】
0005578040.tif 000016
【図１６】
0005578040.tif 000017
【図１７】
0005578040.tif 000018
【図１８】
0005578040.tif 000019
【図１９】
0005578040.tif 000020
【図２０】
0005578040.tif 000021
【図２１】
0005578040.tif 000022
【図２２】
0005578040.tif 000023
【図２３】
0005578040.tif 000024