(57)【要約】【課題】ユーザの学習効率を更に向上させることが可能な情報処理装置、出題傾向設定方法及びプログラムを提供すること。【解決手段】本発明に係る情報処理装置に、複数の問題の中から選択された問題に対するユーザ回答の正誤を判定するユーザ回答判定部と、ユーザ回答の正誤判定結果を利用して、ユーザの正答率及び誤答率を算出するユーザ回答解析部と、算出された前記誤答率に基づいて前記複数の問題それぞれの間の類似度を算出するとともに、算出された当該類似度を利用して前記複数の問題それぞれの評価値を算出する出題条件設定部と、算出された前記評価値と所定期間内又は所定問題数でのユーザの正答率とに基づいて、前記複数の問題の中から出題する問題を選択する問題選択部と、を設けた。【選択図】図２１
2011232445.tif 000002
【特許請求の範囲】
【請求項１】
複数の問題の中から選択された問題に対するユーザ回答の正誤を判定するユーザ回答判定部と、
前記ユーザ回答判定部によるユーザ回答の正誤判定結果を利用して、ユーザの誤答率を少なくとも算出するユーザ回答解析部と、
前記ユーザ回答解析部が算出した前記誤答率に基づいて前記複数の問題それぞれの間の類似度を算出するとともに、算出した当該類似度を利用して前記複数の問題それぞれの評価値を算出する出題条件設定部と、
出題条件設定部により算出された前記評価値と、所定期間内又は所定問題数でのユーザの正答率とに基づいて、前記複数の問題の中から出題する問題を選択する問題選択部と、
を備える、情報処理装置。
【請求項２】
前記問題選択部は、
問題の正答率と前記所定期間内又は所定問題数でのユーザの正答率との差の絶対値を問題ごとに算出して、当該絶対値の値が小さいものから順に所定数の問題を選択し、
選択した前記所定数の問題の中から、前記評価値の値が大きいものから順に、出題する問題とする、請求項１に記載の情報処理装置。
【請求項３】
前記ユーザ回答解析部は、
各問題について、ユーザが最後に回答した日時と回答回数とが互いに関連づけられた情報をユーザごとに生成し、
前記ユーザが最後に回答した日時と回答回数とが互いに関連づけられた情報を利用して、正答数と出題数とが互いに関連づけられた情報を、回答回数及び経過時間ごとに生成する、請求項２に記載の情報処理装置。
【請求項４】
前記出題条件設定部は、回答回数及び経過時間ごとに生成される前記正答数と出題数とが互いに関連づけられた情報を利用して、各問題ごとに正答率閾値を算出し、
当該正答率閾値とユーザの正答率とに基づいて、前記評価値を補正する、請求項３に記載の情報処理装置。
【請求項５】
前記出題条件設定部は、前記正答率閾値と前記正誤判定結果とを利用して、前記ユーザの正答率を補正する、請求項４に記載の情報処理装置。
【請求項６】
複数の問題の中から選択された問題に対するユーザ回答の正誤を判定するステップと、
得られたユーザ回答の正誤判定結果を利用して、ユーザの誤答率を少なくとも算出するステップと、
算出された前記誤答率に基づいて前記複数の問題それぞれの間の類似度を算出するとともに、算出した当該類似度を利用して前記複数の問題それぞれの評価値を算出するステップと、
算出された前記評価値と、所定期間内又は所定問題数でのユーザの正答率とに基づいて、前記複数の問題の中から出題する問題を選択するステップと、
を含む、出題傾向設定方法。
【請求項７】
コンピュータに、
複数の問題の中から選択された問題に対するユーザ回答の正誤を判定するユーザ回答判定機能と、
前記ユーザ回答判定機能によるユーザ回答の正誤判定結果を利用して、ユーザの誤答率を少なくとも算出するユーザ回答解析機能と、
前記ユーザ回答解析機能により算出された前記誤答率に基づいて前記複数の問題それぞれの間の類似度を算出するとともに、算出した当該類似度を利用して前記複数の問題それぞれの評価値を算出する出題条件設定機能と、
出題条件設定機能により算出された前記評価値と、所定期間内又は所定問題数でのユーザの正答率とに基づいて、前記複数の問題の中から出題する問題を選択する問題選択機能と、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、出題傾向設定方法及びプログラムに関する。
【背景技術】
【０００２】
情報処理技術の発達に伴い、個人がそれぞれのペースで、空き時間を有効に利用して学習することが可能な、いわゆるＥ−Ｌｅａｒｎｉｎｇシステムが普及してきている。
【０００３】
かかるＥ−Ｌｅａｒｎｉｎｇシステムでは、ユーザがある事柄について説明を受ける教科書的なセクションと、理解を深めたり理解度を判定したりするためにユーザが設問を解く問題集的なセクションが存在することが多い。例えば、以下の特許文献１に開示された技術では、ユーザが、類似の問題やテキストを選択する処理の実行を選択すると、出題された問題等に類似したものを検出するシステムについて開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−９０１１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１に開示された技術では、類似の問題等を解くか否かは、ユーザ自身の判断に依存しており、ユーザは、学習の進め方について自身で考えて、類似の問題等の検出を要請する必要がある。そのため、客観的には類似した問題を解いて理解度を深めるべき状況であったとしても、ユーザが類似した問題の検出を要請しなかった場合には類似した問題が出題される可能性は低く、ユーザは、学習を効率的に進めることができないという問題があった。
【０００６】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、ユーザの学習効率を更に向上させることが可能な、情報処理装置、出題傾向設定方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある観点によれば、複数の問題の中から選択された問題に対するユーザ回答の正誤を判定するユーザ回答判定部と、前記ユーザ回答判定部によるユーザ回答の正誤判定結果を利用して、ユーザの誤答率を少なくとも算出するユーザ回答解析部と、前記ユーザ回答解析部が算出した前記誤答率に基づいて前記複数の問題それぞれの間の類似度を算出するとともに、算出した当該類似度を利用して前記複数の問題それぞれの評価値を算出する出題条件設定部と、出題条件設定部により算出された前記評価値と、所定期間内又は所定問題数でのユーザの正答率とに基づいて、前記複数の問題の中から出題する問題を選択する問題選択部と、
を備える情報処理装置が提供される。
【０００８】
前記問題選択部は、問題の正答率と前記所定期間内又は所定問題数でのユーザの正答率との差の絶対値を問題ごとに算出して、当該絶対値の値が小さいものから順に所定数の問題を選択し、選択した前記所定数の問題の中から、前記評価値の値が大きいものから順に、出題する問題とすることが好ましい。
【０００９】
前記ユーザ回答解析部は、各問題について、ユーザが最後に回答した日時と回答回数とが互いに関連づけられた情報をユーザごとに生成し、前記ユーザが最後に回答した日時と回答回数とが互いに関連づけられた情報を利用して、正答数と出題数とが互いに関連づけられた情報を、回答回数及び経過時間ごとに生成することが好ましい。
【００１０】
前記出題条件設定部は、回答回数及び経過時間ごとに生成される前記正答数と出題数とが互いに関連づけられた情報を利用して、各問題ごとに正答率閾値を算出し、当該正答率閾値とユーザの正答率とに基づいて、前記評価値を補正してもよい。
【００１１】
前記出題条件設定部は、前記正答率閾値と前記正誤判定結果とを利用して、前記ユーザの正答率を補正してもよい。
【００１２】
また、上記課題を解決するために、本発明の別の観点によれば、複数の問題の中から選択された問題に対するユーザ回答の正誤を判定するステップと、得られたユーザ回答の正誤判定結果を利用して、ユーザの誤答率を少なくとも算出するステップと、算出された前記誤答率に基づいて前記複数の問題それぞれの間の類似度を算出するとともに、算出した当該類似度を利用して前記複数の問題それぞれの評価値を算出するステップと、算出された前記評価値と、所定期間内又は所定問題数でのユーザの正答率とに基づいて、前記複数の問題の中から出題する問題を選択するステップと、を含む出題傾向設定方法が提供される。
【００１３】
また、上記課題を解決するために、本発明の更に別の観点によれば、コンピュータに、複数の問題の中から選択された問題に対するユーザ回答の正誤を判定するユーザ回答判定機能と、前記ユーザ回答判定機能によるユーザ回答の正誤判定結果を利用して、ユーザの誤答率を少なくとも算出するユーザ回答解析機能と、前記ユーザ回答解析機能により算出された前記誤答率に基づいて前記複数の問題それぞれの間の類似度を算出するとともに、算出した当該類似度を利用して前記複数の問題それぞれの評価値を算出する出題条件設定機能と、出題条件設定機能により算出された前記評価値と、所定期間内又は所定問題数でのユーザの正答率とに基づいて、前記複数の問題の中から出題する問題を選択する問題選択機能と、を実現させるためのプログラムが提供される。
【発明の効果】
【００１４】
以上説明したように本発明によれば、ユーザの学習効率を更に向上させることが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態に係る情報処理装置の構成を示したブロック図である。
【図２】同実施形態に係るテキスト選択部の構成を示したブロック図である。
【図３】ユーザの行動パターン（コンテキスト）の一例を示した説明図である。
【図４】行動パターンの検出方法の一例を示した流れ図である。
【図５】行動パターンの検出方法の一例を示した流れ図である。
【図６】行動パターンの検出方法の一例を示した流れ図である。
【図７】行動パターンの検出方法の一例を示した流れ図である。
【図８】行動パターンの検出方法の一例を示した流れ図である。
【図９】行動パターンの検出方法の一例を示した流れ図である。
【図１０】行動パターンの検出方法の一例を示した流れ図である。
【図１１】ユーザ行動履歴情報の一例を示した説明図である。
【図１２】テキストの解析方法について説明するための説明図である。
【図１３Ａ】テキストの解析方法について説明するための説明図である。
【図１３Ｂ】テキストの解析方法について説明するための説明図である。
【図１４】テキストの解析方法について説明するための説明図である。
【図１５】テキストの解析方法について説明するための説明図である。
【図１６】テキストの解析方法について説明するための説明図である。
【図１７】テキストデータベースの一例を示した説明図である。
【図１８】テキストの解析方法の一例を示した流れ図である。
【図１９】同実施形態に係るテキスト選択方法の流れの一例を示した流れ図である。
【図２０】同実施形態に係るテキスト選択方法の流れの一例を示した流れ図である。
【図２１】本発明の第２の実施形態に係る情報処理装置の構成を示したブロック図である。
【図２２】同実施形態に係る出題傾向設定部の構成を示したブロック図である。
【図２３】同実施形態に係る正答率テーブルの一例を示した説明図である。
【図２４】同実施形態に係る誤答マトリックスの一例を示した説明図である。
【図２５】同実施形態に係る最終回答日時・回答回数に関するテーブルの一例を示した説明図である。
【図２６】同実施形態に係る忘却率テーブル群の一例を示した説明図である。
【図２７】忘却曲線の一例を示した説明図である。
【図２８】同実施形態に係る出題傾向の設定方法の一例を説明するための説明図である。
【図２９】同実施形態に係る出題傾向の設定方法の一例を説明するための説明図である。
【図３０】同実施形態に係る出題傾向設定方法の流れを示した流れ図である。
【図３１】本発明の第３の実施形態に係る情報処理装置の構成を示したブロック図である。
【図３２】本発明の実施形態に係る情報処理装置のハードウェア構成を示したブロック図である。
【発明を実施するための形態】
【００１６】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１７】
なお、説明は、以下の順序で行うものとする。
（１）第１の実施形態
（１−１）情報処理装置の構成について
（１−２）情報処理方法の流れについて
（２）第２の実施形態
（２−１）情報処理装置の構成について
（２−２）出題傾向設定方法の流れについて
（３）第３の実施形態
（３−１）情報処理装置の構成について
（４）本発明の実施形態に係る情報処理装置のハードウェア構成について
【００１８】
（第１の実施形態）
まず、図１〜図２０を参照しながら、本発明の第１の実施形態に係る情報処理装置及びテキスト選択方法について、詳細に説明する。
本実施形態に係る情報処理措置１０は、以下で詳細に説明するように、各種のセンサから出力されたセンサ情報を利用して、ユーザの現在の状態やユーザの現在位置等を解析し、ユーザの状態や現在位置にあったテキストを選択する装置である。
【００１９】
＜情報処理装置の構成について＞
まず、図１を参照しながら、本実施形態に係る情報処理装置１０の構成について、詳細に説明する。図１は、本実施形態に係る情報処理装置１０の構成を示したブロック図である。
【００２０】
本実施形態に係る情報処理装置１０は、図１に例示したように、センサ情報取得部１０１と、テキスト選択部１０３と、表示制御部１０５と、ユーザ回答取得部１０７と、ユーザ回答判定部１０９と、記憶部１１１と、を主に備える。
【００２１】
センサ情報取得部１０１は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、通信装置等により実現される。センサ情報取得部１０１は、ユーザの動きを検知するセンサ（以下、モーションセンサとも称する。）及び現在位置を表す情報を取得するセンサ（以下、位置センサとも称する。）を含む各種のセンサから、これらセンサが出力した情報であるセンサ情報を取得する。ここで、モーションセンサとしては、例えば、３軸加速度センサ（ただし、加速度センサ、重力検知センサ、落下検出センサ等を含む。）や、３軸ジャイロセンサ（ただし、角速度センサ、手振れ補正センサ、地磁気センサ等を含む。）等を挙げることができる。また、位置センサとしては、例えば、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）から出力されたデータを受信するＧＰＳセンサを挙げることができる。ただし、ＲＦＩＤ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ  Ｉｄｅｔｉｆｉｃａｔｉｏｎ）、Ｗｉ−Ｆｉのアクセスポイント、無線基地局の情報等から現在地の緯度・経度を検出することが可能なため、このような検出手段を位置センサとして利用することも可能である。これらのセンサは、本実施形態に係る情報処理装置１０に実装されていてもよいし、情報処理装置１０の外部に設けられていてもよい。
【００２２】
ユーザが行動すると、まず、上述のモーションセンサにより加速度の変化や重力軸周りの回転等が検知される。モーションセンサは、検知されたこれらの変化や回転等に関する情報を出力し、センサ情報取得部１０１は、モーションセンサから出力されたこれら変化や回転等に関する情報をセンサ情報として取得する。また、ユーザの行動に伴い、位置センサは、ユーザの居場所（現在位置）を示す位置情報（例えば、緯度・経度）を取得し、取得した位置情報を出力する。センサ情報取得部１０１は、位置センサから出力された位置情報をセンサ情報として出力する。
【００２３】
なお、センサ情報取得部１０１は、各種センサから出力された情報を取得する際に、取得した情報に日時を示す情報が関連付けられていない場合には、取得した情報に取得日時を示す情報を関連付けてもよい。
【００２４】
センサ情報取得部１０１は、取得した各種のセンサ情報を、テキスト選択部１０３に出力する。また、センサ情報取得部１０１は、取得した各種のセンサ情報を、後述する記憶部１１１等に履歴情報として格納してもよい。
【００２５】
テキスト選択部１０３は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。テキスト選択部１０３は、センサ情報取得部１０１から出力されたセンサ情報に基づいて、後述する記憶部１１１等に格納されている複数のテキストの中から、ユーザに提示するテキストを選択する。
【００２６】
テキスト選択部１０３は、複数のテキストの中から、ユーザに提示するテキストを選択すると、選択したテキストに対応する情報を、後述する表示制御部１０５に出力する。また、選択したテキストが、例えば、ユーザに対して回答の入力を促す問題文のようなものである場合には、テキスト選択部１０３は、選択したテキストに関する情報を、後述するユーザ回答判定部１０９に出力する。
【００２７】
なお、テキスト選択部１０３は、選択したテキストに関する情報を、履歴情報として後述する記憶部１１１等に格納してもよい。
【００２８】
本実施形態に係るテキスト選択部１０３の詳細な構成については、以下で改めて説明する。
【００２９】
表示制御部１０５は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。表示制御部１０５は、情報処理装置１０が備える表示部（図示せず。）に表示される表示画面の内容の表示制御を行う処理部である。具体的には、表示制御部１０５は、テキスト選択部１０３から出力されたテキストに対応する情報を参照して、当該情報に対応するテキスト（文）を、表示部の表示画面に表示する。
【００３０】
また、テキスト選択部１０３により選択されたテキストが、ユーザに対して回答の入力を促す問題文のようなものである場合には、表示制御部１０５は、後述するユーザ回答判定部１０９によるユーザ回答の判定結果（回答の正誤）を、表示画面に表示する。
【００３１】
ここで、表示制御部１０５は、表示画面の表示制御を行う際に、後述する記憶部１１１等に格納されているアイコン等の各種のオブジェクトを利用したり、記憶部１１１等に格納されている各種のデータベースを参照したりすることができる。
【００３２】
ユーザ回答取得部１０７は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ、入力装置等により実現される。ユーザ回答取得部１０７は、テキスト選択部１０３により選択されたテキストがユーザに対して回答の入力を促す問題文のようなものである場合に、選択されたテキストに対するユーザの回答を取得する。ユーザの回答は、例えば、キーボードやタッチパネルを操作して直接入力されるものであったり、マウス等を操作して回答に対応するアイコン等のオブジェクトが選択されるものであったりする。ユーザ回答取得部１０７は、各種の方法で入力されたユーザ回答に対応する情報を取得して、後述するユーザ回答判定部１０９に出力する。
【００３３】
ユーザ回答判定部１０９は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。ユーザ回答判定部１０９は、テキスト選択部１０３により選択されたテキストがユーザに対して回答の入力を促す問題文のようなものである場合に、ユーザ回答取得部１０７から出力されたユーザ回答の正誤を判定する。
【００３４】
具体的には、ユーザ回答判定部１０９は、選択したテキストに関する情報が通知されると、取得したテキストに関する情報を参照して、選択されたテキスト（問題）の正しい解答に関する情報を、記憶部１１１等に格納されているデータベースから取得する。その後、ユーザ回答判定部１０９は、ユーザ回答取得部１０７から出力されたユーザ回答を、取得した正しい解答と比較して、ユーザ回答が正解であるのか、間違っているのかを判定する。
【００３５】
ユーザ回答判定部１０９は、ユーザ回答の正誤判定が終了すると、判定結果を表示制御部１０５に出力してもよい。表示制御部１０５が判定結果を表示画面に表示させることで、情報処理装置１０のユーザは、自身の回答が正しいのか、間違っているのかを判断することができる。
【００３６】
また、ユーザ回答判定部１０９は、ユーザ回答の正誤判定が終了すると、正誤判定が終了した旨を表す情報を、テキスト選択部１０３に出力してもよい。かかる情報をテキスト選択部１０３に出力することで、テキスト選択部１０３は、かかる情報の取得を、新たな処理のトリガとすることができる。これにより、テキスト選択部１０３は、例えば、新たに選択したテキストの表示を、表示制御部１０５に要請するなど、新たな処理を開始することができる。
【００３７】
ユーザ回答判定部１０９は、ユーザ回答の判定結果に関する履歴を、後述する記憶部１１１等に格納してもよい。
【００３８】
記憶部１１１は、本実施形態に係る情報処理装置１０が備えるストレージ装置の一例である。記憶部１１１には、テキスト選択部１０３やユーザ回答判定部１０９が各種の処理を行う際に利用する様々なデータベースや各種のデータが格納される。
【００３９】
また、記憶部１１１には、各種の履歴情報が記録されていてもよい。さらに、記憶部１１１には、本実施形態に係る情報処理装置１０が、何らかの処理を行う際に保存する必要が生じた様々なパラメータや処理の途中経過等、または、各種のデータベース等が、適宜記録される。
【００４０】
この記憶部１１１は、情報処理装置１０が備える各処理部が、自由に読み書きを行うことが可能である。
【００４１】
［テキスト選択部の構成について］
次に、図２を参照しながら、本実施形態に係るテキスト選択部１０３の構成について、詳細に説明する。図２は、本実施形態に係るテキスト選択部１０３の構成を示したブロック図である。
【００４２】
図２に例示したように、本実施形態に係るテキスト選択部１０３は、条件設定部１２１、行動パターン検出部１２３、位置情報解析部１２５、テキスト解析部１２７、キーワード変換部１２９及びテキスト抽出部１３１を更に備える。
【００４３】
条件設定部１２１は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ、入力装置等により実現される。条件設定部１２１は、後述するテキスト抽出部１３１が複数のテキストの中からテキストを選択する際の条件を、ユーザ操作に基づいて設定する処理部である。条件設定部１２１は、キーボード、マウス、タッチパネル、各種ボタン等がユーザにより操作され、テキスト選択の際の条件が入力されると、入力された情報を後述するテキスト抽出部１３１に出力する。
【００４４】
テキストを選択する際の条件は、適宜設定されれば良いが、テキスト選択部１０３が、例えば、語学学習用の問題文や例文等を複数のテキストの中から選択する場合には、以下のような条件が設定される。
【００４５】
・学習したい言語の種類
・学習したい言語の語学レベル
・ユーザの動きや状態（コンテキスト。これについては、以下で詳述する。）
・位置のタイプ（現在位置、頻繁に訪ねる場所、次に訪ねそうな場所等）
・その他
【００４６】
このような条件設定がなされることで、ユーザは、自身の希望する状況に適合したテキスト（文）を、自動的に閲覧することが可能となる。
【００４７】
行動パターン検出部１２３は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。行動パターン検出部１２３は、モーションセンサから出力されたセンサ情報を用いて、ユーザの動きパターンや状態パターンを検出する。行動パターン検出部１２３により検出可能な動き・状態パターンとしては、例えば、「歩き」「走り」「静止」「跳躍」「電車（搭乗／非搭乗）」「エレベータ（搭乗／非搭乗／上昇／下降）」等がある。なお、行動パターン検出部１２３による動き・状態パターンの検出方法については、後段において詳述する。ただし、動き・状態パターンの検出方法は、後述する例に限定されず、機械学習を用いる方法も適用できる。なお、行動パターン検出部１２３により検出された動き・状態パターンは、後述するテキスト抽出部１３１に入力される。
【００４８】
ここで、図３〜図１０を参照しながら、行動パターン検出部１２３の機能について詳細に説明する。図３〜図１０は、行動パターン検出部１２３の機能及び動作を説明するための説明図である。
【００４９】
○入出力データの構成
上述の通り、行動パターン検出部１２３には、モーションセンサから出力されたセンサ情報が入力される。行動パターン検出部１２３が取得するセンサ情報としては、例えば、加速度の波形データ（以下、加速度データ）がある。なお、かかる加速度データには、ｘ方向の加速度データ（ｘ−ａｃｃ）、ｙ方向の加速度データ（ｙ−ａｃｃ）、ｚ方向の加速度データ（ｚ−ａｃｃ）がある。ここで、ｘ、ｙ、ｚは、互いに直交する方向を示す。また、ジャイロセンサが搭載されている場合には、センサ情報として３次元的なジャイロデータ（ｘ−ｇｙｒｏ，ｙ−ｇｙｒｏ，ｚ−ｇｙｒｏ）が入力される。なお、温度や気圧等に応じてセンサの感度が変化してしまうため、これらのセンサデータはキャリブレーションが施されたものである方が好ましい。
【００５０】
センサ情報が入力されると、行動パターン検出部１２３は、入力されたセンサ情報に基づいて動き・状態パターンを検出する。行動パターン検出部１２３により検出可能な動き・状態パターンとしては、例えば、「歩く」「走る」「静止」「一時静止」「跳躍」「姿勢変化」「ターン」「電車（搭乗）」「エレベータ（上昇／下降）」「車（搭乗）」「自転車（搭乗）」等がある（図３を参照）。
【００５１】
例えば、歩行状態を検出するアルゴリズムについて着目する。通常、人間が歩くときに検出される加速度データの周波数は、２Ｈｚ程度（１秒間に２歩程度）である。そこで、行動パターン検出部１２３は、加速度データの周波数を解析し、周波数が２Ｈｚ付近にある部分を検出する。この処理により検出された部分が動き・状態パターン「歩く」に相当する。また、行動パターン検出部１２３は、加速度データから「歩く」動き・状態パターンの発生時間や継続時間等を検出することもできる。さらに、行動パターン検出部１２３は、加速度データの振幅から「歩く」強度を検出することができる。
【００５２】
このように、センサ情報を解析して得られる周波数や強度等のデータに基づいて動き・状態パターン毎の特徴量（以下、動き・状態特徴量）を抽出することができる。なお、「歩く」動き・状態パターンの例では加速度データしか利用されていないが、動き・状態パターンの種類によっては、ジャイロデータも利用される。動き・状態特徴量の経時変化を得ると、行動パターン検出部１２３は、動き・状態特徴量から、逐次、動き・状態パターンを判定し、時系列で変化する動き・状態パターンを出力する。
【００５３】
このようにして行動パターン検出部１２３により得られた動き・状態パターンは、テキスト抽出部１３１に入力される。
【００５４】
なお、行動パターン検出部１２３は、後述する位置情報解析部１２５やキーワード変換部１２７と連携して、ユーザの行動パターンを検知することも可能である。例えば、「歩き」「走り」「跳躍」「静止」等の、数秒から数分程度の比較的短時間にユーザが行う行動パターンと、位置情報解析部１２５やキーワード変換部１２７から提供される各種情報に基づいて、行動パターン検出部１２３は、「食事」「買い物」「仕事」といった、より長時間をかけて行われる行動パターンを特定することが可能である。
【００５５】
例えば、位置情報解析部１２５やキーワード変換部１２７と連携することにより、ユーザの現在位置が、例えば、レストランの内部であることが特定可能となる。従って、ユーザの現在位置がレストランの店舗内で推移している場合には、ユーザはレストランの店舗内で、例えば歩いたり、静止したりしているものと判断できる。従って、行動パターン検出部１２３は、かかる行動パターンについては、「食事」という状況を表す行動パターンを特定することができる。また、ユーザの現在位置が、例えば、ある会社が所有するビルやいわゆるビジネス街の内部で推移している場合には、行動パターン検出部１２３は、ユーザの行動パターンを「仕事」と特定することができる。
【００５６】
また、行動パターン検出部１２３は、日時に関する情報を更に考慮することで、行動パターンを検出する時点が、平日なのか休日なのかを考慮することが可能となり、より正確な行動パターンの検出が可能となる。
【００５７】
更に、ユーザの個人情報（例えば自宅の住所や勤務先の住所等）が登録されており、かかる個人情報を利用可能である場合には、このような個人情報を参照することで、より正確な行動パターンの検出が可能となる。
【００５８】
上述の「食事」「買い物」「仕事」といったより長期的な行動パターンの検出は、以下で説明する検出アルゴリズムが実施され、検出結果がテキスト抽出部１３１に出力される前に行われる。
【００５９】
ここで、図３に示した動き・状態パターンの一部に関し、より詳細な検出アルゴリズムについて以下で説明する。
【００６０】
○一時停止（Ｐａｕｓｉｎｇ）／静止（Ｓｔｉｌｌ）の認識方法
まず、図４を参照しながら、ユーザが一時停止しているのか、或いは、静止しているのかを認識する方法について説明する。図４は、ユーザが一時停止しているのか、或いは、静止しているのかを認識する方法を示した説明図である。
【００６１】
まず、ユーザが行動すると、センサ情報が行動パターン検出部１２３に入力される。ここでは、３軸方向の加速度データ（ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃ）が入力される。センサ情報が入力されると、行動パターン検出部１２３は、センサデータをＦＩＦＯ形式で記録する（Ｓ１００１）。所定のデータ分だけ記録されると、行動パターン検出部１２３は、ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃの分散値をそれぞれ算出する（Ｓ１００３）。次いで、行動パターン検出部１２３は、各分散値のうち、最も大きい分散値である静止判定用最大分散値（ｄｅｔ）を抽出する（Ｓ１００５）。
【００６２】
静止判定用最大分散値を抽出すると、行動パターン検出部１２３は、抽出した静止判定用最大分散値が、静止状態を示す静止認識値Ｄ１より小さいか否かを判定する（Ｓ１００７）。静止判定用最大分散値がＤ１より小さくない場合、行動パターン検出部１２３は、ユーザが静止していないと判定する。このような判定された場合、ユーザは、何かしらの行動を取っているものと推定される。そのため、行動パターン検出部１２３は、ユーザが静止していないことを示す情報をテキスト抽出部１３１に入力する（Ｓ１００９）。
【００６３】
一方、静止判定用最大分散値がＤ１よりも小さい場合、行動パターン検出部１２３は、上記の最大分散値がＤ１より小さい状態が静止認識時間Ｔ１より長く続くか否かを判定する（Ｓ１０１１）。ここで、静止認識時間Ｔ１とは、ユーザが静止しているものと見なされる最小の時間を示す。Ｔ１より長く続く場合、行動パターン検出部１２３は、ユーザが静止していると判定し、静止を示す情報をテキスト抽出部１３１に入力する（Ｓ１０１３）。Ｔ１より長く続かない場合、行動パターン検出部１２３は、ユーザは一時的に静止しているものと判定し、一時的に静止している状態を示す情報をテキスト抽出部１３１に入力する（Ｓ１０１５）。
【００６４】
このように、図４の例に従って判定処理を行うことにより、静止状態、一時静止状態、非静止状態を判別することが可能になる。
【００６５】
○歩行（Ｗａｌｋｉｎｇ）／走行（Ｒｕｎｎｉｎｇ）の認識方法
次に、図５を参照しながら、ユーザが歩行しているのか、或いは、走行しているのかを認識する方法について説明する。図５は、ユーザが歩行、或いは、走行しているのかを認識する方法を示した説明図である。
【００６６】
まず、ユーザが行動すると、センサ情報が行動パターン検出部１２３に入力される。ここでは３軸方向の加速度データ（ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃ）が入力される。センサ情報が入力されると、行動パターン検出部１２３は、バンドパスフィルタ（ＢＰＦ）を用いて、ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃから、ユーザが歩行又は走行していると認識される周波数領域外の周波数を除去する（Ｓ１１０１）。次いで、行動パターン検出部１２３は、ＢＰＦを通過したｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃをＦＩＦＯ形式で記録する（Ｓ１１０３）。
【００６７】
次いで、行動パターン検出部１２３は、ＢＰＦを通過した後で記録されたｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃを所定のデータ分だけ読み出し、読み出したデータについて自己相関関数（Ｓｕｍｍａｒｙ  Ａｕｔｏｃｏｒｒｅｌａｔｉｏｎ  Ｆｕｎｃｔｉｏｎ：ＳＡＣＦ）を算出する（Ｓ１１０５）。ＳＡＣＦピークの時系列は、歩行や走行の際に生じるユーザの周期的な動きに対応する。しかし、ＳＡＣＦは、歩行や走行に対応する周波数の高調波を含んでしまう。そこで、行動パターン検出部１２３は、算出した自己相関関数（ＳＡＣＦ）に基づいて、増強された自己相関関数（Ｅｎｈａｎｃｅｄ  ＳＡＣＦ：ＥＳＡＣＦ）を算出する（Ｓ１１０７）。そして、行動パターン検出部１２３は、ＥＳＡＣＦに基づいて自己相関ピークを算出し（Ｓ１１０９）、歩行・走行判定用周波数（ｆｒｅｑ）を得る。
【００６８】
また、行動パターン検出部１２３は、ステップＳ１１０１でＢＰＦを通過させる前のｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃをＦＩＦＯ形式で記録する（Ｓ１１１１）。次いで、行動パターン検出部１２３は、所定のデータ分だけｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃを読み出して分散値をそれぞれ算出する（Ｓ１１１３）。次いで、行動パターン検出部１２３は、算出した分散値の中から最も大きい分散値を抽出し、歩行・走行判定用最大分散値（ｖａｒ）として出力する（Ｓ１１１５）。
【００６９】
次いで、行動パターン検出部１２３は、上記の歩行・走行判定用周波数（ｆｒｅｑ）と歩行・走行判定用最大分散値（ｖａｒ）とを乗算する（Ｓ１１１７）。単位時間当たりの歩数はｆｒｅｑで表現される。また、動きの大きさはｖａｒで表現される。さらに、歩数と動きの大小とに基づいて歩行であるか、走行であるかを判定することが可能である。そこで、ｆｒｅｑとｖａｒとの積が所定の領域の範囲内にあるか否かを判定することにより、ユーザが歩行しているか否かを判定することができる。まず、この判定の精度を高めるため、行動パターン検出部１２３は、ローパスフィルター（ＬＰＦ）により、ｆｒｅｑ／ｖａｒの積から、歩行／走行が誤認識されやすい周波数領域を除去して歩行・走行判定用データｄｅｔを算出する（Ｓ１１１９）。
【００７０】
次いで、行動パターン検出部１２３は、歩行・走行判定用データが、歩行していると認識される下限値である最小歩行認識値Ｄ２よりも大きく、かつ、歩行していると認識される上限値である最大歩行認識値Ｄ３よりも小さいか否かを判定する（Ｓ１１２１）。Ｄ２よりも大きく、Ｄ３よりも小さい場合、行動パターン検出部１２３は、ユーザが歩行していると判定し、歩行を示す情報をテキスト抽出部１３１に入力する（Ｓ１１２３）。一方、Ｄ２＜ｄｅｔ＜Ｄ３でない場合、行動パターン検出部１２３は、ステップＳ１１２５の処理に進行し、歩行・走行判定データｄｅｔが、Ｄ３よりも大きいか否かを判定する（Ｓ１１２５）。
【００７１】
歩行・走行判定データがＤ３よりも大きい場合、行動パターン検出部１２３は、ユーザが走行していると判定し、走行を示す情報をテキスト抽出部１３１に入力する（Ｓ１１２７）。一方、歩行・走行判定データがＤ２以下である場合、行動パターン検出部１２３は、歩行も走行もしていないと判定し、動き・状態パターンが歩行及び走行ではないことを示す情報をテキスト抽出部１３１に入力する（Ｓ１１２９）。なお、ｆｒｅｑを積分することにより、積分区間に相当する時間の間に歩んだ歩数の情報が得られる。そこで、行動パターン検出部１２３は、歩数の情報を算出して（Ｓ１１３１）、テキスト抽出部１３１に入力する（Ｓ１１３３）。
【００７２】
このように、図５の例に従って判定処理を行うことにより、歩行状態、走行状態、非歩行・非走行状態を判別することが可能になる。
【００７３】
○跳躍（Ｊｕｍｐｉｎｇ）の認識方法
次に、図６を参照しながら、ユーザが跳躍しているのか否かを認識する方法について説明する。図６は、ユーザが跳躍しているのか否かを認識する方法を示した説明図である。
【００７４】
まず、ユーザが行動すると、センサ情報が行動パターン検出部１２３に入力される。ここでは３軸方向の加速度データ（ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃ）が入力される。センサ情報が入力されると、行動パターン検出部１２３は、ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃの大きさで表現される跳躍加速度を算出する（Ｓ１２０１）。次いで、行動パターン検出部１２３は、バンドパスフィルター（ＢＰＦ）により、ユーザが跳躍していると認識される跳躍認識値領域外の周波数を除去する（Ｓ１２０３）。次いで、行動パターン検出部１２３は、ＢＰＦを通過した値の絶対値を算出し、補正跳躍加速度として出力する（Ｓ１２０５）。このように絶対値をとると、跳躍加速度に比べ、跳躍したときに起きる筐体の揺れや振動等により生じるノイズ成分が除去される。
【００７５】
次いで、行動パターン検出部１２３は、ローパスフィルター（ＬＰＦ）により、補正跳躍加速度から、跳躍として誤認識されやすい周波数領域を除去する（Ｓ１２０７）。次いで、行動パターン検出部１２３は、ＬＰＦを通過したデータから、跳躍しているか否かを判定するための跳躍状態判定値（ｄｅｔ）を算出する。次いで、行動パターン検出部１２３は、跳躍状態判定値が、跳躍していると認識される下限値である最小跳躍認識値Ｄ４よりも大きいか判定する（Ｓ１２０９）。最小跳躍認識値Ｄ４よりも大きい場合、行動パターン検出部１２３は、跳躍していると判定し、跳躍を示す情報をテキスト抽出部１３１に入力する（Ｓ１２１１）。一方、最小跳躍認識値Ｄ４より小さい場合、行動パターン検出部１２３は、跳躍していないと判定し、跳躍していないことを示す情報をテキスト抽出部１３１に入力する（Ｓ１２１３）。
【００７６】
このように、図６の例に従って判定処理を行うことにより、跳躍状態、非跳躍状態を判別することが可能になる。
【００７７】
○姿勢変化（Ｐｏｓｔｕｒｅ  Ｃｈａｎｇｉｎｇ）の認識方法
次に、図７を参照しながら、ユーザが座っているのか、或いは、立っているのかを認識する方法について説明する。図７は、ユーザが座っているのか、或いは、立っているのかを認識する方法を示した説明図である。なお、座っているのか、立っているのかを認識するということは、座っているユーザが立つことの認識、又は、立っているユーザが座ることの認識に他ならない。つまり、ユーザの姿勢変化を認識することである。
【００７８】
まず、ユーザが行動すると、センサ情報が行動パターン検出部１２３に入力される。ここでは３軸方向の加速度データ（ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃ）が入力される。センサ情報が入力されると、行動パターン検出部１２３は、ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃから、ローパスフィルター（ＬＰＦ）により、ユーザの姿勢変化として誤認識されやすい周波数領域を除去する（Ｓ１３０１）。そして、行動パターン検出部１２３は、ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃに基づき、それぞれｘ−ｇｒａｖ、ｙ−ｇｒａｖ、ｚ−ｇｒａｖを算出する。ｘ−ｇｒａｖ、ｙ−ｇｒａｖ、ｚ−ｇｒａｖは、重力がかかる方向を示す重力データである。
【００７９】
次いで、行動パターン検出部１２３は、算出したｘ−ｇｒａｖの変化を示す値δ（ｘ−ｇｒａｖ）、ｙ−ｇｒａｖの変化を示すδ（ｙ−ｇｒａｖ）、ｚ−ｇｒａｖの変化を示すδ（ｚ−ｇｒａｖ）を算出する（Ｓ１３０３）。次いで、行動パターン検出部１２３は、δ（ｘ−ｇｒａｖ）、δ（ｙ−ｇｒａｖ）、δ（ｚ−ｇｒａｖ）の大きさを表す姿勢変化値を算出する（Ｓ１３０５）。次いで、行動パターン検出部１２３は、算出した姿勢変化値から、ローパスフィルター（ＬＰＦ）により、ユーザの姿勢変化として誤認識されやすい領域を除去し（Ｓ１３０７）、姿勢変化しているか否かを判定する姿勢変化判定値（ｄｅｔ）を算出する。
【００８０】
次いで、行動パターン検出部１２３は、姿勢変化判定値が、ユーザが姿勢変化していると認識される下限値である最小姿勢変化認識値Ｄ５よりも大きいか否かを判定する（Ｓ１３０９）。姿勢変化判定値がＤ５よりも小さい場合、行動パターン検出部１２３は、姿勢変化が無いもものと判定し、姿勢変化無しを示す情報をテキスト抽出部１３１に入力する（Ｓ１３１１）。一方、姿勢変化閾値がＤ５よりも大きい場合、行動パターン検出部１２３は、ステップＳ１３１３の処理に進行し、ユーザが現在立っているのか座っているのかを判定する（Ｓ１３１３）。ユーザが既に立っている場合、行動パターン検出部１２３は、ユーザが座ったと判定し、着座を示す情報をテキスト抽出部１３１に入力する（Ｓ１３１５）。一方、ユーザが既に座っている場合、行動パターン検出部１２３は、ユーザが立ったと判定し、起立を示す情報をテキスト抽出部１３１に入力する（Ｓ１３１７）。
【００８１】
このように、図７の例に従って判定処理を行うことにより、姿勢変化の有無を判別することが可能になる。
【００８２】
○エレベータによる上昇／下降の認識方法
次に、図８を参照しながら、ユーザがエレベータに乗っているのか否かを認識する方法について説明する。図８は、ユーザがエレベータに乗っているのか否かを認識する方法を示した説明図である。
【００８３】
まず、ユーザが行動すると、センサ情報が行動パターン検出部１２３に入力される。ここでは３軸方向の加速度データ（ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃ）が入力される。センサ情報が入力されると、行動パターン検出部１２３は、ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃに基づき、ローパスフィルター（ＬＰＦ）により、重力方向の加速度であると誤認識されやすい周波数領域を除去する（Ｓ１４０１）。次いで、行動パターン検出部１２３は、ＬＰＦを通過したｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃに基づいて重力方向加速度センサデータ（ａｃｃ）を算出する（Ｓ１４０３）。
【００８４】
また、行動パターン検出部１２３は、重力の値を調整可能にするために、ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃの大きさで表現された重力調整データを算出して記録する（Ｓ１４０５、Ｓ１４０７）。次いで、行動パターン検出部１２３は、所定のデータ分だけ重力調整データを読み出し、その分散値である重力調整分散値（ｖａｒ）を算出する（Ｓ１４０９）。更に、行動パターン検出部１２３は、所定のデータ分だけ重力調整データを読み出し、その平均値である重力調整平均データを算出する（Ｓ１４０９）。
【００８５】
次いで、行動パターン検出部１２３は、上記の重力調整分散値が、重力の調整を許容する最大の分散値である最大許容重力調整分散値Ｖよりも小さいか否か判定する（Ｓ１４１１）。上記の重力調整分散値がＶより大きい場合、行動パターン検出部１２３は、重力の値を更新しない（Ｓ１４１３）。一方、上記の重力調整分散値が最大許容重力調整分散値Ｖよりも小さい場合、行動パターン検出部１２３は、上記の重力調整平均データが、重力の調整を許容する最小の平均値である最小許容重力平均値Ａ１よりも大きく、かつ、重力の調整を許容する最大の平均値である最大許容重力平均値Ａ２よりも小さいか否かを判定する（Ｓ１４１５）。
【００８６】
上記の重力調整平均データがＡ１よりも大きく、Ａ２よりも小さい場合、行動パターン検出部１２３は、ステップＳ１４１９の処理に進行する。一方、それ以外の場合、行動パターン検出部１２３は、重力の値を更新しない（Ｓ１４１７）。ステップＳ１４１９の処理に進行した場合、行動パターン検出部１２３は、ローパスフィルター（ＬＰＦ）により、重力であると誤認識されやすい低領域を除去し（Ｓ１４１９）、補正重力調整平均データを算出する。次いで、行動パターン検出部１２３は、上記の重力方向加速度センサデータと上記の補正重力調整平均データとの差分を算出する（Ｓ１４２１）。次いで、行動パターン検出部１２３は、算出した差分から、ユーザがエレベータに乗っていると誤認識されやすい周波数領域を除去してエレベータ昇降判定データを算出する（Ｓ１４２３）。
【００８７】
次いで、行動パターン検出部１２３は、エレベータ昇降判定データが所定値Ｄ６よりも大きいか否かを判定する（Ｓ１４２５）。エレベータ昇降判定データが所定値Ｄ６よりも大きい場合、行動パターン検出部１２３は、ステップＳ１４２７の処理に進行する。一方、エレベータ昇降判定データが所定値Ｄ６よりも小さい場合、行動パターン検出部１２３は、ステップＳ１４３３の処理に進行する。ただし、所定値Ｄ６は、ユーザがエレベータで上昇を始めたことを認識することが可能な下限値である。
【００８８】
ステップＳ１４２７の処理に進行した場合、行動パターン検出部１２３は、エレベータ昇降判定データが最初に所定値Ｄ６を上回ったのか否かを判定する（Ｓ１４２７）。最初である場合、行動パターン検出部１２３は、ステップＳ１４２９の処理に進行してエレベータで上昇しているものと判定し、エレベータによる上昇を示す情報をテキスト抽出部１３１に入力する（Ｓ１４２９）。一方、最初でない場合、行動パターン検出部１２３は、ステップＳ１４３１の処理に進行してエレベータによる下降が終了したものと判定し、エレベータによる下降の終了を示す情報をテキスト抽出部１３１に入力する（Ｓ１４３１）。
【００８９】
ステップＳ１４３３の処理に進行した場合、行動パターン検出部１２３は、エレベータ昇降判定データが所定値Ｄ７よりも小さいか否かを判定する（Ｓ１４３３）。ただし、所定値Ｄ７は、ユーザがエレベータで下降を始めたことを認識することが可能な上限値である。エレベータ昇降判定データが所定値Ｄ７よりも大きい場合、行動パターン検出部１２３は、ステップステップＳ１４３５の処理に進行する。一方、エレベータ昇降判定データが所定値Ｄ７よりも小さい場合、行動パターン検出部１２３は、ステップＳ１４４１の処理に進行する。
【００９０】
ステップＳ１４３５の処理に進行した場合、行動パターン検出部１２３は、エレベータ昇降判定データが最初に所定値Ｄ７を下回ったのか否かを判定する（Ｓ１４３５）。最初である場合、行動パターン検出部１２３は、ステップＳ１４３７の処理に進行してエレベータで下降しているものと判定し、エレベータによる下降を示す情報をテキスト抽出部１３１に入力する（Ｓ１４３７）。一方、最初でない場合、行動パターン検出部１２３は、ステップＳ１４３９の処理に進行してエレベータによる上昇が終了したものと判定し、エレベータによる上昇の終了を示す情報をテキスト抽出部１３１に入力する（Ｓ１４３９）。
【００９１】
ステップＳ１４４１の処理に進行した場合、行動パターン検出部１２３は、現在、ユーザがエレベータに乗っているか否かを判定する（Ｓ１４４１）。エレベータに乗っている場合、行動パターン検出部１２３は、ステップＳ１４４３の処理に進行してエレベータが加速又は減速の状態にないと判定し、エレベータの加速又は減速がない状態を示す情報をテキスト抽出部１３１に入力する（Ｓ１４４３）。一方、エレベータに乗っていない場合、行動パターン検出部１２３は、ステップＳ１４４５の処理に進行し、エレベータに乗っていない状態を示す情報をテキスト抽出部１３１に入力する（Ｓ１４４５）。
【００９２】
このように、図８の例に従って判定処理を行うことにより、エレベータによる上昇／下降を判別することが可能になる。
【００９３】
○電車に乗っているのか否かの認識方法
次に、図９を参照しながら、ユーザが電車に乗っているのか否かを認識する方法について説明する。図９は、ユーザが電車に乗っているのか否かを認識する方法を示した説明図である。
【００９４】
まず、ユーザが行動すると、センサ情報が行動パターン検出部１２３に入力される。ここでは３軸方向の加速度データ（ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃ）が入力される。センサ情報が入力されると、行動パターン検出部１２３は、ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃに基づき、ユーザが電車に乗っていると誤認識されやすい周波数領域をローパスフィルター（ＬＰＦ）により除去する（Ｓ１５０１）。次いで、行動パターン検出部１２３は、上記の周波数領域が除去されたｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃに基づき、水平方向の加速度データ、及び垂直方向の加速度データを算出する（Ｓ１５０３、Ｓ１５０５）。ただし、水平方向、垂直方向とは、電車の走っている地面に対する水平な方向、垂直な方向を意味する。
【００９５】
次いで、行動パターン検出部１２３は、上記の水平方向の加速度データ、及び垂直方向の加速度データを所定のデータ分だけＦＩＦＯ形式で記録する（Ｓ１５０７、Ｓ１５０９）。次いで、行動パターン検出部１２３は、水平方向の加速度データを所定のデータ分だけ読み出し、その分散値である水平方向分散値（ｈ−ｖａｒ）を算出する（Ｓ１５１１）。また、行動パターン検出部１２３は、垂直方向の加速度データを所定のデータ分だけ読み出し、その分散値である垂直方向分散値（ｖ−ｖａｒ）を算出する（Ｓ１５１３）。水平方向分散値（ｈ−ｖａｒ）は、電車の走行時に検出される水平方向の揺れや振動の度合いを表している。また、垂直方向分散値（ｖ−ｖａｒ）は、電車の走行時に検出される垂直方向の揺れや振動の度合いを表している。
【００９６】
次いで、行動パターン検出部１２３は、垂直方向分散値（ｖ−ｖａｒ）が、最小の許容される垂直方向分散値である最小許容垂直分散値Ｖ１より大きく、かつ、最大の許容される垂直方向分散値である最大許容垂直分散値Ｖ２より小さいかを判定する（Ｓ１５１５）。垂直方向分散値（ｖ−ｖａｒ）が、Ｖ１以下又はＶ２以上である場合、行動パターン検出部１２３は、電車搭乗判定データ（ｄｅｔ）を０に設定する（Ｓ１５１７）。一方、垂直方向分散値がＶ１より大きく、かつ、Ｖ２より小さい場合、行動パターン検出部１２３は、ステップＳ１５１９の処理に進行する。
【００９７】
ステップＳ１５１９の処理に進行すると、行動パターン検出部１２３は、垂直方向分散値と水平方向分散値の何れが小さいかを判定する（Ｓ１５１９）。垂直方向分散値（ｖ−ｖａｒ）の方が小さい場合、行動パターン検出部１２３は、垂直方向分散値（ｖ−ｖａｒ）を所定データ分だけ積分し、積分値を算出する（Ｓ１５２１）。一方、水平方向分散値（ｈ−ｖａｒ）の方が小さい場合、行動パターン検出部１２３は、水平方向分散値（ｈ−ｖａｒ）を所定データ分だけ積分し、積分値を算出する（Ｓ１５２３）。そして、ステップＳ１５２１、Ｓ１５２３の処理により得られた積分値は、ユーザが電車に乗っているか否かを判定する電車搭乗判定データ（ｄｅｔ）に設定される。
【００９８】
次いで、行動パターン検出部１２３は、電車搭乗判定データが、ユーザが電車に搭乗していると認識される下限値である最小電車搭乗認識値Ｄ８よりも大きいか否かを判定する（Ｓ１５２５）。電車搭乗判定データがＤ８よりも大きい場合、行動パターン検出部１２３は、ユーザが電車に乗っていると判定し、電車に乗っている状態を示す情報をテキスト抽出部１３１に入力する（Ｓ１５２７）。一方、電車搭乗判定データがＤ８以下である場合、行動パターン検出部１２３は、ユーザが電車に乗っていないと判定し、ユーザが電車に乗っていないことを示す情報をテキスト抽出部１３１に入力する（Ｓ１５２９）。
【００９９】
このように、図９の例に従って判定処理を行うことにより、電車に乗っている状態か否かを判別することが可能になる。電車の加速状態から減速状態までに着目することで、電車に乗車していて電車が駅に停車している場合、電車が停車した場合、電車が駅に着いてユーザが電車から降りて歩き始めた場合等を判別することもできる。これらの判別結果をテキスト抽出部１３１に通知するように構成されていてもよい。
【０１００】
○右折／左折の認識方法
次に、図１０を参照しながら、ユーザの右折又は左折を認識する方法について説明する。図１０は、ユーザの右折又は左折を認識する方法を示した説明図である。
【０１０１】
まず、ユーザが行動すると、センサ情報が行動パターン検出部１２３に入力される。ここでは３軸方向の加速度データ（ｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃ）、及びジャイロデータ（ｘ−ｇｙｒｏ、ｙ−ｇｙｒｏ、ｚ−ｇｒｙｏ）が入力される。センサ情報が入力されると、行動パターン検出部１２３は、ローパスフィルター（ＬＰＦ）により、入力されたセンサ情報から、右折又は左折していると誤認識されやすい周波数領域を除去する（Ｓ１６０１）。次いで、行動パターン検出部１２３は、上記の周波数領域が除去されたｘ−ａｃｃ、ｙ−ａｃｃ、ｚ−ａｃｃ及びｘ−ｇｙｒｏ、ｙ−ｇｙｒｏ、ｚ−ｇｒｙｏに基づいて、重力方向の角速度を算出する（Ｓ１６０３）。
【０１０２】
次いで、行動パターン検出部１２３は、算出した角速度から、バンドパスフィルター（ＢＰＦ）により、右折又は左折していると認識するための曲がり認識領域外の値を除去して補正角速度（ｄｅｔ）を算出する（Ｓ１６０５）。次いで、行動パターン検出部１２３は、補正角速度が、ユーザが右折していると認識するための上限値である最大右折認識値Ｄ９よりも小さいか否かを判定する（Ｓ１６０７）。補正角速度がＤ９よりも小さい場合、行動パターン検出部１２３は、ユーザが右折していると判定し、その判定結果をテキスト抽出部１３１に入力する（Ｓ１６０９）。一方、補正角速度がＤ９以上の場合、行動パターン検出部１２３は、ステップＳ１６１１の処理に進行する。
【０１０３】
ステップＳ１６１１の処理に進行すると、行動パターン検出部１２３は、補正角速度が、ユーザが左折していると認識される下限値である最小左折認識値Ｄ１０よりも大きいか否かを判定する（Ｓ１６１１）。補正角速度がＤ１０より大きい場合、行動パターン検出部１２３は、ユーザが左折していると判定し、その判定結果をテキスト抽出部１３１に入力する（Ｓ１６１３）。一方、補正角速度がＤ１０よりも小さい場合、行動パターン検出部１２３は、ユーザが右折も左折もしていないと判定し、その判定結果をテキスト抽出部１３１に入力する（Ｓ１６１５）。
【０１０４】
このように、図１０の例に従って判定処理を行うことにより、ユーザの右折／左折を判別することが可能になる。
【０１０５】
以上、行動パターン検出部１２３の機能について詳細に説明した。上記の通り、動き・状態パターンは、ユーザの具体的な生活行動を表現したものではない。動き・状態パターンとは、ある瞬間（短時間）におけるユーザの状態を表現したものであるといえる。
【０１０６】
再び図２に戻って、本実施形態に係るテキスト選択部１０３の構成について説明する。
位置情報解析部１２５は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。位置情報解析部１２５は、センサ情報取得部１０１により入力された位置情報を、後述するテキスト抽出部１３１に出力する。また、位置情報解析部１２５は、センサ情報取得部１０１から出力された位置情報と、記憶部１１１に格納されているユーザの行動履歴情報１３３と、を利用して、位置情報の解析を行う。
【０１０７】
より詳細には、位置情報解析部１２５は、入力された位置情報を利用して、ユーザ行動履歴情報の一種である位置情報の履歴を更新する。この際、位置情報解析部１２５は、入力された位置情報にユーザに固有の識別情報（ユーザＩＤ）を関連付けて、位置情報の履歴を更新する。また、入力された位置情報に記載された緯度・経度の組み合わせが、新規な場所を表すものであった場合、位置情報解析部１２５は、該当する位置情報に、当該位置情報に固有の識別情報（場所ＩＤ）を関連付けて記録してもよい。更に、位置情報解析部１２５は、位置情報に関連付けられている日時に関する情報を参照して、記載されている時刻の含まれる時間帯を特定し、当該時間帯に対応する識別情報（時間帯ＩＤ）を関連付けて記録してもよい。
【０１０８】
また、位置情報解析部１２５は、入力された位置情報と、位置情報の履歴とを利用して、頻繁に訪れる場所や、現在位置の次に訪れそうな場所について解析を行う。頻繁に訪れる場所に関する解析は、例えば、位置情報の履歴に記載されている各場所について、ユーザがその場所を訪れる頻度を算出し、得られた頻度に基づいてスコアを決定することで行われる。また、現在位置の次に訪れそうな場所に関する解析は、例えば、現在位置から、位置情報の履歴に記載されている各場所へと移動する場合の条件付き確率を算出し、得られた条件付き確率に基づいてスコアを決定することで行われる。これらのスコアは、その値が大きければ大きいほど、対応する事象が確からしいことを示すものである。
【０１０９】
図１１は、本実施形態に係る記憶部１１１に格納されているユーザ行動履歴情報１３３の一例を示している。ユーザ行動履歴情報１３３には、位置情報の履歴や、位置情報解析部１２５が各種の処理により生成した情報等が格納されている。テキスト選択部１０３の有する各処理部は、各処理を実施するに際して、このユーザ行動履歴情報１３３を参照することが可能である。
【０１１０】
テキスト解析部１２７は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ、通信装置等により実現される。テキスト解析部１２７は、記憶部１１１のテキストデータベース（以下、テキストＤＢと略記する。）１３５に存在する各種のテキストを解析する。テキスト解析部１２７による解析により、テキスト（文）に含まれる単語に対して属性が付与されるとともに、テキストそのものに対して、テキストの表す動きや状態（コンテキスト）が付与される。このような解析処理により、各テキストがどのような時に使用されるものであり（コンテキスト）、テキスト中の単語がどのようなことを指しているのか（単語属性）が明らかになる。
【０１１１】
テキスト解析部１２７は、まず、テキストＤＢ１３５に格納されているテキストをそれぞれ取得して、取得したテキストに対して、いわゆる形態素解析を実施する。テキスト解析部１２７は、形態素解析を実施するにあたり、記憶部１１１のテキスト解析用データベース（以下、テキスト解析用ＤＢと略記する。）に含まれる各種辞書を利用する。これにより、テキストは、テキストを構成する１または複数の単語へと分解されることとなる。このようにして生成された単語を、本実施形態に係るテキスト選択部１０３は、キーワードとして扱う。また、テキスト解析部１２７は、形態素解析に利用する辞書を参照して、各単語に対して、属性を付与する。なお、テキスト解析部１２７は、テキストを解析するに際して、形態素解析だけでなく、必要に応じて、テキストの構文解析を実施したり、意味解析を実施したりしてもよい。
【０１１２】
なお、単語によっては、一つの単語に様々な属性が関連付けられている場合がある。例えば、「恵比寿」という単語は、東京に存在する地名であり、日本の神（七福神の一柱）であり、電車の駅の名前でもある。テキスト解析部１２７は、上述の例のように、ある単語に対して複数の属性を付与しうる場合に、いずれか一つの属性を付与するのではなく、複数の属性を付与する。これにより、テキスト解析部１２７は、一つの単語を多面的にとらえることが可能となる。
【０１１３】
また、テキスト解析部１２７は、テキストを構成する単語に対して属性が付与されると、付与された属性を利用して、テキストのコンテキスト（テキストが表す動きや状態）を付与する。この場合にも、テキスト解析部１２７は、あるテキストに対して複数のコンテキストが付与しうる場合に、いずれか一つのコンテキストを付与するのではなく、複数のコンテキストを付与する。これにより、テキスト解析部１２７は、一つの文章のコンテキストを多面的にとらえることが可能となる。
【０１１４】
テキスト解析部１２７は、テキストの単語への分解と、それに続く属性及びコンテキストの付与が終了すると、各単語（すなわち、キーワード）と属性との組み合わせに対するスコア付けと、コンテキストに対するスコア付けとを実施する。これにより、各テキストに含まれる単語についてどの属性が確からしいのか、及び、どのコンテキストが確からしいのかが数値化されることとなる。
【０１１５】
このようなテキスト解析部１２７によるテキストの解析処理は、任意のタイミングで実行される。例えば、テキスト解析部１２７は、テキストＤＢ１３５等に未解析のテキストが追加された際に、上述のようなテキスト解析処理を実施してもよい。また、テキスト解析部１２７は、所定の周期ごと（例えば、１日に１回など）に、未解析のテキストを抽出し、抽出した未解析のテキストに対して上述のようなテキスト解析処理を実施してもよい。
【０１１６】
以下、図１２〜図１６を参照しながら、テキスト解析部１２７によるテキストの解析処理を具体的に説明する。図１２〜図１６は、テキスト解析部１２７によるテキストの解析処理を説明するための説明図である。
【０１１７】
まず、図１２を参照する。図１２は、テキスト解析部１２７により行われるテキスト解析処理の概略を示している。図１２に示した例では、「布袋駅には昔ビール工場がありました」というテキスト（文章）に対して、テキスト解析部１２７がテキスト解析処理を実施する場合について着目している。
【０１１８】
この場合、テキスト解析部１２７は、着目している文章に対して形態素解析を実施し、文章を複数の単語に分割する。図１２に示した例の場合、着目している文章は、「布袋」「駅」「昔」「ビール」「工場」「ある」といった名詞及び動詞に加え、「には」「ました」といった助詞へと分割されることとなる。テキスト解析部１２７は、これらのキーワードに対して固有の識別情報（キーワードＩＤ）を付与するとともに、参照した辞書等に基づいて、属性を付与する。図１２の例では、キーワード「布袋」に対して、「建造物：鉄道：駅」「地名」「固有名詞：日本の神」「飲食物：ビール」という属性が付与されている。図１２に示したように、付与される属性は、「駅」のような下位の概念に加えて、「鉄道」「建造物」といった、より上位の概念が関連付けられていてもよい。また、テキスト解析部１２７は、キーワードと属性との組み合わせに対して、それぞれスコアを算出し、対応する組み合わせに関連付ける。
【０１１９】
また、テキスト解析部１２７は、着目している文章について、文章に固有の識別情報（文ＩＤ）を付与するとともに、着目している文章に該当すると考えられるコンテキストを付与する。図１２に示した例では、着目している文章に対して、「論述」「移動中：徒歩」「移動中：電車」といったコンテキストが付与され、それぞれにスコアが算出されている。図１２に示したように、コンテキストについても、「徒歩」「電車」という下位の概念に加えて、「移動中」といった、より上位の概念が関連付けられていてもよい。
【０１２０】
図１３Ａ及び図１３Ｂは、テキストを構成する単語に対して、テキスト中に存在する各単語の属性の頻度に基づいてテキスト全体の属性を推定し、各単語の属性の尤度を決定する方法について図示している。
【０１２１】
図１３Ａに示した例では、「布袋駅には昔ビール工場がありました」という文章に着目した場合について示している。テキスト解析部１２７は、着目している文章に対して形態素解析を行い、文章を「布袋」「駅」「昔」「ビール」「工場」「ある」という形態素へと分割する。また、テキスト解析用ＤＢ１３７等に格納されている辞書を参照することで、「布袋」に対して、「駅」「地名」「神」「飲み物」という４種類の属性を付与し、各単語についても、同様に属性を付与する。
【０１２２】
ここで、着目している文章全体を考えると、文章中に「駅」及び「飲み物」という属性はそれぞれ２つずつ存在し、他の属性は１つずつ存在する。従って、文章全体として考えると、着目している文は、「駅」「飲み物」の話をしている可能性が高いと判断することができる。従って、テキスト解析部１２７は、かかる判断結果を踏まえて、キーワードの属性それぞれについて、スコアを算出することができる。図１３Ａに示した例では、「布袋」というキーワードに対して、「駅（スコア：０．４）」「飲み物（スコア：０．４）」「神（スコア：０．１）」「地名（スコア：０．１）」が付与される。
【０１２３】
図１３Ｂに示した例では、「布袋は次の駅です」という文章に着目した場合について示している。この文章についても、テキスト解析部１２７は同様に解析を行い、文章全体として「駅」の話をしている可能性が高いと判断する。従って、テキスト解析部１２７は、かかる判断結果を踏まえて、キーワードの属性それぞれについて、スコアを算出することができる。図１３Ｂに示した例では、「布袋」というキーワードに対して、「駅（スコア：０．８）」「飲み物（スコア：０．６６）」「神（スコア：０．６６）」「地名（スコア：０．６６）」が付与される。
【０１２４】
また、図１３Ａ及び図１３Ｂに示したように、各属性について算出されるスコアは、着目している文章によって異なる値となる。
【０１２５】
図１４に示した例では、事前に大量の文からなる集合を解析して、文章を構成する単語のクラスタを生成しておいた上で、この単語クラスタを利用して、単語の属性を付与する場合について示している。この場合、テキスト解析部１２７は、形態素解析の結果得られた複数の単語それぞれについて、単語クラスタ内でどのクラスタに属するかを判断する。例えば、図１４に示した「布袋」という単語は、単語「福禄寿」が属する「神」というクラスタと、「カリン」という飲料製品メーカー名が属する「飲み物」というクラスタと、「駅」というクラスタに属している。かかる場合に、テキスト解析部１２７は、「駅」「飲み物」というクラスタ内の活性が高いと考え、「布袋」の属性として、「駅」「飲み物」を付与することができる。
【０１２６】
なお、単語に対して属性を付与する方法は、上述の例に限定されるわけではなく、他の任意の方法を利用することが可能である。また、着目している文章の前後に他の文章が存在して、関連する一連の文章群となっている場合には、テキスト解析部１２７は、関連する文章の解析結果を利用し、単語に対して属性を付与してもよい。
【０１２７】
続いて、図１５及び図１６を参照しながら、テキストに対するコンテキストの付与方法について説明する。図１５及び図１６は、本実施形態に係るテキストへのコンテキストの付与方法を説明するための説明図である。
【０１２８】
まず、図１５を参照する。図１５では、文中における属性頻度と、テキスト解析用ＤＢ１３７に格納されている辞書ファイルとを利用して、テキストに対してコンテキストを付与する方法について示している。
【０１２９】
図１５では、「布袋駅には昔ビール工場がありました」という文章について着目している。かかる方法では、テキスト解析部１２７は、着目しているテキストに対して、何らかの分類カテゴリが設定されている場合には、かかる分類カテゴリを利用する。図１５に示した例では、「布袋駅には昔ビール工場がありました」という例文に、「論述」というカテゴリが予め設定されているため、テキスト解析部１２７は、かかる分類カテゴリ（例文カテゴリ）を利用する。なお、「論述」というカテゴリは、ある物事に対して論述しているテキスト（文章）に対して付与される分類カテゴリである。
【０１３０】
また、テキスト解析部１２７は、先に説明した方法により、着目しているテキストに対して形態素解析等を行い、テキスト中に存在する単語（キーワード）に対して、属性を付与する。その上で、テキスト解析用ＤＢ１３７等に格納されている辞書ファイルを参照して、付与された属性に対する上位概念を抽出する。なお、付与されている属性に上位概念が存在しない場合には、付与された属性をそのまま利用する。
【０１３１】
図１５に示した例では、テキストを解析することで、「駅」「地名」「紙」「飲み物」「時間」「工場」「存在」という属性が付与される。テキスト解析部１２７は、付与された属性と、辞書ファイルとを利用して、上位概念が存在する属性を変更して、「鉄道」「飲食物」「固有名詞」「時間」「建造物」「存在」という属性を抽出する。
【０１３２】
その後、テキスト解析部１２７は、テキスト解析用ＤＢ１３７等に格納されている、属性とコンテキストとの対応関係が記載されているマッピングテーブルを利用して、抽出した（上位概念の）属性から、コンテキストを特定する。図１５に示した例では、マッピングテーブルを利用して、「鉄道」という上位概念の属性を、「移動中：電車」というコンテキストに対応づける。同様に、「飲食物」という上位概念の属性を、「食事中」というコンテキストに対応づけ、「固有名詞」という上位概念の属性を、「論述」というコンテキストに対応づける。
【０１３３】
テキスト解析部１２７は、マッピングテーブルにより対応づけられたコンテキストと、もし存在しているのであれば、着目しているテキストの例文カテゴリとを利用して、着目しているテキストのコンテキストを決定する。例えば図１５では、テキスト解析部１２７は、両者の比較から、「移動中：電車」「食事中」「論述」コンテキストの確率が高いと判断する。
【０１３４】
これにより、テキスト解析部１２７は、着目しているテキストの文コンテキストは、「移動中：電車」「食事中」「論述」であると決定する。
【０１３５】
他方、図１６に示した例では、テキスト解析部１２７は、ユーザが条件設定部１２１等で設定しているコンテキストを学習しつつ、設定されているコンテキスト条件で使用された文章の履歴を記録しておく。図１６に示した例では、ある文章Ｘは、図中に示したような履歴情報（使用履歴）から明らかなように、「移動中：電車」というコンテキストにおいて多く利用されている。従って、テキスト解析部１２７は、着目している文章Ｘは、「移動中：電車」とうコンテキストの確率が高いと判断する。このように、図１６に示した例は、コンテキストの履歴を機械学習し、得られた学習結果をフィードバックすることにより、着目している文章の文コンテキストを決定する方法である。
【０１３６】
なお、かかるフィードバック方式を利用した方法は、他の文コンテキストの付与方法と併用してもよい。
【０１３７】
なお、テキスト解析部１２７が解析を実施するテキストは、テキストＤＢ１３５に記録されているテキストに限定されるわけではない。テキスト解析部１２７は、例えば、情報処理装置１０に接続された外部接続機器やリムーバブル記録媒体に格納されているテキストや、インターネットやホームネットワーク上に存在する各種機器に格納されているテキストを解析することも可能である。
【０１３８】
テキスト解析部１２７は、また、キーワード変換部１２９から各種のキーワードが入力された場合に、入力されたキーワードに対しても解析処理を実施し、キーワードに対して当該キーワードに該当する属性を付与する。キーワードへの属性付与が終了すると、テキスト解析部１２７は、キーワード変換部１２９に対して、キーワードに付与された属性を表す情報を出力する。
【０１３９】
上述のような処理がなされることで、図１７に示したようなテキストデータベース１３５が構築されることとなる。図１７に示したように、テキストＤＢ１３５には、格納されている文章に関する情報や、抽出されたキーワードに関する情報や、テキストに付与されたコンテキストに関する情報や、文章とキーワードとの対応付けに関する情報等が格納されている。
【０１４０】
例えば、文に関する情報には、テキストＤＢ１３５に格納されているテキストに関する情報がまとめられている。この情報には、文に固有の識別情報（文ＩＤ）と、文のタイプを表す情報と、文そのものを表す情報と、文の難易度を表すレベルに関する情報と、言語の種別を表す識別情報（言語ＩＤ）とが記載されている。また、各文には、関連する文を表す識別情報（関連文ＩＤ）が関連づけられている。
【０１４１】
後述するテキスト抽出部１３１は、かかるテキストＤＢ１３５を利用することで、ユーザの現在位置や行動パターンに適合したテキストを的確に抽出することが可能となる。
【０１４２】
キーワード変換部１２９は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ、通信装置等により実現される。キーワード変換部１２９は、センサ情報取得部１０１から出力された位置情報を利用して、取得した位置情報を、位置情報が表す場所に関連するキーワードへと変換する。かかるキーワードへの変換は、例えば、テキスト解析用ＤＢ１３７に格納されている各種の辞書やデータベースを利用したり、ネットワーク上の検索エンジンを管理する各種サーバを利用したりすることで、実施することが可能である。キーワード変換部１２９は、かかるキーワード変換処理を実施することで、緯度・経度からなる位置情報から、住所、地名、近くの建物・道路・店舗等の名称等の各種キーワードを得ることができる。
【０１４３】
また、キーワード変換部１２９は、センサ情報取得部１０１から通知された位置情報だけでなく、位置情報解析部１２５によって解析及び更新されたユーザ行動履歴情報１３３を参照して、頻繁に訪れる場所や、現在位置の次に訪れそうな場所についても、キーワード変換処理を実施してもよい。これにより、センサ情報取得部１０１から通知された位置情報が表す場所から連想されるユーザの訪れそうな場所についても、キーワードを取得することが可能となる。
【０１４４】
キーワード変換部１２９は、このようにして得られたキーワードを、テキスト解析部１２７に出力して、テキスト解析部１２７に対して、得られたキーワードへの属性の付与を要請する。また、キーワード変換部１２９は、変換されたキーワードに対して属性が付与されると、属性の付与されたキーワードをテキスト抽出部１３１に出力する。
【０１４５】
テキスト抽出部１３１は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。テキスト抽出部１３１は、行動パターン検出部１２３から出力されたコンテキスト、位置情報解析部１２５から出力された位置情報、キーワード変換部１２９から出力されたキーワード等に基づいて、テキストＤＢ１３５に格納されている複数のテキストの中から適切なテキストを抽出する。また、テキストの抽出に際しては、テキスト抽出部１３１は、条件設定部１２１により設定された各種条件も考慮する。
【０１４６】
具体的には、テキスト抽出部１３１は、入力されたコンテキスト、設定条件、キーワード、属性等に基づいて、テキストＤＢ１３５に格納されているテキスト（及びテキストに付与されている属性・コンテキスト）とのマッチングを行う。その上で、テキスト抽出部１３１は、入力された条件等に最も適合したテキストを、ユーザに提示するテキストとして、ユーザに提示する。これにより、ユーザには、ユーザの現在地や状態（コンテキスト）に適合した文章が提示されることとなり、ユーザは、より臨場感のある文章を参照することが可能となる。
【０１４７】
なお、テキストの抽出の際には、属性は適合しているがキーワードは適合していない、といった文章が抽出される場合もあり得る。その場合、テキスト抽出部１３１は、抽出したテキスト中に存在するキーワードを、キーワード変換部１２９から入力された、属性の一致するキーワードに適宜入れ替えることを行っても良い。かかるキーワードの入れ替え処理を行うことで、ユーザに対して、より臨場感のある文章を提示することが可能となる。
【０１４８】
なお、上述の説明では、位置情報及び位置情報から導き出される情報と、条件設定部１２１により設定された条件と、行動パターン検出部１２３により検出されたユーザの状態（コンテキスト）とに基づいてテキストが抽出される場合について説明した。しかしながら、テキスト選択部１０３が行動パターン検出部１２３を有していない場合には、位置情報及び位置情報から導き出される情報と、条件設定部１２１により設定された条件とに基づいて、テキストが抽出されてもよい。
【０１４９】
以上、本実施形態に係る情報処理装置１０の機能の一例を示した。上記の各構成要素は、汎用的な部材や回路を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。また、各構成要素の機能を、ＣＰＵ等が全て行ってもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用する構成を変更することが可能である。
【０１５０】
なお、上述のような本実施形態に係る情報処理装置の各機能を実現するためのコンピュータプログラムを作製し、パーソナルコンピュータ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリなどである。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信してもよい。
【０１５１】
＜情報処理方法の流れについて＞
続いて、図１８〜図２０を参照しながら、本実施形態に係る情報処理方法の流れについて、簡単に説明する。
【０１５２】
［テキスト解析方法の流れについて］
まず、図１８を参照しながら、テキスト解析部１２７により実行されるテキスト解析方法の流れについて、簡単に説明する。図１８は、本実施形態に係るテキスト解析方法の流れを示した流れ図である。
【０１５３】
テキスト解析部１２７は、まず、テキストＤＢ１３５に格納されている言語別の例文・質問のうちから、未解析の文章を１つ取得する（Ｓ１０１）。続いて、テキスト解析部１２７は、取得した未解析の文章について形態素解析を実施して、先に説明した方法により、例文・質問に付与するキーワードの属性と、コンテキストとを決定する（Ｓ１０３）。テキスト解析部１２７は、続いて、決定したキーワード属性及びコンテキストをテキストＤＢ１３５の対応する箇所に追記する（Ｓ１０５）。
【０１５４】
その後、テキスト解析部１２７は、未解析の文章がまだ存在するか否かを判断する（Ｓ１０７）。未解析の文章が未だ存在する場合には、テキスト解析部１２７は、ステップＳ１０１に戻ってテキストの解析処理を継続する。また、未解析の文章が存在しない場合には、テキスト解析部１２７は、テキストの解析処理を終了する。
【０１５５】
［テキスト選択方法の流れについて］
次に、図１９及び図２０を参照しながら、本実施形態に係る情報処理装置１０により実行されるテキスト選択方法の流れについて、簡単に説明する。図１９及び図２０は、本実施形態に係るテキスト選択方法の流れを示した流れ図である。
【０１５６】
まず、図１９を参照する。情報処理装置１０のセンサ情報取得部１０１は、各種センサから出力されたセンサ情報を取得する（Ｓ１１１）。センサ情報取得部１０１は、取得したセンサ情報を、テキスト選択部１０３の行動パターン検出部１２３、位置情報解析部１２５及びキーワード変換部１２９に出力する。
【０１５７】
行動パターン検出部１２３は、センサ情報取得部１０１から出力されたセンサ情報（モーションセンサから出力されたセンサ情報）に基づいてユーザの状態を検出し、ユーザのコンテキストを決定する（Ｓ１１３）。コンテキストを決定すると、行動パターン検出部１２３は、決定したコンテキストを示す情報を、テキスト抽出部１３１に出力する。
【０１５８】
また、位置情報解析部１２５は、センサ情報取得部１０１から出力されたセンサ情報（位置情報）に基づいて、頻繁に訪れる場所や、次に訪れそうな場所に関する各種の解析を実施する（Ｓ１１５）。その後、位置情報解析部１２５は、得られた解析結果及び取得した位置情報を、ユーザ行動履歴情報１３３に反映する（Ｓ１１７）。
【０１５９】
また、キーワード変換部１２９は、各種のデータベースやネットワーク上の検索エンジン等を利用して、センサ情報取得部１０１から出力された位置情報を、住所・地名、近くの建物・道路・店舗等の名称等のキーワードへと変換する（Ｓ１１９）。その後、キーワード変換部１２９は、変換の結果得られたキーワードをテキスト解析部１２７に出力する。テキスト解析部１２７は、キーワード変換部１２９から出力されたキーワードについて解析を行い（Ｓ１２１）、キーワードに対して属性を付与する。属性の付与が終了すると、テキスト解析部１２７は、各キーワードに付与された属性を示す情報を、キーワード変換部１２９に出力する。キーワード変換部１２９は、各キーワードに付与された属性を示す情報を取得すると、得られたキーワード及びキーワードに付与された属性を示す情報を、テキスト抽出部１３１に出力する。
【０１６０】
テキスト抽出部１３１は、各処理部から出力されたコンテキスト・設定条件・キーワード・属性・位置情報等に基づいて、テキストＤＢ１３５に格納されている複数の例文・質問の中から、適切な例文や質問を抽出する（Ｓ１２３）。ここで、抽出した例文や質問について、属性やコンテキストは適合しているがキーワードについては適合していない場合には、抽出した例文や質問をキーワードに応じて編集してもよい（Ｓ１２５）。その後、テキスト抽出部１３１は、抽出した例文や質問を、表示制御部１０５に出力する（Ｓ１２７）。表示制御部１０５は、テキスト抽出部１３１から出力された例文や質問を、情報処理装置１０の有するディスプレイ等の表示部に表示する。これにより、情報処理装置１０のユーザは、テキスト選択部１０３により選択された、ユーザの現在地やコンテキストに適合する例文や質問を、閲覧することができる。
【０１６１】
次に、図２０を参照する。図１９では、ユーザの現在位置、属性、キーワード、コンテキスト等に応じて例文・質問を抽出する場合について説明したが、図２０では、ユーザのコンテキストを利用せずに例文・質問を抽出する場合について説明している。
【０１６２】
まず、情報処理装置１０のセンサ情報取得部１０１は、各種センサから出力されたセンサ情報を取得する（Ｓ１３１）。センサ情報取得部１０１は、取得したセンサ情報を、テキスト選択部１０３の位置情報解析部１２５及びキーワード変換部１２９に出力する。
【０１６３】
位置情報解析部１２５は、センサ情報取得部１０１から出力されたセンサ情報（位置情報）に基づいて、頻繁に訪れる場所や、次に訪れそうな場所に関する各種の解析を実施する（Ｓ１３３）。その後、位置情報解析部１２５は、得られた解析結果及び取得した位置情報を、ユーザ行動履歴情報１３３に反映する（Ｓ１３５）。
【０１６４】
また、キーワード変換部１２９は、各種のデータベースやネットワーク上の検索エンジン等を利用して、センサ情報取得部１０１から出力された位置情報を、住所・地名、近くの建物・道路・店舗等の名称等のキーワードへと変換する（Ｓ１３７）。その後、キーワード変換部１２９は、変換の結果得られたキーワードをテキスト解析部１２７に出力する。テキスト解析部１２７は、キーワード変換部１２９から出力されたキーワードについて解析を行い（Ｓ１３９）、キーワードに対して属性を付与する。属性の付与が終了すると、テキスト解析部１２７は、各キーワードに付与された属性を示す情報を、キーワード変換部１２９に出力する。キーワード変換部１２９は、各キーワードに付与された属性を示す情報を取得すると、得られたキーワード及びキーワードに付与された属性を示す情報を、テキスト抽出部１３１に出力する。
【０１６５】
テキスト抽出部１３１は、各処理部から出力された設定条件・キーワード・属性・位置情報等に基づいて、テキストＤＢ１３５に格納されている複数の例文・質問の中から、適切な例文や質問を抽出する（Ｓ１４１）。ここで、抽出した例文や質問について、属性等は適合しているがキーワードについては適合していない場合には、抽出した例文や質問をキーワードに応じて編集してもよい（Ｓ１４３）。その後、テキスト抽出部１３１は、抽出した例文や質問を、表示制御部１０５に出力する（Ｓ１４５）。表示制御部１０５は、テキスト抽出部１３１から出力された例文や質問を、情報処理装置１０の有するディスプレイ等の表示部に表示する。これにより、情報処理装置１０のユーザは、テキスト選択部１０３により選択された、ユーザの現在地等に適合する例文や質問を、閲覧することができる。
【０１６６】
このように、本実施形態に係る情報処理装置１０は、ユーザの現在地、頻繁に訪れる場所、次に訪れそうな場所といった場所に関する状況や、ユーザのコンテキスト等に適合した、より実際に使用される可能性の高い例文、質問、問題等をユーザに提示可能である。これにより、本実施形態に係る情報処理装置１０は、ユーザに興味を起こさせることが可能となり、ユーザの学習のモチベーションを高く維持することができる。その結果、ユーザは、効率的な学習が可能となる。
【０１６７】
また、本実施形態に係る情報処理装置１０では、ユーザの位置情報に応じた文章が自動的に選択される。そのため、本実施形態に係る情報処理装置１０を例えば語学学習等に適用することで、例えば旅行先などで、必要な文章が自動的にユーザに提示されることとなる。従って、ユーザは、状況にあった会話用の文章を、複数の文章の中から検索することなく取得することが可能となる。
【０１６８】
なお、上述の説明では、特に位置情報に着目して説明を行ったが、位置情報に換えて、もしくは位置情報に加えて、時刻に関する情報に着目して、文章の選択を行っても良い。これにより、ユーザが情報処理装置１０を操作している時刻に応じて文章が選択されることとなるため、時刻にあった文章が自動的に選択されるようになる。また、時刻情報だけでなく、例えば、現在の天気に関する情報を例えばネットワーク上の検索エンジン等から取得することで、天候にあった文章を自動的に選択するようにすることも可能である。
【０１６９】
（第２の実施形態）
続いて、図２１〜図３０を参照しながら、本発明の第２の実施形態に係る情報処理装置及び出題傾向設定方法について、詳細に説明する。
第１の実施形態に係る情報処理装置は、ユーザの位置情報やコンテキスト等に適合したテキストを自動的に選択する機能を有していた。以下で説明する第２の実施形態に係る情報処理装置１０は、ユーザの学習レベルにあわせて問題の出題傾向を自動的に設定する機能を有している。以下で説明する本実施形態に係る情報処理装置１０を利用することで、ユーザは、効果的に学習を進めることが可能となる。
【０１７０】
＜情報処理装置の構成について＞
まず、図２１を参照しながら、本実施形態に係る情報処理装置１０の構成について、詳細に説明する。図２１は、本実施形態に係る情報処理装置１０の構成を示したブロック図である。
【０１７１】
本実施形態に係る情報処理装置１０は、図２１に示したように、表示制御部１０５、ユーザ回答取得部１０７、ユーザ回答判定部１０９、記憶部１１１、出題傾向設定部１４１及び問題選択部１４３を主に備える。
【０１７２】
ここで、表示制御部１０５、ユーザ回答取得部１０７及び記憶部１１１は、本発明の第１の実施形態に係る表示制御部１０５、ユーザ回答取得部１０７及び記憶部１１１と同様の構成を備え、同様の効果を奏する。従って、以下では詳細な説明は省略する。
【０１７３】
ユーザ回答判定部１０９は、問題選択部１４３によって出題された問題に関するユーザ回答を判定し、正誤に関する情報を出題傾向設定部１４１に出力する以外は、第１の実施形態に係るユーザ回答判定部１０９と同様の構成を備え、同様の効果を奏する。従って、以下では、詳細な説明は省略する。
【０１７４】
出題傾向設定部１４１は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。出題傾向設定部１４１は、ユーザの学習レベル（学習の習熟度合い）に応じて、出題される問題の傾向を自動的に設定する。出題傾向設定部１４１が設定する出題傾向として、例えば、出題される問題の難易度レベルにとどまらず、ある問題に類似する問題を優先的に出題する、ある程度の期間をおいて未習熟の問題を繰り返し出題する、等といったものを挙げることができる。
【０１７５】
［出題傾向設定部の詳細な構成について］
ここで、図２２を参照しながら、出題傾向設定部１４１の構成について、更に詳細に説明する。図２２は、本実施形態に係る出題傾向設定部１４１の構成を説明するためのブロック図である。
【０１７６】
図２２に示したように、本実施形態に係る出題傾向設定部１４１は、ユーザ回答解析部１５１と、忘却曲線生成部１５３と、出題条件設定部１５５と、を更に備える。
【０１７７】
ユーザ回答解析部１５１は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。ユーザ回答解析部１５１は、ユーザ回答判定部１０９によるユーザ回答の正誤判定結果を利用して、ユーザの正答率及び誤答率を算出する。また、ユーザ回答解析部１５１は、算出したユーザの正答率を利用して、問題の難易度を算出する。
【０１７８】
以下、具体的に、ユーザ回答解析部１５１の機能について説明する。
ユーザ回答解析部１５１は、ユーザ回答判定部１０９からユーザ回答の正誤判定結果を取得すると、図２３に示したような正答率テーブルを更新するとともに、正誤判定結果に対応する問題の正答率を算出する。
【０１７９】
正答率テーブルは、図２３に示したように、各ユーザに対して、設問に固有の識別情報（設問ＩＤ）ごとに、正答数と、出題数とが記載されているものである。この正答率テーブルは、例えば記憶部１１１の所定の記憶領域に格納されている。例えば、ユーザＡの設問ＩＤ１に対する正答数は５であり、出題数は２０となっている。この場合に、ユーザＡが、再度設問ＩＤ１に対応する問題を解いた場合を考える。この際、ユーザ回答が正答であった場合には、正答数及び出題数それぞれが１加算され、それぞれ、６、２１となり、正答率は、０．２９となる。
【０１８０】
ここで、正答率が低いほど、ユーザは該当する問題を難しく感じていると判断することができる。従って、ユーザ回答解析部１５１は、算出した正答率の逆数を、問題の難易度を数値化したものとして利用可能である。例えば、正答数及び出題数がそれぞれ５，２０である問題は、正答率が０．２５であり、難易度が４．００となる。
【０１８１】
また、ユーザ回答解析部１５１は、正誤判定結果を用いて、図２４に示したような誤答マトリックスを更新する。誤答マトリックスは、図２４に示したように、各ユーザに対して、設問ＩＤごとに、誤答数と、出題数とが記載されているものである。この誤答マトリックスは、例えば記憶部１１１の所定の記憶領域に格納されている。正答数＋誤答数＝出題数の関係から、ユーザ回答解析部１５１は、容易に誤答マトリックスを生成することができる。また、ユーザ回答解析部１５１は、誤答マトリックスを利用して、誤答率を算出する。
【０１８２】
更に、ユーザ回答解析部１５１は、正誤判定結果を用いて、図２５に示したような最終回答日時及び回答回数に関するテーブルを更新する。このテーブルは、図２５に示したように、各ユーザに対して、設問ＩＤごとに、最終回答日時と、回答回数とが記載されているものである。この最終回答日時・回答回数に関するテーブルは、例えば記憶部１１１の所定の記憶領域に格納されている。この最終回答日時・回答回数に関するテーブルは、後述する忘却曲線生成部１５３が忘却曲線を生成する際に利用される。
【０１８３】
また、ユーザ回答解析部１５１は、これらテーブルの更新が終了すると、図２６に示したような、複数の忘却率テーブル（以下、忘却率テーブル群と称する。）を更新する。各忘却率テーブルは、回答回数ごとに設けられるものであり、経過時間ごと（例えば、１日ごと等）に、正答数と出題数とが記録されている。図２３〜図２５に示したテーブルは、ユーザごとに管理されているものであったが、図２６に示した忘却率テーブルは、回答回数を基準として（ユーザの区別なく）生成されるものである。図２６に示した忘却率テーブルは、回答回数がｑ回の場合における、経過時間ごと（１日ごと）の正答数の変化を示している。
【０１８４】
なお、ユーザ回答解析部１５１が生成する忘却率テーブル群は、図２６に示したような、各回答回数において設問ごとに生成されるものに限定されるわけではなく、設問のまとまり（例えば、中学１年生レベルの英単語等）ごとに生成されるものであってもよい。このように、設問ごとではなく、設問のまとまりごとに忘却率テーブル群を生成することで、より広い視野でユーザ回答の傾向を判断することが可能となる。
【０１８５】
上述のような、各種テーブルの更新等を含むユーザ回答の解析処理が終了すると、ユーザ回答解析部１５１は、解析処理が終了した旨を、忘却曲線生成部１５３及び出題条件設定部１５５に通知する。忘却曲線生成部１５３及び出題条件設定部１５５は、かかる通知を受けて、それぞれの処理部における処理を開始する。
【０１８６】
忘却曲線生成部１５３は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。忘却曲線生成部１５３は、ユーザ回答解析部１５１が更新した忘却率テーブル群を利用して、正答率の経時変化を表す忘却曲線を生成する。忘却曲線の一例を、図２７に示す。図２７に示したように、忘却曲線は、横軸に忘れるまでの時間（すなわち、経過時間）をとり、縦軸に、着目している物事を覚えている割合（すなわち、正答率）をとったグラフ図である。ここで、縦軸として用いられる正答率は、例えば、設問ごと（又は、設問のまとまりごと）の正答率の平均である。忘却曲線は、図２６に示した忘却率テーブル群を利用して生成されるものであるため、図２７に示したように、回答回数ごとに曲線が生成されることとなる。
【０１８７】
忘却曲線生成部１５３は、生成した忘却曲線を、例えば記憶部１１１の所定の記憶領域に格納する。これにより、本実施形態に係る出題傾向設定部１４１及び問題選択部１４３は、各処理部における処理を実施する際に、生成された忘却曲線を利用することが可能となる。
【０１８８】
忘却曲線生成部１５３は、忘却曲線の生成が終了すると、生成が終了した旨を出題条件設定部１５５に通知する。
【０１８９】
なお、データが不足したり、ノイズが多い場合には、忘却曲線生成部１５３は、生成した忘却曲線をパラメトリックな関数に回帰させてもよい。
【０１９０】
出題条件設定部１５５は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。出題条件設定部１５５は、ユーザ回答解析部１５１が算出した誤答率に基づいて複数の問題それぞれの間の類似度を算出するとともに、算出した類似度を利用して複数の問題それぞれの評価値を算出する。また、出題条件設定部１５５は、ユーザ回答解析部１５１により算出されたユーザの正答率を、上述の忘却率テーブル群を用いて算出した正答率閾値を用いて更新する。
【０１９１】
以下、具体的に説明する。
出題条件設定部１５５は、ユーザの正答率と、記憶部１１１等に格納されている忘却率テーブル群とを利用して、以下に示す何れかの条件に該当する場合に、以下の式１０１に基づいてユーザの正答率ｐを更新する。ここで、下記式１０１において、ｐは、ユーザの正答率であり、ｒは、忘却率テーブル群から算出される、正答率閾値である。また、ηは、ユーザの学習の度合を表す係数（学習率）であり、事前に適宜決定されるパラメータである。なお、以下の式１０１では、更新後の正答率を便宜的にｐ’と表記している。
【０１９２】
（条件１）：ユーザ回答が誤答であり、かつ、ｐ＜ｒのとき
（条件２）：ユーザ回答が正答であり、かつ、ｐ＞ｒのとき
【０１９３】
【数１】
2011232445.tif 000003
・・・（式１０１）
【０１９４】
ここで、ユーザが本実施形態に係る情報処理装置１０を初めて使用する際には、出題条件設定部１５５は、ユーザの正答率ｐは、情報処理装置全体の正答率（すなわち、既登録の全ユーザの正答率の平均値等）とする。また、ユーザがある設問をｍ回回答しており、かつ、ｍ回目の回答を前回の回答時からｎ日後に行っていた場合、出題条件設定部１５５は、正答率閾値ｒを、ｍ回目の忘却率テーブルのｎ日後の欄に記載されている正答数及び出題数から算出した正答率とする。
【０１９５】
このようにして更新されるユーザの正答率は、例えば図２８に一例を示したように、再出題への期間を設定する際に利用することが可能である。すなわち、本実施形態に係る情報処理装置１０では、図２８において斜線で示した部分に該当する設問（すなわち、以前回答した時点から、図中に示した期間が経過した、または、経過しつつある設問）が、自動的に選択されるようになる。また、先に述べたように、正答率ｐは、所定の条件を満たした場合に式１０１に基づいて更新される（具体的には、誤答である場合には正答率ｐが増加するように更新され、正答である場合には正答率ｐが減少するように更新される）。そのため、本実施形態に係る情報処理装置１０では、再出題への期間も動的に変更されることとなる。具体的には、図２９に示したように、正答率ｐが高いほど（図中の（ａ））、設問は期間を置かず再出題され、正答率ｐが低いほど（図中の（ｂ））、設問は期間をおいて出題される。
【０１９６】
上記式１０１に示した正答率の更新は、本実施形態に係る情報処理装置１０が出題する設問が、忘却を考慮すべき設問である場合に実施することが好ましい。しかしながら、情報処理装置１０が出題する設問が忘却を考慮すべき設問ではない場合には、上述のような正答率の更新は行わなくともよい。
【０１９７】
また、出題条件設定部１５５は、ユーザ回答解析部１５１により更新された誤答マトリックスを利用して、以下の式１０２により、設問ｊと設問ｋとの間の類似度ｓｉｍ（ｊ，ｋ）を算出する。ここで、以下の式１０２において、Ｍ（ｉ，ｊ）は、ユーザｉの設問ｊにおける誤答率であり、誤答マトリックス（もしくは、ユーザｉの設問ｊの正答率）を利用して算出される値である。また、式１０２におけるパラメータＮは、登録されているユーザ数を表している。
【０１９８】
【数２】
2011232445.tif 000004
・・・（式１０２）
【０１９９】
このように、出題条件設定部１５５は、設問ｊと設問ｋとを共に間違える度合い（誤答共起スコア）を算出する認識フィルタリング（Ｃｏｇｎｉｔｉｖｅ  Ｆｉｌｔｅｒｉｎｇ：ＣＦ）手法により、類似している問題を数値化して把握できる。
【０２００】
続いて、出題条件設定部１５５は、算出した類似度ｓｉｍ（ｊ，ｋ）と、誤答マトリックスとを利用して、以下の式１０３により、各設問についてスコアを算出する。ここで、下記式１０３において、Ｐは、全設問数を表すパラメータである。
【０２０１】
【数３】
2011232445.tif 000005
・・・（式１０３）
【０２０２】
また、出題条件設定部１５５は、出題する設問が忘却を考慮すべき設問である場合には、以下の条件の何れかに該当した際に、以下のようにして評価値を補正してもよい。ここで、下記条件において、ｐは、ユーザの正答率であり、ｒは、忘却率テーブル群から算出される正答率閾値である。なお、正答率閾値ｒは、ユーザが設問ｋをｍ回回答しており、かつ、ｍ回目の回答を前回の回答時からｎ日後に行っていた場合に、ｍ回目の忘却率テーブルのｎ日後の欄に記載されている正答数及び出題数から算出される正答率である。
【０２０３】
（条件ａ）：ｒ＞ｐである場合  評価値ＳＣＦ（ｋ）＝０
（条件ｂ）：ｒ≦ｐである場合  評価値ＳＣＦ（ｋ）＝（ｐ−ｒ）×ＳＣＦ（ｋ）
【０２０４】
以上のようにして評価値を補正することで、ユーザがまだ覚えていると考えられる状況（条件ａが成立する状況）では、評価値が０となるため、該当する設問は出題されないようになる。また、条件ｂが成立する状況では、ユーザが設問の表す学習内容を忘却している可能性があるため、忘却していそうな設問ほど評価値が高く補正されることとなる。
【０２０５】
出題条件設定部１５５は、評価値ＳＣＦ（ｋ）の算出が終了すると、算出した評価値ＳＣＦ（ｋ）を、問題選択部１４３に出力する。
【０２０６】
以上、図２２〜図２９を参照しながら、本実施形態に係る出題傾向設定部１４１の構成について、詳細に説明した。以下では、再び図２１に戻って、本実施形態に係る情報処理装置１０について説明する。
【０２０７】
問題選択部１４３は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等により実現される。問題選択部１４３は、出題条件設定部１５５により算出された評価値と、所定期間内又は所定問題数でのユーザの正答率とに基づいて、複数の問題の中から出題する問題を選択する。
【０２０８】
具体的には、問題選択部１４３は、出題条件設定部１５５から、評価値ＳＣＦ（ｋ）が通知されると、まず、該当するユーザの直近に回答された問題の正答率を算出する。該当するユーザが直近に回答した問題とは、例えば、現時点から所定期間前（例えば、数日前）までに回答がなされた問題であってもよく、現時点から所定問題数前までに回答がなされた問題であってもよい。かかる正答率の算出は、記憶部１１１に格納されている、ユーザごとの正誤判定結果の履歴情報と、最終回答日時・回答回数に関するテーブルとを参照することで、実行可能である。
【０２０９】
次に、問題選択部１４３は、算出したユーザの直近の正答率と、設問の正答率との差の絶対値を算出する。ここで、設問の正答率は、記憶部１１１に格納されている正答率テーブルを参照することで、算出することが可能である。
【０２１０】
その後、問題選択部１４３は、算出した絶対値を利用して、絶対値の値が小さいものから順に所定件数だけ設問を選択し、選択した設問を、当該設問に関連付けられている評価値ＳＣＦ（ｋ）順に並べ替える。
【０２１１】
続いて、問題選択部１４３は、並べ替えた評価値ＳＣＦ（ｋ）の値が高いものから順に所定件数選択して、ユーザに回答してもらう設問とする。
【０２１２】
問題選択部１４３は、上述のようにしてユーザに回答してもらう設問を選択すると、選択した設問に関する情報を、表示制御部１０５及びユーザ回答判定部１０９に出力する。
【０２１３】
なお、上述の説明では、設問ごとに忘却曲線を生成して、ユーザごとに正答率のラインをパラメータとして設定する場合について説明したが、逆の方法を用いることも可能である。すなわち、ユーザごとに忘却曲線を生成して、問題ごとに正答率のラインをパラメータとして設定してもよい。
【０２１４】
また、実際の問題集などでは、例えば、問題Ｂを解くためには問題Ａの知識が必要である、といったように、問題間で学習順序が決まっているものが多く存在する。そのため、記憶部１１１に登録されている複数の問題の間で、上述のような学習順序に関する定義を予め行っておき、着目している問題と関連する問題に関する情報（学習順序に関する情報）を、いわゆるメタデータとして登録しておくことも可能である。このような学習順序に関する情報が利用可能である場合には、例えば、以下のような出題傾向の設定方法を実施することも可能である。
【０２１５】
すなわち、ユーザが、例えば問題Ａについて習熟しており、問題Ｈという、問題Ａよりも難易度の高い問題を目標として設定しているものとする。この場合に、出題傾向設定部１４１は、問題Ａから問題Ｈへと至る経路を、上記学習順序に関する情報に基づいて設定する。かかる経路は、例えば問題Ｈを最短で回答できるようになるための最短ルートであってもよく、無理なく学習ができるように、最短ではないものの最も効率のよいルートであってもよい。かかる経路を設定することにより、出題傾向設定部１４１は、経路に沿って問題を出題していくことで、効率的にユーザが目標としている学習レベルまで、ユーザの学習を手助けすることが可能となる。
【０２１６】
以上、本実施形態に係る情報処理装置１０の機能の一例を示した。上記の各構成要素は、汎用的な部材や回路を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。また、各構成要素の機能を、ＣＰＵ等が全て行ってもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用する構成を変更することが可能である。
【０２１７】
なお、上述のような本実施形態に係る情報処理装置の各機能を実現するためのコンピュータプログラムを作製し、パーソナルコンピュータ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリなどである。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信してもよい。
【０２１８】
＜出題傾向設定方法の流れについて＞
続いて、図３０を参照しながら、本実施形態に係る情報処理装置１０で実施される、出題傾向設定方法の流れについて、簡単に説明する。図３０は、本実施形態に係る出題傾向設定方法の流れを示した流れ図である。
【０２１９】
まず、出題傾向設定部１４１は、所定の方法で出題レベルの初期値を設定する（Ｓ２０１）。かかる初期値の例として、例えば、既登録の全ユーザの正答率の平均値等を挙げることができる。
【０２２０】
次に、問題選択部１４３は、出題傾向設定部１４１により設定された出題レベルに基づいて、出題する問題を決定する（Ｓ２０３）。本例では、ステップＳ２０１において、例えば既登録の全ユーザの正答率の平均値が初期値として設定されているため、かかる正答率の平均値に基づいて出題レベルが設定され、問題が選択される。
【０２２１】
このようにして問題が選択され、ディスプレイ等の表示部に表示されると、ユーザは所定の入力装置を介して、回答を入力する。ユーザ回答取得部１０７は、入力されたユーザ回答を示す情報を取得して、ユーザ回答判定部１０９に出力する。
【０２２２】
ユーザ回答判定部１０９は、ユーザ回答取得部１０７から出力されたユーザ回答について、正誤判定を実施する（Ｓ２０５）。これにより、ユーザ回答が正しいのか、間違っているのかが特定される。判定結果が確定すると、ユーザ回答判定部１０９は、得られた判定結果を表示制御部１０５に出力するとともに、出題傾向設定部１４１のユーザ回答解析部１５１及び出題条件設定部１５５に出力する。
【０２２３】
ユーザ回答解析部１５１は、通知されたユーザ回答の正誤判定結果に基づいて、各種テーブルの更新といったユーザ回答の解析処理を実施する（Ｓ２０７）。また、ユーザ回答の解析処理が終了すると、忘却曲線生成部１５３により忘却曲線の更新も実施される。
【０２２４】
その後、出題条件設定部１５５は、ユーザ回答解析部１５１の解析結果に応じて、正答率、類似度、評価値等の算出を実施することで、出題レベル・出題傾向を変更する（Ｓ２０９）。出題レベル・出題傾向等が変更されると、変更後の出題レベル・出題傾向が、問題選択部１４３に通知される。
【０２２５】
ここで、問題選択部１４３は、出題を継続するか否かを判断する（Ｓ２１１）。ユーザによって出題の停止を要請する操作がなされた場合には、情報処理装置１０は、出題を継続せずに、処理を終了する。また、出題を継続する場合には、問題選択部１４３は、ステップＳ２０３に戻って、ステップＳ２０９により設定された出題レベル等に基づいて、出題する問題を決定する。
【０２２６】
このような処理が行われることにより、本実施形態に係る情報処理装置１０では、ユーザの学習レベルにあわせて問題の出題傾向が自動的に設定されることとなる。
【０２２７】
なお、一旦ユーザ回答の解析結果に基づいて出題レベル等が設定されると、次回以降図３０に示した処理が実行される場合、ステップＳ２０１ではなくステップＳ２０３から処理が開始されることが好ましい。これにより、ユーザは、情報処理装置１０を利用した学習を中断した場合であっても、前回までの学習結果（すなわち、設定された出題レベル等）が反映された学習を再開することが可能となる。
【０２２８】
（第３の実施形態）
続いて、図３１を参照しながら、本発明の第３の実施形態に係る情報処理装置１０について、簡単に説明する。本実施形態に係る情報処理装置１０は、第１の実施形態に係る情報処理装置１０が有するユーザの位置情報やコンテキスト等に適合したテキストを自動的に選択する機能と、第２の実施形態に係る情報処理装置１０が有するユーザの学習レベルにあわせて問題の出題傾向を自動的に設定する機能とを兼ね備えた装置である。
【０２２９】
本実施形態に係る情報処理装置１０は、図３１に示したように、センサ情報取得部１０１と、表示制御部１０５と、ユーザ回答取得部１０７と、ユーザ回答判定部１０９と、記憶部１１１と、出題傾向設定部１６１と、テキスト選択部１６３と、を主に備える。
【０２３０】
ここで、センサ情報取得部１０１、表示制御部１０５、ユーザ回答取得部１０７及び記憶部１１１は、本発明の第１の実施形態及び第２の実施形態に係る各処理部と同様の構成を備え、同様の効果を奏する。従って、以下では詳細な説明は省略する。
【０２３１】
ユーザ回答判定部１０９は、テキスト選択部１６３によって出題された問題（質問）に関するユーザ回答を判定し、正誤に関する情報を出題傾向設定部１６１に出力する以外は、第１の実施形態及び第２の実施形態に係るユーザ回答判定部１０９と同様の構成を備え、同様の効果を奏する。従って、以下では、詳細な説明は省略する。
【０２３２】
出題傾向設定部１６１は、算出した評価値ＳＣＦ（ｋ）を、テキスト選択部１６３に出力する以外は、本発明の第２の実施形態に係る出題傾向設定部１４１と同様の構成を有し、同様の効果を奏するものである。従って、以下では詳細な説明は省略する。
【０２３３】
テキスト選択部１６３は、出題傾向設定部１６１から出力された評価値ＳＣＦ（ｋ）に基づいて問題に対応するテキストを選択する。その後、テキスト選択部１６３は、評価値に基づいて選択したテキストの中から、第１の実施形態において説明した方法により、センサ情報取得部１０１から取得した情報に適合したテキストを選択する。このようにしてユーザに提示するテキストを選択することにより、ユーザの学習レベル、及び、ユーザの位置情報やコンテキスト等に適合したテキストを自動的に選択することが可能となる。
【０２３４】
以上、本実施形態に係る情報処理装置１０の機能の一例を示した。上記の各構成要素は、汎用的な部材や回路を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。また、各構成要素の機能を、ＣＰＵ等が全て行ってもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用する構成を変更することが可能である。
【０２３５】
なお、上述のような本実施形態に係る情報処理装置の各機能を実現するためのコンピュータプログラムを作製し、パーソナルコンピュータ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリなどである。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信してもよい。
【０２３６】
（ハードウェア構成について）
次に、図３２を参照しながら、本発明の実施形態に係る情報処理装置１０のハードウェア構成について、詳細に説明する。図３２は、本発明の実施形態に係る情報処理装置１０のハードウェア構成を説明するためのブロック図である。
【０２３７】
情報処理装置１０は、主に、ＣＰＵ９０１と、ＲＯＭ９０３と、ＲＡＭ９０５と、を備える。また、情報処理装置１０は、更に、ホストバス９０７、ブリッジ９０９、外部バス９１１、インターフェース９１３、センサ９１４、入力装置９１５、出力装置９１７、ストレージ装置９１９、ドライブ９２１、接続ポート９２３および通信装置９２５を備える。
【０２３８】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、ＲＯＭ９０３、ＲＡＭ９０５、ストレージ装置９１９、またはリムーバブル記録媒体９２７に記録された各種プログラムに従って、情報処理装置１０内の動作全般またはその一部を制御する。ＲＯＭ９０３は、ＣＰＵ９０１が使用するプログラムや演算パラメータ等を記憶する。ＲＡＭ９０５は、ＣＰＵ９０１が使用するプログラムや、プログラムの実行において適宜変化するパラメータ等を一次記憶する。これらはＣＰＵバス等の内部バスにより構成されるホストバス９０７により相互に接続されている。
【０２３９】
ホストバス９０７は、ブリッジ９０９を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス９１１に接続されている。
【０２４０】
センサ９１４は、ユーザの動きを検知するセンサや、現在位置を表す情報を取得するセンサ等の検出手段である。かかるセンサの一例として、加速度センサ、重力検知センサ、落下検出センサ等を含む３軸加速度センサ、角速度センサ、手振れ補正センサ、地磁気センサ等を含む３軸ジャイロセンサ等のモーションセンサや、ＧＰＳセンサ等を挙げることができる。また、センサ９１４は、上述のもの以外にも、温度計、照度計、湿度計などの様々な測定機器を備えていてもよい。
【０２４１】
入力装置９１５は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチおよびレバーなどユーザが操作する操作手段である。また、入力装置９１５は、例えば、赤外線やその他の電波を利用したリモートコントロール手段（いわゆる、リモコン）であってもよいし、情報処理装置１０の操作に対応した携帯電話やＰＤＡ等の外部接続機器９２９であってもよい。さらに、入力装置９１５は、例えば、上記の操作手段を用いてユーザにより入力された情報に基づいて入力信号を生成し、ＣＰＵ９０１に出力する入力制御回路などから構成されている。情報処理装置１０のユーザは、この入力装置９１５を操作することにより、情報処理装置１０に対して各種のデータを入力したり処理動作を指示したりすることができる。
【０２４２】
出力装置９１７は、取得した情報をユーザに対して視覚的または聴覚的に通知することが可能な装置で構成される。このような装置として、ＣＲＴディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、ＥＬディスプレイ装置およびランプなどの表示装置や、スピーカおよびヘッドホンなどの音声出力装置や、プリンタ装置、携帯電話、ファクシミリなどがある。出力装置９１７は、例えば、情報処理装置１０が行った各種処理により得られた結果を出力する。具体的には、表示装置は、情報処理装置１０が行った各種処理により得られた結果を、テキストまたはイメージで表示する。他方、音声出力装置は、再生された音声データや音響データ等からなるオーディオ信号をアナログ信号に変換して出力する。
【０２４３】
ストレージ装置９１９は、情報処理装置１０の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置９１９は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイス等により構成される。このストレージ装置９１９は、ＣＰＵ９０１が実行するプログラムや各種データ、および外部から取得した各種データなどを格納する。
【０２４４】
ドライブ９２１は、記録媒体用リーダライタであり、情報処理装置１０に内蔵、あるいは外付けされる。ドライブ９２１は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記録媒体９２７に記録されている情報を読み出して、ＲＡＭ９０５に出力する。また、ドライブ９２１は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記録媒体９２７に記録を書き込むことも可能である。リムーバブル記録媒体９２７は、例えば、ＤＶＤメディア、ＨＤ−ＤＶＤメディア、Ｂｌｕ−ｒａｙメディア等である。また、リムーバブル記録媒体９２７は、コンパクトフラッシュ（登録商標）（ＣｏｍｐａｃｔＦｌａｓｈ：ＣＦ）、フラッシュメモリ、または、ＳＤメモリカード（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ  ｍｅｍｏｒｙ  ｃａｒｄ）等であってもよい。また、リムーバブル記録媒体９２７は、例えば、非接触型ＩＣチップを搭載したＩＣカード（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ  ｃａｒｄ）または電子機器等であってもよい。
【０２４５】
接続ポート９２３は、機器を情報処理装置１０に直接接続するためのポートである。接続ポート９２３の一例として、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）ポート等がある。接続ポート９２３の別の例として、ＲＳ−２３２Ｃポート、光オーディオ端子、ＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）ポート等がある。この接続ポート９２３に外部接続機器９２９を接続することで、情報処理装置１０は、外部接続機器９２９から直接各種データを取得したり、外部接続機器９２９に各種データを提供したりする。
【０２４６】
通信装置９２５は、例えば、通信網９３１に接続するための通信デバイス等で構成された通信インターフェースである。通信装置９２５は、例えば、有線または無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、またはＷＵＳＢ（Ｗｉｒｅｌｅｓｓ  ＵＳＢ）用の通信カード等である。また、通信装置９２５は、光通信用のルータ、ＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）用のルータ、または、各種通信用のモデム等であってもよい。この通信装置９２５は、例えば、インターネットや他の通信機器との間で、例えばＴＣＰ／ＩＰ等の所定のプロトコルに則して信号等を送受信することができる。また、通信装置９２５に接続される通信網９３１は、有線または無線によって接続されたネットワーク等により構成され、例えば、インターネット、家庭内ＬＡＮ、赤外線通信、ラジオ波通信または衛星通信等であってもよい。
【０２４７】
以上、本発明の実施形態に係る情報処理装置１０の機能を実現可能なハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用するハードウェア構成を変更することが可能である。
【０２４８】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【０２４９】
１０    情報処理装置
１０１    センサ情報取得部
１０３，１６３    テキスト選択部
１０５    表示制御部
１０７    ユーザ回答取得部
１０９    ユーザ回答判定部
１１１    記憶部
１２１    条件設定部
１２３    行動パターン検出部
１２５    位置情報解析部
１２７    テキスト解析部
１２９    キーワード変換部
１３１    テキスト抽出部
１３３    ユーザ行動履歴情報
１３５    テキストデータベース
１３７    テキスト解析用データベース
１４１，１６１    出題傾向設定部
１４３    問題選択部
１５１    ユーザ回答解析部
１５３    忘却曲線生成部
１５５    出題条件設定部
【図１】
2011232445.tif 000006
【図２】
2011232445.tif 000007
【図３】
2011232445.tif 000008
【図４】
2011232445.tif 000009
【図５】
2011232445.tif 000010
【図６】
2011232445.tif 000011
【図７】
2011232445.tif 000012
【図８】
2011232445.tif 000013
【図９】
2011232445.tif 000014
【図１０】
2011232445.tif 000015
【図１１】
2011232445.tif 000016
【図１２】
2011232445.tif 000017
【図１３Ａ】
2011232445.tif 000018
【図１３Ｂ】
2011232445.tif 000019
【図１４】
2011232445.tif 000020
【図１５】
2011232445.tif 000021
【図１６】
2011232445.tif 000022
【図１７】
2011232445.tif 000023
【図１８】
2011232445.tif 000024
【図１９】
2011232445.tif 000025
【図２０】
2011232445.tif 000026
【図２１】
2011232445.tif 000027
【図２２】
2011232445.tif 000028
【図２３】
2011232445.tif 000029
【図２４】
2011232445.tif 000030
【図２５】
2011232445.tif 000031
【図２６】
2011232445.tif 000032
【図２７】
2011232445.tif 000033
【図２８】
2011232445.tif 000034
【図２９】
2011232445.tif 000035
【図３０】
2011232445.tif 000036
【図３１】
2011232445.tif 000037
【図３２】
2011232445.tif 000038