説明

ユーザ情報処理プログラム、再生プログラム、ユーザ情報処理装置、再生装置、ユーザ情報処理方法、及び、再生方法

【課題】従来の技術では、ユーザ間の類似度を精度良く算出することができない。
【解決手段】ユーザ情報処理装置1は、ユーザを識別するためのユーザ識別情報と、コンテンツの再生位置を示す位置情報と、その位置情報に対応するユーザの状態情報とを関連付けた反応データを読み込んで、ユーザ識別情報ごとに、コンテンツの特定区間に対応するブロックごとに複数の反応データを集約した集約データを計算する集約データ計算手段12と、一のユーザの集約データと、他のユーザの集約データとを用いて、一のユーザと他のユーザとの類似度を計算する類似度計算手段13と、を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンテンツに係るユーザの反応情報を処理する技術に関するものであり、特に興味の似たユーザ同士を特定する技術に関するものである。
【背景技術】
【0002】
近年、コンピュータ技術やネットワーク技術の進展を背景に、大量のコンテンツが制作され、流通している。また、ネットワークを介したユーザ間のコミュニケーションも盛んになっている。このためユーザの所望のコンテンツを検索する技術や、ユーザ間のコミュニケーションを促進する技術へのニーズが高まっている。コンテンツに対するユーザの興味や嗜好を把握するために、コンテンツに対するユーザの反応情報を収集することは有効であり、このような技術が開発されている。
【0003】
例えば特許文献1には、コンテンツ再生中のユーザの表情、視線パターン、目の瞳孔直径、瞬き、体温、心拍数などの情報を計測し、それらのセンシングデータを収集するシステムが開示されている。
【0004】
特許文献2には、コンテンツ視聴中のユーザの顔画像などから感情データを生成するシステムが開示されている。また特許文献2には、そのような感情データを使ってユーザ同士のマッチングを行う技術も開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2005−142975号公報
【特許文献2】特開2007−36874号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、コンテンツに対するユーザの反応や、ユーザが抱く感情は、一般的には人によってそれぞれ異なる。例えば、同じ映画の同じシーンを見たとしても、あるユーザは、「楽しい」と感じ、別のユーザは「腹立たしい」と感じることがある。このような反応の違いは、ユーザの興味や価値観の違いに基づいて生じることが多い。すなわち、コンテンツ再生時にユーザが無意識で示す反応や、ユーザが自然に抱く感情には、そのユーザの個性(興味、嗜好、センス、考え方、価値観など)が顕著に現れるものであり、コンテンツ再生時のユーザの反応情報を収集して分析することにより、ユーザの個性を的確に捕えることが可能になる。ユーザの個性を的確に把握できれば、これを基にして、ユーザ同士のマッチングを精度良く行うことができる。このためには、複数のユーザの反応情報を収集して分析する必要がある。
【0007】
上記の特許文献1では、複数のユーザの反応情報を収集しているが、それらの活用方法は必ずしも十分には考慮されていなかった。特に、複数のユーザ間の違いを利用した処理は行われていなかった。
【0008】
上記の特許文献2では、コンテンツ再生時のユーザの反応情報を使って、ユーザ同士のマッチングの程度(類似度)を算出している。しかしながら、類似度の算出に用いている視聴者情報(時系列データ)のサンプルの取り方が一定であり、コンテンツ内の全ての位置を同じ様に扱っているため、十分な精度で類似度を算出できない場合があった。また、サンプルの取り方によっては、必要以上に処理量が多くなる場合があった。また、複数種類の反応情報を用いて類似度を計算することも十分には考慮させていなかった。
【0009】
そこで本発明は、コンテンツ再生時のユーザの反応情報を用いて、ユーザ間の類似度を精度良く算出することを目的とする。また、ユーザ間の類似度を効率よく算出することを目的とする。更に、複数種類の反応情報を用いて、ユーザ間の類似度を精度良く、かつ効率良く計算することを目的とする。
【課題を解決するための手段】
【0010】
上記目的を達成するため、本発明のユーザ情報処理プログラムは、コンピュータを、ユーザを識別するためのユーザ識別情報と、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを読み込んで、前記ユーザ識別情報ごとに、前記コンテンツの特定区間に対応するブロックごとに複数の前記反応データを集約した集約データを計算する集約データ計算手段、一のユーザの前記集約データと、他のユーザの前記集約データとを用いて、一のユーザと他のユーザとの類似度を計算する類似度計算手段、として機能させる。
【0011】
本発明の再生プログラムは、コンピュータを、コンテンツを再生するコンテンツ再生手段、コンテンツ再生前およびコンテンツ再生中のユーザの状態を認識するユーザ状態認識手段、前記ユーザ状態認識手段によって認識されたコンテンツ再生前およびコンテンツ再生中のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成する反応データ作成手段、として機能させる。
【0012】
また、本発明の再生プログラムは、コンピュータを、コンテンツを再生するコンテンツ再生手段、コンテンツ再生中およびコンテンツ再生後のユーザの状態を認識するユーザ状態認識手段、前記ユーザ状態認識手段によって認識されたコンテンツ再生中およびコンテンツ再生後のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成する反応データ作成手段、として機能させる。
【0013】
本発明のユーザ情報処理装置は、ユーザを識別するためのユーザ識別情報と、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを読み込んで、前記ユーザ識別情報ごとに、前記コンテンツの特定区間に対応するブロックごとに複数の前記反応データを集約した集約データを計算する集約データ計算手段と、一のユーザの前記集約データと、他のユーザの前記集約データとを用いて、一のユーザと他のユーザとの類似度を計算する類似度計算手段と、を有する。
【0014】
本発明の再生装置は、コンテンツを再生するコンテンツ再生手段と、コンテンツ再生前およびコンテンツ再生中のユーザの状態を認識するユーザ状態認識手段と、前記ユーザ状態認識手段によって認識されたコンテンツ再生前およびコンテンツ再生中のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成する反応データ作成手段と、を有する。
【0015】
また、本発明の再生装置は、コンテンツを再生するコンテンツ再生手段と、コンテンツ再生中およびコンテンツ再生後のユーザの状態を認識するユーザ状態認識手段と、前記ユーザ状態認識手段によって認識されたコンテンツ再生中およびコンテンツ再生後のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成する反応データ作成手段と、を有する。
【0016】
本発明のユーザ情報処理方法は、ユーザを識別するためのユーザ識別情報と、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを読み込んで、前記ユーザ識別情報ごとに、前記コンテンツの特定区間に対応するブロックごとに複数の前記反応データを集約した集約データを計算するステップと、一のユーザの前記集約データと、他のユーザの前記集約データとを用いて、一のユーザと他のユーザとの類似度を計算するステップと、を含む。
【0017】
本発明の再生方法は、コンテンツを再生するステップと、コンテンツ再生前およびコンテンツ再生中のユーザの状態を認識するステップと、認識したコンテンツ再生前およびコンテンツ再生中のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成するステップと、を含む。
【0018】
また、本発明の再生方法は、コンテンツを再生するステップと、コンテンツ再生中およびコンテンツ再生後のユーザの状態を認識するステップと、認識したコンテンツ再生中およびコンテンツ再生後のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成するステップと、を含む。
【発明の効果】
【0019】
本発明のユーザ情報処理プログラム、ユーザ情報処理装置、およびユーザ情報処理方法によれば、コンテンツ再生に係るユーザの状態を利用して、ユーザ間の類似度を精度良く、かつ少ない処理量で効率的に計算することができる。このため他のユーザの情報を希望する一のユーザに対して、類似するユーザの情報を十分な精度で選択して提供することが出来る。
【0020】
また、本発明の再生プログラム、再生装置、および再生方法によれば、コンテンツ再生中のユーザの状態を認識するだけでなく、コンテンツ再生前およびコンテンツ再生後のユーザの状態を認識し、これらの情報を用いてユーザ反応データを作成するので、ユーザ反応データの精度が高くなる。これにより、ユーザ情報処理装置において、さらにユーザ間の類似度を高い精度で計算できる。
【図面の簡単な説明】
【0021】
【図1】本発明の実施例1におけるシステム全体の構成を示す図である。
【図2】本発明の実施例1おける再生装置の構成を示す図である。
【図3】本発明の実施例1における再生装置の動作を説明するフローチャートである。
【図4】本発明の実施例1におけるユーザ反応データのデータ形式を説明する図である。
【図5】本発明の実施例1におけるユーザ反応データの作成処理を説明するフローチャートである。
【図6】本発明の実施例1におけるユーザ反応データの補正処理を説明する図である。
【図7】本発明の実施例1におけるユーザ情報処理装置の構成を示す図である。
【図8】本発明の実施例1におけるユーザ情報処理装置の集約データ計算手段の構成を示す図である。
【図9】本発明の実施例1におけるブロック情報のデータ形式を説明する図である。
【図10】本発明の実施例1におけるブロック情報のデータ形式を説明する図である。
【図11】本発明の実施例1における集約データ計算手段の集約部の動作を説明するフローチャートである。
【図12】本発明の実施例1における集約データ計算手段の集約データ格納部のデータ形式を説明する図である。
【図13】本発明の実施例1における類似度計算手段の動作を説明するフローチャートである。
【図14】本発明の実施例2におけるシステム全体の構成を示す図である。
【発明を実施するための形態】
【実施例1】
【0022】
本発明の実施例1におけるシステム全体の構成を図1に示す。ユーザ情報処理装置1と、1つ以上の再生装置2(2a〜2n)がネットワーク3を介して接続されている。図1ではユーザ情報処理装置1は1つであるが、複数のユーザ情報処理装置1(1a〜1n)を用意し、各々のユーザ情報処理装置1の間で、データ交換を行って処理をするようにしてもよい。
【0023】
次に、再生装置2の構成を図2に示す。再生装置2は、コンテンツを再生するコンテンツ再生手段21と、ユーザの状態を認識するユーザ状態認識手段22と、コンテンツ再生位置とユーザ状態とを関連付けたユーザ反応データを作成するユーザ反応データ作成手段23と、ユーザ情報処理装置1との間でデータの送受信を行う送受信手段24と、再生装置2全体の制御を行う制御手段25と、ユーザ属性データを格納するユーザ属性格納手段26と、により構成されている。また再生装置2には、表示装置27、スピーカ等の音声出力装置28、キーボード、マウス、トラックボール、リモコン等の入力装置29、ユーザの状態を認識するためのセンサ装置30が接続されている。
【0024】
再生装置2は、CPU、RAM、ROM、ハードディスクドライブ、ネットワークインタフェース等を備える一般的なコンピュータを用いて、ソフトウェア(プログラム)処理を実行する形態により実現することも可能である。
【0025】
再生装置2の動作を図3のフローチャートを用いて説明する。
【0026】
まずステップS100では、制御手段25がユーザの認証を行なう。再生装置2を使用するユーザには、ユーザ情報処理装置1でユーザを一意に識別可能なユーザ識別情報(ユーザID)があらかじめ割当られている。ユーザはあらかじめ登録されたユーザID、パスワードを入力装置29により再生装置2に入力し、この情報を用いて制御手段25はユーザを認証する。
【0027】
ただし、ユーザ情報処理装置1において、ユーザを識別する処理を行なわず、再生装置2を識別する処理を行なう場合には、ステップS100のユーザ認証処理を省略する。また後述するように、ユーザ状態認識手段22においてユーザの個人識別を行なう場合にもステップS100を省略してよい。
【0028】
次にステップS110では、入力装置29を介したユーザの指示に従って、コンテンツ再生手段21が、コンテンツを再生する。本実施例におけるコンテンツは、動画、音声、音楽等の時間情報を伴うコンテンツである。コンテンツは再生装置2に格納されていてもよいし、ネットワーク3を介して外部から供給されてもよい。また放送受信手段(図示せず)を用いて放送コンテンツを受信してもよい。またコンテンツが格納されたディスク、可搬型メモリ等をメディアドライブ装置(図示せず)に装着し、メディアドライブ装置を介してコンテンツを読み取るようにしてもよい。
【0029】
次にステップS120では、ユーザ状態認識手段22が、センサ装置30の出力を用いて、コンテンツ再生中(視聴中)のユーザの状態を認識する。
【0030】
センサ装置30は、ユーザの状態を検知し、ユーザに係る信号/データを出力する。出力する信号/データは、ユーザの顔を撮影した画像データ、ユーザの発する音声の音声データ、表示装置27または音声出力装置28とユーザとの間の距離データ、ユーザの姿勢に関するデータ、心拍数、血圧などの生体データなどである。またセンサ装置30は、上記の内の一部(例えば、ユーザの発する音声のみ)を検知し出力するようにしてもよい。
【0031】
ユーザ状態認識手段22が認識するユーザの感情等の状態は、1種類または複数種類である。
【0032】
1種類の状態を認識する場合、例えば、ユーザのコンテンツに対する注目度を認識する。例えば、ユーザの顔画像から視線方向を検出し、それが表示装置27に向いている場合は、注目度が高い、そうでない場合は注目度が低いと認識する。また、ユーザの発する音声の音声データからユーザの声の大きさや興奮の程度を認識し、それを注目度としてもよい。ユーザの音声を利用する方法は、スポーツ・コンテンツやお笑い系コンテンツなどで特に有効である。また、表示装置27または音声出力装置28とユーザとの距離が近ければ注目度が高い、距離が遠ければ注目度が低いと認識してもよい。また、心拍数や血圧が上昇する場合に注目度が高いとしてもよい。また、机、椅子、床などにかかるユーザの体重分布を計測し、表示装置27または音声出力装置28に近い側に体重がかかっている場合に注目度が高く、そうでない場合に注目度が低いと認識してもよい。
【0033】
また1種類の状態を認識する別の例として、ユーザの「笑い」を認識するようにしてもよい。ユーザの「笑い」を認識する方法として、公知の技術を用いることができる。例えば、ユーザの顔画像から「笑い」の表情を認識する場合、特開2004−46591号公報に記載の技術を用いることができる。また、音声から笑い等の感情を認識する場合、特開平9−206291号公報に記載の技術を用いることができる。
【0034】
複数種類の状態を認識する場合、「喜び/笑い」、「怒り/不満」、「悲しみ」、「平常」、「無関心」など複数種類の状態を認識する。センサ装置30の出力である画像、音声、生体情報などから、このようなユーザの状態を認識するために公知の技術を用いることができる。また、音声認識技術を用いて、ユーザが発する特定の単語やフレーズを認識してもよい。例えば、「へぇー」、「面白い」、「いいね」、「ちょ〜うける」、「ふざけるな」、「くだらない」、「またかよ」等の単語やフレーズである。また、ユーザの舌打ちや涙などを認識するようにしてもよい。更に、センサ装置30の出力する音声データを用いてユーザの状態を認識する場合、音声出力装置28で発生させたコンテンツ再生音の成分をキャンセルする処理を行なって、センサ装置30の出力を利用するようにしてもよい。このようにすると、ユーザの音声をより精度良く認識できる。
【0035】
1台の再生装置2を使って、同時に複数のユーザがコンテンツを視聴する場合の処理としては、以下の方法を用いることができる。
【0036】
第1の方法は、ユーザ状態認識手段22で、ユーザの個人識別を行なった上で、個々のユーザ毎に状態を認識する方法である。例えば、ユーザの顔画像や音声データを使って個人識別を行なう。この場合はステップS100のユーザ認証処理は省略できる。
【0037】
第2の方法は、個人識別を行なわず、複数のユーザの状態を合わせて、ステップS100で認証した1人のユーザの状態として扱う方法である。例えば、「ユーザA」と「ユーザB」の2人が視聴していて、「再生位置=5分」で「ユーザA」が笑い、「再生位置=10分」で「ユーザB」が「ふざけるな」、「くだらない」等の不満を表した場合、1人のユーザが「再生位置=5分」で笑い、「再生位置=10分」で不満を表したとして処理する。
【0038】
またユーザ状態認識手段22は、コンテンツ再生時のユーザの状態を認識するだけでなく、コンテンツ再生前およびコンテンツ再生後のユーザの状態を認識して、ユーザ反応データ作成手段23における処理で利用するようにしてもよい。
【0039】
再生装置2の別の一例として、センサ装置30を使用しない構成を用いてもよい。この場合、制御手段25が、コンテンツ再生中にユーザの感情に関する選択肢を表示装置27に表示し、入力装置29を介してユーザからの反応を取得し、その情報をユーザ状態認識手段22に転送する。例えば、「面白い」、「腹立たしい」、「悲しい」、などの選択肢が表示装置27に表示され、入力装置29を用いて、ユーザがその中からその時の自分の気持ちに近いものを選ぶと、それがユーザ状態認識手段22に伝えられる。
【0040】
更に別の一例として、コンテンツ再生に係るユーザ操作情報を用いてユーザ状態を認識してもよい。すなわち、ユーザが入力装置29を用いて入力する、「再生開始」、「再生停止」、「一時停止」、「巻き戻し」、「早送り」、「チャネル切換え」、「音量変更」などの操作情報を制御手段25が収集し、ユーザ状態認識手段22に転送する。ユーザ状態認識手段22は、これらの情報をもとに注目度を判定する。例えば、「巻き戻し」操作を行なって、コンテンツの同じ位置を繰り返し再生した場合は、その再生位置の注目度が高いと判定する。また、「早送り」操作を行なった箇所は、注目度が低いと判定する。
【0041】
次にステップS130では、ユーザ反応データ作成手段23が、コンテンツ再生位置とユーザ状態とを関連付けたユーザ反応データ(ユーザ履歴)を作成する。コンテンツ再生位置は通常、コンテンツ先頭からの相対時間で表す。ただし、放送日時が決まっているテレビ番組やネットのライブ配信などのコンテンツでは、受信日時を再生位置として用いてもよい。
【0042】
ユーザ反応データの形式を図4に示す。
【0043】
図4(A)は、再生装置2を使用するユーザが1人であり、1種類の状態を認識する場合のユーザ反応データの形式の一例を示す図である。ユーザIDと、認識する状態の種類と、コンテンツIDと再生位置と反応度合いとを対応させたテーブルが記録されている。コンテンツIDは、ユーザ情報処理装置1でコンテンツを一意に識別可能な数値または文字列であり、コンテンツ制作者や販売事業者によってあらかじめ付与されている場合はそれを用いればよい。そうでない場合は、コンテンツのタイトル等を用いてコンテンツIDを生成する。放送番組であれば、放送局名、放送日時等を組み合わせてコンテンツIDを生成してもよい。再生位置はそのコンテンツの先頭からの経過時間を「時間:分:秒」の形式で表したものであり、例えば「00:03:10」は、先頭から「3分10秒」を表している。この例では、一定の時間間隔(10秒)ごとの反応度合いを記録している。反応度合いは、最小「0.0」、最大「1.0」の数値であり、数値が大きいほど、その状態(感情等)の程度が強いことを示している。例えば、音声で「笑い」を認識する場合、笑い声の大きさにより反応度合いを算出する。なお、ユーザ情報処理装置1でユーザを識別する処理を行なわずに、再生装置2を識別する処理を行なう場合は、ユーザIDの代わりに再生装置2を識別する再生装置IDを含めてユーザ反応データを作成する。
【0044】
図4(B)は、同様に再生装置2を使用するユーザが1人であり、1種類の状態を認識する場合のユーザ反応データの形式の別の一例を示す図である。ユーザIDと、認識対象の状態と、コンテンツIDと再生位置を対応させたテーブルが記録されている。この例では、再生装置2を使用するユーザのユーザIDが「U5510」であり、ユーザの「注目度」を認識していることを示している。図4(B)では、ユーザの反応度合いが所定値以上の箇所のみを記録しており、反応度合いそのものは省略している。すなわち、再生位置が記録されている箇所で、ユーザの注目度が高いことを示している。この例では、「C001」コンテンツに対して、「3分10秒」と「5分21秒」の2カ所でユーザの注目度が高まったことになる。なお、一般的にはユーザの注目度が高い状態はある程度の時間持続するが、この例では、注目度が高い状態の最初の再生位置(時間)を記録している。その時間から一定の時間が経過して再び注目度が高くなった再生位置をテーブルの次の行に追加している。図4(B)の形式により、ユーザ反応データのデータ容量を少なくして、効率的に処理することが可能である。
【0045】
図4(C)は、再生装置2を複数のユーザが利用し、ユーザの複数種類の状態(感情等)を認識する場合の例である。ユーザIDと、コンテンツIDと、再生位置と、状態の種類とを関連付けて記録する。この例のテーブルの1行目では、「C002」のコンテンツの再生位置「4分26秒」でユーザ「U5510」の「笑い」を認識したことを示している。図4(C)では、反応度合いが反応の種類に応じて決められた所定値以上の箇所のみのデータを作成し、反応度合いはデータに含めずに省略している。
【0046】
ユーザ反応データの別の一例を図4(D)に示す。図4(C)との違いは、状態の先頭再生位置に加えて、状態の末尾再生位置を記録していることと、反応度合いを記録している点である。反応の先頭再生位置は、その状態が最初に認識された再生位置である。反応の末尾再生位置は、同一の状態と見なせる最後の再生位置である。なお一般的には、状態の先頭から状態の末尾までの間で、反応度合いは変化するが、その区間の平均値、または最大値を記録すればよい。図4(A)〜(D)に示した形式はあくまでも一例であり、この他にも例えば、図4(A)と同様に一定の時間間隔で、ユーザIDと、コンテンツIDと、状態の種類と、反応度合いとを関連付けて記録してもよい。
【0047】
以上の説明では、コンテンツ再生中のユーザの状態を認識するものとしたが、更にコンテンツの再生前、またはコンテンツ再生後のユーザの状態を認識してユーザ反応データを作成するようにしてもよい。コンテンツ再生中にユーザが同じように笑った場合でも、コンテンツ再生前にユーザが怒ったり、悲しんでいた場合は、コンテンツ再生前に既にユーザが笑っていた場合よりも、笑いの度合いを大きくする、といった処理を行なう。コンテンツ再生前のユーザの状態種類と、コンテンツ再生後の最初のユーザの状態の種類が正反対である場合には、コンテンツ再生後の最初のユーザの状態の反応の度合いを強くする。また、コンテンツ再生中の最後の状態と、コンテンツ再生後の状態が同じであり、コンテンツ再生後の状態が長時間持続する場合には、コンテンツ再生中の最後の状態の反応の度合いを強くする。
【0048】
このような処理を行なう場合のユーザ反応データ作成の処理を図5のフローチャートで説明する。
【0049】
まずステップS200では、ユーザ状態認識手段22が、コンテンツ再生前に所定の時間ユーザ状態を認識し、結果を保持しておく。
【0050】
次にステップS210では、ユーザ状態認識手段22が、コンテンツ再生中のユーザ状態を認識し、結果を保持しておく。
【0051】
次にステップS220では、ユーザ状態認識手段22が、コンテンツ再生後も引き続き所定の時間ユーザ状態を認識し、結果を保持しておく。
【0052】
次にステップS230では、コンテンツ再生後に所定の時間が経過した後に、ユーザ反応データ作成手段23が、補正前のユーザ反応データを作成する。
【0053】
次にステップS240では、ユーザ反応データ作成手段23が、補正前のユーザ反応データを対象として、コンテンツ再生中のデータの中に、再生前と同じ種類のデータが存在するか否か判定する。「YES」であれば、該当データをマークしてステップS250に進み、「NO」であればステップS260に進む。なお、この際に、再生前にある状態が認識された時間(マイナスの再生位置)、あるいは再生開始の時間から所定時間(例えば10分)以内のデータを処理対象にしてもよい。
【0054】
ステップS250では、ユーザ反応データ作成手段23が、ステップS240でマークされたデータを対象にして、反応度合いの数値を減少させる。コンテンツ再生前から同じ種類の状態(感情等)であれば、そのコンテンツの影響力は実際には、補正前の数値として現れたものより小さいためである。反応度合いの変更の方法としてはいくつかの方法がある。
【0055】
第1の方法は、補正前の数値に「1」より小さい係数を乗算する方法である。例えば、係数が「0.8」で、補正前の数値が「0.5」である場合、補正後の数値は「0.4」となる。
【0056】
第2の方法は、補正前の数値から所定値を減算する方法である。
【0057】
第3の方法は、再生前の数値に所定係数を乗算した値を、補正前の反応度合いから減算する方法である。例えば、再生前の数値が「0.5」であり、所定係数が「0.2」で、補正前の反応度合いが「0.7」である場合、「0.7−0.5×0.2=0.6」となり、補正後の数値は「0.6」となる。
【0058】
次にS260では、ユーザ反応データ作成手段23が、補正前のユーザ反応データを対象として、コンテンツ中のデータの中に、再生前と異なる種類のデータが存在するか否か判定する。「YES」であれば、該当データをマークしてステップS270に進み、「NO」であればステップS280に進む。なお、この際に、再生前にある状態が認識された時間(マイナスの再生位置)、あるいは再生開始の時間から所定時間(例えば10分)以内のデータを処理対象にしてもよい。
【0059】
ステップS270では、ユーザ反応データ作成手段23が、ステップS260でマークされたデータを対象にして、反応度合いの数値を増加させる。コンテンツ再生前とは異なる種類の状態(感情等)であれば、そのコンテンツの影響力は実際には、補正前の数値として現れたものより大きいためである。反応度合いの変更の方法としてはいくつかの方法がある。
【0060】
第1の方法は、補正前の数値に「1」より大きい係数を乗算する方法である。例えば、係数が「1.2」で、補正前の数値が「0.5」である場合、補正後の数値は「0.6」となる。
【0061】
第2の方法は、補正前の数値に所定値を加算する方法である。
【0062】
第3の方法は、再生前の数値に所定係数を乗算した値を、補正前の反応度合いに加算する方法である。例えば、再生前の数値が「0.5」であり、所定係数が「0.2」で、補正前の反応度合いが「0.7」である場合、「0.7+0.5×0.2=0.8」となり、補正後の数値は「0.8」となる。
【0063】
また、これら第1〜第3の方法において、再生前の状態の種類と、再生中の状態の種類の組合せに応じて、加算値や、乗算の係数を適宜変えるようにしてもよい。例えば、再生前に「リラックス」で、再生中に「笑い」の場合より、再生前に「怒り」で、再生中に「笑い」の場合の方が、2つの状態の性質の違いが大きいので、後者の加算値や乗算係数をより大きなものにしてもよい。
【0064】
次にS280では、ユーザ反応データ作成手段23が、補正前のユーザ反応データを対象として、コンテンツ再生中のデータの中に、再生後と同じ種類のデータが存在するか否か判定する。「YES」であれば、該当データをマークしてステップS290に進み、「NO」であればステップS300に進む。なお、この際に、再生後にある状態が認識された時間、あるいは再生終了の時間より所定時間(例えば10分)だけ前の範囲にあるデータを処理対象にしてもよい。
【0065】
ステップS290では、ユーザ反応データ作成手段23が、ステップS280でマークされたデータを対象にして、反応度合いの数値を増加させる。
【0066】
次にステップS300では、補正前のユーザ反応データから、コンテンツ再生前および再生後のデータを削除する。
【0067】
以上の処理により、補正後のユーザ反応データが作成される。補正後のデータは、コンテンツに対するユーザの反応をより精度良く表したものである。補正前と補正後のユーザ反応データの一例を図6に示す。
【0068】
図6(A)は、ステップS230で作成された、補正前のユーザ反応データを示している。図6(A)の1行目では、状態の先頭再生位置および状態の末尾再生位置の値がマイナスとなっている。これはコンテンツ再生前という意味である。例えば「−00:02:20」は、コンテンツ再生の2分20秒前の時間を示している。また5行目の再生位置の値には「#(シャープ)」記号が付加されているが、これはコンテンツ再生終了後の時間の意味である。例えば、「#00:05:20」はコンテンツの再生が終了してから5分20秒後の時間を示している。
【0069】
図6(B)は、補正後のユーザ反応データを示している。補正後のユーザ反応データからは、コンテンツ再生前およびコンテンツ再生後の行は削除されている。補正後の1行目は、補正前の2行目に対応するが、反応度合いが「0.80」から「0.64」に減少している。これは、補正前の1行目に示したように、コンテンツ再生前に同じ「笑い」のデータが存在した為である。また、補正後の3行目は、補正前の4行目に対応するが、反応度合いが「0.73」から「0.85」に増加している。これは、補正前の5行目に示したように、コンテンツ再生後にも同じ「悲しみ」という状態が持続している為である。また、補正後の4行目は、補正前の7行目に対応するが、反応度合いが「0.8」から「1.0」に増加している。これは、補正前の6行目に示したように、コンテンツ再生前の状態が「怒り」であり、これと性質の異なる状態(「笑い」)がコンテンツ再生中に認識された為である。このような補正処理を行なう場合には、補正後のデータをユーザ反応データとして利用する。
【0070】
以上がステップS130およびユーザ反応データ作成手段23の詳細な説明である。
【0071】
図3のフローチャートの説明に戻ると、次にステップS140において、制御手段25が、ステップS130で作成されたユーザ反応データと、ユーザ属性格納手段26に格納されているユーザ属性データを送受信手段24を介してユーザ情報処理装置1に送信する。ユーザ属性格納手段26には、ユーザIDと対応させて、他のユーザに自己紹介するための情報、および他のユーザがコンタクトをとるための情報が格納されている。例えば、ユーザの年齢、性別、血液型、星座、容姿に関する情報、趣味、好きなアーティスト、住所、電話番号、メールアドレス等であるが、これらに限定される訳ではない。また、紹介を希望する他のユーザに関する条件、例えば、年齢層、性別、血液型、星座、容姿、趣味、好きなアーティスト、地域などの情報を合わせて格納し、ユーザ属性データとしてユーザ情報処理装置1に送信しても良い。
【0072】
以上が再生装置2の動作の説明である。
【0073】
次にユーザ情報処理装置1について説明する。ユーザ情報処理装置1の構成を図7に示す。再生装置2で作成されたユーザ反応データを格納するユーザ反応データ格納手段11と、ユーザ反応データを用いて集約データを計算する集約データ計算手段12と、ユーザ間の類似度を計算する類似度計算手段13と、再生装置2との間でデータの送受信を行なう送受信手段14と、ユーザ情報処理装置1全体の制御を行なう制御手段15と、ユーザ属性を格納するユーザ属性格納手段16と、により構成されている。またユーザ情報処理装置1には、表示装置17、キーボード、マウス、トラックボール、リモコン等の入力装置18が接続されている。
【0074】
ユーザ情報処理装置1は、CPU、RAM、ROM、ハードディスクドライブ、ネットワークインタフェース等を備える一般的なコンピュータを用いて、ソフトウェア(プログラム)処理を実行する形態により実現することも可能である。
【0075】
ユーザ属性格納手段16は、送受信手段14を介して、各々の再生装置2(2a〜2n)からユーザ属性データを受信し、それを格納する。ユーザ属性データには、ユーザIDと他のユーザに自己紹介するための情報、および他のユーザがコンタクトをとるための情報が含まれている。また、受信したユーザ属性データに、紹介を希望する他のユーザに関する条件が含まれている場合は、それも格納する。
【0076】
ユーザ反応データ格納手段11は、送受信手段14を介して、各々の再生装置2(2a〜2n)からユーザ反応データを受信し、それを格納する。図4に示したように、ユーザ反応データは、いくつかの形式を取り得るが、ユーザ反応データ格納手段11は、それら全てに対応している。以下では、ユーザ反応データが図4(D)の形式である場合を主に説明するが、他の形式の場合についても同様である。
【0077】
集約データ計算手段12は、ユーザ反応データ格納手段11に格納されたユーザ反応データを用いて、コンテンツの特定の区間に対応するブロックごとにユーザ反応データを集約した集約データを計算する。ユーザ反応データそのものを使って、ユーザ間の類似度を計算することも可能であるが、本発明においては集約データを用いてユーザ間の類似度を計算する。従来技術の特許文献2においては、図4(A)の形式のユーザ反応データをそのまま用いて、ユーザ間の類似度を算出していると解釈できるが、この問題点を以下に説明する。
【0078】
第1の問題は、反応度合いを計測する時間間隔を適切に設定することが難しい点である。時間間隔が短いと反応のないサンプルが多くなると共に、2人のユーザがほぼ同時に反応を示した場合であっても、データ上は異なる時間での反応になることが多いので、類似度の精度が低くなる場合がある。またサンプル数が多いと類似度計算に伴う処理量が増大する。逆に時間間隔が長いと、ユーザが反応しても、サンプル点とサンプル点の間の位置になってしまい、類似度に反映されない場合が多い。またそれを回避するために、反応を時間方向に積分する処理を入れると、本来時間的に区別すべき反応も同じ時間の反応として処理してしまうので、類似度の精度が低くなる場合がある。すなわち、類似度を精度良く、かつ少ない計算量で効率的に計算することが難しい。
【0079】
第2の問題は、コンテンツの構成を反映した類似度計算ができない点である。テレビ番組や映画などの映像コンテンツ、あるいは音楽コンテンツなどでは通常、ある再生位置を境にその前後で内容、意味、印象等が大きく異なるような境界点が存在する。2人のユーザの反応が時間的に近い場合であっても、それらが境界点をはさんだものであれば、それぞれの反応の意味は必ずしも類似しているとは言えない。従来技術では、コンテンツの構成やこのような境界点を考慮していないため、類似度を精度良く計算することが難しい。
【0080】
本発明では、コンテンツの構成に基づいて、ユーザ反応データから集約データを計算し、集約データを用いてユーザ間の類似度を計算するので、類似度を精度良く、かつ少ない計算量で効率的に計算することが可能である。
【0081】
集約データ計算手段12の構成を図8に示す。ブロック情報格納部31と、集約部32と、集約データ格納部33とで構成されている。
【0082】
ブロック情報格納部31は、ユーザ反応データの再生位置をブロック番号に変換するための情報を格納している。
【0083】
ユーザ情報処理装置1において1種類のユーザ状態のみ処理する場合のブロック情報格納部31の格納データの形式を図9に示す。図9の例では、ユーザ状態として「注目度」を処理対象にしている。図9(A)は、コンテンツIDごとに、ブロック先頭再生位置と、ブロック末尾再生位置と、ブロック番号とを対応させたデータである。ブロック先頭再生位置とブロック末尾再生位置は、ユーザ反応データの再生位置と同様に、コンテンツの先頭からの経過時間を「時間:分:秒」の形式で表したものである。本実施例では、コンテンツの特定区間を、「ブロック先頭再生位置」以上「ブロック末尾再生位置」未満の区間として表わす。ブロック番号は、1から始まる続き番号である。ブロックの個数はコンテンツ毎に異なっていてもよい。また、ブロック番号の順序は必ずしも再生位置(時間)の順序と同じでなくてもよい。図9(A)の例では、コンテンツ「C001」のブロック個数はNaであり、コンテンツ「C002」のブロック個数はNbである。このブロック情報は、コンテンツの構成を反映したものであり、各々のブロックは、そのコンテンツ中で内容、シーン、意味、印象等がある程度まとまっている箇所である。このため一般的には、ブロックごとにブロックの長さ(時間)は異なる。また通常、1番目のブロックは、そのコンテンツの先頭が対応するが、必ずしもその必要はなく、コンテンツの途中から1番目のブロックに対応させてもよい。例えば、図9(A)の例では、コンテンツ「C002」のブロック「1」は、「5分0秒」以上「9分30秒」未満の区間である。この場合、「0分0秒」以上「5分0秒」未満の区間は、どのブロックにも対応しない。また、コンテンツ「C002」のブロック「2」は、「10分15秒」以上「12分45秒」未満の区間である。ブロック「1」と「2」の間の「9:30秒」以上「10分15秒」未満の区間は、どのブロックにも対応しない。コンテンツの中に含まれるコマーシャル部分、他のコンテンツの紹介などの部分、その他あまり重要でない部分は、このようにどのブロックにも対応させないようにしてもよい。どのブロックにも対応しない区間でユーザ反応していたとしても、その情報は類似度計算には利用されない。
【0084】
また、コンテンツの複数の区間を同一のブロックに対応させてもよい。図9(A)の例では、コンテンツ「C100」において、「3分0秒」以上「5分15秒」未満の区間と、「8分20秒」以上「9分24秒」未満の区間が、両方ともブロック「1」に対応している。また、「5分15秒」以上「7分32秒」未満の区間と「10分5秒」以上「12分30秒」未満の区間が、両方ともブロック「2」に対応している。コンテンツの中で、内容、意味、印象等が似通っている区間は、このように1つのブロックにまとめてもよい。
【0085】
更に複数のコンテンツの複数の区間を1つのブロックに対応させてもよい。この例を図9(B)に示す。コンテンツ「C011」の「0分0秒」以上「3分5秒」未満の区間と、コンテンツ「C012」の「5分0秒」以上「9分30秒」未満の区間が共に、ブロック番号「1」に対応している。またそれ以降のブロック番号は、2つのコンテンツにまたがった通し番号になっており、この2つのコンテンツでNc個のブロックがある。このように複数のコンテンツをまとめて扱う場合には、対象のコンテンツに同一の統合コンテンツID(図の例では「D001」)を割り当て、それ以降の処理では、コンテンツIDの代わりに統合コンテンツIDを使う。シリーズ物のコンテンツなどでは、異なるコンテンツでも意味的に似通ったシーンは少なくないので、これらをまとめて1つのブロックにすることで、更に効率的に類似度を計算することが可能になる。また、異なるコンテンツの関連するシーンで、それぞれ似たような反応をするユーザ同士は、非常に類似度が高いと考えられる。複数のコンテンツにまたがるユーザの反応を1つのブロックにまとめることにより、複数のコンテンツに対するユーザの反応を簡潔に少数のデータで表現できるので、類似度を精度良く、かつ効率的に計算することが可能になる。
【0086】
ユーザ情報処理装置1において、複数種類のユーザ状態を処理する場合のブロック情報格納部31の格納データの形式を図10に示す。
【0087】
図10(A)は、各々のユーザ状態に同じ区間を対応させて、同じ個数(Nd個)のブロックを割り当てる場合の例である。この例では、コンテンツ「C010」に関係するユーザ状態は、「笑い」、「怒り」、「悲しみ」の3つであり、各々にNd個、合計で3Nd個のブロックが割り当てられている。ブロック先頭再生位置とブロック末尾再生位置は、ユーザ状態の種類が異なっていても同じである。
【0088】
図10(B)は、ユーザ反応データのユーザ状態の種類応じて、それぞれ異なった区間に対応するブロックを作成する場合のブロック情報である。図10(A)において、状態の種類ごとに、異なる数のブロックが設定されている。コンテンツ「C001」の場合、「笑い」に対して「Nf」個、「怒り」に対して「Ng」個、「悲しみ」に対して「1」個のブロックが設定されている。コンテンツ「C001」では、合計「Nf+Ng+1」個のブロックが作成される。このように、状態の種類に応じて、最適な数のブロックを設定することにより、類似度計算を効率的かつ、精度良く行うことができる。例えば、コンテンツ「C001」の例は、通常ユーザが「悲しみ」を表わす箇所が1か所であると想定される場合の例であり、この箇所以外にユーザが「悲しみ」を表わしたとしても、それを類似度計算に反映させる必要がない、むしろ反映させない方が類似度の精度が向上する、と判断できる場合の例である。もちろん、複数種類の状態に対して、それぞれ同じ数のブロックを設定してもよい。
【0089】
図10(C)は、複数種類の状態を1つのブロックに対応させた場合の一例である。この例では、コンテンツ「C002」において、「5分0秒」以上「8分40秒」未満の同じ区間で、「笑い」、「怒り」、「無関心(無表情)」の3つの状態が、類似度計算に利用されることになっている。まずこの区間で「笑い」を示すユーザは、他の2つを示すユーザと、明らかに個性が異なると判断した結果、「笑い」に独立したブロック「1」を対応させている。次に、この区間で「怒り」を示すユーザと、「無関心」を示すユーザは、本質的にそれほど変わらないと判断した結果、「怒り」と「無関心」を同じブロック「2」に対応させている。また、「15分20秒」以上「16分15秒」未満の「笑い」と、「18分10秒」以上「18分30秒」未満の「無関心」は、どちらもブロック番号「4」に対応している。これは、「15分20秒」以上「16分15秒」未満の区間で「笑い」を示し、「18分10秒」以上「18分30秒」未満の区間で「無関心(無表情)」を示しているユーザは、ある特定のタイプに該当すると判断されている。このように再生位置と状態の種類がともに異なっているユーザ反応であっても、場合によっては同一のブロックに対応させた方が、ユーザの個性をより明確に、かつ少数のデータで簡潔に表わすことができるので、類似度を精度よく、かつ効率よく計算することが可能になる。
【0090】
この図の「状態係数」は、同一ブロックに対応する状態の種類の重みを示す係数であり、後述するように集計データを計算する際に使用する。例えば、ブロック「2」には、「怒り」と「無関心」が対応するが、「怒り」の重みを「0.6」、「無関心」の重みを「0.4」として、集計データを計算する。
【0091】
なお、図10の例では示していないが、複数のユーザ状態に対応するブロック情報の場合であっても、図9に示した例と同様に、複数の区間を同一のブロックに対応させたり、複数のコンテンツの複数の区間を同一のブロックに対応させてもよい。
【0092】
次に、集約データ計算手段12の集約部32について説明する。集約部32は、ブロック情報格納部31を参照しながら、ユーザ反応データ格納手段11に格納されているユーザ反応データから集約データを計算する。集約部32の動作を図11のフローチャートを用いて説明する。
【0093】
まずステップS500において、集約部32は、計算過程で集約データを一時的に保持するためのバッファを初期化する。このバッファは、ユーザID(以下では「U」と表記)と、コンテンツID(統合コンテンツIDを含む。以下では「C」と表記)と、ブロック番号(以下では「B」と表記)の3つの引数を指定して、値の読み書きが可能なものである。以下では、「P(U, C, B)」という表記で、その値を表わす。またこのバッファは、必要に応じて記憶領域を自動的に拡張する機能を持つ。初期状態では、全てのユーザ、全てのコンテンツ、全てのブロック番号に対して、バッファの値は「0」である。
【0094】
次にステップS510において、集約部32は、ユーザ反応データ格納手段11を参照し、ユーザ反応データに記録されているユーザIDの中から、まだ処理を行っていないユーザIDを1つ選ぶ。このユーザIDを以下では、「Ux」と表記する。
【0095】
次にステップS520において、集約部32は、ユーザ反応データ格納手段11を参照し、ユーザUxに関してまだ処理を行っていないコンテンツIDを1つ選ぶ。このコンテンツIDを以下では、「Cx」と表記する。
【0096】
次にステップS530において、集約部32は、ユーザ反応データ格納手段11を参照し、ユーザUxがコンテンツCxを利用した際のユーザ状態の中から、まだ処理に使用していないユーザ状態を1つ選ぶ。このユーザ状態を以下では、「Mx」と表記する。
【0097】
次にステップS540において、集約部32は、ユーザ反応データ格納手段11を参照し、ユーザがUxで、コンテンツがCxで、ユーザ状態がMxである条件を満たすユーザ反応データの中から、まだ処理していないデータを1つ選ぶ。図4(D)に示す形式の場合であれば、テーブルの1行を読み出す。この選択したユーザ反応データを以下では「Rx」と表記する。
【0098】
次にステップS550において、集約部32は、ブロック情報格納部31のブロック情報を参照しながら、Cx、Mx、Rxの再生位置を用いて、Rxに対応するブロックを判定する。
【0099】
具体的には、ブロック情報のコンテンツIDが「Cx」であり、「Rxの再生位置」が「ブロック先頭再生位置」以上かつ「ブロック末尾再生位置」未満であり、ブロック情報の中の状態の種類が「Mx」であるブロック番号を判定する。なお、ブロック情報に「状態の種類」が含まれない場合は、「状態の種類」が「Mx」と一致するという条件は含めない。また、Rxに対応するブロック番号は、1つだけではなく複数存在する場合がある。例えば、ユーザ反応データが図4(D)に示すように状態区間の情報、すなわち「状態の先頭再生位置」と「状態の末尾再生位置」の情報を持っており、状態区間が複数のブロックにまたがっている場合である。このステップで判定されたブロック番号を「Bx」とする。
【0100】
次にステップS560において、集約部32は、ユーザ反応データRxにおける反応度合い(以下では「Dx」と表記する)を下記の数式(1)に示すように加算して、その時点での集計データ(集約値)であるP(Cx,Ux,Bx)を更新する。ユーザ反応データRxの中に、「反応度合い」が存在しない場合には、所定の数値をP(Cx,Ux,Bx)に加算する。例えば、「1.0」や「0.7」といった数値を用いればよい。また、ブロック情報の中に状態係数が存在する場合は、下記の数式(1)のDxに代えて、Dxと状態係数を乗算した値を用いる。ステップS550で判定されたブロック番号が複数存在する場合は、ステップS560の処理をそれぞれのブロック番号について行う。
【数1】

【0101】
次にステップS570において、集約部32は、ユーザ反応データ格納手段11を参照し、ユーザがUxで、コンテンツがCxで、ユーザ状態がMxである全てのユーザ反応データを処理したか否か判定する。未処理のデータが存在する場合はステップS540に進み、未処理のデータが存在しない場合はステップS580に進む。
【0102】
次にステップS580において、集約部32は、ユーザ反応データ格納手段11を参照し、ユーザUxがコンテンツCxを利用した際のユーザ状態の中から、まだ処理していないユーザ状態があるか否か判定する。未処理のユーザ状態が存在する場合はステップS530に進み、未処理のユーザ状態が存在しない場合はステップS590に進む。
【0103】
次にステップS590において、集約部32は、ユーザ反応データ格納手段11を参照し、ユーザUxに関してまだ処理を行っていないコンテンツがあるか否か判定する。未処理のコンテンツが存在する場合はステップS520に進み、未処理のコンテンツが存在しない場合はステップS600に進む。
【0104】
次にステップS600において、集約部32は、ユーザ反応データ格納手段11を参照し、ユーザ反応データに記録されているユーザIDの中から、まだ処理を行っていないユーザがいるか否か判定する。未処理のユーザが存在する場合はステップS510に進み、未処理のユーザが存在しない場合はステップS610に進む。
【0105】
次にステップS610において、集約部32は、バッファ「P(U, C, B)」の全てのデータを集約データ格納部33に格納する。
【0106】
以上が集約データ計算手段12の集約部32の動作の説明である。本実施例では以上の処理の結果、ユーザが反応を示したブロックの集約値は正の値(0より大きな値)となる。またユーザが反応していないブロックの集約値は、初期状態の「0」になっている。またユーザが利用していないコンテンツのブロックは、全て初期状態の「0」になっている。
【0107】
集約データ計算手段12の集約データ格納部33には、図12に示す形式でデータが格納される。ユーザIDと、コンテンツID(または統合コンテンツID)と、ブロック番号と、グローバルブロック番号と、バッファ「P(U, C, B)」の値である集約値とが関連づけられて格納されている。なお、図9(B)に示したように、ブロック情報に統合コンテンツIDが存在する場合には、集約データ格納部33において、コンテンツIDの代わりに対応する統合コンテンツIDを用いる。図12の例では、集約データ格納部33にK個のユーザIDと、L個のコンテンツID(または統合コンテンツID)が格納されている様子を示している。以下の説明では、このように集約データ格納部にK個のユーザIDと、L個のコンテンツIDおよび統合コンテンツIDが格納されているものとする。
【0108】
ブロック番号は、コンテンツ毎に付けられた1から始まる通し番号である。グローバルブロック番号は、集約データ格納部33に格納されている全てのコンテンツの全てのブロックを一意に識別できる番号である。本実施例では、1からNzまでのグローバルブロック番号があるものとする。コンテンツIDとブロック番号の組み合わせで、全てのコンテンツのブロックを特定することもできるが、グローバルブロック番号を用いることにより、1種類の番号で、全てのコンテンツのブロックを特定できる。なお、集約データ格納部33に、ユーザIDと、グローバルブロック番号と、集約値とを格納するようにして、コンテンツIDとブロック番号の格納を省略してもよい。
【0109】
次にユーザ情報処理装置1が再生装置2に対して提供する類似ユーザ情報を作成する方法について説明する。あるユーザ(一のユーザ)が利用する再生装置2において、一のユーザが入力装置29を操作して、類似ユーザ情報の取得を指示すると、制御手段25はステップS100と同様のユーザ認証処理を行った後、送受信手段24を介して、類似ユーザ情報リクエストとユーザIDとをユーザ情報処理装置1に送信する。なお、ユーザ情報処理装置1において、ユーザを識別する処理を行なわず、再生装置2を識別する処理を行なう場合には、ユーザIDの代わりに、再生装置2を識別する情報を送信すればよい。ユーザ情報処理装置1の送受信手段14は、この類似ユーザ情報リクエストとユーザIDとを受信し、類似度計算手段13に通知することにより、類似度計算手段13が一のユーザに対する類似ユーザ情報を作成する。
【0110】
類似度計算手段13の動作を図13のフローチャートを用いて説明する。
【0111】
まずステップS700において、類似度計算手段13は、類似ユーザ情報リクエストを発行したユーザ(一のユーザ)のユーザID(一のユーザID)に対応する集約データを集約データ格納部33から読み出す。以下では一のユーザIDをUaとする。Uaの集約値をグローバルブロック番号に対応させて読み出し、ベクトル形式のデータとして保持する。以下ではこのベクトルをVa[i](iはグローバルブロック番号で、i=1〜Nz)で表わす。
【0112】
次にステップS710において、類似度計算手段13は、集約データ格納部33を参照しながら、Ua以外のユーザIDの内からで、まだ処理を行っていないユーザIDを1つ選択する。このユーザIDをUbとする。
【0113】
次にステップS720において、類似度計算手段13は、Ubの集約データを集約データ格納部33から読み出す。Ubの集約値をグローバルブロック番号に対応させて読み出し、ベクトル形式のデータとして保持する。以下ではこのベクトルをVb[i](iはグローバルブロック番号で、i=1〜Nz)で表わす。
【0114】
次にステップS730において、類似度計算手段13は、VaとVbを用いて、ユーザUaとユーザUbとの類似度Sabを計算し、UbとSabを対応させた結果をバッファQに格納する。類似度の計算方法としては以下に示す種々の方法を用いることができる。以下ではSabの値が大きいほど、ユーザ間の類似度が高いと判断できる。
【0115】
第1の計算方法は、下記の数式(2)に従って、VaとVbが共に正の値(0より大きな値)となるベクトル要素の数をカウントする方法である。コンテンツの同じブロックに対して反応を示すユーザは類似性が高いという判断に基づく処理である。
【数2】

【0116】
第2の計算方法は、下記の数式(3)に従って、VaとVbのコサイン尺度(2つのベクトルのコサイン角度)を計算する方法である。数式(3)の分子は、VaとVbの内積であり、分母はVaのノルムとVbのノルムの積である。
【数3】

【0117】
第3の計算方法は、下記の数式(4)に従って、VaとVbの相関係数を計算する方法である。数式(4)において、Vamは、Va[i](i=1〜Nz)の平均値、Vbmは、Vb[i](i=1〜Nz)の平均値である。なお、数式(4)では、i=1〜Nzの全てのグローバルブロックの集約値を用いて、相関係数を計算しているが、一部のグローバルブロックの集約値のみを用いて相関係数を計算してもよい。例えば、VaとVbが共に正の値となるグローバルブロックの集合を作成し、この集合を対象としてVaの平均値VamとVbの平均値Vbmをそれぞれ計算した後、数式(4)の各々のΣで示されている加算演算を前記集合を対象として行い、相関係数を計算してもよい。
【数4】

【0118】
第4の計算方法は、下記の数式(5)に従って、VaとVbの距離を計算し、これを用いて類似度を計算する方法である。広義の意味では、距離も類似度の内に入るが、距離が小さいほど類似性が高くなる。Sabの値が大きいほど類似性が高くなるようにした方が都合が良いので、数式(5)を用いる。ここでαは定数である。なお、ここではユークリッド距離を用いているが、マハラノビス距離を用いてもよい。また、VaとVbの差の2乗の代わりに、VaとVbの差の絶対値を計算して用いてもよい。
【数5】

【0119】
第5の計算方法は、下記の数式(6)に従って、VaとVbの距離を計算し、これを用いて類似度を計算する方法である。β、γ、λは定数であり、γは通常1未満である。なお、ここではユークリッド距離を用いているが、マハラノビス距離を用いてもよい。また、VaとVbの差の2乗の代わりに、VaとVbの差の絶対値を計算して用いてもよい。
【数6】

【0120】
第6の計算方法は、下記の数式(7)に従って、VaとVbの内積と、Va、Vbそれぞれの2乗和を用いて計算する方法である。
【数7】

【0121】
さらに、上記第1〜第6の計算方法を組合せて類似度Sabを計算してもよい。例えば、第2の計算方法と、第4の計算方法を組合せて、下記の数式(8)に従って計算してもよい。ここで、μ、νは定数である。
【数8】

【0122】
以上が類似度Sabの計算方法の説明である。
【0123】
次にステップS740において、類似度計算手段13は、集約データ格納部33を参照しながら、Ua以外のユーザIDで、まだ処理を行っていないユーザIDがあるか否か判定する。未処理のユーザIDが存在する場合はステップS710に進み、未処理のユーザIDが存在しなければ、ステップS750に進む。
【0124】
次にステップS750において、類似度計算手段13は、一のユーザを除く他のユーザのユーザIDと類似度Sabとがそれぞれ記憶されているバッファQを参照し、類似度の高いユーザを以下の方法で選ぶ。
【0125】
第1の選択方法は、類似度Sabが所定値以上のユーザを選ぶ方法である。また、所定値以上のユーザの人数が多すぎる場合や、人数が少なすぎる場合には、所定値を変更してユーザを選択し直してもよい。
【0126】
第2の選択方法は、類似度Sabを大きい順に並べた場合の上位から所定の人数を超えない人数だけ選択する方法である。バッファQに所定数より多いユーザが存在する場合は、Sabの大きい順に所定数だけユーザを選択し、そうでない場合は、バッファQに存在する全てのユーザを選択する。
【0127】
また、第1の選択方法と第2の選択方法を組合せてもよい。例えば、類似度Sabが所定値以上のユーザを候補として、その中から類似度の高い順に所定の人数を超えない人数だけ選択してもよい。すなわち、類似度Sabが所定値以上のユーザの人数が所定の人数よりも多い場合は、Sabの大きい順に所定の人数を選択し、そうでない場合は、Sabが所定値以上の全てのユーザを選択する。更に、ユーザ属性格納手段16に格納されているユーザ属性データの中に、一のユーザが紹介を希望する他のユーザに関する条件が含まれている場合には、それに合致するユーザを対象にして、第1の選択方法、または第2の選択方法、または第1の選択方法と第2の選択方法を組合せた方法などにより、類似度の高いユーザを選択しても良い。
【0128】
次にステップS760において、類似度計算手段13は、ステップS750で選択されたユーザのユーザIDに対応するユーザ属性データをユーザ属性格納手段16から読み出し、送受信手段14を介して、再生装置2に送信する。
【0129】
また上記とは別の方法として、類似度計算手段13において特開2005−71126号公報などに記載の方法をベースに更に変形して用いてもよい。すなわち、ユーザIDを行列の行または列に対応させ、グローバルブロック番号をもう一方の列または行に対応させ、行列要素が集約値である行列を形成する。そして、この行列に対して数量化3類や主成分分析などの多変量解析手法を適用し、グローバルブロック数Nzよりも小さな次元を持つ低次元ベクトル(スコアベクトル)を形成し、一のユーザの低次元ベクトルと他のユーザの低次元ベクトルの類似度を上記のステップS730と同様に計算して、類似度の高いユーザを選択してもよい。これにより、ユーザ間の類似度をさらに精度よく計算することができる。また、計算量をさらに削減することができる。
以上が類似度計算手段13の動作の説明である。
【0130】
再生装置2の制御手段25は、ユーザ情報処理装置1から類似ユーザの属性情報を送受信手段24を介して受信し、表示装置27にその情報を表示させる。これにより、一のユーザは自分とコンテンツに対する興味、嗜好、センスが類似するユーザの情報を知ることができ、そのユーザとコンタクトを取ることも可能になる。
また、一のユーザに対して、類似ユーザの情報を提供するだけでなく、他の情報を提供してもよい。例えば、ユーザ情報処理装置1が、コンテンツIDに対応させてコンテンツのタイトル、制作者、ジャンル、制作年、説明文等のコンテンツ属性情報を格納すると共に、ユーザ反応データ格納手段11の中から、類似ユーザの利用頻度が高く、かつ一のユーザの利用頻度が少ない(または利用していない)コンテンツのコンテンツIDを選択し、選択したコンテンツIDに対応するコンテンツ属性情報を一のユーザに対して提供してもよい。
【実施例2】
【0131】
実施例2のシステム全体の構成を図14に示す。実施例1では、ユーザ情報処理装置1と再生装置2が別々の装置であったが、実施例2においては、この2つの装置の機能を併せ持つ統合装置5を用いる。複数の統合装置5がネットワーク3を介して、ピアツーピアでお互いに接続可能なシステムである。統合装置5は、ユーザ情報処理部51と、再生部52で構成されている。ユーザ情報処理部51の構成および動作は、実施例1におけるユーザ情報処理装置1と同様である。また再生部52の構成および動作は、実施例1における再生装置2と同様である。
【符号の説明】
【0132】
1 ユーザ情報処理装置
2 再生装置
3 ネットワーク
5 統合装置
11 ユーザ反応データ格納手段
12 集約データ計算手段
13 類似度計算手段
14 送受信手段
15 制御手段
16 ユーザ属性格納手段
17 表示装置
18 入力装置
21 コンテンツ再生手段
22 ユーザ状態認識手段
23 ユーザ反応データ作成手段
24 送受信手段
25 制御手段
26 ユーザ属性格納手段
27 表示装置
28 音声出力装置
29 入力装置
30 センサ装置
31 ブロック情報格納部
32 集約部
33 集約データ格納部

【特許請求の範囲】
【請求項1】
コンピュータを、
ユーザを識別するためのユーザ識別情報と、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを読み込んで、前記ユーザ識別情報ごとに、前記コンテンツの特定区間に対応するブロックごとに複数の前記反応データを集約した集約データを計算する集約データ計算手段、
一のユーザの前記集約データと、他のユーザの前記集約データとを用いて、一のユーザと他のユーザとの類似度を計算する類似度計算手段、
として機能させるためのユーザ情報処理プログラム。
【請求項2】
前記集約データ計算手段は更に、前記特定区間の開始位置および終了位置と前記ブロックとを関連付ける情報が格納されたブロック情報格納部を参照しながら、前記反応データに含まれる前記位置情報がどのブロックに対応するか判定して、前記集約データを計算する、
請求項1に記載のユーザ情報処理プログラム。
【請求項3】
前記集約データ計算手段は更に、複数の前記特定区間を1つのブロックに対応させた前記ブロック情報格納部を参照しながら、前記集約データを計算する、
請求項2に記載のユーザ情報処理プログラム。
【請求項4】
前記集約データ計算手段は更に、複数のコンテンツそれぞれの前記特定区間を1つのブロックに対応させた前記ブロック情報格納部を参照しながら、前記集約データを計算する、
請求項3に記載のユーザ情報処理プログラム。
【請求項5】
前記反応データには更に、複数種類の前記状態情報が含まれており、
前記集約データ計算手段は、前記複数種類の前記状態情報を用いて、前記ブロックごとに複数の前記反応データを集約した集約データを計算する、
請求項1から4のいずれかに記載のユーザ情報処理プログラム。
【請求項6】
前記集約データ計算手段は、前記反応データに含まれる前記状態情報の種類ごとに設定された前記特定区間を用いて、前記集約データを計算する、
請求項5に記載のユーザ情報処理プログラム。
【請求項7】
前記集約データ計算手段は、前記反応データに含まれる2種類以上の前記状態情報を同一のブロックに対応させて、前記集約データを計算する、
請求項5または6に記載のユーザ情報処理プログラム。
【請求項8】
前記類似度計算手段は、一のユーザの前記集約データで構成された一のベクトルデータと、他のユーザの前記集約データで構成された他のベクトルデータとを用いて、前記類似度を計算する、
請求項1から7のいずれかに記載のユーザ情報処理プログラム。
【請求項9】
前記類似度計算手段は、前記集約データ計算手段で計算された前記集約データに多変量解析手法を適用して、前記集約データの次元数よりも少ない次元数を持つ低次元ベクトルを算出すると共に、一のユーザの前記低次元ベクトルである一のベクトルデータと、他のユーザの前記低次元ベクトルである他のベクトルデータとを用いて、前記類似度を計算する、
請求項1から7のいずれかに記載のユーザ情報処理プログラム。
【請求項10】
前記類似度計算手段は、
前記一のベクトルデータと、前記他のベクトルデータが共に正の値であるベクトル要素の数を用いて、
または、前記一のベクトルデータと、前記他のベクトルデータとの内積を用いて、
または、前記一のベクトルデータと、前記他のベクトルデータとの相関係数を用いて、
または、前記一のベクトルデータと、前記他のベクトルデータとの距離を用いて、
前記類似度を計算する、
請求項8または請求項9に記載のユーザ情報処理プログラム。
【請求項11】
前記類似度計算手段は、
前記一のベクトルデータと、前記他のベクトルデータが共に正の値であるベクトル要素の数と、
前記一のベクトルデータと、前記他のベクトルデータとの内積と、
前記一のベクトルデータと、前記他のベクトルデータとの相関係数と、
前記一のベクトルデータと、前記他のベクトルデータとの距離と、
のうちの1つ以上を用いて複数の値を算出し、算出されたそれぞれの値に所定の重み係数を乗算した値を加算して、前記類似度を計算する、
請求項8または請求項9に記載のユーザ情報処理プログラム。
【請求項12】
前記類似度計算手段は更に、前記類似度が所定値以上である他のユーザ、または前記類似度が大きい順に所定数を超えない数の他のユーザを一のユーザに対して選択する、
請求項1から11のいずれかに記載のユーザ情報処理プログラム。
【請求項13】
前記類似度計算手段は更に、一のユーザが希望する条件と合致するユーザ属性を持つ他のユーザの内から、前記類似度の大きな他のユーザを一のユーザに対して選択する、
請求項1から12のいずれかに記載のユーザ情報処理プログラム。
【請求項14】
コンピュータを、
コンテンツを再生するコンテンツ再生手段、
コンテンツ再生前およびコンテンツ再生中のユーザの状態を認識するユーザ状態認識手段、
前記ユーザ状態認識手段によって認識されたコンテンツ再生前およびコンテンツ再生中のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成する反応データ作成手段、
として機能させるための再生プログラム。
【請求項15】
コンピュータを、
コンテンツを再生するコンテンツ再生手段、
コンテンツ再生中およびコンテンツ再生後のユーザの状態を認識するユーザ状態認識手段、
前記ユーザ状態認識手段によって認識されたコンテンツ再生中およびコンテンツ再生後のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成する反応データ作成手段、
として機能させるための再生プログラム。
【請求項16】
前記ユーザ状態認識手段は、複数種類のユーザ状態を認識し、
前記反応データ作成手段は、前記状態情報の内にそれぞれの状態種類に関するユーザの反応度合いが含まれる前記反応データを作成すると共に、
前記コンテンツ再生前のユーザ状態の種類と、前記コンテンツ再生中のユーザ状態の種類が同じ場合に、コンテンツ再生中の前記反応度合いを減少させるように制御して前記反応データを作成する、
請求項14に記載の再生プログラム。
【請求項17】
前記ユーザ状態認識手段は、複数種類のユーザ状態を認識し、
前記反応データ作成手段は、前記状態情報の内にそれぞれの状態種類に関するユーザの反応度合いが含まれる前記反応データを作成すると共に、
前記コンテンツ再生前のユーザ状態の種類と、前記コンテンツ再生中のユーザ状態の種類が異なる場合に、コンテンツ再生中の前記反応度合いを増加させるように制御して前記反応データを作成する、
請求項14または16に記載の再生プログラム。
【請求項18】
前記ユーザ状態認識手段は、複数種類のユーザ状態を認識し、
前記反応データ作成手段は、前記状態情報の内にそれぞれの状態種類に関するユーザの反応度合いが含まれる前記反応データを作成すると共に、
前記コンテンツ再生中のユーザ状態の種類と、前記コンテンツ再生後のユーザ状態の種類が同じ場合に、コンテンツ再生中の前記反応度合いを増加させるように制御して前記反応データを作成する、
請求項15に記載の再生プログラム。
【請求項19】
ユーザを識別するためのユーザ識別情報と、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを読み込んで、前記ユーザ識別情報ごとに、前記コンテンツの特定区間に対応するブロックごとに複数の前記反応データを集約した集約データを計算する集約データ計算手段と、
一のユーザの前記集約データと、他のユーザの前記集約データとを用いて、一のユーザと他のユーザとの類似度を計算する類似度計算手段と、
を備えるユーザ情報処理装置。
【請求項20】
コンテンツを再生するコンテンツ再生手段と、
コンテンツ再生前およびコンテンツ再生中のユーザの状態を認識するユーザ状態認識手段と、
前記ユーザ状態認識手段によって認識されたコンテンツ再生前およびコンテンツ再生中のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成する反応データ作成手段と、
を備える再生装置。
【請求項21】
コンテンツを再生するコンテンツ再生手段と、
コンテンツ再生中およびコンテンツ再生後のユーザの状態を認識するユーザ状態認識手段と、
前記ユーザ状態認識手段によって認識されたコンテンツ再生中およびコンテンツ再生後のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成する反応データ作成手段と、
を備える再生装置。
【請求項22】
ユーザを識別するためのユーザ識別情報と、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを読み込んで、前記ユーザ識別情報ごとに、前記コンテンツの特定区間に対応するブロックごとに複数の前記反応データを集約した集約データを計算するステップと、
一のユーザの前記集約データと、他のユーザの前記集約データとを用いて、一のユーザと他のユーザとの類似度を計算するステップと、
を含むユーザ情報処理方法。
【請求項23】
コンテンツを再生するステップと、
コンテンツ再生前およびコンテンツ再生中のユーザの状態を認識するステップと、
認識したコンテンツ再生前およびコンテンツ再生中のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成するステップと、
を含む再生方法。
【請求項24】
コンテンツを再生するステップと、
コンテンツ再生中およびコンテンツ再生後のユーザの状態を認識するステップと、
認識したコンテンツ再生中およびコンテンツ再生後のユーザの状態を用いて、コンテンツの再生位置を示す位置情報と、その位置情報に対応する前記ユーザの状態情報とを関連付けた反応データを作成するステップと、
を含む再生方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2011−129997(P2011−129997A)
【公開日】平成23年6月30日(2011.6.30)
【国際特許分類】
【出願番号】特願2009−284016(P2009−284016)
【出願日】平成21年12月15日(2009.12.15)
【出願人】(000004329)日本ビクター株式会社 (3,896)
【Fターム(参考)】