(57)【要約】      （修正有）【課題】２次元データの分析を高速かつ効率よく行う２次元データ分析装置、２次元データ分析方法及び２次元データ分析プログラムを提供する。【解決手段】２次元データ、及び２次元データに対応づけられた値である分析値の組み合わせに基づき、分析値の累乗値を用いて算出され、複数の組み合わせにおける分析値の特徴を表すパラメータであるモーメントにより分析値を分析するための分析装置１０２であって、複数の組み合わせを取得するデータ取得部２１０と、取得した組み合わせにおける分析値の累乗値、及び累乗値に係る累積和を算出する前処理データ算出部２３１と、取得した組み合わせのうちから少なくとも１つ以上の組み合わせの選択を受け付ける分析要求入力部２２０と、選択された組み合わせにおける分析値である選択分析値のモーメントを、算出した累積和に基づき算出するモーメント算出部２３２と、を備える。【選択図】図２
2019035995.tif 000002
【特許請求の範囲】
【請求項１】
２次元データ、及び前記２次元データに対応づけられた値である分析値の組み合わせに基づき、前記分析値の累乗値を用いて算出され、複数の前記組み合わせにおける前記分析値の特徴を表すパラメータであるモーメントにより前記分析値を分析するための、プロセッサ及びメモリを備える分析装置であって、
複数の前記組み合わせを取得するデータ取得部と、
前記取得した組み合わせにおける前記分析値の累乗値、及び前記累乗値に係る累積和を算出する前処理データ算出部と、
前記取得した組み合わせのうちから少なくとも１つ以上の前記組み合わせの選択を受け付ける分析要求入力部と、
前記選択された組み合わせにおける前記分析値である選択分析値の前記モーメントを、前記算出した累積和に基づき算出するモーメント算出部と、
を備える２次元データ分析装置。
【請求項２】
前記モーメント算出部は、
前記選択分析値のモーメントを算出する際に、前記選択分析値のモーメントを前記選択分析値の累積和の線形和として予め構成する処理要求分解部と、
前記構成した線形和、及び前記算出した累積和に基づき前記選択分析値のモーメントを算出する累積和計算部とを備える、請求項１に記載の２次元データ分析装置。
【請求項３】
前記モーメントは、複数の前記組み合わせにおける前記分析値と前記複数の組み合わせにおける前記分析値の平均値との差分の、所定のべき指数による累乗値であり、
前記前処理データ算出部は、前記取得した組み合わせにおける前記分析値の累乗値として、所定の最大次数以下の各べき指数による累乗値を、前記取得した複数の分析値のそれぞれについて算出し、
前記処理要求分解部は、前記選択分析値のモーメントを算出する際に、前記選択分析値のモーメントを、前記選択分析値の前記各べき指数による累乗値に係る累積和の線形和として予め構成し、
前記累積和計算部は、前記構成した線形和に前記算出した前記各べき指数による累積和を対応させることにより、前記選択分析値のモーメントを算出する、
請求項２に記載の２次元データ分析装置。
【請求項４】
前記選択された組み合わせにおける前記２次元データと、前記算出した前記選択分析値のモーメントにより算出される統計値との間の関係を示す２次元図を出力する結果出力部を備える、請求項１に記載の２次元データ分析装置。
【請求項５】
前記結果出力部は、前記統計値に応じた表示形式により前記選択分析値の特徴を示す前記２次元図であるヒートマップを表示する、請求項４に記載の２次元データ分析装置。
【請求項６】
前記選択された組み合わせにおける前記２次元データと、前記算出した前記選択分析値のモーメントにより算出される統計値との間の関係を示す２次元図を出力する結果出力部をさらに備え、
前記モーメントは、複数の前記組み合わせにおける前記分析値と前記複数の組み合わせにおける前記分析値の平均値との差分の、所定のべき指数による累乗値であり、
前記前処理データ算出部は、前記取得した組み合わせにおける前記分析値の累乗値として、所定の最大次数以下の各べき指数による累乗値を、前記取得した複数の分析値のそれぞれについて算出し、
前記モーメント算出部は、
前記選択分析値のモーメントを算出する際に、前記選択分析値のモーメントを前記選択
分析値の累積和の線形和として予め構成する処理要求分解部と、
前記構成した線形和、及び前記算出した累積和に基づき前記選択分析値のモーメントを算出する累積和計算部とを備え、
前記処理要求分解部は、前記選択分析値のモーメントを算出する際に、前記選択分析値のモーメントを、前記選択分析値の前記各べき指数による累乗値に係る累積和の線形和として予め構成し、
前記累積和計算部は、前記構成した線形和に前記算出した前記各べき指数による累積和を対応させることにより、前記選択分析値のモーメントを算出し、
前記結果出力部は、前記統計値に応じた表示形式により前記選択分析値の特徴を示す前記２次元図であるヒートマップを表示する、
請求項１に記載の２次元データ分析装置。
【請求項７】
２次元データ、及び前記２次元データに対応づけられた値である分析値の組み合わせに基づき、前記分析値の累乗値を用いて算出され、複数の前記組み合わせにおける前記分析値の特徴を表すパラメータであるモーメントにより前記分析値を分析するための分析方法であって、
プロセッサ及びメモリを備える情報処理装置が、
複数の前記組み合わせを取得するデータ取得処理と、
前記取得した組み合わせにおける前記分析値の累乗値、及び前記累乗値に係る累積和を算出する前処理データ算出処理と、
前記取得した組み合わせのうちから少なくとも１つ以上の前記組み合わせの選択を受け付ける分析要求入力処理と、
前記選択された組み合わせにおける前記分析値である選択分析値の前記モーメントを、前記算出した累積和に基づき算出するモーメント算出処理と、
を実行する、２次元データ分析方法。
【請求項８】
前記モーメント算出処理は、
前記選択分析値のモーメントを算出する際に、前記選択分析値のモーメントを前記選択分析値の累積和の線形和として予め構成する処理要求分解処理と、
前記構成した線形和、及び前記算出した累積和に基づき前記選択分析値のモーメントを算出する累積和計算処理とを実行する、請求項７に記載の２次元データ分析方法。
【請求項９】
前記情報処理装置は、
前記選択された組み合わせにおける前記２次元データと、前記算出した前記選択分析値のモーメントにより算出される統計値との間の関係を示す２次元図を出力する結果出力処理をさらに実行する、請求項７に記載の２次元データ分析方法。
【請求項１０】
２次元データ、及び前記２次元データに対応づけられた値である分析値の組み合わせに基づき、前記分析値の累乗値を用いて算出され、複数の前記組み合わせにおける前記分析値の特徴を表すパラメータであるモーメントにより前記分析値を分析するための分析プログラムであって、
プロセッサ及びメモリを備える情報処理装置に、
複数の前記組み合わせを取得するデータ取得処理と、
前記取得した組み合わせにおける前記分析値の累乗値、及び前記累乗値に係る累積和を算出する前処理データ算出処理と、
前記取得した組み合わせのうちから少なくとも１つ以上の前記組み合わせの選択を受け付ける分析要求入力処理と、
前記選択された組み合わせにおける前記分析値である選択分析値の前記モーメントを、前記算出した累積和に基づき算出するモーメント算出処理と、
を実行させる、２次元データ分析プログラム。
【請求項１１】
前記モーメント算出処理は、
前記選択分析値のモーメントを算出する際に、前記選択分析値のモーメントを前記選択分析値の累積和の線形和として予め構成する処理要求分解処理と、
前記構成した線形和、及び前記算出した累積和に基づき前記選択分析値のモーメントを算出する累積和計算処理とを実行する、請求項１０に記載の２次元データ分析プログラム。
【請求項１２】
前記情報処理装置に、
前記選択された組み合わせにおける前記２次元データと、前記算出した前記選択分析値のモーメントにより算出される統計値との間の関係を示す２次元図を出力する結果出力処理をさらに実行させる、請求項１０に記載の２次元データ分析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２次元データ分析装置、２次元データ分析方法、及び２次元データ分析プログラムに関する。
【背景技術】
【０００２】
データ分析における可視化のツールの一つとして、ヒートマップ（Heat map）がある。ヒートマップは、例えば、複数の矩形の区画からなる領域に２次元の各データを対応させ、各データの統計量を計算することにより作成される。
【０００３】
このようなデータ分析は、近年のいわゆるビッグデータ（Big Data）等の活用として注目されている。これに関連する技術として、特許文献１には、ヒートマップの表示の高速化のために代替画像を予め生成しておき、ユーザからの要求があると対応する代替画像を検索して提供するが、この代替画像の生成を、代替範囲設定手段により設定された範囲に限って行うことが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−７９０３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１は、ヒートマップの代替画像が存在する領域の範囲外の領域における分析の高速化は行われず、また、ヒートマップの作成以外の方法でのデータ分析を想定していない。したがって、同文献ではデータ処理を効率よく行えず、ビッグデータに対応できないケースがあり得る。
【０００６】
本発明はこのような背景に鑑みてなされたものであり、その目的は、２次元データの分析を高速かつ効率よく行うための２次元データ分析装置、２次元データ分析方法、及び２次元データ分析プログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するための本発明の一つは、２次元データ、及び前記２次元データに対応づけられた値である分析値の組み合わせに基づき、前記分析値の累乗値を用いて算出され、複数の前記組み合わせにおける前記分析値の特徴を表すパラメータであるモーメントにより前記分析値を分析するための分析装置であって、複数の前記組み合わせを取得するデータ取得部と、前記取得した組み合わせにおける前記分析値の累乗値、及び前記累乗値に係る累積和を算出する前処理データ算出部と、前記取得した組み合わせのうちから少なくとも１つ以上の前記組み合わせの選択を受け付ける分析要求入力部と、前記選択された組み合わせにおける前記分析値である選択分析値の前記モーメントを、前記算出した累積和に基づき算出するモーメント算出部と、を備える。
【発明の効果】
【０００８】
本発明によれば、２次元データの分析を高速かつ効率よく行うことができる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施形態に係る分析システム１００におけるハードウェア構成の一例を説明する図である。
【図２】図２は、分析装置１０２が備える機能の一例を説明する図である。
【図３】図３は、管理テーブル２３０の一例を示す図である。
【図４】図４は、一時ＤＢ２３１の一例を示す図である。
【図５】図５は、２次元データ分析処理の一例を説明するフローチャートである。
【図６】図６は、データ入力画面の一例を示す図である。
【図７】図７は、分析データファイルの一例を示す図である。
【図８】図８は、前処理データ算出処理の一例を示すフローチャートである。
【図９】図９は、ヒートマップデータ生成処理の詳細を説明するフローチャートである。
【図１０】図１０は、ヒートマップデータ生成処理において表示される分析画面７００の一例を示す図である。
【図１１】図１１は、本実施形態の分析装置１０２を応用した分析システム１０の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態を、図面を用いて詳細に説明する。なお、本明細書では、断りの無い限り、加減乗除の演算をそれぞれ「＋」、「−」、「＊」、「／」で表す。また、累乗を「＾」、データの総和を「Σ」でそれぞれ表す。
【００１１】
本実施形態の分析システムは、いわゆるヒートマップ（Heat map）のような、所定の測定値又は分析値（以下、これらを分析値という）の分布又は特徴を表す２次元図を作成する。
【００１２】
分析値の分布又は特徴を表すための数値パラメータとして、本実施形態では、モーメントを使用する。ここでいうモーメントとは、後述するように、分析値の累乗値を用いて算出されるパラメータである。
【００１３】
＜ハードウェア構成＞
図１は、本実施形態に係る分析システム１００におけるハードウェア構成の一例を説明する図である。同図に示すように、分析システム１００は、キーボード、マウス、タッチパネルなどからなる入力装置１０１と、情報処理装置（コンピュータ）である分析装置１０２と、モニタ（ディスプレイ）などからなる出力装置１０３とを含んで構成されている。分析装置１０２は、ＣＰＵ（Central Processing Unit）などのプロセッサ５１と、Ｒ
ＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）などの主記憶装置５２と、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）などの補助記憶装置５３とを備える。
【００１４】
なお、図１の例では入力装置１０１、分析装置１０２、及び出力装置１０３が別々の装置として示されているが、これらは分析装置１０２として一体的に構成されていてもよい。そこで本実施形態では、分析装置１０２は、入力装置１０１及び出力装置１０３を含んで一体的に構成されているものとする。
【００１５】
＜機能＞
次に、分析装置１０２が備える機能について説明する。
分析装置１０２は、ヒートマップにおける座標に対応する２次元データと、この２次元データに対応づけられた値である分析値との組み合わせ（以下、分析データという）に基づき、分析値の累乗値を用いて算出され、複数の分析データにおける任意の分析値の特徴を表すパラメータであるモーメントにより分析値を分析するための分析装置である。
【００１６】
以下に説明する分析装置１０２の機能は、分析装置１０２のハードウェアによって、もしくは、分析装置１０２のプロセッサ５１が、主記憶装置５２や補助記憶装置５３に記憶されている各プログラムを読み出して実行することにより実現される。また、これらのプログラムは、例えば、二次記憶デバイスや不揮発性半導体メモリ、ハードディスクドライブ、ＳＳＤなどの記憶デバイス、又は、ＩＣカード、ＳＤカード、ＤＶＤなどの、計算機で読み取り可能な非一時的データ記憶媒体に格納される。
【００１７】
図２は、分析装置１０２が備える機能の一例を説明する図である。同図に示すように、分析装置１０２は、データ取得部２１０、前処理データ算出部２３１、前処理データ記憶部２１３、分析要求入力部２２０、モーメント算出部２３２、及び結果出力部２２４を備える。
【００１８】
データ取得部２１０は、複数の前記組み合わせを取得する。
【００１９】
例えば、データ取得部２１０は、分析装置１０２の管理者又は利用者等（以下、ユーザという）から、２次元座標のデータ及びその座標における分析値の組み合わせ（分析データ）の入力を受け付ける。
【００２０】
前処理データ算出部２３１は、データ取得部２１０が前記取得した組み合わせにおける前記分析値の累乗値、及び前記累乗値に係る累積和を算出する。
【００２１】
具体的には、前処理データ算出部２３１は、データ取得部２１０が前記取得した組み合わせ（分析データ）における前記分析値の累乗値として、所定の最大次数以下の各べき指数による累乗値を、データ取得部２１０が前記取得した複数の分析値のそれぞれについて算出する。
【００２２】
例えば、累乗値の次数が２の場合、各べき指数による累乗値とは、１乗の値、及び２乗の値である。
【００２３】
分析要求入力部２２０は、データ取得部２１０が前記取得した組み合わせのうちから少なくとも１つ以上の前記組み合わせの選択を受け付ける。
【００２４】
すなわち、分析要求入力部２２０は、データ取得部２１０で予め入力した分析データのうちヒートマップとして表示する分析データの入力を受け付ける。なお、ヒートマップとして表示するのは、データ取得部２１０で入力した全ての分析データであってもよい。
【００２５】
モーメント算出部２３２は、分析要求入力部２２０で前記選択された組み合わせにおける前記分析値である選択分析値の前記モーメントを、前記算出した累積和に基づき算出する。
【００２６】
なお、前記モーメントは、例えば、複数の前記組み合わせにおける前記分析値と前記複数の組み合わせにおける前記分析値の平均値との差分の、所定のべき指数による累乗値である。
【００２７】
すなわち、任意のデータをｘ、全データの平均値をｕ、モーメントの次数をｎとした場合、モーメントは、Σ[(x-u)^n]（ただしΣは全データの総和を表す）となる。なお、nが１の場合は、モーメントはuそのものと定義される。
【００２８】
モーメント算出部２３２は、累積和読出部２２２を備える。累積和読出部２２２は、後
述する管理テーブル２３０又は一時ＤＢ２３１から、累積和に関する各種のデータを読み出す。
【００２９】
また、モーメント算出部２３２は、前記選択分析値のモーメントを算出する際に、前記選択分析値のモーメントを前記選択分析値の累積和の線形和として予め構成する処理要求分解部２２１と、前記構成した線形和、及び前記算出した累積和に基づき前記選択分析値のモーメントを算出する累積和計算部２２３とを備える。
【００３０】
具体的には、前記処理要求分解部２２１は、前記選択分析値のモーメントを算出する際に、前記選択分析値のモーメントを、前記選択分析値の前記各べき指数による累乗値に係る累積和の線形和として予め構成する。
【００３１】
また、前記累積和計算部２２３は、処理要求分解部２２１が前記構成した線形和に前記算出した前記各べき指数による累積和を対応させることにより、前記選択分析値のモーメントを算出する。
【００３２】
例えば、分析要求入力部２２０は、選択分析値のモーメントの式Σ[(x-u)^2]を分解し
て、[1*Σ(x^2)] -[2*(uΣx)] +Σ(u^2) =[1*Σ(x^2)] -(1/N) *[(N*u)^2]とする。
【００３３】
結果出力部２２４は、分析要求入力部２２０で前記選択された組み合わせにおける前記２次元データと、前記算出した前記選択分析値のモーメントにより算出される統計値との間の関係を示す２次元図を出力する。
【００３４】
具体的には、前記結果出力部２２４は、前記統計値に応じた表示形式により前記選択分析値の特徴を示す前記２次元図であるヒートマップを表示する。
【００３５】
なお、統計値は、例えば、モーメントが２次のモーメントである場合は、標準偏差である。また、モーメントが３次のモーメントである場合は、歪度である。
【００３６】
分析装置１０２は、ヒートマップ及び累積和に関する情報を管理するデータベースである管理テーブル２３０、及び累積和の詳細の情報を保存するデータベースである一時ＤＢ２３１を備える。
【００３７】
ここで、管理テーブル２３０について説明する。
（管理テーブル２３０）
図３は、管理テーブル２３０の一例を示す図である。管理テーブル２３０は、各種の分析データ（例えば、日本における地価分布のデータ又は人口分布のデータ）のデータベース（以下、分析データベースという）の名称（識別情報）が格納されるデータ名６１２、データ名６１２が示す分析データベースにおける、分析値の累積和を識別する情報（以下、累積和ＩＤという）が格納される累積和ＩＤ６１３、及び、累積和ＩＤ６１３が示す累積和におけるべき指数（累積和ＩＤ６１３が示す累乗和がｎ乗累積和（分析値のｎ乗値に係る累積和）である場合におけるｎの値）が記録される指数６１１の各項目を有する、少なくとも１つ以上のレコードで構成されるデータベースである。
【００３８】
次に、一時ＤＢ２３１について説明する。
（一時ＤＢ２３１）
図４は、一時ＤＢ２３１の一例を示す図である。同図に示すように、一時ＤＢ２３１は、分析値の累積和の詳細を記憶したテーブルであり、管理テーブル２３０の累積和ＩＤ６１３に対応した累積和ＩＤが格納される累積和ＩＤ６２１、及び、累積和ＩＤ６２１が示す分析値の累積和のデータが格納される累積和データ６２２の各項目を有する、少なくと
も１つ以上のレコードで構成されるデータベースである。累積和データ６２２には、例えば、各分析値に係る累積和が配列データとして格納される。
【００３９】
次に、分析装置１０２が行う処理について説明する。
＜処理＞
図５は、分析装置１０２が行う、分析データからヒートマップ等の２次元図を作成する処理（以下、２次元データ分析処理という）の一例を説明するフローチャートである。なお、この処理は、例えば、分析装置１０２が起動した際に実行される。
【００４０】
まず、分析装置１０２のデータ取得部２１０は、所定のメニュー画面（不図示）を表示し（ｓ３００）、ユーザから、分析データの入力を行うか、もしくは入力した分析データに基づき分析データの分析を行う（ヒートマップのデータを作成する）かの選択を受け付ける（ｓ３０１）。
【００４１】
分析データの入力を行う旨の選択がされた場合は（ｓ３０１：データ入力）、データ取得部２１０は、分析データの入力を受け付け（ｓ３０４）、その後はｓ３０５の処理が行われる。他方、分析データの分析を行う旨の選択がされた場合は（ｓ３０１：データ分析）、後述するｓ３０２の処理が行われる。
【００４２】
（データ入力画面）
ｓ３０４で行われる処理の一例として、図６は、分析データの入力を受け付ける画面（以下、データ入力画面という）の一例を示す図である。同図に示すように、データ入力画面３００は、分析データベース及びその分析データを特定する情報（例えば、分析データベースの名称及び各分析データを格納したファイル（以下、分析データファイルという）の名称）が入力されるファイル指定欄３０１、ファイル指定欄３０１で指定された分析データベースを登録するアップロードボタン３０２、及び、分析データの分析に使用するモーメントの最大次数Ｎを指定する最大次数指定ボタン３０３の各欄を有する。入力されたこれらの情報は、管理テーブル２３０に記憶される。
【００４３】
ここで、図７は、分析データファイルの一例を示す図である。同図に示すように、分析データファイル４００は、例えばＣＳＶファイル（CSV: comma-separated values）であ
り、２次元データ及びその２次元データに対応する分析値の組み合わせを記憶している。同図の例では、コンマにより区切られた各列４０１が２次元データの第１要素、改行により区切られた各行４０２が２次元データの第２要素となり、列４０１及び行４０２における各値４０３が分析値となる。例えば、列４０１が２次元座標系（ｘ、ｙ）におけるｘ座標に対応し、行４０２が２次元座標系（ｘ、ｙ）におけるｙ座標に対応する。
【００４４】
次に、図５に示すように、前処理データ算出部２３１は、ｓ３０４で入力された分析値に係る累積和を算出する処理（以下、前処理データ算出処理という）を行う（ｓ３０５）。この処理の詳細は後述する。その後は、ｓ３００の処理が行われる。
【００４５】
なお、ｓ３０４及びｓ３０５の処理は、例えば、入力された分析データ（２次元データ）に修正、追加、削除等の必要があれば、その度に繰り返し行われる。
【００４６】
他方、ｓ３０２においてモーメント算出部２３２は、ヒートマップの作成に必要なデータ（例えば、モーメント）を、前処理データ算出処理により算出した累積和に基づき生成する処理（以下、ヒートマップデータ生成処理という）を行う。この処理の詳細は後述する。
【００４７】
そして、結果出力部２２４は、ヒートマップデータ生成処理で算出されたデータに基づ
きヒートマップを生成して所定の画面に表示する（ｓ３０３）。ユーザは、この画面を見ることで、分析データの分布又は特徴を把握する。その後は、ｓ３００の処理が行われる。
【００４８】
次に、前処理データ算出処理、及びヒートマップデータ生成処理の詳細を説明する。
＜前処理データ算出処理＞
図８は、前処理データ算出処理の一例を示すフローチャートである。同図に示すように、まず前処理データ算出部２３１は、処理の繰り返し回数を示す所定の変数ｎ（以下、カウンタｎという）の値を０で初期化し（ｓ４０１）、その旨を記憶する。
【００４９】
累乗計算部２１１は、カウンタｎの現在の値がモーメントの最大次数Ｎ以下であるか否かを判定し（ｓ４０２）、カウンタｎの現在の値がモーメントの最大次数Ｎ以下である場合には（ｓ４０２：ＹＥＳ）、カウンタｎの値を１増加させ（ｓ４０３）、その後ｓ４０４の処理を行う。他方、カウンタｎの現在の値がモーメントの最大次数Ｎを超えている場合には（ｓ４０２：ＮＯ）、本処理は終了する（ｓ４０８）。
【００５０】
ｓ４０４において累乗計算部２１１は、ｓ３０４で入力された各分析値に係る累乗値を求める。
【００５１】
例えば、入力された分析データが、１行３列の２次元データの分析値の集合である[5, 4, 1]の場合、累乗計算部２１１は、各分析値の１乗値[5, 4, 1]、各分析値の２乗値[25,
16, 1]、各分析値の３乗値[125, 64, 1]、・・・、及び、各分析値のＮ乗値[5^N, 4^N, 1^N ]をそれぞれ計算する。
【００５２】
そして、累積和計算部２１２は、ｓ４０３で算出した累乗値を用いて、各分析値のｎ乗累乗和を計算する（ｓ４０５）。
【００５３】
具体的には、例えば、累積和計算部２１２が、ｓ４０４において２次元の行列（H行W列）に対応するｎ乗累乗値x[i][j] (iは0以上(H-1)以下の整数、jは0以上(W-1)以下の整数)を算出した場合、累積和計算部２１２はこれを用いて、(H+1)行(W+1)列におけるｎ乗累乗和y[k][l] (kは0以上H以下の整数、lは0以上W以下の整数)を、以下のように算出する。
【００５４】
まず、累積和計算部２１２は、全てのk,lについて、y[0][l]=0, y[k][0]=0とする。
【００５５】
次に、累積和計算部２１２は、i=0と固定した場合において、
y[i+1][j+1] =x[i][j] +y[i+1][j]  ・・・（１）
の計算を、jを0とした場合、1とした場合,…、W-1とした場合について順に行うことによ
り、y[1][0], y[1][1],..., y[1][W-1]をそれぞれ算出する。
【００５６】
同様に、累積和計算部２１２は、
y[i+1][l] =y[i][l] +y[i+1][l]  ・・・（２）
の計算を、lを0とした場合、1とした場合,…、Wとした場合について順に行うことにより
、y[1][0], y[1][1],..., y[1][W]をそれぞれ算出する。
【００５７】
このような、式（１）及び（２）による配列yの計算を、i=1, 2, 3,…H-1とした場合について順に行う。これにより最終的に算出された値y[k][l]が、x[i][j]に対応するｎ乗累積和となる。
【００５８】
以上のｎ乗累積和の計算が終了すると、前処理データ記憶部２１３は、ｓ３０４で入力された各分析データ及びこれらの分析データの名称と、現在のべき指数（カウンタｎの値
）とを管理テーブル２３０に記憶する（ｓ４０６）。
【００５９】
具体的には、前処理データ記憶部２１３は、管理テーブル２３０の累積和ＩＤ６１３に所定の累積和ＩＤを付与した新たなレコードを生成し、生成したレコードの指数６１１にカウンタｎの現在の値を格納し、データ名６１２に分析データの（集合の）名称を格納する。
【００６０】
また、前処理データ記憶部２１３は、ｓ４０４で算出したｎ乗累積和の情報を一時ＤＢ２１３に記憶する（ｓ４０７）。
【００６１】
具体的には、前処理データ記憶部２１３は、一時ＤＢ２３１に前記の累積和ＩＤを累積和ＩＤ６２１に設定したレコードを生成し、生成したレコードの累積和データ６２２に、ｓ４０５で算出した各ｎ乗累積和の値（配列y）を格納する。その後は、ｓ４０２の処理
が行われる。
【００６２】
このようにして、累乗計算部２１１は、１以上最大モーメント次数Ｎ以下の各べき指数による、各分析値の累乗値を求める。
【００６３】
次に、ヒートマップデータ生成処理について説明する。
＜ヒートマップデータ生成処理＞
図９は、ヒートマップデータ生成処理の詳細を説明するフローチャートである。
【００６４】
まず、処理要求分解部２２１は、次述する分析画面を表示し、これにより、ユーザから、ヒートマップの作成に必要なデータに関する情報（以下、分析要求という）の入力を受け付ける（ｓ５００）。
【００６５】
＜分析画面＞
ここで、図１０は、ヒートマップデータ生成処理において表示される分析画面７００の一例を示す図である。同図に示すように、この分析画面７００は、分析を行う分析データが格納されている分析データベース（以下、選択データベースという）の入力を受け付けるデータベース選択欄７０５、選択データベースにおいてヒートマップを生成する２次元データの範囲（以下、選択範囲という）の入力を受け付ける選択範囲入力欄７０６、及び、分析の種類（具体的には、モーメントの種類。以下、分析種類という）の入力を受け付ける分析種類入力欄７０７の各欄を有する。
【００６６】
また、分析画面７００は、生成されたヒートマップを表示するヒートマップ表示欄７０２を備える。ヒートマップ表示欄７０２の詳細は後述する。
【００６７】
ユーザは、このような分析画面７００を用いて、分析要求を入力する。
【００６８】
次に、図９のｓ５０１に示すように、処理要求分解部２２１は、選択範囲におけるモーメントのそれぞれを、累乗和の線形和の形に構成する。具体的には、以下の処理が行われる。
【００６９】
まず、処理要求分解部２２１は、分析種類により特定されるモーメントの最大の次数（以下、最大次数という。本実施形態では２次。）を記憶する。
【００７０】
また、累積和読出部２２２は、選択範囲における全ての分析値（選択分析値）を管理テーブル２３０から取得する。
【００７１】
そして、累積和計算部２２３は、選択範囲における分析値（選択分析値）のモーメント（本実施形態では２次モーメント）を以下のようにして算出する。すなわち、選択範囲における分析値に係る２次モーメントは、
Σ(xi-u)^2 （ｘは選択範囲における各分析値ｉ、ｕは選択範囲における全分析値の平均
値）  ・・・（３）
という、２次の累乗和の和に係る式で表すことができる。
【００７２】
ここで、処理要求分解部２２１は、（３）式を、各べき指数の累乗和の線形和の形に構成する。例えば、選択範囲における分析値の個数がＮ個であれば、（３）式は、
Σ(x-u)^2 =1*Σ(x^2) -2*(uΣx) +Σ(u^2) =1*Σ(x^2) -1/N *(N*u)^2  ・・・（４）
と構成することが可能である。
【００７３】
すなわち、（４）式は、二乗和Σ(x^2)、及び１乗和N*u=Σxといった各べき指数による累乗和に所定の係数を乗算した各項の線形和として構成できる。
【００７４】
このように、分析値のモーメントを各累乗和の線形和として構成することで、後述するように、選択範囲がどのような範囲であってもその選択範囲における各分析値のモーメントの計算を高速かつ効率よく行うことができる。
【００７５】
続いて、累積和計算部２２３は、変数であるカウンタｎ（前処理データ算出処理で用いたｎとは異なる）、及びモーメントの計算結果を格納する変数ｒｅｔをそれぞれ０で初期化する（ｓ５０２）。そして、累積和計算部２２３は、以下に説明するｓ５０３からｓ５０７までの処理を、カウンタｎに基づき、繰り返し実行することにより、ｎ乗累積和を計算する。
【００７６】
すなわち、まずｓ５０３において累積和計算部２２３は、カウンタｎの現在の値が、最大次数以下であるか否かを確認する。現在のカウンタｎの値が最大次数以下である場合は、処理はｓ５０４に進み（ｓ５０３：ＹＥＳ）、カウンタｎの現在の値が最大次数を超える場合は（ｓ５０３：ＮＯ）、処理はｓ５０８に進む。
【００７７】
ｓ５０４において累積和計算部２２３は、カウンタｎの値を１増加させる。
【００７８】
そして、累積和読出部２２２は、選択データベースにおける分析値のｎ乗累積和を一時ＤＢ２３１から全て取得する（ｓ５０５）。
【００７９】
具体的には、例えば、累積和読出部２２２は、選択データベースがデータ名６１２に、カウンタｎの値が指数６１１にそれぞれ記録されている管理テーブル２３０のレコードの累積和ＩＤ６１３を取得し、取得した累積和ＩＤ６１３が示す累積和ＩＤと同じ累積和ＩＤが累積和ＩＤ６２１に格納されている一時ＤＢ２３１のレコードの累積和データ６２２の内容を全て取得する。
【００８０】
そして、累積和計算部２２３は、ｓ５０５で取得したｎ乗累積和に基づき、選択分析値の全ての和（具体的には、ｎ乗和）を計算する（ｓ５０６）。
【００８１】
ｎ乗和は、例えば以下のようにして算出する。選択範囲における左上の座標が(r1, c1)、選択範囲における右下の座標が(r2, c2)である場合におけるｎ乗和は、
y[r2+1][c2+1] -y[r2+1][c1] -y[r1][c2+1] +y[r1][c1]  ・・・（５）
と表される。
【００８２】
ここで、式（５）における各配列yはｓ５０５で取得したｎ乗累積和であるため、累積
和計算部２２３は、選択範囲におけるｎ乗和を、式（５）により簡単に求めることができる。
【００８３】
すなわち、所定の選択範囲におけるｎ乗和を求めるには従来、その選択範囲における分析値の個数に対応して、例えば前記の場合(r2-r1+1)*(c2-c1+1)回の計算が必要となって
いた。そのため、その計算量は分析値の個数（選択範囲）に比例することにより、計算時間が非常に多くかかっていた。
【００８４】
しかし、本実施形態では、累積和計算部２２３は、ｓ５０５で算出した累積和（ｎ乗累積和）を用いて式（５）に代入することで、配列yに係る３回の演算のみで選択範囲のｎ
乗和を計算することができる。例えば、選択範囲の左上の座標が(301, 501)、右下の座標が(400, 600)である場合、通常では10000回の計算が必要になるが、本実施形態のように
累積和を用いると３回で計算を終了することができる。すなわち、モーメントの計算回数を、データのサイズ（選択範囲の大きさ）によらずに一定とすることが可能となる。
【００８５】
次に、累積和計算部２２３は、ｓ５０６で算出したｎ乗和に対応する係数（式（４）参照）を乗算し、その乗算した結果（積）を現在の変数ｒｅｔの値に加える（ｓ５０７）。その後はｓ５０３の処理が再び行われる。
【００８６】
他方、ｓ５０３においてカウンタｎの現在の値が最大次数を超えている場合は（ｓ５０３：ＮＯ）、結果出力部２２４は、ｎ乗和の計算を終了し、選択範囲に係るヒートマップを表示するための統計値を生成する（ｓ５０８）。
【００８７】
すなわち、現在の変数ｒｅｔには、選択範囲における選択分析値の２次のモーメントの値（Σ[(x-u)^2]）が格納されている。そこで、例えば、結果出力部２２４は、この変数
ｒｅｔの値に基づき、選択範囲における選択分析値の標準偏差を計算する。
【００８８】
そして、結果出力部２２４は、前記で計算した標準偏差の値に対応づけられた、ヒートマップ上の表示方法（例えば、標準偏差の値の範囲によって予め設定された表示色）を特定し、これを、選択範囲における表示形式とする。
【００８９】
以上でヒートマップデータ生成処理は終了する（ｓ５０９）。なお、これまでに説明したヒートマップデータ生成処理は、ｓ５００において選択範囲が複数指定された場合は、その全ての選択範囲について行われる。
【００９０】
ここで、以上の処理により生成されるヒートマップの例について、前記の分析画面７００を用いて説明する。
【００９１】
＜ヒートマップ表示欄７０２におけるヒートマップの表示＞
図１０のヒートマップ表示欄７０２に示されているヒートマップは、流通系業者における着荷について、所定の地域の遅延時間を日付ごと及び時間帯ごとに区切った所定の区画７０１で表したヒートマップであり、その一方の軸７０３が日付、他方の軸７０４が時間帯を表している。
【００９２】
各区画７０１には、選択範囲に対応した表示、すなわちその選択範囲の統計値に応じた表示形式の表示（例えば、色分け）がなされている。
【００９３】
なお、図１０の例では、選択範囲入力欄７０６には、ヒートマップの左上端座標から右下端座標までの全範囲、すなわち全ての区画７０１の範囲が示されている。このように、選択範囲入力欄７０６による範囲の指定においては、分析要求入力部２２０は、選択範囲
入力欄７０６で選択された範囲を所定の（例えば、ユーザが予め設定した）解像度にて複数のマス（区画７０１）に分割し、この分割した区画７０１のそれぞれを選択範囲とするようにしてもよい。このようにすることで、ユーザは、ヒートマップを表示させたい部分を、所望の解像度で簡単に指定することができる。
【００９４】
ユーザは、ヒートマップ表示欄７０２を参照しつつ、従来のヒートマップ（平均的な遅延時間を地域別に表示したヒートマップ）と比較することで、遅延が大きくかつ標準偏差が小さい地域は恒常的な遅延が発生している地域であり、また、遅延が大きくかつ標準偏差も大きい地域は突発的な遅延が多い地域である、等の判断をすることが可能である。
【００９５】
すなわち、従来のヒートマップのみでは、地域別の平均的な遅延時間を把握することができるだけであり、各地域の遅延の具体的な原因を把握することはできなかった。しかし、本実施形態のヒートマップを用いることで、遅延の特徴を把握し、遅延の具体的な原因を分析することができる。例えば、ヒートマップ表示欄７０２により、ユーザは、恒常的な遅延が多く発生していることを判定できるので、その場合は、荷送システム自体に問題がある可能性があることが推定できる。また、ユーザは、ヒートマップ表示欄７０２により、突発的な遅延が多く発生していることも判定できるので、その場合は、着荷の遅延は基本的に交通事情等によるものに過ぎない可能性があることが推定できる。このようにして、ユーザは、ヒートマップ表示欄７０２を参照することで、適切な遅延対策を実行することができる。
【００９６】
＜分析システムの例＞
なお、本実施形態の分析装置１０２を用いれば、各ユーザからの要求に応じて適切なヒートマップを効率よく生成するようにした分析システムを構築することも可能である。
【００９７】
図１１は、本実施形態の分析装置１０２を応用した分析システム１０の一例を示す図である。同図に示すように、この分析システム１０は、本実施形態の分析装置１０２と、ＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）、インターネット、専用線
等の通信ネットワーク１０８を介して通信可能に接続された１台又は複数台のユーザ端末１０５（情報処理装置）とを含んで構成されている。分析装置１０２は、各ユーザ端末１０５から送信されてくる分析要求に応じて、その分析要求に応じたヒートマップを生成し、生成したヒートマップを各ユーザ端末１０５に送信する。各ユーザ端末１０５は、分析装置１０２から受信したヒートマップを表示する。なお、この際、各ユーザは、管理テーブル２３０を用いて使用するヒートマップを選択することも可能にできる。
【００９８】
以上に説明してきたように、本実施形態の分析装置１０２によれば、複数の、２次元データ及び分析値の組み合わせ（分析データ）における分析値の累乗値、及び累乗値に係る累積和を予め算出しておき（前処理）、取得した組み合わせのうちから少なくとも１つ以上の組み合わせの選択（選択範囲）を受け付け、選択された組み合わせにおける選択分析値のモーメントを、前処理で算出した累積和に基づき算出するので、前処理で予め算出した累積和に基づき、選択分析値のモーメントを高速かつ効率よく求めることができる。すなわち、モーメントは分析値の累乗値を用いて算出されるパラメータであるため、前処理にて分析値の累積和を予め求めておけば、この累積和を用いることで累乗値を高速に計算し、選択分析値の累乗値を簡単に求めることができる。これにより、任意の選択範囲の統計値（標準偏差や歪度）を、高速かつ効率よく求めることができる。
【００９９】
例えば、ヒートマップによる分析において、その分析範囲や解像度を様々に変化させながらヒートマップを何度も作成し表示する場合、従来であれば、解像度を変化させるごとにその解像度に応じたモーメントの計算を繰り返さなければならなかったので、非常に計算量が多くなり処理に時間がかかっていた。そのため、ヒートマップの表示に耐えうるサ
イズまでデータ量（分析値の数）そのものを削減するしかなかった。しかし、本実施形態の分析装置１０２は、前処理にて分析値の累積和を求めているので、これを用いることで、データ量が多い場合（例えば、ビッグデータ）であっても、選択範囲のモーメントを高速に算出し、ヒートマップを迅速に表示することができる。
【０１００】
また、本実施形態のモーメントには様々な種類のものがあるので、分析の目的に応じた適切な処理を迅速に行うことができる。例えば、２次モーメントであれば分析値の標準偏差（分散）、３次モーメントであれば歪度といったように様々な観点からの分析が可能であり、本実施形態の分析装置１０２によれば、このような多様な種類の分析の要求に対しても迅速に対応することができる。
【０１０１】
さらに、本実施形態の分析装置１０２は、選択分析値のモーメントを選択分析値の累積和の線形和として構成し、この線形和及び前記で算出した累積和に基づき選択分析値のモーメントを算出するので（式（４））、モーメントの計算を単純な計算にて高速で行うことができる。
【０１０２】
例えば、モーメントが、分析値と全分析値の平均値との差分の、所定のべき指数による累乗値で表される場合、本実施形態の分析装置１０２は、累乗値として、所定の最大次数以下の各べき指数による累乗値を算出し、選択分析値のモーメントを、選択分析値の各べき指数による累乗値に係る累積和に対応させることにより、選択分析値のモーメントを算出する。このようにモーメントの計算を単純化することで、分析データがいわゆるビッグデータのような大量なデータである場合であっても、高速にデータ分析を行うことができる。
【０１０３】
また、本実施形態の分析装置１０２は、２次元データと、選択分析値のモーメントにより算出される統計値との間の関係を示す２次元図（ヒートマップ）を出力するので、ユーザは、この出力結果に基づき、各分析値の分布又は特徴を容易に把握し、分析に役立てることができる。
【０１０４】
例えば、本実施形態の分析装置１０２は、統計値に応じた表示形式により選択分析値の特徴を示すヒートマップを表示するので、ユーザは、このような表示形式の違いに基づき、各分析値の分布又は特徴を容易に把握することができる。
【０１０５】
以上の実施形態の説明は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明はその趣旨を逸脱することなく、変更、改良され得ると共に本発明にはその等価物が含まれる。
【０１０６】
例えば、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。
【０１０７】
また、本実施形態では、２次元データ及び分析値により表される２次元図としてヒートマップの例を説明したが、２次元図はこれに限らず、分析値の分布又は特徴を２次元的に表す図であれば、他の種類の図に対しても適用可能である。
【０１０８】
また、本実施形態では、データの記憶形式としてデータベース（テーブル）を用いたが、他の記憶形式でもよい。
【符号の説明】
【０１０９】
１００  分析システム、１０２  分析装置、２１０  データ取得部、２３１  前処理データ算出部、２２０  分析要求入力部、２３２  モーメント算出部
【図１】
2019035995.tif 000003
【図２】
2019035995.tif 000004
【図３】
2019035995.tif 000005
【図４】
2019035995.tif 000006
【図５】
2019035995.tif 000007
【図６】
2019035995.tif 000008
【図７】
2019035995.tif 000009
【図８】
2019035995.tif 000010
【図９】
2019035995.tif 000011
【図１０】
2019035995.tif 000012
【図１１】
2019035995.tif 000013