(57)【要約】【課題】分類精度を向上させた分類パラメータを生成する。【解決手段】データ分類処理装置１００は、予め分類カテゴリ毎に分類されている学習データを入力する入力処理部１０１と、学習データから、分類カテゴリ毎の特徴を生成する特徴生成部１０５と、分類カテゴリ毎の特徴毎に、特徴の重み付けを算出する特徴重み算出部１１１と、特徴毎の重み付けに基づいて、以降入力されるデータを分類カテゴリ毎に分類する基準となる分類パラメータを生成する分類パラメータ生成部１０７と、分類カテゴリ毎に、生成された分類パラメータが、学習データを分類できるか否か判断する分類パラメータ判断部１０８と、学習データが予め分類されている分類カテゴリと異なる分類カテゴリに分類されたと判断された場合、異なる分類カテゴリの分類パラメータを、他の分類パラメータと合成する分類パラメータ合成部１０９と、を備えた。【選択図】        図１
2009187517.tif 000002
【特許請求の範囲】
【請求項１】
予めカテゴリ毎に分類されているデータを入力する入力処理手段と、
前記データから、前記カテゴリ毎の特徴を生成する特徴生成手段と、
前記カテゴリ毎の前記特徴毎に、該特徴の重み付けを算出する重み算出手段と、
前記特徴毎の前記重み付けに基づいて、以降入力されるデータを前記カテゴリ毎に分類する基準となる分類パラメータを生成するパラメータ生成手段と、
分類カテゴリ毎に生成された分類パラメータが、前記予めカテゴリ毎に分類されているデータを分類できるか否か判断するパラメータ判断手段と、
前記データが予め分類されている前記カテゴリと異なる前記分類カテゴリに分類されたと判断された場合、当該異なる分類カテゴリの前記分類パラメータを、変更する変更手段と、
を備えたことを特徴とするデータ分類処理装置。
【請求項２】
前記変更手段は、前記データが予め分類されている前記カテゴリと異なる前記分類カテゴリに分類されたと判断された場合、当該異なる分類カテゴリの前記分類パラメータに対して、当該データが予め分類されている前記カテゴリの前記分類パラメータを、当該分類パラメータによる前記特徴に対する重み付けを変更するよう、合成を行うこと、
を特徴とする請求項１に記載のデータ分類処理装置。
【請求項３】
前記重み算出手段は、前記各カテゴリの前記特徴毎に符号付きで前記重み付けの値を算出し、
符号付きで算出された前記重み付けの値から、符号が正となる前記重み付けの値を、前記分類パラメータを生成するため前記特徴の前記重み付けとして選択する特徴選択手段を、さらに備えること、
を特徴とする請求項２に記載のデータ分類処理装置。
【請求項４】
前記変更手段は、前記データが分類されている前記カテゴリと異なる前記カテゴリに分類されたと判断された場合、当該異なるカテゴリの前記分類パラメータに対して、当該データが分類されるべき前記カテゴリの前記分類パラメータの前記重み付けの値を、符号を負とした上で合成すること、
を特徴とする請求項３に記載のデータ分類処理装置。
【請求項５】
前記パラメータ判断手段は、生成された前記分類パラメータ毎に、予めカテゴリ毎に分類されている全ての前記データに対して分類処理を行い、当該分類結果に基づいて、前記データを適切に前記カテゴリに分類できるか否か判断すること、
を特徴とする請求項１乃至４のいずれか一つに記載のデータ分類処理装置。
【請求項６】
予めカテゴリ毎に分類されているデータを入力する入力処理ステップと、
前記データから、前記カテゴリ毎の特徴を生成する特徴生成ステップと、
前記カテゴリ毎の前記特徴毎に、該特徴の重み付けを算出する重み算出ステップと、
前記特徴毎の前記重み付けに基づいて、以降入力されるデータを前記カテゴリ毎に分類する基準となる分類パラメータを生成するパラメータ生成ステップと、
分類カテゴリ毎に生成された分類パラメータが、前記予めカテゴリ毎に分類されているデータを分類できるか否か判断するパラメータ判断ステップと、
前記データが予め分類されている前記カテゴリと異なる前記分類カテゴリに分類されたと判断された場合、当該異なる分類カテゴリの前記分類パラメータを、変更する変更ステップと、
を有することを特徴とするデータ分類処理方法。
【請求項７】
前記変更ステップは、前記データが予め分類されている前記カテゴリと異なる前記分類カテゴリに分類されたと判断された場合、当該異なる分類カテゴリの前記分類パラメータに対して、当該データが予め分類されている前記カテゴリの前記分類パラメータを、当該分類パラメータによる前記特徴に対する重み付けを変更するよう、合成を行うこと、
を特徴とする請求項６に記載のデータ分類処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データをカテゴリ毎に分類するデータ分類処理装置及び方法に関するものである。
【背景技術】
【０００２】
従来から、記憶容量の大容量化及びネットワーク技術の発達に伴い、多量のデータを蓄積し、利用する傾向がある。
【０００３】
この場合、どのようにして多量のデータを利用者に利用させるためにどのように分類するのかが問題となる。例えば、作業者がデータの内容を確認して分類した場合、作業負担が膨大になる。
【０００４】
そこで、近年、教師付きデータ分類法が提案されている。この教師付きデータ分類法は、データの持つ規則性や特徴を学習していくことで、高精度にデータの分類を可能とする技術である。
【０００５】
教師付きデータ分類法は、学習フェーズと分類フェーズで成りたっている。まず、学習フェーズは、さらに、学習データから分類毎に有効な特徴を抽出するフェーズと、抽出した特徴に重み付けし、データを分類するための分類パラメータを生成するフェーズと、に分かれている。そして、分類フェーズでは、生成された分類パラメータを使用し、データを分類する。
【０００６】
この教師付きデータ分類法でデータを適切に分類するためには、学習データを用意する必要がある。しかしながら、一般的に学習データを分類カテゴリ毎にバランス良く用意することは難しく、分類毎に学習データの件数にばらつきが出ることが多い。
【０００７】
この場合、このように学習データに件数にばらつきがあると、学習フェーズで学習データを使用して分類パラメータを生成した場合、分類パラメータの精度に問題があることが指摘されている。
【０００８】
ところで、学習フェーズにおける学習データから特徴的なデータを選択するアルゴリズムとしてはいくつかの種類が提案されている。これら特徴量選択アルゴリズムは、符号を意識するか否かで２種類に大別できる。
【０００９】
この２種類のアルゴリズムを比較すると、非特許文献１は、分類毎に件数にばらつきがある学習データにおいては、符号付の特徴量を使用した方が効果的な特徴量を選択できると実験結果から結論付けている。これにより、分類パラメータの精度の問題をある程度抑止できる。
【００１０】
【非特許文献１】Zhaohui Zheng, Xiaoyun Wu, Rohini Srihari, “Feature Selection for Text Categorization on Imbalanced Data SIGKDD Explorations”, 6(1):80{89,2004. Sigkdd Explorations. Volume 6, Issue 1 - Page 6
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、非特許文献１に記載された技術を用いてもデータの分類に誤りが生じるため、よりいっそうの分類精度の向上が求められるという問題がある。
【００１２】
本発明は、上記に鑑みてなされたものであって、分類毎にデータの件数にばらつきが生じている場合の分類精度を向上させたデータ分類処理装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、予めカテゴリ毎に分類されているデータを入力する入力処理手段と、前記データから、前記カテゴリ毎の特徴を生成する特徴生成手段と、前記カテゴリ毎の前記特徴毎に、該特徴の重み付けを算出する重み算出手段と、前記特徴毎の前記重み付けに基づいて、以降入力されるデータを前記カテゴリ毎に分類する基準となる分類パラメータを生成するパラメータ生成手段と、分類カテゴリ毎に、生成された分類パラメータが、前記予めカテゴリ毎に分類されているデータを分類できるか否か判断するパラメータ判断手段と、前記データが予め分類されている前記カテゴリと異なる前記分類カテゴリに分類されたと判断された場合、当該異なる分類カテゴリの前記分類パラメータを、変更する変更手段と、を備えたことを特徴とする。
【００１４】
また、請求項２にかかる発明は、請求項１にかかる発明において、前記変更手段は、前記データが予め分類されている前記カテゴリと異なる前記分類カテゴリに分類されたと判断された場合、当該異なる分類カテゴリの前記分類パラメータに対して、当該データが予め分類されている前記カテゴリの前記分類パラメータを、当該分類パラメータによる前記特徴に対する重み付けを変更するよう、合成を行うこと、を特徴とする。
【００１５】
また、請求項３にかかる発明は、請求項２にかかる発明において、前記重み算出手段は、前記各カテゴリの前記特徴毎に符号付きで前記重み付けの値を算出し、符号付きで算出された前記重み付けの値から、符号が正となる前記重み付けの値を、前記分類パラメータを生成するため前記特徴の前記重み付けとして選択する特徴選択手段を、さらに備えること、を特徴とする。
【００１６】
また、請求項４にかかる発明は、請求項３にかかる発明において、前記変更手段は、前記データが分類されている前記カテゴリと異なる前記カテゴリに分類されたと判断された場合、当該異なるカテゴリの前記分類パラメータに対して、当該データが分類されるべき前記カテゴリの前記分類パラメータの前記重み付けの値を、符号を負とした上で合成すること、を特徴とする。
【００１７】
また、請求項５にかかる発明は、請求項１乃至４のいずれか一つにかかる発明において、前記パラメータ判断手段は、生成された前記分類パラメータ毎に、予めカテゴリ毎に分類されている全ての前記データに対して分類処理を行い、当該分類結果に基づいて、前記データを適切に前記カテゴリに分類できるか否か判断すること、を特徴とする。
【００１８】
また、請求項６にかかる発明は、予めカテゴリ毎に分類されているデータを入力する入力処理ステップと、前記データから、前記カテゴリ毎の特徴を生成する特徴生成ステップと、前記カテゴリ毎の前記特徴毎に、該特徴の重み付けを算出する重み算出ステップと、前記特徴毎の前記重み付けに基づいて、以降入力されるデータを前記カテゴリ毎に分類する基準となる分類パラメータを生成するパラメータ生成ステップと、分類カテゴリ毎に、生成された分類パラメータが、前記予めカテゴリ毎に分類されているデータを分類できるか否か判断するパラメータ判断ステップと、前記データが予め分類されている前記カテゴリと異なる前記分類カテゴリに分類されたと判断された場合、当該異なる分類カテゴリの前記分類パラメータを、変更する変更ステップと、を有することを特徴とする。
【００１９】
また、請求項７にかかる発明は、請求項６にかかる発明において、前記変更ステップは、前記データが予め分類されている前記カテゴリと異なる前記分類カテゴリに分類されたと判断された場合、当該異なる分類カテゴリの前記分類パラメータに対して、当該データが予め分類されている前記カテゴリの前記分類パラメータを、当該分類パラメータによる前記特徴に対する重み付けを変更するよう、合成を行うこと、を特徴とする。
【発明の効果】
【００２０】
本発明によれば、分類パラメータを生成した後、当該分類パラメータでデータを分類し、分類結果に応じて分類パラメータを変更することで、分類パラメータによる分類精度を向上させることができるという効果を奏する。
【発明を実施するための最良の形態】
【００２１】
以下に添付図面を参照して、この発明にかかるデータ分類処理装置及び方法の最良な実施の形態を詳細に説明する。
【００２２】
（第１の実施の形態）
図１は、第１の実施の形態にかかるデータ分類処理装置の構成を示すブロック図である。本図に示すようにデータ分類処理装置１００の内部は、入出力処理部１０１と、分類パラメータ記憶部１０２と、学習データ記憶部１０３と、文字列処理部１０４と、特徴生成部１０５と、特徴選択部１０６と、分類パラメータ生成部１０７と、分類パラメータ判断部１０８と、分類パラメータ合成部１０９と、を備える。
【００２３】
本実施の形態にかかるデータ分類処理装置１００は、データ件数を気にせずに集められた学習データを利用して、分類パラメータを作成することが可能であるため、様々なデータの分類に適している。
【００２４】
つまり、本実施の形態にかかるデータ分類処理装置１００は、あらゆる教師付分類アプリケーションに適用できる。学習データ件数にばらつきが生じる教師付分類アプリケーションの例としては、e-mail分類アプリケーションや、分類カテゴリが途中で増える分類アプリケーション等が考えられる。次にこれら分類アプリケーションについて説明する。
【００２５】
e-mail分類アプリケーションは、個人で送受信するメールを分類するためのアプリケーションである。このように、個人で使用する分類アプリケーションは、ある程度の量の学習データを利用者毎に用意するのは大変である。さらに、分類カテゴリ毎にバランスよく学習データ（メール）を集めるのは難しい。例えば、e-mail分類アプリケーションを用いたスパムフィルタリングでは、正常かスパムかの２つの分類カテゴリになり、学習データ件数はどちらかに偏るのが普通である。しかしながら、本実施の形態にかかるデータ分類処理装置１００を利用することで、最適な分類パラメータを生成できる。
【００２６】
分類カテゴリが途中で増加するアプリケーションは、新規のデータが既存の分類カテゴリに属さない場合に、当該データの内容を識別し、当該データが属する分類を新規に作成していくアプリケーションとする。当該アプリケーションにおいて、新規に作成された分類には、学習データが１件しかないので、分類毎に学習データ件数にばらつきが生じる。  しかしながら、本実施の形態にかかるデータ分類処理装置１００を利用すれば、学習データが１件しかない場合でも分類パラメータを生成できるため、自動的な分類処理が継続できる。さらに、ある程度、分類間の学習データ件数にばらつきがなくなった場合には、Information  gainなどの特徴量選択アルゴリズムを使用して、よりよい分類パラメータを生成してもよい。
【００２７】
本実施の形態では、データ分類処理装置１００が、ｋ個の分類カテゴリのそれぞれに対して、分類パラメータを生成する例について説明する。
【００２８】
まず、分類カテゴリをＣ1,Ｃ2,…,ＣKとし、各分類カテゴリに属する学習データ群をＴ1,Ｔ2,…,ＴKとする。
【００２９】
つまり学習データ群Ｔi(i=1〜K)は、分類カテゴリＣiに属する複数の学習データで構成されているものとする。この学習データ群Ｔi(i=1〜K)のそれぞれにデータ件数は、ばらつきがあるものとする。
【００３０】
入出力処理部１０１は、データの入力処理及び出力処理を行う。入力処理されるデータとしては、例えば、学習データ、入力データなどがある。出力処理されるデータとしては、例えばデータ分類処理装置１００による分類結果などがある。なお、入力データとは、分類パラメータ生成後に分類対象となるデータとする。
【００３１】
また、入出力処理部１０１は、分類カテゴリＣi(i=1〜K)に属する学習データＴi群(i=1〜K)を構成する各学習データを入力処理する。
【００３２】
学習データ記憶部１０３は、入出力処理部１０１により入力処理された学習データを記憶する。
【００３３】
分類パラメータ記憶部１０２は、後述する分類パラメータ生成部１０７により生成された分類パラメータを記憶する。
【００３４】
文字列処理部１０４は、入力処理された学習データＴi群を構成する各学習データに対して文字列処理を行い、分類カテゴリＣi毎に当該分類カテゴリＣiの特徴的な文字列を抽出する。文字列は、分類カテゴリＣi毎にｎi個抽出できたものとする。そして、分類カテゴリＣiの学習データＴiから抽出された文字列をｗij(j=1,…, ｎi)と定義する。なお、文字列の抽出手法は、周知の技術に限らず、あらゆる手法を用いて良い。
【００３５】
特徴生成部１０５は、出現頻度算出部１１０を備え、抽出された文字列ｗijから、特徴量の集合Ｓを生成する。
【００３６】
その際、出現頻度算出部１１０が、分類カテゴリＣi内の文字列ｗijの出現頻度ＴＦ（ｗij,Ｃi）と、全分類カテゴリにおける文字列ｗlの出現頻度ＴＦ（ｗｌ）と、分類カテゴリＣiにおける全ての文字列の出現頻度ＴＦ（Ｃi）と、全ての分類カテゴリにおける全ての文字列の出現頻度ＴＦと、を算出する。なお、本実施の形態ではＴＦ(Term  Frequency)を用いるが、ＤＦ(Document  Frequency)を用いてもよい。なお、集合Ｓに格納されたユニークな文字列の数をしめす変数をlとする。
【００３７】
図２は、特徴生成部１０５による抽出された文字列の集合Ｓへの登録処理、及び出現頻度算出部１１０による出現頻度の算出処理を示した擬似コードとする。図２に示すように、全分類カテゴリの全ての文字列ｗijについてループを行うことで、特徴生成部１０５が抽出された全文字列をユニークに集合Ｓに登録すると共に、出現頻度算出部１１０が出現頻度ＴＦ（ｗij,Ｃi）、出現頻度ＴＦ（ｗl）、出現頻度ＴＦ（Ｃi）及び出現頻度ＴＦを算出する。
【００３８】
特徴選択部１０６は、特徴重み算出部１１１を備え、分類パラメータ生成に利用する文字列（特徴）を選択する。本実施の形態では、特徴重み算出部１１１が文字列毎の特徴値（特徴の重み）を算出し、特徴選択部１０６が分類カテゴリ毎に、正の特徴値であり且つ特徴値が上位ｍ件以内の文字列（特徴）を選択する。
【００３９】
より詳細には、特徴重み算出部１１１は、分類カテゴリＣi(i=1〜K)毎に、生成された集合Ｓに格納された文字列毎に、特徴量選択アルゴリズムFSを使用して特徴の重みβijを算出し、算出された重みをキーとして降順に整列する。この分類カテゴリＣi毎に重み付けの算出及び整列がなされた集合をＳiとする。この集合Ｓiは以下の式（１）に示す。なお、集合Ｓに登録された文字列の数をiwとする。
【００４０】
Ｓi  =  {(βi1,ｗi1),(βi2,ｗi2)…,(βiiw,ｗiw)}…（１）
【００４１】
次に、特徴重み算出部１１１による重みβijの算出手法の例について説明する。本実施の形態においては、例として特徴量選択アルゴリズムに“Correlation  coefficient”を使用した場合について説明する。
【００４２】
この場合、特徴重み算出部１１１は、βijを以下の処理手順で算出する。
【００４３】
まず、特徴重み算出部１１１は、変数Ａに、出現頻度ＴＦ（ｗij,Ｃi）を代入する。次に、変数Ａが０より大きい場合のみ、変数Ｂ,Ｃ,Ｄ,βijを算出する。次に、変数Ｂを算出する式（２）、変数Ｃを算出する式（３）、変数Ｄを算出する式（４）及び変数βijを算出する式（５）を以下に示す。
【００４４】
Ｂ  ＝  ＴＦ（ｗl）−Ａ…（２）
なお、式（２）の文字列ｗlは、文字列ｗijと同一の文字列とする。また、変数Ｂが０の場合、特徴重み算出部１１１は、変数Ｂに１を設定する。そして、さらに特徴重み算出部１１１は以下の演算を行う。
【００４５】
Ｃ  ＝  ＴＦ（Ｃi）−Ａ…（３）
Ｄ  ＝  ＴＦ−ＴＦ（Ｃi）−Ｂ…（４）
βij  ＝  (Ａ×Ｄ−Ｃ×Ｂ)/√((Ａ＋Ｃ)×(Ｂ＋Ｄ)×(Ａ＋Ｂ)×(Ｃ＋Ｄ))…（５）
【００４６】
そして、特徴選択部１０６は、式（１）で算出された集合Ｓiから、特徴値（特徴の重み）が正である上位ｍ件の、特徴値（特徴の重み）と文字列（特徴）の組み合わせを選択する。なお、特徴値が負の場合は、上位ｍ件以内でも選択対象とはならない。また、特徴の重みが正となる数がｍ件より少ない場合、特徴選択部１０６は、正となる全ての組み合わせを選択する。また、Ｓiから選択した上位ｍ件を含む集合をＳi+として以下の式（６）で示すものとする。
【００４７】
Ｓi+  =  {(βi1+,ｗi1),(βi2+,ｗi2)…,(βim+,ｗim)}  βij>0  ∀j…（６）
なお、件数ｍは、外部から与えるパラメータあるいは、学習データから自然に決定される数値とする。これら集合Ｓi+は分類カテゴリＣi毎に作成される。
【００４８】
分類パラメータ生成部１０７は、分類カテゴリＣi毎の集合Ｓi+に基づいて、仮の分類パラメータを生成する。
【００４９】
分類パラメータの重みの計算法は、学習アルゴリズムにより異なる。そこで、本実施の形態では、学習アルゴリズムとして“Multinomial Bayes”を使用した場合について説明する。論文『Improving  Multi-class  Text  Classification  with  Naive  Bayes  Jason  D.M.Rennie,  September,  2001,  MIT』によれば、学習アルゴリズム“Multinomial  Bayes”では、線形分類器ｆを用いることが説明される。そこで、分類カテゴリＣiの分類器ｆiは、以下の式（７）で表すことができる。なお、ｊ＝1,…,mとする。
ｆi  =Σαij＊ｗij…（７）
【００５０】
そして、分類パラメータは(αij,ｗij)となる。また、αijは、文字列（単語あるいは任意長の文字列）ｗijにおける分類パラメータとしての特徴を表す重みとする。
【００５１】
そして、上述した分類器ｆiを用いて、分類対象となるデータｔの分類処理が行われる。この場合、ｆi(ｔ)＞０ならばデータｔは、分類カテゴリＣiに属すると判断される。ｆi(ｔ)≦０ならば、分類カテゴリＣiに属さないと判断される。
【００５２】
また、分類パラメータ生成部１０７は、分類カテゴリＣiの分類パラメータＰiの重みαij(j=0,…,m)を算出するために、まずは以下に示す変数Ｑijを式（８）で、変数Ｒijを式（９）で算出する。
【００５３】
Ｑij  ＝  （ＴＦ（ｗij,Ｃi）＋１．０）／（ＴＦ（Ｃi）＋Ｖ）…（８）
Ｒij  ＝  (ＴＦ(ｗij)−ＴＦ(ｗij,Ｃi)＋１．０)／（ＴＦ−ＴＦ(Ｃi)＋Ｖ)…（９）
なお、Ｖは学習データの総単語数とする。
【００５４】
そして、算出された変数Ｑij及び変数Ｒijから、以下の式（１０）で重みαijを算出できる。
αij  ＝  Ｌｏｇ（Ｑij／Ｒij）…（１０）
【００５５】
さらに、分類パラメータ生成部１０７は、Ｃiに属する学習データ件数Ｎcと、学習データ件数Ｎとから、
α0  ＝  Ｌｏｇ（Ｎc／（Ｎ−Ｎc））…（１１）
を算出する。
【００５６】
これにより、分類パラメータ生成部１０７は、仮の分類パラメータとして以下の式（１２）を生成する。
Ｐi  ＝｛（αi1,ｗi1）,（αi2,ｗi2）…,（αim,ｗim）｝…（１２）
なお、分類パラメータの生成手法は、上述した手法に限るものではなく、従来から提案されている符号付きの生成手法を用いてもよい。
【００５７】
分類パラメータ判断部１０８は、分類値算出部１１３と、分類判断部１１２と、を備え、分類カテゴリＣi毎に生成された分類パラメータＰiが適切に学習データを分類できるか否かの評価を行う。
【００５８】
分類値算出部１１３は、学習データ記憶部１０３に記憶されている学習データを分類対象データとして、生成された仮の分類パラメータＰiを用いた分類器ｆiで、分類値を算出する。
【００５９】
そして、分類判断部１１２は、算出された分類値から、当該学習データが適切な分類カテゴリに属したか否か判断する。上述したように、学習データｔを用いた算出結果において、分類判断部１１２は、ｆi(ｔ)＞０ならばデータｔが、分類カテゴリＣiに属すると判断する。また、分類判断部１１２は、i(ｔ)≦０ならばデータｔが分類カテゴリＣiに属さないと判断する。
【００６０】
そして、分類判断部１１２は、当該判断結果を格納したConfusion  matrixを生成する。図３はConfusion  matrixの一例を示した図である。図３に示した行列のうち、行は正解の分類カテゴリを示し、列は仮の分類パラメータの分類結果を示している。
【００６１】
そして、分類パラメータ判断部１０８は、生成されたConfusion  matrixに基づいて、仮の分類パラメータが適切か否か判断する。
【００６２】
例えば、分類パラメータ判断部１０８は、行Ｃ１において列Ｃ１のみ“○”が設定されていれば分類パラメータが適切に機能していると判断できる。一方、行Ｃiにおいて列Ｃi以外の列（例えば列Ｃ2）に“○”が設定されていれば、分類カテゴリＣiに属すべき学習データが、分類パラメータにより分類カテゴリＣi以外の分類カテゴリに分類されたことになる。この場合、分類パラメータが適切に機能していないと判断できる。この場合、分類パラメータ判断部１０８は、学習データを誤って分類した分類パラメータ（例えば分類器ｆ2の分類パラメータＰ2）が適切でないと判断する。
【００６３】
分類パラメータ合成部１０９は、学習データｔの間違った分類先の分類パラメータ(例えばＰ2)に対して、学習データｔの適切な分類先の分類パラメータ（例えばPi）を合成する。本実施の形態にかかる分類パラメータ合成部１０９は、適切な分類先の分類パラメータＰiに含まれている文字列がデータに含まれている場合に分類値が低くなるように、主に適切な分類先の分類パラメータＰiに含まれている文字列に対して負の重み付けで、誤った分類を行った分類パラメータ（例えばＰ2）に対して合成を行う。なお、当該重み付けの算出手法は、適切な分類先の分類パラメータＰiに含まれている文字列がデータに含まれている場合に、分類値が高くならない又は低くなるのであれば、どのような算出手法を用いても良い。
【００６４】
そして、合成が行われた場合、分類パラメータ生成部１０７が、分類パラメータの再計算を行う。これにより、例えば、合成元と合成先に同じ文字列（特徴）が含まれている場合に適切な重みが算出されることになる。
【００６５】
そして、分類パラメータ生成部１０７が、適切だったため合成処理が行われなかった分類パラメータと、合成処理が行われた分類パラメータとを、分類パラメータ記憶部１０２に登録する。
【００６６】
これにより、データを適切に分類することが可能な分類パラメータが、分類パラメータ記憶部１０２に格納されたことになる。当該分類パラメータを利用することで適切に、データを分類することが可能となる。
【００６７】
次に、以上のように構成された本実施の形態にかかるデータ分類処理装置１００における分類パラメータの生成処理について説明する。図４は、本実施の形態にかかるデータ分類処理装置１００における上述した処理の手順を示すフローチャートである。
【００６８】
まず、入出力処理部１０１が、分類カテゴリＣi毎に学習データ群Ｔiの入力処理を行う（ステップＳ４０１）。なお、i=1…kとする。
【００６９】
例えば、分類カテゴリが“cotton”,“potato”の２つであるとする。この場合、k=2となる。そして、“cotton”の学習データ群Ｔ1の件数が１５、で“potato”の学習データ群Ｔ2の件数が２とする。
【００７０】
次に、文字列処理部１０４が、学習データ群Ｔiから、分類カテゴリＣi毎に、文字列（特徴）ｗijを生成する（ステップＳ４０２）。なお、j=1…ｎiとする。
【００７１】
そして、特徴生成部１０５が、生成された文字列ｗijから、ユニークな文字列（特徴）で構成される集合Ｓを生成すると共に、出現頻度算出部１１０が出現頻度ＴＦに関連する値を算出する（ステップＳ４０３）。
【００７２】
そして、生成された集合Ｓが、{ABOUT,  ABOVE,  ABROAD,  ACCORDING,  ACCOUNTED,  ACCU,  ACREAGE,  ACRES,  ...,BANNED,  BASE,  BASED,  BE,  BECAUSE,  BEEN...}とする。そして、出現頻度算出部１１０が生成された集合Ｓの各文字列（特徴）と、分類カテゴリに基づいて、出現頻度ＴＦに関連する値、すなわち、出現頻度ＴＦ（ｗij,Ｃi）、出現頻度ＴＦ（ｗl）、ＴＦ（Ｃi）、ＴＦを算出する。図５は、出現頻度算出部１１０により算出された出現頻度に関連する値の例を示した図である。
【００７３】
次に、特徴重み算出部１１１が、分類カテゴリＣi毎に、出現頻度ＴＦに関連する値から、文字列ｗij毎の重みを算出し、集合Ｓを構成する文字列を重みが高いものから降順で整列する（ステップＳ４０４）。そして、分類カテゴリＣiについて整列された集合をＳiとする。重みの算出手法は、どのような手法を用いても良いが、本実施の形態では“Correlation  Coefficient”を用いる。
【００７４】
そして、特徴選択部１０６が、分類カテゴリＣi毎に、集合Ｓiから整列された文字列を上位ｍ件選択する（ステップＳ４０５）。
【００７５】
ｍ＝３とした場合、上位３件で打ち切られる。そして、“Correlation  Coefficient”で算出された重みに基づいて、特徴選択部１０６が選択した結果、分類カテゴリ“cotton”では、(COTTON,  0.048624)、(BALES,  0.018546)及び(MLN,  0.017682)が選択される。また、分類カテゴリ“potato”では、(CWTS,  0.171092)、(POTATO,  0.140329)及び(WINTER,  0.122396)が選択される。
【００７６】
次に、分類パラメータ生成部１０７は、選択されたｍ件の文字列と、出現頻度ＴＦに関連する値とから、学習アルゴリズムを用いて仮の分類パラメータを生成する（ステップＳ４０６）。例えば、学習アルゴリズムに“Multinomial Bayes”を用いた場合、分類カテゴリ“cotton”では、（BALES，  2.158190）、（COTTON，  3.232705）及び（MLN，  2.121822）が仮の分類パラメータとなる。また、分類カテゴリ“potato”では、（CWTS，  3.253456）、（POTATO，  2.965774）及び（WINTER，  2.783453）が仮のパラメータとなる。
【００７７】
そして、分類値算出部１１３が、仮の分類パラメータを用いて分類値を算出し、分類判断部１１２が分類値から学習データが分類カテゴリに含まれるか否かにより、学習データを分類すると共に、Confusion  Matrixを作成する（ステップＳ４０７）。図６は、生成されたConfusion  Matrixの例を示した図である。
【００７８】
次に、分類パラメータ判断部１０８が、Confusion  Matrixを参照して、仮の分類パラメータで適切に学習データが分類されているか否かに基づいて、仮の分類パラメータが適切か否か判断し判断結果に基づいて、分類パラメータの合成、及び分類パラメータの重みの再計算を行う（ステップＳ４０８）。なお、詳細については後述する。
【００７９】
図６に示した例では、分類パラメータ判断部１０８は、分類カテゴリ“potato”用の仮の分類パラメータでは、“potato”に分類されるべき学習データの他に、“cotton”に分類されるべき学習データも、分類カテゴリ“potato”に含まれるべきデータとされていると判断できる。
【００８０】
そこで、分類パラメータ合成部１０９が、分類カテゴリ“potato”の分類パラメータに対して、分類カテゴリ“cotton”の分類パラメータを合成し、分類パラメータ生成部１０７が重みを再計算する。そして、分類パラメータ生成部１０７は、再計算された分類カテゴリ“potato”を、分類パラメータ記憶部１０２に登録する。図７は、最終的に作成された分類カテゴリ“potato”の分類パラメータの例を示した図である。そして、図８は、分類カテゴリ“cotton”の分類パラメータの例を示した図である。
【００８１】
図８に示す分類カテゴリ“cotton”の分類パラメータは、最初に分類パラメータ生成部１０７で生成されたものである。そして、図７に示す分類カテゴリ“potato”の分類パラメータは、図８に示す分類カテゴリ“cotton”の各分類パラメータの符号が負になって合成されていることが確認できる。
【００８２】
上述した処理手順により、特徴選択部１０６による文字列（特徴）の選択において、重みの値が負の特徴をheuristicに選択せずとも、最終的に重みの値が負の分類パラメータを得ることができる。
【００８３】
次に、以上のように構成された本実施の形態にかかるデータ分類処理装置１００における、図４のステップＳ４０７の学習データの分類からConfusion  matrixを生成するまでの処理手順について説明する。図９は、本実施の形態にかかるデータ分類処理装置１００における上述した処理の手順を示すフローチャートである。
【００８４】
まず、分類値算出部１１３が仮の分類パラメータを用いた分類器Ｆi（i=1,…,k）で学習データ毎に分類値を算出し、分類判断部１１２が、算出された分類値に基づいて各学習データを分類する（ステップＳ９０１）。当該処理では、全ての分類カテゴリの分類器Ｆi（i=1,…,k）に対して、全ての分類カテゴリの学習データについて判断する。
【００８５】
そして、分類判断部１１２は、変数ｉ及びjに初期値０を設定する（ステップＳ９０２）。
【００８６】
次に、分類判断部１１２は、分類器Ｆiで学習データ群Ｔjが分類カテゴリＣiに該当するか否か判断する（ステップＳ９０３）。
【００８７】
該当すると判断した場合（ステップＳ９０３：Ｙｅｓ）、分類判断部１１２は、ｃｍ(Confusion  matrix)[i,j]＝１と設定する（ステップＳ９０４）。一方、該当しないと判断した場合（ステップＳ９０３：Ｎｏ）、分類判断部１１２は、ｃｍ[i,j]＝０と設定する（ステップＳ９０５）。
【００８８】
そして、分類判断部１１２は、変数ｊに１追加する（ステップＳ９０６）。そして、変数ｊが分類カテゴリ数ｋより小さいか否か判断する（ステップＳ９０７）。小さいと判断された場合（ステップＳ９０７：Ｙｅｓ）、再びステップＳ９０３から処理を行う。
【００８９】
一方、変数ｊが分類カテゴリ数ｋ以上と判断された場合（ステップＳ９０７：Ｎｏ）、分類判断部１１２は、変数ｉに１追加し、変数ｊを０で初期化する（ステップＳ９０８）。
【００９０】
その後、分類判断部１１２は、変数ｉが分類カテゴリ数ｋより小さいか否か判断する（ステップＳ９０９）。小さいと判断した場合（ステップＳ９０９：Ｙｅｓ）、再びステップＳ９０３から処理を行う。
【００９１】
一方、変数ｉが分類カテゴリ数ｋ以上と判断された場合（ステップＳ９０９：Ｎｏ）、処理を終了する。
【００９２】
上述した処理手順により、分類処理とConfusion  matrixの生成を行うことができる。
【００９３】
次に、以上のように構成された本実施の形態にかかるデータ分類処理装置１００における合成及び再計算の処理について説明する。図１０は、本実施の形態にかかるデータ分類処理装置１００における上述した処理の手順を示すフローチャートである。
【００９４】
まず、分類パラメータ判断部１０８は、変数ｉ及びjに初期値０を設定する（ステップＳ１００１）。
【００９５】
次に、分類パラメータ判断部１０８は、変数ｉと変数ｊが異なり、ｃｍ[i,j]＞０の条件を満足するか否か判断する（ステップＳ１００２）。満足しないと判断した場合（ステップＳ１００２：Ｎｏ）、特に処理を行わない。
【００９６】
一方、満足すると判断した場合（ステップＳ１００２：Ｙｅｓ）、分類パラメータ合成部１０９は、分類パラメータＰiに分類パラメータＰjを合成する（ステップＳ１００３）。
【００９７】
そして、分類パラメータ判断部１０８は、変数ｊに１追加する（ステップＳ１００４）。そして、変数ｊが分類カテゴリ数ｋより小さいか否か判断する（ステップＳ１００５）。小さいと判断された場合（ステップＳ１００５：Ｙｅｓ）、再びステップＳ１００２から処理を行う。
【００９８】
一方、変数ｊが分類カテゴリ数ｋ以上と判断された場合（ステップＳ１００５：Ｎｏ）、分類パラメータ判断部１０８は、変数ｉに１追加し、変数ｊを０で初期化する（ステップＳ１００６）。
【００９９】
その後、分類パラメータ判断部１０８は、変数ｉが分類カテゴリ数ｋより小さいか否か判断する（ステップＳ１００７）。小さいと判断した場合（ステップＳ１００７：Ｙｅｓ）、再びステップＳ１００２から処理を行う。
【０１００】
一方、変数ｉが分類カテゴリ数ｋ以上と判断された場合（ステップＳ１００７：Ｎｏ）、分類パラメータ生成部１０７が、分類パラメータの重みの再計算を行う（ステップＳ１００８）。
【０１０１】
本実施の形態においては、分類パラメータで適切に分類カテゴリに学習データを分類できない場合に、当該分類パラメータに対して、他の分類パラメータを合成することとしたが、このような合成に制限するものではなく、分類を誤った分類パラメータに対して、特徴毎の重みを変更できる変更手段を用いるのであれば、どのような手法を用いても良い。
【０１０２】
本実施の形態にかかるデータ分類処理装置１００においては、分類パラメータの合成する際に、負の符号を付与した上で合成を行うことで、学習データ群が誤った分類カテゴリに分類されることを抑止することができる。
【０１０３】
さらに、本実施の形態にかかるデータ分類処理装置１００においては、特徴選択部１０６で分類カテゴリに対して特徴的なデータを選択し、負の特徴量を選択しないので、負の特徴量を選択するというheuristicsを排除できる。
【０１０４】
さらには、学習データが少ない分類カテゴリに対しても、他の分類カテゴリの分類パラメータを合成することで、分類カテゴリ毎の学習データ件数にばらつきがある場合でも、適切な分類パラメータを生成することができる。これにより、分類精度の高い分類パラメータの生成することができる。
【０１０５】
また、本実施の形態にかかるデータ分類処理装置１００では、分類パラメータを合成する際に負の重みとして合成することで、適切に分類パラメータの調整を行うことができる。
【０１０６】
図１１は、データ分類処理装置１００の機能を実現するためのプログラムを実行したＰＣのハードウェア構成を示した図である。本実施の形態のデータ分類処理装置１００は、ＣＰＵ（Central  Processing  Unit）１１０１等の制御装置と、ＲＯＭ（Read  Only  Memory）１１０２やＲＡＭ（Random  Access  Memory）１１０３等の記憶装置と、ＨＤＤ（Hard Disk Drive）１１０５と、通信Ｉ／Ｆ１１０４と、これらを接続するバス１１０６を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【０１０７】
本実施形態のデータ分類処理装置１００で実行される分類処理プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【０１０８】
また、本実施形態のデータ分類処理装置１００で実行される分類処理プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態のデータ分類処理装置１００で実行される分類処理プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【０１０９】
また、本実施形態の分類処理プログラムを、ＲＯＭ１１０２等に予め組み込んで提供するように構成してもよい。
【０１１０】
本実施の形態のデータ分類処理装置１００で実行される分類処理プログラムは、上述した各部（入出力処理部、文字列処理部、特徴生成部、特徴選択部、分類パラメータ生成部、分類パラメータ判断部、分類パラメータ合成部）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵが上記記録媒体から分類処理プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、入出力処理部、文字列処理部、特徴生成部、特徴選択部、分類パラメータ生成部、分類パラメータ判断部、分類パラメータ合成部が主記憶装置上に生成されるようになっている。
【産業上の利用可能性】
【０１１１】
以上のように、本発明にかかるデータ分類処理装置及び方法は、分類カテゴリ毎に学習データの数にばらつきがある場合に、分類カテゴリ毎に適切な分類パラメータを生成する技術に適している。
【図面の簡単な説明】
【０１１２】
【図１】第１の実施の形態にかかるデータ分類処理装置の構成を示すブロック図である。
【図２】第１の実施の形態にかかるデータ分類処理装置における、特徴生成部による抽出された文字列の集合Ｓへの登録処理、及び出現頻度算出部による出現頻度の算出処理を示した擬似コードを表す図である。
【図３】Confusion  matrixの一例を示した図である。
【図４】第１の実施の形態にかかるデータ分類処理装置における分類パラメータの生成処理を示すフローチャートである。
【図５】出現頻度算出部により算出された出現頻度に関連する値の例を示した図である。
【図６】分類判断部により生成されたConfusion  Matrixの詳細な例を示した図である。
【図７】最終的に作成された分類カテゴリ“potato”の分類パラメータの例を示した図である。
【図８】分類カテゴリ“cotton”の分類パラメータの例を示した図である。
【図９】第１の実施の形態にかかるデータ分類処理装置における学習データの分類からConfusion  matrixを生成する処理の手順を示すフローチャートである。
【図１０】第１の実施の形態にかかるデータ分類処理装置における合成及び再計算の処理の手順を示すフローチャートである。
【図１１】第１の実施の形態にかかるデータ分類処理装置の機能を実現するためのプログラムを実行したＰＣのハードウェア構成を示した図である。
【符号の説明】
【０１１３】
１００  データ分類処理装置
１０１  入出力処理部
１０２  分類パラメータ記憶部
１０３  学習データ記憶部
１０４  文字列処理部
１０５  特徴生成部
１０６  特徴選択部
１０７  分類パラメータ生成部
１０８  分類パラメータ判断部
１０９  分類パラメータ合成部
１１０  出現頻度算出部
１１１  特徴重み算出部
１１２  分類判断部
１１３  分類値算出部
１１０１  ＣＰＵ
１１０２  ＲＯＭ
１１０３  ＲＡＭ
１１０４  通信Ｉ／Ｆ
１１０５  ＨＤＤ
１１０６  バス
【図１】
2009187517.tif 000003
【図２】
2009187517.tif 000004
【図３】
2009187517.tif 000005
【図４】
2009187517.tif 000006
【図５】
2009187517.tif 000007
【図６】
2009187517.tif 000008
【図７】
2009187517.tif 000009
【図８】
2009187517.tif 000010
【図９】
2009187517.tif 000011
【図１０】
2009187517.tif 000012
【図１１】
2009187517.tif 000013