(57)【要約】【課題】各カテゴリに対してキーワード等の指定を要さず、機械学習により分類ルールを学習することでテキスト文書を各カテゴリに分類し、分類結果が得られた理由がユーザに容易に理解可能である文書分類システムを提供する。【解決手段】各テキスト文書に対して言語処理を行って単語に分解する言語処理部１０と、ユーザからの指示に基づいて教師データとするテキスト文書を指定する手動分類部３０と、教師データに基づいて機械学習により単語毎に学習モデルを算出する学習部４０と、学習モデルと分類対象のテキスト文書に含まれる各単語に基づいて、分類対象のテキスト文書について、カテゴリ毎に分類スコアを算出し、分類スコアが最大となるカテゴリに分類対象のテキスト文書を分類する自動分類部５０と、各テキスト文書の各カテゴリへの分類結果、および各テキスト文書についてのカテゴリ毎の分類スコアをユーザに提示するインタフェース部６０とを有する。【選択図】図１
2011170786.tif 000002
【特許請求の範囲】
【請求項１】
テキスト文書群を取り込み、取り込んだ前記各テキスト文書を内容に応じて予めユーザが設定した複数の分類用のカテゴリに分類する文書分類システムであって、
前記各テキスト文書に対して言語処理を行って、前記各テキスト文書を単語に分解する言語処理部と、
前記ユーザからの指示に基づいて、前記各テキスト文書を前記各カテゴリに分類する際の学習モデルを得るための教師データとする前記テキスト文書を指定する手動分類部と、
前記教師データとして指定した前記テキスト文書に基づいて、機械学習により単語毎に前記学習モデルを算出する学習部と、
前記学習モデルと、分類対象の前記テキスト文書に含まれる各単語に基づいて、分類対象の前記テキスト文書について、前記カテゴリ毎に、分類対象の前記テキスト文書が前記カテゴリに分類されるべき尤度である分類スコアを算出し、前記分類スコアが最大となる前記カテゴリに分類対象の前記テキスト文書を分類する自動分類部と、
前記自動分類部による前記各テキスト文書の前記各カテゴリへの分類結果、および前記各テキスト文書についての前記カテゴリ毎の前記分類スコアを前記ユーザに提示するインタフェース部とを有することを特徴とする文書分類システム。
【請求項２】
請求項１に記載の文書分類システムにおいて、
前記自動分類部は、分類対象の前記テキストを前記分類スコアが最大となる前記カテゴリに分類する際に、前記分類スコアが上位の二つの前記カテゴリ間での前記分類スコアの差分値を優位度として算出し、前記優位度が所定の閾値以上の場合は前記分類スコアが最大となる前記カテゴリに分類し、前記優位度が前記閾値未満の場合は未分類とすることを特徴とする文書分類システム。
【請求項３】
請求項２に記載の文書分類システムにおいて、
前記インタフェース部は、前記各テキスト文書についての前記カテゴリ毎の前記分類スコアを前記ユーザに提示する際に、さらに、前記各テキスト文書の前記優位度についての、前記各テキスト文書に含まれる単語毎の内訳を前記ユーザに提示することを特徴とする文書分類システム。
【請求項４】
請求項１〜３のいずれか１項に記載の文書分類システムにおいて、
前記学習部は、前記教師データとして指定された前記テキスト文書に含まれる各単語について、前記各単語を含む前記テキスト文書がいずれの前記カテゴリに分類されるべきかを判定するための尤度を、前記教師データとして指定された前記テキスト文書に含まれる前記各単語の前記カテゴリ毎の出現状況に基づいて算出して、前記学習モデルとすることを特徴とする文書分類システム。
【請求項５】
請求項４に記載の文書分類システムにおいて、
前記学習部は、前記学習モデルを算出する際に、前記教師データとして指定された前記テキスト文書に含まれる各単語について、前記カテゴリ全体での累積での出現頻度が所定の基準より低いもの、および／または、前記カテゴリ間での出現頻度の偏りが所定の基準より小さいものを除外することを特徴とする文書分類システム。
【請求項６】
請求項４または５に記載の文書分類システムにおいて、
前記学習部は、前記学習モデルにおける、前記各単語を含む前記テキスト文書がいずれの前記カテゴリに分類されるべきかを判定するための尤度を、対象の前記カテゴリ以外の他の前記カテゴリに分類されるべき尤度として算出することを特徴とする文書分類システム。
【請求項７】
請求項１〜６のいずれか１項に記載の文書分類システムにおいて、
前記自動分類部は、分類対象の前記テキスト文書についての前記カテゴリ毎の前記分類スコアを算出する際に、分類対象の前記テキスト文書に含まれる各単語の属性に応じて重み付けを行って算出することを特徴とする文書分類システム。
【請求項８】
請求項７に記載の文書分類システムにおいて、
前記自動分類部は、分類対象の前記テキスト文書についての前記カテゴリ毎の前記分類スコアを算出する際に、分類対象の前記テキスト文書に含まれる各単語の品詞に応じて重み付けを行って算出することを特徴とする文書分類システム。
【請求項９】
請求項７または８に記載の文書分類システムにおいて、
前記自動分類部は、分類対象の前記テキスト文書についての前記カテゴリ毎の前記分類スコアを算出する際に、分類対象の前記テキスト文書に含まれる各単語の文中および／または分類対象の前記テキスト文書中における出現位置に応じて重み付けを行って算出することを特徴とする文書分類システム。
【請求項１０】
テキスト文書群を取り込み、取り込んだ前記各テキスト文書を内容に応じて予めユーザが設定した複数の分類用のカテゴリに分類する文書分類システムとしてコンピュータを機能させる文書分類プログラムであって、
前記各テキスト文書に対して言語処理を行って、前記各テキスト文書を単語に分解する言語処理部と、
前記ユーザからの指示に基づいて、前記各テキスト文書を前記各カテゴリに分類する際の学習モデルを得るための教師データとする前記テキスト文書を指定する手動分類部と、
前記教師データとして指定した前記テキスト文書に基づいて、機械学習により単語毎に前記学習モデルを算出する学習部と、
前記学習モデルと、分類対象の前記テキスト文書に含まれる各単語に基づいて、前記カテゴリ毎に、分類対象の前記テキスト文書が前記カテゴリに分類されるべき尤度である分類スコアを算出し、前記分類スコアが最大となる前記カテゴリに分類対象の前記テキスト文書を分類する自動分類部と、
前記自動分類部による前記各テキスト文書の前記各カテゴリへの分類結果、および前記各テキスト文書についての前記カテゴリ毎の前記分類スコアを前記ユーザに提示するインタフェース部とを有することを特徴とする文書分類プログラム。
【請求項１１】
コンピュータシステムにより、テキスト文書群を取り込み、取り込んだ前記各テキスト文書を内容に応じて予めユーザが設定した複数の分類用のカテゴリに分類する文書分類方法であって、
前記コンピュータシステムが、
前記テキスト文書群を取り込み、前記各テキスト文書に対して言語処理を行って、前記各テキスト文書を単語に分解する第１ステップと、
前記ユーザからの指示に基づいて、分類用の前記カテゴリを作成する第２ステップと、
前記ユーザからの指示に基づいて、前記各テキスト文書を前記各カテゴリに分類する際の学習モデルを得るための教師データとする前記テキスト文書を指定する第３ステップと、
前記教師データとして指定した前記テキスト文書に基づいて、機械学習により単語毎に前記学習モデルを算出する第４ステップと、
前記学習モデルと、分類対象の前記テキスト文書に含まれる各単語に基づいて、前記カテゴリ毎に、分類対象の前記テキスト文書が前記カテゴリに分類されるべき尤度である分類スコアを算出し、前記分類スコアが最大となる前記カテゴリに分類対象の前記テキスト文書を分類する第５ステップと、
前記自動分類部による前記各テキスト文書の前記各カテゴリへの分類結果、および前記各テキスト文書についての前記カテゴリ毎の前記分類スコアを前記ユーザに提示する第６ステップと、
前記ユーザに提示した前記分類結果および前記分類スコアの情報に基づく前記ユーザからの指示に基づいて、前記教師データとする前記テキスト文書の指定を補正する第７ステップとを実行し、
さらに前記第４ステップから前記第７ステップの処理を繰り返し実行することを特徴とする文書分類方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、言語処理技術に関し、特に、テキスト文書を内容に応じて分類する文書分類システムおよび文書分類プログラムならびに文書分類方法に適用して有効な技術に関するものである。
【背景技術】
【０００２】
例えば、顧客にサービスを提供する企業等では、コールセンターなどでオペレータ等が電話やメール等で顧客から受け付けた質問や相談、苦情等の内容をテキスト文書として記録しておき、分析のためにこれらを内容に応じて分類することがよく行われる。
【０００３】
この場合、一般的には例えば、分類用のカテゴリおよびカテゴリ毎のキーワード等を予め設定しておき、設定されたキーワードと、テキスト文書の内容もしくはテキスト文書に設定されたキーワードやタグ等とのマッチングによってテキスト文書を各カテゴリに分類するなどの手法がとられている。また、予めカテゴリやキーワード等を設定することなく、テキスト文書中の単語の出現頻度等に基づいてテキスト文書の特徴を算出し、類似する特徴を有する文書毎にクラスタリングする手法もとられている。
【０００４】
さらに、例えば、特開２００９−９８８０９号公報（特許文献１）には、顧客ニーズを含むＶＯＣ（Voice of the Customer）テキストと技術を含む技術テキストのみを用意するだけで、ＶＯＣテキストを学習データとして特徴ベクトルを作成し、各カテゴリ（ニーズの類目）の特徴パターンを生成し、類似の技術テキストに該当ニーズのラベルを付与することにより、ニーズ情報と技術情報を自動的にマッチングする技術文献分類システムが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−９８８０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述したような、分類用のカテゴリに予め設定されたキーワード等とテキスト文書の内容やテキスト文書に設定されたキーワード等に基づく分類では、分類用のカテゴリに対する事前のキーワード等の設定に工数を要し、また、分類の精度を向上させるためにはキーワード等の適切な設定に熟練を要する。また、テキスト文書をクラスタリングする手法では、分類結果のクラスタが所望のカテゴリ分けにマッチしたものになるとは限らず、また、分類結果のクラスタが得られた過程や理由がユーザにとって不明である場合が多く、ユーザによる分類結果の理解やそれに基づく補正・最適化などが困難な場合が多い。
【０００７】
一方、特許文献１に記載された技術では、分類用のカテゴリに予めキーワード等を設定することなく、各カテゴリに対して入力した学習用テキストについて求めた特徴ベクトルと、分類用テキストについて求めた特徴ベクトルとの類似度に基づいて、各カテゴリと分類用テキストをマッチングすることができる。しかしながら、特許文献１に記載された技術の場合も、マッチング結果が得られた過程や理由（「なぜこのテキストはこのカテゴリに分類されたのか？」など）は一般ユーザには不明もしくは理解が困難なものであり、ユーザによる分類結果の理解やそれに基づく分類結果の補正・最適化などは難しい。
【０００８】
そこで本発明の目的は、事前に設定した各カテゴリに対して、ユーザによる事前のキーワード等の指定を要さず、機械学習により分類ルールを学習することで半自動的にテキスト文書を各カテゴリに分類し、かつ分類結果が得られた理由がユーザに容易に理解可能である文書分類システムおよび文書分類プログラムならびに文書分類方法を提供することにある。
【０００９】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１０】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。
【００１１】
本発明の代表的な実施の形態による文書分類システムは、文書分類プログラムおよび文書分類方法にも適用することが可能であり、テキスト文書群を取り込み、取り込んだ前記各テキスト文書を内容に応じて予めユーザが設定した複数の分類用のカテゴリに分類する文書分類システムであって、以下の特徴を有するものである。
【００１２】
すなわち、文書分類システムは、前記各テキスト文書に対して言語処理を行って、前記各テキスト文書を単語に分解する言語処理部と、前記ユーザからの指示に基づいて、前記各テキスト文書を前記各カテゴリに分類する際の学習モデルを得るための教師データとする前記テキスト文書を指定する手動分類部と、前記教師データとして指定した前記テキスト文書に基づいて、機械学習により単語毎に前記学習モデルを算出する学習部とを有する。
【００１３】
さらに、前記学習モデルと、分類対象の前記テキスト文書に含まれる各単語に基づいて、分類対象の前記テキスト文書について、前記カテゴリ毎に、分類対象の前記テキスト文書が前記カテゴリに分類されるべき尤度である分類スコアを算出し、前記分類スコアが最大となる前記カテゴリに分類対象の前記テキスト文書を分類する自動分類部と、前記自動分類部による前記各テキスト文書の前記各カテゴリへの分類結果、および前記各テキスト文書についての前記カテゴリ毎の前記分類スコアを前記ユーザに提示するインタフェース部とを有することを特徴とするものである。
【発明の効果】
【００１４】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００１５】
本発明の代表的な実施の形態によれば、分類用の各カテゴリに対して教師データを指定し、教師データに基づいて分類ルールを学習することで、ユーザによる事前のキーワード等の指定に係る工数を要さず半自動的にテキスト文書を事前に設定した各カテゴリに分類することができる。
【００１６】
また、本発明の代表的な実施の形態によれば、分類結果とともに分類結果が得られた理由をユーザに提示することが可能であるため、対象のテキスト文書が対象のカテゴリに分類された理由がユーザに容易に理解可能であるとともに、これに基づいて教師データの指定をより適切なものに漸次更新して分類精度を向上させることが可能となる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施の形態１における文書分類システムの構成例の概要について示した図である。
【図２】本発明の実施の形態１におけるテキスト文書を各カテゴリに自動分類する際の処理の流れの例を示した図である。
【図３】本発明の実施の形態１におけるテキストの取り込み処理の際に行う言語処理の流れの例を示したフローチャートである。
【図４】本発明の実施の形態１におけるテキスト管理テーブルのデータ構成および具体的なデータの例について示した図である。
【図５】本発明の実施の形態１における単語管理テーブルのデータ構成および具体的なデータの例について示した図である。
【図６】本発明の実施の形態１におけるノードの作成処理の流れの例を示したフローチャートである。
【図７】本発明の実施の形態１におけるノードの階層構造の例について示した図である。
【図８】本発明の実施の形態１におけるノード管理テーブルのデータ構成および具体的なデータの例について示した図である。
【図９】本発明の実施の形態１における教師データの作成処理の際に行う手動分類処理の流れの例を示したフローチャートである。
【図１０】本発明の実施の形態１における教師データの学習処理の流れを示したフローチャートである。
【図１１】本発明の実施の形態１における学習対象の単語を足切りする処理の具体例を示した図である。
【図１２】本発明の実施の形態１における各単語の尤度係数を算出する処理の具体例を示した図である。
【図１３】本発明の実施の形態１における学習モデル管理テーブルのデータ構成および具体的なデータの例について示した図である。
【図１４】本発明の実施の形態１における自動分類処理の流れを示したフローチャートである。
【図１５】本発明の実施の形態１におけるテキスト文書についてカテゴリ毎に分類スコアを算出して分類する処理の具体例を示した図である。
【図１６】本発明の実施の形態１における自動分類処理によるテキスト文書の分類結果をユーザに提示する画面の例を示した図である。
【図１７】本発明の実施の形態２における自動分類処理の流れを示したフローチャートである。
【図１８】本発明の実施の形態２における各単語の重み付け値を算出する処理の具体例を示した図である。
【図１９】本発明の実施の形態２における単語管理テーブルのデータ構成および具体的なデータの例について示した図である。
【図２０】本発明の実施の形態２におけるテキスト文書についてカテゴリ毎に分類スコアを算出して分類する処理の具体例を示した図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１９】
＜実施の形態１＞
以下では本発明の実施の形態１である文書分類システムについて説明する。本発明の実施の形態１である文書分類システムは、テキスト文書を取り込み、これらを内容に応じて予めユーザが設定した分類用のカテゴリに自動分類する機能を有するコンピュータシステムである。この文書分類システムは、例えば、コールセンターにおける応対履歴（コールログ）などのテキスト文書を取り込み、キーワードやユーザの属性などの種々の条件により分類したり、トピックやキーワードを抽出したり、ユーザの属性や時系列等による因果関係を分析したり等、多様な分析を行うことによって蓄積されたテキスト文書を活用することを目的とするシステムの一部として実装することが可能である。
【００２０】
［システム構成］
図１は、本発明の実施の形態１である文書分類システムの構成例の概要について示した図である。文書分類システム１は、例えば、サーバやＰＣ（Personal Computer）等によって構成され、ソフトウェアプログラムによって実装された言語処理部１０、ノード管理部２０、手動分類部３０、学習部４０、自動分類部５０およびインタフェース部６０の各部と、データベースやファイルテーブル等からなるテキスト管理７１、単語管理７２、ノード管理７３、パラメータ管理７４および学習モデル管理７５の各テーブルを有する。
【００２１】
言語処理部１０は、後述するインタフェース部６０等を介して取り込んだ複数のテキスト文書に対して言語処理を行うことにより、各テキスト文書を助詞等を除いた単語に分解して品詞（名詞、動詞、形容詞、副詞等）を取得する機能を有する。取り込まれたテキスト文書および言語処理の結果の単語の情報は、それぞれ後述するテキスト管理７１、単語管理７２の各テーブルに格納される。
【００２２】
ノード管理部２０は、テキスト文書をカテゴリに分類して紐付けるための後述するノードの階層構造を管理する機能を有し、各カテゴリに自動分類されたテキスト文書が紐付けられる自動分類ノードを含む各種ノードを作成したり、ノードの内容を変更したりなどの処理を行うことができる。また、自動分類ノードに対する分類処理に係る各種パラメータの設定を行うこともできる。作成・変更したノードの情報およびパラメータの情報は、それぞれ後述するノード管理７３、パラメータ管理７４の各テーブルに格納される。
【００２３】
手動分類部３０は、ユーザからの指示に基づいて、テキスト文書を各ノードに分類して紐付ける機能や、テキスト文書についての未読／既読の状態を更新する機能を有する。ここでは、ユーザからの指示に基づいて、後述する各カテゴリの教師ノードにテキスト文書を紐付けることで、他のテキスト文書をカテゴリに自動分類する際の分類ルールを学習するための教師データとするテキスト文書を指定することができる。テキスト文書に対するこれらの処理の結果の情報は、テキスト管理７１のテーブルに格納される。
【００２４】
学習部４０は、手動分類部３０において教師データとして指定されたテキスト文書に基づいて、他のテキスト文書を対応する各カテゴリに自動分類するための分類ルール（学習モデル）を機械学習により取得する機能を有する。本実施の形態では、学習モデルは、各単語を含むテキスト文書がどのカテゴリに分類されるべきかを判定するための尤度であり、各カテゴリの教師データとして指定されたテキスト文書に含まれる単語の出現状況に基づいて単語毎に算出したものである。算出した学習モデルの情報は、後述する学習モデル管理７５のテーブルに格納される。
【００２５】
自動分類部５０は、学習部４０において算出された学習モデルと、分類対象のテキストに含まれる単語に基づいて、各テキスト文書をカテゴリに自動分類する機能を有する。分類結果の情報は、テキスト管理７１のテーブルに格納される。インタフェース部６０は、文書分類システム１における画面表示等のユーザインタフェースや、テキスト文書の取り込みなどの入出力機能を有する。画面等の表示については、図示していないが、例えば、文書分類システム１自体が備えるディスプレイ等に直接表示してもよいし、Ｗｅｂサーバプログラムを利用してクライアント端末上のＷｅｂブラウザを介して画面を表示するようにしてもよい。
【００２６】
［処理フロー（全体）］
図２は、上記のような構成を有する文書分類システム１により、テキスト文書を各カテゴリに自動分類する際の処理の流れの例を示した図である。まず、ユーザによる手動、もしくは他のシステム（例えばコールセンターシステム等）との連携により、インタフェース部６０を介して分類の対象となるテキスト文書（例えばコールログや、新聞記事・ニュース等）を文書分類システム１に取り込む（Ｓ１００）。このとき、言語処理部１０によって各テキスト文書を単語に分解する言語処理を行っておく。
【００２７】
次に、テキスト文書を各カテゴリに分類するためのノード（自動分類ノード）をノード管理部２０によって作成する（Ｓ２００）。なお、ステップＳ１００とＳ２００の処理順は上記の例に限らず、いずれを先に行ってもよい。次に、作成した各カテゴリにおける教師ノードに対して、ユーザからの指示に基づいて手動分類部３０によりテキスト文書を紐付けることで教師データを作成する（Ｓ３００）。
【００２８】
次に、学習部４０により、各カテゴリの教師データに基づいて学習処理を行うことで学習モデルを算出する（Ｓ４００）。その後、算出した学習モデルに基づいて他の各テキスト文書を各カテゴリに自動分類する（Ｓ５００）。自動分類した結果はインタフェース部６０を介してユーザに提示する（Ｓ６００）。
【００２９】
次に、ユーザは、分類結果を参照し、必要に応じて手動分類部３０を介して誤って分類されたテキスト文書を正しいカテゴリに分類し直して補正する（Ｓ７００）。すなわち、これらのテキスト文書を正しいカテゴリに対する新たな教師データとして紐付ける等により、教師データとして教師ノードに紐付けられたテキスト文書の内容を補正する。その後、ステップＳ４００に戻り、再度教師データの学習処理を行って学習モデルを更新し、ステップＳ５００の自動分類、ステップＳ６００の分類結果の提示、およびステップＳ７００の分類結果の補正処理を繰り返す。これにより、学習モデルの精度を漸次高め、自動分類の精度を向上させることができる。
【００３０】
［言語処理フロー］
図３は、図２のステップＳ１００のテキストの取り込み処理の際に行う言語処理の流れの例を示したフローチャートである。まず、言語処理部１０が分類対象の各テキスト文書を読み込んで、テキスト文書を形態素の列に分解して品詞を判別するいわゆる形態素解析を行う（Ｓ１０１）。次に、形態素解析の結果に基づいて、テキスト文書の構文を解析するいわゆる構文解析を行い（Ｓ１０２）、言語処理を終了する。なお、形態素解析、構文解析の各解析処理については自然言語処理における公知の技術やアルゴリズムを適宜利用することができ、一般的な形態素解析エンジンや構文解析エンジンを言語処理部１０に組み込んで用いることも可能である。
【００３１】
取り込まれたテキスト文書の情報は、テキスト管理７１のテーブルに格納される。図４は、テキスト管理７１のデータ構成および具体的なデータの例について示した図である。テキスト管理７１は、例えば、テキストＩＤ、テキスト原文、所属ノードＩＤ、未読フラグなどの各項目を有する。
【００３２】
テキストＩＤの項目は、文書分類システム１によって割り振られた各テキスト文書を一意に識別するＩＤを保持する。テキスト原文の項目は、各テキスト文書の内容自体を保持する。所属ノードＩＤの項目は、各テキスト文書が紐付けられたノードのＩＤを保持する。未読フラグの項目は、対象のテキスト文書が未読であるか否かを示すフラグ値を保持する。図４の例では“１”が未読、“０”が既読としている。
【００３３】
また、形態素解析および構文解析を行った結果の単語の情報は、単語管理７２のテーブルに格納される。図５は、単語管理７２のデータ構成および具体的なデータの例について示した図である。単語管理７２は、例えば、所属テキストＩＤ、単語、品詞、文番号、文中順序などの各項目を有する。
【００３４】
所属テキストＩＤの項目は、各単語が属するテキスト文書のテキストＩＤの値を保持する。単語および品詞の項目は、それぞれ、形態素解析・構文解析によりテキスト文書から分解された単語およびその品詞の情報を保持する。また、文番号および文中順序の項目は、それぞれ、対象の単語が属する文のテキスト文書中における順序を示す番号、および対象の単語の当該文中における順序を示す情報を保持する。テキスト文書中には複数の文が含まれる場合があり、これらの情報を参照することによって、テキスト文書中における対象の単語の位置を特定することができる。これらの情報も形態素解析・構文解析の結果から得ることができる。
【００３５】
［ノード作成処理フロー］
図６は、図２のステップＳ２００のノード（自動分類ノード）の作成処理の流れの例を示したフローチャートである。まず、インタフェース部６０を介したユーザからの指示により、ノード管理部２０が、作成対象の自動分類ノードにおける分類処理に係る各種パラメータ（Ｎ、Ｍ、Ｘ）の値を事前に設定する（Ｓ２０１）。ここで、Ｎ、Ｍは、後述する教師データの学習処理において、学習対象とする単語の足切りを行う際に使用する数値であり、Ｘは、後述する自動分類処理において、カテゴリにテキスト文書を分類する際に用いる閾値である。これらについては、デフォルト値を定義しておき、ユーザからの指定が特になければデフォルト値を用いるようにするのが望ましい。設定されたパラメータの値は自動分類ノード毎にパラメータ管理７４のテーブルに格納する。
【００３６】
次に、インタフェース部６０を介したユーザからの指示により、ノード管理部２０が、作成対象の自動分類ノードに係るノードの階層構造を作成もしくは変更し（Ｓ２０２）、ノード作成処理を終了する。図７は、ノードの階層構造の例について示した図である。ここでは、インタフェース部６０を介してユーザに提示される画面イメージ（の一部）によって示している。図７の例では、図示しない最上位のノード（テキスト文書全体が紐付けられる）の子ノードとして“評価”というタイトルが設定された自動分類ノードが定義されている。
【００３７】
さらに自動分類ノードの子ノードとして“満足”、“普通”、“不満”というタイトルが設定された各カテゴリノード、および“未分類データ”というタイトルの未分類ノードが定義されている。ここで、各カテゴリノードはテキスト文書を分類したいカテゴリ毎にユーザによって定義されたものであり、図７の例では３つのカテゴリノードが定義されているが任意の数のカテゴリノードを定義することができる。なお、未分類ノードはノード管理部２０が自動的に生成する。
【００３８】
さらに各カテゴリノードの子ノードとして各カテゴリの教師データが紐付けられる教師ノード、および自動分類されたテキスト文書（分類データ）が紐付けられる分類ノードがそれぞれ定義されている。これらのノードは、ノード管理部２０が、各カテゴリノードの子ノードとしてタイトルも含めて自動的に生成する。このように、本実施の形態では、ノードの階層構造の中で分類用のカテゴリを管理しているが、カテゴリの管理手法はこれに限らず、他の任意のデータ構造を用いることができる。
【００３９】
ユーザにより上記のようなノードの階層構造を作成するためのユーザインタフェースは特に限定しないが、例えば、ユーザが自動分類ノードのタイトル（図７では“評価”）と、カテゴリ（図７では“満足”、“普通”、“不満”）を指定することによって、ノード管理部２０が図７に示すような階層構造を自動的に作成するなど、簡易なインタフェースとするのが望ましい。なお、図６の例ではステップＳ２０１とステップＳ２０２の処理を順に行うものとしているが、処理順に制限はなく逆であってもよいし、自動分類ノードの作成とパラメータの設定を同一画面から一括して指定可能とし、同時に処理するようにしてもよい。
【００４０】
自動分類ノードの階層構造を作成した時点で、図２のステップＳ１００で取り込んだテキスト文書は全て初期状態として未分類ノードに自動的に紐付けられるものとする。また、ノードに紐付けられた各テキスト文書およびその内容はインタフェース部６０を介して自由に参照できるものとする。
【００４１】
作成された自動分類ノードおよびその階層構造の情報は、ノード管理７３のテーブルに格納される。図８は、ノード管理７３のデータ構成および具体的なデータの例について示した図である。ノード管理７３は、例えば、ノードＩＤ、ノード名、親ノードＩＤ、ノード種別、テキスト数などの各項目を有する。
【００４２】
ノードＩＤの項目は、ノード管理部２０によって割り振られた各ノードを一意に識別するＩＤを保持する。ノード名の項目は、ノード管理部２０もしくはユーザによって設定された各ノードのノード名（タイトル）の情報を保持する。親ノードＩＤの項目は、ノードの階層構造における親ノードのノードＩＤの情報を保持する。ノード種別の項目は、各ノードの種別（自動分類ノード、カテゴリノード、教師ノード、分類ノード、未分類ノード等）を示す情報を保持する。図８の例では文言によって指定しているが、各種別に対応するコード値によって指定してもよい。これら各項目の情報により、作成されたノードおよびその階層構造の情報を保持することができる。テキスト数の項目は、各ノードに紐付けられたテキスト文書の数の情報を保持する。
【００４３】
［手動分類処理フロー］
図９は、図２のステップＳ３００の教師データの作成処理の際に行う手動分類処理の流れの例を示したフローチャートである。まず、未分類ノード（もしくは各カテゴリの分類ノード）に紐付けられた各テキスト文書について、インタフェース部６０を介したユーザからの未読／既読の状態更新の指示に基づいて、手動分類部３０がテキスト管理７１の未読フラグの更新を行う（Ｓ３０１）。これにより、後述する自動分類処理において分類対象を未読のテキスト文書のみに限定することが可能となる。なお、未読のテキスト文書を既読にしたり、既読のテキスト文書を未読に戻したりは自由に行えるようにしておく。
【００４４】
次に、未分類ノード（もしくは各カテゴリの分類ノード）に紐付けられたテキスト文書から、インタフェース部６０を介したユーザからの指示に基づいて、各カテゴリについての教師データとなるテキスト文書を各カテゴリの教師ノードに紐付けし（Ｓ３０２）、手動分類処理を終了する。なお、対象のテキスト文書を教師ノードに紐付けて教師データとせずに、分類ノードに直接紐付けて手動で分類することも可能である。
【００４５】
上記処理は、例えば、図７に示したようなノードの階層構造が表示された画面上において対象のテキスト文書を所望の教師ノードにドラッグ＆ドロップすることで紐付けるなどの簡易なインタフェースとするのが望ましい。このとき、教師ノードに紐付けられたテキスト文書については、テキスト管理７１の所属ノードＩＤの値を更新し、また、ノード管理７３の各ノードのテキスト数の値も更新する。
【００４６】
教師データとして教師ノードに紐付けるテキスト文書の数が多いほど自動分類処理での精度を向上させることができるが、一方で、後述する教師データの学習処理の処理時間や、教師ノードにテキスト文書を紐付ける作業のコストが増加するため、状況に応じて適当な数のテキスト文書を教師データとして指定するようにする。また、図９の例ではステップＳ３０１とステップＳ３０２の処理を順に行うものとしているが、処理順に制限はなく、各テキスト文書について各処理を順不同で適宜行うことができる。
【００４７】
［学習処理フロー］
図１０は、図２のステップＳ４００の教師データの学習処理の流れを示したフローチャートである。ここでは、各カテゴリの教師データとして教師ノードに紐付けられたテキスト文書に含まれる単語に基づいて学習処理を行うことで学習モデルを算出するが、その際にテキスト文書に含まれる全ての単語を学習対象とするのではなく、学習対象の単語を足切りにより最適化することで学習処理の際の処理時間の低減やノイズの除去による精度の向上を可能とする。
【００４８】
まず、学習部４０により、出現頻度が少ない単語を足切りにより除外する（Ｓ４０１）。具体的には、単語管理７２およびテキスト管理７１、ノード管理７３を参照して、各カテゴリの教師ノードに紐付けられたテキスト文書中に出現する全単語を抽出し、各単語についての累積の出現頻度を算出して、出現頻度がＮ件に満たない単語は足切りにより除外する。なお、閾値とするＮの値は、図６のステップＳ２０１の処理により予めパラメータ管理７４に設定されているパラメータＮを参照する。
【００４９】
図１１は、学習対象の単語を足切りする処理の具体例を示した図である。図１１の上段の出現頻度の表では、"alpha"、"bravo"、"charlie"、"delta"、"echo"の各単語が、“満足”、“普通”、“不満”の各カテゴリの教師ノードに紐付けられたテキスト文書中に出現する全単語であることを示しており、各単語および全単語の累積での出現頻度（件数）がカテゴリ毎に集計されている。ここで、閾値とするパラメータＮが３（件）であるとすると、各カテゴリの合計の出現頻度が３件に満たない単語"delta"が足切りの対象となる。
【００５０】
図１０の処理フローにおいて、次に、学習部４０により、ステップＳ４０１の足切り処理後の単語について、各カテゴリの教師ノードでの出現頻度の偏りが小さい単語（すなわち、どのカテゴリにも均等に出現し、特定のカテゴリの特徴を表すものではない単語）を足切りにより除外する（Ｓ４０２）。具体的には、ステップＳ４０１の足切り処理後の単語について、単語管理７２およびテキスト管理７１、ノード管理７３を参照して、各カテゴリの教師ノードでの出現頻度の偏りの程度を示す偏り係数を算出し、偏り係数の上位Ｍ件の単語を残してそれ以下の単語を足切りにより除外する。なお、閾値とするＭの値は、図６のステップＳ２０１の処理により予めパラメータ管理７４に設定されているパラメータＭを参照する。
【００５１】
図１１の具体例における中段の出現割合の表では、ステップＳ４０１の足切り処理後の"alpha"、"bravo"、"charlie"、"echo"の各単語および全単語について、カテゴリ全体での出現頻度に対するカテゴリ毎の出現頻度の割合が集計されている。ここで、本実施の形態では、単語ｗについての偏り係数Ｋ（ｗ）を、例えば以下の式により算出する。
【００５２】
【数１】
2011170786.tif 000003
【００５３】
図１１には、例として、単語"alpha"についての偏り係数Ｋ（"alpha"）を算出した場合を示している。図１１の下段の表は、他の単語についても同様に偏り係数Ｋを数１に示した式に基づいて算出したものを示している。ここで、閾値とするパラメータＭが３（件）であるとすると、偏り係数Ｋが上位３位までの単語が学習対象となり、４位以下に該当する単語"alpha"が足切りの対象となる。
【００５４】
図１０の処理フローにおいて、次に、学習部４０により、ステップＳ４０１およびＳ４０２の足切り処理後の単語について、単語管理７２およびテキスト管理７１、ノード管理７３を参照して、単語毎に各カテゴリに対する尤度係数を算出し（Ｓ４０３）、学習処理を終了する。ここでの尤度係数は、後述する自動分類処理において、各単語を含むテキスト文書がどのカテゴリに分類されるべきかの分類スコアを算出するために用いられる値である。
【００５５】
一般的に、テキスト文書を複数のカテゴリに分類するアルゴリズムとしては、いわゆるNaive Bayes（単純ベイズ法、以下では「ＮＢ」と記載する場合がある）もしくはその改良であるComplement Naive Bayes（以下では「ＣＮＢ」と記載する場合がある）が用いられる。ＮＢでは、教師データに基づいて、対象のテキスト文書が対象のカテゴリに紐付けられる確率をカテゴリ毎に算出し、当該確率の最も高いカテゴリに分類して紐付ける。一方、ＣＮＢでは、対象のテキスト文書が対象のカテゴリ以外の他のカテゴリに紐付けられる確率、すなわち、対象のカテゴリに紐付けられない確率をカテゴリ毎に算出し、当該確率の最も低いカテゴリに分類して紐付ける。
【００５６】
本実施の形態では、教師データとなるテキスト文書の数の各カテゴリ間での偏りの影響を受けにくく、多カテゴリでの分類で有効であるＣＮＢを採用して自動分類を行うものとするが、当然ながら他の分類手法を用いてもよい。本実施の形態ではＣＮＢを採用することから、上述した学習モデルとしての各単語の尤度係数は、対象の単語が対象のカテゴリ以外のカテゴリで出現するときの尤度を算出することになる。
【００５７】
図１２は、各単語の尤度係数を算出する処理の具体例を示した図である。図１２の上段の出現頻度の表では、ステップＳ４０１およびＳ４０２の足切り処理後の"bravo"、"charlie"、"echo"の各単語および全単語についての、各カテゴリの教師ノードに紐付けられたテキスト文書中の累積での出現頻度（件数）がカテゴリ毎に集計されている。
【００５８】
ここで、本実施の形態では、単語ｗについてのカテゴリＣに対するＣＮＢに基づく尤度係数、すなわち、単語ｗがカテゴリＣに紐付けられない確率Ｐ（ｗ｜Ｃ〜）を、例えば以下の式により算出する。
【００５９】
【数２】
2011170786.tif 000004
【００６０】
ここで、ゼロ頻度補正係数Ｚは、カテゴリＣの教師ノードに紐付けられたテキスト文書において単語ｗの出現頻度ｗ（Ｃ）がゼロであった場合にも適切な係数が算出可能となるよう補正する係数であり、例えば文書分類システム１にて予めＺ＝０．５などの値を設定しておく。
【００６１】
図１２には、例として、単語"bravo"についてのカテゴリ“満足”に対する尤度係数Ｐ（"bravo"｜“満足”〜）を算出した場合を示している。図１２の下段の表は、他の単語についても同様に尤度係数Ｐを数２に示した式に基づいてカテゴリ毎に算出したものを示している。算出した尤度係数Ｐは、学習モデルとして学習モデル管理７５のテーブルに単語毎・カテゴリ毎に格納される。図１３は、学習モデル管理７５のデータ構成および具体的なデータの例について示した図である。
【００６２】
学習モデル管理７５は、例えば、ノードＩＤ、単語、品詞、尤度係数などの各項目を有する。ノードＩＤおよび単語の項目は、対象の単語が含まれるテキスト文書が紐付けられているノード（教師ノード）のノードＩＤの情報および対象の単語の情報を保持する。これらの項目により尤度係数の算出対象である単語およびカテゴリ（教師ノード）を特定することができる。品詞の項目は、対象の単語について形態素解析・構文解析により得られた品詞の情報を保持する。これは図５に示した単語管理７２の品詞の情報と同じである。尤度係数の項目は、対象の単語についてその属するカテゴリに対して算出された尤度係数の値を学習モデルとして保持する。なお、尤度係数の値については、後述する自動分類処理における計算の便宜のため、対数化した値を保持するようにしてもよい。
【００６３】
［自動分類処理フロー］
図１４は、図２のステップＳ５００の自動分類処理の流れを示したフローチャートである。ここでは、インタフェース部６０を介したユーザからの自動分類実行の指示をトリガとして、分類対象の各テキスト文書について、自動分類部５０が、テキストに含まれる単語と学習モデル管理７５に保持する学習データ（尤度係数）に基づいて、ＣＮＢにより分類すべきカテゴリを判定し、対象のカテゴリの分類ノードにテキスト文書を紐付ける。
【００６４】
まず、ユーザから指定された分類対象とするテキスト文書についての指定内容を判定する（Ｓ５０１）。ここでは、未分類ノード（もしくは各カテゴリの分類ノード）に紐付けられた分類対象のテキスト文書のうち、未読のテキスト文書（図４に示したテキスト管理７１で未読フラグが立っているもの）のみを対象とするか、全てのテキスト文書を対象とするかをユーザが予めもしくは自動分類実行の指示の際に指定可能とする。このユーザからの指定内容に応じて分類対象のテキスト文書を選択する（Ｓ５０２、Ｓ５０３）。
【００６５】
次に、テキスト管理７１内の分類対象として選択された各テキスト文書について処理を行うループ処理を開始する。ループ処理では、まず、対象のテキスト文書について、単語管理７２、ノード管理７３の情報、および学習モデル管理７５の情報を参照して、テキスト文書に含まれる単語、および学習データ（各単語についての尤度係数Ｐ）に基づいて、ＣＮＢにより各カテゴリに対する分類スコアを算出する（Ｓ５０４）。ここでの分類スコアは、対象のテキスト文書が対象のカテゴリに分類されるべき尤度に該当する。次に、ステップＳ５０４で算出したカテゴリ毎の分類スコアについて、上位の２つのカテゴリ間の差分値から優位度を算出し、さらに、各単語について、上位の２つのカテゴリ間での尤度係数の差分に基づいて単語毎優位度を算出する（Ｓ５０５）。
【００６６】
図１５は、テキスト文書についてカテゴリ毎に分類スコアを算出して分類する処理の具体例を示した図である。図１５の上段左には、分類対象のテキスト文書の例と、当該テキスト文書に対して言語処理部１０にて言語処理を行った結果の単語管理７２に保持されたデータの例を示している。また、上段右には、当該テキスト文書を分類するための学習データの内容を示している。学習データとしては、教師データとして“満足”、“普通”、“不満”の各カテゴリの教師ノードに紐付けられたテキスト文書のそれぞれの件数と、これらの教師データから図１０に示した学習処理により算出され、学習モデル管理７５に格納された学習モデル（尤度係数）の情報を用いる。学習モデルとして採用する単語は、図１０に示した学習処理における足切り処理の結果、"bravo"、"charlie"、"echo"の３つの単語となっている。
【００６７】
ここで、本実施の形態では、分類対象のテキスト文書についてのカテゴリＣに対する分類スコアＳ（Ｃ）、すなわち、対象のテキスト文書がカテゴリＣに分類されるべき尤度を、例えば以下の式により算出する。
【００６８】
【数３】
2011170786.tif 000005
【００６９】
ここでは、桁あふれに対応するため、対数化した値の加減算によって分類スコアＳ（Ｃ）を算出するようにしている。数３に示した式では、各単語ｗの尤度係数Ｐ（ｗ｜Ｃ〜）が、単語ｗがカテゴリＣに紐付けられない確率を示していることから、各単語ｗのＰ（ｗ｜Ｃ〜）の値が小さいほどＳ（Ｃ）の値は大きくなる。
【００７０】
図１５の中段には、例として、カテゴリ“満足”に対する分類スコアＳ（“満足”）を算出した場合を示している。ここでは、対象テキストに含まれる単語のうち、"foxtrot"については学習モデルとして採用する単語に含まれていないため計算上は無視し、学習モデルとして採用する単語に含まれる"bravo"、"charlie"、"echo"についての尤度係数Ｐのみを使用する。図１５の下段の分類スコアの表は、他のカテゴリ（“普通”、“不満”）についても同様に分類スコアＳを数３に示した式に基づいて算出したものを示している。
【００７１】
ここで、分類スコアＳが上位の２つのカテゴリは“満足”と“不満”である。本実施の形態では、これらの分類スコアＳの差分値を優位度Ｑとして算出する。すなわち、優位度Ｑはカテゴリ“満足”とカテゴリ“不満”の分類スコアＳの差分値である１．１７５３７である。
【００７２】
また、分類スコアＳの算出に用いたテキスト文書中の各単語"bravo"、"charlie"、"echo"、"charlie"、"echo"について、単語毎優位度Ｒを例えば以下の式により算出する。
【００７３】
【数４】
2011170786.tif 000006
【００７４】
単語毎優位度Ｒは、優位度Ｑの値を大きくするための単語毎の貢献の程度（優位度Ｑの内訳）を示すものであり、値が大きいほど優位度Ｑの値を大きくするのに貢献した単語であることを示す。また、単語毎優位度Ｒが正の値となるときは、当該単語は分類スコアＳが最上位のカテゴリにおいて優位性があり、負の値となるときは分類スコアが第２位のカテゴリにおいて優位性があることを示す。図１５の下段の単語毎優位度の表は、分類スコアＳの算出に用いたテキスト文書中の各単語"bravo"、"charlie"、"echo"、"charlie"、"echo"について、単語毎優位度Ｒの値を数４に示した式に基づいて算出したものを示している。
【００７５】
図１４の処理フローにおいて、次に、ステップＳ５０５で算出した優位度Ｑの値が閾値Ｘ以上であるか否かを判定する（Ｓ５０６）。なお、閾値Ｘの値は、図６のステップＳ２０１の処理により予めパラメータ管理７４に設定されているパラメータＸを参照する。優位度Ｑが閾値Ｘ以上である場合は、ステップＳ５０４で算出した分類スコアＳが最上位のカテゴリの分類ノードに対象のテキスト文書を分類して紐付ける（Ｓ５０７）。一方、ステップＳ５０６において、優位度Ｑが閾値Ｘ未満である場合は、明確な分類ができないものとして未分類ノードにテキスト文書を紐付ける（Ｓ５０８）。
【００７６】
図１５の具体例では、優位度Ｑは１．１７５３７である。ここで、閾値とするパラメータＸが１．０であるとすると、優位度Ｑは１．０以上であるため、対象のテキスト文書は、分類スコアＳが最上位のカテゴリである“満足”に分類されることになる。なお、ステップＳ５０７およびＳ５０８では、テキスト文書を対象のノードに紐付けた結果に基づいてテキスト管理７１の所属ノードＩＤの値を更新し、また、ノード管理７３の各ノードのテキスト数の値も更新する。ステップＳ５０７もしくはステップＳ５０８の後、次のテキスト文書の処理に移り、分類対象の全てのテキスト文書について処理が終了した場合は自動分類処理を終了する。
【００７７】
自動分類処理によって各カテゴリの分類ノード、もしくは未分類ノードに分類されて紐付けられたテキスト文書の情報は、インタフェース部６０を介してユーザに提示される。このとき、例えば、カテゴリ毎のテキスト文書をリスト形式で表示したり、件数を表形式やグラフ等で表示したりしてもよい。さらに、ユーザがノードに紐付けられた任意のテキスト文書を選択することで、テキスト文書の内容に加えて、対象のテキスト文書におけるカテゴリ毎の分類スコアＳの値や、テキスト文書に含まれる各単語の単語毎優位度Ｒを単語毎に合算した値を表形式やグラフ等によりユーザに提示するようにしてもよい。
【００７８】
図１６は、自動分類処理によるテキスト文書の分類結果をユーザに提示する画面の例を示した図である。画面の（１）の領域にはノードの階層構造が示されており、各ノードのタイトルの末尾に自動分類処理の結果紐付けられたテキスト文書の件数が表示されている。ここで、カテゴリ“満足”の分類データのノード（“［満足］分類データ”）をユーザが選択した状態が（２）〜（５）の領域に示されている。
【００７９】
（２）の領域には、カテゴリ“満足”の分類データのノードに分類されて紐付けられたテキスト文書のリストが表示されている。リストは例えば各テキスト文書の優位度Ｑの値の順に表示する。また、各テキスト文書の未読／既読の状態も合わせて表示する。このリストにおいてユーザが特定のテキスト文書を選択した状態が（３）〜（５）の領域に示されている。
【００８０】
（３）の領域には、選択されたテキスト文書の属性（例えば入力された日付や入力者の属性など）が表示されている。また、（４）の領域には、選択されたテキスト文書の全内容が表示されている。また、（５）の領域には、選択されたテキスト文書におけるカテゴリ毎の分類スコアＳの値を示したグラフと、選択されたテキスト文書に含まれる各単語の単語毎優位度Ｒを示した表が表示されている。
【００８１】
これらの情報を参照することにより、ユーザは、テキスト文書の分類状況や、対象のテキスト文書がどのような理由（分類スコアＳや優位度Ｑ、単語毎優位度Ｒ等の計算結果）に基づいて対象のカテゴリに分類されたのか等を把握することができる。また、これに基づいて、誤った分類がされたテキスト文書を容易に特定し、（２）の領域のリストから（１）の領域のノードにドラッグ＆ドロップする等の処理によって、正しいカテゴリの分類ノードに紐付けを補正することができる。
【００８２】
また、同様に、新たに教師データとして教師ノードに紐付けるテキスト文書を追加したり、既に教師データとして教師ノードに紐付けられているテキスト文書を分類ノードに紐付けし直して教師データから除外したりすることによって教師データを補正し、再度図２のステップＳ４００以降の処理を繰り返すことで、効率的に学習モデルの精度を高め、自動分類の精度を漸次向上させることができる。
【００８３】
以上に説明したように、本実施の形態の文書分類システム１によれば、ユーザが設定した分類用の各カテゴリに対して教師データとなるテキスト文書を指定し、教師データに基づいて分類ルールとなる学習モデルを算出し、当該学習モデルに基づいてテキスト文書を自動分類することで、ユーザによる事前のキーワード等の指定に係る工数を要さず半自動的にテキスト文書を対象のカテゴリに分類することができる。
【００８４】
また、分類結果とともに分類結果が得られた理由としてカテゴリ毎の分類スコアＳや優位度Ｑ、単語毎優位度Ｒ等をユーザに提示することが可能であるため、対象のテキスト文書が対象のカテゴリに分類された理由がユーザに容易に理解可能であるとともに、これに基づいて教師データの指定をより適切なものに更新して分類精度を漸次向上させることが可能となる。
【００８５】
＜実施の形態２＞
以下では本発明の実施の形態２である文書分類システムについて説明する。本発明の実施の形態２である文書分類システムは、上述した実施の形態１の文書分類システム１の機能に加えて、さらに自動分類処理における分類精度を向上させる機能を有するものである。
【００８６】
図１７は  本実施の形態における、図２のステップＳ５００の自動分類処理の流れを示したフローチャートである。図１７に示した処理フローでは、実施の形態１の図１４に示した処理フローに対して、分類スコアＳを算出するステップＳ５０４の前に、単語毎の重み付け値を算出するステップＳ５０９が追加されている。
【００８７】
本実施の形態では、ステップＳ５０４において分類対象のテキスト文書のカテゴリ毎の分類スコアＳを算出する際に、テキスト文書内の各単語について学習モデル管理７５に保持する各単語の尤度係数Ｐを単に適用するのではなく、ステップＳ５０９においてテキスト文書内の各単語の属性に応じて種々の重み付けを行って重み付け値を算出し、この重み付け値を利用して分類スコアＳを算出する。これにより、テキスト文書における要点を表す可能性の高い単語に重み付けすることができ、よりテキスト文書の内容に即した分類スコアＳを算出することが可能となる。
【００８８】
例えば、分類対象のテキスト文書群が新聞記事やニュースなどの場合は、テキスト文書の前半部分が要点となる可能性が高く、また、テキスト文書中の名詞がカテゴリへの分類に与える影響が大きい傾向があるため、テキスト文書の前半の文に出現する単語、特に名詞に対して重み付けすることにより、テキスト文書の分類の精度を向上させることができると考えられる。一方、コールログなどの報告文書の場合は、テキスト文書の中盤から後半に要点が出現する傾向が高いため、中盤から後半にかけての文に出現する単語に重み付けする。また、例えば、分類するカテゴリが商品のイメージや評判などに基づくものである場合は、形容詞に重み付けすることにより分類の精度を向上させることができると考えられる。
【００８９】
このように、テキスト文書の特性や、分類するカテゴリの特性に基づいて、テキスト文書中の単語毎にその属性（品詞や出現場所など）に応じて重み付けするための重み付け値を算出する。なお、このような重み付けを行うためには、テキスト文書群が、要点の出現場所などの特性において上述したような一定の規則性を有していることが前提となる。
【００９０】
図１７のステップＳ５０９では、単語管理７２を参照して、分類対象のテキスト文書中に出現する単語ｗについての重み付け値Ｗｔ（ｗ）を、単語ｗの属性（本実施の形態では品詞、および単語の出現場所の属性として単語管理７２における文番号および文中順序の項目）毎の重み付け係数Ｌによって、例えば以下の式により算出する。
【００９１】
【数５】
2011170786.tif 000007
【００９２】
なお、属性による重み付け係数Ｌの種類は数５に示したものに限らず、他の属性による重み付け係数を用いてもよいし、数５に示したものの一部を用いないとすることもできる。
【００９３】
ここで、品詞による重み付け係数は、例えば、品詞毎に、重要度の高い品詞が大きい値となるように予め設定しておく。例えば、重み付けしない場合には１を設定し、重要度が高い品詞の場合には１より大きい値を設定する。また、１より小さい値（負数であってもよい）を設定することにより、当該品詞が含まれるテキスト文書の分類スコアを下げるようにしてもよい。
【００９４】
また、単語の出現場所の属性に基づく重み付け係数としての、文番号（対象の単語が含まれる文のテキスト文書中における位置）による重み付け係数、および文中順序（対象の単語の文中における位置）による重み付け係数は、単語管理７２の情報を用いて、それぞれ例えば以下の式により算出する。
【００９５】
【数６】
2011170786.tif 000008
【００９６】
【数７】
2011170786.tif 000009
【００９７】
ここで、文番号重み付け設定値ＬＳおよび文中順序重み付け設定値ＬＷは、対象の単語のテキスト全体における出現場所および文中での出現場所がテキスト文書の要点と関連する程度（重要度）に応じて、重要度が高い場合に大きい値となるよう予め設定しておく。例えば、重み付けしない場合には零を設定し、出現場所が後方であるほど重要度が高い場合には正数を設定する。また、出現場所が前方であるほど重要度が高い場合は負数を設定する。ＬＳ、ＬＷはともに指数のパラメータであるため、大きい値を設定するほど指数関数的に重み付け係数および重み付け値に傾斜がかかることになる。
【００９８】
上述した品詞による重み付け係数や、文番号・文中順序の重み付け設定値（ＬＳ、ＬＷ）など、予め設定しておくパラメータ値については、分類対象のテキスト文書群についての分類の正解データがある場合には、これらを用いていわゆる最尤推定法などにより最適値を算出することができる。なお、これらの値は、例えばパラメータ管理７４に他のパラメータと合わせて保持しておくことができる。
【００９９】
図１８は、各単語の重み付け値を算出する処理の具体例を示した図である。図１８には、
分類対象のテキスト文書の例、およびこれに対して言語処理部１０にて言語処理を行った結果の単語管理７２に保持されたデータの例を示している。ここで、予め設定された値として、品詞による重み付け係数が、名詞：１．２、動詞：１．０、形容詞：０．８、副詞：０．５であり、文番号・文中順序の重み付け設定値がそれぞれＬＳ＝１．２、ＬＷ＝０．５であった場合に、テキスト文書中で最初に出現する単語"bravo"についての重み付け値Ｗｔ（"bravo"）を数５〜数７に示した式に基づいて算出した場合を示している。
【０１００】
対象のテキスト文書中の他の単語についても同様に数５〜数７に示した式に基づいて重み付け値を算出する。本実施の形態では、算出したこれらの値を単語管理７２に保持する。図１９は、本実施の形態における単語管理７２のデータ構成および具体的なデータの例について示した図である。単語管理７２は、実施の形態１の図５に示した各項目に加えて重み付け値の項目を有し、各単語について算出された重み付け値Ｗｔを保持する。
【０１０１】
図２０は、本実施の形態における、テキスト文書についてカテゴリ毎に分類スコアを算出して分類する処理の具体例を示した図である。図２０の上段左には、分類対象のテキスト文書の例と、当該テキスト文書に対して言語処理部１０にて言語処理を行った結果の単語管理７２に保持されたデータの例を示している。また、上段右には、当該テキスト文書を分類するための学習データの内容を示している。学習データの内容は、実施の形態１の図１５に示した例と同様である。
【０１０２】
ここで、本実施の形態では、図１７のステップＳ５０４において、分類対象のテキスト文書についてのカテゴリＣに対する分類スコアＳ（Ｃ）を、実施の形態１の数３に示した式において、尤度係数Ｐに対して重み付け係数Ｗｔによって重み付けすることで、例えば以下の式により算出する。
【０１０３】
【数８】
2011170786.tif 000010
【０１０４】
ここでは、尤度係数Ｐを対数化していることから、尤度係数Ｐを重み付け係数Ｗｔによってべき乗することで重み付けしている。
【０１０５】
図２０の中段には、例として、カテゴリ“満足”に対する分類スコアＳ（“満足”）を算出した場合を示している。ここでは、実施の形態１の図１５と同様に、対象テキストに含まれる単語のうち、"foxtrot"については学習モデルとして採用する単語に含まれていないため計算上は無視し、学習モデルとして採用する単語に含まれる"bravo"、"charlie"、"echo"についての尤度係数Ｐおよび重み付け値Ｗｔのみを使用する。図２０の下段の分類スコアの表は、他のカテゴリ（“普通”、“不満”）についても同様に分類スコアＳを数８に示した式に基づいて算出したものを示している。
【０１０６】
ここで、分類スコアＳが上位の２つのカテゴリは、実施の形態１の図１５と同様に“満足”と“不満”であり、優位度Ｑはカテゴリ“満足”とカテゴリ“不満”の分類スコアＳの差分値である０．９９４４である。ここで、閾値とするパラメータＸが１．０であるとすると、実施の形態１の場合と異なり、優位度Ｑは１．０未満となるため、対象のテキスト文書は明確な分類ができないものとして未分類ノードに紐付けられる。このように、重み付けを行って分類の精度を向上させることで分類先のカテゴリの判定が変わる場合がある（未分類となるテキスト文書が生じる場合もある）。
【０１０７】
また、図１７のステップＳ５０５において、実施の形態１と同様に、分類スコアＳの算出に用いたテキスト文書中の各単語"bravo"、"charlie"、"echo"、"charlie"、"echo"について、単語毎優位度Ｒを例えば以下の式により算出する。
【０１０８】
【数９】
2011170786.tif 000011
【０１０９】
本実施の形態では、実施の形態１と異なり、各単語の品詞や出現場所などの属性によって重み付け値Ｗｔが異なるため、同一単語であっても単語毎優位度Ｒは異なる値となる場合がある。
【０１１０】
上記の自動分類処理によって各カテゴリの分類ノード、もしくは未分類ノードに分類されて紐付けられたテキスト文書の情報をインタフェース部６０を介してユーザに提示する際に、ユーザがノードに紐付けられた任意のテキスト文書を選択することで、対象のテキスト文書におけるカテゴリ毎の分類スコアＳの値や、テキスト文書に含まれる各単語の単語毎優位度Ｒの値、もしくはこれを単語毎に合算したものを表形式やグラフ等によりユーザに提示するようにしてもよい。
【０１１１】
以上に説明したように、本実施の形態の文書分類システム２によれば、自動分類処理において分類対象のテキスト文書のカテゴリ毎の分類スコアＳを算出する際に、テキスト文書内の各単語について学習モデル管理７５に保持する各単語の尤度係数Ｐを単に適用するのではなく、テキスト文書内の各単語の属性に応じて種々の重み付けを行って分類スコアＳを算出する。これにより、テキスト文書における要点を表す可能性の高い単語に重み付けすることができ、よりテキスト文書の内容に即した分類スコアＳを算出することが可能となるため、自動分類の精度をより向上させることができる。
【０１１２】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、実施の形態１、２において示した各種データベースやテーブル等の構成およびデータ項目、表示画面、分類スコアＳ等を算出するための数１〜数９に示した各種数式等はあくまでも一例であり、上述したものに限らず、実装上の制約や必要とする精度・処理速度その他の要件に応じて適宜変更することが可能である。
【産業上の利用可能性】
【０１１３】
本発明は、テキスト文書を内容に応じて分類する文書分類システムおよび文書分類プログラムならびに文書分類方法に利用可能である。
【符号の説明】
【０１１４】
１…文書分類システム、
１０…言語処理部、２０…ノード管理部、３０…手動分類部、４０…学習部、５０…自動分類部、６０…インタフェース部、
７１…テキスト管理、７２…単語管理、７３…ノード管理、７４…パラメータ管理、７５…学習モデル管理。 
【図１】
2011170786.tif 000012
【図２】
2011170786.tif 000013
【図３】
2011170786.tif 000014
【図６】
2011170786.tif 000015
【図９】
2011170786.tif 000016
【図１０】
2011170786.tif 000017
【図１４】
2011170786.tif 000018
【図１７】
2011170786.tif 000019
【図４】
2011170786.tif 000020
【図５】
2011170786.tif 000021
【図７】
2011170786.tif 000022
【図８】
2011170786.tif 000023
【図１１】
2011170786.tif 000024
【図１２】
2011170786.tif 000025
【図１３】
2011170786.tif 000026
【図１５】
2011170786.tif 000027
【図１６】
2011170786.tif 000028
【図１８】
2011170786.tif 000029
【図１９】
2011170786.tif 000030
【図２０】
2011170786.tif 000031