(57)【要約】【課題】入力文書をクラスモデルと照合することにより予め決められた文書クラスに振り分ける文書分類システムの実施時において、入力文書の内容は時間の経過とともに変化し、クラスモデルが陳腐化することがある。ところが、クラスモデル更新には多大の労力を必要とする。【解決手段】  本願発明では、文書分類システムの実施時に各クラスに分類された実文書集合と訓練文書集合との間の類似度を全てのクラスについて求め、その類似度の低いクラスを選択する。或いは各クラスの訓練文書集合と他の全てのクラスの実文書集合間の類似度を求め、その類似度の低いクラス対を選択することにより、陳腐化を起こしたクラスを検出する。また、全てのクラス対に対して訓練文書集合間の類似度を求め、類似度の低いクラス対を選択することにより、話題の接近したクラス対を検出する。【選択図】図２
2005158010.tif 000002
【特許請求の範囲】
【請求項１】
入力文書を、クラス毎の訓練文書情報を基に作成されたクラス毎のクラスモデルと照合して前記入力文書の分類を行う手段を有し、さらに、以下の（ａ）及び（ｂ）の手段を含む文書分類評価装置、
（ａ）クラス毎の訓練文書集合を用いて全てのクラス対に対して第１の類似度を求める手段、及び
（ｂ）前記第１の類似度が第１の閾値より大きいクラス対を検出する手段。
【請求項２】
前記類似度を求める手段は、以下の（ａ）から（ｄ）の手段を含む請求項１に記載の文書分類評価装置、
（ａ）前記クラス対の検出に用いる用語を各訓練文書から検出して選択する手段と、
（ｂ）前記各訓練文書を文書セグメントに分解する手段と、
（ｃ）前記各訓練文書に対して前記文書セグメントに出現する用語の出現頻度に関連した値を対応する成分の値とする文書セグメントベクトルを生成する手段と、
（ｄ）前記各訓練文書の前記文書セグメントベクトルを基に、全てのクラス対に対して訓練文書集合間の類似度を求める手段。
【請求項３】
入力文書を、クラス毎の訓練文書情報を基に作成されたクラス毎のクラスモデルと照合し、前記入力文書の分類を行う手段を有し、さらに、以下の（ａ）から（ｄ）の手段を含む文書分類評価装置、
（ａ）訓練文書集合をもとに各文書クラスのクラスモデルを作成する手段と、
（ｂ）前記入力文書を前記クラスモデルとを照合して分類を行ない、前記入力文書を帰属する文書クラスに振り分けて実文書集合を作成する手段と、
（ｃ）全文書クラスに対して、前記訓練文書集合と同じクラスの前記実文書集合の間の第２の類似度を求める手段と、
（ｄ）前記第２の類似度が第２の閾値より小さいクラスを検出する手段。
【請求項４】
入力文書を、クラス毎の訓練文書情報を基に作成されたクラス毎のクラスモデルと照合し、前記入力文書の分類を行う手段を有し、さらに、以下の（ａ）から（ｄ）の手段を含む文書分類評価装置、
（ａ）訓練文書集合をもとに各文書クラスのクラスモデルを作成する手段と、
（ｂ）前記入力文書を前記クラスモデルとを照合して分類を行ない、前記入力文書を帰属する文書クラスに振り分けて実文書集合を作成する手段と、
（ｃ）各文書クラスの前記訓練文書集合と他の全ての文書クラスの前記実文書集合との間の第３の類似度を求める手段と、
（ｄ）前記第３の類似度が第３の閾値より大きいクラス対を検出する手段。
【請求項５】
前記類似度を求める手段は、以下の（ａ）から（ｄ）の手段を含む請求項３及び請求項４に記載の装置、
（ａ）前記クラスまたはクラス対の検出に用いる用語を前記各訓練文書と前記各実文書からから検出して選択する手段と、
（ｂ）前記各訓練文書と前記各実文書を文書セグメントに分解する手段と、
（ｃ）前記各訓練文書と前記各実文書に対して前記文書セグメントに出現する用語の出現頻度に関連した値を対応する成分の値とする文書セグメントベクトルを生成する手段と、
（ｄ）前記各訓練文書と前記実文書の前記文書セグメントベクトルを基に、前記第２の類似度、若しくは前記第３の類似度を求める手段。
【請求項６】
前記出現する用語の種類数がMで与えられ、Y個の文書セグメントを有し、y番目の文書セグメントベクトルをdy=(dy1,.., dyM)Tとし（Tはベクトルの転置を表す）、文書の共起行列S を、
【数１】
2005158010.tif 000013
とするとき、全文書の共起行列の総和行列を文書集合毎に求めたうえで、２つの前記総和行列の対応する成分同士の積和をもとに前記第１、第２、若しくは第３の類似度を求める手段を有する請求項１から請求項５に記載の装置。
【請求項７】
コンピュータにより、入力文書をクラス毎の訓練文書情報を基に作成されたクラス毎のクラスモデルと照合して前記入力文書の分類を行う手段を動作させ、さらに、以下の（ａ）及び（ｂ）の手段を動作させる文書分類評価プログラム、
（ａ）前記クラス毎の訓練文書集合を用いて全てのクラス対に対して第１の類似度を求める手段、及び
（ｂ）前記第１の類似度が第１の閾値より大きいクラス対を検出する手段。
【請求項８】
前記類似度を求める手段は、以下の（ａ）から（ｄ）の手段を含む請求項７に記載の文書分類評価プログラム、
（ａ）前記クラス対の検出に用いる用語を各訓練文書から検出して選択する手段と、
（ｂ）前記各訓練文書を文書セグメントに分解する手段と、
（ｃ）前記各訓練文書に対して前記文書セグメントに出現する用語の出現頻度に関連した値を対応する成分の値とする文書セグメントベクトルを生成する手段と、
（ｄ）前記各訓練文書の前記文書セグメントベクトルを基に、全てのクラス対に対して訓練文書集合間の類似度を求める手段。
【請求項９】
コンピュータにより、入力文書をクラス毎の訓練文書情報を基に作成されたクラス毎のクラスモデルと照合し前記入力文書の分類を行う手段を、動作させ、さらに、以下の（ａ）から（ｄ）の手段を動作させる文書分類評価プログラム、
（ａ）訓練文書集合をもとに各文書クラスのクラスモデルを作成する手段と、
（ｂ）前記入力文書を前記クラスモデルとを照合して分類を行ない、前記入力文書を帰属する文書クラスに振り分けて実文書集合を作成する手段と、
（ｃ）全文書クラスに対して、前記訓練文書集合と同じクラスの前記実文書集合の間の第２の類似度を求める手段と、
（ｄ）前記第２の類似度が第２の閾値より小さいクラスを検出する手段。
【請求項１０】
コンピュータにより、入力文書をクラス毎の訓練文書情報を基に作成されたクラス毎のクラスモデルと照合し前記入力文書の分類を行う手段を動作させ、さらに、以下の（ａ）から（ｄ）の手段を動作させる文書分類評価プログラム、
（ａ）訓練文書集合をもとに各文書クラスのクラスモデルを作成する手段と、
（ｂ）前記入力文書を前記クラスモデルとを照合して分類を行ない、前記入力文書を帰属する文書クラスに振り分けて実文書集合を作成する手段と、
（ｃ）各文書クラスの前記訓練文書集合と他の全ての文書クラスの前記実文書集合との間の第３の類似度を求める手段と、
（ｄ）前記第３の類似度が第３の閾値より大きいクラス対を検出する手段。
【請求項１１】
前記類似度を求める手段は、以下の（ａ）から（ｄ）の手段を含む請求項９及び請求項１０に記載のプログラム、
（ａ）前記クラスまたはクラス対の検出に用いる用語を前記各訓練文書と前記各実文書からから検出して選択する手段と、
（ｂ）前記各訓練文書と前記各実文書を文書セグメントに分解する手段と、
（ｃ）前記各訓練文書と前記各実文書に対して前記文書セグメントに出現する用語の出現頻度に関連した値を対応する成分の値とする文書セグメントベクトルを生成する手段と、
（ｄ）前記各訓練文書と前記実文書の前記文書セグメントベクトルを基に、前記第２の類似度、若しくは前記第３の類似度を求める手段。
【請求項１２】
前記出現する用語の種類数がMで与えられ、Y個の文書セグメントを有し、y番目の文書セグメントベクトルをdy=(dy1,.., dyM)Tとし（ここでTはベクトルの転置を表す）、文書の共起行列S を、
【数２】
2005158010.tif 000014
とするとき、全文書の共起行列の総和行列を文書集合毎に求めたうえで、２つの前記総和行列の対応する成分同士の積和をもとに前記第１、第２、若しくは第３の類似度を求める手段を動作させる請求項７から請求項１１に記載のプログラム。
【請求項１３】
入力文書を、クラス毎の訓練文書情報を基に作成されたクラス毎のクラスモデルと照合して前記入力文書の分類を行うステップを有し、さらに、以下の（ａ）及び（ｂ）のステップを有する文書分類評価方法、
（ａ）クラス毎の訓練文書集合を用いて全てのクラス対に対して第１の類似度を求めるステップ、及び
（ｂ）前記第１の類似度が第１の閾値より大きいクラス対を検出するステップ。
【請求項１４】
前記類似度を求めるステップは、以下の（ａ）から（ｄ）の手段を含む請求項１３に記載の文書分類評価方法、
（ａ）前記クラス対の検出に用いる用語を各訓練文書から検出して選択するステップと、
（ｂ）前記各訓練文書を文書セグメントに分解するステップと、
（ｃ）前記各訓練文書に対して前記文書セグメントに出現する用語の出現頻度に関連した値を対応する成分の値とする文書セグメントベクトルを生成するステップと、
（ｄ）前記各訓練文書の前記文書セグメントベクトルを基に、全てのクラス対に対して訓練文書集合間の類似度を求めるステップ。
【請求項１５】
入力文書を、クラス毎の訓練文書情報を基に作成されたクラス毎のクラスモデルと照合し、前記入力文書の分類を行うステップを有し、さらに、以下の（ａ）から（ｄ）のステップを含む文書分類評価方法、
（ａ）訓練文書集合をもとに各文書クラスのクラスモデルを作成するステップと、
（ｂ）前記入力文書を前記クラスモデルとを照合して分類を行ない、前記入力文書を帰属する文書クラスに振り分けて実文書集合を作成するステップと、
（ｃ）全文書クラスに対して、前記訓練文書集合と同じクラスの前記実文書集合の間の第２の類似度を求めるステップと、
（ｄ）前記第２の類似度が第２の閾値より小さいクラスを検出するステップ。
【請求項１６】
入力文書を、クラス毎の訓練文書情報を基に作成されたクラス毎のクラスモデルと照合し、前記入力文書の分類を行うステップを有し、さらに、以下の（ａ）から（ｄ）の手段を含む文書分類評価方法、
（ａ）訓練文書集合をもとに各文書クラスのクラスモデルを作成するステップと、
（ｂ）前記入力文書を前記クラスモデルとを照合して分類を行ない、前記入力文書を帰属する文書クラスに振り分けて実文書集合を作成するステップと、
（ｃ）各文書クラスの前記訓練文書集合と他の全ての文書クラスの前記実文書集合との間の第３の類似度を求めるステップと、
（ｄ）前記第３の類似度が第３の閾値より大きいクラス対を検出するステップ。
【請求項１７】
前記類似度を求めるステップは、以下の（ａ）から（ｄ）のステップを含む請求項１５及び請求項１６に記載の方法、
（ａ）前記クラスまたはクラス対の検出に用いる用語を前記各訓練文書と前記各実文書からから検出して選択するステップと、
（ｂ）前記各訓練文書と前記各実文書を文書セグメントに分解するステップと、
（ｃ）前記各訓練文書と前記各実文書に対して前記文書セグメントに出現する用語の出現頻度に関連した値を対応する成分の値とする文書セグメントベクトルを生成するステップと、
（ｄ）前記各訓練文書と前記実文書の前記文書セグメントベクトルを基に、前記第２の類似度、若しくは前記第３の類似度を求めるステップ。
【請求項１８】
前記出現する用語の種類数がMで与えられ、Y個の文書セグメントを有し、y番目の文書セグメントベクトルをdy=(dy1,.., dyM)Tとし（ここでTはベクトルの転置を表す）、文書の共起行列S を、
【数３】
2005158010.tif 000015
とするとき、全文書の共起行列の総和行列を文書集合毎に求めたうえで、２つの前記総和行列の対応する成分同士の積和をもとに前記第１、第２、若しくは第３の類似度を求めるステップを有する請求項１３から請求項１７に記載の方法。
【請求項１９】
コンピュータにより、入力パターンをクラス毎の訓練パターン情報を基に作成されたクラス毎のクラスモデルと照合して前記入力パターンの分類を行う手段を動作させ、さらに、以下の（ａ）及び（ｂ）の手段を動作させるパターン分類評価プログラム、
（ａ）前記クラス毎の訓練パターン集合を用いて全てのクラス対に対して第１の類似度を求める手段、及び
（ｂ）前記第１の類似度が第１の閾値より大きいクラス対を検出する手段。
【請求項２０】
前記類似度を求める手段は、以下の（ａ）から（ｄ）の手段を含む請求項１９に記載のパターン分類評価プログラム、
（ａ）前記クラス対の検出に用いる構成要素を各訓練パターンから検出して選択する手段と、
（ｂ）前記各訓練パターンをパターンセグメントに分解する手段と、
（ｃ）前記各訓練パターンに対して前記パターンセグメントに出現する構成要素の出現頻度に関連した値を対応する成分の値とするパターンセグメントベクトルを生成する手段と、
（ｄ）前記各訓練パターンの前記パターンセグメントベクトルを基に、全てのクラス対に対して訓練パターン集合間の類似度を求める手段。
【請求項２１】
コンピュータにより、入力パターンをクラス毎の訓練パターン情報を基に作成されたクラス毎のクラスモデルと照合し前記入力パターンの分類を行う手段を、動作させ、さらに、以下の（ａ）から（ｄ）の手段を動作させるパターン分類評価プログラム、
（ａ）訓練パターン集合をもとに各パターンクラスのクラスモデルを作成する手段と、
（ｂ）前記入力パターンを前記クラスモデルとを照合して分類を行ない、前記入力パターンを帰属するパターンクラスに振り分けて実パターン集合を作成する手段と、
（ｃ）全パターンクラスに対して、前記訓練パターン集合と同じクラスの前記実パターン集合の間の第２の類似度を求める手段と、
（ｄ）前記第２の類似度が第２の閾値より小さいクラスを検出する手段。
【請求項２２】
コンピュータにより、入力パターンをクラス毎の訓練パターン情報を基に作成されたクラス毎のクラスモデルと照合し前記入力パターンの分類を行う手段を動作させ、さらに、以下の（ａ）から（ｄ）の手段を動作させるパターン分類評価プログラム、
（ａ）訓練パターン集合をもとに各パターンクラスのクラスモデルを作成する手段と、
（ｂ）前記入力パターンを前記クラスモデルとを照合して分類を行ない、前記入力パターンを帰属するパターンクラスに振り分けて実パターン集合を作成する手段と、
（ｃ）各パターンクラスの前記訓練パターン集合と他の全てのパターンクラスの前記実パターン集合との間の第３の類似度を求める手段と、
（ｄ）前記第３の類似度が第３の閾値より大きいクラス対を検出する手段。
【請求項２３】
前記類似度を求める手段は、以下の（ａ）から（ｄ）の手段を含む請求項２１及び請求項２２に記載のプログラム、
（ａ）前記クラスまたはクラス対の検出に用いる構成要素を前記各訓練パターンと前記各実パターンからから検出して選択する手段と、
（ｂ）前記各訓練パターンと前記各実パターンをパターンセグメントに分解する手段と、
（ｃ）前記各訓練パターンと前記各実パターンに対して前記パターンセグメントに出現する構成要素の出現頻度に関連した値を対応する成分の値とするパターンセグメントベクトルを生成する手段と、
（ｄ）前記各訓練パターンと前記実パターンの前記パターンセグメントベクトルを基に、前記第２の類似度、若しくは前記第３の類似度を求める手段。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は文書をはじめとするパターンの分類技術に関するものであり、特にその時々のクラスモデルの妥当性を適確に評価できるようにすることによってその運用の効率性を高めることを目的とする。
【背景技術】
【０００２】
文書分類は文書を予め決められたグループに振り分ける技術であり、情報の流通が増すにつれ、重要性が高まってきている。文書分類としてはこれまでに、ベクトル空間法、k-最近隣法（kNN法）、ナイーブベイズ法、決定木法、サポートベクターマシン法、ブースティング法など実に様々な方法が研究開発されてきた。文書の文書分類処理に関する最近の動向については、情報処理学会誌第42巻第1号（2001年1月）に掲載されている「テキスト分類‐学習理論の見本市‐」（著者：永田昌明、平博順）に詳しい。どのような分類法も、文書クラスに関する情報を何らかの形で記述し、入力文書と照合している。以下これをクラスモデルと呼ぶ。
【０００３】
このクラスモデルは、例えば、ベクトル空間法では各クラスに属する文書の平均ベクトルにより表現され、k-最近隣法では各クラスに属する文書のベクトルの集合により表現され、ブースティング法では単純な仮説の集合により表現されている。正確な分類を図るにはクラスモデルは各クラスを正確に記述したものでなければならない。クラスモデルは通常各クラスに訓練データとして用意された大量の文書を用いて作成される。
【非特許文献１】情報処理学会誌第42巻第1号（2001年1月）「テキスト分類‐学習理論の見本市‐」（著者：永田昌明、平博順）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
文書の分類は文字や音声と同じように認識技術をベースとするものであるが、文字認識や音声認識と比べた場合、次のような特質がある。
（１）文字認識や音声認識の場合、同じクラスに属するパターンが時々刻々変化することは考えられない。クラス“２”に属する文字パターンは現在も１年前も同じ筈である。ところが、文書の場合には同じクラスであっても文書の内容が刻々変化する場合がよくある。例えば、“国際政治”というクラスを想定したとき、このクラスに属する文書の話題は、“イラク戦争”の前後でかなり異なっているものと考えられる。従って、“国際政治”のクラスモデルは、時間の経過と共に更新される必要がある。
【０００５】
（２）文字や音声の場合には、入力された文字や音声がどのクラスに属するかは人間は直ちに判断できるので、クラスモデルを構築するための訓練データを収集することは難しい問題ではない。しかし、文書の場合には、入力された文書を読まなければその文書の属するクラスを判断することができない。たとえ飛ばし読みにしても文書を人間が読む限り少なからぬ時間を必要とする。従って、文書の場合には大量の信頼の置ける訓練データを収集することの負担は極めて大きい。
【０００６】
（３）（２）と同じ理由で、文書分類の場合、大量の未知文書に対してどの程度の正確さで分類が行われているか性能を把握することは容易ではない。
（４）文字や音声の場合には、入力される文字や音声にどのようなクラスが存在するかはほぼ自明である。例えば文字認識で数字を認識する場合クラス数は１０である。しかし、文書分類ではクラスの設定には任意性があり、どのようなクラスを用意するかは利用者の要望やシステム設計者の意図などによって決まる。
【０００７】
従って、文書分類では、（１）の特質の故に、実際の運用においてその時々の文書を正しく分類するにはクラスモデルの頻繁な更新が必須である。しかしながら、クラスモデルの更新は（２）に述べた理由で決して容易なものではない。クラスモデルの更新の負担の軽減を図るには、全クラスを更新するのではなく、クラスモデルの陳腐化したクラスのみ更新するようにすればよいが、（３）に述べた理由で陳腐化したクラスを検出することも容易でない。このように文書分類を実際に運用するためのコストは決して安価なものではない。
【０００８】
さらに、文書分類の場合、人為的に設定された各クラスの話題が互いに離れていれば問題はないが、話題が接近するクラス対が存在してしまう場合がある。このようなクラス対は互いの間で誤分類を招き、システムの性能を劣化させる。従って文書分類システムの設計においては話題が接近するクラス対をいち早く検出し、クラスを再設定する必要がある。このとき文書分類システムを再設計した後、テストデータで評価して問題クラス対を検出するようにしてもよいが、これには労力と時間を必要とする。このような話題の接近が問題となるクラス対は、訓練データの準備が終了した時点、即ち訓練データの収集及び各文書に対するラベル付けが終わった段階で直ちに検出できるのが望ましい。
【０００９】
本発明の目的は、話題が接近するクラス対やクラスモデルの陳腐化したクラスを容易に検出出来るようにすることにより、文書分類システム設計の負担やクラスモデルの更新の負担を軽減することにある。
【課題を解決するための手段】
【００１０】
先ずクラスモデルの陳腐化について考える。クラスＡのクラスモデルが陳腐化した場合の影響としては次の2通りが考えられる。即ち、入力文書がクラスＡに属していてもクラスＡに属すると判定できなくなる場合と、クラスＡとは別のクラスＢに誤分類される場合とである。従って、クラスＡの場合、「再現率」をクラスＡに属する文書数に対するクラスＡに属すると判定された文書数の割合と定義し、「精度」をクラスＡに属すると判定された文書の中で実際にクラスＡに属している文書数の割合と定義すると、クラスモデルの陳腐化の影響は、再現率や精度の低下となって現れる。従って、問題は再現率や精度の低下したクラスを如何にして検出するかである。本願発明では以下のようなアプローチを採用する。ここでは、再現率や精度の低下したクラスであっても正しくそのクラスに分類される文書は少なからず存在することを前提とする。
【００１１】
クラスＡの再現率が低下した場合、クラスＡに属する入力文書の話題とクラスモデルが想定するクラスＡの話題との間にミスマッチが生じていると考えられる。クラスモデルが想定するクラスＡの話題はそのクラスモデルを構築したときのクラスＡの訓練データによって決まる。文書分類システムの実際の運用時において、クラスＡに分類された文書集合を「クラスＡの実文書集合」と呼ぶこととする。上記ミスマッチを起こしているかどうかは、クラスＡの実文書集合とクラスＡのクラスモデル構築に用いた訓練文書集合との近さ、即ち「類似度」によって判定できる。この類似度が大きければ、クラスＡの実文書集合はクラスモデル構築時の訓練文書集合と内容が近く、陳腐化は起こしていないと判断できる。反対に類似度が小さければ、クラスＡに属する入力文書の話題はシフトし、クラスモデルは陳腐化を起こしていると判断できる。陳腐化していると判断されたクラスはクラスモデルの再構築が必要である。
【００１２】
また、クラスＡに属する入力文書がクラスＢに誤分類されるケースが多い場合には、クラスＡに属する文書の話題がシフトし、クラスＢのクラスモデルと非常に近くなっていると考えられる。従って、クラスＡの実文書集合とクラスＢのクラスモデル構築に用いた訓練文書集合との近さ、即ち類似度は大きくなっていると考えられる。従って、この類似度が大きいようであれば、これはクラスＡに属する文書の話題がクラスＢに接近していることの証拠となる。このときクラスＡ、Ｂの両方のクラスモデルが陳腐化を起こしていると判断できるので、クラスＡ、Ｂの両方のクラスモデルの再構築が必要となる。
【００１３】
次に、話題が接近するクラス対について述べる。話題が接近するクラス対ではそれぞれの文書集合間の類似性も高くなっていると考えられる。従って、全てのクラス対間の類似度、即ち、各クラスの訓練文書集合間の類似度を求め、類似度が一定値より高いクラス対を選択するとこれらのクラス対は話題が接近するクラス対とみなすことができる。このようなクラス対はクラスを設定することの是非やクラスの定義を含めて再検討する必要がある。
【００１４】
以上述べたように、本発明においては各クラスの訓練文書集合以外に、各クラスの実文書集合を求めておき、全てのクラス対の訓練文書集合間の類似度、各クラスの訓練文書集合と実文書集合の間の類似度、全てのクラス対の訓練文書集合と実文書集合間の類似度を求めることにより、更新あるいは見直しの必要のあるクラスを検出できるので、極めて容易に文書分類システム設計の変更やクラスモデルの更新を行うことができる。
【発明を実施するための最良の形態】
【００１５】
図１は、本願発明を実施する装置を示している。筐体１００の中には、記憶装置１１０、メインメモリ１２０、出力装置１３０、処理装置（ＣＰＵ）１４０、操作部１５０、入力装置１６０が含まれている。処理装置（ＣＰＵ）１４０は、メインメモリ１２０から制御するプログラムを読み込み、操作部１５０から入力された命令に従い、入力装置１６０から入力される文書データ、及び、記憶装置１１０に格納されている訓練文書や実文書の情報を使用して情報処理を行い、話題接近クラス対、及び、陳腐化した文書クラスなどを検出し出力装置１３０に出力する。
【００１６】
図２は、本発明の概要を示すブロック図である。２１０は文書入力ブロック、２２０は文書前処理ブロック、２３０は文書情報処理ブロック、２４０は訓練文書情報格納ブロック、２５０は実文書情報格納ブロック、２６０は不適格文書クラス出力ブロックを示す。文書入力ブロック２１０には、処理したい文書集合が入力される。文書前処理ブロック２２０では、入力された文書の用語検出、形態素解析、文書ベクトル作成等が行われる。文書ベクトルの各成分の値は対応する単語の文書内の頻度などをもとに求められる。訓練文書情報格納ブロック２４０には、作成されたクラス別訓練文書情報が格納される。実文書情報格納ブロック２５０には、分類結果に基づくクラス別実文書情報が格納される。文書情報処理ブロック２３０は、訓練文書集合の全クラス対の類似度算出、各クラスの訓練文書集合と同一クラスの実文書集合の間の類似度算出、各クラスの訓練文書集合と他の全てのクラスの実文書集合の間の類似度算出などを行って、話題接近クラス対、及び、陳腐化クラスを求める。不適格文書クラス出力ブロック２６０は文書情報処理ブロック２３０で得られた結果を、ディスプレー等の出力装置に出力する。
【００１７】
図３は与えられた訓練文書集合に対して、話題接近クラス対を検出する本発明の第１の実施例のフローチャートを示す。この発明の方法は、汎用コンピュータ上でこの発明を組み込んだプログラムを走らせることによって実施することができる。図３は、そのようなプログラムを走らせている状態でのコンピュータのフローチャートである。
ブロック２１は訓練文書集合入力、ブロック２２はクラスラベル付与、ブロック２３は文書前処理、ブロック２４はクラス別訓練文書データベース作成、ブロック２５は訓練文書集合のクラス対の類似度算出、ブロック２６は類似度と閾値との比較、ブロック２７は、閾値を超える類似度を有するクラス対の出力を行う。ブロック２８は終了チェック処理である。以下、英文文書を例にとって実施例１について説明する。
【００１８】
先ず、訓練文書集合入力２１において文書分類システム構築に用いる文書集合が入力される。クラスラベル付与２２では、予め各クラスに対してなされていた定義に従って帰属するクラス名を各文書に付与する。ひとつの文書に対して２つ以上のクラス名が付与されることもありうる。文書前処理２３においては各入力文書に対して、用語検出、形態素解析、文書ベクトル作成などの前処理が行われる。場合によっては、文書セグメント区分け、文書セグメントベクトル作成を行い、文書セグメントベクトルの集合として文書を表すこともある。用語検出としては、各入力文書から単語、数式、記号系列などを検出する。ここでは、単語や記号系列などを総称して「用語」と呼ぶ。英文の場合、用語同士を分けて書く正書法が確立しているので用語の検出は容易である。
【００１９】
次に、形態素解析では、各入力文書に対して用語の品詞付けなどの形態素解析を行う。文書ベクトル作成では、先ず文書全体に出現する用語から作成すべきベクトルの次元数および各次元と各用語との対応を決定する。この際に出現する全ての用語の種類にベクトルの成分を対応させなければならないということはなく、品詞付け処理の結果を用い、例えば名詞と動詞と判定された用語のみを用いてベクトルを作成するようにしてもよい。次いで各文書に出現する単語の頻度値、もしくは頻度値を加工して得られる値を対応する文書ベクトルの成分に与える。文書セグメント区分けが行われる場合は各入力文書は文書セグメントに分解される。文書セグメントは文書を構成する要素であり、その最も基本的な単位は文である。英文の場合、文はピリオドで終わり、その後ろにスペースが続くので文の切出しは容易に行うことができる。その他の文書セグメントへの分解法としては、ひとつの文が複文からなる場合主節と従属節に分けておく方法、用語の数がほぼ同じになるように複数の文をまとめて文書セグメントとする方法、文書の先頭から含まれる用語の数が同じになるように文とは関係なく区分けする方法などがある。
【００２０】
文書セグメントベクトル作成では、文書ベクトル作成と同じように、各文書セグメントに出現する単語の頻度値、もしくは頻度値を加工して得られる値を対応する文書セグメントベクトルの成分に与える。一例として、分類に用いられる用語の種類数をＭとし、Ｍ次元のベクトルで文書ベクトルが表される場合を考える。当該文書ベクトルをdr とすると、用語が用いられている場合を「０」と、用いられていない場合を「１」としてその成分を与えると、dr ＝ (１，０，０，．．，１)Ｔのように、あるいは用語の出現頻度をその成分値として与えると、dr ＝ (２，０，１，．．，４)Ｔのように表すことが出来る。ここでＴはベクトルの転置を表す。クラス別訓練文書データベース作成２４では、ブロック２２の結果に基づき、各文書の前処理結果をクラス別にソートし、データベースに格納する。訓練文書集合のクラス対の類似度算出２５では、訓練文書集合を用いて指定されたクラス対に対して類似度を算出する。クラス対の指定は、最初の繰り返しでは予め決められたクラス対に基づいて、２回目以降の繰り返しではブロック２８からの指令により行う。
【００２１】
文書集合間の類似度を求める方法としては種々の方法が知られている。例えば、クラスＡ、Ｂの文書集合をΩA、ΩBとする。また、文書rの文書ベクトルをdrとして、次式によりクラスＡ、Ｂの平均文書ベクトルdA、dBを定義する。
【００２２】
【数４】
2005158010.tif 000003
【００２３】
【数５】
2005158010.tif 000004
【００２４】
ここで、｜ΩA｜、｜ΩB｜は文書集合ΩA、ΩBの文書数を表す。クラスＡ、Ｂの訓練文書集合間の類似度をsim(ΩA,ΩB)とすると、これは余弦類似度により次のように求めることができる。
【００２５】
【数６】
2005158010.tif 000005
【００２６】
ここで、||dA ||はベクトルdAのノルムを表す。式（１）で定義される類似度の例では、単語間の共起の情報は反映されない。そこで、以下の計算方法を用いると文書セグメントにおける単語共起の情報を反映した類似度を求めることが出来る。クラスＡには複数の文書が含まれておりその集合をΩAと表す。集合をΩAのｒ番目の文書rはＹ個の文書セグメントから成るとし、ｙ番目の文書セグメントベクトルをdryにより表す。図４（ａ）では、文書集合ΩAが文書１から文書Ｒまでの文書群で構成されていることを示している。図４（ｂ）は文書集合ΩAのｒ番目の文書ｒがさらにＹ個の文書セグメントから構成されており、その中のｙ番目の文書セグメントから、文書セグメントベクトルdryを生成することをイメージ的に示している。ここで、文書rに対し次式で定義される行列を共起行列と呼ぶこととする。
【００２７】
【数７】
2005158010.tif 000006
【００２８】
さらに、クラスＢの集合をΩBとし、クラスＡ、Ｂの各文書の共起行列の総和をSA、SBとすると、これらは以下により求められる。
【００２９】
【数８】
2005158010.tif 000007
【００３０】
【数９】
2005158010.tif 000008
【００３１】
この場合、クラスＡ、Ｂの訓練文書集合間の類似度sim(ΩA,ΩB)は行列SA、SBの各成分を用いて以下のように定義することができる。
【００３２】
【数１０】
2005158010.tif 000009
【００３３】
ここで、SAmn はSAのｍ行ｎ列の成分値であり、Mは文書セグメントベクトルの次元、即ち出現単語の種類数である。もし、文書セグメントベクトルの各成分をバイナリーで、即ちm番目の単語が出現すれば1、現れなければ0として表現した場合、SAmn、SBmnは式（２）（３）から明らかなようにクラスＡ、Ｂの訓練文書集合において単語mとnとが共起する文書セグメントの数となるので、式（４）には単語共起の情報が与えられていることが分かる。単語共起の情報を与えることでより的確な類似度を求めることができる。なお、式（４）において行列SA、SBの非対角成分を用いないようにすると式（１）で定義される類似度とほぼ等価になる。
【００３４】
ブロック２６で、類似度（第１の類似度）が所定の閾値（第１の閾値）を超えるか否かを判断している。ブロック２７では、指定されたクラス間の訓練文書集合の類似度が予め指定された閾値を超えている場合には、話題が接近しているクラス対として検出する。具体的には、αを閾値としたとき、
【００３５】
【数１１】
2005158010.tif 000010
【００３６】
を満たす場合にクラスＡ、Ｂは話題が接近しているとみなす。αは話題内容のよく分かっている訓練文書集合を用いれば実験的に決めることは容易である。検出された話題接近クラス対に対しては、クラスの定義の見直しやそれらのクラスを設定すること自体の再検討、訓練文書のラベル付けの妥当性の確認を行うことになる。ブロック２８では、ブロック２５、２６、２７の処置を全てのクラス対に対して行ったかどうかのチェックを行い、未処理のクラスがなければ終了し、あれば次のクラス対を指定して次の処理をブロック２５に戻す。
【００３７】
図５（ａ）及び図５（ｂ）は実際の文書分類システム上において、陳腐化クラスを検出する本発明の第２及び第３の実施例を示す。この発明の方法は、汎用コンピュータ上でこの発明を組み込んだプログラムを走らせることによって実施することができる。図５（ａ）及び図５（ｂ）は、そのようなプログラムを走らせている状態でのコンピュータのフローチャートである。先ず、図５（ａ）で示される第２の実施例について説明する。ブロック31は文書入力、ブロック32は文書前処理、ブロック33は文書分類処理、ブロック34はクラス別実文書データベース作成、ブロック35は各クラスの訓練文書集合と同一クラスの実文書集合の間の類似度算出、ブロック３６は類似度と閾値との比較、ブロック３７は各クラスの訓練文書集合と同一クラスの実文書集合の間の類似度が閾値より大きい場合の処置、ブロック３８は終了チェック処理である。
【００３８】
以下、図５（ａ）のフローチャートについて詳細に説明する。  先ず、ブロック31において運用状態の文書分類システムに実際に分類すべき文書が入力される。ブロック32では図2のブロック23と同様な文書前処理が行われ、ブロック33では入力文書に対して文書分類処理が行われる。文書分類の方法としては、これまでに、ベクトル空間法、k-最近隣法（kNN）、ナイーブベイズ法、決定木法、サポートベクターマシン法、ブースティング法など実に様々な方法が開発されてきており、本発明ではどの方法も用いることができる。ブロック34では、ブロック33の文書分類処理の結果を用いて、クラス毎に実文書データベース作成を作成する。ここではクラスＡ、Ｂに分類された実文書集合をΩ'A、Ω'Bにより表す。
【００３９】
ブロック35では指定されたクラスの訓練文書集合と同一クラスの実文書集合の間の類似度の算出を行う。クラスの指定は最初の繰り返しでは予め指定されたクラスに基づいて、２回目以降はブロック３８からの指令により行う。クラスＡの訓練文書集合ΩAと同一クラスの実文書集合Ω'Aの間の類似度sim(ΩA,Ω'A) （第２の類似度）、は式（１）及び（４）と同様に求めることができる。
次いでブロック３６では類似度と閾値との比較を行い、ブロック３７において陳腐化を起こしたクラスモデルの検出を行う。その時の閾値をβとしたとき、
【００４０】
【数１２】
2005158010.tif 000011
【００４１】
を満たす場合にクラスＡに属すべき実文書の話題はシフトしており、クラスＡのクラスモデルは陳腐化していると判断される。ブロック３８は、ブロック３５、３６、３７の処理を、全てのクラスに対して行ったかどうかのチェックをおこない、未処理のクラスが無ければ終了し、あれば次のクラスを指定してブロック３５に処理を戻す。
次に、図５（ｂ）を用いて、第３の実施例について説明する。ブロック３１からブロック３４までは、図５（a）と同様であるので説明は割愛する。ブロック３９は各クラスの訓練文書集合と他の全てのクラスの実文書集合の間の類似度を算出する。ブロック４０及びブロック４１は、各クラスの訓練文書集合と他のクラスの実文書集合の間の類似度が閾値を超えている場合の処置を示している。ブロック４２は終了チェック処理である。
【００４２】
以下、図５（ｂ）のフローチャートについて詳細に説明する。  図５（ａ）と同様であるブロック３１からブロック３４に関する説明は割愛する。ブロック３９では各クラスの訓練文書集合と他の全てのクラスの実文書集合の間の類似度の算出を行う。ブロック４０及びブロック４１は、指定されたクラスの訓練文書集合と指定された他のクラスの実文書集合の間の類似度が閾値を超えている場合の処置を示している。クラスＡの訓練文書集合をΩAとクラスＢの実文書集合Ω'Bと間の類似度sim(ΩA,Ω'B) （第３の類似度）は式（１）及び（４）と同様に求めることができる。クラス対の指定は、最初の繰り返しでは予め指定されたクラスに基づいて、２回目以降はブロック４２からの指令により行う。ブロック４０及びブロック４１において、γを閾値としたとき、
【００４３】
【数１３】
2005158010.tif 000012
【００４４】
を満たす場合にはクラスＢに属する文書の話題がクラスＡに接近し、クラスＡ、Ｂ共クラスモデルは陳腐化していると判断される。ブロック４２は終了処理であり、ブロック３９、４０、４１の処置を全てのクラス対に対して行ったかどうかのチェックを行い、未処理のクラス対がなければ終了し、あれば次のクラス対を指定して次の処理をブロック３９に戻す。
なお、実施例２及び実施例３で用いたβ、γは話題内容のよく分かっている訓練文書集合を用いて予め実験的に決めておく必要がある。
【００４５】
以上述べたように本発明によれば、話題の接近するクラス対、及び、陳腐化を起こしたクラス対を不適格クラスとして容易に検出することができる。文書分類の研究用に多く用いられている文書コーパスReuters-21578に対する実験結果を示す。文書分類法としてはkNN法を採用している。図４は各クラス対の話題の接近の程度とエラー率の関係を示す図であり、各点が特定のクラス対に対応している。
【００４６】
また、横軸は訓練文書集合のクラス間類似度(siｍilarity)を百分率で示し、縦軸はテスト文書集合に対するクラス間エラー率(error rate)を百分率で示している。訓練文書集合とテスト文書集合はReuters-21578において指定されているもので、テスト文書集合は実文書集合に対応するものと見なされる。クラスＡ、Ｂのクラス間エラー率はクラスＡでありながらクラスＢに誤った文書数とクラスＢでありながらクラスＡに誤った文書数との和をクラスＡ、Ｂの文書数の和で除した値で与えられる。図４は訓練文書に対してクラス間類似度の高いクラス対、即ち、話題の接近するクラス対はテスト文書集合に対してエラー率が高いことを示している。従って、クラス間類似度が閾値より高いクラス対を検出して、クラスの定義の見直しやそれらのクラスを設定すること自体の再検討、訓練文書のラベル付けの妥当性の確認を行い、話題の接近するクラス対をなくすようにすれば文書分類システムの性能を向上させることができる。
【００４７】
図５は陳腐化したクラスを検出する例として、横軸は同じクラスの訓練文書集合とテスト文書集合の類似度(siｍilarity)を百分率で示し、縦軸はテスト文書集合に対する再現率(recall)を百分率で示し、それらの関係を示すものであり、各点がひとつのクラスに対応している。図５から分かるように再現率が低いクラスでは訓練文書集合とテスト文書集合の類似度が小さい。従って、訓練文書集合とテスト文書集合の類似度が小さいクラスを選択することにより陳腐化を起こしたクラスを効率的に見出すことができる。クラスモデルの更新は上記類似度の小さいクラスのみ行えばよいことになるので、全てのクラスのクラスモデルの更新を行う場合に比べて著しいコストの低減が期待できる。
【００４８】
なお、上記実施例は文書を例にとって説明したが、実施例で示した文書と同じ様に表現でき、かつ、同様の性質を有するパターンについても適用できる。すなわち、実施例で示した、文書をパターン、用語を構成要素、訓練文書を訓練パターン、文書セグメントをパターンセグメント、文書セグメントベクトルをパターンセグメントベクトル等のように置き換えれば、本願発明が同様に適用できる。
【図面の簡単な説明】
【００４９】
【図１】本願発明を実行する装置の構成図を示す図である。
【図２】本願発明のブロック図を示す図である。
【図３】与えられた訓練文書集合に対して、話題接近クラス対を検出する本発明の手順を示すフローチャートである。
【図４】文書集合、文書、文ベクトルの関係を示す図である。
【図５ａ】本願発明において、クラスモデルの陳腐化したクラスを検出する本発明の実施例２の手順を示すフローチャートである。
【図５ｂ】本願発明において、クラスモデルの陳腐化したクラスを検出する本発明の実施例３の手順を示すフローチャートである。
【図６】訓練文書集合のクラス間類似度（横軸）とテスト文書集合に対するクラス間エラー率（縦軸）の関係を示すグラフである。
【図７】同じクラスの訓練文書集合とテスト文書集合との間の類似度（横軸）とテスト文書集合に対する再現率（縦軸）の関係を示すグラフである。
【符号の説明】
【００５０】
１００：筐体
１１０：記憶装置
１２０：メインメモリー
１３０：出力装置
１４０：処理装置（ＣＰＵ）
１５０：操作部
１６０：入力
２１０：文書入力ブロック
２２０：文書前処理ブロック
２３０：文書情報処理ブロック
２４０：訓練文書情報格納ブロック
２５０：実文書情報格納ブロック
２６０：不適格文書クラス出力ブロック
【図１】
2005158010.tif 000016
【図２】
2005158010.tif 000017
【図３】
2005158010.tif 000018
【図４】
2005158010.tif 000019
【図５ａ】
2005158010.tif 000020
【図５ｂ】
2005158010.tif 000021
【図６】
2005158010.tif 000022
【図７】
2005158010.tif 000023