(57)【要約】      （修正有）【課題】特定の文書種別の分類精度を向上させる。【解決手段】文書種別ごとに文書を分類するために複数の文書種別からなる学習用文書を機械学習する文書分類装置において、所定の文書種別に属する学習用文書について、複数の特徴語に基づいて汎用分類器を用いて機械学習する第１の手段と、学習結果をデータベースに格納する第２の手段と、データベースに格納された複数の文書種別の各々に属する複数の学習用文書についての学習結果を利用者に提示する第３の手段と、複数の文書種別のうち分類精度を向上させる特定の文書種別の指定と、特定の文書種別における１又は複数の特徴語に対する重み付けの指定又は特定の文書種別に対する重み付けの指定とを入力される第４の手段と、重み付けを適用した上で、指定された特定の文書種別に属する学習用文書について少なくとも第１〜第３の手段を再度実行する手段と、を備える。【選択図】図３
2014238626.tif 000002
【特許請求の範囲】
【請求項１】
文書種別ごとに文書を分類するために複数の文書種別からなる学習用文書を機械学習する文書分類装置において、
所定の文書種別に属する学習用文書について、複数の特徴語に基づいて汎用分類器を用いて機械学習する第１の手段と、
前記汎用分類器を用いた学習結果をデータベースに格納する第２の手段と、
前記データベースに格納された複数の文書種別の各々に属する複数の学習用文書についての学習結果を利用者に提示する第３の手段と、
学習結果を提示された複数の文書種別のうち分類精度を向上させる特定の文書種別の指定と、指定された特定の文書種別における１又は複数の特徴語に対する重み付けの指定又は指定された特定の文書種別に対する重み付けの指定とを入力される第４の手段と、
指定された重み付けを適用した上で、指定された特定の文書種別に属する学習用文書について少なくとも前記第１〜第３の手段を再度実行する手段と、を備えたことを特徴とする
文書分類装置。
【請求項２】
前記汎用分類器がNaive Bayes分類器である場合、
前記第１の手段を初回に実行するときは、学習用文書について複数の特徴語の各々の秘密度を算出し、算出した各特徴語の秘密度の和である学習用文書の秘密度を算出し、
前記第１の手段を再度実行するときは、指定された特定の文書種別に属する学習用文書について複数の特徴語の各々の秘密度を算出する際に、指定された１又は複数の特徴語に対する重み付けを初回実行時の秘密度に対して掛け合わせることにより秘密度を算出し、算出した各特徴語の秘密度の和である学習用文書の秘密度を算出することを特徴とする請求項１に記載の文書分類装置。
【請求項３】
前記汎用分類器がSVM分類器である場合、
前記第１の手段を初回に実行するときは、学習用文書について複数の特徴語に基づいて特徴ベクトルとしてのバイナリベクトルを生成し、生成したバイナリベクトルに基づいた判定関数のパラメータ値を算出し、
前記第１の手段を再度実行するときは、指定された特定の文書種別に属する学習用文書についてバイナリベクトルを生成する際に、指定された１又は複数の特徴語に対する重み付けに相当する数だけ、初回実行時のバイナリベクトルの該当する成分を繰り返し追加してバイナリベクトルを生成し、生成したバイナリベクトルに基づいた判定関数のパラメータ値を算出することを特徴とする請求項１に記載の文書分類装置。
【請求項４】
前記汎用分類器がSVM分類器である場合、
前記第１の手段を初回に実行するときは、学習用文書について複数の特徴語に基づいて特徴ベクトルとしての頻度ベクトルを生成し、生成した頻度ベクトルに基づいた判定関数のパラメータ値を算出し、
前記第１の手段を再度実行するときは、指定された特定の文書種別に属する学習用文書について頻度ベクトルを生成する際に、指定された１又は複数の特徴語に対する重み付けを初回実行時のバイナリベクトルの該当する成分に掛け合わせて頻度ベクトルを生成し、生成した頻度ベクトルに基づいた判定関数のパラメータ値を算出することを特徴とする請求項１に記載の文書分類装置。
【請求項５】
前記汎用分類器がSVM分類器である場合、
前記第１の手段を初回に実行するときは、学習用文書について複数の特徴語に基づいて特徴ベクトルを生成し、生成した特徴ベクトルに基づいた判定関数のパラメータ値を算出し、
前記第１の手段を再度実行するときは、生成した特徴ベクトルに基づいた判定関数のパラメータ値を算出する際に、指定された特定の文書種別に対する重み付けを当該特定の文書種別の初回実行時のマージンパラメータに掛け合わせたマージンパラメータを用いることを特徴とする請求項１に記載の文書分類装置。
【請求項６】
前記第３の手段は、所定の文書種別に属する複数の学習用文書についての学習結果の平均値及び分散を算出し、算出した平均値及び分散に基づいてグラフで表現するとともに予測分類精度を算出して利用者に提示することを特徴とする請求項１〜５のいずれかに記載の文書分類装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械学習を使った文書分類装置に関し、特に、特定の文書種別を対象として分類精度を向上させる機能を備えた文書分類装置に関する。
【背景技術】
【０００２】
従来、機械学習を使って文書を秘密文書と非秘密文書とに分類するための技術として、Support Vector Machine (SVM)やNaive Bayesの分類器が知られている。
【０００３】
SVM分類器の学習段階では、学習用の秘密文書と非秘密文書のテキスト中から名詞や動詞語幹などの特徴語が含まれるか否かを0/1ないしは特徴語が全語句に占める比を多次元の特徴ベクトルとして表現し、秘密文書の特徴ベクトル群と非秘密文書の特徴ベクトル群をなるべく両方の群からの距離が大きくなるような超平面を探し出し、この境界面で秘密文書と非秘密文書とを区切る。
【０００４】
図１は、SVM分類器による分類の様子を示した図である。黒丸が秘密文書を示す特徴ベクトルであり、黒四角が非秘密文書を示す特徴ベクトルである。秘密文書の特徴ベクトルと非秘密文書の特徴ベクトルを分離できる符号１２０と１２１で示す２つの超平面は、この例では２次元平面の超平面なので直線となる。二つの特徴ベクトル群の距離が一番大きくなる符号１２０の超平面を境界面とする。処理上は、秘密文書のベクトルxｉについては数１の、非秘密文書のベクトルxｉについては数２の制約のもとで数３が最小になるようなベクトルｚと実数ｂと正実数ξｉを求める最適化問題を解く。
【０００５】
【数１】
2014238626.tif 000003
【数２】
2014238626.tif 000004
【数３】
2014238626.tif 000005
【０００６】
ここではz・xは二つのベクトルzとxの内積であり、Cはマージンパラメータと言われる学習器外から与えられる設定値である。詳細は、安部重夫著の「サポートベクトルマシン入門」の2.2節にある。ここではカーネル関数を使ったSVM分類器には触れないが、基本概念は変わらない。分類段階では、対象文書が超平面のどちら側にあるかで分類する。具体的には対象文書を表現したベクトルの超平面からの距離を計算する判定関数の正負で分類する。処理上は先に算出したベクトルzと実数bと対象文書を表すxを使ってz・x＋bの正負で決める。
【０００７】
学習段階で秘密文書と非秘密文書の特徴ベクトル群の距離が大きいほど秘密文書と非秘密文書との違いが大きい。すなわち、各学習用文書の判定関数値の絶対値が大きいほど分類しやすく、分類精度が高いと期待できる。また分類の段階でも対象文書のベクトルの境界である超平面からの距離、すなわち判定関数の絶対値が大きいほど判定の確信度は上がると考えられる。
【０００８】
２つのクラスに分類するNaive Bayes分類器の一つの方法を以下に示す。学習段階ではSVM分類器の時と同様にして特徴語を取り出し、その特徴語wごとに秘密度である数４を算出し、秘密文書と非秘密文書のそれぞれ文書の秘密度である数５の値を算出して、分類する閾値を決める。ここでlnは対数であり、Σは特徴語w全体での和である。例えば、秘密文書の秘密度の最小値と非秘密文書の秘密度の最大値の平均を閾値として採用する。ここで、数６は特徴語wが秘密文書に含まれる確率であり、数７は特徴語wが非秘密文書に含まれる確率である。
【０００９】
【数４】
2014238626.tif 000006
【数５】
2014238626.tif 000007
【数６】
2014238626.tif 000008
【数７】
2014238626.tif 000009
【００１０】
特徴語wが非秘密文書より秘密文書により多く含まれるのであればwの秘密度である数４は正の値を取り、数６が大きいほど大きな正の値を取る。文書の秘密度である数５は、各文書に含まれる特徴語wの秘密度を示す数４の和である。秘密文書であれば、含まれる特徴語wの秘密度を示す数４が正であることが多く、非秘密文書であれば負であることが多い。その結果、文書の秘密度を示す数５は、秘密文書が非秘密文書より大きくなる。分類時には、対象文書の秘密度を示す数５の値を算出し、閾値より大きければ秘密文書と判定し、小さければ非秘密文書と判定する。
【００１１】
学習段階においては、秘密文書と非秘密文書の秘密度の差が大きいほど秘密文書と非秘密文書との違いが大きく、分類しやすく、分類精度が高いと期待できる。また、分類段階においても、対象文書の秘密度の値と閾値の差が大きいほど判定の確信度は上がると考えられる。
【００１２】
非特許文献１は、SVM分類器を使った文書分類において、特徴語の選択方法を工夫することで分類精度が向上する手法を示している。
【００１３】
非特許文献２は、Naive Bayes分類器を用いた文書分類において、特徴語の秘密度を計算する際のスムージングを改良して分類精度が向上する手法を示している。
【００１４】
非特許文献３は、電子メールというテキストの分類技術であり、電子メールがスパムか否かSVM分類器を使って分類している。本文献では、単純に単語を使った特徴ベクトルではなく、URLやメールアドレス、伏字などスパムによく現れる文字列を特定の単語とすることで、スパムの判定精度が向上することを示している。
【００１５】
特許文献1は、Naive Bayes分類器を使った分類において、特徴語の独立を前提とせず、着目する特徴語の出現確率が多くても他の一つの特徴語に依存するという仮定をおいて、文書の分類精度が向上する手法を示している。
【先行技術文献】
【特許文献】
【００１６】
【特許文献１】特開２０１２−８８８５３号公報
【非特許文献】
【００１７】
【非特許文献１】平博順, 春野雅彦, Support Vector Machineによるテキスト分類における属性選択, 情報処理学会論文誌, Vol. 41, No. 4, pp.1113-1123, 2000
【非特許文献２】正田備也, 高須淳宏, 安達淳, 混合ディリクレ分布を用いた文書分類の精度について, 情報処理学会論文誌, vol. 48, No. SIG11, pp.14-26, 2007
【非特許文献３】伊加田恵志, spamメールフィルタ, 沖テクニカルレビュー, Vol.73, No.1, 2006年1月
【発明の概要】
【発明が解決しようとする課題】
【００１８】
秘密文書と非秘密文書の分類においては、従来までの文書分類と異なり、秘密文書という一つのカテゴリの中にいくつかのカテゴリ（以下では「文書種別」と呼ぶ）が含まれている。さらにこの文書種別は一つの企業においても部署ごとに異なっている。例えば、ある部署では契約書と企画書を秘密文書として扱い、別の部署では企画書と設計資料を秘密文書として扱っている。また分類精度に関しても、契約書と企画書と販売計画書という複数の秘密文書の中で、例えば企画書よりは販売計画書がより重要であり、高精度で分類し判定したいという要求がある。
【００１９】
しかしながら、上述した先行技術文献の手法では、秘密文書と非秘密文書と二つのカテゴリに分ける際の全体的な分類精度の向上にはつながるが、秘密文書の中の特定の文書種別の分類精度を向上させたい場合の手法は示されていない。
【００２０】
そこで本発明は、例えば秘密文書という１つのカテゴリに含まれる異なる種別の文書の中で、特定の文書種別を指定して分類精度を向上させることを可能とする装置を提供することを目的とする。
【課題を解決するための手段】
【００２１】
本発明による特定の文書種別に対する文書分類装置は、機械学習の学習段階において以下の構成を備えたものである。
【００２２】
第１の構成として、学習用文書、好適例では秘密文書の学習用文書に含まれる各文書種別の予測分類精度を以下のようなステップを通じて利用者に提示する。
(1)  秘密文書と非秘密文書に分類するNaive Bayes又はSVMの汎用分類器を従来と同様の学習手順で構成する。
(2)  上記(1)の汎用分類器を使って秘密文書の各文書種別に属する学習用文書の秘密度又は判定関数のパラメータ値を学習結果として算出し、文書種別ごとに複数の学習用文書から取得した学習結果の平均値と分散を算出する。
(3)  学習結果について、学習用文書の種別ごとに、正規分布を仮定して閾値内に収まる文書比率を利用者に提示する。即ち、Naive Bayes分類器では秘密度が閾値以上、SVM分類器では判定関数値が0.0以上の比率を示す。例えば、契約書の平均秘密度が7.0、分散4.0、閾値が1.0なら、予測分類精度は99.9%とする。
(4)  Naive Bayes又はSVMの汎用分類器により分類された文書種別ごとの秘密度又は判定関数のパラメータ値をグラフ化して示す。図２は、そのグラフの一例である。図２中、実線は契約書、点線は企画書、破線は販売計画書であり、この３つの文書種別はいずれも秘密文書である。鎖線は非秘密文書である。
【００２３】
第１の構成で示された予測分類精度やグラフを提示された利用者は、分類精度を向上させたい文書種別を指定する。例えば、図２のグラフから、実線の契約書と鎖線の非秘密文書は相当離れているのでほぼ間違いなく分類できるが、点線の企画書と非秘密文書はぎりぎりであり、破線の販売計画書と鎖線の非秘密文書は重なりが相当あるので100%の分類精度を期待するのは無理と判断する。この場合、点線の企画書の分類の精度を向上させれば、余裕をもって分類することが可能となるので、利用者は、分類精度を向上させる対象の文書種別として企画書を選択する。
【００２４】
第２の構成として、Naive Bayes分類器を用いた場合、以下のようなステップを通じて利用者が指定した文書種別の分類精度を向上させる。
(1)  非秘密文書と比較して、指定した文書種別に多く含まれる特徴語を探し出す。
(2)  上記(1)の特徴語に関して重み付けを指定し、指定した重み付けを元の秘密度に掛け合わせて秘密度を算出する。
【００２５】
第３の構成として、SVM分類器を用いた場合、以下のようなステップを通じて利用者が指定した文書種別の分類精度を向上させる。
(1)  非秘密文書と比較して、指定した文書種別に多く含まれる特徴語を探し出す。
(2)  上記(1)の特徴語に関して重み付けを指定し、指定した重み付けの数だけ元の特徴ベクトルの成分を繰り返し追加して特徴ベクトルを生成する。
【００２６】
第４の構成として、SVM分類器を用いた場合、以下のようなステップを通じて利用者が指定した文書種別の分類精度を向上させる。
(1)  非秘密文書と比較して、指定した文書種別に多く含まれる特徴語を探し出す。
(2)  上記(1)の特徴語に関して重み付けを指定し、指定した重み付けを元の特徴ベクトルの該当する成分に掛け合わせて特徴ベクトルを生成する。
【００２７】
第５の構成として、SVM分類器を用いた場合、以下のようなステップを通じて利用者が指定した文書種別の分類精度を向上させる。
(1)  指定した文書種別の各学習用文書において、SVM分類器の判定関数のパラメータ値を決める際のマージンパラメータに重み付けして用いる。すなわち、最小化する数８を数９に置換え、指定した文書種別以外の学習用文書に対応するiについては、Cｉ＝Cと従来のままとし、指定した文書種別の学習用文書に対応するiについては、Cｉ＝CW（W＞1）などとして、他のCｉよりは大きくして最適化問題を解く。
【００２８】
【数８】
2014238626.tif 000010
【数９】
2014238626.tif 000011
【００２９】
以上の構成を備えた本発明の好適な態様は、文書種別ごとに文書を分類するために複数の文書種別からなる学習用文書を機械学習する文書分類装置において、
所定の文書種別に属する学習用文書について、複数の特徴語に基づいて汎用分類器を用いて機械学習する第１の手段と、
前記汎用分類器を用いた学習結果をデータベースに格納する第２の手段と、
前記データベースに格納された複数の文書種別の各々に属する複数の学習用文書についての学習結果を利用者に提示する第３の手段と、
学習結果を提示された複数の文書種別のうち分類精度を向上させる特定の文書種別の指定と、指定された特定の文書種別における１又は複数の特徴語に対する重み付けの指定又は指定された特定の文書種別に対する重み付けの指定とを入力される第４の手段と、
指定された重み付けを適用した上で、指定された特定の文書種別に属する学習用文書について少なくとも前記第１〜第３の手段を再度実行する手段と、を備えたことを特徴とする。
【００３０】
上記態様において、前記汎用分類器がNaive Bayes分類器である場合、
前記第１の手段を初回に実行するときは、学習用文書について複数の特徴語の各々の秘密度を算出し、算出した各特徴語の秘密度の和である学習用文書の秘密度を算出し、
前記第１の手段を再度実行するときは、指定された特定の文書種別に属する学習用文書について複数の特徴語の各々の秘密度を算出する際に、指定された１又は複数の特徴語に対する重み付けを初回実行時の秘密度に対して掛け合わせることにより秘密度を算出し、算出した各特徴語の秘密度の和である学習用文書の秘密度を算出することが、好適である。
【００３１】
上記態様において、前記汎用分類器がSVM分類器である場合、
前記第１の手段を初回に実行するときは、学習用文書について複数の特徴語に基づいて特徴ベクトルとしてのバイナリベクトルを生成し、生成したバイナリベクトルに基づいた判定関数のパラメータ値を算出し、
前記第１の手段を再度実行するときは、指定された特定の文書種別に属する学習用文書についてバイナリベクトルを生成する際に、指定された１又は複数の特徴語に対する重み付けに相当する数だけ、初回実行時のバイナリベクトルの該当する成分を繰り返し追加してバイナリベクトルを生成し、生成したバイナリベクトルに基づいた判定関数のパラメータ値を算出することが、好適である。
【００３２】
上記態様において、前記汎用分類器がSVM分類器である場合、
前記第１の手段を初回に実行するときは、学習用文書について複数の特徴語に基づいて特徴ベクトルとしての頻度ベクトルを生成し、生成した頻度ベクトルに基づいた判定関数のパラメータ値を算出し、
前記第１の手段を再度実行するときは、指定された特定の文書種別に属する学習用文書について頻度ベクトルを生成する際に、指定された１又は複数の特徴語に対する重み付けを初回実行時のバイナリベクトルの該当する成分に掛け合わせて頻度ベクトルを生成し、生成した頻度ベクトルに基づいた判定関数のパラメータ値を算出することが、好適である。
【００３３】
上記態様において、前記汎用分類器がSVM分類器である場合、
前記第１の手段を初回に実行するときは、学習用文書について複数の特徴語に基づいて特徴ベクトルを生成し、生成した特徴ベクトルに基づいた判定関数のパラメータ値を算出し、
前記第１の手段を再度実行するときは、生成した特徴ベクトルに基づいた判定関数のパラメータ値を算出する際に、指定された特定の文書種別に対する重み付けを当該特定の文書種別の初回実行時のマージンパラメータに掛け合わせたマージンパラメータを用いることが、好適である。
【００３４】
上記態様において、前記第３の手段は、所定の文書種別に属する複数の学習用文書についての学習結果の平均値及び分散を算出し、算出した平均値及び分散に基づいてグラフで表現するとともに予測分類精度を算出して利用者に提示することが、好適である。
【発明の効果】
【００３５】
本発明によれば、文書を秘密文書と非秘密文書に分類する第１の手段によって秘密文書に含まれる複数の種別の各々の分類精度の予測値を得ることができる。続いて、指定された特定の文書種別に対して第２から第５の手段のいずれかを適用することによって、特定の文書種別の分類精度を向上させることができる。
【図面の簡単な説明】
【００３６】
【図１】図１は、SVM分類器による分類の様子すなわち境界とマージンを示した図である。
【図２】図２は、SVM又はNaive Bayesの分類器により分類された文書種別ごとの判定関数値又は秘密度を示したグラフの一例である。
【図３】図３は、本発明を適用した、特定の文書種別に対する文書分類装置の全体構成の一例を概略的に示した図である。
【図４】図４は、機械学習がNaive Bayes分類器による場合の学習ＤＢの構成例を示す図である。
【図５】図５は、機械学習がSVM分類器による場合の学習ＤＢの構成例を示す図である。
【図６】図６は、本発明の文書分類装置における全体の処理の流れを示す図である。
【図７】図７は、Naive Bayes分類器の場合の再学習法を示した流れ図である。
【図８】図８は、SVM分類器の場合のバイナリベクトルを用いた再学習法を示した流れ図である。
【図９】図９は、SVM分類器の場合の頻度ベクトルを用いた再学習法を示した流れ図である。
【図１０】図１０は、SVM分類器の場合のマージンパラメータを変えた再学習法を示した流れ図である。
【発明を実施するための形態】
【００３７】
以下、一構成例を示した図面を参照して本発明の実施の形態を説明する。
本発明による文書分類装置は、文書分類装置が実際に対象とする文書の分類を行うに先立って実行する機械学習の学習段階において特徴的な構成を備えたものである。
【００３８】
（１）第１の実施形態
図３は、本発明を適用した文書分類装置の全体構成の一例を概略的に示した図である。文書分類装置は、コンピュータに導入されたプログラムをＣＰＵがメモリに読み込み実行することにより実現される装置である。プログラムは、以下の各構成要素の機能を実現するものである。
【００３９】
学習器301は、学習エンジン302、学習データベース（ＤＢ）303、分類エンジン304及び予測エンジン305の各機能を有する。
【００４０】
学習エンジン302は、機械学習を行う機能である。学習エンジン302は、学習用文書306を入力として、公知のSVM分類器又はNaive Bayes分類器（ここでは、これらをまとめて「汎用分類器」と称する）を用いて機械学習し、学習結果を学習ＤＢ 303に格納する。また、利用者が指定した文書種別の分類精度を向上させる場合には、学習用文書に加えて文書種別と重み付けの指定が入力となる。入力手段は、一般的なキーボードやマウス等の他に、記憶媒体や通信手段を介したものでもよい。
【００４１】
学習ＤＢ303は、学習エンジン302の学習結果であるパラメータを格納しているデータベースである。
分類エンジン304は、学習ＤＢ 303に格納されたパラメータを取得して、学習用文書306の秘密度又は判定関数のパラメータ値を計算し、予測エンジン305に渡す。
予測エンジン305は、分類エンジン304から取得した複数の学習用文書306の秘密度又は判定関数のパラメータ値に基づいて文書種別ごとの秘密度又は判定関数のパラメータ値を集計し、グラフ化し、予測分類精度を計算する。なお、図示しないが、グラフ及び予測分類精度を利用者に提示するために表示等を行う出力手段も備えている。
【００４２】
学習用文書306は、秘密文書と非秘密文書からなる。秘密文書には、複数の文書種別の各々に属する学習用文書が含まれている。秘密文書の各学習用文書にはその属する文書種別が付与されていると仮定する。
【００４３】
図４は、Naive Bayes分類器を用いた機械学習の場合の学習ＤＢ 303の構成例を示す図である。表形式をしており、「特徴語」、「秘密度」及び「重み付け」の三つの属性からなる。各行は１つの特徴語に対応する。
【００４４】
「特徴語」は、文書中に含まれる分類に使われる語句である。特徴語の選択方法は非特許文献１を含めていくつかの手法があるが、本発明の範囲外であり詳細は略する。単純な方法として、名詞や動詞語幹を用いる方法がある。
【００４５】
「秘密度」とは、数１１で表される特徴語の秘密度であり、各特徴語の学習用秘密文書に含まれる確率である数１２と、非秘密文書に含まれる確率である数１３とから算出される。特徴語によっては、学習用の秘密文書又は非秘密文書に現れず、数１２又は数１３が０になり、数１１が計算できないことが想定される。しかし、このような場合であっても、各種スムージング手法が非特許文献２等に提案されており、本発明の範囲外でもあるので、説明は略する。
【００４６】
【数１１】
2014238626.tif 000012
【数１２】
2014238626.tif 000013
【数１３】
2014238626.tif 000014
【００４７】
「重み付け」は、本発明における文書の秘密度を算出する際に、従来の文書の秘密度である数１４に対して付加する重み付けCｗである。本発明では、文書の秘密度は数１５により算出する。重み付けの初期値は１．０である。Cｗ＝１．０とすると、本発明における文書の秘密度である数１５と、従来の文書の秘密度である数１４は同じになる。
【００４８】
【数１４】
2014238626.tif 000015
【数１５】
2014238626.tif 000016
【００４９】
図５は、SVM分類器を用いた機械学習の場合の学習ＤＢ 303の構成例を示す図である。特徴語と、分類エンジンで用いる判定関数のパラメータ値とからなる。特徴語については、図４に示したNaive Bayes分類器の場合と同様である。判定関数のパラメータ値とは、学習結果として決定された判定関数のパラメータの値である。
【００５０】
図６は、本発明の文書分類装置における全体の処理の流れを示す図である。
ステップ601において、学習エンジン302が、利用者が用意した学習用文書306を入力され、入力された学習用文書306を用いて初回の機械学習を実行し、学習結果を学習ＤＢ 303に格納する。初回ステップでの機械学習は、既存の学習方法と同じであるが、Naive BayesとSVMの各分類器の場合に分けて簡単に示す。
【００５１】
Naive Bayes分類器の場合には、全ての学習用文書から特徴語を取り出して、各特徴語の秘密度である数１１を算出する。
【００５２】
SVM分類器の場合には、全ての学習用文書から特徴語を取り出して、文書ごとに特徴ベクトルを作成する。特徴ベクトルの作成方法を２つ示す。第１のバイナリ表現方法は、特徴語をw１、w２、w３、...とし、各特徴語が文書に含まれるなら1、含まれないなら0としてバイナリベクトルを生成する方法である。例えば、w１は含み、w２及びw３は含まない場合には、ベクトルは(1, 0, 0, ...)となる。第２の頻度表現方法は、各文書の特徴語全体数に示す各特徴語の比率から頻度ベクトルを生成する方法である。例えば、特徴語が全体で100個現れ、そのうちw１が2回、w２が1回、w３が現れなかったら、(0.02, 0.01, 0.0, ...)となる。各文書について特徴ベクトルを生成した後は、数１６又は数１７という制約のもとで数１８を最小とするzとbとξｉとを算出することになる。これは、従来通りの手法であり、これ以上の説明は略する。
【００５３】
【数１６】
2014238626.tif 000017
【数１７】
2014238626.tif 000018
【数１８】
2014238626.tif 000019
【００５４】
ステップ602において、分類エンジン305が、各学習用文書306の秘密度又は判定関数値を求める。すなわち、Naive Bayes分類器においては数１５を文書ごとに求めて、予測エンジン306に渡す。ここで、数１５中の数１４は、図４における特徴語の秘密度にあたり、重み付けCｗの初期値は1.0である。また、SVM分類器においてはz・x＋bを文書ごとに求めて、予測エンジン306に渡す。
【００５５】
ステップ603において、文書ごとに算出された秘密度又は判定関数値を基に、カテゴリごとの、又は、文書種別ごとにグラフ化し、予測分類精度を算出する。そして、それらのグラフ及び予測分類精度を利用者に提示する。利用者に提示される初回のグラフ及び予測分類精度は、既存のNaive Bayes又はSVMの分類器による学習結果に基づいたものと同じである。
【００５６】
上述した通り、図２が、利用者に提示されるグラフ及び予測分類精度の例である。グラフは、秘密文書の文書種別ごとと、非秘密文書とに分けて、秘密度又は判定関数値の分布を示している。グラフの右側には秘密文書の文書種別ごとと、非秘密文書とに分けて、予想した分類精度を百分率で示している。予想方法の一つとして、各文書種別において秘密度又は判定関数値の平均値と分散を算出し、正規分布を仮定して閾値（Naive Bayeの場合）又は0.0（SVM分類器の場合）を超える確率を提示する手法がある。例えば、平均7.0、分散が4.0、閾値が1.0とすると、1.0を下回るのは-3σより小さい部分であり、その比率は0.001なので分類精度は99.9となる。グラフと予測分類精度を提示した後、特定の文書種別の分類精度を向上させるか、現状で学習を終えるかを利用者に質問する。学習を終える場合は、本ステップで終了する。特定の文書種別の分類精度を向上させる場合は、対象となる文書種別と重み付けを利用者に問い合わせる。ここで重み付けは1.0より大きい値であることを確認しておく。
【００５７】
ステップ604において、利用者が指定した文書種別の分類精度が向上するように、指定された重み付けをパラメータとして学習し直す。Naive Bayes分類器とSVM分類器では具体的な手法が異なる。Naive Bayes分類器について図７で、SVM分類器については図８、図９及び図１０で３通りの方法を示す。学習した結果のパラメータを学習ＤＢ 304に格納した後、ステップ602に戻る。
【００５８】
図７は、図６のステップ604におけるNaive Bayes分類器の場合の再学習法を示した流れ図である。
ステップ701において、指定種別の秘密文書に多く含まれ、非秘密文書又は他の種別の秘密文書にはあまり含まれない特徴語wを探す。探し方の一つとして、各特徴語wの秘密度である数１９を算出し、一定値より大きければ採用するという方法がある。ここで数２０は、特徴語wが指定種別の秘密文書に含まれる確率であり、数２１は特徴語wが非秘密文書又は他の種別の秘密文書に含まれる確率である。数１９が一定値より大きいということは、wが指定種別により多く含まれるということである。
【００５９】
【数１９】
2014238626.tif 000020
【数２０】
2014238626.tif 000021
【数２１】
2014238626.tif 000022
【００６０】
ステップ702において、図４に示したNaive Bayes分類器のDBで、上記701で選択した特徴語ｗの重み付けを利用者が指定した値に書き換える。
【００６１】
図８は、図６のステップ604におけるSVM分類器の場合の特徴ベクトルとしてバイナリベクトルを用いた再学習法を示した流れ図である。
ステップ801において、ステップ701と同様に特徴語wを選択する。
ステップ802において、重み付けに相当する数だけ特徴語wを繰り返し追加することによりバイナリベクトルを生成して学習する。例えば、特徴語が(決裁文書, 企画, PC, …)であり、ステップ801において選択した特徴語が"企画"と"PC"であり、重み付けが3であった場合には、特徴語が(決裁文書, 企画, 企画, 企画, PC, PC, PC, …)であったとしてバイナリベクトルを生成する。例えば、"決裁文書"と"企画"を含み、"PC"を含まない文書のベクトルは(0, 1, 1, 1, 0, 0, 0, …)となる。学習ＤＢ 304の特徴語には(決裁文書, 企画, 企画, 企画, PC, PC, PC, …)と重みをつけて格納する。
【００６２】
図９は、図６のステップ604におけるSVM分類器の場合の特徴ベクトルとして頻度ベクトルを用いた再学習法を示した流れ図である。
ステップ901において、ステップ701と同様に特徴語wを選択する。
ステップ902において、重み付けに相当する数だけ頻度を増して頻度ベクトルを生成して学習する。例えば、特徴語が(決裁文書, 企画, PC, …)であり、ステップ901において選択した特徴語が"企画"と"PC"であり、重み付けが3.0であった場合には、"企画"と"PC"にあたる頻度を3.0倍して頻度ベクトルを生成する。例えば、"決裁文書"の頻度が0.02、"企画"が0.01、"PC"が0.0の文書の頻度ベクトルは(0.02, 0.03, 0.0 …)となる。学習ＤＢ 304の特徴語には(決裁文書, 企画, PC, …)と従来通り格納し、学習パラメータzの頻度ベクトルの対応する部分に重み付けを行って格納する。例えば、学習結果のzの値が(1.04, 0.16, -0.3, ...)だったならば、3.0の重み付けを行った(1.04, 0.48, -0.9, ...)を格納する。
【００６３】
図１０は、図６のステップ604におけるSVM分類器の場合のマージンパラメータを変えた再学習法を示した流れ図である。
ステップ1001において、選択した文書種別にあたるマージンパラメータCｉを従来のCから重み付けWをかけたWCｉとし、その他のCｉを従来のCのままとして数２２を最小にするzとbを算出する。特徴語とzとbは従来通りに学習ＤＢ 305に格納する。
【００６４】
【数２２】
2014238626.tif 000023
【００６５】
（２）第２の実施形態
先の形態では、文書種別が学習用文書に付与されているという前提であった。付与の一つの形態としてフォルダに分れて格納されている場合も含まれる。すなわち文書種別ごとに分類されてフォルダに格納されており、学習用文書としてそれらのフォルダ群を指定されている場合である。
【００６６】
（３）第３の実施形態
秘密文書識別技術の利用形態の一つとして、秘密データ漏洩防止がある。これは、PCから外部媒体にコピーする際やメールの添付ファイルとして外部に送信する際に、PCやメールゲートウェイで文書が秘密文書か否かを判定し、秘密文書ならばコピーや送信をストップするものである。しかしながら、秘密文書か否か、さらに秘密文書の中でも特に重点的に漏洩を監視したい文書種別は所属部署によって異なり、従来まではそれぞれの部署ごとに学習用文書を準備して、学習して、それぞれの部署ごとの分類エンジンを用意する必要があった。
【００６７】
本発明を利用すれば、学習用文書は文書種別を分けて全社で1セット用意して、部署ごとに特に重点的に監視したい文書種別を選んで重点を置いて学習して、その部署用の分類エンジンを準備することができる。どの分類エンジンを用いるかは、PCにログインしている利用者の所属部署やメールの発信人のアドレスから得ることができ、対応する部署の分類エンジンを用いて秘密文書か否か、さらに秘密文書の中の文書種別を判定すればよい。
【産業上の利用可能性】
【００６８】
文書分類技術は、秘密情報の漏洩検知の他、文書重要度に応じたファイル格納先の選択など、利用範囲は広い。
【符号の説明】
【００６９】
120：最適な境界
121：最適ではない境界
301：学習器
302：学習エンジン
303：学習ＤＢ
304：分類エンジン
305：予測エンジン
306：学習用文書
【図１】
2014238626.tif 000024
【図２】
2014238626.tif 000025
【図３】
2014238626.tif 000026
【図４】
2014238626.tif 000027
【図５】
2014238626.tif 000028
【図６】
2014238626.tif 000029
【図７】
2014238626.tif 000030
【図８】
2014238626.tif 000031
【図９】
2014238626.tif 000032
【図１０】
2014238626.tif 000033