(57)【特許請求の範囲】
【請求項１】
ユーザが所持する携帯端末の過去の第１の期間における位置データを取得し、この取得された位置データに対しクラスタリング処理を行って、前記ユーザが滞在した場所と当該場所に滞在した時間帯とを組として表される滞在行動データの集合を生成し記憶する手段と、前記第１の期間における前記ユーザの行動予定をその内容と開始予定時刻及び終了予定時刻により定義したスケジューラデータを取得し記憶する手段と、前記記憶された滞在行動データの集合と前記記憶されたスケジューラデータとの間の時間的な共起関係をもとに、この時間的な共起関係が高くなるように、滞在行動データに含まれる滞在場所とスケジューラデータに含まれる行動予定の内容とが時間的に重なり合う確率を学習し、その学習結果を共起関係のモデル化情報として記憶する手段とを具備するモデル化装置との間及びユーザが所持する携帯端末との間で、それぞれ信号転送を行うことが可能な行動予測装置であって、
前記モデル化装置から前記記憶された滞在行動データの集合を受信し、この受信された滞在行動データの集合から前記ユーザが滞在する場所を時系列的に配列した系列パターンを抽出する手段と、
前記モデル化装置から前記記憶されたモデル化情報を受信する手段と、
前記携帯端末から、予測対象時刻から予め設定した時間前までの第２の期間における当該携帯端末の位置データを受信し、この受信された位置データに対しクラスタリング処理を行って、前記第２の期間における滞在行動データの集合を生成する手段と、
前記携帯端末から、前記予測対象時刻から予め設定した時間後までの第３の期間における当該ユーザのスケジューラデータを受信する手段と、
前記受信されたモデル化情報を参照して、前記第２の期間における滞在行動データの集合及び前記第３の期間におけるスケジューラデータと、前記抽出された系列パターンとの間の一致の度合いを計算し、その計算結果をもとに前記ユーザの今後の滞在場所を推測する手段と
を具備することを特徴とする行動予測装置。
【請求項２】
ユーザが所持する携帯端末の過去の第１の期間における位置データを取得し、この取得された位置データに対しクラスタリング処理を行って、前記ユーザが滞在した場所と当該場所に滞在した時間帯とを組として表される滞在行動データの集合を生成し記憶する手段と、前記第１の期間における前記ユーザの行動予定をその内容と開始予定時刻及び終了予定時刻により定義したスケジューラデータを取得し記憶する手段と、前記記憶された滞在行動データの集合と前記記憶されたスケジューラデータとの間の時間的な共起関係をもとに、この時間的な共起関係が高くなるように、滞在行動データに含まれる滞在場所とスケジューラデータに含まれる行動予定の内容とが時間的に重なり合う確率を学習し、その学習結果を共起関係のモデル化情報として記憶する手段とを具備するモデル化装置との間及びユーザが所持する携帯端末との間で、それぞれ信号転送を行うことが可能な行動予測装置で使用される行動予測方法であって、
前記モデル化装置から前記記憶された滞在行動データの集合を受信し、この受信された滞在行動データの集合から前記ユーザが滞在する場所を時系列的に配列した系列パターンを抽出する過程と、
前記モデル化装置から前記記憶されたモデル化情報を受信する過程と、
前記携帯端末から、予測対象時刻から予め設定した時間前までの第２の期間における当該携帯端末の位置データを受信し、この受信された位置データに対しクラスタリング処理を行って、前記第２の期間における滞在行動データの集合を生成する過程と、
前記携帯端末から、前記予測対象時刻から予め設定した時間後までの第３の期間における当該ユーザのスケジューラデータを受信する過程と、
前記取得されたモデル化情報を参照して、前記第２の期間における滞在行動データの集合及び前記第３の期間におけるスケジューラデータと、前記抽出された系列パターンとの間の一致の度合いを計算し、その計算結果をもとに前記ユーザの今後の滞在場所を推測する過程と
を具備することを特徴とする行動予測方法。
【請求項３】
ユーザが所持する携帯端末の過去の第１の期間における位置データを取得し、この取得された位置データに対しクラスタリング処理を行って、前記ユーザが滞在した場所と当該場所に滞在した時間帯とを組として表される滞在行動データの集合を生成し記憶する手段と、前記第１の期間における前記ユーザの行動予定をその内容と開始予定時刻及び終了予定時刻により定義したスケジューラデータを取得し記憶する手段と、前記記憶された滞在行動データの集合と前記記憶されたスケジューラデータとの間の時間的な共起関係をもとに、この時間的な共起関係が高くなるように、滞在行動データに含まれる滞在場所とスケジューラデータに含まれる行動予定の内容とが時間的に重なり合う確率を学習し、その学習結果を共起関係のモデル化情報として記憶する手段とを具備するモデル化装置との間及びユーザが所持する携帯端末との間で、それぞれ信号転送を行うことが可能な行動予測装置で使用されるプログラムであって、
前記モデル化装置から前記記憶された滞在行動データの集合を取得し、この取得された滞在行動データの集合から前記ユーザが滞在する場所を時系列的に配列した系列パターンを抽出する処理と、
前記モデル化装置から前記記憶されたモデル化情報を取得する処理と、
前記携帯端末から、予測対象時刻から予め設定した時間前までの第２の期間における当該携帯端末の位置データを取得し、この取得された位置データに対しクラスタリング処理を行って、前記第２の期間における滞在行動データの集合を生成する処理と、
前記携帯端末から、前記予測対象時刻から予め設定した時間後までの第３の期間における当該ユーザのスケジューラデータを取得する処理と、
前記取得されたモデル化情報を参照して、前記第２の期間における滞在行動データの集合及び前記第３の期間におけるスケジューラデータと、前記抽出された系列パターンとの間の一致の度合いを計算し、その計算結果をもとに前記ユーザの今後の滞在場所を推測する処理と
を、コンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＧＰＳ（Global Positioning System）に代表される位置計測デバイスによって取得されたユーザの位置情報をもとにユーザの行動を予測するモデル化情報を使用した行動予測装置、方法及びプログラムに関する。
【背景技術】
【０００２】
ＧＰＳに代表される位置計測デバイスを搭載した携帯端末をユーザが携行することで、取得・蓄積された位置データをもとに予測モデルを構成し、ユーザの行動を予測する手法が提案されている。例えば、非特許文献１には、取得されたＧＰＳデータからユーザが滞在した場所をクラスタリングによって抽出し、蓄積されたデータをもとに滞在場所間の移動を表すマルコフモデルを構築し、行動を予測する手法が記載されている。
【０００３】
また、非特許文献２には、同様にＧＰＳデータをクラスタリングすることによってユーザが滞在した場所を抽出したのち、ユーザの一日の行動を滞在場所を並べた系列で表現し、その後この系列に対し系列パターンマイニング処理を適用して系列パターンを抽出し、この抽出されたパターンを用いることでユーザの行動を予測する手法が記載されている。
【０００４】
ユーザの行動を的確に予測できれば、ユーザに対しより有益な情報を提供することが可能となる。例えば、ユーザが会社にいるときにその帰宅経路を予測することで、予測された経路での災害情報や、経路途中に存在する店舗のタイムセール情報を前もって提供する等、一歩先を読んだ情報提供が可能となる。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Daniel Ashbrook and Thad Starner, “Using GPS to Learn Significant Locations and Predict Movement across Multiple Users”, Personal and Ubiquitous Computing 7(5), pp. 275-286 (2003)
【非特許文献２】M. Nishino, T. Yamada, S. Seko, M. Motegi, S. Muto and M. Abe, A place prediction algorithm based on frequent time-sensitive patterns, In Pervasive 2009 adjunctive proceedings, 2009
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところが、これらの従来提案されているシステムはいずれも、ユーザの現在位置のみをもとにユーザの行動を予測するものとなっている。このため、ユーザの非日常的な行動については予測することが困難である。例えば、ユーザが朝自宅に居るという一つの状況に対しても、その日ユーザが通常通り職場や学校へ行く、出張に出かける、休暇をとって知人と会いに出かけるという行動の多様性が存在する。このようなユーザの非日常的な行動は、ユーザの現在位置のみから予測しようとしても違いを区別することができない。
【０００７】
この発明は上記事情に着目してなされたもので、その目的とするところは、ユーザの日常的な行動については勿論のこと非日常的な行動についても予測可能とし、これによりさらに高精度の行動予測を可能にした行動予測装置、方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するためにこの発明の一つの観点は、ユーザが所持する携帯端末の過去の第１の期間における位置データを取得し、この取得された位置データに対しクラスタリング処理を行って、上記ユーザが滞在した場所と当該場所に滞在した時間帯とを組として表される滞在行動データの集合を生成し記憶すると共に、上記第１の期間におけるユーザの行動予定をその内容と開始予定時刻及び終了予定時刻により定義したスケジューラデータを取得し記憶し、上記記憶された滞在行動データの集合とスケジューラデータとの間の時間的な共起関係をもとに、この時間的な共起関係が高くなるように、滞在行動データに含まれる滞在場所とスケジューラデータに含まれる行動予定の内容とが時間的に重なり合う確率を学習し、その学習結果を共起関係のモデル化情報として記憶するモデル化装置及び携帯端末との間で信号転送を行うことが可能な行動予測装置であって、上記モデル化装置から上記記憶された滞在行動データの集合を取得し、この取得された滞在行動データの集合から上記ユーザが滞在する場所を時系列的に配列した系列パターンを抽出すると共に、上記記憶されたモデル化情報を取得する。この状態で、上記携帯端末から、予測対象時刻から予め設定した時間前までの第２の期間における当該携帯端末の位置データを取得して滞在行動データの集合を生成すると共に、上記予測対象時刻から予め設定した時間後までの第３の期間における当該ユーザのスケジューラデータを取得する。そして、上記取得されたモデル化情報を参照して、上記生成された第２の期間における滞在行動データの集合及び上記取得された第３の期間におけるスケジューラデータと、上記抽出された系列パターンとの間の一致の度合いを計算し、その計算結果をもとに上記ユーザの今後の滞在場所を推測するようにしたものである。
このようにすると、ユーザの行動を予測する際に、モデル化装置において既に求められているモデル化情報を利用することで、ユーザの今後の行動を簡単かつ高精度に予測することが可能となる。
【発明の効果】
【００１１】
すなわちこの発明によれば、ユーザの日常的な行動については勿論のこと非日常的な行動についても予測可能となり、これによりさらに高精度の行動予測を可能にした行動予測のためのモデル化装置、方法及びプログラムと、そのモデル化情報を使用した予測装置、方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００１２】
【図１】この発明の一実施形態に係わる行動予測装置を備えたシステムの概略構成図。
【図２】図１に示したシステムに設けられる行動予測装置の機能構成を示すブロック図。
【図３】図２に示した行動予測装置による学習処理の手順と内容を示すフローチャート。
【図４】図３に示した学習処理の過程で実行される共起関係学習処理の処理内容を示すフローチャート。
【図５】図３に示した学習処理の過程で取得される位置データの一例を示す図。
【図６】図３に示した学習処理の過程で実行される滞在場所抽出処理の概念を説明するための図。
【図７】図３に示した学習処理の過程で生成される滞在行動データの一例を示す図。
【図８】図３に示した学習処理の過程で生成される滞在行動の系列パターンの一例を示す図。
【図９】図３に示した学習課程で生成されるスケジューラデータの一例を示す図。
【図１０】図４に示した共起関係学習処理の説明に用いるための図。
【図１１】図２に示した行動予測装置による行動予測処理の手順と内容を示すフローチャート。
【発明を実施するための形態】
【００１３】
以下、図面を参照してこの発明に係わる実施形態を説明する。  
図１は、この発明の一実施形態に係わる滞在場所推定装置を備えたシステムを示す図である。このシステムは、それぞれユーザが所持する複数の携帯端末ＭＳ１〜ＭＳｎを、通信ネットワークＮＷを介して、行動予測装置ＳＶに接続可能としたものである。
【００１４】
通信ネットワークＮＷは、ＩＰ（Internet Protocol）網と、このＩＰ網にアクセスするためのアクセス網とから構成される。アクセス網としては、公衆通信網、携帯電話網、ＬＡＮ（Local Area Network）、無線ＬＡＮ、ＣＡＴＶ（Cable Television）網等が用いられる。
【００１５】
携帯端末ＭＳ１〜ＭＳｎは、携帯電話機やＰＤＡ（Personal Digital Assistant）、ネットブック等と呼ばれる携帯型のパーソナル・コンピュータからなり、音声通信機能やメール送受信機能、ブラウザ機能に加えて、位置計測機能を備えている。位置計測機能は、ＧＰＳ（Global Positioning System）受信機と、ＧＰＳ計測制御部と、ＧＰＳデータ送信制御部とにより実現される。
【００１６】
ＧＰＳ受信機は、図示しない複数のＧＰＳ衛星から送信されるＧＰＳ信号をアンテナを介して受信する。ＧＰＳ計測制御部は、例えば５分以上の予め定められた計測周期で上記ＧＰＳ受信機を起動し、当該ＧＰＳ受信機により受信されたＧＰＳ信号を取り込んで自端末の位置データを生成する。位置データｌi は、計測ＩＤをi とするとき、この計測ＩＤi と、経度ｘi と、緯度ｙi と、計測時刻ｔi とからなる４つの要素で表される。この生成された位置データｌi は端末内の記憶部に記憶される。
【００１７】
ＧＰＳデータ送信制御部は、行動予測装置ＳＶから位置データの送信要求が到来した場合に、上記記憶部に記憶された位置データｌi を読み出して要求元の行動予測装置ＳＶに向け送信する。なお、位置データｌi は、定期的又は自端末の緯度経度が一定量以上変化したときに、記憶部から読み出して行動予測装置ＳＶへ送信するようにしてもよい。
【００１８】
行動予測装置ＳＶは、例えば通信事業者又はサービス事業者が運用するサービスサーバからなり、次のように構成される。図２はその機能構成を示すブロック図である。  
すなわち、行動予測装置ＳＶは、送受信ユニット１と、制御ユニット２と、記憶ユニット３とを備えている。送受信ユニット１は、制御ユニット２の制御の下で通信ネットワークＮＷとの間で情報の送受信を行う。
【００１９】
記憶ユニット３は、ＨＤＤ（Hard Disc Drive）又はＳＳＤ（Solid State Drive）を使用したランダムアクセス可能な不揮発性メモリを使用したもので、この発明を実現するために必要な記憶部として、滞在行動データ記憶部３１と、系列パターン記憶部３２と、スケジューラデータ記憶部３３と、識別結果記憶部３４とを備えている。
【００２０】
滞在行動データ記憶部３１は、後述する滞在場所抽出処理部３２により生成された、ユーザの滞在行動データの集合を格納するために使用される。一つの滞在行動データは、滞在場所を示す識別情報（滞在場所ＩＤ）と、その滞在開始時刻及び滞在終了時刻を表す情報を、滞在行動ＩＤに関連付けたものからなる。
【００２１】
系列パターン記憶部３２は、後述する系列パターン抽出処理部２３により、上記滞在行動データ記憶部３１に記憶された滞在行動データの集合の中から抽出された系列パターンを記憶するために使用される。一つの系列パターンは、滞在場所ＩＤの列と、ユーザの各滞在行動における滞在開始及び終了時刻の平均を、パターン識別情報（パターンＩＤ）と関連付けたものからなる。
【００２２】
スケジューラデータ記憶部３３は、後述するスケジューラデータ取得制御部２４により生成されたスケジューラデータを記憶するために使用される。一つのスケジューラデータは、イベントの識別情報（イベントＩＤ）と、スケジューラ内容と、イベント開始時刻と、イベント終了時刻とから構成される。
【００２３】
識別結果記憶部３４は、後述する共起関係学習処理部２５により求められた、滞在行動データとスケジューラデータとの時間的な共起関係を表す確率p(c|w) を記憶するために使用される。
【００２４】
制御ユニット２は、中央処理ユニット（ＣＰＵ；Central Processing Unit）を中核として備えるもので、この発明を実施するために必要な制御機能として、位置データ取得制御部２１と、滞在場所抽出処理部２２と、系列パターン抽出処理部２３と、スケジューラデータ取得制御部２４と、共起関係学習処理部２５と、行動予測処理部２６と、予測結果出力制御部２７とを備えている。これらの制御機能はいずれもアプリケーション・プログラムを上記ＣＰＵに実行させることにより実現される。
【００２５】
位置データ収集処理部２１は、送受信ユニット１を制御することで、各携帯端末ＭＳ１〜ＭＳｎに対しそれぞれ異なるタイミングで定期的に位置データの送信要求を送信し、この要求に対し各携帯端末ＭＳ１〜ＭＳｎから送信される位置データを受信する処理を実行する。
【００２６】
滞在場所抽出処理部２２は、上記位置データ収集処理部２１により取得された位置データを、クラスタリング処理により、ユーザが滞在した場所とその場所に滞在した時間とを組にした滞在行動の集合に変換する。そして、この滞在行動の集合に対して、滞在場所が変化するごとに異なる滞在行動ＩＤを付与し、この滞在行動ＩＤが付与された滞在行動データの集合を上記滞在行動データ記憶部３１に記憶させる処理を行う。
【００２７】
系列パターン抽出処理部２３は、上記滞在行動データ記憶部３１から滞在行動データの集合を読み出し、この読み出された滞在行動データの集合から、Sequential Pattern Miningの手法を用いて系列パターンを抽出する処理を行う。系列パターンは、ユーザが頻繁に滞在する場所間の遷移を並べたもので、この抽出された系列パターンのデータは上記系列パターン記憶部３２に格納される。
【００２８】
スケジューラデータ取得制御部２４は、携帯端末ＭＳ１〜ＭＳｎからユーザが予め作成し記憶しておいたスケジュールの元データを送受信ユニット１により受信し、この受信されたスケジュールの元データを所定の前処理によりスケジューラデータに変換し、この変換されたスケジューラデータをスケジューラデータ記憶部３３に格納する処理を行う。上記前処理とは、スケジュールの元データに含まれる任意の文字列を形態素解析することにより名詞を抽出してこの抽出された名詞をベクトルにより表し、このベクトルをスケジュール内容を表すデータとする処理である。
【００２９】
共起関係学習処理部２５は、滞在行動データ記憶部３１に記憶されている滞在行動データの集合と、スケジューラデータ記憶部３３に記憶されているスケジューラデータの集合をそれぞれ読み込み、これらのデータ間の時間的な共起関係をもとに、この時間的な共起関係が高くなるように、滞在場所と行動予定の内容とが時間的に重なり合う確率p(c|w) を学習する。そして、この学習により推定された確率p(c|w) を、モデル化情報として識別結果記憶部３４に格納する処理を行う。
【００３０】
行動予測処理部２６は以下の処理機能を備えている。  
(1) 上記位置データ取得制御部２１を起動して、携帯端末ＭＳ１〜ＭＳｎから予測対象時刻から一定時間前までの期間におけるユーザの位置データを取得する。そして、滞在場所抽出処理部２２を起動して、上記取得した位置データから滞在行動データの集合を抽出し、この抽出された滞在行動データを読み込む処理。  
(2) スケジューラデータ取得制御部２４を起動して、予測対象時刻より一定時間後までの期間におけるユーザのスケジュール元データを取得し、この取得されたスケジュール元データをもとに生成されるスケジューラデータを読み込む処理。  
(3) 識別結果記憶部３４に記憶されたモデル化情報を参照して、上記生成された滞在行動データの集合及びスケジューラデータと、上記系列パターン記憶部３２に記憶された系列パターンとの間の一致の度合いを計算し、その計算結果をもとに上記予測対象時刻以降におけるユーザの滞在場所を推測する処理。
【００３１】
予測結果出力制御部２７は、上記行動予測処理部２６により推測された、上記予測対象時刻以降におけるユーザの滞在場所を表す情報を、予測結果の利用契約を行っているサービス業者のサーバ又は端末へ、送受信ユニット１から送信させる処理を行う。
【００３２】
次に、以上のように構成された行動予測装置の動作を、予測に必要な学習を行う学習フェーズと、学習された結果をもとにユーザの行動を予測する予測フェーズとに分けて説明する。図３は学習フェーズにおける処理手順と処理内容を示すフローチャート、図１１は行動予測フェーズにおける処理手順と処理内容を示すフローチャートである。
【００３３】
（１）学習フェーズ
（１−１）位置データ計測処理
各ユーザが所持する携帯端末ＭＳ１〜ＭＳｎでは、定常状態において以下のように位置情報の検出及び送信処理が行われる。すなわち、定常状態において携帯端末は、ＧＰＳ計測制御部によりＧＰＳ計測タイミングになったか否かを監視している。この状態で、前回の計測タイミングから例えば５分が経過すると、ＧＰＳ計測制御部がＧＰＳ受信機を起動し、このＧＰＳ受信機により受信されたＧＰＳ信号を取り込んで緯度ｙi 及び経度ｘi を算出する。そして、この算出された緯度ｙi 及び経度ｘi に計測時刻ｔi と計測ＩＤi を付加して位置データとし、この位置データを端末内の記憶部に記憶させる。図５はこの端末内の記憶部に記憶された位置データの一例を示すものである。
【００３４】
また携帯端末は、上記位置データの計測処理を定期的に実行しながら、位置データ送信制御部により位置データ送信要求の受信を監視する。この状態で、行動予測装置ＳＶから送信要求を受信すると、上記端末内の記憶部から前回の送信より後に記憶された位置データの集合を読み出し、この読み出された位置データの集合を行動予測装置ＳＶに向け送信する。以後、送信要求が受信されるごとに、上記端末内の記憶部に記憶された位置データの集合を行動予測装置ＳＶへ送信する。
【００３５】
（１−２）位置データの取得処理
行動予測装置ＳＶの制御ユニット２は、先ずステップＳ１１において位置データ取得制御部２１を起動し、この位置データ取得制御部２１の制御の下で、各携帯端末ＭＳ１〜ＭＳｎに対しそれぞれ異なるタイミングで定期的に位置データの送信要求を送信する。そして、この要求に対し各携帯端末ＭＳ１〜ＭＳｎから送信される位置データの集合を送受信ユニット１により受信し、記憶ユニット内の位置データ記憶部に保存する。
【００３６】
（１−３）滞在場所の抽出処理
上記位置データの取得処理により過去の第１の期間、例えば１年又は数ヶ月分の位置データが取得されると、行動予測装置ＳＶの制御ユニット２は続いてステップＳ１２により滞在場所抽出処理部２２を起動する。そして、この滞在場所抽出処理部２２により、当該位置データの集合を読み込み、この読み込んだ位置データの集合に対しクラスタリング処理を実行して、滞在行動データの集合に変換する。一つの滞在行動データは、ユーザが滞在した場所と、この場所に滞在を開始した時刻と、滞在を終了した時刻とを組にしたものにより表される。そして、滞在場所抽出処理部２２はステップＳ１３において、上記変換された滞在行動データのそれぞれに対し、滞在場所が変化するごとに異なる滞在行動ＩＤを付与し、この滞在行動ＩＤが付与された滞在行動データの集合をステップＳ１４により滞在行動記憶部３１に格納する。
【００３７】
上記クラスタリング処理のアルゴリズムとしては、例えば位置データの二次元空間における密度に基づいてクラスタリングを行う、DBSCANアルゴリズムを適用することができる。図６にクラスタリング処理により滞在行動を抽出する処理の概念を、図７に変換された滞在行動データの一例を示す。  
ここで、一つの滞在場所ＩＤはある一つの場所を一意に示すものとする。例えば、図７においてはＡ駅、自宅というように場所名を滞在場所ＩＤとして使用している。なお、住所を滞在場所ＩＤとして用いたり、或いは独自のＩＤ体系を用意して緯度・経度と滞在場所ＩＤとの関連を管理するようにしてもよい。
【００３８】
一つの滞在コードデータをri ＝［ci ，Ti rb ,Ti re］と表す。ci は滞在場所ＩＤを、Ti rbは滞在開始時刻を、Ti reは滞在終了時刻をそれぞれ示す。すべての滞在場所ＩＤの集合をC＝｛c1 ，…,cM ｝とする。M は滞在場所ＩＤの種類を表す。滞在行動データ記憶部３１に記憶されるすべての滞在行動データの集合をR＝｛r1 ，…，rN ｝とする。N は滞在行動データの総数である。
【００３９】
なお、DBSCANアルゴリズムの詳細は、Martin Ester, Hans-Peter Kriegel, Jorg Sander, and Xiaowei Xu “A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise’’ , in proceedings of 2nd international conference on knowledge discovery and data mining, pp.226-231, 1996.に詳しく記載されている。
【００４０】
（１−４）系列パターンの抽出
行動予測装置ＳＶの制御ユニット２は、次にステップＳ１５において系列パターン抽出処理部２３を起動し、この系列パターン抽出処理部２３により、上記滞在行動データ記憶部３１に記憶された滞在行動データの集合から系列パターンを抽出する。系列パターンはユーザが頻繁に滞在する場所間の遷移を並べたものであり、Sequential Pattern Miningの手法を用いて抽出される。そして、この抽出された系列パターンは系列パターン記憶部３２に記憶される。なお、Sequential Pattern Miningの手法の詳細は非特許文献２に記載されている。
【００４１】
図８は、系列パターン記憶部３２に記憶される系列パターンの一例を示したものである。同図に示すように、系列パターンは滞在場所ＩＤの列と、ユーザの各滞在行動における滞在開始及び終了時刻の平均を、パターンＩＤと関連付けたものからなる。なお、図８において“滞在行動１の平均滞在開始時刻”とは、滞在場所ＩＤの列の中で１番目の場所ＩＤで特定される場所、例えばパターンＩＤ1 の場合には“家”に滞在が開始される時刻の平均値を示す。同様に、パターンＩＤx での“滞在行動Ｙの平均滞在開始時刻又は終了時刻”とは、パターンＩＤx の滞在場所ＩＤの列の中ではじめからＹ番目にある場所ＩＤで特定される場所に滞在が開始又は終了される時刻の平均値を示す。
【００４２】
一つのパターンを
p＝＜v1 ，v2 ，…，v｜p｜＞
とし、各vj を
【数１】
0005433472.tif 000002
と定義する。ここで、cβ(j) はcβ(j) ∈C であり、β(j) は１≦β(j) ≦M を満たす関数とする。  
【数２】
0005433472.tif 000003
はそれぞれ、ユーザがパターンp に沿って行動したときの、滞在場所ＩＤであるcβ(j) に対応する場所での平均滞在開始時刻及び平均滞在終了時刻である。
【００４３】
（１−５）スケジューラデータの取得
行動予測装置ＳＶの制御ユニット２は、次にステップＳ１６においてスケジューラデータ取得制御部２４を起動し、このスケジューラデータ取得制御部２４により、携帯端末ＭＳ１〜ＭＳｎに対しそれぞれ異なるタイミングでスケジューラデータの送信要求を送信する。そして、この要求に対し各携帯端末ＭＳ１〜ＭＳｎから送信される、過去の所定期間分、例えば１年又は数ヶ月分のスケジュールの元データを送受信ユニット１により受信し、一旦記憶ユニット３内のバッファメモリに格納する。
【００４４】
スケジューラの元データは、携帯端末ＭＳ１〜ＭＳｎが備えているスケジューラにユーザが手操作で入力して記憶しておいたものである。スケジューラとしては、ユーザがスケジュールの内容を表す文章と、そのイベントの開始時刻、終了時刻とを記入できるものであるとする。例えば、Google Calendar（登録商標）、 Microsoft（登録商標）社の Office Outlook（登録商標）、サイボウズ（登録商標）社のOfficeが、このようなスケジューラに該当する。
【００４５】
スケジューラデータ取得制御部２４は、上記スケジュールの元データを取得すると、ステップＳ１７により前処理を行い、これによりイベントＩＤ、スケジューラ内容、イベント開始時刻、イベント終了時刻の４つの要素で表されるスケジューラデータに変換する。そして、この変換されたスケジューラデータを、ステップＳ１８によりスケジューラデータ記憶部３３に格納する。図９はこのスケジューラデータの記憶結果の一例を示すものである。
【００４６】
ここで、上記前処理とは、スケジュールの元データに含まれる文字列から形態素解析により名詞を抽出し、この抽出された名詞をもとにベクトルを生成する処理であり、ベクトルはwi として表す。このベクトルwi は、スケジュールの元データ中に出現する可能性のある名詞の総数がＶならば、スケジュールの元データ中に出現した名詞に対応する成分が１、その他の成分が０であるようなＶ次元のベクトルとして定義される。例えば、スケジュールの元データに「ランチミーティング」と記入されていたならば、「ランチ」、「ミーティング」に対応する成分のみが１、その他の成分が０であるようなベクトルとして表現される。
【００４７】
なお、図９に示す例ではＶ次元のスケジュール内容のベクトルを、説明の簡単のため値が１である成分のみを句読点で区切って並べたものとして記述している。以下の処理では、イベントＩＤi に対応するスケジューラデータを、
sj ＝［wi ，Tisb ，Tise ］
と表すことにする。ここで、Tisb ，Tiseはそれぞれ、イベント開始時刻、イベント終了時刻を表す。
【００４８】
（１−６）共起関係の学習
行動予測装置ＳＶの制御ユニット２は、次にステップＳ１９において共起関係学習処理部２５を起動する。そして、この共起関係学習処理部２５により、上記滞在行動データ記憶部３１に蓄積されている滞在行動データの集合と、スケジューラデータ記憶部３３に記憶されているスケジューラデータをそれぞれ読み込み、これらのデータの共起関係をもとに、滞在行動データに含まれる滞在場所とスケジューラデータに含まれるスケジュール内容とが時間的に重なり合う確率p(c|w) を学習する。ここで、c はある滞在場所ＩＤ、w は先に述べたようにあるスケジュール内容に含まれる名詞によって作成されたＶ次元のベクトルを示している。p(c|w) は、あるスケジューラデータのスケジュール内容が与えられたときに、ユーザが滞在していると考えられる場所の滞在場所ＩＤ、c に対する確率的な推測を与える。
【００４９】
学習には、スケジューラデータと滞在場所データとの間の時間的な共起関係を用いる。この共起関係を用いた学習の処理を、図４のフローチャートを用いて説明する。先ずステップＳ２１で、滞在行動データ記憶部３１から読み込んだ滞在行動データと、スケジューラデータ記憶部３３から読み込んだスケジューラデータとの間の時間的な共起関係を調べる。
【００５０】
図１０は、滞在行動データとスケジューラデータとを、Tirb、Tire、Tisb、Tiseの値を用いて時系列順に並べた例である。同図においては、滞在場所ＩＤの「会社」とスケジューラデータのスケジュール内容「定例、会議」との間に時間の重なりがあるので、滞在場所ＩＤの「会社」と名詞「定例」との間、「会社」と「会議」との間にそれぞれ共起関係があると認識する。滞在場所ＩＤ「○○町」とスケジュール内容の「ランチ、ミーティング」との間にも同様に共起関係があると認識する。このように、すべてのデータについて共起関係を調べて、ステップＳ２２に移行する。
【００５１】
ステップＳ２２では、ステップＳ２１により抽出された共起関係を訓練データとして、確率p(c|w) を学習する。確率p(c|w) を学習するためのアルゴリズムとしては、例えば単純ベイズ識別器やロジスティック回帰法などが考えられる。ここでは単純ベイズ識別器を用いて学習を行う場合を例にとって説明する。
単純ベイズ識別器では、
【数３】
0005433472.tif 000004
として確率p(c|w) を計算できる。
【００５２】
このとき、wi はw の第i 成分である。p(c) 、p(wi|c) 、p(w) は、最尤法等の一般的な単純ベイズ識別器学習手法によりデータから容易に推定可能である。共起関係学習処理部２５は、上記推定された確率p(c|w) を、ステップＳ２０によりモデル化情報として識別結果記憶部３４に格納する。
【００５３】
（２）行動予測フェーズ
さて、携帯端末ＭＳ１〜ＭＳｎの各ユーザに関する、上記共起関係のモデル化情報の生成及び記憶処理が終了すると、当該各ユーザの今後の行動予測が可能となる。  
行動予測フェーズになると行動予測装置ＳＶの制御ユニット２は、以下のように処理を実行する。図１１はその処理手順と処理内容を示すフローチャートである。
【００５４】
（２−１）最近の位置データの取得と滞在行動データの抽出
行動予測装置ＳＶの制御ユニット２は、予め定められた行動予測タイミングになるか又は行動予測処理要求が入力されると、先ずステップＳ３１により位置データ取得制御部２１を起動し、予測対象となるユーザの携帯端末ＭＳ１〜ＭＳｎから、当該ユーザの予測対象時刻から一定時間前までの期間、例えば現在時刻から過去の２４時間以内に得られた位置データを取得する。この取得された位置データは滞在場所抽出処理部２２に渡される。
【００５５】
滞在場所抽出処理部２２は、ステップＳ３２において、上記取得された位置データの集合に対し、先に（１−３）で述べたようにクラスタリング処理を実行して、滞在行動データの集合に変換する。一つの滞在行動データは、ユーザが滞在した場所と、この場所に滞在を開始した時刻及び終了した時刻を、滞在行動ＩＤと関連付けたものからなる。
【００５６】
（２−２）近未来のスケジューラデータの取得
続いて行動予測装置ＳＶの制御ユニット２は、ステップＳ３３によりスケジューラデータ取得制御部２４を起動し、上記予測対象となるユーザの携帯端末ＭＳ１〜ＭＳｎから、当該ユーザにより作成された、予測対象時刻から一定時間先までの期間、例えば現在時刻から２４時間後までのユーザの行動予定を記述したスケジュール元データを取得する。そして、この取得したスケジュール元データを、先に（１−４）に述べたように形態素解析などの手法を用いて名詞をベクトルに変換し、これによりイベントＩＤ、スケジューラ内容、イベント開始時刻、イベント終了時刻の４つの要素で表されるスケジューラデータに変換する。
【００５７】
（２−３）一致度スコアの計算
次に行動予測装置ＳＶの制御ユニット２は、ステップＳ３４により行動予測処理部２６を起動し、上記取得されたユーザの最近の滞在行動データ及びスケジューラデータと、前記学習フェーズにおいて抽出された系列パターンとの一致の度合いを、同じく前記学習フェーズにおいて生成された共起関係のモデル化情報を参照して、以下のように計算する。
【００５８】
すなわち、いま上記取得されたユーザの最近の滞在行動データ及びスケジューラデータをそれぞれ
【数４】
0005433472.tif 000005
とする。ここで、各ri＾ は
【数５】
0005433472.tif 000006
とし、予測を行う時刻からある一定時間前までの期間における滞在行動データとする。また、各si＾ は
【数６】
0005433472.tif 000007
とし、予測を行う時刻から一定時間後までの期間におけるスケジューラデータであるとする。
【００５９】
続いて、記憶ユニット３内の系列パターン記憶部３２から、学習フェーズにおいて抽出された系列パターンP を読み出す。そして、上記滞在行動データR＾ 及びスケジューラデータS＾ と、上記読み出された系列パターンP とのマッチングスコアを、スコア関数を用いて計算する。その計算式は、
【数７】
0005433472.tif 000008
として定義される。
【００６０】
ここで、prob(P) はパターンの出現し易さを表すスコアである。また、rscore(P ,ri＾) は滞在行動がパターンと合致しているかどうかを表すスコアである。prob(P) は滞在行動データ中でのパターンP の出現頻度に基づいて定める。  
rscore(P ,ri＾) については、パターンP 中にri＾ と同じ滞在場所ＩＤを指しているvが存在し、かつri＾ での滞在開始時刻から滞在終了時刻とv の平均滞在開始／終了時刻とに重なりがある場合に、rscore(P ,ri＾) ＝１とする。そうでない場合には０とする。ω は、滞在行動データR＾ 及びスケジューラデータS＾ の影響の度合いを調整するためのパラメータであり、０≦ω≦１とする。
【００６１】
また、sscore(P ,sj ＾) は、スケジューラデータとパターンとの合致を表現するスコアであり、
【数８】
0005433472.tif 000009
と定義される。同式におけるp(c|wj＾) は、記憶ユニット３内の識別結果記憶部３４にモデル化情報として記憶されている確率である。
【００６２】
（２−４）予測結果の出力
次に行動予測処理部２６は、ステップＳ３５によりスコアが最大となる系列パターンを選択し、この選択された系列パターンに含まれる各滞在場所の中で平均滞在開始／終了時刻が現在時刻より後のものを滞在場所の予測結果として選択する。そして、ステップＳ３６により予測結果出力制御部２７を起動し、上記予測された滞在場所を表す情報をユーザＩＤと共に、送受信ユニット１から情報配信事業者等のサーバに向け送信する。
【００６３】
以上詳述したようにこの実施形態では、先ず学習フェーズにおいて、ユーザが所持する携帯端末ＭＳ１〜ＭＳｎから過去の一定期間（例えば１年間又は数ヶ月間）における位置データを取得して、この取得された位置データをもとに上記ユーザが滞在した場所と当該場所に滞在した時間帯とにより表される滞在行動データの集合を生成し記憶すると共に、この滞在行動データからユーザの移動履歴を示す系列パターンを生成して記憶する。また、上記一定期間におけるユーザのスケジュール元データを携帯端末ＭＳ１〜ＭＳｎから取得して、スケジューラデータに変換して記憶する。そして、前記記憶された滞在行動データの集合とスケジューラデータとの間の時間的な共起関係をもとに、この時間的な共起関係が高くなるように、滞在行動データに含まれる滞在場所とスケジューラデータに含まれる行動予定の内容とが時間的に重なり合う確率p(c|w) を学習し、その学習結果を共起関係のモデル化情報として記憶するようにしている。
【００６４】
さらにこの実施形態では、行動予測フェーズにおいて、上記携帯端末ＭＳ１〜ＭＳｎから、過去の直近の期間における位置データを取得して滞在行動データの集合を生成すると共に、近未来の期間におけるユーザのスケジューラデータを取得する。そして、この滞在行動データの集合及びスケジューラデータと、上記学習フェーズにおいて抽出された系列パターンとの間の一致スコアを、上記学習フェーズにおいて生成されたモデル化情報を参照して計算し、その計算結果をもとに上記ユーザの今後の滞在場所を推測するようにしている。
【００６５】
したがって、学習フェーズにおいて、過去の一定期間に渡るユーザの滞在行動データの集合に含まれる滞在場所と、スケジューラデータに含まれる行動予定の内容との間の、時間的な共起関係が学習され、その学習結果がモデル化情報として記憶される。このため、このモデル化情報を行動予測処理に利用することで、ユーザの過去における滞在位置とスケジュールとの関係を考慮して、ユーザの今後の滞在位置を精度良く予測することが可能となる。
【００６６】
なお、この発明は上記実施形態に限定されるものではない。例えば、前記実施形態では学習フェーズに係わる処理と、その学習結果を使用した行動予測フェーズに係わる処理を、サーバからなる１台の行動予測装置において実現する場合を例にとって説明した。しかし、これに限定されるものではなく、学習フェーズに係わる処理を行うモデル化装置と、行動予測フェーズに係わる処理を行う予測装置とを別個に配置するようにしてもよい。この場合、予測装置はモデル化装置から通信ネットワーク、信号ケーブル又は記録媒体等の伝送媒体を介して学習結果を表す情報を取得する。そして、このモデル化装置から取得した学習結果を表す情報と、携帯端末から別途取得した過去の直近の期間における位置データ及び近未来の期間のスケジューラデータとをもとに、ユーザの行動予定を予測する処理を行う。
【００６７】
また、前記実施形態では、過去の一定期間における位置データを携帯端末内のメモリに記憶しておき、行動予測装置が携帯端末から上記記憶された一定期間分の位置データを取得するようにした。しかしそれに限らず、携帯端末は位置データが得られるごとにこの位置データを行動予測装置へ送信し、行動予測装置が上記位置データを蓄積するようにしてもよい。
【００６８】
さらに、前記実施形態では、学習フェーズに係わる処理機能と、その学習結果を使用した行動予測フェーズに係わる処理機能をサーバからなる行動予測装置に備えた場合を例にとって説明したが、上記各処理機能の少なくとも一方を携帯端末に備えるようにしてもよい。
【００６９】
さらに、位置データはＧＰＳを利用して計測する以外に、移動通信ネットワークの基地局が提供する携帯端末の位置データを利用するようにしてもよい。その他、行動予測装置の種類や構成、学習フェーズ及び行動予測フェーズにおける処理手順と処理内容等についても、この発明の要旨を逸脱しない範囲で種々変形して実施可能である。
【００７０】
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【００７１】
ＭＳ１〜ＭＳｎ…携帯端末、ＳＶ…行動予測装置、ＮＷ…通信ネットワーク、１…送受信ユニット、２…制御ユニット、３…記憶ユニット、２１…位置データ取得制御部、２２…滞在場所抽出処理部、２３…系列パターン抽出処理部、２４…スケジューラデータ取得制御手段、２５…共起関係学習処理部、２６…行動予測処理部、２７…予測結果出力制御部、３１…滞在行動データ記憶部、３２…系列パターン記憶部、３３…スケジューラデータ記憶部、３４…識別結果記憶部。
【図１】
0005433472.tif 000010
【図２】
0005433472.tif 000011
【図３】
0005433472.tif 000012
【図４】
0005433472.tif 000013
【図５】
0005433472.tif 000014
【図６】
0005433472.tif 000015
【図７】
0005433472.tif 000016
【図８】
0005433472.tif 000017
【図９】
0005433472.tif 000018
【図１０】
0005433472.tif 000019
【図１１】
0005433472.tif 000020