(57)【要約】【課題】入力テキストのカテゴリを分類するので、テキスト分類の処理に際して形態素辞書を必要とする形態素解析をすることなく、低コストでテキスト分類を行うことができるようにする。【解決手段】計算機サーバ装置で生成された分類パラメータに基づいて、オートマトンを構築し、構築されたオートマトンを用いて入力テキストの文字列パターン(swi)の受理および出現頻度（tfi）の算出を行い、カテゴリＣにおける分類値を算出し、分類値が０より大きくなる場合には、入力テキストをカテゴリＣに分類し、分類値が０以下である場合には、入力テキストをカテゴリＣ以外のカテゴリに分類し、入出力装置を介して、利用者に分類結果を通知する。【選択図】        図６−２
2008071283.tif 000002
【特許請求の範囲】
【請求項１】
入力される入力テキストの文字列をオートマトン（automaton）に読み込ませ、所定の文字列パターンが出現した場合に、当該出現した文字列パターンを受理するパターンマッチング工程と
前記パターンマッチング工程で受理した文字列パターンに基づいて、前記入力テキストのカテゴリを分類するカテゴリ分類工程と、
を含むことを特徴とするテキスト分類方法。
【請求項２】
所定の学習データから分類パラメータを生成する分類パラメータ生成工程と、
前記分類パラメータ生成工程で生成された前記分類パラメータに基づいて、オートマトンを構築するオートマトン構築工程と、
をさらに含み、
前記パターンマッチング工程は、前記入力される入力テキストの文字列を前記オートマトン構築工程で構築したオートマトンに読み込ませ、前記所定の文字列パターンを受理すること
を特徴とする請求項１に記載のテキスト分類方法。
【請求項３】
前記パターンマッチング工程で受理された前記文字列パターンの出現頻度を前記各文字列パターン毎に算出する出現頻度算出工程をさらに含み、
前記カテゴリ分類工程は、前記出現頻度算出工程で算出した前記各文字列パターン毎の出現頻度に基づいて、前記入力テキストのカテゴリを分類すること
を特徴とする請求項１または請求項２に記載のテキスト分類方法。
【請求項４】
前記分類パタメータは、前記所定の文字列パターン、および前記所定の文字列パターンの重みと、で表現されることを特徴とする請求項１〜請求項３のいずれか一つに記載のテキスト分類方法。
【請求項５】
入力される入力テキストのカテゴリを分類するための分類パラメータを所定の学習データから生成し、生成した前記分類パラメータに基づいて、前記入力テキストのカテゴリを分類するテキスト分類システムにおいて、
前記分類パラメータを生成する計算機サーバと、入力される前記入力テキストの分類を行う分類装置と、を備え、
前記計算機サーバは、
前記分類パラメータを生成する分類パラメータ生成手段と、
前記分類パラメータ生成手段により生成された分類パラメータを、ネットワークを介して、前記分類装置に対して送信する通信手段と、を有し、
前記分類装置は、
前記計算機サーバの通信手段から送信された前記分類パラメータを受信する通信手段と、
前記通信手段により受信した前記分類パラメータに基づいて、オートマトン（automaton）を構築するオートマトン構築手段と、
前記入力テキストの文字列を前記オートマトン構築手段により構築したオートマトンに読み込ませ、所定の文字列パターンが出現した場合に、当該出現した文字列パターンを受理するパターンマッチング手段と、
前記パターンマッチング手段により受理した文字列パターンに基づいて、前記入力テキストのカテゴリを分類するカテゴリ分類手段と、を有すること
を特徴とするテキスト分類システム。
【請求項６】
前記分類装置は、前記パターンマッチング手段により受理された前記文字列パターンの出現頻度を前記各文字列パターン毎に算出する出現頻度算出手段をさらに含み、
前記カテゴリ分類手段は、前記出現頻度算出手段で算出した前記各文字列パターン毎の出現頻度に基づいて、前記入力テキストのカテゴリを分類すること
を特徴とする請求項５に記載のテキスト分類システム。
【請求項７】
前記分類装置は、
前記カテゴリ分類手段による分類結果を通知する通知手段と、
前記通知手段により通知された分類結果に対して、前記入力テキストのカテゴリの修正を示すカテゴリ修正情報を受け付ける受付手段と、
をさらに含み、
前記分類装置の通信手段は、前記受付手段により受け付けたカテゴリ修正情報、および前記入力テキストを前記計算機サーバに対して送信し、
前記計算機サーバの通信手段は、前記分類装置の通信手段から送信された前記入力テキスト、および前記カテゴリ修正情報を受信し、
前記分類パラメータ手段は、前記通信手段で受信した前記入力テキストを含めた前記学習データから、前記入力テキストが前記カテゴリ修正情報にかかるカテゴリに分類されるように分類パラメータを再生成すること
を特徴とする請求項５または請求項６に記載のテキスト分類システム。
【請求項８】
前記計算機サーバは、個人または個人の集合で構成される組織体を識別する識別情報と、前記分類パラメータ生成手段により生成した分類パラメータと、前記所定の学習データと、を関連付けて管理すること
を特徴とする請求項５〜請求項７のいずれか一つに記載のテキスト分類システム。
【請求項９】
前記分類パタメータは、前記所定の文字列パターン、および前記所定の文字列パターンの重みと、で表現されることを特徴とする請求項５〜請求項８のいずれか一つに記載のテキスト分類システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキスト分類方法、およびテキスト分類システムに関し、入力される入力テキストのカテゴリを分類するための分類パラメータを所定の学習データから生成し、生成した分類パラメータに基づいて、入力テキストのカテゴリを分類するテキスト分類方法、およびテキスト分類システムに関するものである。
【背景技術】
【０００２】
現代においては、インターネットの急速な普及に伴って、電子メールや電子化された書類などのテキストデータが急速に増加したために、大量のテキストデータが存在する。従って、目的とするテキストデータを探し出す場合には、大量のテキストデータの中から探し出す必要が生じてくる。
【０００３】
そこで、大量のテキストデータの中から目的とするテキストデータを検索して探し当てる技術が開示されている（例えば特許文献１）。
【０００４】
また、テキストデータをカテゴリ毎に自動的に分類する技術が開示されている。テキストデータを自動的に分類する技術を用いることで、人手によるテキストデータの分類に要する時間と労力を削減することができると共に、テキストデータを予め幾つかのカテゴリに分類しておくことにより、検索対象に関連する特定のカテゴリに属するテキストデータのみを検索することができる。
【０００５】
【特許文献１】特開２００５−９２８２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来技術は、入力される入力テキストのカテゴリを分類する場合には、入力テキストについて形態素解析を行ってテキストを単語に分割し、各単語に品詞を割り当て、入力テキストの内容をよく表す名詞を特徴語として取り出し、取り出した特徴語の出現頻度をカウントし、特徴語とその出現頻度を用いてテキストベクトルを生成し、生成したテキストベクトルと分類パラメータの内積を算出し、算出した内積が閾値に達しているか否かによりカテゴリに属するか否かを判定する構成であるため、テキスト分類の処理の際には、数十メガバイトの形態素辞書を必要とする形態素解析処理が必要になり、コストが高くなるという問題点があった。
【０００７】
本発明は、上記に鑑みてなされたものであって、テキスト分類に際して、形態素辞書を必要とする形態素解析をすることなく、低コストでテキスト分類を行うことのできるテキスト分類方法、およびテキスト分類システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明はテキスト分類方法に関し、入力される入力テキストの文字列をオートマトン（automaton）に読み込ませ、所定の文字列パターンが出現した場合に、当該出現した文字列パターンを受理するパターンマッチング工程と前記パターンマッチング工程で受理した文字列パターンに基づいて、前記入力テキストのカテゴリを分類するカテゴリ分類工程と、を含むことを特徴とする。
【０００９】
また本発明は、所定の学習データから分類パラメータを生成する分類パラメータ生成工程と、前記分類パラメータ生成工程で生成された前記分類パラメータに基づいて、オートマトンを構築するオートマトン構築工程と、をさらに含み、前記パターンマッチング工程は、前記入力される入力テキストの文字列を前記オートマトン構築工程で構築したオートマトンに読み込ませ、前記所定の文字列パターンを受理することを特徴とする。
【００１０】
また本発明は、前記パターンマッチング工程で受理された前記文字列パターンの出現頻度を前記各文字列パターン毎に算出する出現頻度算出工程をさらに含み、前記カテゴリ分類工程は、前記出現頻度算出工程で算出した前記各文字列パターン毎の出現頻度に基づいて、前記入力テキストのカテゴリを分類することを特徴とする。
【００１１】
また本発明は、前記分類パタメータは、前記所定の文字列パターン、および前記所定の文字列パターンの重みと、で表現されることを特徴とする。
【００１２】
また本発明は、テキスト分類システムに関し、入力される入力テキストのカテゴリを分類するための分類パラメータを所定の学習データから生成し、生成した前記分類パラメータに基づいて、前記入力テキストのカテゴリを分類するテキスト分類システムにおいて、
前記分類パラメータを生成する計算機サーバと、入力される前記入力テキストの分類を行う分類装置と、を備え、前記計算機サーバは、前記分類パラメータを生成する分類パラメータ生成手段と、前記分類パラメータ生成手段により生成された分類パラメータを、ネットワークを介して、前記分類装置に対して送信する通信手段と、を有し、前記分類装置は、前記計算機サーバの通信手段から送信された前記分類パラメータを受信する通信手段と、前記通信手段により受信した前記分類パラメータに基づいて、オートマトン（automaton）を構築するオートマトン構築手段と、前記入力テキストの文字列を前記オートマトン構築手段により構築したオートマトンに読み込ませ、所定の文字列パターンが出現した場合に、当該出現した文字列パターンを受理するパターンマッチング手段と、前記パターンマッチング手段により受理した文字列パターンに基づいて、前記入力テキストのカテゴリを分類するカテゴリ分類手段と、を有することを特徴とする。
【００１３】
また本発明は、前記分類装置は、前記パターンマッチング手段により受理された前記文字列パターンの出現頻度を前記各文字列パターン毎に算出する出現頻度算出手段をさらに含み、前記カテゴリ分類手段は、前記出現頻度算出手段で算出した前記各文字列パターン毎の出現頻度に基づいて、前記入力テキストのカテゴリを分類することを特徴とする。
【００１４】
また本発明は、前記分類装置は、前記カテゴリ分類手段による分類結果を通知する通知手段と、前記通知手段により通知された分類結果に対して、前記入力テキストのカテゴリの修正を示すカテゴリ修正情報を受け付ける受付手段と、をさらに含み、前記分類装置の通信手段は、前記受付手段により受け付けたカテゴリ修正情報、および前記入力テキストを前記計算機サーバに対して送信し、前記計算機サーバの通信手段は、前記分類装置の通信手段から送信された前記入力テキスト、および前記カテゴリ修正情報を受信し、前記分類パラメータ手段は、前記通信手段で受信した前記入力テキストを含めた前記学習データから、前記入力テキストが前記カテゴリ修正情報にかかるカテゴリに分類されるように分類パラメータを再生成することを特徴とする。
【００１５】
また本発明は、前記計算機サーバは、個人または個人の集合で構成される組織体を識別する識別情報と、前記分類パラメータ生成手段により生成した分類パラメータと、前記所定の学習データと、を関連付けて管理することを特徴とする。
【００１６】
また本発明は、前記分類パタメータは、前記所定の文字列パターン、および前記所定の文字列パターンの重みと、で表現されることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、入力される入力テキストの文字列をオートマトンに読み込ませ、所定の文字列パターンが出現した場合に、当該出現した文字列パターンを受理し、受理した文字列パターンに基づいて、入力テキストのカテゴリを分類するので、テキスト分類の処理に際して形態素辞書を必要とする形態素解析をすることなく、低コストでテキスト分類を行うことができるという効果を奏する。
【発明を実施するための最良の形態】
【００１８】
以下に添付図面を参照して、この発明にかかるテキスト分類方法、およびテキスト分類システムの最良な実施の形態を詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１９】
（第１の実施の形態）
まず、本発明の第１の実施の形態にかかるテキスト分類システム１００について図１を参照して説明する。図１は、第１の実施の形態のテキスト分類システム１００の構成の一例を示す図である。
【００２０】
第１の実施の形態のテキスト分類システム１００は、同図に示すように、分類パラメータを生成する計算機サーバ装置２００と、計算機サーバ装置２００からの分類パラメータを参照してテキストを分類する分類装置３００とで構成されている。なお、計算機サーバ装置２００と分類装置３００は、同図に示すように、ネットワーク４００を介して相互に通信可能に接続されている。また、計算機サーバ装置２００および分類装置３００の各数量は同図に示すものに限定されるものではない。
【００２１】
第１の実施の形態のテキスト分類システム１００は、計算機サーバ装置２００で生成される単数の分類パラメータを参照して、分類装置３００に入力されるテキスト（入力テキスト）のカテゴリを分類するものである。なお、第１の実施の形態の入力テキストは、カテゴリＣまたはそれ以外のカテゴリに分類される。
【００２２】
なお、第１の実施の形態の分類パラメータ（w）は、計算機サーバ装置２００での学習によって生成されるものであり、文字列パターン（sw）とその重み（vw）をペア（sw，vw）として、例えば｛（sw1，vw1），（sw2，vw2），（sw3，vw3）｝のように表現される。
【００２３】
図２は、第１の実施の形態の計算機サーバ装置２００の構成の一例を示す図である。第１の実施の形態の計算機サーバ装置２００は、同図に示すように、制御部２１０と、記憶部２２０と、通信インターフェース部２３０とで構成されている。
【００２４】
制御部２１０は、同図に示すように、学習データ入力部２１０ａと、形態素解析部２１０ｂと、出現頻度算出部２１０ｃと、頻度逆数算出部２１０ｄと、特徴語取出部２１０ｅと、正負決定部２１０ｆと、重み算出部２１０ｇと、をさらに含んで構成されている。
【００２５】
学習データ入力部２１０ａは、複数の学習データ（ｄ１，ｄ２，・・・，ｄｎ）を入力するためのものである。なお、通信インターフェース部２３０を介して受信される学習データを入力する構成であってもよいし、計算機サーバ装置２００に接続された入力装置（図示なし）を介して入力される学習データを入力する構成であってもよい。
【００２６】
ここで、学習データとは、カテゴリＣに属する分野のテキストデータのことである。なお、学習データ入力部２１０ａに入力される学習データは単数でもよいが、精度の高い分類パラメータ（w）を生成するために、多数の学習データを入力することが望ましい。
【００２７】
形態素解析部２１０ｂは、学習データ入力部２１０ａに入力された学習データの文字列から名詞の文字列パターンを抽出する。具体的には、学習データの文字列を単語に分割し、品詞を割り当て、助詞、助動詞、接続詞などの活用語を削除して、主に内容語となる名詞の文字列パターンを抽出する。
【００２８】
出現頻度算出部２１０ｃは、形態素解析部２１０ｂにより抽出された名詞の文字列パターンが学習データ内に出現する頻度（tf：term frequency）を算出するためのものである。
【００２９】
頻度逆数算出部２１０ｄは、形態素解析部２１０ｂにより抽出された名詞の文字列パターンが学習データ内に出現する頻度の逆数（idf：inverse document frequency）を算出するためのものである。なお、idfは、具体的には、log(N/df)で表現することができる（但し、Nは学習データの総数を表し、dfは単語が出現する学習データの頻度を表す）。
【００３０】
特徴語取出部２１０ｅは、学習データ入力部２１０ａに入力された学習データの内容を特徴付ける文字列パターンを取り出すためのものである。具体的には、出現頻度算出部２１０ｃで算出された出現頻度（tf）と頻度逆数算出部２１０ｄで算出された出現頻度逆数（idf）の積を算出し、算出値の上位ｍ個を取り出し、取り出した文字列パターンを特徴語として記憶部２２０に格納する。
【００３１】
正負決定部２１０ｆは、分類パラメータの正負を決定するためのものである。具体的には、特徴語取出部２１０ｅによって記憶部２２０に格納された特徴語のうち、特徴語取出部２１０ｅによって算出された出現頻度（tf）の値と出現頻度逆数（idf）の値の積算値の大きい特徴語から順に取り出し、取り出した特徴語がカテゴリＣ以外のテキスト集合よりもカテゴリＣのテキスト集合により多く含まれる場合には、正の分類パラメータ（重みが負の実数）と決定する。一方、逆の場合には負の分類パラメータ（重みが正の実数）と決定する。
【００３２】
重み算出部２１０ｇは、各分類パラメータの重みを学習アルゴリズムに基づいて算出する。なお、学習アルゴリズムとしては、例えば、線形SVM、FISHER判別式、BayesのBinary Independence Modelなどを用いることができる。
【００３３】
なお、計算機サーバ装置２００で生成された分類パラメータは、分類装置３００からの要求ごとに、要求元である分類装置３００に対してネットワーク４００を介して送信される。
【００３４】
記憶部２２０は、計算機サーバ装置２００を構成する各部を制御するための各種プログラムや各種データ、各種ファイルなどを格納しており、例えば、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＨＤＤ（Hard Disk Drive）、光ディスク、フレキシブルディスク、不揮発性メモリなどによりその機能を発揮することができる。
【００３５】
通信インターフェース部２３０は、計算機サーバ装置２００とネットワーク４００との間の通信を行うためのインターフェースである。即ち、通信インターフェース部２３０は、ネットワーク４００を介して、分類装置３００と各種データを送受信する機能を有する。
【００３６】
図３は、第１の実施の形態の分類装置３００の構成の一例を示す図である。第１の実施の形態の分類装置３００は、同図に示すように、分類パラメータ・学習データ情報受信部３１０と、分類パラメータ評価部３２０と、オートマトン構築部３３０と、オートマトンパターンマッチング部３４０と、受理パターン計測部３５０と、分類値評価部３６０と、で構成されている。
【００３７】
なお、同図に示すように、分類装置３００には入出力装置３７０が接続されており、入出力装置３７０を介して分類装置３００に入力される入力テキストを、カテゴリＣまたはそれ以外のカテゴリに分類し、分類結果を入出力装置３７０を介して通知する構成となっている。
【００３８】
分類パラメータ・学習データ情報受信部３１０は、計算機サーバ装置２００から分類パラメータ（w）を受信するためのものである。具体的には、オートマトンパターンマッチング部３４０から分類パラメータ（w）の受信処理の要求があった場合に、予め決められた形式のプロトコルに基づいて、計算機サーバ装置２００から分類パラメータ（w）を受信する。
【００３９】
分類パラメータ評価部３２０は、分類パラメータ（w）から文字列パターン｛sw1，sw2，sw3，・・・，swn｝と重み｛vw1，vw2，vw3，・・・vwn｝を分離し、連想配列Ａで管理する。
【００４０】
なお、分類パラメータ評価部３２０における連想配列Ａは、
Ａ=｛（sw1，vw1），（sw2，vw2），（sw3，vw3），・・・，（swn，vwn）｝
で表現することができ、分類パラメータ評価部３２０に保持される。
【００４１】
オートマトン構築部３３０は、分類パラメータ評価部３２０により分離された文字列パターンswi（i＝1〜n）を入力として、オートマトンを構築する。
【００４２】
オートマトンの構築方法としては、例えば、Aho-Corasick（“Efficient String Matching :An aid to Bibliographic Search”A.Aho,Corasick Communications of the ACM Vol.18 1975）やKen Thompsonなどを用いることができる。
【００４３】
オートマトンパターンマッチング部３４０は、入出力装置３７０を介して分類装置３００に入力された入力テキストを受け取り、受け取った入力テキストを走査し、分類パラメータ（w）の文字列パターン｛sw1，sw2，sw3，・・・，swn｝を探すためのものである。即ち、オートマトン構築部３３０により構築されたオートマトンの処理により、入力テキスト内に文字列パターン（swi）があるか否かを判定して入力テキスト内の文字列パターン（swi）を受理する。
【００４４】
なお、オートマトンパターンマッチング部３４０は、オートマトン構築部３３０にオートマトンが構築されていない場合に、分類パラメータ・学習データ情報受信部３１０に対して、計算機サーバ装置２００から分類パラメータ（w）を受信するように要求する。
【００４５】
受理パターン計測部３５０は、オートマトンパターンマッチング部３４０が入力テキストを走査することで、オートマトンによって受理された各文字列パターン（swi）の出現頻度（tfi）を計測するためのものである。即ち、オートマトンによって文字列パターン（swi）が受理された場合に、受理された分類パラメータ（w）の文字列パターン（swi）の入力テキスト内出現頻度（tfi）を１つインクリメントする。入力テキストを１文字ずつ、テキストの最初から最後までオートマトンに読み込ませることにより、入力テキストに出現する分類パラメータ（w）の各文字列パターン（swi）の出現頻度（tfi）の値を求めることができる。
【００４６】
なお、受理パターン計測部３５０によって計測された各文字列パターン（swi）の出現頻度（tfi）は、オートマトンにより受理された文字列パターン（swi）と併せて分類値評価部３６０に渡される。
【００４７】
分類値評価部３６０は、入力テキストの分類値を算出する。具体的には、分類パラメータ（w）の文字列パターン｛sw1，sw2，sw3，・・・，swn｝において、例えば、オートマトンにより受理され、受理パターン計測部３５０により計測された出現頻度の結果が、
｛（sw1，tf1），（sw3，tf3），(sw5，tf5)，（sw6，tf6），（sw9，tf9）｝
であったとすると、入力テキスト分類値は、下記の（１）式により求めることができる。
【００４８】
（vw1×tf1）+（vw3×tf3）+（vw5×tf5）+（vw6×tf6）+（vw9×tf9）・・・（１）
【００４９】
なお、オートマトンにより受理された文字列パターン（swi）の重み（vwi）は、上述した分類パラメータ評価部３２０の連想配列Ａから、受理された文字列パターン（swi）をそれぞれ入力として得ることができる。
【００５０】
また、分類値評価部３６０は、上述した（１）式で求めた分類値が０より大きい場合に、入力テキストをカテゴリＣに分類し、入出力装置３７０を介して、入力テキストがカテゴリＣに属する旨の結果（分類結果）を通知する。一方、上記（１）式で求めた分類値が０以下である場合に、入力テキストをカテゴリＣ以外のカテゴリに分類し、入力テキストがカテゴリＣに属さない旨の結果（分類結果）を通知する。
【００５１】
なお、上述した分類値の計算は、Multinomial Bayes分類器の例であり、他の分類器によっても分類値を求めることができる。具体的には、受理パターン計測部３５０で計測された分類パラメータ(w)のTF値であるtfiを加工して使用する場合がある。例えば、学習データの総数を（N）、学習データにおいて分類パラメータ（w）のDF値をｄfiとして、tfiの値をtfi×log(N/ dfi)で求めた値に置き換えて、上述した（１）式を計算する構成としてもよい。分類値評価部３６０をこのような構成とする場合には、計算機サーバ装置２００から分類パラメータ（w）と共に、Nおよびdfiを学習データ情報として分類パラメータ・学習データ情報受信部３１０により受信する構成とする。
【００５２】
次に、第１の実施の形態の特徴部分について図４−１〜図４−４を参照して説明する。
【００５３】
計算機サーバ装置２００により生成された分類パラメータ（w）が、下記の（２）式のように表現できるものであったとする。
【００５４】
w=｛（コリー，0.9711），（複写機，0.4123），(複合機，0.3779)，（デジタル，-0.9689），（カメラ，0.0923），（機能，0.0021）｝・・・（２）
【００５５】
上記（２）式の分類パラメータ（w）によれば、文字列パターン（swi）は、｛コリー｝，｛複写機｝，｛デジタル｝，｛カメラ｝，｛機能｝である。従って、Aho-Corasickの方法を用いてオートマトン構築部３３０に構築されるオートマトンは図４−１に示すようになる。同図に示すオートマトンは、総数１７個の状態から構成されている。
【００５６】
オートマトンは、状態によって構成される計算機であり、入力テキストの中に現在の状態に設定されている条件と一致する文字列が含まれているか否かを判定し、入力テキストの中に条件と一致する文字列が含まれている場合に、現在の状態に設定されている次に遷移する状態が示す状態に遷移する。現在の状態に設定されている次に遷移する状態が示す状態に遷移するプログラムを記憶媒体に記憶しておき、専用のＣＰＵ、または分類装置３００のＯＳが実行されるＣＰＵが実行することで実現することができる。
【００５７】
図４−２は、オートマトンの状態を示す状態番号と、その状態で受理する文字列パターン（swi）とを関連付けたテーブルの一例を示す図である。図４−１に示すオートマトンは、同図に示す状態番号に遷移すると、各状態番号に対応する文字列パターン（swi）を受理する。
【００５８】
即ち、図４−１を参照して説明すれば、状態番号２から状態番号３へ遷移する条件（「ー」）が一致すると、オートマトンは、｛コリー｝の文字列パターンを受理する。同様に、状態番号５から状態番号６へ遷移する条件（「機」）、状態番号７から状態番号８へ遷移する条件（「機」）、状態番号１１から状態番号１２へ遷移する条件（「ル」）、状態番号１４から状態番号１５へ遷移する条件（「ラ」）、または状態番号１６から状態番号１７へ遷移する条件（「能」）が一致すると、オートマトンは、｛複写機｝、｛複合機｝、｛デジタル｝、｛カメラ｝、または｛機能｝の文字列パターンを受理する。
【００５９】
そして、受理パターン計測部３５０は、オートマトンが受理した文字列パターン（コリー、複写機、複合機、デジタル、カメラ、機能）の入力テキスト内出現頻度（tfi）を１つインクリメントする。
【００６０】
なお、文字列パターン｛コリー｝を受理する状態番号３からの遷移先は状態番号０である（図４−３参照）。同様に、状態番号１２，１５，１７からの遷移先も状態番号０である（同図参照）。但し、状態番号６および状態番号８からの遷移先は、状態番号１６とする（同図参照）。状態番号５から状態番号６へ遷移する条件および状態番号７から状態番号８へ遷移する条件が、状態番号０から状態番号１６へ遷移する条件（「機」）と同一だからである。
【００６１】
上記のオートマトンを用いて、入力テキストを１文字ずつ、テキストの最初から最後までオートマトンに読み込ませることにより、入力テキストに出現する分類パラメータ（w）の各文字列パターン（swi）の出現頻度（tfi）の値を求めることができる。
【００６２】
例えば、オートマトンパターンマッチング部３４０の処理により、図５−１に示す入力テキストＴ１の冒頭部分をオートマトンで１文字ずつ読み込むと、オートマトンは、図５−２に示すように、現在の状態に設定されている次に遷移する状態が示す状態に遷移する。
【００６３】
そして、入力テキストＴ１を最後まで読み込ませると、結果として、図５−３に示すように、｛機能｝，｛複写機｝，｛複合機｝，｛コリー｝の文字列パターンを受理することができる。
【００６４】
同様に、図５−４に示す入力テキストＴ２を上記のオートマトンで読み込むと、オートマトンは、図５−５に示すように、｛デジタル｝，｛カメラ｝，｛機能｝の文字列パターンを受理することができる。
【００６５】
従って、入力テキストＴ１（図５−２参照）の分類値は、上述した式（１）および式（２）より、
F(M(T1))=（0.9711×1）+（0.4123×1）+（0.3779×1）+（0.0021×2）=1.7655>0
と、分類値評価部３６０で求めることができる。
【００６６】
同様に、入力テキストＴ２（図５−５参照）の分類値は、
F(M(T2))=（-0.9689×1）+（0.0923×1）+（0.0021×2）=-0.8724>0
と、分類値評価部３６０で求めることができる。
【００６７】
入力テキストＴ１の分類値は０より大きいため、分類値評価部３６０は、入力テキストＴ１をカテゴリＣに分類する。一方、入力テキストＴ２の分類値は０以下であるので、分類値評価部３６０は、入力テキストＴ２をカテゴリＣ以外のカテゴリに分類する。
【００６８】
なお、従来のテキスト分類方式によって入力テキスト１および入力テキスト２の分類値を求めた場合について説明する。
【００６９】
入力テキストＴ１および入力テキストＴ２について、形態素解析、単語分割、単語の出現頻度の算出、特徴後の抽出、およびテキストベクトル生成を行った結果、テキストベクトルx1，x2が生成されたとする。
【００７０】
入力テキスト１の特徴語を[オフィス、業務、機能、複写機、複合機、コリー]とするテキストベクトルx1は、
x1=[(オフィス，1)、(業務，1)、(機能，2)、(複写機，1)、(複合機，1)、(コリー，1)]
と表現することができるものとする。
【００７１】
また、入力テキスト２の特徴語を[デジタル、カメラ、機能、レンズ、撮影]とするテキストベクトルx2は、
x2=[（デジタル，1）、（カメラ，1）、（機能，2）、（レンズ，1）、（撮影，1）]
と表現することができるものとする。
【００７２】
テキストベクトル同士の内積は、同じ単語同士の重みの乗算結果を足し合わせた結果になるので、
f(x1)=w・x1=0.9711+0.4123+0.3779+0.0021*2=1.7655>0・・・（３）
f(x2)=w・x2=-0.9689+0.0923+0.0021*2=-0.8724<0・・・（４）
と表現することができ、オートマトンを用いた場合の分類結果と同じ値になる。
【００７３】
即ち、従来の分類方法により求めた分類値と、本実施の形態の分類方法により求めた分類値が同じ値となり、入力テキストについて形態素解析処理を行わずとも正確な分類値を求めることができるといえる。
【００７４】
なお、上記（３）式において、入力テキスト１の特徴語である｛オフィス｝および｛業務｝を、また上記（４）式において、入力テキスト２の特徴語である｛レンズ｝および｛撮影｝を考慮していない理由は、これらの特徴語の重みの内積が０になるからである。
【００７５】
また、第１の実施の形態で用いるオートマトンは、非決定有限オートマトン（non-deterministic finite automaton）であっても問題ない。
【００７６】
以上の構成において、第１の実施の形態のテキスト分類システム１００で行われる処理について説明する。
【００７７】
最初に、第１の実施の形態の計算機サーバ装置２００で行われる分類パラメータ（w）の生成処理について図６−１を参照して説明する。図６−１は、第１の実施の形態の計算機サーバ装置２００で行われる分類パラメータ（w）の生成処理の手順を示すフローチャートである。
【００７８】
まず、学習データ入力部２１０ａの処理により、複数の学習データ（ｄ１，ｄ２，・・・，ｄｎ）を入力する（ステップＳＡ−１）。なお、ここでは、学習データ入力部２１０ａに最初に入力される学習データをｄ１とし、二番目に入力される学習データをｄ２とし、最後に入力される学習データをｄｎとする。
【００７９】
ついで、形態素解析部２１０ｂの処理により、ステップＳＡ−１で学習データ入力部２１０ａに入力された学習データの文字列を単語に分割し、品詞を割り当て、助詞、助動詞、接続詞などの活用語を削除して、主に内容語となる名詞の文字列パターンを抽出する（ステップＳＡ−２）。なお、ステップＳＡ−２では、学習データ入力部２１０ａに入力された順番に学習データの形態素解析処理を行うものとする。
【００８０】
ついで、ステップＳＡ−２での形態素解析処理により文字列パターンの抽出が行われた学習データがｄｎでない場合（ステップＳＡ−３：Ｎｏ）、処理手順はステップＳＡ−２へ移行される。即ち、学習データ入力部２１０ａに入力された全ての学習データについての形態素解析が終わっていない場合に、ステップＳＡ−２へ移行される。
【００８１】
一方、ステップＳＡ−２で形態素解析処理が行われた学習データがｄｎである場合（ステップＳＡ−３：Ｙｅｓ）、出現頻度算出部２１０ｃの処理により、ステップＳＡ−２で抽出した名詞の文字列パターンが学習データ内に出現する頻度（tf）を算出する（ステップＳＡ−４）。
【００８２】
ついで、頻度逆数算出部２１０ｄの処理により、形態素解析部２１０ｂで抽出した名詞の文字列パターンが学習データ内に出現する頻度の逆数（idf）を算出する（ステップＳＡ−５）。
【００８３】
ついで、特徴語取出部２１０ｅの処理により、出現頻度算出部２１０ｃで算出された出現頻度（tf）と頻度逆数算出部２１０ｄで算出された出現頻度逆数（idf）の積を算出し（ステップＳＡ−６）、算出値の上位ｍ個を取り出し、取り出した文字列パターンを特徴語として記憶部２２０に格納する（ステップＳＡ−７）。
【００８４】
ついで、正負決定部２１０ｆの処理により、ステップＳＡ−７で特徴語取出部２１０ｅによって算出された出現頻度（tf）×出現頻度逆数（idf）の値が大きい特徴語から順に取り出し、取り出した特徴語がカテゴリＣ以外のテキスト集合よりもカテゴリＣのテキスト集合により多く含まれる場合（ステップＳＡ−８：Ｙｅｓ）には、正の分類パラメータ（重みが負の実数）と決定し（ステップＳＡ−９）、逆の場合（ステップＳＡ−８：Ｎｏ）には、負の分類パラメータ（重みが正の実数）と決定する（ステップＳＡ−１０）。
【００８５】
ついで、重み算出部２１０ｇの処理により、各分類パラメータの重み（vwi）を学習アルゴリズムに基づいて算出し（ステップＳＡ−１１）、算出した重み（vwi）と文字列パターン（swi）をペア（swi，vwi）として表現し（ステップＳＡ−１２）、分類パラメータを生成する。
【００８６】
ついで、第１の実施の形態の分類装置３００で行われる入力テキストの分類処理について図６−２を参照して説明する。図６−２は、第１の実施の形態の分類装置３００で行われる入力テキストの分類処理の手順を示すフローチャートである。
【００８７】
まず、オートマトンパターンマッチング部３４０の処理により、入出力装置３７０を介して分類装置３００に入力された入力テキストを受け取る（ステップＳＢ−１）。
【００８８】
ステップＳＢ−１で入力テキストを受け取ると、オートマトンパターンマッチング部３４０は、オートマトン構築部３３０にオートマトンが構築されているか否かを確認し、オートマトンが構築されていない場合（ステップＳＢ−２：Ｎｏ）、オートマトンを構築する処理（オートマトンの構築処理）を行う（ステップＳＢ−３）。オートマトンの構築処理を終えるとステップＳＢ−４へ移行される。なお、オートマトンの構築処理については後述する。
【００８９】
オートマトンパターンマッチング部３４０により、オートマトン構築部３３０にオートマトンが構築されているか否かを確認し、オートマトンが構築されている場合（ステップＳＢ−２：Ｙｅｓ）、またはステップＳＢ−３でオートマトンの構築処理を終えた場合は、オートマトンパターンマッチング部３４０の処理により、ステップＳＢ−１で受け取った入力テキストを走査する（ステップＳＢ−４）。
【００９０】
ついで、入力テキストの分類値を算出する分類値評価処理を行い、入力テキストをカテゴリＣまたはそれ以外のカテゴリに分類する（ステップＳＢ−５）。なお、分類値評価処理については後述する。
【００９１】
ついで、分類値評価部３６０の処理により、入出力装置３７０を介して、ステップＳＢ−５での分類結果を通知する（ステップＳＢ−６）。
【００９２】
次に、第１の実施の形態の分類装置３００で行われるオートマトンの構築処理について図６−３を参照して説明する。図６−３は、第１の実施の形態の分類装置３００で行われるオートマトンの構築処理の手順を示すフローチャートである。
【００９３】
オートマトン構築処理は、上述した入力テキストの分類処理におけるステップＳＢ−２（図６−２参照）において、オートマトンパターンマッチング部３４０により、オートマトン構築部３３０にオートマトンが構築されていないことが確認された場合に開始されるものである。
【００９４】
まず、オートマトンパターンマッチング部３４０は、分類パラメータ・学習データ情報受信部３１０に対して、分類パラメータ（w）の受信処理を要求する（ステップＳＢ−３０１）。
【００９５】
ついで、分類パラメータ・学習データ情報受信部３１０は、ステップＳＢ−３０１で分類パラメータの受信処理の要求を受け取ると、予め決められた形式のプロトコルに基づいて、計算機サーバ装置２００から分類パラメータ（w）を受信する（ステップＳＢ−３０２）。
【００９６】
ついで、分類パラメータ評価部３２０は、ステップＳＢ−３０２で受信した分類パラメータ（w）から文字列パターン｛sw1，sw2，sw3，・・・，swn｝と重み｛vw1，vw2，vw3，・・・vwn｝を分離し（ステップＳＢ−３０３）、連想配列Ａに格納する（ステップＳＢ−３０４）。
【００９７】
ついで、オートマトン構築部３３０の処理により、ステップＳＢ−３０３で分類パラメータ評価部３２０により分離された文字列パターン（swi（i＝1〜n））から、Aho-Corasickなどの方法により、オートマトンを構築する（ステップＳＢ−３０５）。
【００９８】
次に、第１の実施の形態の分類装置３００で行われる分類値評価処理について図６−４を参照して説明する。図６−４は、第１の実施の形態の分類装置３００で行われる分類値評価処理の手順を示すフローチャートである。
【００９９】
分類値評価処理は、上述した入力テキストの分類処理におけるステップＳＢ−４（図６−２参照）で入力テキストを走査すると開始されるものである。
【０１００】
まず、入力テキスト内に、ステップＳＢ−３０３（図６−３参照）で分離された文字列パターン（swi）があるか否かを判定する（ステップＳＢ−５０１）。
【０１０１】
ステップＳＢ−５０１で文字列パターン（swi）があると判定された場合（ステップＳＢ−５０２：Ｙｅｓ）、オートマトンの処理により、入力テキスト内の文字列パターン（swi）を受理する（ステップＳＢ−５０３）。なお、ステップＳＢ−１で文字列パターン（swi）がないと判定された場合（ステップＳＢ−５０２：Ｎｏ）、処理手順はステップＳＢ−５０１へ移行される。
【０１０２】
ステップＳＢ−５０３でオートマトンによって文字列パターン（swi）が受理されると、受理パターン計測部３５０の処理により、受理された文字列パターン（swi）の入力テキスト内出現頻度（tfi）を１つインクリメントする（ステップＳＢ−５０４）。
【０１０３】
ついで、入力テキストを１文字ずつ、テキストの最初から最後までオートマトンの読み込みが完了した場合（ステップＳＢ−５０５：Ｙｅｓ）、受理パターン計測部３５０の処理により、ステップＳＤ−３でオートマトンにより受理された文字列パターン（swi）と、ステップＳＢ−５０４で受理パターン計測部３５０によってインクリメントされた各文字列パターン（swi）の出現頻度（tfi）をペアリスト（swi，tfi）にする（ステップＳＢ−５０６）。なお、入力テキストの最後までオートマトンの読み込みが完了していない場合（ステップＳＢ−５０５：Ｎｏ）、処理手順はステップＳＢ−５０１に移行される。
【０１０４】
ついで、テキスト分類値評価部３６０の処理により、ステップＳＢ−５０３でオートマトンによって受理された文字列パターン（swi）の重み（vwi）を分類パラメータ評価部３２０の連想配列Ａから取得し、カテゴリＣにおける分類値を算出する（ステップＳＢ−５０７）。
【０１０５】
ステップＳＢ−５０７で算出した分類値が０より大きい場合（ステップＳＢ−５０８：Ｙｅｓ）、テキスト分類値評価部３６０の処理により、入力テキストをカテゴリＣに分類する（ステップＳＢ−５０９）。一方、ステップＳＢ−５０７で算出した分類値が０以下である場合、入力テキストをカテゴリＣ以外のカテゴリに分類する（ステップＳＢ−５１０）。
【０１０６】
以上説明したように、第１の実施の形態のテキスト分類システム１００は、計算機サーバ装置２００側で分類パラメータ（w）を生成し、分類装置３００側で分類パラメータ（w）からオートマトンを構築し、構築されたオートマトンを用いて入力テキストの文字列パターン(swi)の受理および出現頻度（tfi）の算出を行い、カテゴリＣにおける分類値を算出し、分類値が０より大きくなる場合には、入力テキストをカテゴリＣに分類し、分類値が０以下である場合には、入力テキストをカテゴリＣ以外のカテゴリに分類し、分類結果を入出力装置３７０を介して利用者に通知する。
【０１０７】
従って、第１の実施の形態のテキスト分類システム１００によれば、分類パラメータ（w）を計算機サーバ装置２００側で生成し、生成した分類パラメータ（w）を分類装置３００側に対して送信し、計算機サーバ装置２００側からの分類パラメータを受信した分類装置３００側で、分類パラメータ（w）の文字列パターン（swi）からオートマトンを構築し、構築されたオートマトンを用いて入力テキストの文字列パターン(swi)を受理し、受理した文字列パターンの出現頻度（tfi）を算出し、受理した文字列パターンの重み（vwi）および算出した出現頻度（tfi）から分類値を算出し、分類値が０より大きくなる場合に、入力テキストをカテゴリＣに分類し、分類値が０以下である場合に、入力テキストをカテゴリＣ以外のカテゴリに分類するので、利用者の使用する分類装置３００側では形態素辞書を必要とする形態素解析をすることなく、低コストで入力テキストを分類することができる。
【０１０８】
また、入力テキストを一度走査するだけで、テキスト分類に必要な情報（特徴語の出現頻度等）を得ることができるので、少なくとも二度以上の入力テキストの走査を必要とする従来技術に比して、テキスト分類処理を高速にすることができる。
【０１０９】
また、計算機サーバ装置２００側で分類パラメータ（wi）を生成しておき、分類パラメータの要求元が複数ある場合には、分類パラメータ（wi）を分類装置３００に対して送信するだけでよく、テキストの分類処理は要求元である各分類装置３００側で行われるので、従来のテキスト分類システムと比較すると、システム全体として、同時に多数のテキスト分類処理を行うことできる。
【０１１０】
また、大容量のデータである形態素辞書を必要とする形態素解析処理を行うことなく、一度の入力テキストの走査だけでテキスト分類を行うことができるので、携帯電話のようにパーソナルコンピュータに比して計算能力が劣る携帯端末装置でもリアルタイムにテキスト分類を行うことができる。即ち、従来技術では、携帯端末装置本体でのspamフィルタの実現は不可能であったので、携帯端末装置のキャリア側（通信サービスを提供する会社側）で用意したサーバでspamフィルタをかけるのが一般的であった。
【０１１１】
また、キャリアが抱える顧客数は膨大であるため、spamフィルタ用サーバに対する投資がかさんだりする。また、spamフィルタを携帯端末装置の利用者毎にカスタマイズして提供することは不可能であるため、spamフィルタによるメールフィルタリングは最大公約数的なフィルタリングになり、携帯端末装置の利用者にとって有用なものではなかった。
【０１１２】
一方、第１の実施の形態のテキスト分類システム１００によれば、携帯端末装置（分離装置３００）に送信されるe-mailのspamフィルタを携帯端末装置本体に実装することができ、e-mailの分類を行うことができる。また、利用者毎のカスタマイズを簡易に行うことができ、利用者にとってspamフィルタを有用なものにすることができる。
【０１１３】
テキストが英文である場合の本実施の形態における問題点、およびその対処方法について説明する。
【０１１４】
英単語は語形が変化するので、分類パラメータには文字列のパターンを指定する必要がある。従来の方法では形態素解析系が語形の変化を吸収するので、分類パラメータは単語文字列であっても問題ないが、本発明のテキスト分類法においてはパターンを指定する必要がある。
【０１１５】
例えば、“The domestic breeds of geese are not generally capable of flight.”の英文中の“geese”が分類パラメータに含まれるとすると、“geese”は“goose”の複数形なので、“goose”と“geese”を同じ特徴語と看做し、本実施の形態では｛goose|geese｝、または｛g(oo|ee)se｝という正規表現パターンで特徴語を表す。
【０１１６】
従来の分類法では形態素解析を行い、stemming処理を施すと“geese”と“goose”は同一視化されるので、分類パラメータに“goose”を指定しても問題はない。一方、本実施の形態では形態素解析などの言語処理は行わないので、分類パラメータには単語文字列をパターンとして指定する必要がある。
【０１１７】
分類パラメータを生成する計算機サーバ装置２００においては、不規則変化する英単語のパターンを保持する必要があり、学習の結果、分類パラメータに不規則に変化する英単語が含まれる場合は、単語文字列のパターンで置き換える。
【０１１８】
分類パラメータに正規表現でパターンが指定された場合でも、“Compilers: Principles, Techniques, and Tools by Alfred V. Aho, Ravi Sethi, and Jeffrey D. Ullman Addison Wesley 1986  ISBN 0201100886”の3.6 “finite automata” p113〜p128に記載の方法（Ken Thompsonの方法）に従えば、決定性有限オートマトン（deterministic finite automaton）を構築できるので、英語のみならず欧州言語に対しても本実施の形態は適用できる。
【０１１９】
（第２の実施の形態）
次に、本発明の第２の実施の形態のテキスト分類システム１００について説明する。なお、第２の実施の形態の説明においては、上述した第１の実施の形態の説明と重複する説明を省略する場合がある。
【０１２０】
第１の実施の形態のテキスト分類システム１００は、単数の分類パラメータ（w）を計算機サーバ装置２００で生成し、生成された単数の分類パラメータ（w）を参照して、入力テキストをカテゴリＣまたはそれ以外に分類装置３００で分類する構成であった。これに対して、第２の実施の形態のテキスト分類システム１００は、複数の分類パラメータ（wi）を計算機サーバ装置２００で生成し、生成された複数の分類パラメータ（wi）を参照して、入力テキストをｎ個のカテゴリ（複数のカテゴリ）に分類するものである。
【０１２１】
第２の実施の形態の計算機サーバ装置２００は、複数の分類パラメータ（wi）を生成する。即ち、上述したように、分類装置３００では、複数のカテゴリに分類するために、各カテゴリＣi用の分類パラメータ（wi）が必要となる。そこで、第２の実施の形態の計算機サーバ装置２００は、各カテゴリＣi用の分類パラメータ（wi）を生成する構成となっている。
【０１２２】
図７は、第２の実施の形態の分類装置３００の構成の一例を示す図である。第２の実施の形態の分類装置３００は、同図に示すように、分類パラメータ・学習データ情報受信部３１０と、分類パラメータ評価部３２０と、オートマトン構築部３３０と、オートマトンパターンマッチング部３４０と、受理パターン計測部３５０と、分類値評価部３６０と、さらにフィードバック送信部３８０を含んで構成されている。
【０１２３】
分類パラメータ・学習データ情報受信部３１０は、オートマトンパターンマッチング部３４０から分類パラメータ（wi）の受信処理の要求があった場合に、計算機サーバ装置２００から複数の分類パラメータ（w1，w2，・・・，wn）を受信する。
【０１２４】
分類パラメータ評価部３２０は、分類パラメータ・学習データ情報受信部３１０により受信された複数の分類パラメータ（wi）から文字列パターン｛sw11，sw12，・・・sw1n，sw21，sw22，・・・，sw2n，・・・，swn1，swn2，swnn｝と重み｛vw11，vw12，・・・vw1n，vw21，vw22，・・・，vw2n，・・・，vwn1，vwn2，vwnn｝を分離する。
【０１２５】
分類パラメータ評価部３２０は、分類パラメータの文字列パターンの和集合を計算する。計算した文字列パターンの和集合は、以下の（５）式より求めることができる。
【０１２６】
sw=Ｕswi,m(i)（i=1〜n）・・・（５）
【０１２７】
なお、分類パラメータ評価部３２０で管理される連想配列Ａは、
Ａ=｛（sw11'，vw11），（sw12'，vw12），・・・，（sw1n'，vw1n），（sw21'，vw21），（sw22'，vw22），・・・（sw2n'，vw2n），・・・，（swn1'，vwn1），（swn2'，vwn2），・・・，（swnn'，vwnn）｝
で表現することができる。
【０１２８】
swij'は、swijとカテゴリＣiを表す文字列ＳＣiと特殊コード（タブまたは改行コード）で連結した文字列であり、
swij'=ＳＣi+‘\n’+swij
により求めることができる。なお、ここでの「+」は、文字列を連結する演算子として使用するものである。
【０１２９】
オートマトン構築部３３０は、分類パラメータ評価部３２０により分離された文字列パターン｛sw11，sw12，・・・sw1n，sw21，sw22，・・・，sw2n，・・・，swn1，swn2，swnn｝を入力として、オートマトンを構築する。
【０１３０】
なお、オートマトン構築部３３０で構築されるオートマトンの数量は、計算機サーバ装置２００からの分類パラメータの数量と同数であると考えることもできるが、第２の実施の形態では、入力テキストの走査回数を減らすために、オートマトンを一つだけ構築し、一度の走査で入力テキストの分類値を得られる構成となっている。
【０１３１】
オートマトンパターンマッチング部３４０は、入力テキストを一度だけ走査をし、オートマトン構築部３３０により構築されたオートマトンの処理により、入力テキスト内の文字列パターンを受理する。
【０１３２】
分類値評価部３６０は、入力テキストがカテゴリＣiにおける分類値を求める。例えば、オートマトンにより受理され、受理パターン計測部３５０により計測された結果が、
｛（sw1，tf1），（sw3，tf3），(sw5，tf5)，（sw6，tf6），（sw9，tf9）｝
であったとすると、入力テキストの分類値は、下記の（６）式により求めることができる。
【０１３３】
（vwi1×tf1）+（vwi3×tf3）+（vwi5×tf5）+（vwi6×tf6）+（vwi9×tf9）・・・（６）
【０１３４】
なお、オートマトンにより受理された文字列パターンの重み（vwin）は、連想配列Ａから、受理された文字列パターン（swin）をそれぞれ入力として得ることができる。
【０１３５】
また、分類値評価部は、入力テキストの分類値が０より大きい場合に、入力テキストをカテゴリＣiに分類する。なお、第２の実施の形態では、入力テキストの分類値が０より大きい場合にカテゴリＣiに分類する構成としているが、最大の分類値（分類値＞０）を示すカテゴリに分類する構成としてもよい。即ち、複数のカテゴリを分類結果として入出力装置３７０を介して通知する構成でもよいし、最大の分類値を示すカテゴリを分類結果として入出力装置３７０を介して通知する構成でもよい。
【０１３６】
フィードバック送信部３８０は、分類装置３００に入出力装置３７０を介して入力される正解カテゴリＣjを受け取る。正解カテゴリＣjとは、分類結果を吟味した利用者が期待するカテゴリを示す情報である。即ち、利用者にとって入力テキストが適切なカテゴリに修正して分類するように指示するための情報である。
【０１３７】
また、フィードバック送信部３８０は、ネットワーク４００を介して計算機サーバ装置２００に対し、入出力装置３７０を介して受け取った正解カテゴリＣj（分類結果フィードバック）を入力テキストと共に送信する。
【０１３８】
フィードバック送信部３８０により入力テキストおよび正解カテゴリＣjが計算機サーバ装置２００に送信されると、計算機サーバ装置２００では、入力テキストおよび正解カテゴリＣjを受け取り、受け取った入力テキストを含めた学習データを学習データ入力部２１０ａに入力し、入力テキストが正解カテゴリＣjに分類されるような分類パラメータ（wi）を再生成する。
【０１３９】
また、再学習して得られた分類パラメータ（wi）は、利用者の識別情報であるe-mailアドレスやipアドレスと、学習データ（TF値やDF値）と、関連付けられて計算機サーバ装置２００の記憶部２２０に格納（管理）される。
【０１４０】
例えば、連想配列ＡＰを用意し、e-mailアドレスやipアドレスなどの利用者の識別情報をインデックスにし、配列の内容に分類パラメータ（wi）と学習データ情報を格納すれば、分類パラメータ（wi）を利用者毎に管理することができる。これにより、計算機サーバ装置２００側に分類装置３００側から分類パラメータの送信要求があった場合には、再生成した分類パラメータを送信することができ、分類パラメータの要求元の分類装置３００では、より正確な入力テキストの分類を行うことができる。
【０１４１】
また、識別情報を組織毎にグルーピングし、再生成した分類パラメータと、学習データと、を関連付けて管理する構成としてもよい。
【０１４２】
以上の構成において、第２の実施の形態のテキスト分類システム１００で行われる処理について説明する。なお、ここでは、上述した第１の実施の形態のテキスト分類システム１００で行われる処理と異なる部分について説明する。
【０１４３】
第２の実施の形態の分類装置３００で行われるオートマトンの構築処理について図８−１を参照して説明する。図８−１は、第２の実施の形態の分類装置３００で行われるオートマトンの構築処理の手順を示す図である。
【０１４４】
まず、第１の実施の形態では、オートマトンパターンマッチング部３４０により、オートマトン構築部３３０にオートマトンが構築されていないことが確認されると、オートマトンパターンマッチング部３４０は、分類パラメータ・学習データ情報受信部３１０に対して、分類パラメータ（w）の受信処理の要求をした。これに対して、第２の実施の形態では、オートパターンマッチング部３４０は、分類パラメータ・学習データ情報受信部３１０に対して、複数の分類パラメータ（wi）の受信処理を要求する（ステップＳＢ−３１１）。
【０１４５】
ついで、分類パラメータ・学習データ情報受信部３１０は、ステップＳＢ−３１１で複数の分類パラメータ（wi）の受信処理の要求を受け取ると、予め決められた形式のプロトコルに基づいて、計算機サーバ装置２００から複数の分類パラメータ（wi）を受信する（ステップＳＢ−３１２）。
【０１４６】
ついで、分類パラメータ評価部３２０は、ステップＳＢ−３１２で受信した分類パラメータ（wi）から文字列パターン｛sw11，sw12，・・・sw1n，sw21，sw22，・・・，sw2n，・・・，swn1，swn2，swnn｝と重み｛vw11，vw12，・・・vw1n，vw21，vw22，・・・，vw2n，・・・，vwn1，vwn2，vwnn｝を分離する（ステップＳＢ−３１３）。
【０１４７】
ついで、分類パラメータ評価部３２０は、分類パラメータ（wi）の文字列パターン｛sw11，sw12，・・・sw1n，sw21，sw22，・・・，sw2n，・・・，swn1，swn2，swnn｝の和集合（sw）を上記（５）式より、算出する（ステップＳＢ−３１４）。
【０１４８】
ついで、ステップＳＢ−３１３で分離された各文字列パターン｛sw11，sw12，・・・sw1n，sw21，sw22，・・・，sw2n，・・・，swn1，swn2，swnn｝から、
swij'=ＳＣi+‘\n’+swij
の式を用いてswij'を求め、求めたswij'とステップＳＢ−３１３で分離された重みを連想配列Ａに格納する（ステップＳＢ−３１５）。
【０１４９】
ついで、オートマトン構築部３３０の処理により、ステップＳＢ−３１４で算出した文字列パターンの和集合（sw）から、Aho-Corasickなどの方法により、オートマトンを構築する（ステップＳＢ−３１６）。
【０１５０】
次に、第２の実施の形態の分類装置３００で行われる分類値評価処理について図８−２を参照して説明する。図８−２は、第２の実施の形態の分類装置３００で行われる分類値評価処理の手順を示すフローチャートである。なお、最後に分類処理が行われるカテゴリをカテゴリＣnとする。
【０１５１】
第１の実施の形態では、文字列パターン（swi）と、各文字列パターン（swi）の出現頻度（tfi）をペアリスト（swi，tfi）にすると、テキスト分類値評価部３６０の処理により、受理された文字列パターン（swi）の重み（vwi）を分類パラメータ評価部３２０の連想配列Ａから取得し、分類値を算出した。これに対して、第２の実施の形態では、文字列パターン（swi）と、各文字列パターン（swi）の出現頻度（tfi）をペアリスト（swi，tfi）にすると、カテゴリＣiにおける入力テキストの分類値を算出する（ステップＳＢ−５１１）。
【０１５２】
ステップＳＢ−５１１で算出したカテゴリＣiにおける分類値が０より大きい場合（ステップＳＢ−５１２：Ｙｅｓ）、分類値評価部３６０の処理により、入力テキストをカテゴリＣiに分類する（ステップＳＢ−５１３）。一方、ステップＳＢ−５１１で算出したカテゴリＣiにおける分類値が０以下である場合（ステップＳＢ−５１２：Ｎｏ）、入力テキストをカテゴリＣiに分類しない（ステップＳＢ−５１４）。
【０１５３】
ついで、カテゴリＣiがカテゴリＣnである場合（ステップＳＢ−５１５：Ｙｅｓ）、処理手順は入力テキストの分類処理（図６−２参照）にリターンされる。一方、カテゴリＣiがカテゴリＣnでない場合（ステップＳＢ−５１５：Ｎｏ）、カテゴリＣi+1をカテゴリＣiとし、処理手順がステップＳＢ−５１１へ移行される。
【０１５４】
次に、第２の実施の形態のテキスト分類システム１００で行われる分類パラメータ（wi）の再構成処理について図９を参照して説明する。図９は、第２の実施の形態のテキスト分類システム１００で行われる分類パラメータ（wi）の再生成処理の手順を示すフローチャートである。
【０１５５】
分類値評価部３６０の処理により、入出力装置３７０を介して、入力テキストの分類結果が利用者に通知されると、利用者は、当該分類結果を吟味し、期待した分類結果にならない場合には、入出力装置３７０を介して、入力テキストの正解カテゴリＣjを分類装置３００に対して通知する（ステップＳＣ−１）。
【０１５６】
ついで、分類装置３００側のフィードバック送信部３８０は、ステップＳＣ−１で通知された通知された正解カテゴリＣjを受け取り、ネットワーク４００を介して、計算機サーバ装置２００に対して、入力テキスト、および受け取った正解カテゴリＣjを送信する（ステップＳＣ−２）。
【０１５７】
ついで、計算機サーバ装置２００は、ステップＳＣ−２で分類装置３００側から送信された入力テキストおよび正解カテゴリＣjを受け取り、受け取った入力テキストを含めた学習データを学習データ入力部２１０ａに入力し、入力テキストが正解カテゴリＣjに分類されるような分類パラメータの再生成処理（再学習）を行う（ステップＳＣ−３）。
【０１５８】
ついで、ステップＳＣ−３での再学習によって生成した分類パラメータ（wi）と、学習データ情報（TF値やDF値）と、使用者を特定する情報（例えば、e-mailアドレスやipアドレス）と、を関連付けて管理する（ステップＳＣ−４）。
【０１５９】
以上説明したように、第２の実施の形態のテキスト分類システム１００は、計算機サーバ装置２００側で複数の分類パラメータ（wi）を生成し、分類装置３００側で複数の分類パラメータ（wi）の文字列パターンの和集合（sw）からオートマトンを構築し、構築されたオートマトンを用いて入力テキストの文字列パターン(swi)の受理および出現頻度（tfi）の算出を行い、複数ある各カテゴリＣiごとに分類値を算出し、分類値が０より大きくなるカテゴリＣiに入力テキストを分類し、分類結果を入出力装置３７０を介して利用者に通知する。
【０１６０】
従って、第２の実施の形態のテキスト分類システム１００によれば、複数の分類パラメータ（wi）を計算機サーバ装置２００側で生成し、生成した分類パラメータ（wi）を分類装置３００側に対して送信し、計算機サーバ装置２００側からの分類パラメータを受信した分類装置３００側で、複数の分類パラメータ（wi）からオートマトンを構築し、構築されたオートマトンを用いて入力テキストの文字列パターン(swi)を受理し、受理した文字列パターンの出現頻度（tfi）を算出し、受理した文字列パターン（swi）の重み（vwi）および算出した出現頻度（tfi）から、複数ある各カテゴリＣiごとに分類値を算出し、分類値が０より大きくなるカテゴリＣiに入力テキストを分類するので、形態素辞書を必要とする形態素解析をすることなく入力テキストを分類することができると共に、入力テキストのカテゴリを詳細に分類することができる。
【０１６１】
また、分類装置３００側で、入出力装置３７０を介して利用者に分類結果を通知し、通知した分類結果に対する利用者からの正解カテゴリＣjを受け取り、受け取った正解カテゴリＣjおよび入力テキストを計算機サーバ装置２００側に対して送信し、分類装置３００側から送信された正解カテゴリＣjおよび入力テキストを受信した計算機サーバ装置２００側で、入力テキストを含めた学習データを入力して分類パラメータの再生成処理を行い、再生成した分類パラメータと、学習データ情報と、利用者の識別情報（e-mailアドレスやipアドレス）と、を関連付けて管理しておくので、計算機サーバ装置２００側に分類装置３００側から分類パラメータの送信要求があった場合には、再生成した分類パラメータを送信することができ、分類パラメータの要求元の分類装置３００では、より正確な入力テキストの分類を行うことができる。
【０１６２】
また、利用者を組織毎にグルーピングし、即ち、組織毎にe-mailアドレスやipアドレスなどの識別情報をグルーピングし、再生成した分類パラメータと、学習データと、を関連付けて管理するので、組織ごとに最適な分類パラメータ（wi）を生成することができ、効率の良いテキスト分類を行うことができる。
【図面の簡単な説明】
【０１６３】
【図１】第１の実施の形態のテキスト分類システム１００の構成の一例を示す図である。
【図２】第１の実施の形態の計算機サーバ装置２００の構成の一例を示す図である。
【図３】第１の実施の形態の分類装置３００の構成の一例を示す図である。
【図４−１】第１の実施の形態のオートマトン構築部３３０に構築されるオートマトンの一例を示す図である。
【図４−２】オートマトンが受理する文字列パターンと、オートマトンが当該文字列パターンを受理するときの状態番号と、を関連付けたテーブルの一例を示す図である。
【図４−３】オートマトンの各状態における遷移先の状態番号を示す図である。
【図５−１】入力テキストＴ１の一例を示す図である。
【図５−２】入力テキストＴ１を走査した場合のオートマトンの遷移状態を示す図である。
【図５−３】入力テキストＴ１を走査した場合にオートマトンに受理される文字列を示す図である。
【図５−４】入力テキストＴ２の一例を示す図である。
【図５−５】入力テキストＴ２を走査した場合にオートマトンに受理される文字列を示す図である。
【図６−１】第１の実施の形態の計算機サーバ装置２００で行われる分類パラメータ（w）の生成処理の手順を示すフローチャートである。
【図６−２】第１の実施の形態の分類装置３００で行われる入力テキストの分類処理の手順を示すフローチャートである。
【図６−３】第１の実施の形態の分類装置３００で行われるオートマトンの構築処理の手順を示すフローチャートである。
【図６−４】第１の実施の形態の分類装置３００で行われる分類値評価処理の手順を示すフローチャートである。
【図７】第２の実施の形態の分類装置３００の構成の一例を示す図である。
【図８−１】第２の実施の形態の分類装置３００で行われるオートマトンの構築処理の手順を示す図である
【図８−２】第２の実施の形態の分類装置３００で行われる分類値評価処理の手順を示すフローチャートである。
【図９】第２の実施の形態のテキスト分類システム１００で行われる分類パラメータ（wi）の再生成処理の手順を示すフローチャートである。
【符号の説明】
【０１６４】
１００  テキスト分類システム
２００  計算機サーバ装置
２１０  制御部
２１０ａ  学習データ入力部
２１０ｂ  形態素解析部
２１０ｃ  出現頻度算出部
２１０ｄ  頻度逆数算出部
２１０ｅ  特徴語取出部
２１０ｆ  正負決定部
２１０ｇ  重み算出部
２２０  記憶部
２３０  通信インターフェース部
３００  分類装置
３１０  分類パラメータ・学習データ情報受信部
３２０  分類パラメータ評価部
３３０  オートマトン構築部
３４０  オートマトンパターンマッチング部
３５０  受理パターン計測部
３６０  分類値評価部
３７０  入出力装置
３８０  フィードバック送信部
【図１】
2008071283.tif 000003
【図２】
2008071283.tif 000004
【図３】
2008071283.tif 000005
【図４−１】
2008071283.tif 000006
【図４−２】
2008071283.tif 000007
【図４−３】
2008071283.tif 000008
【図５−１】
2008071283.tif 000009
【図５−２】
2008071283.tif 000010
【図５−３】
2008071283.tif 000011
【図５−４】
2008071283.tif 000012
【図５−５】
2008071283.tif 000013
【図６−１】
2008071283.tif 000014
【図６−２】
2008071283.tif 000015
【図６−３】
2008071283.tif 000016
【図６−４】
2008071283.tif 000017
【図７】
2008071283.tif 000018
【図８−１】
2008071283.tif 000019
【図８−２】
2008071283.tif 000020
【図９】
2008071283.tif 000021