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

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

Info

Publication number
JP4581446B2
JP4581446B2 JP2004081917A JP2004081917A JP4581446B2 JP 4581446 B2 JP4581446 B2 JP 4581446B2 JP 2004081917 A JP2004081917 A JP 2004081917A JP 2004081917 A JP2004081917 A JP 2004081917A JP 4581446 B2 JP4581446 B2 JP 4581446B2
Authority
JP
Japan
Prior art keywords
state
information
value
content
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004081917A
Other languages
English (en)
Other versions
JP2005267483A (ja
Inventor
充弘 宮嵜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2004081917A priority Critical patent/JP4581446B2/ja
Publication of JP2005267483A publication Critical patent/JP2005267483A/ja
Application granted granted Critical
Publication of JP4581446B2 publication Critical patent/JP4581446B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、情報処理装置および方法、並びにプログラムに関し、特に、現在のコンテクストに置かれたユーザの操作や振る舞いに適したコンテンツを推薦する或いはそのような推薦に必要な情報を提供することができる、情報処理装置および方法、並びに、プログラムに関する。
近年、ユーザに対して推薦すべきコンテンツを決定し、それをユーザに呈示する手法(以下、推薦手法と称する)が適用されたハードウエアやソフトウエアが普及してきている。
例えば、テレビジョン番組の録画機能に加えて、これから放映されるテレビジョン番組のうちの録画候補となる番組を推薦する推薦機能を搭載したHDD(Hard Disk Drive)レコーダや、DVD(Digital Versatile Disk)レコーダが普及してきている。
また、Webアプリケーションによる、ユーザの購買候補となる商品、例えば、書籍やメディアを推薦する推薦サービスが普及している(例えば、特許文献1参照)。
特開2002−279279号公報
しかしながら、従来、履歴情報として単にユーザの操作履歴を利用した推薦手法が主流であり、その結果、そのような従来の推薦手法による推薦結果、即ち、ユーザにとって最適であるとして推薦するコンテンツが、現在のコンテクストに置かれたユーザの操作や振る舞いに必ずしも適しているとは限らない、という課題があった。この課題は、最悪、従来の推薦手法による推薦結果をユーザが継続的に利用し続けると、そのユーザは、推薦結果に対して嫌悪や飽きを感じてしまう恐れがある、という課題にもなってしまう。
なお、本明細書においては、コンテクスト(context)とは、ユーザの内的状態および外的状態の全てを指す。ユーザの内的状態とは、ユーザの体調、または、情動(気分や心理状態)等を指す。また、ユーザの外的状態とは、ユーザの空間的または時間的な配置位置(時間的な配置位置とは、例えば、現在時刻を指す)の他、ユーザの周囲の空間方向若しくは時間方向に分布する(または、いずれの方向にも分布する)所定の状態も指す。
例えば、上述したHDDレコーダやDVDレコーダに搭載された推薦機能においては、単に過去に放映されたテレビジョン番組に対する録画予約等のユーザの操作履歴が履歴情報として利用し、その履歴情報に基づいてユーザの嗜好を学習し、その学習結果に基づいて録画候補の推薦を行っていることが多い。このため、現在のコンテクストに置かれたユーザの操作や振る舞いに応じた精緻な嗜好に基づく推薦を行うことは困難である、という課題がある。
なお、このような従来の推薦手法に対して適用可能な学習アルゴリズムとして、例えば、パーソナルアプリケーションのヘルプ表示やトラブルシューティングを対象とした条件付確率による学習アルゴリズム(例えばベイジアンネットワーク)が存在するが、事前に膨大なユーザの操作や振る舞いパターンの因果関係に基づく確率的知識を埋め込む必要があり、その結果、開発コストが膨大となる等の問題が生じてしまい、実用的ではない。
また、例えば、上述したWebアプリケーションによる推薦サービスにおいては、単に、ユーザの購買履歴を履歴情報として利用し、その履歴情報から得た嗜好傾向のクラスタリングによる類型的な推薦を行っていることが多い。このため、現在のコンテクストに置かれたユーザの操作や振る舞いに適する推薦、即ち、ユーザの情報閲覧や購買における振る舞いの個人的傾向を考慮した推薦を行うことが難しい、という課題がある。
本発明は、このような状況に鑑みてなされたものであり、現在のコンテクストに置かれたユーザの操作や振る舞いに適したコンテンツを推薦する或いはそのような推薦に必要な情報を提供することができる。
本発明の第1の情報処理装置は、状態遷移グラフを更新して学習し、学習した状態遷移グラフを利用してコンテンツを推薦する場合の状態遷移グラフを生成する情報処理装置であって、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施すコンテンツ処理手段と、コンテンツ処理手段によりユーザの操作に対応する処理がコンテンツに対して施される毎に、ユーザの操作対象のコンテンツに関する1以上の情報、ユーザの操作内容を示す1以上の情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成する履歴情報生成手段と、履歴情報生成手段により生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成する状態遷移生成手段と、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、状態遷移生成手段により生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類する分類手段と、ユーザの現時点の状態を取得する状態取得手段と、状態取得手段により取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸を推薦キーとして設定するとともに、推薦キーとは異なる推薦の対象としての軸を設定する設定手段と、推薦キーとしての軸に着目して、状態遷移生成手段により生成された状態遷移グラフに含まれる複数の状態の中から、状態取得手段により取得された状態と同一または類似する状態を決定する状態決定手段と、状態決定手段により決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値を取得するとともに、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する推薦手段とを備えることを特徴とする。
状態遷移生成手段により生成された状態遷移グラフに含まれる第1の状態に対応する履歴情報を構成する要素情報のうちの、分類手段によりN種類のうちの所定のM種類(Mは、N以下の整数値)のそれぞれとして分類された要素情報の特徴と、第1の状態の次に配置される第2の状態に対応する履歴情報を構成する要素情報のうちの、分類手段によりM種類のそれぞれとして分類された要素情報の特徴とを比較し、その比較結果と予め定められた連続性のルールに基づいて、ルールに違反しないと判定された場合、第1の状態と第2の状態との間に連続性が存在する判定し、ルールに違反すると判定された場合、第1の状態と第2の状態との間に連続性が存在しないと判定するとともに、第1の状態と第2の状態とを異なる時系列情報群として分類する連続性判断手段をさらに設けるようにすることができる。
本発明の第1の情報処理方法は、状態遷移グラフを更新して学習し、学習した状態遷移グラフを利用してコンテンツを推薦する場合の状態遷移グラフを生成するとともに、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す情報処理装置の情報処理方法であって、情報処理装置によりユーザの操作に対応する処理がコンテンツに対して施される毎に、ユーザの操作対象のコンテンツに関する1以上の情報、ユーザの操作内容を示す1以上の情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成する履歴情報生成ステップと、履歴情報生成ステップの処理により生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成する状態遷移生成ステップと、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、状態遷移生成ステップの処理により生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類する分類ステップと、ユーザの現時点の状態を取得する状態取得ステップと、状態取得ステップの処理により取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸を推薦キーとして設定するとともに、推薦キーとは異なる推薦の対象としての軸を設定する設定ステップと、推薦キーとしての軸に着目して、状態遷移生成ステップの処理により生成された状態遷移グラフに含まれる複数の状態の中から、状態取得ステップの処理により取得された状態と同一または類似する状態を決定する状態決定ステップと、状態決定ステップの処理により決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値を取得するとともに、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する推薦ステップとを含むことを特徴とする。
本発明の第1のプログラムは、状態遷移グラフを更新して学習し、学習した状態遷移グラフを利用してコンテンツを推薦する場合の状態遷移グラフを生成するとともに、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施すコンテンツ処理装置を制御するコンピュータに実行させるプログラムであって、情報処理装置によりユーザの操作に対応する処理がコンテンツに対して施される毎に、ユーザの操作対象のコンテンツに関する1以上の情報、ユーザの操作内容を示す1以上の情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成する履歴情報生成ステップと、履歴情報生成ステップの処理により生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成する状態遷移生成ステップと、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、状態遷移生成ステップの処理により生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類する分類ステップと、ユーザの現時点の状態を取得する状態取得ステップと、状態取得ステップの処理により取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸を推薦キーとして設定するとともに、推薦キーとは異なる推薦の対象としての軸を設定する設定ステップと、推薦キーとしての軸に着目して、状態遷移生成ステップの処理により生成された状態遷移グラフに含まれる複数の状態の中から、状態取得ステップの処理により取得された状態と同一または類似する状態を決定する状態決定ステップと、状態決定ステップの処理により決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値を取得するとともに、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する推薦ステップとを含むことを特徴とする。
本発明の第1の情報処理装置および方法、並びに第1のプログラムにおいては、状態遷移グラフを更新して学習し、学習した状態遷移グラフを利用してコンテンツを推薦する場合の状態遷移グラフを生成される。そして、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す情報処理装置またはコンテンツ処理装置がユーザの操作対象とされる。この場合、情報処理装置又はコンテンツ処理装置によりユーザの操作に対応する処理がコンテンツに対して施される毎に、ユーザの操作対象のコンテンツに関する1以上の情報、ユーザの操作内容を示す1以上の情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報が生成される。そして、2以上の履歴情報が生成されると、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフが生成され、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、状態遷移生成ステップの処理により生成された状態遷移グラフに含まれる複数の状態の要素情報が、N個の軸のそれぞれにおける座標に割り当てることで分類され、ユーザの現時点の状態が取得され、取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸が推薦キーとして設定されるとともに、推薦キーとは異なる推薦の対象としての軸が設定され、推薦キーとしての軸に着目して、生成された状態遷移グラフに含まれる複数の状態の中から、取得された状態と同一または類似する状態が決定され、決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値が取得されるとともに、状態価値が最も高く、行動価値が最も高いコンテンツが推薦される。
本発明の第2の情報処理装置は、他の情報処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する1以上の情報、ユーザの操作内容を示す1以上の情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類した場合、他の情報処理装置により生成された状態遷移グラフを利用してコンテンツを推薦する処理を実行する情報処理装置であって、ユーザの現時点の状態を取得する状態取得手段と、状態取得手段により取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸を推薦キーとして設定するとともに、推薦キーとは異なる推薦の対象としての軸を設定する設定手段と、推薦キーとしての軸に着目して、他の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の中から、状態取得手段により取得された状態と同一または類似する状態を決定する状態決定手段と、状態決定手段により決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値を取得するとともに、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する推薦手段とを備えることを特徴とする。
本発明の第2の情報処理方法は、他の情報処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する1以上の情報、ユーザの操作内容を示す1以上の情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類した場合、他の情報処理装置により生成された状態遷移グラフを利用してコンテンツを推薦する処理を実行する情報処理装置の情報処理方法であって、ユーザの現時点の状態を取得する状態取得ステップと、状態取得ステップの処理により取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸を推薦キーとして設定するとともに、推薦キーとは異なる推薦の対象としての軸を設定する設定ステップと、推薦キーとしての軸に着目して、他の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の中から、状態取得ステップにより取得された状態と同一または類似する状態を決定する状態決定ステップと、状態決定ステップの処理により決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値を取得するとともに、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する推薦ステップとを含むことを特徴とする。
本発明の第2のプログラムは、コンテンツ処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する1以上の情報、ユーザの操作内容を示す1以上の情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類した場合、コンテンツ処理装置により生成された状態遷移グラフを利用してコンテンツを推薦するする処理を制御するコンピュータに実行させるプログラムであって、ユーザの現時点の状態を取得する状態取得ステップと、状態取得ステップの処理により取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸を推薦キーとして設定するとともに、推薦キーとは異なる推薦の対象としての軸を設定する設定ステップと、推薦キーとしての軸に着目して、他の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の中から、状態取得ステップにより取得された状態と同一または類似する状態を決定する状態決定ステップと、状態決定ステップの処理により決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値を取得するとともに、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する推薦ステップとを含むことを特徴とする。
本発明の第2の情報処理装置および方法、並びに、第2のプログラムにおいては、他の情報処理装置またはコンテンツ処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する1以上の情報、ユーザの操作内容を示す1以上の情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類した場合、他の情報処理装置またはコンテンツ処理装置により生成された状態遷移グラフが利用され、コンテンツが推薦される。詳細には、ユーザの現時点の状態が取得され、取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸が推薦キーとして設定されるとともに、推薦キーとは異なる推薦の対象としての軸が設定され、推薦キーとしての軸に着目して、他の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の中から、取得された状態と同一または類似する状態が決定され、決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値が取得されるとともに、状態価値が最も高く、行動価値が最も高いるコンテンツが推薦される。
本発明の第3の情報処理装置は、他の情報処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する情報、ユーザの操作内容を示す情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、生成された状態遷移グラフに含まれる複数の状態のそれぞれに対して、ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の状態のそれぞれに対応する行動のそれぞれに対して、ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた行動またはその行動と対応する状態との組み合わせに対する状態価値および行動価値を報酬として与えた場合、他の情報処理装置により生成された、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する処理を実行するための状態遷移グラフを学習する情報処理装置であって、コンテンツを取り扱うアプリケーションを指定する指定手段と、指定手段により指定されたアプリケーションに関する状態遷移グラフを取得する取得手段と、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、他の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類する分類手段と、分類手段により分類された状態遷移グラフに含まれる第1の状態と、第1の状態の次に配置される第2の状態に対応する履歴情報を構成する要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、ルールに違反しないと判定された場合、第1の状態と第2の状態との間に連続性が存在すると判定し、ルールに違反すると判定された場合、第1の状態と第2の状態との間に連続性が存在しないと判定するとともに、第1の状態と第2の状態とを異なる時系列情報群として分類する連続性判断手段と、連続性判断手段により、連続性が存在すると判定された複数の状態のそれぞれについて状態価値と報酬との誤差、および、行動価値と報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、状態遷移グラフに含まれる、複数の状態のそれぞれに対する状態価値と、複数の行動のそれぞれに対する行動価値とを更新する学習手段を備えることを特徴とする。
学習手段は、学習を複数回繰り返した場合、さらに、所定の状態価値の複数回の更新結果の時間推移と確率分布に基づいて、最新に更新された状態価値の信頼度として分散値を演算するとともに、所定の行動価値の複数回の更新結果の時間推移と確率分布に基づいて、最新に更新された行動価値の信頼度として分散値を演算するようにすることができる。
本発明の第3の情報処理方法は、他の情報処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する情報、ユーザの操作内容を示す情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、生成された状態遷移グラフに含まれる複数の状態のそれぞれに対して、ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の状態のそれぞれに対応する行動のそれぞれに対して、ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた行動またはその行動と対応する状態との組み合わせに対する状態価値および行動価値を報酬として与えた場合、他の情報処理装置により生成された、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する処理を実行するための状態遷移グラフを学習する情報処理装置の情報処理方法であって、コンテンツを取り扱うアプリケーションを指定する指定ステップと、指定ステップの処理により指定されたアプリケーションに関する状態遷移グラフを取得する取得ステップと、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、他の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類する分類ステップと、分類ステップの処理により分類された状態遷移グラフに含まれる第1の状態と、第1の状態の次に配置される第2の状態に対応する履歴情報を構成する要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、ルールに違反しないと判定された場合、第1の状態と第2の状態との間に連続性が存在すると判定し、ルールに違反すると判定された場合、第1の状態と第2の状態との間に連続性が存在しないと判定するとともに、第1の状態と第2の状態とを異なる時系列情報群として分類する連続性判断ステップと、連続性判断ステップの処理により、連続性が存在すると判定された複数の状態のそれぞれについて状態価値と報酬との誤差、および、行動価値と報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、状態遷移グラフに含まれる、複数の状態のそれぞれに対する状態価値と、複数の行動のそれぞれに対する行動価値とを更新する学習ステップを含むことを特徴とする。
本発明の第3のプログラムは、コンテンツ処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する情報、ユーザの操作内容を示す情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、生成された状態遷移グラフに含まれる複数の状態のそれぞれに対して、ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の状態のそれぞれに対応する行動のそれぞれに対して、ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた行動またはその行動と対応する状態との組み合わせに対する状態価値および行動価値を報酬として与えた場合、コンテンツ処理装置により生成された、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する処理を制御するための状態遷移グラフを学習するコンピュータに実行させるプログラムであって、コンテンツを取り扱うアプリケーションを指定する指定ステップと、指定ステップの処理により指定されたアプリケーションに関する状態遷移グラフを取得する取得ステップと、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、他の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類する分類ステップと、分類ステップの処理により分類された状態遷移グラフに含まれる第1の状態と、第1の状態の次に配置される第2の状態に対応する履歴情報を構成する要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、ルールに違反しないと判定された場合、第1の状態と第2の状態との間に連続性が存在すると判定し、ルールに違反すると判定された場合、第1の状態と第2の状態との間に連続性が存在しないと判定するとともに、第1の状態と第2の状態とを異なる時系列情報群として分類する連続性判断ステップと、連続性判断ステップの処理により、連続性が存在すると判定された複数の状態のそれぞれについて状態価値と報酬との誤差、および、行動価値と報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、状態遷移グラフに含まれる、複数の状態のそれぞれに対する状態価値と、複数の行動のそれぞれに対する行動価値とを更新する学習ステップを含むことを特徴とする。
本発明の第3の情報処理装置および方法、並びに、第3のプログラムにおいては、他の情報処理装置またはコンテンツ処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する情報、ユーザの操作内容を示す情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、生成された状態遷移グラフに含まれる複数の状態のそれぞれに対して、ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の状態のそれぞれに対応する行動のそれぞれに対して、ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた行動またはその行動と対応する状態との組み合わせに対する状態価値および行動価値を報酬として与えた場合、コンテンツ処理装置により生成された、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する処理を実行するための状態遷移グラフが学習される。詳細には、コンテンツを取り扱うアプリケーションが指定され、指定されたアプリケーションに関する状態遷移グラフが取得され、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、他の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の要素情報が、N個の軸のそれぞれにおける座標に割り当てることで分類され、分類された状態遷移グラフに含まれる第1の状態と、第1の状態の次に配置される第2の状態に対応する履歴情報を構成する要素情報が比較され、比較結果と予め定められた連続性のルールに基づいて、ルールに違反しないと判定された場合、第1の状態と第2の状態との間に連続性が存在すると判定され、ルールに違反すると判定された場合、第1の状態と第2の状態との間に連続性が存在しないと判定されるとともに、第1の状態と第2の状態とが異なる時系列情報群として分類され、連続性が存在すると判定された複数の状態のそれぞれについて状態価値と報酬との誤差、および、行動価値と報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、状態遷移グラフに含まれる、複数の状態のそれぞれに対する状態価値と、複数の行動のそれぞれに対する行動価値とが更新される。
本発明の第4の情報処理装置は、第1の情報処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する情報、ユーザの操作内容を示す情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、生成された状態遷移グラフに含まれる複数の状態のそれぞれに対して、ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の状態のそれぞれに対応する行動のそれぞれに対して、ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた行動またはその行動と対応する状態との組み合わせに対する状態価値および行動価値を報酬として与え、第2の情報処理装置が、コンテンツを取り扱うアプリケーションを指定し、指定されたアプリケーションに関する状態遷移グラフを取得し、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、第1の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類し、状態遷移グラフに含まれる第1の状態と、第1の状態の次に配置される第2の状態に対応する履歴情報を構成する要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、ルールに違反しないと判定された場合、第1の状態と第2の状態との間に連続性が存在すると判定し、ルールに違反すると判定された場合、第1の状態と第2の状態との間に連続性が存在しないと判定するとともに、第1の状態と第2の状態とを異なる時系列情報群として分類し、連続性が存在すると判定された複数の状態のそれぞれについて、状態価値と報酬との誤差、および、行動価値と報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、状態遷移グラフに含まれる、複数の状態のそれぞれに対する状態価値と、複数の行動のそれぞれに対する行動価値とを更新した場合、第2の情報処理装置によりその内容が更新された状態遷移グラフを利用してコンテンツを推薦する処理を実行する情報処理装置であって、ユーザの現時点の状態を取得する状態取得手段と、状態取得手段により取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸を推薦キーとして設定するとともに、推薦キーとは異なる推薦の対象としての軸を設定する設定手段と、推薦キーとしての軸に着目して、第1の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の中から、状態取得手段により取得された状態と同一または類似する状態を決定する状態決定手段と、状態決定手段により決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値を取得するとともに状態価値が最も高く、行動価値が最も高いコンテンツを推薦する推薦手段とを備えることを特徴とする。
推薦手段は、第2の情報処理装置が、学習を複数回繰り返して、所定の状態価値の複数回の更新結果の時間推移と確率分布に基づいて、最新に更新された状態価値の信頼度として分散値を演算するとともに、所定の行動価値の複数回の更新結果の時間推移と確率分布に基づいて、最新に更新された行動価値の信頼度として分散値を演算した場合、状態決定手段により決定された状態に対する状態価値と、その状態に対応する行動に対する行動価値とに加えてさらに、第2の情報処理装置により演算された、その状態価値の信頼度と、その行動価値の信頼度とに基づいて、信頼度としての分散値が所定の値より低い状態価値および行動価値を現時点のユーザにとって相応しいと判断されるコンテンツを推薦するようにすることができる。
本発明の第4の情報処理方法は、第1の情報処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する情報、ユーザの操作内容を示す情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、生成された状態遷移グラフに含まれる複数の状態のそれぞれに対して、ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の状態のそれぞれに対応する行動のそれぞれに対して、ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた行動またはその行動と対応する状態との組み合わせに対する状態価値および行動価値を報酬として与え、第2の情報処理装置が、コンテンツを取り扱うアプリケーションを指定し、指定されたアプリケーションに関する状態遷移グラフを取得し、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、第1の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類し、状態遷移グラフに含まれる第1の状態と、第1の状態の次に配置される第2の状態に対応する履歴情報を構成する要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、ルールに違反しないと判定された場合、第1の状態と第2の状態との間に連続性が存在すると判定し、ルールに違反すると判定された場合、第1の状態と第2の状態との間に連続性が存在しないと判定するとともに、第1の状態と第2の状態とを異なる時系列情報群として分類し、連続性が存在すると判定された複数の状態のそれぞれについて、状態価値と報酬との誤差、および、行動価値と報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、状態遷移グラフに含まれる、複数の状態のそれぞれに対する状態価値と、複数の行動のそれぞれに対する行動価値とを更新した場合、第2の情報処理装置によりその内容が更新された状態遷移グラフを利用してコンテンツを推薦する処理を実行する情報処理装置の情報処理方法であって、ユーザの現時点の状態を取得する状態取得ステップと、状態取得ステップの処理により取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸を推薦キーとして設定するとともに、推薦キーとは異なる推薦の対象としての軸を設定する設定ステップと、推薦キーとしての軸に着目して、第1の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の中から、状態取得ステップの処理により取得された状態と同一または類似する状態を決定する状態決定ステップと、状態決定ステップの処理により決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値を取得するとともに、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する推薦ステップとを含むことを特徴とする。
本発明の第4のプログラムは、コンテンツ処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する情報、ユーザの操作内容を示す情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、生成された状態遷移グラフに含まれる複数の状態のそれぞれに対して、ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の状態のそれぞれに対応する行動のそれぞれに対して、ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた行動またはその行動と対応する状態との組み合わせに対する状態価値および行動価値を報酬として与え、習装置が、コンテンツを取り扱うアプリケーションを指定し、指定されたアプリケーションに関する状態遷移グラフを取得し、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、第1の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の要素情報を、N個の軸のそれぞれにおける座標に割り当てることで分類し、状態遷移グラフに含まれる第1の状態と、第1の状態の次に配置される第2の状態に対応する履歴情報を構成する要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、ルールに違反しないと判定された場合、第1の状態と第2の状態との間に連続性が存在すると判定し、ルールに違反すると判定された場合、第1の状態と第2の状態との間に連続性が存在しないと判定するとともに、第1の状態と第2の状態とを異なる時系列情報群として分類し、連続性が存在すると判定された複数の状態のそれぞれについて、状態価値と報酬との誤差、および、行動価値と報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、状態遷移グラフに含まれる、複数の状態のそれぞれに対する状態価値と、複数の行動のそれぞれに対する行動価値とを更新した場合、第1の情報処理装置により生成され、第2の情報処理装置によりその内容が更新された状態遷移グラフを利用してコンテンツを推薦する処理を制御するコンピュータに実行させるプログラムであって、ユーザの現時点の状態を取得する状態取得ステップと、状態取得ステップの処理により取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸を推薦キーとして設定するとともに、推薦キーとは異なる推薦の対象としての軸を設定する設定ステップと、推薦キーとしての軸に着目して、第1の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の中から、状態取得ステップの処理により取得された状態と同一または類似する状態を決定する状態決定ステップと、状態決定ステップの処理により決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値を取得するとともに、状態価値が最も高く、行動価値が最も高いコンテンツを推薦する推薦ステップとを含むことを特徴とする。
本発明の第4の情報処理装置および方法、並びに、第のプログラムにおいては、第1の情報処理装置またはコンテンツ処理装置が、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、ユーザの操作対象のコンテンツに関する情報、ユーザの操作内容を示す情報、並びに、ユーザの操作時点の時刻、場所、状況、およびユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、生成された複数の履歴情報のそれぞれに対して、要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに対応付けられた状態でユーザがコンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、生成された状態遷移グラフに含まれる複数の状態のそれぞれに対して、ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の状態のそれぞれに対応する行動のそれぞれに対して、ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた行動またはその行動と対応する状態との組み合わせに対する状態価値および行動価値を報酬として与え、第2の情報処理装置または学習装置が、コンテンツを取り扱うアプリケーションが指定され、指定されたアプリケーションに関する状態遷移グラフが取得され、予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、第1の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の要素情報が、N個の軸のそれぞれにおける座標に割り当てることで分類され、状態遷移グラフに含まれる第1の状態と、第1の状態の次に配置される第2の状態に対応する履歴情報を構成する要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、ルールに違反しないと判定された場合、第1の状態と第2の状態との間に連続性が存在すると判定され、ルールに違反すると判定された場合、第1の状態と第2の状態との間に連続性が存在しないと判定されるとともに、第1の状態と第2の状態とを異なる時系列情報群として分類され、連続性が存在すると判定された複数の状態のそれぞれについて、状態価値と報酬との誤差、および、行動価値と報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、状態遷移グラフに含まれる、複数の状態のそれぞれに対する状態価値と、複数の行動のそれぞれに対する行動価値とが更新された場合、第2の情報処理装置または学習装置によりその内容が更新された状態遷移グラフが利用され、コンテンツが推薦される。詳細には、ユーザの現時点の状態が取得され、状態取得ステップの処理により取得された状態に含まれるN種類の軸のうちの所定のM種類(Mは、N未満の整数値)の軸が推薦キーとして設定されるとともに、推薦キーとは異なる推薦の対象としての軸が設定され、推薦キーとしての軸に着目して、第1の情報処理装置により生成された状態遷移グラフに含まれる複数の状態の中から、取得された状態と同一または類似する状態が決定され、決定された状態のうち、推薦の対象としての軸の座標の状態価値とそれに対応する行動価値が取得されるとともに、状態価値が最も高く、行動価値が最も高いコンテンツが推薦される。
以上のごとく、本発明によれば、ユーザの履歴情報に基づいて、ユーザがこれから使用するコンテンツを推薦することが出来る。特に、現在のコンテクストに置かれたユーザの操作や振る舞いに適したコンテンツを推薦する或いはそのような推薦に必要な情報を提供することができる。
下、図面を参照して、本発明の実施の形態について説明する。
図1は、本発明が適用される情報処理システムの機能的構成例を表している。
この情報処理システムは、任意の台数のコンテンツ受信クライアント(図1の例では、2台のコンテンツ受信クライアント1A,1B)、任意の台数のコンテクスト検出端末(図1の例では、2台のコンテクスト検出端末2A,2B)、および、任意の台数のコンテンツ配信サーバ(図1の例では、1台のコンテンツ配信サーバ3)、任意の台数のコンテンツ推薦サーバ(図1の例では、1台のコンテンツ推薦サーバ4)、および、任意の台数の学習サーバ(図1の例では、1台の学習サーバ5)から構成される。
コンテンツ受信クライアント1A,1B、および、コンテンツ配信サーバ3、並びに、必要に応じて、コンテクスト検出端末2A,2B,コンテンツ推薦サーバ4、および学習サーバ5のそれぞれは、ユーザが使用(試聴または経験等)するコンテンツをデータとして、即ち、コンテンツデータとして取り扱う。
コンテンツとは、本明細書においては、一般的にコンテンツと称されている、テレビジョン放送番組、映画、写真、楽曲等(動画像、静止画像、若しくは音声、または、それらの組み合わせ等)の他、文書、商品(物品含)、会話等のユーザが使用可能なソフトウエアまたはハードウエアの全てを指す広い概念である。ただし、コンテンツが物品(ハードウエア)の場合、例えば、その物品が動画像や静止画像等に射影されてデータ化されたものが、コンテンツデータとして使用される。
ただし、ここでは、説明の簡略上(便宜上)、コンテンツとして、W.W.W(World Wide Web)における、メールと、ホームページ(以下、webページと称する)とが採用されているとして説明していく。
コンテンツ受信クライアント1Aは、例えば、クライアントコンピュータ、コンシューマエレクトロニクス機器(CE機器)、携帯型情報端末等で構成され、コンテンツ配信サーバ3から配信されるコンテンツであるwebページや、他のコンテンツ受信クライアント1Bから配信されるコンテンツであるメールを受信して、ユーザに呈示する。また、コンテンツ受信クライアント1Aは、ユーザの操作に基づいて、コンテンツであるメールを生成し、他のコンテンツ受信クライアント1Bに送信することもできる。
機能的構成の観点に立つと、コンテンツ受信クライアント1Aには、図1に示されるように、ユーザ入力部11、クライアント演算部12、クライアント記憶部13、および、クライアント呈示部14が設けられている。
ユーザ入力部11は、コンテンツ受信クライアント1Aに対する操作をユーザが行うための入力機器であって、例えば、キーボード、マウス、リモコン、タッチパネル、マイク等で構成される。ユーザ入力部11を利用してユーザが入力した操作内容、正確には、その操作内容に対応する信号は、クライアント演算部12に供給される。
クライアント演算部12は、例えば、ここでは、CPU(Central Processing Unit)とそれが実行するプログラム、即ち、ハードウエアとソフトウエアとの組み合わせで構成される。勿論、クライアント演算部12は、ソフトウエアまたはハードウエア単体で構成することもできる。
このクライアント演算部12には、コンテンツ処理部51、時系列情報生成部52、および、呈示制御部53が少なくとも設けられている。即ち、実際には、クライアント演算部12には、その他の処理を実行するブロックも設けられることが多いが、図1の例では、これらのブロックの図示は省略されている。
コンテンツ処理部51は、コンテンツ配信サーバ3または他のコンテンツ受信クライアント1Bから送信されたコンテンツを受信し、ユーザ入力部11からの操作内容に基づいて、ユーザがそのコンテンツを使用するために必要な各種処理を実行する。
具体的には、例えば、コンテンツ配信サーバ3が管理している所定のwebページをユーザが閲覧する場合、コンテンツ配信サーバ3からは、そのwebページが、例えば、HTML(Hyper Text Markup Language)文章またはBML(Broadcast Markup Language)文章という形態でコンテンツ受信クライアント1Aに送信されてくる。そこで、コンテンツ受信クライアント1Aのコンテンツ処理部51は、そのHTML文章またはBML文章を受信し、その内容を解析し、画像データの形態に変換して、呈示制御部53を介してクライアント呈示部14に供給する。すると、後述するように、クライアント呈示部14は、その画像データに対応する画像、即ち、webページを表示する。
また、例えば、他のコンテンツ受信クライアント1Bを利用する他のユーザからのメールを、ユーザが閲覧する場合、コンテンツ受信クライアント1Bからは、他のユーザにより作成されたメールが、例えば、テキストデータ等の形態でコンテンツ受信クライアント1Aに送信されてくる。そこで、コンテンツ受信クライアント1Aのコンテンツ処理部51は、それを受信し、画像データの形態に変換して、呈示制御部53を介してクライアント呈示部14に供給する。すると、クライアント呈示部14は、その画像データに対応する画像、即ち、他のユーザからのメールを表示する。
さらにまた、例えば、他のコンテンツ受信クライアント1Bを利用する他のユーザ宛のメールを、ユーザが作成して送信する場合、コンテンツ処理部51は、ユーザ入力部11から順次供給される、メール文章や他のコンテンツ受信クライアント1Bのメールアドレス等を構成する文字等を示す信号のそれぞれから、1つのメールをテキストデータの形態で生成する。そして、コンテンツ処理部51は、ユーザ入力部11から送信の指令が供給されると、生成されたメールを、他のコンテンツ受信クライアント1Bに送信する。
時系列情報生成部52は、コンテンツ処理部51が所定のコンテンツに対する1つの処理を実行する毎に、そのコンテンツに関する1以上の情報、対応するコンテンツ処理部51の処理内容を示す1以上の情報、および、その処理期間におけるユーザのコンテクストを示す情報を含む履歴情報(例えば、後述する履歴情報I1乃至I7等)を生成し、保持する。
なお、このようなコンテクストを示す情報は、ユーザ入力部11からの操作内容若しくはコンテクスト検出端末の検出結果またはそれらの組み合わせから生成される情報であって、以下、コンテクスト情報と称する。コンテクスト情報の生成手法、コンテクスト情報の具体例等、コンテクスト情報の詳細については後述する。
また、時系列生成部52は、コンテンツ処理部51によりユーザの操作、即ち、ユーザ入力部11からの入力に対応する処理が所定のコンテンツに対して施される毎に、履歴情報を生成するともいえる。従って、コンテンツ処理部51の処理内容を示す1以上の情報は、ユーザの操作内容を示す1以上の情報であるとも言える。
また、詳細については後述するが、本明細書においては、コンテクストであるユーザの内的または外的状態と、後述する時系列情報の一形態である状態遷移グラフ(有向グラフ)の一要素である状態(後述する図3の状態S1乃至S7等)とを明確に区別する。このため、後者の状態については、後述するように、特に、符号Sを付して説明することになる。
ところで、ある程度の数の履歴情報が保持されると、時系列情報生成部52は、それらの履歴情報を生成順番(コンテンツ処理部12の時間的な処理順番)で順次取得して、取得された順番で並べた履歴情報のそれぞれからなる情報、即ち、時系列に並べられた複数の履歴情報からなる情報(以下、時系列情報と称する。時系列情報の具体例は、例えば、後述する図2参照)を生成する。
次に、時系列情報生成部52は、その時系列情報の形態を、2次元平面上の状態遷移グラフ、即ち、所定の2次元平面に配置される状態(またはノード)とアークとからなる有向グラフ(例えば、後述する図3参照)に変換する。
さらに、時系列情報生成部52は、その時系列情報の形態を、2次元平面上の状態遷移グラフから、仮想N次元(Nは、1以上の整数値)空間に配置される状態遷移グラフ(例えば、後述する図6参照)に変換する。なお、詳細については後述するが、この仮想N次元空間を表現する座標系のN個の軸は、状態遷移グラフに含まれる状態を構成する各要素情報のそれぞれを分類するための基準となる軸として利用される重要な軸である。このため、本明細書においては、このような軸は、後述するように、特に分類軸と称されることになる。
呈示制御部53は、クライアント呈示部14がコンテンツをユーザに呈示することを制御する。例えば、コンテンツ処理部51から、メールやwebページ等に対応する画像データが供給されてきた場合、呈示制御部53は、その画像データをクライアント呈示部14に対応するフォーマットの画像信号に変換して、クライアント呈示部14に供給する。すると、後述するように、クライアント呈示部14は、供給された画像信号に対応する画像、即ち、メールやwebページを表示する。
なお、ここでは、説明の簡略上、コンテンツとして音声は取り扱われていないが、上述したように、音声がコンテンツとして取り扱われることも充分有り得る。このような場合、例えば、コンテンツ処理部51からは、コンテンツデータとして音声データが呈示制御部53に供給されてくることになる。そこで、呈示制御部53は、その音声データをクライアント呈示部14に対応するフォーマットの音声信号に変換して、クライアント呈示部14に供給する。すると、クライアント呈示部14は、後述するように、供給された音声信号に対応する音声、即ち、コンテンツを出力する。
より一般的に説明すると、呈示制御部53は、コンテンツ処理部51から供給されるコンテンツの形態(コンテンツデータ)を、クライアント呈示部14で呈示可能な形態に変換して、クライアント呈示部14に供給する。
なお、例えば、クライアント呈示部14が表示装置として構成される場合、クライアント呈示部14は、当然ながら、コンテンツ以外の画像を表示することも可能である。この場合、呈示制御部53は、クライアント記憶部13に予め記憶されている画像データや、クライアント演算部12自身が生成した画像データ、例えば、後述する図4に示される画像61,62に対応する画像データを、クライアント呈示部14である表示装置に対応するフォーマットの画像信号に変換して、クライアント呈示部14である表示装置に供給することもできる。
クライアント記憶部13は、例えば、ハードディスクやRAM(Random Access Memory)等で構成され、クライアント演算部12の時系列生成部52から供給される、履歴情報や、それらの履歴情報からなる時系列情報(状態遷移グラフの形態)を記憶する。クライアント記憶部13はまた、コンテンツ受信クライアント1Aが実行する各種プログラム、それらのプログラムの実行に必要な各種情報、コンテンツデータ、その他の音声や画像のデータ(例えば、後述する図4に示される画像61,62に対応する画像データ)等様々な情報を記憶する。
クライアント呈示部14は、クライアント演算部12の呈示制御部53の制御に基づいて、コンテンツを出力する。即ち、クライアント呈示部14は、コンテンツをユーザに呈示する。なお、上述したように、コンテンツの形態に応じて、クライアント呈示部14の呈示形態が異なる。換言すると、コンテンツの形態に応じて、呈示部14自身の構成が異なる。例えば、コンテンツが静止画像の場合、クライアント呈示部14は、表示装置やプリンタ等の画像出力機器で構成することができる。また、例えば、コンテンツが音声の場合、スピーカ等の音声出力機器で構成することができる。さらに、例えば、コンテンツが映画やテレビジョン番組のように、動画像とそれに対応する音声の組み合わせである場合、クライアント呈示部14は、画像表示機器と音声出力機器との組み合わせで構成することができる。
以上、コンテンツ受信クライアント1Aの機能的構成例について説明した。
ところで、図1には図示されていないが、コンテンツ受信クライアント1Bも、コンテンツ受信クライアント1Aと同様の機能的構成を有している。従って、コンテンツ受信クライアント1Bの機能的構成の説明については省略する。
なお、以下、コンテンツ受信クライアント1Aとコンテンツ受信クライアント1Bとを個々に区別する必要が無い場合、単に、コンテンツ受信クライアント1と称する。
同様に、コンテクスト検出端末2Aとコンテクスト検出端末2Bとは、基本的に同様の機能的構成(その詳細は後述する)を有している。そこで、以下、コンテクスト検出端末2Aとコンテクスト検出端末2Bとを個々に区別する必要が無い場合、単に、コンテクスト検出端末2と称する。
以下、このコンテクスト検出端末2の機能的構成例について説明する。
機能的構成の観点に立つと、コンテクスト検出端末2には、コンテクスト検出部21とコンテクスト記憶部22とが設けられている。
コンテクスト検出部21は、例えば、ユーザの外的コンテクストを検出するセンサや、その内的コンテクストを検出するセンサとして構成される。
即ち、コンテクスト検出部21とは、1つのコンテクストを検出するセンサのみならず、2以上のコンテクストを検出可能な1つのセンサや、2以上のセンサ(検出可能なコンテクストの種類や数は限定されない)からなるセンサ群も指す。具体的には、例えば、外的コンテクストを検出するセンサとしては、ユーザの現在位置情報を検出するGPS(Global Positioning System)、現在時刻を計時(検出)する時計、または、ユーザの周辺に位置する人や物体を検出する無線通信機器等が挙げられる。また、例えば、内的コンテクストを検出するセンサとしては、脈拍、呼吸数、発汗、または、瞳孔の開き等を検出するセンサが挙げられる。
コンテクストクスト検出部21は、このようにして1以上のコンテクストをリアルタイムで検出または計測し、その結果を、コンテンツ受信クライアント1に提供するとともに、時系列に沿ってコンテクスト記憶部22に記憶させる。
即ち、コンテクスト記憶部22は、例えば、ハードディスクやRAM等で構成され、コンテクスト検出部21から供給される時系列に沿った、各種コンテクストの検出結果を格納する。
なお、コンテクスト検出端末2は、本情報処理システムの必須な構成要素ではない。なぜならば、コンテンツ受信クライアント1Aは、後述するように、コンテクストを示す情報(以下、コンテクスト情報と称する)を生成することになり、このコンテクスト情報の生成時に、元になる情報として、コンテクスト検出端末2Aの検出結果を利用することができるが、これに限定されず、その他、コンテンツ受信クライアント1自身に内蔵されるタイマや時計の計測値や、ユーザ入力部11からの操作信号等も利用することができるからである。
次に、コンテンツ配信サーバ3の機能的構成例について説明する。
コンテンツ配信サーバ3は、例えば、サーバコンピュータで構成される。機能的構成の観点に立つと、コンテンツ配信サーバ3には、コンテンツ配信部31とコンテンツメタデータ記憶部32とが設けられている。
コンテンツ配信部31は、例えば、ここでは、CPUとそれが実行するプログラム、即ち、ハードウエアとソフトウエアとの組み合わせで構成される。勿論、クライアント演算部12は、ソフトウエアまたはハードウエア単体で構成することもできる。
コンテンツ配信部31は、コンテンツをコンテンツ受信クライアント1に配信する。なお、ここでは、上述したように、コンテンツはwebページとされているので、コンテンツ配信部31は、例えば、webページをHTML文章またはBML文章の形態で保持しており、コンテンツ受信クライアント1からアクセスを受け、所定のwebページの取得要求がなされたとき、対応するwebページを、アクセスを受けたコンテンツ受信クライアント1に配信する。
コンテンツメタデータ記憶部32は、例えば、ハードディスクやRAM等で構成され、コンテンツ配信サーバ3が配信可能なコンテンツ、例えば、ここでは、webページのメタデータを記憶している。なお、コンテンツメタデータ記憶部32に記憶されているメタデータは、コンテンツ配信元の運用ルール等に従って適宜更新される。
なお、コンテンツ配信サーバ3は、この情報処理システムの必須な構成要素ではない。なぜならば、コンテンツ受信クライアント1のクライアント記憶部13に保持されたコンテンツとユーザのコンテンツ受信クライアント1に対する操作内容だけを用いて、後述するコンテンツ及びその関連情報の推薦の処理をコンテンツ推薦サーバ4に行わせることができるからである。
次に、コンテンツ推薦サーバ4の機能的構成例について説明する。
コンテンツ推薦サーバ4は、例えば、サーバコンピュータで構成される。機能的構成の観点に立つと、コンテンツ推薦サーバ4には、サーバ記憶部41とサーバ演算部42とが設けられている。
サーバ記憶部41は、例えば、ハードディスクやRAM等で構成され、コンテンツ配信サーバ3のコンテンツメタデータ記憶部32に記憶されている、各コンテンツのそれぞれのメタデータを適宜取得して記憶する。サーバ記憶部41はまた、クライアント記憶部13に記憶されている、上述した時系列情報を示す状態遷移グラフを適宜取得して記憶する。さらに、サーバ記憶部41は、後述するサーバ演算部42で行ったコンテンツ推薦に関する演算結果を記憶する。なお、このコンテンツ推薦に関する演算結果は、コンテンツ受信クライアント1により適宜取得されて、その内部のクライアント記憶部13に記憶される。
サーバ演算部42は、例えば、ここでは、CPUとそれが実行するプログラム、即ち、ハードウエアとソフトウエアとの組み合わせで構成される。勿論、サーバ演算部42は、ソフトウエアまたはハードウエア単体で構成することもできる。
サーバ演算部42は、サーバ記憶部41に記憶されている時系列情報を示す有向グラフを用いて、コンテンツ及びその関連情報の推薦に関する演算を行い、その演算結果をサーバ記憶部41に記憶させる。なお、コンテンツ及びその関連情報の推薦に関する演算の詳細については、図17等を参照して後述する。
学習部サーバ5は、例えば、サーバコンピュータで構成され、クライアント記憶部13に記憶されている、時系列情報を示す状態遷移グラフに含まれる状態の価値(以下、状態価値と称する)と行動の価値(以下、行動価値)を更新させるための学習を行い、その学習結果、即ち、状態価値と行動価値とが更新された状態遷移グラフをクライアント記憶部13に記憶させる。
さらに、学習サーバ5は、このような学習を複数回行った場合、各回の学習結果である状態価値と行動価値の時間変化と確率分布とを考慮して学習することで、最新に更新された状態価値と行動価値のそれぞれの信頼度を求めることができる。
なお、学習サーバ5が実行するこれらの学習やその学習結果、および、それらの学習の対象となる状態価値や行動価値等については後述する。
ところで、図1の例では、コンテンツ受信クライアント1の処理量軽減等を目的として、コンテンツ推薦サーバ4と学習サーバ5とが個別に設けられているが、コンテンツ推薦サーバ4と学習サーバ5とのそれぞれは、この情報処理システムにとって必須な構成要素ではない。なぜならば、コンテンツ推薦サーバ4と学習サーバ5のそれぞれの機能を併せ持つ新たなサーバを、この情報処理システムの構成要素として採用することもできるし、コンテンツ推薦サーバ4と学習サーバ5とを省略して、コンテンツ受信クライアント1に、コンテンツ推薦サーバ4と学習サーバ5とのそれぞれの機能をコンテンツ受信クライアント1に委譲することもできるからである。
また、図1は、機能的構成例を示しているが故、各装置間の接続形態、即ち、コンテンツ受信クライアント1乃至コンテンツ推薦サーバ4のそれぞれの間の接続の形態は特に図示されていないが、その接続の形態は特に限定されない。即ち、接続の形態は、有線であってもよいし無線であってもよいし、その組み合わせでもよい。また、接続の形態は、ネットワークを介在する形態であってもよいし、装置間で直接通信を行う形態であってもよいし、その組み合わせでもよい。さらに、ネットワークを介在する形態の場合も、ネットワークの形態は限定されず、例えば、インターネットやイントラネット等でもよい。この場合も、ネットワークは単一のネットワークに限定されず、複数のネットワークが存在してもよい。
従って、図1には図示されていないが、実際には、コンテンツ受信クライアント1乃至学習サーバ5のそれぞれは、対応する接続形態に応じた通信部もさらに設けていることになる。
以上、図1の情報処理システムの機能的構成例について説明した。
ところで、上述したように、本発明では、あるコンテクスト(時刻、場所、状況、感情等)に置かれたユーザのコンテンツに対する操作や振る舞いは、時系列情報として取得される。例えば、図1の例では、上述したように、時系列情報は、コンテンツ受信クライアント1の時系列情報生成部52により生成(取得)される。この時系列情報の具体例が図2に示されている。即ち、図2は、時系列情報の具体例を示す図である。
図2の例では、時系列情報は、7つの履歴情報I1乃至I7から構成されている。
7つの履歴情報I1乃至I7のそれぞれは、上述したようにユーザが1つのコンテンツに対して所定の操作を行う(使用する)毎に、即ち、図1のコンテンツ処理部51が1つのコンテンツに対する所定の1つの処理を実行する毎に、時系列情報生成部52により1つずつ生成され、保持されていく。
図2の例では、7つの履歴情報I1乃至I7のそれぞれは、コンテクスト情報を含んでいる。具体的には、対象となるコンテンツ(以下、適宜対象コンテンツと称する)に対してユーザが所定の操作を行った(使用した)際のユーザが置かれていたコンテクストを示すコンテクスト情報として、時刻(時:分:秒)、場所([会社],[乗り物]等)、状況([仕事中],[一休み],[昼休み]等)、および、感情([不愉快],[イライラ],[安心],[おなじみ],[希望],[期待],[落胆],[失望],[後悔]等)のそれぞれを示すコンテクスト情報が、7つの履歴情報I1乃至I7のそれぞれに含まれている。
なお、図2に示されるように、1つの履歴情報に含まれる感情を示すコンテクスト情報の個数は任意の個数でよい。即ち、1つの履歴情報に含まれる感情を示すコンテクスト情報の個数は1つでもよいし、複数でもよい。或いは、[不愉快・イライラ]といったように、2以上の類似する感情を1つのコンテクスト情報にまとめてもよい。
さらに、7つの履歴情報I乃至I7のそれぞれは、対象コンテンツに対するコンテンツ処理部51の処理内容、換言すると、対象コンテンツに対するユーザの操作を示す情報を含んでいる。
なお、ここでは、コンテンツ処理部51の処理内容を示す情報の形態は、“対象コンテンツの種類”,“対象コンテンツを特定可能な情報”,“を”,“コンテンツ処理部51の処理の種類”のそれぞれを示す単語がその順番で並べられた文章の形態とされている。
具体的には、例えば、図2の例では、“対象コンテンツの種類”としては、“メール”、または、webページであることを示す“web”のうちのいずれか一方の単語が代入される。
また、例えば、“対象コンテンツを特定可能な情報”としては、コンテンツの名称が代入される。より具体的には、例えば、図2の例では、7つの履歴情報I1乃至I7のそれぞれにおいては、「議事録」、「Re:議事録」、「Sony Drive」、「e+チケット情報」、「e+抽選結果」、「e+からのお知らせ」、「地図です。」のそれぞれが、“対象コンテンツを特定可能な情報”として代入されている。
さらにまた、例えば、“コンテンツ処理部51の処理の種類”としては、メールの受信処理を示す“受信”、メールの送信処理を示す“送信”、webページやメールの表示処理を示す“閲覧”、および、メールの削除処理を示す“削除”等のうちのいずれか1つの単語が代入される。なお、webページやメールの表示処理とは、結局、ユーザの操作の観点からすると、webページやメールを閲覧するために必要なコンテンツ処理部51の処理とも言えるので、ここでは、webページやメールの表示処理を示す単語として、“閲覧”が採用されている。
ところで、上述したように、時系列情報生成部52は、時系列情報の形態を状態遷移グラフ(有向グラフ)に変換することができる。具体的には、例えば、時系列情報生成部52は、時系列情報の形態を、上述した図2に示されるような形態から、図3に示されるような状態遷移グラフ(有向グラフ)に変換することができる。即ち、図3は、状態遷移グラフの具体例を示す図である。
図3に示されるように、状態遷移グラフは状態とアーク(図3中、矢印)とで構成され、各アークのそれぞれには、1つの行動と1つの報酬が付加される。換言すると、状態遷移グラフは、状態、行動、および報酬といった3つの要素(情報)で構成される。
状態とは、あるコンテクストに置かれたユーザがあるコンテンツを使用している状態(その状態を示す情報)を指す。即ち、1つの状態は、そのコンテンツに対応する1つの履歴情報を構成する要素情報のうちの少なくとも一部で表現される。
換言すると、1つの状態に対して、対応する1つの履歴情報の少なくとも一部の要素情報が対応付けられていると捉えることもできる。或いは、1つの状態は、そのコンテンツに対応する1つの履歴情報を構成する要素情報のうちの少なくとも一部を含む情報として構成されると捉えることもできる。
このように、状態遷移グラフの一要素である状態と、上述したコンテクストの1つである状態、即ち、[仕事中],[一休み],[昼休み]といった単語で示される状態とは異なる概念であり、上述したように、明確に区別する必要がある。そこで、以下、状態遷移グラフの一要素である状態には、特に符号Sを付して説明していく。さらに、複数の状態Sを個々に区別する必要がある場合、符号Sの後に、時系列で各状態Sを並べた場合のその配置順番を示す符号を付して説明していく。例えば、図3の例では、その配置順番を示す数値、即ち、1乃至7のそれぞれを付加していく。従って、図3の例では、状態Sn(nは、1乃至7のうちのいずれかの値)は、時系列で各状態S1乃至S7を並べた場合におけるn番目に配置される状態Sを指す。
この状態Snには、図3に示されるように、図2の対応する履歴情報Inに含まれるコンテクスト情報の全てが、「コンテクスト」という種類の情報として含まれている。また、この状態Snには、図2の対応する履歴情報Inに含まれる、コンテンツ処理部51の処理内容、即ち、ユーザの操作を示す情報のうちの、“対象コンテンツの種類”と“対象コンテンツを特定可能な情報”とのそれぞれを示す単語が、「コンテンツ」という種類の情報として含まれる。さらに、この状態Snには、「ディレクトリ」という種類の情報が含まれる。「ディレクトリ」という種類の情報の詳細については後述する。
換言すると、状態Snを構成する各要素情報のそれぞれは、1以上の種類、即ち、図3の例では、「コンテクスト」,「コンテンツ」,「ディレクトリ」といった3つの種類のうちのいずれかに分類可能である。本発明においては、このような状態Snを構成する各要素情報のそれぞれが1以上の種類に分類されることは大きな意味を持つ。そのような1以上の各種類のそれぞれについて、上述した分類軸を対応させることができるからである。ただし、分類軸との関係の詳細については、図5以降の図面を参照して後述する。
以上、状態遷移グラフを構成する3つの要素のうちの状態Sについて説明した。次に、状態遷移グラフを構成する3つの要素のうちの行動について説明する。
行動とは、ある状態Sでユーザがコンテンツに対して行う操作の内容、即ち、ある状態Sでコンテンツ処理部51が実行する処理内容(その内容を示す情報)を指す。
なお、以下、状態Sに対応する行動については、その行動の後に、特に符号aを付して説明していく。さらに、複数の行動aを個々に区別する必要がある場合、符号aの後に、対応する状態S(行動aが付加されているアーク(矢印)の出元である状態S)と同一の符号を付して説明していく。例えば、図3の例では、行動anとは、状態Snでユーザがコンテンツに対して行う操作の内容を示す行動であって、状態Snから次の状態Sn+1へのアーク(矢印)に付加される行動を指す。
行動aには、図2の対応する履歴情報Inに含まれる、コンテンツ処理部51の処理内容、即ち、ユーザの操作を示す情報のうちの、“対象コンテンツの種類”と“コンテンツ処理部51の処理の種類”のそれぞれを示す単語がその順番で並べられた情報が含まれる。
なお、行動a2乃至a4のように、行動aが「web閲覧」という情報を含む場合、即ち、対象コンテンツがwebページであって、そのwebページの表示処理、即ち、webページの閲覧のために必要な処理を行ったことを示す情報が含まれている場合、その行動aには、さらに、そのwebページの取得(受信)方法を示す情報も含まれる。例えば、行動a2に含まれる「メールからのリンク」という情報は、行動a2で表示されたwebページは、あるメールに文章として含まれていたリンク情報をユーザが選択し、その結果として表示されたwebページであることを示している。
以上、状態遷移グラフを構成する3つの要素のうちの状態Sと行動aについて説明した。次に、状態遷移グラフを構成する3つの要素のうちの残りの報酬について説明する。
報酬とは、ある状態Sでユーザがある行動aをとった場合、即ち、ある状態Sでコンテンツ処理部51が行動aに対応する処理を実行した場合の価値を表すスカラー量(以下、評価値と称する)で有り、次の第1の定義乃至第3の定義の何れかによって表される。
即ち、第1の定義とは、ユーザが対象コンテンツに対してユーザ入力部11で操作を行う際に、例えば、クライアント呈示部14に、図4に示されるような選択型GUI(Grafical User Interface)用の画像が表示されている場合、そのGUI用の画像上で入力した情報に対応で受けられた評価値を報酬とする定義である。
即ち、図1のコンテンツ受信クライアント1は、そのクライアント呈示部14に、図4に示されるような選択型GUI用の画像61,62を表示させることができる。そして、コンテンツ受信クライアント1は、ユーザにユーザ入力部11を操作させて、図4の画像61と画像62に含まれるボックスの中から、ユーザの現状のコンテクストに適合する単語を選択させることで、その単語をクライアント演算部12の時系列情報生成部52に入力させることができる。
より具体的には、例えば、図4の画像61の例では、ユーザの内的コンテクストを示す単語として、「興味(ユーザが対象コンテンツを使用した際の評価)」を示す単語(図4の例では、“とてもある”,“ややある”,“どちらでも”,“あまりない”,“まったくない”のうちの、“とてもある”)が、ユーザの判断で(ユーザ入力部11)から入力される。
また、例えば、図4の画像62の例では、ユーザの外的コンテクストを示す単語として、「場所(ユーザが対象コンテンツを使用した場所)」を示す単語(図4の例では、“会社”)と、「状況(上述した状態)」示す単語(図4の例では、“仕事中”)と、「相手(対象コンテンツの送受信先)」を示す単語(図4の例では、“仕事関係”)が、ユーザの判断で(入力部21から)入力される。
さらに、例えば、図4の画像62の例では、ユーザの内的コンテクストを示す単語として、「感情(ユーザが対象コンテンツを使用した際の感情)」を示す単語(図4の例では、“意外・驚き”,“落胆・失望・公開”,“悲しい・寂しい”,“不愉快・イライラ”,“不安・警戒”,“その他”のうちの、“意外・驚き”)が、ユーザの判断で(入力部11から)入力される。
なお、対象コンテンツの名称が、図4の画像62の“対象コンテンツ”の下方に示されるボックスに表示されている。例えば、図4の例では、“Re:特許出願打合せ”という単語が表示されている。この表示内容(単語)は、時系列情報生成部52が、処理中のコンテンツの名称を取得し、それを呈示制御部53を介してこのボックスに表示させたものであってもよいし、逆に、ユーザの判断で(入力部11から)入力された文字がそのボックス内に表示されたものであってもよい。後者の場合、ユーザにより入力された文字(それらの組み合わせである単語)がクライアント演算部12の時系列情報生成部52に供給される。
また、画像61と画像62とは別の画像として図示されているが、1つの画像とされてもよい。
以上のことから、例えば、図4の画像61と画像62とが利用される場合、第1の定義とは、ユーザのコンテクストの入力のうちの、画像61を利用して入力される「興味」を示す単語に対応づけられた評価値を報酬とする定義である。
具体的には、例えば、第1の定義とは、「とてもある」という単語が入力された場合(図4の例の場合)、評価値として「+2」が、「ややある」が入力された場合、評価値として「+1」が、「どちらでも」が入力された場合、評価値として「0」が、「あまりない」が入力された場合、評価値として「-1」が、「まったくない」が入力された場合、評価値として「-2」が、それぞれ与えられたとき、与えられた評価値を報酬とする定義である。
第2の定義とは、コンテクスト検出端末2(図1)の検出結果(ユーザのコンテクスト情報)に対応付けられた評価値を報酬とする定義である。
具体的には、例えば、第2の定義とは、検出結果がポジティブな感情を示すコンテクスト情報の場合、即ち、[楽しい・嬉しい・喜び],[希望・期待],[懐かしい],[安心・おなじみ]等の単語で表されるコンテクスト情報の場合、評価値として「+1」が、検出結果がネガティブな感情を示すコンテクスト情報の場合、即ち、[落胆・失望・後悔],[悲しい・寂しい],[不愉快・イライラ],[不安・警戒]等の単語で表されるコンテクスト情報の場合、評価値として「-1」が、それぞれ与えられたとき、与えられた評価値を報酬とする定義である。
第3の定義とは、行動a、あるいは状態Sと行動aの組み合わせに対応付けられた評価値を報酬とする定義である。
具体的には、例えば、図3の例では、この第3の定義を利用した結果得られる値が、対応する報酬の中に記述されている。即ち、図3の例とは、ある行動aに「メール返信」という情報が含まれている場合、評価値として「+2」が与えられ、ある行動aに「Web閲覧」という情報が含まれている場合、評価値として「+1」が与えられ、それ以外の場合、評価値として「0」が与えられ、与えられた評価値が報酬となる(報酬という情報に、その評価値が含まれる)例である。
なお、以下、行動a(または、その行動aとそれに対応する状態S)に対応する報酬については、その報酬の後に、特に符号rを付して説明していく。さらに、複数の報酬rを個々に区別する必要がある場合、符号rの後に、対応する行動a(図3の例では、符号rの近傍に図示されている行動a)と同一の符号を付して説明していく。例えば、図3の例では、報酬rnとは、対応する状態Snでユーザがある行動anとった場合、即ち、ある状態Snでコンテンツ処理部51が行動anに対応する処理を実行した場合の評価値を指す。
ところで、上述したように、このような時系列情報の一形態である状態遷移グラフに含まれる各状態Sを構成する要素情報は、1以上の種類に分類することが可能である。例えば、図3の例では、状態S1乃至S7のそれぞれを構成する各要素情報は、「コンテクスト」という種類の情報、「コンテンツ」という種類の情報、および、「ディレクトリ」という種類の情報に分類される。
図5は、状態Sを構成する各要素情報が、「コンテクスト」という種類、「コンテンツ」という種類、および、「ディレクトリ」という種類のうちのいずれかの種類に分類可能であることを模式的に示している。ただし、「コンテンツ」という種類は、様々な形態で表現可能であり、図5の例では、それらの形態のうちの「カテゴリ」という形態に変換されている。
図5において、「コンテクスト」という種類zは、上述したように、各状態Sを構成する要素情報のうちの、時刻、場所、状況、感情等を示すコンテクスト情報が分類される種類である。このようなコンテクスト情報、即ち、「コンテクスト」という種類zに分類される要素情報は、図5に示されるように、ユーザ71に関連する情報である。
なお、時刻を示すコンテクスト情報は、例えば、タイムスタンプとして取得可能である。
場所を示すコンテクスト情報は、例えば、コンテクスト検出端末2(図1)を構成するGPSレシーバ等から取得された緯度や経度情報を、ユーザの自宅や勤務地の住所や、その行動パターンに照らし合わせて、[会社],[自宅],[乗り物],[自宅周辺],[会社周辺],[街中],[旅先]といった単語で示される複数のグループのうちの何れかに割り当てることで取得可能である。
状況を示すコンテクスト情報は、例えば、コンテクスト検出端末2を構成する画像認識カメラ等を用いてユーザの置かれた状況を認識して、[仕事中],[一休み],[昼休み],[残業中],[通勤途上],[散歩],[買い物],[レジャー],[団らん],[就寝前]といった単語で示される複数のグループのうちの何れかに割り当てることで取得可能である。
感情を示すコンテクスト情報は、例えば、コンテクスト検出端末2を構成する生体情報センサの検出結果を利用して、[楽しい・嬉しい・喜び],[希望・期待],[懐かしい],[安心・おなじみ],[意外・驚き],[落胆・失望・後悔],[悲しい・寂しい],[不愉快・イライラ],[不安・警戒]といった単語で示される複数のグループのうちの何れかに割り当てることで取得可能である。
なお、場所、状況、または感情を示すコンテクスト情報を取得するためにコンテクスト検出端末2を利用できない場合、上述した図4に示されるような画像61,62等のGUI用画像をクライアント呈示部14に表示させ、ユーザにそのGUI画像からコンテクスト要素を選択させることで、取得が可能である。
あるいはコンテクスト要素を省いた状態の記述による簡易な時系列情報を、後述する本発明のアルゴリズムで学習させることも可能である。
「ディレクトリ」という種類yには、図5に示されるように、各状態Sを構成する要素情報のうちの、対象コンテンツに対応するファイルやデータの格納場所を示す情報が分類される。このように、「ディレクトリ」という種類yに分類される要素情報は、対象コンテンツを扱うアプリケーションソフトウエア72に関連する情報である。なお、ここでは、種類yを示す名称として「ディレクトリ」を使用しているが、対象コンテンツは、コンテンツ受信クライアント1内の所定のディレクトリ構造内のとあるフォルダ等に必ずしも格納されるわけではなく、コンテンツ配信サーバ3の内部といった他の場所に配置されることも有り得る。
「カテゴリ」という種類xは、上述したように、「コンテンツ」という種類の一形態である。即ち、「カテゴリ」という種類xに分類される情報は、各状態Sを構成する要素情報のうちの、対象コンテンツ73自身に関連する情報が分類される。
「カテゴリ」という種類xには、図5に示されるように、各状態Sを構成する要素情報のうちの、対象コンテンツ73のジャンリ、キーワード、出演者等を示す情報が分類される。なお、これらの情報は、対象コンテンツ73自身から得られることもあるし、そのメタデータから得られることもある。
このように、時系列情報の一形態である状態遷移グラフに含まれる各状態Sを構成する要素情報は、1以上の種類に分類可能である。従って、1以上のこれらの種類のそれぞれを軸とする仮想空間を生成することで、各状態Sのそれぞれを、その仮想空間に配置されることができる。即ち、各状態Sのそれぞれの仮想空間中の配置位置を、各軸の座標値で表すことができる。
このような観点に立つと、仮想空間を定義する各軸のそれぞれは、時系列情報の一形態である状態遷移グラフの状態Sを構成する情報を分類するための軸であるとも言える。このため、上述したように、本明細書においては、仮想空間を定義する各軸のそれぞれを、分類軸と称している。また、時系列情報の一形態である状態遷移グラフの状態Sを構成する情報を分類するための各種類のそれぞれと、各分類軸のそれぞれとは、1対1の関係であることから、分類軸は、時系列情報の一形態である状態遷移グラフの状態Sを構成する情報を分類するための種類そのものであるとも言える。
図6は、図5の例に対応させた仮想3次元空間の例を示している。即ち、図6は、「カテゴリ」という分類軸をx軸とし、「ディレクトリ」という分類軸をy軸とし、「コンテクスト」という分類軸をz軸とした定義される仮想3次元空間を示している。
図6に示されるように、とある時系列情報71の一形態である状態遷移グラフに含まれる状態Sa乃至Seを、同図中の仮想3次元空間に配置させることが可能であることがわかる。また、これらの状態Sa乃至Sdのそれぞれに対応する行動aa乃至adのそれぞれが付加されるアークも、ベクトルとして示すことが可能であることがわかる。
即ち、時系列情報71の形態を、2次元上の状態遷移グラフから、N個(Nは、2以上の整数値であって、図3の例では3)の分類軸で定義される仮想N時限空間上に配置される状態遷移グラフに変換することが可能であることがわかる。
このような分類軸は、本発明にとって重要な概念であるので、繰り返しになるが、分類軸について再度説明する。
時系列情報の状態Sを構成する各要素情報のそれぞれは、単一あるいは複数の分類軸によって分類される。
具体的には、例えば、図6に示されるように、コンテクスト、カテゴリ、ディレクトリという3つの分類軸x,y,zのそれぞれに分類される。
コンテクストの分類軸zは、ユーザが対象コンテンツに対して操作を行う局面における時刻、場所、状況、感情等のコンテクスト情報を分類するための軸であり、これらのコンテクスト情報の全組み合わせ、あるいは組み合わせを有限個に分類したグループが粒度(分類軸zの座標)となる。
カテゴリの分類軸xは、対象コンテンツの内容やそのメタデータに応じてコンテンツを分類する軸であり、ジャンル、キーワード、出演者等による組み合わせを有限個に分類したグループを粒度(分類軸xの座標)とする。
ディレクトリの分類軸yは、対象コンテンツの配置位置を分類する軸であり、ファイルディレクトリ、メールフォルダ等による有限個に分類された配置位置(いわゆるディレクトリ階層構造となっている場合、その階層も)を粒度(分類軸yの座標)とする。
以上の分類軸のうち単一あるいは複数の分類軸の組み合わせによって時系列情報を表現することが可能である。具体的には、例えば、図7乃至図9に示されるように、図6の分類軸x,y,zのうち単一あるいは複数の分類軸の組み合わせによって、様々な時系列情報を表現することが可能である。
例えば、図7は、メール操作に関するとある時系列情報を、図6の3つの分類軸x,y,zのそれぞれのうちの、コンテクストの分類軸zの[自宅][団らん]を示す座標に固定して、残り2つの分類軸であるカテゴリの分類軸xとディレクトリの分類軸yとの組み合わせで、即ち、分類軸x,yの平面上に配置される状態遷移グラフで、ユーザの振る舞いを表現している例を示す図である。
図7は、次のようなユーザの振る舞いが表されている。
即ち、カテゴリの分類軸xの[ビジネス]を示す座標に着目すると、換言すると、[ビジネス]という情報に分類されるメールに着目すると、状態Sfから、行動afの結果状態Sgに遷移したことからわかるように、ユーザは、[自宅][団らん]で示されるコンテクストに置かれている場合、[ビジネス]という情報に分類される受信メールを削除する操作、即ち、受信箱にある、[ビジネス]という情報に分類される受信メールをごみ箱に移動する操作を行う傾向にある、というユーザの振る舞いが表されている。
一方、カテゴリの分類軸xの[友人]を示す座標に着目すると、即ち、[友人]という情報に分類されるメールに着目すると、状態Shから、行動ahの結果状態Siに遷移したことからわかるように、ユーザは、[自宅][団らん]で示されるコンテクストに置かれている場合、[友人]という情報に分類されるメール(友人からのメール)が受信されるとすぐ返信のメールを相手(友人)に送る操作、即ち、受信箱にある、[友人]という情報に分類されるメールに基づいて、返信メールを作成し、その返信メールを送信箱に移動させる操作を行う傾向にある、というユーザの振る舞いが表されている。
例えば、図8は、メール操作に関するとある時系列情報を、図6の3つの分類軸x,y,zのそれぞれのうちの、ディレクトリの分類軸yの[趣味・レジャー]を示す座標に固定して、残り2つの分類軸であるカテゴリの分類軸xとコンテクストの分類軸zとの組み合わせで、即ち、分類軸x,zの平面上に配置される状態遷移グラフで、ユーザの振る舞いを表現している例を示す図である。
図8は、次のようなユーザの振る舞いが表されている。
即ち、コンテクストの分類軸zの[会社][仕事中]を示す座標に着目すると、換言すると、メール操作をしていたとときのユーザのコンテクストが[会社][仕事中]で示される場合に着目すると、状態Sjから、行動ajの結果状態Skに遷移したことからわかるように、ユーザは、いま着目されているコンテクストにおかれている場合、振り分りフォルダの1フォルダである[趣味・レジャー]にあるメールのうちの、[出張]というカテゴリで分類されるメールだけを閲覧する操作を行う傾向にある、というユーザの振る舞いが表されている。
一方、コンテクスト分類軸zの[自宅][団らん]を示す座標に着目すると、即ち、メール操作をしていたときのユーザのコンテクストが[自宅][団らん]で示される場合に着目すると、状態Slから、行動alの結果状態Skに遷移したことからわかるように、ユーザは、振り分りフォルダの1フォルダである[趣味・レジャー]にあるメールのうちの、カテゴリに関わらず新着メールの全てをチェックして、そのメールに文章として含まれるリンク先のWebページも閲覧する操作を行う傾向にある、というユーザの振る舞いが表されている。
また、図9は、メール操作に関するとある時系列情報を、図6の3つの分類軸x,y,zのそれぞれのうちの、カテゴリの分類軸xの[研究]を示す座標に固定して、残り2つの分類軸、即ち、ディレクトリの分類軸yとコンテクストの分類軸zとの組み合わせでユーザの振る舞いを表現している例を示す図である。
図9は、次のようなユーザの振る舞いが表されている。
即ち、コンテクストの分類軸zの[会社][仕事中]を示す座標に着目すると、換言すると、メール操作をしていたとときのユーザのコンテクストが[会社][仕事中]で示される場合に着目すると、状態Snから、行動anの結果状態Soに遷移し、さらに、行動aoの結果として状態Sqに遷移したたことからわかるように、ユーザは、いま着目されているコンテクストにおかれている場合、受信メールと同じキーワードを含むような過去のメール、即ち、カテゴリが[研究]に分類されるような、関連する専門用語が含まれる過去のメールを検索して閲覧する操作を行う傾向にある、というユーザの振る舞いが表されている。
一方、コンテクストの分類軸zの[自宅][団らん]を示す座標に着目すると、換言すると、メール操作をしていたとときのユーザのコンテクストが[自宅][団らん]で示される場合に着目すると、状態Sqから、行動aqの結果状態Srに遷移したたことからわかるように、ユーザは、いま着目されているコンテクストにおかれている場合、カテゴリが[研究]に分類される受信メールに文章として含まれるリンク先であるwebページ、例えば、最近ニュースになった研究成果に関するWebページ等を閲覧する操作を行う傾向にある、というユーザの振る舞いが表されている。
ところで、このような時系列情報に含まれれる各履歴情報、換言すると、各履歴情報のそれぞれに対応付けられた各状態Sの連続性は、単一あるいは複数の分類軸の組み合わせからなるルールによって判断されて、とある時系列情報が連続性がないと判断された場合には、その時系列情報は複数の時系列情報(以下、これらの複数の時系列情報を、分離前の時系列情報と区別するために、時系列情報群と称する)に分離される。
このような連続性を判断するルールとしては、図10に示されるような記述が可能である。即ち、図10は、連続性を判断するルールの記述例を示している。
図10の例では、コンテクストの各要素、即ち、各コンテクスト情報(time=時刻、place=場所、occasion=状況、emotion=感情)のそれぞれに対して時系列情報の連続性を判断するルールが記述されている。
具体的には、1行目のコメントに示されるように、数値属性であるtimeに対するルールは、ルール識別子、要素の種別、連続性の閾値(時間を示すスカラー量である秒=sec)
の3つの情報が並べられて記述される。
図10の例では、このルールが2行目に「rule,time,3600,」と記述されており、この記述から、3600sec以上離れている履歴情報は別の時系列情報群として扱う、といったルールがここでは定義されていることがわかる。
また、3行目のコメントに示されるように、名義属性であるplace,occasion,emotionに対するルールは、ルール識別子、要素の種別、連続性判断の指標となるか否か(なる場合には、「1」が記述され、ならない場合には「0」が記述される)の閾値の3つの情報が並べられて記述される。
図10の例では、このルールが4乃至6行目のそれぞれに、「rule,place,1,」,「rule,occasion,0,」,「rule,emotion,0,」とそれぞれ記述されている。これらの記述から、placeが異なる履歴情報は別の時系列情報群として扱う、といったルールがここでは定義されていることがわかる。
このような図10の記述で定義されているルールに従って、上述した図2の時系列情報の連続性を判断した結果が、図11に示されている。
図11に示されるように、履歴情報I3のtime(時刻)が「11:40:00」であり、その次の履歴情報I4のtime(時刻)が「12:45:00」であって、その間3900秒も離れていることから、timeに関するルール(図10の2行目の記述で定義されているルール)に従って、履歴情報I4はその前の履歴情報I3とは別の時系列情報群として取り扱われることになり、その結果、履歴情報I1乃至I3までが時系列情報群81として分離される。
また、履歴情報I6のplace(場所)が「会社」であり、その次の履歴情報I7のplace(場所)が「乗り物」であるといったように、place(場所)が変更されていることから、placeに関するルール(図10の4行目の記述で定義されているルール)に従って、履歴情報I7はその前の履歴情報I6とは別の時系列情報群として取り扱われることになり、その結果、履歴情報I4乃至I6までが時系列情報群82として、履歴情報I7以降の履歴情報が時系列情報群83として、それぞれ分離される。
以上、図1を参照して、本発明が適用される情報処理システムの機能的構成例を説明し、その後、図2乃至図11を参照して、この情報処理システムで取り扱われる時系列情報の詳細について説明した。
次に、図12、図13、および、図17のそれぞれのフローチャートを参照して、図1の情報処理システムにおいて各装置が実行する様々な処理のうちの、本発明が適用される処理、即ち、コンテンツ受信クライアント1が上述した時系列情報を生成する処理(以下、時系列情報生成処理と称する)、学習サーバ5が時系列情報を学習により更新する処理(以下、時系列情報の学習処理と称する)、および、コンテンツ推薦サーバが時系列情報に基づいてコンテンツとその関連情報を推薦する処理(以下、コンテンツ等推薦処理と称する)のそれぞれについて、その順番に個別に説明していく。
はじめに、図12を参照して、時系列情報生成処理について説明する。
ステップS1において、クライアント演算部12の時系列情報生成部52は、コンテンツに対する所定のユーザ操作がなされたか否かを判定する。
コンテンツ処理部51が、ユーザ操作(ユーザ入力部11からの入力)に基づいて、とあるコンテンツに対する所定の処理を実行していた場合、時系列情報生成部52は、ステップS1において、コンテンツに対する所定のユーザ操作がなされたと判定し、ステップS2において、コンテンツ処理部51の処理対象のコンテンツ、即ち、ユーザの操作対象(使用対象)のコンテンツのそのユーザ操作に対する履歴情報を生成し、クライアント記憶部13に記憶させる。その後、処理はステップS3に進められる。
具体的には、例えば、ステップS2の処理で、上述した図2に示される履歴情報I1が生成され、クライアント記憶部13に記憶されることになる。
これに対して、コンテンツ処理部51が特に何の処理も実行していない場合、或いは、処理を実行していても、その処理が、対象の処理とは異なる処理の場合、コンテンツに対する所定のユーザ操作がなされていないと判定され、ステップS2の処理は実行されずに、処理はステップS3に進められる。
ステップS3において、時系列情報生成部52は、所定の数の履歴情報が記憶されたか否かを判定する。
ステップS3において、所定の数の履歴情報が記憶されていないと判定された場合、処理はステップS1に戻され、それ以降の処理が繰り返される。即ち、ステップS1乃至S3のループ処理が1回実行される毎、1つの履歴情報が生成され、クライアント記憶部13に蓄積されていく。
具体的には、例えば、ステップS1乃至S3のループ処理が7回実行された場合、各ループ処理のそれぞれにおいて、上述した図2に示される履歴情報I1乃至I7のそれぞれが1つずつ生成され、クライアント記憶部13に記憶されることになる。
そして、所定の数の履歴情報がクライアント記憶部13に蓄積されると、時系列情報生成部52は、ステップS3において、所定の数の履歴情報が記憶されたと判定し、ステップS4において、それらの履歴情報を含む時系列情報を生成する。
具体的には、例えば、所定の数が7個とされると、ステップS4の処理で、図2に示される履歴情報I1乃至I7のそれぞれを含む時系列情報が、同図に示される形態の時系列情報が生成されることになる。
ステップS5において、時系列情報生成部52は、ステップS4の処理で生成された時系列情報の形態を、状態遷移グラフに変換する。
具体的には、例えば、ステップS5の処理で、上述した図2に示される形態の時系列情報が、図3に示される状態遷移グラフに変換されることになる。
ステップS6において、時系列情報生成部52は、1以上の分類軸を設定し、ステップS5の処理で生成された(形態が変換された)状態遷移グラフに含まれる各状態Sのそれぞれを構成する要素情報を、所定の1つの分類軸に割り当てる。
具体的には、例えば、ステップS6の処理で、図6に示されるように、カテゴリ、ディレクトリ、およびコンテクストといった3種類のそれぞれが、分類軸x,y,zのそれぞれとして設定される。
そして、例えば、時系列情報生成部52は、カテゴリに関しては、各状態Sのそれぞれに含まれるコンテンツの情報を、テキストマイニングの手法、例えばtf/idf(Term Frequency Inverse/Document Frequency)による単語の重み付けを利用して、カテゴリ別辞書の参照によって分類し、有限個のカテゴリを定義して、定義されたカテゴリのそれぞれを分類軸xの所定の座標と対応付け、状態Sのそれぞれを、分類されたカテゴリに対応付けられた座標に割り当てる。
また、例えば、時系列情報生成部52は、コンテクストに関しては、各状態Sのそれぞれに含まれるコンテクスト情報(コンテクスト要素)、具体的には、例えば、状態S1については、それに含まれる[会社],[仕事中],[不愉快・イライラ]等に基づいて、各状態Sのそれぞれを有限個のグループのうちのいずれかに分類する。この有限個のグループのそれぞれは、分類軸zの所定の座標と予め対応付けられており、時系列情報生成部52は、各状態Sのそれぞれを有限個のグループのうちの所定の1つに分類していくことで、結局、状態Sのそれぞれを、分類されたグループに対応付けられた分類軸zの座標に割り当てる。
また、例えば、時系列情報生成部52は、ディレクトリに関しては、各状態Sのそれぞれに対応するコンテンツの配置場所に基づいて、有限個のグループのうちのいずれかに設定する。例えば、図1のクライアント記憶部13の情報の記憶構造が所定のディレクトリ構造となっている場合、全階層のうちの有限個の階層を設定し、設定された階層のそれぞれを1つのグループとすることで、有限個のグループをつくることができる。この場合、設定された階層より下の全階層に含まれるコンテンツは、設定された階層に対応するグループに分類されることになる。より具体的には、例えば、コンテンツがメールの場合、即ち、アプリケーションソフトウエアとしてメーラーが使用されるコンテンツの場合、そのメーラーが使用する[受信箱],[送信箱],[ごみ箱],[xxxフォルダ]のような各フォルダのそれぞれを1つのグループとすることができる。
この有限個のグループのそれぞれは、分類軸yの所定の座標と予め対応付けられており、時系列情報生成部52は、各状態Sのそれぞれを有限個のグループのうちの所定の1つに分類していくことで、結局、状態Sのそれぞれを、分類されたグループに対応付けられた分類軸yの座標に割り当てる。
なお、ディレクトリの要素(グループ)としてはアプリケーションソフトの種別を加えることも可能であり、これにより、例えばメーラーとWebブラウザに対する操作を同じ時系列情報として取り扱うことができる。
このように、ステップS6の処理で、各状態Sのそれぞれが、分類軸x,y,zのそれぞれの所定の座標に割り当てられる。
換言すると、ステップS6の処理とは、時系列情報の形態を、図3に示されるような、2次元平面上に配置される状態遷移グラフから、図6に示されるような、設定されたN個の分類軸で定義される仮想N次元空間上に配置される状態遷移グラフに変換させる処理であるともいえる。即ち、ステップS6の処理とは、各状態Sのそれぞれを、分類軸x,y,zで定義される仮想3次元空間上に点として配置し、各状態Sのそれぞれに対応する点を始点とし、時間的に次の状態Sに対応する点を終点とするベクトルを、各状態Sのそれぞれに対応するアークとし、そのアークに各状態Sのそれぞれに対応する行動aと報酬rとを付加する、といった処理であるともいえる。
このようなステップS6の処理が終了すると、ステップS7において、時系列情報生成部52は、時系列情報をクライアント記憶部13に記憶させる。
これにより、時系列情報生成処理は終了となる。
なお、時系列情報生成処理において、ステップS5とS6の処理は、必須な処理ではなく、学習部サーバ5等が対応する処理を実行するならば、即ち、後述する時系列情報の学習処理において、対応する処理が存在するならば、省略可能である。例えば、ステップS6の処理に対応する処理として、後述する図13の例では、ステップS13の処理が設けられているので、ステップS6の処理は省略可能である。
換言すると、ステップS7の処理で、クライアント記憶部13に記憶される時系列情報の形態は、特に限定されず、上述した図2の形態、図3の形態、および図6の形態のうちのいずれでもよい。さらに、1つの時系列情報を複数の形態でクライアント記憶部13に記憶させることも勿論可能である。
或いは、時系列情報生成部52は、履歴情報を生成するに留まり、即ち、ステップS1乃至S3までとし、学習サーバ5に時系列情報を生成させる(取得させる)ことも可能である。即ち、ステップS4以降の処理を、後述する図13の時系列情報の学習処理に含めることも可能である。
また、ステップS4の処理タイミング、即ち、時系列情報の生成タイミングは、図12の例に限定されず、任意のタイミングでよい。即ち、ステップS3の判定処理は、図12の例では、「所定の数の履歴情報が記憶されたか否か?」といったように、履歴情報の蓄積数に基づく判定処理であるが、図12の例に限定されず、様々な判定処理を採用することができる。具体的には、例えば、ステップS3の判定処理を、「所定の時間(例えば、1週間等)が経過したか?」といったように、経過時間に基づく判定処理としてもよい。
次に、図13を参照して、図1の学習サーバ5が実行する時系列情報の学習処理について説明する。
この時系列情報の学習処理は、上述した時系列情報生成処理と、後述するコンテンツ等推薦処理とのそれぞれとは、独立して個別に実行される。具体的には、例えば、学習サーバ5の動作環境や計算コストを考慮して設定された適度な間隔(1日や1週間毎)に適宜実行される。
ただし、この時系列情報の学習処理を実行するためには、図1のコンテンツ受信クライアント1のクライアント記憶部13には、少なくとも1つの時系列情報が記憶されている必要がある。即ち、上述した図12の時系列情報生成処理が少なくとも1回実行されている必要がある。
ステップS11において、学習サーバ5は、取得対象の時系列情報に対応するコンテンツを取り扱うアプリケーションソフトウエア(対象アプリケーション)を指定する。
ステップS11の処理では、単一あるいは複数のアプリケーションの指定が可能とされており、いまの場合、コンテンツはメールとwebページとされているので、例えば、メールの作成と送受信を行うアプリケーションソフトウエアである「メーラー」と、webページを提示するアプリケーションソフトウエアである「Webブラウザ」等が指定可能となる。
ステップS12の処理で、学習サーバ5は、図1のコンテンツ受信クライアント1のクライアント記憶部13に記憶されている時系列情報のうちの、ステップS11の処理で指定された指定したアプリケーションに関する時系列情報を取得する。
なお、上述したように、クライアント記憶部13に記憶されている時系列情報の形態は特に限定されず、例えば、上述した図2の形態、図3の形態、および、図6の形態のうちのいずれの形態でもよい。
従って、クライアント記憶部13から取得される時系列情報の形態によって、時系列情報の学習処理のステップS12以降の処理内容は若干異なることになる。
例えば、図13の例では、クライアント記憶部13から取得される時系列情報の形態は、図3に示されるように、状態、行動、および報酬を要素とする2次元平面上の状態遷移グラフである場合の時系列情報の学習処理とされている。
このため、ステップS12の後のステップS13の処理として、図12のステップS6に対応する処理、即ち、ステップS12の処理で取得された時系列情報の形態を、図6に示されるような、設定されたN個の分類軸で定義される仮想N次元空間上に配置される状態遷移グラフに変換させる処理が実行される。
従って、学習サーバ5が、図13の例の時系列情報の学習処理を実行する場合、上述した図12のステップS6の処理は省略可能である。
なお、ステップS13の処理の詳細については、図12のステップS6の処理の詳細と同様の説明となってしまうので、ここでは省略する。
次に、ステップS14において、学習サーバ5は、連続性ルールを設定し、ステップS12の処理で取得された時系列情報を1以上の時系列情報群に再分割する。なお、1以上の時系列情報群としたのは、ステップS12の処理で取得された時系列情報自体が連続性の条件(ルール)を既に満たしている場合があり、このような場合、時系列情報の分割は不要であるからである。即ち、「時系列情報を1の時系列情報群に分割する」とは、「時系列情報を分割しない」ことを示している。
具体的には、例えば、ステップS12の処理で、上述した図2に示される連続性情報(実際には、図3に示される状態遷移グラフ)が取得された場合、ステップS14の処理で、上述した図10に示されるような連続性ルールが設定され、その連続性ルールに基づいて、図11に示されるような3つの時系列情報群81乃至83に分割される。なお、このようにして分割された時系列情報群81,82を示す状態遷移グラフが、図14に示されている。
ステップS15において、学習サーバ5は、ステップS14の処理で再分割された時系列情報群を学習対象として、即ち、時系列情報群に含まれる先頭の状態Sから最後尾の状態Sまでを1学習対象として、所定の学習アルゴリズムに従った学習を行うことで、時系列情報群の各状態Sの状態価値のそれぞれと、それらに対応する行動価値のそれぞれを更新する。
なお、この学習で利用する学習アルゴリズムは、特に限定されない。ただし、利用可能な学習アリゴリズムの具体例については、図15と図16を参照して後述する。
ステップS16において、学習サーバ5は、学習を継続するか否かを判定する。
ステップS16において、学習を継続すると判定された場合、処理は、ステップS13に戻され、それ以降の処理が実行される。即ち、ステップS15の処理で学習が再度行われる。
これに対して、ステップS16において、学習を継続しないと判定した場合、学習サーバ5は、ステップS17において、学習結果である、状態価値と行動価値とが更新された時系列情報を、図1のクライアント記憶部13に記憶させる。
これにより、図13の時系列情報の学習処理は終了となる。
次に、図15と図16とを参照して、ステップS15の処理で利用可能な学習アルゴリズムの具体例について説明する。
図15は、状態価値の学習を行うための学習アルゴリズムの一例である、TD学習アルゴリズムを説明する図である。
TD学習アルゴリズムとは、現在の状態価値と、実際に行動して得られた状態の評価(報酬)との誤差に基づいて状態価値を更新するアルゴリズムである。
ところで、ここでは、例えば、各状態Sのそれぞれは、設定された分類軸、具体的には、例えば、図6の例では、分類軸x,y,zのそれぞれ毎の所定の座標に対応付けられているグループのそれぞれに対して、対応する状態Sが有する状態価値V(S)のそれぞれを1つずつ保有している。
具体的には、例えば、カテゴリの分類軸xに着目すると、分類軸xの各座標のそれぞれは、[会議]で示されるグループ、[学会]で示されるグループ、[趣味]で示されるグループ等、有限個のグループに対応付けられている。従って、とある状態Sは、カテゴリを示す分類軸xに対応する状態価値V(S)として、V(会議)、V(学会)、V(趣味)等をそれぞれ有している。
同様に、例えば、ディレクトリを示す分類軸yに着目すると、分類軸yの各座標のそれぞれは、[受信箱]で示されるグループ、[送信箱]で示されるグループ、[ごみ箱]で示されるグループ、[XXXフォルダ]で示されるグループ等、有限個のグループに対応付けられている。従って、とある状態Sは、ディレクトリを示す分類軸yに対応する状態価値V(S)として、V(受信箱)、V(送信箱)、V(ごみ箱)、V(XXXフォルダ)等をそれぞれ有している。
例示はしないが、とある状態Sは、コンテクストを示す分類軸zに対応する状態価値V(S)として、複数のV(“コンテクスト情報のグループ名”)を有している。なお、“コンテクスト情報のグループ名”の中には、[会社][仕事中],[乗り物]等が代入される。即ち、とある状態Sは、コンテクストを示す分類軸zに対応する状態価値V(S)として、V(会社仕事)やV(乗り物)等をそれぞれ有している。
これらの全ての状態価値V(S)の初期値、即ち、上述した図13の時系列情報の学習処理が1度も実行されていない場合の値は、例えば、上述した図12のステップS5の処理のとき、即ち、状態遷移グラフが生成されるときに、状態遷移グラフに含まれる各状態Sのそれぞれに対して設定される値である。
ここでは、説明の簡略上、例えば、その状態Sに割り振られた各座標に対応するグループの状態価値V(S)には、1が初期値として設定され、それら以外の状態価値V(S)には、0が初期値として設定されるとする。具体的には、例えば、図3の状態S1においては、V(受信箱)には「1」が初期値として代入され、V(送信箱)には「0」が初期値として代入される。一方、状態S2においては、V(受信箱)には「0」が初期値として代入され、V(送信箱)には「1」が初期値として代入される。
この場合、TD学習アルゴリズムによると、状態Sから次状態S'に遷移して報酬rとして値Rが得られた時、状態Sの状態価値V(S)のうちの所定の1つ、例えば、V(送信箱)等は、次の式(1)に示されるように更新される。
V(S) → V(S) + α { R + γV(S') - V(S) } ・・・(1)
なお、式(1)において、値αは、学習率を示し、0<α≦1の範囲の値を取る。また、値γは割引率を示し、0≦γ≦1の範囲の値を取る。
従って、例えば、いま、図15に示されるような、状態S0→状態S1→状態S2→状態S3→状態S4と遷移し、状態S3から状態S4に遷移するときに報酬rとして値Rを得た時系列情報(或いは、時系列情報群)があったとする。
また、最後の状態S4の状態価値S(4)は更新されないとする。
この場合、状態S0乃至状態S4の状態価値の初期値をV(Vは0を含む任意の数値)とすると、状態S0乃至状態S4のそれぞれの状態価値V(S0)乃至V(S4)は、次の式(2)と式(3)で表される。
V(S0) = V(S1) = V(S2) = V(S3) = V ・・・(2)
V(S4) = V + R ・・・(3)
この場合、1回目の学習で、状態S3の状態価値V(S3)は、次の式(3)で示されるように更新される。
V(S3) → V(S3) + α { R + γV(S4) - V(S) } ・・・(3)
式(3)によると、α { R + γV(S4) - V(S) }が、図15に示される増量(更新量)を示す△(S31)である。
従って、図15の1回目と記述されている側の枠内に示されるように、1回目の学習後の時系列情報(或いは時系列情報群)においては、状態S2から状態S3に遷移するときには、報酬rとして、この△(S31)が得られたことになる。また、状態S3から状態S4に遷移するときには、報酬rとして、R−△(S31)が得られたことになる。
従って、次の学習、即ち、2回目の学習で、状態S2の状態価値V(S2)と、状態S3の状態価値V(S3)とのそれぞれは、次の式(4)と式(5)のそれぞれで示されるように更新される。
V(S2) → V(S2) + α { △(S31)+ γV(S4) - V(S) } ・・・(4)
V(S3) → V(S3) + α { R−△(S31)+ γV(S4) - V(S) } ・・・(5)
式(4)によると、α { △(S31)+ γV(S4) - V(S) }が、図15に示される増量(更新量)を示す△(S22)である。また、α { R−△(S31)+ γV(S4) - V(S) が、図15に示される増量(更新量)を示す△(S32)である。
従って、2回目の学習後の時系列情報(或いは時系列情報群)は、図15の2回目と記述されている側の枠内に示されるように更新されることになる。
以下、図14に示される時系列データ群81と、時系列データ群82を例にして、TD学習アルゴリズムによる学習の処理の具体例について説明する。
図14の時系列データ群81においては、図3によると、報酬r1としてR1=+2が得られ、報酬r2としてR2=+1が得られ、報酬r3としてR3=0が得られているので、更新前は V(S1)=0, V(S2)=0, V(S3)=0 とし、また、α=0.5, γ=0.9 とすると、状態V(S1),V(S2),V(S3)のそれぞれは、1回の学習で、次の式(6),式(7),式(8)のそれぞれのように更新される。
V(S1)=V(S1)+α×{R1+γ×V(S2)-V(S1)}=0+0.5×{2+0.9×0-0}=1.0 ・・・(6)
V(s2)=V(s2)+α×{R2+γ×V(S3)-V(S2)}=0+0.5×{1+0.9×0-0}=0.5 ・・・(7)
V(s3)=V(s3)+α×{R3-V(s3)}=0+0×{0-0}=0.0 ・・・(8)
従って、更新後はV(S1)=1.0, V(S2)=0.5, V(S3)=0 となる。
同様に、図14の時系列データ群82においては、図3によると、報酬r4としてR4=0が得られ、報酬r5としてR5=-1が得られ、報酬r6としてR6=0が得られているので、更新前は V(S1)=0, V(S2)=0, V(S3)=0 とし、また、α=0.5, γ=0.9 とすると、状態V(S4),V(S5),V(S6)のそれぞれは、1回の学習で、次の式(9),式(10),式(11)のそれぞれのように更新される。
V(S4)=V(S4)+α×{R4+γ×V(S5)-V(S4)}=0+0.5×{0+0.9×0-0}=0 ・・・(9)
V(S5)=V(S5)+α×{R5+γ×V(S6)-V(S5)}=0+0.5×{-1+0.9×0-0}=-0.25・・・(10)
V(S6)=V(S6)+α×{R6-V(S6)}=0+0×{0-0}=0.0 ・・・(11)
従って、更新後はV(S4)=0, V(S5)=-0.25, V(S6)=0 となる。
以上、図15を参照して、状態価値の学習を行うためのTD学習アルゴリズムについて説明した。
次に、図16を参照して、行動価値の学習を行うための学習アルゴリズムの一例であるQ学習アルゴリズムについて説明する。即ち、図16は、Q学習アルゴリズムを説明する図である。
Q学習アリゴリズムとは、ある状態Sに関連付けられた行動価値の中で最大値をとるものに着目し、現在の行動価値と実際に行動して得られた行動の評価(報酬)との誤差に基づいて行動価値を更新する。
ここでは、ある状態Sに関連付けられた行動価値とは、ある状態Sに対応する行動a、即ち、その状態Sから次の状態Sへのアーク(各図中、矢印で示されている)に付加された行動aの行動価値である。即ち、状態Snに着目すると、状態Snに関連付けられた行動価値とは、行動anの行動価値である。
即ち、各行動aのそれぞれは、行動価値Q(S,A)を保有している。このように、行動価値Qは、その行動aに対応する状態Sと、行動aが取り得る行動Aを示す2つの変数で表される。
ただし、行動Aは、定義された所定の1つの行動を示しており、複数種類の行動が定義されている場合、例えば、26種類の行動が定義されている場合、行動A乃至Zといったように表現され、この場合、各行動aのそれぞれは、26個の行動価値Q(S,A)乃至Q(S,Z)を保有することになる。
また、各行動aのそれぞれは、設定された分類軸、例えば、図6の例では、分類軸x,y,zのそれぞれ毎の座標と対応付けられたグループのそれぞれに対して、その行動aが有する行動価値Q(S,A)のそれぞれを1つずつ保有している。
具体的には、例えば、カテゴリを示す分類軸xに着目すると、分類軸xの各座標のそれぞれは、[会議]で示されるグループ、[学会]で示されるグループ、[趣味]で示されるグループ等、有限個のグループに対応付けられている。従って、とある行動aは、カテゴリを示す分類軸xに対応する行動価値として、Q(会議,A)乃至Q(会議,Z)、Q(学会,A)乃至Q(学会,Z)、Q(趣味,A)乃至Q(趣味,Z)等をそれぞれ有している。
同様に、例えば、ディレクトリを示す分類軸yに着目すると、分類軸yの各座標のそれぞれは、[受信箱]で示されるグループ、[送信箱]で示されるグループ、[ごみ箱]で示されるグループ、[XXXフォルダ]で示されるグループ等、有限個のグループに対応付けられている。従って、とある行動aは、ディレクトリを示す分類軸yに対応する行動価値として、Q(受信箱,A)乃至Q(受信箱,Z)、Q(送信箱,A)乃至Q(送信箱,Z)、Q(ごみ箱,A)乃至Q(ごみ箱,Z)、Q(XXXフォルダ,A)乃至Q(XXXフォルダ,Z)等をそれぞれ有している。
例示はしないが、ある行動aは、コンテクストを示す分類軸zに対応する行動価値として、複数のQ(“コンテクスト情報のグループ名”,A)乃至Q(“コンテクスト情報のグループ名”,Z)を有している。なお、“コンテクスト情報のグループ名”の中には、[会社][仕事中],[乗り物]等が代入される。即ち、とある行動aは、コンテクストを示す分類軸zに対応する行動価値として、Q(会社仕事,A)乃至Q(会社仕事,Z)、Q(乗り物,A)乃至Q(乗り物,Z)等をそれぞれ有している。
これらの全ての行動価値Q(S,a)の初期値、即ち、上述した図13の時系列情報の学習処理が1度も実行されていない場合の値は、例えば、上述した図12のステップS5の処理のとき、即ち、状態遷移グラフが生成されるときに、状態遷移グラフに含まれる各状態Sのそれぞれに対して設定される値である。
ここでは、説明の簡略上、例えば、行動aが実際に行った行動Aであって、その行動aと対応する状態Sに割り振られた各座標に対応するグループの状態価値Q(S,A)には、1が初期値として設定され、それら以外の状態価値Q(S,A)には、0が初期値として設定されるとする。具体的には、例えば、図3の状態S1に対応する行動a1においては、Q(受信箱,メール返信)には「1」が初期値として代入され、Q(受信箱,web閲覧(メールからのリンク))、Q(送信箱,メール返信)、Q(送信箱,web閲覧(メールからのリンク))等には「0」が初期値として代入される。一方、図2の状態S2に対応する行動a2においては、Q(送信箱,web閲覧(メールからのリンク))には「1」が初期値として代入され、Q(送信箱,メール返信)、Q(受信箱,メール返信)、Q(受信箱,web閲覧(メールからのリンク))等には「0」が初期値として代入される。
この場合、Q学習アルゴリズムによると、状態Sから、行動aの結果次状態S'に遷移して報酬rとした値Rが得られた時、状態Sに対応する行動 aの行動価値Q(S, A)のうちの所定の1つ、例えば、Q(送信箱,メール返信)等は、次の式(12)のように更新される。
Q(S, A) → Q(S, A) + α { R+ γmaxAQ(S', A) - Q(S, A) } ・・・(12)
式(12)において、値αは、学習率を示し、0<α≦1の範囲の値を取る。また、値γは割引率を示し、0≦γ≦1の範囲の値を取る。また、行動価値maxAQ(S', A)は、次の状態S'に対応する行動a'として、2以上の行動A乃至行動Z(Zは、A以外のアルファベット)を取り得る場合、2以上の行動行動A乃至行動Zのうちの行動Aが最大の行動価値を有しており、その行動価値を示している。
従って、例えば、いま、図15で示される時系列情報(或いは時系列群)と同様の時系列情報、状態S0→状態S1→状態S2→状態S3→状態S4と遷移し、状態S3から状態S4に遷移するときに報酬rとして値Rを得た時系列情報があったとする。
この場合、1回目の学習で、状態S3に対応する行動aの行動価値Q(S3,A)は、次の式(13)で示されるように更新される。
Q(S3, A) → Q(S3, A) + α { R+ γmaxAQ(S4, A) - Q(S3, A) } ・・・(13)
式(12)によると、α { R+ γmaxAQ(S4, A) - Q(S3, A) }が、図16に示される増量(更新量)を示す△(S31,A)である。
従って、図16の1回目と記述されている側の枠内に示されるように、1回目の学習後の時系列情報においては、状態S2から状態S3に遷移するときには、報酬rとして、この△(S31,A)が得られたとみなせることになる。また、状態S3から状態S4に遷移するときには、報酬rとして、R−△(S31,A)が得られたことになる。
従って、次の学習、即ち、2回目の学習で、状態S2に対応する行動a2の行動価値Q(S2,A)と、状態S3に対応する行動a3の行動価値Q(S3,A)とのそれぞれは、次の式(14)と式(15)のそれぞれで示されるように更新される。なお、1回目の学習の終了後の段階では、状態S3に対応する行動a3において、行動価値Q(S3,A)は行動価値Q(S3,B)より大きいとする。
Q(S2, A) → Q(S2, A) + α { △(S31,A)+ γmaxAQ(S3, A) - Q(S2, A) }
・・・(14)
Q(S3, A) → Q(S3, A) + α { R-△(S31,A)+ γmaxAQ(S4, A) - Q(S3, A) }
・・・(15)
式(14)によると、α { △(S31,A)+ γmaxAQ(S3, A) - Q(S2, A) }が、図16に示される増量(更新量)を示す△(S22,A)である。また、α { R-△(S31,A)+ γmaxAQ(S4, A) - Q(S3, A) }が、図16に示される増量(更新量)を示す△(S32,A)である。
従って、2回目の学習後の時系列情報は、図16の2回目と記述されている側の枠内に示されるように更新されることになる。
以下、図14に示される時系列データ群81と、時系列データ群82を例にして、Q学習アルゴリズムによる学習の処理の具体例について説明する。
なお、以下、行動A:メール受信, 行動B:メール返信, 行動C:メール削除, 行動D:メールからのWebリンク(Web閲覧),行動E:URL直接入力(web閲覧), 行動F:Webハイパーリンク(web閲覧) と、それぞれ定義されているとする。
また、更新前の全ての行動価値は0 とし、また、α=0.5, γ=0.9 とする。
図14の時系列データ群81においては、図3によると、状態S1に対応する行動a1は、「メール受信:行動A」であることから、更新の対象は行動価値Q(S1,A)となる。同様に、状態S2に対応する行動a2は、「メールからのリンクによるweb閲覧:行動D」であることから、更新の対象は行動価値Q(S2,D)となる。また、報酬r1としてR1=+2が得られ、報酬r2としてR2=+1が得られている。
従って、行動価値Q(S1,A),Q(S2,D)のそれぞれは、1回の学習で、次の式(16),式(17)のそれぞれのように更新される。
Q(S1,A)=Q(s1,A)+α×{R1+γ×maxQ(S2,A)-Q(S1,A)}=0+0.5×{2+0.9×0-0}=1.0
・・・(16)
Q(S2,D)=Q(S2,D)+α×{R2+γ×maxQ(S3,A)-Q(S2,D)}=0+0.5×{1+0.9×0-0}=0.5
・・・(17)
従って、更新後は、Q(S1,A)=1.0, Q(S2,4)=0.5 となる。
また、図14の時系列データ群82においては、図3によると、状態S4に対応する行動a4は、「ハイパーリンクによるweb閲覧:行動F」であることから、更新の対象は行動価値Q(S4,F)となる。同様に、状態S5に対応する行動a5は、「メール削除:行動C」であることから、更新の対象は行動価値Q(S5,C)となる。また、報酬r4としてR4=0が得られ、報酬r5としてR5=−1が得られている。
従って、行動価値Q(S4,F),Q(S5,C)のそれぞれは、1回の学習で、次の式(18),式(19)のそれぞれのように更新される。
Q(S4,F)=Q(S4,F)+α×{R4+γ×maxQ(S5,A)-Q(S4,F)}=0+0.5×{0+0.9×0-0}=0
・・・(18)
Q(S5,C)=Q(S5,C)+α×{R5+γ×maxQ(S6,A)-Q(S5,C)}=0+0.5×{-1+0.9×0-0}=-0.25
・・・(19)
従って、更新後はQ(S4,F)=0, Q(S5,C)=-0.25 となる。
以上、図13の時系列情報の学習処理について説明し、その後、図14乃至図16を参照して、図13のステップS15の処理で利用される学習アリゴリズムの例として、TD学習アリゴリズムと、Q学習アルゴリズムとについて説明した。
次に、図17を参照して、図1のコンテンツ推薦サーバ3が実行するコンテンツ等推薦処理について説明する。
このコンテンツ等推薦処理は、上述した図12の時系列情報生成処理と図13の時系列情報の学習処理とのそれぞれとは、独立して個別に実行される。
ただし、このコンテンツ等推薦処理処理を実行するためには、図1のコンテンツ受信クライアント1のクライアント記憶部13には、少なくとも1つの時系列情報が記憶されている必要がある。即ち、上述した図12の時系列情報生成処理が少なくとも1回実行されている必要がある。
ステップS41において、コンテンツ推薦サーバ4のサーバ演算部42は、ユーザの現時点の状態Sをコンテンツ受信クライアント1から取得する。
即ち、サーバ演算部42は、このステップS41の開始時点で、コンテンツ受信クライアント1の時系列情報生成部52が生成した履歴情報、ただし、ユーザがコンテンツを使用していない場合にはコンテンツに関する情報を含まない履歴情報を取得し、状態遷移グラフに含まれる状態Sと同様の形態に変換する。即ち、ここでは、1つの履歴情報しか取得されないので、状態遷移グラフは生成されず、1つの状態Sのみが生成される。
そして、サーバ演算部42は、予め設定されている分類軸、即ち、クライアント記憶部13に記憶されている状態遷移グラフに含まれる各状態Sが割り振られた分類軸に、取得された状態Sを割り当てる。
なお、状態Sの分類軸に割り当てる具体的な手法については、上述した図13のステップS6の処理で説明したので、ここでは、その説明は省略する。
具体的には、例えば、上述した図6に示されるように、カテゴリの分類軸x、コンテクストの分類軸z、ディレクトリの分類軸yといった3つの分類軸が設定されている場合、取得された状態Sは、例えば、カテゴリの分類軸xの[会議]に対応する座標、コンテクストの分類軸zの[会社][仕事中]に対応する座標、ディレクトリの分類軸yの[受信箱]に対応する座標のそれぞれが割り当てられる。
換言すると、取得された状態Sは、図6に示されるような、分類軸x,y,zで定義される仮想3次元空間上の所定の点に配置される。
ステップS42において、サーバ演算部42は、推薦のキーと、推薦の対象とのそれぞれとなる分類軸を設定する。
具体的には、例えば、いま、サーバ演算部42は、推薦のキーとして、コンテクストの分類軸zとディレクトリの分類軸yを設定し、推薦の対象として、カテゴリの分類軸xを設定したとする。
なお、推薦のキーと推薦の対象の差異(意味)については、ステップS43乃至S44の処理の説明で後述する。
ステップS43において、サーバ演算部42は、推薦のキーとして設定された分類軸、即ち、いまの場合、コンテクストの分類軸zとディレクトリの分類軸yに着目して、図1のコンテンツ受信クライアント1のクライアント記憶部13に予め保持されている各状態遷移グラフのそれぞれに含まれる各状態Sの中から、ステップS41の処理で取得されたユーザの現時点の状態Sと同一のまたは類似する状態Sを取得する。
即ち、いまの場合、図6に示されるような分類軸x,y,zで定義される仮想空間に配置されている各状態Sを、コンテクストの分類軸zとディレクトリの分類軸yとで定義される2次元平面上に射影した場合に、ステップS41の処理で取得されたユーザの現時点の状態Sを示す点と一致するまたは近傍に配置される点に対応する状態Sを、クライアント記憶部13から取得する。
具体的には、例えば、上述した例では、コンテクストの分類軸zとディレクトリの分類軸yに着目すると、ステップS41の処理で取得されたユーザの現時点の状態Sは、コンテクストの分類軸zの[会社][仕事中]に対応する座標、ディレクトリの分類軸yの[受信箱]に対応する座標のそれぞれが割り当てられるので、図3の例では、同様な座標が割り当てられている状態S1がクライアント記憶部13から取得されることになる。
次に、ステップS44において、取得された状態Sが有する状態価値のうちの、推薦の対象として設定された分類軸の各座標(各グループ)のそれぞれに対応する状態価値と、それらの状態価値のそれぞれに対応する行動価値を取得する。
具体的には、例えば、いまの場合、推薦の対象は、図6のカテゴリを示す分類軸xとされている。また、分類軸xの各座標が、例えば、[会議],[学会],[趣味]等で示されるグループに対応付けられている場合、状態S1における、V(会議)、V(学会)、V(趣味)等が取得される。
また、行動として、例えば、Web閲覧,メール返信,メール受信,メール削除等が定義されている場合、状態S1に対応する行動a1における、Q(会議, Web閲覧),Q(会議, メール返信),Q(会議,メール受信),Q(会議,メール削除),Q(学会, Web閲覧),Q(学会, メール返信),Q(学会,メール受信),Q(学会,メール削除),Q(趣味, Web閲覧),Q(趣味, メール返信),Q(趣味,メール受信),Q(趣味,メール削除)が取得される。
ステップS45において、サーバ演算部42は、ステップS44の処理で取得された状態価値と行動価値とに基づいて、推薦結果(推薦すべきコンテンツとその関連情報)を決定する。
具体的には、例えば、ステップS44の処理で取得された状態価値は、V(会議)=0.6、V(学会)=0.8、V(趣味)=0.3等であり、V(学会)が最高値を有していたとする。この場合、サーバ演算部42は、ステップS41で取得されたユーザの現在の状態Sと同一のまたは類似する状態S1は、カテゴリとして[学会]に分類されるコンテンツの状態価値が最も高いと判断する。即ち、サーバ演算部42は、ユーザの現在の状態Sにとって、[学会]に分類されるコンテンツがもっとも適していると判断する。
さらに、例えば、ステップS44の処理で取得された行動価値は、Q(学会, Web閲覧)=0.9、Q(学会,メール返信)=1.0、Q(学会,メール受信)=0.1、Q(学会,メール削除)=0.3等であり、Q(学会,メール返信) が最高値を有していたとする。この場合、サーバ演算部42は、ステップS41で取得されたユーザの現在の状態Sと同一のまたは類似する状態S1に対応する行動a1は、カテゴリとして[学会]に分類されるメールに対して、メール返信をするといった行動の行動価値が最も高いと判断する。即ち、サーバ演算部42は、ユーザの現在の状態Sにとって、[学会]に分類されるメールに対して、メールを返信する行動がもっとも適していると判断する。
従って、サーバ演算部42は、ユーザの現在の状態Sにとって、[学会]に分類されるメールに対して、メールを返信する行動に適すると推定される、コンテンツとその関連情報を、推薦結果として決定する。
換言すると、サーバ演算部42は、推薦すべきコンテンツとして、カテゴリとして[学会]に分類されるメールを決定し、そのコンテンツの関連情報として、例えば、「推薦すべき次の行動は[メール返信]に対応する行動」を示す情報を決定する。
そして、ステップS46において、サーバ演算部42は、推薦結果の呈示形態(優先度付けやリスト化)を決定し、その呈示形態に変換する。
具体的には、例えば、サーバ演算部42は、優先度付けされリスト化された画像に対応する画像データ、例えば、いまの場合、「学会に関するメールを相手に返信することをお奨めします」といったメッセージを表示させるための画像データを生成する。
或いは、サーバ演算部42は、「学会に関するメールを生成し、相手に返信する」ことを示す、コンテンツ受信クライアント1に対するコマンドを生成してもよい。
ステップS47において、サーバ演算部42は、ステップS44の処理で生成され、ステップS45の処理で呈示形態が変換された推薦結果をサーバ記憶部41に記憶する。
これにより、コンテンツ受信クライアントは、必要なときに、サーバ記憶部41から推薦結果を取得して、クライアント記憶部13に記憶させたり、クライアント呈示部14からユーザに呈示することができる。
ステップS48において、サーバ演算部42は、推薦を継続するか否かを判定する。
ステップS48において、推薦を継続すると判定された場合、処理はステップS42に戻され、それ以降の処理が繰り返される。
具体的には、例えば、今度は、ステップS42の処理で、、推薦のキーとしてカテゴリの分類軸xとディレクトリの分類軸yが設定され、推薦の対象として、コンテクストの分類軸zが設定されたとする。
そして、ステップS43乃至S44の処理の結果として、例えば、ディレクトリの状態価値を示す、V(受信箱)=0.8、V(送信箱)=0.7、 V(ごみ箱)=0.4、V(xxxフォルダ)=0.5等が取得され、V(受信箱)が最高値を有していたとする。この場合、サーバ演算部42は、ステップS41で取得されたユーザの現在の状態Sと同一のまたは類似する状態は、[受信箱]のフォルダにおかれたコンテンツの状態価値が最も高いと判断する。即ち、サーバ演算部42は、ユーザの現在の状態Sにとって、[受信箱]のフォルダにおかれたコンテンツがもっとも適していると判断する。
また、ステップS43乃至S44の処理の結果として、例えば、受信箱における行動価値を示す、Q(信箱, Web閲覧)=0.8、Q(信箱,メール返信)=0.3、Q(信箱,メール受信)=0.1、Q(信箱,メール削除)=0.2が取得され、Q(信箱, Web閲覧)が最高値を有していたとする。この場合、サーバ演算部42は、ステップS41で取得されたユーザの現在の状態Sと同一のまたは類似する状態Sに対する次の行動は、[受信箱]に保存されているメールの文章に含まれるリンク先のwebページを閲覧するといった行動の行動価値が最も高いと判断する。即ち、サーバ演算部42は、ユーザの現在の状態Sにとって、[受信箱]に保存されているメールの文章に含まれるリンク先のwebページを閲覧する行動がもっとも適していると判断する。
従って、サーバ演算部42は、ユーザの現在の状態Sにとって、[受信箱]に保存されているメールの文章に含まれるリンク先のwebページを閲覧する行動に適すると推定される、コンテンツとその関連情報を、推薦結果として決定する。
換言すると、サーバ演算部42は、推薦すべきコンテンツとして、[受信箱]に保存されるメールを決定し、そのコンテンツの関連情報として、例えば、「推薦すべき次の行動は[web閲覧]に対応する行動である」という情報を決定する。
そして、ステップS46において、サーバ演算部42は、推薦結果の呈示形態(優先度付けやリスト化)を決定し、その呈示形態に変換する。
具体的には、例えば、サーバ演算部42は、優先度付けされリスト化された画像に対応する画像データ、例えば、いまの場合、受信箱に保存されたメールのリストと、そのメールの文章として含まれているリンク先(URL等)を表示させるための画像データを生成する。
或いは、サーバ演算部42は、「受信箱に保存されたメールのリストと、そのメールの文章として含まれているリンク先のうちの所定の1つから、webページを取得する」ことを示す、コンテンツ受信クライアント1に対するコマンドを生成してもよい。
ステップS47において、サーバ演算部42は、ステップS44の処理で生成され、ステップS45の処理で呈示形態が変換された推薦結果をサーバ記憶部41に記憶する。
その後、ステップS48において、推薦を継続しないと判定されると、コンテンツ等推薦処理は終了となる。
ところで、図1の学習サーバ5は、学習を複数回繰り返した場合、即ち、図13のステップS15の処理を複数回繰り返し実行した場合、各状態価値V(S)のそれぞれの複数回の更新結果の時間推移と確率分布に基づいて、最新に更新された各状態価値V(S)のそれぞれの信頼度を演算し、各行動価値Q(S,A)のそれぞれの複数回の更新結果の時間推移と確率分布に基づいて、最新に更新された各行動価値Q(S,A)のそれぞれの信頼度を演算することができる。
価値の信頼度とは、状態Sや行動aがどの程度安定しているかの度合い、即ち、過去の更新履歴から未来を予測できる度合い、換言すると、更新がそれ以降(未来に)繰り返された場合、未来の更新結果と、いま現在の状態価値V(S)や行動価値Q(S,A)との最大誤差の度合い(最大誤差が少ない程信頼度が高い)を指す。
従って、価値の信頼度として、例えば統計の指標である分散(過去の更新結果の分散値)を用いることができる。
そして、価値の信頼度が高い(=分散が小さい)場合、最新に更新された状態価値V(S)や行動価値Q(S,A)は、その後、学習による更新処理が繰り返されても、今後その更新値が変動する可能性が低いとみなすことができる。逆に、価値の信頼度が低い(=分散が大きい)場合、最新に更新された状態価値V(S)や行動価値Q(S,A)は、その後、学習による更新処理が繰り返されると、今後変動する可能性が高いとみなすことができる。
図1のコンテンツ推薦サーバ4は、状態価値V(S)や行動価値Q(S,A)に加えて、このような価値の信頼度を考慮したコンテンツとそれに関する情報の推薦を行うことができる。
具体的には、例えば、学習サーバ5により、カテゴリである[会議],[学会],[趣味],[家族],[金融]のそれぞれの状態価値V(会議),V(学会),V(趣味),V(家族),V(金融)のそれぞれに対して、5回の学習が行われて更新された結果、即ち、図13のステップS15の処理が5回繰り返された結果の推移が、図18の「1回目」乃至[5回目]の対応する項目に示されている。
また、それらの5回の結果に対する分散値が「分散」の対応する項目に示されており、その「分散(信頼度の値)」に基づく信頼度の高低が「信頼度」の対応する項目に示されている。なお、ここでは、例えば、説明の簡略上、分散値が0.02よりも大きい場合、信頼度が低いと定義され、分散値が0.02以下の場合、信頼度が高いと定義されているとする。
図18からわかるように、分散の小さい[会議],[学会],[家族]は価値の信頼度が高く、分散の大きい[趣味],[金融]は価値の信頼度が低いことになる。
そこで、コンテンツ推薦サーバ4は、例えば、コンテクスト情報からユーザが忙しい状況であると判断できる場合、価値の信頼度が高い、状態価値V(会議),V(学会),V(家族)を推薦対象として、そのうちの状態価値が閾値以上のものに対応するカテゴリに分類されるコンテンツ、或いは、そのコンテンツに関する情報を推薦することができる。
これに対して、コンテンツ推薦サーバ4は、例えば、ユーザがリラックスしていると判断できる場合、ユニークな推薦結果にも充分に対応できると判断して、価値の信頼度が高い、状態価値V(会議),V(学会),V(家族)のみならず、価値の信頼度が低い、状態価値V(趣味),V(金融)も推薦対象とすることができる。
さらに、例えば、コンテンツ推薦サーバ4は、価値の信頼度が低い、状態価値V(趣味),V(金融)に対しては、単なる閾値との比較ではなく、分散値との兼ね合いも総合的に検討した推薦の決定処理を実行することができる。具体的には、例えば、いま現在のV(金融)、即ち、5回目の更新結果のV(金融)は「0.3」と、他の状態価値に比べて低い値となっている。しかしながら、分散値が「0.077」と非常に大きいことから、即ち、その価値の信頼度が非常に低いことから、コンテンツ推薦サーバ4は、今後の更新でV(金融)は高くなる可能性があるとみなし(実際に、その直前の4回目のV(金融)は「0.8」と高くなっている)、カテゴリ[金融]に分類されるコンテンツ、或いは、そのコンテンツに関する情報を推薦することもできる。
このように、時系列情報における状態価値V(S)と行動価値Q(S,A)のみならず、それらの価値の信頼度も考慮した推薦処理を実行することで、ユーザの振る舞いの目的、例えば、メール処理におけるいわゆる“お決まり”の操作や、何となくWebページをザッピングしたい等の目的を推定することが可能になり、その結果、ユーザの意図に応じて推薦の内容を切り替えることができるばかりか、提示方法やタイミングも切り替えることができる、という効果を奏することが可能になる。
以上、図1の情報処理システムを例として、本発明が適用される情報処理システムについて説明した。
このような本発明が適用される情報処理システムは、次のような様々な効果を奏することが可能になる。
即ち、例えば、時系列情報に複数の分類軸を設定することによって、コンテンツ自体の推薦に加えて、コンテンツの提示タイミングとして相応しいコンテクストやアプリケーションにおけるコンテンツの操作方法等まで推薦することが可能となり、その結果、ユーザに受け入れられ易い推薦サービスを実現できる、という効果である。
また、例えば、コンテクスト情報を含む時系列情報を利用してユーザの嗜好を学習することによって、動的に変化するユーザのコンテクストに適応した精緻なコンテンツ推薦が可能となる、という効果である。
さらに、例えば、複数のアプリケーションを対象として分類軸と連続性ルールに基づく時系列データを学習することによって、ユーザの嗜好データをアプリケーションソフトウエア間で相互に利用して推薦を行うことが可能となり、その結果、推薦システムの汎用性が高まる、という効果である。
ところで、上述した一連の処理は、ハードウエアにより実行させることもできるが、ソフトウエアにより実行させることができる。
この場合、図1のコンテンツ受信クライアント1乃至学習サーバ5のそれぞれは、例えば、図19に示されるようなパーソナルコンピュータで構成することができる。
図19において、CPU(Central Processing Unit)201は、ROM(Read Only Memory)202に記録されているプログラム、または記憶部208からRAM(Random Access Memory)203にロードされたプログラムに従って各種の処理を実行する。RAM203にはまた、CPU201が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU201、ROM202、およびRAM203は、バス204を介して相互に接続されている。このバス204にはまた、入出力インタフェース205も接続されている。
入出力インタフェース205には、キーボード、マウスなどよりなる入力部206、ディスプレイなどよりなる出力部207、ハードディスクなどより構成される記憶部208、および、モデム、ターミナルアダプタなどより構成される通信部209が接続されている。通信部209は、インターネットを含むネットワークを介して他の情報処理装置(図示せず)との通信処理を行う。
入出力インタフェース205にはまた、必要に応じてドライブ210が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどよりなるリムーバブル記録媒体511が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部208にインストールされる。
一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
このようなプログラムを含む記録媒体は、図19に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク(フロッピディスクを含む)、光ディスク(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク(MD(Mini-Disk)を含む)、もしくは半導体メモリなどよりなるリムーバブル記録媒体(パッケージメディア)211により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM202や、記憶部208に含まれるハードディスクなどで構成される。
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置や処理部により構成される装置全体を表すものである。
本実施の形態の情報処理システムの機能的構成例を示すブロック図である。 時系列情報の例を示す図である。 図2の時系列情報に対応する状態遷移グラフの例を示す図である。 コンテクストを入力するための画像の例を示す図である。 分類軸の設定例を説明する図である。 図5で設定され3つの分類軸に対して、所定の状態遷移グラフの各状態Sを割り当てた例、即ち、3つの分類軸で定義される仮想3次元空間上に所定の状態遷移グラフを表現した例を説明する図である。 図5で設定され3つの分類軸に対して、所定の1つの分類軸を固定し、残りの2つの分類軸で所定の状態遷移グラフを表現した例を説明する図である。 図5で設定され3つの分類軸に対して、所定の1つの分類軸を固定し、残りの2つの分類軸で所定の状態遷移グラフを表現した例を説明する図である。 図5で設定され3つの分類軸に対して、所定の1つの分類軸を固定し、残りの2つの分類軸で所定の状態遷移グラフを表現した例を説明する図である。 時系列情報の連続性ルールの記述例を示す図である。 図10の連続性ルールに従って、図2の時系列情報を3つの時系列情報群に分割した例を示す図である。 図1のコンテンツ受信サーバが実行する時系列情報生成処理例を説明すフローチャートである。 図1の学習サーバが実行する時系列情報の学習処理例を説明するフローチャートである。 図10の連続性ルールに従って、分割された図12の3つの時系列情報群のうちの、時間的に先頭の2つを状態遷移グラフで表現した例を示す図である。 図13の学習処理で利用される学習アルゴリズムの例を示す図である。 図13の学習処理で利用される学習アルゴリズムの他の例を示す図である。 図1のコンテンツ推薦サーバが実行するコンテンツ等推薦処理例を説明するフローチャートである。 図13の学習処理の結果例を示す図である。 本発明が適用される情報処理装置のハードウエアの構成例を示すブロック図である。
符号の説明
1A,1B コンテンツ受信クライアント, 2A,2B コンテクスト検出端末, 3 コンテンツ配信サーバ, 4 コンテンツ推薦サーバ, 5 学習サーバ, 11 ユーザ入力部, 12 クライアント演算部, 13 クライアント記憶部, 14 クライアント呈示部, 21 コンテクスト検出部, 22 コンテクスト記憶部, 31 コンテンツ配信部, 32 コンテンツメタデータ記憶部, 41 サーバ記憶部, 42 サーバ演算部, 201 CPU, x,y,z 分類軸, S1乃至S7,Sa乃至Sq 状態, a1乃至a6,aa乃至aq 行動, r1乃至r5 報酬

Claims (15)

  1. 状態遷移グラフを更新して学習し、学習した前記状態遷移グラフを利用してコンテンツを推薦する場合の前記状態遷移グラフを生成する情報処理装置であって、
    ユーザの各操作のそれぞれに応じて、対応する処理を前記コンテンツに対して施すコンテンツ処理手段と、
    前記コンテンツ処理手段により前記ユーザの操作に対応する処理が前記コンテンツに対して施される毎に、前記ユーザの操作対象の前記コンテンツに関する1以上の情報、前記ユーザの操作内容を示す1以上の情報、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成する履歴情報生成手段と、
    前記履歴情報生成手段により生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成する状態遷移生成手段と、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、前記状態遷移生成手段により生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類する分類手段と
    前記ユーザの現時点の状態を取得する状態取得手段と、
    前記状態取得手段により取得された前記状態に含まれる前記N種類の前記軸のうちの所定のM種類(Mは、N未満の整数値)の前記軸を推薦キーとして設定するとともに、前記推薦キーとは異なる推薦の対象としての前記軸を設定する設定手段と、
    前記推薦キーとしての前記軸に着目して、前記状態遷移生成手段により生成された前記状態遷移グラフに含まれる複数の前記状態の中から、前記状態取得手段により取得された前記状態と同一または類似する前記状態を決定する状態決定手段と、
    前記状態決定手段により決定された前記状態のうち、前記推薦の対象としての前記軸の座標の状態価値とそれに対応する行動価値を取得するとともに、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する推薦手段と
    を備えることを特徴とする情報処理装置。
  2. 前記状態遷移生成手段により生成された前記状態遷移グラフに含まれる第1の状態に対応する前記履歴情報を構成する前記要素情報のうちの、前記分類手段により前記N種類のうちの所定のM種類(Mは、N以下の整数値)のそれぞれとして分類された前記要素情報の特徴と、
    前記第1の状態の次に配置される第2の状態に対応する前記履歴情報を構成する前記要素情報のうちの、前記分類手段により前記M種類のそれぞれとして分類された前記要素情報の特徴とを比較し、
    その比較結果と予め定められた連続性のルールに基づいて、前記ルールに違反しないと判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在すると判定し、前記ルールに違反すると判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在しないと判定するとともに、前記第1の状態と前記第2の状態とを異なる時系列情報群として分類する連続性判断手段
    をさらに備えることを特徴とする請求項1に記載の情報処理装置。
  3. 状態遷移グラフを更新して学習し、学習した前記状態遷移グラフを利用してコンテンツを推薦する場合の前記状態遷移グラフを生成するとともに、ユーザの各操作のそれぞれに応じて、対応する処理を前記コンテンツに対して施す情報処理装置の情報処理方法であって、
    前記情報処理装置により前記ユーザの操作に対応する処理が前記コンテンツに対して施される毎に、前記ユーザの操作対象の前記コンテンツに関する1以上の情報、前記ユーザの操作内容を示す1以上の情報、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成する履歴情報生成ステップと、
    前記履歴情報生成ステップの処理により生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成する状態遷移生成ステップと、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、前記状態遷移生成ステップの処理により生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類する分類ステップと
    前記ユーザの現時点の状態を取得する状態取得ステップと、
    前記状態取得ステップの処理により取得された前記状態に含まれる前記N種類の前記軸のうちの所定のM種類(Mは、N未満の整数値)の前記軸を推薦キーとして設定するとともに、前記推薦キーとは異なる推薦の対象としての前記軸を設定する設定ステップと、
    前記推薦キーとしての前記軸に着目して、前記状態遷移生成ステップの処理により生成された前記状態遷移グラフに含まれる複数の前記状態の中から、前記状態取得ステップの処理により取得された前記状態と同一または類似する前記状態を決定する状態決定ステップと、
    前記状態決定ステップの処理により決定された前記状態のうち、前記推薦の対象としての前記軸の座標の状態価値とそれに対応する行動価値を取得するとともに、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する推薦ステップと
    を含むことを特徴とする情報処理方法。
  4. 状態遷移グラフを更新して学習し、学習した前記状態遷移グラフを利用してコンテンツを推薦する場合の前記状態遷移グラフを生成するとともに、ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施すコンテンツ処理装置を制御するコンピュータに実行させるプログラムであって、
    前記情報処理装置により前記ユーザの操作に対応する処理が前記コンテンツに対して施される毎に、前記ユーザの操作対象の前記コンテンツに関する1以上の情報、前記ユーザの操作内容を示す1以上の情報、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成する履歴情報生成ステップと、
    前記履歴情報生成ステップの処理により生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成する状態遷移生成ステップと、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、前記状態遷移生成ステップの処理により生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類する分類ステップと
    前記ユーザの現時点の状態を取得する状態取得ステップと、
    前記状態取得ステップの処理により取得された前記状態に含まれる前記N種類の前記軸のうちの所定のM種類(Mは、N未満の整数値)の前記軸を推薦キーとして設定するとともに、前記推薦キーとは異なる推薦の対象としての前記軸を設定する設定ステップと、
    前記推薦キーとしての前記軸に着目して、前記状態遷移生成ステップの処理により生成された前記状態遷移グラフに含まれる複数の前記状態の中から、前記状態取得ステップの処理により取得された前記状態と同一または類似する前記状態を決定する状態決定ステップと、
    前記状態決定ステップの処理により決定された前記状態のうち、前記推薦の対象としての前記軸の座標の状態価値とそれに対応する行動価値を取得するとともに、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する推薦ステップと
    を含むことを特徴とするプログラム。
  5. 他の情報処理装置が、
    ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、前記ユーザの操作対象の前記コンテンツに関する1以上の情報、前記ユーザの操作内容を示す1以上の情報、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成し、
    生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類した場合、
    前記他の情報処理装置により生成された前記状態遷移グラフを利用して前記コンテンツを推薦する処理を実行する情報処理装置であって、
    前記ユーザの現時点の状態を取得する状態取得手段と、
    前記状態取得手段により取得された前記状態に含まれる前記N種類の前記軸のうちの所定のM種類(Mは、N未満の整数値)の前記軸を推薦キーとして設定するとともに、前記推薦キーとは異なる推薦の対象としての前記軸を設定する設定手段と、
    前記推薦キーとしての前記軸に着目して、前記他の情報処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の中から、前記状態取得手段により取得された前記状態と同一または類似する前記状態を決定する状態決定手段と、
    前記状態決定手段により決定された前記状態のうち、前記推薦の対象としての前記軸の座標の状態価値とそれに対応する行動価値を取得するとともに、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する推薦手段と
    を備えることを特徴とする情報処理装置。
  6. 他の情報処理装置が、
    ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、前記ユーザの操作対象の前記コンテンツに関する1以上の情報、前記ユーザの操作内容を示す1以上の情報、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成し、
    生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類した場合、
    前記他の情報処理装置により生成された前記状態遷移グラフを利用して前記コンテンツを推薦する処理を実行する情報処理装置の情報処理方法であって、
    前記ユーザの現時点の状態を取得する状態取得ステップと、
    前記状態取得ステップの処理により取得された前記状態に含まれる前記N種類の前記軸のうちの所定のM種類(Mは、N未満の整数値)の前記軸を推薦キーとして設定するとともに、前記推薦キーとは異なる推薦の対象としての前記軸を設定する設定ステップと、
    前記推薦キーとしての前記軸に着目して、前記他の情報処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の中から、前記状態取得ステップにより取得された前記状態と同一または類似する前記状態を決定する状態決定ステップと、
    前記状態決定ステップの処理により決定された前記状態のうち、前記推薦の対象としての前記軸の座標の状態価値とそれに対応する行動価値を取得するとともに、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する推薦ステップと
    を含むことを特徴とする情報処理方法。
  7. コンテンツ処理装置が、
    ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、前記ユーザの操作対象の前記コンテンツに関する1以上の情報、前記ユーザの操作内容を示す1以上の情報、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す1以上の情報のそれぞれを要素情報として含む履歴情報を順次生成し、
    生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類した場合、
    前記コンテンツ処理装置により生成された前記状態遷移グラフを利用して前記コンテンツを推薦する処理を制御するコンピュータに実行させるプログラムであって、
    前記ユーザの現時点の状態を取得する状態取得ステップと、
    前記状態取得ステップの処理により取得された前記状態に含まれる前記N種類の前記軸のうちの所定のM種類(Mは、N未満の整数値)の前記軸を推薦キーとして設定するとともに、前記推薦キーとは異なる推薦の対象としての前記軸を設定する設定ステップと、
    前記推薦キーとしての前記軸に着目して、前記コンテンツ処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の中から、前記状態取得ステップにより取得された前記状態と同一または類似する前記状態を決定する状態決定ステップと、
    前記状態決定ステップの処理により決定された前記状態のうち、前記推薦の対象としての前記軸の座標の状態価値とそれに対応する行動価値を取得するとともに、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する推薦ステップと
    を含むことを特徴とするプログラム。
  8. 他の情報処理装置が、
    ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、前記ユーザの操作対象の前記コンテンツに関する情報、前記ユーザの操作内容を示す情報、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、
    生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、
    生成された前記状態遷移グラフに含まれる複数の前記状態のそれぞれに対して、前記ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の前記状態のそれぞれに対応する前記行動のそれぞれに対して、前記ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた前記行動またはその行動と対応する状態との組み合わせに対する前記状態価値および前記行動価値を報酬として与えた場合、
    前記他の情報処理装置により生成された、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する処理を実行するための前記状態遷移グラフを学習する情報処理装置であって、
    前記コンテンツを取り扱うアプリケーションを指定する指定手段と、
    前記指定手段により指定された前記アプリケーションに関する前記状態遷移グラフを取得する取得手段と、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、前記他の情報処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類する分類手段と、
    前記分類手段により分類された前記状態遷移グラフに含まれる第1の状態と、前記第1の状態の次に配置される第2の状態に対応する前記履歴情報を構成する前記要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、前記ルールに違反しないと判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在すると判定し、前記ルールに違反すると判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在しないと判定するとともに、前記第1の状態と前記第2の状態とを異なる時系列情報群として分類する連続性判断手段と、
    前記連続性判断手段により、連続性が存在すると判定された複数の前記状態のそれぞれについて前記状態価値と前記報酬との誤差、および、前記行動価値と前記報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、前記状態遷移グラフに含まれる、複数の前記状態のそれぞれに対する前記状態価値と、複数の前記行動のそれぞれに対する前記行動価値とを更新する学習手段と
    を備えることを特徴とする情報処理装置。
  9. 前記学習手段は、前記学習を複数回繰り返した場合、さらに、所定の前記状態価値の前記複数回の更新結果の時間推移と確率分布に基づいて、最新に更新された前記状態価値の信頼度として分散値を演算するとともに、所定の前記行動価値の前記複数回の更新結果の時間推移と確率分布に基づいて、最新に更新された前記行動価値の信頼度として分散値を演算する
    ことを特徴とする請求項に記載の情報処理装置。
  10. 他の情報処理装置が、
    ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、前記ユーザの操作対象の前記コンテンツに関する情報、前記ユーザの操作内容を示す情報
    、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、
    生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、
    生成された前記状態遷移グラフに含まれる複数の前記状態のそれぞれに対して、前記ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の前記状態のそれぞれに対応する前記行動のそれぞれに対して、前記ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた前記行動またはその行動と対応する状態との組み合わせに対する前記状態価値および前記行動価値を報酬として与えた場合、
    前記他の情報処理装置により生成された、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する処理を実行するための前記状態遷移グラフを学習する情報処理装置の情報処理方法であって、
    前記コンテンツを取り扱うアプリケーションを指定する指定ステップと、
    前記指定ステップの処理により指定された前記アプリケーションに関する前記状態遷移グラフを取得する取得ステップと、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、前記他の情報処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類する分類ステップと、
    前記分類ステップの処理により分類された前記状態遷移グラフに含まれる第1の状態と、前記第1の状態の次に配置される第2の状態に対応する前記履歴情報を構成する前記要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、前記ルールに違反しないと判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在すると判定し、前記ルールに違反すると判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在しないと判定するとともに、前記第1の状態と前記第2の状態とを異なる時系列情報群として分類する連続性判断ステップと、
    前記連続性判断ステップの処理により、連続性が存在すると判定された複数の前記状態のそれぞれについて前記状態価値と前記報酬との誤差、および、前記行動価値と前記報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、前記状態遷移グラフに含まれる、複数の前記状態のそれぞれに対する前記状態価値と、複数の前記行動のそれぞれに対する前記行動価値とを更新する学習ステップと
    を含むことを特徴とする情報処理方法。
  11. コンテンツ処理装置が、
    ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、前記ユーザの操作対象の前記コンテンツに関する情報、前記ユーザの操作内容を示す情報
    、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、
    生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、
    生成された前記状態遷移グラフに含まれる複数の前記状態のそれぞれに対して、前記ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の前記状態のそれぞれに対応する前記行動のそれぞれに対して、前記ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた前記行動またはその行動と対応する状態との組み合わせに対する前記状態価値および前記行動価値を報酬として与えた場合、
    前記コンテンツ処理装置により生成された、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する処理を制御するための前記状態遷移グラフを学習するコンピュータに実行させるプログラムであって、
    前記コンテンツを取り扱うアプリケーションを指定する指定ステップと、
    前記指定ステップの処理により指定された前記アプリケーションに関する前記状態遷移グラフを取得する取得ステップと、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、前記コンテンツ処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類する分類ステップと、
    前記分類ステップの処理により分類された前記状態遷移グラフに含まれる第1の状態と、前記第1の状態の次に配置される第2の状態に対応する前記履歴情報を構成する前記要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、前記ルールに違反しないと判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在すると判定し、前記ルールに違反すると判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在しないと判定するとともに、前記第1の状態と前記第2の状態とを異なる時系列情報群として分類する連続性判断ステップと、
    前記連続性判断ステップの処理により、連続性が存在すると判定された複数の前記状態のそれぞれについて前記状態価値と前記報酬との誤差、および、前記行動価値と前記報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、前記状態遷移グラフに含まれる、複数の前記状態のそれぞれに対する前記状態価値と、複数の前記行動のそれぞれに対する前記行動価値とを更新する学習ステップと
    を含むことを特徴とするプログラム。
  12. 第1の情報処理装置が、
    ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、前記ユーザの操作対象の前記コンテンツに関する情報、前記ユーザの操作内容を示す情報、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、
    生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、
    生成された前記状態遷移グラフに含まれる複数の前記状態のそれぞれに対して、前記ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の前記状態のそれぞれに対応する前記行動のそれぞれに対して、前記ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた前記行動またはその行動と対応する状態との組み合わせに対する前記状態価値および前記行動価値を報酬として与え、
    第2の情報処理装置が、
    前記コンテンツを取り扱うアプリケーションを指定し、
    指定された前記アプリケーションに関する前記状態遷移グラフを取得し、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、前記第1の情報処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類し、
    前記状態遷移グラフに含まれる第1の状態と、前記第1の状態の次に配置される第2の状態に対応する前記履歴情報を構成する前記要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、前記ルールに違反しないと判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在すると判定し、前記ルールに違反すると判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在しないと判定するとともに、前記第1の状態と前記第2の状態とを異なる時系列情報群として分類し、
    連続性が存在すると判定された複数の前記状態のそれぞれについて、前記状態価値と前記報酬との誤差、および、前記行動価値と前記報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、前記状態遷移グラフに含まれる、複数の前記状態のそれぞれに対する前記状態価値と、複数の前記行動のそれぞれに対する前記行動価値とを更新した場合、
    前記第1の情報処理装置により生成され、前記第2の情報処理装置によりその内容が更新された前記状態遷移グラフを利用して前記コンテンツを推薦する処理を実行する情報処理装置であって、
    前記ユーザの現時点の状態を取得する状態取得手段と、
    前記状態取得手段により取得された前記状態に含まれる前記N種類の前記軸のうちの所定のM種類(Mは、N未満の整数値)の前記軸を推薦キーとして設定するとともに、前記推薦キーとは異なる推薦の対象としての前記軸を設定する設定手段と、
    前記推薦キーとしての前記軸に着目して、前記第1の情報処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の中から、前記状態取得手段により取得された前記状態と同一または類似する前記状態を決定する状態決定手段と、
    前記状態決定手段により決定された前記状態のうち、前記推薦の対象としての前記軸の座標の前記状態価値とそれに対応する前記行動価値を取得するとともに前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する推薦手段と
    を備えることを特徴とする情報処理装置。
  13. 前記推薦手段は、
    前記第2の情報処理装置が、前記学習を複数回繰り返して、所定の前記状態価値の前記複数回の更新結果の時間推移と確率分布に基づいて、最新に更新された前記状態価値の信頼度として分散値を演算するとともに、所定の前記行動価値の前記複数回の更新結果の時間推移と確率分布に基づいて、最新に更新された前記行動価値の信頼度として分散値を演算した場合、
    前記状態決定手段により決定された前記状態に対する前記状態価値と、その状態に対応する前記行動に対する行動価値とに加えてさらに、前記第2の情報処理装置により演算された、その状態価値の信頼度と、その行動価値の信頼度とに基づいて、信頼度としての分散値が所定の値より低い前記状態価値および前記行動価値を現時点の前記ユーザにとって相応しいと判断されるコンテンツを推薦する
    ことを特徴とする請求項1に記載の情報処理装置。
  14. 第1の情報処理装置が、
    ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、前記ユーザの操作対象の前記コンテンツに関する情報、前記ユーザの操作内容を示す情報、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、
    生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、
    生成された前記状態遷移グラフに含まれる複数の前記状態のそれぞれに対して、前記ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の前記状態のそれぞれに対応する前記行動のそれぞれに対して、前記ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた前記行動またはその行動と対応する状態との組み合わせに対する前記状態価値および前記行動価値を報酬として与え、
    第2の情報処理装置が、
    前記コンテンツを取り扱うアプリケーションを指定し、
    指定された前記アプリケーションに関する前記状態遷移グラフを取得し、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、前記第1の情報処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類し、
    前記状態遷移グラフに含まれる第1の状態と、前記第1の状態の次に配置される第2の状態に対応する前記履歴情報を構成する前記要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、前記ルールに違反しないと判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在すると判定し、前記ルールに違反すると判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在しないと判定するとともに、前記第1の状態と前記第2の状態とを異なる時系列情報群として分類し、
    連続性が存在すると判定された複数の前記状態のそれぞれについて、前記状態価値と前記報酬との誤差、および、前記行動価値と前記報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、前記状態遷移グラフに含まれる、複数の前記状態のそれぞれに対する前記状態価値と、複数の前記行動のそれぞれに対する前記行動価値とを更新した場合、
    前記第1の情報処理装置により生成され、前記第2の情報処理装置によりその内容が更新された前記状態遷移グラフを利用して前記コンテンツを推薦する処理を実行する情報処理装置の情報処理方法であって、
    前記ユーザの現時点の状態を取得する状態取得ステップと、
    前記状態取得ステップの処理により取得された前記状態に含まれる前記N種類の前記軸のうちの所定のM種類(Mは、N未満の整数値)の前記軸を推薦キーとして設定するとともに、前記推薦キーとは異なる推薦の対象としての前記軸を設定する設定ステップと、
    前記推薦キーとしての前記軸に着目して、前記第1の情報処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の中から、前記状態取得ステップの処理により取得された前記状態と同一または類似する前記状態を決定する状態決定ステップと、
    前記状態決定ステップの処理により決定された前記状態のうち、前記推薦の対象としての前記軸の座標の前記状態価値とそれに対応する前記行動価値を取得するとともに、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する推薦ステップと
    を含むことを特徴とする情報処理方法。
  15. コンテンツ処理装置が、
    ユーザの各操作のそれぞれに応じて、対応する処理をコンテンツに対して施す毎に、前記ユーザの操作対象の前記コンテンツに関する情報、前記ユーザの操作内容を示す情報、並びに、前記ユーザの操作時点の時刻、場所、状況、および前記ユーザの感情の情報を含むコンテクストを示す情報のそれぞれを要素情報として含む履歴情報を順次生成し、
    生成された複数の前記履歴情報のそれぞれに対して、前記要素情報のうちの少なくとも一部を含む情報として構成される1つの状態を対応付けるとともに、対応付けられた前記状態で前記ユーザが前記コンテンツに対して行う操作の内容を示す行動を対応付けることで、複数の前記状態のそれぞれの時間的な遷移を示す状態遷移グラフを生成し、
    生成された前記状態遷移グラフに含まれる複数の前記状態のそれぞれに対して、前記ユーザの評価値としての状態価値を示す予め定められた1以上の重み値を与え、複数の前記状態のそれぞれに対応する前記行動のそれぞれに対して、前記ユーザの評価値としての行動価値を示す予め定められた1以上の重み値を与え、実際に行動して得られた前記行動またはその行動と対応する状態との組み合わせに対する前記状態価値および前記行動価値を報酬として与え、
    学習装置が、
    前記コンテンツを取り扱うアプリケーションを指定し、
    指定された前記アプリケーションに関する前記状態遷移グラフを取得し、
    予め設定されたN(Nは、2以上の整数値)種類の軸から定義される仮想N次元空間を構築し、前記第1の情報処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の前記要素情報を、前記N個の軸のそれぞれにおける座標に割り当てることで分類し、
    前記状態遷移グラフに含まれる第1の状態と、前記第1の状態の次に配置される第2の状態に対応する前記履歴情報を構成する前記要素情報を比較し、比較結果と予め定められた連続性のルールに基づいて、前記ルールに違反しないと判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在すると判定し、前記ルールに違反すると判定された場合、前記第1の状態と前記第2の状態との間に連続性が存在しないと判定するとともに、前記第1の状態と前記第2の状態とを異なる時系列情報群として分類し、
    連続性が存在すると判定された複数の前記状態のそれぞれについて、前記状態価値と前記報酬との誤差、および、前記行動価値と前記報酬との誤差に基づいて所定の学習アルゴリズムに従った学習を行うことで、前記状態遷移グラフに含まれる、複数の前記状態のそれぞれに対する前記状態価値と、複数の前記行動のそれぞれに対する前記行動価値とを更新した場合、
    前記第1の情報処理装置により生成され、前記第2の情報処理装置によりその内容が更新された前記状態遷移グラフを利用して前記コンテンツを推薦する処理を制御するコンピュータに実行させるプログラムであって、
    前記ユーザの現時点の状態を取得する状態取得ステップと、
    前記状態取得ステップの処理により取得された前記状態に含まれる前記N種類の前記軸のうちの所定のM種類(Mは、N未満の整数値)の前記軸を推薦キーとして設定するとともに、前記推薦キーとは異なる推薦の対象としての前記軸を設定する設定ステップと、
    前記推薦キーとしての前記軸に着目して、前記第1の情報処理装置により生成された前記状態遷移グラフに含まれる複数の前記状態の中から、前記状態取得ステップの処理により取得された前記状態と同一または類似する前記状態を決定する状態決定ステップと、
    前記状態決定ステップの処理により決定された前記状態のうち、前記推薦の対象としての前記軸の座標の前記状態価値とそれに対応する前記行動価値を取得するとともに、前記状態価値が最も高く、前記行動価値が最も高い前記コンテンツを推薦する推薦ステップと
    を含むことを特徴とするプログラム。
JP2004081917A 2004-03-22 2004-03-22 情報処理装置および方法、並びにプログラム Expired - Fee Related JP4581446B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004081917A JP4581446B2 (ja) 2004-03-22 2004-03-22 情報処理装置および方法、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004081917A JP4581446B2 (ja) 2004-03-22 2004-03-22 情報処理装置および方法、並びにプログラム

Publications (2)

Publication Number Publication Date
JP2005267483A JP2005267483A (ja) 2005-09-29
JP4581446B2 true JP4581446B2 (ja) 2010-11-17

Family

ID=35091944

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004081917A Expired - Fee Related JP4581446B2 (ja) 2004-03-22 2004-03-22 情報処理装置および方法、並びにプログラム

Country Status (1)

Country Link
JP (1) JP4581446B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009080580A (ja) * 2007-09-25 2009-04-16 Toshiba Corp 映像表示装置及び方法
JP5098723B2 (ja) 2008-03-17 2012-12-12 富士通株式会社 コンテンツ送信システム、サーバコンピュータ及びプログラム
JP5150341B2 (ja) * 2008-04-10 2013-02-20 株式会社東芝 データ作成装置及び方法
WO2010010653A1 (ja) * 2008-07-24 2010-01-28 日本電気株式会社 ユーザモデル処理装置
JP5318190B2 (ja) * 2009-02-27 2013-10-16 三菱電機株式会社 情報処理装置及び情報処理方法及びプログラム
EP2312515A1 (en) * 2009-10-16 2011-04-20 Alcatel Lucent Device for determining potential future interests to be introduced into profile(s) of user(s) of communication equipment(s)
JP5777715B2 (ja) * 2010-09-17 2015-09-09 ノキア コーポレイション コンテキスト情報を分類する方法および装置
US9317834B2 (en) * 2011-06-30 2016-04-19 Microsoft Technology Licensing, Llc User computing device with personal agent program for recommending meeting a friend at a service location based on current location, travel direction, and calendar activity
JP6178800B2 (ja) * 2011-12-16 2017-08-09 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. ユーザの行動及び関連する感情状態の履歴記録
JP5668010B2 (ja) * 2012-03-29 2015-02-12 日本電信電話株式会社 情報推薦方法、装置及びプログラム
US20160055418A1 (en) 2013-04-17 2016-02-25 Sony Corporation Information processing apparatus, information processing method, and program
JP6022499B2 (ja) * 2014-03-20 2016-11-09 ヤフー株式会社 行動予測装置、行動予測方法、及び行動予測プログラム
JP6352357B2 (ja) * 2016-10-05 2018-07-04 ヤフー株式会社 モデル生成装置、モデル生成方法、及びモデル生成プログラム
CN111767455A (zh) * 2019-05-09 2020-10-13 北京京东尚科信息技术有限公司 一种信息推送的方法和装置
KR102435408B1 (ko) * 2020-04-07 2022-08-24 홍석우 안구 운동 및 감정 기반 hmd

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999040524A1 (fr) * 1998-02-05 1999-08-12 Fujitsu Limited Dispositif proposant des actions a entreprendre
JP2001290727A (ja) * 2000-04-06 2001-10-19 Nec Corp 情報提供システムおよび情報提供方法
JP2003111157A (ja) * 2001-09-28 2003-04-11 Toshiba Corp 統合コントローラ、機器制御方法及び機器制御プログラム
JP2004070390A (ja) * 2002-08-01 2004-03-04 Nippon Telegr & Teleph Corp <Ntt> メッセージ再利用支援装置、メッセージ再利用支援プログラム及びそのプログラムを記録した媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999040524A1 (fr) * 1998-02-05 1999-08-12 Fujitsu Limited Dispositif proposant des actions a entreprendre
JP2001290727A (ja) * 2000-04-06 2001-10-19 Nec Corp 情報提供システムおよび情報提供方法
JP2003111157A (ja) * 2001-09-28 2003-04-11 Toshiba Corp 統合コントローラ、機器制御方法及び機器制御プログラム
JP2004070390A (ja) * 2002-08-01 2004-03-04 Nippon Telegr & Teleph Corp <Ntt> メッセージ再利用支援装置、メッセージ再利用支援プログラム及びそのプログラムを記録した媒体

Also Published As

Publication number Publication date
JP2005267483A (ja) 2005-09-29

Similar Documents

Publication Publication Date Title
JP4581446B2 (ja) 情報処理装置および方法、並びにプログラム
US10817667B2 (en) Method and system for a chat box eco-system in a federated architecture
JP4433326B2 (ja) 情報処理装置および方法、並びにプログラム
US7797266B2 (en) Vehicle information processing system for content recommendation using Bayesian network models
JP5454357B2 (ja) 情報処理装置および方法、並びに、プログラム
TWI402702B (zh) 呈現網頁查詢結果的方法及其電腦可讀儲存媒體與電腦系統
JP6523498B1 (ja) 学習装置、学習方法および学習プログラム
US8442849B2 (en) Emotional mapping
US10216808B1 (en) Multi sender and source recommendation aggregation and prompting system
EP1484692A1 (en) Content recommendation device with user feedback
EP1484693A1 (en) Content recommendation device with an arrangement engine
US20110225043A1 (en) Emotional targeting
JP2009070364A (ja) 特別な動的モデル合成を備える推薦システム
US8888497B2 (en) Emotional web
Yang et al. Local implicit feedback mining for music recommendation
JP2009545810A (ja) 検索結果の時間的ランク付け
WO2009117582A2 (en) Method and apparatus for detecting patterns of behavior
TW200817946A (en) Presenting information related to topics extracted from event classes
Deldjoo et al. Towards multi-modal conversational information seeking
WO2007032003A2 (en) Device, system and method of handling user requests
US20030234812A1 (en) Visual decision maker
KR102628042B1 (ko) 연락처 정보를 추천하는 방법 및 디바이스
Shao et al. Personalized travel recommendation based on sentiment-aware multimodal topic model
JP2003167901A (ja) 協調フィルタリング方法、協調フィルタリング装置及び協調フィルタリングプログラム
CN114282077A (zh) 一种基于会话数据的会话推荐方法及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091023

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091027

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100218

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100412

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100803

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100816

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

Free format text: PAYMENT UNTIL: 20130910

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees