(57)【要約】【課題】時系列データの変化量を推定する予測装置、予測方法及びコンピュータプログラムを提供することを目的としている。【解決手段】過去の時刻における統計値の度数を含む時系列データに基づいて、未来の時刻における度数の変化量の予測を表す変位ベクトル列の決定に用いられる第１変位ベクトル列を複数生成する第１変位ベクトル列生成部と、第１変位ベクトル列に基づいて算出される第１予測度数と度数との第１差分を算出する第１差分算出部と、第１変位ベクトル列のうち、所定の条件を満たす第１変位ベクトル列に基づいて変位ベクトル列の候補を表す第２変位ベクトル列を複数生成する第２変位ベクトル列生成部と、第２変位ベクトル列から算出される第２予測度数と第１予測度数との第２差分を算出し、第１差分と第２差分とが所定の条件を満たす場合、第２変位ベクトル列を変位ベクトル列として決定する第２差分算出部と、を備える、予測装置である。【選択図】図１
2019128605.tif 000002
【特許請求の範囲】
【請求項１】
過去の時刻における統計値の度数を含む時系列データに基づいて、前記時系列データの未来の時刻における前記度数の変化量の予測を表す変位ベクトル列の決定に用いられる第１変位ベクトル列を複数生成する第１変位ベクトル列生成部と、
前記第１変位ベクトル列毎に、前記第１変位ベクトル列に基づいて算出される第１予測度数と前記度数との第１差分を算出する第１差分算出部と、
前記第１変位ベクトル列のうち、所定の条件を満たす前記第１変位ベクトル列に基づいて前記変位ベクトル列の候補を表す第２変位ベクトル列を複数生成する第２変位ベクトル列生成部と、
前記第２変位ベクトル列から算出される第２予測度数と前記第１予測度数との第２差分を算出し、前記第１差分と前記第２差分とが所定の条件を満たす場合、前記第２変位ベクトル列を前記変位ベクトル列として決定する第２差分算出部と、
を備える、予測装置。
【請求項２】
前記第２変位ベクトル列生成部は、前記第１差分と前記第２差分とが、所定の条件を満たさない場合、前記第２変位ベクトル列のうち、所定の条件を満たす前記第２変位ベクトル列に基づいて、新しい第２変位ベクトル列を生成する請求項１に記載の予測装置。
【請求項３】
前記第１変位ベクトル列生成部は、前記時系列データ間の差分に基づいて決定される乱数に対応付けられた位置情報を決定し、前記位置情報に基づいて前記第１変位ベクトル列を生成する請求項１または２に記載の予測装置。
【請求項４】
前記第１変位ベクトル列生成部は、前記乱数を所定の確率に基づいて生成する請求項３に記載の予測装置。
【請求項５】
前記第２差分算出部は、前記第１差分の最小値と前記第２差分の最小値との誤差が閾値以下である場合、前記第２変位ベクトル列を前記変位ベクトル列として決定する請求項１から４のいずれか一項に記載の予測装置。
【請求項６】
前記第２変位ベクトル列生成部は、前記第１差分の大きさが下位５０％となる前記第１変位ベクトル列に基づいて、前記第２変位ベクトル列を複数生成する請求項１から５のいずれか一項に記載の予測装置。
【請求項７】
予測装置が、過去の時刻における統計値の度数を含む時系列データに基づいて、前記時系列データの未来の時刻における前記度数の変化量の予測を表す変位ベクトル列の決定に用いられる第１変位ベクトル列を複数生成する第１変位ベクトル列生成ステップと、
予測装置が、前記第１変位ベクトル列毎に、前記第１変位ベクトル列に基づいて算出される第１予測度数と前記度数との第１差分を算出する第１差分算出ステップと、
予測装置が、前記第１変位ベクトル列のうち、所定の条件を満たす前記第１変位ベクトル列に基づいて前記変位ベクトル列の候補を表す第２変位ベクトル列を複数生成する第２変位ベクトル列生成ステップと、
予測装置が、前記第２変位ベクトル列から算出される第２予測度数と前記第１予測度数との第２差分を算出し、前記第１差分と前記第２差分とが所定の条件を満たす場合、前記第２変位ベクトル列を前記変位ベクトル列として決定する第２差分算出ステップと、
を有する、予測方法。
【請求項８】
請求項１から６のいずれか一項に記載の予測装置としてコンピュータを機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予測装置、予測方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
多様かつ膨大なデータをサンプリング時刻ごとに取得することが、ネットワーク技術及びセンシング技術の進歩によって可能となっている。サンプリング時刻ごとに取得することが可能なデータの一つとして、空間における位置情報を含む多次元の時系列データ（以下「空間情報データ」という。）がある。空間情報データは、例えば、センシング機器としての携帯端末の位置情報と携帯端末の利用者の統計情報とを含む時系列データ、センシング機器としてのカーナビゲーションシステムの車両の位置情報と車両の利用者の統計情報とを含む時系列データ、交通系ＩＣカードの利用者が通過した改札機の位置情報と交通系ＩＣカードの利用者の統計情報とを含む時系列データである。
【０００３】
空間情報データは、マーケティング、インフラ整備、都市開発及び災害支援等に利用されることが期待されている。これらの分野における利用に際しては、利用形態に応じて空間情報データの分析が行われる。空間情報データの分析が高精度に行われるためには、大量の空間情報データを取得及び蓄積する必要がある。一方、取得される空間情報データのデータ量の増加は、空間情報データの蓄積に必要なコストの増加を招く。このため、蓄積される空間情報データは、効率的に圧縮される必要がある。
【０００４】
データを圧縮する装置であるデータ圧縮装置は、蓄積される空間情報データを効率的に圧縮するために、空間情報データにおける時間方向の相関を利用することができる。時間方向の相関は流量で表される。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】B. Lucas and T. Kanade, “An iterative image registration technique with an application to stereo vision”, In Proc. Seventh International Conference on Artificial Intelligence, pp.674-679, 1981.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、空間情報データにおいては、被観測者のプライバシー保護の観点から、流量を追跡可能な情報が付与されないという問題があった。流量を追跡可能な情報が付与されない空間情報データは、時刻毎に独立した度数を表すデータとして表される。空間情報データは、サンプリング時間間隔で取得されるため、多次元の時系列データである。したがって、空間情報データは、サンプリング時間間隔で取得された空間領域毎の度数を表すデータであり、時刻毎に独立した多次元の時系列データとなる。
【０００７】
上記事情に鑑み、本発明は、時系列データの時間方向の相関を推定する予測装置、予測方法及びコンピュータプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００８】
本発明の一態様は、過去の時刻における統計値の度数を含む時系列データに基づいて、前記時系列データの未来の時刻における前記度数の変化量の予測を表す変位ベクトル列の決定に用いられる第１変位ベクトル列を複数生成する第１変位ベクトル列生成部と、前記第１変位ベクトル列毎に、前記第１変位ベクトル列に基づいて算出される第１予測度数と前記度数との第１差分を算出する第１差分算出部と、前記第１変位ベクトル列のうち、所定の条件を満たす前記第１変位ベクトル列に基づいて前記変位ベクトル列の候補を表す第２変位ベクトル列を複数生成する第２変位ベクトル列生成部と、前記第２変位ベクトル列から算出される第２予測度数と前記第１予測度数との第２差分を算出し、前記第１差分と前記第２差分とが所定の条件を満たす場合、前記第２変位ベクトル列を前記変位ベクトル列として決定する第２差分算出部と、を備える、予測装置である。
【０００９】
本発明の一態様は、上記の予測装置であって、前記第２変位ベクトル列生成部は、前記第１差分と前記第２差分とが、所定の条件を満たさない場合、前記第２変位ベクトル列のうち、所定の条件を満たす前記第２変位ベクトル列に基づいて、新しい第２変位ベクトル列を生成する。
【００１０】
本発明の一態様は、上記の予測装置であって、前記第１変位ベクトル列生成部は、前記時系列データ間の差分に基づいて決定される乱数に対応付けられた位置情報を決定し、前記位置情報に基づいて前記第１変位ベクトル列を生成する。
【００１１】
本発明の一態様は、上記の予測装置であって、前記第１変位ベクトル列生成部は、前記乱数を所定の確率に基づいて生成する。
【００１２】
本発明の一態様は、上記の予測装置であって、前記第２差分算出部は、前記第１差分の最小値と前記第２差分の最小値との誤差が閾値以下である場合、前記第２変位ベクトル列を前記変位ベクトル列として決定する。
【００１３】
本発明の一態様は、上記の予測装置であって、前記第２変位ベクトル列生成部は、前記第１差分の大きさが下位５０％となる前記第１変位ベクトル列に基づいて、前記第２変位ベクトル列を複数生成する。
【００１４】
本発明の一態様は、予測装置が、過去の時刻における統計値の度数を含む時系列データに基づいて、前記時系列データの未来の時刻における前記度数の変化量の予測を表す変位ベクトル列の決定に用いられる第１変位ベクトル列を複数生成する第１変位ベクトル列生成ステップと、予測装置が、前記第１変位ベクトル列毎に、前記第１変位ベクトル列に基づいて算出される第１予測度数と前記度数との第１差分を算出する第１差分算出ステップと、予測装置が、前記第１変位ベクトル列のうち、所定の条件を満たす前記第１変位ベクトル列に基づいて前記変位ベクトル列の候補を表す第２変位ベクトル列を複数生成する第２変位ベクトル列生成ステップと、予測装置が、前記第２変位ベクトル列から算出される第２予測度数と前記第１予測度数との第２差分を算出し、前記第１差分と前記第２差分とが所定の条件を満たす場合、前記第２変位ベクトル列を前記変位ベクトル列として決定する第２差分算出ステップと、を有する、予測方法。
【００１５】
本発明の一態様は、上記の予測装置としてコンピュータを機能させるためのコンピュータプログラム。
【発明の効果】
【００１６】
本発明により、時系列データの時間方向の相関を推定する予測装置、予測方法及びコンピュータプログラムを提供することが可能となる。
【図面の簡単な説明】
【００１７】
【図１】実施形態における、推定装置の機能構成の例を示す機能ブロック図である。
【図２】実施形態における、座標参照テーブルの生成の流れの例を示すフローチャートである。
【図３】実施形態における、ｔ＋１フレームの各メッシュでの度数の推定値の算出の流れの例を示すフローチャートである。
【図４】実施形態における、変位ベクトル列の生成の処理の流れを示すフローチャートである。
【図５】実施形態における、時間方向の相関の推定処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１８】
図１は、実施形態における、推定装置の機能構成の例を示す機能ブロック図である。予測装置１００は、時系列データを構成する過去の時刻における時系列データに基づいて未来の時刻における時系列データを推定する情報処理装置である。時系列データは、例えば、統計値の度数又は位置情報を含む。予測装置１００は、例えば、予測装置１００に時刻ｔにおける度数Ｆｑ（ｔ）と時刻ｔ＋１における度数Ｆｑ（ｔ＋１）とが与えられた場合、度数Ｆｑ（ｔ＋１）を最も再現する時刻ｔにおける変位ベクトルを決定することで、流量を推定する。変位ベクトルは、フレーム間の粒子の度数変化を表す。変位ベクトルは、水平成分及び垂直成分を有する２次元ベクトルである。変位ベクトルによって、各粒子の次時刻での位置が定められる。予測装置１００は、推定した流量を表す流量信号をデータ圧縮装置等である他装置に通知する。
【００１９】
予測装置１００は、バスで接続されたＣＰＵ（Central Processing Unit）等のプロセッサやメモリや補助記憶装置などを備え、流量推定プログラムを実行することによって座標参照テーブル生成部１０１、変位ベクトル列生成部１０２、第１予測誤差算出部１０３、変位ベクトル破棄部１０４、変位ベクトル列再生成部１０５、変位ベクトル更新部１０６及び第２予測誤差算出部１０７を備える装置として機能する。なお、予測装置１００の各機能の全て又は一部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されてもよい。流量推定プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。流量推定プログラムは、電気通信回線を介して送信されてもよい。
【００２０】
予測装置１００は、複数のフレームを時系列データとして受け付ける。例えば、予測装置１００は、複数のフレームを空間情報データとして受け付ける。各フレームは、フレームごとにδ×δのメッシュで表される。空間情報データは、時間方向の相関を表す流量を有さない場合がある。この場合、空間情報データは、サンプリング時間間隔で取得された空間領域毎の度数を表すデータである。本実施形態では、時刻ｔにおけるフレーム（以下「第ｔフレーム」という。）のサンプル位置（ｘ，ｙ）の度数をｆ（ｘ，ｙ，ｔ）とする。各サンプル位置（ｘ，ｙ）は、δ×δのメッシュを表す。ｆ（ｘ，ｙ，ｔ）は、メッシュ内に含まれる度数である。ここで、０≦ｘ≦Ｘ−１、０≦ｙ≦Ｙ−１、０≦ｔ≦Ｔの範囲で定義される。ｆ（ｘ，ｙ，ｔ）が量子化幅ｑで量子化され、量子化後の度数（以下「量子化度数」と言う。）は、数式（１）で表される。なお、ｆ１（ｘ，ｙ，ｔ）＝ｆ（ｘ，ｙ，ｔ）である。
【００２１】
【数１】
2019128605.tif 000003
【００２２】
第ｔフレームのサンプル位置（ｘ，ｙ）のメッシュ内は、ｆｑ（ｘ，ｙ，ｔ）個の粒子で構成される。したがって、第ｔフレームのサンプル位置（ｘ，ｙ）の粒子の総数Ｋｑは、以下の数式（２）で表される。以下、第ｔフレームの粒子全体Ｆｑ（ｔ）は、数式（３）で表される。
【００２３】
【数２】
2019128605.tif 000004
【００２４】
【数３】
2019128605.tif 000005
【００２５】
座標参照テーブル生成部１０１は、座標参照テーブルを生成する。具体的には、座標参照テーブル生成部１０１は、フレーム内の粒子に対してインデックスを割り当てる。インデックスは、フレーム内の粒子を同定するために用いられる。インデックスの範囲はｋ＝０，１，・・・ｋｑ−１である。座標参照テーブル生成部１０１は、フレーム内のメッシュをラスタ走査により一元化する。座標参照テーブル生成部１０１は、各メッシュ内の粒子に対して連続したインデックスを付与することで割り当てる。座標参照テーブル生成部１０１は、各インデックスに対応する空間位置（ｘ，ｙ）を、座標参照テーブルに格納する。予測装置１００の各機能部は、座標参照テーブルを必要に応じて参照する。
【００２６】
変位ベクトル列生成部１０２は、所定数の変位ベクトル列を生成する。所定数は、例えば、Ｋｑである。変位ベクトル列生成部１０２は、変位ベクトル列の生成することで、フレーム間差分算出部１２１、粒子発生確率算出部１２２、累積粒子発生確率算出部１２３、乱数生成部１２４及び変位ベクトル列決定部１２５として機能する。変位ベクトル列は、変位ベクトルＶｘ，ｔ及びＶｙ，ｔを合わせたベクトルである。Ｖｘ，ｔは、Ｋｑ要素からなる配列である。第ｋ要素Ｖｘ，ｔ［ｋ］（ｋ＝０，・・・，ｋｑ−１）は、第ｋ番目の粒子の水平方向の変位を表す。Ｖｙ，ｔは、Ｋｑ要素からなる配列である。第ｋ要素Ｖｙ，ｔ［ｋ］（ｋ＝０，・・・，Ｋｑ−１）は、第ｋ番目の粒子の垂直方向の変位を表す。変位ベクトル列生成部１０２は、第１変位ベクトル列生成部の一態様である。第１変位ベクトル列生成部は、時系列データに基づいて、未来の時刻における変位ベクトル列の決定に用いられる第１変位ベクトル列を複数生成する。変位ベクトル列生成部１０２に生成される変位ベクトルは、第１変位ベクトル列の一態様である。第１変位ベクトル列生成部は、時系列データ間の差分に基づいて決定される乱数に対応付けられた位置情報を決定し、位置情報をｋ番目の粒子の変位ベクトルとして第１変位ベクトル列を生成する。
【００２７】
フレーム間差分算出部１２１は、フレーム間の差分を算出する。フレーム間差分は、ｄ（ｘ，ｙ，ｔ）で表される。ｄ（ｘ，ｙ，ｔ）は、以下の数式（４）で表される。
【００２８】
【数４】
2019128605.tif 000006
【００２９】
粒子発生確率算出部１２２は、各変位ベクトル列の各要素を、以下の数式（５）で表される粒子発生確率に基づく乱数に従って生成する。
【００３０】
【数５】
2019128605.tif 000007
【００３１】
ここで、数式（５）のＢは、数式（６）で表される正規化定数である。
【００３２】
【数６】
2019128605.tif 000008
【００３３】
ここで、０≦ｘ＋i≦Ｘ−１、０≦ｙ＋ｊ≦Ｙ−１の範囲外となる（ｘ＋i，ｙ＋ｊ）については、ｗ（ｘ＋i，ｙ＋ｊ）＝０とする。また、ｇσ（ｉ，ｊ）は、２次元正規分布の確率密度関数である。ｇσ（ｉ，ｊ）は、平均をゼロベクトルとし、共分散行列が数式（７）で表される。確率密度関数は、数式（８）で表される。
【数７】
2019128605.tif 000009
【００３４】
【数８】
2019128605.tif 000010
【００３５】
粒子発生確率算出部１２２は、数式（５）のｄ（ｘ，ｙ，ｔ）＋をフレーム間の差分に基づいて算出する。粒子発生確率算出部１２２は、数式（９）に基づいて、ｄ（ｘ，ｙ，ｔ）＋を算出する。
【００３６】
【数９】
2019128605.tif 000011
【００３７】
粒子発生確率算出部１２２は、数式（８）の正規分布の標準偏差パラメータσを、フレーム間の差分に基づいて算出する。粒子発生確率算出部１２２は、数式（１０）に基づいて、σを算出する。
【００３８】
【数１０】
2019128605.tif 000012
【００３９】
数式（１０）の変数α及びβは、ハイパーパラメータである。なお、粒子発生確率算出部１２２は、ｆ（ｘ，ｙ，ｔ＋１）＝０の場合、ハイパーパラメータβを設定する。変数α及びβはあらかじめ定められる。粒子発生確率算出部１２２は、数式（１０）のｄ（ｘ，ｙ，ｔ）−をフレーム間の差分に基づいて算出する。粒子発生確率算出部１２２は、数式（１１）に基づいて、ｄ（ｘ，ｙ，ｔ）−を算出する。
【００４０】
【数１１】
2019128605.tif 000013
【００４１】
粒子発生確率算出部１２２は、ｈ（ｉ，ｊ）を変位量に基づいて算出する。粒子発生確率算出部１２２は、数式（１２）に基づいて、ｈ（ｉ，ｊ）を算出する。
【００４２】
【数１２】
2019128605.tif 000014
【００４３】
累積粒子発生確率算出部１２３は、累積粒子発生確率を算出する。具体的には、累積粒子発生確率算出部１２３は、ｗ（ｘ＋ｉ，ｙ＋ｊ）（ｉ＝−I，・・・，I、ｊ＝−Ｊ，・・・，Ｊ）を一元系列~ｗ（ｎ）に変換する。累積粒子発生確率算出部１２３は、例えば、ラスタ走査等の公知の方法で一元系列~ｗ（ｎ）に変換する。累積粒子発生確率算出部１２３は、変換後の一元系列~ｗ（ｎ）に対して、数式（１３）に基づいて累積粒子発生確率を算出する。
【００４４】
【数１３】
2019128605.tif 000015
【００４５】
乱数生成部１２４は、［０，１］を値域とする一様分布に従い、所定の個数の一様乱数ベクトルｕを生成する。所定の個数とは、当該メッシュ内の粒子数である。乱数生成部１２４は、各一様乱数ベクトルｕに対して、数式（１４）を満たすｎを同定する。乱数生成部１２４は、ｗ（ｘ＋ｉ，ｙ＋ｊ）に従う乱数として、ｎを決定する。乱数生成部１２４は、乱数をＫｑ個生成する。
【００４６】
【数１４】
2019128605.tif 000016
【００４７】
変位ベクトル列決定部１２５は、座標参照テーブルに基づいて、各乱数に対する２次元座標を算出する。変位ベクトル列決定部１２５は、算出された２次元座標を第ｋ番目の粒子の変位ベクトルに決定する。例えば、変位ベクトル列決定部１２５は、第ｋ番目に発生された乱数がｎの場合、対応する２次元座標は、ｎ／（２Ｊ＋１）を超えない整数で表される。ここで、ｎ％（２Ｉ＋１）は、ｎを２Ｉ＋１で除算した際の余りを返す演算である。
【００４８】
第１予測誤差算出部１０３は、第ｔ＋１フレームの各メッシュの度数の推定値~ｆｑ（ｘ，ｙ，ｔ＋１）を算出する。推定値~ｆｑ（ｘ，ｙ，ｔ＋１）を要素とする配列は、変位ベクトルＶｘ，ｔ、Ｖｙ，ｔを用いて、数式（１５）で表される。数式（１５）で表される配列は、第ｔ＋１フレームの予測度数を表す。
【００４９】
【数１５】
2019128605.tif 000017
【００５０】
第１予測誤差算出部１０３は、第ｔ＋１フレームの度数と第ｔ＋１フレームの予測度数との誤差（第ｔ＋１フレームの予測誤差）を算出する。なお、予測装置１００は、第ｔ＋１フレームの予測誤差を最小化する変位ベクトル列を第ｔ＋１フレームの予測度数を、変位ベクトル列Ｖ＊ｘ，ｔ、Ｖ＊ｙ，ｔとして同定する。Ｖ＊ｘ，ｔ、Ｖ＊ｙ，ｔは、数式（１６）で表される。第１予測誤差算出部１０３は、第１差分算出部の一態様である。第１差分算出部は、第１変位ベクトル列毎に、第１変位ベクトル列に基づいて算出される第１予測度数と時系列データに含まれる度数との第１差分を算出する。第ｔ＋１フレームの予測誤差は、第１差分の一態様である。
【００５１】
【数１６】
2019128605.tif 000018
【００５２】
変位ベクトル破棄部１０４は、所定の条件を満たす変位ベクトル列を破棄する。所定の条件とは、例えば、変位ベクトル破棄部１０４は、算出された予測誤差を降順にソートし、ソートされた予測誤差の下位５０％としてもよい。この場合、変位ベクトル破棄部１０４は、下位５０％の変位ベクトル列を破棄する。
【００５３】
変位ベクトル列再生成部１０５は、破棄されずに残った変位ベクトル列から、２本の変位ベクトル列を一様乱数に従ってランダムに選択する。変位ベクトル列再生成部１０５は、選択された２本の変位ベクトル列が同じ変位ベクトル列であった場合、再度、２本の変位ベクトル列を選択する。変位ベクトル列再生成部１０５は、２本の変位ベクトル列間で粒子を組み替えることで、新しい変位ベクトルを２本生成する。変位ベクトル列再生成部１０５は、破棄されずに残った変位ベクトル列と新たに生成された変位ベクトル列との総和が、変位ベクトル列生成部１０２によって生成された変位ベクトル列の総和と等しくなるまで、新しい変位ベクトル列を生成する。変位ベクトル列再生成部１０５は、第２変位ベクトル列生成部の一態様である。第２変位ベクトル列生成部は、第１変位ベクトル列のうち、所定の条件（例えば、第１差分の大きさが下位５０％となる第１変位ベクトル列）を満たす第１変位ベクトル列に基づいて変位ベクトル列の候補を表す第２変位ベクトル列を複数生成する。変位ベクトル列再生成部１０５に生成された変位ベクトル列は、第２変位ベクトル列の一態様である。
【００５４】
変位ベクトル更新部１０６は、所定の確率に基づいて、変位ベクトル列内の変位ベクトル内の粒子を選択する。変位ベクトル更新部１０６は、選択された粒子の持つ変位ベクトルを乱数に基づいて、更新する。所定の確率は、予測装置１００の外部から与えられるパラメータである。
【００５５】
第２予測誤差算出部１０７は、各変位ベクトル列の予測誤差を算出する。第２予測誤差算出部１０７は、得られた予測誤差の最小値と、第１予測誤差算出部１０３によって算出された予測誤差の最小値と、を比較する。第２予測誤差算出部１０７は、両最小値の差が、所定の閾値以下の場合、予測装置１００は、処理を終了する。所定の閾値より大きい場合、変位ベクトル更新部１０６によって更新された変位ベクトル列を変位ベクトル破棄部１０４に出力する。第２予測誤差算出部１０７は、第２差分算出部の一態様である。第２差分算出部は、第２変位ベクトル列から算出される第２予測度数と第１予測度数との第２差分を算出し、第１差分と第２差分とが所定の条件（例えば、第１差分の最小値と第２差分の最小値との誤差が閾値以下であること）を満たす場合、第２変位ベクトル列を時系列データに含まれる度数の変化量を表す変位ベクトル列として決定する。
【００５６】
図２は、実施形態における、座標参照テーブルの生成の流れの例を示すフローチャートである。座標参照テーブル生成部１０１は、配列の要素を表す変数ｋに０を設定する（ステップＳ１０１）。座標参照テーブル生成部１０１は、ｙ＝０，・・・，Ｙ−１の順に座標参照テーブルの値を決定する（ステップＳ１０２）。座標参照テーブル生成部１０１は、ｘ＝０，・・・，Ｘ−１の順に座標参照テーブルの値を決定する（ステップＳ１０３）。
【００５７】
座標参照テーブル生成部１０１は、Ψｘ［ｋ：ｋ＋ｆｑ（ｘ，ｙ，ｔ）−１］にｘを設定する（ステップＳ１０４）。Ψｘ［ｋ：ｋ＋ｆｑ（ｘ，ｙ，ｔ）−１］は、Ψｘの第ｋ要素から第ｋ＋ｆｑ（ｘ，ｙ，ｔ）−１の各要素を表す。座標参照テーブル生成部１０１は、Ψｙ［ｋ：ｋ＋ｆｑ（ｘ，ｙ，ｔ）−１］にｙを設定する（ステップＳ１０５）。Ψｙ［ｋ：ｋ＋ｆｑ（ｘ，ｙ，ｔ）−１］は、Ψｙの第ｋ要素から第ｋ＋ｆｑ（ｘ，ｙ，ｔ）−１の各要素を表す。座標参照テーブル生成部１０１は、ｋにｋ＋ｆｑ（ｘ，ｙ，ｔ）を設定する（ステップＳ１０６）。全てのｘにおいて、座標参照テーブルの値が決定され（ステップＳ１０７）、全てのｙにおいて座標参照テーブルの値が決定されると（ステップＳ１０８）、座標参照テーブルの生成処理は、終了する。
【００５８】
図３は、実施形態における、ｔ＋１フレームの各メッシュでの度数の推定値の算出の流れの例を示すフローチャートである。第１予測誤差算出部１０３は、ｋ＝０，・・・，Ｋｑ−１の順に、推定値を算出する（ステップＳ２０１）。第１予測誤差算出部１０３は、第ｔフレームのｋ番目の粒子の水平変位Ｖｘ，ｔ[ｋ]の値が０かつ垂直変位Ｖｙ，ｔ[ｋ]の値が０であるか否かを判定する（ステップＳ２０２）。水平変位Ｖｘ，ｔ[ｋ]の値が０かつ垂直変位Ｖｙ，ｔ[ｋ]の値が０である場合（ステップＳ２０２：ＹＥＳ）、第１予測誤差算出部１０３は＾ｆｑ(Ψｘ[ｋ]，Ψｙ[ｋ]，ｔ＋１)にｆｑ(Ψｘ[ｋ]，Ψｙ[ｋ]，ｔ)の値を設定し、ステップＳ２０６に遷移する（ステップＳ２０３）。
【００５９】
水平変位Ｖｘ，ｔ[ｋ]の値が０かつ垂直変位Ｖｙ，ｔ[ｋ]の値が０でない場合（ステップＳ２０２：ＮＯ）、第１予測誤差算出部１０３は＾ｆｑ(Ψｘ[ｋ]，Ψｙ[ｋ]，ｔ＋１)にｆｑ(Ψｘ[ｋ]，Ψｙ[ｋ]，ｔ)−１の値を設定する（ステップＳ２０４）。第１予測誤差算出部１０３は＾ｆｑ(Ψｘ[ｋ]＋Ｖｘ[ｋ]，Ψｙ[ｋ] ＋Ｖｙ[ｋ]，ｔ＋１)にｆ(Ψｘ[ｋ]＋Ｖｘ[ｋ]，Ψｙ[ｋ] ＋Ｖｙ[ｋ]，ｔ)＋１の値を設定する（ステップＳ２０５）。第１予測誤差算出部１０３は、全てのｋにおいて度数の推定値が算出されると（ステップＳ２０６）、ｔ＋１フレームの各メッシュでの度数の推定値の算出を終了する。
【００６０】
図４は、実施形態における、変位ベクトル列の生成の処理の流れを示すフローチャートである。予測装置１００には予め第ｔフレームの位置（ｘ，ｙ）における度数ｆ（ｘ，ｙ，ｔ）と第ｔ＋１フレームの位置（ｘ，ｙ）における度数ｆ（ｘ，ｙ，ｔ＋１）とが与えられる。フレーム間差分算出部１２１は、数式（４）に基づいてフレーム間差分を算出する（ステップＳ３０１）。粒子発生確率算出部１２２は、変数ｎに０を設定する（ステップＳ３０２）。
【００６１】
粒子発生確率算出部１２２は、ｙ＝０，・・・，Ｙ−１の順に粒子発生確率の値を決定する（ステップＳ３０３）。粒子発生確率算出部１２２は、ｘ＝０，・・・，Ｘ−１の順に粒子発生確率の値を決定する（ステップＳ３０４）。粒子発生確率算出部１２２は、数式（１１）に基づいて、ｄ（ｘ，ｙ，ｔ）−の値を算出する（ステップＳ３０５）。粒子発生確率算出部１２２は、数式（１０）に基づいて、正規分布の標準偏差パラメータσの値を算出する（ステップＳ３０６）。なお、ハイパーパラメータα及びβは、予め定められる。粒子発生確率算出部１２２は、数式（９）に基づいて、ｄ（ｘ，ｙ，ｔ）＋の値を算出する（ステップＳ３０７）。粒子発生確率算出部１２２は、数式（５）に基づいて、変異量粒子発生確率ｗ（ｘ，ｙ）を算出する（ステップＳ３０８）。なお、粒子発生確率算出部１２２は、数式（１２）に基づいて、ｈ（ｉ，ｊ）を算出する。
【００６２】
累積粒子発生確率算出部１２３は、数式（１３）に基づいて、累積粒子発生確率ｗ（ｎ）を算出する（ステップＳ３０９）。累積粒子発生確率算出部１２３は、変数ｎをインクリメントする（ステップＳ３１０）。粒子発生確率算出部１２２は、全てのｘにおいて、累積粒子発生確率の値が決定され（ステップＳ３１１）、粒子発生確率算出部１２２は、全てのｙにおいて累積粒子発生確率の値が決定されると（ステップＳ３１２）、変位ベクトル列の生成の処理はステップＳ３１３に遷移する。
【００６３】
変位ベクトル列決定部１２５は、ｋ＝０，・・・，Ｋｑ−１の順に変位ベクトル列を決定する（ステップＳ３１３）。乱数生成部１２４は、［０，１］を値域とする一様分布に従い、一様乱数ベクトルを生成する。（ステップＳ３１４）。乱数生成部１２４は、一様乱数ベクトルに基づいて、数式（１４）を満たす乱数ｎを生成する（ステップＳ３１５）。変位ベクトル列決定部１２５は、座標参照テーブルに基づいて乱数に対する２次元座標を算出する。変位ベクトル列決定部１２５は、算出された２次元座標を第ｋ番目の粒子の変位ベクトルに決定する（ステップＳ３１６）。変位ベクトル列決定部１２５は、全てのｋにおいて、変位ベクトル列が決定されると（ステップＳ３１７）、変位ベクトル列の生成の処理は、終了する。
【００６４】
図５は、実施形態における、時間方向の相関の推定処理の流れを示すフローチャートである。変位ベクトル列生成部１０２は、図４に示される処理に基づいて変位ベクトル列を生成する（ステップＳ４０１）。第１予測誤差算出部１０３は、第ｔ＋１フレームの度数と第ｔ＋１フレームの予測度数との誤差（第ｔ＋１フレームの予測誤差）を算出する（ステップＳ４０２）。なお、第ｔ＋１フレームの予測度数は、図３に示される処理に基づいて、算出される。
【００６５】
変位ベクトル破棄部１０４は、生成された変位ベクトル列のうち、所定の条件を満たす変位ベクトル列を破棄する（ステップＳ４０３）。所定の条件は、例えば、ソートされた予測誤差の下位５０％としてもよい。変位ベクトル列再生成部１０５は、破棄されずに残った変位ベクトル列から、新しい変位ベクトルを生成する（ステップＳ４０４）。変位ベクトル更新部１０６は、外部から与えられた確率に基づいて、変位ベクトル内の粒子を選択し、選択された粒子の持つ変位ベクトルを更新する（ステップＳ４０５）。第２予測誤差算出部１０７は、更新された変位ベクトル列の予測誤差を算出する（ステップＳ４０６）。
【００６６】
第２予測誤差算出部１０７は、得られた予測誤差の最小値と第１予測誤差算出部１０３によって算出された予測誤差の最小値との差が、所定の閾値以下であるか否かを判定する（ステップＳ４０７）。所定の閾値以下の場合（ステップＳ４０７：ＹＥＳ）、流量の推定処理は、終了する。所定の閾値以下ではない場合（ステップＳ４０７：ＮＯ）、処理はステップＳ４０３に遷移する。
【００６７】
以上のように、実施形態の予測装置１００は、変位ベクトル列生成部１０２は、第ｔフレームと第ｔ＋１フレームとのフレーム間差分に基づいて、変位ベクトル列を生成する。予測装置１００の第１予測誤差算出部１０３、変位ベクトル破棄部１０４、変位ベクトル列再生成部１０５、変位ベクトル更新部１０６及び第２予測誤差算出部１０７は、前回の生成された変位ベクトル列の予測誤差の最小値と、今回生成された変位ベクトル列の予測誤差の最小値との差分が所定の閾値以下となる場合、今回生成された変位ベクトル列を推定された流量として決定する。したがって、実施形態の予測装置１００は、度数のみが観測された時系列の空間情報データに対しても、観測されていない情報である時系列データの時間方向の相関を推定可能となる。
【００６８】
上述した実施形態における予測装置１００の各機能をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、ＦＰＧＡ（Field Programmable Gate Array）等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
【００６９】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【産業上の利用可能性】
【００７０】
本発明は、空間情報データを圧縮するために用いられる流量を推定する推定装置に適用可能である。
【符号の説明】
【００７１】
１００…予測装置，  １０１…座標参照テーブル生成部，  １０２…変位ベクトル列生成部，  １０３…第１予測誤差算出部，  １０４…変位ベクトル破棄部，  １０５…変位ベクトル列再生成部，  １０６…変位ベクトル更新部，  １０７…第２予測誤差算出部，  １２１…フレーム間差分算出部，  １２２…粒子発生確率算出部，  １２３…累積粒子発生確率算出部，  １２４…乱数生成部，  １２５…変位ベクトル列決定部
【図１】
2019128605.tif 000019
【図２】
2019128605.tif 000020
【図３】
2019128605.tif 000021
【図４】
2019128605.tif 000022
【図５】
2019128605.tif 000023