以下、本技術を実施するための形態(以下、実施の形態という)について説明する。なお、説明は以下の順序で行う。
1.実施の形態
2.変形例
<1.実施の形態>
[情報処理システム1の構成例]
図1は、本技術を適用した情報処理システムの一実施の形態を示すブロック図である。
情報処理システム1は、サーバ11及びクライアント12−1乃至12−nを含むように構成される。サーバ11とクライアント12−1乃至12−nは、ネットワーク13を介して相互に接続されている。
なお、以下、クライアント12−1乃至12−nを個々に区別する必要がない場合、単に、クライアント12と称する。
サーバ11は、各クライアント12に対して、各種のアイテムの一種であるコンテンツの配信や推薦等を行うサービス(以下、コンテンツ配信サービスと称する)を提供する。
なお、このコンテンツ配信サービスでは、コンテンツの配信や推薦以外にも、それらに付随する各種のサービスが提供される。
例えば、このコンテンツ配信サービスでは、ユーザがコンテンツに対してコメントや評価等のフィードバックを付与するのを支援したり、付与されたフィードバックを収集し、ユーザ間で共有したりするサービスが提供される。
また、例えば、このコンテンツ配信サービスでは、関連するコンテンツのリンクであるコンテンツリンクの作成を支援したり、作成したコンテンツリンクをユーザ間で共有したりするサービスが提供される。
さらに、例えば、このコンテンツ配信サービスは、ソーシャルサービスの機能を備えており、各ユーザは、他のユーザとコミュニケーションをとることができる。例えば、各ユーザは、他のユーザをフォローしたり、他のユーザと友人関係を結んだりすることが可能である。
ここで、ユーザが他のユーザをフォローするとは、例えば、フォロー元のユーザがフォロー先のユーザのコンテンツ配信サービス上でのアクティビティ(例えば、発言、各種コンテンツへのフィードバック等)に関する情報を自動的に取得できるように設定することである。また、友人関係を結ぶとは、例えば、2人のユーザがお互いをフォローする関係を結ぶことである。
なお、以下、フォロー元のユーザをfollowerと称し、フォロー先のユーザをfolloweeと称する。従って、友人関係にある2人のユーザは、お互いがfollowerでもあり、followeeでもある。
また、例えば、このコンテンツ配信サービスでは、コンテンツだけでなく、他のユーザを推薦するサービスが提供される。
なお、以下、サーバ11が、コンテンツの一種である音楽の配信や推薦等を行う例を中心に説明する。
クライアント12は、例えば、パーソナルコンピュータ、携帯情報端末、携帯電話機、スマートフォン、動画プレイヤー、オーディオプレイヤー等、サーバ12が提供するコンテンツ配信サービスの利用が可能な装置により構成される。
[サーバ11の構成例]
図2は、サーバ11の機能のうち、主にコンテンツリンクに関わる処理、及び、他のユーザの情報の提示に関わる処理を行う部分の機能の構成例を示している。
サーバ11は、通信部31、情報処理部32及び保存部33を含むように構成される。
なお、通信部31と情報処理部32の各部は、相互にアクセスすることが可能である。また、情報処理部32の各部は、保存部33の各部にアクセスすることが可能である。
通信部31は、ネットワーク13を介して各クライアント12と通信を行い、コンテンツ配信サービスに関わる各種の情報や指令等の送受信を行う。
情報処理部32は、コンテンツ配信サービスに関わる各種の処理を行う。情報処理部32は、コンテンツリンク作成処理部41、推薦ユーザ選択処理部42、及び、提示制御部43を含むように構成される。
コンテンツリンク作成処理部41は、コンテンツリンクの作成に関わる処理を実行する。例えば、コンテンツリンク作成処理部41は、コンテンツリンクのリンク元及びリンク先のコンテンツの候補、並びに、2つのコンテンツを結び付けるための特徴量の候補を選択し、表示制御部52に供給する。
なお、以下、コンテンツリンクのリンク元及びリンク先のコンテンツを、それぞれリンク元コンテンツ及びリンク先コンテンツと称する。また、以下、リンク元コンテンツとリンク先コンテンツを結び付ける特徴量をリンク特徴量と称する。
また、例えば、コンテンツリンク作成処理部41は、通信部31を介してクライアント12から受信したユーザからの指令等に基づいて、リンク元コンテンツ、リンク先コンテンツ、及び、リンク特徴量を決定することにより、コンテンツリンクを作成する。コンテンツリンク作成処理部41は、作成したコンテンツリンクを示すコンテンツリンク情報を、保存部33のコンテンツリンク保存部64に保存する。
推薦ユーザ選択処理部42は、ユーザに推薦する推薦ユーザの選択に関わる処理を実行する。推薦ユーザ選択処理部42は、推薦ユーザの選択結果を示す情報を、提示制御部43の提示内容設定部51に供給する。
提示制御部43は、各クライアント12への各種の情報の提示を制御する。提示制御部43は、提示内容設定部51及び表示制御部52を含むように構成される。
提示内容設定部51は、各クライアント12に提示する情報の内容を設定する。提示内容設定部51は、設定した内容を示す情報を表示制御部52に供給する。
表示制御部52は、各種の情報を表示するための表示制御データを生成し、通信部31を介して各クライアント12に送信することにより、各クライアント12における各種の情報の表示を制御する。例えば、表示制御部52は、コンテンツリンクを作成するための画面や、コンテンツリンクや推薦ユーザを提示するための画面等のクライアント12における表示を制御する。
保存部33は、コンテンツ配信サービスで使用する各種の情報を保存する。保存部33は、コンテンツ情報保存部61、ユーザ関係保存部62、ユーザ履歴保存部63、コンテンツリンク保存部64、及び、パラメータ保存部65を含むように構成される。
コンテンツ情報保存部61は、コンテンツ配信サービスで提供される各コンテンツに関するコンテンツ情報(例えば、特徴量、メタデータ等)を保存する。
ユーザ関係保存部62は、コンテンツ配信サービスを利用する各ユーザ間の関係、例えば、友人関係、followee/followerの関係等に関する情報を保存する。
ユーザ履歴保存部63は、コンテンツ配信サービスにおける各ユーザのアクティビティの履歴を示すユーザ履歴を保存する。ユーザ履歴は、例えば、各ユーザのコンテンツの利用履歴や、コンテンツに対するフィードバックに関する情報等を含む。
コンテンツリンク保存部64は、各ユーザにより作成されたコンテンツリンクに関するコンテンツリンク情報を保存する。
パラメータ保存部65は、各ユーザに推薦する推薦ユーザの選択に用いる学習モデルのパラメータを保存する。
[コンテンツリンク作成処理部41の構成例]
図3は、サーバ11のコンテンツリンク作成処理部41の機能の構成例を示している。コンテンツリンク作成処理部41は、リンク元コンテンツ選択部101、特徴量重要度計算部102、リンク特徴量選択部103、リンク先コンテンツ選択部104、及び、コンテンツリンク作成部105を含むように構成される。
リンク元コンテンツ選択部101は、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、リンク元コンテンツの候補を1つ以上選択する。リンク元コンテンツ選択部101は、選択したリンク元コンテンツの候補を示す情報をコンテンツリンク作成部105及び表示制御部52に供給する。
特徴量重要度計算部102は、コンテンツ情報保存部61に保存されているコンテンツ情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、コンテンツの各特徴量の重要度を計算する。特徴量重要度計算部102は、各特徴量の重要度の計算結果を示す情報をリンク特徴量選択部103に供給する。
リンク特徴量選択部103は、特徴量重要度計算部102により計算された重要度に基づいて、リンク特徴量の候補を1つ以上選択する。リンク特徴量選択部103は、選択したリンク特徴量の候補を示す情報を、コンテンツリンク作成部105及び表示制御部52に供給する。
リンク先コンテンツ選択部104は、リンク特徴量、及び、コンテンツ情報保存部61に保存されているコンテンツ情報等に基づいて、リンク先コンテンツの候補を1つ以上選択する。リンク先コンテンツ選択部104は、選択したリンク先コンテンツの候補を示す情報を、コンテンツリンク作成部105及び表示制御部52に供給する。
コンテンツリンク作成部105は、通信部31を介してクライアント12から受信したユーザからの指令等に基づいて、各候補の中からリンク元コンテンツ、リンク特徴量、及び、リンク先コンテンツをそれぞれ決定し、コンテンツリンクを作成する。コンテンツリンク作成部105は、作成したコンテンツリンクを示すコンテンツリンク情報をコンテンツリンク保存部64に保存する。
また、コンテンツリンク作成部105は、リンク元コンテンツ又はリンク特徴量が決定した場合、決定したリンク元コンテンツ又はリンク特徴量を示す情報を、リンク元コンテンツ選択部101、特徴量重要度計算部102、リンク特徴量選択部103、リンク先コンテンツ選択部104、及び、表示制御部52に供給する。さらに、コンテンツリンク作成部105は、リンク先コンテンツが決定した場合、決定したリンク先コンテンツを示す情報を表示制御部52に供給する。
[推薦ユーザ選択処理部42の構成例]
図4は、サーバ11の推薦ユーザ選択処理部42の機能の構成例を示している。推薦ユーザ選択処理部42は、学習部131、予測部132、変化量期待値計算部133、及び、推薦ユーザ選択部134を含むように構成される。
学習部131は、各ユーザに推薦する推薦ユーザの選択に用いるパラメータを予測するためのモデルを学習する。学習部131は、評価予測学習部141、ユーザ関係予測学習部142、フィードバック予測学習部143、及び、フィードバック評価予測学習部144を含むように構成される。
評価予測学習部141は、コンテンツ情報保存部61に保存されているコンテンツ情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、各ユーザのコンテンツに対する評価値を予測するためのモデル(以下、評価予測モデルと称する)を生成する。評価予測学習部141は、生成した評価予測モデルを表すパラメータをパラメータ保存部65に保存する。
ユーザ関係予測学習部142は、ユーザ関係保存部62に保存されているユーザ関係情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、各ユーザが他のユーザを受け入れる確率を予測するためのモデル(以下、ユーザ関係予測モデルと称する)を生成する。ユーザ関係予測学習部142は、生成したユーザ関係予測モデルを表すパラメータをパラメータ保存部65に保存する。
フィードバック予測学習部143は、コンテンツ情報保存部61に保存されているコンテンツ情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、各ユーザが各コンテンツにコメントや評価等のフィードバックを付与する確率を予測するためのモデル(以下、フィードバック予測モデルと称する)を生成する。フィードバック予測学習部143は、生成したフィードバック予測モデルを表すパラメータをパラメータ保存部65に保存する。
フィードバック評価予測学習部144は、コンテンツ情報保存部61に保存されているコンテンツ情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、他のユーザによるフィードバックとともに提示された場合の各コンテンツに対する各ユーザの評価値を予測するためのモデル(以下、フィードバック評価予測モデルと称する)を生成する。すなわち、フィードバック評価予測モデルとは、任意のユーザAによるフィードバックとともに提示されたコンテンツに対するユーザA以外の任意のユーザBの評価値を予測するモデルである。フィードバック評価予測学習部144は、生成したフィードバック評価予測モデルを表すパラメータをパラメータ保存部65に保存する。
予測部132は、学習部131により生成されたモデルを用いて、各ユーザに推薦する推薦ユーザの選択に用いるパラメータの予測を行う。予測部132は、評価予測部151、ユーザ関係予測部152、フィードバック予測部153、及び、フィードバック評価予測部154を含むように構成される。
評価予測部151は、パラメータ保存部65に保存されている評価予測モデルを用いて、各ユーザの各コンテンツに対する評価値を予測する。評価予測部151は、予測した結果を示す情報を変化量期待値計算部133に供給する。
ユーザ関係予測部152は、パラメータ保存部65に保存されているユーザ関係予測モデルを用いて、各ユーザが他のユーザを受け入れる確率を予測する。ユーザ関係予測部152は、予測した結果を示す情報を変化量期待値計算部133に供給する。
フィードバック予測部153は、パラメータ保存部65に保存されているフィードバック予測モデルを用いて、各ユーザが各コンテンツにコメントや評価等のフィードバックを付与する確率を予測する。フィードバック予測部153は、予測した結果を示す情報を変化量期待値計算部133に供給する。
フィードバック評価予測部154は、パラメータ保存部65に保存されているフィードバック評価予測モデルを用いて、他のユーザによるフィードバックとともに提示された場合の各コンテンツに対する各ユーザの評価値を予測する。フィードバック評価予測部154は、予測した結果を示す情報を変化量期待値計算部133に供給する。
変化量期待値計算部133は、予測部132の各部による予測結果に基づいて、各ユーザに他のユーザを推薦する前と後の行動の変化量の期待値(以下、変化量期待値と称する)を計算する。ここで、ユーザの行動とは、例えば、コンテンツを利用する/しないの選択や、コンテンツに対する評価等である。変化量期待値計算部133は、計算結果を示す情報を推薦ユーザ選択部134に供給する。
推薦ユーザ選択部134は、変化量期待値の計算結果に基づいて、各ユーザに推薦する推薦ユーザを選択する。また、推薦ユーザ選択部134は、選択した推薦ユーザを変化量期待値が大きい順に並べた推薦ユーザランキングを作成する。推薦ユーザ選択部134は、作成した推薦ユーザランキングを示す情報を提示内容設定部51に供給する。
[提示内容設定部51の構成例]
図5は、サーバ11の提示内容設定部51の機能の構成例を示している。提示内容設定部51は、推薦ユーザリスト作成部171、コンテンツリンクリスト作成部172、履歴関連リスト作成部173、及び、提示コンテンツ選択部174を含むように構成される。
推薦ユーザリスト作成部171は、推薦ユーザランキングに基づいて、推薦ユーザのリストである推薦ユーザリストを作成する。なお、推薦ユーザリストの詳細については後述する。推薦ユーザリスト作成部171は、作成した推薦ユーザリストを、コンテンツリンクリスト作成部172、履歴関連リスト作成部173、提示コンテンツ選択部174、及び、表示制御部52に供給する。
コンテンツリンクリスト作成部172は、コンテンツリンク保存部64に保存されているコンテンツリンク情報に基づいて、コンテンツリンクのリストであるコンテンツリンクリストを作成する。なお、コンテンツリンクリストの詳細については後述する。コンテンツリンクリスト作成部172は、作成したコンテンツリンクリストを提示コンテンツ選択部174及び表示制御部52に供給する。
履歴関連リスト作成部173は、ユーザ履歴保存部63に保存されているユーザ履歴、及び、コンテンツリンク保存部64に保存されているコンテンツリンク情報に基づいて、ユーザのコンテンツの利用履歴にコンテンツリンクを融合した履歴関連リストを作成する。なお、履歴関連リストの詳細については後述する。履歴関連リスト作成部173は、作成した履歴関連リストを提示コンテンツ選択部174及び表示制御部52に供給する。
提示コンテンツ選択部174は、コンテンツ情報保存部61に保存されているコンテンツ情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、ユーザに他のユーザの情報を提示する場合に、その他のユーザのコンテンツの利用履歴として提示するコンテンツ(以下、提示コンテンツと称する)を選択する。提示コンテンツ選択部174は、提示コンテンツの選択結果を示す情報を表示制御部52に供給する。
[クライアント12の構成例]
図6は、クライアント12の機能の構成例を示している。クライアント12は、通信部201、再生部202、出力制御部203、出力部204、入力部205、及び、コンテンツリンク作成部206を含むように構成される。
通信部201は、ネットワーク13を介してサーバ11と通信を行い、コンテンツ配信サービスに関わる各種の情報や指令等の送受信を行う。
再生部202は、ネットワーク13及び通信部201を介して、サーバ11からコンテンツを受信し、受信したコンテンツを再生する。再生部202は、再生の結果得られた再生データを出力制御部203に供給する。
出力制御部203は、ネットワーク13及び通信部201を介して、コンテンツに関する情報やコンテンツに付与されたコメント等、ユーザに提示する情報やコンテンツの再生とともに表示する情報をサーバ11から受信する。また、出力制御部203は、再生データに基づいて、出力部204における動画や静止画の表示、音声の出力等を制御する。さらに、出力制御部203は、サーバ11から受信した各種の情報の出力部204における表示を制御する。
出力部204は、例えば、ディスプレイ等の各種の表示デバイス、及び、スピーカ、音声出力端子等の各種の音声出力デバイスにより構成される。
入力部205は、例えば、キーボード、マウス、タッチパネル、マイクロフォン等の各種の入力デバイスにより構成される。入力部205は、ユーザにより入力された情報や指令等を、再生部202、出力制御部203及びコンテンツリンク作成部206に供給する。
コンテンツリンク作成部206は、ネットワーク13及び通信部201を介して、サーバ12と情報や各種の指令等の送受信を行いながら、コンテンツリンクの作成に関わる処理を行う。
[情報処理システム1の処理]
次に、図7乃至図27を参照して、情報処理システム1の処理について説明する。
(コンテンツリンク作成処理)
まず、図7のフローチャートを参照して、サーバ11により実行されるコンテンツリンク作成処理について説明する。
なお、この処理は、例えば、ネットワーク13を介して、クライアント12のうちの1つからサーバ11にコンテンツリンクの作成の要求が送信されたとき開始される。
なお、以下、この処理において、コンテンツリンクの作成を行うユーザをアクティブユーザと称する。
ステップS1において、コンテンツリンク作成処理部41のリンク元コンテンツ選択部101は、リンク元コンテンツの候補を選択する。例えば、リンク元コンテンツ選択部101は、ユーザ履歴保存部63に保存されているユーザ履歴に基づいて、アクティブユーザの嗜好に合うコンテンツをリンク元コンテンツの候補として選択する。アクティブユーザの嗜好に合うコンテンツとは、例えば、アクティブユーザの利用頻度や評価が高いコンテンツ等である。
ここで、図8を参照して、リンク元コンテンツの候補の選択方法の具体例について説明する。
図8は、ユーザ履歴保存部63に保存されているユーザ履歴のデータの一部の構成例を示している。この例において、ユーザ履歴は、各ユーザの各コンテンツに対する評価値、及び、コンテンツの再生回数を含んでいる。
例えば、リンク元コンテンツの候補を選択する条件を再生回数が10回以上のコンテンツに設定した場合、アクティブユーザがユーザU1であるとき、コンテンツC1、C2及びC4がリンク元コンテンツの候補に選択される。
そして、リンク元コンテンツ選択部101は、選択したリンク元コンテンツの候補を示す情報を、コンテンツリンク作成部105及び表示制御部52に供給する。
ステップS2において、サーバ11は、リンク元コンテンツの候補を提示する。具体的には、表示制御部52は、リンク元コンテンツの候補を表示するための表示制御データを生成し、通信部31を介して、アクティブユーザのクライアント12に送信する。
アクティブユーザのクライアント12の出力制御部203は、ネットワーク13及び通信部201を介して、サーバ11から表示制御データを受信する。出力制御部203は、表示制御データに基づいて、リンク元コンテンツの候補を出力部204に表示させる。これにより、アクティブユーザにリンク元コンテンツの候補が提示される。
ステップS3において、サーバ11は、リンク元コンテンツを決定する。
例えば、アクティブユーザは、クライアント12の入力部205を操作して、提示されたリンク元コンテンツの候補の中から所望のものを1つ選択する。なお、このとき、アクティブユーザが、提示された候補以外のコンテンツからもリンク元コンテンツを選択できるようにしてもよい。コンテンツリンク作成部206は、リンク元コンテンツの選択結果を示す情報を入力部205から取得し、通信部201を介してサーバ11に送信する。
サーバ11の通信部31は、ネットワーク13を介して、リンク元コンテンツの選択結果を示す情報をクライアント12から受信し、コンテンツリンク作成部105に供給する。コンテンツリンク作成部105は、アクティブユーザにより選択されたコンテンツをリンク元コンテンツに決定する。
なお、コンテンツリンク作成部105が、アクティブユーザの選択によらずに、各候補の中からリンク元コンテンツを選択するようにしてもよい。
例えば、コンテンツリンク作成部105が、各候補の中から、候補を選択する基準の充足率が最も高いコンテンツをリンク元コンテンツに選択するようにしてもよい。例えば、図8を参照して上述した例において、ユーザU1がアクティブユーザの場合、再生回数が最も多いコンテンツC1がリンク元コンテンツに選択される。
あるいは、例えば、コンテンツリンク作成部105が、各候補の中からランダムにリンク元コンテンツを選択するようにしてもよい。
コンテンツリンク作成部105は、決定したリンク元コンテンツを示す情報を、リンク元コンテンツ選択部101、特徴量重要度計算部102、リンク特徴量選択部103、リンク先コンテンツ選択部104、及び、表示制御部52に供給する。
ステップS4において、特徴量重要度計算部102は、アクティブユーザ及びリンク元コンテンツの少なくとも一方を基準にして、各特徴量の重要度を計算する。
まず、アクティブユーザを基準にして、各特徴量の重要度を計算する方法の例について説明する。
例えば、アクティブユーザのコンテンツに対する評価値を予測するのに効果的な特徴量は、アクティブユーザのコンテンツに対する評価に与える影響が大きく、アクティブユーザにとって重要度の高い特徴量であると考えられる。そこで、特徴量重要度計算部102は、コンテンツ情報保存部61に保存されているコンテンツ情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴に基づいて、コンテンツの特徴量からアクティブユーザのコンテンツに対する評価値への回帰分析を行う。そして、特徴量重要度計算部102は、求めた回帰係数を、アクティブユーザの各特徴量に対する重要度に設定する。このとき、回帰分析にL1正則化を適用すると(例えば、非特許文献1参照)、評価値の予測に寄与しない特徴量の回帰係数を0にすることができる。
非特許文献1:Tibshirani, R., "Regression Shrinkage and Selection via the Lasso", Journal of the Royal Statistical Society, Series B, Vol. 58, No. 1, 1996
ここで、図9及び図10、並びに、上述した図8を参照して、回帰分析を用いて特徴量の重要度を求める方法の具体例について説明する。
図9は、コンテンツ情報保存部61に保存されているコンテンツ情報に含まれる、コンテンツの特徴量の具体例を示している。この例では、各コンテンツについて、テンポ、音の密度、リズム楽器比の3種類の特徴量が求められている。
図10は、図8のユーザ履歴及び図9のコンテンツ特徴量に基づいて、コンテンツの特徴量から各ユーザのコンテンツに対する評価値への回帰分析を行うことにより得られる回帰係数の例を示している。なお、図8及び図9にはユーザ履歴及びコンテンツ特徴量の一部しか表示されていないため、図8及び図9に示されているデータと図10の計算結果は完全には対応していない。
そして、図10に示される各回帰係数が、各ユーザの各特徴量に対する重要度に設定される。例えば、この例の場合、ユーザU1にとっては、テンポが最も重要度が高い特徴量となり、音の密度が最も重要度が低い特徴量となる。ユーザU2にとっては、音の密度が最も重要度が高い特徴量となり、リズム楽器比が最も重要度が低い特徴量となる。ユーザU3にとっては、リズム楽器比が最も重要度が高い特徴量となり、テンポが最も重要度が低い特徴量となる。
また、例えば、ユーザがすでに作成したコンテンツリンクをユーザの類似性の基準と考え、それを元に特徴量の重要度を学習するようにしてもよい。
例えば、複数の類似ペアを与えた場合に、マハラノビス距離等を学習する手法が知られている(例えば、非特許文献2参照)。
非特許文献2:Yang, L., “Distance Metric Learning: A Comprehensive Survey”, Michigan State University, 2006
この非特許文献2の手法において、共分散行列を対角行列に制限すると、共分散行列の各特徴量に対応する要素を、各特徴量の重要度としてそのまま用いることができる。
あるいは、例えば、アクティブユーザがコンテンツリンクを作成する際に用いたリンク特徴量の履歴に基づいて、アクティブユーザの各特徴量に対する重要度を設定するようにしてもよい。例えば、アクティブユーザが過去に作成したコンテンツリンクにおいて、リンク特徴量に用いられた頻度が高い特徴量ほど重要度を高く設定し、リンク特徴量に用いられた頻度が低い特徴量ほど重要度を低く設定することが可能である。
次に、リンク元コンテンツを基準にして、各特徴量の重要度を計算する方法の例について説明する。
例えば、リンク元コンテンツの特徴を顕著に表す特徴量ほど重要度を高く設定し、そうでない特徴量の重要度を低く設定することが考えられる。
ここで、リンク元コンテンツの特徴を顕著に表す特徴量とは、例えば、他のコンテンツが有する確率が低いが、リンク元コンテンツが有している特徴量や、逆に、他のコンテンツが有する確率が高いが、リンク元コンテンツが有していない特徴量等である。例えば、リンク元コンテンツが非常に稀なジャンルに属している場合、特徴量の1つであるジャンル情報の重要度を高く設定することが考えられる。
また、特徴量が連続量で表される場合、リンク元コンテンツの特徴を顕著に表す特徴量とは、例えば、リンク元のコンテンツの値が全体の平均値から大きく離れている特徴量等である。例えば、リンク元コンテンツのテンポが、他の平均的なコンテンツと比較して著しく速い又は遅い場合、特徴量の1つである楽曲のテンポの重要度を高く設定することが考えられる。
なお、以上の特徴量の重要度の計算方法は、その一例であり、他の方法を用いるようにしてもよい。また、アクティブユーザとリンク元コンテンツの両方を基準にして、特徴量の重要度を計算するようにしてもよい。
そして、特徴量重要度計算部102は、各特徴量の重要度の計算結果を示す情報をリンク特徴量選択部103に供給する。
ステップS5において、リンク特徴量選択部103は、リンク特徴量の候補を選択する。具体的には、リンク特徴量選択部103は、ステップS4の処理で求められた重要度が高いものから順に所定の数の特徴量をリンク特徴量の候補として選択する。リンク特徴量選択部103は、選択したリンク特徴量の候補を示す情報を、コンテンツリンク作成部105及び表示制御部52に供給する。
ステップS6において、ステップS2の処理と同様にして、アクティブユーザのクライアント12において、リンク特徴量の候補が提示される。
ステップS7において、サーバ11は、リンク特徴量を決定する。
例えば、アクティブユーザは、クライアント12の入力部205を操作して、提示されたリンク特徴量の候補の中から所望のものを1つ又は複数選択する。なお、このとき、アクティブユーザが、直接テキストデータを入力する等の方法により、提示された候補以外の特徴量をリンク特徴量に選択できるようにしてもよい。また、このとき、アクティブユーザが、リンク特徴量を説明するための情報を入力できるようにしてもよい。この情報は、例えば、後述する図25の吹き出し422a等に表示することができる。
コンテンツリンク作成部206は、リンク特徴量の選択結果を示す情報を入力部205から取得し、通信部201を介してサーバ11に送信する。
サーバ11の通信部31は、ネットワーク13を介して、リンク特徴量の選択結果を示す情報をクライアント12から受信し、コンテンツリンク作成部105に供給する。コンテンツリンク作成部105は、アクティブユーザにより選択された特徴量をリンク特徴量に決定する。
なお、コンテンツリンク作成部105が、アクティブユーザの選択によらずに、各候補の中からリンク特徴量を選択するようにしてもよい。
例えば、コンテンツリンク作成部105が、各候補の中から、重要度が高い順に1つ又は複数の特徴量をリンク特徴量に選択するようにしてもよい。
あるいは、例えば、コンテンツリンク作成部105が、各候補の中からランダムにリンク特徴量を選択するようにしてもよい。
コンテンツリンク作成部105は、決定したリンク特徴量を示す情報を、リンク元コンテンツ選択部101、特徴量重要度計算部102、リンク特徴量選択部103、リンク先コンテンツ選択部104、及び、表示制御部52に供給する。
ステップS8において、リンク先コンテンツ選択部104は、リンク先コンテンツの候補を選択する。
具体的には、リンク先コンテンツ選択部104は、決定したリンク特徴量のみに基づいて、リンク元コンテンツと他のコンテンツとの類似度を計算する。例えば、リンク先コンテンツ選択部104は、コンテンツ情報保存部61に保存されているコンテンツ情報に基づいて、リンク特徴量のみを用いて、リンク元コンテンツと他の各コンテンツとの間のユークリッド距離を計算する。そして、リンク先コンテンツ選択部104は、求めたユークリッド距離をリンク元コンテンツと各コンテンツとの類似度に設定する。また、リンク先コンテンツ選択部104は、リンク元コンテンツとの類似度が高い順に所定の数のコンテンツを、リンク先コンテンツの候補に選択する。
なお、このとき、アクティブユーザが選択しやすいように、アクティブユーザが利用したことがあるコンテンツの中からリンク先コンテンツの候補を選択するようにしてもよい。この場合、リンク先コンテンツの候補の選択範囲を、対象とする利用のレベルに応じて任意に設定することができる。例えば、アクティブユーザが再生したことがあるコンテンツを含む集合を選択範囲に設定したり、或いは、アクティブユーザが情報を閲覧したことがあるコンテンツを含む集合まで選択範囲を広げたりすることができる。
そして、リンク先コンテンツ選択部104は、選択したリンク先コンテンツの候補を示す情報を、コンテンツリンク作成部105及び表示制御部52に供給する。
ステップS9において、ステップS2の処理と同様にして、アクティブユーザのクライアント12において、リンク先コンテンツの候補が提示される。
ステップS10において、サーバ11は、リンク先コンテンツを決定する。
例えば、アクティブユーザは、クライアント12の入力部205を操作して、提示されたリンク先コンテンツの候補の中から所望のものを1つ選択する。なお、このとき、アクティブユーザが、提示された候補以外のコンテンツからもリンク先コンテンツを選択できるようにしてもよい。コンテンツリンク作成部206は、リンク先コンテンツの選択結果を示す情報を入力部205から取得し、通信部201を介してサーバ11に送信する。
サーバ11の通信部31は、ネットワーク13を介して、リンク先コンテンツの選択結果を示す情報をクライアント12から受信し、コンテンツリンク作成部105に供給する。コンテンツリンク作成部105は、アクティブユーザにより選択されたコンテンツをリンク先コンテンツに決定する。
なお、コンテンツリンク作成部105が、アクティブユーザの選択によらずに、各候補の中からリンク先コンテンツを選択するようにしてもよい。
例えば、コンテンツリンク作成部105が、各候補の中から、リンク元コンテンツとの間のリンク特徴量に基づく類似度が最も高いコンテンツをリンク先コンテンツに選択するようにしてもよい。
あるいは、例えば、コンテンツリンク作成部105が、各候補の中からランダムにリンク先コンテンツを選択するようにしてもよい。
そして、コンテンツリンク作成部105は、決定したリンク先コンテンツを示す情報を表示制御部52に供給する。
ステップS11において、コンテンツリンク作成部105は、作成したコンテンツリンクを保存する。具体的には、コンテンツリンク作成部105は、作成したコンテンツリンクを構成するリンク元コンテンツ及びリンク先コンテンツ、使用したリンク特徴量、並びに、コンテンツリンクを作成したアクティブユーザに関する情報(例えば、ユーザID等)を対応付けて、コンテンツリンク保存部64に保存する。
その後、コンテンツリンク作成処理は終了する。
以上のようにして、アクティブユーザの嗜好や行動等に応じて、リンク元コンテンツ、リンク特徴量、リンク先コンテンツの候補がそれぞれ提示されるので、簡単に満足度が高いコンテンツリンクを作成することが可能になる。また、選択したリンク特徴量に基づいてリンク元コンテンツに類似するコンテンツがリンク先コンテンツの候補として提示されるので、アクティブユーザは、様々な視点に基づいて、リンク元コンテンツに関連するリンク先コンテンツを見つけることができる。その結果、適切なコンテンツの組み合わせからなるコンテンツリンクを簡単に作成することが可能になる。
なお、以上の説明では、リンク元コンテンツ、リンク特徴量、リンク先コンテンツの候補を順番に提示し、順番に決定していく例を示したが、これらを一度に提示して、一度に決定するようにすることも可能である。
図11は、リンク元コンテンツ、リンク特徴量、及び、リンク先コンテンツの候補を一度に提示して、一度に決定するようにした場合に、クライアント12において表示されるコンテンツリンク作成画面の例を示している。なお、図内の点線は、説明のために追加した補助線であり、実際には表示されない。
このコンテンツリンク作成画面は、リンク元コンテンツ表示領域301、リンク特徴量表示領域302、リンク先コンテンツ表示領域303に分かれる。また、リンク先コンテンツ表示領域303の下に、決定ボタン304が配置されている。
リンク元コンテンツ表示領域301には、アイコン311−1乃至311−7、及び、ボタン312L,312Rが表示されている。アイコン311−1乃至311−7は、リンク元コンテンツの各候補を表すものであり、例えば、対応するコンテンツ(楽曲)を含むアルバムやシングルのジャケット又はアーティストの画像等が用いられる。
なお、以下、アイコン311−1乃至311−7を個々に区別する必要がない場合、単にアイコン311と称する。
ボタン312Lが押下されると、各アイコン311が左方向にスクロールする。このとき、左端に表示されているアイコン311が消え、画面内に表示されていないリンク元コンテンツの候補がある場合には、そのコンテンツに対応するアイコン311が右端に現れる。一方、ボタン312Rが押下されると、各アイコン311が右方向にスクロールする。このとき、右端に表示されているアイコン311が消え、画面内に表示されていないリンク元コンテンツの候補がある場合には、そのコンテンツに対応するアイコン311が左端に現れる。なお、タッチスクリーンに表示される場合には、フリック操作によりアイコン311をスクロールできるようにしてもよい。
また、中央に大きく表示されているアイコン311に対応するコンテンツが、その時点でリンク元コンテンツに選択されているコンテンツとなる。従って、アイコン311を左又は右にスクロールし、中央に表示されるアイコン311を変更することにより、リンク元コンテンツの選択を切り替えることができる。また、中央に表示されているアイコン311の下に、そのアイコンに対応するコンテンツのタイトル及びアーティスト名が表示される。
リンク特徴量表示領域302には、アイコン313−1乃至313−3、及び、ボタン314L,314Rが表示されている。アイコン313−1乃至313−3は、リンク特徴量の各候補を表すものであり、例えば、リンク特徴量を表す文字列が表示されている。
なお、以下、アイコン313−1乃至313−3を個々に区別する必要がない場合、単にアイコン313と称する。
ボタン314Lが押下されると、各アイコン313が左方向にスクロールする。このとき、左端に表示されているアイコン313が消え、画面内に表示されていないリンク特徴量の候補がある場合には、そのリンク特徴量に対応するアイコン313が右端に現れる。一方、ボタン314Rが押下されると、各アイコン313が右方向にスクロールする。このとき、右端に表示されているアイコン313が消え、画面内に表示されていないリンク特徴量の候補がある場合には、そのリンク特徴量に対応するアイコン313が左端に現れる。なお、タッチスクリーンに表示される場合には、フリック操作によりアイコン313をスクロールできるようにしてもよい。
また、中央に大きく表示されているアイコン313に対応する特徴量が、その時点でリンク特徴量に選択されている特徴量となる。従って、アイコン313を左又は右にスクロールし、中央に表示されるアイコン313を変更することにより、リンク特徴量の選択を切り替えることができる。
リンク先コンテンツ表示領域303には、アイコン315−1乃至315−7、及び、ボタン316L,316Rが表示されている。アイコン315−1乃至315−7は、リンク先コンテンツの各候補を表すものであり、例えば、対応するコンテンツ(楽曲)を含むアルバムやシングルのジャケット又はアーティストの画像等が用いられる。
なお、以下、アイコン315−1乃至315−7を個々に区別する必要がない場合、単にアイコン315と称する。
ボタン316Lが押下されると、各アイコン315が左方向にスクロールする。このとき、左端に表示されているアイコン315が消え、画面内に表示されていないリンク先コンテンツの候補がある場合には、そのコンテンツに対応するアイコン315が右端に現れる。一方、ボタン316Rが押下されると、各アイコン315が右方向にスクロールする。このとき、右端に表示されているアイコン315が消え、画面内に表示されていないリンク先コンテンツの候補がある場合には、そのコンテンツに対応するアイコン315が左端に現れる。なお、タッチスクリーンに表示される場合には、フリック操作によりアイコン315をスクロールできるようにしてもよい。
また、中央に大きく表示されているアイコン315に対応するコンテンツが、その時点でリンク先コンテンツに選択されているコンテンツとなる。従って、アイコン315を左又は右にスクロールし、中央に表示されるアイコン315を変更することにより、リンク先コンテンツの選択を切り替えることができる。また、中央に表示されているアイコン315の下に、そのアイコンに対応するコンテンツのタイトル及びアーティスト名が表示される。
そして、例えば、リンク元コンテンツの選択を切り替えると、その時点で選択されているリンク元コンテンツ及びリンク特徴量に基づいて、リンク先コンテンツの候補が変更される。これに伴い、リンク先コンテンツ表示領域303のアイコン315が、変更後のリンク先コンテンツの候補を表すアイコンに更新される。
なお、このとき、リンク特徴量の候補がリンク元コンテンツを基準に選択されている場合、リンク元コンテンツの変更に合わせて、リンク特徴量の候補の表示も更新するようにしてもよい。そして、リンク元コンテンツ及びリンク特徴量の変更に合わせて、リンク先コンテンツの候補の表示を更新するようにしてもよい。
同様に、例えば、リンク特徴量の選択を切り替えると、その時点で選択されているリンク元コンテンツ及びリンク特徴量に基づいて、リンク先コンテンツの候補が変更される。これに伴い、リンク先コンテンツ表示領域303のアイコン315が、変更後のリンク先コンテンツの候補を表すアイコンに更新される。
そして、アクティブユーザは、リンク元コンテンツ、リンク特徴量、及び、リンク先コンテンツを個々に変更しながら、所望の組合せになった時点で、決定ボタン304を押下する。そうすると、その時点に選択しているリンク元コンテンツ、リンク特徴量、及び、リンク先コンテンツの組み合わせからなるコンテンツリンクが作成される。
これにより、アクティブユーザは、リンク元コンテンツ、リンク特徴量、及び、リンク先コンテンツの組み合わせを一画面で確認しながら、コンテンツリンクを作成することができる。また、決定ボタンを押下するまでは、リンク元コンテンツ、リンク特徴量、及び、リンク先コンテンツを自由に変更することができる。従って、より簡単に所望のコンテンツリンクを作成することが可能になる。
(ユーザ推薦学習処理)
次に、図12のフローチャートを参照して、サーバ11により実行されるユーザ推薦学習処理について説明する。
なお、この処理は、例えば、定期的、または、所定の条件が満たされたとき実行される。ここで、所定の条件とは、例えば、ユーザの追加又は削除が発生したとき、サーバ11にユーザ推薦学習処理の実行の指令が入力されたとき等である。
ステップS101において、評価予測学習部141は、評価予測学習を行う。すなわち、評価予測学習部141は、コンテンツ情報保存部61に保存されているコンテンツ情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、所定の学習方法を用いて、各ユーザのコンテンツに対する評価値(例えば、好き嫌いや5段階評価等)を予測するための評価予測モデルを生成する。
なお、評価予測学習部141の学習方法には、例えば、以下の非特許文献3に記載されている方法等、任意の方法を採用することができる。
非特許文献3:Su, X., Khoshgoftaar, T. M., "A Survey of Collaborative Filtering Techniques", Advances in Artificial Intelligence, vol. 2009, 2009
評価予測学習部141は、生成した評価予測モデルを表すパラメータをパラメータ保存部65に保存する。
ステップS102において、ユーザ関係予測学習部142は、ユーザ関係予測学習を行う。すなわち、ユーザ関係予測学習部142は、ユーザ関係保存部62に保存されているユーザ関係情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、所定の学習方法を用いて、各ユーザが他のユーザを受け入れる確率を予測するためのーザ関係予測モデルを生成する。
ここで、ユーザAがユーザBを受け入れる確率とは、例えば、コンテンツ配信サービス上で、ユーザAがユーザBと友人関係を結ぶか、又は、ユーザBをフォローする確率である。換言すれば、ユーザAがユーザBのfollowerになる確率である。
なお、ユーザ関係予測学習部142の学習方法には、例えば、以下の非特許文献4に記載されている方法等、任意の方法を採用することができる。
非特許文献4:Hasan, M. A., Zaki, M. J., "A Survey of Link Prediction in Social Networks", Social Network Data Analytics, Springer, 2011
ユーザ関係予測学習部142は、生成したユーザ関係予測モデルを表すパラメータをパラメータ保存部65に保存する。
ステップS103において、フィードバック予測学習部143は、フィードバック予測学習を行う。すなわち、フィードバック予測学習部143は、コンテンツ情報保存部61に保存されているコンテンツ情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、所定の学習方法を用いて、各ユーザが各コンテンツにコメントや評価等のフィードバックを付与する確率を予測するためのフィードバック予測モデルを生成する。
なお、フィードバック予測学習部143の学習方法には、例えば、以下の非特許文献5に記載されている方法等、任意の方法を採用することができる。
非特許文献5:Zhang, Y., et al., "Sentiment Analysis for Online Reviews Using an Author-Review-Object Model", Asia Information Retrieval Societies Conference,2011
フィードバック予測学習部143は、生成したフィードバック予測モデルを表すパラメータをパラメータ保存部65に保存する。
ステップS104において、フィードバック評価予測学習部144は、フィードバック評価予測学習を行う。すなわち、フィードバック評価予測学習部144は、コンテンツ情報保存部61に保存されているコンテンツ情報、及び、ユーザ履歴保存部63に保存されているユーザ履歴等に基づいて、所定の学習方法を用いて、他のユーザによるフィードバックとともに提示された場合の各コンテンツに対する各ユーザの評価値を予測するためのフィードバック評価予測モデルを生成する。
なお、フィードバック評価予測学習部144の学習方法には、例えば、本願と同一の出願人により出願された特願2011−168975号(以下、特許文献2と称する)に記載されている方法等、任意の方法を採用することができる。
ここで、特許文献2に記載されている方法について簡単に説明する。
例えば、フィードバック評価予測学習部144は、コンテンツとともに当該コンテンツに対するフィードバック及びフィードバックを付与したユーザを提示した場合に、提示された組み合わせ(以下、CUFタプルと称する)に対して、提示されたユーザが付与したフィードバック(以下、メタフィードバックと称する)のデータを収集する。また、フィードバック評価予測学習部144は、収集したメタフィードバックがポジティブなものかネガティブなものかの判別を行う。
そして、フィードバック評価予測学習部144は、ユーザの特徴量、コンテンツの特徴量、フィードバックの特徴量を1つのベクトルとし、メタフィードバックのポジティブ又はネガティブの判別結果をそれぞれ正例または負例として、サポートベクターマシンやロジスティック回帰などの判別手法(例えば、非特許文献6参照)を適用することにより、CUFタプルに対する受け入れモデルを生成する。
非特許文献6:Bishop C. M., "Pattern Recognition and Machine Learning", Springer-Verlag, 2006
例えば、CUFタプルの特徴量ベクトルは、図13のように表現される。図13の各欄の値は、1列目に示される評価対象タプルに含まれるコンテンツ、ユーザ、フィードバックの2列目以降に示される各項目に対する特徴量を示している。例えば、図13の1番目のレコードは、評価対象タプルである(C1、U2、F2)タプルに含まれるコンテンツ、ユーザ、フィードバックの特徴量を示している。具体的には、コンテンツC1の”ジャンル ロック”、”ジャンル ポップス”、”ジャンル ジャズ”、”テンポ”、”音の大きさ”、”リズム楽器の比”の各項目に対する特徴量は、それぞれ1,0,0,40,55,40である。ユーザU1の”男”、”女”、”20代以下”、”30代”、”40代以上”の各項目に対する特徴量は、1,0,0,1,0である。フィードバックF1の”かっこいい”、”!”、特徴量4、特徴量5の各項目に対する特徴量は、それぞれ1,1,0,0である。
そして、メタフィードバックの判別結果に基づいて、ロジスティック回帰等を用いて学習することにより、各ユーザのCUFタプルに対する予測受け入れ度を計算するための特徴量毎の重みが、図14に示されるように求まる。
なお、図14の各欄の値は、1列目に示されるユーザの2列目以降に示される各項目に対する重みを示している。例えば、図14の1番目のレコードは、ユーザA1の各項目に対する重みを示している。具体的には、ユーザA1のコンテンツに関する”ジャンル ロック”、”ジャンル ポップス”、”ジャンル ジャズ”、”テンポ”、”音の大きさ”、”リズム楽器の比”の各項目に対する重みは、0.85,0.20,-0.42,0.021,0.152,0.002である。ユーザA1のユーザに関する”男”、”女”、”20代以下”、”30代”、”40代以上”の各項目に対する重みは、0.51,0.22,0.11,0.53,0.33である。ユーザA1のフィードバックに関する”かっこいい”、”!”、”特徴量4”、”特徴量5”の各特徴に対する重みは、0.79,0.35,1.24,0.80である。
そして、図14の各重みを用いた加算式が受け入れモデルとなる。すなわち、CUFタプルに含まれるコンテンツ、ユーザ、フードバックの各特徴量にそれぞれ対応する図14の重みを乗じて加算した値が、そのCUFタプルに対するユーザの予測受け入れ度となる。
そして、この各ユーザのCUFタプルに対する受け入れモデルを、各ユーザのフィードバック評価予測モデルとして用いることができる。
なお、メタフィードバックの判別結果が5段階など3値以上で表される場合には、上述したサポートベクターマシンやロジスティック回帰の代わりに、例えば、線形回帰等を用いるようにすればよい。
そして、フィードバック評価予測学習部144は、生成したフィードバック評価予測モデルを表すパラメータをパラメータ保存部65に保存する。
その後、ユーザ推薦学習処理は終了する。
(コンテンツリンク共有処理)
次に、図15のフローチャートを参照して、サーバ11により実行されるコンテンツリンク共有処理について説明する。
なお、この処理は、例えば、ネットワーク13を介して、クライアント12のうちの1つからサーバ11に、コンテンツリンクを含む画面の表示の要求が送信されたとき開始される。
なお、以下、この処理において、コンテンツリンクを含む画面の表示を要求したユーザをアクティブユーザと称する。
ステップS201において、サーバ11は、推薦ユーザランキング作成処理を実行する。ここで、図16のフローチャートを参照して、推薦ユーザランキング作成処理の詳細について説明する。
ステップS231において、評価予測部151は、各コンテンツに対するアクティブユーザの評価値を予測する。すなわち、評価予測部151は、パラメータ保存部65に保存されている評価予測モデルを用いて、各コンテンツcに対するアクティブユーザuの予測評価値rucを計算する。評価予測部151は、計算結果を示す情報を変化量期待値計算部133に供給する。
ステップS232において、予測部132は、アクティブユーザがフォローしていないユーザ(以下、未フォローユーザと称する)の中から、まだ対象ユーザに選択されていないユーザを1人選択する。ここで、対象ユーザとは、ステップS233乃至S235の処理の対象となるユーザのことである。
ステップS233において、ユーザ関係予測部152は、アクティブユーザが対象ユーザを受け入れる確率を予測する。すなわち、ユーザ関係予測部152は、パラメータ保存部65に保存されているユーザ関係予測モデルを用いて、アクティブユーザuが対象ユーザvを受け入れる確率であるユーザ受入確率P(v|u)を計算する。ユーザ関係予測部152は、計算結果を示す情報を変化量期待値計算部133に供給する。
ステップS234において、フィードバック予測部153は、対象ユーザが各コンテンツにフィードバックを付与する確率を予測する。すなわち、フィードバック予測部153は、パラメータ保存部65に保存されているフィードバック予測モデルを用いて、対象ユーザvが各コンテンツcにフィードバックfを付与する確率であるフィードバック付与確率P(c,f|v)を計算する。フィードバック予測部153は、計算結果を示す情報を変化量期待値計算部133に供給する。
ステップS235において、フィードバック評価予測部154は、対象ユーザによるフィードバックとともに提示された場合の各コンテンツに対するアクティブユーザの評価値を予測する。すなわち、フィードバック評価予測部154は、パラメータ保存部65に保存されているフィードバック評価予測モデルを用いて、対象ユーザvによるフィードバックfとともに提示された場合の各コンテンツcに対するアクティブユーザuのフィードバック予測評価値ruc(f,v)を計算する。フィードバック評価予測部154は、計算結果を示す情報を変化量期待値計算部133に供給する。
ステップS236において、予測部132は、アクティブユーザがフォローしていないユーザの中に、まだ対象ユーザに選択されていないユーザが残っているか否かを判定する。アクティブユーザがフォローしていないユーザの中に、まだ対象ユーザに選択されていないユーザが残っていると判定された場合、処理はステップS232に戻る。
その後、ステップS236において、アクティブユーザがフォローしていないユーザの中に、対象ユーザに選択されていないユーザが残っていないと判定されるまで、ステップS232乃至S236の処理が繰り返し実行される。これにより、アクティブユーザuの各未フォローユーザvについて、上述したユーザ受入確率P(v|u)、フィードバック付与確率P(c,f|v)、フィードバック予測評価値ruc(f,v)が計算される。
一方、ステップS236において、アクティブユーザがフォローしていないユーザの中に、対象ユーザに選択されていないユーザが残っていないと判定された場合、処理はステップS237に進む。
ステップS237において、変化量期待値計算部133は、変化量期待値を計算する。
一般的に、ある刺激を与えることによるユーザの行動の変化量の期待値は、刺激を受け入れる確率×刺激による行動の変化量により求められる。そして、argmax刺激(刺激を受け入れる確率×刺激による行動の変化量)となる刺激をユーザに与えることにより、ユーザの行動の変化量の期待値を最大化することができる。
そこで、変化量期待値計算部133は、次式(1)及び(2)を用いて、アクティブユーザuの各未フォローユーザvに対する変化量期待値E(v|u)を計算する。
式(1)において、P(v|u)が、アクティブユーザuが刺激(ユーザv)を受け入れる確率となり、ΣcP(c,f|v)Δ(ruc,ruc(f,v))が、刺激によるアクティブユーザの行動の変化量となる。また、変化量期待値E(v|u)は、ユーザv(の推薦)という刺激を与えない場合と与えた場合のアクティブユーザuの行動の差分を表している。従って、変化量期待値E(v|u)の絶対値が大きくなるほど、ユーザvを推薦した後にアクティブユーザuの行動が変化する可能性が高くなる。一方、変化量期待値E(v|u)の絶対値が小さくなるほど、ユーザvを推薦した後にアクティブユーザuの行動が変化する可能性が低くなる。
また、Δ(ruc,ruc(f,v))は、ユーザvのフィードバックが提示されることによるアクティブユーザuのコンテンツcに対する予測評価値の変化量を表している。従って、変化量期待値E(v|u)は、ユーザvという刺激を与えた場合に、アクティブユーザuの各コンテンツに対する評価値が変化する量の期待値を表している。従って、変化量期待値E(v|u)が正の値をとる場合、その絶対値が大きくなるほど、ユーザvを推薦した後に、アクティブユーザのコンテンツに対する評価値が全体的に上昇する可能性が高くなる。一方、変化量期待値E(v|u)が負の値をとる場合、その絶対値が大きくなるほど、ユーザvを推薦した後に、アクティブユーザのコンテンツに対する評価値が全体的に下降する可能性が高くなる。
そして、変化量期待値計算部133は、計算結果を示す情報を推薦ユーザ選択部134に供給する。
ステップS238において、推薦ユーザ選択部134は、推薦ユーザランキングを作成する。まず、推薦ユーザ選択部134は、アクティブユーザの未フォローユーザを候補ユーザとして、候補ユーザの中からアクティブユーザに推薦する推薦ユーザを選択する。具体的には、推薦ユーザ選択部134は、アクティブユーザの未フォローユーザの中から、変化量期待値E(v|u)が所定の閾値以上のユーザ、或いは、変化量期待値E(v|u)が大きい方から順に所定の人数のユーザを推薦ユーザに選択する。
次に、推薦ユーザ選択部134は、選択した推薦ユーザを変化量期待値E(v|u)の大きい順に並べた推薦ユーザランキングを作成する。推薦ユーザ選択部134は、作成した推薦ユーザランキングを示す情報を、提示内容設定部51の推薦ユーザリスト作成部171に供給する。
その後、推薦ユーザランキング作成処理は終了する。
例えば、典型的なソーシャルサービスにおいてアクティブユーザuに他のユーザvを推薦した場合、以下のようなアクションの流れが発生することが予想される。
1.アクティブユーザuが、推薦されたユーザvを受け入れる。すなわち、アクティブユーザuが、ユーザvをフォローしたり、ユーザvと友人関係を結んだりする。
2.ユーザvが、あるコンテンツcに対してフィードバックfを付与する。
3.アクティブユーザuが、ユーザvによるフィードバックfを見て、コンテンツcを受け入れる。例えば、アクティブユーザuが、コンテンツcを視聴又は再生したり、購入したりする。
上述したように、変化量期待値E(v|u)が大きい(正の値で、かつ絶対値が大きい)ユーザvを推薦するほど、アクティブユーザuがユーザvを受け入れ、その後、アクティブユーザuの各コンテンツに対する評価値が上昇する可能性が高くなる。その結果、アクティブユーザuが新たなコンテンツを受け入れる可能性が高くなる。従って、推薦ユーザランキングの上位のユーザをアクティブユーザuに推薦することにより、より効率的にアクティブユーザuに新たなコンテンツを受け入れさせることが可能になる。
なお、上述した式(1)の代わりに、次式(3)により変化量期待値E(v|u)を計算することも可能である。
なお、式(3)のCvは、ユーザvがフィードバックを付与しているコンテンツの集合を表す。
この変形例では、フィードバック付与確率P(c,f|v)を用いずに、ユーザvが実際にフィードバックを付与したコンテンツの集合のみを用いて変化量期待値E(u,v)が計算される。従って、図12のステップS103のフィードバック予測学習、及び、図16のステップS234のフィードバック付与確率P(c,f|v)の計算を省略することが可能になる。
ここで、図17乃至図19を参照して、式(3)の変化量期待値E(v|u)を用いて推薦ユーザを選択する場合の具体例について説明する。
図17は、アクティブユーザuの予測評価値rucの計算結果の例を示している。この例では、コンテンツC11乃至C14に対するアクティブユーザuの予測評価値rucは、それぞれ4.13、2.21、5.46、3.30となっている。
図18は、アクティブユーザuのユーザvに対するユーザ受入確率P(v|u)の計算結果の例を示している。この例では、ユーザU11乃至U14に対するアクティブユーザuのユーザ受入確率P(v|u)は、それぞれ0.49、0.11、0.63、0.61となっている。
図19は、ユーザvのフィードバックが付与されているコンテンツcに対するアクティブユーザuのフィードバック予測評価値ruc(f,v)の計算結果の例を示している。この例では、ユーザU11のフィードバックが付与されているコンテンツC11、C12、C14に対するアクティブユーザuのフィードバック予測評価値ruc(f,v)は、それぞれ5.24、2.54、3.02となっている。また、ユーザU12のフィードバックが付与されているコンテンツC12、C13に対するアクティブユーザuのフィードバック予測評価値ruc(f,v)は、それぞれ5.73、5.31となっている。
なお、値がN/Aになっているフィードバック予測評価値ruc(c,v)は、対象となるコンテンツにユーザvのフィードバックが付与されていないため、変化量期待値E(v|u)の計算に用いられない。
例えば、アクティブユーザuのユーザU11に対する変化量期待値E(U11|u)は、式(3)を用いて、0.568(=0.49×(5.24−4.13+2.54−2.21+3.02−3.30))となる。一方、アクティブユーザuのユーザU12に対する変化量期待値E(U12|u)は、式(3)を用いて、0.371(=0.11×(5.73−2.21+5.31−5.46))となる。
従って、ユーザU11とユーザU12を比較した場合、ユーザU11の方が、アクティブユーザuに推薦するのに相応しいユーザであると言え、いずれか一方から推薦ユーザに選択する場合、ユーザU11が推薦ユーザに選択される。
図15に戻り、ステップS202において、推薦ユーザリスト作成部171は、推薦ユーザランキングに基づいて、推薦ユーザリストを作成する。具体的には、推薦ユーザリスト作成部171は、所定の基準に従って、推薦ユーザランキングに含まれるユーザの中から実際にアクティブユーザに推薦する推薦ユーザを選択する。
なお、推薦ユーザの選択基準は、任意に設定することが可能である。例えば、推薦ユーザランキングのトップから所定の順位までのユーザを推薦ユーザに選択するようにしたり、推薦ユーザランキングに含まれるユーザの中から、アクティブユーザのfolloweeのみを推薦ユーザに選択したりするようにすることが可能である。
そして、推薦ユーザリスト作成部171は、選択した推薦ユーザを所定の基準に従って並べた推薦ユーザリストを作成する。例えば、推薦ユーザリスト作成部171は、推薦ユーザを変化量期待値E(v|u)が大きい順に並べることにより、推薦ユーザリストを作成する。推薦ユーザリスト作成部171は、作成した推薦ユーザリストを、コンテンツリンクリスト作成部172、履歴関連リスト作成部173、提示コンテンツ選択部174、及び、表示制御部52に供給する。
なお、以下、アクティブユーザのfolloweeや推薦ユーザリストに含まれるユーザなど、アクティブユーザに提示する対象となるユーザを提示ユーザと称する。
ステップS203において、コンテンツリンクリスト作成部172は、コンテンツリンクリストを作成する。具体的には、コンテンツリンクリスト作成部172は、提示ユーザが作成したコンテンツリンクをコンテンツリンク保存部64から読み出し、読み出したコンテンツリンクを所定の基準に従って並べることによりコンテンツリンクを作成する。
なお、コンテンツリンクを並べる基準は、任意に設定することが可能である。例えば、作成日時が新しい順又は古い順に時系列にコンテンツリンクを並べるようにしてもよい。また、例えば、特徴量が類似する提示ユーザが作成したコンテンツリンクを隣接するように並べたり、逆に、特徴量が類似しない提示ユーザが作成したコンテンツリンクを隣接するように並べたりするようにしてもよい。
コンテンツリンクリスト作成部172は、作成したコンテンツリンクリストを提示コンテンツ選択部174及び表示制御部52に供給する。
ステップS204において、履歴関連リスト作成部173は、履歴関連リストを作成する。例えば、履歴関連リスト作成部173は、ユーザ履歴保存部63に保存されているアクティブユーザのユーザ履歴に基づいて、アクティブユーザが所定の期間前から現在までに利用したコンテンツを抽出する。
このとき、コンテンツを抽出する範囲を、対象とする利用のレベルに応じて任意に設定することができる。例えば、アクティブユーザが再生したことがあるコンテンツを含む集合を抽出範囲に設定したり、或いは、アクティブユーザが情報を閲覧したコンテンツを含む集合まで抽出範囲を広げたりすることができる。
また、履歴関連リスト作成部173は、コンテンツリンク保存部64に保存されているコンテンツリンク情報に基づいて、抽出したコンテンツのうち、提示ユーザが作成したコンテンツリンクのリンク元コンテンツ又はリンク先コンテンツになっているコンテンツ、及び、そのコンテンツリンクを抽出する。
そして、履歴関連リスト作成部173は、抽出したコンテンツ及びコンテンツリンクに基づいて、履歴関連リストを作成する。履歴関連リスト作成部173は、作成した履歴関連リストを提示コンテンツ選択部174及び表示制御部52に供給する。
なお、履歴関連リストの詳細については後述する。
ステップS205において、提示コンテンツ選択部174は、提示コンテンツ選択処理を行う。ここで、図20のフローチャートを参照して、提示コンテンツ選択処理の詳細について説明する。
ステップS261において、提示コンテンツ選択部174は、提示ユーザの中から提示コンテンツを選択していないユーザを1人選択する。
なお、以下、この処理において、ステップS261で選択されたユーザを対象ユーザと称する。
ステップS262において、提示コンテンツ選択部174は、提示する候補となるコンテンツ群を選択する。例えば、提示コンテンツ選択部174は、ユーザ履歴保存部63に保存されているユーザ履歴に基づいて、対象ユーザのコンテンツの利用履歴において上位にランクされ、かつ、アクティブユーザのコンテンツの利用履歴に含まれるコンテンツ群(以下、提示候補コンテンツ群と称する)を抽出する。
なお、対象ユーザのコンテンツの利用履歴において上位にランクされるコンテンツとは、対象ユーザにとって重要度が高いコンテンツであり、例えば、対象ユーザの利用回数や、対象ユーザが付与した評価値等により決められる。
また、アクティブユーザのコンテンツの利用履歴に含まれるコンテンツとは、過去にアクティブユーザが利用したコンテンツのことである。
なお、このとき使用する対象ユーザ及びアクティブユーザの利用履歴に含めるコンテンツの利用のレベルは、任意に設定することができる。例えば、再生したことがあるコンテンツのみを利用履歴に含めるようにしてもよいし、或いは、情報を閲覧したことがあるコンテンツまで利用履歴に含めるようにしてもよい。
ここで、図21を参照して、コンテンツの再生回数に基づいて提示候補コンテンツ群を抽出する場合の例について説明する。図21は、アクティブユーザU1と対象ユーザU11の各コンテンツの再生回数の履歴を示している。
例えば、提示候補コンテンツ群の抽出条件を、対象ユーザU11の再生回数が10回以上、かつ、アクティブユーザが過去に再生したことがあるという条件に設定した場合、コンテンツC11、C12、C14、C16、C17が抽出される。
なお、以下、提示候補コンテンツ群に含まれるコンテンツを、提示候補コンテンツとも称する。
ステップS263において、提示コンテンツ選択部174は、抽出したコンテンツ群に含まれる各コンテンツ(すなわち、提示候補コンテンツ)間の距離を計算する。
コンテンツciとコンテンツcjとの間の距離をd(ci,cj)とすると、距離d(ci,cj)の計算方法には、任意の方法を採用することができる。例えば、コンテンツの特徴量空間におけるユークリッド距離や、ユーザの評価履歴に基づくコサイン類似度等を、距離d(ci,cj)に用いることができる。
ここで、図22および図23を参照して、コンテンツ間の距離の計算方法の具体例について説明する。図22は、先に説明した図21の例において抽出されたコンテンツC11、C12、C14、C16、C17の特徴量の例を示している。この例では、テンポ、音の密度、リズム楽器比の3種類の特徴量が用いられている。例えば、コンテンツC11のテンポの値は55であり、音の密度の値は39であり、リズム楽器比の値は26である。
図23は、図22の特徴量に基づいて、各コンテンツ間のユークリッド距離を計算した結果を示している。例えば、コンテンツC11と、コンテンツC12、コンテンツC14、コンテンツC16、コンテンツC17の各コンテンツとの間の距離は、それぞれ、23.5、41.8、35.6、33.3である。
ステップS264において、提示コンテンツ選択部174は、先頭に提示するコンテンツを選択する。具体的には、提示コンテンツ選択部174は、所定の方法により、提示候補コンテンツ群の中から、対象ユーザとともに先頭に提示するコンテンツ(以下、先頭提示コンテンツと称する)を1つ選択する。提示コンテンツ選択部174は、選択した先頭提示コンテンツを、対象ユーザの提示コンテンツ群に追加する。
なお、提示コンテンツ群とは、対象ユーザの情報とともにアクティブユーザに提示される提示コンテンツに、提示候補コンテンツ群の中から選択されたコンテンツの集合のことである。
なお、先頭提示コンテンツの選択方法には、任意の方法を採用することができる。例えば、提示候補コンテンツ群の中から、対象ユーザのコンテンツの利用履歴の最上位にランクされるコンテンツを選択するようにしてもよいし、或いは、ランダムに選択するようにしてもよい。
例えば、図21の例において、再生回数に基づいて、対象ユーザU11の先頭提示コンテンツを選択する場合、提示候補コンテンツ群において最も再生回数が多いコンテンツC12が先頭提示コンテンツに選択される。
なお、先頭提示コンテンツは、まだ他の提示ユーザの提示コンテンツに選択されていないコンテンツの中から選択するようにすることが望ましい。
ステップS265において、提示コンテンツ選択部174は、提示コンテンツ群に非類似なコンテンツを選択する。具体的には、提示コンテンツ選択部174は、まだ提示コンテンツに選択されていない提示候補コンテンツの中から、提示コンテンツ群との間の距離が最大となるコンテンツを1つ選択する。
例えば、提示候補コンテンツのうち、まだ提示コンテンツに選択されてないコンテンツをcai(i=1,2,・・・,M)とし、すでに提示コンテンツに選択されているコンテンツをcbj(j=1,2,・・・,N)とした場合、提示コンテンツ選択部174は、argmaxiΣjd(cai,cbj)を満たすコンテンツcaiを選択する。その結果、選択済みの提示コンテンツと互いに似ていないコンテンツが選択されるようになる。
例えば、いまの例の場合、すでに提示コンテンツに選択されているコンテンツC12からの距離が最大となるコンテンツC14が選択される。また、コンテンツC12とコンテンツC14が提示コンテンツに選択されている場合、コンテンツC12とコンテンツC14からの距離の平均値が最大になるコンテンツC16が提示コンテンツに選択される。
なお、このとき、距離の算出に用いる提示コンテンツ群に、すでに選択済みの他の提示ユーザの提示コンテンツを含めるようにしてもよい。これにより、対象ユーザの提示コンテンツだけでなく、他の提示ユーザの提示コンテンツとも互いに似ていないコンテンツが選択されるようになる。
ステップS266において、提示コンテンツ選択部174は、選択したコンテンツと他の提示ユーザの(選択済みの)提示コンテンツとの間の重複判定を行う。
ステップS267において、提示コンテンツ選択部174は、ステップS266の判定結果に基づいて、選択したコンテンツが他の提示ユーザの提示コンテンツと重複するか否かを判定する。選択したコンテンツが他の提示ユーザの提示コンテンツと重複しないと判定された場合、処理はステップS268に進む。
ステップS268において、提示コンテンツ選択部174は、選択したコンテンツを、対象ユーザの提示コンテンツ群に追加する。
その後、処理はステップS269に進む。
一方、ステップS267において、選択したコンテンツが他の提示ユーザの提示コンテンツと重複すると判定された場合、ステップS268の処理はスキップされ、処理はステップS269に進む。すなわち、選択したコンテンツは、対象ユーザの提示コンテンツ群に加えられない。また、選択したコンテンツは、対象ユーザの提示候補コンテンツ群から除外される。
ステップS269において、提示コンテンツ選択部174は、対象ユーザの提示コンテンツが所定の数に達したか否かを判定する。対象ユーザの提示コンテンツが所定の数に達していないと判定された場合、処理はステップS265に戻る。
その後、ステップS269において、提示コンテンツが所定の数に達したと判定されるまで、ステップS265乃至S269の処理が繰り返し実行される。これにより、対象ユーザの利用履歴において上位にランクされ、かつ、アクティブユーザの利用履歴に含まれるコンテンツの中から、他の提示ユーザの提示コンテンツと一致しないコンテンツが、所定の数だけ対象ユーザの提示コンテンツとして選択される。また、選択された提示コンテンツは、可能な限り互いに似ていないものとなる。従って、1人の提示ユーザについて提示される提示コンテンツの種類が多様なものになる。
一方、ステップS269において、提示コンテンツが所定の数に達したと判定された場合、処理はステップS270に進む。
ステップS270において、提示コンテンツ選択部174は、全ての提示ユーザの提示コンテンツを選択したか否かを判定する。まだ全ての提示ユーザの提示コンテンツを選択していないと判定された場合、処理はステップS261に戻る。
その後、ステップS270において全ての提示ユーザの提示コンテンツを選択したと判定されるまで、ステップS261乃至S270の処理が繰り返し実行される。これにより、全ての提示ユーザの提示コンテンツが所定の数ずつ選択される。
一方、ステップS270において、全ての提示ユーザの提示コンテンツを選択したと判定された場合、処理はステップS271に進む。
ステップS271において、提示コンテンツ選択部174は、各提示ユーザの提示コンテンツの選択結果を示す情報を表示制御部52に供給する。
その後、提示コンテンツ選択処理は終了する。
図15に戻り、ステップS206において、サーバ11は、コンテンツリンク等を提示する。具体的には、表示制御部52は、推薦ユーザリスト、コンテンツリンクリスト、及び、履歴関連リストを少なくとも1つを含む画面を表示するための表示制御データを生成する。なお、推薦ユーザリスト、コンテンツリンクリスト、履歴関連リストをどのように組み合わせて表示するかは、クライアント12からの要求等により変化する。表示制御部52は、通信部31を介して、生成した表示制御データをアクティブユーザのクライアント12に送信する。
アクティブユーザのクライアント12の出力制御部203は、ネットワーク13及び通信部201を介して、サーバ11から表示制御データを受信する。出力制御部203は、表示制御データに基づいて、推薦ユーザリスト、コンテンツリンクリスト、及び、履歴関連リストを少なくとも1つを含む画面を出力部204に表示させる。
ここで、図24乃至図27を参照して、クライアント12において表示される推薦ユーザリスト、コンテンツリンクリスト、及び、履歴関連リストの具体例について説明する。
図24は、推薦ユーザリストの表示例を示している。なお、図内の点線は、説明のために追加した補助線であり、実際には表示されない。
この例では、ユーザA乃至ユーザCが、推薦ユーザとして縦に並べて提示されている。
ユーザ画像401a乃至401cは、それぞれユーザA乃至ユーザCを表す画像であり、例えば、各ユーザの写真やアバター等が用いられる。また、ユーザ画像401aの右には、ユーザAの名前又はニックネーム等が表示されている。
ユーザ画像401aの右、かつ、ユーザAの名前等の下に、提示コンテンツ表示領域402が設けられている。提示コンテンツ表示領域402には、ユーザAの提示コンテンツを表す画像が横に並べて表示されている。このコンテンツを表す画像には、例えば、各コンテンツを含むアルバムやシングルのジャケット又はアーティストの写真等が用いられる。これは、図24乃至図27の他のコンテンツを表す画像についても同様である。
提示コンテンツ表示領域402の下には、コンテンツリンク表示領域403a1が設けられている。コンテンツリンク表示領域403a1内には、ユーザAが作成したコンテンツリンクが表示されている。具体的には、右向きの矢印の左には、リンク元コンテンツを表す画像が表示され、矢印の右には、リンク先コンテンツを表す画像が表示されている。
コンテンツリンク表示領域403a1の左には、フィードバックボタン404−1が表示されている。フィードバックボタン404−1は、コンテンツリンク表示領域403a1内のコンテンツリンクをアクティブユーザが気に入った場合等に、その意思を表明するフィードバックを付与するために押下されるボタンである。フィードバックボタン404−1の右には、コンテンツリンク表示領域403a1内のコンテンツリンクに対して、これまでにフィードバックを付与したユーザの数(以下、フィードバックユーザ数と称する)が表示されている。
コンテンツリンク表示領域403a1の下には、コンテンツリンク表示領域403a1内のコンテンツリンクとは別の、ユーザAにより作成されたコンテンツリンクを表示するためのコンテンツリンク表示領域403a2が設けられている。
また、コンテンツリンク表示領域403a2の左には、フィードバクボタン404−1と同様のフィードバックボタン404−2が表示されている。さらに、フィードバックボタン404−2の左には、コンテンツリンク表示領域403a2内のコンテンツリンクに対するフィードバックユーザ数が表示されている。
ユーザ画像401bの右には、コンテンツリンク表示領域403bが設けられている。コンテンツリンク表示領域403bには、ユーザBにより作成されたコンテンツリンクが表示されている。
ユーザ画像401cの右には、コンテンツリンク表示領域403cが設けられている。コンテンツリンク表示領域403cには、ユーザCにより作成されたコンテンツリンクが表示されている。
なお、推薦ユーザの表示順は、任意に設定することが可能である。例えば、変化量期待値E(v|u)の大きい順に並べることが可能である。また、例えば、特徴量が類似するユーザを隣接するように並べたり、逆に、特徴量が類似しないユーザを隣接するように並べたりすることが可能である。
図25は、コンテンツリンクリストの表示例を示している。なお、図内の点線は、説明のために追加した補助線であり、実際には表示されない。
この例では、アクティブユーザのfolloweeであるユーザA乃至ユーザCが作成したコンテンツリンク、及び、ユーザA乃至Cに関する情報等が、縦方向に3段に並べて表示されている。
1段目の左には、コンテンツリンク表示領域421aが設けられている。コンテンツリンク表示領域421a内の表示内容は、図24のコンテンツリンク表示領域403a1乃至403cとほぼ同様であるが、各コンテンツを表す画像の下に、各コンテンツのアーティスト名が表示されている点が異なっている。
コンテンツリンク表示領域421aの右には、吹き出し422aが表示されている。吹き出し422a内には、コンテンツリンク表示領域421a内のコンテンツリンクに用いられているリンク特徴量を示す情報、換言すれば、コンテンツリンクを構成する2つのコンテンツの関係を表す情報が表示されている。なお、この情報には、例えば、サーバ11から提供されるリンク特徴量のラベル等を用いるようにしてもよいし、コンテンツリンクを作成したユーザが作成した情報を用いるようにしてもよい。また、吹き出し422a内には、コンテンツリンク表示領域421a内のコンテンツリンクに対するフィードバックボタン423aが表示されている。
吹き出し422aの右には、コンテンツリンク表示領域421a内のコンテンツリンクを作成したユーザを表すユーザ画像424aが表示されている。ユーザ画像424aの右には、ユーザAの名前又はニックネーム等が表示されている。
ユーザ画像424aの右、かつ、ユーザAの名前等の下に、図24の提示コンテンツ表示領域402と同様の提示コンテンツ表示領域425aが設けられている。提示コンテンツ表示領域425aには、ユーザAの提示コンテンツを表す画像が表示されている。
2段目には、ユーザBにより作成されたコンテンツリンク、及び、ユーザBに関する情報が、1段目と同様の構成により表示されている。3段目には、ユーザCにより作成されたコンテンツリンク、及び、ユーザCに関する情報が、1段目及び2段目と同様の構成により表示されている。
なお、コンテンツリンクの表示順は、任意に設定することが可能である。例えば、作成日時が新しい順又は古い順に時系列に並べることが可能である。また、例えば、特徴量が類似するユーザが作成したコンテンツリンクを隣接するように並べたり、逆に、特徴量が類似しないユーザが作成したコンテンツリンクを隣接するように並べたりすることが可能である。
また、図26に示されるように、アクティブユーザのfolloweeだけでなく、推薦ユーザのコンテンツリンクを混ぜて表示するようにしてもよい。
具体的には、図26のコンテンツリンクリストには、図25のコンテンツリンクの2段目と3段目のコンテンツリンクの間に、斜線で示される段が挿入されている。そして、その段に推薦ユーザであるユーザDのコンテンツリンク、及び、ユーザDに関する情報が、他の段と同様の構成により表示されている。また、ユーザDを表す画像424dの左上には、ユーザDが推薦ユーザであることを表す星印が表示されている。
なお、この図のように、推薦ユーザのコンテンツリンクをfolloweeのコンテンツリンクと識別できるようにしてもよいし、識別できないようにしてもよい。また、例えば、推薦ユーザのコンテンツリンクを特徴量が最も類似するfolloweeのコンテンツリンクに隣接するように表示してもよい。
図27は、履歴関連リストの表示例を示している。履歴関連リストには、アクティブユーザの過去のコンテンツの利用履歴とともに、利用履歴に含まれるコンテンツ(以下、履歴コンテンツと称する)を含むコンテンツリンク等が表示される。
具体的には、この例では、履歴コンテンツに関する情報等が2段に並べて表示されている。なお、履歴コンテンツの表示順は、任意に設定することができる。例えば、利用した日時が新しい順に並べるようにしてもよいし、利用回数(この例の場合、再生回数)が多い順に並べるようにしてもよい。
1段目の左上には、履歴コンテンツ表示領域451aが設けられている。履歴コンテンツ表示領域451aには、履歴コンテンツのうちの1つに関する情報が表示されている。具体的には、履歴コンテンツを表す画像、履歴コンテンツのタイトル、アーティスト名、評価値、再生回数が表示されている。なお、評価値として、アクティブユーザが付与した評価値を表示するようにしてもよいし、各ユーザが付与した評価値の平均値を表示するようにしてもよい。また、再生回数として、アクティブユーザの再生回数を表示するようにしてもよいし、全ユーザの再生回数の合計を表示するようにしてもよい。
履歴コンテンツ表示領域451aの下には、リンクコンテンツ表示領域452a1及び452a2が縦に並べて設けられている。リンクコンテンツ表示領域452a1及び452a2には、履歴コンテンツ表示領域451aに表示されている履歴コンテンツとコンテンツリンクを構成するコンテンツに関する情報が表示されている。
具体的には、右向きの矢印が表示されているリンクコンテンツ表示領域452a1には、履歴コンテンツ表示領域451aに表示されている履歴コンテンツのリンク先となるコンテンツを表す画像、及び、アーティスト名が表示されている。これにより、履歴コンテンツ表示領域451a内の履歴コンテンツがリンク元となり、リンクコンテンツ表示領域452a1内のコンテンツがリンク先となるコンテンツリンクが、アクティブユーザに提示される。
リンクコンテンツ表示領域452a1の右には、吹き出し453a1が表示されている。吹き出し453a1内には、履歴コンテンツ表示領域451a内の履歴コンテンツとリンクコンテンツ表示領域452a1内のコンテンツからなるコンテンツリンクに用いられているリンク特徴量を示す情報が表示されている。
吹き出し453a1の右には、履歴コンテンツ表示領域451a内の履歴コンテンツとリンクコンテンツ表示領域452a1内のコンテンツからなるコンテンツリンクを作成したユーザBを表すユーザ画像454a1が表示されている。また、ユーザ画像454a1の右には、ユーザBの名前又はニックネーム等が表示されている。
ユーザ画像454a1の右、かつ、ユーザBの名前等の下に、図24の提示コンテンツ表示領域402と同様の提示コンテンツ表示領域455a1が設けられている。提示コンテンツ表示領域455a1には、ユーザBの提示コンテンツを表す画像が表示されている。
一方、左向きの矢印が表示されているリンクコンテンツ表示領域452a2には、履歴コンテンツ表示領域451aに表示されている履歴コンテンツのリンク元となるコンテンツを表す画像、及び、アーティスト名が表示されている。これにより、リンクコンテンツ表示領域452a2内のコンテンツがリンク元となり、履歴コンテンツ表示領域451a内の履歴コンテンツがリンク先となるコンテンツリンクが、アクティブユーザに提示される。
リンクコンテンツ表示領域452a2の右には、吹き出し453a2が表示されている。吹き出し453a2内には、履歴コンテンツ表示領域452a2内の履歴コンテンツとリンクコンテンツ表示領域452a2内のコンテンツからなるコンテンツリンクに用いられているリンク特徴量を示す情報が表示されている。
吹き出し453a2の右には、履歴コンテンツ表示領域451a内の履歴コンテンツとリンクコンテンツ表示領域452a2内のコンテンツからなるコンテンツリンクを作成したユーザCを表すユーザ画像454a2が表示されている。また、ユーザ画像454a2の右には、ユーザCの名前又はニックネーム等が表示されている。
ユーザ画像454a2の右、かつ、ユーザCの名前等の下に、図24の提示コンテンツ表示領域402と同様の提示コンテンツ表示領域455a2が設けられている。提示コンテンツ表示領域455a2には、ユーザCの提示コンテンツを表す画像が表示されている。
2段目には、1段目と同様の構成により、アクティブユーザの別の履歴コンテンツに関する情報、その履歴コンテンツを含むコンテンツリンク、コンテンツリンクを作成したユーザに関する情報等が表示されている。
なお、履歴コンテンツとともに提示するコンテンツリンクは、アクティブユーザのfolloweeにより作成されたものだけに限定するようにしてもよいし、推薦ユーザにより作成されたものも含めるようにしてもよい。
そして、例えば、図24乃至図27の画面が1つ以上、アクティブユーザのクライアント12において組み合わせて表示される。
その後、コンテンツリンク共有処理は終了する。
以上のようにして、アクティブユーザは、他のユーザが作成したコンテンツリンクを利用することができる。その結果、アクティブユーザは、他のユーザの視点に基づいて、互いに関連するコンテンツを見つけることができる。特に、履歴関連リストでは、アクティブユーザは、自分の利用したコンテンツに関連するコンテンツを見つけることができる。また、アクティブユーザは、他のユーザが作成したコンテンツリンクを通じて、コンテンツに関する見識を広げたり、自分の嗜好に合うコンテンツを見つけたりすることが容易になる。
また、アクティブユーザの行動に変化を起こす可能性が高いユーザが推薦されるので、アクティブユーザが、そのユーザを受け入れ、さらに新たなコンテンツを受け入れる可能性が高くなる。さらに、単にアクティブユーザと類似するユーザ(例えば、同様のコンテンツの利用履歴を持つユーザ)が推薦されても、アクティブユーザにとってあまり新しい発見はない。これに対して、アクティブユーザの行動に変化を起こす可能性が高いユーザを推薦することにより、アクティブユーザが新しい発見(例えば、新たなジャンルのコンテンツに触れる等)をする可能性が高くなる。
さらに、提示ユーザとともに提示されるコンテンツの利用履歴(すなわち、提示コンテンツ)において、互いに似ていないコンテンツが提示されるので、提示ユーザの嗜好を偏ることなく正確に伝えることができる。これにより、アクティブユーザは、各提示ユーザの嗜好を把握しやすくなり、自分との類似点や相違点を認識しやすくなる。その結果、アクティブユーザは、より他のユーザとの類似性を感じやくなり、自分の嗜好と合うユーザを見つけやすくなる。また、アクティブユーザは、より多様なコンテンツに触れる機会を得ることができる。
さらに、各提示ユーザ間で提示されるコンテンツの重複が抑制されるので、各提示ユーザ間の嗜好の類似点及び相違点をより明確に伝えることができる。また、アクティブユーザは、より多様なコンテンツに触れる機会を得ることができる。
<2.変形例>
以下、上述した本技術の実施の形態の変形例について説明する。
[変形例1:コンテンツリンクに関する変形例]
以上の説明では、作成したコンテンツリンクをユーザ間で共有する例を示したが、本技術は、例えば、ユーザが、自分のローカルの環境内でコンテンツリンクを作成し、個人で利用する場合にも適用することができる。
また、本技術は、コンテンツの一部(例えば、楽曲のイントロ部分やサビの部分等)同士を結び付けたコンテンツリンクや、コンテンツ全体と他のコンテンツの一部を結び付けたコンテンツリンクを作成する場合にも適用することができる。また、コンテンツの一部同士のリンクを作成する場合には、同じコンテンツ内の異なる部分を結び付けたコンテンツリンクを作成することも可能である。
さらに、以上の説明では、コンテンツリンクともに、コンテンツリンクを作成したユーザの情報を提示する例を示したが、作成したユーザの情報を省略することも可能である。
また、本技術は、1対1の組み合わせからなるコンテンツリンクだけでなく、1対多又は多対1の組み合わせからなるコンテンツリンクや、多対多からなるコンテンツリンクを作成する場合にも適用することができる。
さらに、本技術は、3連結以上のコンテンツリンクを作成する場合にも適用することができる。
また、本技術は、上述した音楽や動画以外にも、書籍、ゲーム、ソフトウエア、ウエブサイト、ニュース、広告等の、文字、音声、画像等の各種のコンテンツのリンクを作成する場合にも適用することができる。
さらに、本技術は、コンテンツ以外の各種のアイテム、例えば、各種の商品、ソーシャルサービス上のユーザ、著名人等のリンクを作成する場合にも適用することができる。
[変形例2:ユーザ及びコンテンツの提示に関する変形例]
以上の説明では、複数の提示ユーザを提示する例を示したが、本技術は、1人の提示ユーザを提示する場合にも適用することができる。すなわち、1人の提示ユーザとともに複数の提示コンテンツを提示する場合に、互いに似ていない提示コンテンツを提示することにより、上述した効果を得ることができる。
また、以上の説明では、各提示ユーザにつき複数の提示コンテンツを提示する例を示したが、本技術は、1つの提示コンテンツを提示する場合にも適用することができる。すなわち、例えば、複数の提示ユーザを提示する場合に、各提示ユーザにつき1つずつ提示コンテンツを提示する場合に、互いに提示コンテンツが重複しないようにすることにより、上述した効果を得ることができる。
さらに、以上の説明では、提示ユーザ間で提示コンテンツの重複を禁止する例を示したが、所定の範囲内で提示コンテンツの重複を許可するようにしてもよい。換言すれば、提示ユーザ間で重複する提示コンテンツの数を所定の範囲内に制限するようにしてもよい。
例えば、提示コンテンツ全体で、重複して提示されるコンテンツの数を所定の範囲内に制限するようにしてもよい。これは、例えば、全提示ユーザ分を合わせて10個の提示コンテンツを提示する場合、全部で2個まで重複を許可する場合等である。
あるいは、例えば、1人の提示ユーザにつき他の提示ユーザと重複する提示コンテンツの数を所定の範囲内に制限するようにしてもよい。これは、例えば、1人の提示ユーザにつき3個の提示コンテンツを提示する場合、1個までは他の提示コンテンツと重複を許可する場合等である。
あるいは、例えば、1つの提示コンテンツにつき重複して提示される提示ユーザの数を制限するようにしてもよい。これは、例えば、1つの提示コンテンツが、2人の提示ユーザまで重複して提示されることを許可する場合等である。
また、以上の説明では、提示ユーザとともに提示ユーザが作成したコンテンツリンク及び提示コンテンツを提示する例を示したが、いずれか一方のみを提示するようにしてもよい。すなわち、提示ユーザとともにコンテンツリンクのみを提示したり、提示ユーザとともに提示コンテンツを提示したりするようにしてもよい。
さらに、本技術は、上述した音楽や動画以外にも、書籍、ゲーム、ソフトウエア、ウエブサイト、ニュース、広告等の、文字、音声、画像等の各種のコンテンツを提示ユーザとともに提示する場合にも適用することができる。
また、本技術は、コンテンツ以外の各種のアイテム、例えば、各種の商品、ソーシャルサービス上のユーザ等を提示ユーザとともに提示する場合にも適用することができる。
[変形例3:その他の変形例]
なお、本技術におけるアイテムの利用の定義は、対象とするアイテムの種類等により異なる。例えば、アイテムが音楽である場合、再生等がアイテムの利用に該当し、動画の場合、視聴等がアイテムの利用に該当する。また、例えば、アイテムが商品である場合、購入や情報の閲覧等がアイテムの利用に該当する。さらに、例えば、アイテムが他のユーザである場合、そのユーザとのコミュニケーション等がアイテムの利用に該当する。
また、以上の説明では、変化量期待値として、ユーザのコンテンツに対する評価値の変化量の期待値を用いる例を示したが、その他のユーザの行動を表すパラメータの変化量の期待値を用いるようにしてもよい。
[コンピュータの構成例]
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図28は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)601,ROM(Read Only Memory)602,RAM(Random Access Memory)603は、バス604により相互に接続されている。
バス604には、さらに、入出力インタフェース605が接続されている。入出力インタフェース605には、入力部606、出力部607、記憶部608、通信部609、及びドライブ610が接続されている。
入力部606は、キーボード、マウス、マイクロフォンなどよりなる。出力部607は、ディスプレイ、スピーカなどよりなる。記憶部608は、ハードディスクや不揮発性のメモリなどよりなる。通信部609は、ネットワークインタフェースなどよりなる。ドライブ610は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア611を駆動する。
以上のように構成されるコンピュータでは、CPU601が、例えば、記憶部608に記憶されているプログラムを、入出力インタフェース605及びバス604を介して、RAM603にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU601)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア611に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブルメディア611をドライブ610に装着することにより、入出力インタフェース605を介して、記憶部608にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部359で受信し、記憶部608にインストールすることができる。その他、プログラムは、ROM602や記憶部608に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
さらに、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
また、例えば、本技術は以下のような構成も取ることができる。
(1)
ユーザに提示する対象となる提示ユーザが利用したアイテム群から互いに似ていない複数のアイテムを選択するアイテム選択部と、
選択された前記複数のアイテムを前記提示ユーザの情報とともに前記ユーザに提示するように制御する提示制御部と
を備える情報処理装置。
(2)
前記アイテム選択部は、複数の前記提示ユーザを前記ユーザに提示する場合、さらに前記提示ユーザ間で重複するアイテムの数を制限する
前記(1)に記載の情報処理装置。
(3)
前記アイテム選択部は、前記提示ユーザが利用したアイテム群から新たなアイテムを選択する場合、既に選択したアイテム群と残りの各アイテムとの間の特徴量に基づく距離を計算し、距離が最大となるアイテムを選択する
前記(1)又は(2)に記載の情報処理装置。
(4)
前記アイテム選択部は、前記提示ユーザが利用したアイテム群に含まれるアイテムのうち、前記ユーザが利用したことがあるアイテムから複数のアイテムを選択する
前記(1)乃至(3)のいずれかに記載の情報処理装置。
(5)
前記ユーザに推薦する候補となる複数の候補ユーザをそれぞれ提示した場合の前記ユーザの行動の変化量の期待値を計算し、計算した期待値に基づいて、前記候補ユーザの中から前記ユーザに推薦する推薦ユーザを選択する推薦ユーザ選択部を
さらに備え、
前記アイテム選択部は、前記推薦ユーザが利用したアイテム群から互いに似ていない複数のアイテムを選択し、
前記提示制御部は、選択された前記複数のアイテムを前記推薦ユーザの情報とともに前記ユーザに提示するように制御する
前記(1)乃至(4)のいずれかに記載の情報処理装置。
(6)
前記推薦ユーザ選択部は、前記ユーザが前記候補ユーザを受け入れる確率、及び、前記候補ユーザのフィードバックが提示されることによる所定のアイテム群に対する前記ユーザの評価の予測値の変化量に基づいて、前記期待値を計算する
前記(5)に記載の情報処理装置。
(7)
前記推薦ユーザ選択部は、さらに前記所定のアイテム群に含まれる各アイテムに前記候補ユーザがフィードバックを付与する確率に基づいて、前記期待値を計算する
前記(6)に記載の情報処理装置。
(8)
情報処理装置が、
ユーザに提示する対象となる提示ユーザが利用したアイテム群から互いに似ていない複数のアイテムを選択し、
選択された前記複数のアイテムを前記提示ユーザの情報とともに前記ユーザに提示するように制御する
ステップを含む情報処理方法。
(9)
ユーザに提示する対象となる提示ユーザが利用したアイテム群から互いに似ていない複数のアイテムを選択し、
選択された前記複数のアイテムを前記提示ユーザの情報とともに前記ユーザに提示するように制御する
ステップを含む処理をコンピュータに実行させるためのプログラム。