(57)【要約】  属性が連続値である属性を含むデータベースから適切かつ有用なルールを発見可能とする。記憶装置に記憶されたデータベースにアクセスし、前記第１のデータベースに含まれる、属性値が連続値をとる連続値属性に対して、前記属性値のとり得る範囲や分布に応じた少なくとも１つの代表点と前記属性値との類似度を計算し、連続値属性の属性値を、前記代表点の値と前記類似度の組で置き換えたウェイテッドデータベースを生成し、該ウェイテッドデータベースに対して、ルール発見を行う。
2014208728.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置に記憶された第１のデータベースにアクセスし、前記第１のデータベースに含まれる、属性値が連続値をとる連続値属性に対して、
前記連続値属性の属性値のとり得る範囲や分布に対応した少なくとも１つの代表点と、前記属性値との類似度を計算し、
前記連続値属性の前記属性値を、前記代表点と前記類似度の組で置き換えた第２のデータベースを生成するデータベース生成部を備えた、ことを特徴とする情報処理装置。
【請求項２】
属性と値のペアからなるアイテムであって、前記第２のデータベースでの頻度が、予め定められた所定値以上のアイテム集合を生成するアイテムセット生成部と、
前記生成されたアイテム集合から、あるアイテムを条件部とし、別のアイテムを帰結部として、前記第２のデータベースでの支持度と確信度がそれぞれ、与えられた第１の値と第２の値に等しいか上回るルール候補を生成するルール候補生成部と、
前記生成されたルール候補から冗長なルールを除外するルールの極小性判定部と、
を備えた、ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記アイテムセット生成部は、前記連続値属性と前記代表点のペアからなるアイテムの頻度を、前記代表点に対応する前記類似度を用いて算出し、
前記ルール候補生成部は、前記連続値属性と前記代表点のペアからなるアイテムを条件部及び／又は帰結部に含むルール候補の支持度及び確信度の算出に、前記代表点に対応する前記類似度を用いる、ことを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記ルール候補生成部は、前記アイテム集合からルール候補を生成するにあたり、
アイテムセットαに対して、前記αと属性を共有しないアイテムをｘとし、αの頻度と、αに１つのアイテムｘを加えたアイテムセットα＋｛ｘ｝の頻度を計算し、
α＋｛ｘ｝の頻度が、与えられた前記第１の値以上であり、且つ、
確信度＝（α＋｛ｘ｝の頻度）／（αの頻度）が、与えられた前記第２の値以上である、という条件が成り立つとき、
αを条件部、ｘを帰結部とするルール：α→ｘを、妥当なルール候補として出力する、ことを特徴とする請求項２又は３記載の情報処理装置。
【請求項５】
情報処理装置を用いて第１のデータベースからルールを発見するにあたり、
前記第１のデータベースに含まれる、属性値が連続値をとる連続値属性に対して、前記連続値属性の属性値のとり得る範囲や分布に対応した少なくとも１つの代表点と、前記属性値との類似度を計算し、
前記連続値属性の前記属性値を、前記代表点の値と類似度の組で置き換えた第２のデータベースを生成する、ことを特徴とするルール発見方法。
【請求項６】
属性と値のペアからなるアイテムであって、前記第２のデータベースでの頻度が、予め定められた所定値以上のアイテム集合を生成し、
前記生成されたアイテム集合からあるアイテムを条件部、別のアイテムを帰結部として、前記第２のデータベースでの支持度と確信度がそれぞれ、与えられた第１の値と第２の値に等しいか上回るルール候補を生成し、
前記生成されたルール候補から冗長なルールを除外する、ことを特徴とする請求項５記載のルール発見方法。
【請求項７】
前記連続値属性と前記代表点のペアからなるアイテムの頻度を、前記代表点に対応する前記類似度を用いて算出し、
前記連続値属性と前記代表点のペアからなるアイテムを条件部及び／又は帰結部に含むルール候補の支持度及び確信度の算出に、前記代表点に対応する前記類似度を用いる、ことを特徴とする請求項６記載のルール発見方法。
【請求項８】
記憶装置に記憶された第１のデータベースにアクセスし、前記第１のデータベースに含まれる、属性値が連続値をとる連続値属性に対して、前記連続値属性の属性値のとり得る範囲や分布に対応した少なくとも１つの代表点と、前記属性値との類似度を計算し、前記連続値属性の属性値を、前記代表点の値と類似度の組で置き換えた第２のデータベースを生成する処理を、コンピュータに実行させるプログラム。
【請求項９】
属性と値のペアからなるアイテムであって、前記第２のデータベースでの頻度が、予め定められた所定値以上のアイテム集合を生成する処理と、
前記生成されたアイテム集合からあるアイテムを条件部、別のアイテムを帰結部として、前記第２のデータベースでの支持度と確信度がそれぞれ、与えられた第１の値と第２の値に等しいか上回るルール候補を生成する処理と、
前記生成されたルール候補から冗長なルールを除外する処理と、
を前記コンピュータに実行させる請求項８記載のプログラム。
【請求項１０】
前記アイテム集合を生成する処理は、前記連続値属性と前記代表点のペアからなるアイテムの頻度を、前記代表点に対応する前記類似度を用いて算出し、
前記ルール候補を生成する処理は、前記連続値属性と前記代表点のペアからなるアイテムを条件部及び／又は帰結部に含むルール候補の支持度及び確信度の算出に、前記代表点に対応する前記類似度を用いる請求項９記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願についての記載］
本発明は、日本国特許出願：特願２０１３−１３４６９８号（２０１３年  ６月２７日出願）に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、データ集合からルール発見方法とルール発見を行う情報処理装置並びにプログラムに関する。
【背景技術】
【０００２】
データ集合からのルールの発見について概説する。ここでは、ルールを相関ルールとして表現するものとする。相関ルールとは、ある事象（Ｘとする）の下である事象（Ｙ）が発生する関係（常に発生するというのではなく、例えば一定の確率で発生する）を表し、Ｘ→Ｙと表される。矢印の左辺（Left Side Hand）のＸを「条件部」（前提部ともいう）、矢印の右辺（Right Hand Side）を「帰結部」と呼ぶ。相関ルールを発見する装置は、例えば、相関ルールの候補を生成し、該相関ルールの候補がデータベースの内容に合致しているか判定する計算装置（ルール発見アルゴリズムを実行する処理装置）と、発見された相関ルールを保存する記憶装置と、データベースの内容に合致していると判定された相関ルールを前記記憶装置に保存する保存手段を備えている。【０００３】
計算装置は、生成された相関ルール候補が、データベースの内容に対して支持度（ルールと関係のあるレコードの個数：ルールが登場する頻度）や確信度（ルールと関係のあるレコードのうち、ルールを満たすレコードの割合）が与えられた閾値以上であるか調べ、条件を満たす場合、妥当な相関ルールとして出力する。【０００４】
ルールとして例えばＣＦＤ（Conditional Function Dependency：条件付関数従属性）を発見する装置も同様の構成とされる。ＣＦＤルールの候補から、データベースの内容に合致したＣＦＤルールを出力する。以下、ＣＦＤについて概説する。ＣＦＤは、データ属性間の従属性を表す関数従属性（Functional Dependency：「ＦＤ」と略記される）が、条件によって指定されたタプル集合について成立することを表すルールである。ルールの左辺（ＬＨＳ：Left Hand Side）である条件部・前提部と、ルールの右辺（ＲＨＳ：Right Hand Side）の帰結部における属性値の指定からなる。タプルは関係を表（テーブル）で表した場合の１つの行（属性は列）に対応する。【０００５】
条件部は、データの部分集合（タプル集合）を指定し、属性Ｘが属性値ｘであるということを「Ｘ＝ｘ」と表す。ここで、「ｘ」は属性値がある特定の値であることを意味する。このような、属性値の表現を「Constantである」という（なお、「Constant」は例えば「定数」を意味する）。【０００６】
前提部は属性のみの指定からなり、属性値は特定の値をとらない（すなわち、任意の値とマッチすることを表すワイルドカード）ことを「Ｘ＝＿」と表す。このような属性値の表現を「バリアブル（Variable）である」という（「Variable」は例えば「変数」を意味する）。ここで、‘_’は「unnamed variable」（無名変数）ともいう。【０００７】
帰結部には、
（Ａ）属性と属性値の指定からなるもの（例えば、以下のルール１）と、
（Ｂ）属性のみを指定するもの（例えば、以下のルール２）
の２種類ある。【０００８】
（Ａ）の場合、例えば「Ａ＝ａ」、
（Ｂ）の場合、例えば「Ａ＝＿」等と表される。なお、帰結部に、属性値の指定がある場合には、前提部は省略することができる。また、前提部、帰結部は、複数の属性とそれぞれの属性値の指定からなることもある。以下にルールの例を示す。【０００９】
ルール１： Ｘ１→Ａ（ｘ１||ａ）
ルール２： Ｘ１，Ｘ２→Ａ（ｘ１，＿||＿）【００１０】
ルール１は、「属性Ｘ１が属性値ｘ１のとき、属性Ａは属性値ａである」という意味のルールである。ルール１が成り立つとき、条件部に当てはまるタプル集合において、帰結部が指定された値であることを表す。つまり、条件Ｘ１＝ｘ１を満たすタプル集合の全てのタプルにおいて、ｔ［Ａ］＝ａである（なお、ｔ［Ａ］は、属性Ａのタプルを表している）。このように、帰結部が指定された値に決まるルールを「コンスタントＣＦＤ（Constant CFD）」という。【００１１】
ルール２は、「属性Ｘ１が属性値ｘ１のとき、属性Ｘ２によって属性Ａが決まる」という意味のルールである。ルール２が成り立つとき、条件部に当てはまるタプル集合において、前提部と帰結部で指定された属性間に従属性があることを表す。つまり、条件「Ｘ１＝ｘ１」を満たすタプル集合の中の任意のタプルペアｔ１、ｔ２について、ｔ１［Ｘ２］＝ｔ２［Ｘ２］であれば、ｔ１［Ａ］  ＝  ｔ２［Ａ］となる。このように帰結部が指定された値に決まらないが、属性間に従属性を持つようなルールを「バリアブルＣＦＤ（Variable CFD）」という。すなわち、パタンタプルの||の右側がunnamed variable‘＿’の場合（ｔｐ［Ａ］＝＿）、バリアブルＣＦＤ（Variable CFD）という。【００１２】
ルール１のパタンタプル(x1 || a)における記号‘||’は、左辺のＸ１と右辺のＡの属性値を分離する。なお、ルール１の“Ｘ１→Ａ（ｘ１||ａ）”を、“（Ｘ→Ａ，（ｘ||ａ））”と表記する例もあるが、外側の括弧とカンマの有無が相違するだけであり、同一のルールを表すものであることは自明である。同様に、ルール２の“Ｘ１，Ｘ２→Ａ（ｘ１，＿||＿）”を“（［Ｘ１，Ｘ２］→Ａ，（ｘ１，＿||＿））”と表記する例もある。【００１３】
与えられたデータに対してＣＦＤがどれだけ有効なルールであるかを示す指標として、例えば支持度（Support）や確信度（Confidence）が用いられる。ＣＦＤ  φ（Ｘ→Ａ、ｔｐ）の支持度（Support）は、φのパタンにマッチするタプル数である。確信度（Confidence）は条件部・前提部にマッチするタプル数の中でＣＦＤのルールが成立するタプル数の割合である。【００１４】
複数のＣＦＤが与えられた時、「left-reduced」（レフト・レデュースト）であり、且つ、「most-general」（モスト・ジェネラル）である、という２つの条件を満たすＣＦＤを、「minimal」（ミニマル）であるという。【００１５】
まず「left-reduced」について説明する。複数のＣＦＤが与えられた時、いかなるＣＦＤの左辺（ＬＨＳ）の属性セットも、他のＣＦＤの左辺の属性セットを包含しないＣＦＤを、「left-reduced」であるという。例えば、以下のルール３、ルール４が与えられた時、ルール４の左辺（Ｘ１，Ｘ２）は、ルール３の左辺（Ｘ１）を包含している（Ｘ１⊂Ｘ１，Ｘ２）ことから、ルール４は「left-reduced」ではない。逆に、ルール３の左辺（Ｘ１）は、ルール４の左辺（Ｘ１，Ｘ２）を包含していないので、ルール３は「left-reduced」であるという。この場合、ルール４は、ルール３に対して冗長なＣＦＤとして削除することができる。【００１６】
ルール３：Ｘ１，Ｙ→Ａ（ｘ１，＿||＿）
ルール４：Ｘ１，Ｘ２，Ｙ→Ａ（ｘ１，ｘ２||＿）【００１７】
次に、「most-general」について説明する。複数のＣＦＤが与えられた時、いかなるＣＦＤの左辺に含まれる属性値の定数も‘＿’（Variable）に更新できない場合、「most-general」であるという。【００１８】
例えば、以下のルール５、ルール６が与えられた時、ルール６の属性値ｘ２をVariable（‘＿’）に置き換える（更新する）ことで、ルール５が得られる。このため、ルール６は「most-general」ではない。逆に、ルール５は、「most-general」であるという。この場合、ルール６はルール５に対して冗長なＣＦＤとして削除することができる。【００１９】
ルール５：Ｘ１，Ｘ２→Ａ（ｘ１，＿||ａ）
ルール６：Ｘ１，Ｘ２→Ａ（ｘ１，ｘ２||ａ）【００２０】
確信度・支持度の定義のもとでのルールを発見する手法として例えばＣＦＤＭｉｎｅｒがある（例えば特許文献１や非特許文献１参照）。ＣＦＤＭｉｎｅｒはｃｏｎｓｔａｎｔなＣＦＤを発見する。【００２１】
一般的なデータベースでは、１つのフィールドに１つの値が（確率１で）存在するが、複数の値の候補がその確率分布とともに与えられているデータベースとして例えばＵＬＤＢが知られている（非特許文献２）。【００２２】
トランザクションデータベース（Transaction Database）の各アイテムが０以上１以下の確率で生起するものを「Uncertain Transaction Database」と言う。非特許文献３には、Uncertain Transaction Databaseの頻出アイテムを列挙する手法が開示されている。
【先行技術文献】
【特許文献】
【００２３】
【特許文献１】米国特許出願公開第２０１０／０２５０５９６号明細書
【非特許文献】
【００２４】
【非特許文献１】Fan et al.， "Discovering Conditional Functional Dependencies，" in ICDE， 2009
【非特許文献２】Benjelloun et al.， "ULDBs: Databases with Uncertainty and Lineage，" in VLDB， 2006
【非特許文献３】Bernecker et al.， "Probabilistic Frequent Pattern Growth for Itemset Mining in Uncertain Databases，" in SSDBM， 2012
【発明の概要】
【発明が解決しようとする課題】
【００２５】
関連技術の分析を以下に与える。【００２６】
非特許文献１に記載された手法では、値が連続値（例えば距離等）をとる属性について、殆どの値が互いに異なるものとなる。このため、各属性値の出現頻度が小さくなり、例えばルールの支持度（頻度）が与えられた閾値以上とならず、ルール発見装置で有用なルールを得ることができない。【００２７】
また、ルール発見装置では、属性値が僅かに異なる場合も、大きく異なる場合も、ともに、「異なる」とだけ判断される。【００２８】
そこで、この問題を解決するために、連続値の値域を、複数の区間に区切り、各区間の値を１つにまとめる「離散化」手法について考察する。【００２９】
離散化の場合、区間の境界で分離された２つの近接した値がそれぞれ別の値と解釈されてしまう、という問題が生じる。例えば当該境界を間に挟んで近接する２つの値は、本来、該２つの値が近接しているため同一（区間）として扱うべきところ、ルール発見装置では、当該境界で区分された異なる区間に属する別々の値と解釈する。あるいは、連続値の値域に対して適切な区間を設定すること自体が難しい場合がある。このため、ルール発見装置で的確かつ有用なルールを得ることは困難である。【００３０】
したがって、本発明は上記問題点に鑑みて創案されたものであって、その目的は、値が連続値をとる属性を含むデータから適切かつ有用なルールの発見を可能とする装置、方法、プログラムを提供することにある。
【課題を解決するための手段】
【００３１】
本発明に関連するいくつかの側面(aspect)の１つによれば（側面１）、記憶装置に記憶された第１のデータベースにアクセスし、前記第１のデータベースに含まれる、属性値が連続値をとる連続値属性に対して、前記連続値属性の属性値のとり得る範囲や分布に対応した少なくとも１つの代表点と、前記属性値との類似度を計算し、前記連続値属性の前記属性値を、前記代表点と前記類似度の組で置き換えた第２のデータベースを生成するデータベース生成部を備えた情報処理装置（データ処理システム）が提供される。【００３２】
別の側面の１つによれば（側面２）、情報処理装置を用いて第１のデータベースからルールを発見するにあたり、前記第１のデータベースに含まれる、属性値が連続値をとる連続値属性に対して、前記連続値属性の属性値のとり得る範囲や分布に対応した少なくとも１つの代表点と、前記属性値との類似度を計算し、前記連続値属性の前記属性値を、前記代表点と前記類似度の組で置き換えた第２のデータベースを生成する方法が提供される。【００３３】
さらに別の側面の１つによれば（側面３）、記憶装置に記憶された第１のデータベースにアクセスし、前記第１のデータベースに含まれる、属性値が連続値をとる連続値属性に対して、前記連続値属性の属性値のとり得る範囲や分布に対応した少なくとも１つの代表点と、前記属性値との類似度を計算し、前記連続値属性の前記属性値を、前記代表点と前記類似度の組で置き換えた第２のデータベースを生成する処理を、コンピュータに実行させるプログラムが提供される。さらに別の側面の１つによれば（側面４）、上記側面３のプログラムを記憶したコンピュータ読み出し可能な記憶媒体（半導体ストレージ、磁気／光記録媒体）が提供される。
【発明の効果】
【００３４】
本発明によれば、値が連続値をとる属性を含むデータから適切かつ有用なルール発見を可能としている。
【図面の簡単な説明】
【００３５】
【図１】本発明の第１の実施の形態の構成を例示する図である。
【図２】本発明の第１の実施の形態の動作を説明する流れ図である。
【図３】本発明の第１の実施の形態の動作の具体例を説明する図である。
【図４】本発明の第１の実施の形態の動作の具体例を説明する図である。
【図５】本発明の第２の実施の形態の構成を例示する図である。
【発明を実施するための形態】
【００３６】
本発明のいくつかの好ましい態様によれば、記憶装置に記憶された第１のデータベースにアクセスし、前記第１のデータベースに含まれる、属性値が連続値をとる連続値属性に対して、前記連続値属性の属性値のとり得る範囲や分布に対応した１つ又は複数の代表点と、前記属性値との類似度を計算し、前記連続値属性の前記属性値を、前記代表点と類似度の組で置き換えた第２のデータベース（weighted DB）を生成するデータベース生成部（図１の２１）を備えている。好ましい形態によれば、さらに、属性と値のペアからなるアイテムであって、前記第２のデータベースでの頻度が、予め定められた所定値以上のアイテム集合を生成するアイテムセット生成部（図１の２２）と、前記生成されたアイテム集合からあるアイテムを条件部、別のアイテムを帰結部として、前記第２のデータベースでの支持度と確信度がそれぞれ、与えられた第１の値と第２の値に等しいか上回るルール候補を生成するルール候補生成部（図１の２３）と、前記生成されたルール候補から冗長なルールを除外するルールの極小性判定部（図１の２４）を備えた構成としてもよい。
【００３７】
アイテムセット生成部（図１の２２）は、第２のデータベース（weighted DB）において、前記連続値属性と前記代表点のペアからなるアイテムの頻度を、前記代表点に対応する前記類似度を用いて算出する構成としてもよい。またルール候補生成部（図１の２３）は、前記連続値属性と前記代表点のペアからなるアイテムを条件部及び／又は帰結部に含むルール候補の支持度、確信度の算出に、前記代表点に対応する前記類似度を用いる構成としてもよい。
【００３８】
本発明の基本原理を説明する。本発明の好ましい態様において、ルール発見処理を実行する装置（情報処理装置、データ処理装置）には、例えば、ユーザが入力したパラメータに加えて、データベースの属性の部分集合である、連続値属性集合（属性値が連続値をとる属性の集合）や、連続分布の代表値の個数ｔ、類似度関数ｆが入力される。類似度関数ｆは、例えば２つの値が近いほど１に近づき、遠いほど０に近づくものであれば、適宜、任意の関数が用いられる。なお、データの分布の特徴を１つの値で代表させたときの値を代表値という（記述統計量の１つ）。データの分布の特徴を１つの値で代表させたものとして、例えば、平均（mean）、中央値（median）、最頻値（mode）等がある。あるいは四分位値（小さい方から１／４、３／４の第１、第３四分位値：中央値は第２四分位値）等も用いられる。本発明において、代表点は、上記代表値に限定されるものでなく、連続属性の属性値のとり得る範囲（値域）やその分布に対応して、１つ又は複数個設定される。
【００３９】
ルール発見処理では、まず、各連続属性について、その属性値分布に基づき、ｔ個の代表点を計算する。ｔ個の代表点の各々の値と元の属性値との類似度を、類似度関数ｆから求め、代表点の値と類似度の組を生成し、データベースに格納する。類似度をデータに対する重みとして利用することから、このデータベースを、本明細書では、重みデータベース（ウェイテッド・データベース：weighted DB）という。
【００４０】
ルール発見処理では、作成されたウェイテッド・データベース（weighted  DB）に対して、既存の定義を拡張して得られる支持度、確信度の閾値を満たすルールを計算し、連続値を含むデータ集合に対するルールを得る。例えば、ルールが成立するレコード（タプル）数の計算（確信度の計算）に、類似度（１に正規化されている）を用いる。
【００４１】
本発明によれば、連続値を含む属性を有するデータ集合に対して成り立つ自然なルールを得ることができる。前述した離散化による手法では、例えば多くの値が密集している部分に区間の境界を置いた場合、境界を間に挟んで近接する２つの値が、別々の区間に分かれてしまい、有用なルールが得られない、という問題がある。これに対して、本発明によれば、連続属性値の分布等に対応して選択された代表点と連続属性値との類似度を用意した上で、ルール発見を行うことで、この問題を解消することができる。以下、実施形態について説明する。
【００４２】
＜実施形態１＞
次に、本発明の実施の形態について図面を参照して詳細に説明する。図１を参照すると、本発明の第１の実施の形態は、キーボード等の入力装置１と、プログラム制御により動作するデータ処理装置２と、情報を記憶する記憶装置３と、ディスプレイ装置や印刷装置などの出力装置４を含む。
【００４３】
記憶装置３は、データベース記憶部３１を備えている。データベース記憶部３１には、ルールを抽出するためのデータベースが記憶されている。
【００４４】
データ処理装置２は、ウェイテッド・データベース（weighted DB）生成部（手段、装置）２１と、フリーアイテムセット（free itemset）生成部（手段、装置）２２と、妥当なルール候補生成部２３（手段、装置）と、ルールの極小性判定部（手段、装置）２４とを備える。
【００４５】
ウェイテッド・データベース（weighted DB）生成部２１は、入力装置１から入力されたパラメータ：
・連続値属性集合ｒ’、
・代表点の個数ｔ、
・類似度関数ｆ
を用いて、データベース記憶部３１に記憶されたデータベースから、ウェイテッド・データベース（weighted DB）を生成する。なお、生成されたウェイテッド・データベースの各フィールドに対して重みの和が１となるような正規化を行いＵＬＤＢ（Uncertainty Lineage Database）（非特許文献２参照）として扱うこともできる。図１の連続値属性集合ｒ’⊆attr(ｒ)のattr(ｒ)は、関係スキーマ（relation schema）ｒが属性集合(set of attributes)上で定義されているものとして当該属性集合を表しており、ｒ’⊆attr(ｒ)は、連続値属性集合ｒ’が属性集合attr(ｒ)の部分集合であることを意味している。
【００４６】
本実施形態では、ウェイテッド・データベース生成部２１に代表点の個数ｔを入力し、ウェイテッド・データベース生成部２１側で、入力した代表点の個数ｔに基づき、ｔ個の代表点の値を決定しているが、ｔ個の代表点の選択の仕方に関する情報あるいはｔ個の代表点の値そのものをウェイテッド・データベース生成部２１に入力する構成としてもよい。
【００４７】
また図１では、ウェイテッド・データベース生成部２１は、説明の簡単のため、生成したウェイテッド・データベース（weighted DB）を記憶装置３のウェイテッド・データベース（weighted DB）記憶部３２に記憶しているが、かかる構成に制限されるものでないことは勿論である。ウェイテッド・データベース生成部２１は、生成したウェイテッド・データベースを、データ処理装置２内の不図示の記憶部に格納するようにしてもよい。
【００４８】
フリーアイテムセット生成部２２は、入力装置１から与えられたパラメータ（支持度の閾値ｋ・確信度の閾値ｐ）を用い、ウェイテッド・データベース生成部２１で生成されたウェイテッド・データベースから、フリーアイテムセット（free itemset）を生成する。ここで、フリーアイテムセット（free itemset）とは、任意の１つ以上のアイテムを除去することで、頻度が真に増加してしまうアイテム集合のことである。
【００４９】
妥当なルール候補生成部２３は、フリーアイテムセット生成部２２によって生成されたフリーアイテムセットのうちのあるアイテムを条件部とし、当該アイテムと属性を共有しないアイテムを帰結部とするルール候補を生成する。そして、妥当なルール候補生成部２３は、このルール候補が、ウェイテッド・データベース（weighted DB）に関して、妥当なルール（例えば支持度がｋ以上であり、かつ確信度がｐ以上のルール）であるか否かをチェックし、妥当と判断したルール候補をリストＬに加えて保存する。妥当なルール候補生成部２３は、リストＬを記憶する記憶部（不図示）を有する。なお、リストＬは、例えば線形リストで構成してもよい。線形リストはデータとポインタとが入った要素をポインタでつないだものであり、最後尾の要素のポインタには例えば「Null」（０）が記憶される。ただし、ルール候補を記憶部で記憶するデータ構造は線形リストに制限されるものでないことは勿論である。例えば配列（一次元配列）等であってもよい。
【００５０】
ルールの極小性判定部２４は、妥当なルール候補生成部２３によって生成されたルールが極小（minimal）である場合、出力装置４に出力を行う。「極小である」（minimal）とは、ルールの条件部から任意の１つ以上のアイテムを除去することで得られるルールが、どれも妥当ではない、ということを意味する。
【００５１】
具体的には、ルールの極小性判定部２４は、妥当なルール候補生成部２３で得られたルール候補を、サイズの昇順にソートしてリストＬ中に格納しておき、先頭から順にルールの候補を取り出して出力する。さらに、ルールの極小性判定部２４は、リストＬの中に含まれ、今取り出したルールに対して冗長なルールを除去することで、極小でないルールの除去を行う。
【００５２】
次に、図１と図２の流れ図を参照して本実施形態の動作について詳細に説明する。
【００５３】
ウェイテッド・データベース（weighted DB）生成部２１は、入力装置１から与えられたパラメータ（連続値属性集合ｒ’、代表点の個数ｔ、類似度関数ｆ）、および、データベース記憶部３１に記憶されたデータベースの内容から、ウェイテッド・データベースを生成する（ステップＡ１）。ウェイテッド・データベース（weighted DB）生成部２１は、生成したウェイテッド・データベースを例えばウェイテッド・データベース（weighted DB）記憶部３２に記憶する。
【００５４】
フリーアイテムセット（free itemset）生成部２２は、入力装置１から与えられたパラメータである支持度（サポート）の閾値ｋ、確信度の閾値ｐ、およびステップＡ１で生成されたウェイテッド・データベース（weighted DB）から、頻度がパラメータｋ以上であるすべてのフリーアイテムセット（free itemset）を抽出する（ステップＡ２）。頻度がｋ以上のフリーアイテムセットをフリークエント・フリーアイテムセット（frequent free itemset）ともいう。ここで、頻度とは、アイテムセットに対応付けられて保持されている重み（離散属性の属性値の重みは１とする）の和である。
【００５５】
妥当なルール候補生成部２３は、フリーアイテムセット（free itemset）生成部２２が生成したフリーアイテムセットから、妥当なルール候補を生成する。具体的には、フリーアイテムセットαに対して、αと属性を共有しないアイテムをｘとし、αの頻度と、αに１つのアイテムｘを加えたアイテムセット（itemset）  α＋｛ｘ｝の頻度とを計算する（ステップＡ３）。
【００５６】
妥当なルール候補生成部２３は、
α＋｛ｘ｝の頻度≧ｋ、かつ、
確信度：（α＋｛ｘ｝の頻度）／（αの頻度）≧ｐ
が成り立つか否かを判定する（ステップＡ４）。
【００５７】
妥当なルール候補生成部２３は、上記条件が成り立つとき（ステップＡ４のＹｅｓ分岐）、
ｃｏｎｓｔａｎｔ  ＣＦＤ  ψ：α→ｘ
を、妥当なルール候補としてリストＬに追加し（ステップＡ５）、つづいてステップＡ６の判定を行う。
【００５８】
妥当なルール候補生成部２３は、上記条件が成り立たないとき（ステップＡ４のＮｏ分岐）、ステップＡ５をスキップし、ステップＡ６の判定を行う。
【００５９】
妥当なルール候補生成部２３は、ステップＡ６において、全てのα、ｘの組み合わせに対して上記条件を充足するか否かのチェックが終了したか判定し、全てのα、ｘの組み合わせに対してチェックが終了していない場合、ステップＡ３に戻り、ステップＡ３からの処理を繰り返す。ステップＡ６において、全てのα、ｘの組み合わせに対してチェックが終了している場合、ステップＡ７のルールの極小性判定部２４の処理に移る。なお、ステップＡ４における頻度、確信度の判定において、頻度≧ｋ、確信度≧ｐとしているが、閾値の設定値によっては、等号を含まずより大（＞）で判定してもよい（頻度＞ｋ、確信度＞ｐ）。
【００６０】
次に、ルールの極小性判定部２４は、妥当なルール候補生成部２３によりリストＬに追加されたルール候補について、ルールが極小なもの（minimal）であるか否かのチェックを行う。より具体的には、ルールの極小性判定部２４は、要素がサイズ（ＣＦＤの条件部のアイテムの個数）の昇順にソートする（ステップＡ７）。
【００６１】
次に、ルールの極小性判定部２４は、昇順にソートされたリストＬの先頭から、ルールを順に取り出し、該ルールを出力する（ステップＡ８）。
【００６２】
ルールの極小性判定部２４は、リストＬに含まれているルール候補の中で、ステップＡ８で取り出したルールに対して冗長なものを除去する（ステップＡ９）。
【００６３】
ルールの極小性判定部２４は、ステップＡ８、Ａ９の処理をリストＬが空になるまで繰り返し（ステップＡ１０のＮｏ分岐）、リストＬが空の場合（ステップＡ１０のＹｅｓ分岐）、処理を終了する。
【００６４】
＜作用効果＞
上記した本実施形態によれば、連続値属性の属性値のとり得る範囲や分布から得られる１つ又は複数の代表点に基づき、連続属性の属性値を、代表点とその類似度で置き換えて得られたウェイテッド・データベースから抽出されたルールに対して支持度、確信度の計算を行う構成としている。本実施形態によれば、代表点と類似度を用いてルールの発見を行うため、例えば区間の境界で分かれる２つの近接した値がそれぞれ別の値と解釈されてしまい有用なルールを発見できない、という問題を解消することができる。また、連続値をとる属性について、殆どの値が互いに異なるものとなり、各属性値の出現頻度が小さくなり、有用なルールが得られないという問題も解消することができる。
【００６５】
＜実施例１＞
次に具体例を用いて説明する。なお、実施例１の装置構成、動作は図１、図２を参照して説明した前記実施形態と同一である。実施例１では、図３（Ａ）に示すように、データベース記憶部３１には以下の属性・タプルからなるデータ集合が登録されている。
【００６６】
［表１］データベース記憶部３１
2014208728.tif 000003
【００６７】
ウェイテッド・データベース生成部２１は、上記の表１および、入力パラメータとして、図３（Ｂ）に示すように、
連続値属性ｒ’（手当）、
代表点の個数（２）、
類似度関数：
2014208728.tif 000004
を受け取る。
【００６８】
特に制限されないが、ウェイテッド・データベース生成部２１は、２つの代表点ｔ１、ｔ２をそれぞれ20000、40000と定める（図３（Ｃ））。ｔ１＝20000、ｔ２＝40000は、値域（0，60000）（属性値のとり得る範囲）を３等分する２つの点である。なお、代表点の個数＝２を入力する代わりに、代表点の個数とともに代表点の選択の仕方の情報（例えば属性値のとり得る範囲を３等分する等）又はその値そのもの（例えばｔ１＝20000、ｔ２＝40000）をウェイテッド・データベース生成部２１に入力する構成としてもよい。
【００６９】
ウェイテッド・データベース生成部２１は、上記類似度関数に基づき、図３（Ｄ）及び以下の表２のウェイテッド・データベース（weighted DB）を生成する。
【００７０】
例えばタプル１の手当ｘ＝29000に関して、
代表点ｔ１＝20000との類似度は、
1 - |29000 − 20000| /60000＝1-0.15＝0.85、
代表点ｔ２＝40000との類似度は、
1 - |29000 − 40000| /60000≒1-0.18=0.82、
と求まる。
【００７１】
また、例えばタプル２の手当ｘ＝59000に関して、
代表点ｔ１＝20000との類似度は、
1 - |59000 − 20000| /60000=1-0.65=0.35、
代表点ｔ２＝40000との類似度は、
1 - |59000 − 40000| /60000≒1-0.32=0.68
と求まる。他も同様にして求められる（図３（Ｄ）、表２）。
【００７２】
なお、図３（Ｄ）（以下の表２）のウェイテッド・データベース（weighted DB）において、各タプル１乃至４の手当の欄の２つ代表点20000、40000に付随する括弧内の数値は、当該代表点に対する当該タプルの手当の類似度である。
【００７３】
［表２］ウェイテッド・データベース（weighted DB）
2014208728.tif 000005
【００７４】
フリーアイテムセット生成部２２は、ウェイテッド・データベースと、パラメータとして、支持度（頻度）閾値ｋ＝１、確信度閾値ｐ＝０．７を受け取る。ここで、ｋは、妥当なルールと判定するための支持度（頻度）の下限（閾値）、ｐは確信度の下限（閾値）である。
【００７５】
フリーアイテムセット生成部２２は、データベース中の出現頻度がｋ＝１以上である、すべてのフリーアイテムセットを列挙する（図３（Ｅ）参照）。
【００７６】
フリーアイテムセットの中の１つである「会社：Ａ社」は、図３（Ｄ）のウェイテッド・データベース（weighted DB）において、２つのタプル１、２で出現しているため、頻度は2となる（支持度＝2）。これを、図３（Ｅ）では、“（会社＝Ａ社）：２”として表している。
【００７７】
また、アイテム「手当：20000」は、図３（Ｄ）のウェイテッド・データベース（weighted DB）において、４つのタプルでそれぞれ、0.85、0.35、0.68、0.82の頻度で出現していると看做すことができ、これらの総和は、2.7となる。同様に、図３（Ｅ）のアイテム「手当：40000」は、図３（D）の４つのタプルにおいて、0.82、0.68、0.35、0.85の頻度で出現してとしている看做すことができ、これらの総和は2.7となる。
【００７８】
アイテム（会社＝Ａ社）をルールの条件部とし、アイテム「手当：40000」をルールの帰結部とすると、２つのアイテム「会社：Ａ社」、「手当：40000」の頻度は、
会社がＡ社であるタプル１について、0.82、
会社がＡ社であるタプル２について、0.68、
の和1.5となる。
【００７９】
したがって、ルール「会社：Ａ社→手当：40000」の支持度は1.5、確信度は、1.5/2=0.75となる。すなわち、確信度は、ルールの条件部（「会社：Ａ社」）がマッチするタプル数（＝２）の中で、当該ルール「会社：Ａ社→手当：40000」が成立するタプル数（0.82＋0.68=1.5）の割合＝1.5/2=0.75として求められる。
【００８０】
妥当なルール候補生成部２３は、ルール「会社：Ａ社→手当：40000」の支持度（=1.5）が閾値ｋ（=1）より大であり、確信度（=0.75）が閾値ｐ（=0.7）より大であるため、このルール「会社：Ａ社→手当：40000」をルール候補としてリストＬに加える。同様にして、妥当なルール候補生成部２３は、支持度が1.5、確信度が0.75のルール「会社：Ｂ社→手当：20000」をルール候補としてリストＬに加える（図３（Ｆ）参照）。
【００８１】
これ以外に、パラメータの条件を満たすルールは存在しない。例えば、図３（Ｅ）の「会社：Ａ社→手当：20000」、「会社：Ｂ社→手当：40000」の支持度は1.2、確信度は1.2/2=0.6となり、確信度が閾値ｐ（=0.7）より小であるため、リストLに出力されない。また、アイテム「手当：40000」をルールの条件部とし、アイテム「会社：Ａ社」をルールの帰結部としたルール「手当：40000→会社：Ａ社」は、確信度が1.5/2.7=0.56となり、条件を満たさず（確信度が閾値ｐ（=0.7）よりも小である）、リストＬに出力されない。
【００８２】
＜実施例２＞
次に別の具体例について説明する。なお、実施例２の装置構成、動作は、実施例１同様、図１、図２を参照して説明した前記実施形態と同一である。この実施例では、図４（Ａ）に示すように、データベース記憶部３１には、以下の表３の属性・タプルからなるデータ集合が登録されている。
【００８３】
［表３］データベース記憶部３１
2014208728.tif 000006
【００８４】
ここで、得点の分布は、平均μ＝５０、標準偏差σ＝１０の正規分布であるものとする。
【００８５】
図１のウェイテッド・データベース生成部２１は、上記の表、およびパラメータとして、
支持度の閾値ｋ、確信度の閾値ｐ、
連続値属性（得点）、
代表点の個数（３）、
類似度関数：
2014208728.tif 000007
（但し、F(・)は正規分布の累積密度関数（累積分布関数））
を受け取る（図４（Ｂ）参照）。
【００８６】
平均μ、標準偏差σの正規分布：
2014208728.tif 000008
【００８７】
に対する累積分布関数F(・)は以下で与えられる。
【００８８】
2014208728.tif 000009
【００８９】
ただし、erf(・)は、誤差関数であり、以下で与えられる。
【００９０】
2014208728.tif 000010
【００９１】
特に制限されないが、３つの代表点として、分布の代表値である平均値μと、μ-σ、μ＋σである、ｔ１＝４０、ｔ２＝５０、ｔ３＝６０と定め（図４（Ｃ）参照）、ウェイテッド・データベース生成部２１は、上式(2)の類似度関数に基づき、ウェイテッド・データベースを生成する（図４（Ｄ）、以下の表４参照）。なお、ウェイテッド・データベース生成部２１に、代表点の個数３を入力する代わりに、３つの代表点の選択の仕方（例えばμ、およびμ±σを選択すること）を、ウェイテッド・データベース生成部２１に入力する構成としてもよい。図４（Ｄ）、表４の各タプルにおいて、３つの代表点４０、５０、６０に付随する括弧内の数値は、もとの得点と当該代表点との類似度である。
【００９２】
なお、特に制限されないが、以下では、累積分布関数F(・)の値は、
ｚ＝（ｘ−μ）/σ                        ・・・(6)
で変数変換したｚについて値を求めるものとする。この例では、μ＝５０、σ＝１０である。
【００９３】
例えば、タプル１では、代表点４０、５０、６０に対するＡ氏の点５５の類似度を求めるにあたり、式（６）から、代表点ｔ１：４０、ｔ２：５０、ｔ３：６０に対応するｚの値はそれぞれ、−１、０、＋１であり、Ａ氏の得点ｘ：５５に対応するｚの値は０．５である。したがって、タプル１のＡ氏の得点５５と代表点４０の類似度は、
1 - ｜F(0.5)-F(-1)｜で与えられる。正規分布表から、
F（-1）=0.1578、
F（0.5）=0.1915+0.5=0.6915
が得られる。したがって、
1 - ｜F(0.5)-F(-1)｜＝1 - ｜0.6915-0.1578｜＝１−0.5337＝0.4663≒0.46
と求まる。
【００９４】
また、得点５５と代表点５０、６０の類似度は、F（０）＝0.5、F（1）＝0.5＋0.3413から、それぞれ、
１−｜F(0.5) - F(0)｜＝１−｜0.1915−０｜＝0.8085≒0.80、
１−｜F(0.5) -F(1)｜＝１−｜0.6915−0.8413｜＝１−0.1498＝0.8502≒0.85
と求まる。以上により、代表点と類似度の対（40， 0.46)、（50， 0.80)、（60， 0.85)が求まる（図４（Ｄ）、下記表４のタプル１参照）。他のタプルの代表点と類似度の対も同様にして計算される。
【００９５】
［表４］ウェイテッド・データベース（weighted DB）
2014208728.tif 000011
【００９６】
フリーアイテムセット生成部２２は、ウェイテッド・データベース、およびパラメータとして支持度閾値ｋ＝１、確信度閾値ｐ＝０．８を受け取り、ウェイテッド・データベース中の出現頻度がｋ＝１以上である、すべてのフリーアイテムセットを列挙する（図４（Ｅ）参照）。
【００９７】
その中の１つである「人物：Ａ氏」の出現頻度は、２つのタプル１、２において出現しているため、２となる。アイテム「人物：Ａ氏」をルールの条件部とし、アイテム「得点：５０」をルールの帰結とすると、２つのアイテム「人物：Ａ氏」、「得点：５０」の頻度は、
人物がＡ氏であるタプル１について０．８０、
人物がＡ氏であるタプル２について０．８０
の和の１．６となる。
【００９８】
ルール「人物：Ａ氏→得点：５０」の支持度は１．６、確信度は１．６／２＝０．８となる。妥当なルール候補生成部２３では、ルール「人物：Ａ氏→得点：５０」が条件（支持度＞ｋ＝１、確信度＞ｐ＝０．８）を満たすため、リストＬに加える。妥当なルール候補生成部２３は、他にも同様にして、支持度が２．５１、確信度が２．５１／３＝０．８４のルール「人物：Ｂ氏→得点：６０」をリストＬに加える。他にはパラメータの条件を満たすルールが存在しない。例えば、「得点：５０→人物：Ａ氏」は、確信度が１．６／３．７７＝０．４２となり、確信度＞ｐ＝０．８を満たさない。このため、妥当なルール候補生成部２３は、処理を終了する。
【００９９】
＜実施形態２＞
次に第２の実施形態について説明する。図５を参照すると、本発明の第２の実施の形態の情報処理装置（システム）は、データ処理装置（コンピュータ、プロセッサ）６、入力装置１、出力装置４、データベース記憶部３１を備えた記憶装置３、ルール発見用プログラム５を備えている。ルール発見用プログラム５（記憶媒体に保持される）は、データ処理装置（コンピュータ、プロセッサ）６に読み込まれ、データ処理装置６の動作を制御する。データ処理装置６は、ルール発見用プログラム５の制御により以下の処理、すなわち前記第１の実施形態におけるデータ処理装置２による処理（図１のウェイテッド・データベース生成部２１、フリーアイテムセット生成部２２、妥当なルール候補生成部２３、ルールの極小性判定部２４の各処理）と同一の処理を実行する。ウェイテッド・データベース生成処理の実行により、記憶装置３に、ウェイテッド・データベースを格納するようにしてもよい。すなわち、記憶装置３は、図１に示したウェイテッド・データベース（Weighted DB）記憶部３２を備えた構成としてもよい。
【０１００】
上記実施形態の図２等では、ＣＦＤルール発見を例に説明したが、本発明はルールとしてＣＦＤルールに制限されるものでなく、相関ルール、ＦＤ（関数従属性）ルール等に適用可能である。
【０１０１】
なお、上記の特許文献、非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各請求項の各要素、各実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ乃至選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【０１０２】
１  入力装置
２  データ処理装置
３  記憶装置
４  出力装置
５  ルール発見用プログラム
６  データ処理装置
２１  ウェイテッド・データベース生成部
２２  フリーアイテムセット生成部
２３  妥当なルール候補生成部
２４  ルールの極小性判定部
３１  データベース記憶部
３２  ウェイテッド・データベース記憶部
【図１】
2014208728.tif 000012
【図２】
2014208728.tif 000013
【図３】
2014208728.tif 000014
【図４】
2014208728.tif 000015
【図５】
2014208728.tif 000016
【国際調査報告】
2014208728.tif 000017
2014208728.tif 000018
2014208728.tif 000019
2014208728.tif 000020