(57)【要約】【課題】条件部及び結論部を含むルール間の汎化関係を特定可能とすること。【解決手段】汎化関係特定装置は、それぞれが条件部と結論部とを含む複数のルールから結論部が共通する第１のルール群を抽出する抽出部と、前記第１のルール群のうち、他のルールの条件部の一部を構成する条件部を含むルールを、当該他のルールを汎化したルールであると特定する特定部とを有する。【選択図】図２
2019128627.tif 000002
【特許請求の範囲】
【請求項１】
それぞれが条件部と結論部とを含む複数のルールから結論部が共通する第１のルール群を抽出する抽出部と、
前記第１のルール群のうち、他のルールの条件部の一部を構成する条件部を含むルールを、当該他のルールを汎化したルールであると特定する特定部と、
を有することを特徴とする汎化関係特定装置。
【請求項２】
前記特定部は、前記第１のルール群から、条件部の要素数が最小である第２のルール群を抽出し、前記第２のルール群のうち、前記第２のルール群に含まれない他のルールの条件部の一部を構成する条件部を含むルールを、当該他のルールを汎化したルールであると特定する、
ことを特徴とする請求項１記載の汎化関係特定装置。
【請求項３】
前記複数のルールは、アソシエーション分析によって推定されたルールである、
ことを特徴とする請求項１又は２記載の汎化関係特定装置。
【請求項４】
それぞれが条件部と結論部とを含む複数のルールから結論部が共通する第１のルール群を抽出する抽出手順と、
前記第１のルール群のうち、他のルールの条件部の一部を構成する条件部を含むルールを、当該他のルールを汎化したルールであると特定する特定手順と、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、汎化関係特定装置及びプログラムに関する。
【背景技術】
【０００２】
現行システムのデータからビジネスルールを推定する技術としては、データマイニング技術におけるアソシエーション分析（非特許文献１、非特許文献２）等を利用することが考えられる。アソシエーション分析を使った方法では、現行システムに含まれるトランザクションデータから，ｓｕｐｐｏｒｔ値とｃｏｎｆｉｄｅｎｃｅ値を適切に設定することにより、ビジネスルール集合を推定することができる。
【０００３】
ビジネスルールの推定結果はビジネスルールの分析者に提示され、真のビジネスルール発見に役立てられる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】金明哲 "Rによるデータサイエンス"pp276-293，森北出版，2007.10.1
【非特許文献２】豊田秀樹"データマイニング入門"pp147-183,東京図書,2008.12.5
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、推定されたビジネスルールの数が膨大な場合、推定されたビジネスルール群の中から真のビジネスルールを発見するのは難しい。特に、上記のようなアソシエーション分析等の従来技術を使って得られたビジネスルール間には汎化関係が存在し、本来であれば考慮しなくてもよいルールまで得られてしまうという欠点が存在する。
【０００６】
図１は、ビジネスルール間の汎化関係の一例を示す図である。図１において、ビジネスルール（２）は、ビジネスルール（１）を汎化したルールであるといえる。なぜなら、ビジネスルール（１）では、割引適用に対する条件として女性であることが必要となっているが、ビジネスルール（２）では当該条件は必要ではなく、２年以上契約であれば割引適用になる。つまり、２つのビジネスルールが同時に存在する場合、ビジネスルール（１）には余分な条件が加えられている状態にあるといえる。
【０００７】
このような汎化関係の存在により、従来法によって得られるビジネスルール集合は、ルール数が多くなり、真に必要なビジネスルールが埋没する可能性が有る。
【０００８】
本発明は、上記の点に鑑みてなされたものであって、条件部及び結論部を含むルール間の汎化関係を特定可能とすることを目的とする。
【課題を解決するための手段】
【０００９】
そこで上記課題を解決するため、汎化関係特定装置は、それぞれが条件部と結論部とを含む複数のルールから結論部が共通する第１のルール群を抽出する抽出部と、前記第１のルール群のうち、他のルールの条件部の一部を構成する条件部を含むルールを、当該他のルールを汎化したルールであると特定する特定部とを有する。
【発明の効果】
【００１０】
条件部及び結論部を含むルール間の汎化関係を特定可能とすることができる。
【図面の簡単な説明】
【００１１】
【図１】ビジネスルール間の汎化関係の一例を示す図である。
【図２】本発明の実施の形態における汎化関係特定装置１０のハードウェア構成例を示す図である。
【図３】本発明の実施の形態における汎化関係特定装置１０の機能構成例を示す図である。
【図４】入力データ記憶部１１１の構成例を示す図である。
【図５】ルール記憶部１１２の構成例を示す図である。
【図６】汎化関係特定装置１０が実行する処理手順の一例を説明するためのフローチャートである。
【図７】ルール集合Ｒ２が除去された後のルール集合Ｒ１を示す図である。
【図８】ルール集合Ｒ２に含まれる各ルールに対してラベルの項目が追加された状態を示す図である。
【図９】ルール集合Ｒ３を示す第１の図である。
【図１０】ラベルが設定済みのルールが無い場合のラベルの設定例を示す図である。
【図１１】ルール集合Ｒ３を示す第２の図である。
【図１２】ラベルを設定済みの他のルールの条件部を含む条件部を有するルールに対するラベルの設定例を示す第１の図である。
【図１３】ルール集合Ｒ３を示す第３の図である。
【図１４】ラベルを設定済みの他のルールの条件部を含む条件部を有するルールに対するラベルの設定例を示す第２の図である。
【発明を実施するための形態】
【００１２】
以下、図面に基づいて本発明の実施の形態を説明する。図２は、本発明の実施の形態における汎化関係特定装置１０のハードウェア構成例を示す図である。図２の汎化関係特定装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００１３】
汎化関係特定装置１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００１４】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従って汎化関係特定装置１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００１５】
図３は、本発明の実施の形態における汎化関係特定装置１０の機能構成例を示す図である。図３において、汎化関係特定装置１０は、ルール推定部１１、結論部共通ルール抽出部１２、汎化関係特定部１３及び出力部１４等を有する。これら各部は、汎化関係特定装置１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。汎化関係特定装置１０は、また、入力データ記憶部１１１及びルール記憶部１１２を利用する。これら各記憶部は、例えば、補助記憶装置１０２、又は汎化関係特定装置１０にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
【００１６】
入力データ記憶部１１１には、或る業務（ビジネス）を行なうためのシステムにおいて管理されている業務データ（以下、「入力データ」という。）が記憶されている。
【００１７】
図４は、入力データ記憶部１１１の構成例を示す図である。図４における各入力データ（各レコード）は、或るサービス（以下、「サービスＸ」という。）に関する顧客情報を示し、「顧客番号」、「契約期間」、「性別」、「プラン」、及び「割引適用」等の項目を含む。
【００１８】
「顧客番号」は、顧客の識別情報である。「契約期間」は、顧客がサービスＸを契約してから経過した期間について、２年を閾値として区分した値である。「性別」は、顧客の性別である。プランは、サービスＸに関して選択可能な複数のプランのうち、顧客が契約しているプランの名前である。「割引適用」は、顧客に対してサービスＸの料金の割引の適用の有無を示す情報である。
【００１９】
ルール推定部１１は、アソシエーション分析（非特許文献１、非特許文献２）等を利用して、入力データ記憶部１１１に記憶されている入力データ群から、条件部及び結論部を含むルール（例えば、ビジネスルール）を推定（抽出）し、当該ルール群をルール記憶部１１２に記憶する。
【００２０】
図５は、ルール記憶部１１２の構成例を示す図である。図５において、ルール記憶部１１２は、推定されたルールごとに、「項番」、「条件部」及び「結論部」を含むレコードを記憶する。
【００２１】
項番は、ルール（又はレコード）の識別情報である。「条件部」は、ルールの条件部である。条件部の値は、入力データの「契約期間」、「性別」及び「プラン」のうちの１以上の値の組である。「結論部」は、ルールの結論部である。本実施の形態において、「結論部」の値は、入力データの「割引適用」の値である。
【００２２】
結論部共通ルール抽出部１２は、ルール記憶部１１２に記憶されたルール群から、結論部が共通する（一致する）ルール群を抽出する。
【００２３】
汎化関係特定部１３は、結論部共通ルール抽出部１２が抽出したルール群に含まれるルール間における汎化関係を特定する。すなわち、汎化関係特定部１３は、結論部共通ルール抽出部１２が抽出したルール群のうちのいずれかのルールが、他のルールを汎化したルールであることを特定する。
【００２４】
出力部１４は、汎化関係特定部１３によって特定された汎化関係を示す情報を出力する。
【００２５】
なお、入力データ記憶部１１１及びルール推定部１１は、汎化関係特定装置１０が有していなくてもよい。また、結論部共通ルール抽出部１２及び汎化関係特定部１３についても、複数のコンピュータに分散されていてもよい。
【００２６】
以下、汎化関係特定装置１０が実行する処理手順について説明する。図６は、汎化関係特定装置１０が実行する処理手順の一例を説明するためのフローチャートである。図６では、既にルール記憶部１１２にルール群が記憶されており、当該ルール群がルール集合Ｒ１としてメモリ装置１０３等に読み出されている状況が前提とされている。ルール集合Ｒ１は、ルール記憶部１１２に記憶されている全ルールの集合である。
【００２７】
ステップＳ１０１において、結論部共通ルール抽出部１２は、ルール集合Ｒ１から、一つのルール（以下「ｒ１」という。）を取得し、例えば、メモリ装置１０３に記憶する。続いて、結論部共通ルール抽出部１２は、ｒ１と結論部が一致する（共通する）全てのルール（以下「ルール集合Ｒ２」という。）をルール集合Ｒ１から全て取り出し（抽出し）、ルール集合Ｒ１からルール集合Ｒ２を除去する（Ｓ１０２）。なお、ルール集合Ｒ２には、ｒ１も含まれる。
【００２８】
図７は、ルール集合Ｒ２が除去された後のルール集合Ｒ１を示す図である。例えば、ｒ１の結論部が「有り」である場合、ルール集合Ｒ２には、結論部が「無し」であるルールが残っている。
【００２９】
続いて、汎化関係特定部１３は、ルール集合Ｒ２に含まれる各ルールに対してラベルを設定するための項目を追加する（Ｓ１０３）。ラベルとは、ルール間の汎化関係を区別するための識別情報である。後段の処理において、汎化関係が特定されたルール間には、同じラベルが設定（付与）される。
【００３０】
図８は、ルール集合Ｒ２に含まれる各ルールに対してラベルの項目が追加された状態を示す図である。例えば、図８には、「項番」が「Ｒ０１」であるルール（以下、「ルールＲ０１」といい、他のルールも同じ命名規則に従う。）がｒ１である場合のルール集合Ｒ２に含まれる各ルールに対して「ラベル」の項目が追加された例が示されている。
【００３１】
続いて、汎化関係特定部１３は、ルール集合Ｒ２に含まれるルールの中で、ラベルが設定されていないルールのうち、条件部の要素数（項目数）の数が最小のルールの集合（以下「ルール集合Ｒ３」という。）を取り出す（抽出する）（Ｓ１０４）。
【００３２】
図９は、ルール集合Ｒ３を示す第１の図である。図９に示されるルール集合Ｒ２の中で、条件部を構成する要素（項目）の数が最小のルールは、当該数が１であるルールＲ０１及びルールＲ０２である。したがって、この２つのルールがルール集合Ｒ３として取り出される。
【００３３】
続いて、汎化関係特定部１３は、ルール集合Ｒ２についてラベルが設定されているルールの有無を判定する（Ｓ１０５）。図８又は図９に示したルール集合Ｒ２の中には、該当するルールは無い。したがって、この場合（Ｓ１０５でＮＯ）、汎化関係特定部１３は、ルール集合Ｒ３に含まれる各ルールに対しユニークな（当該各ルール間で異なる）ラベルを設定する（Ｓ１０６）。
【００３４】
図１０は、ラベルが設定済みのルールが無い場合のラベルの設定例を示す図である。図１０には、ルールＲ０１に対してラベル「Ｌ１」が設定され、ルールＲ０２に対してラベル「Ｌ２」が設定された例が示されている。
【００３５】
続いて、汎化関係特定部１３は、ルール集合Ｒ２に含まれる全てのルールに対してラベルを設定済みであるか否かを判定する（Ｓ１１０）。ラベルが設定されていないルールが有る場合（Ｓ１１０でＮＯ）、汎化関係特定部１３は、ステップＳ１０４以降を繰り返す。２回目に実行されるステップＳ１０４では、図１１に示されるようなルール集合Ｒ３が取り出される。
【００３６】
図１１は、ルール集合Ｒ３を示す第２の図である。２回目のステップＳ１０４の時点において、ラベルが設定されていないルールのうち、条件部を構成する要素（項目）の数が最小のルールは、当該数が２であるルールＲ０３、Ｒ０４、Ｒ０６、Ｒ０８及びＲ０９である。したがって、これらのルールがルール集合Ｒ３として取り出される。
【００３７】
続くステップＳ１０５における判定はＹＥＳとなる。したがって、ステップＳ１０７以降が実行される。ステップＳ１０７において、汎化関係特定部１３は、ルール集合Ｒ３に含まれる各ルールについて、当該ルールの条件部の要素の集合が包含する要素の集合を条件部とするルール集合Ｒ２内のルールの有無を判定する。換言すれば、ルール集合Ｒ３内の当該ルールがルール集合Ｒ２内において既にラベルが設定されている他のルールの条件部が一部を構成する条件部を有するかが判定される。
【００３８】
該当するルールが無い場合（Ｓ１０８でＮＯ）、ステップＳ１０６が実行される。該当するルールが有る場合（Ｓ１０８でＹＥＳ）、汎化関係特定部１３が、該当する各ルールについて、当該ルールの条件部の一部の要素の集合の一部を構成する条件部を有する他のルールのラベルを当該ルールに設定する（Ｓ１０９）。尚、Ｓ１０８の判定は、ルール集合Ｒ３内の各ルールに対して個別に実施され、判定結果に伴うＳ１０６、Ｓ１０９の実施も個別に実施される。
【００３９】
図１２は、ラベルを設定済みの他のルールの条件部を含む条件部を有するルールに対するラベルの設定例を示す図である。図１２に示されるルール集合Ｒ３において、ルールＲ０３、Ｒ０４及びＲ０６の条件部は、ラベルを設定済みであるルールＲ０１の条件部の要素の集合を含む。換言すれば、ルールＲ０１の条件部の要素の集合は、ルールＲ０３、Ｒ０４及びＲ０６の条件部の要素の集合の一部を構成する。したがって、ルールＲ０３、Ｒ０４及びＲ０６に対して、ルールＲ０１に設定されているラベル（Ｌ１）が設定される。すなわち、ルールＲ０１が、ルールＲ０３、Ｒ０４及びＲ０６を汎化したルールであることが特定される。
【００４０】
また、ルールＲ０８及びＲ０９の条件部は、ラベルを設定済みであるルールＲ０２の条件部の要素の集合を含む。換言すれば、ルールＲ０２の条件部は、ルールＲ０８及びＲ０９の条件部の要素の集合の一部を構成する。したがって、ルールＲ０８及びＲ０９に対して、ルールＲ０２に設定されているラベル（Ｌ２）が設定される。すなわち、ルールＲ０２が、ルールＲ０８及びＲ０９を汎化したルールであることが特定される。
【００４１】
ステップＳ１０６又はＳ１０９に続いてステップＳ１１０が実行される。図１２の例によれば、ルール集合Ｒ２内にはラベルが設定されていないルールが有るため（Ｓ１１０でＮＯ）、ステップＳ１０４以降が再度実行される。
【００４２】
３回目に実行されるステップＳ１０４では、図１３に示されるようなルール集合Ｒ３が取り出される。
【００４３】
図１３は、ルール集合Ｒ３を示す第３の図である。３回目のステップＳ１０４の時点において、ラベルが設定されていないルールのうち、条件部を構成する要素（項目）の数が最小のルールは、当該数が３であるルールＲ１０、Ｒ１１及びＲ１４である。したがって、これらのルールがルール集合Ｒ３として取り出される。
【００４４】
ルール集合Ｒ２には、ラベルを設定済みのルールが有るため（Ｓ１０５でＹＥＳ）、図１３に示したルール集合Ｒ３に関してステップＳ１０７が実行される。当該ルール集合Ｒ３に含まれる各ルールの条件部の要素の集合は、ルール集合Ｒ２の他のいずれかのルールの条件部の要素の集合を含む（Ｓ１０８でＹＥＳ）、従って、当該ルール集合Ｒ３に含まれる各ルールについてステップＳ１０９が実行される。
【００４５】
図１４は、ラベルを設定済みの他のルールの条件部を含む条件部を有するルールに対するラベルの設定例を示す第２の図である。
【００４６】
図１４に示されるルール集合Ｒ３において、ルールＲ１０及びＲ１１の条件部の要素の集合は、ラベルを設定済みであるルールＲ０１の条件部の要素の集合を含む。換言すれば、ルールＲ０１の条件部の要素の集合は、ルールＲ１０及びＲ１１の条件部の要素の集合の一部を構成する。したがって、ルールＲ１０及びＲ１１に対して、ルールＲ０１に設定されているラベル（Ｌ１）が設定される。すなわち、ルールＲ０１が、ルールＲ１０及びＲ１１を汎化したルールであることが特定される。
【００４７】
また、ルールＲ１４の条件部の要素の集合は、ラベルを設定済みであるルールＲ０２の条件部の要素の集合を含む。換言すれば、ルールＲ０２の条件部の要素の集合は、ルールＲ１４の条件部の要素の集合の一部を構成する。したがって、ルールＲ１４に対して、ルールＲ０２に設定されているラベル（Ｌ２）が設定される。すなわち、ルールＲ０２が、ルールＲ１４を汎化したルールであることが特定される。
【００４８】
なお、ルールＲ１０の条件部の要素の集合は、ラベルを設定済みであるルールＲ０３の条件部の要素の集合も含む。したがって、ルールＲ１０に対して、ルールＲ０３に設定されているラベル（Ｌ１）が設定されてもよい。但し、ルールＲ０３に設定されているラベルは、ルールＲ０１に設定されているラベルと同じである。したがって、この場合であっても、前記した場合と結果は同じである。ルールＲ１１及びルールＲ１４についても同様である。
【００４９】
以上で、ルール集合Ｒ２の全てのルールに対してラベルが設定された（Ｓ１１０でＹＥＳ）。この場合、出力部１４は、ラベルが設定されたルール集合Ｒ２の内容を出力する（Ｓ１１１）。出力先は、補助記憶装置１０２であってもよいし、表示装置であってもよいし、他の出力先であってもよい。また、出力方法としては、例えば、ルール集合Ｒ２内のルール群をラベルの同一性に基づいてグループに分類し、グループ内において条件部の要素数が最小であるルールを頂点のノードとし、他のルールを末端のノードとするグラフ形式によって、頂点のノードに係るルールが末端のノードに係るルールを汎化したルールであることを表現してもよい。
【００５０】
続いて、汎化関係特定部１３は、ルール集合Ｒ１（図７）が空であるか（ルールが残っていないか）否かを判定する（Ｓ１１２）。ルール集合Ｒ１（図７）には、１以上のルールが残っている（Ｓ１１２でＮＯ）。したがって、この場合、ステップＳ１０１以降が繰り返される。
【００５１】
本実施の形態では、各ルールの結論部の値は「有り」又は「無し」の２通りである。したがって、２回目のステップＳ１０１以降が実行されることによって、ステップＳ１１２の判定はＹＥＳとなり、図６の処理手順は終了する。
【００５２】
上述したように、本実施の形態によれば、汎化の関係にあるルール間には同じラベルが設定（付与）されるため、条件部及び結論部を含むルール間の汎化関係を特定可能とすることができる。その結果、有用なルールの絞り込みを行うことができ、ルールの分析者が真に必要なルールを発見する際に有益な情報を提供できる。したがって、ルールの分析者をサポートし、分析者の作業負担の軽減を期待できる。
【００５３】
なお、本実施の形態は、ビジネスルール以外のルールに関して適用されてもよい。
【００５４】
なお、本実施の形態において、結論部共通ルール抽出部１２は、抽出部の一例である。汎化関係特定部１３は、特定部の一例である。ルール集合Ｒ２は、第１のルール群の一例である。ルール集合Ｒ３は、第２のルール群の一例である。
【００５５】
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００５６】
１０          汎化関係特定装置
１１          ルール推定部
１２          結論部共通ルール抽出部
１３          汎化関係特定部
１４          出力部
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
１１１        入力データ記憶部
１１２        ルール記憶部
Ｂ            バス
【図１】
2019128627.tif 000003
【図２】
2019128627.tif 000004
【図３】
2019128627.tif 000005
【図４】
2019128627.tif 000006
【図５】
2019128627.tif 000007
【図６】
2019128627.tif 000008
【図７】
2019128627.tif 000009
【図８】
2019128627.tif 000010
【図９】
2019128627.tif 000011
【図１０】
2019128627.tif 000012
【図１１】
2019128627.tif 000013
【図１２】
2019128627.tif 000014
【図１３】
2019128627.tif 000015
【図１４】
2019128627.tif 000016