(57)【要約】【課題】データ分類の信頼性あるいは視認性を向上させる。【解決手段】文書データに含まれる語句を成分とする特徴ベクトルの距離テーブルが作成され（Ｓ１２）、この距離に基づいて階層的なクラスタ（データ群）を構築する初期クラスタリングが行われる（Ｓ１４）。そして、得られた各クラスタについて、そのクラスタを代表する語句と、代表性を表すスコアが求められ、クラスタの妥当性が判定される（Ｓ１６）。その結果、妥当でないと判定されたクラスタに対しては、そのクラスタの下位階層に属す複数のクラスタへとデータの再分類が行われる（Ｓ１８）。【選択図】図２
2008165572.tif 000002
【特許請求の範囲】
【請求項１】
１または２以上のデータ要素を含む複数のデータを、データ要素の類似性に基づいて、複数のデータ群に階層的に分類する分類手段と、
前記分類手段によりなされたある階層における少なくとも一つのデータ群への分類を、そのデータ群を代表するデータ要素に基づいて評価する評価手段と、
前記評価手段による評価結果に応じて、評価対象となったデータ群に分類されているデータを、そのデータ群の下位階層に属す複数のデータ群へと再分類する再分類手段と、
を備えることを特徴とするデータ分類装置。
【請求項２】
請求項１に記載のデータ分類装置において、
前記評価手段は、前記分類手段によりなされたある階層における少なくとも一つのデータ群への分類の妥当性を、そのデータ群を代表するデータ要素に基づいて評価し、
前記再分類手段は、前記評価手段により分類が妥当でないと判定されたデータ群に分類されているデータを、そのデータ群の下位階層に属す複数のデータ群へと再分類することを特徴とするデータ分類装置。
【請求項３】
請求項１に記載のデータ分類装置において、
前記分類手段は、データ要素を成分とする特徴ベクトルの類似性に基づいて、前記複数のデータを分類することを特徴とするデータ分類装置。
【請求項４】
請求項１に記載のデータ分類装置において、
前記評価手段は、あるデータ群を代表するデータ要素に基づく評価を、そのデータ群に分類されたデータにそのデータ要素が含まれる度合いと、それ以外のデータ群に分類されたデータにそのデータ要素が含まれない度合いとに基づいて行うことを特徴とするデータ分類装置。
【請求項５】
請求項１に記載のデータ分類装置において、
前記評価手段は、ある階層における全てのデータ群に対して、分類の評価を行うことを特徴とするデータ分類装置。
【請求項６】
請求項１に記載のデータ分類装置において、
前記評価手段は、前記再分類手段により再分類された複数のデータ群に対しても、そのデータ群を代表するデータ要素に基づいて分類を評価し、
前記再分類手段は、前記評価手段による評価結果に応じて、再分類されたデータ群に対しても、そのデータ群の下位階層に属す複数のデータ群へと再分類を繰り返すことを特徴とするデータ分類装置。
【請求項７】
請求項１に記載のデータ分類装置において、
再分類によって前記複数のデータが最終的に分類されるデータ群の数を、データ要素の特性に応じて決定する決定手段を備え、
前記再分類手段は、前記決定手段により決定された数に応じたデータ群へと再分類することを特徴とするデータ分類装置。
【請求項８】
請求項１に記載のデータ分類装置において、
再分類によって前記複数のデータが最終的に分類されるデータ群の数はあらかじめ設定された数であり、
前記分類手段は、設定された数よりも多い数のデータ群に前記複数のデータを分類し、
前記再分類手段は、設定された数に応じたデータ群へと再分類することを特徴とするデータ分類装置。
【請求項９】
請求項１に記載のデータ分類装置において、
データは文書データであり、
データ要素は、文書データに含まれる語句であるデータ分類装置。
【請求項１０】
１または２以上のデータ要素を含む複数のデータを、データ要素の類似性に基づいて、複数のデータ群に階層的に分類する分類手順と、
前記分類手順においてなされたある階層における少なくとも一つのデータ群への分類を、そのデータ群を代表するデータ要素に基づいて評価する評価手順と、
前記評価手順における評価結果に応じて、評価対象となったデータ群に分類されているデータを、そのデータ群の下位階層に属す複数のデータ群へと再分類する再分類手順と、
をコンピュータに実行させることを特徴とするデータ分類プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ分類装置、またはデータ分類プログラムに関する。
【背景技術】
【０００２】
複数のデータをクラスタ（以下ではデータ群と呼ぶこともある）に分類するクラスタリング（以下ではクラスタ化とも呼ぶこともある）技術が知られている。例えば、検索効率を向上させる目的で、文書データのクラスタリングが、しばしば行われている。
【０００３】
下記特許文献１には、クラスタの代表値とそのクラスタに属する各文書データとの特徴ベクトルの距離に基づいて各文書データの類似度を順位付け、指定された閾値に従ってクラスタを再クラスタ化する技術が開示されている。
【０００４】
下記特許文献２には、検索により得られた複数の文書データを特徴ベクトルに基づいてクラスタ化し、さらに、各クラスタを特徴づける単語や特徴関係を抽出する技術が開示されている。
【０００５】
【特許文献１】特開２０００−３０５９５０号公報
【特許文献２】特開２００１−３０６５９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、データ分類の信頼性あるいは視認性を向上させることが可能なデータ分類装置、またはデータ分類プログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明のデータ分類装置の一態様においては、１または２以上のデータ要素を含む複数のデータを、データ要素の類似性に基づいて、複数のデータ群に階層的に分類する分類手段と、前記分類手段によりなされたある階層における少なくとも一つのデータ群への分類を、そのデータ群を代表するデータ要素に基づいて評価する評価手段と、前記評価手段による評価結果に応じて、評価対象となったデータ群に分類されているデータを、そのデータ群の下位階層に属す複数のデータ群へと再分類する再分類手段と、を備える。
【０００８】
本発明のデータ分類装置の一態様においては、前記評価手段は、前記分類手段によりなされたある階層における少なくとも一つのデータ群への分類の妥当性を、そのデータ群を代表するデータ要素に基づいて評価し、前記再分類手段は、前記評価手段により分類が妥当でないと判定されたデータ群に分類されているデータを、そのデータ群の下位階層に属す複数のデータ群へと再分類する。
【０００９】
本発明のデータ分類装置の一態様においては、前記分類手段は、データ要素を成分とする特徴ベクトルの類似性に基づいて、前記複数のデータを分類する。
【００１０】
本発明のデータ分類装置の一態様においては、前記評価手段は、あるデータ群を代表するデータ要素に基づく評価を、そのデータ群に分類されたデータにそのデータ要素が含まれる度合いと、それ以外のデータ群に分類されたデータにそのデータ要素が含まれない度合いとに基づいて行う。
【００１１】
本発明のデータ分類装置の一態様においては、前記評価手段は、ある階層における全てのデータ群に対して、分類の評価を行う。
【００１２】
本発明のデータ分類装置の一態様においては、前記評価手段は、前記再分類手段により再分類された複数のデータ群に対しても、そのデータ群を代表するデータ要素に基づいて分類を評価し、前記再分類手段は、前記評価手段による評価結果に応じて、再分類されたデータ群に対しても、そのデータ群の下位階層に属す複数のデータ群へと再分類を繰り返す。
【００１３】
本発明のデータ分類装置の一態様においては、再分類によって前記複数のデータが最終的に分類されるデータ群の数を、データ要素の特性に応じて決定する決定手段を備え、前記再分類手段は、前記決定手段により決定された数に応じたデータ群へと再分類する。
【００１４】
本発明のデータ分類装置の一態様においては、再分類によって前記複数のデータが最終的に分類されるデータ群の数はあらかじめ設定された数であり、前記分類手段は、設定された数よりも多い数のデータ群に前記複数のデータを分類し、前記再分類手段は、設定された数に応じたデータ群へと再分類する。
【００１５】
本発明のデータ分類装置の一態様においては、データは文書データであり、データ要素は、文書データに含まれる語句である。
【００１６】
本発明のデータ分類プログラムの一態様においては、１または２以上のデータ要素を含む複数のデータを、データ要素の類似性に基づいて、複数のデータ群に階層的に分類する分類手順と、前記分類手順においてなされたある階層における少なくとも一つのデータ群への分類を、そのデータ群を代表するデータ要素に基づいて評価する評価手順と、前記評価手順における評価結果に応じて、評価対象となったデータ群に分類されているデータを、そのデータ群の下位階層に属す複数のデータ群へと再分類する再分類手順と、をコンピュータに実行させる。
【発明の効果】
【００１７】
請求項１に記載の本発明によれば、データ分類の信頼性あるいは視認性を向上させることが可能となる。
【００１８】
請求項２に記載の本発明によれば、分類の妥当性に応じて、データの再分類が行われる。
【００１９】
請求項３に記載の本発明によれば、ベクトル空間法に基づく階層的なデータ分類が行われる。
【００２０】
請求項４に記載の本発明によれば、データ群における「かたまり」について、そのデータ群と他のデータ群との相対的な関係において評価することが可能となる。
【００２１】
請求項５に記載の本発明によれば、データ分類の信頼性あるいは視認性を一層向上させることが可能となる。
【００２２】
請求項６に記載の本発明によれば、分類の評価結果に応じて、再分類が繰り返される。
【００２３】
請求項７に記載の本発明によれば、あらかじめ分類数を設定しなくても、妥当に形成されたデータ群へとデータが分類される。
【００２４】
請求項８に記載の本発明によれば、あらかじめ分類数を設定した場合にもデータの再分類が行われるため、データ分類の信頼性向上あるいは視認性向上を図ることができる。
【００２５】
請求項９に記載の本発明によれば、文書データの分類の信頼性あるは視認性の向上が図られる。
【００２６】
請求項１０記載の本発明によれば、データ分類の信頼性あるいは視認性を向上させることが可能なプログラムが提供される。
【発明を実施するための最良の形態】
【００２７】
以下に、本実施の形態について例示する。
【００２８】
図１は本実施の形態にかかる文書データ分類装置１０のハードウエア構成を説明する概略ブロック図である。文書データ分類装置１０は、主として文書データの分類を行うデータ分類装置であり、一般のＰＣ（パソコン）をはじめとする各種のコンピュータを用いて構成することができる。文書データ分類装置１０は、内部通信路としてのバス１２と、このバス１２に接続されたＣＰＵ（中央演算装置）１４、メモリ１６、ＨＤＤ（ハードディスクドライブ）１８、ＣＤＤ（コンパクトディスクドライブ）２０、ディスプレイ２２、キーボード２４、及び通信インタフェース２６の各構成要素を備える。
【００２９】
ＣＰＵ１４は、演算機能や制御機能などを有した装置であり、プログラムに従って各種の演算処理を行ったり、他の構成要素の制御を行ったりする。メモリ１６は、半導体などを利用して作成された記憶装置であり、ＣＰＵ１４を制御するプログラムや、各種のデータが記憶される。ＨＤＤ１８は、磁気ディスクを利用した大容量記憶装置であり、分類対象となる複数の文書データを記憶（格納）する。ＣＤＤ２０は、記憶媒体としてのＣＤ（コンパクトディスク）に対する読み書きを行う装置である。例えば、文書データ分類装置１０を制御するためのプログラムがＣＤを通じて提供された場合、ＣＤＤ２０を通じて文書データ分類装置１０にインストールされる。
【００３０】
ディスプレイ２２は、画像表示を行う表示装置であり、文書データの分類結果などが表示される。キーボード２４は、ユーザ（利用者）が文書データ分類装置１０を制御するための入力を行う入力装置である。ディスプレイ２２とキーボード２４は、ユーザが文書データ分類装置１０の操作を行うためのユーザインターフェースとして用いられる。通信インタフェース２６は、インターネットなどのネットワーク３０を通じて、外部装置と通信を行うための装置である。外部装置からは、文書データ分類装置１０を制御するためのプログラムの信号が入力されたり、分類対象となる文書データが入力されたりする。また、ユーザは、外部装置から通信インタフェース２６を通じて、当該文書データ分類装置１０にデータ分類指令や、分類結果の出力指令を送ることもできる。
【００３１】
文書データ分類装置１０は、このような単体のハードウエア（コンピュータ）を用いた集中処理システムとして構築されることが可能であるが、複数のハードウエアを用いた分散処理システムとして構築されてもよい。分散処理システムの一例としては、文書データを記憶するＨＤＤ１８を、ネットワーク３０上のファイルサーバに配置する態様を挙げることができる。
【００３２】
続いて、文書データ分類装置１０における処理機能について説明する。文書データ分類装置１０では、プログラム制御の結果、ＣＰＵ１４その他の構成要素を利用した処理機能部が構築される。構築される処理機能部の例としては、文書データを入力する文書データ入力部、文書データ間距離のテーブルを作成する文書データ間距離テーブル作成部、初期クラスタリングを行う初期クラスタリング部、特徴語のスコア算出を行う特徴語スコア算出部、再クラスタリングを行う再クラスタリング部、出力結果の表示を行う出力結果表示部などを挙げることができる。
【００３３】
図２は、これら各処理機能部によって行われる処理の流れを説明するフローチャートである。文書データ分類装置１０においては、まず、文書データ入力部によって、分類対象となる複数の文書データ（これを全文書データと呼ぶことがある）の入力が行われる（Ｓ１０）。文書データは、ＨＤＤ１８から入力されてもよいし、ネットワーク３０上の装置から入力されてもよい。ここで、文書データとは、文字コードを含むデータをいう。文書データの例としては、テキスト形式データ、ワープロソフト形式データ、ソースプログラムなどを挙げることができる。入力される文書データは、少量（例えば１０００データ以下）であってもよいが、大量（１００万データ以上）のデータであってもよい。また、入力される文書データは、ランダムに集められたものであってもよいが、例えば、同一のデータベース内にある文書データや、検索などにより収集された文書データなど、なんらかの関連性に基づいて集められたものであってもよい。なお、以下では、入力された全文書データに含まれる文書データ数をＮとする。
【００３４】
次に、文書データ間距離テーブル作成部は、各文書データを構成するデータ要素を抽出して特徴ベクトルを作成し、ベクトル間の距離を計算してテーブル化する（Ｓ１２）。具体的には、特徴ベクトルの各方向（成分）としては、形態素解析などによって文書データから抽出されるキーワードを採用することができる。キーワードとしては、名詞、動詞、形容詞などの各種品詞や、それらの結合などを含む様々な語句を採用することができるが、名詞に限定するなどの簡略化を行ってもよい。以下では、こうして抽出したキーワードをＫｉ（ｉ＝１，２，．．．，ｎ）と表示することがある。なお、キーワードには、通常は、同一の語句が別々に登録されないように設定される。また、同じ意味の語句（例えば、計算機とコンピュータ）は、同義語辞書などを用いて１つのキーワードとして登録するようにしてもよい。
【００３５】
特徴ベクトルの成分の大きさは、文書データに出現する単語の頻度や、ＴＦ・ＩＤＦ（ＴｅｒｍＦｒｅｑｕｅｎｃｙ・ＩｎｖｅｒｓｅＤｏｃｕｍｅｎｔＦｒｅｑｕｅｎｃｙ）値などによって、定めることができる。文書データに特定の構成（例えば、見出しなど）が存在する場合に、この構成中にあらわれるキーワードを、一般の構成箇所にでてくるキーワードよりも重要視して、大きな重みづけを与えるなどしてもよい。このようにして、ｊ番目の文書データＰｊ（ｊ＝１，２，．．．，Ｎ）の特徴ベクトルＶｊにおける第ｉ成分の大きさが定められる。
【００３６】
本実施の形態についての動作実験においては、キーワードＫｉが一度でも出現すれば１、出現しなければ０を与えた上で、ベクトルの長さを１に規格化したものを特徴ベクトルＶｊとする態様を採用した。この態様では、全文書データから、例えば、Ｋ１＝“リンゴ”、Ｋ２＝“バナナ”、Ｋ３＝“ミカン”、Ｋ４＝“イチゴ”、Ｋ５＝“ブドウ”の５個のキーワード抽出が行われ、ある文書Ｐに｛“リンゴ”，“ミカン”，“イチゴ”｝の３つのキーワードが含まれるとすると、この文書Ｐの特徴ベクトルＶは次式となる。
【００３７】
【数１】
2008165572.tif 000003
【００３８】
文書データ間距離テーブル作成部では、次に、２つの文書ＰｉとＰｊの類似度を計算する。類似度は、特徴ベクトルＶｉと特徴ベクトルＶｊの距離Ｄｉｊによって定義することができる。すなわち、距離Ｄｉｊが近いほど、両ベクトルの類似性は高く、距離Ｄｉｊが遠いほど、両ベクトルの類似性は低いと考えることができる。距離Ｄｉｊはユークリッド距離であってもよいし、両ベクトルの余弦であってもよい。特徴ベクトルとして正規直交系を採用した場合には、両ベクトルの余弦は、両ベクトルの内積演算によって求めることができる。このようにして、ＮＣ２＝Ｎ（Ｎ−１）／２個の要素をもつ距離テーブルが作成される。
【００３９】
次に、初期クラスタリング部は、文書データのクラスタリングを行う（Ｓ１４）。ここでは、クラスタリングには、既存の凝集型の階層クラスタリング手法を広く用いることができる。凝集型階層クラスタリングでは、まず、初期階層として、Ｎ個のクラスタ（つまり１個の文書データが１つのクラスタを構成する）を作成する。そして、作成した距離テーブルを参照して、Ｎ個のクラスタのうち最も距離が近いクラスタを併合する。これによって、Ｎ−１個のクラスタをもつ上位の階層が構築される。同様にして、ある階層では、２つのクラスタＣｉ，Ｃｊ間の距離テーブルを作成して、最も距離の近いクラスタを併合し、さらに上位の階層を得る。この処理は再帰的に繰り返され、最も距離の近いクラスタが逐次的に併合されていく。こうして適当な回数の反復が行われる結果、多段階に階層的なクラスタ構造を得ることができる。
【００４０】
凝集型階層クラスタリングでは、クラスタ間の距離の定義の仕方によりいくつかの手法が提案されている。本実施の形態の動作実験では、Ｗａｒｄ法を用いている。Ｗａｒｄ法は、各文書データからその文書データを含むクラスタの重心までの距離の２乗和を最小にする手法であり、多次元空間内で球状のクラスタが生成されやすい。しかし、もちろん、最短距離法など他の階層型のクラスタリング手法を用いることも可能である。
【００４１】
なお、特徴ベクトルで表現されたデータをクラスタリングする手法としては、階層的な手法の他に、非階層的な手法（ＫＭｅａｎｓ法など）も知られている。しかし、ここでは、階層構造を利用する必要性から、階層的手法を採用している。ただし、非階層的なクラスタリングを反復することで、階層的な構造を得ることも可能である。
【００４２】
このようにして行われた初期クラスタリングの結果として、常に最適なクラスタが得られるとは限らない。この一因としては、形態素解析などによるキーワードの抽出過程で入り込んだノイズ等のために、特徴ベクトルの距離が文書間の類似性に必ずしも一致しないことが挙げられる。また、別の要因として、クラスタリングには固執的な正解が存在しないため、全文書データをいくつのクラスタに分類するのかの決定が困難であることも挙げられる。
【００４３】
そこで、得られたクラスタの評価を行うための処理が、特徴語スコア算出部及び再クラスタリング部によって行われる。特徴語スコア算出部は、クラスタ内の文書の分布状態でクラスタを評価してもよいが、ここでは、各クラスタを代表するキーワード（特徴語と名前をつける）が、全文書データからみて、どの程度特徴語としてふさわしいかという特徴語スコアを算出する（Ｓ１６）。そして、再クラスタリング部は、特徴語スコアにより、クラスタとしての集まりが悪いと判断されたクラスタに属する文書データを、そのクラスタを構成する下位階層（初期状態に近い側の階層）のクラスタ群へと再分類する処理を行う（Ｓ１８）。ステップＳ１６，１８による再クラスタリング処理は、規定数に達するまで反復して繰り返される（Ｓ２０，Ｓ２２）。そして、反復回数が規定数に達した場合には、この時点で得られたクラスタリングの結果が、ディスプレイに表示される（Ｓ２４）。
【００４４】
ここで、図３と図４を用いて、特徴語スコアの算出過程について詳しく説明する。図３は、クラスタに属する文書データの再分類が必要かどうか評価（判定）する過程を示すフローチャートであり、図４は、特徴語スコアの算出について説明するフローチャートである。
【００４５】
図３に示すように、ステップＳ１４の初期クラスタリングあるいは、その後の再クラスタリングのループによって（Ｓ２２）、ｍｒ個のクラスタＣｉ（ｉ＝１，２，．．．，ｍｒ）が生成されたとする（Ｓ３０）。ここで、ｒは実施する再クラスタリングの回数を表している。初期クラスタリングが行われた時点では、ｒ＝０であり、クラスタ数はｍ０個である。再クラスタリングは、ｉ＝１，ｊ＝１から開始され（Ｓ３２）、ｉおよびｊを順次増加させて（Ｓ４０，Ｓ４６）、ｉ＝ｍｒ，ｊ＝ｎまで順次繰り返される（Ｓ４２，Ｓ４８）。
【００４６】
この過程で、クラスタＣｉにおけるキーワードＫｊに対するスコアＳ（ｉ，ｊ）が算出される（Ｓ３４）。このスコアＳ（ｉ，ｊ）は、そのキーワードがそのクラスタにとってどの程度特徴を捉えている語句かを表すものであり、例えば、エントロピーなどを利用して算出することも可能である。本実施の形態の動作実験では、ある特定のクラスタには高頻度で出現して、他のクラスタには低頻度で出現するキーワードを求める観点から次のようにしてスコアＳ（ｉ，ｊ）を定義する。すなわち、クラスタＣｉに含まれる文書データのうち、キーワードＫｊを含む文書データの割合（０．０〜１．０）をＦ（ｉ，ｊ）とすれば、クラスタＣｉにおけるキーワードＫｊのスコアＳ（ｉ，ｊ）は、次式で定義される。
【００４７】
【数２】
2008165572.tif 000004
【００４８】
ここで、「１．０−Ｆ（ｋ，ｊ）」は、クラスタＣｋの中に含まれている文書データが、キーワードＫｊを含まない割合を表しており、「Π（１．０−Ｆ（ｋ，ｊ））」は、クラスタＣｉ以外のクラスタに含まれている文書データが、キーワードＫｊを含まない度合いを表す。
【００４９】
図４に示すように、あるクラスタＣｉについての各キーワードＫｊのスコアＳ（ｉ，ｊ）の算出においては、まず、ｋ＝１，ｊ＝１からはじめて（Ｓ６０）、各ｋ及び各ｊについて、ｋ＝ｍｒ、ｊ＝ｎに至るまで（Ｓ６４〜Ｓ７０）、Ｆ（ｋ，ｊ）が計算される。そして、Ｓ（ｉ，ｊ）＝１．０を初期値にした後、ｋ＝１からｋ＝ｍｒまでについて（Ｓ８０，Ｓ８２）、ｋの値によって場合わけがなされる（Ｓ７４）。その結果、ｋ≠ｉの場合には、Ｓ（ｉ，ｊ）＝Ｓ（ｉ，ｊ）×（１−Ｆ（ｋ，ｊ））が計算され（Ｓ７６）、ｋ＝ｉの場合には、Ｓ（ｉ，ｊ）＝Ｓ（ｉ，ｊ）×Ｆ（ｋ，ｊ）が計算され（Ｓ７８）、これを繰り返すことでスコアＳ（ｉ，ｊ）が得られることになる。
【００５０】
図３のステップＳ３４では、ｊ＝１のときに、Ｓ（ｉ）＝Ｓ（ｉ，１）、Ｋｊｍａｘ＝Ｋ１の設定を行った後、ｊ＝ｎまでの各ｊについて（Ｓ４０，Ｓ４２）、最も大きなＳ（ｉ，ｊ）を見つけ出す処理を行う（Ｓ３６、Ｓ３８）。すなわち、Ｓ（ｉ）よりも大きなＳ（ｉ，ｊ）が存在した場合には、Ｓ（ｉ）にＳ（ｉ，ｊ）を代入し、そのときのＫｊをＫｊｍａｘとすることで、クラスタＣｉを代表する特徴語Ｋｊｍａｘと、この特徴語Ｋｊｍａｘの代表性を表現した値である特徴語スコアＳ（ｉ）が求められる。そして、得られた特徴語スコアＳ（ｉ）が予め設定された閾値Ｔｈ以下である場合には、クラスタＣｉは「かたまり」として妥当なものではなく、再分割する（クラスタＣｉに属する文書データを再分類する）必要があると判定される。他方、特徴語スコアＳ（ｉ）がＴｈより大きい場合には、クラスタＣｉへの分類は妥当なものであり、再分割は不要であると判定される（Ｓ４４）。このようにして、特徴語スコアＳ（ｉ）に基づく分類の評価がｉ＝ｍｒに至る全てのクラスタＣｉについて計算されると、再分割すべきであると評価されたクラスタに対する再クラスタリングが実施される（Ｓ１８）。なお、ここでは、クラスタの特徴語として一つのキーワードのみを選択したが、データ群を代表する一つのキーワードを含む複数のキーワードを選択し、各キーワードのスコアをたとえば平均する等の演算をして、この結果に応じて再分割の必要があるか評価することも可能である。
【００５１】
本実施の形態における動作実験では、初期クラスタリング部において作成した階層構造を利用して、文書データの再分類処理を行っている。具体的には、再分類にあたっては、再分類対象となったクラスタに属する文書データを、そのクラスタを構成している下位のｐ個のクラスタに再分類する。言い換えれば、再分類の対象となったクラスタは、ｐ個のクラスタに再分割される。
【００５２】
ここで、図５を用いて、初期クラスタリングにより上位階層側に作成されたクラスタを、再クラスタリングによって下位階層のクラスタへと再分割する様子を説明する。図５は、分類階層の構造を示す図であり、縦軸はクラスタリング階層（図の下側ほど下位階層、図の上側ほど上位階層）を表している。そして、図の最下層には、クラスタＩＤ０〜８で示された８個のクラスタが描かれており、これらのクラスタを直線的な枝で結ぶツリー（木）は、文書データのクラスタリング構造を示している。すなわち、ツリー構造中での枝が分岐・結合しているノード（節）の高さは、クラスタリングの順番を示しており、初期クラスタリングの早い段階で形成されたクラスタほど図の下側に描かれている。
【００５３】
ここで、表１に、図５に対応した初期クラスタリングの詳細過程を示す管理テーブルを例示した。この管理テーブルは、クラスタＩＤとクラスタリングの内容を各クラスタリング階層について示したものである。
【００５４】
具体的には、クラスタリング階層０では、クラスタＩＤ０〜８の８個のクラスタが存在している。そして、次の段階であるクラスタリング階層１では、クラスタＩＤ０，１の二つのクラスタが結合されている（表１では、結合されたクラスタは、番号の若いクラスタＩＤを流用して、クラスタＩＤ０と表現されている）。続いて、クラスタリング階層２では、クラスタＩＤ６，７のクラスタが結合されている。同様にして、クラスタリング階層３では、クラスタＩＤ２，３のクラスタが結合され、クラスタ階層４では、クラスタＩＤ６，７が結合されたクラスタと、クラスタＩＤ８が結合されている。このような統合を繰り返すことで、クラスタリング階層７では、クラスタＩＤ０〜３のクラスタが結合されたクラスタＣ１と、クラスタＩＤ４〜８のクラスタが結合されたクラスタＣ２が形成されている。
【００５５】
初期クラスタリングでは、このような管理テーブルにデータを記録しながら分類処理が行われる。そして、再クラスタリングでは、管理テーブルを遡って参照することで、各階層のクラスタに結合された元のクラスタ（文書データ群）をたどることが可能になる。
【００５６】
【表１】
2008165572.tif 000005
【００５７】
図５においては、２つのクラスタＣ１，Ｃ２の再分割が必要と判断され、ｐ＝４のクラスタ数に再分割が行われている。具体的には、クラスタＣ１についてはＬ１の階層（クラスタリング階層０）まで遡り、クラスタＣ２についてはＬ２の階層（クラスタリング階層３）まで遡ることで、各４個、合計８個のクラスタへと再分割されている。注意すべきは、Ｌ１とＬ２の階層レベルが異なることである。すなわち、Ｌ１は、比較的早い段階でクラスタ化された階層であり、Ｌ２は、比較的遅い段階でクラスタ化された階層である。つまり、各クラスタの再分割の回数を同程度にすることを、両クラスタの再分割の階層を同程度にすることよりも優先している。
【００５８】
これに対し、クラスタＣ１，Ｃ２ともに、同じＬ３の階層（クラスタリング階層１）まで遡ることで、合計８個のクラスタに再分割する対応も考えられる。この場合には、クラスタＣ１は、３個のクラスタに再分割され、クラスタＣ２は５個のクラスタに再分割される。これは、各クラスタの再分割の回数を同程度にすることよりも、両クラスタの再分割の階層を同程度にすることを優先した態様である。
【００５９】
なお、再分割するクラスタ数は、固定した値ｐとする必要は無い。例えば再分割対象となったそのクラスタの大きさ（半径や分散値などによって定義できる）などに依存した可変の値にしてもよい。つまり、最終的に再分割するクラスタ数を、文書データの特性に応じて内部的に決定することができる。
【００６０】
再分割は指定回数くりかえされ（Ｓ２０）、これにより最終的なデータの分類結果が得られる。なお再分割処理を繰り返すとクラスタ数は増えるため、特徴語スコア（場合によっては特徴語も）は変動する。一般に、クラスタ数が増えると、特徴語スコアは小さくなる傾向にある。このため、当初は再分割の必要がないと判断されたクラスタも、再分割が進行するにつれて、特徴語スコアが閾値を下回り、再分割の必要があると判断される可能性がある。そこで、「一度でも再分割する必要が無いと判断したクラスタに関しては、以降の再分割処理においても再分割はしない」という条件をつけてもよい。
【００６１】
また、ある時点で生成されたクラスタに含まれる文書データ数が少ない時、そのクラスタを再分割すると、非常に少ない数の文書データが分類されたクラスタが作られてしまう。これを避けるために、クラスタ内に分類された文書データ数が閾値を下回った場合、そのクラスタは再分割しないなどの条件を追加してもよい。
【００６２】
さらには、再分割により生成されたクラスタの特徴語スコアが０になる場合がある。これは生成されたクラスタの特徴語が、他の生成されたクラスタに属するすべての文書データに含まれるため生じる現象である。これを防ぐために、再クラスタリングの結果、特徴語スコアが０となるクラスタが１つでも生成されてしまう場合には、その再クラスタリングは実行しないという条件を追加しても良い。
【００６３】
なお、ここに示した例では、初期クラスタリングによって得られた最上位の階層の全クラスタについて、特徴語と特徴語スコアを求め、再クラスタリングの必要性を評価（判定）した。しかし、一部のクラスタについてのみ再クラスタリングの必要性を判定するようにしてもよい。評価対象となるクラスタの選択は、例えば、そのクラスタに分類された文書データの数や、クラスタの大きさ（直径や分散など）などによって行うことができる。
【００６４】
以上においては、最終的な分類に用いられるクラスタ数を事前に決定しない態様について説明した。つまり、以上の態様では、分類アルゴリズム及びデータ特性に基づいて、クラスタ数を内部的に決定した。しかし、最終的な分類に用いられるクラスタ数を事前に設定するように、本実施の態様を変形することも可能である。
【００６５】
図６は、この変形例における処理の流れを示すフローチャートである。このフローチャートは、図２のフローチャートに対応しており、同一のステップには同一の番号を付して、説明を簡略化する。
【００６６】
この態様においては、図２に示した処理と同様にして、まず、初期クラスタリング（Ｓ１４）が行われ、次に、特徴語スコアの算出と（Ｓ１６）、再クラスタリングが行われる（Ｓ１８）。しかし、反復の条件が異なっており、再クラスタリングによって生成されたクラスタ数ｍｒが、ユーザ指定するクラスタ数Ｚをはじめて超えるまで、再クラスタリングが繰り返される（Ｓ９０）。ここで、クラスタ数がｍｒ−１からｍｒに増加したときに、新たに作成されたクラスタがＹｒ個存在すると仮定する。この場合には、このＹｒ個のクラスタ間の距離を求め、その距離が近いクラスタを順に統合していくことで、クラスタ数をＺにしている。再クラスタリングの結果、クラスタ結合をする前にクラスタ数がちょうどＺになった場合には、クラスタ結合を行うことなく処理を終了することができる。
【００６７】
以上の説明においては、分類対象のデータとして、文書データを例に挙げた。しかし、本実施の形態は、画像データや音声データなど、文書データ以外の各種のデータにも適用可能である。実際、クラスタリング技術は、自然言語処理の分野だけでなく、画像処理、マーケティングなどの分野でも利用されている。例えば、画像データにおける色成分の多寡を特徴ベクトルとして定義すれば、画像データを色分けしたクラスタが構築される。
【００６８】
なお、扱うデータが大容量の場合（例えば１００万オーダー）には、距離テーブルを一時保存するメモリをコンピュータ内に確保することが困難となる場合がある。そこで、距離テーブルを記憶せず、必要となった段階で距離計算をその都度実施するようにしてもよい。あるいは、まずは、メモリに収まるようにＮ個のデータの中から適当に（例えばランダムに）Ｎ’個のデータをサンプルして分類処理を行うことが考えられる。そして、残るＮ−Ｎ’個のデータについては、決定されたクラスタとの距離などに基づいて、分類先のクラスタを決定すればよい。
【図面の簡単な説明】
【００６９】
【図１】本実施の形態にかかる文書データ分類装置のハードウエア構成を示すブロック図である。
【図２】本実施の形態における処理の概要を示すフローチャートである。
【図３】再分類の判定処理の例を示すフローチャートである。
【図４】特徴語スコアの算出例を示すフローチャートである。
【図５】再クラスタリングの例を示す概念図である。
【図６】別の処理例の概要を示すフローチャートである。
【符号の説明】
【００７０】
１０  文書データ分類装置、１２  バス、１４  ＣＰＵ、１６  メモリ、１８  ＨＤＤ、２０  ＣＤＤ、２２  ディスプレイ、２４  キーボード、２６  通信インタフェース、３０  ネットワーク。
【図１】
2008165572.tif 000006
【図２】
2008165572.tif 000007
【図３】
2008165572.tif 000008
【図４】
2008165572.tif 000009
【図５】
2008165572.tif 000010
【図６】
2008165572.tif 000011