(57)【要約】【課題】原データの持つ特徴を生かした分割クラスタリングを実現する。【解決手段】分割データ数決定処理部１４は、文書ＤＢ１１に格納されているデータの集合の一部分をサンプルデータとして当該サンプルデータのクラスタリング（サンプルクラスタリング）を行う。分割データ数決定処理部１４はまた、サンプルクラスタリングの結果を評価し、その評価結果をもとに分割データ数を決定する。データ分割部１５は、分割データ数決定処理部１４によって決定された分割データ数で上記データの集合を分割する。クラスタリング実行部１６は、データ分割部１５によって分割されたデータの集合毎にクラスタリングを実行する。【選択図】      図１
2005275556.tif 000002
【特許請求の範囲】
【請求項１】
データベースに格納されているデータの集合の一部分をサンプルデータとして抽出するサンプル抽出手段と、
前記サンプル抽出手段によって抽出されたサンプルデータのクラスタリングを行うサンプルクラスタリング手段と、
前記サンプルクラスタリング手段によるクラスタリング結果を評価する評価手段と、
前記評価手段の評価結果をもとに、前記データベースに格納されているデータの集合を分割してクラスタリングするのに必要な分割データ数を決定する分割データ数決定手段と、
前記分割データ数決定手段によって決定された分割データ数で、前記データベースに格納されているデータの集合を分割するデータ分割手段と、
前記データ分割手段によって分割されたデータの集合毎にクラスタリングを実行するクラスタリング実行手段と
を具備することを特徴とする分割クラスタリング装置。
【請求項２】
前記評価手段は前記評価結果として、前記サンプルクラスタリング手段によるクラスタリングで分類不能となったデータの数を表す分類不能データ数を取得し、
前記分割データ数決定手段は、前記分類不能データ数をもとに、前記分割データ数を決定する
ことを特徴とする請求項１記載の分割クラスタリング装置。
【請求項３】
前記サンプル抽出手段は、前記データベースに格納されているデータの集合から、データ数が異なる複数の部分集合を、前記データの集合の前記一部分をなす前記サンプルデータとして抽出し、
前記サンプルクラスタリング手段は、前記サンプル抽出手段によって抽出された前記複数の部分集合各々のクラスタリングを行い、
前記評価手段は、前記サンプルクラスタリング手段による前記複数の部分集合各々のクラスタリング毎に前記分類不能データ数を取得し、
前記分割データ数決定手段は、前記複数の部分集合各々のクラスタリング毎の分類不能データ数をもとに、当該複数の部分集合各々のデータ数のうちの１つを前記分割データ数として決定する
ことを特徴とする請求項１記載の分割クラスタリング装置。
【請求項４】
前記評価手段は、前記サンプルクラスタリング手段によるクラスタリングによって作成されるクラスタ毎に、当該クラスタのまとまりの程度を表す有効度を算出し、
前記分割データ数決定手段は、前記評価手段によって算出された前記クラスタ毎の有効度をもとに前記分割データ数を決定する
ことを特徴とする請求項１記載の分割クラスタリング装置。
【請求項５】
前記分割データ数決定手段は、前記サンプルクラスタリング手段によるクラスタリングによって作成されるクラスタ毎の前記有効度の平均値をもとに前記分割データ数を決定することを特徴とする請求項４記載の分割クラスタリング装置。
【請求項６】
前記サンプル抽出手段は、前記データベースに格納されているデータの集合から、データ数が異なる複数の部分集合を、前記データの集合の前記一部分をなす前記サンプルデータとして抽出し、
前記サンプルクラスタリング手段は、前記サンプル抽出手段によって抽出された前記複数の部分集合各々のクラスタリングを行い、
前記評価手段は、前記サンプルクラスタリング手段によるクラスタリングによって前記複数の部分集合毎に作成されるクラスタ毎に前記有効度を算出し、
前記分割データ数決定手段は、前記複数の部分集合毎で且つ前記クラスタ毎の有効度の平均値をもとに、当該複数の部分集合各々のデータ数のうちの１つを前記分割データ数として決定する
ことを特徴とする請求項４記載の分割クラスタリング装置。
【請求項７】
前記クラスタリング実行手段による前記分割されたデータの集合毎のクラスタリングによって作成されるクラスタ相互のデータの特徴の類似性をもとに、異なるクラスタ同士を１つの新たなクラスタに統合するクラスタリング結果マージ手段を更に具備することを特徴とする請求項１記載の分割クラスタリング装置。
【請求項８】
データベースに格納されているデータの集合を分割してクラスタリングする分割クラスタリング装置において、前記データの集合を分割してクラスタリングするのに必要な分割データ数を決定する分割データ数決定方法であって、
前記データの集合を分割してクラスタリングする前に、当該データの集合の一部分をサンプルデータとして抽出するステップと、
前記抽出されたサンプルデータのクラスタリングを行うステップと、
前記抽出されたサンプルデータのクラスタリング結果を評価するステップと、
前記抽出されたサンプルデータのクラスタリング結果の評価結果をもとに、前記データの集合を分割してクラスタリングするのに必要な分割データ数を決定するステップと
を具備することを特徴とする分割データ数決定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースに格納されているデータの集合を分割してクラスタリングする分割クラスタリング装置に係り、特に分割データ数を決定するのに好適な分割クラスタリング装置及び分割データ数決定方法に関する。
【背景技術】
【０００２】
データの集合に対して一定の基準に従ってクラスタリングし、データ集合の傾向を分析することがある。このような分析方法をクラスタリング分析と呼んでいる。例えば、文書データの集合において、それぞれのデータに対して形態素解析を行い、単語の出現頻度や共起頻度などの一定の基準に従ってクラスタリングを行うことで、単語のクラスタ（グルーピング）を作成することができる。更にデータをそれぞれのクラスタに振り分け、データの分類を行い、データ集合の傾向を掴むことができる。
【０００３】
ところが大規模データに対してクラスタリングを行うと、データを特徴付ける単語が曖昧になるため、クラスタが作成されにくくなる。また作成されるクラスタが少ないため、クラスタにデータを分類しようとすると、どこにも分類されないデータ（分類不能のデータ）が多数できてしまう。
【０００４】
そこで、クラスタリングを実行する前に前処理として、全データを複数のグループに分割し、分割したグループ毎にクラスタリングを行うと、分類不能のデータを少なくすることができる。これを分割クラスタリングと呼ぶ（例えば、特許文献１参照）。
【特許文献１】特開２００３−２７１６２０（段落００１０乃至００１５、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記した従来の分割クラスタリング技術においては、分類不能のデータの数を減らすことはできるものの、分割するデータ数が固定であることから、全データで分割せずにクラスタリングを行った場合に比べてクラスタの精度(まとまり)が悪くなったり、良い結果が出るまで何度もやり直す必要があった。
【０００６】
本発明は上記事情を考慮してなされたものでその目的は、原データの持つ特徴を生かした分割クラスタリングを実現することにより、分類不能のデータの数を減らすと共に、クラスタの精度が向上できる、分割クラスタリング装置及び分割データ数決定方法を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の１つの観点によれば、データベースに格納されているデータの集合を分割してクラスタリングする分割クラスタリング装置が提供される。この分割クラスタリング装置は、上記データベースに格納されているデータの集合の一部分をサンプルデータとして当該サンプルデータのクラスタリングを行うサンプルクラスタリング手段と、このサンプルクラスタリング手段によるクラスタリング結果を評価する評価手段と、この評価手段の評価結果をもとに、上記データベースに格納されているデータの集合を分割してクラスタリングするのに必要な分割データ数を決定する分割データ数決定手段と、この分割データ数決定手段によって決定された分割データ数で、上記データベースに格納されているデータの集合を分割するデータ分割手段と、このデータ分割手段によって分割されたデータの集合毎にクラスタリングを実行するクラスタリング実行手段とを備えている。
【０００８】
上記の構成の分割クラスタリング装置においては、データベースに格納されているデータの集合を幾つかに分割してクラスリング（分割クラスタリング）を行う前に、その分割クラスタリングの前処理として、当該データの集合の一部分だけを対象とするクラスタリング（サンプルクラスタリング）が行われる。このサンプルクラスタリングの結果は、データベースに格納されているデータの集合全体の特徴を反映している。そこで、上記の構成の分割クラスタリング装置においては、サンプルクラスタリングの結果を評価することにより、その評価結果から、上記データの集合を分割してクラスタリングするのに必要な、当該データの集合の特徴に適した分割データ数を決定することが可能となる。したがって、決定された分割データ数で、上記データベースに格納されているデータの集合を分割し、この分割されたデータの集合毎にクラスタリングを実行するならば、分類不能のデータ数を減らすと共に、当該データの集合を特徴付けるまとまりのあるクラスタを生成することが可能な、効果的なクラスタリングを実現できる。
【０００９】
ここで、分割データ数を決定するための指標となる評価値として、サンプルクラスタリングで分類不能となったデータの数、或いはサンプルクラスタリングによって作成されるクラスタ各々のまとまりの程度を表す有効度、更には両者の組み合わせを適用するならば、より最適な分割データ数を決定できる。
【００１０】
また、上記データベースに格納されているデータの集合から、上記データの集合の上記一部分をなす上記サンプルデータとして、データ数が異なる複数の部分集合を抽出し、抽出された複数の部分集合各々のサンプルクラスタリングを行うならば、そのサンプルクラスタリング結果から、複数の部分集合各々のデータ数のうちの１つを最適な分割データ数として決定することも可能である。
【発明の効果】
【００１１】
本発明によれば、分割クラスリングを実行する前の前処理として、分割クラスリングの対象となるデータの集合の一部分だけクラスタリングを行い、その一部分だけのクラスタリングの結果を評価して分割データ数を決定することにより、原データの持つ特徴を生かした分割クラスタリングを実現することができる。これにより、分割クラスリングにおける分類不能のデータの数を減らすと共に、分割クラスタリングによって作成されるクラスタの精度を向上することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態につき図面を参照して説明する。  
図１は本発明の一実施形態に係る分割クラスタリング装置の構成を示すブロック図である。図１の分割クラスタリング装置は、文書データベース（以下、文書ＤＢと称する）１１と、クラスタリング結果データベース（以下、クラスタリング結果ＤＢと称する）１２と、データ登録部１３と、分割データ数決定処理部１４と、データ分割部１５と、クラスタリング実行部１６と、クラスタリング結果マージ部１７と、クラスタリング結果表示部１８とから構成される。
【００１３】
文書ＤＢ１１は、クラスタリングの対象となる文書データの集合を格納するのに用いられる。クラスタリング結果ＤＢ１２は、クラスタリングの結果を格納するのに用いられる。  
データ登録部１３は、クラスタリングの対象となる文書データの集合に対して、形態素解析（単語に分割する）を行い、その結果を文書ＤＢ１１に登録する。
【００１４】
分割データ数決定処理部１４は、文書ＤＢ１１に登録された文書データの集合を対象とする分割クラスタリングに最適な分割データ数を決定するための処理を行う。図２は分割データ数決定処理部１４の構成を示す。分割データ数決定処理部１４は、サンプル抽出部１４１と、サンプルクラスタリング部１４２と、評価部１４３と、分割データ数決定部１４４とから構成される。
【００１５】
サンプル抽出部１４１は、上記文書データの集合から上記分割データ数を決定するのに必要なサンプル（サンプルデータ）を抽出する。サンプルクラスタリング部１４２は、サンプル抽出部１４１により抽出されたサンプルに対してクラスタリングを行う。評価部１４３は、サンプルクラスタリング部１４２によるクラスタリング結果を評価する。クラスタリング結果の評価値としては、サンプルクラスタリング部１４２によるクラスタリングで作成された各クラスタのまとまりの程度を表す有効度、及び当該クラスタリングで分類不能となったデータの数（分類不能データ数）の少なくとも一方が適用される。分割データ数決定部１４４は、算出された各クラスタの有効度をもとに分割データ数を決定する。
【００１６】
再び図１を参照すると、データ分割部１５は、上記文書データの集合を、分割データ数決定処理部１４で決定された分割データ数を単位に複数のグループに分割する。クラスタリング実行部１６は、分割されたグループ毎のデータに対して、個別にクラスタリングを実行する。クラスタリング実行部１６による、分割データ数に応じたクラスタリングの結果（クラスタリングによって作成されたクラスタと当該クラスタに分類されたデータ）は、クラスタリング結果ＤＢ１２に格納される。
【００１７】
クラスタリング結果マージ部１７は、クラスタリング結果ＤＢ１２に格納された、クラスタリング実行部１６によるクラスタリング結果をマージ（統合）する。クラスタリング結果表示部１８は、クラスタリング結果マージ部１７によりマージされた（またはマージされる前の）クラスタリング結果を表示する。
【００１８】
本実施形態において、図１の分割クラスタリング装置はパーソナルコンピュータによって実現され、データ登録部１３、分割データ数決定処理部１４、データ分割部１５、クラスタリング実行部１６及びクラスタリング結果マージ部１７は、対応する処理を記述したプログラム（分割クラスタリングプログラム）を、当該コンピュータが読み取って実行することにより実現される。このプログラムは、コンピュータで読み取り可能な記憶媒体（フロッピー（登録商標）ディスクに代表される磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤに代表される光ディスク、フラッシュメモリに代表される半導体メモリ等）に予め格納して頒布可能である。このプログラムが、ネットワークを介してダウンロード（頒布）されても構わない。
【００１９】
また本実施形態では、文書ＤＢ１１及びクラスタリング結果ＤＢ１２が、上記コンピュータの外部記憶装置、例えばハードディスク装置（ＨＤＤ）上に置かれる構成を適用している。しかし、文書ＤＢ１１及びクラスタリング結果ＤＢ１２が、分割クラスタリング装置から独立に設けられる構成、例えば分割クラスタリング装置（を実現するコンピュータ）とネットワーク接続されたデータベースサーバコンピュータ上に置かれる構成であっても構わない。また、クラスタリング結果表示部１８が、分割クラスタリング装置から独立に設けられる構成であっても構わない。
【００２０】
次に、図１の分割クラスタリング装置の動作について説明する。
【００２１】
＜動作の概要＞
まず、分割クラスタリング装置の動作の概要について、図３のフローチャートを参照して説明する。  
データ登録部１３は、クラスタリングの対象となる文書データの集合を文書ＤＢ１１に登録するための処理を行う（ステップＳ１）。この登録処理では、データ登録部１３は文書データの形態素解析を行い、単語単位に分割する。データ登録部１３は、この単語単位に分割された文書データの集合を文書ＤＢ１１に登録する。データ登録部１３によって登録される文書データの集合が、磁気ディスク、光ディスク等の可搬型の記憶媒体から読み込まれるものであっても、或いはネットワークを介して転送されるものであっても構わない。
【００２２】
分割データ数決定処理部１４は、データ登録部１３によって文書ＤＢ１１に登録されたデータの特徴を解析することにより、当該データを対象とする分割クラスタリングに最適な分割データ数を決定する（ステップＳ２）。この最適な分割データ数を決定する処理については後述する。データ分割部１５は、文書ＤＢ１１に登録されたデータを、分割データ数決定処理部１４によって決定された分割データ数で複数のグループに分割する（ステップＳ３）。このステップＳ２の分割データ数決定と、ステップＳ３のデータ分割とは、次に述べるクラスタリング（分割クラスタリング）の前処理として位置付けられている。
【００２３】
クラスタリング実行部１６は、分割データ数決定処理部１４によって分割されたグループ毎にクラスタリング（つまり分割クラスタリング）を実行する（ステップＳ４）。これにより、分割されたグループの数だけクラスタリングの結果が作成される。クラスタリング実行部１６は、このグループ毎のクラスタリング結果をクラスタリング結果ＤＢ１２に格納する（ステップＳ５）。
【００２４】
グループ毎のクラスタリング結果には、類似したクラスタが含まれている可能性がある。そこでクラスタリング結果マージ部１７は、クラスタリング結果（分割クラスタリング結果）をマージする（ステップＳ６）。このクラスタリング結果をマージする処理については後述する。クラスタリング結果表示部１８は、クラスタリング結果マージ部１７によりマージされたクラスタリング結果をディスプレイ装置（図示せず）に表示する（ステップＳ７）。
【００２５】
＜最適な分割データ数を決定する処理＞
次に、分割データ数決定処理部１４において実行される、最適な分割データ数を決定する処理について、図４のフローチャートを参照して説明する。ここでの処理の特徴は、一定割合のデータをサンプリングしてデータの傾向を調査し、その傾向から分割データ数を決定する点にある。
【００２６】
分割データ数決定処理部１４内のサンプル抽出部１４１は、文書ＤＢ１１に登録されている文書データの集合から一定割合をサンプルデータとして抽出する（ステップＳ１１）。ここでは、サンプル抽出部１４１は、全データから２０個に１個の割合でサンプルデータを抽出する。つまり本実施形態では、全体のデータ数の５％がサンプルデータとして抜粋されるものとする。なお、この割合は一例であり、他の割合でも良い。また抽出の方法も、一定個数毎に限らず、例えばランダムに抽出しても構わない。
【００２７】
分割データ数決定処理部１４内のサンプルクラスタリング部１４２は、サンプル抽出部１４１によって抽出されたサンプルデータ（文書データ）から特徴ベクトルを抽出し、当該特徴ベクトルに基づいてクラスタリングを行う（ステップＳ１２）。この文書データからの特徴ベクトル（特徴量）の抽出の詳細については後述する。サンプルクラスタリング部１４２によるクラスタリングでは、類似の特徴ベクトルをまとめてクラスタが作成される。この特徴ベクトルに基づくクラスタリングの概要を、図５に示す。図５には、５つの特徴ベクトルが、２つの特徴ベクトルの集合と３つの特徴ベクトルの集合とに分類されることにより、２つのクラスタＣ１及びＣ２が作成された例が示されている。
【００２８】
分割データ数決定処理部１４内の評価部１４３は、サンプルクラスタリング部１４２によるサンプルデータに対するクラスタリングの結果を評価（解析）して有効度Ａを算出する（ステップＳ１３）。このクラスタリング結果の有効度Ａは、サンプルクラスタリング部１４２にるクラスタリングによって作成された各クラスタの有効度Ａｃの平均値である。各クラスタの有効度Ａｃは、次のように求められる。
【００２９】
まず評価部１４３は、サンプルクラスタリング部１４２によって作成されたクラスタ毎に、以下の処理を行う。即ち評価部１４３は、クラスタ内の特徴ベクトルの分布の重心（つまりクラスタの重心）を求め、各特徴ベクトルと当該重心との距離を求める。距離の定義は種々知られている。ここでは特徴ベクトル毎の距離の差を特徴付けるため、Ｌ３距離と呼ばれる距離を用いる。重心のベクトルを（Ｘ，Ｙ）、各特徴ベクトルを（Ｘｉ，Ｙｉ）とすると、Ｌ３距離は、次式（１）
（｜(Ｘｉ−Ｘ)3｜＋｜(Ｙｉ−Ｙ)3｜）1/3          …（１）
ただし、ｉ＝１，２，…，データ数
で表される。なお、特徴ベクトルと重心との距離を表す指標であれば、例えばＬ２距離など、Ｌ３距離以外の距離を用いても構わない。上記の例において、Ｌ２距離は、
（｜(Ｘｉ−Ｘ)2｜＋｜(Ｙｉ−Ｙ)2｜）1/2
のように表される。
【００３０】
評価部１４３は、クラスタ内の全ての特徴ベクトルに関する上記距離の平均値を算出し、その平均値の例えば逆数を当該クラスタの有効度Ａｃとする。明らかなように、特徴ベクトルの分布が広がっているクラスタでは、上記距離の平均値の逆数、つまり有効度Ａｃは低くなる。このように、「有効度Ａｃが低い」クラスタは、まとまりが悪いクラスタである。一方、特徴ベクトルの分布が集中しているクラスタでは、上記距離の平均値の逆数、つまり有効度Ａｃは高くなる。このように「有効度Ａｃが高い」クラスタは、まとまりが良いクラスタである。図６（ａ）に有効度Ａｃが低いクラスタの例を、図６（ｂ）に有効度Ａｃが高いクラスタの例を、それぞれ示す。
【００３１】
評価部１４３は、各クラスタの有効度Ａｃを算出すると、更に当該各クラスタの有効度Ａｃの平均値を算出し、この平均値（有効度平均値）を、サンプルクラスタリング部１４２によるサンプルデータに対するクラスタリングの結果の有効度Ａとする。
【００３２】
分割データ数決定処理部１４内の分割データ数決定部１４４は、評価部１４３によって算出された、サンプルクラスタリング部１４２によるクラスタリングの結果の有効度（有効度平均値）Ａに基づいて分割データ数を決定する（ステップＳ１４）。ここでは、分割データ数は次のように決定される。
【００３３】
まず分割データ数決定部１４４は、クラスタリングの結果の有効度Ａが、予め定められている標準の有効度ＡＳ以上の場合、分割をしないでクラスタリングを行っても、分類不能データは少ないと判断し、分割データ数を、分割が行われない数、つまり全データ数ＮＴに決定する。標準有効度ＡＳは、予め求められている良好な標準的なクラスタリング結果の有効度（有効度平均値）である。
【００３４】
一方、クラスタリング結果の有効度Ａが標準有効度ＡＳより低い場合、当該有効度Ａが低くなるほど分割クラスタリングにおいて分類不能データが増加することが予測される。この場合、分割データ数決定部１４４は、有効度Ａが低くなるほど分割データ数が少なくなるように、当該分割データ数を決定する。ここでは、分割データ数は、次式（２）
分割データ数＝ｍａｘ（データ数Ｎ１，データ数Ｎ２）          …（２）
但し、Ｎ１＝全データ数ＮＴ×（有効度Ａ／標準有効度ＡＳ）
Ｎ２＝１０００
に従って決定される。この（２）式は、Ｎ１＝全データ数ＮＴ×（有効度Ａ／標準有効度ＡＳ）の値（つまり有効度Ａに比例した値）がＮ２（＝１０００件）を超えていれば、Ｎ１が分割データ数として決定され、Ｎ２（＝１０００件）以下であれば、Ｎ２（＝１０００件）が分割データ数として決定されることを示す。このＮ２は最小の分割データ数である。Ｎ２には、これ以上分割データ数を少なくするとクラスタの意味がなくなるデータ数が用いられる。本実施形態では、Ｎ２＝１０００であるが、これに限るものではない。
【００３５】
なお、分割データ数の決定に、必ずしもクラスタリング結果の有効度（有効度平均値）Ａを用いる必要はない。例えば、サンプルクラスタリング部１４２によるクラスタリングでクラスタに分類できなかったデータ数（つまり分類不能データ数）ＮＩを用いても良い。つまり、評価部１４３は、有効度Ａを算出する代わりに、分類不能データ数ＮＩを求めても良い。この場合、分割データ数決定部１４４は、評価部１４３によって求められたＮＩに基づいて、次のように分割データ数を決定することができる。
【００３６】
まず、分類不能データ数ＮＩが全データ数ＮＴの一定割合以下、例えば１０％以下の場合、分割データ数決定部１４４は、分割をしないでクラスタリングを行っても、分類不能データは少ないと判断する。この場合、分割データ数決定部１４４は、分割データ数を全データ数ＮＴに決定する。
【００３７】
一方、分類不能データ数ＮＩが全データ数ＮＴの一定割合（１０％）を超えている場合、分類不能データ数ＮＩが増えるほど、分割クラスタリングにおいて分類不能データが増加することが予測される。この場合、分割データ数決定部１４４は、分類不能データ数ＮＩが増えるほど分割データ数が少なくなるように、当該分割データ数を決定する。ここでは、分割データ数は、次式（３）
分割データ数＝ｍａｘ（データ数Ｎ３，データ数Ｎ２）          …（３）
但し、Ｎ３＝全データ数ＮＴ／（分割不能データ数ＮＩ／全データ数ＮＴの１０％）
Ｎ２＝１０００
に従って決定される。この（３）式は、Ｎ３＝全データ数ＮＴ／（分割不能データ数ＮＩ／全データ数ＮＴの１０％）の値（つまり分割不能データ数ＮＩに反比例した値）がＮ２（＝１０００件）を超えていれば、Ｎ３が分割データ数として決定され、Ｎ２（＝１０００件）以下であれば、上記（２）式の場合と同様に、Ｎ２（＝１０００件）が分割データ数として決定されることを示す。
【００３８】
また、上記（２）式と（３）式とを組み合わせ、次式（４）
分割データ数＝ｍａｘ（データ数αＮ１，データ数βＮ３，データ数Ｎ２）
…（４）
に従い、有効度Ａ及び分類不能データ数ＮＩの双方に基づいて分割データ数を決定するようにしても良い。ここで、α，βは、有効度Ａまたは分類不能データ数ＮＩのいずれの要素を優先させるかを示す一種の重みである。
【００３９】
要するに、クラスタリング結果の有効度Ａが低くなるほど、或いは分類不能データ数ＮＩが増えるほど、分割データ数が少なくなるように、当該分割データ数が決定されるものであれば良い。
【００４０】
＜最適な分割データ数を決定する処理の変形例＞
次に、最適な分割データ数を決定する処理の変形例について、図７のフローチャートを参照して説明する。この変形例の特徴は、文書ＤＢ１１に登録された文書データの集合からデータ数が異なる複数の部分集合を抜粋して、その部分集合毎にクラスタリングを行うことで分割データ数を決定する点にある。
【００４１】
分割データ数決定処理部１４内のサンプル抽出部１４１は、文書ＤＢ１１に登録されている文書データの集合から、全体の一定割合を占める部分集合をサンプルデータとして抽出する動作を、予め定められた複数の異なる割合について繰り返す（ステップＳ２１）。ここでは、図８（ａ）に示すように、いずれも文書データの集合の先頭から、０．５％、１％、２．５％及び５％の部分集合８０-1，８０-2，８０-3，８０-4がサンプルデータとして抽出される。この場合、文書データの集合が１０万件のデータ（単語）の集合であるものとすると、５００件、１，０００件、２，５００件及び５，０００件のデータの集合である部分集合８０-1，８０-2，８０-3，８０-4が、いずれも文書データの集合の先頭から抽出される。なお、図８（ｂ）に示すように、部分集合８０-1，８０-2，８０-3，８０-4が、文書データの集合から順番に抽出されるものであっても構わない。また、全データから、それぞれ２００個に１個の割合、１００個に１個の割合、４０個に１個の割合、２０に１個の割合でサンプルデータが抽出されても良い。また、全データ数に対してそれぞれ０．５％、１％、２．５％及び５％の割合の数のデータがサンプルデータとして、全データからランダムに抽出されても良い。
【００４２】
分割データ数決定処理部１４内のサンプルクラスタリング部１４２は、サンプル抽出部１４１によって抽出された、データ数の異なる部分集合毎に、クラスタリングを行う（ステップＳ２２）。
【００４３】
分割データ数決定処理部１４内の評価部１４３は、サンプルクラスタリング部１４２による部分集合（ここでは、部分集合８０-i（ｉ＝１〜４））毎のクラスタリング結果の有効度Ａiを求める（ステップＳ２３）。このクラスタリング結果の有効度Ａiは、上記実施形態においてクラスタリング結果の有効度Ａを求めるのに適用されたのと同様の手順で求められる。したがって、有効度Ａiの求め方については、説明を省略する。上記実施形態と異なる点は、部分集合８０-i毎に、当該部分集合８０-iのクラスタリング結果の有効度が求められる点である。
【００４４】
評価部１４３は、ステップＳ２３で求められた、部分集合毎のクラスタリング結果の有効度Ａiと対応する部分集合のデータ数とに基づいて、分割データ数を決定する（ステップＳ２４）。ここでは、評価部１４３は、部分集合８０-i毎のクラスタリング結果の有効度Ａi（ｉ＝１〜４）を比較して最大の有効度を求め、その最大の有効度に対応する部分集合のデータ数を分割データ数と決定する。
【００４５】
なお、分割データ数の決定に、必ずしも部分集合８０-i毎のクラスタリング結果の有効度（有効度平均値）Ａiを用いる必要はない。例えば、サンプルクラスタリング部１４２による部分集合８０-i毎のクラスタリングでクラスタに分類できなかったデータ数（つまり分類不能データ数）ＮＩiを用いても良い。つまり、評価部１４３は、部分集合８０-i毎の有効度Ａiを算出する代わりに、部分集合８０-i毎の分類不能データ数ＮＩiを求めても良い。この場合、評価部１４３が、部分集合８０-i毎に、ＮＩiの当該部分集合８０-iのデータ数に占める割合、つまり分類不能データ発生率ＲＮＩiを算出するならば、分割データ数決定部１４４は、そのＲＮＩiに基づいて、次のように分割データ数を決定することができる。即ち分割データ数決定部１４４は、部分集合８０-i毎の分類不能データ発生率ＲＮＩiを比較して最小の分類不能データ発生率を求め、その最小の分類不能データ発生率に対応する部分集合のデータ数を分割データ数と決定する。
【００４６】
また、部分集合８０-i毎の分類不能データ数ＮＩi及び有効度Ａiの双方に基づいて分割データ数を決定するようにしても良い。そのためには、評価部１４３が、例えば次式
指標値Ｉi
＝α’（分類不能データ数ＮＩi／データ数の一定割合）
＋β’（標準有効度ＡＳ／有効度Ａi）
に示す値（指標値）Ｉiを算出すると良い。この指標値Ｉiは、部分集合８０-i毎のクラスタリング結果の良否を判断するための指標となる。α’，β’は、有効度Ａiまたは分類不能データ数ＮＩiのいずれの要素を優先させるかを示す一種の重みである。
【００４７】
この場合、分割データ数決定部１４４は、評価部１４３によって算出された部分集合８０-i毎の指標値Ｉiを比較して最小の指標値を求め、その最小の指標値に対応する部分集合のデータ数を分割データ数と決定する。
【００４８】
＜特徴ベクトルの抽出＞
次に、文書データからの特徴ベクトルの抽出について説明する。一般に、特徴ベクトルは、例えば（３，１，５）のように、多次元の成分を表す数値の組で表現される。文書データから特徴ベクトルを抽出（作成）するには、当該データから当該特徴ベクトルを表す数値の組を作成するためのデータ変換が必要となる。このデータ変換のための方法は、クラスタリングの対象となる全てのデータに対して特徴ベクトルが作成可能で、且つ特徴ベクトル同士の距離が定義可能でなければならない。
【００４９】
このようなデータ変換による特徴ベクトルの作成は、サンプルクラスタリング部１４２及びクラスタリング実行部１６によるクラスタリング時に、次のようして行うことができる。ここでは、サンプルクラスタリング部１４２が、次の文書（文書データ）Ａ
文書Ａ：「日本の総理大臣は○△。総理は○△。○△。」
から特徴ベクトルを作成する場合を例に述べる。
【００５０】
まずサンプルクラスタリング部１４２は、データから特徴量を算出するための準備を行う。特徴量とは、データの特徴を表す数値のことである。本実施形態のように、文書データから特徴量を算出する場合、当該文書データを単語単位に区切ることが上記の準備となる。ここでは、文書Ａを２グラムで単語に区切るものとする。２グラムとは、文字列を単語に区切るための単純な方法で、先頭から1文字ずつずらしながら、２文字の文字列を取り出していく方法である。文書Ａを２グラムで単語に区切った結果は、
「日本／本の／の総／総理／理大／大臣／臣は／は○／○△／総理／理は／は○／○△／○△」
となる。ここでは、「、」と「。」は無視される。なお、本実施形態では、文書ＤＢ１１に登録されている文書データの集合は既にデータ登録部１３によって単語単位に区切られていることから、上記の準備は必要ない。また、この準備は、データの種類によっては必ずしも必要としない。
【００５１】
サンプルクラスタリング部１４２は、文書データの特徴ベクトルの次元を決定する。ここでは、文書データから求められる１つ以上の特徴量をベクトルの各次元とみなし、特徴ベクトルを全特徴量分の次元を持つベクトルとする。上記文書Ａの例では、当該文書Ａの特徴ベクトルの次元は、
特徴ベクトル＝(日本，本の，の総，総理，理大，大臣，臣は，は○，○△，理は)
のように決定される。実際は、全ての文書に出現する単語をベクトルの次元とする必要がある。
【００５２】
次にサンプルクラスタリング部１４２は、文書データから、決定された各次元の特徴量を求める。ここでは、各次元の特徴量に、当該次元として決定されている単語が文書内に出現する回数を用いるものとする。この場合、各次元の特徴量として、
日本＝１，  本の＝１，  の総＝１，  総理＝２，  理大＝１
大臣＝１，  臣は＝１，  は○＝２，  ○△＝３，  理は＝１
が求められる。
【００５３】
次にサンプルクラスタリング部１４２は、上記のようにして求められた各次元の特徴量を、ベクトルの対応する次元に代入することにより、文書Ａの特徴ベクトルＡを作成する。この例では、文書Ａの特徴ベクトルＡは、
ベクトルＡ＝（１，１，１，２，１，１，１，２，３，１）
のように表される。他の文書に対しても、同様の方法で特徴ベクトルを求めることができる。
【００５４】
なお、本実施形態では、クラスタリングの対象となるデータが文書データであることを前提としている。しかし、上述した文書データのように、特徴ベクトルの作成（特徴ベクトルの抽出または特徴ベクトルへの変換）が可能なデータであれば、文書データ以外のデータでもクラスタリング可能である。例えば画像データ、音楽データ、或いは数値データも、クラスタリング可能である。ここでは、ビットマップ形式の画像データから特徴ベクトルを作成する例について、図９を参照して説明する。
【００５５】
まず、図９（ａ）に示す画像ＩＭを、ｎ×ｍに分割、例えば図９（ｂ）に示すように４×４に分割する。次に、この分割によって得られる１６個の部分画像＃１〜＃１６を順番に並べて、特徴ベクトルの次元とする。図９（ｂ）の例では、画像ＩＭの特徴ベクトルの次元は１６であり、
特徴ベクトル＝（部分画像＃１の特徴量，部分画像＃２の特徴量，…，部分画像＃１６の特徴量）
のように決定される。
【００５６】
次に、画像ＩＭから各次元の特徴量を求める。ここでは、画像ＩＭが多値画像であるとして、各部分画像＃１〜＃１６の平均の濃度を求める。図９（ｃ）には、各部分画像＃１〜＃１６の平均の濃度が示されている。この部分画像＃１〜＃１６の平均の濃度を、ベクトルの対応する次元に代入することにより、画像ＩＭの特徴ベクトルＢを作成する。図９（ｃ）の例では、画像ＩＭの特徴ベクトルＢは、
ベクトルＢ＝（２，１０，１０，２，０，５０，５０，０，０，５，５，０，０，１０，１０，０）
のように表される。  
このように、文書データや画像データなど、種々のデータから特徴ベクトルを抽出することが可能である。
【００５７】
上記の説明から明らかなように、本実施形態においてクラスタリングの対象となるデータから抽出される特徴ベクトルは、数値の組である特徴量の組を多次元の成分として持つ。このため、この特徴量の組を多次元空間上の点の座標と考えると、上述した特徴ベクトルと重心との距離の算出に、ユークリッド距離の算出方法を用いることができる。
【００５８】
＜クラスタリング結果をマージする処理＞
次に、クラスタリング結果マージ部１７による分割クラスタリングで作成されたクラスタリング結果をマージする処理について、図１０のフローチャートを参照して説明する。  
まずクラスタリング結果マージ部１７は、分割クラスタリングで作成された複数のクラスタのうちの１つのクラスタを選択し、当該選択されたクラスタ内の各データの特徴ベクトルを求める（ステップＳ３１，Ｓ３２）。次にクラスタリング結果マージ部１７は、クラスタ内の特徴ベクトルの分布の重心を求めて、当該クラスタの重心とする（ステップＳＳ３３）。クラスタリング結果マージ部１７は、上記ステップＳ３１〜Ｓ３３を、分割クラスタリングで作成された全てのクラスタについて実行する（ステップＳ３４）。これにより、全てのクラスタの重心が求められる。クラスタリング結果マージ部１７は、全てのクラスタの重心間の距離を、クラスタ間の距離（クラスタ間距離）として算出する（ステップＳ３５）。
【００５９】
クラスタリング結果マージ部１７は、クラスタ間距離の最も短いもの同士を、データの特徴が最も類似したクラスタ対であるとして、１つの新たなクラスタにマージ（統合）する（ステップＳ３６）。クラスタリング結果マージ部１７は、マージ後のクラスタの重心を求める（ステップＳ３７）。そしてクラスタリング結果マージ部１７は、マージ後のクラスタと、他の全てのクラスタとの重心間の距離（つまりクラスタ間距離）を計算する（ステップＳ３８）。
【００６０】
クラスタリング結果マージ部１７は、以上のステップＳ３６〜Ｓ３８を、全てのクラスタ間距離が一定距離以上となり（つまり、一定レベル以上類似したクラスタが存在しなくなり）、且つクラスタ数が一定数以下となるまで繰り返す（ステップＳ３９，Ｓ４０）。ここで、全てのクラスタ間距離が一定距離以上となるか、或いはクラスタ数が一定数以下となった段階で、マージ処理を終了しても良い。
【００６１】
上述したクラスタリング結果マージ部１７によるマージ処理の結果、たとえクラスタリング実行部１６による分割クラスタリングで、非常に多くのクラスタが作成され、しかもその中に重複（類似）したクラスタが存在していても、クラスタ間の距離の近いもの同士をマージすることで、有効性の高いクラスタにまとめて、クラスタ数を適切な数に絞ることができる。また、重複クラスタが１つにまとめられるため、データ集合の全体的な傾向を容易に把握できるようになる。
【００６２】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【図面の簡単な説明】
【００６３】
【図１】本発明の一実施形態に係る分割クラスタリング装置の構成を示すブロック図。
【図２】図１中の分割データ数決定処理部１４の構成を示すブロック図。
【図３】図１の分割クラスタリング装置の動作の概要を説明するためのフローチャート。
【図４】分割データ数決定処理部１４において実行される、最適な分割データ数を決定する処理の手順を示すフローチャート。
【図５】特徴ベクトルに基づくクラスタリングの概要を示す図。
【図６】有効度が低いクラスタと有効度が高いクラスタとを示す模式図。
【図７】最適な分割データ数を決定する処理の変形例を示すフローチャート。
【図８】文書データの集合から異なるデータ数の４つの部分集合を抜粋する２つの例を示す図。
【図９】画像データから特徴ベクトルを作成する例を示す図。
【図１０】クラスタリング結果マージ部１７により実行される、クラスタリング結果をマージする処理の手順を示す図。
【符号の説明】
【００６４】
１１…文書ＤＢ、１２…クラスタリング結果ＤＢ、１３…データ登録部、１４…分割データ数決定処理部１４、１５…データ分割部、１６…クラスタリング実行部、１７…クラスタリング結果マージ部、１８…クラスタリング結果表示部、１４１…サンプル抽出部、１４２…サンプルクラスタリング部、１４３…評価部、１４４…分割データ数決定部。
【図１】
2005275556.tif 000003
【図２】
2005275556.tif 000004
【図３】
2005275556.tif 000005
【図４】
2005275556.tif 000006
【図５】
2005275556.tif 000007
【図６】
2005275556.tif 000008
【図７】
2005275556.tif 000009
【図８】
2005275556.tif 000010
【図９】
2005275556.tif 000011
【図１０】
2005275556.tif 000012