(57)【要約】【課題】変数に応じて異なる変換式を適用して、変数を生成する。【解決手段】実施形態の変数タイプ判定手段は、前記各変数について、変数の型を表す変数タイプを判定する。実施形態の変数バリエーション生成手段は、前記判定された変数タイプと、予め変数タイプ別に変数のバリエーションの生成方法を規定した変数バリエーションルールとに基づき、前記各変数のバリエーションを生成する。実施形態の変数寄与率判定手段は、前記生成されたバリエーションにおける前記目的変数への寄与率を算出し、この寄与率に基づいて、当該バリエーションを採用するか削除するかを判定する。【選択図】図１
2014071492.tif 000002
【特許請求の範囲】
【請求項１】
目的変数と前記目的変数に対する説明変数の候補である各変数とを有する分析対象データから前記各変数のバリエーションを生成することにより、前記分析対象データの分析を支援するデータ分析支援装置であって、
前記各変数について、変数の型を表す変数タイプを判定する変数タイプ判定手段と、
前記判定された変数タイプと、予め変数タイプ別に変数のバリエーションの生成方法を規定した変数バリエーションルールとに基づいて、前記各変数のバリエーションを生成する変数バリエーション生成手段と、
前記生成されたバリエーションにおける前記目的変数への寄与率を算出し、この寄与率に基づいて、当該バリエーションを採用するか削除するかを判定する変数寄与率判定手段と、
を備えたことを特徴とするデータ分析支援装置。
【請求項２】
請求項１に記載のデータ分析支援装置において、
前記変数バリエーションルールを記憶する変数バリエーションルール記憶手段と、
入力されたルール変更指示に応じて、前記変数バリエーションルール記憶手段内の変数バリエーションルールを変更するルール変更手段と
を備えたことを特徴とするデータ分析支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、データ分析支援装置に関する。
【背景技術】
【０００２】
収集されたデータから知識を抽出する過程において、効率よく、精度の高い分析結果を得るために、分析アルゴリズムへの入力データセット（分析データセット）の生成を支援するデータ分析支援装置が用いられている。
【０００３】
この種のデータ分析支援装置については、予め用意した合成手段（変換式）を固定的に用い、分析対象のデータ中の説明変数のうち、１つ以上の説明変数を合成して新しい説明変数を生成する方式が知られている。この方式では、生成した説明変数セットのうち、分析の精度が高くなる説明変数を選ぶことを繰り返して、分析精度を上げていく。さらに、この方式では、複数設定された全ての合成手段を試して最良の説明変数の組合せを選び、分析精度を上げていく。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２０５０４号公報
【特許文献２】特開平１１−３２８２５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、以上のような方式は、合成手段を固定的に用いるため、どのような変数（群）にも同じ合成手段が適用される。そのため、この方式では、各変数に適した合成手段を動的に決定できない不都合がある。
【０００６】
本発明が解決しようとする課題は、変数に応じて異なる変換式を適用して、変数を生成し得るデータ分析支援装置を提供することである。
【課題を解決するための手段】
【０００７】
実施形態のデータ分析支援装置は、目的変数と前記目的変数に対する説明変数の候補である各変数とを有する分析対象データから前記各変数のバリエーションを生成することにより、前記分析対象データの分析を支援する。
【０００８】
前記データ分析支援装置は、変数タイプ判定手段、変数バリエーション生成手段及び変数寄与率判定手段を備えている。
【０００９】
前記変数タイプ判定手段は、前記各変数について、変数の型を表す変数タイプを判定する。
【００１０】
前記変数バリエーション生成手段は、前記判定された変数タイプと、予め変数タイプ別に変数のバリエーションの生成方法を規定した変数バリエーションルールとに基づいて、前記各変数のバリエーションを生成する。
【００１１】
前記変数寄与率判定手段は、前記生成されたバリエーションにおける前記目的変数への寄与率を算出し、この寄与率に基づいて、当該バリエーションを採用するか削除するかを判定する。
【図面の簡単な説明】
【００１２】
【図１】一実施形態に係るデータ分析支援装置の構成を示す模式図である。
【図２】同実施形態における事務量データの一例を示す模式図である。
【図３】同実施形態における為替データの一例を示す模式図である。
【図４】同実施形態における気象データの一例を示す模式図である。
【図５】同実施形態における地域コードを説明するための模式図である。
【図６】同実施形態における店舗データの一例を示す模式図である。
【図７】同実施形態における結合済みデータの一例を示す模式図である。
【図８】同実施形態における時間タイプの変数に対する変数バリエーションルールの一例を示す模式図である。
【図９】同実施形態における空間タイプの変数に対する変数バリエーションルールの一例を示す模式図である。
【図１０】同実施形態における動作を説明するためのフローチャートである。
【図１１】同実施形態におけるステップＳ２の詳細を説明するためのフローチャートである。
【図１２】同実施形態におけるステップＳ４の詳細を説明するためのフローチャートである。
【図１３】同実施形態におけるステップＳ６の詳細を説明するためのフローチャートである。
【図１４】同実施形態におけるステップＳ７の詳細を説明するためのフローチャートである。
【図１５】同実施形態における生成途中のバリエーションの一例を示す模式図である。
【図１６】同実施形態における生成途中のバリエーションの一例を示す模式図である。
【図１７】同実施形態における生成途中のバリエーションの一例を示す模式図である。
【図１８】同実施形態における生成途中のバリエーションの一例を示す模式図である。
【図１９】同実施形態における生成途中のバリエーションの一例を示す模式図である。
【図２０】同実施形態における生成途中のバリエーションの一例を示す模式図である。
【図２１】同実施形態における生成途中のバリエーションの一例を示す模式図である。
【図２２】同実施形態における生成途中のバリエーションの一例を示す模式図である。
【図２３】同実施形態における時間タイプのバリエーションの値の算出方法を示す模式図である。
【図２４】同実施形態における空間タイプのバリエーションの値の算出方法を示す模式図である。
【発明を実施するための形態】
【００１３】
以下、一実施形態について図面を用いて説明する。なお、以下のデータ分析支援装置は、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体からデータ分析支援装置のコンピュータにインストールされ、データ分析支援装置の各機能を実現させるためのプログラムが用いられる。
【００１４】
図１は一実施形態に係るデータ分析支援装置の構成を示す模式図である。データ分析支援装置は、目的変数と当該目的変数に対する説明変数の候補である各変数とを有する分析対象データから当該各変数のバリエーションを生成することにより、分析対象データの分析を支援する。
【００１５】
具体的には、データ分析支援装置は、変数タイプ判定部１１、前処理部１２、ルール変更部１３、変数バリエーション生成部１４、分析実行部１５、分析終了判定部１６及び変数寄与率判定部１７、収集データ保管部２１、変数バリエーションルール保管部２２、分析データセット保管部２３及び分析結果保管部２４を備えている。
【００１６】
ここで、変数タイプ判定部１１は、収集データ保管部２１内に予め収集及び保管された分析対象データを入力として取り込み、分析対象データ中の各変数の変数タイプを判定する。補足すると、変数タイプ判定部１１は、当該各変数について、当該変数の型（種類）を表す変数タイプを判定する。例えば、変数タイプ判定部１１は、当該各変数について、時間に応じて変化する時間タイプ及び空間上の位置に応じて変化する空間タイプのうち、いずれの変数タイプに属するかを判定する。また、変数タイプ判定部１１は、判定できなかった変数については、メッセージの出力などにより、ユーザに変数の判定を促すようにしてもよい。
【００１７】
前処理部１２は、変数タイプ判定部１１で判定された変数タイプに基づき、各変数に対して一般的な前処理を実行し、前処理された分析対象データを変数バリエーション生成部１４に送出する。前処理としては、例えば、欠損値処理、ノイズ処理及び正規化処理（単位変換、表記ゆれ統一など）が適宜使用可能となっている。但し、前処理部１２は、任意の付加的事項であり、省略してもよい。
【００１８】
ルール変更部１３は、変数のバリエーションを増やすために変数のタイプごとに定義された変数バリエーションルールを変更するためのインタフェースである。補足すると、ルール変更部１３は、入力されたルール変更指示に応じて、変数バリエーションルール保管部２２内の変数バリエーションルールを変更する。
【００１９】
変数バリエーション生成部１４は、変数バリエーションルールを各変数に当てはめ、変数のバリエーションを増やす（又は減らす）。補足すると、変数バリエーション生成部１４は、変数タイプ判定部１１により判定された変数タイプと、予め変数タイプ別に変数のバリエーションの生成方法を規定した変数バリエーションルールとに基づいて、各変数のバリエーションを生成する。生成されたバリエーション及び分析対象データは、変数バリエーション生成部１４により、分析データセット保管部２３に書込まれる。また、変数バリエーション生成部１４は、当該バリエーションを採用するか削除するかを示す判定結果を変数寄与率判定部１７から受けると、当該判定結果に基づいて、各変数のバリエーションを生成する。
【００２０】
分析実行部１５は、分析データセット保管部２３内のバリエーション及び分析対象データに関し、分析モデル／アルゴリズムを用いて分析を実行し、分析結果を分析結果保管部２４に書込む。なお、バリエーションと分析対象データとの組は、分析データとも呼ぶ。
【００２１】
分析終了判定部１６は、分析実行部１５が分析を繰り返し行う過程において、分析結果保管部２４内の前回の分析結果と今回の分析結果を比較することにより、分析を継続するか否かを判定し、前回よりも今回の分析結果の精度が良い場合に限り、分析を継続する旨の判定結果を得る。これ以外の場合（精度に変化がない場合又は今回の方が精度が悪い場合）には、分析終了判定部１６は、分析を終了する旨の判定結果を得る。なお、分析結果の精度としては、例えば、一般的に分析モデル／アルゴリズムの精度として算出される値を用いる。また、分析終了判定部１６は、分析を継続する旨の判定結果を得た場合、変数寄与率判定部１７を起動する。分析終了判定部１６は、分析を終了する旨の判定結果を得た場合、処理を終了する。
【００２２】
変数寄与率判定部１７は、分析データセット保管部２３内のバリエーション及び分析対象データに関し、各説明変数の目的変数に対する寄与率を計算し、寄与率の高い変数についてはバリエーションを増やす判定を行い、寄与率の低い変数についてはバリエーションを減らす判定を行う。補足すると、変数寄与率判定部１７は、変数バリエーション生成部１４により生成されたバリエーションにおける目的変数への寄与率を算出し、この寄与率に基づいて、当該バリエーションを採用するか削除するかを判定する。また、変数寄与率判定部１７は、この判定結果を変数バリエーション生成部１４に送出する。なお、変数寄与率としては、例えば、一般的に用いられる変数の寄与率や、目的変数に対する説明変数の相関などが適宜、使用可能となっている。また、当該バリエーションを採用する判定は、当該バリエーションを増加させる判定と読み替えてもよく、当該バリエーションを削除する判定は、当該バリエーションを減らす判定又は当該バリエーションを増やさない判定と読み替えてもよい。また、複数の変数については、同時に処理を実行してもよい。例えば、変数Ａのバリエーションを増やす判定と、変数Ｂのバリエーションを減らす判定とを同時に実行してもよい。
【００２３】
次に、各保管部２１〜２４に保管されるデータについて、銀行支店の事務量の多寡に関して分析する場合を例に挙げて説明する。具体的には、銀行の事務量データと、外部データである為替データ及び気象データとを関連付けた分析対象データから、事務量の多寡に影響を与える要因を抽出する場合を例に挙げて述べる。
【００２４】
銀行における各業務に関する事務作業の作業量を事務量と呼ぶ。事務量の多寡は、銀行支店への来店客数などに左右されるため、給与支給日、月末など、銀行業務に直接関連する事項の他に、天候や、為替の変動などさまざまな外部要因の影響を受ける。そこで、銀行の事務量データと、さまざまな外部データとを関連付けた分析が必要となる。
【００２５】
来店客数は、当日の株価よりも、前日の株価の影響をより大きく受けるかもしれない。あるいは、当日の気温よりも、前日との気温差、もしくは最近１週間の平均気温の影響をより大きく受けるかもしれない。そこで、要因のバリエーションを様々に変えた分析が求められる。このとき、要因のバリエーションが無限に存在するため、効率の良い分析手段が求められる。
【００２６】
始めに、収集データ保管部２１に保管されている各種データを説明する。
【００２７】
収集データ保管部２１は、変数タイプ判定部１１から読出可能な記憶デバイスであり、事務量データ、為替データ、気象データ、店舗データ及び結合済みデータを保管（記憶）する。なお、収集データ保管部２１は、変数タイプ判定部１１から読出可能な記憶デバイスであればよいので、必ずしもデータ分析支援装置が備える必要はなく、データ分析支援装置の外部に配置されてもよい。また、事務量データ、為替データ及び気象データは収集データと呼んでもよい。店舗データは収集データと呼んでも呼ばなくてもよい。結合済みデータは、分析対象データと呼んでもよい。
【００２８】
事務量データは、図２に示すように、日付を値にもつ日付項目と、支店番号を値にもつ支店番号項目と、業務名を値にもつ業務項目と、事務量を値にもつ事務量項目と、事務量の多寡を値にもつ事務量の多寡項目とを関連付けた表形式のデータである。なお、本明細書中、表形式のデータをデータテーブルとも呼び、データテーブル内の各項目を「変数名」又は「変数」とも呼び、各項目の値を「変数の値」又は「変数」とも呼ぶ。変数名の下線は、その変数名がデータテーブルの主キーであることを示す。主キーとは、１つ以上の変数の集合であり、変数の値によってそのデータテーブルの各行を一意に識別できるものである。例えば、事務量データであれば、「日付」、「支店番号」、「業務」の組合せで、各行を識別でき、これら３つの変数の組合せが、事務量データの主キーである。
【００２９】
ここでは事務量は、日付ごと、支店番号ごと、かつ業務ごとに記録されている。図２の１行目のデータは「２０１２年３月１日のＢ００１支店における預金業務の事務量が１５０である」ことを示している。通常、事務量の絶対量は、支店の規模や業務ごとの特性によって大きく異なる。そこで、このような不変の要素を除外し、流動的な外部要因の影響のみを分析するために、該当店舗の該当業務における平均的な事務量と比較した場合の、該当する日付の事務量の多寡を表す「事務量の多寡」という属性が付与されている。この「事務量の多寡」は、例えば、下記の方法（１）〜（３）で付与することができる。
【００３０】
（１）事務量データを、支店番号ごと、かつ業務ごとに分割する。特定の支店番号、特定の業務についての、日ごとの事務量データが得られる。
【００３１】
（２）分割した各事務量データを、事務量の降順にソートする。
【００３２】
（３）事務量の値が上位１／３に入るデータを「事務量の多寡」が“多い”、下位１／３のデータを“少ない”、残りの１／３のデータを“平均”とする。
【００３３】
但し、「事務量の多寡」は、この方法に限らず、例えば、支店や業務の違いを考慮せずに、事務量の絶対量の降順に並べた上で、上位１／３を“多い”とし、下位１／３を“少ない”とし、残りの１／３のデータを“平均”とする方法で付与しても良い。
【００３４】
為替データは、図３に示すように、日付を値にもつ日付項目と、ドルの円に対するレートを値にもつドルレート（円）項目と、ユーロの円に対するレートを値にもつユーロレート（円）項目とを関連付けた表形式のデータである。
【００３５】
気象データは、図４に示すように、地域ごと、かつ日付ごとに、気温、降水量、天気が記録されている。すなわち、気象データは、地域の位置を示す地域コードを値にもつ地域項目と、日付を値にもつ日付項目と、気温を値にもつ気温（℃）項目と、降水量を値にもつ降水量（ｍｍ）項目と、天気を値にもつ天気項目とを関連付けた表形式のデータである。地域コードは、図５に示すように、予め格子状に区分された四角形領域の位置を示すコードであり、東西方向に沿った位置を示す数字と、南北方向に沿った位置を示す数字との組により、当該四角形領域の位置を特定する。
【００３６】
店舗データは、事務量データと気象データとを対応付けるためのデータであって、図６に示すように、支店番号を値にもつ支店番号項目と、地域コードを値にもつ地域項目とを関連付けた表形式のデータである。
【００３７】
結合済みデータは、為替データ及び気象データを事務量データに結合したデータであって、図７に示すように、日付を値にもつ日付項目と、支店番号を値にもつ支店番号項目と、業務名を値にもつ業務項目と、事務量を値にもつ事務量項目と、事務量の多寡を値にもつ事務量の多寡項目と、気温を値にもつ気温（℃）項目と、降水量を値にもつ降水量（ｍｍ）項目と、ドルの円に対するレートを値にもつドルレート（円）項目と、ユーロの円に対するレートを値にもつユーロレート（円）項目とを関連付けた表形式のデータである。
【００３８】
結合済みデータは、収集データ保管部２１内の個々のデータを、主キーによって機械的に結合しても良いし、事前に人手で結合させた上で収集データ保管部２１に書込んでもよい。
【００３９】
続いて、変数バリエーションルール保管部２２に保管される、変数バリエーションルールについて説明する。変数バリエーションルールは、時間タイプ、空間タイプなど、変数のタイプ別に、変数のバリエーションの増やし方を定義したものである。
【００４０】
ここで、「タイプ」とは、以下のように、何によって値が変化する変数かという変数の型を指す。変数（例、気温）の型は、当該変数（例、気温）を特定する主キーの各変数（例、日付、地域コード）を個別に包括する各カテゴリ（例、時間、空間）を表している。主キーの変数と、主キーの各変数の各カテゴリ（型）とは、例えば「日付項目」と「時間」型、又は「地域コードの値のリスト」と「空間」型というように、予め関連付けて変数タイプ判定部１１に定義されている。なお、「型」は「種類」又は「性質」のように、適宜、他の名称に読み替えてもよい。同様に、「カテゴリ」は「包括概念」又は「上位概念」のように、適宜、他の名称に読み替えてもよい。
【００４１】
時間タイプ：時間によって値が変化する変数を時間タイプの変数という。例えば、「ドルレート」という変数は、「ある日のドルレートの終値」に対して、「１日前のドルレートの終値」、「２日前のドルレートの終値」という異なる値が存在する。また、「気温」という変数は、「ある地点での、ある時刻の気温」に対し、「同地点での、１時間前の気温」という異なる値が存在する。
【００４２】
空間タイプ：空間上の位置によって値が異なる変数を空間タイプの変数という。例えば、「ある地点での、ある時刻の気温」に対して、「隣の地点での、同時刻の気温」という異なる値が存在する。
【００４３】
この場合、「気温」という変数は、時間タイプ及び空間タイプである。このように、ある変数が複数のタイプを持つ場合も存在する。
【００４４】
なお、変数タイプは、時間タイプ及び空間タイプに限らず、何かの数量の種類又は何らかのカテゴリの種類であればよい。
【００４５】
各タイプに対し、変数バリエーションルールとして「ルール形式」、「初期値」、「更新規則」が存在する。例えば、時間タイプの変数には、図８に示すように、変数バリエーションルールが定義されている。
【００４６】
すなわち、時間タイプの変数に対する変数バリエーションルールは、自然数を値にもつルール番号項目と、「ｎ日前との差」又は「ｎ年前との差」を値にもつルール形式項目と、ｎ＝１を値にもつ初期値項目と、ｎ’＝ｎ＋１を値にもつ更新規則項目とを関連付けた表形式のデータとして定義されている。なお、ルール番号項目は、任意の付加的事項であり、省略してもよい。また、バリエーションには、変数の種類（例、日のみ、日と月、日と月と年、…）と、ある種の変数の変化（例、１日、２日、３日、…）という２通りの意味がある。ここで、同じルール番号のルール形式は、バリエーション生成値ｎを変えることである種の変数を変化させたバリエーションに対応する。また、異なるルール番号のルール形式は、変数の種類を変えたバリエーションに対応する。また、時間タイプ変数の例としては、差（例、前日差／月差／年差、２日前差／２月前差／２年前差、…）に限らず、比率（例、前日比／前月同日比、２日前比／２月前同日比、…）、平均、最大最小差などが適宜、使用可能となっている。また、更新規則項目は、この例ではｎ’＝ｎ＋１として一方向に増やしているが、これに限らず、ｎ’＝ｎ−１として一方向に減らしてもよい（この場合、例えば、初期値ｎを３１（日）、１２（月）又は２０１２（年）などのように、変数の最大値に設定すればよい）。
【００４７】
一方、空間タイプの変数に対する変数バリエーションルールは、図９に示すように、自然数を値にもつルール番号項目と、「（ｘ−ｎ，ｙ）の地点との差」又は「（ｘ，ｙ−ｎ）の地点との差」を値にもつルール形式項目と、ｎ＝１を値にもつ初期値項目と、ｎ’＝ｎ＋１を値にもつ更新規則項目とを関連付けた表形式のデータとして定義されている。なお、ルール番号項目は、任意の付加的事項であり、省略してもよい。また、空間タイプ変数は、前述した地域コードに限らず、住所表現、ＧＰＳ表現又は移動距離などが適宜、使用可能となっている。住所表現としては、例えば、０１：北海道、０２：青森、…、１５：東京都、…、１５００１：中央区、１５００２：港区、…等の空間の親子関係を定義した値を用いてもよい。この場合、バリエーションの増やし方は、例えば、県のみ→県と市町村→県と市町村と番地のように、親から子に向かう方向に増やしてもよい。ＧＰＳ表現（緯度経度）としては、例えば、東経：６０度、北緯：２２度、海抜：０ｍ、…等が適宜使用可能となっている。バリエーションの増やし方は、例えば、ある起点からの距離に換算する数式を予め定義した場合に、起点を変える（増やす）又は起点からの距離を変える（増やす）というように、増やしてもよい。起点からの距離を変える例としては、起点Ａの半径３００ｍ以内（又は外）、５００ｍ以内（又は外）、…や、起点Ｂの半径３００ｍ以内（又は外）、５００ｍ以内（又は外）、…、などのようにすればよい。また、移動距離としては、例えばＧＰＳ表現と同様に定義すればよい。
【００４８】
次に、分析データセット保管部２３に保管される、分析データについて説明する。分析データは、変数バリエーション生成部により生成されたバリエーションと、分析対象データとを含んでいる。すなわち、分析データは、バリエーション及び分析対象データであるが、バリエーションと分析対象データとの組ともいえるので、分析データセットとも呼ばれる。
【００４９】
最後に、分析結果保管部２４に保管される、分析結果について説明する。分析結果保管部２４の分析結果は、分析実行部１５による分析毎に書込まれ、前回の分析結果と今回の分析結果とが分析終了判定部１６により読み出される。
【００５０】
次に、以上のように構成されたデータ分析支援装置の動作を説明する。始めに、全体の処理手順を図１０のフローチャートを用いて述べる。
【００５１】
ルール変更部１３は、利用者の操作により、入力されたルール変更指示に応じて、変数バリエーションルール保管部２２内の変数バリエーションルールを変更する（ステップＳ１）。なお、変数バリエーションの変更は、必須ではなく、省略してもよい。
【００５２】
変数タイプ判定部１１は、収集データ保管部２１内の分析対象データ中の各変数について、変数の型を表す変数タイプを判定する（ステップＳ２）。
【００５３】
前処理部１２は、ステップＳ２で判定された変数タイプに基づき、各変数に対して欠損値処理など、通常の分析に必要な前処理を実行する（ステップＳ３）。 
変数バリエーション生成部１４は、ステップＳ３で前処理を実行した分析対象データ中の各変数に対して、変数のタイプに適合する変数バリエーションルールを変数バリエーションルール保管部２２から選択し、当該変数バリエーションルールを適用する。すなわち、変数バリエーション生成部１４は、変数タイプと変数バリエーションルールとに基づいて、各変数のバリエーションを生成する。また、変数バリエーション生成部１４は、生成により増えたバリエーション及び分析対象データ（以下、分析データともいう）を分析データセット保管部２３に書込む（ステップＳ４）。
【００５４】
分析実行部１５は、分析データセット保管部２３内の分析データについて、分析モデル／アルゴリズムを用いて分析を実行し、分析結果を分析結果保管部２４に書込む（ステップＳ５）。
【００５５】
分析終了判定部１６は、分析結果保管部２４内の今回の分析結果の精度を前回の分析結果の精度と比較し、精度が改善されていなければ、分析終了と判定し、処理を終了する。精度が改善されていれば、分析継続と判定し、ステップＳ７に進む（ステップＳ６）。
【００５６】
変数寄与率判定部１７は、生成されたバリエーションにおける目的変数への寄与率を算出し、この寄与率に基づいて、当該バリエーションを採用するか削除するかを判定する。例えば、変数寄与率判定部１７は、寄与率の高い変数についてはバリエーションを採用する旨を判定し、バリエーションを増やすようにする。一方、寄与率が低い変数についてはバリエーションを削除する旨を判定し、バリエーションを増やさない又は減らすようにして、ステップＳ４以降を再度実行する（ステップＳ７）。
【００５７】
以上により、全体動作が完了する。
【００５８】
次に、ステップＳ２の変数タイプ判定動作の詳細について図１１を用いて説明する。変数タイプ判定部１１は、収集データ保管部２１内の分析対象データ中の各変数について、変数の型を表す変数タイプを判定する。本実施形態では、変数タイプとして、時間タイプ及び空間タイプがある。ステップＳ２では、機械的に、あるいは人手により、変数タイプを判定する。
【００５９】
変数タイプ判定部１１は、変数タイプが未判定である変数をひとつ選択する（ステップＳ２−１）。選択した変数を変数ａとする。
【００６０】
変数タイプ判定部１１は、変数ａの主キーから変数をひとつ選択する（ステップＳ２−２）。選択した変数を変数ｋとする。
【００６１】
変数タイプ判定部１１は、変数ｋの変数名から、変数ｋの型の判定を試みる（ステップＳ２−３）。判定できれば、ステップＳ２−７に進む。判定できなければ、ステップＳ２−４に進む。
【００６２】
変数タイプ判定部１１は、変数ｋの「変数値の値のリスト」を取得する（ステップＳ２−４）。
【００６３】
変数タイプ判定部１１は、変数ｋの「変数値の値のリスト」から、変数ａの変数タイプの判定を試みる（ステップＳ２−５）。判定できれば、ステップＳ２−７に進む。判定できなければ、ステップＳ２−６に進む。
【００６４】
変数タイプ判定部１１は、人手により、変数ｋの型を判定する（ステップＳ２−６）。
【００６５】
変数タイプ判定部１１は、変数ｋの型を参照し、変数ａの変数タイプを追加する（ステップＳ２−７）。
【００６６】
変数タイプ判定部１１は、変数ａの全ての主キー変数について処理していれば、ステップＳ２−９に進む。未処理の主キー変数があれば、ステップＳ２−２に戻る（ステップＳ２−８）。
【００６７】
変数タイプ判定部１１は、収集データ保管部２１のデータ中の全ての変数について変数タイプを判定していれば、処理を終了する。変数タイプを未判定の変数があれば、ステップＳ２−１に戻る（ステップＳ２−９）。
【００６８】
ただし、変数タイプ判定方法は上記の方法に限らず、例えば、上記ステップＳ２−６のように人手で変数ｋの型を判定するのが難しい場合には、ステップＳ２−３、Ｓ２−５での自動判定のみとし、変数ｋの型を自動判定できた場合のみ変数ａに変数タイプを割り当てる方法としても良い。
【００６９】
次に、ステップＳ４の変数バリエーションの生成動作の詳細について図１２を用いて説明する。なお、変数バリエーション生成部１４は、例えば、生成されるバリエーションの状態を表す状態データを用いてステップＳ４を実行する。ここで、状態データは、例えば、後述する図１５に示すように、分析対象データ内の主キーで特定される変数の項目を値にもつ変数項目と、「時間」又は「空間」を値にもつ変数タイプ項目と、「ｎ日前との差」、「ｎ年前との差」、「（ｘ−ｎ，ｙ）の地点との差」又は「（ｘ，ｙ−ｎ）の地点との差」を値にもつルール形式項目と、「増加」、「完了」又は「削除」といったバリエーション更新状態を値にもつ更新状態項目と、自然数のバリエーション生成値をもつ値項目と、ルール形式項目の値のｎにバリエーション生成値を代入してなる値（バリエーション）をもつ「生成されるバリエーション」項目とを関連付けた表形式のデータである。
【００７０】
変数バリエーション生成部１４は、前処理部１２で処理されたデータの各変数に対して、変数バリエーションルールを適用する。
【００７１】
変数バリエーション生成部１４は、前処理部１２で処理されたデータから変数を選択する（ステップＳ４−１）。選択した変数を変数ａとする。
【００７２】
変数バリエーション生成部１４は、変数ａに変数バリエーションルールを適用することが初めてか否かを判定する。初めての場合は、ステップＳ４−３に進む。初めてでない場合は、ステップＳ４−４に進む（ステップＳ４−２）。
【００７３】
変数バリエーション生成部１４は、初期化として、変数ａの全ての変数タイプに対する変数バリエーションルールの、全てのルール形式に関して、バリエーション更新状態を“増加”とし、バリエーション生成値ｎを初期値とする。全てのルール形式を、変数ａに適用する。その後、ステップＳ４−１２に進む（ステップＳ４−３）。
【００７４】
変数バリエーション生成部１４は、変数ａの変数タイプの１つを選択する（ステップＳ４−４）。選択したタイプをタイプｔとする。
【００７５】
変数バリエーション生成部１４は、変数バリエーションルール保管部２２から、タイプｔの変数バリエーションルールを取得する（ステップＳ４−５）。
【００７６】
変数バリエーション生成部１４は、変数ａの変数タイプｔの変数バリエーションルールから、１つのルール形式を選択する（ステップＳ４−６）。選択したルール形式を、ルール形式ｒとする。
【００７７】
変数バリエーション生成部１４は、ルール形式ｒのバリエーション更新状態ｓを参照する。“増加”である場合は、ステップＳ４−８に進む。“削除”である場合は、ステップＳ４−９に進む。“完了”である場合は、ステップＳ４−１０に進む（ステップＳ４−７）。
【００７８】
変数バリエーション生成部１４は、変数ａの変数タイプｔのルール形式ｒに関して、バリエーション生成値を更新し、ルールを適用する。その後、ステップＳ４−１０に進む（ステップＳ４−８）。
【００７９】
変数バリエーション生成部１４は、変数ａの変数タイプｔのルール形式ｒに関して、現在のバリエーション生成値により生成されたバリエーションを削除する。また、バリエーション更新状態を“完了”とする（ステップＳ４−９）。
【００８０】
変数バリエーション生成部１４は、変数ａの変数タイプｔの全てのルール形式について処理をしていれば、ステップＳ４−１１に進む。未処理のルール形式があれば、ステップＳ４−６に戻る（ステップＳ４−１０）。
【００８１】
変数バリエーション生成部１４は、変数ａの全ての変数タイプについて処理をしていれば、ステップＳ４−１２に進む。未処理の変数タイプがあれば、ステップＳ４−４に戻る（ステップＳ４−１１）。
【００８２】
変数バリエーション生成部１４は、全ての変数について処理をしていれば、処理を終了する。未処理の変数があれば、ステップＳ４−１に戻る（ステップＳ４−１２）。
【００８３】
次に、ステップＳ６の分析終了判定動作の詳細について図１３を用いて説明する。
【００８４】
分析終了判定部１６は、今回の分析結果の精度を算出する（ステップＳ６−１）。
【００８５】
分析終了判定部１６は、今回の精度が、前回の分析結果の精度よりも高ければ、ステップＳ６−３に進む。高くなければ、ステップＳ６−４に進む（ステップＳ６−２）。
【００８６】
分析終了判定部１６は、分析処理を継続する判定をし、処理を終了する（ステップＳ６−３）。
【００８７】
分析終了判定部１６は、分析処理を終了する判定をし、処理を終了する（ステップＳ６−４）。
【００８８】
最後に、ステップＳ７の変数寄与率判定動作の詳細について図１４を用いて説明する。
【００８９】
変数寄与率判定部１７は、各変数バリエーションの寄与率を算出し、次の分析繰り返しでのバリエーションの増やし方を決定する。
【００９０】
変数寄与率判定部１７は、変数バリエーションの１つを選択する（ステップＳ７−１）。選択した変数バリエーションをバリエーションａとする。
【００９１】
変数寄与率判定部１７は、バリエーションａの寄与率を算出する（ステップＳ７−２）。
【００９２】
変数寄与率判定部１７は、バリエーションａの寄与率が高いかどうか判定する。寄与率が低ければ、ステップＳ７−４に進む。寄与率が高ければ、ステップＳ７−５に進む（ステップＳ７−３）。
【００９３】
変数寄与率判定部１７は、バリエーションａのバリエーション更新状態を“削除”に変更する（ステップＳ７−４）。
【００９４】
変数寄与率判定部１７は、全てのバリエーションについて処理していれば、処理を終了する。未処理のバリエーションがあれば、ステップＳ７−１に戻る（ステップＳ７−５）。
【００９５】
各バリエーションの寄与率の算出には、相関係数や決定係数のように一般的に用いられる寄与率を用いることができる。また、その他の指標を用いてもよい。
【００９６】
寄与率が高いかどうかを判定するには、予め固定の閾値を設定しておいても良いし、同じ変数や他の変数の他のバリエーションの寄与率を元に相対的に判定しても良い。
【００９７】
また、上記の例では、あるバリエーションの寄与率が低い場合に、ステップＳ７−３、Ｓ７−４において、バリエーション更新状態をすぐに“削除”から“完了”に変更しているが、予めバリエーション生成値に対する閾値を設定しておいて、バリエーション生成値がその閾値に達するまではバリエーションを増やすことを試みるような方法としても良い。
【００９８】
以下では、実際にバリエーションが生成される過程を、ひとつの変数に注目して説明する。ここでは、図７中の変数「気温」を例に説明する。
【００９９】
変数タイプ判定部１１は、図１１に示したように、変数タイプが未判定である「気温」を選択する（ステップＳ２−１）。
【０１００】
変数タイプ判定部１１は、「気温」の主キー（地域、日付）から変数「地域」を選択する（ステップＳ２−２）。
【０１０１】
ここでは、「地域」という変数名からは、「地域」の型の判定ができないものとする。変数タイプ判定部１１は、ステップＳ２−４に進む（ステップＳ２−３）。
【０１０２】
変数タイプ判定部１１は、「地域」の変数値の値のリスト（（１，１）、（１，２）、（１，３）、…）を取得する（ステップＳ２−４）。
【０１０３】
ここでは、「地域」の変数値の値のリストから、「地域」の型が「空間型」であると判定できるものとする。変数タイプ判定部１１は、ステップＳ２−７に進む（ステップＳ２−５）。
【０１０４】
変数タイプ判定部１１は、「気温」の変数タイプに「空間タイプ」を追加する（ステップＳ２−７）。
【０１０５】
変数タイプ判定部１１は、「気温」の主キー変数のうち、未処理の主キー変数があるため、ステップＳ２−２に戻る（ステップＳ２−８）。
【０１０６】
変数タイプ判定部１１は、「気温」の主キー（地域、日付）から変数「日付」を選択する（ステップＳ２−２）。
【０１０７】
ここでは、「日付」という変数名から、「日付」の型が「時間型」と判定できるものとする。変数タイプ判定部１１は、ステップＳ２−７に進む（ステップＳ２−３）。
【０１０８】
変数タイプ判定部１１は、「気温」の変数タイプに「時間タイプ」を追加する（ステップＳ２−７）。
【０１０９】
変数タイプ判定部１１は、「気温」の全ての主キー変数について処理しているため、ステップＳ２−９に進む。
【０１１０】
変数タイプ判定部１１は、収集データ保管部２１のデータ中の全ての変数について処理し、処理を終了する（ステップＳ２−９）。
【０１１１】
なお、全体の処理手順（図１０）のステップＳ４からステップＳ７までは繰り返し実行される。
【０１１２】
次に、ステップＳ４からステップＳ７までの繰り返しの１周目における、変数バリエーション生成部１４におけるフローチャート（図１２）の動作について述べる。
【０１１３】
変数バリエーション生成部１４は、前処理部１２で処理されたデータから「気温」を選択する（ステップＳ４−１）。
【０１１４】
変数バリエーション生成部１４は、「気温」に変数バリエーションルールを適用するのは初めてであるため、ステップＳ４−３に進む（ステップＳ４−２）。
【０１１５】
変数バリエーション生成部１４は、「気温」の全ての変数タイプ（時間タイプ、空間タイプ）に対する変数バリエーションルールの、全てのルール形式に関して、バリエーション更新状態を“増加”とし、バリエーション生成値を初期値とする。全てのルール形式を「気温」に適用する。その後、ステップＳ４−１２に進む（ステップＳ４−３）。「気温」に関する「生成されるバリエーション」項目の値は、図１５の右列に示すようになる。
【０１１６】
変数バリエーション生成部１４は、全ての変数について処理をして、処理を終了する（ステップＳ４−１２）。
【０１１７】
次に、ステップＳ４からステップＳ７までの繰り返しの１周目における、分析終了判定部１６におけるフローチャート（図１３）の動作について述べる。
【０１１８】
分析終了判定部１６は、今回の分析結果の精度を算出する（ステップＳ６−１）。
【０１１９】
分析終了判定部１６は、前回の分析結果の精度が存在せず、今回の分析結果の精度と比較できないため、ステップＳ６−３に進む（ステップＳ６−２）。
【０１２０】
分析終了判定部１６は、分析処理を継続する判定をし、処理を終了する（ステップＳ６−３）。
【０１２１】
次に、ステップＳ４からステップＳ７までの繰り返しの１周目における、変数寄与率判定部１７におけるフローチャート（図１４）の動作について述べる。今回は、目的変数との相関により、寄与率を算出するものとする。固定の閾値との比較により、寄与率の高低を判定するものとする。
【０１２２】
変数寄与率判定部１７は、変数バリエーションの１つ「１日前との気温差」を選択する（ステップＳ７−１）。
【０１２３】
変数寄与率判定部１７は、「１日前との気温差」の寄与率を算出する（ステップＳ７−２）。
【０１２４】
ここでは、「１日前との気温差」の寄与率が閾値より高いものとする。変数寄与率判定部１７は、ステップＳ７−５に進む（ステップＳ７−３）。
【０１２５】
変数寄与率判定部１７は、未処理のバリエーションがあるため、ステップＳ７−１に戻る（ステップＳ７−５）。
【０１２６】
変数寄与率判定部１７は、変数バリエーションの１つ「１年前との気温差」を選択する（ステップＳ７−１）。
【０１２７】
変数寄与率判定部１７は、「１年前との気温差」の寄与率を算出する（ステップＳ７−２）。
【０１２８】
ここでは、「１年前との気温差」の寄与率が閾値より低いものとする。変数寄与率判定部１７は、ステップＳ７−４に進む（ステップＳ７−３）。
【０１２９】
変数寄与率判定部１７は、「１年前との気温差」のバリエーション更新状態を“削除”に変更する（ステップＳ７−４）。
【０１３０】
変数寄与率判定部１７は、未処理のバリエーションがあるため、ステップＳ７−１に戻る（ステップＳ７−５）。
【０１３１】
変数寄与率判定部１７は、変数バリエーションの１つ「（ｘ−１，ｙ）の地点との気温差」を選択する（ステップＳ７−１）。
【０１３２】
変数寄与率判定部１７は、「（ｘ−１，ｙ）の地点との気温差」の寄与率を算出する（ステップＳ７−２）。
【０１３３】
ここでは、「（ｘ−１，ｙ）の地点との気温差」の寄与率が閾値より高いものとする。変数寄与率判定部１７は、ステップＳ７−５に進む（ステップＳ７−３）。
【０１３４】
変数寄与率判定部１７は、未処理のバリエーションがあるため、ステップＳ７−１に戻る（ステップＳ７−５）。
【０１３５】
変数寄与率判定部１７は、変数バリエーションの１つを選択する（ステップＳ７−１）。
【０１３６】
変数寄与率判定部１７は、「（ｘ，ｙ−１）の地点との気温差」の寄与率を算出する（ステップＳ７−２）。
【０１３７】
ここでは、「（ｘ，ｙ−１）の地点との気温差」の寄与率が閾値より低いものとする。変数寄与率判定部１７は、ステップＳ７−４に進む（ステップＳ７−３）。
【０１３８】
変数寄与率判定部１７は、「（ｘ，ｙ−１）の地点との気温差」のバリエーション更新状態を“削除”に変更する（ステップＳ７−４）。
【０１３９】
変数寄与率判定部１７は、「気温」に関しては全てのバリエーションを処理し終えた。他の変数についても、全てのバリエーションについて処理し、処理を終了する（ステップＳ７−５）。この時点での「気温」に関する「生成されるバリエーション」項目の値は、図１６の右列に示すようになる。
【０１４０】
次に、ステップＳ４からステップＳ７までの繰り返しの２周目における、変数バリエーション生成部１４におけるフローチャート（図１２）の動作について述べる。
【０１４１】
変数バリエーション生成部１４は、「気温」を選択する（ステップＳ４−１）。
【０１４２】
変数バリエーション生成部１４は、「気温」に変数バリエーションルールを適用するのは初めてではないため、ステップＳ４−４に進む（ステップＳ４−２）。
【０１４３】
変数バリエーション生成部１４は、「気温」の変数タイプの１つ「時間タイプ」を選択する（ステップＳ４−４）。
【０１４４】
変数バリエーション生成部１４は、変数バリエーションルール保管部２２から、時間タイプの変数バリエーションルールを取得する（ステップＳ４−５）。
【０１４５】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」の変数バリエーションルールから、１つのルール形式「ｎ日前との差」を選択する（ステップＳ４−６）。
【０１４６】
変数バリエーション生成部１４は、ルール形式「ｎ日前との差」のバリエーション更新状態が“増加”であるため、ステップＳ４−８に進む（ステップＳ４−７）。
【０１４７】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」のルール形式「ｎ日前との差」に関して、バリエーション生成値を更新し、ルールを適用する。その後、ステップＳ４−１０に進む（ステップＳ４−８）。この時点での「気温」に関する「生成されるバリエーション」項目の値は、図１７の右列に示すようになる。
【０１４８】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」のルール形式のうち、未処理のルール形式があるため、ステップＳ４−６に戻る（ステップＳ４−１０）。
【０１４９】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」の変数バリエーションルールから、１つのルール形式「ｎ年前との差」を選択する（ステップＳ４−６）。
【０１５０】
変数バリエーション生成部１４は、ルール形式「ｎ年前との差」のバリエーション更新状態が“削除”であるため、ステップＳ４−９に進む（ステップＳ４−７）。
【０１５１】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」のルール形式「ｎ年前との差」に関して、現在のバリエーション生成値「１」により生成されたバリエーション「１年前との気温差」を削除する。また、バリエーション更新状態を“完了”とする（ステップＳ４−９）。この時点での「気温」に関する「生成されるバリエーション」項目の値は、図１８の右列に示すようになる。
【０１５２】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」の全てのルール形式について処理をしたため、ステップＳ４−１１に進む（ステップＳ４−１０）。
【０１５３】
変数バリエーション生成部１４は、「気温」に関して、未処理の変数タイプがあるため、ステップＳ４−４に戻る（ステップＳ４−１１）。
【０１５４】
変数バリエーション生成部１４は、「気温」の変数タイプの１つ「空間タイプ」を選択する（ステップＳ４−４）。
【０１５５】
変数バリエーション生成部１４は、変数バリエーションルール保管部２２から、空間タイプの変数バリエーションルールを取得する（ステップＳ４−５）。
【０１５６】
変数バリエーション生成部１４は、「気温」の変数タイプ「空間タイプ」の変数バリエーションルールから、１つのルール形式「（ｘ−ｎ，ｙ）の地点との差」を選択する（ステップＳ４−６）。
【０１５７】
変数バリエーション生成部１４は、ルール形式「（ｘ−ｎ，ｙ）の地点との差」のバリエーション更新状態が“増加”であるため、ステップＳ４−８に進む（ステップＳ４−７）。
【０１５８】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」のルール形式「（ｘ−ｎ，ｙ）の地点との差」に関して、バリエーション生成値を更新し、ルールを適用する。その後、ステップＳ４−１０に進む（ステップＳ４−８）。この時点での「気温」に関する「生成されるバリエーション」項目の値は、図１９に示すようになる。
【０１５９】
変数バリエーション生成部１４は、「気温」の変数タイプ「空間タイプ」のルール形式のうち、未処理のルール形式があるため、ステップＳ４−６に戻る（ステップＳ４−１０）。
【０１６０】
変数バリエーション生成部１４は、「気温」の変数タイプ「空間タイプ」の変数バリエーションルールから、１つのルール形式「（ｘ，ｙ−ｎ）の地点との差」を選択する（ステップＳ４−６）。
【０１６１】
変数バリエーション生成部１４は、ルール形式「（ｘ，ｙ−ｎ）の地点との差」のバリエーション更新状態が“削除”であるため、ステップＳ４−９に進む（ステップＳ４−７）。
【０１６２】
変数バリエーション生成部１４は、「気温」の変数タイプ「空間タイプ」のルール形式「（ｘ，ｙ−ｎ）の地点との差」に関して、現在のバリエーション生成値「１」により生成されたバリエーション「（ｘ，ｙ−１）の地点との差」を削除する。また、バリエーション更新状態を“完了”とする（ステップＳ４−９）。この時点での「気温」に関する「生成されるバリエーション」項目の値は、図２０の右列に示すようになる。
【０１６３】
変数バリエーション生成部１４は、「気温」の変数タイプ「空間タイプ」の全てのルール形式について処理をしたため、ステップＳ４−１１に進む（ステップＳ４−１０）。
【０１６４】
変数バリエーション生成部１４は、「気温」の全ての変数タイプについて処理したため、ステップＳ４−１２に進む（ステップＳ４−１１）。
【０１６５】
変数バリエーション生成部１４は、「気温」については全ての処理を終えた。他の変数についても同様の処理をして、処理を終了する（ステップＳ４−１２）。
【０１６６】
次に、ステップＳ４からステップＳ７までの繰り返しの２周目における、分析終了判定部１６におけるフローチャート（図１３）の動作について述べる。
【０１６７】
分析終了判定部１６は、今回の分析結果の精度を算出する（ステップＳ６−１）。
【０１６８】
ここでは、今回の分析結果の精度が、前回の分析結果の精度を上回っているものとする。分析終了判定部１６は、ステップＳ６−３に進む（ステップＳ６−２）。
【０１６９】
分析終了判定部１６は、分析処理を継続する判定をし、処理を終了する（ステップＳ６−３）。
【０１７０】
次に、ステップＳ４からステップＳ７までの繰り返しの２周目における、変数寄与率判定部１７におけるフローチャート（図１４）の動作について述べる。
【０１７１】
変数寄与率判定部１７は、変数バリエーションの１つ「２日前との気温差」を選択する（ステップＳ７−１）。
【０１７２】
変数寄与率判定部１７は、「２日前との気温差」の寄与率を算出する（ステップＳ７−２）。
【０１７３】
ここでは、「２日前との気温差」の寄与率が閾値より高いものとする。変数寄与率判定部１７は、ステップＳ７−５に進む（ステップＳ７−３）。
【０１７４】
変数寄与率判定部１７は、未処理のバリエーションがあるため、ステップＳ７−１に戻る（ステップＳ７−５）。
【０１７５】
変数寄与率判定部１７は、変数バリエーションの１つ「（ｘ−２，ｙ）の地点との気温差」を選択する（ステップＳ７−１）。
【０１７６】
変数寄与率判定部１７は、「（ｘ−２，ｙ）の地点との気温差」の寄与率を算出する（ステップＳ７−２）。
【０１７７】
ここでは、「（ｘ−２，ｙ）の地点との気温差」の寄与率が閾値より低いものとする。変数寄与率判定部１７は、ステップＳ７−４に進む（ステップＳ７−３）。
【０１７８】
変数寄与率判定部１７は、「（ｘ−２，ｙ）の地点との気温差」のバリエーション更新状態を“削除”に変更する（ステップＳ７−４）。
【０１７９】
変数寄与率判定部１７は、「気温」に関しては全てのバリエーションを処理し終えた。他の変数についても、全てのバリエーションについて処理し、処理を終了する（ステップＳ７−５）。
【０１８０】
次に、ステップＳ４からステップＳ７までの繰り返しの２周目における、変数バリエーション生成部１４におけるフローチャート（図１２）の動作について述べる。
【０１８１】
変数バリエーション生成部１４は、「気温」を選択する（ステップＳ４−１）。
【０１８２】
変数バリエーション生成部１４は、「気温」に変数バリエーションルールを適用するのは初めてではないため、ステップＳ４−４に進む（ステップＳ４−２）。
【０１８３】
変数バリエーション生成部１４は、「気温」の変数タイプの１つ「時間タイプ」を選択する（ステップＳ４−４）。
【０１８４】
変数バリエーション生成部１４は、変数バリエーションルール保管部２２から、時間タイプの変数バリエーションルールを取得する（ステップＳ４−５）。
【０１８５】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」の変数バリエーションルールから、１つのルール形式「ｎ日前との差」を選択する（ステップＳ４−６）。
【０１８６】
変数バリエーション生成部１４は、ルール形式「ｎ日前との差」のバリエーション更新状態が“増加”であるため、ステップＳ４−８に進む（ステップＳ４−７）。
【０１８７】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」のルール形式「ｎ日前との差」に関して、バリエーション生成値を更新し、ルールを適用する。その後、ステップＳ４−１０に進む（ステップＳ４−８）。この時点での「気温」に関する「生成されるバリエーション」項目の値は、図２１の右列に示すようになる。
【０１８８】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」のルール形式のうち、未処理のルール形式があるため、ステップＳ４−６に戻る（ステップＳ４−１０）。
【０１８９】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」の変数バリエーションルールから、１つのルール形式「ｎ年前との差」を選択する（ステップＳ４−６）。
【０１９０】
変数バリエーション生成部１４は、ルール形式「ｎ年前との差」のバリエーション更新状態が“完了”であるため、ステップＳ４−１０に進む（ステップＳ４−７）。
【０１９１】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」の全てのルール形式について処理をしたため、ステップＳ４−１１に進む（ステップＳ４−１０）。
【０１９２】
変数バリエーション生成部１４は、「気温」に関して、未処理の変数タイプがあるため、ステップＳ４−４に戻る（ステップＳ４−１１）。
【０１９３】
変数バリエーション生成部１４は、「気温」の変数タイプの１つ「空間タイプ」を選択する（ステップＳ４−４）。
【０１９４】
変数バリエーション生成部１４は、変数バリエーションルール保管部２２から、空間タイプの変数バリエーションルールを取得する（ステップＳ４−５）。
【０１９５】
変数バリエーション生成部１４は、「気温」の変数タイプ「空間タイプ」の変数バリエーションルールから、１つのルール形式「（ｘ−ｎ，ｙ）の地点との差」を選択する（ステップＳ４−６）。
【０１９６】
変数バリエーション生成部１４は、ルール形式「（ｘ−ｎ，ｙ）の地点との差」のバリエーション更新状態が“削除”であるため、ステップＳ４−８に進む（ステップＳ４−７）。
【０１９７】
変数バリエーション生成部１４は、「気温」の変数タイプ「時間タイプ」のルール形式「（ｘ−ｎ，ｙ）の地点との差」に関して、現在のバリエーション生成値「２」により生成されたバリエーション「（ｘ−２，ｙ）の地点との差」を削除する。また、バリエーション更新状態を“完了”とする（ステップＳ４−９）。この時点での「気温」に関する「生成されるバリエーション」項目の値は、図２２の右列に示すようになる。
【０１９８】
変数バリエーション生成部１４は、「気温」の変数タイプ「空間タイプ」のルール形式のうち、未処理のルール形式があるため、ステップＳ４−６に戻る（ステップＳ４−１０）。
【０１９９】
変数バリエーション生成部１４は、「気温」の変数タイプ「空間タイプ」の変数バリエーションルールから、１つのルール形式「（ｘ，ｙ−ｎ）の地点との差」を選択する（ステップＳ４−６）。
【０２００】
変数バリエーション生成部１４は、ルール形式「（ｘ，ｙ−ｎ）の地点との差」のバリエーション更新状態が“完了”であるため、ステップＳ４−１０に進む（ステップＳ４−７）。
【０２０１】
変数バリエーション生成部１４は、「気温」の変数タイプ「空間タイプ」の全てのルール形式について処理をしたため、ステップＳ４−１１に進む（ステップＳ４−１０）。
【０２０２】
変数バリエーション生成部１４は、「気温」の全ての変数タイプについて処理したため、ステップＳ４−１２に進む（ステップＳ４−１１）。
【０２０３】
変数バリエーション生成部１４は、「気温」については全ての処理を終えた。他の変数についても同様の処理をして、処理を終了する（ステップＳ４−１２）。
【０２０４】
次に、ステップＳ４からステップＳ７までの繰り返しの３周目における、分析終了判定部１６におけるフローチャート（図１３）の動作について述べる。
【０２０５】
分析終了判定部１６は、今回の分析結果の精度を算出する（ステップＳ６−１）。
【０２０６】
ここでは、今回の分析結果の精度が、前回の分析結果の精度を上回っていないものとする。分析終了判定部１６は、ステップＳ６−４に進む（ステップＳ６−２）。
【０２０７】
分析終了判定部１６は、分析処理を終了する判定をし、処理を終了する（ステップＳ６−４）。
【０２０８】
ここまでの処理により、「気温」に関する「生成されるバリエーション」項目の値として、「１日前との気温差」、「２日前との気温差」及び「（ｘ−１，ｙ）の地点との気温差」という３個のバリエーションが生成された。上述したように、空間タイプとは、空間上の位置によって値が異なる変数を空間タイプの変数といい、例えば、「ある地点での、ある時刻の気温」に対して、「隣の地点での、同時刻の気温」という異なる値が存在する。
【０２０９】
これら３個のバリエーションの値を得るには、変数バリエーション生成部１４が、気象データの主キーである「日付」や「地域」の値を参照して、「気温」の値を算出すればよい。図２３に「１日前との気温差」の算出方法を示し、図２４に「（ｘ−１，ｙ）の地点との気温差」の算出方法を示す。
【０２１０】
すなわち、変数バリエーション生成部１４は、分析対象データにおいて、同一の値の地域項目毎に、ある日付の値をもつ日付項目の値に関連付けられた気温項目の値から、当該ある日付の値に対して１日前の日付の値となる日付項目の値に関連付けられた気温項目の値を減算することにより、「１日前との気温差」というバリエーションの値（−２．６、１．１、−１．５、…）を算出する。
【０２１１】
同様にして、変数バリエーション生成部１４は、分析対象データにおいて、同一の値の地域項目毎に、ある日付の値をもつ日付項目の値に関連付けられた気温項目の値から、当該ある日付の値に対して２日前の日付の値となる日付項目の値に関連付けられた気温項目の値を減算することにより、「２日前との気温差」というバリエーションの値（−１．５、−０．４、…）を算出する。
【０２１２】
また、変数バリエーション生成部１４は、分析対象データにおいて、同一の値の日付項目毎に、ある地域コードの値をもつ地域項目の値に関連付けられた気温項目の値から、当該ある地域コードの値に対して隣接する地域コードの値となる地域項目の値に関連付けられた気温項目の値を減算することにより、「（ｘ−１，ｙ）の地点との気温差」というバリエーションの値（０．０、−０．８、２．１、…）を算出する。
【０２１３】
生成されたバリエーションの値及び分析対象データは、変数バリエーション生成部１４により、分析データセット保管部２３に書込まれる。
【０２１４】
上述したように本実施形態によれば、変数の型を表す変数タイプを判定し、当該判定された変数タイプと、予め変数タイプ別に変数のバリエーションの生成方法を規定した変数バリエーションルールとに基づいて、各変数のバリエーションを生成し、当該生成されたバリエーションにおける目的変数への寄与率を算出し、この寄与率に基づいて、当該バリエーションを採用するか削除するかを判定する構成により、変数に応じて異なる変換式を適用して、変数を生成することができる。
【０２１５】
補足すると、変数をそのタイプによって分類し、タイプごとに異なる変換式を適用して、新たな変数を生成することで、各変数に適した変数合成手段を動的に決定することができる。
【０２１６】
また、本実施形態によれば、入力されたルール変更指示に応じて、変数バリエーションルール保管部２２内の変数バリエーションルールを変更する構成により、必要に応じて、適切な変数バリエーションルールを設定することができる。
【０２１７】
さらに、本実施形態によれば、生成されたバリエーションを分析し、前回の分析結果の精度よりも今回の分析結果の精度が高いとき、前述した寄与率の算出を実行する構成により、前回の分析結果を参照し、分析結果の精度向上に貢献した変数を用いて新たな変数を生成することで、継続して実行している分析の結果を活かすことができる。
【０２１８】
補足すると、特許文献２記載の方式では、監視の対象値（例：寸法）に対応づけた属性値のセット（例：製造番号、ロット番号）に予め定めておいた属性値条件に従って、監視の対象値の派生時系列を生成する（例：３次移動平均、３次自己回帰）。この特許文献２記載の方式では、元の時系列データと派生時系列データとを比較して監視対象値の変動（例：中心値低下）を自動で判定し、判定結果を使用者に通報する。
【０２１９】
しかしながら、このような特許文献２記載の方式では、派生時系列の生成に用いる属性値のセットや生成ロジックが毎回の分析に固定的に用いられており、前回の分析結果からフィードバックを受けないことから、以前の分析結果を活用できない不都合がある。
【０２２０】
これに対し、本実施形態では、前述した通り、前回の分析結果を活用しつつ、変数を生成することができる。
【０２２１】
なお、上記の各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【０２２２】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【０２２３】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が上記実施形態を実現するための各処理の一部を実行しても良い。
【０２２４】
さらに、各実施形態における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【０２２５】
また、記憶媒体は１つに限らず、複数の媒体から上記の各実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【０２２６】
なお、各実施形態におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記の各実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【０２２７】
また、各実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【０２２８】
なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０２２９】
１１…変数タイプ判定部、１２…前処理部、１３…ルール変更部、１４…変数バリエーション生成部、１５…分析実行部、１６…分析終了判定部、１７…変数寄与率判定部、２１…収集データ保管部、２２…変数バリエーションルール保管部、２３…分析データセット保管部、２４…分析結果保管部。
【図１】
2014071492.tif 000003
【図２】
2014071492.tif 000004
【図３】
2014071492.tif 000005
【図４】
2014071492.tif 000006
【図５】
2014071492.tif 000007
【図６】
2014071492.tif 000008
【図７】
2014071492.tif 000009
【図８】
2014071492.tif 000010
【図９】
2014071492.tif 000011
【図１０】
2014071492.tif 000012
【図１１】
2014071492.tif 000013
【図１２】
2014071492.tif 000014
【図１３】
2014071492.tif 000015
【図１４】
2014071492.tif 000016
【図１５】
2014071492.tif 000017
【図１６】
2014071492.tif 000018
【図１７】
2014071492.tif 000019
【図１８】
2014071492.tif 000020
【図１９】
2014071492.tif 000021
【図２０】
2014071492.tif 000022
【図２１】
2014071492.tif 000023
【図２２】
2014071492.tif 000024
【図２３】
2014071492.tif 000025
【図２４】
2014071492.tif 000026