(57)【特許請求の範囲】
【請求項１】
記憶装置に格納され、属性と属性値の組を項目とし、複数項目の組合せからなるレコードの集合からなる元データをコンピュータによって分析するデータ分析支援システムであって、
前記コンピュータは、
前記元データに対して実行され、設定された閾値を超えるレコード数のレコードに含まれる項目の組合せである頻出パターンを抽出する頻出パターンマイニングの処理結果である前記項目の組合せと、該頻出パターンの頻度を意味する前記元データにおけるレコード数とを含む頻出パターン情報、前記頻出パターンの最小頻度、並びに分析処理を行う実行プログラムを少なくとも保持する記憶部と、
前記実行プログラムを実行する処理部と、
前記実行プログラムの実行の結果を出力する出力部とを有し、
前記処理部は、
前記元データを構成する属性のいずれかもしくは属性の組合せをそれぞれレコードの単位とするデータ粒度について、
それぞれのデータ粒度にしたがい、前記データ粒度の項目の組合せが等しい元データのレコードを１レコードに結合して分析後データを作成した場合に、該分析後データのレコード数が取りえる範囲を、前記記憶部に格納された前記頻出パターンの頻度および前記頻出パターンの最小頻度を用いて算出し、それぞれのデータ粒度での分析後データの項目パターンと該項目パターンから作成されるルールの評価値の範囲を算出し、それぞれのデータ粒度に対して、前記算出したレコード数が取りえる範囲と、分析後データの項目パターンと、該項目パターンから作成されるルールと、前記算出した項目パターンとルールの評価値の範囲と、の組を前記出力部から出力し、前記出力されたデータ粒度の中から、分析後データの作成に採用するデータ粒度の選択を受け付けることを特徴とするデータ分析支援システム。
【請求項２】
前記処理部は、
前記元データのレコード数と前記頻出パターンの頻度の総和との差分を前記頻出パターンの最小頻度より１小さい数で割った値以上の最小の整数と、該属性の組の属性値からなる頻出パターンの種類数との和を前記分析後データのレコード数が取りえる最小値と算出することを特徴とする請求項１に記載のデータ分析支援装置。
【請求項３】
前記処理部は、
前記元データのレコード数と前記頻出パターンの頻度の総和との差分を該属性の組の属性値からなる頻出パターン以外に１レコード以上づつ割り当てたときの種類数と、該属性の組の属性値からなる頻出パターンの種類数との和を前記分析後データのレコード数が取りえる最大値と算出することを特徴とする請求項１に記載のデータ分析支援装置。
【請求項４】
前記コンピュータは、前記頻出パターンマイニングの処理を実行する頻出パターンマイニング処理部を更に有することを特徴とする請求項１に記載のデータ分析支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベース、データウェアハウス、及びデータファイルを対象としたデータ分析システム及び方法に関し、特に詳細なデータ分析に利用するデータレコードを作成するためにデータのレコードを分析してレコードに含まれるデータの規則性を明らかにするシステム、及びその方法、プログラムに関する。
【背景技術】
【０００２】
データ収集技術の発展と普及により、実世界の様々な場面で大量のデータを収集、蓄積することが可能となっている。それらデータを分析し、その中に埋もれた有用な情報を抽出し、マーケティングなどに応用したいというニーズがある。データ分析に関しては、統計ツール、データマイニングツール、BIツールなど、種々の分析を行うためのソフトウェアやシステムが存在している。従来のデータ分析の手順は、はじめにユーザが分析したい内容を決定し（ステップ１）、次に、その分析に適したデータを作成（ステップ２）する。そして、作成したデータに対して分析ツールを用いて分析処理を行い（ステップ３）、分析結果を獲得する（ステップ４）という流れになる。期待した分析結果をステップ４にて獲得出来なかった場合には、ステップ３とステップ４を再び行うことによって分析条件を変更した分析処理を行う。または、ステップ２に戻って新たなデータを作成し、ステップ３とステップ４を再び行うことによって新たなデータに対する分析をやり直す。期待した分析結果を得るまで再分析処理、再データ作成から分析処理が繰り返される。
【０００３】
一般的に分析ツールは、与えられたデータに対する多種の分析手法を提供することが出来る。しかし、分析したい内容が予め決まっていること、及び分析に適したデータが存在することが前提となっている。つまり、従来の分析ツールは前記データ分析の手順のステップ３とステップ４を行うためのツールである。
【０００４】
一方、分析対象のデータに対して網羅的な分析を行うことによって予め分析したい内容を詳細に決定することなく分析を行う技術として、データマイニングがある（非特許文献１）。しかし、データマイニングにおいても分析対象となるデータが予め与えられることが前提となっている。例えば、データマイニングの最も代表的な技術である頻出パターンマイニングでは、与えられたデータに対して所定のレコード数以上のレコードに含まれる項目の組合せを抽出する。１レコードの単位は与えられたデータに従う。異なるレコードの単位で頻出パターンマイニングを行いたい場合には、１レコードの単位が異なるデータを作成する必要がある。
【０００５】
データ分析に関して、複数の面からのデータ分析を支援する発明として、例えば特許文献１、２、３に記載の装置がある。特許文献１に記載の装置では、項目を離散値からなるＩＴＥＭキーと日時や更新回数など反復を表す反復キーとに分類し、ユーザが指定したＩＴＥＭキーや反復キーを軸としたときのデータの統計値を表やグラフで表示することが出来る。また、特許文献２に記載のシステムでは、データマイニングによる分析において、データの属性値のグルーピング（連続値の離散化、複数項目のグループ化など）条件、データクレンジング条件、データ絞り込み条件を変更しながら繰り返し分析処理を行うことが出来る。また、特許文献３に記載のシステムでは、ユーザが指定した切り口に対応するデータの集計値について、ユーザが指定したセルに対応するデータのクロス集計やグラフなど特定のデータについての詳細な情報を表示することによって、ユーザが直感的にデータの分析作業を行うことが出来る。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開2007-11468号公報
【特許文献２】特開平11-250084号公報
【特許文献３】特開平11-15897号公報
【非特許文献】
【０００７】
【非特許文献１】R.Agrawal, R.Srikant, "Fast Algorithm for Mining Association Rules in Large Databases", in proceedings of International Conference on Very Large Data Bases, 1994
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来のデータ分析システムは多種の分析アルゴリズムを提供することが目的であり、また、データ分析支援システムはユーザが繰り返し分析処理を行うための条件設定とデータ加工を容易化することが目的であった。いずれのシステムにおいても分析したい内容が予め決定していること、及び、分析対象となるデータのレコードの単位を分析者が指定することが前提となっている。しかし、実際のデータ分析では、前記の前提を満たすことは困難である。データ分析の開始時点では、分析したい内容が不明確であることが多く、また、分析対象とするデータのレコード単位（データ粒度と呼ぶ）を決定することが出来ないことが多い。元となるデータが同一でも、データ粒度によって分析処理を行うデータの規模、各レコードの内容が異なり、また、得られる分析結果も異なる。例えば、頻出パターンマイニングで得られる結果においては、項目の組合せが等しいパターンでもデータ粒度によって評価値が異なる。保持しているデータに対してどのようなデータ粒度を設定することが出来るのか、該データからどのような分析結果を得ることが出来るのか、該データに対してどのようなデータ粒度で分析対象データを作成したときに、どのような分析結果を得ることが出来るのかを知ることは困難である。データ分析を開始するためには分析対象とするデータ粒度の設定が必要となる。もし、分析の開始前に元となるデータに対するデータ粒度について、レコードの単位とした属性、及び、データ粒度毎のデータ規模や内容と得られる分析結果に関する情報を提示することができれば、どのようなデータ粒度を設定でき、またそのデータ粒度設定でどのような分析結果となるかを予測出来る。つまりデータ粒度を予め設定するのではなく、提示されたデータ粒度に関連する情報から、開始するデータ分析のためのデータ粒度を選択し、該選択されたデータ粒度のデータを作成することによってデータ分析を開始することによって、獲得したい分析結果に結び付く分析を開始することが出来る。
【０００９】
前述の特許文献１、２、３は、単一のデータ粒度のデータに対する分析処理を繰り返す際の条件設定の支援と、指定された条件での分析処理結果の表示が可能である。しかし、分析を開始するための情報提示とデータのレコードの単位設定に関しては考慮されていなかった。
【００１０】
分析開始前に元データから作成可能なデータ粒度に関する情報を提示するためには、単純には、元データが登録された時点で、元データからあるデータ粒度でのデータを作成し、データ分析を行い、分析結果を獲得することを、設定可能なデータ粒度の範囲で繰り返し実行すればよい。これによって、データ分析の開始前に複数のデータ粒度に関する情報を提示することが出来る。しかし、元データが大規模となる場合には、データ粒度の異なるデータを作成するための処理量が膨大になることから、現実的には困難である。
【００１１】
また、元データからサンプリングした小規模なサンプリングデータを作成し、該サンプリングデータに対して設定可能なデータ粒度でのデータを作成し、データ分析を行い、分析結果を獲得することによって、データ分析の開始前に複数のデータ粒度に関する情報を提示することが出来る。サンプリングデータは元データ全体に比較して小規模に抑えることが出来るため、現実的な処理量に抑えることが出来る。しかし、サンプリングデータから作成したデータ粒度のデータは、元データの全体を反映しておらず、一部分のみを反映しているため、提示された情報の正しさが保証されない。そのため、該サンプリングデータを元にしたデータ粒度として提示されたデータ規模やレコードの内容、および、得られる分析結果を、元データ全体を元にして作成したデータ粒度のデータにおいても獲得出来るとは限らない。例えば、サンプリングデータから作成した場合のデータ粒度として提示された分析結果が、元データ全体を対象とした場合には成り立たない場合がある。正しさの保証されない情報は、データ分析を支援する情報とは成り得ない。
【００１２】
本発明の第一の目的は、複数の項目からなるレコードの集合である元データに対して、該元データから作成可能なデータ粒度について、各データ粒度におけるレコード単位の構成を示す属性の組と、データ規模の統計量と、該データ粒度のデータに対する分析結果と、を提示するシステムおよびその方法を提供することである。データ規模の統計量としてレコード数の範囲を提示する。また、分析結果として頻出パターンマイニングで抽出される頻出パターン、および、相関ルールマイニングで導出される相関ルールを提示するが、該頻出パターンと相関ルールの評価値は厳密値でなく、範囲で提示する。
【００１３】
本発明の第二の目的は、元データから作成可能なデータ粒度について、各データ粒度におけるデータ規模に関する統計量、および、分析結果を、元データに対する頻出パターンマイニングの結果から算出することによって、元データに対する処理を回避し、処理量を低減するシステムおよび方法を提供することである。
【課題を解決するための手段】
【００１４】
上記の目的を達成するため、本発明の代表的実施態様の特徴は、処理部と記憶部とを備えた計算機を用い、属性と属性値の組を項目とし、１以上の項目の組合せからなるレコードの集合からなる元データにおいて、元データに含まれる属性の組合せをレコードの単位とするデータ粒度について、各データ粒度でのデータ規模であるレコード数の範囲を算出するステップと、各データ粒度で得られる項目の組合せであるパターンとその評価値の範囲を算出するステップと、項目の組合せの連関であるルールとその評価値の範囲とを算出するステップとを処理部で実行し、算出したデータ規模とパターンとルールの情報を各データ粒度でのレコードの単位とした属性の組との単位で出力部で出力するデータ分析支援システム及び方法にある。
【００１５】
また、上記の目的を達成するため、本発明の代表的実施態様の別の特徴は、所定の数以上の元データのレコードに含まれる項目の組合せと、元データのレコード数と、元データを構成する属性及び項目のリストとを利用し、元データに含まれる属性の組合せをレコードの単位とするデータ粒度について、２以上の頻出パターンの頻度の差分、頻出パターンと単一の項目の頻度の差分、単一項目の頻度の分布から、各データ粒度でのデータ規模であるレコード数の範囲を算出するステップと、各データ粒度で得られる項目の組合せであるパターンとその評価値の範囲を算出するステップと、項目の組合せの連関であるルールとその評価値の範囲とを算出するステップとを処理部で実行し、算出したデータ規模とパターンとルールの情報を各データ粒度でのレコードの単位とした属性の組との単位で出力部で出力するデータ分析支援システム及び方法にある。
【００１６】
また、上記の目的を達成するため、本発明の代表的実施態様の更に別の特徴は、所定の数以上の元データのレコードに含まれる項目の組合せと、元データのレコード数と、元データを構成する属性及び項目のリストとを利用し、該頻出パターンを包含関係にある頻出パターン間のリンク構造及び１属性を除いて同一の項目からなる類似関係にある頻出パターン間のリンク構造を保持し、元データに含まれる属性の組合せをレコードの単位とするデータ粒度について、２以上の頻出パターンの頻度の差分、頻出パターンと単一の項目の頻度の差分を該リンク構造を辿ることによって獲得し、該獲得した差分と、単一項目の頻度の分布から、各データ粒度でのデータ規模であるレコード数の範囲を算出するステップと、各データ粒度で得られる項目の組合せであるパターンとその評価値の範囲を算出するステップと、項目の組合せの連関であるルールとその評価値の範囲とを算出するステップとを処理部で実行し、算出したデータ規模とパターンとルールの情報を各データ粒度でのレコードの単位とした属性の組との単位で出力部で出力するデータ分析支援システム及び方法にある。
【発明の効果】
【００１７】
本発明によると、データ分析の開始前に、元データに設定可能なデータ粒度と、各データ粒度におけるデータ規模と、分析結果と共に提示することが可能となる。これにより、得られる分析結果を参照してから実際の分析処理を開始するため、得たい分析結果に結び付かない不要な分析処理を回避することが出来る。
【００１８】
また、元データに対する頻出パターンマイニングの結果を用いて、各データ粒度おけるデータ規模の統計量の範囲を算出すること、および、該データ粒度における分析結果である頻出パターンとその評価値の範囲、相関ルールとその評価値の範囲を算出することによって、元データからのデータ粒度毎のデータ作成とデータ粒度毎の分析処理を回避し、データ処理量を低減することが可能となる。
【図面の簡単な説明】
【００１９】
【図１】第１の実施例のシステム構成例を示す図である。
【図２】第１の実施例に係る、ユーザインタフェースの一例を示す図である。
【図３】第１の実施例に係る、データ分析支援処理の概要を示すフローチャート図である。
【図４】第１の実施例に係る、元データに対する前処理を示すフローチャート図である。
【図５】第１の実施例に係る、頻出パターンのデータ構造の一例を示す図である。
【図６】第１の実施例に係る、データ粒度内容算出処理を示すフローチャート図である。
【図７】第１の実施例に係る、データ粒度別データ規模算出処理を示すフローチャート図である。
【図８】第１の実施例に係る、特定のデータ粒度に対するレコード数算出処理を示すフローチャート図である。
【図９】第１の実施例に係る、頻出パターンから特定のデータ粒度のレコード数の範囲を算出する処理を示すフローチャート図である。
【図１０】第１の実施例に係る、属性の組と頻出パターンから特定のデータ粒度のレコード数の範囲を算出する処理を示すフローチャート図である。
【図１１】第１の実施例に係る、元データのレコード数と各項目の頻度とからから特定のデータ粒度のレコード数の範囲を算出する処理を示すフローチャート図である。
【図１２】第１の実施例に係る、特定のデータ粒度に対する項目のパターンの頻度算出の全体処理を示すフローチャート図である。
【図１３】第１の実施例に係る、特定のデータ粒度に対する項目のパターンの頻度範囲算出処理の詳細を示すフローチャート図である。
【図１４】第１の実施例に係る、頻出パターンと単一の項目から特定のデータ粒度における項目の組合せであるパターンの頻度の範囲を算出する処理を示すフローチャート図である。
【図１５】第１の実施例に係る、頻出パターンから特定のデータ粒度における項目の組合せであるパターンの頻度の範囲を算出する処理を示すフローチャート図である。
【図１６】第１の実施例に係る、属性の組と頻出パターンから特定のデータ粒度における項目の組合せであるパターンの頻度の範囲を算出する処理を示すフローチャート図である。
【図１７】第１の実施例に係る、特定のデータ粒度に対する項目のパターンの連関であるルールを導出する処理を示すフローチャート図である。
【図１８】第２の実施例の機能構成を示す図である。
【図１９】第２の実施例に係る、データ分析の全体処理を示すフローチャート図である。
【図２０】第２の実施例に係る、元データに対する前処理を示すフローチャート図である。
【図２１】第２の実施例に係る、元データから所定の属性をレコードの単位とするデータ粒度のデータ作成処理を示すフローチャート図である。
【図２２】第２の実施例に係る、データ分析処理を示すフローチャート図である。
【図２３】第２の実施例に係る、一般的なデータ処理を示すフローチャート図である。
【発明を実施するための形態】
【００２０】
以下、図面を参照して本発明の実施の形態を説明する。
【００２１】
はじめに、種々の実施の形態において利用するデータの構成を説明する。データはレコードの集合からなり、レコードは項目の組合せからなる。項目は属性と属性値の組からなり、属性値は離散値である。属性値が連続値の場合、範囲分割等によって区分けし、各区分けに特定の離散値を割り当てることにより、連続値を離散値に対応付けることが可能である。また、離散値をグループに分類し、各グループを特定の離散値に対応付けることにより、データの項目に含まれない離散値に対応付けることも可能である。
【００２２】
例えば、センサ端末から検出されるイベントデータの場合の一例を表１に示す。センサ端末のイベントデータの場合、１レコードはある監視対象のあるセンサ端末で検出された事象を意味する。表１に示したイベントデータは、時間帯、地域コード、監視対象ID、センサ種別、イベント種別の５個の属性を持つ。各属性はそれぞれ５個、６個、７個、５個、７個の属性値からなり、全部で３１個の項目（３１属性値）、１０レコードのデータである。また、各レコードを識別するための固有の識別子であるレコードIDを持つ。
【００２３】
【表１】
0005588811.tif 000002
【００２４】
次に、レコードの単位であるデータ粒度を説明する。１以上の属性に対する項目の組合せが等しいレコードを１レコードに結合したデータを該１以上の属性をデータ粒度とするデータと呼ぶ。例えば、表１のデータにおいて地域コードをデータ粒度とするデータとした場合を考える。属性が“地域コード”で項目が“東京１”であるレコードは、レコードＩＤが１と４と８のレコードであるため、該３レコードは１レコードに結合され“（早朝，１００１，熱，異常高温），（午後，２００１，電力，電流障害），（午後，２００２，システム，システム障害）”のレコードが作成される。属性を地域コードとするその他の項目についても同様に処理することによって、表２の６レコードのデータが作成される。また、複数の属性をデータ粒度に設定した例として、例えば、属性“地域コード”と“監視対象ＩＤ”をデータ粒度とした場合を考える。“地域コード”と“監視対象ＩＤ”を属性とする項目“東京１”と“１００１”の組を持つレコードは、レコードＩＤが１と８のレコードであるため、該２レコードは１レコードに結合され“（早朝，熱，異常高温），（午後，システム，システム障害）”のレコードが作成される。“地域コード”と“監視対象ＩＤ”を属性とするその他の項目の組についても同様に処理することによって、表３の８レコードのデータが作成される。以上のように、データ粒度とする属性の種類と数によって、作成されるデータのレコード数やレコードの内容が異なる。
【００２５】
【表２】
0005588811.tif 000003
【００２６】
【表３】
0005588811.tif 000004
【実施例１】
【００２７】
図１は、第１の実施例のデータ分析支援システムの一構成例を示す図である。このシステムは、処理部であるプロセッサ１０１と、記憶部を構成するメモリ１０２と記憶装置１０３を有する。プロセッサ１０１とメモリ１０２はコンピュータ１００を構成し、分析対象の元データは記憶装置１０３に格納されている。本実施例のデータ分析支援の実行プログラムであるデータ粒度別データ規模算出プログラム、データ粒度別パターン抽出プログラム、データ粒度別ルール抽出プログラムはメモリ１０２に格納されており、プロセッサ１０１によって実行される。
【００２８】
メモリ１０２には、図１に示すように、データ粒度別データ規模算出プログラム１０６、データ粒度別パターン抽出プログラム１０７、データ粒度別ルール抽出プログラム１０８に加え、元データ情報１０９、頻出パターン情報１１０、最小頻度情報１１１、及びデータ粒度情報１１２が記憶される。
【００２９】
元データ情報１０９は、解析対象の元データの属性と属性値、属性の処理順序、およびレコード数を表あるいはリストなどの形で保持する。頻出パターン情報１１０は、解析対象の元データに対する頻出パターンマイニングの結果として得られた頻出パターンに関して、頻出パターンを構成する項目の組合せと、該頻出パターンの頻度を意味する該頻出パターンを含む元データのレコード数と、該頻出パターンが含む頻出パターンである上位パターンへのリンクと該頻出パターンを含む頻出パターンである下位パターンへのリンクと、該頻出パターンに対して該頻出パターンに含まれる属性のうち元データ情報１０９の属性の処理順序が末尾となる属性の項目が異なる頻出パターンである類似パターンへのリンクと、レコード数範囲と、頻度差分とをツリー構造、リストあるいは表などの形で保持する。
【００３０】
最小頻度情報１１１は、頻出パターン情報の頻出パターンマイニングにおける最小頻度の閾値をデータの形で保持する。
【００３１】
データ粒度情報１１２は、元データから作成されるデータ粒度について、該データ粒度にてレコードの単位とした属性の組と、該データ粒度のレコード数の範囲と、該データ粒度におけるパターンとルールとを、表あるいはリストなどの形で保持する。詳細な説明は後述するが、パターンは構成する項目の組と頻度の範囲を、ルール前提条件と結論条件と確信度の範囲を含む。
【００３２】
更に、コンピュータ１００には、キーボードやマウスなどを備える入力装置１０４、及びディスプレイやプリンタなどからなる出力装置１０５が接続されている。
【００３３】
図２は、本実施例のユーザインタフェースの一例を示している。このユーザインタフェース２００は、分析対象の元データを指定する元データ指定部２０１、データ粒度の内容を表示する粒度内容表示ボタン２０５、データ粒度の内容を表示する粒度表示部２０６、粒度表示部に表示するデータ粒度、データ規模、パターン、ルールを絞り込む粒度絞り込み部２０２、パターン絞り込み部２０３、ルール絞り込み部２０４、データ分析を行うためのデータ粒度を選択する選択ボタン２０７、選択されたデータ粒度のデータを作成する粒度データ作成ボタン２０８からなる。ユーザは分析対象の元データを元データ指定部２０１で指定し、粒度内容表示ボタン２０５によって、データ粒度毎のデータ規模、パターン、ルールを表示させる。表示されたデータ粒度内容は、粒度絞り込み部２０２、パターン絞り込み部２０３、ルール絞り込み部２０４で指定した属性または項目を含むデータ粒度内容に絞り込まれる。なお、データ粒度内容表示部２０６では表形式を用いてデータ粒度内容を表示したが、データ粒度、データ規模、パターン、ルールの組をリストで表示したリスト形式でも構わない。また、パターンとルールはそれらを構成するアイテムセットをノードとするグラフ、パターンとルールの評価値は値を棒グラフなどで表示しても構わない。
【００３４】
また、元データ指定部２０１、粒度内容表示ボタン２０５、粒度絞り込み部２０２、パターン絞り込み部２０３、ルール絞り込み部２０４、粒度選択ボックス２０７、粒度データ作成ボタン２０８が図１の入力装置１０４に、データ粒度内容表示部２０６が図１の出力装置１０５に対応している。なお、タッチパネルとして機能するディスプレイ等を用いることにより、この入力装置１０４と出力装置１０５を一体化構成として形成することができることは言うまでもない。
【００３５】
図３は、本実施例におけるデータ分析処理の全体処理手順を説明するフローチャートである。プロセッサ１０１が粒度内容表示の指示を受信したとき、入力部１０４に指定された元データについて、記憶装置１０３から元データを構成する属性と項目、および、該属性の処理順序を読み出し、メモリ１０２の元データ情報１０９に保持するとともに、該元データに対応する所定の最小頻度を満たすすべての頻出パターンの項目の組合せと頻度を読み出し、頻出パターン情報１１０に保持する（３０１）。本実施例では、元データを構成する属性と項目、属性の処理順序、および、所定の最小頻度を満たすすべての頻出パターンの項目の組合せと頻度が記憶装置１０３に格納されているとする。該情報が格納されていない場合については後述する。
【００３６】
次に、プロセッサ１０１は、メモリ１０２に格納されたデータ粒度別データ規模算出プログラム１０６、データ粒度別パターン抽出プログラム１０７、データ粒度別ルール抽出プログラム１０８を実行し、元データから作成可能なデータ粒度について、各データ粒度のレコード数の範囲、各データ粒度におけるパターンとルールの評価値の範囲を算出する（データ粒度内容算出処理３０２）。更に詳細な算出手順は後述する。次に、データ粒度を構成する属性と算出されたレコード数とパターンとルールの組を出力装置１０５に出力する（３０３）。
【００３７】
図４は、図３における元データ前処理３０１の手順を詳細に説明するフローチャートである。はじめに、メモリの元データ情報１０９、頻出パターン情報１１０を初期化し、空にする（４０１）。次に、元データの内容として、記憶装置１０３から、元データを構成する属性のリスト、各属性の項目のリスト、および、各項目の頻度（項目を含む元データのレコード数）を読み出し、元データ情報１０９に表形式あるいはリストで保持する。さらに、頻出パターンとして、記憶装置１０３から、最小頻度、頻出パターンの項目の組合せと頻度を読み出し、頻出パターン情報１１０に最小頻度は値、頻出パターンの項目と頻度は木構造、表形式、あるいは、リストで保持する（４０２）。
【００３８】
図５は頻出パターンの木構造の一例である。木構造はノードとリンクからなる。１ノードは１頻出パターンを示し、頻出パターンを構成する項目の組合せ、頻度、処理状態フラグからなる。また、頻出パターンの項目の組合せが包含関係にある２つの頻出パターンの間にリンクが張られる。ここで、２つの頻出パターンＸとＹについて、ＸがＹの項目にすべて含まれる場合、ＸはＹの上位パターンと呼び、ＸがＹの項目をすべて含む場合、ＸはＹの下位パターンと呼ぶ。例えば、ノード（Ａ０，Ｂ０，Ｃ１）と（Ａ０，Ｂ０，Ｃ０，Ｄ０）の間にリンクが張られているが、（Ａ０，Ｂ０，Ｃ１）は（Ａ０，Ｂ０，Ｃ０，Ｄ０）の上位パターンであり、（Ａ０，Ｂ０，Ｃ０，Ｄ０）は（Ａ０，Ｂ０，Ｃ０）の下位パターンである。さらに、頻出パターンの項目の数が等しく、該パターンを構成する項目の属性について元データ情報１０９の属性の処理順序が末尾の属性からなる１つの項目以外のすべての項目が等しい２つの頻出パターンを類似パターンと呼び、該類似パターンとなる頻出パターンの間にもリンクが張られる。例えば、（Ａ０，Ｂ０，Ｃ０，Ｄ０）と（Ａ０，Ｂ０，Ｃ０，Ｄ１）は類似パターンの関係にあるためリンクが張られている。ここで、ＸＹと表現されたとき、Ｘが属性、Ｙが属性値であり、（Ａ０，Ｂ０，Ｃ０，Ｄ０）の処理順序が末尾となる属性がＤであるとする。類似パターンについては、類似パターンの条件を満たす全パターンへのリンクを張らず、類似パターンが存在する各頻出パターンについては、１類似パターンからのリンクと、１類似パターンへのリンクが張られるだけでも良い。
【００３９】
図６は、図３におけるデータ粒度内容算出処理３０２の手順を説明するフローチャートである。はじめに、プロセッサ１０１はメモリ１０２のデータ粒度別データ規模算出プログラム１０６を実行し、各データ粒度のレコード数の範囲を算出し、データ粒度情報１１１にリストあるいは表形式で保持する（データ粒度別データ規模算出処理６０１）。次に、データ粒度別パターン抽出プログラム１０７を実行し、各データ粒度におけるパターンの頻度の範囲を算出し、データ粒度情報１１１のリストあるいは表形式に追加し、保持する（データ粒度別パターン抽出処理６０２）。さらに、データ粒度別ルール抽出プログラム１０８を実行し、各データ粒度におけるルールの確信度を算出し、データ粒度情報１１１のリストあるいは表形式に追加し、保持する（データ粒度別ルール抽出処理６０３）。該確信度は後述する。
【００４０】
図７は、図６におけるデータ粒度別データ規模算出処理６０１の手順を説明するフローチャートである。データ粒度別データ規模算出処理では、個々の属性に着目し、該属性を含むデータ粒度毎にレコード数範囲を算出する。はじめに、元データを構成する１つの属性を選出し（７０１）、該属性を含むデータ粒度のレコード数の範囲を算出する（７０２）。算出されたレコード数の範囲をデータ粒度情報１１１に保持する（７０３）。すべての属性の組合せに対するレコード数算出処理が完了した時点（７０４）で処理を終了する。ここで、本実施例では元データの１属性を選出する順序は、メモリ１０２の元データ情報１０９の属性の処理順序とする。ただし、任意の順序で処理することによっても同様の結果を得ることが可能であるため、任意の順序で処理しても構わない。
【００４１】
図８は、図７における、ｎ個の属性の組合せＸをレコードの単位とするデータ粒度のレコード数算出処理７０２の手順を詳細に説明するフローチャートである。はじめに、対象とするデータ粒度の属性の組合せをＸとし（８０１）、メモリのデータ粒度情報１１１のデータ粒度Ｘに対応する情報を初期化する（８０２）。そして、Ｘに含まれる１つの属性をＸｔとし（８０３）、Ｘｔの１つの項目をｘとする（８０４）。ここで、本発明では、Ｘｔを選択する順序をメモリ１０２の元データ情報１０９の属性の処理順序の逆順とする。メモリ１０２の頻出パターン情報１１０の類似パターンへのリンクを辿ることによって、属性ｘを含む（ｎ−１）個の項目からなる頻出パターンを選出し、ｆ［ｎ−１］とし（８０５）、ｎ個の属性からなる頻出パターンＦ［ｎ］とＦ［ｎ］のうちｆ［ｎ−１］を含む頻出パターンを用いてデータ粒度Ｘのレコード数の範囲算出し、データ粒度情報１１１のデータ粒度Ｘの最小値と最大値に加算する（８０６）。ここで、Ｍ個の属性からなる頻出パターンをＦ［ｍ］と表現する。次に、ｉを１以上の整数とし、ｆ［ｎ−１］からＸｔ以外の属性をＸ’、ｊをｉに１加算した値とし（８０８）、ｆ［ｎ−ｉ］からメモリ１０２の元データ情報１０９の属性の処理順序の逆順に従って、頻出パターン情報１１０の上位パターンへのリンクを辿ることによって、Ｘ’以外の属性からなる頻出パターンｆ［ｎ−ｊ］を選出する（８０９）。メモリ１０２の頻出パターン情報１１０の類似パターンへのリンクを辿ることによってＦ［ｎ−ｉ］のうちｆ［ｎ−ｊ］を含む頻出パターンｆ’［ｎ−ｉ］を選出し、Ｘ’とＦ［ｎ−ｉ］とｆ［ｎ−ｊ］とｆ’［ｎ−ｉ］とからデータ粒度Ｘのレコード数の範囲を算出し、メモリ１０２のデータ粒度情報１１１のデータ粒度Ｘに対応するレコード数の最小値と最大値に加算する（８１１）。ｆ［ｎ−ｊ］が項目ｘと等しくなるまで以上の処理を続ける（８１２）。さらに、Ｘのすべての属性をＸｔとして処理するまで処理を続ける（８１３）。最後に、データ粒度Ｘについて、以上の処理で調べられなかった元データのレコードからデータ粒度Ｘのレコード数の範囲を算出し、メモリ１０２のデータ粒度情報１１１のデータ粒度Ｘに対応するレコード数の最小値と最大値に加算する（８１４）。以上の処理によって、データ粒度Ｘのレコード数の最小値と最大値が算出され、メモリ１１１のデータ粒度情報１１１に保持される。
【００４２】
図９は、図８におけるＦ［ｎ］とｆ［ｎ−１］からレコード数の範囲を算出する処理（８０６）の処理手順を詳細に説明するフローチャートである。はじめに、ｆ［ｎ−１］の頻度と、Ｆ［ｎ］の頻度の総和の差分Ｓを算出する。該Ｓをメモリ１０２の頻出パターン情報１１０の最小頻度の値より１小さい整数で割った値以上の最小の整数を算出し、最小値とする（９０１）。次に、Ｆ［ｎ］の属性のうちｆ［ｎ−１］に含まれない属性の属性値数の積と、Ｆ［ｎ］のうちｆ［ｎ−１］を含む頻出パターンの種類数との差分を算出し、該差分と該Ｓを比較して小さい値を最大値とする（９０２）。最後に、該最小値と最大値を返す（９０３）ことによって、Ｆ［ｎ］とｆ［ｎ−１］からレコード数の範囲を算出する処理を終了する。
【００４３】
また、図１０は、図８におけるＸ’とＦ［ｎ−ｉ］とｆ［ｎ−ｊ］とｆ’［ｎ−ｉ］とからレコード数の範囲を算出する処理（８１１）の処理手順を詳細に説明するフローチャートである。はじめに、Ｆ’［ｎ−ｉ］の頻度をメモリ１０２の頻出パターン情報１１０の最小頻度の値より１小さい整数で割った値以上の最小の整数を算出し、最小値とする（１００１）。また、Ｆ［ｎ］の属性のうちｆ’［ｎ−ｉ］に含まれない属性の属性値数の積を算出し、最大値とする（１００２）。次に、ｆ［ｎ−ｊ］の頻度と、Ｆ［ｎ−ｉ］のうちｆ［ｎ−ｊ］を含む頻出パターンＦ’［ｎ−ｉ］の頻度の総和との差分をＳ’とし、該Ｓ’をメモリ１０２の頻出パターン情報１１０の最小頻度の値より１小さい整数で割った値以上の最小の整数を該算出した最小値に加算する（１００３）。また、Ｘ’の属性値数とＦ［ｎ−ｉ］の種類数との差分と、Ｆ［ｎ］の属性のうちｆ［ｎ−ｉ］に含まれない属性の属性値数の積との積を算出し、該算出した値と該Ｓ’を比較して小さい値を該算出した最大値に加算する（１００４）。最後に、該最小値と最大値を返す（１００５）ことによって、Ｘ’とＦ［ｎ−ｉ］とｆ［ｎ−ｊ］とｆ’［ｎ−ｉ］とからレコード数の範囲を算出する処理を終了する。
【００４４】
また、図１１は、図８における元データの未処理レコードからデータ粒度Ｘのレコード数の範囲を算出する処理（８１４）の処理手順を詳細に説明するフローチャートである。はじめに、元データのレコード数と、Ｆ［１］に含まれるＸｔの項目の頻度の総和との差分Ｒを算出し、該Ｒをメモリ１０２の頻出パターン情報１１０の最小頻度の値より１小さい整数で割った値以上の最小の整数を最小値とする（１１０１）。次に、Ｆ［１］に含まれないＸｔの項目の種類数と、ＸのＸｔ以外の属性の属性値数の積との積を算出し、該値と該Ｒを比較して小さい値を最大値とする（１１０２）。最後に、該最小値と最大値を返す（１１０３）ことによって、元データの未処理レコードからデータ粒度Ｘのレコード数の範囲を算出する処理を終了する。
【００４５】
図６に戻り、データ粒度別パターン抽出処理の処理手順６０２を説明する。図１２は、図６におけるデータ粒度別パターン抽出処理６０２の手順を説明するフローチャートである。データ粒度別パターン抽出処理では、探索する候補となるパターンを作成し、該パターンと個々の属性に着目し、該属性を含むデータ粒度毎に該パターンの頻度の範囲を算出する。はじめに、１以上の項目の組合せを作成して候補パターンとし（１２０１）、次に、元データを構成する１つの属性を選出し（１２０２）、該属性を含むデータ粒度における該候補パターンの頻度の範囲を算出する（１２０３）。算出された頻度の範囲をデータ粒度情報１１１に保持する（１２０４）。すべての属性の組合せに対する処理が完了した時点（１２０５）で該候補パターンに対する処理を終了する。すべての候補となるパターンに対する処理が終了した時点（１２０６）でパターン抽出処理を終了する。
【００４６】
図１３は、図１２における、k個の項目からなるパターンpのｎ個の属性の組合せＸをレコードの単位とするデータ粒度における頻度を算出する頻度算出処理１２０３の手順を詳細に説明するフローチャートである。はじめに、対象とする項目の組合せである候補パターンｐを作成し（１３０１）、さらに、対象とするデータ粒度の属性の組合せをＸとし（１３０２）、メモリのデータ粒度情報１１１のデータ粒度Ｘに対するパターンｐの情報を初期化する（１３０３）。そして、Ｘに含まれる１つの属性をＸｔとし（１３０４）、Ｘｔの１つの項目をｘとする（１３０５）。ここで、Ｘｔを選択する順序はメモリ１０２の元データ情報１０９の属性の処理順序の逆順とする。次に、パターンｐと属性ｘを含む（ｎ−１）個の項目からなる頻出パターンをメモリ１０２の頻出パターン１１０の類似パターンへのリンクを辿ることによって選出して、ｆｐ［ｎ−１］とし（１３０６）、パターンｐとｎ個の属性からなる頻出パターンＦｐ［ｎ］とＦｐ［ｎ］のうちｆｐ［ｎ−１］を含む頻出パターンを用いてデータ粒度Ｘにおけるパターンｐの頻度の範囲算出し、データ粒度情報１１１のデータ粒度Ｘにおけるパターンｐの頻度の最小値と最大値に加算する（１３０７）。ここで、ｈ個の項目の組合せからなるパターンｑとＭ個の属性からなる頻出パターンをＦｑ［ｍ］と表現する。次に、ｉを１以上の整数とし、ｆｐ［ｎ−１］に含まれるＸからメモリ１０２の元データ情報１０９の属性の処理順に従って選出したＸｔ以外の属性をＸ’、ｊをｉに１加算した値とし（１３０９）、メモリ１０２の頻出パターン情報１１０の上位パターンへのリンクを辿ることによってｆｐ［ｎ−ｉ］からＸ’以外の属性からなる頻出パターンｆｐ［ｎ−ｊ］を選出する（１３１０）。メモリ１０２の頻出パターン情報１１０の類似パターンへのリンクを辿ることによってＦｐ［ｎ−ｉ］のうちｆｐ［ｎ−ｊ］を含む頻出パターンｆｐ’［ｎ−ｉ］選出し（１３１１）、Ｘ’とＦｐ［ｎ−ｉ］とｆｐ［ｎ−ｊ］とｆｐ’［ｎ−ｉ］とからデータ粒度Ｘにおけるパターンｐの頻度の範囲を算出し、メモリ１０２のデータ粒度情報１１１のデータ粒度Ｘにおけるパターンｐの頻度の最小値と最大値に加算する（１３１２）。ｆｐ［ｎ−ｊ］がパターンｐと項目ｘの組合せと等しくなるまで以上の処理を続ける（１３１３）。さらに、Ｘのすべての属性をＸｔとして処理するまで処理を続ける（１３１４）。最後に、パターンｐに対するデータ粒度Ｘについて、以上の処理で調べられなかった元データのレコードからデータ粒度Ｘにおけるパターンｐの頻度の範囲を算出し、メモリ１０２のデータ粒度情報１１１のデータ粒度Ｘにおけるパターンｐの頻度の最小値と最大値に加算する（１３１５）。以上の処理によって、データ粒度Ｘにおけるパターンｐの頻度の最小値と最大値が算出され、メモリ１１１のデータ粒度情報１１１に保持される。
【００４７】
図１４は、図１３におけるＦｐ［ｎ］とｆｐ［ｎ−１］からパターンｐの頻度の範囲を算出する処理（１３０７）の処理手順を詳細に説明するフローチャートである。はじめに、ｆｐ［ｎ−１］の頻度と、Ｆｐ［ｎ］の頻度の総和の差分Ｓを算出する。該Ｓをメモリ１０２の頻出パターン情報１１０の最小頻度の値より１小さい整数で割った値以上の最小の整数を算出し、最小値とする（１４０１）。次に、Ｆｐ［ｎ］の属性のうちｆｐ［ｎ−１］に含まれない属性の属性値数の積と、Ｆｐ［ｎ］のうちｆｐ［ｎ−１］を含む頻出パターンの種類数との差分を算出し、該差分と該Ｓを比較して小さい値を最大値とする（１４０２）。最後に、該最小値と最大値を返す（１４０３）ことによって、Ｆｐ［ｎ］とｆｐ［ｎ−１］からパターンｐの頻度の範囲を算出する処理を終了する。
【００４８】
また、図１５は、図１３におけるＸ’とＦｐ［ｎ−ｉ］とｆｐ［ｎ−ｊ］とｆｐ’［ｎ−ｉ］とからレコード数の範囲を算出する処理（１３１２）の処理手順を詳細に説明するフローチャートである。はじめに、Ｆｐ’［ｎ−ｉ］の頻度をメモリ１０２の頻出パターン情報１１０の最小頻度の値より１小さい整数で割った値以上の最小の整数を算出し、最小値とする（１５０１）。また、Ｆｐ［ｎ］の属性のうちｆｐ’［ｎ−ｉ］に含まれない属性の属性値数の積を算出し、最大値とする（１５０２）。次に、ｆｐ［ｎ−ｊ］の頻度と、Ｆｐ［ｎ−ｉ］のうちｆｐ［ｎ−ｊ］を含む頻出パターンＦｐ’［ｎ−ｉ］の頻度の総和との差分をＳ’とし、該Ｓ’をメモリ１０２の頻出パターン情報１１０の最小頻度の値より１小さい整数で割った値以上の最小の整数を該算出した最小値に加算する（１５０３）。また、Ｘ’の属性値数とＦｐ［ｎ−ｉ］の種類数との差分と、Ｆｐ［ｎ］の属性のうちｆｐ［ｎ−ｉ］に含まれない属性の属性値数の積との積を算出し、該算出した値と該Ｓ’を比較して小さい値を該算出した最大値に加算する（１５０４）。最後に、該最小値と最大値を返す（１５０５）ことによって、Ｘ’とＦｐ［ｎ−ｉ］とｆｐ［ｎ−ｊ］とｆｐ’［ｎ−ｉ］とからレコード数の範囲を算出する処理を終了する。
【００４９】
また、図１６は、図１３におけるパターンｐに対する元データの未処理レコードからデータ粒度Ｘにおけるパターンｐの頻度の範囲を算出する処理（１３１５）の処理手順を詳細に説明するフローチャートである。はじめに、メモリ１０２の頻出パターン情報１１０の頻出パターンにおけるパターンｐの頻度と、Ｆｐ［１］に含まれるＸｔの項目の頻度の総和との差分Ｒを算出し、該Ｒをメモリ１０２の頻出パターン情報１１０の最小頻度の値より１小さい整数で割った値以上の最小の整数を最小値とする（１６０１）。次に、Ｆｐ［１］に含まれないＸｔの項目の種類数と、ＸのＸｔ以外の属性の属性値数の積との積を算出し、該値と該Ｒを比較して小さい値を最大値とする（１６０２）。最後に、該最小値と最大値を返す（１６０３）ことによって、パターンｐに対する元データの未処理レコードからデータ粒度Ｘにおけるパターンｐの頻度の範囲を算出する処理を終了する。
【００５０】
ここで、図１３、図１４、図１５、図１６に示したデータ粒度Ｘにおけるパターンｐの頻度の範囲を算出する処理において、パターンｐが元データにおける頻出パターン情報に含まれない場合、パターンｐを構成する項目からなる部分パターンｑについて、頻度が最小の頻出パターンに置き換えることによって処理を行う。パターンｑが１項目となる場合、メモリ１０２の元データ情報１０９に保持された項目の頻度を利用しても良い。
【００５１】
再び、図６に戻り、データ粒度別ルール抽出処理６０３の処理手順を説明する。ここで、ＸとＹをそれぞれ１以上の項目の組合せとし、ＸとＹは共通する項目を含まないとする。ルールはＸ＝＞Ｙで表現し、Ｘを前提条件、Ｙを結論条件と呼び、Ｘの条件が成り立つときに、Ｙの条件も同時に成り立つということを意味する。 ルールは評価値として確信度の値を持ち、確信度はＸとＹのすべての項目からなるパターンの頻度をＸの項目からなるパターンの頻度で割った値で算出される。図１７は、図６におけるデータ粒度別ルール抽出処理６０３の手順を詳細に説明するフローチャートである。はじめに、メモリ１０２のデータ粒度情報１１１から任意のデータ粒度Ｘにおけるパターンｐについて、構成する項目の組合せ、頻度の最小値と最大値を取得する（１７０１）。さらに、該パターンｐを構成する項目の１以上の項目の組合せｑについて、メモリ１０２のデータ粒度情報１１１から任意のデータ粒度Ｘにおけるパターンｑの頻度の最小値と最大値を取得する（１７０２）。次に、パターンｑの項目を前提条件、パターンｐに含まれるがｑに含まれない項目の組合せを結論条件とするルールｑ＝＞（ｐ−ｑ）を作成する。そして、該ルールの確信度をパターンｐとｑの頻度の最小値と最大値から算出する。該ルールの確信度の最小値はパターンｐの頻度の最小値をパターンｑの頻度の最大値で割った値から算出され、該ルールの確信度の最大値はパターンｐの頻度の最大値をパターンｑの頻度の最小値で割った値から算出される（１７０４）。最後に、導出したルールと該ルールの確信度の最小値と最大値をメモリ１０２のデータ粒度情報１１１のデータ粒度Ｘにおけるルールとして保持する（１７０５）。パターンｐに対するすべての部分パターンについて以上の処理を繰り返す（１７０６）。さらに、すべてのデータ粒度に対して以上の処理を繰り返す（１７０７）。
【００５２】
図３に戻り、データ処理内容を出力部１０５に出力する。メモリ１０２のデータ粒度情報１１１に保持された、それぞれのデータ粒度について、該データ粒度のレコードの単位とした属性の組と、該データ粒度におけるレコードの範囲と、該データ粒度におけるパターンとその評価値の範囲とルールとその評価値の範囲と、を出力する。出力するデータ粒度は、入力部１０４の粒度絞り込み部２０４で指定された属性または項目または属性数の範囲を満たすデータ粒度のみに限定しても良い。出力するパターンとルールはデータ粒度情報１１１に保持されたすべての情報を出力するのではなく、所定の数のパターンとルールを表示することでも良く、パターンは入力部１０４のパターン絞り込み部２０３に指定された属性、項目を含むパターンに、ルールは入力部１０４のルール絞り込み部２０５に指定された属性、項目を含むルールに限定しても構わない。ここで、データ粒度、パターン、ルールのいずれかが絞り込まれ、限定された場合、対応する情報も限定して出力する。出力部１０５に出力するデータ粒度のデータ規模をレコード数としたが、レコード数を元データの数で割った値である割合を出力しても良い。また、出力部１０５に出力するパターンの評価値を頻度としたが、頻度を対応するデータ粒度のレコード数で割った値である支持度を出力しても良い。さらに、出力部１０５に出力するルールの評価値を確信度としたが、確信度だけでなく、ルールを構成する項目の組合せからなるパターンの頻度、該頻度を対応するデータ粒度のレコード数で割った値である支持度も出力しても良い。
なお、以上で説明した実施例１では、メモリ１０２の元データ情報の属性の処理順序を利用したが、頻出パターン情報１１０の類似パターンへのリンクをすべての類似パターンに対して張ることによって、属性の処理順序が不定であっても同様に分析支援処理を実施することが可能である。また、メモリ１０２の頻出パターン情報１１０に木構造を利用したが、表やリストの形でメモリに保持し、表やリストを検索することによって頻出パターンのリンクを辿ることと同様の処理が可能であり、同様の分析支援処理を実施することが可能である。
【００５３】
また、データ粒度別データ規模算出処理６０１、データ粒度別パターン抽出処理６０２、データ粒度別ルール抽出処理６０３で、レコード数、頻度、確信度を獲得するために算出した中間結果をメモリ１０２または記憶装置１０３に保持し、保持された値を再利用することによって同様の分析し線処理を実施することも出来る。
【実施例２】
【００５４】
次に、第２の実施例として、元データ情報と頻出パターン情報が既知でない場合の分析支援処理を説明する。
【００５５】
図１８は、第２の実施例のデータ分析支援システムの機能構成を示す図である。このシステムは、処理部であるコンピュータ１００にデータ分析機能１８０１、頻出パターンマイニング機能１８０２、データ分析支援機能１８０３、粒度データ作成機能１８０４が配置され、分析対象の元データはデータ格納部１８０５に格納される。図１８のデータ格納部１８０５は図１の記憶装置１０３、入力部１８０６は入力装置１０４、出力部１８０７は出力装置１０５に対応している。
【００５６】
図１９に本実施例におけるデータ分析処理の全体処理手順を説明するフローチャートである。
【００５７】
全体のデータ分析支援処理は図３と等しいが、元データ前処理１９０１の内容は図３の元データ前処理３０１と異なる。はじめに、元データの情報および頻出パターン情報を獲得するための元データ前処理１９０１を頻出パターンマイニング機能１８０２で実行する。次に、データ粒度内容算出処理３０２をデータ分析支援機能１８０３で実行し、指定された粒度データを粒度データ作成機能１８０４で作成する（１９０２）。その後に、データ分析処理をデータ分析機能で実行し（１９０３）、分析結果を獲得する。ここで、データ粒度内容算出処理は図３と同様である。
【００５８】
図２０は、図１９の元データ前処理１９０１の処理手順を詳細に説明するフローチャートである。はじめに、メモリ１０２の元データ情報１０９と頻出パターン情報１１０を初期化し、空にする（２００１）。次に、データ格納部１８０５から元データを読み出し、属性の種類と項目の種類のリストを作成し、メモリ１０２の元データ情報１０９に保持する。それと同時に、各項目が含まれる元データのレコード数を数え上げ、該レコード数を項目の頻度として、メモリ１０２の元データ情報１０９に保持する（２００２）。次に、元データに対する頻出パターンマイニングを頻出パターンマイニング機能１８０２で実行し、所定の最小頻度を満たす頻出パターンを獲得し、メモリ１０２の頻出パターン情報１１０に保持する（２００３）。ここで、最小頻度は入力部１８０５で指定された閾値を利用しても構わない。頻出パターンマイニング処理は非特許文献１などの方法によって、データ格納部１８０５に格納された元データを読み出し、項目の組合せの頻度を数え上げることによって、頻出パターンを抽出する。
【００５９】
図２１は、図１９における粒度データ作成処理１９０２の処理手順を説明するフローチャートである。はじめに、粒度とする属性の組を入力部から取得する（２１０１）。データ格納部１８０５から元データのレコードを読み出し（２１０２）、該属性の組に対応する項目の組合せ（粒度パターンと呼ぶ）を作成し、メモリ上の対応する粒度パターンのデータとして保持する（２１０３）。元データの全レコードに対する処理を行い（２１０４）、最後に粒度パターン毎のデータを分析対象データとしてデータ格納部に格納する（２１０５）。
図２２は、図１９におけるデータ分析処理１９０３の処理手順を説明するフローチャートである。はじめに、分析の条件を入力部１８０６から取得する（２２０１）。次に、データ格納部１８０５に格納された分析対象データを読み出して分析処理を実行し（２２０２）、分析結果を出力部１８０７に出力する（２２０３）。分析条件を変更した再分析の指示がある場合（２２０４）には、以上の処理を再び実行する。分析条件を変更しながら分析処理を繰り返すことによって、求める分析結果を獲得する。
【００６０】
ここで、比較のために、従来のデータ分析の処理手順を図２３に示す。はじめに、指定された粒度のデータを作成し（１９０２）、該作成したデータに対するデータ分析処理を行う（１９０３）。該作成したデータに対して分析条件を変更しながら分析処理を繰り返しても求める分析結果を獲得出来ない場合には、粒度の属性の組を変更した新たなデータを作成し（１９０２）、再びデータ分析処理（１９０３）を行う。このように、求める分析結果を獲得するために、従来は粒度データ作成処理が繰り返されていた。
【００６１】
以上のように、本実施例によると、頻出パターンマイニング機能と連携することによって、頻出パターン情報が未知の場合にもデータ分析支援が可能である。さらに、データ粒度に関する情報を事前に出力することによって、粒度データ作成処理の繰り返しを回避し、データ分析処理全体の処理量を削減することが出来る。
【産業上の利用可能性】
【００６２】
以上詳述した本発明は、データベース、データウェアハウス及びデータファイルを対象としたデータ分析支援システム及び方法に関し、特に詳細なデータ分析に利用するデータレコードを作成するためにデータのレコードを分析してレコードに含まれるデータの規則性を明らかにするデータ分析支援技術として有用である。
【符号の説明】
【００６３】
１００…コンピュータ
１０１…プロセッサ
１０２…メモリ
１０３…記憶装置
１０４…入力装置
１０５…出力装置
１０６…データ粒度別データ規模算出プログラム
１０７…データ粒度別パターン抽出プログラム
１０８…データ粒度別ルール算出プログラム
１０９…元データ情報
１１０…頻出パターン情報
１１１…最小頻度情報
１１２…データ粒度情報
１８０１…データ分析機能
１８０２…頻出パターンマイニング機能
１８０３…データ分析支援機能
１８０４…粒度データ作成機能
１８０５…データ格納部
１８０６…入力部
１８０７…出力部
２００…ユーザインタフェース
２０１…元データ指定部
２０２…粒度絞り込み部
２０３…パターン絞り込み部
２０４…ルール絞り込み部
２０５…粒度内容表示ボタン
２０６…データ粒度内容表示部
２０７…粒度選択ボタン
２０８…粒度データ作成ボタン。
【図１】
0005588811.tif 000005
【図２】
0005588811.tif 000006
【図３】
0005588811.tif 000007
【図４】
0005588811.tif 000008
【図５】
0005588811.tif 000009
【図６】
0005588811.tif 000010
【図７】
0005588811.tif 000011
【図８】
0005588811.tif 000012
【図９】
0005588811.tif 000013
【図１０】
0005588811.tif 000014
【図１１】
0005588811.tif 000015
【図１２】
0005588811.tif 000016
【図１３】
0005588811.tif 000017
【図１４】
0005588811.tif 000018
【図１５】
0005588811.tif 000019
【図１６】
0005588811.tif 000020
【図１７】
0005588811.tif 000021
【図１８】
0005588811.tif 000022
【図１９】
0005588811.tif 000023
【図２０】
0005588811.tif 000024
【図２１】
0005588811.tif 000025
【図２２】
0005588811.tif 000026
【図２３】
0005588811.tif 000027