(57)【特許請求の範囲】
【請求項１】
連続的に与えられる入力文書を1つ以上のクラスに分類する文書分類装置であって、
前記入力文書を単語の集合に分割する単語分割手段と、
前記入力文書が属するクラスを基に、指数加重移動平均により各クラスの重要度を示す事前確率を求めるクラス事前確率推定手段と、
前記各クラスの事前確率に基づいて、前記入力文書に含まれる各単語の出現に関する単語出現情報を記憶する単語出現情報記憶手段と、
前記入力文書に含まれる各単語の各クラスにおける長期的な出現確率である単語長期出現確率を求める単語長期出現確率推定手段と、
前記単語出現情報記憶手段の前記単語出現情報を用いて前記入力文書に含まれる各単語の各クラスにおける短期的な出現確率である単語短期出現確率を求める単語短期出現確率推定手段と、
前記入力文書に含まれる各単語について、該単語の前記単語長期出現確率と前記単語短期出現確率を基に、該単語がトレンド単語であるか否かを判定するトレンド単語判定手段と、
前記トレンド単語判定手段の判定結果に基づいて、前記入力文書が各クラスに属する確率である事後確率を計算するクラス事後確率推定手段と、
前記入力文書を1つ以上のクラスに分類する文書分類手段と、
を有することを特徴とする文書分類装置。
【請求項２】
前記単語短期出現確率推定手段は、
前記入力文書に含まれる各単語について、各クラスにおける該単語の出現率に関する指数加重移動平均を前記単語短期出現確率とする、
請求項１記載の文書分類装置。
【請求項３】
前記トレンド単語判定手段は、
前記入力文書に含まれる各単語について、該単語の前記単語短期出現確率が、前記単語長期出現確率よりも統計的有意に大きいときに、該単語をトレンド単語と判定する、
請求項１記載の文書分類装置。
【請求項４】
前記クラス事後確率推定手段は、
前記入力文書に含まれる各単語について、該単語が前記トレンド単語である場合は前記単語短期出現確率を利用し、該単語が前記トレンド単語でない場合は前記単語長期出現確率を利用する、
請求項１記載の文書分類装置。
【請求項５】
連続的に与えられる入力文書を1つ以上のクラスに分類する文書分類方法であって、
単語分割手段が、前記入力文書を単語の集合に分割する単語分割ステップと、
事前確率推定手段が、前記入力文書が属するクラスを基に、指数加重移動平均により各クラスの出現確率を示す事前確率を求めるクラス事前確率推定ステップと、
単語出現情報格納手段が、前記各クラスの事前確率に基づいて、前記入力文書に含まれる各単語の出現に関する単語出現情報を単語出現情報記憶手段に記憶する単語出現情報格納ステップと、
単語長期出現確率推定手段が、前記入力文書に含まれる各単語の各クラスにおける長期的な出現確率である単語長期出現確率を求める単語長期出現確率推定ステップと、
単語短期出現確率推定手段が、前記単語出現情報記憶手段の前記単語出現情報を用いて前記入力文書に含まれる各単語の各クラスにおける短期的な出現確率である単語短期出現確率を求める単語短期出現確率推定ステップと、
トレンド単語判定手段が、前記入力文書に含まれる各単語について、該単語の前記単語長期出現確率と前記単語短期出現確率を基に、該単語がトレンド単語であるか否かを判定するトレンド単語判定ステップと、
クラス事後確率推定手段が、前記トレンド単語判定ステップの判定結果に基づいて、前記入力文書が各クラスに属する確率である事後確率を計算するクラス事後確率推定ステップと、
文書分類手段が、前記入力文書を1つ以上のクラスに分類する文書分類ステップと、
を有することを特徴とする文書分類方法。
【請求項６】
前記単語短期出現確率推定ステップにおいて、
前記入力文書に含まれる各単語について、各クラスにおける該単語の出現率に関する指数加重移動平均を前記単語短期出現確率とする、
請求項５記載の文書分類方法。
【請求項７】
前記トレンド単語判定ステップにおいて、
前記入力文書に含まれる各単語について、該単語の前記単語短期出現確率が、前記単語長期出現確率よりも統計的有意に大きいときに、該単語をトレンド単語と判定する、
請求項５記載の文書分類方法。
【請求項８】
前記クラス事後確率推定ステップにおいて、
前記入力文書に含まれる各単語について、該単語が前記トレンド単語である場合は前記単語短期出現確率を利用し、該単語が前記トレンド単語でない場合は前記単語長期出現確率を利用する、
請求項５記載の文書分類方法。
【請求項９】
コンピュータを、
請求項1乃至４のいずれか1項に記載の文書分類装置の各手段として機能させるための文書分類プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書分類装置及び方法及びプログラムに係り、特に、各クラスの出現分布や、各クラスに出現する単語の傾向が時間と共に強く変化する際に、長期的な単語の出現確率と、短期的な単語の出現確率を適切に使い分けて利用するもので、Twitter（登録商標）などの連続的に与えられる文書や、Q&Aコミュニティなど各クラスの出現分布が時間と共に大きく変化するメディアの文書について、高精度なクラス分類を実現するための文書分類装置及び方法及びプログラムに関する。
【背景技術】
【０００２】
文書分類学習アルゴリズムとして、多項モデルナイーブベイズ分類器は、逐次更新の容易さと高い分類性能から、広く利用されている（例えば、非特許文献1参照）。
【０００３】
ここで、学習・分類対象の文書の傾向が時間と共に大きく変化する際には、学習データに対して移動窓を適用し、最近のNサンプルの情報に絞って分類器を構築することが基本である（例えば、非特許文献2参照）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】A. McCallum, K. Nigam, "A Comparison of Event Models for Naive Bayes Text Classification", 1998.
【非特許文献２】G. Widmer and M. Kubat, "Learning in the Presence of Concept Drift and Hidden Contexts, 1996.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記非特許文献２に代表される技術では、Nサンプルの値を小さくすると変化に素早く対応出来るようになるが、小さくしすぎると十分な学習データが確保できなくなる。また、Nの値を大きくすると、学習対象が安定期においては高い分類性能を実現できるが、変化への適応は遅くなってしまう。
【０００６】
ここで、文書分類においては、単語ごとに時間的依存度は異なると考えられる。つまり、分類する時点によってクラスごとの単語出現確率が全く異なるような単語と、そうでない単語が存在するが、従来の移動窓の考え方では、全ての単語が同様に扱われてしまう問題がある。特にTwitter（登録商標）などのマイクロブログにおいては、数秒の間に出現する単語が大きく変わるような場合も多々存在するので、単語ごとに出現確率の推定が短期傾向に基づくべきか、長期傾向に基づくべきかを判断する技術が求められている。
【０００７】
上記のように、現在は、変化への適応の早さと、安定して高精度な分類を同時に実現する技術は存在しない。
【０００８】
本発明は、上記従来技術の問題点に鑑みて、単語ごとに変化傾向を推定することで、短い移動窓のメリットと、長い移動窓のメリットを単語レベルで同時に実現し、単語の出現傾向の変化に高速に追従可能で、かつ安定して高い分類性能を持つ文書分類装置及び方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明（請求項１）は、連続的に与えられる入力文書を1つ以上のクラスに分類する文書分類装置であって、
前記入力文書を単語の集合に分割する単語分割手段と、
前記入力文書が属するクラスを基に、指数加重移動平均により各クラスの出現確率を示す事前確率を求めるクラス事前確率推定手段と、
前記各クラスの事前確率に基づいて、前記入力文書に含まれる各単語の出現に関する単語出現情報を記憶する単語出現情報記憶手段と、
前記入力文書に含まれる各単語の各クラスにおける長期的な出現確率である単語長期出現確率を求める単語長期出現確率推定手段と、
前記単語出現情報記憶手段の前記単語出現情報を用いて前記入力文書に含まれる各単語の各クラスにおける短期的な出現確率である単語短期出現確率を求める単語短期出現確率推定手段と、
前記入力文書に含まれる各単語について、該単語の前記単語長期出現確率と前記単語短期出現確率を基に、該単語がトレンド単語であるか否かを判定するトレンド単語判定手段と、
前記トレンド単語判定手段の判定結果に基づいて、前記入力文書が各クラスに属する確率である事後確率を計算するクラス事後確率推定手段と、
前記入力文書を1つ以上のクラスに分類する文書分類手段と、を有する。
【００１０】
本発明（請求項２）は、前記単語短期出現確率推定手段において、
前記入力文書に含まれる各単語について、各クラスにおける該単語の出現率に関する指数加重移動平均を前記単語短期出現確率とする。
【００１１】
また、本発明（請求項３）は、前記トレンド単語判定手段において、
前記入力文書に含まれる各単語について、該単語の前記単語短期出現確率が、前記単語長期出現確率よりも統計的有意に大きいときに、該単語をトレンド単語と判定する。
【００１２】
また、本発明（請求項４）は、前記クラス事後確率推定手段において、
前記入力文書に含まれる各単語について、該単語が前記トレンド単語である場合は前記単語短期出現確率を利用し、該単語が前記トレンド単語でない場合は前記単語長期出現確率を利用する。
【発明の効果】
【００１３】
本発明によれば、入力文書に含まれる各単語が、分類時においてどのクラスと強い関連を示すかについて、単語の短期的な出現確率を推定し、この短期的な出現確率が長期的な出現確率と比較して有意に高い状況であれば、短期的な出現確率に基づいて分類を行うので、単語の出現傾向の変化に高速に追従可能で、かつ安定して高い分類性能が実現できる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施の形態における文書分類装置の構成図である。
【図２】本発明の一実施の形態における学習動作のフローチャートである。
【図３】本発明の一実施の形態における単語出現位置の記憶例である。
【図４】本発明の一実施の形態における分類動作のフローチャートである。
【図５】本発明の一実施の形態におけるトレンド単語判定例である。
【図６】本発明の一実施の形態における文書分類例（Q&Aコミュニティにおける新旧ＯＳの２クラス分類）である。
【発明を実施するための形態】
【００１５】
以下図面と共に、本発明の実施の形態を説明する。
【００１６】
図１は、本発明の一実施の形態における文書分類装置の構成を示す。
【００１７】
同図に示す文書分類装置は、単語分割部１とクラス事前確率推定部２と単語出現情報格納部３と単語出現情報記憶部４と単語長期出現確率推定部５と単語短期出現確率推定部６と単語トレンド状態判定部７とクラス事後確率推定部８と文書分類部９から構成され、入力文書の学習と分類を逐次的に行う。
【００１８】
最初に文書分類装置における学習動作（事前処理）について説明する。
【００１９】
図２は、本発明の一実施の形態における文書分類装置の学習動作フローチャートである。
【００２０】
ステップ１０１）単語分割部１は、入力文書を単語集合に分割する。このとき、形態素解析器を用いて名詞・動詞・形容詞の単語のみを抽出し前記単語集合とする。また、他品詞の単語を前記単語集合に加えてもよい。さらに、形態素解析を実施する代わりに、入力文書に含まれる全ての文字Nグラム（連続するN文字）を前記単語集合としても良い。
【００２１】
ステップ１０２）クラス事前確率推定部２は、入力文書が属するクラスをc'としたとき、メモリ（図示せず）の各クラスcの文書の出現確率である[0]事前確率p(c)を以下の様に更新する。
【００２２】
【数１】
0005398811.tif 000002
ここで、I(c=c')は、c=c'のとき1を、c≠c'の時に0を返す関数である。このとき、p(c)は最近のデータに強い重みを与えた指数加重移動平均による推定となるため、新しく与えられた文書dを分類するとき、最近出現した文書のうち、高頻度で出現するクラスに強い重みを与えた分類が可能となる。この推定手法によって、過去に大量に出現したが、現在ではほとんど出現しないクラス（例えば、Q&Aコミュニティにおける古いコンピュータOSに関する質問クラスなど）が分類に与える悪影響を低減できる。減衰定数λの値には0.01などを用いる。
【００２３】
ステップ１０３）単語出現情報格納部２は、クラスc'に属する入力文書に含まれる各単語wについて、クラスc'の文書を仮想的に全て連結したときの、単語の出現位置の集合である出現位置集合nc'(w)を単語出現情報記憶部３に記憶する。図３に、各単語の出現位置の記憶例を示す。また、文献１（P. Ferragina and J. Fischer, "Suffix arrays on words", In CPM, pp. 328-339, 2007.）にて公知のSuffix Arrays on Wordsを用いて記憶しても良い。
【００２４】
次に、文書分類装置における分類動作について説明する。
【００２５】
図４は、本発明の一実施の形態における文書分類装置の分類動作フローチャートである。
【００２６】
ステップ２０１）単語分割部１は、入力文書を単語集合に分割する。このとき、形態素解析器を用いて名詞・動詞・形容詞の単語のみを抽出し前記単語集合とする。また、他品詞の単語を前記単語集合に加えてもよい。さらに、形態素解析を実施する代わりに、入力文書に含まれる全ての文字Nグラム（連続するN文字）を前記単語集合としても良い。
【００２７】
ステップ２０２）単語長期出現確率推定部５は、入力文書に含まれる各単語wの各クラスcにおける長期出現確率pL(w|c)を以下の通り算出する。
【００２８】
【数２】
0005398811.tif 000003
ここで、fc(w)はこれまでに与えられた全てのクラスcの文書中での単語wの出現回数、Ncはこれまでに与えられた全てのクラスcの文書中における総延べ出現単語数、Vは予めメモリに格納されている、これまでに与えられた全ての文書中における出現単語種類数である。αはスムージングパラメータで、値としては0.001などを指定する。上記の様に、過去に与えられた大量のデータからクラスcにおける単語の出現確率の推定し、これを単語長期出現確率とすることで、大量のデータに基づいた確率推定が可能となる。
【００２９】
ステップ２０３）単語短期出現確率推定部５は、入力文書に含まれる各単語wの各クラスcにおける短期出現確率ps (w|c)を以下の通り算出する。
【００３０】
【数３】
0005398811.tif 000004
ここで、減衰定数γの値には0.01などを用いる。nc(w)は単語出現情報記憶部４から取得した出現位置集合である。上記の様に、最近出現した単語（式(3)の単語位置nが、Ncに近い）に大きな重みが与えられる指数移動加重平均を利用することで、短期的な単語の出現確率が推定できる。特に、新しく出現した単語や、急激に出現頻度が増えた単語について、単語長期出現確率は、真の出現確率よりも低い確率を見積もりがちであるが、上記単語短期出現確率推定では真の出現確率により近い確率を推定できる。
【００３１】
ステップ２０４）トレンド単語判定部６は、入力文書に含まれる各単語wが各クラスcにおいて、以下の条件を満たすときトレンド単語である（t(w)=1）と判定し、条件を満たさないとき、トレンド単語でない（t(w)=0）とする。
【００３２】
【数４】
0005398811.tif 000005
ここで、Aの値には3.0などが用いられる。 上記式は、統計的プロセス制御の一つであるEWMAチャート（文献２：Somerville SE, Montgomery DC, Runger GC: Filtering and smoothing methods for mixed particle count distributions. International Journal of Product Research 2002; 40(13):2991-3013.）を各単語の出現に適用したものに相当し、最近の単語の出現が、統計的に過去の単語の出現確率よりも有意に高い場合に上記式を満たす。図５にトレンド単語の検出例を示す。長期的な単語の出現確率であるpL(w|c)は過去の学習量が多いほど推定値に変化が生じにくくなるが、短期的な単語の出現確率であるpS(w|c)は過去の学習量には依存しないので、変化に対して推定値が敏感に変わり、分類時の状況に適合する確率推定が実現できる。
【００３３】
ステップ２０５）クラス事後確率推定部７は、上記のトレンド単語判定部６において、トレンド単語であれば単語短期出現確率ps(w|c)を、トレンド単語でなければ単語長期出現確率pL(w|c)を利用して入力文書ｄのクラスｃの確率(事後確率p(c|d)を求める。具体的には、入力文書dがクラスｃに属する確率である各クラス事後確率p(c|d)を、ベイズの定理に基づき、以下の式により算出する。
【００３４】
【数５】
0005398811.tif 000006
なお、p(c)はステップ１０２で求められメモリ（図示せず）に格納されている事前確率である。
【００３５】
ステップ２０６）文書分類部８は、各クラス事後確率p(c|d)の値が最大のクラスを出力する。また、p(c|d)の値が上位Nクラスを出力するとしてもよい。また、
【００３６】
【数６】
0005398811.tif 000007
の値が、閾値θ以上であるクラスを複数個出力する、としてもよい。
【００３７】
図６に文書分類例として、Q&Aコミュニティにおける古いオペレーティングシステム（OS）を扱う文書クラス0と新しいOSを扱う文書クラス1の文書分類の例を示す。
【００３８】
まず、全学習文書に関してはクラス0の方がクラス1よりも文書数が多く、全学習文書からクラス事前確率を計算すると、最近の入力文書にはほとんど出現しないクラス0に強いバイアスを与えてしまうが、本手法ではクラス事前確率を逐次的に指数加重移動平均により導出するので、最近の入力文書に多く現れるクラス1に強いバイアスを与えることができる。
【００３９】
続いて、図６の例では、「圧縮」という単語が、クラス1において高頻度で出現している。全学習文書においては、この単語はクラス0において出現率が高いが、最近の入力文書に絞って考えれば、この単語は入力文書がクラス1であることを示す重要な指標となる。本手法では、単語が各クラスにおけるトレンド単語であるか否かを判定して、単語の短期的な出現確率と長期的な出現確率を適切に切替えて使用するので、文書傾向の変化と、安定して高い分類精度を同時に実現することができる。
【００４０】
本発明は、どのような文書に対しても適用可能であるが、特に、Twitter（登録商標）などのリアルタイム性の高い文書や、Q&Aコミュニティの様に文書のクラス事前分布に時間的な影響が強い文書の分類に対して特に有効である。
【００４１】
また、本発明は、図１に示す文書分類装置の構成要素の動作をプログラムとして構築し、マイクロブログ文書分類装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【００４２】
また、構築されたプログラムをハードディスクやフレキシブルディスク、ＣＤ−ＲＯＭ等の可搬記憶媒体に格納し、コンピュータにインストールする、または、配布することが可能である。
【００４３】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
【符号の説明】
【００４４】
１  単語分割部
２  クラス事前確率推定部
３  単語出現情報記憶部
４  単語長期出現確率推定部
５  単語短期出現確率推定部
６  トレンド単語判定部
７  クラス事後確率推定部
８  文書分類部
【図１】
0005398811.tif 000008
【図２】
0005398811.tif 000009
【図３】
0005398811.tif 000010
【図４】
0005398811.tif 000011
【図５】
0005398811.tif 000012
【図６】
0005398811.tif 000013