(57)【特許請求の範囲】
【請求項１】
複数の種類の変数値をそれぞれが含む複数のレコードを含むデータを取得する取得部と、
前記複数のレコードのそれぞれが配置された複数のグループを生成する生成部と、
前記複数のグループに含まれる第１グループに配置された第１レコードを、前記複数のグループに含まれない新たなグループである第２グループに再配置した場合における前記複数のレコードの配置状況に基づく第１評価値と、前記第１グループに配置された各レコードを、前記第１グループまたは第２グループのいずれかに再配置した場合における前記複数のレコードの配置状況に基づく第２評価値とを算出する算出部と、
前記第１評価値と前記第２評価値との差を用いることによって算出された比較値と、前記複数のレコードの再配置前の配置状況に基づく第３評価値との比較結果に基づき、前記第１レコードを再配置するか否かについての判定を行う判定部と、
前記第１レコードを前記再配置すると判定した場合、前記第１レコードの再配置を行う再配置部と、を有する、
ことを特徴とするデータ分類装置。
【請求項２】
請求項１において、
前記判定部は、
前記第２評価値から前記第１評価値を減算することにより第１減算値を算出し、
前記第１評価値から前記第１減算値を減算して算出した第２減算値が、前記複数のレコードの現在の配置状況に基づく第３評価値よりも小さい場合、前記第１レコードを再配置する旨の判定を行う、
ことを特徴とするデータ分類装置。
【請求項３】
請求項１において、
前記算出部は、前記第１レコードを前記第２グループに再配置した場合における、前記複数のグループ及び前記第２グループを含むグループ毎であって前記複数のレコード毎の出現確率の逆数を算出し、前記複数のグループ及び前記第２グループのうちの前記変数値のそれぞれを含むグループの数と、前記複数のグループ及び前記第２グループのうちのいずれかのグループに含まれる前記変数値の種類の数とに基づく共有値を前記変数値毎に算出し、算出した前記出現確率の逆数の総和と、算出した前記共有値の総和とを加算することにより、前記第１評価値を算出する、
ことを特徴とするデータ分類装置。
【請求項４】
請求項１において、
前記算出部は、前記第１グループに配置されたレコードを前記第１グループまたは第２グループのいずれかに再配置した場合における、前記複数のグループ及び前記第２グループを含むグループ毎であって前記複数のレコード毎の出現確率の逆数を算出し、前記複数のグループ及び前記第２グループのうちの前記変数値のそれぞれを含むグループの数と、前記複数のグループ及び前記第２グループのうちのいずれかのグループに含まれる前記変数値の種類の数とに基づく共有値を前記変数値毎に算出し、前記出現確率の逆数の総和と前記共有値の総和とを加算することにより、前記第２評価値を算出する、
ことを特徴とするデータ分類装置。
【請求項５】
請求項３または４において、
前記算出部は、算出した前記出現確率の逆数の対数の合計を第１の合計として算出し、算出した前記共有値の対数の合計を第２の合計として算出し、前記第１の合計と前記第２の合計とを加算することにより、前記第１または第２評価値を算出する、
ことを特徴とするデータ分類装置。
【請求項６】
複数の種類の変数値をそれぞれが含む複数のレコードを含むデータを取得し、
前記複数のレコードのそれぞれが配置された複数のグループを生成し、
前記複数のグループに含まれる第１グループに配置された第１レコードを、前記複数のグループに含まれない新たなグループである第２グループに再配置した場合における前記複数のレコードの配置状況に基づく第１評価値と、前記第１グループに配置された各レコードを、前記第１グループまたは第２グループのいずれかに再配置した場合における前記複数のレコードの配置状況に基づく第２評価値とを算出し、
前記第１評価値と前記第２評価値との差を用いることによって算出された比較値と、前記複数のレコードの再配置前の配置状況に基づく第３評価値との比較結果に基づき、前記第１レコードを再配置するか否かについて判定し、
前記第１レコードを前記再配置すると判定した場合、前記第１レコードの再配置を行う、
ことを特徴とするデータ分類方法。
【請求項７】
コンピュータに、
複数の種類の変数値をそれぞれが含む複数のレコードを含むデータを取得し、
前記複数のレコードのそれぞれが配置された複数のグループを生成し、
前記複数のグループに含まれる第１グループに配置された第１レコードを、前記複数のグループに含まれない新たなグループである第２グループに再配置した場合における前記複数のレコードの配置状況に基づく第１評価値と、前記第１グループに配置された各レコードを、前記第１グループまたは第２グループのいずれかに再配置した場合における前記複数のレコードの配置状況に基づく第２評価値とを算出し、
前記第１評価値と前記第２評価値との差を用いることによって算出された比較値と、前記複数のレコードの再配置前の配置状況に基づく第３評価値との比較結果に基づき、前記第１レコードを再配置するか否かについて判定し、
前記第１レコードを前記再配置すると判定した場合、前記第１レコードの再配置を行う、
処理を実行させることを特徴とするデータ分類プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ分類装置、データ分類プログラム及びデータ分類方法に関する。
【背景技術】
【０００２】
いわゆる離散データを各集団（以下、グループとも呼ぶ）に分類する方法（例えば、集団化やクラスタリング）が様々提案されている。離散データは、例えば、識別子（ＩＤ）付きＰＯＳ（Ｐｏｉｎｔ  Ｏｆ  Ｓａｌｅ  ｓｙｓｔｅｍ）のレコードや、ＷＥＢ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）アクセスログのレコード等を含む。
【０００３】
離散データの分析者は、人の意図や行動を推測する目的で、分類された離散データ（例えば、各集団のレコード）を分析する。例えば、かかる分析者は、共通の消費者ニーズに基づく購買行動を推測する目的や、共通の興味に基づくＷＥＢ閲覧行動を推測する目的で、分類された離散データを分析する。
【０００４】
離散データの分類の一方法として、集団内におけるレコードの発生確率（以下、出現確率とも呼ぶ）と集団数の定数倍とに基づいて算出された集団の評価値を参照して、離散データを分類する方法がある。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Ｄａｎｉｅｌ  Ｂａｒｂａｒａ、  Ｙｉ  Ｌｉ、  Ｊｕｌｉａ  Ｃｏｕｔｏ．  ＣＯＯＬＣＡＴ：  ａｎ  ｅｎｔｒｏｐｙ−ｂａｓｅｄ  ａｌｇｏｒｉｔｈｍ  ｆｏｒ  ｃａｔｅｇｏｒｉｃａｌ  ｃｌｕｓｔｅｒｉｎｇ．  ＣＩＫＭ  ２００２：  ５８２−５８９
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、提案されている離散データの分類化方法では、例えば、前記したレコードの発生確率と集団数の定数倍と基づいて評価値を算出する。そのため、分析者は、目的を容易に達成できる集団（グループ）に離散データを分類することが困難である場合がある。
【０００７】
そこで、一つの側面では、離散データを目的に応じたグループに分類することができるデータ分類装置、データ分類プログラム及びデータ分類方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
一つの態様では、複数の種類の変数値をそれぞれが含む複数のレコードを含むデータを取得する取得部と、前記取得部により取得された前記データに含まれる複数のレコードを分類する分類部と、を有し、前記分類部は、前記複数のレコードのそれぞれが配置された複数のグループを生成する生成部と、前記複数のグループに含まれる第１グループに配置された第１レコードを、前記複数のグループに含まれない新たなグループである第２グループに再配置した場合における前記複数のレコードの配置状況に基づく第１評価値と、前記第１グループに配置された各レコードを、前記第１グループまたは第２グループのいずれかに再配置した場合における前記複数のレコードの配置状況に基づく第２評価値とを算出する算出部と、前記第１評価値及び前記第２評価値に基づき、前記第１レコードを再配置するか否かについての判定を行う判定部と、前記第１レコードを前記再配置すると判定した場合、前記第１レコードの再配置を行う再配置部と、を有する。
【発明の効果】
【０００９】
一つの側面によれば、離散データを目的に応じたグループに分類することができる。
【図面の簡単な説明】
【００１０】
【図１】離散データに含まれるレコードを説明する図である。
【図２】離散データの一例と、一方法により離散データを分類した場合の集団内のレコードなどを示す集団構成テーブルの一例である。
【図３】離散データの分類の一方法の処理の流れを説明するフローチャート図である。
【図４】初期集団を示す集団構成テーブルを示す図である。
【図５】再配置後の集団構成テーブルを示す第１の図である。
【図６】再配置後の集団構成テーブルを示す第２の図である。
【図７】一方法の課題を説明する第１の図である。
【図８】一方法の課題を説明する第２の図である。
【図９】本実施の形態のデータ分類装置１のハードウエアブロック図である。
【図１０】図９のデータ分類装置１のソフトウエアブロック図である。
【図１１】本実施の形態における離散データの分類処理の流れを説明するフローチャート図である。
【図１２】図１１のステップＳ３の処理の流れを説明するフローチャート図である。
【図１３】実施の形態における具体例を説明する第１の図である。
【図１４】実施の形態における具体例を説明する第２の図である。
【図１５】実施の形態における具体例を説明する第３の図である。
【図１６】実施の形態における具体例を説明する第４の図である。
【図１７】実施の形態における具体例を説明する第５の図である。
【図１８】実施の形態における具体例を説明する第６の図である。
【図１９】実施の形態における具体例を説明する第７の図である。
【図２０】実施の形態における具体例を説明する第８の図である。
【図２１】実施の形態における具体例を説明する第９の図である。
【図２２】実施の形態における具体例を説明する第１０の図である。
【図２３】実施の形態における具体例を説明する第１１の図である。
【図２４】実施の形態における具体例を説明する第１２の図である。
【図２５】実施の形態における具体例を説明する第１３の図である。
【図２６】実施の形態における具体例を説明する第１４の図である。
【発明を実施するための形態】
【００１１】
[離散データに含まれるレコード]
図１は、離散データに含まれるレコードを説明する図である。以下の図において、”・・・”は、省略を示す。
【００１２】
図１（Ａ）は、ＩＤ付きＰＯＳのレコードを含む離散データＬＳＤ１を示す図である。ＩＤ付きＰＯＳのレコードは、２種類の変数値を含む。１種類目の変数値は、顧客を一意に識別する顧客ＩＤである。２種類目の変数値は、商品を一意に識別する商品ＩＤである。図１（Ａ）では、”｛顧客ＩＤ、商品ＩＤ｝”で１個のレコードを示す。そして、大括弧間のカンマで各レコードを区切る。図１（Ａ）では、例えば、｛顧客１、商品１｝のレコードは、顧客ＩＤとして”顧客１”、商品ＩＤとして”商品１”を含む。
【００１３】
図１（Ｂ）は、ＷＥＢアクセスログのレコードを含む離散データＬＳＤ２を示す図である。ＷＥＢアクセスログのレコードは、３種類の変数値を含む。１種類目の変数値は、アクセス先のサーバのＩＰアドレスである。２種類目の変数値は、このサーバにアクセスした利用者を一意に識別するユーザＩＤである。３種類目の変数値は、アクセスされたＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）である。
【００１４】
図１（Ｂ）では、｛ＩＰアドレス、ユーザＩＤ、ＵＲＬ｝で１個のレコードを示す。そして、大括弧間のカンマで各レコードを区切る。図１（Ｂ）では、例えば、｛ＩＰ１、 ｕｓｅｒ１、 ＵＲＬ１｝のレコードは、ＩＰアドレスとして”ＩＰ１”、ユーザＩＤとして”ｕｓｅｒ１”、ＵＲＬとして”ＵＲＬ１”を含む。
【００１５】
図１（Ｃ）は、ネットワークトラフィックログ（以下、トラフィックログとも呼ぶ）のレコードを含む離散データＬＳＤ３を示す図である。トラフィックログは、装置間でＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）／ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）プロトコルにより通信されている場合において、この装置間で送受信されている通信パケットに含まれる送信先ＩＰアドレス、送信先ポート番号を含む。
【００１６】
トラフィックログのレコードは、２種類の変数値を含む。１種類目の変数値は、送信先ＩＰアドレスである。２種類目の変数値は、送信先ポート番号である。
【００１７】
図１（Ｃ）では、｛送信先ＩＰアドレス、送信先ポート番号｝で１個のレコードを示す。そして、大括弧間のカンマで各レコードを区切る。図１（Ｃ）では、例えば、｛ＩＰ１、 ８０｝のレコードは、ＩＰアドレスとして”ＩＰ１”、ポート番号として”８０”を含む。
【００１８】
離散データに含まれるレコードの数は、例えば、数十万〜数千万件である。レコードに含まれる変数値の種類（以下、変数値の個数とも呼ぶ）は、例えば、２〜１０種類（個）である。各変数の取り得る値の幅は、例えば、数千〜数万である。
【００１９】
[離散データの分類の一方法]
離散データの分類の一方法（以下、単に一方法とも呼ぶ）について説明する。一方法は、離散データに含まれる複数のレコードを分類する場合、集団内のレコードの変数値のばらつきが少なくなるように、離散データを分類する。なお、離散データに含まれる複数のレコードを分類することは、離散データを分類することと同義である。
【００２０】
この一方法は、例えば、離散データを分類する場合、集団内の変数値の中で希な変数値が少なくなるように、離散データを分類する。図２〜図６を参照して、一方法について説明する。
【００２１】
図２は、離散データの一例と、一方法により離散データを分類した場合の集団内のレコードなどを示す集団構成テーブルの一例である。
【００２２】
離散データＬＳＤ４は、図１（Ｃ）で説明したトラフィックログのレコードを含む離散データの一例である。以下の説明では、説明を簡略化するために、分類対象の離散データＬＳＤ４に含まれるレコードの個数を２４個とする。
【００２３】
集団構成テーブルＴ１１０は、分類されたレコードの構成（以下、レコードの集団構成とも呼ぶ）を示すテーブルである。集団構成テーブルＴ１１０は、集団欄と、集団構成欄と、集団内情報量欄とを有する。集団欄は、１個以上のレコードを含む集団を一意に識別する集団識別子を記憶する。集団識別子は、例えば”＃ｋ”（小文字ｋは１以上の整数）で示される。
【００２４】
集団構成欄は、集団識別子で識別される集団に属するレコードを記憶する欄である。なお、集団に属するレコードは、集団内のレコード、集団に含まれるレコードと同義である。集団内情報量欄は、集団構成欄に記憶されているレコードの集団内情報量を記憶する。
【００２５】
集団内情報量は、集団内の各レコードの出現確率（発生確率）の逆数の対数である。なお、対数は、例えば、１０を底とする常用対数である。レコードの出現確率は、このレコードが属する集団に属するレコードに含まれる変数値の各々のこの集団における出現確率の積である。変数値の各々の出現確率は、ある集団（以下、集団Ｘとも呼ぶ）に属する１個以上のレコードに含まれる同一変数値の合計を、集団Ｘに属するレコードの合計で除算した値である。
【００２６】
図２において、第１の集団＃１に属するレコード｛ＩＰ１、８０｝の集団内情報量を算出する。第１の集団＃１に属するレコード｛ＩＰ１、８０｝の同一変数値ＩＰ１の合計は、２個である（レコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝参照）。また、第１の集団＃１に属するレコード｛ＩＰ１、８０｝の同一変数値８０の合計は、５個である（レコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝、｛ＩＰ３、８０｝、｛ＩＰ４、８０｝、｛ＩＰ５、８０｝参照）。そして、第１の集団＃１に属するレコードの合計は１０個である。
【００２７】
従って、同一変数値ＩＰ１の出現確率は、（２／１０）である。そして、同一変数値８０の出現確率は、（５／１０）である。従って、第１の集団＃１におけるレコード｛ＩＰ１、８０｝の集団内情報量は、−ｌｏｇ｛（２／１０）＊（５／１０）｝（図２の一点鎖線枠内参照）である。なお、集団内情報量における対数（ｌｏｇ）内の”／”は除算を示し、”＊”は乗算を示す。なお、以下、レコードの出現確率は、値の同時確率とも呼ぶ。
【００２８】
図２において、あるレコード（以下、レコードＸとも呼ぶ）の集団内情報量は、集団構成欄においてレコードＸが記憶されている行（平行位置）と同じ行に記憶されている集団内情報量（以下、集団内情報量Ｘとも呼ぶ）である。例えば、レコードＸが第１の集団＃１におけるレコード｛ＩＰ１、８０｝の場合（図２の点線枠内参照）、レコードＸの集団内情報量Ｘは第１の集団＃１における−ｌｏｇ｛（２／１０）＊（５／１０）｝（図２の一点鎖線枠内参照）である。
【００２９】
第ｋ（小文字ｋは１以上の整数）の集団＃ｋに属する各レコードの集団内情報量の合計を、この各レコードを記憶するセルの下側に示す。例えば、第１の集団＃１に属する各レコードの集団内情報量の合計は、”１０．０”である。なぜなら、第１の集団＃１に属する各レコードの総数は、１０個である。また、第１の集団＃１に属する各レコードの集団内情報量は”−ｌｏｇ｛（２／１０）＊（５／１０）｝”、すなわち（”１”）である。従って、第１の集団＃１に属する各レコードの集団内情報量の合計は、”１０．０”である（図２の破線枠内参照）。
【００３０】
集団構成テーブルＴ１１０において、下から２番目の行と集団内情報量欄とが交わるセルは、各集団における各レコードの集団内情報量の総合計を記憶する。例えば、第１の集団＃１〜第３の集団＃３における各レコードの集団内情報量の合計は、それぞれ”１０．０”、”４．７”、”７．２”である。従って、前記した総合計は、”２１．９”である。
【００３１】
集団構成テーブルＴ１１０において、下から１番目の行と集団内情報量欄とが交わるセルは、集団構成の評価値を記憶する。一方法における集団構成の評価値は、集団内情報量の総合計と、集団数の定数倍との合計である。ここで、定数倍を１とする。集団構成テーブルＴ１１０の例では、３個の集団（第１の集団＃１〜第３の集団＃３）に分けられているので、集団数は３である。そのため、集団数の定数倍は３である。従って、集団構成の評価値は、２４．９（２１．９＋３．０）である。
【００３２】
[離散データの分類の一方法のフローチャート図]
図３は、離散データの分類の一方法の処理の流れを説明するフローチャート図である。なお、フローチャート図において、”Ｓｓ”（小文字ｓは１以上の整数）は、ステップＳｓを示す。
【００３３】
ステップＳ１１１：一方法は、初期集団を生成する。具体的には、一方法は、分類処理の対象である離散データに含まれるレコードの中から、相互に変数値の共有が少ないｋ個（ｋは１以上の整数）のレコードを無規則（すなわち、ランダム）に選択して、選択したレコードを１個ずつ含むｋ個の集団を作成する。
【００３４】
この選択された各レコードが、集団の核（以下、集団の種とも呼ぶ）となるレコードである。以後、一方法は、この核となるレコードを含む集団に、この核となるレコードに類似するレコードを追加する。具体的には、一方法は、分類処理の対象である離散データに含まれるレコードからｋ個のレコードを除いたレコードについては、評価値が最も良くなるように、ｋ個の集団に順次配置して、ｋ個の初期集団を生成する。
【００３５】
ステップＳ１１２：一方法は、元の集団を記憶し、元の集団の評価値ｅ_ｐｒｅを算出する。元の集団は、Ｓ１１２が１回目に実行される場合、初期集団（Ｓ１１１）である。元の集団は、Ｓ１１２が２回目以降に実行される場合、Ｓ１１５終了後の集団である。なお、一方法は、例えば、集団構成テーブルの形式で、集団を記憶する。
【００３６】
ステップＳ１１３：一方法は、集団内情報量の高いｍ個（ｍは１以上の整数）のデータを含むレコード集合Ｑを選択する。
【００３７】
ステップＳ１１４：一方法は、レコード集合Ｑの中で最も集団内情報量が高い１個のレコードｒを取得する。
【００３８】
ステップＳ１１５：一方法は、評価値が最も良くなる集団に取得した１個のレコードｒを再配置する。ここで、評価値が最も良いとは、評価値が最も低いことと同義である。
【００３９】
ステップＳ１１６：一方法は、レコード集合Ｑから１個のレコードｒを除外する。
【００４０】
ステップＳ１１７：一方法は、レコード集合Ｑが空集合か判定する。レコード集合Ｑは空集合でない場合（Ｓ１１７のＮＯ）、Ｓ１１４に移る。レコード集合Ｑは空集合の場合（Ｓ１１７のＹＥＳ）、Ｓ１１８に移る。
【００４１】
ステップＳ１１８：一方法は、再配置後の評価値ｅを算出する。
【００４２】
ステップＳ１１９：一方法は、再配置後の評価値ｅは、元の評価値ｅ_ｐｒｅを超えるか判定する。再配置後の評価値ｅは、元の評価値ｅ_ｐｒｅを超えない場合（Ｓ１１９のＮＯ）、Ｓ１２０に移る。再配置後の評価値ｅは、元の評価値ｅ_ｐｒｅを超える場合（Ｓ１１９のＹＥＳ）、Ｓ１２１に移る。
【００４３】
ステップＳ１２０：一方法は、Ｓ１１２〜Ｓ１１３のステップをＲ回繰り返したか判定する。一方法は、Ｓ１１２〜Ｓ１１３のステップをＲ回繰り返した場合（Ｓ１２０のＹＥＳ）、処理を終了する。一方法は、この処理終了時の再配置後の集団を分類後の離散データの集団とする。一方法は、Ｓ１１２〜Ｓ１１３のステップをＲ回繰り返さない場合（Ｓ１２０のＮＯ）、Ｓ１１２に移る。
【００４４】
ステップＳ１２１：一方法は、Ｓ１１５で再配置したレコードｒを元の集団に戻し、再配置前の集団を分類後の離散データの集団とする。
【００４５】
[離散データの分類の一方法の具体例]
図２〜図６を参照して、離散データの分類の一方法の具体例を説明する。図４は、初期集団を示す集団構成テーブルを示す図である。図５、図６は、再配置後の集団構成テーブルを示す第１、第２の図である。なお、図４〜図６の集団構成テーブルは、図２の集団構成テーブルＴ１１０の構成と同様の構成である。ただし、図４〜図６の集団構成テーブルの集団内情報量は、説明を簡略にするため、式ではなく数値で示す。
【００４６】
一方法は、分類処理の対象である離散データに含まれるレコードの中から、相互に変数値の共有が少ないｋ個（例えば、ｋは３個）のレコードをランダムに選択して、選択したレコードを１個ずつ含むｋ個の集団を作成する。一方法は、図２の離散データＬＳＤ４に含まれるレコードの中から３個のレコード（例えば、｛ＩＰ１、８０｝、｛ＩＰ４、１１０｝、｛ＩＰ６、１４３｝）を選択して３個の集団を作成する。そして、一方法は、分類処理の対象である離散データに含まれるレコードから３個のレコードを除いたレコードについては、評価値が最も良くなるように、３個の集団に順次配置して初期集団を生成する。
【００４７】
一方法は、元の集団である集団構成テーブルＴ１０１を記憶し、元の集団の評価値ｅ_ｐｒｅを算出する（Ｓ１１２）。元の集団の評価値は、図４に示すように”３０．１”である。
【００４８】
一方法は、集団内情報量の高いｍ個（このステップではｍは３）のデータを含むレコード集合Ｑを選択する（Ｓ１１３）。なお、一方法は、”ｍ”をステップ毎に適宜変化させてもよい。一方法は、図４の例では、集団内情報量が１．８のレコード｛ＩＰ６、１１０｝、｛ＩＰ７、１１０｝と、集団内情報量が１．３のレコード｛ＩＰ５、１１０｝とを選択する（点線枠参照）。
【００４９】
一方法は、レコード集合Ｑの中で最も集団内情報量が高い１個のレコードｒ（例えば、｛ＩＰ７、１１０｝、図４の”最大”吹き出し参照）を取得する（Ｓ１１４）。一方法は、再配置の結果、評価値が最も良くなる（評価値が最も低くなる）第２の集団＃２にレコードｒを再配置する（Ｓ１１５）（図４の” ＃２に再配置したら評価値が最良”参照）。
【００５０】
一方法は、レコード集合Ｑから１個のレコードｒ（｛ＩＰ７、１１０｝）を除外する（Ｓ１１６）。
【００５１】
図５にレコードｒ（｛ＩＰ７、１１０｝）を第２の集団＃２に再配置した集団構成テーブルＴ１０２を示す。なお、一方法は、図５に示すように、再配置後（Ｓ１１５参照）の集団内情報量を更新する。
【００５２】
レコード集合Ｑは空集合でないので（Ｓ１１７のＮＯ）、Ｓ１１４に移る。一方法は、レコード集合Ｑ（｛ＩＰ５、１１０｝、｛ＩＰ６、１１０｝）の中で最も集団内情報量が高い１個のレコードｒ（例えば、｛ＩＰ６、１１０｝、図５の”最大”吹き出し参照）を取得する（Ｓ１１４）。一方法は、再配置の結果、評価値が最も良くなる第２の集団＃２にレコードｒを再配置する（Ｓ１１５）（図５の” ＃２に再配置したら評価値が最良”参照）。
【００５３】
一方法は、レコード集合Ｑから１個のレコードｒ（｛ＩＰ６、１１０｝）を除外する（Ｓ１１６）。以後、一方法は、レコード集合Ｑについて、Ｓ１１７、Ｓ１１４〜Ｓ１１６の処理を行い、レコード集合Ｑに含まれるレコード｛ＩＰ５、１１０｝を第２の集団＃２に再配置し、レコード集合Ｑからレコード｛ＩＰ５、１１０｝を除外する。
【００５４】
図６にレコード集合Ｑの全レコード（｛ＩＰ５、１１０｝、｛ＩＰ６、１１０｝、｛ＩＰ７、１１０｝）を第２の集団＃２に再配置した集団構成テーブルＴ１０３を示す。一方法は、レコード集合Ｑが空集合になると（Ｓ１１７のＹＥＳ）、再配置後の評価値ｅを算出する（Ｓ１１８）。再配置後の評価値は、図６の集団構成テーブルＴ１０３に示すように、”２５．８”である。
【００５５】
再配置後の評価値ｅは、元の評価値ｅ_ｐｒｅを超えないので（Ｓ１１９）、一方法は、Ｓ１１２〜Ｓ１１３のステップをＲ回（例えば、２回）繰り返したか判定する（Ｓ１２０）。前記の例では、一方法は、Ｓ１１２〜Ｓ１１３のステップを１回繰り返しているので（Ｓ１２０のＮＯ）、Ｓ１１２に移る。
【００５６】
一方法は、元の集団である集団構成テーブルＴ１０３を記憶し、元の集団の評価値ｅ_ｐｒｅを算出する（Ｓ１１２）。元の集団の評価値は、図６に示すように”２５．８”である。
【００５７】
一方法は、集団内情報量の高いｍ個（このステップではｍは２）のレコードを含むレコード集合Ｑを選択する（Ｓ１１３）。一方法は、図６の例では、集団内情報量が１．２のレコード｛ＩＰ８、１１０｝、｛ＩＰ９、１１０｝を選択する（図６の点線枠、”最大”吹き出し参照）。一方法は、以後、Ｓ１１４〜Ｓ１１７の処理を繰り返し行い、レコード｛ＩＰ８、１１０｝、｛ＩＰ９、１１０｝を第２の集団＃２に再配置する。この再配置後の集団構成テーブルは、図２の集団構成テーブルＴ１１０である。
【００５８】
そして、一方法は、レコード集合Ｑが空集合になると（Ｓ１１７のＹＥＳ）、再配置後の評価値ｅを算出する（Ｓ１１８）。再配置後の評価値は、図２に示すように、”２４．９”である。なお、図２では、集団内情報量については、数式で示し、数値の記載を省略している。
【００５９】
再配置後の評価値ｅは、元の評価値ｅ_ｐｒｅを超えないので（Ｓ１１９のＮＯ）、一方法は、Ｓ１１２〜Ｓ１１３のステップをＲ回（例えば、２回）繰り返したか判定する（Ｓ１２０）。前記の例では、一方法は、Ｓ１１２〜Ｓ１１３のステップを２回繰り返しているので（Ｓ１２０のＮＯ）、処理を終了する。
【００６０】
一方法により、離散データＬＳＤ４を分類した結果、図２に示すように、離散データＬＳＤ４に含まれる複数のレコードが第１の集団＃１〜第３の集団＃３に分類される。離散データの分析者は、分類されたレコードを参照して、人の意図や行動を推測する。
【００６１】
[離散データの分類の一方法の課題]
次に、一方法の課題について説明する。離散データに含まれるレコードの内容によっては、離散データの分析者の目的を達成できる最適な集団が異なる。この最適な集団は、分析者の目的に応じた集団である。すなわち、分析者の目的を達成するために、分類の方法を変更することが好ましい。例えば、図２で説明した離散データＬＳＤ４は、トラフィックログのレコードを含む。かかるレコードを含む離散データを分類する場合、単に、集団内情報量の総合計を考慮するだけでなく、他の要素（例えば、以下に説明する共有数）を考慮することが好ましい。
【００６２】
図７は、一方法の課題を説明する第１の図である。図７の集団構成テーブルＴ１０４は、図２の集団構成テーブルＴ１１０の右欄に変数値欄を追加したテーブルである。
【００６３】
変数値欄は、集団構成欄に記憶されているレコードの変数値を記憶する。例えば、第１の集団＃１における集団構成欄に記憶されているレコードの変数値は、ＩＰ１、ＩＰ２、ＩＰ３、ＩＰ４、ＩＰ５、８０、８０８０である。従って、第１の集団＃１の集団識別子“＃１”が記憶された行と、変数値欄とが交わるセルに、これらの変数値ＩＰ１、ＩＰ２、ＩＰ３、ＩＰ４、ＩＰ５、８０、８０８０が記憶される。
【００６４】
集団構成テーブルＴ１０４において、下から２番目の行と変数値欄とが交わるセルは、共有数を記憶するセルである。共有数は、異なる集団が同一変数値を共有する場合、この同一変数値の総数を示す。例えば、異なる第１の集団＃１、第２の集団＃２は、同一変数値ＩＰ４、ＩＰ５を共有している。異なる集団が共有している同一変数値を点線枠で示す。図７の例の場合、点線枠内の変数値の総数が共有数であり、この共有数は１２である。
【００６５】
図８は、一方法の課題を説明する第２の図である。図８の集団構成テーブルＴ１０５は、図７の集団構成テーブルＴ１０４の構成と同様の構成である。集団構成テーブルＴ１０５は、一方法とは異なる手法により、離散データＬＳＤ４を分類した集団構成テーブルを示す。
【００６６】
図８の集団構成テーブルＴ１０５では、図７の集団構成テーブルＴ１０４における第２の集団＃２のレコード｛ＩＰ６、１１０｝、｛ＩＰ７、１１０｝、｛ＩＰ８、１１０｝、｛ＩＰ９、１１０｝が、第３の集団＃３に配置されている。図８でも、図７と同様に、異なる集団が共有している同一変数値を点線枠で示す。図８の例の場合、点線枠内の変数値の総数が共有数であり、この共有数は６である。図８の例では、異なる第１の集団＃１、第２の集団＃２は、同一の変数値ＩＰ４、ＩＰ５を共有し、異なる第２の集団＃２、第３の集団＃３は、同一変数値１１０を共有する。
【００６７】
図８において、第１の集団＃１に属するレコード｛ＩＰ４、８０｝、｛ＩＰ４、８０８０｝、｛ＩＰ５、８０｝、｛ＩＰ５、８０８０｝、第２の集団＃２に属するレコード｛ＩＰ４、１１０｝、｛ＩＰ５、１１０｝に着目する。ここで、ＩＰアドレスＩＰ４が設定されている第１のサーバはＷＥＢサーバであり、ＩＰアドレスＩＰ５が設定されている第２のサーバはＷＥＢサーバであるとする。このように、第１、第２のサーバは、ＷＥＢサーバであり、メールサーバではない。
【００６８】
ここで、例えば、電子メールの配信を行うメールサーバは、特徴的なポート番号２５、１１０、１４３を使用する。ポート番号２５はＳＭＴＰのポート番号、ポート番号１１０はＰＯＰ３のポート番号、ポート番号１４３はＩＭＡＰ４のポート番号である。なお、ＳＭＴＰは“Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ”の略語、ＰＯＰは“Ｐｏｓｔ  Ｏｆｆｉｃｅ  Ｐｒｏｔｏｃｏｌ”の略語、ＩＭＡＰは“Ｉｎｔｅｒｎｅｔ  Ｍｅｓｓａｇｅ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ”の略語である。
【００６９】
しかし、第２の集団＃２に属するレコード｛ＩＰ４、１１０｝、｛ＩＰ５、１１０｝によれば、ＷＥＢサーバである第１、第２のサーバのポート番号１１０を送信先ポート番号とするＴＣＰ／ＩＰパケットが送信されていることがわかる。ポート番号１１０を使用（解放）して、通信を実行するサーバは、メールサーバである。しかし、ＩＰアドレスＩＰ４、ＩＰ５が設定されている第１、第２のサーバは、ＷＥＢサーバであり、メールサーバではない。そのため、かかるＴＣＰ／ＩＰパケットによる通信は、ポートスキャンや特定のポートに対する攻撃を目的とした通信の可能性が高い。なお、以下、かかるＴＣＰ／ＩＰパケットによる通信を、特異な通信群とも呼ぶ。
【００７０】
すなわち、かかるＴＣＰ/ＩＰパケットのレコード（｛ＩＰ４、１１０｝、｛ＩＰ５、１１０｝）は、不正行為を行おうとする意図など特異な意図に基づく行動により発生したレコードの集団である可能性が高い。
【００７１】
離散データの分析者は、かかる特異な意図に基づく行動を見つける目的で、分類された離散データを分析する場合、かかる特異な意図に基づく行動により発生したレコードが分類（集団化）されていれば、かかる行動を見つけることが容易になる。分析者は、かかる行動を見つけると、不正行為を阻止する対策をネットワークの管理者などに指示する。
【００７２】
なお、識別子付きＰＯＳの場合、実際に購買が行われていないのにもかかわらず、店員が、不正行為を行おうとする意図に基づき、あたかも購買が行われたように見せかけてレジ操作を行うことを想定する。この想定の場合、通常の購買行動により生成されたＰＯＳのレコードの内容から逸脱した内容のレコードがＰＯＳシステムにより生成される。かかる逸脱した内容のレコードも、特異な意図に基づく行動により発生したレコードである。
【００７３】
さて、一方法では、集団内情報量の総和が小さい集団構成として、ポート番号別に集団が生成される場合がある。一方法により生成された集団を示す図７の集団構成テーブルＴ１０４によれば、第１の集団＃１は、ポート番号８０、８０８０を含むレコードを含む集団である。なお、ポート番号８０、８０８０は、ＷＥＢサーバのＨＴＴＰ （ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）用のポート番号である。
【００７４】
第２の集団＃２は、ポート番号１１０を含むレコードを含む集団である。第３の集団＃３は、ポート番号２５、１４３を含むレコードを含む集団である。
【００７５】
しかし、例えば、特異な通信群を発見する目的で離散データを分類する場合、以下のようにレコード集団を生成することが望ましい。すなわち、特徴的（典型的）なポート番号の組み合わせを使用するサーバに関するレコード集団を纏め、特徴的なポート番号の組み合わせから逸脱した通信群を示すレコード集団を別のレコード集団とする。なお、特異な通信群を発見する目的は、前記した不正行為を行おうとうする意図など特異な意図に基づく行動により発生したレコードを発見する目的に含まれる。
【００７６】
図８の例では、一点鎖線の枠で囲った、第３の集団＃３に属する複数のレコード（“典型的な通信”の吹き出し参照）が特徴的なポート番号の組み合わせを使用するサーバに関するレコード集団である。また、図８の例では、二点鎖線の枠で囲った、第２の集団＃２に属する複数のレコード（“特異な通信”の吹き出し参照）が逸脱した通信群を示すレコード集団である。このように、レコード｛ＩＰ５、１１０｝は、図８に示すように第２の集団＃２に属していたほうが、特異な通信群を発見するという分析者の目的を達成できる最適な集団になる。他にも、図７に示す第２の集団＃２に属するレコード｛ＩＰ６、１１０｝、｛ＩＰ７、１１０｝、｛ＩＰ８、１１０｝、｛ＩＰ９、１１０｝は、図８に示すように第３の集団＃３に属していたほうが、特異な通信群を発見するという分析者の目的を達成できる最適な集団になる。
【００７７】
以上説明したように、分析者の目的が、例えば、特異な通信群を発見する目的の場合、一方法とは異なる手法で離散データを分類した方が、分析者の目的を容易に達成できる最適な集団に離散データを分類できる。
【００７８】
ここで、図７と、図８とを比較すると、図８における集団内情報量の総合計（２３.６）は、図７における集団内情報量の総合計（２１.９）に比べて多くなる。なお、図７、図８では、集団数（３）は同じなので、図８における評価値（２６.６）は、図７における評価値（２４.９）に比べて多い。しかし、図８における共有数（６）は、図７の共有数（１２）に比べて少ない。
【００７９】
他の方法で分類した場合の集団内情報量の合計は、一方法で分類した場合の集団内情報量の合計に比べて多い。しかし、他の方法で分類した場合の共有数は、一方法で分類した場合の共有数に比べて少なくなる（特徴点と記す）。
【００８０】
この特徴点によれば、分析者の目的が、不正行為を行おうとする意図など特異な意図に基づく行動を見つける場合、集団内情報量だけでなく、共有数を考慮すれば、分析者の目的を容易に達成できる最適な集団に離散データを分類できることがわかる。この分類では、共有数がなるべく少なくなるように分類を行えば、最適な集団に離散データを分類できる。
【００８１】
また、情報理論における最小記述長（ＭＤＬ：ｍｉｎｉｍｕｍ  ｄｅｓｃｒｉｐｔｉｏｎ  ｌｅｎｇｔｈ）原理では、モデルの複雑さと、モデルで表したときの実際のデータに対する誤差との和が小さい方がより良いデータの説明であることが知られている。離散データの分類においては、このモデルは、例えば、レコードの集団に該当し、モデルの複雑さは、例えば、集団内において互いに相違する変数値の数に該当する。また、誤差は、前記したレコードの出現確率や、集団内情報量に該当する。
【００８２】
最小記述長原理によれば、集団内において互いに相違する変数値が少なくなれば（モデルの複雑さが少なくなれば）、最適な集団を作成することができると考えられる。この集団に属する変数値を少なくすることは、異なる集団に属する同一変数値の数（共有数）がなるべく少なくなるように分類することによっても達成できる。
【００８３】
[本実施の形態]
そこで、本実施の形態のデータ分類装置は、集団間の変数値の共有の程度を示す共有値が少なくなるように複数のレコードを複数の集団（グループ）に分類（分割）する。本実施の形態のデータ分類装置は、この分類において、さらに、集団に属するレコードに含まれるレコードのこの集団における出現確率が多くなるように複数のレコードを複数の集団に分類する。この変数値の共有の程度を示す共有値が少なくなることは、異なる集団に属する同一変数値の数が少なくなることと同義である。
【００８４】
[データ分類装置のハードウエア図]
図９は、本実施の形態のデータ分類装置１のハードウエア図である。データ分類装置１は、バス１０８に接続された、ＣＰＵ１０１と、ＲＡＭ１０２と、ＲＯＭ１０３と、通信装置１０４と、ストレージ装置１０５と、外部記憶媒体読み取り装置１０６とを有する。データ分類装置１は、例えば、情報処理装置である。なお、ＣＰＵは”Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ”の略語、ＲＡＭは”Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ”の略語、ＲＯＭは”Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ”の略語である。
【００８５】
ＣＰＵ１０１は、データ分類装置１の全体を制御する中央演算処理装置である。ＲＡＭ１０２は、ＣＰＵ１１が実行する処理や、分類プログラム１１０（以下、単にプログラム１１０とも呼ぶ）が処理を実行した際に生成（算出）されたデータなどを一時的に記憶する。ＲＡＭ１０２は、例えばＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の半導体メモリである。
【００８６】
ＣＰＵ１０１は、データ分類装置１の起動時に、ストレージ装置１０５から分類プログラム１１０の実行ファイルを読み出し、ＲＡＭ１０２に展開し、分類プログラム１１０を実行する。なお、この実行ファイルを外部記憶媒体１０９に記憶してもよい。
【００８７】
ＲＯＭ１０３は、各種設定情報を記憶する。通信装置１０４は、例えば、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）を有し、ネットワークに接続し、他の装置と通信する処理を実行する。ストレージ装置１０５は、例えばハードディスクドライブ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）や、ソリッドステートドライブ（ＳＳＤ：Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の大容量記憶装置である。
【００８８】
外部記憶媒体読み取り装置１０６は、外部記憶媒体１０９に記憶されたデータを読み取る装置である。外部記憶媒体１０９は、例えば、ＣＤーＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）等の可搬型記憶媒体や、ＵＳＢメモリなどの可搬型の不揮発性メモリである。外部記憶媒体１０９は、例えば、分類処理の対象である離散データを記憶する。
【００８９】
[データ分類装置のソフトウエアブロック図]
図１０は、図９のデータ分類装置１のソフトウエアブロック図である。分類プログラム１１０は、入力部１１１（以下、取得部１１１とも呼ぶ）と、分類部１１２と、出力部１１３とを有する。
【００９０】
入力部１１１は、離散データを他の装置や外部記憶媒体１０９から取得し、分類部１１２に入力する。入力部１１１は、複数の種類の変数値をそれぞれが含む複数のレコードを含むデータ（例えば、離散データ）を取得する取得部の一例である。なお、他の装置は、通信装置１０４が接続するネットワークと通信可能なストレージサーバなどである。
【００９１】
次に、分類部１１２の詳細について説明する。分類部１１２は、入力部１１１により取得された離散データに含まれる複数のレコードを複数の集団（グループ）に分類する。分類部１１２は、この分類において、例えば、集団間の変数値の共有の程度を示す共有値に基づき、複数のレコードを複数の集団に分類する。
【００９２】
具体的には、分類部１１２は、例えば、集団に属するレコードに含まれるレコードのこの集団における出現確率が多くなり、かつ、集団間の変数値の共有の程度を示す共有値が少なくなるように、前記した離散データに含まれる複数のレコードを複数の集団に分類する。
【００９３】
また、分類部１１２は、レコードの出現確率を、集団に属するレコードに含まれる変数値のこの集団における出現確率に基づき算出する。具体的に、分類部１１２は、レコードの出現確率の算出において、このレコードが属する集団に属するレコードに含まれる変数値の各々のこの集団における出現確率の積を算出し、積の算出値をこのレコードの出現確率とする。
【００９４】
さらに、分類部１１２は、異なる集団に属する同一変数値の数と集団の各々に属する相互に異なる変数値の総数とに基づき共有値を算出する。この共有値は、異なる集団に属する同一変数値の数(共有数)に対応する。
【００９５】
分類部１１２が実行する前記した分類の方法により、図７、図８で説明したように、集団内情報量だけでなく、共有数をも考慮した離散データの分類が可能になり、その結果、分析者の目的を容易に達成できる最適な集団に離散データを分類できる。すなわち、分類部１１２が実行する前記した分類の方法により、離散データを分析者の目的に応じたグループに分類できる。さらに、前記した分類の方法によれば、異なる集団に属する同一変数値の数（共有数）がなるべく少なくなるように分類しているので、前記した最小記述長原理によっても、最適な集団を作成することができる。
【００９６】
具体的に、分類部１１２は、複数のレコードの分類において、レコードの各々の出現確率の逆数の合計を算出する。なお、出現確率の逆数は、図２、図７、図８などで説明した集団内情報量に対応する。
【００９７】
さらに、分類部１１２は、共有値を、集団の各々に属する変数値のそれぞれについて算出する。そして、分類部１１２は、レコードの各々の出現確率の逆数の合計と変数値のそれぞれの共有値の合計との総合計が少なくなるように、複数のレコードを前記複数の集団に分類する。
【００９８】
レコードの各々の出現確率の逆数の合計が少なくなることは、レコードの各々の出現確率の合計が多くなることと同義である。従って、レコードの各々の出現確率の逆数の合計と変数値のそれぞれの共有値の合計との総合計が少なくなるように、複数のレコードを前記複数の集団に分類すれば、集団内情報量だけでなく、共有数をも考慮した離散データの分類が可能になる。その結果、前記した最適な集団に離散データを分類できる。
【００９９】
なお、出現確率の逆数の対数、共有値の対数を算出するのは、情報理論において、ある情報量（エントロピーとも呼ぶ）を算出する場合、確率の逆数の対数を利用することが一般に行われている。
【０１００】
次に、分類部１１２の具体例な構成について説明を行う。分類部１１２は、図３のＳ１１１で説明した初期集団を生成する集団生成部１１２ａ（以下、単に生成部１１２ａとも呼ぶ）を有する。また、分類部１１２は、各集団に属するレコードに含まれるレコードのこの集団における出現確率が多くなり、かつ、集団間の変数値の共有の程度を示す共有値が少なくなるように、初期集団に属するレコードの再配置を行う再配置部１１２ｄを有する。すなわち、分類部１１２は、集団生成部１１２ａが生成した初期集団に属するレコードの再配置を行うことにより、離散データに含まれる複数のレコードを分類する。
【０１０１】
さらに、分類部１１２は、再配置部１１２ｄがレコードの再配置を行う際に、各レコードが再配置を行うべきレコードであるか否かを判定するための算出部１１２ｂと判定部１１２ｃとを有する。具体的に、算出部１１２ｂは、あるレコードの再配置を行ったと仮定した場合におけるレコードの分類状況（以下、レコードの配置状況とも呼ぶ）に基づく評価値を複数算出する。そして、判定部１１２ｃは、算出した１１２ｂが算出した評価値に基づき、そのレコードの再配置を行うべきか否かの判定を行う。すなわち、判定部１１２ｃは、各レコードの分類が効率的に行われるように、レコードの再配置を行う前に、そのレコードの再配置が有効であるか否かを判定する。なお、以下、判定部１１２ｃが再配置を行うべきと判定したレコードを、有効性を有するレコードとも呼ぶ。以下、各部の詳細な機能について説明を行う。
【０１０２】
集団生成部１１２ａは、図３のＳ１１１で説明したように、初期集団を生成する。具体的には、集団生成部１１２ａは、入力部１１１により取得された離散データに含まれる複数のレコードの中から、共通して含まれる変数値が少なくなるように、ｋ（ｋは２以上の整数）個のレコードをランダムに選択してｋ個の集団を生成する。集団生成部１１２ａは、この集団に含まれるレコードがこの集団に出現する出現確率が高くなるように、複数のレコードにおいてｋ個のレコード以外のレコードを、ｋ個の集団に配置する。なお、ｋをＮａと示しても良い。この初期集団の生成により、最初に、集団に属するレコードに含まれるレコードのこの集団における出現確率が多くなるように離散データを分類する。
【０１０３】
なお、集団生成部１１２ａは、例えば、レコードの出現確率の算出において、このレコードが属する集団に属するレコードに含まれる変数値の各々のこの集団における出現確率の積を算出し、積の算出値をこのレコードの出現確率とする。
【０１０４】
算出部１１２ｂは、複数の集団に含まれるある集団（以下、第１集団または第１グループとも呼ぶ）に配置されたあるレコード（以下、第１レコードとも呼ぶ）を、複数の集団に含まれないある集団（以下、第２集団または第２グループとも呼ぶ）に再配置した場合における各レコードの配置状況に基づく評価値（以下、第１評価値とも呼ぶ）を算出する。
【０１０５】
具体的に、算出部１１２ｂは、第１レコードを第２集団に再配置した場合における、各レコードの出現確率の逆数を集団毎に算出する。また、算出部１１２ｂは、この場合における、各集団のうちの各変数値が含まれる集団の数と、いずれかの集団に含まれる変数値の数（変数値の種類の数）とに基づく共有値を変数値毎に算出する。そして、算出部１１２ｂは、算出した各レコードの出現確率の逆数の総和と、算出した共有値の総和とを加算することにより、第１評価値を算出する。
【０１０６】
また、算出部１１２ｂは、第１集団に配置された各レコードを、第１集団または第２集団のいずれかに再配置した場合における各レコードの配置状況に基づく評価値（以下、第２評価値とも呼ぶ）を算出する。
【０１０７】
具体的に、算出部１１２ｂは、第１集団に配置されたレコードを第１集団または第２集団のいずれかに再配置した場合における、各レコードの出現確率の逆数を集団毎に算出する。また、算出部１１２ｂは、この場合における、各集団のうちの各変数値が含まれる集団の数と、いずれかの集団に含まれる変数値の数（変数値の種類の数）とに基づく共有値を変数値毎に算出する。そして、算出部１１２ｂは、算出した各レコードの出現確率の逆数の総和と、算出した共有値の総和とを加算することにより、第２評価値を算出する。
【０１０８】
なお、算出部１１２ｂは、例えば、算出した各レコードの出現確率の逆数の対数の合計（以下、第１の合計とも呼ぶ）と、算出した共有値の対数の合計（以下、第２の合計とも呼ぶ）とを加算することにより、第１または第２評価値の算出を行う。
【０１０９】
さらに、算出部１１２ｂは、例えば、現在の各レコードの配置状況に基づく評価値（以下、第３評価値とも呼ぶ）を算出する。具体的に、算出部１１２ｂは、現在の配置状況に基づく各レコードに出現確率の逆数を集団毎に算出する。また、算出部１１２ｂは、この場合における、各集団のうちの各変数値が含まれる集団の数と、いずれかの集団に含まれる変数値の数（変数値の種類の数）とに基づく共有値を変数値毎に算出する。そして、算出部１１２ｂは、算出した各レコードの出現確率の逆数の総和と、算出した共有値の総和とを加算することにより、第３評価値（以下、単に評価値とも呼ぶ）を算出する。
【０１１０】
判定部１１２ｃは、算出部１１２ｂが算出した第１評価値及び第２評価値に基づき、第１レコードを他の集団に再配置するか否かについての判定を行う。具体的に、判定部１１２ｃは、第２評価値から第１評価値を減算することにより減算値（以下、第１減算値とも呼ぶ）を算出し、第１評価値から第１減算値を減算して算出した第２減算値が、第３評価値よりも小さい場合、第１レコードを再配置する旨の判定を行う。
【０１１１】
なお、判定部１１２ｃは、第１評価値から、第１減算値の値に重み付け係数を乗算した値を減算することにより、第２減算値を算出するものであってもよい。この重み付け係数は、例えば、初期集団において第１レコードが属する集団に属するレコードの数を含む。
【０１１２】
再配置部１１２ｄは、判定部１１２ｃによる判定結果に基づき、第１レコードを他の集団（第１レコードが属する第１集団以外の集団）に再配置する。具体的に、再配置部１１２ｄは、第１レコードを再配置した場合における配置状況に基づく評価値（以下、第４評価値とも呼ぶ）の第３評価値に対する減少量が最大になる集団に、第１レコードを再配置する。
【０１１３】
出力部１１３は、再配置部１１２ｄの実行後に生成された集団を、出力端末（図示しない）に出力する。
【０１１４】
[本実施の形態における離散データの分類のフローチャート図]
図１１は、本実施の形態における離散データの分類処理の流れを説明するフローチャート図である。図１１のＳ１の前に、入力部１１１は離散データを取得し、集団生成部１１２ａに入力する。
【０１１５】
ステップＳ１： 集団生成部１１２ａは、分類処理の対象である離散データに含まれる複数のレコードを分類して初期集団を生成する。Ｓ１は、図３のＳ１１１と同様であるので、詳細な説明を省略する。
【０１１６】
ステップＳ２： 集団生成部１１２ａまたは再配置部１１２ｄは、元の集団をＲＡＭ１０２に記憶し、元の集団の第３評価値ｅ_ｐｒｅ（以下、元の評価値ｅ_ｐｒｅまたは評価値ｅ_ｐｒｅとも呼ぶ）を算出しＲＡＭ１０２に記憶する。評価値ｅ_ｐｒｅは、元の集団における集団内情報量の合計と、集団間情報量の合計との総合計である。集団間情報量は、図１４で詳細に説明する。元の集団は、Ｓ１が１回目に実行される場合、初期集団（Ｓ１）である。元の集団は、Ｓ２が２回目以降に実行される場合、Ｓ７終了後の集団である。
【０１１７】
Ｓ２が１回目に実行される場合、集団生成部１１２ａが、Ｓ２を実行する。Ｓ２が２回目以降に実行される場合、再配置部１１２ｄが、Ｓ２を実行するが、この場合、元の評価値ｅ_ｐｒｅを算出せず、Ｓ１０で算出した評価値を元の評価値として記憶してもよい。なお、集団生成部１１２ａまたは再配置部１１２ｄは、例えば、集団構成テーブルの形式で、集団を記憶する。
【０１１８】
ステップＳ３：再配置部１１２ｄは、評価値の改善量が大きいｍ（ｍは１以上の整数）個のレコードを含むレコード集合Ｑを選択する。この改善量は、集団内情報量の減少量から、変数値の異なり数（増減数）の総合計の増加分（重み付けを含む）を減算した値である。評価値の改善量を、（式１）で示す。
評価値の改善量＝（集団内情報量の減少）−α×（変数値の異なり数の増加）
・・・（式１）
なお、αはいわゆる重み付け係数であり、分析者により適宜調整可能である。Ｓ３の詳細な説明は、図１２のフローチャート図で説明する。
【０１１９】
ステップＳ４：再配置部１１２ｄは、レコード集合Ｑの中で、評価値の改善量が最も大きいレコード群ｒｇを取得する。なお、レコード群ｒｇは、１個のレコードを含んでいてもよい。
【０１２０】
ステップＳ５：算出部１１２ｂは、レコード群ｒｇに基づいて算出した第１評価値ｅ１と第２評価値ｅ２と算出する。
【０１２１】
ステップＳ６：判定部１１２ｃは、算出部１１２ｂがレコード群ｒｇに基づいて算出した第１評価値ｅ１と第２評価値ｅ２とに基づき、レコード群ｒｇの有効性を判定する。レコード群ｒｇが有効性を有すると判定された場合（Ｓ６のＹＥＳ）、Ｓ７に移る。レコード群ｒｇが有効性を有しないと判定された場合（Ｓ６のＮＯ）、Ｓ７の処理を行わずにＳ８に移る。
【０１２２】
ステップＳ７：再配置部１１２ｄは、評価値が最も良くなる集団にレコード群ｒｇを再配置する。
【０１２３】
ステップＳ８：再配置部１１２ｄは、レコード集合Ｑからレコード群ｒｇを除外する。
【０１２４】
ステップＳ９：再配置部１１２ｄは、レコード集合Ｑが空集合か判定する。レコード集合Ｑが空集合でない場合（Ｓ９のＮＯ）、Ｓ４に移る。レコード集合Ｑが空集合の場合（Ｓ９のＹＥＳ）、Ｓ１０に移る。なお、Ｓ９〜Ｓ１１は、図３のＳ１１７〜Ｓ１１９と同様であるので、詳細な説明を省略する。
【０１２５】
ステップＳ１０：再配置部１１２ｄは、再配置後の評価値ｅを算出する。
【０１２６】
ステップＳ１１：再配置部１１２ｄは、再配置後の評価値ｅが元の評価値ｅ_ｐｒｅを超えるか判定する。再配置後の評価値ｅが元の評価値ｅ_ｐｒｅを超えない場合（Ｓ１１のＮＯ）、Ｓ１２に移る。再配置後の評価値ｅが元の評価値ｅ_ｐｒｅを超える場合（Ｓ１１のＹＥＳ）、Ｓ１３に移る。
【０１２７】
ステップＳ１２：再配置部１１２ｄは、Ｓ２〜Ｓ１１のステップをＲ回繰り返したか判定する。再配置部１１２ｄは、Ｓ２〜Ｓ１１のステップをＲ回繰り返した場合（Ｓ１２のＹＥＳ）、処理を終了する。再配置部１１２ｄは、この処理終了時の再配置後の集団を、分類後の離散データの集団とする。そして、再配置部１１２ｄは、再配置後の集団を出力部１１３に入力する。出力部１１３は、再配置部１１２ｄから入力された再配置後の集団を、例えば、出力装置に出力する。再配置部１１２ｄは、Ｓ２〜Ｓ１１のステップをＲ回繰り返さない場合（Ｓ１２のＮＯ）、Ｓ２に移る。
【０１２８】
ステップＳ１３：再配置部１１２ｄは、Ｓ７で再配置したレコード群ｒｇを元の集団に戻し、再配置前の集団を分類後の離散データの集団とする。すなわち、この場合、再配置部１１２ｄは、元の集団に属するレコードの再配置を行わない。そして、再配置部１１２ｄは、再配置前の集団を出力部１１３に入力する。出力部１１３は、再配置部１１２ｄから入力された再配置前の集団を、例えば、出力装置に出力する。
【０１２９】
図１２は、図１１のステップＳ３の処理の流れを説明するフローチャート図である。
【０１３０】
ステップＳ３１：再配置部１１２ｄは、最新の集団構成テーブルに含まれるレコードの中から、集団内情報量が高い順に、相互に変数値を共有しないｍ個のレコードを含むレコード群Ｖを選択する。
【０１３１】
ステップＳ３２：再配置部１１２ｄは、集団Ｕを空集合にリセットする。
【０１３２】
ステップＳ３３：再配置部１１２ｄは、レコード群Ｖから順に１個のレコードｒ１を取得し、集団Ｕに追加する。
【０１３３】
ステップＳ３４：再配置部１１２ｄは、集団Ｕ内の何れかの変数値を共有するレコードの中で、集団Ｕに追加したときの評価値の改善量が最も大きいレコードを、最新の集団構成テーブルに含まれるレコードの中から選択し、集団Ｕに追加する。
【０１３４】
ステップＳ３５：再配置部１１２ｄは、ｇ（ｇは１以上の整数）個のレコードを追加したか判定する。ｇ個のレコードを追加していない場合（Ｓ３５のＮＯ）、Ｓ３４に移る。ｇ個のレコードを追加した場合（Ｓ３５のＹＥＳ）、Ｓ３６に移る。
【０１３５】
ステップＳ３６：再配置部１１２ｄは、評価値の改善量が最も大きくなるときの集団Ｕを、レコード集合Ｑに加える。
【０１３６】
ステップＳ３７：再配置部１１２ｄは、レコード群Ｖから全てのレコードを取得したか判定する。レコード群Ｖから全てのレコードを取得していない場合（Ｓ３７のＮＯ）、Ｓ３２に移る。レコード群Ｖから全てのレコードを取得した場合（Ｓ３７のＹＥＳ）、Ｓ３を終了し図１１のＳ４に移る。
【０１３７】
[具体例]
次に、本実施の形態における離散データの分類の具体例について、図１３〜図２６を参照して説明する。図１３〜図２６は、本実施の形態における具体例を説明する第１の図〜第１４の図である。
【０１３８】
図１３を参照して、具体例の概略を説明する。図１３の具体例の概略では、初期集団を示す集団構成テーブルＴ１を起点に、選択されたレコードが各集団に順次再配置される状態を模式的に示している。なお、この再配置には、ある集団に属するレコードを同一の集団に配置した場合（すなわち、レコードを移動させない場合）を含まない。
【０１３９】
この再配置により、集団構成テーブルＴ１は、集団構成テーブルＴ２、Ｔ３と変化する。集団構成テーブルＴ１、Ｔ２、Ｔ３においては、２行目以降のセルに、各集団に属するレコードを記憶している。集団構成テーブルＴ１、Ｔ２、Ｔ３において、”集団構成”が記憶された１行目のセルの次の２行目のセルに、第１の集団＃１に属するレコードが記憶される。そして、３行目のセルに、第２の集団＃２に属するレコードが記憶され、４行目のセルに、第３の集団＃３に属するレコードが記憶される。
【０１４０】
集団生成部１１２ａは、図２の離散データＬＳＤ４に対して、図１１の初期集団の生成処理（Ｓ１）を実行し、集団構成テーブルＴ１に示すように複数のレコードを分類する。以後、再配置部１１２ｄは、図１１のＳ２以下の処理を実行し、レコードを再配置する。
【０１４１】
図１３において点線枠で囲ったレコードが、図１１のＳ４〜Ｓ７で説明したレコード群ｒｇである。また、符号Ｒ１で示す破線枠で囲った集団構成テーブルＴ２、Ｔ３は、レコード集合Ｑ１（Ｓ３参照）に属するレコード集団Ｕ１ａ、Ｕ１ｂの再配置（Ｓ７参照）が再配置部１１２ｄにより実行されたことにより生成される集団構成テーブルを示す。なお、集団構成テーブルＴ１、Ｔ２、Ｔ３の詳細は後述する。
【０１４２】
[初期集団]
図１４を参照して、初期集団を説明する。図１４の集団構成テーブルＴ１１は、図７、図８に示した集団構成テーブル（Ｔ１０４、Ｔ１０５）の変数値欄を集団間情報量欄に替えたテーブルである。集団間情報量欄は、集団間情報量を”変数値：変数値の集団間情報量”の形式で記憶する。この変数値は、集団間情報量が記憶されているセルが属する行と、集団欄とが交わるセルに記憶された集団識別子で識別される集団に属するレコードの変数値である。
【０１４３】
集団生成部１１２ａは、図１４で説明する初期集団を生成し（Ｓ１）。そして、集団生成部１１２ａは、図１４に示すように、全レコードの集団内情報量と集団間情報量とを算出する（Ｓ２）。さらに、集団生成部１１２ａは、集団内情報量の総合計（２７．２）と、集団間情報量の総合計（２１．１）とを加算して元の評価値ｅ_ｐｒｅ（４８．３）算出する（Ｓ２）。以下、このＳ１、Ｓ２について説明する。なお、初期集団については図３のＳ１１１で説明し、集団内情報量については図２で説明したのでその説明を省略する。
【０１４４】
図１４の例では、第１の集団＃１に属するレコードの変数値は、以下の変数値である。すなわち、前記した変数値は、ＩＰ１、ＩＰ２、ＩＰ３、ＩＰ４、ＩＰ５、ＩＰ６、ＩＰ７、８０、８０８０、１１０である。
【０１４５】
ある変数値（以下、変数値Ｘとも呼ぶ）の集団間情報量は、変数値Ｘがある集団に出現する確率を示す変数値Ｘの出現確率の逆数の対数である。変数値Ｘの出現確率は、変数値Ｘを含む集団の数を、各集団に属している相互に異なる変数値の個数の合計で除算した値である。この集団間情報量は、図１０で説明した、例えば、変数値の共有の程度の一例である。
【０１４６】
図１４において、第１の集団＃１内の変数値ＩＰ１（点線枠参照）の集団間情報量を算出する。第１の集団＃１内の変数値ＩＰ１を含む集団は、第１の集団＃１であるので、第１の集団＃１内の変数値ＩＰ１を含む集団の数は、１個である。
【０１４７】
また、第１の集団＃１に属している相互に異なる変数値は、以下の変数値である。すなわち、ＩＰ１、ＩＰ２、ＩＰ３、ＩＰ４、ＩＰ５、ＩＰ６、ＩＰ７、８０、８０８０、１１０である。従って、第１の集団＃１に属している相互に異なる変数値の個数は、１０個である。また、第２の集団＃２に属している相互に異なる変数値は、ＩＰ４、１１０である。従って、第２の集団＃２に属している相互に異なる変数値の個数は、２個である。また、第３の集団＃３に属している相互に異なる変数値は、ＩＰ６、ＩＰ７、ＩＰ８、ＩＰ９、１１０、１４３、２５である。従って、第３の集団＃３に属している相互に異なる変数値の個数は、７個である。以上より、各集団に属している相互に異なる変数値の個数の合計は、１９個（１０個＋２個＋７個）である。
【０１４８】
従って、第１の集団＃１に含まれる変数値ＩＰ１が第１の集団に＃１に出現する出現確率は、（１／１９）である。そして、第１の集団＃１に含まれる変数値ＩＰ１の集団間情報量は、−ｌｏｇ（１／１９）である（点線枠参照）。
【０１４９】
第３の集団＃３に含まれる変数値１１０（一点鎖線枠参照）の集団間情報量を算出する。第３の集団＃３内の変数値１１０を含む集団は、第１の集団＃１、第２の集団＃２、第３の集団＃３であるので、第１の集団＃１内の変数値１１０を含む集団の数は、３個である。そして、前記したように、各集団に属している相互に異なる変数値の個数の合計は、１９個（１０個＋２個＋７個）である。
【０１５０】
従って、第１の集団＃１に含まれる変数値１１０が第１の集団＃１に出現する出現確率は、（３／１９）である。そして、従って、第１の集団＃１内に含まれる変数値１１０の集団間情報量は、−ｌｏｇ（３／１９）である（一点鎖線枠参照）。
【０１５１】
第ｋ（小文字ｋは１以上の整数）の集団＃ｋに属するレコードの変数値の集団間情報量の合計を、この集団間情報量を記憶するセルの下側に示す。例えば、第１の集団＃１に属するレコードの変数値の集団間情報量の合計は、”１１．４”である。具体的には、この総合計は、（−ｌｏｇ（１／１９））＋（−ｌｏｇ（１／１９））＋（−ｌｏｇ（１／１９））＋（−ｌｏｇ（２／１９））＋（−ｌｏｇ（１／１９））＋（−ｌｏｇ（２／１９））＋（−ｌｏｇ（２／１９））＋（−ｌｏｇ（１／１９））＋（−ｌｏｇ（１／１９））＋（−ｌｏｇ（３／１９））である。
【０１５２】
集団構成テーブルＴ１１において、下から２番目の行と集団間情報量欄とが交わるセルは、全集団における各変数値の集団間情報量の総合計を記憶する。例えば、第１の集団＃１〜第３の集団＃３における各変数値の集団内情報量の合計は、それぞれ”１１．４”、”１．８”、”７．９”である。従って、前記した総合計は、”２１．１”（１１．４＋１．８＋７．９）である。
【０１５３】
以後、再配置部１１２ｄは、ｋ個の集団に属するレコードの中から、レコードを異なる集団に配置した場合に、第１の合計と第２の合計との総合計の減少量が最大になる１以上のレコードを選択する。再配置部１１２ｄは、選択した１以上のレコードを、選択した１以上のレコードが属する集団（例えば、第１の集団）から、第１の合計と第２の合計との総合計の減少量が最大になる集団（例えば、第２の集団）に配置する。
【０１５４】
[再配置対象のレコード集合の選択]
次に、図１４〜図１６を参照して、レコード集合Ｑの選択（Ｓ３）について説明する。再配置部１１２ｄは、最新の集団構成テーブル（元の集団を含む）に含まれるレコードの中から、集団内情報量が高い順に、相互に変数値を共有しないｍ個のレコードを含むレコード群Ｖを選択する。この最新の集団構成テーブルは、図１４の集団構成テーブルＴ１１である。再配置部１１２ｄは、図１４の集団構成テーブルＴ１１に含まれるレコードの中から、集団内情報量が高い順に、例えば、相互に変数値を共有しないｍ個のレコード｛ＩＰ７、１１０｝、｛ＩＰ１、８０｝を含むレコード群Ｖを選択する（Ｓ３１）。このステップでは、ｍは２である。
【０１５５】
ここで、図１４の集団構成テーブルＴ１１において、最大の集団内情報量は、１．８（−ｌｏｇ｛（１／１３）＊（３／１３）｝）である。なお、対数の算出においては、小数点以下第２位を四捨五入している。
【０１５６】
最大の集団内情報量（１．８）を有するレコードは、第１の集団＃１に属する２個のレコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝（図１４の二点鎖線枠参照）である。レコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝は、変数値１１０を共有する。従って、再配置部１１２ｄは、レコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝の中から１個のレコード、例えば、レコード｛ＩＰ７、１１０｝を選択する。
【０１５７】
第１の集団＃１に属する、選択されたレコード｛ＩＰ７、１１０｝の変数値を共有しないレコードであって、かつ、このレコードの集団内情報量が、最大の集団内情報量（１．８）の次に大きい集団内情報量を有するレコードは、例えば、レコード｛ＩＰ１、８０｝である。最大の集団内情報量（１．８）の次に大きい集団内情報量は、１．２（−ｌｏｇ｛（２／１３）＊（５／１３）｝）である。従って、再配置部１１２ｄは、レコード｛ＩＰ１、８０｝を選択する。
【０１５８】
以上の選択処理により、再配置部１１２ｄは、２個のレコード｛ＩＰ７、１１０｝、｛ＩＰ１、８０｝を選択する（Ｓ３１）。そして、再配置部１１２ｄは、集団Ｕを空集合にリセットする（Ｓ３２）。以下、リセット後の集団Ｕを集団Ｕａと記す。図１５を参照して、集団Ｕａの作成について説明する。
【０１５９】
再配置部１１２ｄは、２個のレコード｛ＩＰ７、１１０｝、｛ＩＰ１、８０｝を含むレコード群Ｖから順に１個のレコードｒ１（例えば、｛ＩＰ７、１１０｝）を取得し、集団Ｕａに追加する（Ｓ３３）。図１５において、レコード｛ＩＰ７、１１０｝を一点鎖線の枠で示し、この追加を一点鎖線の矢印で示す。なお、レコード｛ＩＰ７、１１０｝は、図１４の集団構成テーブルＴ１１における第１の集団＃１に属するレコードである（図１５のレコード群Ｖにおいて”＃１”で示す点線矢印参照）。
【０１６０】
集団Ｕａにレコード｛ＩＰ７、１１０｝が追加されている状態を集団Ｕａのセル内に”集団構成：｛ＩＰ７、１１０｝”で示す。再配置部１１２ｄは、レコード｛ＩＰ７、１１０｝の集団Ｕａにおける集団内情報量０．０を算出する。なお、レコード｛ＩＰ７、１１０｝の集団Ｕａにおける集団内情報量は、０．０（−ｌｏｇ｛（１／１）＊（１／１）｝）である。
【０１６１】
この算出を集団Ｕａのセル内に”集団内情報量：０．０”で示す。集団Ｕａに属するレコード｛ＩＰ７、１１０｝の変数値は、ＩＰ７、１１０である。この変数値を集団Ｕａのセル内に”変数値：ＩＰ７、１１０”で示す。
【０１６２】
集団Ｘに属するレコードを他の集団（以下、集団Ｙとも呼ぶ）に再配置する場合、集団内情報量の総合計がなるべく減少することが好ましい。そこで、集団Ｘに属するレコードを集団Ｙに再配置したことにより集団内情報量がどれだけ減少するかを考える。
【０１６３】
例えば、第１の集団＃１に属するレコード｛ＩＰ７、１１０｝を集団Ｕａに再配置することにより、レコード｛ＩＰ７、１１０｝の第１の集団＃１における集団内情報量（１．８）が減少し、集団Ｕａの集団内情報量は０．０増加する。なお、集団内情報量が０．０増加するとは、集団内情報量が増加しないことと同義である。
【０１６４】
従って、集団Ｕａにレコード｛ＩＰ７、１１０｝を再配置したことにより、図１４の集団構成テーブルＴ１１で示す第１の集団＃１〜第３の集団＃３および図１５の集団Ｕａにおける全集団内情報量は、１．８（１．８−０．０）減少する。この減少を集団Ｕａのセル内に”減少：１．８−０．０＝１．８”で示す。
【０１６５】
集団Ｘに属するレコードを他の集団（集団Ｙ）に再配置した場合、変数値の共有数が少なくなることが好ましい。そこで、集団Ｘに属するレコードを集団Ｙに再配置したことにより変数値がどれだけ減少するか考える。この変数値の減少では、レコードを集団Ｙに再配置したことにより、このレコードに含まれるｎ（ｎは１以上の整数）個の変数値と同じ変数値が、集団Ｘ内の変数値に含まれなくなると、このｎ個の変数値がｎ個減少したとする。
【０１６６】
図１４において、第１の集団＃１に属するレコード｛ＩＰ７、１１０｝を集団Ｕａに再配置すると、変数値ＩＰ７と同一変数値が、第１の集団＃１内の変数値から含まれなくなる。しかし、この再配置をしても、変数１１０は、第１の集団＃１内の変数値に含まれる。従って、第１の集団＃１に属するレコード｛ＩＰ７、１１０｝を集団Ｕａに再配置すると、変数値は１個減少する。この減少を集団Ｕａのセル内に”＃１の減少：１”で示す。
【０１６７】
ここで、レコード｛ＩＰ７、１１０｝が属する集団Ｕａの変数値は、２個である。この変数値の個数を集団Ｕａのセル内に”Ｕの変数値の数：２”で示す。
【０１６８】
ここで、集団Ｘに属するレコードを集団Ｙに再配置した場合における評価値の改善量を考える。この再配置により、（式１）で示した評価値の改善量が多くなることが好ましい。
【０１６９】
この改善量は、（集団内情報量の減少）−α×（変数値の異なり数の増加）で示される。ここで、変数値の異なり数の総合計の増加は、集団Ｕの変数値から、前記した変数値の減少を減算した値であるとする。
【０１７０】
第１の集団＃１に属するレコード｛ＩＰ７、１１０｝を集団Ｕａに再配置した場合における評価値の改善量は、０．８（１．８−α×（２−１）、ただしαは１）である。この”１．８”は、集団内情報量の減少値である。この”（２−１）”の”２”は、レコード｛ＩＰ７、１１０｝が属する集団Ｕａの変数値の個数であり、この”１”は、変数値の減少である。このαの数値は調整可能である。分析者は、このαの数値を調整して、後述する評価値の算出において、集団間情報量がこの評価値に与える影響を変更する。このαの数値を調整すれば、各集団を構成するレコードの内容が変化する。分析者は、このαの数値を調整し、離散データの分類をデータ分類装置１に実行させ、レコードの内容の変化を見る。そして、分析者は、この変化を見ながら、分析者の意図に沿うように離散データの分類処理をデータ分類装置１に実行させ、分析者の意図に沿った離散データの分類結果を得る。
【０１７１】
再配置部１１２ｄは、集団Ｕａにおける集団内情報量の算出、評価値の改善量の算出を実行し、例えば、算出結果をＲＡＭ１０２に記憶する。
【０１７２】
次いで、再配置部１１２ｄは、集団Ｕａ内の何れかの変数値を共有するレコードの中で、集団Ｕａに追加したときの評価値の改善量が最も大きいレコードを、集団Ｕａに追加する（Ｓ３４）。例えば、集団Ｕａ内の何れかの変数値（ＩＰ７または１１０）を共有するレコードを｛ＩＰ６、１１０｝とする。このレコードは、図１４の集団構成テーブルＴ１１における第１の集団＃１に属するレコードである（図１５の集団Ｕｐ１において”＃１”で示す点線矢印参照）。
【０１７３】
集団Ｕａに第１の集団＃１に属するレコード｛ＩＰ６、１１０｝を追加すると想定する。集団Ｕａにレコード｛ＩＰ６、１１０｝が追加されている状態を集団Ｕｐ１のセル内に”集団構成：｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝”で示す。再配置部１１２ｄは、レコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝の集団Ｕｐ１における集団内情報量０．３を算出する。この算出式は、−ｌｏｇ｛（１／２）＊（２／２）｝である。なお、−ｌｏｇ｛（１／２）＊（２／２）｝の値は０．３である。
【０１７４】
この算出を集団Ｕｐ１のセル内に”集団内情報量：０．３、０．３”で示す。集団Ｕｐ１に属するレコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝の変数値は、ＩＰ７、ＩＰ６、１１０である。この変数値を集団Ｕｐ１のセル内に”変数値：ＩＰ７、ＩＰ６、１１０”で示す。
【０１７５】
第１の集団＃１に属するレコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝を集団Ｕｐ１に再配置することにより、レコード｛ＩＰ７、１１０｝の第１の集団＃１における集団内情報量（１．８）とレコード｛ＩＰ６、１１０｝の第１の集団＃１における集団内情報量（１．８）が減少する。そして、この再配置により、集団Ｕｐ１の集団内情報量は０．６（０．３＋０．３）増加する。従って、集団Ｕｐ１にレコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝を再配置したことにより、図１４の集団構成テーブルＴ１１で示す第１の集団＃１〜第３の集団＃３および図１５の集団Ｕｐ１における全集団内情報量は、３．０（（１．８＋１．８）−（０．３＋０．３））減少する。この減少を集団Ｕｐ１のセル内に”減少：（１．８＋１．８）−（０．３＋０．３）＝３．０”で示す。
【０１７６】
図１４において、レコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝を第１の集団＃１から集団Ｕｐ１に再配置すると、変数値ＩＰ７、ＩＰ６と同一変数値ＩＰ７、ＩＰ６が、第１の集団＃１内の変数値から含まれなくなる。しかし、この再配置をしても、変数１１０は、第１の集団＃１内の変数値に含まれる。従って、第１の集団＃１に属するレコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝を集団Ｕｐ１に再配置すると、変数値は２個減少する。この減少を集団Ｕｐ１のセル内に”＃１の減少：２”で示す。
【０１７７】
ここで、レコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝が属する集団Ｕｐ１の変数値は、３個である。この変数値の個数を集団Ｕｐ１のセル内に”Ｕの変数値の数：３”で示す。
【０１７８】
第１の集団＃１に属するレコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝を集団Ｕｐ１に再配置した場合における評価値の改善量は、２．０（３．０−α×（３−２）、ただしαは１）である。
【０１７９】
再配置部１１２ｄは、集団Ｕｐ１における集団内情報量の算出、評価値の改善量の算出を実行し、例えば、算出結果をＲＡＭ１０２に記憶する。
【０１８０】
集団Ｕａに第３の集団＃３に属するレコード｛ＩＰ８、１１０｝を追加すると想定する（図１５の集団Ｕｐ２において”＃３”で示す点線矢印参照）。集団Ｕａにレコード｛ＩＰ８、１１０｝が追加されている状態を集団Ｕｐ２のセル内に”集団構成：｛ＩＰ７、１１０｝、｛ＩＰ８、１１０｝”で示す。再配置部１１２ｄは、レコード｛ＩＰ７、１１０｝、｛ＩＰ８、１１０｝の集団Ｕｐ２における集団内情報量０．３を算出する。この算出式は、−ｌｏｇ｛（１／２）＊（２／２）｝である。なお、−ｌｏｇ｛（１／２）＊（２／２）｝の値は０．３である。
【０１８１】
この算出を集団Ｕｐ２のセル内に”集団内情報量：０．３、０．３”で示す。集団Ｕｐ２に属するレコード｛ＩＰ７、１１０｝、｛ＩＰ８、１１０｝の変数値は、ＩＰ７、ＩＰ８、１１０である。この変数値を集団Ｕｐ２のセル内に”変数値：ＩＰ７、ＩＰ８、１１０”で示す。
【０１８２】
レコード｛ＩＰ７、１１０｝を第１の集団＃１から集団Ｕｐ２に再配置し、レコード｛ＩＰ８、１１０｝を第３の集団＃３から集団Ｕｐ２に再配置する。この再配置により、レコード｛ＩＰ７、１１０｝の第１の集団＃１における集団内情報量（１．８）とレコード｛ＩＰ８、１１０｝の第３の集団＃３における集団内情報量（１．２）が減少し、集団Ｕｐ２の集団内情報量は０．６（０．３＋０．３）増加する。なお、レコード｛ＩＰ８、１１０｝の第３の集団＃３における集団内情報量は、１．２（−ｌｏｇ｛（３／１０）＊（２／１０）｝）である。
【０１８３】
従って、集団Ｕｐ２にレコード｛ＩＰ７、１１０｝、｛ＩＰ８、１１０｝を再配置したことにより、図１４の集団構成テーブルＴ１１で示す第１の集団＃１〜第３の集団＃３および図１５の集団Ｕｐ２における全集団内情報量は、２．４（（１．８＋１．２）−（０．３＋０．３））減少する。この減少を集団Ｕｐ２のセル内に”減少：（１．８＋１．２）−（０．３＋０．３）＝２．４”で示す。
【０１８４】
第１の集団＃１に属するレコード｛ＩＰ７、１１０｝を集団Ｕｐ２に再配置すると、変数値ＩＰ７と同一変数値ＩＰ７が、第１の集団＃１内の変数値から含まれなくなる。従って、第１の集団＃１に属するレコード｛ＩＰ７、１１０｝を集団Ｕｐ２に再配置すると、変数値は１個減少する。この減少を集団Ｕｐ２のセル内に”＃１の減少：１”で示す。
【０１８５】
第３の集団＃３に属するレコード｛ＩＰ８、１１０｝を集団Ｕｐ２に再配置すると、変数値ＩＰ８、１１０と同一変数値ＩＰ８、１１０が、第３の集団＃３内の変数値から含まれなくなることがない。従って、第３の集団＃３に属するレコード｛ＩＰ８、１１０｝を集団Ｕｐ２に再配置しても、変数値は減少しない。この減少しないことを集団Ｕｐ２のセル内に”＃３の減少：０”で示す。
【０１８６】
ここで、レコード｛ＩＰ７、１１０｝、｛ＩＰ８、１１０｝が属する集団Ｕｐ２の変数値は、３個である。この変数値の個数を集団Ｕｐ２のセル内に”Ｕの変数値の数：３”で示す。
【０１８７】
第１の集団＃１に属するレコード｛ＩＰ７、１１０｝、第３の集団＃３に属するレコード｛ＩＰ８、１１０｝を集団Ｕｐ２に再配置した場合における評価値の改善量は、０．４（２．４−α×（３−１−０）、ただしαは１）である。
【０１８８】
再配置部１１２ｄは、集団Ｕｐ２における集団内情報量の算出、評価値の改善量の算出を実行し、例えば、算出結果をＲＡＭ１０２に記憶する。
【０１８９】
以上説明したように、集団Ｕａにレコード｛ＩＰ６、１１０｝を追加した場合の評価値の改善量は２．０であり、この評価値の改善量が最大である（図１５の吹き出し”最大”参照）。そこで、再配置部１１２ｄは、レコード｛ＩＰ６、１１０｝を、集団Ｕａに追加する（Ｓ３４）。
【０１９０】
再配置部１１２ｄは、ｇ個（例えば、１個）のレコードを追加したか判定する（Ｓ３５）。既に、１個のレコードを集団Ｕａに追加したので（Ｓ３５のＹＥＳ）、再配置部１１２ｄは、評価値の改善量が最も大きくなるときの集団Ｕｐ１をレコード集合Ｑ１に加える（Ｓ３６）。以下、評価値の改善量が最も大きくなるときの集団Ｕｐ１に含まれる２個のレコードの集団を集団Ｕ１ａで示す。
【０１９１】
再配置部１１２ｄは、２個のレコード｛ＩＰ７、１１０｝、｛ＩＰ１、８０｝を含むレコード群Ｖから順に１個のレコードｒ１（｛ＩＰ７、１１０｝）を取得しているので、レコード群Ｖから全てのレコードを取得していない（Ｓ３７のＮＯ）。従って、再配置部１１２ｄは、集団Ｕを空集合にリセットする（Ｓ３２）。以下、リセット後の集団Ｕを集団Ｕｂと記す。図１６を参照して、集団Ｕｂの作成について説明する。
【０１９２】
再配置部１１２ｄは、２個のレコード｛ＩＰ７、１１０｝、｛ＩＰ１、８０｝を含むレコード群Ｖから順に１個のレコードｒ１（例えば、｛ＩＰ１、８０｝）を取得し、集団Ｕｂに追加する（Ｓ３３）。図１６において、レコード｛ＩＰ１、８０｝を一点鎖線の枠で示し、この追加を一点鎖線の矢印で示す。なお、レコード｛ＩＰ１、８０｝は、図１４の集団構成テーブルＴ１１における第１の集団＃１に属するレコードである（図１６のレコード群Ｖにおいて”＃１”で示す点線矢印参照）。
【０１９３】
集団Ｕｂにレコード｛ＩＰ１、８０｝が追加されている状態を集団Ｕｂのセル内に”集団構成：｛ＩＰ１、８０｝”で示す。再配置部１１２ｄは、集団Ｕｂにおけるレコード｛ＩＰ１、８０｝の集団内情報量０．０を算出する。この算出を集団Ｕｂのセル内に”集団内情報量：０．０”で示す。集団Ｕｂに属するレコード｛ＩＰ１、８０｝の変数値は、ＩＰ１、８０である。この変数値を集団Ｕｂのセル内に”変数値：ＩＰ１、８０”で示す。
【０１９４】
例えば、第１の集団＃１に属するレコード｛ＩＰ１、８０｝を集団Ｕｂに再配置することにより、レコード｛ＩＰ１、８０｝の第１の集団＃１における集団内情報量（１．２）が減少し、集団Ｕｂの集団内情報量は０．０増加する。なお、レコード｛ＩＰ１、８０｝の第１の集団＃１における集団内情報量は、１．２（−ｌｏｇ｛（２／１３）＊（５／１３）｝）である。
【０１９５】
従って、集団Ｕｂにレコード｛ＩＰ１、８０｝を再配置したことにより、図１４の集団構成テーブルＴ１１で示す第１の集団＃１〜第３の集団＃３および図１６の集団Ｕｂにおける全集団内情報量は、１．２（１．２−０．０）減少する。この減少を集団Ｕｂのセル内に”減少：１．２−０．０＝１．２”で示す。
【０１９６】
第１の集団＃１に属するレコード｛ＩＰ１、８０｝を集団Ｕｂに再配置しても、変数ＩＰ１、８０は、第１の集団＃１内の変数値に含まれる。従って、第１の集団＃１に属するレコード｛ＩＰ１、８０｝を集団Ｕｂに再配置しても、変数値は減少しない。この減少しないことを集団Ｕｂのセル内に”＃１の減少：０”で示す。
【０１９７】
ここで、レコード｛ＩＰ１、８０｝が属する集団Ｕｂの変数値は、２個である。この変数値の個数を集団Ｕｂのセル内に”Ｕの変数値の数：２”で示す。
【０１９８】
第１の集団＃１に属するレコード｛ＩＰ１、８０｝を集団Ｕｂに再配置した場合における評価値の改善量は、−０．８（１．２−α×（２−０）、ただしαは１）である。この”１．２”は、集団内情報量の減少値である。この”（２−０）”の”２”は、レコード｛ＩＰ１、８０｝が属する集団Ｕｂの変数値の個数であり、この”０”は、変数値の減少である。
【０１９９】
再配置部１１２ｄは、集団Ｕｂにおける集団内情報量の算出、評価値の改善量の算出を実行し、例えば、算出結果をＲＡＭ１０２に記憶する。
【０２００】
次いで、再配置部１１２ｄは、集団Ｕｂ内の何れかの変数値を共有するレコードの中で、集団Ｕｂに追加したときの評価値の改善量が最も大きいレコードを、集団Ｕｂに追加する（Ｓ３４）。例えば、集団Ｕｂ内の何れかの変数値（ＩＰ１または８０）を共有するレコードを｛ＩＰ１、８０８０｝とする。このレコードは、図１４の集団構成テーブルＴ１１における第１の集団＃１に属するレコードである。
【０２０１】
集団Ｕｂにレコード｛ＩＰ１、８０８０｝を追加すると想定する（図１６の集団Ｕｐ１１において”＃１”で示す点線矢印参照）。集団Ｕｂにレコード｛ＩＰ１、８０８０｝が追加されている状態を集団Ｕｐ１１のセル内に”集団構成：｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝”で示す。再配置部１１２ｄは、集団Ｕｐ１１におけるレコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝の集団Ｕｐ１における集団内情報量０．３を算出する。この算出式は、−ｌｏｇ｛（１／２）＊（２／２）｝である。なお、−ｌｏｇ｛（１／２）＊（２／２）｝の値は０．３である。
【０２０２】
この算出を集団Ｕｐ１１のセル内に”集団内情報量：０．３、０．３”で示す。集団Ｕｐ１１に属するレコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝の変数値は、ＩＰ１、８０、８０８０である。この変数値を集団Ｕｐ１１のセル内に”変数値：ＩＰ１、８０、８０８０”で示す。
【０２０３】
第１の集団＃１に属するレコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝を集団Ｕｐ１１に再配置することにより、レコード｛ＩＰ１、８０｝の第１の集団＃１における集団内情報量（１．２）とレコード｛ＩＰ１、８０８０｝の第１の集団＃１における集団内情報量（１．２）が減少する。そして、この再配置により、集団Ｕｐ１１の集団内情報量は０．６（０．３＋０．３）増加する。
【０２０４】
従って、集団Ｕｐ１１にレコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝を再配置したことにより、図１４の集団構成テーブルＴ１１で示す第１の集団＃１〜第３の集団＃３および図１６の集団Ｕｐ１１における全集団内情報量は、１．８（（１．２＋１．２）−（０．３＋０．３））減少する。この減少を集団Ｕｐ１１のセル内に”減少：（１．２＋１．２）−（０．３＋０．３）＝１．８”で示す。
【０２０５】
図１４において、第１の集団＃１に属するレコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝を集団Ｕｐ１１に再配置すると、変数値ＩＰ１と同一変数値ＩＰ１が、第１の集団＃１内の変数値から含まれなくなる。しかし、この再配置をしても、変数８０、８０８０は、第１の集団＃１内の変数値に含まれる。従って、第１の集団＃１に属するレコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝を集団Ｕｐ１１に再配置すると、変数値は１個減少する。この減少を集団Ｕｐ１１のセル内に”＃１の減少：１”で示す。
【０２０６】
ここで、レコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝が属する集団Ｕｐ１１の変数値は、３個である。この変数値の個数を集団Ｕｐ１１のセル内に”Ｕの変数値の数：３”で示す。
【０２０７】
第１の集団＃１に属するレコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝を集団Ｕｐ１１に再配置した場合における評価値の改善量は、−０．２（１．８−α×（３−１）、ただしαは１）である。
【０２０８】
再配置部１１２ｄは、集団Ｕｐ１１における集団内情報量の算出、評価値の改善量の算出を実行し、例えば、算出結果をＲＡＭ１０２に記憶する。
【０２０９】
集団Ｕｂに第１の集団＃１に属するレコード｛ＩＰ２、８０｝を追加すると想定する（図１６の集団Ｕｐ１２において”＃１”で示す点線矢印参照）。集団Ｕｂにレコード｛ＩＰ２、８０｝が追加されている状態を集団Ｕｐ２のセル内に”集団構成：｛ＩＰ１、８０｝、｛ＩＰ２、８０｝”で示す。再配置部１１２ｄは、レコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝の集団Ｕｐ１２における集団内情報量０．３を算出する。この算出式は、−ｌｏｇ｛（１／２）＊（２／２）｝である。なお、−ｌｏｇ｛（１／２）＊（２／２）｝の値は０．３である。
【０２１０】
この算出を集団Ｕｐ１２のセル内に”集団内情報量：０．３、０．３”で示す。集団Ｕｐ１２に属するレコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝の変数値は、ＩＰ１、ＩＰ２、８０である。この変数値を集団Ｕｐ１２のセル内に”変数値：ＩＰ１、ＩＰ２、８０”で示す。
【０２１１】
第１の集団＃１に属するレコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝を集団Ｕｐ１２に再配置することにより、レコード｛ＩＰ１、８０｝の第１の集団＃１における集団内情報量（１．２）とレコード｛ＩＰ２、８０｝の第１の集団＃１における集団内情報量（１．２）が減少する。そして、この再配置により、集団Ｕｐ１２の集団内情報量は０．６（０．３＋０．３）増加する。なお、レコード｛ＩＰ２、８０｝の第１の集団＃１における集団内情報量は、１．２（−ｌｏｇ｛（２／１３）＊（５／１３）｝）である。
【０２１２】
従って、集団Ｕｐ１２にレコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝を再配置したことにより、図１４の集団構成テーブルＴ１１で示す第１の集団＃１〜第３の集団＃３および図１６の集団Ｕｐ１２における全集団内情報量は、１．８（（１．２＋１．２）−（０．３＋０．３））減少する。この減少を集団Ｕｐ１２のセル内に”減少：（１．２＋１．２）−（０．３＋０．３）＝１．８”で示す。
【０２１３】
第１の集団＃１に属するレコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝を集団Ｕｐ１２に再配置しても、変数値ＩＰ１、ＩＰ２、８０と同一変数値ＩＰ１、ＩＰ２、８０が、第１の集団＃１内の変数値から含まれなくなることがない。従って、第１の集団＃１に属するレコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝を集団Ｕｐ１２に再配置しても、変数値は減少しない。この減少しないことを集団Ｕｐ１２のセル内に”＃１の減少：０”で示す。
【０２１４】
ここで、レコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝が属する集団Ｕｐ２の変数値は、３個である。この変数値の個数を集団Ｕｐ１２のセル内に”Ｕの変数値の数：３”で示す。
【０２１５】
第１の集団＃１に属するレコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝を集団Ｕｐ１２に再配置した場合における評価値の改善量は、−１．２（１．８−α×（３−０）、ただしαは１）である。
【０２１６】
再配置部１１２ｄは、集団Ｕｐ１２における集団内情報量の算出、評価値の改善量の算出を実行し、例えば、算出結果をＲＡＭ１０２に記憶する。
【０２１７】
集団Ｕｂにレコード｛ＩＰ１、８０８０｝を追加した場合の評価値の改善量は−０．２であり、この評価値の改善量が最大である（図１６の吹き出し”最大”参照）。そこで、再配置部１１２ｄは、レコード｛ＩＰ１、８０８０｝を、集団Ｕｂに追加する（Ｓ３４）。
【０２１８】
再配置部１１２ｄは、ｇ個（例えば、１個）のレコードを追加したか判定する（Ｓ３５）。既に、１個のレコードを集団Ｕａに追加したので（Ｓ３５のＹＥＳ）、再配置部１１２ｄは、評価値の改善量が最も大きくなるときの集団Ｕｐ１１をレコード集合Ｑ１に加える（Ｓ３６）。以下、評価値の改善量が最も大きくなるときの集団Ｕｐ１１に含まれる２個のレコードの集団を集団Ｕ１ｂで示す。
【０２１９】
図１２、図１５、図１６で説明したように、再配置部１１２ｄは、再配置する１以上のレコードの選択において、相互に変数値を共有しないレコードを、出現確率の逆数の対数（例えば、集団内情報量）が高い順に選択する（Ｓ３１）。図１５、図１６の例では、再配置部１１２ｄは、レコード｛ＩＰ７、１１０｝、｛ＩＰ１、８０｝を含むレコード群Ｖを選択する（Ｓ３１）。
【０２２０】
そして、再配置部１１２ｄは、選択したレコードＡ（例えば、図１５のレコード｛ＩＰ７、１１０｝）をｋ個の集団以外の他の集団（例えば、図１５の集団Ｕａ）に追加する第１の追加処理を実行する（Ｓ３３）。そして、再配置部１１２ｄは、離散データＬＳＤ４に含まれるレコードの中から、レコードＡに含まれる複数の変数値の何れか１つの変数値を含むレコードＢ（例えば、図１５のレコード｛ＩＰ６、１１０｝）を選択する（Ｓ３３）。再配置部１１２ｄは、選択したレコードＢを他の集団Ｕａに追加する第２の追加処理を実行する（Ｓ３３）。
【０２２１】
再配置部１１２ｄは、他の集団にレコードを追加する度に、第１の合計と第２の合計との減少量を概算する。再配置部１１２ｄは、この概算においては、例えば、図１５の評価値の改善量を算出している。再配置部１１２ｄは、最大の減算値を概算した場合の他の集団（例えば、図１５のレコード集団Ｕ１ａ）を再配置する１以上のレコードとして選択する。
【０２２２】
再配置部１１２ｄは、減少量の概算において、他の集団にレコードを追加する度に、以下の算出処理を実行する。すなわち、再配置部１１２ｄは、他の集団に属する１以上のレコードＣの各々のｋ個の集団における出現確率の逆数の対数（例えば、集団内情報量）の第１の和を算出する。そして、再配置部１１２ｄは、レコードＣの各々の他の集団における出現確率の逆数の対数（例えば、集団内情報量）の第２の和を算出する。次いで、再配置部１１２ｄは、第１の和から第２の和を減算した第１の値を算出する。
【０２２３】
次いで、再配置部１１２ｄは、他の集団に含まれる相互に異なる変数値の総数から、レコードＣの各々をレコードＣが属する集団から除外した際に、レコードＣに含まれる変数値が該集団に含まれなくなる場合における該変数値の個数を減算した第２の値を算出する。
【０２２４】
再配置部１１２ｄは、第１の値から第２の値を減算した減算値を算出し、この減算値を減少量の概算とする。この減少量の概算は、評価値の改善量である。再配置部１１２ｄ、減算値の算出において、第１の値から、第２の値に重み付け係数を乗算した値を減算した値を減算値とする。この重み付け係数は、例えば、図１５、図１６で説明したα（例えば、１）であり、調整可能である。
【０２２５】
ここで、図１５の例において、集団Ｕにレコード｛ＩＰ７、１１０｝を追加した場合（集団Ｕａ参照）を第１の場合とする。そして、図１５の例において、集団Ｕａにレコード｛ＩＰ６、１１０｝を追加した場合（集団Ｕｐ１参照）を第２の場合とする。
【０２２６】
第１の場合、図１４、図１５の例で示すように、第１の和は集団内情報量（１．８）であり、第２の和は集団内情報量（０．０）であり、第１の値は”減少：１．８−０．０＝１．８”である。第１の場合、レコードＣは、図１４の第１の集団＃１に属するレコード｛ＩＰ７、１１０｝である。第１の場合、他の集団Ｕａに含まれる相互に異なる変数値は、変数値ＩＰ７、１１０であり、この変数値の総数は２（”Ｕの変数値の数：２”）である。第１の場合、レコードＣに含まれる変数値が第１の集団＃１に含まれなくなる場合におけるこの変数値の個数は、図１５で説明したように、”＃１の減少：１”で示す１個である。従って、第１の場合、第２の値は、１（２ー１）である。第１の場合、第１の値から第２の値を減算した減算値（すなわち、評価値の改善量）は、”１．８−α（２ー１）＝０．８”である（αは例えば、１）。
【０２２７】
第２の場合、図１４、図１５の例で示すように、第１の和は集団内情報量（１．８＋１．８）であり、第２の和は集団内情報量（０．３＋０．３）であり、第１の値は”減少：（１．８＋１．８）−（０．３＋０．３）＝３．０”である。第２の場合、レコードＣは、図１４の第１の集団＃１に属するレコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝、である。第２の場合、他の集団Ｕｐ１に含まれる相互に異なる変数値は、変数値ＩＰ７、ＩＰ６、１１０であり、この変数値の総数は３（”Ｕの変数値の数：３”）である。
【０２２８】
第２の場合、レコードＣに含まれる変数値が第１の集団＃１に含まれなくなる場合におけるこの変数値の個数は、図１５で説明したように、”＃１の減少：２”で示す２個である。従って、第２の場合、第２の値は、１（３ー２）である。第２の場合、第１の値（３．０）から第２の値（１．０）を減算した減算値（すなわち、評価値の改善量）は、”３．０−α（３−２）＝２．０”である（αは例えば１）。
【０２２９】
再配置部１１２ｄは、前記した第１の追加処理において、相互に変数値を共有しないレコードをｍ（１以上の整数）個選択する（Ｓ３１）。なお、ｍをＮｂと記しても良い。そして、再配置部１１２ｄは、出現確率の逆数の対数（例えば、集団内情報量）が高い順に１個のレコードを他の集団に追加する（Ｓ３２）。第１の追加処理は、前記した第１の場合で説明した。
【０２３０】
次いで、再配置部１１２ｄは、前記した第２の追加処理において、ｇ（１以上の整数）個のレコードＢを他の集団に順次追加して、評価値の改善量が最大になる再配置用の集団（例えば、図１５のレコード集団Ｕ１ａ）を生成する（Ｓ３４）。再配置部１１２ｄは、ｇ個のレコードＢの追加が終了すると（Ｓ３５のＹＥＳ）、この他の集団を配置用の集団として記憶部（例えば、ＲＡＭ１０２）に記憶する（Ｓ３６）。そして、再配置部１１２ｄは、相互に変数値を共有しない前記Ｎｂ個のレコードを全て他の集団に追加するまで、第１、第２の追加処理を繰り返し行う（Ｓ３３〜Ｓ３６）。すなわち、再配置部１１２ｄは、第１、第２の追加処理を繰り返し行い、相互に変数値を共有しないＮｂ個のレコードを全て他の集団に追加すると、ＲＡＭ１０２に記憶した配置用の集団を１以上のレコード（すなわち、再配置の対象となるレコード）として選択する。
【０２３１】
以後、再配置部１１２ｄは、選択した１以上のレコード（すなわち、再配置の対象となるレコード）を、集団内情報量の合計と集団間情報量の合計との総合計の減少量が最大になる集団に再配置する。なお、この集団は、第１の集団＃１〜第３の集団＃３の何れか１つの集団である。
【０２３２】
[再配置するレコード群の取得]
再配置部１１２ｄは、レコード群Ｖから全てのレコード（｛ＩＰ７、１１０｝、｛ＩＰ１、８０｝）を取得したので（Ｓ３７のＹＥＳ）、Ｓ４に移る。再配置部１１２ｄは、レコード集合Ｑ１の中で、評価値の改善量が最も大きいレコード群ｒｇを取得する（Ｓ４）。
【０２３３】
図１５の例では、最も大きい評価値の改善量は２．０であり、最も大きい評価値の改善量になるときの集団Ｕｐ１（集団Ｕ１ａ）に属するレコードは、レコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝である。そして、図１６の例では、最も大きい評価値の改善量はー０．２であり、最も大きい評価値の改善量になるときの集団Ｕｐ１１（集団Ｕ１ｂ）に属するレコードは、レコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝である。
【０２３４】
従って、レコード集合Ｑ１の中で、評価値の改善量が最も大きいレコード群ｒｇは、図１５の例において、最も大きい評価値の改善量（２．０）になるときの集団Ｕｐ１（集団Ｕ１ａ）に属するレコードである。従って、再配置部１１２ｄは、レコード群ｒｇ（集団Ｕ１ａ）を取得する（Ｓ４）。
【０２３５】
[再配置するレコード群の有効性の判定]
算出部１１２ｂは、Ｓ４で取得したレコード群ｒｇ（集団Ｕ１ａ）に基づき、第１評価値ｅ１及び第２評価値ｅ２を算出する（Ｓ５）。そして、判定部１１２ｃは、Ｓ４で取得したレコード群ｒｇの有効性の判定する（Ｓ６）。
【０２３６】
具体的に、判定部１１２ｃは、Ｓ４で取得したレコード群ｒｇが、再配置を行うことによって評価値を改善できるレコード群ｒｇであるか否かを判定する（Ｓ６）。ここで、評価値を改善できるレコード群ｒｇには、そのレコード群ｒｇの再配置を行うことにより評価値を改善できないものであっても、レコード集合Ｑ１に含まれる他のレコード群の再配置を引き続き行うことで、長期的には評価値を改善できるものを含む。そして、Ｓ４で取得したレコード群ｒｇが長期的にも評価値を改善できないものであると判定した場合、判定部１１２ｃは、Ｓ４で取得したレコード群ｒｇについてはＳ７の処理を行わない旨の決定を行う（Ｓ６のＮＯ）。
【０２３７】
すなわち、図１４等で説明した集団構成テーブルは、場合によっては、膨大な数（例えば、数万件）のレコードが含んでいる可能性があり、各レコードに含まれる変数値の数も膨大である可能性がある。このような場合、レコード群ｒｇが再配置可能な集団の中には、例えば、再配置を行うことによって評価値を改善できる再配置先が存在しない場合がある。一方で、評価値を改善できないレコード群ｒｇには、そのレコード群ｒｇの再配置を行うことにより評価値の改善を行うことができないが、レコード集合Ｑ１に含まれる他のレコード群の再配置を引き続き行うことで、長期的には評価値を改善できるものが存在する場合がある。
【０２３８】
そこで、本実施の形態の判定部１１２ｃは、Ｓ４で取得したレコード群ｒｇが、再配置を行うことによって評価値を改善できるレコード群ｒｇであるか否かを判定する（Ｓ６）。そして、判定部１１２ｃは、再配置を行うことによって評価値を改善できるレコード群ｒｇについては再配置を行う（Ｓ６のＹＥＳ、Ｓ７）。すなわち、判定部１１２ｃは、再配置によって評価値を改善できないレコード群ｒｇであっても、レコード集合Ｑ１に含まれる他のレコード群の再配置を引き続き行うことで評価値を改善できるレコード群ｒｇについては再配置を行う。一方、判定部１１２ｃは、再配置を行うことによって評価値を改善できないレコード群ｒｇについては再配置を行わない（Ｓ６のＮＯ）。すなわち、判定部１１２ｃは、再配置によって評価値を改善できないだけでなく、レコード集合Ｑ１に含まれる他のレコード群の再配置を引き続き行っても評価値を改善できないレコード群ｒｇについては再配置を行わない。
【０２３９】
これにより、分類部１１２は、例えば、レコードの再配置を行うことによって評価値を改善できる再配置先が存在しない状態が発生しても、レコードの再配置を継続することが可能になる。
【０２４０】
なお、以下、再配置を行うことによって評価値を改善できるレコード群ｒｇを、有効性を有するレコード群ｒｇとも呼ぶ。以下、Ｓ５及びＳ６の処理の具体例について説明する。
【０２４１】
初めに、算出部１１２ｂは、新たな集団（以下、仮集団＃０とも呼ぶ）にレコード群ｒｇを再配置したと仮定した場合における評価値（第１評価値ｅ１）を算出する（Ｓ５）。
【０２４２】
図１７は、レコード群ｒｇを仮集団＃０に再配置した場合の（点線枠参照）、集団構成テーブルＴ１２を説明する図である。具体的に、図１７に示す集団構成テーブルにおいて、レコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝が第１の集団＃１から仮集団＃０に再配置されている。そして、算出部１１２ｂは、図１７に示す集団構成テーブルＴ１２を参照し、図１４で説明した場合と同様に、第１評価値ｅ１を算出する。具体的に、算出部１１２ｂは、この場合、第１評価値ｅ１として４５．０を算出する。
【０２４３】
次に、算出部１１２ｂは、図１４に示す集団構成テーブルＴ１１において、第１の集団＃１（レコード｛ＩＰ７、１１０｝、｛ＩＰ６、１１０｝が属する元の集団）に属するレコードを、第１の集団＃１または仮集団＃０のいずれかにランダムに再配置したものと仮定する。そして、算出部１１２ｂは、この場合における評価値（第２評価値ｅ２）を算出する（Ｓ５）。
【０２４４】
図１８は、図１４に示す集団構成テーブルＴ１１において、第１の集団＃１に配置されたレコードを、第１の集団＃１または仮集団＃０のいずれかにランダムに配置したときの（点線枠参照）、集団構成テーブルＴ１３を説明する図である。具体的に、図１８に示す集団構成テーブルにおいて、レコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝、｛ＩＰ２、８０８０｝、｛ＩＰ３、８０８０｝、｛ＩＰ４、８０｝、｛ＩＰ５、８０８０｝、｛ＩＰ６、１１０｝が第１の集団＃１に配置されている。また、図１８に示す集団構成テーブルにおいて、レコード｛ＩＰ１、８０８０｝、｛ＩＰ３、８０｝、｛ＩＰ４、８０８０｝、｛ＩＰ５、８０｝、｛ＩＰ５、１１０｝、｛ＩＰ７、１１０｝が仮集団＃０に配置されている。そして、算出部１１２ｂは、図１８に示す集団構成テーブルＴ１３を参照し、図１４で説明した場合と同様に、第２評価値ｅ２を算出する。具体的に、算出部１１２ｂは、この場合、第２評価値ｅ２として５４．５を算出する。
【０２４５】
その後、判定部１１２ｃは、以下の式２が成立する場合に、Ｓ４で取得したレコード群ｒｇが有効性を有するレコード群ｒｇであるものと判定する（Ｓ６）。
【０２４６】
第１評価値ｅ１−ε×レコード群ｒｇが配置されていた元の集団に属するレコードの数（第２評価値ｅ２−第１評価値ｅ１）＜元の評価値ｅ_ｐｒｅ・・・（式２）
なお、εはいわゆる重み付け係数（０よりも大きい値からなる係数）であり、分析者により適宜調整可能である。
【０２４７】
式２において、あるレコード群ｒｇに基づく第１評価値ｅ１と第２評価値ｅ２とが近い値である程、または、あるレコード群ｒｇに基づく第１評価値ｅ１が第２評価値ｅ２よりも大きい値である程、左辺の値は大きくなる。そのため、第１評価値ｅ１及び第２評価値ｅ２は、第１評価値ｅ１と第２評価値ｅ２とが近い値である程、または、あるレコード群ｒｇに基づく第１評価値ｅ１が第２評価値ｅ２よりも大きい値である程、式２の成立を妨げるように作用する。一方、式２において、あるレコード群ｒｇに基づく第２評価値ｅ２が第１評価値ｅ１よりも大きい値である程、左辺の値は小さくなる。そのため、第１評価値ｅ１及び第２評価値ｅ２は、第２評価値ｅ２が第１評価値ｅ１よりも大きい値である程、式２を成立させるように作用する。
【０２４８】
すなわち、第１評価値ｅ１と第２評価値ｅ２とが近い値であるレコード群ｒｇの再配置は、第１の集団＃１からランダムで選択されたレコード群を再配置した場合と比較して、評価値を改善させる効果に差がないと理解できる。さらに、第１評価値ｅ１が第２評価値ｅ２よりも大きい値であるレコード群ｒｇの再配置は、第１の集団＃１からランダムで選択されたレコード群を再配置した場合よりも、評価値を改悪させるものであると理解できる。そのため、判定部１１２ｃは、式２が成立しないレコード群ｒｇについては、再配置を行っても評価値を改善させることができないものであると判定し、再配置を行わない旨の決定をすることが可能になる。
【０２４９】
また、式２において、第２評価値ｅ２が第１評価値ｅ１よりも大きい値である場合、レコード群ｒｇが配置されていた元の集団に属するレコードの数が多い程、左辺の値は小さくなる。すなわち、第２評価値ｅ２が第１評価値ｅ１よりも大きい値である場合、レコード群ｒｇが配置されていた元の集団に属するレコードの数は、そのレコード数が多い程、式２を成立させるように作用する。
【０２５０】
具体的に、式２において、εが０．１である場合、左辺が３２．６となり、右辺が４８．３（図１４参照）になる。したがって、この場合、判定部１１２ｃは、式２が成立するものと判定し、レコード群ｒｇが有効性を有するものと判定する（Ｓ６のＹＥＳ）。一方、上記の例において、例えば、元の評価値ｅ_ｐｒｅ（式２の右辺）が３０．０である場合、判定部１１２ｃは、式２が成立しないものと判定し、レコード群ｒｇが有効性を有しないものと判定する（Ｓ６のＮＯ）。
【０２５１】
これにより、データ分類装置１は、例えば、Ｓ４で取得したレコード群ｒｇを再配置可能な集団の中に、レコード群ｒｇの再配置によって評価値を改善できる集団が存在しない場合であっても、レコード群ｒｇの再配置を行うべきか否かの判定を行うことが可能になる。すなわち、データ分類装置１は、Ｓ４で取得したレコード群ｒｇが、再配置を行っても評価値を改善することができないものであるが、再配置を継続することで長期的に評価値を改善させることができるレコード群ｒｇであるか否かの判定を行うことが可能になる。そのため、データ分類装置１は、Ｓ４で取得したレコード群ｒｇを再配置可能な集団の中に、再配置を行った場合に評価値を改善させることができる集団が存在しない場合であっても、評価値の改善させるための再配置を行うことが可能になる。
【０２５２】
また、データ分類装置１は、再配置によって評価値を改善させることができないレコード群ｒｇであって、長期的にも評価値を改善できないレコード群ｒｇについては、再配置を行わない旨の判定を行うことが可能になる。これにより、データ分類装置１は、例えば、離散データの分類を効率的に行うことが可能になる。
【０２５３】
[レコード群の再配置]
再配置部１１２ｄは、レコード群ｒｇが有効性を有していた場合において（Ｓ６のＹＥＳ）、第１の集団＃１〜第３の集団＃３の中の何れか１個の集団にレコード群ｒｇ（集団Ｕ１ａ）を再配置したときに、評価値が最も良くなる集団にレコード群ｒｇを再配置する（Ｓ７）。この再配置を、図１９〜図２１を参照して説明する。
【０２５４】
再配置部１１２ｄは、第１の集団＃１〜第３の集団＃３にレコード群ｒｇ（集団Ｕ１ａ）を再配置した場合における各値を算出する。この各値は、全レコードの集団内情報量および集団間情報量、各集団における集団内情報量の合計および集団間情報量の合計、集団内情報量の総合計および集団間情報量の総合計、評価値である。
【０２５５】
図１９は、レコード群ｒｇ（集団Ｕ１ａ）を再配置しないときの（点線枠参照）、集団構成テーブルＴ２１を示す。
【０２５６】
集団構成テーブルＴ２１は、全レコードの集団内情報量および集団間情報量、各集団における集団内情報量の合計および集団間情報量の合計、集団内情報量の総合計（２７．２）および集団間情報量の総合計（２１．１）、評価値（４８．３）を示す。
【０２５７】
図２０は、第２の集団＃２にレコード群ｒｇ（集団Ｕ１ａ）を再配置したときの（点線枠参照）、集団構成テーブルＴ２２を示す。集団構成テーブルＴ２２は、全レコードの集団内情報量および集団間情報量、各集団における集団内情報量の合計および集団間情報量の合計、集団内情報量の総合計（２４．０）および集団間情報量の総合計（２１．１）、評価値（４５．１）を示す。
【０２５８】
図２１は、第３の集団＃３にレコード群ｒｇ（集団Ｕ１ａ）を再配置したときの（点線枠参照）、集団構成テーブルＴ２３を示す。集団構成テーブルＴ２３は、全レコードの集団内情報量および集団間情報量、各集団における集団内情報量の合計および集団間情報量の合計、集団内情報量の総合計（２５．０）および集団間情報量の総合計（１８．９）、評価値（４３．９）を示す。
【０２５９】
再配置部１１２ｄは、図１９〜図２１に示したように、全レコードの集団内情報量および集団間情報量、各集団における集団内情報量の合計および集団間情報量の合計、集団内情報量の総合計および集団間情報量の総合計、評価値を算出しＲＡＭ１０２に記憶する。
【０２６０】
図２１に示したように、第３の集団＃３にレコード群ｒｇ（集団Ｕ１ａ）を再配置したときの評価値が、最良（最小）である。この最小の評価値を、図２１の吹き出し”最小”で示す。従って、再配置部１１２ｄは、第３の集団＃３にレコード群ｒｇ（集団Ｕ１ａ）を再配置する（Ｓ７）。図２１の集団構成テーブルＴ２３の集団構成欄が、図１３の集団構成テーブルＴ２の集団構成欄に対応する。
【０２６１】
再配置部１１２ｄは、レコード集合Ｑ１からレコード群ｒｇ（集団Ｕ１ａ）を除外する（Ｓ８）。レコード群ｒｇ（集団Ｕ１ａ）を除外したレコード集合Ｑ１は、集団Ｕ１ｂを含むので、レコード集合Ｑ１は、空集合ではない（Ｓ９のＮＯ）。従って、再配置部１１２ｄは、Ｓ９でのＮＯと判定し、Ｓ４に移る。
【０２６２】
再配置部１１２ｄは、除外後のレコード集合Ｑ１の中で、評価値の改善量が最も大きいレコード群ｒｇを取得する（Ｓ４）。
【０２６３】
図１６の例では、最も大きい評価値の改善量は−０．２であり、最も大きい評価値の改善量になるときの集団Ｕｐ１１（集団Ｕ１ｂ）に属するレコードは、レコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝である。
【０２６４】
従って、レコード集合Ｑ１の中で、評価値の改善量が最も大きいレコード群ｒｇは、最も大きい評価値の改善量（−０．２）になるときの集団Ｕｐ１１（集団Ｕ１ｂ）に属するレコード（集団Ｕ１ｂ）である。従って、再配置部１１２ｄは、レコード群ｒｇ（集団Ｕ１ｂ）を取得する（Ｓ４）。
【０２６５】
算出部１１２ｂは、Ｓ４で取得したレコード群ｒｇ（集団Ｕ１ｂ）に基づき、第１評価値ｅ１及び第２評価値ｅ２を算出する（Ｓ５）。そして、判定部１１２ｃは、Ｓ４で取得したレコード群ｒｇの有効性の判定する（Ｓ６）。
【０２６６】
図２２は、レコード群ｒｇを仮集団＃０に再配置した場合の（点線枠参照）、集団構成テーブルＴ２４を説明する図である。具体的に、図２２に示す集団構成テーブルにおいて、レコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝が第１の集団＃１から仮集団＃０に再配置されている。算出部１１２ｂは、例えば、図２２に示す集団構成テーブルＴ２４を参照し、図１４で説明した場合と同様に、第１評価値ｅ１を算出する。具体的に、算出部１１２ｂは、この場合、第１評価値ｅ１として４３．７を算出する。
【０２６７】
次に、算出部１１２ｂは、図２１に示す集団構成テーブルＴ２３において、第１の集団＃１（レコード｛ＩＰ１、８０｝、｛ＩＰ１、８０８０｝が属する元の集団）に属するレコードを、第１の集団＃１または仮集団＃０のいずれかにランダムに再配置したものと仮定する。そして、算出部１１２ｂは、この場合における評価値（第２評価値ｅ２）を算出する（Ｓ５）。
【０２６８】
図２３は、図２１に示す集団構成テーブルＴ２３において、第１の集団＃１に配置されたレコードを、第１の集団＃１または仮集団＃０のいずれかにランダムに配置したときの（点線枠参照）、集団構成テーブルＴ２５を説明する図である。具体的に、図２３に示す集団構成テーブルにおいて、レコード｛ＩＰ１、８０｝、｛ＩＰ２、８０｝、｛ＩＰ３、８０８０｝、｛ＩＰ４、８０｝、｛ＩＰ５、８０｝、｛ＩＰ５、８０８０｝が第１の集団＃１に配置されている。また、図１８に示す集団構成テーブルにおいて、レコード｛ＩＰ１、８０８０｝、｛ＩＰ２、８０８０｝、｛ＩＰ３、８０｝、｛ＩＰ４、８０８０｝、｛ＩＰ５、１１０｝が仮集団＃０に配置されている。算出部１１２ｂは、例えば、図２３に示す集団構成テーブルＴ２５を参照し、図１４で説明した場合と同様に、第２評価値ｅ２を算出する。具体的に、算出部１１２ｂは、この場合、第２評価値ｅ２として５０．９を算出する。
【０２６９】
その後、判定部１１２ｃは、上記の式２が成立する場合に、Ｓ４で取得したレコード群ｒｇが有効性を有するレコード群ｒｇであるものと判定する（Ｓ６）。
【０２７０】
具体的に、εが０．１である場合、左辺が３５．８となり、右辺が４３．９（図２１参照）になる。したがって、この場合、判定部１１２ｃは、式２が成立するものと判定し、レコード群ｒｇが有効性を有するものと判定する（Ｓ６のＹＥＳ）。
【０２７１】
再配置部１１２ｄは、第１の集団＃１〜第３の集団＃３の中の何れか１個の集団にレコード群ｒｇ（集団Ｕ１ｂ）を再配置したときに、評価値が最も良くなる集団にレコード群ｒｇを再配置する（Ｓ７）。この再配置を、図２４〜図２６を参照して説明する。前記したように、再配置部１１２ｄは、第１の集団＃１〜第３の集団＃３にレコード群ｒｇ（集団Ｕ１ｂ）を再配置した場合における各値を算出する。
【０２７２】
図２４は、第１の集団＃１にレコード群ｒｇ（集団Ｕ１ｂ）を再配置したときの（点線枠参照）、集団構成テーブルＴ３１を示す。集団構成テーブルＴ３１は、全レコードの集団内情報量および集団間情報量、各集団における集団内情報量の合計および集団間情報量の合計、集団内情報量の総合計（２５．０）および集団間情報量の総合計（１８．９）、評価値（４３．９）を示す。
【０２７３】
図２５は、第２の集団＃２にレコード群ｒｇ（集団Ｕ１ｂ）を再配置したときの（点線枠参照）、集団構成テーブルＴ３２を示す。集団構成テーブルＴ３２は、全レコードの集団内情報量および集団間情報量、各集団における集団内情報量の合計および集団間情報量の合計、集団内情報量の総合計（２３．７）および集団間情報量の総合計（２１．１）、評価値（４４．８）を示す。
【０２７４】
図２６は、第３の集団＃３にレコード群ｒｇ（集団Ｕ１ｂ）を再配置したときの（点線枠参照）、集団構成テーブルＴ３３を示す。集団構成テーブルＴ３３は、全レコードの集団内情報量および集団間情報量、各集団における集団内情報量の合計および集団間情報量の合計、集団内情報量の総合計（２７．１）および集団間情報量の総合計（２１．１）、評価値（４８．１）を示す。
【０２７５】
再配置部１１２ｄは、図２４〜図２６に示したように、全レコードの集団内情報量および集団間情報量、各集団における集団内情報量の合計および集団間情報量の合計、集団内情報量の総合計および集団間情報量の総合計、評価値を算出しＲＡＭ１０２に記憶する。
【０２７６】
図２４に示したように、第１の集団＃１にレコード群ｒｇ（集団Ｕ１ｂ）を再配置したときの評価値が、最良（最小）である。この最小の評価値を、図２４の吹き出し”最小”で示す。従って、再配置部１１２ｄは、第１の集団＃１にレコード群ｒｇ（集団Ｕ１ｂ）を再配置する（Ｓ７）。図２４の集団構成テーブルＴ３１の集団構成欄が、図１３の集団構成テーブルＴ３の集団構成欄に対応する。
【０２７７】
再配置部１１２ｄは、レコード集合Ｑ１からレコード群ｒｇ（集団Ｕ１ｂ）を除外する（Ｓ８）。レコード群ｒｇ（集団Ｕ１ｂ）を除外したレコード集合Ｑ１は、空集合である（Ｓ９のＹＥＳ）。従って、再配置部１１２ｄは、Ｓ９でのＹＥＳと判定し、Ｓ１０に移る。再配置部１１２ｄは、再配置後の評価値ｅ（４３．９）を算出する（Ｓ１０）。
【０２７８】
再配置部１１２ｄは、再配置後の評価値ｅ（４３．９）は、元の評価値ｅ_ｐｒｅ（図１４の評価値４８．３参照）未満なので（Ｓ１１のＮＯ）、Ｓ１２に移る。
【０２７９】
再配置部１１２ｄは、Ｓ２〜Ｓ１１のステップをＲ回（例えば、１回）繰り返したか判定する。図１４〜図２６の例では、再配置部１１２ｄは、Ｓ２〜Ｓ１１のステップを１回実行しているので、Ｓ１２でＮＯと判定し、Ｓ１２でのＹＥＳと判定し、処理を終了する。
【０２８０】
再配置部１１２ｄは、再配置後の集団を示す図２６の集団構成テーブルＴ３１を出力部１１３に入力する。出力部１１３は、図２６の集団構成テーブルＴ３１に示す集団欄に記憶した集団識別子と、この集団識別子により識別される集団に属するレコードを出力装置に出力する。すなわち、再配置部１１２ｄは、図２６の集団構成テーブルＴ３１に示す、集団欄に記憶した集団識別子と集団構成欄に記憶した分類されたレコードとを出力装置に出力する。
【０２８１】
以上説明したように、本実施の形態のデータ分類装置１は、集団内情報量だけでなく、集団間情報量をも考慮した離散データの分類処理を実行している。その結果、分析者の目的を容易に達成できる最適な集団に離散データを分類できる。
【０２８２】
また、本実施の形態のデータ分類装置１は、評価値の減少量が最も大きくなると概算できる１以上のレコードを選択し、選択した１つ以上のレコードを再配置用のレコードとしている（図１２のＳ３６、図１５、図１６参照）。
【０２８３】
一方、再配置するレコード群をランダムに作成し、作成したレコード群を、評価値が最も小さくなるように集団（例えば、第１の集団＃１〜第３の集団＃３）に再配置する方法も考えられる。しかし、多数のレコードに対してかかる方法を実行すると、計算量が膨大になり、現実的ではない。これに対し、本実施の形態のデータ分類装置１は、評価値の減少量が最も大きくなると概算できる１以上のレコードを選択し、その後、選択した１以上のレコードを評価値が最も小さくなるように集団に再配置している。従って、計算量の増大を抑制でき、処理負荷を削減できる。
【０２８４】
また、本実施の形態のデータ分類装置１は、再配置用のレコードを複数個選択することができる。そのため、異なる集団に属する同一変数値の数（共有数）がなるべく少なくなるように分類できる。
【０２８５】
例えば、複数のレコードを含むレコード群が、ある集団に併合されてしまうと、図２〜図７で説明した一方法により離散データを分類した場合、異なる集団に属する同一変数値の数の増加を抑制できなくなる。その結果、ある集団に属する前記したレコード群を他の集団に配置することが困難になる。しかし、再配置用のレコードを複数個選択することができるので、前記した同一変数値の数の増加を抑制できる。
【０２８６】
さらに、本実施の形態のデータ分類装置１は、再配置によって評価値を改善させることができないレコード群が、継続して再配置を行うことで評価値を改善させることができるか否かを判定する。これにより、データ分類装置１は、レコード群を再配置可能な集団の中に、レコード群の再配置を行うことにより評価値を改善させることができる集団が存在しない場合であっても、レコード群の再配置を継続することが可能になる。
【０２８７】
また、本実施の形態のデータ分類装置１は、再配置によって評価値を改善させることができないものであって、継続して再配置を行っても長期的に評価値を改善できないレコード群については、再配置を行わない。これにより、データ分類装置１は、離散データに含まれる複数のレコードの分類を効率的に行うことが可能になる。
【０２８８】
以上の実施の形態をまとめると、次の付記のとおりである。
【０２８９】
（付記１）
複数の種類の変数値をそれぞれが含む複数のレコードを含むデータを取得する取得部と、
前記取得部により取得された前記データに含まれる複数のレコードを分類する分類部と、を有し、
前記分類部は、
前記複数のレコードのそれぞれが配置された複数のグループを生成する生成部と、
前記複数のグループに含まれる第１グループに配置された第１レコードを、前記複数のグループに含まれない新たなグループである第２グループに再配置した場合における前記複数のレコードの配置状況に基づく第１評価値と、前記第１グループに配置された各レコードを、前記第１グループまたは第２グループのいずれかに再配置した場合における前記複数のレコードの配置状況に基づく第２評価値とを算出する算出部と、
前記第１評価値及び前記第２評価値に基づき、前記第１レコードを再配置するか否かについての判定を行う判定部と、
前記第１レコードを前記再配置すると判定した場合、前記第１レコードの再配置を行う再配置部と、を有する、
ことを特徴とするデータ分類装置。
【０２９０】
（付記２）
付記１において、
前記判定部は、
前記第２評価値から前記第１評価値を減算することにより第１減算値を算出し、
前記第１評価値から前記第１減算値を減算して算出した第２減算値が、前記複数のレコードの現在の配置状況に基づく第３評価値よりも小さい場合、前記第１レコードを再配置する旨の判定を行う、
ことを特徴とするデータ分類装置。
【０２９１】
（付記３）
付記２において、
前記判定部は、前記第１評価値から、前記第１減算値の値に重み付け係数を乗算した値を減算することにより、前記第２減算値を算出する、
ことを特徴とするデータ分類装置。
【０２９２】
（付記４）
付記１において、
前記算出部は、前記第１レコードを前記第２グループに再配置した場合における、前記複数のグループ及び前記第２グループを含むグループ毎であって前記複数のレコード毎の出現確率の逆数を算出し、前記複数のグループ及び前記第２のグループのうちの前記変数値のそれぞれを含むグループの数と、前記複数のグループ及び前記第２グループのうちのいずれかのグループに含まれる前記変数値の種類の数とに基づく共有値を前記変数値毎に算出し、算出した前記出現確率の逆数の総和と、算出した前記共有値の総和とを加算することにより、前記第１評価値を算出する、
ことを特徴とするデータ分類装置。
【０２９３】
（付記５）
付記１において、
前記算出部は、前記第１グループに配置されたレコードを前記第１グループまたは第２グループのいずれかに再配置した場合における、前記複数のグループ及び前記第２グループを含むグループ毎であって前記複数のレコード毎の出現確率の逆数を算出し、前記複数のグループ及び前記第２のグループのうちの前記変数値のそれぞれを含むグループの数と、前記複数のグループ及び前記第２グループのうちのいずれかのグループに含まれる前記変数値の種類の数とに基づく共有値を前記変数値毎に算出し、前記出現確率の逆数の総和と前記共有値の総和とを加算することにより、前記第２評価値を算出する、
ことを特徴とするデータ分類装置。
【０２９４】
（付記６）
付記４または５において、
前記算出部は、算出した前記出現確率の逆数の対数の合計を第１の合計として算出し、算出した前記共有値の対数の合計を第２の合計として算出し、前記第１の合計と前記第２の合計とを加算することにより、前記第１または第２評価値を算出する、
ことを特徴とするデータ分類装置。
【０２９５】
（付記７）
付記１において、
前記算出部は、前記複数のグループ毎であって前記複数のレコード毎の出現確率の逆数を算出し、前記複数のグループのうちの前記変数値のそれぞれを含むグループの数と、前記複数のグループのうちのいずれかのグループに含まれる前記変数値の種類の数とに基づく共有値を前記変数値毎に算出し、算出した前記出現確率の逆数の総和と、算出した前記共有値の総和とを加算することにより、前記第３評価値を算出する、
ことを特徴とするデータ分類装置。
【０２９６】
（付記８）
付記１において、
前記生成部は、前記複数のレコードの中から、共有して含まれる前記変数値の数が少なくなるように、Ｎａ（Ｎａは２以上の整数）個のレコードをランダムに選択してＮａ個のグループを生成し、前記複数のグループ毎であって前記複数のレコード毎の前記出現確率が高くなるように、前記複数のレコードのうちの前記Ｎａ個のレコード以外のレコードを、前記Ｎａ個のグループにそれぞれ配置することにより、前記複数のグループの生成を行う、
ことを特徴とするデータ分類装置。
【０２９７】
（付記９）
付記２において、
前記再配置部は、前記複数のグループのうち、前記第３評価値に対する、前記第１レコードを再配置した場合における配置状況に基づく第４評価値の減少量が最大になるグループに前記第１レコードを再配置する、
ことを特徴とするデータ分類装置。
【０２９８】
（付記１０）
複数の種類の変数値をそれぞれが含む複数のレコードを含むデータを取得し、
取得した前記データに含まれる複数のレコードを分類し、
前記分類では、
前記複数のレコードのそれぞれが配置された複数のグループを生成し、
前記複数のグループに含まれる第１グループに配置された第１レコードを、前記複数のグループに含まれない新たなグループである第２グループに再配置した場合における前記複数のレコードの配置状況に基づく第１評価値と、前記第１グループに配置された各レコードを、前記第１グループまたは第２グループのいずれかに再配置した場合における前記複数のレコードの配置状況に基づく第２評価値とを算出し、
前記第１評価値及び前記第２評価値に基づき、前記第１レコードを再配置するか否かについて判定し、
前記第１レコードを前記再配置すると判定した場合、前記第１レコードの再配置を行う、
ことを特徴とするデータ分類方法。
【０２９９】
（付記１１）
コンピュータに、
複数の種類の変数値をそれぞれが含む複数のレコードを含むデータを取得し、
取得した前記データに含まれる複数のレコードを分類する、
処理を実行させ、
前記分類では、
前記複数のレコードのそれぞれが配置された複数のグループを生成し、
前記複数のグループに含まれる第１グループに配置された第１レコードを、前記複数のグループに含まれない新たなグループである第２グループに再配置した場合における前記複数のレコードの配置状況に基づく第１評価値と、前記第１グループに配置された各レコードを、前記第１グループまたは第２グループのいずれかに再配置した場合における前記複数のレコードの配置状況に基づく第２評価値とを算出し、
前記第１評価値及び前記第２評価値に基づき、前記第１レコードを再配置するか否かについて判定し、
前記第１レコードを前記再配置すると判定した場合、前記第１レコードの再配置を行う、
ことを特徴とするデータ分類プログラム。
【符号の説明】
【０３００】
１：データ分類装置                １１０：分類プログラム
１１１：入力部                    １１２：分類部
１１３：出力部
【図１】
0006623564.tif 000002
【図２】
0006623564.tif 000003
【図３】
0006623564.tif 000004
【図４】
0006623564.tif 000005
【図５】
0006623564.tif 000006
【図６】
0006623564.tif 000007
【図７】
0006623564.tif 000008
【図８】
0006623564.tif 000009
【図９】
0006623564.tif 000010
【図１０】
0006623564.tif 000011
【図１１】
0006623564.tif 000012
【図１２】
0006623564.tif 000013
【図１３】
0006623564.tif 000014
【図１４】
0006623564.tif 000015
【図１５】
0006623564.tif 000016
【図１６】
0006623564.tif 000017
【図１７】
0006623564.tif 000018
【図１８】
0006623564.tif 000019
【図１９】
0006623564.tif 000020
【図２０】
0006623564.tif 000021
【図２１】
0006623564.tif 000022
【図２２】
0006623564.tif 000023
【図２３】
0006623564.tif 000024
【図２４】
0006623564.tif 000025
【図２５】
0006623564.tif 000026
【図２６】
0006623564.tif 000027