JP6244274B2 - 相関ルール分析装置および相関ルール分析方法 - Google Patents

相関ルール分析装置および相関ルール分析方法 Download PDF

Info

Publication number
JP6244274B2
JP6244274B2 JP2014135511A JP2014135511A JP6244274B2 JP 6244274 B2 JP6244274 B2 JP 6244274B2 JP 2014135511 A JP2014135511 A JP 2014135511A JP 2014135511 A JP2014135511 A JP 2014135511A JP 6244274 B2 JP6244274 B2 JP 6244274B2
Authority
JP
Japan
Prior art keywords
correlation rule
rule
aggregation
correlation
column
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014135511A
Other languages
English (en)
Other versions
JP2016014944A (ja
Inventor
康範 橋本
康範 橋本
敬志 大島
敬志 大島
博文 団野
博文 団野
三部 良太
良太 三部
山口 潔
潔 山口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2014135511A priority Critical patent/JP6244274B2/ja
Priority to US14/614,006 priority patent/US20160004968A1/en
Priority to CN201510064731.7A priority patent/CN105320720B/zh
Publication of JP2016014944A publication Critical patent/JP2016014944A/ja
Application granted granted Critical
Publication of JP6244274B2 publication Critical patent/JP6244274B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Fuzzy Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報システムの開発等のために、対象である情報システムで利用するDB(Database)の仕様を把握するための相関ルールを分析するための技術に関する。
本技術分野の背景技術として、特開平11−259567(特許文献1)がある。この公報には、相関ルールを分析するために、「競合する事象のデータセットを抽出でき、発生比率が低くても関連性が強いというデータセットを探索できる技術を提供する」ことが記載されている(要約参照)。
特開平11−259567号公報
情報システムの開発や保守においては、DB(Database)の仕様を理解することが重要となる。DBの仕様には、明示的に仕様書に記載されるものもあるが、暗黙的に規定されるものもある。暗黙的な仕様を理解するためには、DBのデータから特徴を抽出する技術が有効である。具体的には、バスケット解析を用いることで、データの同時出現関係の規則(相関ルール)から、DBが保持するデータが満たすべき依存関係・制約条件(仕様の一側面)を見つけることができる。なお、本発明では、DBとして特にRDB(Relational Database)を想定する。このときバスケット解析により、カラム間に存在するデータ依存関係・制約条件を見つけることができる。
たとえば、あるRDBのテーブルにおいて、『「削除フラグ」の値が「1」のときには、必ず「削除年月日」の値がNULLでない』という相関ルールをバスケット解析によって見つけることができれば、『「削除フラグ」が「1」のとき、「削除年月日」の値は必須である』という仕様の存在を推測することができる。
一般に、バスケット解析では、大量の相関ルールが出力されることが多い。このため、人間が確認する際の手間を削減するための工夫が必要になる。抽出された相関ルールを(1)集約することによって、相関ルールの総数を減らしたり、また、(2)機械的にスコアリングすることで、フィルタリング・ランキング(ソート)できるようにしたり、といった手段が用いられる。
このうち(2)スコアリングについては、相関ルールの指標値である支持度(Support)、確度(Confidence)、リフト値(Lift)といった値が用いられることが多い。また、前記特許文献1には、「期待関連指数」「関連強さ指数」などの指標により、「従来のバスケット解析で低い評価となるが有用なルール」を、スコアに反映する方法について述べている。
しかしながら、これら従来の方法で数値化するものは、個々の相関ルールとしての有用性のみであり、カラム間に存在する仕様としての有用性を示す指標とはなっていない。カラム間に存在する仕様は複数の相関ルールから構成されるため、このような指標のみでは不十分であるという問題点がある。
また、従来の方法によって数値化した指標値は、あらゆる相関ルールを画一的に扱うものであり、仕様としての特性を踏まえた指標値ではない。具体的には、データの対応関係を示す相関ルール(例:「年休フラグ」が「1」のとき「代休フラグ」は「0」である)と、データの大小関係を示す相関ルール(例:「売価」が「105」のとき「材料費」が「30」である)とでは、同じ方法で評価値を算出することになる。このため、相関ルールの有用性を適切に示す評価値を算出できないという問題点がある(具体的には、実施例において説明する)。
そこで本発明は、複数の相関ルールを統合し、また、データの特性を踏まえた観点での評価値を出力することで、RDBテーブルのカラム間に存在する仕様としての有用性を数値化する仕組みを提供する。これにより、RDBの仕様としての観点から、相関ルールを適切にスコアリングすることを目的とする。
上記課題を解決するために、本発明では、上述のスコアリングとして、データについての条件の出現割合と、制約を満たす割合の比率を用いるものである。この結果を相関ルールの集約に用いることが可能になる。より詳細には、以下の構成を採用する。 データベースに格納されたデータから、当該データベースのDBカラムのデータ依存関係や制約条件等のいずれかを少なくとも抽出する相関ルール分析装置であって、分析対象であるデータが格納されたDBテーブルデータから、複数カラム間のデータの同時出現関係の情報を相関ルールとして抽出する相関ルール抽出手段と、抽出した相関ルールを特定の共通性に基づいて集約する相関ルール集約手段と、集約された各相関ルールの出現頻度および組み合わせから、データ依存関係および制約条件の少なくとも一方を含む有用性指標を算出する集約結果妥当性判定手段を有するものである。ここで、本願明細書では、「同時出現関係」とは、一方が出現した際、他方も出現することを意味し、必ずしも時間的に一致して出現しなくともよい。なお、本発明には、方法や上記装置を実現させるためのコンピュータプログラムも含まれる。
本発明によれば、RDBの仕様としての観点から、RDBのデータから抽出した相関ルールをスコアリングすることができる。これにより、例えば本発明の利用者が、RDBの仕様を分析する際に、その仕様を示す情報である相関ルールを、適切にランキングしたりフィルタリングしたりしながら確認するための付加情報を提供することができる。このため、RDBの仕様の分析作業を効率化することができる。
本発明の一実施例における相関ルール分析装置の構成図の例である。 本発明の一実施例における相関ルール分析装置の処理を説明するフローチャートの例である。 本発明の一実施例におけるデータベースから読み込むテーブルのデータを説明するイメージ図の例である。 本発明の一実施例におけるカラム値の出現回数をカウントする処理を説明するイメージ図の例である。 本発明の一実施例におけるカラム特性判定規則を説明するイメージ図の例である。 本発明の一実施例におけるカラム特性情報を作成する処理を説明するイメージ図の例である。 本発明の一実施例におけるカラム値の組の出現回数をカウントする処理を説明するイメージ図の例である。 本発明の一実施例における相関ルール集約規則を説明するイメージ図の例である。 本発明の一実施例における相関ルール集約規則を選択する処理を説明するイメージ図の例である。 本発明の一実施例における相関ルール集約名を導出する処理を説明するイメージ図の例である。 本発明の一実施例における相関ルールを再構成する処理を説明するイメージ図の例である。 本発明の一実施例における再構成した相関ルールの原因側件数情報を補完する処理を説明するイメージ図の例である。 本発明の一実施例における再構成した相関ルールの結果側件数情報を補完する処理を説明するイメージ図の例である。 本発明の一実施例における相関ルールの情報を補完する処理を効率的におこなうために用いるカラム値出現回数を説明するイメージ図の例である。 本発明の一実施例における相関ルールの情報から指標値を算出して更新する処理を説明するイメージ図の例である。 本発明の一実施例における相関ルールを集約する処理を説明するイメージ図の例である。 本発明の一実施例における相関ルール集約結果についてLiftによる差異を説明するイメージ図の例である。 本発明の一実施例における相関ルール集約結果の情報を補完する規則を説明するイメージ図の例である。 本発明の一実施例における相関ルール集約結果の情報を補完する処理を説明するイメージ図の例である。 本発明の一実施例における相関ルール集約結果を視覚的に理解容易な形式に変換する処理を説明するイメージ図の例である。
以下、本発明の一実施例実施例を図面を用いて説明する。
本実施例では、相関ルール分析装置の例を説明する。
図1は、本実施例の相関ルール分析装置の構成図の例である。本相関ルール分析装置100は、CPU101、メモリ102、入力装置103、出力装置104、外部記憶装置105を有する。すなわち、いわゆるコンピュータで実現されるものである。外部記憶装置105は、分析対象テーブルデータ記憶部106、カラム値出現回数記憶部121、カラム特性判定規則記憶部107、カラム特性記憶部108、相関ルール集約規則記憶部109、相関ルール記憶部110、相関ルール集約結果記憶部111、集約後相関ルール評価規則記憶部112を保持しており、さらに処理プログラム113を保持する。処理プログラム113は、カラム値出現回数カウント処理部122、カラム特性判定部114、相関ルール集約規則判定部115、相関ルール抽出処理部116、相関ルール集約前処理部117、相関ルール集約処理部118、集約結果妥当性判定部119、集約結果視覚化処理部120を保持する。
処理プログラム113は実行の際にはメモリ102に読み込まれ、CPU101によって実行されるものとする。なお、その処理内容は、フローチャートを用いて後述する。
カラム特性判定規則記憶部107、相関ルール集約規則記憶部109、集約後相関ルール評価規則記憶部112には、それぞれ予めカラム特性判定規則、相関ルール集約規則、集約後相関ルール評価規則を入力しておく、カラム特性判定規則、相関ルール集約規則、集約後相関ルール評価規則の詳細については、後述する。
入力装置103を介して外部から入力されたRDBテーブルのデータは、分析対象テーブルデータ記憶部106に書き込む。
カラム値出現回数カウント処理部122は、分析対象テーブルデータ記憶部106から読み出したカラムのデータを参照しながら、各カラムのデータの出現回数をカウントし、結果をカラム値出現回数記憶部121に書き込む。
カラム特性判定部114は、カラム値出現回数記憶部121から読み出したカラム値の出現回数を参照しながら、カラム特性判定規則記憶部107から読み出したカラム特性判定規則を用いてカラム特性情報を作成し、カラム特性記憶部108に書き込む。
相関ルール抽出処理部116は、分析対象テーブルデータ記憶部106から読み出したカラムのデータを参照しながら、各カラムの値の組の出現回数をカウントし、結果を相関ルール記憶部110に書き込む。
カラム特性集約規則判定部115は、カラム特性記憶部108から読み出したカラム特性情報を参照しながら、相関ルール集約規則記憶部109から読み出した相関ルール集約規則を用いて相関ルール集約規則を選択し、相関ルール記憶部110が保持する相関ルールの情報に書き込む。また、カラム特性集約規則判定部115は、選択された相関ルール集約規則を用い、抽出済みの各相関ルールに対する相関ルール集約名を導出し、相関ルール記憶部110が保持する相関ルールの情報に書き込む。
相関ルール集約前処理部117は、相関ルール記憶部110から読み出した相関ルールを、再構成し、相関ルール記憶部110の情報を更新する。また、相関ルール集約前処理部117は、相関ルール記憶部110から相関ルールを読み出し、カラム値出現回数記憶部121から読み出したカラム値出現回数、および、相関ルール集約規則記憶部109から読み出した相関ルール集約規則を参照して必要な数値を算出することで、情報を補完した後、再度、相関ルール記憶部110の相関ルールとして書き込む。さらに相関ルール集約前処理部117は、相関ルール記憶部110から読み出した相関ルールの情報を用いて、相関ルールの指標値を算出し、相関ルールの情報を更新した後で、再度、相関ルール記憶部110の相関ルールとして書き込む。
相関ルール集約処理部118は、相関ルール記憶部110から読み出した相関ルールの情報を、相関ルールの集約名の共通性に基づいて集約した後、集約後相関ルールとして相関ルール集約結果記憶部111に書き込む。
集約結果妥当性判定部119は、相関ルール集約結果記憶部111から読み出した集約後相関ルールの情報を参照し、集約後相関ルール評価規則記憶部112から読み出した集約後相関ルール評価規則の情報を用いて補完した後、再度、集約後相関ルール記憶部111に書き込む。
集約結果視覚化処理部120は、装置の利用者の指示に従い、相関ルール集約結果記憶部111から相関ルール集約結果を読み出し、視覚的に理解容易な形式に変換した後、出力装置104に出力する。
図2は、本実施例の相関ルール分析装置の処理を説明するフローチャートの例である。以降、図2のフローチャートに基づいて、図1の各部の動作を説明する。
ステップ201は、相関ルール分析装置への入力情報として、RDBテーブルのデータを入力するステップである。入力操作は、装置の利用者が実施する。ステップ201では、入力装置103から入力されたRDBのデータのうち、1テーブルに対応するデータを、分析対象テーブルデータ記憶部106に書き込む。
図3は、本実施例のデータベースから読み込むテーブルのデータを説明するイメージ図の例である。入力データ300は、計10行のレコードを保持しており、各レコードは4つのカラム「更新年月日」301、「承認年月日」302、「作成者生年月日」303、「承認者生年月日」304のデータを持つ。また、ヘッダ行305には、各カラムを特定するための識別子が与えられているものとする。なお、ヘッダ行305に対応する情報は、入力情報として必須ではない。当該情報が分析装置への入力情報として与えられない場合には、分析装置100内でカラム毎にユニークなIDを機械的に付与し、ヘッダ行305用の代替情報とし、以下のステップを進めればよい。
ステップ202は、相関ルール分析装置への入力情報として、分析対象のカラムの組を選択するステップである。選択操作は、装置の利用者が実施する。
カラムの組の情報は、「原因側カラム」「結果側カラム」の組によって構成される。「原因側カラム」「結果側カラム」については、本実施例のステップ205の説明、および、それ以降のステップの説明において記載する。本実施例では、以下、特に説明のない限り、装置の利用者が「原因側カラム」として「更新年月日」301を、また、結果側カラム名として「承認年月日」302を選択した場合を想定して説明をおこなう。なお、本ステップを省略し、各カラムの組み合わせそれぞれを分析対象とするとういうことでも良い。
以下のステップ203から209までは、入力情報をもとにした機械的な処理であり、人手を介することなくデータベース分析装置のみで実施できる処理である。
ステップ203では、カラム値出現回数カウント処理部122が、分析対象テーブルデータ記憶部106から読み出したカラムのデータを参照しながら、各カラムのデータの出現回数をカウントし、結果をカラム値出現回数記憶部121に書き込む。
図4は、本実施例のカラム値の出現回数をカウントする処理を説明するイメージ図の例である。カラム値出現回数カウント処理部122は、入力データ300が保持するカラムのうち、ステップ202で選択されたカラムの組に含まれる各カラムについて、それぞれカラム値出現回数情報を作成する。図4に記載のカラム値出現回数情報400は、図3に記載の「更新年月日」カラム301に対応するものである。カラム値出現回数情報400は、カラム値401および出現数402を保持する。カラム値特性情報判定部106は、「更新年月日」カラム301の値を重複排除した上で、カラム値401の情報として保存する。また、カラム値特性情報判定部106は、「更新年月日」カラムのカラム値401の各値の出現回数を、「更新年月日」カラム301を参照することによってカウントし、出現数402の情報として登録する。
図4は「更新年月日」301に関する処理の説明であったが、ステップ202で選択したカラムの組に含まれる「承認年月日」302に関しても、同様の処理をおこなう。
ステップ204では、カラム特性判定部114が、カラム値出現回数記憶部121から読み出したカラム値の出現回数を参照しながら、カラム特性判定規則記憶部107から読み出したカラム特性判定規則を用いてカラム特性情報を作成し、カラム特性記憶部108に書き込む。
図5は、本実施例のカラム特性判定規則を説明するイメージ図の例である。カラム特性判定規則500は、カラム特性名501、マッチ条件502を持つ。カラム特性名501は、カラム特性を特定する、ユニークなIDである。マッチ条件502は、ある値が当該カラム特性を持つと判定されるための条件を示すものであり、図5においては正規表現で示している。これは、あるカラムの出現値が一定割合以上、前記正規表現にマッチする文字列であった場合に、当該カラム特性である、と判定するということを意味している。本実施例においては、前記「一定の割合」は、カラム特性によらない閾値であり、80%であるものとする。なお、この閾値は、カラム特性毎に異なる値を用いても良い。
また、本実施例のように、カラムの値が文字列で与えられる場合、それを量的な値に変換するための関数として、変換ロジック503を持っていても良い。本実施例の以降では、特に断りがない場合でも、カラム値を半順序関係上で扱う場合においては、このような変換ロジックによって変換した後で評価・処理しているものとする。
図6は、本実施例のカラム特性情報を作成する処理を説明するイメージ図の例である。カラム特性情報600は、カラム名601およびカラム特性名602を持つ。カラム特性判定部114は、カラム値出現回数情報400に該当するカラム名を、カラム名601として記録する。また、カラム特性名602の判定のため、カラム特性判定部114は、各カラムについて、各カラム特性に対するマッチ条件502を満たすデータの割合を算出する。本実施例においては、「更新年月日」のカラム値401に対しては、カラム特性名「年月日」の場合に、各データがマッチし、100%となる。このマッチ割合が閾値80%を超えていることから、「更新年月日」のカラム特性は「年月日」であると判定し、判定結果のカラム特性名501をカラム特性情報600のカラム特性名602として記録する。
なお、前記割合の算出においては、出現実数によって算出しても良いし、出現種数によって算出しても良い。
また、前記割合が、複数のカラム特性に対して一定以上となった場合については、前記割合が最高であるカラム特性を選択する、などによってひとつを決定すればよい。もしくは、ひとつのカラムが複数のカラム特性を持つものとして、カラム特性のそれぞれを採用するのでも良い。本実施例においては、簡便さのため、ひとつのカラムがひとつのカラム特性を持つものとして、以降のステップを説明する。
ステップ205では、相関ルール抽出処理部116が、分析対象テーブルデータ記憶部106から読み出したカラムのデータを参照しながら、各カラムの値の組の出現回数をカウントし、結果を相関ルール記憶部110に書き込む。
図7は、本実施例のカラム値の組の出現回数をカウントする処理を説明するイメージ図の例である。カラム間相関ルール情報700は、原因側カラム名701、結果側カラム名702、原因側値704、結果側値705、件数706、集約規則707、原因側件数708、結果側件数709、Lift値710を保持する。うち、ステップ205では、原因側カラム名701、結果側カラム名702、原因側値704、結果側値705、件数706の情報の登録をおこなう。
相関ルール抽出処理部116は、ステップ202で選択された「原因側カラム」「結果側カラム」のカラム名を、それぞれ原因側カラム名701、結果側カラム名702として登録する。さらに相関ルール抽出処理部116は、入力情報300のうち、それぞれ原因側カラム・結果側カラムである「更新年月日」301と「承認年月日」302について、組み合わせの重複排除をした上で、原因側値704、結果側値705の値の組として、保存する。また、相関ルール抽出処理部116は、前述の値の組の出現回数を、「更新年月日」301と「承認年月日」302の値を参照することによってカウントし、件数706の情報として登録する。
ステップ206では、カラム特性集約規則判定部115が、カラム特性記憶部108から読み出したカラム特性情報を参照しながら、相関ルール集約規則記憶部109から読み出した相関ルール集約規則を用いて相関ルール集約規則を選択し、相関ルール記憶部110が保持する相関ルールの情報に書き込む。
さらに、カラム特性集約規則判定部115は、選択された相関ルール集約規則を用い、抽出済みの各相関ルールに対する相関ルール集約名を導出し、相関ルール記憶部110が保持する相関ルールの情報に書き込む。
図8は、本実施例の相関ルール集約規則を説明するイメージ図の例である。相関ルール集約規則800は、集約規則名801と、それに対応する原因側カラム特性名802、結果側カラム特性名803を持つ。また、ひとつの集約規則名801に対し、複数の集約名804、および、集約対象相関ルール判定ロジック805を持つ。集約対象相関ルール判定ロジック805に記載の情報は、いずれも2つの入力値をとり、真偽値を返す、関数の情報となっている。
図9は、本実施例の相関ルール集約規則を選択する処理を説明するイメージ図の例である。カラム特性集約規則判定部115は、カラム間相関ルール情報700が保持する原因側カラム名701、結果側カラム名702に対応する情報を、カラム特性情報600のカラム名601から同じカラム名を探し出すことにより、抽出する。さらにカラム特性集約規則判定部115は、前記カラム名601に対応するカラム特性名602を抽出する。その後、抽出したカラム特性名を原因側カラム特性名802、結果側カラム名803として持つ集約規則を、相関ルール集約規則800から探し出す。図9においては、前記探し出した結果を明示的に示すため、集約規則名801を、カラム間相関ルール情報700の集約規則707の付加情報712として記載している。
図10は、本実施例の相関ルール集約名を導出する処理を説明するイメージ図の例である。
カラム特性集約規則判定部115は、カラム間相関ルール情報700が保持する相関ルール1001のうち、ひとつを選択する。その後、選択された相関ルールの原因値704、結果値704を入力パラメータとして、前述の探し出された集約対象相関ルール判定ロジック805の関数を、順次実行していく。実行により真という結果が得られた場合、その集約名804を、選択中の相関ルールの集約規則707として登録する。実行により偽という結果が得られた場合、真が得られるまで、本処理を繰り返す。関数それぞれについて偽であった場合には、集約規則706は空欄のままでよい。カラム間相関ルール情報700が保持する各相関ルール1001について、同様の処理をおこなうことにより、ステップ206を完了する。
ステップ207では、相関ルール集約前処理部117が、相関ルール記憶部110から読み出した相関ルールを、再構成し、相関ルール記憶部110の情報を更新する。
さらに相関ルール集約前処理部117は、相関ルール記憶部110から相関ルールを読み出し、カラム値出現回数記憶部121から読み出したカラム値出現回数、および、相関ルール集約規則記憶部109から読み出した相関ルール集約規則を参照して必要な数値を算出することで、情報を補完した後、再度、相関ルール記憶部110の相関ルールとして書き込む。
その後、相関ルール集約前処理部117は、相関ルール記憶部110から読み出した相関ルールの情報を用いて、相関ルールの指標値を算出し、相関ルールの情報を更新した後で、再度、相関ルール記憶部110の相関ルールとして書き込む。
図11は、本実施例の相関ルールを再構成する処理を説明するイメージ図の例である。相関ルール集約前処理部117は、カラム間相関ルール情報700が保持する相関ルール1001のうち、同一の原因側値704・同一の集約規則707を持つ相関ルールの組み合わせを抽出する。抽出された相関ルールをひとつにまとめることにより、相関ルールを再構成する。再構成する際には、結果側値705については纏める前のルールが保持していた結果側値を列挙したもの、件数706については纏める前のルールが保持していた件数の和、とする。また、原因側値704、および、集約規則707については、纏める前のルールが保持していた値を用いれば良い。このような処理を、同一の原因側値704・同一の集約規則707を持つ相関ルールがなくなるまで実施することにより、再構成後のカラム間相関ルール情報を作成する。
図12は、本実施例の再構成した相関ルールの原因側件数情報を補完する処理を説明するイメージ図の例である。相関ルール集約前処理部117は、カラム間相関ルール情報700が保持する原因側カラム名701に対応するカラム値出現回数情報400を、カラム値出現回数記憶部121から読み出す。その後、相関ルール情報700が保持する再構成後の相関ルール1201の各々について、その原因側値704に該当する情報を、前述の読み出したカラム値出現回数情報400のカラム値401から探し出し、探し出された結果に対応する出現回数402を、当該の相関ルール1201の原因側件数707として記録する。このような処理を、カラム間相関ルール700が保持する各相関ルール1201について実施することにより、原因側件数708の情報を補完する。
図13は、本実施例の再構成した相関ルールの結果側件数情報を補完する処理を説明するイメージ図の例である。相関ルール集約前処理部117は、カラム間相関ルール情報700が保持する結果側カラム名702に対応するカラム値出現回数情報400を、カラム値出現回数記憶部121から読み出す。その後、相関ルール集約前処理部117は、カラム間相関ルール情報700が保持する再構成後の相関ルール1201のうちひとつを選択し、その集約規則707に該当する集約対象相関ルール判定ロジック805を、相関ルール集約規則記憶部109から読み出した相関ルール集約規則800のうち同一の集約名804を持つ集約規則を探し出すことにより、抽出する。さらに相関ルール集約前処理部117は、選択中である再構成後の相関ルールの原因側値704を第一の入力パラメータ、前記読み出したカラム値出現回数情報400の各カラム値を第二の引数として、前記抽出した集約対象相関ルール判定ロジック805を実行する。実行結果が真となったカラム値に対応する出現回数402の和を、選択中である最高生後の相関ルールの結果側件数709として書き込む。このような操作を、カラム間相関ルール情報700が保持する各再構成後の相関ルール1201に対して実行することにより、結果側件数709の情報を補完する。
図14は、本実施例の相関ルールの情報を補完する処理を効率的におこなうために用いるカラム値出現回数を説明するイメージ図の例である。図13で説明した処理は、図14に記載のカラム値出現回数400のように、半順序関係に基づき、各範囲に該当する値の数をカウントしておくことにより、集約対象相関ルール判定ロジック805の都度の実行を省略できるため、処理を効率化できる。具体的には、まず、カラム間相関ルール情報700の結果側カラム702に対応するカラム値出現回数情報400について、そのカラム値401より前の日付の出現数1401、後の日付の出現数1402を、出現回数402の該当する範囲の値の和を計算することにより、算出する。相関ルール集約前処理部117は、再構成後の相関ルール1201に対する結果側件数709の情報を、原因側値704とカラム値401の対応関係、また、集約規則707の内容を参照し、カラム値出現回数400から対応する箇所を探し出すことで、発見して補完する。
図15は、本実施例の相関ルールの情報から指標値を算出して更新する処理を説明するイメージ図の例である。相関ルール集約前処理部117は、カラム間相関ルール情報700が保持する、各再構成後の相関ルール1201に関し、次の値を計算することで、それぞれの相関ルールのLift値を算出する。
(当該相関ルールの件数/原因側件数) / (結果側件数/相関ルールの件数の合計)
算出した値は、各相関ルールのLift値710として、カラム間相関ルール情報700に書き込む。書き込んだ結果のカラム間相関ルール情報700によって相関ルール記憶部110の情報を更新することにより、本ステップを完了する。
なお、ここでは相関ルールの指標値としてLift値のみを算出しているが、相関ルールの他の指標値であるSupport値、Confidence値などを、本処理で併せて算出しても良い。
ステップ208では、相関ルール集約処理部118が、相関ルール記憶部110から読み出した相関ルールの情報を、相関ルールの集約名の共通性に基づいて集約した後、集約後相関ルールとして相関ルール集約結果記憶部111に書き込む。
図16は、本実施例の相関ルールを集約する処理を説明するイメージ図の例である。相関ルール集約処理部118は、相関ルール記憶部110から読み出したカラム間相関ルール情報700に対する集約後相関ルール1600を作成する。集約後相関ルール1600は、原因側カラム名1601、結果側カラム名1602、有効性1603、集約規則1604、原因側値1605、結果側値1606、件数1607、Lift値1608、Support値1609を持つ。相関ルール集約処理部118は、読み出したカラム間相関ルール情報700の原因側カラム名701を集約後相関ルール1600の原因側カラム名1601として、また、結果側カラム名702を集約後相関ルール1600の結果側カラム名1602として、それぞれ登録する。その後、相関ルール集約処理部118は、カラム間相関ルール情報700が保持する再構成後の相関ルール1201のそれぞれを、集約規則707が同一であるもののグループに分割する。さらに、相関ルール集約処理部118は、前述の分割されたグループ毎に、集約規則1604、原因側値1605、結果側値1606、件数1607、Lift値1608、Support値1609の情報を集約後相関ルール1600に追加する。集約規則1604の情報には、当該グループの相関ルール1201に共通の集約規則707の値を記載する。原因側値1605の情報には、当該グループの相関ルール1201に出現する原因側値704の、半順序関係上の上限値・下限値として記載する。結果側値1606の情報には、当該グループの相関ルール1201に出現する結果側値705の、半順序関係上の上限値・下限値として記載する。件数1607には、当該グループの相関ルール1201の件数706の合計値を記載する。Lift値1608には、当該グループの相関ルール1201のLift値710の調和平均を記載する。Support値1609には、当該グループの相関ルール1201の件数706の合計を、対象となる全相関ルール1201の件数706の合計によって割った値を記載する。
なお、前述の分割された全てのグループについて、件数1607、Lift値1608、Support値1609の算出が完了した後、集約後相関ルール1600の集計評価値1610としての件数1607、Lift値1608、Support値1609を算出しても良い。その場合、件数1607については、対象となる全グループの件数1607の合計値を算出し、記載する。Lift値1608については、対象となる全グループのLift値1608の調和平均を算出し、記載する。Support1609については、対象となる全グループのSupport値1609の合計値を算出し、記載する。
図17は、本実施例の相関ルール集約結果のLift値による差異を説明するイメージ図の例である。集約後相関ルール1701は、本実施例において例題としてきた集約後相関ルールであり、図3の入力情報300における「更新年月日」301を原因側カラム1601、かつ、「承認年月日」302を結果側カラム1602として導出したものである。また、集約後相関ルール1702は、前述の集約後相関ルール1701を導出する方法と同様の方法を用い、「承認者生年月日」304を原因側カラム1601、かつ、「承認年月日」302を結果側カラム1602として導出したものである。
これらの集約後相関ルールは、いずれもSupport値1609が100%であり、常に時間の前後関係が成り立っていることから、Support値の観点のみから判断すれば、仕様として有効なルールと思われるものである。しかしながら、相関ルール1702においては、Lift値1608が1.0と低い値になっており、仕様としての有用性が低いことを示している。
なお、Lift値は、「原因側値」によって「結果側値」がとりうる範囲が狭められる度合いを示す値であり、「原因側値」が規定されない場合を基準値(1.0)とした倍率によって示される値である。値が1.0である場合には、「原因側値」によって特に制約条件が加わっていないことから、相関ルールとしての有用性は低いと判断できる。
図17の事例の前後関係の場合、本手法において算出したLift値1608は、原因側カラム1601と結果側カラム1602とのデータ分布領域の間の重複が皆無の場合には1.0となる。Lift値を参照することにより、そもそもデータ領域に重複がなく、仕様上、「原因側カラム」1601の特定の出現値によって「結果側カラム」1602の値が影響を受けているとは考えにくいようなものを発見することができる。
ステップ209では、集約結果妥当性判定部119が、相関ルール集約結果記憶部111から読み出した集約後相関ルールの情報を参照し、集約後相関ルール評価規則記憶部112から読み出した集約後相関ルール評価規則の情報を用いて補完した後、再度、集約後相関ルール記憶部111に書き込む。
図18は、本実施例の相関ルール集約結果の情報を補完する規則を説明するイメージ図の例である。集約後相関ルール評価規則1800は、1つ以上の集約後相関ルール有効性判定条件1801から構成されており、各々の集約後相関ルール有効性判定条件1801は、有効性情報1802を持つ。また、集約後相関ルール判定条件1801は、対象集約規則1803とSupport値条件1804の組を1つ以上保持している。なお、対象集約規則1803に記載の値は、相関ルール集約規則800に記載の集約名804として使われている値のいずれかである。また、Support値条件1804に記載の内容は、数値の制約条件を示すものである。
図19は、本実施例の相関ルール集約結果の情報を補完する処理を説明するイメージ図の例である。集約結果妥当性判定部119は、相関ルール集約結果記憶部111から読み出した集約後相関ルール1600に対し、対応する集約後相関ルール判定条件1801を抽出する。具体的には、集約後相関ルール判定条件1801を、集約後相関ルール評価規則1800の先頭から判定していき、最初に条件に合致した集約後相関ルール判定条件1801を抽出する。
集約後相関ルール判定条件1801の抽出にあたっては、当該の集約後相関ルール判定条件が保持するすべての対象集約規則1803とSupport値条件1804の組について、後述の条件を判定する。すべてのケースについて条件を満たしていた場合において、条件に合致したとものと判定し、当該の集約後相関ルール判定条件1801を抽出する。
対象集約規則1803とSupport値条件1804の組が示す条件の判定にあたっては、まず、対象集約規則1803と同じ値を持つ集約規則1604を集約後相関ルール1600から探し出し、これに対応するSupport値1609の値を抽出する。対象集約規則1803と同じ値を集約規則1604が見つからなかった場合、Support値は0%であると見なす。その後、抽出されたSupport値が、Support値条件1804の制約条件を満たしているかを判定する。
なお、集約後相関ルール評価規則1800から、集約後相関ルール1600に対応する集約後相関ルール判定条件1801を抽出できなかった場合、集約後相関ルール1600の有効性1603を空欄のままとして、ステップ209を完了してよい。空欄である状態は、集約後相関ルール1600の内容は仕様として想定されたルール構成でないことを示すものであり、仕様としての有用度が低い情報であることを示すものである。
ステップ210は、本発明の利用者が、相関ルール分析装置100によるデータの分析結果を、出力装置104を通じて取得するステップである。集約結果視覚化処理部120は、装置の利用者の指示に従い、相関ルール集約結果記憶部111から相関ルール集約結果を読み出し、視覚的に理解容易な形式に変換した後、出力装置104に出力する。なお、出力は、計算機で扱えるようテキストデータ又はバイナリデータとして出力しても良いし、開発者が閲覧できるようモニタに文字又はグラフィックを表示してもよい。
図20は、本実施例の相関ルール集約結果を視覚的に理解容易な形式に変換する処理を説明するイメージ図の例である。相関ルール視覚化処理部120は、相関ルール集約結果記憶部111から集約後相関ルールを読み出す。さらに、読み出した集約後相関ルールのうち、装置の利用者が指定した有用度が高いもの(ここでは、有効性1603が「高」、かつ、Lift値1608が「1.05以上」のもの)を特定して抽出した後、出力装置104に出力する。
100 相関ルール分析装置
101 CPU
102 メモリ
103 入力装置
104 出力装置
105 外部記憶装置
106 分析対象テーブルデータ記憶部
107 カラム特性判定規則記憶部
108 カラム特性記憶部
109 相関ルール集約規則記憶部
110 相関ルール記憶部
111 相関ルール集約結果記憶部
112 集約後相関ルール評価規則記憶部
113 処理プログラム
114 カラム特性判定部
116 相関ルール抽出処理部
115 相関ルール集約規則判定部
117 相関ルール集約前処理部
118 相関ルール集約処理部
119 集約結果妥当性判定部
120 集約結果視覚化処理部
121 カラム値出現回数記憶部
122 カラム値出現回数カウント処理部

Claims (9)

  1. データベースに格納されたデータから、当該データベースのDBカラムのデータ依存関係および制約条件の少なくとも一方を抽出する相関ルール分析装置であって、
    分析対象であるデータが格納されたDBテーブルデータから、複数カラム間のデータの同時出現関係の情報を相関ルールとして抽出する相関ルール抽出手段と、
    抽出された前記相関ルールを特定の共通性に基づいて集約する相関ルール集約手段と、
    集約された前記相関ルールそれぞれにおける出現頻度および組み合わせから、データ依存関係や制約条件としての有用性指標を算出する集約結果妥当性判定手段とを有することを特徴とする相関ルール分析装置。
  2. 請求項1に記載の相関ルール分析装置であって、
    前記特定の共通性には、前記相関ルールの条件部の値と結論部の値との間に成り立つ半順序関係の同一性を含むことを特徴とする相関ルール分析装置。
  3. 請求項2に記載の相関ルール分析装置であって、
    前記データベースのデータの特徴を、当該データから判定するカラム特性判定処理手段と、
    相関ルールの集約をするために適用する共通性の枠組みを、データベースのデータの特徴から決定する相関ルール集約規則判定手段とをさらに有することを特徴とする、相関ルール分析装置。
  4. 請求項2または3のいずれかに記載の相関ルール分析装置であって、
    前記相関ルールを前記半順序関係の同一性に基づいて集約する場合に、集約前の相関ルールのLift値を、当該の半順序関係の内容を踏まえて算出する相関ルール集約前処理手段をさらに有することを特徴とする相関ルール分析装置。
  5. 請求項4に記載の相関ルール分析装置であって、
    前記相関ルール集約前処理手段は、前記Lift値を算出する場合際に、結論部の値の出現回数をカウントしたソート済みテーブルを一時データとして利用することによりLift値算出を実行することを特徴とする相関ルール分析装置。
  6. 請求項1〜5のいずれか1項に記載の相関ルール分析装置であって、
    前記相関ルール集約処理手段は、集約後の相関ルールのLift値を、集約前の相関ルールのLift値の調和平均として算出する
    ことを特徴とする、相関ルール分析装置。
  7. 請求項2〜6のいずれか1項に記載の相関ルール分析装置であって、
    前記半順序関係には、日付としての値の前後関係が含まれることを特徴とする、相関ルール分析装置。
  8. 請求項2〜7のいずれか1項に記載の相関ルール分析装置であって、
    前記半順序関係には、数値の大小関係が含まれることを特徴とする、相関ルール分析装置。
  9. 請求項1〜8のいずれか1項に記載の相関ルール分析装置であって、
    集約した相関ルールを出力する場合に、集約結果妥当性判定手段が判定した有用性の指標値によって、順序や範囲を決定する集約結果視覚化処理手段
    をさらに有することを特徴とする相関ルール分析装置。
JP2014135511A 2014-07-01 2014-07-01 相関ルール分析装置および相関ルール分析方法 Active JP6244274B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014135511A JP6244274B2 (ja) 2014-07-01 2014-07-01 相関ルール分析装置および相関ルール分析方法
US14/614,006 US20160004968A1 (en) 2014-07-01 2015-02-04 Correlation rule analysis apparatus and correlation rule analysis method
CN201510064731.7A CN105320720B (zh) 2014-07-01 2015-02-06 相关规则分析装置以及相关规则分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014135511A JP6244274B2 (ja) 2014-07-01 2014-07-01 相関ルール分析装置および相関ルール分析方法

Publications (2)

Publication Number Publication Date
JP2016014944A JP2016014944A (ja) 2016-01-28
JP6244274B2 true JP6244274B2 (ja) 2017-12-06

Family

ID=55017229

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014135511A Active JP6244274B2 (ja) 2014-07-01 2014-07-01 相関ルール分析装置および相関ルール分析方法

Country Status (3)

Country Link
US (1) US20160004968A1 (ja)
JP (1) JP6244274B2 (ja)
CN (1) CN105320720B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160078352A1 (en) * 2014-09-11 2016-03-17 Paul Pallath Automated generation of insights for events of interest
US10685011B2 (en) 2017-02-02 2020-06-16 International Business Machines Corporation Judgement of data consistency in a database
WO2018146716A1 (ja) * 2017-02-07 2018-08-16 株式会社日立製作所 データ管理方法及び計算機
JP2019086887A (ja) * 2017-11-02 2019-06-06 株式会社エヌ・ティ・ティ・データ 情報処理装置、情報処理方法及びコンピュータプログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1115842A (ja) * 1997-06-24 1999-01-22 Mitsubishi Electric Corp データマイニング装置
JP2000353163A (ja) * 1999-06-11 2000-12-19 Just Syst Corp データベース処理装置、及びデータベース処理のためのプログラムが記憶された記憶媒体
US6651049B1 (en) * 1999-10-22 2003-11-18 International Business Machines Corporation Interactive mining of most interesting rules
US6651048B1 (en) * 1999-10-22 2003-11-18 International Business Machines Corporation Interactive mining of most interesting rules with population constraints
US8135711B2 (en) * 2002-02-04 2012-03-13 Cataphora, Inc. Method and apparatus for sociological data analysis
US8401986B1 (en) * 2004-08-05 2013-03-19 Versata Development Group, Inc. System and method for efficiently generating association rules
US8401987B2 (en) * 2007-07-17 2013-03-19 International Business Machines Corporation Managing validation models and rules to apply to data sets
US20120137367A1 (en) * 2009-11-06 2012-05-31 Cataphora, Inc. Continuous anomaly detection based on behavior modeling and heterogeneous information analysis
CN102402757A (zh) * 2010-09-15 2012-04-04 阿里巴巴集团控股有限公司 信息提供方法及装置、综合关联度确定方法及装置
WO2013046435A1 (ja) * 2011-09-30 2013-04-04 富士通株式会社 観測情報処理装置、観測情報処理プログラムおよび観測情報処理方法
US8755409B2 (en) * 2011-10-14 2014-06-17 Alcatel Lucent Processing messages with incomplete primary identification information
US9275333B2 (en) * 2012-05-10 2016-03-01 Eugene S. Santos Augmented knowledge base and reasoning with uncertainties and/or incompleteness
JP5933410B2 (ja) * 2012-10-25 2016-06-08 株式会社日立製作所 データベース分析装置及びデータベース分析方法
US20140180808A1 (en) * 2012-12-22 2014-06-26 Coupons.Com Incorporated Generation and management of dynamic electronic offers
US10061822B2 (en) * 2013-07-26 2018-08-28 Genesys Telecommunications Laboratories, Inc. System and method for discovering and exploring concepts and root causes of events

Also Published As

Publication number Publication date
JP2016014944A (ja) 2016-01-28
CN105320720B (zh) 2018-11-09
CN105320720A (zh) 2016-02-10
US20160004968A1 (en) 2016-01-07

Similar Documents

Publication Publication Date Title
US10769147B2 (en) Batch data query method and apparatus
JP6158623B2 (ja) データベース分析装置及び方法
US20210141801A1 (en) String Parsed Categoric Encodings for Machine Learning
JP6784612B2 (ja) 分析ソフトウェア管理システム及び分析ソフトウェア管理方法
US20160004757A1 (en) Data management method, data management device and storage medium
JP6244274B2 (ja) 相関ルール分析装置および相関ルール分析方法
JP2013517585A (ja) データベース内の大容量コレクションオブジェクトテーブルにアクセスするための方法
JP5588811B2 (ja) データ分析支援システム及び方法
TW201730786A (zh) 執行以時間序列資料與分析資料當中的至少一部分作為輸入資料之分析處理的分析系統及分析方法
JP6419667B2 (ja) テストdbデータ生成方法及び装置
JP5898584B2 (ja) 六面体メッシュ生成装置
JP2019219848A (ja) ソースコード解析方法およびソースコード解析装置
CN110827049A (zh) 一种数据推送方法及装置
CN112613176A (zh) 慢sql语句预测方法及系统
CN112612810A (zh) 慢sql语句识别方法及系统
JP7015320B2 (ja) データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム
JP7022472B1 (ja) データ管理システム、データ管理方法及びデータ管理プログラム
JP2011191834A (ja) 文書分類方法、文書分類装置、およびプログラム
US20190278871A1 (en) Data analysis system, data analysis method, and computer program product
JP4663526B2 (ja) 帳票作成支援装置、帳票作成支援方法、および帳票作成支援プログラム
JP2010271989A (ja) コンテンツ検索方法、コンテンツ検索システム、およびコンテンツ検索プログラム
JP2013012082A (ja) テストデータ生成プログラム、テストデータ生成方法、テストデータ生成装置
JP6978997B2 (ja) 類似データの検索方法、情報検索装置及びプログラム
Zhang et al. An empirical study of code clone clustering based on clone evolution
US11294961B2 (en) Information search apparatus, search program, database update method, database update apparatus and database update program, for searching a specified search target item associated with specified relation item

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161220

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170110

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171006

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171017

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171113

R150 Certificate of patent or registration of utility model

Ref document number: 6244274

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150