(57)【要約】  基本学習部で再学習することなしに、新規ユーザ、新規楽曲を即座に登録できる楽曲推薦システムにおいては、第１のインクリメンタル学習部２１が、評価スコア記憶部３を監視して、評価スコアの変更及び新たなユーザの追加があるたびに、評価スコアを変更したユーザ及び新たなユーザについてのジャンル選択確率を、基本学習部１７によって定められた尤度が最大化された状態を維持するように更新または追加する。第２のインクリメンタル学習部２１が、音響的特徴記憶部５を監視して、楽曲の追加による音響的特徴の追加があるたびに、追加された楽曲に関する楽曲選択確率を、基本学習部１７によって定められた尤度が最大化された状態を維持するように追加する。
2009017195.tif 000002
【特許請求の範囲】
【請求項１】
複数のユーザのそれぞれが複数の楽曲の少なくとも一つについて評価した複数の評価スコアが記憶された評価スコア記憶部と、
前記複数の楽曲の音響信号からそれぞれ抽出した音響的特徴を記憶する音響的特徴記憶部と、
複数の変数と複数のパラメータとを備えて構成された確率モデルを含んで、ある前記ユーザからの楽曲推薦要求に対して前記複数の楽曲の嗜好ランキングを出力する楽曲推薦部と、
前記複数の評価スコアと前記複数の音響的特徴とを入力として、前記複数のパラメータの尤度を最大化するように前記確率モデルの前記複数のパラメータを推定する基本学習部とを備え、
前記楽曲推薦部の前記確率モデルは、前記複数の楽曲に関する変数が記憶されている楽曲変数ノードと、前記複数のユーザに関する変数が記憶されているユーザ変数ノードと、前記複数の音響的特徴に関する変数が記憶されている特徴変数ノードと、複数の概念的なジャンルが隠れ変数として記憶されている隠れ変数ノードとを備え、
前記ユーザ変数ノードと前記隠れ変数ノードとの間には、ある前記ユーザが選ばれたときに該ユーザが前記複数のジャンルのそれぞれを選択する複数のジャンル選択確率が存在しており、
前記隠れ変数ノードと前記楽曲変数ノードとの間には、ある前記ジャンルが選ばれたときに前記複数の楽曲のそれぞれが選択される複数の楽曲選択確率が存在しており、
前記隠れ変数ノードと前記特徴変数ノードとの間には、ある前記ジャンルが選択されたときに選択された前記ジャンルに対して前記複数の音響的特徴に関する変数がそれぞれ発生する複数の特徴発生確率が存在しており、
前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率が、それぞれ互いに独立するように構成された三方向アスペクトモデルが定式化された確率モデルであり、
しかも定式化された前記三方向アスペクトモデルが、ある前記ユーザがある前記楽曲中のある前記音響的特徴を聴く事象の生起確率を求める式の中に、前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率を前記複数のパラメータとして含んでいるものであり、
前記楽曲推薦部は、ある前記ユーザからの楽曲推薦要求があったときに、該ユーザについての前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率を用いて該ユーザに対する前記複数の楽曲の嗜好ランキングを出力するように構成されており、
前記評価スコア記憶部を監視して、前記評価スコアの変更及び新たなユーザの追加があるたびに、前記評価スコアを変更した前記ユーザ及び前記新たなユーザについての前記ジャンル選択確率を、前記基本学習部によって定められた前記尤度が最大化された状態を維持するように更新または追加する第１のインクリメンタル学習部と、
前記音響的特徴記憶部を監視して、前記楽曲の追加による前記音響的特徴の追加があるたびに、追加された前記楽曲に関する前記楽曲選択確率を、前記基本学習部によって定められた前記尤度が最大化された状態を維持するように追加する第２のインクリメンタル学習部とを
さらに備えていることを特徴とする楽曲推薦システム。
【請求項２】
前記基本学習部は、
前記複数の評価スコアから複数の評価ベクトルを算出する評価ベクトル算出部と、
前記複数の音響的特徴から複数の内容ベクトルを算出する内容ベクトル算出部と、
前記複数の評価ベクトルと前記複数の内容ベクトルに対する前記パラメータの尤度を算出する尤度算出部と、
前記尤度を最大化する方向に前記複数のジャンル選択確率、前記複数の楽曲選択確率及び前記複数の特徴発生確率を更新する更新部と、
前記尤度の増加が収束したことを判定すると前記尤度算出部と前記更新部の動作を終了する収束判定部と
を備えている請求項１に記載の楽曲推薦システム。
【請求項３】
前記基本学習部を確立する基本学習部確立システムを更に備え、
前記基本学習部確立システムは、
前記複数のユーザを前記複数の評価スコアに基づいて算出した複数の評価ベクトルに基づいてクラスタリングを行い複数の代表ユーザを決定して、該複数の代表ユーザについての複数の評価ベクトルを算出する代表ユーザ決定部と、
前記複数の楽曲を前記複数の楽曲の前記音響的特徴を示す複数の内容ベクトルに基づいてクラスタリングを行い複数の代表楽曲を決定し、該複数の代表楽曲についての複数の内容ベクトルを算出する代表楽曲決定部と、
前記三方向アスペクトモデルが定式化された推定用の確率モデルをコアモデルとして有して、前記複数の代表ユーザについての前記複数の評価ベクトルと前記複数の代表楽曲についての前記複数の内容ベクトルとに基づいて、前記コアモデルの前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率の尤度を最大化するようにこれらの確率を推定するコアモデル学習部と、
前記評価スコア記憶部に記憶されている前記複数のユーザのそれぞれについての前記複数の評価スコアを入力として用い、前記複数のユーザを前記コアモデルに追加するため、前記複数のユーザについてのそれぞれの前記ジャンル選択確率を、前記コアモデル学習部によって定められた尤度が最大化された状態を維持するように順次追加する第１の基本学習部確立用インクリメンタル学習部と、
前記音響的特徴記憶部に記憶されている前記複数の楽曲それぞれの前記複数の音響的特徴を入力として、前記複数の楽曲を前記コアモデルに追加するため、前記複数の楽曲についてのそれぞれの前記楽曲選択確率を、前記コアモデル学習部によって定められた尤度が最大化された状態を維持するように追加する第２の基本学習部確立用インクリメンタル学習部とを備え、
前記第１及び第２の基本学習部確立用インクリメンタル学習部によって追加された複数のユーザについての複数の前記ジャンル選択確率及び前記複数の楽曲についての複数の前記楽曲選択確率を前記コアモデル学習部の前記コアモデルに追加したモデルを前記基本学習部として確立する
ことを特徴とする請求項１に記載の楽曲推薦システム。
【請求項４】
前記第２の基本学習部確立用インクリメンタル学習部による前記コアモデルへの追加を、前記第１の基本学習部確立用インクリメンタル学習部による前記コアモデルへの追加に優先して実行する請求項３に記載の楽曲推薦システム。
【請求項５】
前記楽曲推薦部による推薦精度の低下が予め定めた許容値より大きくなったか否かを判定する推薦精度判定部をさらに備え、
前記推薦精度判定部が前記推薦精度の低下が予め定めた許容値より大きくなったことを判定すると、
前記基本学習部確立システムを再度動作させて、前記基本学習部を更新することを特徴とする請求項３に記載の楽曲推薦システム。
【請求項６】
複数のユーザのそれぞれが複数の楽曲の少なくとも一つについて評価した複数の評価スコアを評価スコア記憶部に記憶する評価スコア記憶ステップと、
前記複数の楽曲の音響信号から音響的特徴を抽出し、前記複数の楽曲のそれぞれについて抽出した複数の前記音響的特徴を音響的特徴記憶部に記憶する音響的特徴記憶ステップと、
前記複数の楽曲に関する変数が記憶されている楽曲変数ノードと、前記複数のユーザに関する変数が記憶されているユーザ変数ノードと、前記複数の音響的特徴に関する変数が記憶されている特徴変数ノードと、複数の概念的なジャンルが隠れ変数として記憶されている隠れ変数ノードとを備え、前記ユーザ変数ノードと前記隠れ変数ノードとの間には、ある前記ユーザが選ばれたときに該ユーザが前記複数のジャンルのそれぞれを選択する複数のジャンル選択確率が存在しており、前記隠れ変数ノードと前記楽曲変数ノードとの間には、ある前記ジャンルが選ばれたときに前記複数の楽曲のそれぞれが選択される複数の楽曲選択確率が存在しており、前記隠れ変数ノードと前記特徴変数ノードとの間には、ある前記ジャンルが選択されたときに選択された前記ジャンルに対して前記複数の音響的特徴に関する変数がそれぞれ発生する複数の特徴発生確率が存在しており、前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率が、それぞれ互いに独立するように構成された三方向アスペクトモデルが定式化されており、しかも定式化された前記三方向アスペクトモデルが、ある前記ユーザがある前記楽曲中のある前記音響的特徴を聴く事象の生起確率を求める式の中に、前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率を複数のパラメータとして含んでおり、ある前記ユーザからの楽曲推薦要求があったときに、該ユーザについての前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率を用いて該ユーザに対する前記複数の楽曲の嗜好ランキングを出力するように構成された確率モデルを用いて、前記ユーザからの楽曲推薦要求に対して前記複数の楽曲の嗜好ランキングを出力する楽曲推薦ステップと、
前記楽曲推薦ステップを実行する前に、前記複数の評価スコアと前記複数の音響的特徴とを入力として、前記複数のパラメータの尤度を最大化するように前記確率モデルの前記複数のパラメータを推定する基本学習ステップと、
前記基本学習ステップを実行した後、前記評価スコア記憶部を監視して、前記評価スコアの変更及び新たなユーザの追加があるたびに、前記評価スコアを変更した前記ユーザ及び前記新たなユーザについての前記ジャンル選択確率を、前記基本学習ステップによって定められた前記尤度が最大化された状態を維持するように更新または追加する第１のインクリメンタル学習ステップと、
前記基本学習ステップを実行した後、前記音響的特徴記憶部を監視して、前記楽曲の追加があるたびに、追加された前記楽曲に関する前記楽曲選択確率を、前記基本学習ステップによって定められた前記尤度が最大化された状態を維持するように追加する第２のインクリメンタル学習ステップとをコンピュータで実行する楽曲推薦方法。
【請求項７】
前記基本学習ステップは、
前記複数の評価スコアから複数の評価ベクトルを算出する評価ベクトル算出ステップと、
前記複数の音響的特徴から複数の内容ベクトルを算出する内容ベクトル算出ステップと、
前記複数の評価ベクトルと前記複数の内容ベクトルに対する前記パラメータの尤度を算出する尤度算出ステップと、
前記尤度を最大化する方向に前記複数のジャンル選択確率、前記複数の楽曲選択確率及び前記複数の特徴発生確率を更新する更新ステップと、
前記尤度の増加が収束したことを判定すると前記尤度算出ステップと前記更新ステップとを終了する収束判定ステップとを備えている請求項６に記載の楽曲推薦方法。
【請求項８】
請求項１に記載の前記基本学習部をコンピュータを用いて確立する基本学習部確立方法であって、
前記複数のユーザを前記複数の評価スコアに基づいて算出した複数の評価ベクトルに基づいてクラスタリングを行い複数の代表ユーザを決定して、該複数の代表ユーザについての複数の評価ベクトルを算出する代表ユーザ決定ステップと、
前記複数の楽曲を前記複数の楽曲の前記音響的特徴を示す複数の内容ベクトルに基づいてクラスタリングを行い複数の代表楽曲を決定し、該複数の代表楽曲についての複数の内容ベクトルを算出する代表楽曲決定ステップと、
前記三方向アスペクトモデルが定式化された推定用の確率モデルをコアモデルとして含み、前記複数の代表ユーザについての前記複数の評価ベクトルと前記複数の代表楽曲についての前記複数の内容ベクトルとに基づいて、前記コアモデルの前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率の尤度が最大化するようにこれらの確率を推定するコアモデル学習部を用意するステップと、
前記評価スコア記憶部に記憶されている前記複数のユーザのそれぞれについての前記複数の評価スコアを入力として用い、前記複数のユーザを前記コアモデルに追加するため、前記複数のユーザについてのそれぞれの前記ジャンル選択確率を、前記コアモデル学習部によって定められた尤度が最大化された状態を維持するように順次追加する第１の基本学習部確立用インクリメンタル学習ステップと、
前記音響的特徴記憶部に記憶されている前記複数の楽曲それぞれの前記複数の音響的特徴を入力として、前記複数の楽曲を前記コアモデルに追加するため、前記複数の楽曲についてのそれぞれの前記楽曲選択確率を、前記コアモデルによって定められた尤度が最大化された状態を維持するように追加する第２の基本学習部確立用インクリメンタル学習ステップと、
前記第１及び第２の基本学習部確立用インクリメンタル学習ステップによって追加された複数のユーザについての複数の前記ジャンル選択確率及び前記複数の楽曲についての複数の前記楽曲選択確率を前記コアモデル学習部の前記コアモデルに追加したモデルを前記基本学習部として確立することを特徴とする基本学習部確立方法。
【請求項９】
前記第２の基本学習部確立用インクリメンタル学習ステップを、前記第１の基本学習部確立用インクリメンタル学習ステップに優先して実行する請求項８に記載の基本学習部確立方法。
【請求項１０】
複数の楽曲に関する変数が記憶されている楽曲変数ノードと、複数のユーザに関する変数が記憶されているユーザ変数ノードと、前記複数の楽曲のそれぞれから抽出された複数の音響的特徴に関する変数が記憶されている特徴変数ノードと、複数の概念的なジャンルが隠れ変数として記憶されている隠れ変数ノードとを備え、前記ユーザ変数ノードと前記隠れ変数ノードとの間には、ある前記ユーザが選ばれたときに該ユーザが前記複数のジャンルのそれぞれを選択する複数のジャンル選択確率が存在しており、前記隠れ変数ノードと前記楽曲変数ノードとの間には、ある前記ジャンルが選ばれたときに前記複数の楽曲のそれぞれが選択される複数の楽曲選択確率が存在しており、前記隠れ変数ノードと前記特徴変数ノードとの間には、ある前記ジャンルが選択されたときに選択された前記ジャンルに対して前記複数の音響的特徴に関する変数がそれぞれ発生する複数の特徴発生確率が存在しており、前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率が、それぞれ互いに独立するように構成された三方向アスペクトモデルが定式化されており、しかも定式化された前記三方向アスペクトモデルが、ある前記ユーザがある前記楽曲中のある前記音響的特徴を聴く事象の生起確率を求める式の中に、前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率を複数のパラメータとして含んでおり、ある前記ユーザからの楽曲推薦要求があったときに、該ユーザについての前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率を用いて該ユーザに対する前記複数の楽曲の嗜好ランキングを出力するように構成された確率モデルを用いて、ある前記ユーザからの楽曲推薦要求に対して前記複数の楽曲の嗜好ランキングを出力する楽曲推薦機能と、
評価スコア記憶部に記憶された前記複数のユーザのそれぞれが前記複数の楽曲の少なくとも一つについて評価した複数の評価スコアと音響的特徴記憶部に記憶された前記複数の音響的特徴とを入力として、前記複数のパラメータの尤度を最大化するように前記確率モデルの前記複数のパラメータを推定する基本学習機能と、
前記評価スコア記憶部を監視して、前記評価スコアの変更及び新たなユーザの追加があるたびに、前記評価スコアを変更した前記ユーザ及び前記新たなユーザについての前記ジャンル選択確率を、前記基本学習機能によって定められた前記尤度が最大化された状態を維持するように更新または追加する第１のインクリメンタル学習機能と、
前記音響的特徴記憶部を監視して、前記楽曲の追加により前記音響的特徴の追加があるたびに、追加された前記楽曲に関する前記楽曲選択確率を、前記基本学習機能によって定められた前記尤度が最大化された状態を維持するように追加する第２のインクリメンタル学習機能とをコンピュータに実現させるための楽曲推薦用コンピュータプログラム。
【請求項１１】
前記基本学習機能は、
前記複数の評価スコアから複数の評価ベクトルを算出する評価ベクトル算出機能と、
前記複数の音響的特徴から複数の内容ベクトルを算出する内容ベクトル算出機能と、
前記複数の評価ベクトルと前記複数の音響的特徴を示す複数の内容ベクトルに対する前記パラメータの尤度を算出する尤度算出機能と、
前記尤度を最大化する方向に前記複数のジャンル選択確率、前記複数の楽曲選択確率及び前記複数の特徴発生確率を更新する更新機能と、
前記尤度の増加が収束したことを判定すると前記尤度算出ステップと前記更新手機能とを終了する収束判定機能と
を備えている請求項１０に記載の楽曲推薦用コンピュータプログラム。
【請求項１２】
請求項１または請求項８に記載の前記基本学習部をコンピュータに実現させるための基本学習部確立用コンピュータプログラムであって、
前記複数のユーザを前記複数の評価スコアに基づいて算出した複数の評価ベクトルに基づいてクラスタリングを行い複数の代表ユーザを決定して、該複数の代表ユーザについての複数の評価ベクトルを算出する代表ユーザ決定機能と、
前記複数の楽曲を前記複数の楽曲の前記音響的特徴を示す複数の内容ベクトルに基づいてクラスタリングを行い複数の代表楽曲を決定し、該複数の代表楽曲についての複数の内容ベクトルを算出する代表楽曲決定機能と、
前記三方向アスペクトモデルが定式化された推定用の確率モデルをコアモデルとして含み、前記複数の代表ユーザについての前記複数の評価ベクトルと前記複数の代表楽曲についての前記複数の内容ベクトルとに基づいて、前記コアモデルの前記ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率の尤度が最大化するようにこれらの確率を推定するコアモデル学習部を用意する機能と、
前記評価スコア記憶部に記憶されている前記複数のユーザのそれぞれについての前記複数の評価スコアを入力として用い、前記複数のユーザを前記コアモデルに追加するため、前記複数のユーザについてのそれぞれの前記ジャンル選択確率を、前記コアモデル学習部によって定められた尤度が最大化された状態を維持するように順次追加する第１の基本学習部確立用インクリメンタル学習機能と、
前記音響的特徴記憶部に記憶されている前記複数の楽曲のそれぞれの前記複数の音響的特徴を入力として、前記複数の楽曲を前記コアモデルに追加するため、前記複数の楽曲についてのそれぞれの前記楽曲選択確率を、前記コアモデル学習部によって定められた尤度が最大化された状態を維持するように追加する第２の基本学習部確立用インクリメンタル学習機能とを前記コンピュータに実現させ、
前記第１及び第２の基本学習部確立用インクリメンタル学習機能によって追加された複数のユーザについての複数の前記ジャンル選択確率及び前記複数の楽曲についての複数の前記楽曲選択確率を前記コアモデル学習部の前記コアモデルに追加したモデルを前記基本学習部として確立することを前記コンピュータに実現させることを特徴とする基本学習部確立用コンピュータプログラム。
【請求項１３】
請求項１０、１１または１２に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、楽曲推薦システム、楽曲推薦方法及び楽曲推薦用コンピュータプログラムに関するものであり、特に、音楽配信サービスにおいて使用される楽曲推薦技術の効率性とスケーラビリティの改善に関する発明である。
【背景技術】
【０００２】
情報処理学会が２００６年８月７日に開催した研究発表ＳＩＧＭＵＳ６６（研究会発表２００６／８／７）で発行した論文集に掲載された「ユーザの評価と音響的特徴との確率的統合に基づくハイブリッド型音楽推薦システム」と題する論文（非特許文献１）には、３方向アスペクトモデルと呼ばれるベイジアンネットワークを利用したハイブリッド型音楽推薦技術が開示されている。この公知の推薦技術では、「協調フィルタリング」と「内容に基づくフィルタリング」の両方を利用する。「協調フィルタリング」技術では、あるユーザに楽曲を推薦する際に他のユーザの楽曲評価を参考にする。例えば、楽曲Ａ，Ｂを好むユーザに推薦を行う場合、楽曲Ａ，Ｂ，Ｃを好むユーザが他に多数いれば、楽曲Ｃを推薦する。しかし、この技術では、以下の２つの問題があった。【０００３】
（１）未評価楽曲（新譜やマイナーな楽曲）は推薦できなかった。
（２）既知のヒット曲が多く推薦され、バリエーションが乏しかった。【０００４】
また「内容に基づくフィルタリング」では、ジャンル、楽器構成、音響的特徴などの音楽要素を音響信号から自動的に抽出し、ユーザが好む楽曲と類似した楽曲を推薦する。しかし、この技術では、以下の２つの問題があった。【０００５】
（１）音楽要素の自動抽出技術が研究段階で、推薦精度に問題があった。
（２）音響信号から得られないが、推薦には役立つ情報（人気や文化的背景）を考慮していなかった。【０００６】
これら二つの技術の問題点を考慮して開発されたのが、ハイブリッド型音楽推薦技術である。この技術では、評価情報と内容に基づく情報とを同時に考慮して推薦を行うことで、従来の推薦技術の問題を解決し、推薦精度も改善する。【０００７】
具体的には、「ユーザが付与した５段階評価スコア」と「音響信号から自動抽出した音響的特徴」をベイジアンネットワークモデル（３方向アスペクトモデル）を用いて確率的に統合する方式を採用する。このベイジアンネットワークモデル（３方向アスペクトモデル）は、A．Popescul, L．Ungar, D．Pennock及びS．Lawrenceが、UAI, 2001, pp．437〜444 に発表した“Probabilistic Models for Unified Collaborative and Content-based Recommendation in Sparse-data Environments,”と題する論文（非特許文献２）に記載されている。このモデルでは、直接観測できない「概念的なジャンル」を「隠れ変数」として表現することで、ユーザの音楽的嗜好を直接モデル化する。そのため、観測データ（楽曲評価と音響的特徴）の生成過程を自然に表現できる。なお、このモデルの４つのノード間をつなぐ各枝の確率値はＥＭアルゴリズムによる最尤推定法で求める。この統合方式は理論的で、信頼性が高いことが分かっている。
【非特許文献１】２００６年８月７日に開催した研究発表ＳＩＧＭＵＳ６６（研究会発表２００６／８／７）で発行した論文集に掲載された「ユーザの評価と音響的特徴との確率的統合に基づくハイブリッド型音楽推薦システム」と題する論文
【非特許文献２】A．Popescul, L．Ungar, D．Pennock及びS．Lawrenceが、UAI, 2001, pp．437〜444 に発表した“ProbabilisticModels for Unified Collaborative and Content-based Recommendation inSparse-data Environments,”と題する論文
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来のハイブリッド型音楽推薦技術では、学習時間は楽曲数とユーザ数に比例し、わずかなデータ変化でモデルの再学習が必要であった。すなわち、従来の技術では、あるユーザが評価を変えた場合、それに即座に適応することができないだけでなく、新規ユーザや新規楽曲を逐次的に追加登録していくこともできなかった。なぜなら、データが変化するたびに確率モデル全体を再学習する必要があり、その学習時間はユーザ数と楽曲数に比例するからである。そのため、従来の技術では、効率性が悪かった。また、従来の技術では、楽曲数とユーザ数を多くすることに限界があり、数百万曲、数十万人規模のデータを扱うことは現実にはできなかった。【０００９】
本発明の目的は、基本学習部で再学習することなしに、新規ユーザ（評価を追加・変更した既存ユーザも新規ユーザと見なす）、新規楽曲を即座に登録できる楽曲推薦システム、楽曲推薦方法及び楽曲推薦用コンピュータプログラムを提供することにある。【００１０】
本発明の他の目的は、数百万曲、数十万人規模のデータを扱うことができる基本学習部を簡単に確立することができる楽曲推薦システム及び楽曲推薦方法を提供することにある。【００１１】
本発明のさらに他の目的は、数百万曲、数十万人規模のデータを扱うことができる基本学習モデルを簡単に確立するのに利用可能なプログラムを提供することにある。
【課題を解決するための手段】
【００１２】
本発明は、効率性を改善するため、確率モデル中でデータの変化に関係するパラメータ（確率値）のみを更新する。そこで本発明の楽曲推薦システムでは、評価スコア記憶部と、音響的特徴記憶部と、楽曲推薦部と、基本学習部と、第１のインクリメンタル学習部と、第２のインクリメンタル学習部とを備えている。【００１３】
評価スコア記憶部は、複数のユーザのそれぞれが複数の楽曲の少なくとも一つについて評価した複数の評価スコアを記憶する。また、音響的特徴記憶部は、複数の楽曲の音響信号からそれぞれ抽出した音響的特徴を記憶する。そして、楽曲推薦部は、複数の変数と複数のパラメータとを備えて構成された確率モデルを含んで、あるユーザからの楽曲推薦要求に対して複数の楽曲の嗜好ランキングを出力する。さらに、基本学習部は、複数の評価スコアと複数の音響的特徴とを入力として、複数のパラメータの尤度を最大化するように確率モデルの複数のパラメータを推定する。【００１４】
楽曲推薦部で用いる確率モデルは、複数の楽曲に関する変数が記憶されている楽曲変数ノードと、複数のユーザに関する変数が記憶されているユーザ変数ノードと、複数の音響的特徴に関する変数が記憶されている特徴変数ノードと、複数の概念的なジャンルが隠れ変数として記憶されている隠れ変数ノードとを備えている。そして、この確率モデルでは、ユーザ変数ノードと隠れ変数ノードとの間に、あるユーザが選ばれたときに該ユーザが複数のジャンルのそれぞれを選択する複数のジャンル選択確率が存在している。また、隠れ変数ノードと楽曲変数ノードとの間に、あるジャンルが選ばれたときに複数の楽曲のそれぞれが選択される複数の楽曲選択確率が存在している。さらに隠れ変数ノードと特徴変数ノードとの間に、あるジャンルが選択されたときに選択されたジャンルに対して複数の音響的特徴に関する変数がそれぞれ発生する複数の特徴発生確率が存在している。そして、確率モデルは、ジャンル選択確率、前記楽曲選択確率及び前記特徴発生確率が、それぞれ互いに独立するように構成された三方向アスペクトモデルが定式化された確率モデルである。しかも、定式化された三方向アスペクトモデルは、あるユーザがある楽曲中のある音響的特徴を聴く事象の生起確率を求める式の中に、ジャンル選択確率、楽曲選択確率及び特徴発生確率を複数のパラメータとして含んでいる。また楽曲推薦部は、あるユーザからの楽曲推薦要求があったときに、このユーザについてのジャンル選択確率、楽曲選択確率及び特徴発生確率を用いてこのユーザに対する複数の楽曲の嗜好ランキングを出力するように構成されている。【００１５】
本発明で用いる第１のインクリメンタル学習部は、評価スコア記憶部を監視して、評価スコアの変更及び新たなユーザの追加があるたびに、評価スコアを変更したユーザ及び新たなユーザについてのジャンル選択確率を、基本学習部によって定められた尤度が最大化された状態を維持するように更新または追加する。【００１６】
また、第２のインクリメンタル学習部は、音響的特徴記憶部を監視して、楽曲の追加による音響的特徴の追加があるたびに、追加された楽曲に関する楽曲選択確率を、基本学習部によって定められた尤度が最大化された状態を維持するように追加する。【００１７】
すなわち、本発明によれば、新規ユーザの評価スコアと評価した楽曲の音響的特徴のみを参照して、新規ユーザのジャンル選択確率すなわち音楽的嗜好のみを推定（学習）する。また、新規楽曲の音響的特徴のみを参照して、新規楽曲の楽曲選択確率のみを推定（学習）する。すなわち、本発明では、新規ユーザの評価データの追加、既存ユーザの評価データの追加または変更があったときでも、従来のように、基本学習部における再学習をせずに、新規ユーザのジャンル選択確率及び新規楽曲の楽曲選択確率のみを推定（学習）して、その結果を確率モデルに追加することにより、楽曲の推薦を行うことを可能にする。したがって、本発明によれば、新規ユーザの評価データの追加、既存ユーザの評価データの追加または変更、さらに楽曲の追加を、基本学習部における再学習をすることなく、簡単に行うことができる。本発明のシステムを用いると、データ変化を逐次的にモデルに反映させることができる。【００１８】
なお、基本学習部は、複数の評価スコアから複数の評価ベクトルを算出する評価ベクトル算出部と、複数の評価ベクトルと前記複数の音響的特徴を示す複数の内容ベクトルに対する前記パラメータの尤度を算出する尤度算出部と、複数の音響的特徴から複数の内容ベクトルを算出する内容ベクトル算出部と、尤度を最大化する方向に複数のジャンル選択確率、複数の楽曲選択確率及び複数の特徴発生確率を更新する更新部と、尤度の増加が収束したことを判定すると尤度算出部と更新部の動作を終了する収束判定部とを備えた構成とされるのが好ましい。この構成の基本学習部は、既存の技術によって構築することができる。しかしながら、この基本学習部で、数百万曲、数十万人規模のデータを扱おうとすると、学習に相当の時間を要する。そのため、現実的には、この基本学習部で、数百万曲、数十万人規模のデータを扱うこと（スケーラビリティを上げること）は、無理がある。【００１９】
そこで、本発明では、基本学習部を確立する基本学習部確立システムを更に備える構成とすることが好ましい。基本学習部確立システムは、代表ユーザ決定部と、代表楽曲決定部と、コアモデル学習部と、第１の基本学習部確立用インクリメンタル学習部と、第２の基本学習部確立用インクリメンタル学習部とから構成することができる。【００２０】
代表ユーザ決定部は、複数のユーザを複数の評価スコアに基づいて算出した複数の評価ベクトルに基づいてクラスタリングを行い、複数の代表ユーザを決定し、複数の代表ユーザについての複数の評価ベクトルを算出する。また、代表楽曲決定部は、複数の楽曲を複数の楽曲の音響的特徴を示す複数の内容ベクトルに基づいてクラスタリングを行い、複数の代表楽曲を決定し、該複数の代表楽曲についての複数の内容ベクトルを算出する。【００２１】
コアモデル学習部は、三方向アスペクトモデルが定式化された推定用の確率モデルをコアモデルとして有している。そして、コアモデル学習部は、複数の代表ユーザについての複数の評価ベクトルと複数の代表楽曲についての複数の内容ベクトルとに基づいて、コアモデルのジャンル選択確率、楽曲選択確率及び特徴発生確率の尤度を最大化するように、これらの確率を推定する。【００２２】
第１の基本学習部確立用インクリメンタル学習部は、評価スコア記憶部に記憶されている複数のユーザのそれぞれについての複数の評価スコアを入力として用い、複数のユーザをコアモデルに追加するため、複数のユーザについてのそれぞれのジャンル選択確率を、コアモデル学習部によって定められた尤度が最大化された状態を維持するように順次追加する。また、第２の基本学習部確立用インクリメンタル学習部は、音響的特徴記憶部に記憶されている複数の楽曲のそれぞれの複数の音響的特徴を入力として、複数の楽曲をコアモデルに追加するため、複数の楽曲についてそれぞれの楽曲選択確率を、コアモデル学習部によって定められた尤度が最大化された状態を維持するように追加する。そして、最終的に、第１及び第２の基本学習部確立用インクリメンタル学習部によって追加された複数のユーザについての複数のジャンル選択確率及び複数の楽曲についての複数の楽曲選択確率を、コアモデル学習部のコアモデルに追加したモデルを基本学習部として確立する。このようにすると、基本学習部を確立する場合においても、複数のユーザについてのジャンル選択確率の推定（学習）及び複数の楽曲についての楽曲選択確率の推定（学習）演算のみを行うだけでよいので、数百万曲、数十万人規模のデータになっても、演算処理は簡単に行うことできる。したがって、この基本学習部確立システムを用いて、基本学習部を確立すれば、スケーラビリティを任意に拡大することが可能になる。なお、このシステムでは、スケーラビリティを改善するために、大量のユーザと楽曲から一定数の代表的なユーザと楽曲を仮想的に生成し、それらに対してコンパクトな「コアモデル」を構築する。そして、コアモデルを、データの元になるユーザと楽曲を逐次的に登録しながら更新することになる。【００２３】
基本学習部確立システムを用いて、基本学習部を確立した後は、楽曲推薦システムにおいて、この確立した基本学習部を用い、前述の第１及び第２のインクリメンタル学習部を用いて、さらに、ユーザの追加及び楽曲の追加を行う。なお、ユーザの追加数及び楽曲の追加数が多くなり過ぎると、推薦精度が低下することがある。その場合には、推薦部による推薦精度の低下が予め定めた許容値より大きくなったか否かを判定する推薦精度判定部をさらに備えておけばよい。そして、推薦精度判定部が、推薦精度の低下が予め定めた許容値より大きくなったことを判定したときには、基本学習部確立システムを再度動作させて、基本学習部を更新する。このようにすることにより、基本学習部が、それまでに集まったすべてのユーザの評価データ及びすべての楽曲のデータを元に、コアモデルのパラメータを再推定（更新）することになり、低下した推薦精度を回復することができる。【００２４】
なお、第２の基本学習部確立用インクリメンタル学習部による追加を先に実行し、第１の基本学習部確立用インクリメンタル学習部による追加を後にしたほうが、推薦精度が高くなる。このことは実験により確認されている。【００２５】
本発明は、コンピュータを利用して実施する楽曲推薦方法としても捉えることができる。本発明の楽曲推薦方法では、まず、複数のユーザのそれぞれが、複数の楽曲の少なくとも一つについて評価した複数の評価スコアを評価スコア記憶部に記憶する（評価スコア記憶ステップ）。また、複数の楽曲の音響信号から音響的特徴を抽出し、複数の楽曲のそれぞれについて抽出した複数の音響的特徴を音響的特徴記憶部に記憶する（音響的特徴記憶ステップ）。これらの２つのステップは、どちらを先に実行してもよい。【００２６】
楽曲推薦ステップでは、確率モデルを用いて、ユーザからの楽曲推薦要求に対して前記複数の楽曲の嗜好ランキングを出力する。使用する確率モデルは、前述の楽曲推薦システムで使用するものと同じである。【００２７】
楽曲推薦ステップを実行する前には、複数の評価スコアと複数の音響的特徴とを入力として、複数のパラメータの尤度を最大化するように、確率モデルの複数のパラメータを推定する基本学習ステップを実行する。そして、基本学習ステップが終了した後は、常時、第１のインクリメンタル学習ステップと、第２のインクリメンタル学習ステップが実行可能な状態になる。第１のインクリメンタル学習ステップでは、評価スコア記憶部を監視して、評価スコアの変更及び新たなユーザの追加があるたびに、評価スコアを変更したユーザ及び新たなユーザについてのジャンル選択確率を、基本学習ステップによって定められた尤度が最大化された状態を維持するように、更新または追加する。第２のインクリメンタル学習ステップでは、音響的特徴記憶部を監視して、楽曲の追加があるたびに、追加された楽曲に関する楽曲選択確率を、基本学習ステップによって定められた尤度が最大化された状態を維持するように更新または追加する。第１及び第２のインクリメンタル学習ステップは、必要に応じて実行され、これらのステップに優先順位はない。【００２８】
基本学習ステップでは、次の複数のステップが実行される。まず、複数の評価スコアから複数の評価ベクトルを算出する（評価ベクトル算出ステップ）。また、複数の音響的特徴から複数の内容ベクトルを算出する（内容ベクトル算出ステップ）。そして、複数の評価ベクトルと複数の音響的特徴を示す複数の内容ベクトルに対するパラメータの尤度を算出する（尤度算出ステップ）。これら二つのステップに優先順位はない。次に、尤度を最大化する方向に複数のジャンル選択確率、複数の楽曲選択確率及び複数の特徴発生確率を推定（更新）する（更新ステップ）。そして、尤度の増加が収束したことを判定すると尤度算出ステップと更新ステップとを終了する（収束判定ステップ）。【００２９】
前述の基本学習部確立する技術は、コンピュータで実施する基本学習部確立方法としても捉えることができる。この基本学習部確立方法では、以下の複数のステップにより、コンピュータを用いて基本学習部を確立する。まず、複数のユーザを複数の評価スコアに基づいて算出した複数の評価ベクトルに基づいて、クラスタリングを行い複数の代表ユーザを決定して、該複数の代表ユーザについての複数の評価ベクトルを算出する（代表ユーザ決定ステップ）。また、複数の楽曲を複数の楽曲の音響的特徴を示す複数の内容ベクトルに基づいてクラスタリングを行い複数の代表楽曲を決定し、該複数の代表楽曲についての複数の内容ベクトルを算出する（代表楽曲決定ステップ）。これら２つのステップに優先順位はない。そして、三方向アスペクトモデルが定式化された推定用の確率モデルをコアモデルとして含み、複数の代表ユーザについての複数の評価ベクトルと複数の代表楽曲についての複数の内容ベクトルとに基づき、コアモデルのジャンル選択確率、楽曲選択確率及び特徴発生確率の尤度が最大化するように、これらの確率を推定するコアモデル学習部を用意する（コアモデル学習部準備ステップ）。【００３０】
次に、評価スコア記憶部に記憶されている複数のユーザのそれぞれについての複数の評価スコアを入力として用い、複数のユーザをコアモデルに追加するため、複数のユーザについてのそれぞれのジャンル選択確率を、コアモデル学習部によって定められた尤度が最大化された状態を維持するように順次追加する（第１の基本学習部確立用インクリメンタル学習ステップ）。また、音響的特徴記憶部に記憶されている複数の楽曲のそれぞれの複数の音響的特徴を入力として、複数の楽曲をコアモデルに追加するため、複数の楽曲についてのそれぞれの楽曲選択確率を、コアモデル学習部によって定められた尤度が最大化された状態を維持するように追加する（第２の基本学習部確立用インクリメンタル学習ステップ）。そして、第１及び第２の基本学習部確立用インクリメンタル学習ステップによって追加された複数のユーザについての複数のジャンル選択確率及び複数の楽曲についての複数の楽曲選択確率をコアモデル学習部のコアモデルに追加したモデルを、基本学習部として確立する。【００３１】
なお、本発明は、コンピュータに楽曲推薦方法を実行させる楽曲推薦用コンピュータプログラムとしても捉えることができる。本発明の楽曲推薦用コンピュータプログラムは、以下の機能をコンピュータに実現させるように構成されている。すなわち、楽曲推薦システムで採用した確率モデルと同じ確率モデルを用いて、あるユーザからの楽曲推薦要求に対して複数の楽曲の嗜好ランキングを出力する楽曲推薦機能と、基本学習機能と、第１及び第２のインクリメンタル学習機能である。基本学習機能は、評価スコア記憶部に記憶された複数のユーザのそれぞれが複数の楽曲の少なくとも一つについて評価した複数の評価スコアと音響的特徴記憶部に記憶された複数の音響的特徴とを入力として、確率モデルの複数のパラメータの尤度を最大化するように確率モデルの複数のパラメータを推定する機能である。そして、第１のインクリメンタル学習機能は、評価スコア記憶部を監視して、評価スコアの変更及び新たなユーザの追加があるたびに、評価スコアを変更したユーザ及び新たなユーザについてのジャンル選択確率を、基本学習機能によって定められた尤度が最大化された状態を維持するように更新または追加する機能である。また、第２のインクリメンタル学習機能は、音響的特徴記憶部を監視して、楽曲の追加により音響的特徴の追加があるたびに、追加された楽曲に関する楽曲選択確率を、基本学習部によって定められた尤度が最大化された状態を維持するように更新または追加する機能である。【００３２】
基本学習機能は、複数の評価スコアから複数の評価ベクトルを算出する評価ベクトル算出機能と、複数の音響的特徴から複数の内容ベクトルを算出する内容ベクトル算出機能と、複数の評価ベクトルと複数の音響的特徴を示す複数の内容ベクトルに対するパラメータの尤度を算出する尤度算出機能と、尤度を最大化する方向に複数のジャンル選択確率、複数の楽曲選択確率及び複数の特徴発生確率を更新する更新機能と、尤度の増加が収束したことを判定すると、尤度算出ステップと更新手機能とを終了する収束判定機能とを備えている。【００３３】
また、基本学習部をコンピュータに実現させるための基本学習部確立用プログラムは、以下の代表ユーザ決定機能と、代表楽曲決定機能と、コアモデル学習部準備機能と、第１及び２の基本学習部確立用インクリメンタル学習機能をコンピュータに実現させるように構成されている。代表ユーザ決定機能は、複数のユーザを複数の評価スコアに基づいて算出した複数の評価ベクトルに基づいてクラスタリングを行い、複数の代表ユーザを決定して、該複数の代表ユーザについての複数の評価ベクトルを算出する機能である。また、代表楽曲決定機能は、複数の楽曲を複数の楽曲の音響的特徴を示す複数の内容ベクトルに基づいてクラスタリングを行い、複数の代表楽曲を決定し、該複数の代表楽曲についての複数の内容ベクトルを算出する機能である。さらに、コアモデル学習部準備機能は、三方向アスペクトモデルが定式化された推定用の確率モデルをコアモデルとして含み、複数の代表ユーザについての複数の評価ベクトルと前記複数の代表楽曲についての複数の内容ベクトルとに基づいて、コアモデルのジャンル選択確率、楽曲選択確率及び前記特徴発生確率の尤度が最大化するように、これらの確率を推定するコアモデル学習部を用意する機能である。そして、第１の基本学習部確立用インクリメンタル学習機能は、評価スコア記憶部に記憶されている複数のユーザのそれぞれについての複数の評価スコアを入力として用い、複数のユーザをコアモデルに追加するため、複数のユーザについてのそれぞれのジャンル選択確率を、コアモデル学習部によって定められた尤度が最大化された状態を維持するように順次追加する機能である。さらに第２の基本学習部確立用インクリメンタル学習機能は、音響的特徴記憶部に記憶されている複数の楽曲のそれぞれの複数の音響的特徴を入力として、複数の楽曲をコアモデルに追加するため、複数の楽曲についてのそれぞれの楽曲選択確率を、コアモデル学習部によって定められた尤度が最大化された状態を維持するように追加する機能である。なお、このプログラムでは、第１及び第２の基本学習部確立用インクリメンタル学習機能によって追加された複数のユーザについての複数のジャンル選択確率及び複数の楽曲についての複数の楽曲選択確率をコアモデル学習部のコアモデルに追加したモデルを基本学習部として確立する。【００３４】
なお、これらのコンピュータプログラムはコンピュータ読み取り可能な記録媒体に記録されていてもよい。
【発明の効果】
【００３５】
本発明によれば、新規ユーザの評価データの追加、既存のユーザの評価データの追加または変更、さらに楽曲の追加を、基本学習部における再学習をすることなく、簡単に行うことができる。本発明のシステムを用いると、データ変化を逐次的にモデルに反映させることができる。【００３６】
また、基本学習部確立システムを用いていれば、基本学習部を確立する場合においても、複数のユーザについてのジャンル選択確率の推定（学習）及び複数の楽曲についての楽曲選択確率の推定（学習）演算のみを行うだけでよいので、数百万曲、数十万人規模のデータになっても、演算処理は簡単に行うことでき、スケーラビリティを任意に拡大することが可能になる。
【図面の簡単な説明】
【００３７】
【図１】本実施の形態の楽曲推薦システムの構成の一例を示すブロックである。
【図２】本実施の形態で使用する三方向アスペクトモデルを示す模式図である。
【図３】ＥＭアルゴリズムを利用して構成する基本学習部の構成の一例を示すブロックである。
【図４】基本学習部をプログラムで実現する場合に用いるプログラムのアルゴリズムを示すフローチャートである。
【図５】ステップＳＴ４２の詳細を示すフローチャートである。
【図６】ステップＳＴ４４の詳細を示すフローチャートである。
【図７】ステップＳＴ４５の詳細を示すフローチャートである。
【図８】図１の実施の形態をコンピュータを用いて実現する場合に用いるプログラムのアルゴリズムを示すフローチャートである。
【図９】ステップＳＴ４の詳細を示すフローチャートである。
【図１０】ステップＳＴ６の詳細を示すフローチャートである。
【図１１】基本学習部確立システムの一例の構成を示すブロック図である。
【図１２】基本学習部確立システムのオペレーションの状態を模擬的に示す図である。
【図１３】評価行列Ｒ′の計算例を示す図である。
【図１４】本学習部確立システムをプログラムでコンピュータにより実現する場合のプログラムのアルゴリズムの一例を示すフローチャートである。
【図１５】基本学習部確立システムと、推薦精度判定部と、楽曲推薦システムとをプログラムによりコンピュータで実現する場合に用いるプログラムのアルゴリズムを示すフローチャートである。
【図１６】クロスバリデーションのためのデータの準備を示す図である。
【図１７】推薦精度の計算例を示す図である。
【図１８】インクリメンタル学習に利用する評価スコアの増加に伴う推薦精度の低下を実験した結果を示す図である。
【図１９】既存ユーザと新規ユーザに対する推薦精度の比較を示す図である。
【図２０】既存楽曲と新規楽曲の推薦精度の比較を示す図である。
【図２１】スケーラビリティを改善した場合の推薦精度の変化を示す図である。
【符号の説明】
【００３８】
１  楽曲推薦システム
３  評価スコア記憶部
５  音響的特徴記憶部
７  楽曲データ記憶部
９  記憶装置
１１  音響的特徴抽出部
１３  確率モデル
１５  楽曲推薦部
１７  基本学習部
１９  第１のインクリメンタル学習部
２１  第２のインクリメンタル学習部
２３  基本学習部確立システム
２５  推薦精度判定部
【発明を実施するための最良の形態】
【００３９】
以下、図面を参照して、本発明の楽曲推薦方法を実施する本発明の楽曲推薦システムの実施の形態の一例を詳細に説明する。図１は、本実施の形態の楽曲推薦システム１の構成の一例を示すブロックである。この楽曲推薦システム１では、評価スコア記憶部３と、音響的特徴記憶部５と、楽曲データ記憶部７とを備えた記憶装置９と、音響的特徴抽出部１１と、確率モデル１３を備えた楽曲推薦部１５と、基本学習部１７と、第１のインクリメンタル学習部１９と、第２のインクリメンタル学習部２１とを備えている。なお、図１には、基本学習部１７を確立するために本発明の別の実施の形態で用いる基本学習確立システム２３と推薦精度判定部２５についても併せて示してある。【００４０】
評価スコア記憶部３は、複数のユーザのそれぞれが複数の楽曲の少なくとも一つについて評価した複数の評価スコアを記憶する。ここで、ユーザ群をＵ≡｛ｕ１，…，ｕ｜Ｕ｜｝とし，楽曲群をＭ≡｛ｍ１，…，ｍ｜Ｍ｜｝とする。ここで、｜Ｕ｜と｜Ｍ｜は，ユーザ数と楽曲数を表し、ＵおよびＭはあらかじめデータベースに登録されているものとする。本発明の楽曲推薦システムは確率モデルに基づいており、ｕ∈Ｕとｍ∈Ｍを確率変数として扱う。その他の付加的な情報（タイトルやアーティスト名，ジャンルなど）などは楽曲推薦に利用しない。ユーザの楽曲についての評価スコアは評価スコア記憶部３に登録されている。この評価スコアは、ユーザの再評価により、変化したり増加したりすることがある。本実施の形態では、楽曲の評価スコアは０（最低スコア：大嫌い）から４（最高スコア：大好き）の５段階とし、ｒｕ，ｍ（０≦ｒｕ，ｍ≦４）をユーザｕが楽曲ｍに対して与えたスコアと定義する。ただし、ユーザｕが楽曲ｍに評価を与えていない場合、ｒｕ，ｍには「空スコア」として便宜上φを代入しておく。全ユーザの評価スコアを集めることで、評価行列Ｒが得られる。
Ｒ＝｛ｒｕ，ｍ｜ｕ∈Ｕ，ｍ∈Ｍ｝                        ……（１）
ここで、ユーザはＭ中のごく一部の楽曲にしか評価スコアを付与しないため、評価行列Ｒ中のほとんどの要素がφであることに注意する必要がある。【００４１】
また、音響的特徴記憶部５は、楽曲データ記憶部７に記憶された複数の楽曲の音響信号から音曲的特徴抽出部１１がそれぞれ自動抽出した複数の音響的特徴を記憶する。この音響的特徴も特徴行列Ｃとして表すことができる。この特徴行列Ｃは、楽曲ｍにおける例えば特徴ｔの重みＣｍ，ｔを並べたＭ×Ｔ行列のデータである。例えば、特徴数Ｔが６４次元であり、１曲の音響的特徴は、１つの特徴量ベクトル（内容ベクトル）で表現できるものと仮定している。具体的には、特徴量ベクトルは各次元が意味的に等価であり、和は１に正規化されているものとする。例えば、楽曲全体の平均的な周波数帯域ごとのパワー比、あるいは小さな時間フレームから抽出した音響的特徴群を混合ガウス分布でフィッティングした時の重みなどが考えられる。本実施の形態では、楽曲群Ｍに対応する音響信号が利用可能であると仮定している。いま、Ｔ≡｛ｔ１，…，ｔ｜Ｔ｜｝を特徴量とする。ｂここで｜Ｔ｜は特徴量の種類数（特徴量ベクトルの次元）を表す。ｃｍ，ｔを楽曲ｍから抽出した特徴ｔの重みとする。ここでΣｔ  ｃｍ，ｔ＝１である。全楽曲の特徴量ベクトルを集めることで、内容行列Ｃが得られる。
Ｃ＝｛ｃｍ，ｔ｜ｍ∈Ｍ，ｔ∈Ｔ｝                        ……（２）
なお本実施の形態では、この内容行列Ｃとして、発明者等が先に前述の非特許文献１で提案したＢａｇ−Ｏｆ−Ｔｉｍｂｒｅｓ法を用いて、多重音色分布行列Ｃを生成した。【００４２】
そして、楽曲推薦部１５は、複数の変数と複数のパラメータとを備えた構成とされた確率モデル１３を含んでおり、あるユーザからの楽曲推薦要求に対して複数の楽曲の嗜好ランキングを出力するように構成されている。本実施の形態では、楽曲評価スコアと音楽的内容即ち音響的特徴とを統合するため、前述の非特許文献２に示されたＰｏｐｅｓｃｕｌらによって提案された三方向アスペクトモデルと呼ばれるベイジアンネットワークを確率モデル１３として利用する。図２は、本実施の形態で使用する三方向アスペクトモデルを示す模式図である。この確率モデルは、複数の楽曲Ｍに関する変数が記憶されている楽曲変数ノードＮ１と、複数のユーザＵに関する変数が記憶されているユーザ変数ノードＮ２と、複数の音響的特徴に関する変数が記憶されている特徴変数ノードＮ３と、複数の概念的なジャンルが隠れ変数として記憶されている隠れ変数ノードＮ４とを備えている。そして、この確率モデルでは、ユーザ変数ノードＮ２と隠れ変数ノードＮ４との間に、あるユーザｕが選ばれたときに該ユーザｕが複数のジャンルＺのそれぞれを選択する複数のジャンル選択確率ｐ（ｚ｜ｕ）が存在している。ここで、ジャンル選択確率ｐ（ｚ｜ｕ）は、ユーザｕがジャンルＺを選択する確率であり、ユーザの音楽的嗜好を示すものである。また、隠れ変数ノードＮ４と楽曲変数ノードＮ１との間に、あるジャンルが選ばれたときに複数の楽曲のそれぞれが選択される複数の楽曲選択確率ｐ（ｍ｜ｚ）が存在している。さらに隠れ変数ノードＮ４と特徴変数ノードＮ３との間に、あるジャンルが選択されたときに選択されたジャンルに対して複数の音響的特徴に関する変数がそれぞれ発生する複数の特徴発生確率ｐ（ｔ｜ｚ）が存在している。この確率モデル１３は、ジャンル選択確率ｐ（ｚ｜ｕ）、楽曲選択確率ｐ（ｍ｜ｚ）及び特徴発生確率ｐ（ｔ｜ｚ）が、それぞれ互いに独立するように構成された三方向アスペクトモデルが定式化された確率モデルである。しかも、定式化された三方向アスペクトモデルは、あるユーザｕがある楽曲ｍ中のある音響的特徴を聴く事象の生起確率を求める後述する式の中に、ジャンル選択確率ｐ（ｚ｜ｕ）、楽曲選択確率ｐ（ｍ｜ｚ）及び特徴発生確率ｐ（ｔ｜ｚ）を複数のパラメータとして含んでいる。楽曲推薦部１５は、あるユーザからの楽曲推薦要求があったときに、このユーザについてのジャンル選択確率、楽曲選択確率及び特徴発生確率を用いて、このユーザに対する楽曲選択確率ｐ（ｍ｜ｕ）が大きい複数の楽曲の嗜好ランキングを出力する。すなわち、楽曲推薦部１５は、楽曲選択確率ｐ（ｍ｜ｕ）が大きい複数の楽曲ｍを推薦する。【００４３】
より一般的に説明すると、図２の確率モデルには隠れ変数（擬似ジャンル）が導入されており、この確率モデルは二つのノードの情報が発生する過程を確率的に表現できる。評価スコアや楽曲内容（音響的特徴）などの観測データは、隠れ変数Ｚ＝｛ｚ｜ｚ１，…，ｚ｜ｚ｜｝と関連付けられる。ここで、｜Ｚ｜は隠れ変数の数である。隠れ変数はジャンルに対応していると考えると理解しやすいが、あくまで便宜的かつ概念的な考え方であり、一般的な意味でのジャンルではないことに注意する。図２の確率モデルでは、観測データには直接現れないユーザの音楽的嗜好をＵとＺの確率的関係として表現する。すなわち、あるユーザｕの嗜好は、各ジャンルｚの出現確率ｐ（ｚ｜ｕ）によって定まる。このモデルでは、ユーザｕは自分の嗜好ｐ（ｚ｜ｕ）に従ってジャンルｚを選択し、そのジャンルｚが確率的に楽曲ｍと音響的特徴ｔを生起させる過程が自然に表現できる。なおこの三方向アスペクトモデルでは、ユーザＵ，楽曲Ｍ，音響的特徴Ｔが、隠れ変数Ｚを介して条件付き独立であることを仮定している。また、１人のユーザが複数のジャンルへの嗜好を持つことが許されている。これは、多くのクラスタリング手法が、各ユーザをいずれかのジャンルクラスに割り当ててしまうのと異なる点である。【００４４】
次に、三方向アスペクトモデルの定式化について説明する。本実施の形態では、三方向アスペクトモデルの定式化を行っている。いま、３つ組（ｕ，ｍ，ｔ）でユーザｕ，楽曲ｍ，多重音色（音響的特徴）ｔの共起を表す。これは、「ユーザｕが楽曲ｍ中の多重音色ｔを聴く」という観測可能な事象に対応する。さらに、ｎ（ｕ，ｍ，ｔ）を上記事象の生起回数とし、以下の通り２つの観測データの積に分解できると仮定する。
ｎ（ｕ，ｍ，ｔ）＝ｒｕ，ｍ×ｃｍ，ｔ                        ……（３）
ここで、ｒｕ，ｍとｃｍ，ｔは以下の通り定義されている。
・ｒｕ，ｍはユーザｕの楽曲ｍに対する評価スコアである。未評価の場合はデフォルトスコアとして２．５（またはφ）が代入される。
・ｃｍ，ｔは楽曲ｍ中の多重音色（音響的特徴）ｔの重みである。事象（ｕ，ｍ，ｔ）は、ユーザｕが楽曲ｍを好む度合いが大きいほど、あるいは楽曲ｍ中の多重音色（音響的特徴）ｔの重みが大きいほど生起しやすいと考えられる。【００４５】
同様に、４つ組（ｕ，ｍ，ｔ，ｚ）でユーザｕ，楽曲ｍ，多重音色（音響的特徴）ｔ，ジャンルｚの共起を表す。これは、「ユーザｕが多重音色ｚを選択し、ｚが楽曲ｍと多重音色（音響的特徴）ｔを生起している」事象に対応するが、観測は不可能である。上記事象の生起確率ｐ（ｕ，ｍ，ｔ，ｚ）は以下の式で与えられる。
ｐ（ｕ，ｍ，ｔ，ｚ）＝ｐ（ｕ）ｐ（ｚ｜ｕ）ｐ（ｍ｜ｚ）ｐ（ｔ｜ｚ）  ……（４）
ここで、ｐ（ｕ）はユーザｕの事前確率、ｐ（ｚ｜ｕ）はユーザｕが与えられた場合にジャンルｚが生起する確率、ｐ（ｍ｜ｚ）およびｐ（ｔ｜ｚ）はジャンルｚが与えられた場合に楽曲ｍおよび多重音色（音響的特徴）ｔが生起する確率である。上記式をｚで周辺化することで、事象（ｕ，ｍ，ｔ）の生起確率ｐ（ｕ，ｍ，ｔ）は以下の通り求まる。
【数１】
2009017195.tif 000003
【００４６】
本モデルにおける未知パラメータは、｛ｐ（ｚ｜ｕ）｜ｚ∈Ｚ，ｕ∈Ｕ｝，｛ｐ（ｍ｜ｚ）｜ｍ∈Ｍ，ｚ∈Ｚ｝および｛ｐ（ｔ｜ｚ）｜ｔ∈Ｔ，ｚ∈Ｚ｝である。これらは、観測データである評価行列Ｒと内容行列Ｃを用いて基本学習部１７で推定する。推薦を行う際には，各ユーザｕに対して、ｐ（ｍ｜ｕ）∝Σｔｐ（ｕ，ｍ，ｔ）に従ってユーザｕの未評価楽曲に対してランク付けを行うことになる。【００４７】
すなわち、基本学習部１７は、複数の評価行列（評価スコア）Ｒと複数の音響的特徴即ち内容行列Ｃとを入力として、複数のパラメータの尤度を最大化するように確率モデルの複数のパラメータ（確率値）を推定する。この未知のパラメータの推定方法について説明する。まず、事象（ｕ，ｍ，ｔ）が独立に生起すると仮定すると、学習用データ（評価行列Ｒと内容行列Ｃ）に対するパラメータの尤度Ｌは以下で与えられる。
【数２】
2009017195.tif 000004
【００４８】
求めるべきパラメータは尤度Ｌを最大化するものである。このように隠れ変数を含む尤度Ｌを最大化する問題を解くため、本実施の形態ではＥＭアルゴリズムを利用している。なお、ＥＭアルゴリズムに代えてＤＡＥＭアルゴリズムを利用してもよい。ＤＡＥＭアルゴリズムは、N．Ueda 及び R．Nakano が書いた “Deterministic Annealing EM Algorithm,”と題する論文（Neural Net．, Vol． 11, No．2, pp．271，282, 1998）に詳しく記載されている。このＤＡＥＭアルゴリズムは、通常のＥＭアルゴリズムに比べて局所解に陥りにくいという利点を持つ。【００４９】
図３は、ＥＭアルゴリズムを利用して構成する基本学習部１７の構成の一例を示すブロックであり、図４は、基本学習部１７をコンピュータで実現する場合に用いるコンピュータプログラムのアルゴリズムを示すフローチャートである。図４から分かるように、ステップＳＴ４１で、複数の既存ユーザの評価スコアを準備し、ステップＳＴ４２で、複数の評価スコアを用いて複数の評価ベクトルを算出する。ステップＳＴ４２の詳細は、図５に示すとおりである。すなわち、ステップＳＴ４２Ａで、あるユーザが与えられたとき、該ユーザの未評価楽曲に対してはデフォルトスコアを代入する。そして、ステップＳＴ４２Ｂで、全楽曲に対する評価スコアを集めて該ユーザに対応する評価ベクトルを生成する。また、ステップＳＴ４３においては、複数の既存楽曲の音響信号から抽出した複数の音響的特徴を準備する。そして、ステップＳＴ４４で、複数の音響的特徴を集めて複数の内容ベクトルを算出する。ステップＳＴ４４の詳細は、図６に示すとおりである。すなわち、ステップＳＴ４４Ａでは、ある音響信号が与えられたとき、該音響信号からメルケプストラム係数群を算出する。そして、ステップＳＴ４４Ｂで、メルケプストラム係数群に対して平均と分散を固定した混合ガウス分布をフィッティング（重みのみを推定）する。最後に、ステップＳＴ４４Ｃで、推定した重みを集めて該音響信号に対する内容ベクトルを生成する。ここで、ガウス分布の混合数は内容ベクトルの次元数に等しい。そして、最後にステップＳＴ４５において、ＥＭアルゴリズムによる三方向アスペクトモデルの学習を行う。ステップＳＴ４５の詳細は、図７に示すとおりである。すなわち、ステップＳＴ４５Ａで、アスペクトモデルの複数のパラメータを初期化する。次に、ステップＳＴ４５Ｂで、評価ベクトルと内容ベクトルに対する複数のパラメータの尤度Ｌを算出する。そして、尤度Ｌを最大化する方向に複数のパラメータ（確率値）を更新する。そして、ステップＳＴ４５Ｄにおいて、尤度の増加が収束したか（閾値以下になったか）が判定される。ステップＳＴ４５で、収束が判定されるまで、ステップＳＴ４５ＢからステップＳＴ４５Ｄが繰り返される。収束が判定されると、ステップＳＴ４５Ｂ〜ステップＳＴ４５Ｄは終了する。【００５０】
図３に示した基本学習部１７の構成は、図４及び図７のアルゴリズムによって実現される。評価ベクトル算出部１７Ａは、複数の評価スコアから複数の評価ベクトルを算出する。内容ベクトル算出部１７Ｂは、複数の音響的特徴から複数の内容ベクトルを算出する。尤度算出部１７Ｃは、複数の評価ベクトルと複数の内容ベクトルに対する複数のパラメータの尤度を算出する。そして更新部１７Ｄは、尤度を最大化する方向に複数のパラメータ（複数のジャンル選択確率、複数の楽曲選択確率及び複数の特徴発生確率）を更新する。そして収束判定部１７Ｅは、尤度の増加が収束したことを判定すると尤度算出部１７Ｃと更新部１７Ｄの動作を終了する。【００５１】
本実施の形態の楽曲推薦システムで用いるアルゴリズムは、モデルベースのアルゴリズムである。モデルベースのアルゴリズムでは、前述のように、推薦を行う際に常に観測データ全体（評価行列Ｒと内容行列Ｃ）を参照する。またモデルベースのアルゴリズムでは，観測データを用いてユーザの音楽的嗜好を推定するための確率モデルを構築したのち，確率モデルに基づいて推薦を行う。モデルベースのアルゴリズムを用いる場合には、推薦自体は迅速に行えるものの、事前のモデル学習（基本学習部１７における演算）に時間がかかる。そこでモデルベースのアルゴリズムを用いる場合には、モデル学習コストを抑えることが課題である。【００５２】
前述のＤＡＥＭアルゴリズムによるアスペクトモデルの学習コストは、｜Ｔ｜と｜Ｚ｜は一定である（具体的に本実施の形態の場合であれば、｜Ｔ｜と｜Ｚ｜はそれぞれ６４と１０とする）ので、Ｏ（｜Ｕ｜｜Ｍ｜）である。これは二つの深刻な問題を引き起こす。一つの問題は、効率性に関する問題である。観測データが変化する度に、コストの大きなモデル学習をやり直す必要がある。二つめの問題は、スケーラビリティに関する問題である。【００５３】
時間的且つ空間的なコスト（学習時間と必要メモリ）は、Ｏ（｜Ｕ｜｜Ｍ｜）のオーダで急激に増加する。効率性とスケーラビリティは実用上極めて重要な要素である。しかしながら従来は、この点に関してほとんど考慮されてこなかった。【００５４】
そこで、本実施の形態では、効率性を改善するため、三方向アスペクトルモデルからなる確率モデル１３に対して、インクリメンタル学習法を適用するための第１及び第２のインクリメンタル学習部１９及び２１を設ける。なお、協調フィルタリングのための基本的なアスペクトモデルに対するインクリメンタル学習法については、L． Zhang, C． Li, Y． Xu, 及び B． Shi が発表した “An Efficient Solution to Factor Drifting Problem in the pLSA Model,”と題する論文（CIT, 2005, pp．175〜181) に開示されている。本実施の形態では、この公知のインクリメンタル学習法を、内容情報を考慮できるように拡張した。【００５５】
本実施の形態で第１のインクリメンタル学習部１９は、評価スコア記憶部３を監視して、評価スコアの変更及び新たなユーザの追加があるたびに、評価スコアを変更したユーザ及び新たなユーザｕ′についてのジャンル選択確率ｐ（ｚ|ｕ′）を、基本学習部１７によって定められた尤度Ｌが最大化された状態を維持するように確率モデル１３に更新または追加する。また第２のインクリメンタル学習部２１は、音響的特徴記憶部５を監視して、楽曲の追加による音響的特徴の追加があるたびに、追加された楽曲ｍ′に関する楽曲選択確率ｐ（ｍ′|ｚ）を、基本学習部１７によって定められた尤度Ｌが最大化された状態を維持するように確率モデル１３に追加する。【００５６】
次に本実施の形態において、第１及び第２のインクリメンタル学習部１９及び２１によって、三方向アスペクトモデルからなる確率モデル１３のパラメータ（更新または追加されたジャンル選択確率及び追加された楽曲選択確率）を逐次的に更新する手法について述べる。以下の説明では、基本学習部１７における学習でＤＡＥＭアルゴリズムを用いて得られた確率モデルを基本モデル、インクリメンタル学習法を用いて更新された確率モデルを、更新モデルと呼ぶ。更新モデルを生成する際には、以下の三つのケースを別々に扱う。【００５７】
（１）新たに評価スコアを与えた既存ユーザｕ′にモデルを適応する場合（既存ユーザのプロファイル更新）。
（２）いくつかの評価スコアを持つ新規ユーザｕ′をモデルに追加登録する場合（新規ユーザのプロファイル更新）。
（３）評価スコアを持たない新規楽曲ｍ′をモデルに追加登録する場合（新規楽曲の追加登録）。【００５８】
最初のケース（１）では確率モデルのサイズは増加しないが、残りの二つのケース（２）及び（３）では新規ユーザｕ′や新規楽曲ｍ′の追加により、確率モデルのサイズが増加する。【００５９】
まず、第１のインクリメンタル学習部１９が実行する、上記（１）の既存ユーザのプロファイル更新について説明する。あるユーザｕの音楽的嗜好を表す条件付き確率分布｛ｐ（ｚ｜ｕ）｜ｚ∈Ｚ｝、すなわちジャンル選択確率をユーザプロファイルと呼ぶ。本実施の形態では、確率モデル１３は、全てのユーザのユーザプロファイルが独立であると仮定している。したがって、あるユーザが評価スコアを変化させた場合、基本学習部１７によって定められた尤度Ｌが最大化された状態が維持されるように該当ユーザのユーザプロファイル（ジャンル選択確率）のみを更新すればよい。【００６０】
いま、尤度Ｌが最大化されているところに、既存ユーザｕ′∈Ｕが評価スコアを変化させたために、ユーザプロファイル｛ｐ（ｚ｜ｕ′）｜ｚ∈Ｚ｝を更新する問題を考える。ユーザｕ′を含まないパラメータは一定であると仮定すると、評価スコア変更後の尤度Ｌの最大化は、尤度Ｌ中でユーザｕ′を含む項の和の最大化と等価になる。Ｌｕ′をユーザｕ′に関する尤度とすると、Ｌｕ′は以下で求まる。
【数３】
2009017195.tif 000005
【００６１】
上記式では、ある変数X に対してΣｍ，ｔｎ（ｕ′，ｍ，ｔ）Ｘのように作用するオペレータΣ＜ｍ，ｔ｜ｕ′＞を便宜的に導入した。【００６２】
式（９）は、Ｊｅｎｓｅｎの不等式を用いて以下のように変形できる。
【数４】
2009017195.tif 000006
【００６３】
ここで、以下の補助関数δｍ，ｔを導入した。
【数５】
2009017195.tif 000007
【００６４】
上記式で楽曲選択確率ｐ（ｍ｜ｚ）および特徴発生確率ｐ（ｔ｜ｚ）が一定であることを考慮すると、尤度Ｌｕ′の最大化は、式（１２）の第一項の最大化と等価である。すなわち、以下の制約付き最大化問題を得る。
【数６】
2009017195.tif 000008
【００６５】
この問題はラグランジュの未定乗数法を用いて解くことができる。いま、ラグランジュの未定乗数をλとして、新たな関数Ｌ＊ｕ′を以下で定義する。
【数７】
2009017195.tif 000009
【００６６】
関数Ｌ＊ｕ′をｐ（ｚ｜ｕ′）に関して偏微分すると以下が得られる。
【数８】
2009017195.tif 000010
【００６７】
目的関数Ｌｕ′が最大となるには、式（１７）がゼロに等しい必要がある。したがって、以下の等式を得る。
【数９】
2009017195.tif 000011
【００６８】
次に、式（１８）を式（１５）に代入することでλを求める。
【数１０】
2009017195.tif 000012
【００６９】
最終的に、以下のユーザプロファイル更新式を得る。
【数１１】
2009017195.tif 000013
【００７０】
次に、第１のインクリメンタル学習部１９が実行する、上記（２）の新規ユーザプロファイル（ジャンル選択確率）の更新について説明する。新規ユーザｕ′∈Ｕのユーザプロファイル｛ｐ（ｚ｜ｕ′）｜ｚ∈Ｚ｝を新たに生成する問題を考える。新規ユーザｕ′は既存楽曲に対して評価スコア｛ｒｕ′，ｍ｜ｍ∈Ｍ｝を付与している。そのため、この場合でも上記式（２２）を適用することが可能である。このとき、楽曲選択確率ｐ（ｍ｜ｚ）および特徴発生確率ｐ（ｔ｜ｚ）は既存ユーザの評価スコアを用いて基本学習部１７で学習されたものを用いる。【００７１】
ここで、Δ｜Ｍ｜を新規ユーザｕ′が付与した評価スコアの数（ｕ′が既存ユーザの場合は追加・変更した評価スコアの数）だとすれば、更新にかかる計算コストはＯ（Δ｜Ｍ｜）である。よって上記式（２２）中で、それらの楽曲に関係する項のみ再計算すればよい。【００７２】
次に、第２のインクリメンタル学習部２１が実行する上記（３）の新規楽曲の追加登録について説明する。新規楽曲ｍ′が与えられたとき、条件付き確率｛ｐ（ｍ′｜ｚ）｜ｚ∈Ｚ｝、すなわち、楽曲選択確率を推定する問題を考える。このケースにも上記と同様の考え方が適用でき、条件付き確率分布｛ｐ（ｚ｜ｍ′）｜ｚ∈Ｚ｝を求めたあとｐ（ｍ′｜ｚ）∝ｐ（ｚ｜ｍ′）／ｐ（ｚ）とすればよい。このとき、新規楽曲ｍ′は評価スコアを持っておらず、内容ベクトル｛ｃｍ，ｔ｜ｔ∈Ｔ｝、すなわち、音響的特徴しか利用できないことに注意する。したがって、新規楽曲追加（新曲ｍ′の楽曲選択確率ｐ（ｍ′｜ｚ）の追加）のための更新式は以下で与えられる。
【数１２】
2009017195.tif 000014
この更新にかかる計算コストは定数オーダである。【００７３】
以上の説明から分かるように、上記（１）乃至（３）の確率の計算コストは、従来のように基本学習部１７における再学習に要する計算コストと比べて、僅かである。したがって本実施の形態によれば、従来の楽曲推薦システムまたは方法と比べて効率性を大幅に高めることができる。【００７４】
図８は、図１の実施の形態をコンピュータを用いて実現する場合に用いるプログラムのアルゴリズムを示すフローチャートである。ステップＳＴ１で基本学習部１７を確立し、ステップＳＴ２で確立モデル１３の全パラメータを更新する。そしてステップＳＴ３でユーザの評価スコアの追加（既存のユーザの評価スコアの更新を含む）を判定する。このステップは、評価スコア記憶部３への評価データの追加または変更を監視することにより実行される。そして新規ユーザｕ′の評価スコアの追加（既存のユーザの評価スコアの更新）があるときに限り、ステップＳＴ４でジャンル選択確率ｐ（ｚ｜ｕ′）を推定して、三方向アスペクトモデルからなる確立モデル１３への追加登録を行う。既存のユーザの評価スコアの変更の場合には、その既存のユーザの更新されたジャンル選択確率だけを推定して更新する。図９は、ステップＳＴ４の詳細を示している。ステップＳＴ４Ａでは、更新または新規のユーザの評価スコアを取得する。そしてステップＳＴ４Ｂで、評価スコアから評価ベクトルを算出する。さらにステップＳＴ４Ｃで、評価ベクトルを用いて新規ユーザのジャンル選択確率を推定し三方向アスペクトモデルからなる確率モデル１３へ追加登録する。【００７５】
ステップＳＴ５では、新規楽曲の追加の有無を判定する。この判定は、新規楽曲の楽曲データが楽曲データ記憶部７に記憶され、音響的特徴抽出部１１がその楽曲データ（音響信号）から新たな音響的特徴を抽出して、その音響的特徴が音響的特徴記憶部７へ新規に記憶されるか否かを監視することにより判定される。新規楽曲の追加を判定した場合には、ステップＳＴ６へと進んで、ステップＳＴ６では、その新規の楽曲ｍ′についての楽曲選択確率ｐ（ｍ′｜ｚ）の推定を実行して、三方向アスペクトモデルからなる確率モデル１３へ追加登録する。図１０は、ステップＳＴ６の詳細を示している。ステップＳＴ６Ａでは、新規楽曲の音響的特徴を取得し、ステップＳＴ６Ｂで、音響的特徴から内容ベクトルを算出する。そしてステップＳＴ６Ｃで、内容ベクトルを用いて楽曲選択確率を推定し三方向アスペクトモデルへ追加登録する。【００７６】
ステップＳＴ７であるユーザから楽曲推薦要求があるか否かの判定が行われる。そして楽曲推薦要求があった場合には、ステップＳＴ８で楽曲推薦部１５がそのユーザに適応した全楽曲のランキングまたは推薦確率ｐ（ｍ｜ｕ）が大きいものから順に楽曲のランキング付けを行い、ランキングを出力する。楽曲推薦要求が無い場合にはステップＳＴ９へと進む。ステップＳＴ９で終了指令の入力の有無を判定して、終了指令が入力されると終了する。終了指令の入力がなければ、ステップＳＴ３へと戻る。【００７７】
上記実施の形態では、基本学習部１７を従来と同様の学習方法を用いて確立している。しかしながら既存の学習方法で確立した基本学習部で、数百万曲、数十万人規模のデータを扱おうとすると、学習に相当の時間を要する。そのため、現実的には、この基本学習部１７で、数百万曲、数十万人規模のデータを扱うこと（スケーラビリティを上げること）は、無理がある。そこで本発明の別の実施の形態では、基本学習部を確立する基本学習部確立システム２３を用いてスケーラビリティを改善する。図１１は、基本学習部確立システム２３の一例の構成を示すブロック図である。また図１２は、基本学習部確立システム２３のオペレーションを模擬的に示している。【００７８】
この基本学習部確立システム２３は、代表ユーザ決定部２３Ａと、代表楽曲決定部２３Ｂと、コアモデル学習部２３Ｃと、第１の基本学習部確立用インクリメンタル学習部２３Ｄと、第２の基本学習部確立用インクリメンタル学習部２３Ｅとから構成されている。代表ユーザ決定部２３Ａは、評価スコア記憶部３から取得した複数のユーザ（ユーザ群Ｕ）の複数の評価スコアに基づいて算出した複数の評価ベクトルに基づいて、複数のユーザのクラスタリングを行い、複数の代表ユーザを決定する。そして決定した複数の代表ユーザについての複数の評価ベクトルを算出する。また、代表楽曲決定部２３Ｂは、音響的特徴記憶部５から取得した複数の楽曲（楽曲群Ｍ）の音響的特徴を示す複数の内容ベクトルに基づいて、複数の楽曲についてクラスタリングを行い複数の代表楽曲を決定する。そして複数の代表楽曲についての複数の内容ベクトルを算出する。【００７９】
コアモデル学習部２３Ｃは、三方向アスペクトモデルが定式化された推定用の確率モデルをコアモデル２３Ｆとして有している。そしてコアモデル学習部２３Ｃは、複数の代表ユーザについての複数の評価ベクトルと複数の代表楽曲についての複数の内容ベクトルとに基づいて、コアモデル２３Ｆのジャンル選択確率、楽曲選択確率及び特徴発生確率の尤度を最大化するようにこれらの確率を推定する。【００８０】
第１の基本学習部確立用インクリメンタル学習部２３Ｅは、評価スコア記憶部３に記憶されている複数のユーザのそれぞれについての複数の評価スコアを入力として用いる。第１の基本学習部確立用インクリメンタル学習部２３Ｅは、複数のユーザをコアモデル２３Ｆに追加するため、複数のユーザについてのそれぞれのジャンル選択確率を、先に代表ユーザ及び代表楽曲に基づいてコアモデル学習部２３Ｃによって定められた尤度が最大化された状態を維持するようにコアモデル２３Ｆに順次追加する。また、第２の基本学習部確立用インクリメンタル学習部２３Ｅは、音響的特徴記憶部５に記憶されている複数の楽曲のそれぞれの複数の音響的特徴を入力とする。第２の基本学習部確立用インクリメンタル学習部２３Ｅは、複数の楽曲をコアモデル２３Ｆに追加するため、複数の楽曲についてのそれぞれの楽曲選択確率を、先に代表ユーザ及び代表楽曲に基づいてコアモデル学習部２３Ｃによって定められた尤度が最大化された状態を維持するように追加する。そして、最終的に、第１及び第２の基本学習部確立用インクリメンタル学習部２３Ｄ及び２３Ｅによって追加された複数のユーザについての複数のジャンル選択確率及び複数の楽曲についての複数の楽曲選択確率を、コアモデル学習部２３Ｃのコアモデル２３Ｆに追加したモデルを基本学習部１７として確立する。このようにすると、基本学習部１７を確立する場合においても、複数のユーザについてのジャンル選択確率の推定（学習）及び複数の楽曲についての楽曲選択確率の推定（学習）演算のみを行うだけでよいので、数百万曲、数十万人規模のデータになっても、演算処理は簡単に行うことできる。このシステムでは、スケーラビリティを改善するために、大量のユーザと楽曲から一定数の代表的なユーザと代表楽曲を仮想的に生成し、それらに対してコンパクトなコアモデル２３Ｆを構築している。そしてコアモデル２３Ｆを、ユーザ群Ｕの各ユーザの評価スコアと楽曲群Ｍの各楽曲の音響的特徴とを逐次的に登録しながら部分的に更新している。【００８１】
すなわち、実際のユーザ群Ｕと楽曲群Ｍを新規ユーザおよび新規楽曲とみなし、インクリメンタル学習法を用いてコアモデル２３Ｆに追加登録していく。追加登録の順序には二通りあるが、楽曲群Ｍの楽曲を先に追加登録する方式（図１２中で下のパスに対応）の方が推薦精度が高くなる。なおこの点は、後に説明する実験で確かめられている。【００８２】
代表ユーザと代表楽曲を生成するには、Ｋ−ｍｅａｎｓ法のようなクラスタリング手法を利用することができる。クラスタリングでは、まずユーザ群Ｕをユーザの評価スコアの評価ベクトルの類似性によってグループ化する。距離尺度として、協調フィルタリングでよく利用されるピアソン相関係数を用いた。一方、楽曲群Ｍは特徴量ベクトル間のユークリッド距離に従ってグループ化する。代表ユーザと代表楽曲は、各グループの平均的なものとなる。ここで問題は、コアモデル学習に用いる評価行列Ｒ′と内容行列Ｃ′の生成である。【００８３】
図１３に評価行列Ｒ′の計算例を示す。ある代表ユーザがある代表楽曲に付与したスコアは、対応するグループ内のユーザが対応するグループ内の楽曲に付与した実際のスコアの平均値である。新しい内容行列Ｃ′は、グループ内の楽曲の特徴量ベクトルを平均することで得られる。通常、クラスタリングのような近似的な操作を行うと推薦精度は低下する。すなわち精度と効率のトレードオフ（精度と効率が両立しない関係）が発生する。しかし、本例の場合には、精度と効率の間にはトレードオフは発生しない。【００８４】
上記のように基本学習部確立システム２３を用いて基本学習部１７を確立すれば、数百万曲、数十万人規模のデータになっても、スケーラビリティを任意に拡大することが可能になる。この基本学習部確立システム２３を用いて基本学習部１７を確立した後は、楽曲推薦システム１において、この確立した基本学習部１７を用いる。そして前述の第１及び第２のインクリメンタル学習部１９及び２１を用いて、確立モデル１３にさらにユーザの追加及び楽曲の追加を行う。【００８５】
図１４は、基本学習部確立システム２３をコンピュータプログラムによりコンピュータで実現する場合のプログラムのアルゴリズムの一例を示している。このアルゴリズムでは、ステップＳＴ１０１で既存ユーザの評価スコアを準備する。そして、ステップＳＴ１０２で各評価スコアに基づいて評価ベクトルを算出する。そして、ステップＳＴ１０３でクラスタリングを行って、複数の代表ユーザを決定する。ステップＳＴ１０４では、複数の代表ユーザの評価ベクトルを算出する。また、ステップＳＴ１０５で既存の楽曲の音楽的特徴を準備する。そして、ステップＳＴ１０６で各音楽的特徴に基づいて各楽曲の内容ベクトルを算出する。そして、ステップＳＴ１０７でクラスタリングを行って、複数の代表楽曲を決定する。ステップＳＴ１０８では、複数の代表楽曲の内容ベクトルを算出する。ステップＳＴ１０９においては、ステップＳＴ１０４で算出した複数の代表ユーザの複数の評価ベクトルと、ステップＳＴ１０８で算出した複数の代表楽曲の複数の内容ベクトルとに基づいて、ＥＭアルゴリズムによる別の確率モデルとしてのアスペクトモデルの学習を行い、アスペクトモデルの複数のパラメータを決定して、コアモデルを確立する。次にステップＳＴ１１０とステップＳＴ１１１を用いて、既存楽曲の情報をコアモデルにすべて登録するために、既存楽曲の楽曲選択確率を推定して、これをコアモデルに全部登録する。その後ステップＳＴ１１２及びＳＴ１１３を用いて、既存ユーザの情報をコアモデルに登録するために、既存ユーザのジャンル選択確率を推定して、これをコアモデルに全部登録する。すべての登録が完了したら終了する。このようにして情報が追加されたコアモデルが、楽曲推薦システム１で使用する基本学習部となる。【００８６】
なお、ユーザの追加数及び楽曲の追加数が多くなり過ぎると、推薦精度が低下することがある。その場合には、楽曲推薦部１５による推薦精度の低下が予め定めた許容値より大きくなったか否かを判定する推薦精度判定部２５（図１）をさらに備えておけばよい。推薦精度判定部２５が、推薦精度の低下が予め定めた許容値より大きくなったことを判定したときには、基本学習部確立システム２３を再度動作させて、基本学習部１７を更新する。このようにすると、基本学習部１７が、それまでに集まったすべてのユーザの評価データ及びすべての楽曲のデータを元に、別の確率モデルとしてのコアモデル２３Ｆのパラメータを再推定（更新）することになり、低下した推薦精度を回復することができる。【００８７】
図１５は、基本学習部確立システム２３と、推薦精度判定部２５と、楽曲推薦システム１とをプログラムによりコンピュータで実現する場合に用いるプログラムのアルゴリズムを示している。ステップＳＴ２０１で基本学習部２３を確立した後は、ステップＳＴ２０２及びＳＴ２０３とステップＳＴ２０４及びＳＴ２０５へと進んで、楽曲推薦システム１が実現される。ステップＳＴ２０４及びＳＴ２０５で新規ユーザ（新規ユーザの評価スコア）の追加登録が実施され、ステップＳＴ２０２及びＳＴ２０３で新規楽曲（新規楽曲の音響的特徴）の追加登録が実施される。ステップＳＴ２０６で、推薦精度を判定し、推薦精度が予め定めた許容値を超えない（許容値より大きくならない）間は、楽曲推薦システム１の動作が継続する。推薦精度が予め定めた許容値を超えた（許容値より大きくなった）ことをステップＳＴ２０６で判定すると、ステップＳＴ２０１へと戻って、再度基本学習部の再確立が実施される。【００８８】
次に、本実施の形態の評価実験について説明する。上記実施の形態では、インクリメンタル学習法を利用することで、楽曲推薦システムの効率性とスケーラビリティが大幅に向上する。しかし推薦精度への影響は実験的に検証する必要がある。そこで以下の実験条件で実験を行った。【００８９】
［実験条件］
信頼性の高い実験を行うには、各ユーザがある程度の数の楽曲に評価を与えている楽曲評価データを用いることが望ましい。この問題に対処するため、評価スコアをＷＥＢサイトから収集することにした。楽曲評価データは、K.Yoshii, M.Goto, K.Komatani, T.Ogata, 及び H.G.Okunoが発表した“Hybrid Collaborative and Content-based Music Recommendation Using Probabilistic Model with Latent User Preferences,”ISMIR,2006,pp.296-301.の研究報告で利用したものと同一である。使用した楽曲は、２０００年４月から２００５年１２月までに、日本のシングルＣＤ売り上げランキングで上位２０位にランクインしたものである。それらに与えられた評価スコアはＡｍａｚｏｎ．Ｃｏ．ｊｐから収集した。評価スコアにはユーザＩＤが付与されているため、あるユーザが複数の楽曲に評価を行っていても、それらの評価は同一ユーザのものであると判定できる。その後、評価数が4 に満たないユーザと楽曲を削減することを繰り返し、評価数が４以上のユーザと楽曲のみを抽出した。最終的に、ユーザ数｜Ｕ｜＝３１６、楽曲数｜Ｍ｜＝３５８となった。評価行列Ｒにおける全評価スコア数中の４から０の各スコアの割合は、それぞれ５７．９％，１９．１％，８．６％，４．９％，９．５％であり、半分以上がスコア４の「大好き」という評価で占められていた。【００９０】
［評価方法］
実験は１０クロスバリデーションで行う。まず、図１６に示すように、評価行列Ｒ中の評価要素の１０％をランダムにマスクし、学習用行列Ｒｔと検証用行列Ｒｅを生成する。推薦精度は、各ユーザごとにｘ（ｘ＝１，３，１０）曲を推薦する場合、全ユーザで合計ｘ×ＮＵ曲に着目して評価する。図１６において、斜線によりハッチングしたボックスはマスクされたスコア（評価要素）である。このとき、推薦精度が高いことは、推薦楽曲には「実際には」高い評価スコア（３や４）が与えられていた楽曲の割合が高く、低い評価スコア（０や１）の楽曲がほとんどない状態をさす。しかし、検証用行列Ｒｅ内にはわずかな評価要素しかないので（評価行列Ｒ内の評価要素数の１０％であるため、検証用行列Ｒｅの密度は０．２１９％）、推薦されるｘ×ＮＵ曲全てについて、実際に与えられていた評価スコアを参照することはできない。そこで、ｘ×ＮＵ曲の中から実際に評価スコアが与えられていた楽曲のみを抽出し、そのうち高い評価スコアが与えられている楽曲の割合を算出することにした。ここで、抽出された楽曲数をＮ（Ｎ＜ｘ×ＮＵ）と定義しておく。【００９１】
以下に、具体的な算出方法について述べる。いま、Ｎｒを検証用行列Ｒｅ中で実際はスコアｒが与えられていたが、学習用行列Ｒｔ中でマスクされた要素数とする。ここで、Ｎ＝ΣｒＮｒとし、Ｎに対するＮｒの割合を「Ａｒ＝Ｎｒ／Ｎ」で定義する。ｘ＝３とした場合の算出例を、図１７に示す。図１７において着色されたボックスはマスクされたスコアであり、φとみなしてモデル学習を行っている。また、図１７の下側に示したトップ３提示の各ボックの中の数字は楽曲番号を示している。括弧内の数字は実際のスコアである。ここで注意すべきは、ランダムに楽曲を推薦した場合でも、Ａｒ＝Ｎｒ／Ｎにより求めたＡ４，…，Ａ０は２０％にはならないことである。Ａ４，…，Ａ０のチャンスレートは、評価行列Ｒ中の評価要素数に対する評価スコアごとの割合に等しく、それぞれ、５７．９％，１９．１％，８．６％，４．９％，９．５％である。以降に、スコア４の楽曲が推薦される割合Ａ４に着目して議論を進める。Ａ４の値が大きいほど、精度の高い推薦ができたことを示す。【００９２】
［インクメンタル学習法の評価］
インクリメンタル学習法を評価するため、先に述べた三つの（１）乃至（３）のケースに分けて実験を行った。【００９３】
［既存ユーザに対する推薦］
実験では、基本の確率モデルを構築するのに利用する評価スコアの割合が低下するのに伴い、推薦精度がどのように低下するかを調査した。また、基本の確率モデルと更新された確率モデルとの推薦精度の差を調査した。まず、実験手順を説明する。学習用行列Ｒｔを用いて、１個の基本モデルと１０個の更新モデルを構築した。基本モデルは学習用行列Ｒｔをそのまま学習用データとし、ＤＡＥＭアルゴリズムによる通常の学習法を適用することで得られた。更新された確率モデルは以下の手順で得られた。【００９４】
（１）学習用行列Ｒｔ中の評価スコアのうちＫ％（Ｋ＝０，１０，２０，…，９０）をランダムにマスクすることで、一時的な学習用行列Ｒ′ｔを生成する。なお、評価スコアについては、特に注釈がない限り、端に「評価スコア」と記載した場合には、φ以外の実際にユーザが付与した（０から４）のことを指すものとする。
（２）Ｒ′ｔを学習用データとしＤＡＥＭアルゴリズムによる通常の学習法を適用することで、一時的な基本モデルを得る。
（３）マスクされたＫ％の評価スコアをインクリメンタルに追加し、すなわち、学習用行列Ｒｔを用いて、更新モデルを得る。【００９５】
このようにして、計１１個の異なるモデルが得られるが、モデル構築に利用した評価スコアの数は最終的に等しくなる。ただし、基本モデル学習分とインクリメンタル学習分の割合が異なる。各モデルの推薦精度を評価するには、検証用行列Ｒｅを利用した。そして上述した実験手順を１０回繰り返した。これは先に述べた１０クロスバリデーションにおいて、学習用行列Ｒｔは１０通りできるからである。【００９６】
図１８に実験結果を示す。図１８において、縦軸は推薦精度（Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  ａｃｃｕｒａｃｙ）であり、横軸はインクリメンタル学習の評価スコアの比率（Ｒａｔｉｏ  ｏｆ  ｒａｔｉｎｇ  ｃｏｒｅｓ  ｆｏｒ  ｉｎｃｒｅｍｅｎｔａｌ  ｔｒａｉｎｉｎｇ）である。そしてＴｏｐ−１  ｒａｎｋｉｎｇｓ（ｂａｓｅｌｉｎｅ）は基本学習部を学習用行列Ｒｔに適用して得られる確率モデルを使用して各ユーザに対して１曲を推薦する場合の推薦精度９３．５％を表し、Ｔｏｐ−３  ｒａｎｋｉｎｇｓ（ｂａｓｅｌｉｎｅ）は該確率モデルを使用して各ユーザに対して３曲を推薦する場合の推薦精度８６．４％を表し、Ｔｏｐ−１０  ｒａｎｋｉｎｇｓ（ｂａｓｅｌｉｎｅ）は該確率モデルを使用して各ユーザに対して１０曲を推薦する場合の推薦精度８０．７％を表している。【００９７】
また、Ｔｏｐ−１  ｒａｎｋｉｎｇｓ（ｉｎｃｒｅｍｅｎｔａｌ）は更新されたある確率モデルを使用して各ユーザに対して１曲を推薦する場合の推薦精度であり、Ｔｏｐ−３  ｒａｎｋｉｎｇｓ（ｉｎｃｒｅｍｅｎｔａｌ）は更新されたある確率モデルを使用して各ユーザに対して３曲を推薦する場合の推薦精度であり、Ｔｏｐ−１０  ｒａｎｋｉｎｇｓ（ｉｎｃｒｅｍｅｎｔａｌ）は更新されたある確率モデルを使用して各ユーザに対して１０曲を推薦する場合の推薦精度である。これらの結果をみると、インクリメンタル学習法を用いて更新された確率モデルを用いた場合で、さほど推薦精度が低下しないことが分かる。【００９８】
また、インクリメンタル学習法により、評価スコアが追加されてもユーザの好みに合うように適切に推薦結果を適応させることができた。基本モデルに逐次的に追加される評価スコアを、基本モデル学習するために利用する評価スコアと同数まで増やしても（Ｋを５０まで増加）、推薦精度はほとんど低下しないことが分かった。各ユーザにランク一位の楽曲のみを推薦する場合（ｘ＝１）を見ると、基本の確率モデルと更新された確率モデルとの推薦精度の差は５％であり、十分に高い推薦精度を保つことができた。【００９９】
［新規ユーザに対する推薦］
本実験では、既存ユーザに対する推薦精度と新規ユーザに対する推薦精度を比較した。この差が小さいほど、優れた推薦ができたことを示す。【０１００】
まず、以下に実験手順を説明する。まず、以下に実験手順を説明する。
（１）ユーザ群Ｕから１０％の数のユーザをランダムに抽出してＵｎｅｗとし、新規ユーザとみなす。一方、残り残りのユーザをＵｒｅｇとし、既存ユーザとみなす。
（２）学習用行列ＲｔからＵｎｅｗに対応する行を削除することにより、縮退した評価行列Ｒ′ｔを生成する。すなわち、Ｒ′ｔのサイズはＲｔの９０％である。
（３）Ｒ′ｔを学習データとして一時的な基本モデルを構築する。この基本モデルにはＵｎｅｗのユーザプロファイルは含まれていない。
（４）まず、既存ユーザＵｒｅｇに対する推薦精度を以下の手順で求める。
（ａ）Ｒ′ｔを式（２２）に入力して（Ｒ′ｔを再度利用することになる）Ｕｒｅｇのユーザプロファイルを更新し、更新モデルを得る。
（ｂ）更新モデルによる推薦精度を検証用行列Ｒｅ中のＵｒｅｇに対応する行を用いて算出する。【０１０１】
次に、新規ユーザＵｎｅｗに対する推薦精度を以下の手順で求める。
（ａ）手順（２）で削除された評価データを式（２２）に入力してＵｎｅｗのユーザプロファイルを生成し、更新モデルを得る。
（ｂ）更新モデルによる推薦精度を検証用行列Ｒｅ中のＵｎｅｗに対応する行を用いて算出する。【０１０２】
１０クロスバリデーションでは、学習用行列Ｒｔは１０通り生成されるので、上記した（１）から（４）の手順を、Ｒｔを切り替えながら１０回行った。推薦精度の平均と分散を求めるために、このような１０クロスバリデーションを１０回行った。【０１０３】
図１９に実験結果を示す。図１９において、Ｒｅｇｉｓｔｅｒｅｄ  ｕｓｅｒｓは既存のユーザの場合であり、Ｎｏｎ−ｒｅｇｉｓｔｅｒｅｄ  ｕｓｅｒｓは新規のユーザの場合である。インクリメンタル学習法により、既存ユーザと同様に新規ユーザに対しても精度よく推薦ができた。有意水準５％でＦ検定を行った結果、両者の分散には違いがあることが分かった。しかし、Ｗｅｌｃｈのｔ検定を行ったところ、両者の推薦精度の平均には差がないことが分かった。【０１０４】
［新規楽曲の推薦］
本実験では、既存楽曲の推薦精度と新規楽曲の推薦精度を比較した。この差が小さいほど、優れた推薦ができたことを示す。【０１０５】
（１）楽曲群Ｍから１０％の数の楽曲をランダムに抽出してＭｎｅｗとし、新規楽曲とみなす。一方、残りの楽曲をＭｒｅｇとし、既存楽曲とみなす。
（２）学習用行列ＲｔからＭｎｅｗに対応する列を削除することにより、縮退した学習用行列Ｒ′ｔを生成する。すなわち、縮退した学習用行列Ｒ′ｔのサイズは学習用行列Ｒｔの９０％である。
（３）縮退した学習用行列Ｒ′ｔを学習データとして一時的な基本モデルを構築する。この基本モデルにはＭｎｅｗとＺとの確率的な関係は含まれていない。
（４）まず、既存楽曲Ｍｒｅｇの推薦精度を以下の手順での手順で求める。【０１０６】
（ａ）縮退した学習用行列Ｒ′ｔを式（２３）に入力して（Ｒ′ｔを再度利用することになる）Ｍｒｅｇの確率的な関係を再計算し、更新モデルを得る。
（ｂ）更新モデルによる推薦精度を検証用行列Ｒｅ中のＭｒｅｇに対応する列を用いて算出する。【０１０７】
次に、新規楽曲Ｍｎｅｗに対する推薦精度を以下の手順で求める。
（ａ）手順（２）で削除された評価データを式（２３）に入力してＭｎｅｗとＺの確率的な関係を推定し、更新モデルを得る。
（ｂ）更新モデルによる推薦精度を検証用行列Ｒｅ中のＭｎｅｗに対応する列を用いて算出する。【０１０８】
１０クロスバリデーションでは、学習用行列Ｒｔは１０通り生成されるので、上記した（１）から（４）の手順を、学習用行列Ｒｔを切り替えながら１０回行った。推薦精度の平均と分散を求めるために、このような１０クロスバリデーションを１０回行った。【０１０９】
図２０に実験結果を示す。図２０において、Ｒｅｇｉｓｔｅｒｅｄ  ｐｉｅｃｅｓは既存の楽曲の場合であり、Ｎｏｎ−ｒｅｇｉｓｔｅｒｅｄ  ｐｉｅｃｅｓは新規楽曲の場合である。インクリメンタル学習法により、既存楽曲と同様に新規楽曲も精度よく推薦ができた。有意水準５％でＦ検定とｔ検定を行った結果、この実験においても両者の推薦精度の平均に差は見られなかった。【０１１０】
［スケーラビリティ改善法の評価］
この実験では、先に述べたインクリメンタル学習法を用いない従前の基本学習部を用いる本発明の実施の形態であるベースライン（ｂａｓｅｌｉｎｅ）システムと二つのスケーラブルな基本学習部確立システムにより確立した基本学習部を用いた楽曲推薦システムの推薦精度を比較した。二つのスケーラブルな基本学習部確立システムは仮想的なユーザ群と楽曲群に対して同じコアモデルを構築するが、実際のユーザ群と楽曲群を追加登録するときの順序が異なる。ここで、最初に楽曲群Ｍを追加し、次にユーザ群Ｕを追加するのをｐｉｅｃｅｓ−ｕｓｅｒｓシステム（図１２中の下側領域に示されたパス）、逆の順序で追加するのをｕｓｅｒｓ−ｐｉｅｃｅｓシステム（図１２中の上側領域に示されたパス）と呼ぶことにする。【０１１１】
図２１に実験結果を示す。ｐｉｅｃｅｓ−ｕｓｅｒｓシステムが他の二つのシステムより高い推薦精度を示した。各ユーザにランク一位の楽曲のみを推薦する場合（ｘ＝１）では、ｐｉｅｃｅｓ−ｕｓｅｒｓシステムはベースラインシステムと同等の推薦精度を示し、各ユーザにランク上位の３曲あるいは１０曲を推薦する場合（ｘ＝３、１０）では、推薦精度が有意に高かった。これは、ユーザ群Ｕと楽曲群Ｍをクラスタリングすることで、評価行列のサイズおよびスパースネスが減少し（図１５参照）、ＤＡＥＭアルゴリズムにより推定されるモデルパラメータの品質が向上したからである。通常のＥＭアルゴリズムより局所解に陥りにくいＤＡＥＭアルゴリズムを利用しても、もとの評価行列Ｒは極めてスパースで局所解に陥りやすいため、スパースネスを減少させるスケーラビリティ改善法は効果的であった。【０１１２】
対照的にｕｓｅｒｓ−ｐｉｅｃｅｓシステムでは、ベースラインシステムより推薦精度は低下した。実際のユーザ群Ｕのユーザプロファイルを生成するための式（２２）は楽曲群Ｍに関するサメーションを含んでいるため、仮想的な楽曲群の内容行列ではなく、実際の楽曲群Ｍの内容行列を利用するほうが望ましい。一方、式（２３）はユーザ群Ｕに関するサメーションを含んでいない。そのため、実際のユーザを追加登録する前に、実際の楽曲を追加登録しておく必要がある。【０１１３】
本実施の形態によれば、ユーザや楽曲を効率的にシステムへ追加登録できるように、確率モデルのパラメータを部分的に更新することが可能になる。さらに、インクリメンタル学習法をクラスタリング手法と組み合わせることで、スケーラビリティを改善することができる。その結果、本実施の形態によれば、確率モデルの学習を劇的に高速化するだけでなく、推薦精度を改善することができる。すなわち、推薦精度と効率性・スケーラビリティとの間のトレードオフを解決することができた。【０１１４】
なお、本実施の形態で用いたプログラムはコンピュータ読み取り可能な記録媒体に記録できるのは勿論である。
【図１】
2009017195.tif 000015
【図２】
2009017195.tif 000016
【図３】
2009017195.tif 000017
【図４】
2009017195.tif 000018
【図５】
2009017195.tif 000019
【図６】
2009017195.tif 000020
【図７】
2009017195.tif 000021
【図８】
2009017195.tif 000022
【図９】
2009017195.tif 000023
【図１０】
2009017195.tif 000024
【図１１】
2009017195.tif 000025
【図１２】
2009017195.tif 000026
【図１３】
2009017195.tif 000027
【図１４】
2009017195.tif 000028
【図１５】
2009017195.tif 000029
【図１６】
2009017195.tif 000030
【図１７】
2009017195.tif 000031
【図１８】
2009017195.tif 000032
【図１９】
2009017195.tif 000033
【図２０】
2009017195.tif 000034
【図２１】
2009017195.tif 000035
【国際調査報告】
2009017195.tif 000036
2009017195.tif 000037