(57)【要約】【課題】  取り込んだ文書データが属する文書カテゴリを高い精度で判定する。【解決手段】  取り込んだ現在の文書データについて、使用されている第２の単語・語句を、当該第２の単語・語句が出現するごとにカテゴリ辞書テーブルの一致する第１の単語・語句に割り当てられている第１のスコアに対して、第２の単語・語句の出現頻度に相当する係数を乗算して第３のスコアとして累算すると共に、当該第３のスコアに基づいて現在の文書データが属する文書カテゴリを決めるようにしたことにより、現在の文書データが属する文書カテゴリを高い精度で判定することができる。【選択図】        図１
2005122296.tif 000002
【特許請求の範囲】
【請求項１】
特定のカテゴリの文書データについて使用されている第１の単語・語句について、上記特定のカテゴリ以外の他のカテゴリにも使用されているか否かに基づいて第１のスコアをつけたカテゴリ辞書テーブルを作成し、取り込んだ現在の文書データについて使用されている第２の単語・語句を分解すると共に当該第２の単語・語句を、上記現在の文書データに出現するごとに、上記カテゴリ辞書テーブルの上記第１の単語・語句と比較して一致するとき上記第１の単語・語句に割り当てられている上記第１のスコアに対して上記第２の単語・語句の出現頻度に相当する頻度係数を乗算して第３のスコアとして累算し、上記第３のスコアが所定のしきい値を超えたとき上記第２の単語・語句のカテゴリを上記現在の文書データが属するカテゴリとする
ことを特徴とする文書カテゴリ判定方法。
【請求項２】
上記第３のスコアとして累算する際に、上記第１のスコアを、抽出しようとする文書カテゴリにしか使われない確率の大きさを表すスコア係数に換算し、上記スコア係数に上記頻度係数を乗算して上記第３のスコアとして累算する
ことを特徴とする請求項１に記載の文書カテゴリ判定方法。
【請求項３】
上記第１及び第２の単語・語句は、名詞、複合名詞、動詞、動詞の基本形、日本語の名詞＋「の」＋名詞、又は名詞句内の名詞が３つ以上あったときの名詞接続パターンの１つ又は複数を含む
ことを特徴とする請求項１又は２に記載の文書カテゴリ判定方法。
【請求項４】
上記第１及び第２の単語・語句は、中国語で使用される、名詞＋「的」＋名詞、名詞＋「的」＋名詞＋「的」＋名詞の１つを含む
ことを特徴とする請求項１又は２に記載の文書カテゴリ判定方法。
【請求項５】
上記第１及び第２の単語・語句は、単語をスペースで区切る言語で使用される、単語＋「スペース」＋単語の１つを含む
ことを特徴とする請求項１又は２に記載の文書カテゴリ判定方法。
【請求項６】
上記係数は、
頻度係数ｆ(x) で、ｘは出現する頻度であるとき
ｆ(1) ＝１、limf(x) ＝Ａ、ｘ＞１、ｆ(x) の導関数ｆ′(x) ＞０
（ただしＡはｘが無限大の場合の極値）
の式の条件を満たす関数で頻度係数を決めることを特徴とする請求項１又は２に記載の文書カテゴリ判定方法。
【請求項７】
特定のカテゴリの文書データについて使用されている第１の単語・語句について、上記特定のカテゴリ以外の他のカテゴリにも使用されているか否かに基づいて第１の重みをつけたカテゴリ辞書テーブルを作成し、取り込んだ現在の文書データについて使用されている第２の単語・語句を分解すると共に当該第２の単語・語句を、上記現在の文書データに出現するごとに、上記カテゴリ辞書テーブルの上記第１の単語・語句と比較して一致するとき上記第１の単語・語句に割り当てられている上記第１の重みに対して上記第２の単語・語句の出現頻度に相当する係数を乗算して第３の重みとして累算し、上記第３の重みが所定のしきい値を超えたとき第２の単語・語句のカテゴリを上記現在の文書データが属するカテゴリとする特定カテゴリ文書抽出システムであって、上記現在の文書データはネツトワークを伝送する電子メールデータから取り込む
ことを特徴とする文書カテゴリ抽出システム。
【請求項８】
特定のカテゴリの文書データについて使用されている第１の単語・語句について、上記特定のカテゴリ以外の他のカテゴリにも使用されているか否かに基づいて第１の重みをつけたカテゴリ辞書テーブルを作成し、取り込んだ現在の文書データについて使用されている第２の単語・語句を分解すると共に当該第２の単語・語句を、上記現在の文書データに出現するごとに、上記カテゴリ辞書テーブルの上記第１の単語・語句と比較して一致するとき上記第１の単語・語句に割り当てられている上記第１の重みに対して上記第２の単語・語句の出現頻度に相当する係数を乗算して第３の重みとして累算し、上記第３の重みが所定のしきい値を超えたとき第２の単語・語句のカテゴリを上記現在の文書データが属するカテゴリとする特定カテゴリ文書抽出システムであって、上記現在の文書データはネツトワークを伝送するＨＴＴＰプロトコルにおける送信データから取り込む
ことを特徴とする文書カテゴリ抽出システム。
【請求項９】
特定のカテゴリの文書データについて使用されている第１の単語・語句について、上記特定のカテゴリ以外の他のカテゴリにも使用されているか否かに基づいて第１の重みをつけたカテゴリ辞書テーブルを作成し、取り込んだ現在の文書データについて使用されている第２の単語・語句を分解すると共に当該第２の単語・語句を、上記現在の文書データに出現するごとに、上記カテゴリ辞書テーブルの上記第１の単語・語句と比較して一致するとき上記第１の単語・語句に割り当てられている上記第１の重みに対して上記第２の単語・語句の出現頻度に相当する係数を乗算して第３の重みとして累算し、上記第３の重みが所定のしきい値を超えたとき第２の単語・語句のカテゴリを上記現在の文書データが属するカテゴリとする特定カテゴリ文書抽出システムであって、上記現在の文書データはネツトワークを伝送するインターネット上のウエブドキュメントから取り込む
ことを特徴とする文書カテゴリ抽出システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書カテゴリ判定方法及び文書カテゴリ抽出システムに関し、特に一般文書の文書データの文書カテゴリを抽出する場合に適用して好適なものである。
【背景技術】
【０００２】
従来、文書を分類する手法としては、文書集合説明率を用いた手法（例えば、特許文献１参照。）や、分類用辞書を作る（特許文献２参照。）があるが、いずれも、単語間共起や、シソーラス、類語といった言語的な要素を使用した分類方法を用いている。
【特許文献１】特開２００３−８５１８９
【特許文献２】特開平６−３４８７５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところが、上述の従来の手法は、どのカテゴリの文書でも用いることができるようになっているため雑多な文章から限られたカテゴリの文章だけを抽出するには不便であったり、他のカテゴリで少しでも使用されている単語は、当該カテゴリを分類するキーワードとして使用できなかったり、１つの分野のキーワードであっても、１つの単語だけで当該文章が属すべき分野を決めることになるので、誤判定するおそれがあるといった問題がある。
【０００４】
本発明は以上の点を考慮してなされたもので、抽出しようとする当該文書カテゴリの分野でしか使用しない単語・語句及び他の分野でも使用する単語・語句に着目して当該文書カテゴリを高い精度で判定できるようにしようとするものである。
【課題を解決するための手段】
【０００５】
かかる課題を解決するため本発明においては、特定のカテゴリの文書データについて使用されている第１の単語・語句について、当該特定のカテゴリ以外の他のカテゴリにも使用されているか否かに基づいて第１のスコアをつけたカテゴリ辞書テーブル９Ｈを作成し、取り込んだ現在の文書データについて使用されている第２の単語・語句を分解すると共に、当該第２の単語・語句が、現在の文書データに出現するごとに、カテゴリ辞書テーブル９Ｈの第１の単語・語句と比較して一致したとき第１の単語・語句に割り当てられている第１のスコアに対して第２の単語・語句の出現頻度ｘに相当する係数ｆ(x) を乗算して第３のスコアとして累算し、第３のスコアが所定のしきい値を超えたとき第２の単語・語句のカテゴリを現在の文書データが属するカテゴリとして決定するようにする。
【発明の効果】
【０００６】
取り込んだ現在の文書データについて、使用されている第２の単語・語句を、当該第２の単語・語句が出現するごとにカテゴリ辞書テーブルの一致する第１の単語・語句に割り当てられている第１のスコアに対して、第２の単語・語句の出現頻度に相当する係数を乗算して第３のスコアとして累算すると共に、当該第３のスコアに基づいて現在の文書データが属するカテゴリを決めるようにしたことにより、現在の文書データのカテゴリを高い精度で判定することができる。
【発明を実施するための最良の形態】
【０００７】
以下図面について、本発明の一実施の形態を詳述する。
【０００８】
図１において、１は全体として文書カテゴリ抽出システムを示し、常時、インターネットやＬＡＮなどのネットワーク２を介して伝送されている文書データをネットワークデバイス３によって傍受して、バス４に送り込むことにより中央処理ユニット（ＣＰＵ）５に取り込む。
【０００９】
ＣＰＵ５はプログラムメモリ６の処理プログラムに従って動作メモリ７を用いながら、図２の文書カテゴリ抽出処理手順ＲＴ０に従って処理をする。ＣＰＵ５は処理ルーチンＲＴ１において文書データの取込み処理をした後、処理ルーチンＲＴ２において、文書データカテゴリの分類処理をし、続くステップＳＰ１において特定のカテゴリであるとの確認が得られたとき、ステップＳＰ２においてカテゴリ判定結果データをカテゴリ判定メモリ８に蓄積するのに対して、確認が得られなかったときは蓄積をすることなく、次のステップＳＰ３において当該文書カテゴリ抽出処理手順ＲＴ０を終了するような処理を実行する。
【００１０】
文書カテゴリ抽出処理手順ＲＴ０の処理ルーチンＲＴ１を実行する際に、ＣＰＵ５はかかる処理に先立ってカテゴリ分類処理メモリ９（図１）の単語・語句リスト９Ｆに分類すべき当該カテゴリに属すべき単語又は語句（これを単語・語句という。）についてのインデックス語を表すインデックス語データを格納しておく。
【００１１】
実際上ＣＰＵ５は、インデックス語を作成する際には、当該特定のカテゴリに属する文書を発信するインターネットのウェブサイトからテキスト文書を取り出し、カテゴリ分類処理メモリ９のインデックス作成モジュール９Ｂを用いて次の処理手順に従ってインデックス語を作成する。
【００１２】
すなわち、ＣＰＵ５は、対象文書に対して形態素解析を行い、文書を単語ごとに分離して品詞情報を得る。
【００１３】
この形態素解析処理は、日本語、中国語、単語をスペースで区切る言語（英語など）を解析する分野で、通常用いている手法を用いる。
【００１４】
この明細書では、形態素解析で分離した単語は、全文検索エンジンなどで用いられるインデックス語と同じであるため、形態素解析で分離した単語・語句をインデックス語句と呼ぶ。
【００１５】
カテゴリ分類で使用するインデックス語は、日本語で使用される動詞、動詞の基本形、名詞、記号、感嘆詞、複合名詞、名詞＋「の」＋名詞とし、中国語で使用される名詞＋「的」＋名詞、名詞＋「的」＋「名詞」＋「的」＋名詞とし、また英語などのスペースで単語が区切られる言語で使用される単語＋「スペース」＋単語とする。
【００１６】
複合名詞は含まれる名詞とのつながりを考慮し、名詞Ａ＋名詞Ｂ＋名詞Ｃのような構造で複合名詞が構成されている場合には、名詞Ａ＋名詞Ｂ＋名詞Ｃ、名詞Ａ＋名詞Ｂ、名詞Ｂ＋名詞Ｃ、名詞Ａ、名詞Ｂ、名詞Ｃをインデックス語とする。
【００１７】
例えば「近鉄大阪線」を複合名詞とすると、対象語句は、「近鉄」、「近鉄大阪」、「近鉄大阪線」、「大阪線」、「大阪」及び「線」の６つになる。
【００１８】
次に、名詞Ａ＋「の」＋名詞Ｂの例として、例えば、「明日の演題」の場合の対象語句は、「明日」、「演題」及び「明日の演題」の３つになる。
【００１９】
次に、中国語の場合「語言的核心」のインデックス語は、「語言」、「核心」及び「語言的核心」の３つになる。
【００２０】
また、ＣＰＵ５は次の手順に従ってカテゴリ辞書を作成し、これをカテゴリ分類処理メモリ９のカテゴリ辞書ハッシュテーブル９Ｈに、事前に、格納保存しておく。
【００２１】
すなわちＣＰＵ５は、上述したインデックス語の作成手順に従ってカテゴリ分類処理メモリ９の単語・語句リスト９Ｆに格納保存したインデックス語の中から当該分野について特徴となる単語・語句をオペレータによって選出させ、カテゴリ辞書ハッシュテーブル９Ｈに登録する。
【００２２】
かくしてカテゴリ辞書ハッシュテーブル９Ｈに登録された全てのインデックス語は、ハッシュ値によってそれぞれ判別できるようになっている。
【００２３】
このようにして、カテゴリ辞書ハッシュテーブル９Ｈを作成するのは、登録されたインデックス語がどのカテゴリについて関連が大きいかを区別するための重みを表す値（これをスコアと呼ぶ）を差別的に付するためで、カテゴリ辞書インデックス語が１つのカテゴリにしか属さないものである場合を最大値とし、かつ他の分野でも使われる可能性がある場合には、低い値をつける。全く使われる可能性のない場合にはスコア＝０とする。
【００２４】
例えば、図３に示すように、「１つのカテゴリしか使われないインデックス語（すなわちハッシュキー）」には「スコア」１０点の「重み」を付け、「他のカテゴリでもたまに使われるインデックス語」には「スコア」５点の「重み」を付け、「全く使われる可能性がないインデックス語」には「スコア」０点を付ける。
【００２５】
例として、株式投資のカテゴリにおいて、「単元株数」のインデックス語にはスコア１０点を付けるのに対して、「日経平均株価」のインデックス語にはスコア５点を付ける。
【００２６】
その理由は、「単元株数」は株式投資関係のページでしか使わない単語・語句であるのに対して、「日経平均株価」のインデックス語は新聞社のインターネットホームページでも使われるため、株式投資のみのカテゴリではないからである。
【００２７】
図３の場合、カテゴリ辞書ハッシュテーブル９Ｈに格納保存された各インデックス語についてのカテゴリ辞書データ９Ｈ１、９Ｈ２、９Ｈ３……は、ハッシュキーとして「単語・語句」データを有すると共に、値データとして当該単語・語句が属すべきカテゴリを表す「カテゴリ番号」データと、当該単語・語句に付けられる「スコア」とで構成されている。
【００２８】
このようにして、カテゴリ辞書ハッシュテーブル９Ｈに、各ハッシュキーについて「カテゴリ番号」及び「スコア」を格納した状態において、ＣＰＵ５が文書カテゴリ抽出処理手順ＲＴ０（図２）の文書データの取り込み処理ルーチンＲＴ１に入ると、ＣＰＵ５は、図４に示すように、ステップＳＰ１１において取り込んだ文書データすなわちウエブドキュメントを文書フィルタ９Ａ（図１）によってフィルタ処理をして、カテゴリ分類処理メモリ９のテキストデータメモリ部９Ｅに入れる。
【００２９】
ここで、文書フィルタ９Ａは、文書データとして各種の文書、例えば、図５に示すように、インターネットの「ＨＴＭＬデータ」、「ワープロ文書データ」、「表計算データ」、「データベースデータ」、「ＰＤＦデータ」、「圧縮ファイルデータ」、「ＤＴＰファイルデータ」、「ＩＰ電話データ」などが伝送されて来たとき、これを、ＣＰＵ５が、カテゴリ分類処理メモリ９内の対応するフィルタ９Ａ１〜９Ａ８のデータを用いて、共通に処理できるようなテキスト文書データに変換する。
【００３０】
かくしてテキストデータメモリ部９Ｅに入れられたテキストデータについて、ＣＰＵ５は、次のステップＳＰ１２（図４）において、当該テキストデータをカテゴリ分類処理メモリ９の形態素解析モジュール９Ｃ（図１）により処理して、テキストデータメモリ部９Ｅにテキストファイルを作成し、その後ステップＳＰ１３から文書カテゴリ抽出処理手順ＲＴ０（図２）に戻る。
【００３１】
このとき、ＣＰＵ５は、文書データカテゴリの分類処理ルーチンＲＴ２（図２）に入り、図６に示すように、ステップＳＰ２１において、インデックス作成モジュール９Ｂによって単語・語句データを作成して、単語・語句リスト９Ｆに入れる。
【００３２】
かくしてネットワーク２から取り込まれた文書データは、各単語・語句ごとに分かち書きされて、単語・語句リスト９Ｆに、順次取り出せる状態で、格納されることになる。
【００３３】
続いてＣＰＵ５は、ステップＳＰ２２に移って、カテゴリ分類処理メモリ９の出現頻度カウントモジュール９Ｉ（図１）を用いて、単語・語句ごとに出現数データを求めて頻度ハッシュテーブル９Ｄに入れる。
【００３４】
頻度ハッシュテーブル９Ｄは、図７に示すように、各単語・語句データごとに、ハッシュキーとしての「単語・語句」データと、「出現数」を表す値データとを出現数ハッシュデータメモリ部９Ｄ１、９Ｄ２、９Ｄ３……に格納する。
【００３５】
続いてＣＰＵ５はステップＳＰ２３において、カテゴリ分類処理メモリ９のカテゴリリスト９Ｇ（図１）を初期化する。
【００３６】
このカテゴリリスト９Ｇは、図８に示すように、カテゴリリストデータ９Ｇ１、９Ｇ２、９Ｇ３……を有し、各カテゴリリストデータ９Ｇ１、９Ｇ２、９Ｇ３……に取り込んだ文書データを構成する単語・語句についての評価データとして、「カテゴリ番号」及びその累計重みを表す「累計スコア」データを格納できるようになされ、初期化されると、カテゴリリストデータ９Ｇ１、９Ｇ２、９Ｇ３……をクリアした状態になる。
【００３７】
続いてＣＰＵ５は次のステップＳＰ２４に移って、単語・語句リスト９Ｆに入れられている単語・語句データを１つずつ単語・語句キーデータｗｏｒｄとして取り出し、ステップＳＰ２５において当該取り出したキーデータｗｏｒｄと同じハッシュキーデータがカテゴリ辞書ハッシュテーブル９Ｈに存在するか否かを判断する。
【００３８】
ここで肯定結果が得られると、このことは現在取り込んだ文書データに、抽出しようとするカテゴリの単語・語句が含まれていることを表しており、このときＣＰＵ５はステップＳＰ２６に移って、カテゴリ辞書ハッシュテーブル９Ｈに設定されているデータのうち、キーデータｗｏｒｄと一致したハッシュキーについての値データ、すなわち「カテゴリ番号」及び「スコア」データを取得して、次のステップＳＰ２７に移る。
【００３９】
このステップＳＰ２７においてＣＰＵ５は、カテゴリリスト９Ｇのうちカテゴリ辞書ハッシュテーブル９Ｈから取得した「カテゴリ番号」と同じカテゴリ番号の「累計スコア」データ部分に対して、当該取得した「スコア」データに、次式
【００４０】
【数１】
2005122296.tif 000003
【００４１】
の累算値Ｗを加算する。
【００４２】
ここで頻度係数は、
【００４３】
【数２】
2005122296.tif 000004
【００４４】
によって表される。
【００４５】
頻度係数ｆ(x) は頻度ｘの関数で、頻度ｘは１より大きく、ｆ(x) は増加関数ｆ｀(x) ＞０であり、ｘ＝１の頻度係数ｆ(1) は１であり、かつｘが無限大になるとき関数ｆ(x) はＡに収束する、の条件のもとに成り立っている。
【００４６】
実際上、（１）式を満足するような関数として、次式
【００４７】
【数３】
2005122296.tif 000005
【００４８】
のような条件の下に、図９に示すような曲線を描く関数ｆ(x) を用い得る。
【００４９】
上記（２）式又は（３）式は、文書データに含まれる１つの単語・語句が出現する頻度が１回のとき、その頻度係数ｆ(1) は１であるのに対して、頻度が１以上無限大になっても有限値Ａ又は２に近づくような関数を頻度係数ｆ(x) として選定したことを意味する。
【００５０】
また、スコア係数は、当該取得した「スコア」に基づいて図１０に示す評価関数ｙ＝Ｓ（ｘ）を用いて換算する。
【００５１】
図１０において、横軸のスコアの値ｘ＝「１」〜「１０」は、カテゴリ辞書ハッシュテーブル９Ｈのカテゴリ辞書データ９Ｈ１、９Ｈ２、９Ｈ３……の「スコア」の値であって、「抽出しようとするカテゴリにしか使われない確率」が大きい単語・語句には値「１０」又はこれに近い値（これを最大値側の値と呼ぶ）が選定されるのに対して、「抽出しようとするカテゴリにしか使われない確率」が小さい単語・語句には値「１」又はこれに近い値（これを最小値側の値と呼ぶ）が割り当てられる。
【００５２】
最大値側のスコア（「１０」又はこれに近い値）の単語・語句が出現すると、このことは、この単語・語句が当該抽出しようとするカテゴリに属する可能性が大きいこと（他のカテゴリにも属する可能性が小さいこと）を表している。これに対して最小値側のスコア（「１」又はこれに近い値）の単語・語句が出現すると、このことは、この単語・語句が当該抽出しようとするカテゴリに属する可能性が小さいこと（他のカテゴリにも属する可能性が大きいこと）を表している。
【００５３】
ＣＰＵ５は、上記（１）式の演算をする際に、図１０の評価関数ｙ＝Ｓ（ｘ）を用いて、スコアｘ＝「１」、「２」、「３」、「４」、「５」、「６」、「７」、「８」、「９」、「１０」のとき、スコア係数ｙを、「１」（＝Ｓ（１））、「２」（＝Ｓ（２））、「５」（＝Ｓ（３））、「１０」（＝Ｓ（４））、「２０」（＝Ｓ（５））、「２５」（＝Ｓ（６））、「３０」（＝Ｓ（７））、「３４」（＝Ｓ（８））、「４０」（＝Ｓ（９））、「５０」（＝Ｓ（１０））のように、単語・語句のスコアｘの値が最大値「１０」に近づけば近づく程変化率が大きいスコア係数ｙを割り当てるような、評価をする。
【００５４】
このように、単語・語句のスコアｘの値が最大値「１０」に近づけば近づく程変化率が大きいスコア係数ｙを与えることにより、カテゴリリスト９Ｇのカテゴリリストデータ９Ｇ１、９Ｇ２、９Ｇ３……の「累計スコア」データ部分の値は、出現した単語・語句について、当該抽出しようとするカテゴリにしか使われない確率が大きければ大きい程、大きく強調されたスコア係数が用いられるので、大きい変化率で大きくなって行くことにより、急速に予定のしきい値に近づいて行く。これに対して、出現した単語・語句が当該抽出しようとするカテゴリにしか使われない確率が小さければ小さい程強調度が小さいスコア係数が用いられるので、「累計スコア」データ部分の値は、小さい変化率で大きくなって行くことによりゆっくりと予定のしきい値に近づいて行く。
【００５５】
このように、ステップＳＰ２５の判断結果に基づいてカテゴリ辞書ハッシュテーブル９Ｈにキーデータｗｏｒｄが存在する場合には、カテゴリリスト９Ｇの累計スコアデータ部分に累計加算をするような処理をするのに対して、ステップＳＰ２５において否定結果が得られたとき、このことはキーデータｗｏｒｄに対応する単語・語句は当該カテゴリに属する可能性がないことを表しているので、ステップＳＰ２６−ＳＰ２７の処理をジャンプしてステップＳＰ２８に移る。
【００５６】
ステップＳＰ２８は単語・語句リスト９Ｆの１つの単語・語句の処理が終了したので、残る単語・語句についての上記ステップＳＰ２４〜ＳＰ２８までの処理を繰り返すことにより、当該カテゴリに対してする関連性に応じて、関連性が大きい単語・語句については大きいスコアデータを加算して行くと共に、関連性が小さい単語・語句については小さいスコアデータを加算して行くのに対して、関連性が全くない単語・語句についての加算処理はしないような処理を実行する。
【００５７】
やがて、単語・語句リスト９Ｆに登録された全ての単語・語句についての処理が終了すると、ＣＰＵ５はステップＳＰ２９に移ってカテゴリリスト９Ｇの中で累計スコアが一番大きいものの値が予定のしきい値を超えたか否かの判断をする。
【００５８】
ここで、当該予定のしきい値は、文書データに含まれている単語・語句が当該抽出したいカテゴリのものであると言って良いか否かを決める基準としてユーザが予め決めておくもので、肯定結果が得られたときＣＰＵ５はステップＳＰ３０においてカテゴリリスト９Ｇの中で累計スコアが一番大きいカテゴリ番号をこの文書（すなわち取り込んだ文書データ）の文書カテゴリとして決定した後、ステップＳＰ３１からメインルーチンに戻る。
【００５９】
これに対してステップＳＰ２９において否定結果が得られると、ＣＰＵ５はステップＳＰ３２に移って、取り込んだ文書データについては、該当する文書カテゴリがないと決定して、ステップＳＰ３１からメインルーチン（図２）に戻る。
【００６０】
このときＣＰＵ５は、図２のステップＳＰ１において特定のカテゴリが抽出されたか否かの判定をし、肯定結果が得られたとき、ステップＳＰ２においてその判定結果をカテゴリ判定結果メモリ８に蓄積して、その後の利用に供する処理をした後、ステップＳＰ３において当該文書カテゴリ抽出処理手順を終了する。
【００６１】
これに対して、ステップＳＰ１において特定のカテゴリが抽出できないとの判定結果が得られたとき、直ちにステップＳＰ３に移って当該文書カテゴリ抽出処理手順を終了する。
【００６２】
以上の構成によれば、カテゴリ辞書ハッシュテーブル９Ｈの辞書データとして、単語・語句を表すハッシュキーについてカテゴリの種別を表すカテゴリ番号と当該カテゴリのみに単語・語句が使用される確率を表すスコアデータを辞書データとして作成しておくことにより、実際に取り込んだ文書データ全体について使用されている単語・語句についての関連性が大きいものについて大きな値の累計スコアデータが得られるようにしたことにより、取り込んだ文書データの文書カテゴリを、高い精度で、判定することができる。
【００６３】
かくするにつき、（１）式のように、複数の単語・語句について、当該「抽出しようとする文書カテゴリにしか使われてない確率」を表すスコア係数を用いて累計加算をすることによって、結局１つの単語・語句をキーワードとするのではなく、複数の単語・語句をキーワードとして用いて、当該文書データの文書カテゴリを特定するようにしたことにより、カテゴリの抽出精度を一段と向上させることができる。
【００６４】
例えば、単語・語句「フィギア」の場合は、当該単語・語句が使われている「人形」の分野と、「フィギアスケート」の分野としては、文書カテゴリが異なる。
【００６５】
「フィギアスケート」の文書カテゴリの専門用語である「トリプルアクセル」、「トリプルルッツ」、「ビールマンスピン」などの用語は、「人形」の文書カテゴリにおいて使われることはない。
【００６６】
従って「フィギアスケート」の文書カテゴリを抽出したい場合には、これら「トリプルアクセル」、「トリプルルッツ」、「ビールマンスピン」などの複数の専門用語を含むカテゴリ辞書ハッシュテーブル９Ｈ（図３）を作成することよって、「フィギアスケート」の「フィギア」を用いた文章についての文書カテゴリと、「人形」の「フィギア」を用いた文章についての文書カテゴリとを、区別することができる。
【００６７】
また、各単語・語句の出現時における累計スコアの累算効果について、例えばある文書について、図１１に示すように、単語「デート」、「遊び」、「ＤＶＤ」、「帰る」が出現した場合に、「私的文書」のカテゴリにおけるスコアとして、順次「１０」、「６」、「５」、「７」が割り当てられているとすると、スコア係数は図１０の評価関数からそれぞれ「５０」、「２５」、「２０」、「３０」になる。また頻度は「１」、「１１」、「１」、「１」であるから、頻度係数は図９の頻度係数関数（従って（３）式）から、「１」、「１、９０９」、「１」、「１」であることにより、（１）式の累算値Ｗ＝（スコア係数）×（頻度係数）によって求められる点数は、「５０」、「４７．７」、「２０」、「３０」になり、その累計スコアは、「１４７．７」点になる。
【００６８】
ここで、単語「デート」は「私的文書」以外では使用されることはないものであるから図１０の評価関数に基づいてスコア係数「１０」が与えられるのに対して単語「ＤＶＤ」は「コンピュータ」の分野でバックアップ用に使用されたり、「経済」の分野で新技術の紹介などで使用されることがある単語である。
【００６９】
そこで、図１１の文書データは、単語「デート」にスコア係数「１０」を与えることにより、当該「私的文書」のカテゴリに属する可能性が高くなっているが、頻度で「１」であるから、たまたま使用された可能性もある。しかしそれ以外の単語「遊び」、「ＤＶＤ」、「帰る」が出現したことにより、累計スコアが「１４７、７」になり、予定のしきい値「１００」を超えているので、総合的には、当該「私的文書」のカテゴリに属することを確定にしている。
【００７０】
因に、図１１の文書データにおいて、仮に、単語「ＤＶＤ」、「帰る」のみであったとした場合には、累計スコアは「５０」（「２０」＋「３０」）になるので、「十分」であるとは言えないが、「可能性が高い」と言うことができる。
【００７１】
実験によれば、上記（２）式の頻度係数関数ｆ(x) ＝−１／ｘ＋２を用いて文書データの累計スコアを求める場合、累計スコアがしきい値１００点を超えた場合にはそのカテゴリに属し、５０〜９９点の場合は、判定されたカテゴリ番号のカテゴリに属する可能性が高く、１〜４９点の場合はそのカテゴリに属する可能性があるといった判定結果が得られた。
【００７２】
図１の文書カテゴリ抽出システム１を用いて、インターネットで取り扱われるＨＴＭＬ形式の文書を取り込んだとき、他の文書へのリンク情報を取得してリンク情報のＵＲＬにある文書を取り込めば、インターネット上のさまざまな文書をカテゴリ分けすることができる。
【００７３】
従って、例えば、インターネット文書を取得した結果、ホスト名ｗｗｗ．ｅｘａｍｐｌｅ．ｊｐにある文章が、ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｊｐ／ｅｘａｍｐｌｅ．ｈｔｍｌ、ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｊｐ／ｉｎｄｅｘ．ｈｔｍｌ、ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｊｐ／ｔｅｓｔ／ｉｎｄｅｘ．ｈｔｍｌ、ｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｊｐ／ｔｅｓｔ／ｔｅｓｔｄａｔａ．ｈｔｍｌ、であった場合、これらの文書のカテゴリスコアリストの値を累算することによりウエブサイトｈｔｔｐ：／／ｗｗｗ．ｅｘａｍｐｌｅ．ｊｐ／のカテゴリを算出することができる。このようにウエブサイト自体のカテゴリを判断するのに、文書カテゴリ分類システム１を適応できる。
【００７４】
外部記録装置１５から取り出した文書データについても、上述したネットワーク７から取り込んだ文書データについての処理についても、同様に処理することができる。
【００７５】
なお、上述の実施の形態においては、本発明をインターネット上の文書データを判定する場合に本発明を適用したが、本発明はこれに限らず、例えばイーサーネットの通信内容記録装置に適用することにより、通信内容記録装置が取得したメール、メールの添付ファイル、ＨＴＭＬなどの文書が属する文書カテゴリを知ることができる。
【００７６】
また、発信者や受信者を判別できる、ＩＰアドレス、ＭＡＣアドレスを使用して文書を、発信者ごと受信者に分けて分類することにより、対象となった発信者、受信者の文書すべてのスコアを合累計演算することにより、発信者の送信情報のカテゴリを知ることができる。
【００７７】
例として、カテゴリ辞書ハッシュテーブル９Ｈに犯罪に関する辞書を登録して、インターネット接続業者について、本発明によるシステムを組み込んだ通信内容記録装置を設置すれば、犯罪に関する情報を発信している者、受信している者を探し出すこともできることになる。
【産業上の利用可能性】
【００７８】
ネットワークを流れる文書データがどの文書カテゴリに属するものであるかを知るためのシステムに利用できる。
【図面の簡単な説明】
【００７９】
【図１】本発明の実施の形態による文書カテゴリ抽出システムを示す略線的系統図である。
【図２】文書カテゴリ抽出処理手順を示すフローチャートである。
【図３】図１のカテゴリ辞書ハッシュテーブルの構成を示す略線図である。
【図４】図２の文書データの取込み処理手順を示すフローチャートである。
【図５】図１の文書フィルタの構成を示す略線図である。
【図６】図２の文書データカテゴリの分類処理手順を示すフローチャートである。
【図７】図１の頻度ハッシュテーブルの構成を示す略線図である。
【図８】図１のカテゴリリストの構成を示す略線図である。
【図９】頻度係数関数の例を示すグラフである。
【図１０】スコア係数の設定に用いる評価関数を示すグラフである。
【図１１】累積効果の説明に供する図表である。
【符号の説明】
【００８０】
１……文書カテゴリ抽出システム、２……ネットワーク、３……ネツトワークデバイス、４……バス、５……ＣＰＵ、６……プログラムメモリ、７……動作メモリ、８……カテゴリ判定結果メモリ、９……カテゴリ分類処理メモリ、９Ａ……文書フィルタ、９Ｂ……インデックス作成モジュール、９Ｃ……形態素解析モジュール、９Ｄ……頻度ハッシュテーブル、９Ｅ……テキストデータメモリ部、９Ｆ……単語・語句リスト、９Ｇ……カテゴリリスト、９Ｈ……カテゴリ辞書ハッシュテーブル、９Ｉ……出現頻度カウントモジュール、１５……外部記憶装置。
【図１】
2005122296.tif 000006
【図２】
2005122296.tif 000007
【図３】
2005122296.tif 000008
【図４】
2005122296.tif 000009
【図５】
2005122296.tif 000010
【図６】
2005122296.tif 000011
【図７】
2005122296.tif 000012
【図８】
2005122296.tif 000013
【図９】
2005122296.tif 000014
【図１０】
2005122296.tif 000015
【図１１】
2005122296.tif 000016