文章分類装置、文章分類方法および分類辞書作成装置
【課題】 文章データを複数のカテゴリに分類することが困難である。
【解決手段】 分類辞書保持部24は、文章の構成要素と、予め定められた複数のカテゴリについて各カテゴリに分類されるべき文章中にその構成要素が出現する出現頻度とが関連付けられた辞書データを保持する。文章受付部36は、新たに分類対象とする未分類文章データを外部装置から受け取る。文章分解部18は、所定の規則にしたがって未分類文章データを解析して文章の構成要素を抽出する。カテゴリ帰属確率計算部26は、辞書データを参照して、抽出された構成要素を含む未分類文章データがそれぞれのカテゴリに帰属する確率を表す帰属確率を各カテゴリについて計算する。判定部28は、帰属確率を参照して、未分類文章データが分類されるカテゴリを判定する。
【解決手段】 分類辞書保持部24は、文章の構成要素と、予め定められた複数のカテゴリについて各カテゴリに分類されるべき文章中にその構成要素が出現する出現頻度とが関連付けられた辞書データを保持する。文章受付部36は、新たに分類対象とする未分類文章データを外部装置から受け取る。文章分解部18は、所定の規則にしたがって未分類文章データを解析して文章の構成要素を抽出する。カテゴリ帰属確率計算部26は、辞書データを参照して、抽出された構成要素を含む未分類文章データがそれぞれのカテゴリに帰属する確率を表す帰属確率を各カテゴリについて計算する。判定部28は、帰属確率を参照して、未分類文章データが分類されるカテゴリを判定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文章分類技術に関し、特に、未分類の文章データを予め定められた複数のカテゴリに分類する文章分類技術に関する。
【背景技術】
【0002】
インターネットが社会に広く浸透するにしたがって、ネットワーク上を流通する文章の量が飛躍的に増加している。このため、ネットワークを通じて収集されるウェブページを適切なカテゴリに分類して表示したり、多量の電子メールを適切なフォルダに分類するなどの作業を人手で実行することは、困難になりつつある。そこで、文章データを所定のカテゴリに自動的に分類するための文章分類技術が考案されている。
【0003】
例えば、特徴ベクトル法を使用した文章分類技術がある(例えば、特許文献1参照)。この技術では、以下のようなステップで文章を分類する。まず、カテゴリiに属する文例集から、カテゴリiに対する各単語jの重要度wijをベクトルで表現したWi={wij}を生成しておく。次に、未分類の文章に出現した単語を使用して、その文章の特徴ベクトルWを生成する。そして、特徴ベクトルWに最も距離が近いベクトルWnを求め、その文章を対応するカテゴリnに分類する。
【特許文献1】特開2000−222431号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、特徴ベクトル法を使用した文章分類では、分類対象の文章がある単語を含んでいるとき、特定のカテゴリに分類される可能性、または特定のカテゴリに分類されない可能性が非常に高いというような条件の下では、そのような条件をうまく文章分類に反映させることができず、誤分類が多くなってしまう。
【0005】
本発明はこうした状況に鑑みてなされたものであり、その目的は、文章データを予め定められている分類体系に沿って自動的に分類する技術を提供することにある。
【課題を解決するための手段】
【0006】
本発明のある態様は、文章分類装置である。この装置は、文章の構成要素と、予め定められた複数のカテゴリについて各カテゴリに分類されるべき文章中にその構成要素が出現する出現頻度とが関連付けられた辞書データを保持する分類辞書保持部と、新たに分類対象とする未分類文章データを外部装置から受け取る文章受付部と、所定の規則にしたがって前記未分類文章データを解析して文章の構成要素を抽出する文章分解部と、前記辞書データを参照して、抽出された構成要素を含む未分類文章データがそれぞれのカテゴリに帰属する確率を表す帰属確率を各カテゴリについて計算するカテゴリ帰属確率計算部と、前記帰属確率を参照して、前記未分類文章データが分類されるカテゴリを判定する判定部と、を備える。
【0007】
この態様によれば、未分類文章データがいずれのカテゴリに属するかを、カテゴリ毎に算出される帰属確率にしたがって判定する。したがって、ひとつの文章データをひとつのカテゴリに分類することもできるし、2つ以上のカテゴリに分類することもできる。また、ひとつの視点に基づくカテゴリについて分類するのみならず、複数の視点に基づくカテゴリを混合させておき、それらについてまとめて帰属確率を算出することができる。
【0008】
「帰属確率」とは、いくつかの構成要素を含む未分類文章データがあるカテゴリに分類されるべき確率のことであり、カテゴリ毎に算出することができる。この帰属確率は、未分類文章データから抽出された各構成要素について帰属確率の計算対象となるカテゴリにおける出現頻度を前記分類辞書保持部から取り出して出現確率を計算し、算出された各構成要素についての出現確率を合成して当該カテゴリへの帰属確率を求めることによって計算することができる。
【0009】
本発明の別の態様は、分類辞書作成装置である。この装置は、予め定められた複数のカテゴリについて、それぞれのカテゴリに分類されるべき文章データを含むカテゴリ文例データ群と、カテゴリに分類されない文章データを含む非カテゴリ文例データ群とを格納する文例格納部と、所定の規則にしたがって文章データを解析して文章の構成要素を抽出する文章分解部と、前記カテゴリ文例データ群および非カテゴリ文例データ群に含まれる文章データ中に、前記文章分解部により抽出された構成要素が出現する出現頻度をカテゴリ毎にカウントする分類辞書作成部と、構成要素と各カテゴリにおける出現頻度とが関連付けられた辞書データを保持する分類辞書保持部と、外部装置に対して前記辞書データを提供する辞書提供部と、を備える。
【0010】
この態様によれば、分類辞書作成装置は、未分類文章データの各カテゴリへの帰属確率を計算するために外部装置から辞書データの提供が要求されたとき、分類辞書保持部に保持されている辞書データを外部装置に送信することができる。
【0011】
なお、以上の構成要素の任意の組合せ、本発明を方法、装置、システム、記録媒体、コンピュータプログラムにより表現したものもまた、本発明の態様として有効である。
【発明の効果】
【0012】
本発明によれば、未分類の文章データを予め定められたカテゴリに沿って自動的に分類することができる。
【発明を実施するための最良の形態】
【0013】
本発明の一実施形態は、特定のカテゴリに属するか否かが予め決められている多数の文例データを使用して分類用の辞書データを作成しておき、分類対象の文章データに対して、カテゴリ毎にそのカテゴリに属するか否かに関する確率を算出することによって、その文章データが分類されるべきカテゴリを決定する文章分類装置である。以下、図面を参照して本実施の形態に係る文章分類装置について説明する。
【0014】
図1は、本実施の形態に係る文章分類装置10の使用形態の一例を示す。文章分類装置10は、ネットワーク80を介してクライアント端末82やサーバ84と接続される。文章分類装置10は、クライアント端末82またはサーバ84から送信されてくる文章データを、予め設定してある複数のカテゴリのいずれかに分類する。また、文章分類装置10は、図示しないウェブクローラ(サーチロボットともいう)がネットワークに接続されている多数のクライアント端末82およびサーバ84から収集してきた文章データを、複数のカテゴリのいずれかに分類する。本実施の形態による文章分類装置10は、分類対象の文章データを2つ以上のカテゴリに属すると判定することもできる点に、特徴のひとつがある。
【0015】
図2は、文章分類装置10の機能ブロック図である。文章分類装置10は、文例格納部12、文章分解部18、ソート部20、分類辞書作成部22、分類辞書保持部24、カテゴリ帰属確率計算部26、判定部28、要素絞り込み基準提供部30、判定結果格納部32および文章受付部36を備える。これらの構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【0016】
文章分類装置10に含まれる機能ブロックは、辞書データを作成する学習段階に使用される機能ブロックと、辞書データの作成後に当該辞書データを使用して未分類の文章データを分類する分類段階に使用される機能ブロックとに分けることができる。まず、学習段階に使用される機能ブロックについて説明する。
【0017】
文例格納部12は、予め定められた複数のカテゴリそれぞれについて、そのカテゴリに分類されるべき文章データを含むカテゴリ文例14と、そのカテゴリに分類されない文章データを含む非カテゴリ文例16とを格納する。ここで「カテゴリ」とは、文章データを特定の基準にしたがって分類するためのグループ分けのことをいう。このカテゴリは、文章の分類結果の使用目的に応じて、多様に設定することができる。例えば、文章分類装置10による分類結果をニュース記事配信サイトで使用する場合は、「政治」「経済」「社会」「スポーツ」のようなカテゴリの種類が考えられる。文章分類装置10による分類結果をディレクトリ型の検索サイトで提供する場合は、「ショッピング」「旅行」「映画」「音楽」のようなカテゴリの種類が考えられる。文章分類装置10により、クライアント端末から送信されてくるアンケートなどを分類する場合は、「女性」「若年層」のようなカテゴリの種類が考えられる。
【0018】
また、「文章データ」とは、テキストデータ、HTML、XML、XHTMLファイルなどのテキスト情報を含んだデータを指すが、そのデータ形式は限定されない。
【0019】
M個のカテゴリ(カテゴリ1、・・・、カテゴリM)が規定されるとすると、各カテゴリ毎にカテゴリ文例14と非カテゴリ文例16が文例格納部12内に準備される。カテゴリ文例は、あるカテゴリに分類されるべきひとつまたは複数の文章データを蓄積したファイルである。非カテゴリ文例データは、あるカテゴリに分類されないひとつまたは複数の文章データを蓄積したファイルである。文章データがいずれのカテゴリ文例または非カテゴリ文例に含まれるかの判断は、人手を介して行われる。また、カテゴリ文例と非カテゴリ文例は、各カテゴリについて一対ずつ準備される。
【0020】
あるカテゴリについての非カテゴリ文例に含まれる文章データは、他のカテゴリについての非カテゴリ文例に含まれる文章データと異なっていてもよいし、同一であってもよい。つまり、「非カテゴリ1文例」内の文章データと「非カテゴリ2文例」内の文章データとが重複していてもよい。カテゴリ文例についても同様であり、例えば、「カテゴリ1文例」と「カテゴリ2文例」の両方に分類される文章データが存在してもよい。ただし、同一カテゴリ内で、カテゴリ文例と非カテゴリ文例の両方に分類される文章データは存在しないことが望ましい。
【0021】
文章分解部18は、上述したカテゴリ文例14および非カテゴリ文例16に含まれる文章データを所定の規則にしたがって解析し、文章の構成要素を抽出する。文章分解部18は、既知の文章分解アルゴリズムのうち任意のものを使用することができる。文章分解部18は、文章分解アルゴリズムに応じて、単語、単語と品詞の組合せ、文節、単文などを構成要素として文章データから抽出する。文章分解部18で使用される文章分解アルゴリズムの例については、後述する。
【0022】
ソート部20は、文章分解部18によりカテゴリ文例14、非カテゴリ文例16の文章データから抽出された構成要素を、所定の規則にしたがって並べ替える。一例として、構成要素の読みを50音順に並べ替えてもよい。または、構成要素の最初の一文字のASCIIコード順に並べ替えてもよい。文章分解部18が単語と品詞の組合せを構成要素として抽出した場合は、構成要素の品詞順に配列してもよい。ソート部20によって構成要素を並べ替えることによって、後述する構成要素をキーとした辞書データの検索が容易になるため、分類辞書の作成に要する時間を短縮できる。
【0023】
分類辞書作成部22は、文章分解部18により抽出された各構成要素が、各カテゴリについてのカテゴリ文例14および非カテゴリ文例16内の文章データに出現する頻度を算出し、構成要素と各カテゴリについての出現頻度とを関連付けた辞書データを作成する。ここでいう「頻度」は、単なる出現の回数でもよいし、全単語数に対する出現の比率で表してもよい。あるいは、カテゴリ文例または非カテゴリ文例に含まれる文章データ数に対する出現比率でもよい。以下では、これらをあわせて「出現頻度」と呼ぶ。いずれにしても、ある構成要素がひとつのカテゴリについてのカテゴリ文例と非カテゴリ文例に出現する度合いを表現する数値であれば、任意のものを採用できる。
分類辞書作成部22により作成された辞書データは、分類辞書保持部24に格納される。分類辞書作成部22のさらに詳細な構成および機能については、図4を参照して後述する。
【0024】
要素絞り込み基準提供部30には、文章分解部18により抽出された構成要素から一部の構成要素を除外するための選択基準が格納されている。この選択基準は、例えば特定の品詞(例えば、名詞+動詞、名詞のみ、助詞のみなど)を指定したり、文字数の上限を指定したり、平仮名のみ、または漢字のみからなる構成要素を指定する条件のことをいう。複数の条件を組み合わせて選択基準としてもよい。
【0025】
分類辞書作成部22は、要素絞り込み基準提供部30から提供される選択基準を利用して、辞書データの作成対象となる構成要素数を絞り込むことによって、分類辞書保持部24に格納される辞書データのデータ量を抑制しつつ、分類に有効な辞書データを作成することができる。
本実施の形態の文章分類装置10は、分類すべき文章データの言語を限定しないが、この要素絞り込み基準提供部30は、日本語の文章データの処理時には特に有用となる。
【0026】
続いて、分類段階に使用される機能ブロックについて説明する。
【0027】
文章受付部36は、分類対象となる文章データ34(以下、「未分類文章データ34」と呼ぶ)を図示しない外部装置から受信する。未分類文章データ34は、上述と同様にデータ形式に制限はない。外部装置は、例えばネットワークに接続されたクライアント端末やサーバであるが、これらに限定されない。
【0028】
文章分解部18は、文章受付部36から未分類文章データ34を受け取り、上述したのと同様にして、文章の構成要素を抽出する。抽出された構成要素は、ソート部20によって所定の規則にしたがって並べ替えられる。この規則は、カテゴリ文例および非カテゴリ文例から抽出された構成要素を並べ替えたのと同様の規則であることが好ましい。この並べ替えによって、構成要素をキーとした分類辞書保持部24内の辞書データの検索が容易になるため、後述するカテゴリ帰属確率計算部26における処理が高速化される。
【0029】
カテゴリ帰属確率計算部26は、分類辞書保持部24に格納された辞書データを参照して、いくつかの構成要素を含む未分類文章データがそれぞれのカテゴリに分類されるべき確率を、各カテゴリについて計算する。以下では、この確率のことを「帰属確率」と呼ぶ。
【0030】
分類辞書作成部22と同様に、カテゴリ帰属確率計算部26は、要素絞り込み基準提供部30から提供される選択基準にしたがって、帰属確率を算出する基礎となる構成要素数を限定してもよい。
カテゴリ帰属確率計算部26のさらに詳細な構成および機能については、図7を参照して後述する。
【0031】
判定部28は、カテゴリ帰属確率計算部26により各カテゴリについて計算された帰属確率を取得し、帰属確率の値に基づいて未分類文章データをいずれかのカテゴリに分類するかを決定する。より具体的には、判定部28は、帰属確率が最大となったカテゴリに未分類文章データを分類する。あるいは、予め設定されているしきい値以上の帰属確率が得られたすべてのカテゴリに未分類文章データを分類してもよい。こうすることによって、一連の演算でひとつの未分類文章データを2つ以上のカテゴリに分類することができる。帰属確率がしきい値以上となったカテゴリが存在しない場合、判定部28は、未分類文章データをいずれのカテゴリにも分類されない文章と判定してもよいし、帰属確率が最大となったカテゴリに分類してもよい。判定部28による未分類文章データの判定結果は、判定結果格納部32に格納されるか、または図示しない外部装置に出力される。
【0032】
次に、文章分解部18で使用される文章分解アルゴリズムの概要を説明する。
【0033】
(1)形態素解析
図3は、文章データを形態素解析によって構成要素に分解した例を示す。使用した文章データは、「気象庁は23日、関東地方で春一番が吹いたと発表した。」という文章である。図3に示すように、この文章は「気象庁/は/2/3/日/、/関東/地方/で/春一番/が/吹い/た/と/発表/し/た/。」のように、18の要素に分解される。形態素解析では、対象となる文章から、活用形50と、原形52と、品詞54を決定することができる。これら活用形、原形、品詞のうち、(原形+品詞)を構成要素としてもよいし、または、原形のみを要素としてもよい。原形の代わりに活用形を要素としてもよい。
【0034】
形態素解析を使用して抽出された構成要素は文章の分解能が高いため、この構成要素を使用した辞書データに基づくカテゴリへの分類が高精度になると期待される。形態素解析は周知の技術であるため、これ以上の説明を省略する。
【0035】
(2)構文解析
次に、構文解析について説明する。構文解析は、文章を文節に分解する。図3の例と同一の文章データを構文解析によって分解すると、「気象庁は/23日、/関東地方で/春一番が/吹いたと/発表した。」のように、6つの構成要素に分解される。
【0036】
構文解析を使用すると、形態素解析と比べて構成要素数が大幅に減少するので、高速分類に適しているが、分類の精度は低下する。構文解析は周知の技術であるため、これ以上の説明を省略する。
【0037】
(3)最小構成文
次に、形態素解析と構文解析を使用して文章から最小構成文を抽出する例を説明する。ここで「最小構成文」とは、最小限の意味をなす文のことであり、詳細は「模倣レポート判定に用いる文書間類似度の考案、太田貴久、増山繁、言語処理学会第10回年次大会発表論文集、pp.729-732、2004」に記載されている。
【0038】
図3の例と同一の文章データから最小構成文を抽出すると、「気象庁は発表した。」「23日、発表した。」「関東地方で春一番が吹いたと発表した。」の3つの最小構成文が得られる。これら最小構成文を構成要素として辞書データを作成すると、文脈の中での単語の意味を捉えることができるため、複数の意味に捉えられる単語を含んだ文章を適切なカテゴリに分類するといった高度の分類が可能となるが、計算コストは高くなる。
【0039】
なお、形態素解析の結果得られる品詞情報を利用して、名詞、形容詞、動詞の原形のみからなる最小構成文を抽出してもよい。上記と同一の例を使用すると、「気象庁・発表する」「23日・発表する」「関東地方・春一番・吹く・発表する」という3つの最小構成文が得られる。
【0040】
このように、文章分解部18において異なる文章分解アルゴリズムを使用して構成要素を抽出することで、分類辞書作成部22において異なる傾向を有する辞書データを作成することができる。したがって、カテゴリの種類などに合わせて適切な文章分解アルゴリズムを選択することで、分類の精度や処理速度を向上させることも可能である。
【0041】
図4は、分類辞書作成部22の詳細な機能ブロック図である。分類辞書作成部22は、構成要素受付部102、絞り込み情報受付部104、カテゴリ情報提供部106、構成要素選択部108、辞書データ検索部110および辞書データ更新部112を含む。
【0042】
構成要素受付部102は、ソート部20から所定の規則にしたがって並べ替えられた構成要素を受け取り、構成要素選択部108に渡す。カテゴリ情報提供部106は、構成要素受付部102で受け取られた構成要素が抽出されたカテゴリ文例および非カテゴリ文例の属するカテゴリについての情報を、要素絞り込み基準提供部30に伝える。絞り込み情報受付部104は、要素絞り込み基準提供部30から選択基準を受け取り、構成要素選択部108に渡す。構成要素選択部108は、選択基準と構成要素とを比較して、選択基準を満たす構成要素を選択して辞書データ検索部110に渡す。辞書データ検索部110は、分類辞書保持部24に保持されている辞書データのなかから、選択基準を満たした構成要素と同一の構成要素についての辞書データがあるか検索し、対応する辞書データがある場合は、辞書データ更新部112に渡す。辞書データ更新部112は、選択基準を満たした各構成要素の数をカウントし、その数を辞書データに追加し、分類辞書保持部24に格納する。構成要素が新規であるときは、新たな辞書データを作成して分類辞書保持部24に格納する。
【0043】
図5は、分類辞書保持部24に格納されている辞書データのデータ構造図である。辞書データ40においては、構成要素42と、その構成要素がカテゴリ1〜Mのカテゴリ文例および非カテゴリ文例に含まれる文章中に出現する出現頻度44とが関連付けされている。構成要素をWn(n=1〜N)、Wnがカテゴリm(m=1〜M)のカテゴリ文例または非カテゴリ文例に含まれる文章中の出現頻度をそれぞれXnm、Ynmと表記すると、ある構成要素Wnについての辞書データ46は、(Wn,Xn1,Yn1,Xn2,Yn2,・・・,Xnm,Ynm)と表すことができる。
【0044】
この実施の形態では、各構成要素Wnについて、(カテゴリmのカテゴリ文例に含まれる文章中の出現頻度)と(カテゴリmの非カテゴリ文例に含まれる文章中の出現頻度)の2つの値をペアで保持している。これは、カテゴリ文例または非カテゴリ文例に新たな文章データを追加して分類辞書保持部24内の辞書データを拡充しようとした場合に、頻度情報の書き換えを容易にするためである。
別の実施の形態では、構成要素Wnの出現頻度を単一の値で保持してもよい。構成要素Wnのカテゴリmについての出現頻度をFnmと表記すると、Fnm=Xnm/Ynmとしてもよいし、Fnm=Xnm/(Xnm+Ynm)としてもよい。この場合、ある構成要素Wnについての辞書データ46は、(Wn,Fn1,Fn2,・・・,FnM)と表すことができる。
【0045】
図6は、要素絞り込み基準提供部30に格納されている選択基準のデータ構造図である。選択基準は、カテゴリ種類に対応して準備される。図6では、カテゴリ種類として、「テーマ分け」「文体」「年代」が含まれる。要素絞り込み基準提供部30は、構成要素を抽出したカテゴリ文例の情報をカテゴリ情報提供部106から受け取り、図中の左欄56に示す特定のカテゴリの場合には、右欄58の選択基準を返す。カテゴリ情報提供部106から受け取ったカテゴリが左欄56に存在しない場合は、標準的な「名詞」という選択基準を返す。
【0046】
例えば、カテゴリ種類がテーマや話題の分類に関するもの、例えば「旅行」「音楽」「映画」などのカテゴリの場合は、「名詞」という基準を提供する。このようなテーマや話題の分類については、特定の名詞の存在がカテゴリ分類を決定付けることが多いからである。カテゴリの種類が文体に関するもの、例えば「フォーマル」「丁寧」「乱文」などのカテゴリの場合は、「形容詞または助詞」という基準を提供する。文体は、「てにをは」などの助詞や感情表現によって決定できる場合が多いからである。さらに、文章を作成した人の年代や性別に関するもの、例えば「女性」「若年層」などの場合は、「平仮名の名詞」という基準を提供する。このように、要素絞り込み基準提供部30は、辞書データの作成対象となる構成要素が、いずれのカテゴリ文例または非カテゴリ文例に含まれる文章データから抽出されたかに応じて、カテゴリ毎に異なる選択基準を提供することができる。分類辞書作成部22は、選択基準を参照して、辞書として準備される構成要素を絞り込んた辞書データを作成することができる。
【0047】
要素絞り込み基準提供部30は、構成要素の品詞を選択基準として提供する代わりに、文字数を選択基準として提供してもよい。これによって、分類辞書作成部22は、一定字数以下の構成要素について辞書を作成することができる。あるいは、要素絞り込み基準提供部30は、選択基準として特定の構成要素(例えば、「自動車」という名詞)を提供してもよい。分類辞書作成部22は、それと一致する構成要素は辞書データの作成対象から除外するようにしてもよい。例えば、極めて多数の文章中で使用されるありふれた名詞(例えば、「私」「物」)などはカテゴリ分類に与える影響が少ないので、除外することが好ましい。
【0048】
図7は、カテゴリ帰属確率計算部26の詳細な機能ブロック図である。カテゴリ帰属確率計算部26は、構成要素受付部122、絞り込み情報受付部124、構成要素選択部126、辞書データ検索部128、出現確率算出部130および帰属確率算出部132を含む。
【0049】
構成要素受付部122は、ソート部20から所定の規則にしたがって並べ替えられた構成要素を受け取る。絞り込み情報受付部124は、要素絞り込み基準提供部30から選択基準を受け取り、構成要素選択部126に渡す。構成要素選択部126は、選択基準と構成要素とを比較して、選択基準を満たす構成要素を選択して辞書データ検索部128に渡す。辞書データ検索部128は、分類辞書保持部24に保持されている辞書データのなかから、選択基準を満たした構成要素と同一の構成要素についての辞書データがあるか検索し、対応する辞書データがある場合は、出現確率算出部130に渡す。
【0050】
出現確率算出部130は、各カテゴリmについて、未分類データから抽出された各構成要素Wnの出現確率anmを計算する。ここで、出現確率anmは、上述したカテゴリ文例または非カテゴリ文例に含まれる文章中への出現頻度Xnm、Ynmを使用して、次式により算出される。
【0051】
【数1】
【0052】
図8は、数1により算出された、カテゴリ1に対する各構成要素W1〜WNの出現確率a11〜aN1を示す。
なお、出現確率の算出は、数1に限られない。例えば、上述したFnmをそのまま使用してもよい。
【0053】
帰属確率算出部132は、算出された出現確率をすべての構成要素について総計して、未分類文章データについてカテゴリ毎の帰属確率を算出する。好ましくは、帰属確率算出部132は、ベイジアンフィルタ法を使用して、次式によりカテゴリnへの帰属確率Enを算出する。
【0054】
【数2】
【0055】
なお、ベイジアンフィルタ法以外の手法を使用して帰属確率を算出してもよい。例えば、すべての構成要素の出現確率を単に掛け合わせて帰属確率を算出してもよいし、出現確率の平均値を帰属確率としてもよい。
【0056】
図9は、分類辞書を作成する処理過程を示すフローチャートである。
まず、文章分解部18は、文例格納部12から一対のカテゴリ文例または非カテゴリ文例を取得する(S10)。次に、文章分解部18は、所定の文章分解アルゴリズムに基づいて、カテゴリ文例および非カテゴリ文例中の文章データを構成要素に分解し、ソート部20は分解された構成要素を所定の規則にしたがって並べ替える(S12)。なお、この並べ替えの実行は本実施の形態に必須ではなく、分類辞書保持部からのデータ検索時間が長くなるため演算速度は低下しうるが、カテゴリ分類の精度に影響を及ぼすことはない。
【0057】
次に、分類辞書作成部22は、抽出されたひとつの構成要素について、要素絞り込み基準提供部30から受け取った選択基準と比較して、辞書データの作成対象の構成要素であるか否かを判定する(S14)。辞書データの作成対象でなければ(S14のN)、S24に進む。辞書データの作成対象であれば(S14のY)、分類辞書作成部22は分類辞書保持部24からその構成要素についての辞書データを検索する(S16)。対応する辞書データが存在した場合は(S18のY)、今回の文例データ中に存在した構成要素の数を、辞書データ中のそのカテゴリの頻度に追加する(S20)。対応する辞書データが存在しない場合は(S18のN)、新たな辞書データを作成する(S22)。そして、文章分解部18で分解されたすべての構成要素について処理したか否かを判定し(S24)、処理が終了していなければ(S24のN)、別の構成要素についてS14からの処理を繰り返す。すべての構成要素についての辞書データの作成が終了すると(S24のY)、このフローを終了する。
【0058】
図10は、未分類文章データをカテゴリに分類する処理過程を示すフローチャートである。
文章受付部36は、未分類文章データを受け取る(S30)。文章分解部18は、好ましくは図9のS12と同じ文章分解アルゴリズムに基づいて、未分類文章データ中の文章を構成要素に分解し、ソート部20は分解された構成要素を所定の規則にしたがって並べ替える(S32)。次に、カテゴリ帰属確率計算部6は、抽出されたひとつの構成要素について、要素絞り込み基準提供部30から受け取った選択基準と比較して、未分類文章データの帰属確率を計算するために、その構成要素の出現確率を計算するか否かを判定する(S34)。出現確率の計算対象であれば(S34のY)、カテゴリ帰属確率計算部26は、分類辞書保持部24からその構成要素についての辞書データを検索し、対応する辞書データがある場合は(S36のY)、辞書データに基づいて、その構成要素の出現確率を各カテゴリについて算出する(S38)。S34で構成要素が出現確率の計算対象でなかった場合(S34のN)、またはS36で対応する辞書データが存在しなかった場合(S36のN)は、S38をスキップする。
続いて、文章分解部18によって抽出されたすべての構成要素について処理したか否かを判定し(S40)、処理が終了していなければ(S40のN)、別の構成要素についてS34からの処理を繰り返す。
【0059】
すべての構成要素についての処理が終了すると(S40のY)、カテゴリ帰属確率計算部26は、上述した手順にしたがって、カテゴリ毎に未分類文章データの帰属確率を算出し(S42)、判定部28は、帰属確率に基づいて未分類文章データが属するカテゴリを判定する(S44)。
【0060】
(実施例)
以下、具体的な実施例に基づいて、本実施の形態に係る文章分類装置10の動作を説明する。この実施例では、説明を簡単にするために、カテゴリとして「ギャンブル」「教育」の2つのカテゴリが準備されているものとする。また、辞書データは作成済みのものを用いることとする。
【0061】
図11は、この実施例で使用される辞書データを示し、上述の全体説明における図5に対応する。この辞書データは、カテゴリ「ギャンブル」について、カテゴリ文例に含まれる30の文章と非カテゴリ文例に含まれる15の文章から抽出された構成要素、および、カテゴリ「教育」について、カテゴリ文例に含まれる20の文章と非カテゴリ文例に含まれる18の文章から抽出された構成要素についてのものである。使用された文章数は、欄154に「文章数」として示されている。
【0062】
図示するように、この辞書には、「パチンコ」「万馬券」「青少年」「健全」「育成」などの単語が構成要素として含まれている。そして、それぞれの構成要素に対して、カテゴリ毎の出現頻度情報を有している。構成要素「パチンコ」を例としてみると、カテゴリ「ギャンブル」に対して、カテゴリ文例の文章中の出現頻度は10回、非カテゴリ文例の文章中の出現頻度は2回である。また、カテゴリ「教育」に対しては、カテゴリ文例の文章中の出現頻度は1回、非カテゴリ文例の文章中の出現頻度は20回である。他の構成要素についても同様である。
【0063】
「総計」欄152は、カテゴリ文例の文章数および非カテゴリ文例の文章数を、すべての構成要素について足し合わせた数である。
【0064】
このような辞書データが分類辞書保持部24に保持されていることを前提に、未分類文章データとして「パチンコ業界を健全に育成しましょう。」という文章が、2つのカテゴリのいずれに分類されるかを説明する。この文章から、文章分解部18により構成要素が抽出される。この実施例では、文章分解部18は形態素解析によって文章を分解し、その結果、「パチンコ/業界/を/健全/に/育成/し/ましょ/う/。」のように、10の構成要素が抽出される。続いて、カテゴリ帰属確率計算部26内の構成要素選択部126は、要素絞り込み基準提供部30から「名詞」という選択基準を受け取り、抽出された構成要素から名詞のみを選択する。したがって、「パチンコ」「業界」「健全」「育成」の4つの構成要素が選択されることになる。
【0065】
辞書データ検索部128は、対応する辞書データを分類辞書保持部24から検索する。この場合、「パチンコ」「健全」「育成」の3つの辞書データが得られる。出現確率算出部130は、この辞書データにおける3つの構成要素の出現頻度から、上記数1を使用して各カテゴリについての出現確率を算出する。その結果を図12に示す。構成要素「パチンコ」を例としてみると、カテゴリ「ギャンブル」についての出現確率は0.714、カテゴリ「教育」についての出現確率は0.043である。他の構成要素についても同様である。
【0066】
帰属確率算出部132は、上記数2にしたがって、出現確率を使用して未分類文章データの帰属確率をカテゴリ毎に算出する。
具体的な数値を用いて説明する。図13は、上記全体説明の図8に対応させて、カテゴリ「ギャンブル」「教育」についての出現確率anと(1−an)をまとめた表である。カテゴリ「ギャンブル」に対しては、要素「パチンコ」の出現確率a11が0.714、要素「健全」の出現確率a21が0.200、要素「育成」の出現確率a31が0.273であるから、数2にしたがって計算すると、未分類文章データのカテゴリ「ギャンブル」への帰属確率E1は、以下のようにして算出される。
(数3)
E1=(0.714×0.200×0.273)/
{(0.714×0.200×0.273)+(1−0.714)×(1−0.200)×(1−0.273)}≒0.190
【0067】
カテゴリ「教育」に対しては、要素「パチンコ」の出現確率a12が0.043、要素「健全」の出現確率a22が0.783、要素「育成」の出現確率a32が0.844であるから、数2にしたがって計算すると、未分類文章データのカテゴリ「教育」への帰属確率E2は、以下のようにして算出される。
(数4)
E2=(0.043×0.783×0.844)/
{(0.043×0.783×0.844)+(1−0.043)×(1−0.783)×(1−0.844)}≒0.467
【0068】
この結果、判定部28は、「パチンコ業界を健全に育成しましょう。」という文章は、帰属確率の大きい方のカテゴリ「教育」に分類されると判定する。以上で、未分類文章データを分類する一連の処理が終了する。
【0069】
以上説明したように、本実施の形態の文章分類装置によれば、未分類文章データを予め定められたカテゴリに沿って自動的に分類することができる。
【0070】
ところで、従来から、ベイジアンフィルタ法を使用したスパムフィルタが知られている。このスパムフィルタは、スパムに属する文例集と、スパムに属さない文例集とから、各単語が含まれていた場合のスパム確率を算出しておき、検査対象の文章に出現する単語について、ベイズ理論にしたがってスパム確率を求めることによって、スパムメールを検出する。しかし、この方法では、ある文章が単一のカテゴリ、つまりこの場合ならば「スパムメール」というカテゴリに属するか否かの判定しかできない。
【0071】
これに対し、本実施の形態の文章分類装置では、未分類文章データがいずれのカテゴリに属するかは、カテゴリ毎に算出される未分類文章データの帰属確率により判定される。したがって、ひとつの文章データをひとつのカテゴリに分類することもできるし、2つ以上のカテゴリに分類することもできる。また、ひとつの視点に基づくカテゴリについて分類するのみならず、複数の視点に基づくカテゴリを混合させておき、それらについてまとめて未分類文章データの帰属確率を算出することができる。具体的にいうと、一度の計算で、コンテンツの種類(例えば、政治/経済/社会)の分類と、文章のタイプ(ニュース記事/ブログ/エッセイ)のような分類とを同時に実行することができる。よって、「政治のニュース記事」「社会問題のエッセイ」というような、多軸的な視点に立った文章の分類も可能になる。
【0072】
本実施の形態の文章分類装置は、以下に述べるような応用形態が想定される。
【0073】
応用形態1.
ディレクトリ型の検索サイトを作成する際に、ウェブクローラが収集してきたウェブページのHTMLファイルを文章分類装置に与えることによって、ウェブページを様々な話題に基づくカテゴリに分類することができる。この分類結果を使用することで、ディレクトリ型の検索サイトの構築を容易にすることができる。なお、この応用形態では、文章データがHTMLファイルやXMLファイルのヘッダ、タグ、本文のどの部分にあるかに応じて、分類辞書作成部が出現頻度の重み付けをしてもよい。
【0074】
応用形態2.
電子掲示板システムにおいて、投稿者からネットワークを介して接続されたサーバに対して送信されてきた投稿データを文章分解装置に与えることによって、投稿データを内容に基づくカテゴリに分類することができる。これによって、投稿データを人手を介さずに自動的に分類して表示させることができる。また、投稿者も、投稿先を自ら選択することなく電子掲示板システムに対して投稿データを送信することができる。
【0075】
応用形態3.
カテゴリ文例としてスパムメールのデータを、非カテゴリ文例としてそれ以外のメールのデータを準備しておくことによって、スパムメールの検出フィルタとしても、文章分類装置を使用することができる。
【0076】
以上、本発明をいくつかの実施の形態をもとに説明した。これらの実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0077】
請求項に記載の各構成要件が果たすべき機能は、本実施例において示された各機能ブロックの単体もしくはそれらの連係によって実現されることも当業者には理解されるところである。
【0078】
図14は、別の実施の形態に係る文章分類システムの構成を示す。この実施の形態では、カテゴリ文例および非カテゴリ文例から辞書を作成する辞書ユニット60と、未分類文章データをカテゴリに分類する分類ユニット70から文章分類システム100が構築される。
【0079】
辞書ユニット60内の、文例格納部12、文章分解部18、ソート部20、分類辞書作成部22、分類辞書保持部24および要素絞り込み基準提供部30は、図2に関して説明したものと同様の機能を有する。辞書提供部62は、分類ユニット70などの外部装置から辞書データの提供が要求されたとき、分類辞書保持部24から構成要素に対応する辞書データを検索して外部装置に送信する。
【0080】
また、分類ユニット70内の文章受付部36、カテゴリ帰属確率計算部26、判定部28および判定結果格納部32もまた、図2に関して説明したものと同様の機能を有する。文章分解部76、ソート部78は、それぞれ文章分解部18、ソート部20と同様の機能を有する。カテゴリ帰属確率計算部26は、未分類文章データ34から抽出された構成要素について、辞書ユニット60に対して辞書データの提供を求め、辞書提供部62から送信される辞書データを受け取って、上述した一連の処理を実行する。カテゴリ帰属確率計算部26は、要素絞り込み部74から絞り込み情報の提供を受けて、要素を絞り込んでもよい。
このように、辞書ユニットと分類ユニットとを別々に構成することによって、各ユニットをネットワークを介してリモートに配置することができる。
【0081】
別の実施の形態では、未分類文章データの分類の際に得られたデータを、分類辞書保持部24内の辞書データに反映させてもよい。具体的には、未分類文章データから抽出された構成要素に対応する辞書データが分類辞書保持部24に存在する場合は、辞書データの頻度情報を更新させるようにする。こうすれば、未分類文章データの分類を繰り返すたびに、辞書データを充実化することができる。
【0082】
分類辞書作成部22は、カテゴリ毎の出現頻度を辞書データとして記録するとき、構成要素を品詞別に重み付けするようにしてもよい。例えば、構成要素が名詞であれば、頻度を2倍にして記録し、構成要素が助詞であれば、頻度を0.1倍して記録するようにしてもよい。また、カテゴリ帰属確率計算部26は、構成要素の品詞に応じて出現確率に重み付けをして未分類文章データの帰属確率を算出してもよい。これによって、構成要素の品詞の影響の軽重を反映させた文章データの分類が可能になる。
【図面の簡単な説明】
【0083】
【図1】本実施の形態に係る文章分類装置の使用形態の一例を示す図である。
【図2】文章分類装置の機能ブロック図である。
【図3】文章データを形態素解析によって構成要素に分解した例を示す図である。
【図4】分類辞書作成部の詳細な機能ブロック図である。
【図5】分類辞書保持部に格納されている辞書データのデータ構造図である。
【図6】要素絞り込み基準提供部に格納されている絞り込み基準データの構造図である。
【図7】カテゴリ帰属確率計算部の詳細な機能ブロック図である。
【図8】ひとつのカテゴリについての構成要素の出現確率を示す図である。
【図9】分類辞書を作成する処理過程を示すフローチャートである。
【図10】未分類文章データをカテゴリに分類する処理過程を示すフローチャートである。
【図11】一実施例で使用する辞書データを示す図である。
【図12】図11の辞書データを使用して、構成要素毎に出現確率を計算した結果を示す図である。
【図13】図12の出現確率を使用して各カテゴリについての帰属確率を計算した結果を示す図である。
【図14】別の実施の形態に係る文章分類システムの構成図である。
【符号の説明】
【0084】
10 文章分類装置、 12 文例格納部、 14 カテゴリ文例データ群、 16 非カテゴリ文例データ群、 18 文章分解部、 20 ソート部、 22 分類辞書作成部、 24 分類辞書保持部、 26 カテゴリ帰属確率計算部、 28 判定部、 30 要素絞り込み基準提供部、 32 判定結果格納部、 34 未分類文章データ、 36 文章受付部、 62 辞書提供部、 102 構成要素受付部、 104 絞り込み情報受付部、 106 カテゴリ情報提供部、 108 構成要素選択部、 110 辞書データ検索部、 112 辞書データ更新部、 122 構成要素受付部、 124 絞り込み情報受付部、 126 構成要素選択部、 128 辞書データ検索部、 130 出現確率算出部、 132 帰属確率算出部。
【技術分野】
【0001】
本発明は、文章分類技術に関し、特に、未分類の文章データを予め定められた複数のカテゴリに分類する文章分類技術に関する。
【背景技術】
【0002】
インターネットが社会に広く浸透するにしたがって、ネットワーク上を流通する文章の量が飛躍的に増加している。このため、ネットワークを通じて収集されるウェブページを適切なカテゴリに分類して表示したり、多量の電子メールを適切なフォルダに分類するなどの作業を人手で実行することは、困難になりつつある。そこで、文章データを所定のカテゴリに自動的に分類するための文章分類技術が考案されている。
【0003】
例えば、特徴ベクトル法を使用した文章分類技術がある(例えば、特許文献1参照)。この技術では、以下のようなステップで文章を分類する。まず、カテゴリiに属する文例集から、カテゴリiに対する各単語jの重要度wijをベクトルで表現したWi={wij}を生成しておく。次に、未分類の文章に出現した単語を使用して、その文章の特徴ベクトルWを生成する。そして、特徴ベクトルWに最も距離が近いベクトルWnを求め、その文章を対応するカテゴリnに分類する。
【特許文献1】特開2000−222431号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、特徴ベクトル法を使用した文章分類では、分類対象の文章がある単語を含んでいるとき、特定のカテゴリに分類される可能性、または特定のカテゴリに分類されない可能性が非常に高いというような条件の下では、そのような条件をうまく文章分類に反映させることができず、誤分類が多くなってしまう。
【0005】
本発明はこうした状況に鑑みてなされたものであり、その目的は、文章データを予め定められている分類体系に沿って自動的に分類する技術を提供することにある。
【課題を解決するための手段】
【0006】
本発明のある態様は、文章分類装置である。この装置は、文章の構成要素と、予め定められた複数のカテゴリについて各カテゴリに分類されるべき文章中にその構成要素が出現する出現頻度とが関連付けられた辞書データを保持する分類辞書保持部と、新たに分類対象とする未分類文章データを外部装置から受け取る文章受付部と、所定の規則にしたがって前記未分類文章データを解析して文章の構成要素を抽出する文章分解部と、前記辞書データを参照して、抽出された構成要素を含む未分類文章データがそれぞれのカテゴリに帰属する確率を表す帰属確率を各カテゴリについて計算するカテゴリ帰属確率計算部と、前記帰属確率を参照して、前記未分類文章データが分類されるカテゴリを判定する判定部と、を備える。
【0007】
この態様によれば、未分類文章データがいずれのカテゴリに属するかを、カテゴリ毎に算出される帰属確率にしたがって判定する。したがって、ひとつの文章データをひとつのカテゴリに分類することもできるし、2つ以上のカテゴリに分類することもできる。また、ひとつの視点に基づくカテゴリについて分類するのみならず、複数の視点に基づくカテゴリを混合させておき、それらについてまとめて帰属確率を算出することができる。
【0008】
「帰属確率」とは、いくつかの構成要素を含む未分類文章データがあるカテゴリに分類されるべき確率のことであり、カテゴリ毎に算出することができる。この帰属確率は、未分類文章データから抽出された各構成要素について帰属確率の計算対象となるカテゴリにおける出現頻度を前記分類辞書保持部から取り出して出現確率を計算し、算出された各構成要素についての出現確率を合成して当該カテゴリへの帰属確率を求めることによって計算することができる。
【0009】
本発明の別の態様は、分類辞書作成装置である。この装置は、予め定められた複数のカテゴリについて、それぞれのカテゴリに分類されるべき文章データを含むカテゴリ文例データ群と、カテゴリに分類されない文章データを含む非カテゴリ文例データ群とを格納する文例格納部と、所定の規則にしたがって文章データを解析して文章の構成要素を抽出する文章分解部と、前記カテゴリ文例データ群および非カテゴリ文例データ群に含まれる文章データ中に、前記文章分解部により抽出された構成要素が出現する出現頻度をカテゴリ毎にカウントする分類辞書作成部と、構成要素と各カテゴリにおける出現頻度とが関連付けられた辞書データを保持する分類辞書保持部と、外部装置に対して前記辞書データを提供する辞書提供部と、を備える。
【0010】
この態様によれば、分類辞書作成装置は、未分類文章データの各カテゴリへの帰属確率を計算するために外部装置から辞書データの提供が要求されたとき、分類辞書保持部に保持されている辞書データを外部装置に送信することができる。
【0011】
なお、以上の構成要素の任意の組合せ、本発明を方法、装置、システム、記録媒体、コンピュータプログラムにより表現したものもまた、本発明の態様として有効である。
【発明の効果】
【0012】
本発明によれば、未分類の文章データを予め定められたカテゴリに沿って自動的に分類することができる。
【発明を実施するための最良の形態】
【0013】
本発明の一実施形態は、特定のカテゴリに属するか否かが予め決められている多数の文例データを使用して分類用の辞書データを作成しておき、分類対象の文章データに対して、カテゴリ毎にそのカテゴリに属するか否かに関する確率を算出することによって、その文章データが分類されるべきカテゴリを決定する文章分類装置である。以下、図面を参照して本実施の形態に係る文章分類装置について説明する。
【0014】
図1は、本実施の形態に係る文章分類装置10の使用形態の一例を示す。文章分類装置10は、ネットワーク80を介してクライアント端末82やサーバ84と接続される。文章分類装置10は、クライアント端末82またはサーバ84から送信されてくる文章データを、予め設定してある複数のカテゴリのいずれかに分類する。また、文章分類装置10は、図示しないウェブクローラ(サーチロボットともいう)がネットワークに接続されている多数のクライアント端末82およびサーバ84から収集してきた文章データを、複数のカテゴリのいずれかに分類する。本実施の形態による文章分類装置10は、分類対象の文章データを2つ以上のカテゴリに属すると判定することもできる点に、特徴のひとつがある。
【0015】
図2は、文章分類装置10の機能ブロック図である。文章分類装置10は、文例格納部12、文章分解部18、ソート部20、分類辞書作成部22、分類辞書保持部24、カテゴリ帰属確率計算部26、判定部28、要素絞り込み基準提供部30、判定結果格納部32および文章受付部36を備える。これらの構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【0016】
文章分類装置10に含まれる機能ブロックは、辞書データを作成する学習段階に使用される機能ブロックと、辞書データの作成後に当該辞書データを使用して未分類の文章データを分類する分類段階に使用される機能ブロックとに分けることができる。まず、学習段階に使用される機能ブロックについて説明する。
【0017】
文例格納部12は、予め定められた複数のカテゴリそれぞれについて、そのカテゴリに分類されるべき文章データを含むカテゴリ文例14と、そのカテゴリに分類されない文章データを含む非カテゴリ文例16とを格納する。ここで「カテゴリ」とは、文章データを特定の基準にしたがって分類するためのグループ分けのことをいう。このカテゴリは、文章の分類結果の使用目的に応じて、多様に設定することができる。例えば、文章分類装置10による分類結果をニュース記事配信サイトで使用する場合は、「政治」「経済」「社会」「スポーツ」のようなカテゴリの種類が考えられる。文章分類装置10による分類結果をディレクトリ型の検索サイトで提供する場合は、「ショッピング」「旅行」「映画」「音楽」のようなカテゴリの種類が考えられる。文章分類装置10により、クライアント端末から送信されてくるアンケートなどを分類する場合は、「女性」「若年層」のようなカテゴリの種類が考えられる。
【0018】
また、「文章データ」とは、テキストデータ、HTML、XML、XHTMLファイルなどのテキスト情報を含んだデータを指すが、そのデータ形式は限定されない。
【0019】
M個のカテゴリ(カテゴリ1、・・・、カテゴリM)が規定されるとすると、各カテゴリ毎にカテゴリ文例14と非カテゴリ文例16が文例格納部12内に準備される。カテゴリ文例は、あるカテゴリに分類されるべきひとつまたは複数の文章データを蓄積したファイルである。非カテゴリ文例データは、あるカテゴリに分類されないひとつまたは複数の文章データを蓄積したファイルである。文章データがいずれのカテゴリ文例または非カテゴリ文例に含まれるかの判断は、人手を介して行われる。また、カテゴリ文例と非カテゴリ文例は、各カテゴリについて一対ずつ準備される。
【0020】
あるカテゴリについての非カテゴリ文例に含まれる文章データは、他のカテゴリについての非カテゴリ文例に含まれる文章データと異なっていてもよいし、同一であってもよい。つまり、「非カテゴリ1文例」内の文章データと「非カテゴリ2文例」内の文章データとが重複していてもよい。カテゴリ文例についても同様であり、例えば、「カテゴリ1文例」と「カテゴリ2文例」の両方に分類される文章データが存在してもよい。ただし、同一カテゴリ内で、カテゴリ文例と非カテゴリ文例の両方に分類される文章データは存在しないことが望ましい。
【0021】
文章分解部18は、上述したカテゴリ文例14および非カテゴリ文例16に含まれる文章データを所定の規則にしたがって解析し、文章の構成要素を抽出する。文章分解部18は、既知の文章分解アルゴリズムのうち任意のものを使用することができる。文章分解部18は、文章分解アルゴリズムに応じて、単語、単語と品詞の組合せ、文節、単文などを構成要素として文章データから抽出する。文章分解部18で使用される文章分解アルゴリズムの例については、後述する。
【0022】
ソート部20は、文章分解部18によりカテゴリ文例14、非カテゴリ文例16の文章データから抽出された構成要素を、所定の規則にしたがって並べ替える。一例として、構成要素の読みを50音順に並べ替えてもよい。または、構成要素の最初の一文字のASCIIコード順に並べ替えてもよい。文章分解部18が単語と品詞の組合せを構成要素として抽出した場合は、構成要素の品詞順に配列してもよい。ソート部20によって構成要素を並べ替えることによって、後述する構成要素をキーとした辞書データの検索が容易になるため、分類辞書の作成に要する時間を短縮できる。
【0023】
分類辞書作成部22は、文章分解部18により抽出された各構成要素が、各カテゴリについてのカテゴリ文例14および非カテゴリ文例16内の文章データに出現する頻度を算出し、構成要素と各カテゴリについての出現頻度とを関連付けた辞書データを作成する。ここでいう「頻度」は、単なる出現の回数でもよいし、全単語数に対する出現の比率で表してもよい。あるいは、カテゴリ文例または非カテゴリ文例に含まれる文章データ数に対する出現比率でもよい。以下では、これらをあわせて「出現頻度」と呼ぶ。いずれにしても、ある構成要素がひとつのカテゴリについてのカテゴリ文例と非カテゴリ文例に出現する度合いを表現する数値であれば、任意のものを採用できる。
分類辞書作成部22により作成された辞書データは、分類辞書保持部24に格納される。分類辞書作成部22のさらに詳細な構成および機能については、図4を参照して後述する。
【0024】
要素絞り込み基準提供部30には、文章分解部18により抽出された構成要素から一部の構成要素を除外するための選択基準が格納されている。この選択基準は、例えば特定の品詞(例えば、名詞+動詞、名詞のみ、助詞のみなど)を指定したり、文字数の上限を指定したり、平仮名のみ、または漢字のみからなる構成要素を指定する条件のことをいう。複数の条件を組み合わせて選択基準としてもよい。
【0025】
分類辞書作成部22は、要素絞り込み基準提供部30から提供される選択基準を利用して、辞書データの作成対象となる構成要素数を絞り込むことによって、分類辞書保持部24に格納される辞書データのデータ量を抑制しつつ、分類に有効な辞書データを作成することができる。
本実施の形態の文章分類装置10は、分類すべき文章データの言語を限定しないが、この要素絞り込み基準提供部30は、日本語の文章データの処理時には特に有用となる。
【0026】
続いて、分類段階に使用される機能ブロックについて説明する。
【0027】
文章受付部36は、分類対象となる文章データ34(以下、「未分類文章データ34」と呼ぶ)を図示しない外部装置から受信する。未分類文章データ34は、上述と同様にデータ形式に制限はない。外部装置は、例えばネットワークに接続されたクライアント端末やサーバであるが、これらに限定されない。
【0028】
文章分解部18は、文章受付部36から未分類文章データ34を受け取り、上述したのと同様にして、文章の構成要素を抽出する。抽出された構成要素は、ソート部20によって所定の規則にしたがって並べ替えられる。この規則は、カテゴリ文例および非カテゴリ文例から抽出された構成要素を並べ替えたのと同様の規則であることが好ましい。この並べ替えによって、構成要素をキーとした分類辞書保持部24内の辞書データの検索が容易になるため、後述するカテゴリ帰属確率計算部26における処理が高速化される。
【0029】
カテゴリ帰属確率計算部26は、分類辞書保持部24に格納された辞書データを参照して、いくつかの構成要素を含む未分類文章データがそれぞれのカテゴリに分類されるべき確率を、各カテゴリについて計算する。以下では、この確率のことを「帰属確率」と呼ぶ。
【0030】
分類辞書作成部22と同様に、カテゴリ帰属確率計算部26は、要素絞り込み基準提供部30から提供される選択基準にしたがって、帰属確率を算出する基礎となる構成要素数を限定してもよい。
カテゴリ帰属確率計算部26のさらに詳細な構成および機能については、図7を参照して後述する。
【0031】
判定部28は、カテゴリ帰属確率計算部26により各カテゴリについて計算された帰属確率を取得し、帰属確率の値に基づいて未分類文章データをいずれかのカテゴリに分類するかを決定する。より具体的には、判定部28は、帰属確率が最大となったカテゴリに未分類文章データを分類する。あるいは、予め設定されているしきい値以上の帰属確率が得られたすべてのカテゴリに未分類文章データを分類してもよい。こうすることによって、一連の演算でひとつの未分類文章データを2つ以上のカテゴリに分類することができる。帰属確率がしきい値以上となったカテゴリが存在しない場合、判定部28は、未分類文章データをいずれのカテゴリにも分類されない文章と判定してもよいし、帰属確率が最大となったカテゴリに分類してもよい。判定部28による未分類文章データの判定結果は、判定結果格納部32に格納されるか、または図示しない外部装置に出力される。
【0032】
次に、文章分解部18で使用される文章分解アルゴリズムの概要を説明する。
【0033】
(1)形態素解析
図3は、文章データを形態素解析によって構成要素に分解した例を示す。使用した文章データは、「気象庁は23日、関東地方で春一番が吹いたと発表した。」という文章である。図3に示すように、この文章は「気象庁/は/2/3/日/、/関東/地方/で/春一番/が/吹い/た/と/発表/し/た/。」のように、18の要素に分解される。形態素解析では、対象となる文章から、活用形50と、原形52と、品詞54を決定することができる。これら活用形、原形、品詞のうち、(原形+品詞)を構成要素としてもよいし、または、原形のみを要素としてもよい。原形の代わりに活用形を要素としてもよい。
【0034】
形態素解析を使用して抽出された構成要素は文章の分解能が高いため、この構成要素を使用した辞書データに基づくカテゴリへの分類が高精度になると期待される。形態素解析は周知の技術であるため、これ以上の説明を省略する。
【0035】
(2)構文解析
次に、構文解析について説明する。構文解析は、文章を文節に分解する。図3の例と同一の文章データを構文解析によって分解すると、「気象庁は/23日、/関東地方で/春一番が/吹いたと/発表した。」のように、6つの構成要素に分解される。
【0036】
構文解析を使用すると、形態素解析と比べて構成要素数が大幅に減少するので、高速分類に適しているが、分類の精度は低下する。構文解析は周知の技術であるため、これ以上の説明を省略する。
【0037】
(3)最小構成文
次に、形態素解析と構文解析を使用して文章から最小構成文を抽出する例を説明する。ここで「最小構成文」とは、最小限の意味をなす文のことであり、詳細は「模倣レポート判定に用いる文書間類似度の考案、太田貴久、増山繁、言語処理学会第10回年次大会発表論文集、pp.729-732、2004」に記載されている。
【0038】
図3の例と同一の文章データから最小構成文を抽出すると、「気象庁は発表した。」「23日、発表した。」「関東地方で春一番が吹いたと発表した。」の3つの最小構成文が得られる。これら最小構成文を構成要素として辞書データを作成すると、文脈の中での単語の意味を捉えることができるため、複数の意味に捉えられる単語を含んだ文章を適切なカテゴリに分類するといった高度の分類が可能となるが、計算コストは高くなる。
【0039】
なお、形態素解析の結果得られる品詞情報を利用して、名詞、形容詞、動詞の原形のみからなる最小構成文を抽出してもよい。上記と同一の例を使用すると、「気象庁・発表する」「23日・発表する」「関東地方・春一番・吹く・発表する」という3つの最小構成文が得られる。
【0040】
このように、文章分解部18において異なる文章分解アルゴリズムを使用して構成要素を抽出することで、分類辞書作成部22において異なる傾向を有する辞書データを作成することができる。したがって、カテゴリの種類などに合わせて適切な文章分解アルゴリズムを選択することで、分類の精度や処理速度を向上させることも可能である。
【0041】
図4は、分類辞書作成部22の詳細な機能ブロック図である。分類辞書作成部22は、構成要素受付部102、絞り込み情報受付部104、カテゴリ情報提供部106、構成要素選択部108、辞書データ検索部110および辞書データ更新部112を含む。
【0042】
構成要素受付部102は、ソート部20から所定の規則にしたがって並べ替えられた構成要素を受け取り、構成要素選択部108に渡す。カテゴリ情報提供部106は、構成要素受付部102で受け取られた構成要素が抽出されたカテゴリ文例および非カテゴリ文例の属するカテゴリについての情報を、要素絞り込み基準提供部30に伝える。絞り込み情報受付部104は、要素絞り込み基準提供部30から選択基準を受け取り、構成要素選択部108に渡す。構成要素選択部108は、選択基準と構成要素とを比較して、選択基準を満たす構成要素を選択して辞書データ検索部110に渡す。辞書データ検索部110は、分類辞書保持部24に保持されている辞書データのなかから、選択基準を満たした構成要素と同一の構成要素についての辞書データがあるか検索し、対応する辞書データがある場合は、辞書データ更新部112に渡す。辞書データ更新部112は、選択基準を満たした各構成要素の数をカウントし、その数を辞書データに追加し、分類辞書保持部24に格納する。構成要素が新規であるときは、新たな辞書データを作成して分類辞書保持部24に格納する。
【0043】
図5は、分類辞書保持部24に格納されている辞書データのデータ構造図である。辞書データ40においては、構成要素42と、その構成要素がカテゴリ1〜Mのカテゴリ文例および非カテゴリ文例に含まれる文章中に出現する出現頻度44とが関連付けされている。構成要素をWn(n=1〜N)、Wnがカテゴリm(m=1〜M)のカテゴリ文例または非カテゴリ文例に含まれる文章中の出現頻度をそれぞれXnm、Ynmと表記すると、ある構成要素Wnについての辞書データ46は、(Wn,Xn1,Yn1,Xn2,Yn2,・・・,Xnm,Ynm)と表すことができる。
【0044】
この実施の形態では、各構成要素Wnについて、(カテゴリmのカテゴリ文例に含まれる文章中の出現頻度)と(カテゴリmの非カテゴリ文例に含まれる文章中の出現頻度)の2つの値をペアで保持している。これは、カテゴリ文例または非カテゴリ文例に新たな文章データを追加して分類辞書保持部24内の辞書データを拡充しようとした場合に、頻度情報の書き換えを容易にするためである。
別の実施の形態では、構成要素Wnの出現頻度を単一の値で保持してもよい。構成要素Wnのカテゴリmについての出現頻度をFnmと表記すると、Fnm=Xnm/Ynmとしてもよいし、Fnm=Xnm/(Xnm+Ynm)としてもよい。この場合、ある構成要素Wnについての辞書データ46は、(Wn,Fn1,Fn2,・・・,FnM)と表すことができる。
【0045】
図6は、要素絞り込み基準提供部30に格納されている選択基準のデータ構造図である。選択基準は、カテゴリ種類に対応して準備される。図6では、カテゴリ種類として、「テーマ分け」「文体」「年代」が含まれる。要素絞り込み基準提供部30は、構成要素を抽出したカテゴリ文例の情報をカテゴリ情報提供部106から受け取り、図中の左欄56に示す特定のカテゴリの場合には、右欄58の選択基準を返す。カテゴリ情報提供部106から受け取ったカテゴリが左欄56に存在しない場合は、標準的な「名詞」という選択基準を返す。
【0046】
例えば、カテゴリ種類がテーマや話題の分類に関するもの、例えば「旅行」「音楽」「映画」などのカテゴリの場合は、「名詞」という基準を提供する。このようなテーマや話題の分類については、特定の名詞の存在がカテゴリ分類を決定付けることが多いからである。カテゴリの種類が文体に関するもの、例えば「フォーマル」「丁寧」「乱文」などのカテゴリの場合は、「形容詞または助詞」という基準を提供する。文体は、「てにをは」などの助詞や感情表現によって決定できる場合が多いからである。さらに、文章を作成した人の年代や性別に関するもの、例えば「女性」「若年層」などの場合は、「平仮名の名詞」という基準を提供する。このように、要素絞り込み基準提供部30は、辞書データの作成対象となる構成要素が、いずれのカテゴリ文例または非カテゴリ文例に含まれる文章データから抽出されたかに応じて、カテゴリ毎に異なる選択基準を提供することができる。分類辞書作成部22は、選択基準を参照して、辞書として準備される構成要素を絞り込んた辞書データを作成することができる。
【0047】
要素絞り込み基準提供部30は、構成要素の品詞を選択基準として提供する代わりに、文字数を選択基準として提供してもよい。これによって、分類辞書作成部22は、一定字数以下の構成要素について辞書を作成することができる。あるいは、要素絞り込み基準提供部30は、選択基準として特定の構成要素(例えば、「自動車」という名詞)を提供してもよい。分類辞書作成部22は、それと一致する構成要素は辞書データの作成対象から除外するようにしてもよい。例えば、極めて多数の文章中で使用されるありふれた名詞(例えば、「私」「物」)などはカテゴリ分類に与える影響が少ないので、除外することが好ましい。
【0048】
図7は、カテゴリ帰属確率計算部26の詳細な機能ブロック図である。カテゴリ帰属確率計算部26は、構成要素受付部122、絞り込み情報受付部124、構成要素選択部126、辞書データ検索部128、出現確率算出部130および帰属確率算出部132を含む。
【0049】
構成要素受付部122は、ソート部20から所定の規則にしたがって並べ替えられた構成要素を受け取る。絞り込み情報受付部124は、要素絞り込み基準提供部30から選択基準を受け取り、構成要素選択部126に渡す。構成要素選択部126は、選択基準と構成要素とを比較して、選択基準を満たす構成要素を選択して辞書データ検索部128に渡す。辞書データ検索部128は、分類辞書保持部24に保持されている辞書データのなかから、選択基準を満たした構成要素と同一の構成要素についての辞書データがあるか検索し、対応する辞書データがある場合は、出現確率算出部130に渡す。
【0050】
出現確率算出部130は、各カテゴリmについて、未分類データから抽出された各構成要素Wnの出現確率anmを計算する。ここで、出現確率anmは、上述したカテゴリ文例または非カテゴリ文例に含まれる文章中への出現頻度Xnm、Ynmを使用して、次式により算出される。
【0051】
【数1】
【0052】
図8は、数1により算出された、カテゴリ1に対する各構成要素W1〜WNの出現確率a11〜aN1を示す。
なお、出現確率の算出は、数1に限られない。例えば、上述したFnmをそのまま使用してもよい。
【0053】
帰属確率算出部132は、算出された出現確率をすべての構成要素について総計して、未分類文章データについてカテゴリ毎の帰属確率を算出する。好ましくは、帰属確率算出部132は、ベイジアンフィルタ法を使用して、次式によりカテゴリnへの帰属確率Enを算出する。
【0054】
【数2】
【0055】
なお、ベイジアンフィルタ法以外の手法を使用して帰属確率を算出してもよい。例えば、すべての構成要素の出現確率を単に掛け合わせて帰属確率を算出してもよいし、出現確率の平均値を帰属確率としてもよい。
【0056】
図9は、分類辞書を作成する処理過程を示すフローチャートである。
まず、文章分解部18は、文例格納部12から一対のカテゴリ文例または非カテゴリ文例を取得する(S10)。次に、文章分解部18は、所定の文章分解アルゴリズムに基づいて、カテゴリ文例および非カテゴリ文例中の文章データを構成要素に分解し、ソート部20は分解された構成要素を所定の規則にしたがって並べ替える(S12)。なお、この並べ替えの実行は本実施の形態に必須ではなく、分類辞書保持部からのデータ検索時間が長くなるため演算速度は低下しうるが、カテゴリ分類の精度に影響を及ぼすことはない。
【0057】
次に、分類辞書作成部22は、抽出されたひとつの構成要素について、要素絞り込み基準提供部30から受け取った選択基準と比較して、辞書データの作成対象の構成要素であるか否かを判定する(S14)。辞書データの作成対象でなければ(S14のN)、S24に進む。辞書データの作成対象であれば(S14のY)、分類辞書作成部22は分類辞書保持部24からその構成要素についての辞書データを検索する(S16)。対応する辞書データが存在した場合は(S18のY)、今回の文例データ中に存在した構成要素の数を、辞書データ中のそのカテゴリの頻度に追加する(S20)。対応する辞書データが存在しない場合は(S18のN)、新たな辞書データを作成する(S22)。そして、文章分解部18で分解されたすべての構成要素について処理したか否かを判定し(S24)、処理が終了していなければ(S24のN)、別の構成要素についてS14からの処理を繰り返す。すべての構成要素についての辞書データの作成が終了すると(S24のY)、このフローを終了する。
【0058】
図10は、未分類文章データをカテゴリに分類する処理過程を示すフローチャートである。
文章受付部36は、未分類文章データを受け取る(S30)。文章分解部18は、好ましくは図9のS12と同じ文章分解アルゴリズムに基づいて、未分類文章データ中の文章を構成要素に分解し、ソート部20は分解された構成要素を所定の規則にしたがって並べ替える(S32)。次に、カテゴリ帰属確率計算部6は、抽出されたひとつの構成要素について、要素絞り込み基準提供部30から受け取った選択基準と比較して、未分類文章データの帰属確率を計算するために、その構成要素の出現確率を計算するか否かを判定する(S34)。出現確率の計算対象であれば(S34のY)、カテゴリ帰属確率計算部26は、分類辞書保持部24からその構成要素についての辞書データを検索し、対応する辞書データがある場合は(S36のY)、辞書データに基づいて、その構成要素の出現確率を各カテゴリについて算出する(S38)。S34で構成要素が出現確率の計算対象でなかった場合(S34のN)、またはS36で対応する辞書データが存在しなかった場合(S36のN)は、S38をスキップする。
続いて、文章分解部18によって抽出されたすべての構成要素について処理したか否かを判定し(S40)、処理が終了していなければ(S40のN)、別の構成要素についてS34からの処理を繰り返す。
【0059】
すべての構成要素についての処理が終了すると(S40のY)、カテゴリ帰属確率計算部26は、上述した手順にしたがって、カテゴリ毎に未分類文章データの帰属確率を算出し(S42)、判定部28は、帰属確率に基づいて未分類文章データが属するカテゴリを判定する(S44)。
【0060】
(実施例)
以下、具体的な実施例に基づいて、本実施の形態に係る文章分類装置10の動作を説明する。この実施例では、説明を簡単にするために、カテゴリとして「ギャンブル」「教育」の2つのカテゴリが準備されているものとする。また、辞書データは作成済みのものを用いることとする。
【0061】
図11は、この実施例で使用される辞書データを示し、上述の全体説明における図5に対応する。この辞書データは、カテゴリ「ギャンブル」について、カテゴリ文例に含まれる30の文章と非カテゴリ文例に含まれる15の文章から抽出された構成要素、および、カテゴリ「教育」について、カテゴリ文例に含まれる20の文章と非カテゴリ文例に含まれる18の文章から抽出された構成要素についてのものである。使用された文章数は、欄154に「文章数」として示されている。
【0062】
図示するように、この辞書には、「パチンコ」「万馬券」「青少年」「健全」「育成」などの単語が構成要素として含まれている。そして、それぞれの構成要素に対して、カテゴリ毎の出現頻度情報を有している。構成要素「パチンコ」を例としてみると、カテゴリ「ギャンブル」に対して、カテゴリ文例の文章中の出現頻度は10回、非カテゴリ文例の文章中の出現頻度は2回である。また、カテゴリ「教育」に対しては、カテゴリ文例の文章中の出現頻度は1回、非カテゴリ文例の文章中の出現頻度は20回である。他の構成要素についても同様である。
【0063】
「総計」欄152は、カテゴリ文例の文章数および非カテゴリ文例の文章数を、すべての構成要素について足し合わせた数である。
【0064】
このような辞書データが分類辞書保持部24に保持されていることを前提に、未分類文章データとして「パチンコ業界を健全に育成しましょう。」という文章が、2つのカテゴリのいずれに分類されるかを説明する。この文章から、文章分解部18により構成要素が抽出される。この実施例では、文章分解部18は形態素解析によって文章を分解し、その結果、「パチンコ/業界/を/健全/に/育成/し/ましょ/う/。」のように、10の構成要素が抽出される。続いて、カテゴリ帰属確率計算部26内の構成要素選択部126は、要素絞り込み基準提供部30から「名詞」という選択基準を受け取り、抽出された構成要素から名詞のみを選択する。したがって、「パチンコ」「業界」「健全」「育成」の4つの構成要素が選択されることになる。
【0065】
辞書データ検索部128は、対応する辞書データを分類辞書保持部24から検索する。この場合、「パチンコ」「健全」「育成」の3つの辞書データが得られる。出現確率算出部130は、この辞書データにおける3つの構成要素の出現頻度から、上記数1を使用して各カテゴリについての出現確率を算出する。その結果を図12に示す。構成要素「パチンコ」を例としてみると、カテゴリ「ギャンブル」についての出現確率は0.714、カテゴリ「教育」についての出現確率は0.043である。他の構成要素についても同様である。
【0066】
帰属確率算出部132は、上記数2にしたがって、出現確率を使用して未分類文章データの帰属確率をカテゴリ毎に算出する。
具体的な数値を用いて説明する。図13は、上記全体説明の図8に対応させて、カテゴリ「ギャンブル」「教育」についての出現確率anと(1−an)をまとめた表である。カテゴリ「ギャンブル」に対しては、要素「パチンコ」の出現確率a11が0.714、要素「健全」の出現確率a21が0.200、要素「育成」の出現確率a31が0.273であるから、数2にしたがって計算すると、未分類文章データのカテゴリ「ギャンブル」への帰属確率E1は、以下のようにして算出される。
(数3)
E1=(0.714×0.200×0.273)/
{(0.714×0.200×0.273)+(1−0.714)×(1−0.200)×(1−0.273)}≒0.190
【0067】
カテゴリ「教育」に対しては、要素「パチンコ」の出現確率a12が0.043、要素「健全」の出現確率a22が0.783、要素「育成」の出現確率a32が0.844であるから、数2にしたがって計算すると、未分類文章データのカテゴリ「教育」への帰属確率E2は、以下のようにして算出される。
(数4)
E2=(0.043×0.783×0.844)/
{(0.043×0.783×0.844)+(1−0.043)×(1−0.783)×(1−0.844)}≒0.467
【0068】
この結果、判定部28は、「パチンコ業界を健全に育成しましょう。」という文章は、帰属確率の大きい方のカテゴリ「教育」に分類されると判定する。以上で、未分類文章データを分類する一連の処理が終了する。
【0069】
以上説明したように、本実施の形態の文章分類装置によれば、未分類文章データを予め定められたカテゴリに沿って自動的に分類することができる。
【0070】
ところで、従来から、ベイジアンフィルタ法を使用したスパムフィルタが知られている。このスパムフィルタは、スパムに属する文例集と、スパムに属さない文例集とから、各単語が含まれていた場合のスパム確率を算出しておき、検査対象の文章に出現する単語について、ベイズ理論にしたがってスパム確率を求めることによって、スパムメールを検出する。しかし、この方法では、ある文章が単一のカテゴリ、つまりこの場合ならば「スパムメール」というカテゴリに属するか否かの判定しかできない。
【0071】
これに対し、本実施の形態の文章分類装置では、未分類文章データがいずれのカテゴリに属するかは、カテゴリ毎に算出される未分類文章データの帰属確率により判定される。したがって、ひとつの文章データをひとつのカテゴリに分類することもできるし、2つ以上のカテゴリに分類することもできる。また、ひとつの視点に基づくカテゴリについて分類するのみならず、複数の視点に基づくカテゴリを混合させておき、それらについてまとめて未分類文章データの帰属確率を算出することができる。具体的にいうと、一度の計算で、コンテンツの種類(例えば、政治/経済/社会)の分類と、文章のタイプ(ニュース記事/ブログ/エッセイ)のような分類とを同時に実行することができる。よって、「政治のニュース記事」「社会問題のエッセイ」というような、多軸的な視点に立った文章の分類も可能になる。
【0072】
本実施の形態の文章分類装置は、以下に述べるような応用形態が想定される。
【0073】
応用形態1.
ディレクトリ型の検索サイトを作成する際に、ウェブクローラが収集してきたウェブページのHTMLファイルを文章分類装置に与えることによって、ウェブページを様々な話題に基づくカテゴリに分類することができる。この分類結果を使用することで、ディレクトリ型の検索サイトの構築を容易にすることができる。なお、この応用形態では、文章データがHTMLファイルやXMLファイルのヘッダ、タグ、本文のどの部分にあるかに応じて、分類辞書作成部が出現頻度の重み付けをしてもよい。
【0074】
応用形態2.
電子掲示板システムにおいて、投稿者からネットワークを介して接続されたサーバに対して送信されてきた投稿データを文章分解装置に与えることによって、投稿データを内容に基づくカテゴリに分類することができる。これによって、投稿データを人手を介さずに自動的に分類して表示させることができる。また、投稿者も、投稿先を自ら選択することなく電子掲示板システムに対して投稿データを送信することができる。
【0075】
応用形態3.
カテゴリ文例としてスパムメールのデータを、非カテゴリ文例としてそれ以外のメールのデータを準備しておくことによって、スパムメールの検出フィルタとしても、文章分類装置を使用することができる。
【0076】
以上、本発明をいくつかの実施の形態をもとに説明した。これらの実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0077】
請求項に記載の各構成要件が果たすべき機能は、本実施例において示された各機能ブロックの単体もしくはそれらの連係によって実現されることも当業者には理解されるところである。
【0078】
図14は、別の実施の形態に係る文章分類システムの構成を示す。この実施の形態では、カテゴリ文例および非カテゴリ文例から辞書を作成する辞書ユニット60と、未分類文章データをカテゴリに分類する分類ユニット70から文章分類システム100が構築される。
【0079】
辞書ユニット60内の、文例格納部12、文章分解部18、ソート部20、分類辞書作成部22、分類辞書保持部24および要素絞り込み基準提供部30は、図2に関して説明したものと同様の機能を有する。辞書提供部62は、分類ユニット70などの外部装置から辞書データの提供が要求されたとき、分類辞書保持部24から構成要素に対応する辞書データを検索して外部装置に送信する。
【0080】
また、分類ユニット70内の文章受付部36、カテゴリ帰属確率計算部26、判定部28および判定結果格納部32もまた、図2に関して説明したものと同様の機能を有する。文章分解部76、ソート部78は、それぞれ文章分解部18、ソート部20と同様の機能を有する。カテゴリ帰属確率計算部26は、未分類文章データ34から抽出された構成要素について、辞書ユニット60に対して辞書データの提供を求め、辞書提供部62から送信される辞書データを受け取って、上述した一連の処理を実行する。カテゴリ帰属確率計算部26は、要素絞り込み部74から絞り込み情報の提供を受けて、要素を絞り込んでもよい。
このように、辞書ユニットと分類ユニットとを別々に構成することによって、各ユニットをネットワークを介してリモートに配置することができる。
【0081】
別の実施の形態では、未分類文章データの分類の際に得られたデータを、分類辞書保持部24内の辞書データに反映させてもよい。具体的には、未分類文章データから抽出された構成要素に対応する辞書データが分類辞書保持部24に存在する場合は、辞書データの頻度情報を更新させるようにする。こうすれば、未分類文章データの分類を繰り返すたびに、辞書データを充実化することができる。
【0082】
分類辞書作成部22は、カテゴリ毎の出現頻度を辞書データとして記録するとき、構成要素を品詞別に重み付けするようにしてもよい。例えば、構成要素が名詞であれば、頻度を2倍にして記録し、構成要素が助詞であれば、頻度を0.1倍して記録するようにしてもよい。また、カテゴリ帰属確率計算部26は、構成要素の品詞に応じて出現確率に重み付けをして未分類文章データの帰属確率を算出してもよい。これによって、構成要素の品詞の影響の軽重を反映させた文章データの分類が可能になる。
【図面の簡単な説明】
【0083】
【図1】本実施の形態に係る文章分類装置の使用形態の一例を示す図である。
【図2】文章分類装置の機能ブロック図である。
【図3】文章データを形態素解析によって構成要素に分解した例を示す図である。
【図4】分類辞書作成部の詳細な機能ブロック図である。
【図5】分類辞書保持部に格納されている辞書データのデータ構造図である。
【図6】要素絞り込み基準提供部に格納されている絞り込み基準データの構造図である。
【図7】カテゴリ帰属確率計算部の詳細な機能ブロック図である。
【図8】ひとつのカテゴリについての構成要素の出現確率を示す図である。
【図9】分類辞書を作成する処理過程を示すフローチャートである。
【図10】未分類文章データをカテゴリに分類する処理過程を示すフローチャートである。
【図11】一実施例で使用する辞書データを示す図である。
【図12】図11の辞書データを使用して、構成要素毎に出現確率を計算した結果を示す図である。
【図13】図12の出現確率を使用して各カテゴリについての帰属確率を計算した結果を示す図である。
【図14】別の実施の形態に係る文章分類システムの構成図である。
【符号の説明】
【0084】
10 文章分類装置、 12 文例格納部、 14 カテゴリ文例データ群、 16 非カテゴリ文例データ群、 18 文章分解部、 20 ソート部、 22 分類辞書作成部、 24 分類辞書保持部、 26 カテゴリ帰属確率計算部、 28 判定部、 30 要素絞り込み基準提供部、 32 判定結果格納部、 34 未分類文章データ、 36 文章受付部、 62 辞書提供部、 102 構成要素受付部、 104 絞り込み情報受付部、 106 カテゴリ情報提供部、 108 構成要素選択部、 110 辞書データ検索部、 112 辞書データ更新部、 122 構成要素受付部、 124 絞り込み情報受付部、 126 構成要素選択部、 128 辞書データ検索部、 130 出現確率算出部、 132 帰属確率算出部。
【特許請求の範囲】
【請求項1】
文章の構成要素と、予め定められた複数のカテゴリについて各カテゴリに分類されるべき文章中にその構成要素が出現する出現頻度とが関連付けられた辞書データを保持する分類辞書保持部と、
新たに分類対象とする未分類文章データを外部装置から受け取る文章受付部と、
所定の規則にしたがって前記未分類文章データを解析して文章の構成要素を抽出する文章分解部と、
前記辞書データを参照して、抽出された構成要素を含む未分類文章データがそれぞれのカテゴリに帰属する確率を表す帰属確率を各カテゴリについて計算するカテゴリ帰属確率計算部と、
前記帰属確率を参照して、前記未分類文章データが分類されるカテゴリを判定する判定部と、
を備えることを特徴とする文章分類装置。
【請求項2】
前記カテゴリ帰属確率計算部は、前記未分類文章データから抽出された各構成要素について前記帰属確率の計算対象となるカテゴリにおける出現頻度を前記分類辞書保持部から取り出して出現確率を計算し、算出された各構成要素についての出現確率を合成して当該カテゴリへの帰属確率を求めることを特徴とする請求項1に記載の文章分類装置。
【請求項3】
前記分類辞書保持部は、前記文章データに対する形態素解析の結果得られる単語と品詞および各カテゴリにおける出現頻度が関連付けられた辞書データを保持することを特徴とする請求項1または2に記載の文章分類装置。
【請求項4】
前記分類辞書保持部は、検索を容易にする所定の規則にしたがって構成要素をキーとして並べ替えた状態で前記辞書データを保持することを特徴とする請求項1ないし3のいずれかに記載の文章分類装置。
【請求項5】
構成要素を選択するための基準が格納されている要素絞り込み基準提供部をさらに備え、
前記カテゴリ帰属確率計算部は、前記要素絞り込み基準提供部から前記基準を受け取り、前記未分類文章データから抽出された構成要素のうち、前記基準を満たす構成要素を前記出現確率の計算対象とすることを特徴とする請求項3に記載の分類辞書作成装置。
【請求項6】
前記要素絞り込み基準提供部は前記基準を複数有しており、カテゴリの種類に応じて異なる基準を前記カテゴリ帰属確率計算部に与えることを特徴とする請求項5に記載の文章分類装置。
【請求項7】
前記カテゴリ帰属確率計算部は、前記出現頻度について対応する構成要素の品詞に応じた重み付けをしたうえで前記出現確率の計算を行うことを特徴とする請求項5または6に記載の文章分類装置。
【請求項8】
予め定められた複数のカテゴリについて、それぞれのカテゴリに分類されるべき文章データを含むカテゴリ文例データ群と、カテゴリに分類されない文章データを含む非カテゴリ文例データ群とを格納する文例格納部と、
所定の規則にしたがって文章データを解析して文章の構成要素を抽出する文章分解部と、
前記カテゴリ文例データ群および非カテゴリ文例データ群に含まれる文章データ中に、前記文章分解部により抽出された構成要素が出現する出現頻度をカテゴリ毎にカウントする分類辞書作成部と、
構成要素と各カテゴリにおける出現頻度とが関連付けられた辞書データを保持する分類辞書保持部と、
外部装置に対して前記辞書データを提供する辞書提供部と、
を備えることを特徴とする分類辞書作成装置。
【請求項9】
構成要素を選択するための基準が格納されている要素絞り込み基準提供部をさらに備え、
前記分類辞書作成部は、前記要素絞り込み基準提供部から前記基準を受け取り、前記カテゴリ文例データ群および非カテゴリ文例データ群に含まれる文章データから抽出された構成要素のうち、前記基準を満たす構成要素を前記辞書データの作成対象とすることを特徴とする請求項8に記載の分類辞書作成装置。
【請求項10】
前記要素絞り込み基準提供部は前記基準を複数有しており、カテゴリの種類に応じて異なる基準を前記カテゴリ帰属確率計算部に与えることを特徴とする請求項9に記載の分類辞書作成装置。
【請求項11】
予め定められた複数のカテゴリについて、それぞれのカテゴリに分類されるべき文章データを含むカテゴリ文例データ群と、カテゴリに分類されない文章データを含む非カテゴリ文例データ群とを格納手段に格納し、
所定の規則にしたがって文章データを解析して文章の構成要素を抽出し、
前記カテゴリ文例データ群および非カテゴリ文例データ群に含まれる文章データ中に抽出された各構成要素が出現する頻度をカテゴリ毎に計算し、
前記頻度と前記構成要素とが関連付けられた辞書データを格納し、
新たに分類対象となる未分類文章データを外部装置から受け取り、
前記未分類文章データから抽出された構成要素について、前記辞書データを参照して、抽出された構成要素を含む未分類文章データがそれぞれのカテゴリに帰属する確率を表す帰属確率を各カテゴリについて計算し、
前記帰属確率を参照して、前記未分類文章データが分類されるカテゴリを判定することを特徴とする文章分類方法。
【請求項1】
文章の構成要素と、予め定められた複数のカテゴリについて各カテゴリに分類されるべき文章中にその構成要素が出現する出現頻度とが関連付けられた辞書データを保持する分類辞書保持部と、
新たに分類対象とする未分類文章データを外部装置から受け取る文章受付部と、
所定の規則にしたがって前記未分類文章データを解析して文章の構成要素を抽出する文章分解部と、
前記辞書データを参照して、抽出された構成要素を含む未分類文章データがそれぞれのカテゴリに帰属する確率を表す帰属確率を各カテゴリについて計算するカテゴリ帰属確率計算部と、
前記帰属確率を参照して、前記未分類文章データが分類されるカテゴリを判定する判定部と、
を備えることを特徴とする文章分類装置。
【請求項2】
前記カテゴリ帰属確率計算部は、前記未分類文章データから抽出された各構成要素について前記帰属確率の計算対象となるカテゴリにおける出現頻度を前記分類辞書保持部から取り出して出現確率を計算し、算出された各構成要素についての出現確率を合成して当該カテゴリへの帰属確率を求めることを特徴とする請求項1に記載の文章分類装置。
【請求項3】
前記分類辞書保持部は、前記文章データに対する形態素解析の結果得られる単語と品詞および各カテゴリにおける出現頻度が関連付けられた辞書データを保持することを特徴とする請求項1または2に記載の文章分類装置。
【請求項4】
前記分類辞書保持部は、検索を容易にする所定の規則にしたがって構成要素をキーとして並べ替えた状態で前記辞書データを保持することを特徴とする請求項1ないし3のいずれかに記載の文章分類装置。
【請求項5】
構成要素を選択するための基準が格納されている要素絞り込み基準提供部をさらに備え、
前記カテゴリ帰属確率計算部は、前記要素絞り込み基準提供部から前記基準を受け取り、前記未分類文章データから抽出された構成要素のうち、前記基準を満たす構成要素を前記出現確率の計算対象とすることを特徴とする請求項3に記載の分類辞書作成装置。
【請求項6】
前記要素絞り込み基準提供部は前記基準を複数有しており、カテゴリの種類に応じて異なる基準を前記カテゴリ帰属確率計算部に与えることを特徴とする請求項5に記載の文章分類装置。
【請求項7】
前記カテゴリ帰属確率計算部は、前記出現頻度について対応する構成要素の品詞に応じた重み付けをしたうえで前記出現確率の計算を行うことを特徴とする請求項5または6に記載の文章分類装置。
【請求項8】
予め定められた複数のカテゴリについて、それぞれのカテゴリに分類されるべき文章データを含むカテゴリ文例データ群と、カテゴリに分類されない文章データを含む非カテゴリ文例データ群とを格納する文例格納部と、
所定の規則にしたがって文章データを解析して文章の構成要素を抽出する文章分解部と、
前記カテゴリ文例データ群および非カテゴリ文例データ群に含まれる文章データ中に、前記文章分解部により抽出された構成要素が出現する出現頻度をカテゴリ毎にカウントする分類辞書作成部と、
構成要素と各カテゴリにおける出現頻度とが関連付けられた辞書データを保持する分類辞書保持部と、
外部装置に対して前記辞書データを提供する辞書提供部と、
を備えることを特徴とする分類辞書作成装置。
【請求項9】
構成要素を選択するための基準が格納されている要素絞り込み基準提供部をさらに備え、
前記分類辞書作成部は、前記要素絞り込み基準提供部から前記基準を受け取り、前記カテゴリ文例データ群および非カテゴリ文例データ群に含まれる文章データから抽出された構成要素のうち、前記基準を満たす構成要素を前記辞書データの作成対象とすることを特徴とする請求項8に記載の分類辞書作成装置。
【請求項10】
前記要素絞り込み基準提供部は前記基準を複数有しており、カテゴリの種類に応じて異なる基準を前記カテゴリ帰属確率計算部に与えることを特徴とする請求項9に記載の分類辞書作成装置。
【請求項11】
予め定められた複数のカテゴリについて、それぞれのカテゴリに分類されるべき文章データを含むカテゴリ文例データ群と、カテゴリに分類されない文章データを含む非カテゴリ文例データ群とを格納手段に格納し、
所定の規則にしたがって文章データを解析して文章の構成要素を抽出し、
前記カテゴリ文例データ群および非カテゴリ文例データ群に含まれる文章データ中に抽出された各構成要素が出現する頻度をカテゴリ毎に計算し、
前記頻度と前記構成要素とが関連付けられた辞書データを格納し、
新たに分類対象となる未分類文章データを外部装置から受け取り、
前記未分類文章データから抽出された構成要素について、前記辞書データを参照して、抽出された構成要素を含む未分類文章データがそれぞれのカテゴリに帰属する確率を表す帰属確率を各カテゴリについて計算し、
前記帰属確率を参照して、前記未分類文章データが分類されるカテゴリを判定することを特徴とする文章分類方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2006−293767(P2006−293767A)
【公開日】平成18年10月26日(2006.10.26)
【国際特許分類】
【出願番号】特願2005−114841(P2005−114841)
【出願日】平成17年4月12日(2005.4.12)
【出願人】(000155469)株式会社野村総合研究所 (1,067)
【Fターム(参考)】
【公開日】平成18年10月26日(2006.10.26)
【国際特許分類】
【出願日】平成17年4月12日(2005.4.12)
【出願人】(000155469)株式会社野村総合研究所 (1,067)
【Fターム(参考)】
[ Back to top ]