以下、図面を参照して、本発明の各実施形態について説明する。
[第1の実施形態]
まず、図1および図2を参照して、本発明の第1の実施形態について説明する。図1は、本実施形態に係る代表文抽出装置のハードウェア構成を示すブロック図である。図1に示すように、コンピュータ10は、例えばハードディスクドライブ(HDD:Hard Disk Drive)のような外部記憶装置20と接続されている。この外部記憶装置20は、コンピュータ10によって実行されるプログラム21を格納する。コンピュータ10および外部記憶装置20は、代表文抽出装置30を構成する。
代表文抽出装置30は、例えばユーザによって指定されたクラスタに属する文書群(つまり、複数の文書)から、当該文書群の内容を適切に表す代表文を抽出する機能を有する。なお、クラスタには、例えば共通点または類似性のある文書群が属する。
図2は、図1に示す代表文抽出装置30の主として機能構成を示すブロック図である。図2に示すように、代表文抽出装置30は、入力部31、構文解析部32、代表文候補抽出部33、文生成集約部34、代表文決定部35および出力部36を含む。本実施形態において、これらの各部31〜36は、図1に示すコンピュータ10が外部記憶装置20に格納されているプログラム21を実行することにより実現されるものとする。このプログラム21は、コンピュータ読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラム21が、例えばネットワークを介してコンピュータ10にダウンロードされても構わない。
また、代表文抽出装置30は、抽出ルール格納部22および変換情報格納部23を含む。本実施形態において、この抽出ルール格納部22および変換情報格納部23は、例えば外部記憶装置20に格納される。
入力部31は、ユーザの操作に応じて、当該ユーザによって指定されたクラスタに属する複数の文書(文書群)を入力する(受け付ける)。入力部31によって入力される複数の文書は、複数の自立語(の文字列)を含む文(第1の文)によって構成される。なお、入力部31によって入力される複数の文書の各々には、当該文書を識別するための文書IDが付与されている。
構文解析部32は、入力部31によって入力された複数の文書の各々を構成する文を構文解析する。これにより、構文解析部32は、入力部31によって入力された複数の文書の各々を構成する文に含まれる複数の自立語および当該自立語間の係り受け関係が表された構造木(以下、依存構造木と表記)を生成する。なお、依存構造木は、複数の文書の各々を構成する文毎に生成される。構文解析部32によって生成される依存構造木は、後述するように自立語(見出し語)等が付与されたノードおよび自立語間の係り受け関係の種類が付与されたアークによって表現される。なお、構文解析部32によって生成される依存構造木には、当該依存構造木の生成に用いられた文を含む文書を識別するための文書IDが付与される。
抽出ルール格納部22には、構文解析部32によって生成された依存構造木に適用することにより当該依存構造木の部分構造木を抽出するための抽出ルールが予め格納されている。なお、抽出ルール格納部22には、それぞれ異なる複数の抽出ルールが格納されている。
代表文候補抽出部33は、少なくとも2つの自立語および当該自立語間の係り受け関係が表された部分構造木である代表文候補を、構文解析部32によって生成された依存構造木から抽出する。このとき、代表文候補抽出部33は、抽出ルール格納部22に格納されている抽出ルールの各々を適用することによって代表文候補を抽出する。代表文候補抽出部33によって抽出された代表文候補には、当該代表文候補が抽出された依存構造木に付与された文書IDと同一の文書IDが付与される。
変換情報格納部23には、例えば複数の自立語および当該自立語間の係り受け関係を変換するために用いられる変換情報が予め格納されている。この変換情報格納部23に格納されている変換情報は、代表文候補抽出部33によって抽出された代表文候補によって表される複数の自立語および当該自立語間の係り受け関係を変換するために用いられる。変換情報格納部23に格納されている変換情報には、例えば変換前の自立語(および当該自立語間の係り受け関係)と変換後の自立語(および当該自立語間の係り受け関係)とが含まれる。なお、変更情報格納部23には、変換情報として、例えば後述する活用形辞書、置換ルールおよび同義語辞書が格納されている。
文生成集約部34は、代表文候補抽出部33によって抽出された代表文候補(部分構文木)を平文(以下、代表文候補文と表記)にする処理を実行する。文生成集約部34は、変換情報格納部23に格納されている変換情報に基づいて代表文候補抽出部33によって抽出された代表文候補によって表される少なくとも2つの自立語および当該自立語間の係り受け関係を変換し、当該変換された少なくとも2つの自立語および当該自立語間の係り受け関係に基づいて代表文候補文(第2の文)を生成する。文生成集約部34によって生成された代表文候補文には、当該代表文候補文の生成に用いられた代表文候補に付与された文書IDが付与される。
また、文生成集約部34は、生成された代表文候補文(代表文候補の平文)を集約することによって集約代表文候補文を生成する処理を実行する。文生成集約部34は、代表文候補文のうちの同一の代表文候補文を1つの集約代表文候補文に集約する。文生成集約部34が集約することによって生成された集約代表文候補文には、当該集約代表文候補文に集約された代表文候補文の各々に付与された文書IDが付与される。
代表文決定部35は、文生成集約部34によって生成された集約代表文候補文に集約された代表文候補文の数に基づいて当該集約代表文候補文を代表文として決定(選択)する。なお、文生成集約部34によって集約代表文候補文に集約された代表文候補文の数は、当該集約代表文候補文に付与された文書IDの数により特定される。
なお、代表文決定部35は、例えば内部パラメータにおいて予め指定された数の代表文を選択(決定)する。
出力部36は、代表文決定部35によって決定された代表文を出力する。これにより、代表文決定部35によって決定された代表文(つまり、入力部31によって入力された文書群の内容を適切に表す代表文)がユーザに対して提示される。
次に、図3のフローチャートを参照して、本実施形態に係る代表文抽出装置30の処理手順について説明する。
まず、入力部31は、ユーザの操作に応じて、当該ユーザによって指定されたクラスタに属する文書群を入力する(ステップS1)。入力部31によって入力される文書群には、複数の文書が含まれる。ここでは、例えば自動車の不具合情報に関する文書群が入力部31によって入力されたものとする。
図4は、入力部31によって入力された文書群の一例を示す。なお、文書群(に含まれる文書の各々)は、平文の形式で入力部31によって入力される。図4に示すように、入力部31によって入力された文書群に含まれる各文書は、複数の自立語を含む複数の文によって構成される。また、入力部31によって入力された文書群に含まれる各文書には、当該文書を識別するための文書IDが付与されている。
図4に示す例では、入力部31によって入力された文書群には、文書「燃料が漏れる。タンクの強度不足により燃料タンクの底板形状の成形不良が当該接着部から生じるため、燃料が漏れて火災に至る。」が含まれる。なお、この文書「燃料が漏れる。タンクの強度不足により燃料タンクの底板形状の成形不良が当該接着部から生じるため、燃料が漏れて火災に至る。」には、当該文書を識別するための文書ID「1」が付与されている。
ここでは、入力部31によって入力された文書群に含まれる文書「燃料が漏れる。タンクの強度不足により燃料タンクの底板形状の成形不良が当該接着部から生じるため、燃料が漏れて火災に至る。」について説明したが、他の文書についても同様であるため、その詳しい説明を省略する。
再び図3に戻ると、構文解析部32は、入力部31によって入力された文書群に含まれる各文書を構成する各文(第1の文)、つまり、当該文書群に含まれる各文書中の全ての文について構文解析を行う(ステップS2)。構文解析部32による構文解析の結果は、依存構造木によって表現される。なお、1つの文が構文解析された結果は、1つの依存構造木となる。換言すれば、構文解析部32は、入力部31によって入力された文書群に含まれる各文書を構成する各文を構文解析することによって、当該文毎に依存構造木を生成する。なお、構文解析部32によって生成された依存構造木には、当該依存構造木の生成に用いられた文(つまり、構文解析された文)によって構成される文書を識別するため文書IDが付与される。以下、文を構文解析することによって生成された依存構造木を、単に当該文の依存構造木と称する。
ここで、構文解析部32によって生成される依存構造木について詳しく説明する。依存構造木においては、複数の自立語および当該自立語間の係り受け関係がノードおよびアークを用いて表現される。つまり、依存構造木には、ノードおよびアークが含まれる。
ノードは、依存構造木において自立語を表す。このノードには、当該自立語の見出し語、当該見出し語の品詞および当該見出し語の付属語が付与される。ノードに付与される自立語の見出し語は、当該自立語の文字列を示す。ノードに付与される見出し語の品詞は、当該見出し語(つまり、ノードによって表される自立語)の品詞を表す。
ノードに付与される品詞には、例えば名詞、サ変名詞、動詞、形容詞、副詞および連体詞等が含まれる。このような品詞の中でも、動詞、形容詞のような、活用形のある品詞を用言とするものとする。
ノードに付与される見出し語の付属語は、当該見出し語に付随する付属語を表す。ノードに付与される見出し語の付属語には、例えば「が」、「を」、「の」および「に」のような助詞等が含まれる。
アークは、依存構造木においてノード間の構文的な係り受け関係を表す。このアークには、ノード間(自立語間)の係り受け関係の種類が付与される。アークに付与される係り受け関係の種類には、例えばガ格、ヲ格、連体修飾および隣接等が含まれる。なお、依存構造木においては、アークは例えば矢印により記述される。このアークの矢印は、ノード間の係り受け関係における係り元のノードから係り先のノードに向かうものとする。
以下、1つのアークを用いて表される2つのノード間の係り受け関係において、当該アークにおける係り先のノード(つまり、1つのアークにおける終点となるノード)を親ノードと称する。一方、1つのアークを用いて表される2つのノード間の係り受け関係において、当該アークにおける係り元ノード(つまり、1つのアークにおける始点となるノード)を子ノードと称する。
図5は、2つのノードおよび当該ノード間の係り受け関係を表すアークを用いて表現される依存構造木を示す。図5に示す依存構文木においては、ノード101および102がアーク103によってつながれる。図5に示す例では、ノード101が親ノードであり、ノード102が子ノードである。
図5に示すような依存構造木を組み合せることにより、複数の自立語を含む文の構文解析結果(つまり、依存構造木)が表現される。
ここで、図6を参照して、より具体的な依存構造木について説明する。図6は、「一郎が早いボールを軽々投げた」という文の依存構造木(当該文を構文解析することによって生成された依存構造木)の一例を示す。図6に示す依存構造木においては、ノード111〜115およびアーク121〜124を用いて「一郎が早いボールを軽々投げた」という文の構文解析結果が表現されている。
図6に示すように、依存構造木においては、ノード111〜115には、見出し語、品詞および付属語が付与されている。例えばノード112には、見出し語「一郎」、品詞「名詞」および付属語「が」が付与されている。なお、例えば他のノードとの関係によっては、ノード111のように付属語が付与されない場合がある。
また、依存構造木においては、アーク121〜124には、ノード間の係り受け関係の種類が付与されている。例えばアーク121には、ノード111および112間の係り受け関係の種類としてガ格が付与されている。
なお、依存構造木に含まれるノードは、当該依存構造木におけるアークによる他のノードとのつながり方により、ルートノード、中間ノードおよびリーフノードの3種類のノードに分類される。
ルートノードとは、親ノードが存在しない(つまり、アークにより親ノードとつながっていない)ノードである。中間ノードとは、親ノードおよび子ノードが存在する(つまり、アークにより親ノードおよび子ノードとつながっている)ノードである。また、リーフノードとは、子ノードが存在しない(つまり、アークにより子ノードとつながっていない)ノードである。
図6に示す依存構造木において、ノード111は、ルートノードである。ノード113は、中間ノードである。また、ノード112、114および115はリーフノードである。
また、例えばルートノードと直接的に1つのアークでつながっているノードを、第1世代子ノードと称する。図6に示す依存構造木において、第1世代子ノードは、ノード112〜114である。
つまり、図6に示す依存構造木において、ノード112および114は、第1世代子ノードであり、かつ、リーフノードである。また、図6に示す依存構造木において、ノード113は、第1世代子ノードであり、かつ、中間ノードである。
なお、図7は、上述した図4において説明した文書ID「1」が付与されている文書を構成する文のうちの2つ目の文である「タンクの強度不足により燃料タンクの底板形状の成形不良が当該接着部から生じるため、燃料が漏れて火災に至る。」という文の依存構造木の一例を示す。図7に示す依存構造木の詳細については、上記した依存構造木について説明した通りであるため、その詳しい説明を省略する。
再び図3に戻ると、代表文候補抽出部33は、構文解析部32によって生成された依存構造木の一部である部分構造木である代表文候補を、当該依存構造木から抽出する(ステップS3)。代表文候補抽出部33は、抽出ルール格納部22に格納されている抽出ルールを用いて代表文候補を抽出する。なお、代表文抽出部33によって抽出される代表文候補(部分構造木)は、少なくとも2つの自立語および当該自立語間の係り受け関係を表す構造木である。なお、代表文候補抽出部33は、構文解析部32によって文毎に生成された依存構造木の各々から代表文候補を抽出する。
抽出ルール格納部22に格納されている抽出ルールは、依存構造木に適用され、当該依存構造木から代表文候補を抽出することができるルールである。抽出ルール格納部22には、例えばそれぞれ異なる複数の抽出ルールが格納されている。
ここで、図8を参照して、代表文候補抽出部33による代表文候補を抽出する処理(以下、代表文候補抽出処理と表記)について概念的に説明する。
図8に示すように、代表文候補抽出処理においては、1つの依存構造木に対して抽出ルール格納部22に格納されている抽出ルールの各々が適用されることにより、当該抽出ルール毎に当該依存構造木から部分構造木が抽出される。
つまり、代表文候補抽出処理においては、抽出ルール毎に抽出された部分構造木を寄せ集めることによって、当該部分構造木が代表文候補とされる。
以下、抽出ルール格納部22に格納されている抽出ルールについて具体的に説明する。本実施形態においては、抽出ルール格納部22には第1〜第6の抽出ルールを含む複数の抽出ルールが格納されているものとする。
まず、第1の抽出ルールについて説明する。第1の抽出ルールにおいては、依存構造木によって表される複数の自立語のうちの動詞に着目する。第1の抽出ルールによれば、依存構造木によって表される複数の自立語のうちの動詞に基づいて当該依存構造木が分割される。より具体的には、第1の抽出ルールによれば、当該第1の抽出ルールが適用される依存構造木において、ノードに付与されている見出し語の品詞が動詞であるノード(以下、動詞ノードと表記)および当該動詞ノードの親ノード間のアークが切断されることによって当該依存構造木が分割される。つまり、第1の抽出ルールでは、分割された依存構造木の各々が部分構造木として抽出される。以下、第1の抽出ルールが適用されることによって抽出される部分構造木を部分依存構造木と称する。
ここで、図9〜図12を参照して、上記した図7に示す依存構造木に対して第1の抽出ルールが適用された場合について具体的に説明する。以下の説明においては、図7に示す依存構造木を対象依存構造木と称する。
図9に示すように、対象依存構造木には、動詞ノードとして見出し語「至る」が付与されたノード、見出し語「生じる」が付与されたノードおよび見出し語「漏れて」が付与されたノードが含まれている。以下の説明においては、例えば見出し語「至る」が付与されたノードを「至る」ノードと称する。なお、他のノードの説明においても同様である。
ここで、「至る」ノードは、ルートノードであるため、当該「至る」ノードの親ノードは存在しない。一方、「生じる」ノードおよび「漏れて」ノードは、共に中間ノードであるため、親ノードが存在する。
したがって、対象依存構造木に対して第1の抽出ルールが適用された場合、「生じる」ノードと当該「生じる」ノードの親ノード(ここでは、「ため、」ノード)とをつなぐアーク(つまり、「生じる」ノードおよびその親ノード間のアーク)が切断される。同様に、「漏れて」ノードと当該「漏れて」ノードの親ノード(ここでは、「至る」ノード)とをつなぐアークが切断される。
上記したようにアークが切断される(つまり、分割される)ことにより、対象依存構造木から、図10〜図12に示す3つの部分依存構造木が抽出される。
なお、上記した第1の抽出ルールが適用されることによって抽出された部分依存構造木に対して、更にノードの取込み処理または不要リーフノードの削除処理が行われても構わない。
ノードの取込み処理とは、例えば対象依存構造木(つまり、分割前の依存構造木)において、第1の抽出ルールが適用されることにより切断されたアーク(つまり、動詞ノードおよびその親ノード間のアーク)に付与されている係り受け関係の種類(以下、単にアークの種類と表記)が連体修飾である場合に、当該アークによって表されるノード間の係り受け関係における係り先ノード(以下、単にアークの係り先ノードと表記)を係り元ノード側の部分依存構造木が取り込む処理である。
ここで、図13を参照して、ノードの取込み処理について具体的に説明する。ここでは、例えば「亀裂から漏れた燃料により火災に至る」という文の依存構造木に対して第1の抽出ルールが適用される場合について説明する。
この場合、図13に示すように、「亀裂から漏れた燃料により火災に至る」という文の依存構造木においては、動詞ノードとして「至る」ノードおよび「漏れた」ノードが含まれている。ここで、「至る」ノードは、ルートノードであるため、当該「至る」ノードの親ノードは存在しない。一方、「漏れた」ノードは、中間ノードであるため、親ノードが存在する。
したがって、「亀裂から漏れた燃料により火災に至る」という文の依存構造木に対して第1の抽出ルールが適用された場合、「漏れた」ノードおよびその親ノードである「燃料ノード」間のアークが切断される。これにより、「至る」ノードをルートノードとする部分構造木および「漏れた」ノードをルートノードとする2つの部分依存構造木が抽出される。
ここで、図13に示すように、「亀裂から漏れた燃料により火災に至る」という文の依存構造木において切断されたアーク(「漏れた」ノードおよび「燃料」ノード間のアーク)の種類は連体修飾である。このため、ノードの取込み処理においては、切断されたアークの係り先ノードである「燃料」ノードが「漏れた」ノードをルートノードとする部分依存構造木に取り込まれる。この際、「漏れた」ノードと「燃料」ノードの係り受け関係は逆にされる(つまり、「漏れた」ノードを係り先ノード、「燃料」ノードを係り元ノードとする)。また、この場合、「漏れた」ノードおよび「燃料」ノード間のアークの種類は連体修飾からガ格にされ、「燃料」ノードに付与されている付属語(「燃料」ノードの付属語)を「により」から「が」に変更する。
なお、上記した第1の抽出ルールが適用されることによって抽出された「至る」ノードをルートノードとする部分依存構造木に含まれる「燃料」ノードは、上記したように「漏れた」ノードをルートノードとする部分依存構造木に取り込まれた場合であっても変更されない。
上記したように例えば「亀裂から漏れた燃料により火災に至る」という文の依存構造木に対して第1の抽出ルールが適用され、かつ、ノードの取り込み処理が行われた場合には、図13に示すように、「燃料が亀裂から漏れた」および「燃料により火災に至る」の部分依存構造木が抽出される。
一方、不要リーフノードの削除処理とは、第1の抽出ルールが適用されることによって抽出された部分依存構造木から不要リーフノードを削除する処理である。この不要リーフノードの削除処理においては、不要リーフノードとして見出し語(または品詞)が予め設定されている。なお、不要リーフノード(の内容)は、必要に応じて、適宜、設定可能である。
ここで、図14および図15を参照して、不要リーフノードの削除処理について具体的に説明する。ここでは、第1の抽出ルールが適用されることによって抽出された部分依存構造木(図10〜図12に示す部分依存構造木)に対して不要リーフノードの削除処理が行われた場合について説明する。
なお、不要リーフノードとして見出し語「ため、」および「当該」(が付与されているノード)が予め設定されているものとする。
図14は、図10に示す部分依存構造木に対して不要リーフノードの削除処理が行われた結果を示す。図10に示す部分依存構造木には、不要リーフノードである「ため、」ノードが含まれている。このため、図14に示すように、不要リーフノードの削除処理においては、部分依存構造木に含まれる「ため、」ノードが削除される。
図15は、図11に示す部分依存構造木に対して不要リーフノードの削除処理が行われた結果を示す。図11に示す部分依存構造木には、不要リーフノードである「当該」ノードが含まれている。このため、図15に示すように、不要リーフノードの削除処理においては、部分依存構造木に含まれる「当該」ノードが削除される。
なお、図12に示す部分依存構造木には、不要リーフノード(つまり、「ため、」ノードおよび「当該」ノード)が含まれていない。このため、図12に示す部分依存構造木に含まれるノードは削除されない。
以上により、対象依存構造木(図7に示す依存構造木)に対して第1の抽出ルールが適用された場合、上記した図12、図14および図15に示す部分依存構造木が抽出される。
次に、第2の抽出ルールについて説明する。第2の抽出ルールによれば、上記した第1の抽出ルールが適用されることによって抽出された部分依存構造木を利用して部分構造木が抽出される。
ここで、図16を参照して、依存構造木に対して第2の抽出ルールが適用されることによって抽出される部分構造木について説明する。
第2の抽出ルールにおいては、第1の抽出ルールが適用されることによって抽出された部分依存構造木におけるルートノードおよび第1世代子ノード(つまり、ルートノードの子ノード)間の全てのアークの種類に着目する。これらのアークの中に、アークの種類がガ格、ヲ格、ニ格、カラ格、場所格および道具格であるアークが存在する場合に、第2の抽出ルールは適用される。なお、この第2の抽出ルールが適用されるべきアークの種類は予め設定されている。
第2の抽出ルールが適用される場合には、まず、依存構造木に対して第1の抽出ルールが適用されることによって部分依存構造木が抽出される。
第1の抽出ルールが適用されることによって抽出された部分依存構造木におけるルートノードおよび第1世代子ノード間の全てのアークの中から、アークの種類がガ格、ヲ格、ニ格、カラ格、場所格および道具格であるアークが探索される(ステップS11)。
次に、ルートノードおよび第1世代子ノード間の全てのアークのうちアークの種類がガ格、ヲ格、ニ格、カラ格、場所格および道具格以外であるアーク(つまり、探索されたアーク以外のアーク)が切断される(ステップS12)。
この後、アークが切断された後の部分依存構造木において、ルートノードおよび各リーフノード間における全てのノードおよびアークを含む部分構造木が抽出される(ステップS13)。図16に示す例では、3つの部分構造木が抽出される。
上記したように第2の抽出ルールによれば、部分依存構造木から分岐のない部分構造木が抽出される。以下、第2の抽出ルールが適用されることによって抽出される部分構造木を分岐なし依存構造木と称する。
ここで、例えば対象依存構造木(図7に示す依存構造木)に対して第2の抽出ルールが適用された場合について具体的に説明する。
まず、対象依存構造木に対して第1の抽出ルールが適用されることにより、部分依存構造木が抽出される。ここでは、上記した図15に示す部分依存構造木が抽出されたものとする。
この場合、図15に示す部分依存構造木におけるルートノードである「生じる」ノードおよび第1世代子ノードである「不足」ノード間のアークの種類は、道具格である。
また、図15に示す部分依存構造木におけるルートノードである「生じる」ノードおよび第1世代子ノードである「不良」ノード間のアークの種類は、ガ格である。
また、図15に示す部分依存構造木におけるルートノードである「生じる」ノードおよび第1世代子ノードである「接着部」ノード間のアークの種類は、カラ格である。
したがって、図15に示す部分依存構造木においては、アークの種類がガ格、ヲ格、ニ格、カラ格、場所格および道具格以外であるアーク(ルートノードおよび第1世代子ノード間のアーク)は存在しない。このため、図15に示す部分依存構造木においてはルートノードおよび第1世代子ノード間のアークの切断は行われない。
次に、図15に示す部分依存構造木において、ルートノードである「生じる」ノードおよび各リーフノード間における全てのノードおよびアークを含む分岐なし依存構造木が抽出される。
具体的には、ルートノードである「生じる」ノードおよびリーフノードである「タンク」ノード間における全てのノードおよびアークを含む分岐なし依存構造木として、図17に示す分岐なし依存構造木が抽出される。
同様に、ルートノードである「生じる」ノードおよびリーフノードである「強度」ノード間における全てのノードおよびアークを含む分岐なし依存構造木として、図18に示す分岐なし依存構造木が抽出される。
また、ルートノードである「生じる」ノードおよびリーフノードである「成形」ノード間における全てのノードおよびアークを含む分岐なし依存構造木として、図19に示す分岐なし依存構造木が抽出される。
また、ルートノードである「生じる」ノードおよびリーフノードである「底板」ノード間における全てのノードおよびアークを含む分岐なし依存構造木として、図20に示す分岐なし依存構造木が抽出される。
また、ルートノードである「生じる」ノードおよびリーフノードである「燃料タンク」ノード間における全てのノードおよびアークを含む分岐なし依存構造木として、図21に示す分岐なし依存構造木が抽出される。
また、ルートノードである「生じる」ノードおよびリーフノードである「から」ノード間における全てのノードおよびアークを含む分岐なし依存構造木として、図22に示す分岐なし依存構造木が抽出される。
したがって、対象依存構造木に対して第2の抽出ルールが適用された場合には、上記した図17〜図22に示す分岐なし依存構造木が抽出される。
なお、対象依存構造木に対して第1の抽出ルールが適用されることによって例えば図12および図14に示す部分依存構造木が抽出された場合には、当該図12および図14に示す部分依存構造木と同様の分岐なし依存構造木が抽出される。
次に、第3の抽出ルールについて説明する。第3の抽出ルールによれば、上記した第2の抽出ルールと同様に、第1の抽出ルールが適用されることによって抽出される部分依存構造木を利用して部分構造木が抽出される。
ここで、図23を参照して、依存構造木に対して第3の抽出ルールが適用されることによって抽出される部分構造木について説明する。
第3の抽出ルールにおいては、第1の抽出ルールが適用されることによって抽出された部分依存構造木におけるルートノードおよび第1世代子ノード間の全てのアークの種類に着目する。これらのアークの中に、アークの種類がガ格、ヲ格、ニ格、カラ格、場所格および道具格であるアークが存在する場合に、第3の抽出ルールは適用される。なお、この第3の抽出ルールが適用されるべきアークの種類は予め設定されている。
第3の抽出ルールが適用される場合には、まず、依存構造木に対して第1の抽出ルールが適用されることによって、部分依存構造木が抽出される。
第1の抽出ルールが適用されることによって抽出された部分依存構造木におけるルートノードおよび第1世代子ノード間の全てのアークの中から、アークの種類がガ格、ヲ格、ニ格、カラ格、場所格および道具格であるアークが探索される(ステップ21)。
次に、ルートノードおよび第1世代子ノード間の全てのアークのうちアークの種類がガ格、ヲ格、ニ格、カラ格、場所格および道具格以外であるアーク(つまり、探索されたアーク以外のアーク)が切断される(ステップS22)。
なお、ここまでの処理(ステップS21およびステップS22の処理)は、上述した第2の抽出ルールが適用される場合において説明した図16に示すステップS11およびステップS12の処理と同様である。
この後、アークが切断された後の部分依存構造木において、ルートノードの子ノード(つまり、第1世代子ノード)をリーフノードとする部分構造木が抽出される(ステップS23)。つまり、図23に示すように、ルートノードと、当該ルートノードの子ノードと、当該ルートノードおよび第1世代子ノード間のアークを含む部分構造木が抽出される。
上記したように第3の抽出ルールによれば、部分依存構造木におけるルートノードおよび第1世代子ノードのみからなる部分構造木が抽出される。以下、第3の抽出ルールが適用されることによって抽出される部分構造木を1世代部分依存構造木と称する。
ここで、例えば対象依存構造木(図7に示す依存構造木)に対して第3の抽出ルールが適用された場合について具体的に説明する。
まず、対象依存構造木に対して第1の抽出ルールが適用されることにより、部分依存構造木が抽出される。ここでは、上記した図15に示す部分依存構造木が抽出されたものとする。
この場合、上記したように図15に示す部分依存構造木においては、アークの種類がガ格、ヲ格、ニ格、カラ格、場所格、および道具格以外であるアーク(ルートノードおよび第1世代子ノード間のアーク)は存在しない。このため、図15に示す部分依存構造木においては、ルートノードおよび第1世代子ノード間のアークの切断は行われない。
次に、図15に示す部分依存構造木において、ルートノードの子ノード(第1世代子ノード)をリーフノードとした1世代部分依存構造木が抽出される。
図15に示す部分依存構造木において、ルートノードである「生じる」ノードの子ノードは、「不足」ノード、「不良」ノードおよび「接着部」ノードである。このため、ルートノードである「生じる」ノードと、当該ルートノードの子ノードである「不足」ノードと、「不良」ノードと、「接着部」ノードと、当該ルートノードおよびその子ノード間のアークとを含む1世代部分依存構造木が抽出される。
したがって、対象依存構造木に対して第3の抽出ルールが適用された場合には、上記した図24に示す1世代部分依存構造木が抽出される。
なお、対象依存構造木に対して第1の抽出ルールが適用されることによって例えば図12および図14に示す部分依存構造木が抽出された場合には、当該図12および図14に示す部分依存構造木と同様の1世代部分依存構造木が抽出される。
次に、第4の抽出ルールについて説明する。第4の抽出ルールによれば、上記した第3の抽出ルールが適用されることによって抽出された1世代部分依存構造木を利用して部分構造木が抽出される。
ここで、図25を参照して、依存構造木に対して第4の抽出ルールが適用されることによって抽出される部分構造木について説明する。
第4の抽出ルールが適用される場合には、まず、依存構造木に対して上記した第3の抽出ルールが適用されることによって、1世代部分依存構造木が抽出される(ステップS31)。
次に、第3の抽出ルールを適用することによって抽出された1世代部分依存構造木におけるルートノードおよび第1世代子ノード間のアークを用いて、当該ルートノードおよび第1世代子ノードの各々を含む部分構造木が抽出される(ステップS32)。
上記したように第4の抽出ルールによれば、1世代部分依存構造木におけるルートノードおよび第1世代子ノードの2ノードを含む部分構造木が抽出される。以下、第4の抽出ルールが適用されることによって抽出される部分構造木を2語文部分依存構造木と称する。
ここで、例えば対象依存構造木(図7に示す依存構造木)に対して第4の抽出ルールが適用された場合について具体的に説明する。
まず、対象依存構造木に対して第3の抽出ルールが適用されることにより、1世代部分依存構造木が抽出される。ここでは、上記した図24に示す1世代部分依存構造木が抽出されたものとする。
図24に示す1世代部分依存構造木におけるルートノードは「生じる」ノードであり、第1世代子ノードは「不足」ノード、「不良」ノードおよび「接着部」ノードである。この場合、ルートノードである「生じる」ノードおよび第1世代子ノードである「不足」ノードを含む2語文部分依存構造木、ルートノードである「生じる」ノードおよび第1世代子ノードである「不良」ノードを含む2語文部分依存構造木およびルートノードである「生じる」ノードおよび第1世代子ノードである「接着部」ノードを含む2語文部分依存構造木が抽出される。
具体的には、ルートノードである「生じる」ノードおよび第1世代子ノードである「不足」ノードを含む2語文部分依存構造木として、図26に示す2語文部分依存構造木が抽出される。
また、ルートノードである「生じる」ノードおよび第1世代子ノードである「不良」ノードを含む2語文部分依存構造木として、図27に示す2語文部分依存構造木が抽出される。
また、ルートノードである「生じる」ノードおよび第1世代子ノードである「接着部」ノードを含む2語文部分依存構造木として、図22に示す分岐なし依存構造木と同様の2語文部分依存構造木が抽出される。
したがって、対象依存構造木に対して第4の抽出ルールが適用された場合には、上記した図22、図26、図27に示す2語文部分依存構造木が抽出される。
なお、例えば対象依存構造木に対して第3の抽出ルールが適用されることによって上記した図12および図14に示す部分依存構造木と同様の1世代部分依存構造木が抽出された場合には、同様に、当該1世代部分依存構造木と同様の2語文部分依存構造木が抽出される。
次に、第5の抽出ルールについて説明する。第5の抽出ルールによれば、上記した第4の抽出ルールと同様に、第3の抽出ルールが適用されることによって抽出される1世代部分依存構造木を利用して部分構造木が抽出される。
ここで、図28を参照して、依存構造木に対して第5の抽出ルールが適用されることによって抽出される部分構造木について説明する。
第5の抽出ルールが適用される場合には、まず、依存構造木に対して上記した第3の抽出ルールが適用されることによって、1世代部分依存構造木が抽出される(ステップS41)。なお、この処理は、上述した第4の抽出ルールが適用される場合において説明した図25に示すステップS31の処理と同様である。
次に、第3の抽出ルールを適用することによって抽出された1世代部分依存構造木におけるルートノードおよび第1世代子ノード間のアークのうち、当該アークの種類が必須格であるアークを用いて、当該ルートノードおよび当該第1世代子ノードの2ノードを含む部分構造木が抽出される(ステップS42)。以下、第5の抽出ルールが適用されることによって抽出される部分構造木を必須格2語文部分依存構造木と称する。
なお、必須格は、ルートノード(動詞ノード)の見出し語に応じて予め定められている。アークの種類が必須格であるか否かの判定は、ルートノードの見出し語および予め用意されている格フレーム辞書を用いて行われる。
ここで、図29は、アークの種類が必須格であるか否かの判定に用いられる格フレーム辞書のデータ構造の一例を示す。図29に示すように、格フレーム辞書には、自立語である動詞(の見出し語)に対応づけて必須格が格納されている。
図29に示す例では、格フレーム辞書には、動詞「生じる」に対応づけて必須格「ガ格」、「ヲ格」および「カラ格」が格納されている。これによれば、ルートノードが「生じる」ノードである場合の必須格は、「ガ格」、「ヲ格」および「カラ格」であることが示される。
ここでは、動詞「生じる」について説明したが、動詞「漏れる」および「至る」についても同様であるため、その詳しい説明を省略する。
ここで、例えば対象依存構造木(図7に示す依存構造木)に対して第5の抽出ルールが適用された場合について具体的に説明する。
まず、対象依存構造木に対して第3の抽出ルールが適用されることにより、1世代部分依存構造木が抽出される。ここでは、上記した図24に示す1世代部分依存構造木が抽出されたものとする。
図24に示す1世代部分依存構造木におけるルートノードである「生じる」ノードの見出し語は、「生じる」である。ここで、図29に示す格フレーム辞書においては、動詞「生じる」に対応づけて必須格「ガ格」、「ヲ格」および「カラ格」が格納されている。
したがって、図24に示す1世代部分依存構造木において、ルートノードおよび第1世代子ノード間のアークの中から、アークの種類が必須格(ガ格、ヲ格およびカラ格)であるアークが探索される。
ここで、図24に示す1世代部分依存構造木において、ルートノードである「生じる」ノードおよび第1世代子ノードである「不足」ノード間のアークの種類は道具格であるため必須格ではない。よって、ルートノードである「生じる」ノードおよび第1世代子ノードである「不足」ノードの2ノードを含む必須格2語文部分依存構文木は抽出されない。
一方、図24に示す1世代部分依存構造木において、ルートノードである「生じる」ノードおよび第1世代子ノードである「不良」ノード間のアークの種類はガ格であるため必須格である。よって、ルートノードである「生じる」ノードおよび第1世代子ノードである「不良」ノードの2ノードを含む必須格2語文部分依存構文木が抽出される。なお、ここで抽出される必須格2語文部分依存構文木は、上記した図27に示す2語文部分依存構造木と同一である。
また、図24に示す1世代部分依存構造木において、ルートノードである「生じる」ノードおよび第1世代子ノードである「接着部」ノード間のアークの種類はカラ格であるため必須格である。よって、ルートノードである「生じる」ノードおよび第1世代子ノードである「接着部」ノードの2ノードを含む必須格2語文部分依存構文木が抽出される。なお、ここで抽出される必須格2語文部分依存構造木は、上記した図22に示す2語文部分依存構造木(分岐なし依存構造木)と同一である。
したがって、対象依存構造木に対して第5の抽出ルールが適用された場合には、上記した図22および図27に示す2語文依存構造木と同様の必須格2語文部分依存構造木が抽出される。
なお、例えば対象依存構造木に対して第3の抽出ルールが適用されることによって上記した図12および図14に示す部分依存構造木と同様の1世代部分依存構造木が抽出された場合には、同様に、当該1世代部分依存構造木と同様の必須格2語文部分依存構造木が抽出される。
次に、第6の抽出ルールについて説明する。第6の抽出ルールにおいては、依存構造木に含まれるノードのうちの手がかり語ノードに着目する。この手がかり語ノードには、例えば見出し語として「ため」、「から」、「ので」および「場合」等が付与されたノードが含まれる。なお、手がかり語ノードは、予め定められている。
第6の抽出ルールは、依存構造木における手がかり語ノードの子ノードが動詞ノード(見出し語の品詞として「動詞」が付与されているノード)である場合に適用される。
ここで、依存構造木に対して第6の抽出ルールが適用されることによって抽出される部分構造木について説明する。
第6の抽出ルールが適用される場合には、まず、依存構造木におけるルートノードおよび第1世代子ノード間のアークの種類がガ格、ヲ格、ニ格、カラ格、場所格および道具格である場合の当該アーク、当該ルートノードおよび当該第1世代子ノードが特定される。
また、依存構造木における手がかり語ノードが特定される。このとき、依存構造木における手がかり語ノードおよび当該手がかり語ノードの子ノード(以下、第1の子ノードと表記)間のアークが特定される。更に、依存構造木における第1の子ノード(手がかり語ノードの子ノード)および当該第1の子ノードの子ノード(以下、第2の子ノードと表記)間のアークの種類がガ格、ヲ格、ニ格、カラ格、場所格および道具格である場合の当該アーク、当該第1の子ノードおよび当該第2の子ノードが特定される。なお、第1の子ノード(つまり、手がかり語ノードの子ノード)は動詞ノードであるものとする。
次に、上記特定されたアーク、ルートノード、第1世代子ノード、手がかり語ノード、第1の子ノードおよび第2の子ノードから部分構造木が生成される。
第6の抽出ルールによれば、上記したように部分構造木が生成されることによって、依存構造木から部分構造木が抽出される。以下、第6の抽出ルールが適用されることによって抽出される部分構造木を因果関係の依存構造木と称する。
ここで、例えば対象依存構造木(図7に示す依存構造木)に対して第6の抽出ルールが適用された場合について具体的に説明する。
対象依存構造木における手がかり語ノードは、「ため、」ノードである。対象依存構造木における手がかり語ノードである「ため、」ノードの子ノードは、「生じる」ノードである。この場合、手がかり語ノードの子ノードが動詞ノードであるため、対象依存構造木に対して第6の抽出ルールは適用される。
対象依存構造木におけるルートノードは、「至る」ノードである。対象依存構造木における第1世代子ノードは、「ため、」ノード、「漏れて」ノードおよび「火災」ノードである。ルートノードである「至る」ノードおよび第1世代子ノードである「ため、」ノード間のアークの種類は従属接続である。ルートノードである「至る」ノードおよび第1世代子ノードである「漏れて」ノード間のアークの種類は連用中止である。ルートノードである「至る」ノードおよび第1世代子ノードである「火災」ノード間のアークの種類はニ格である。
このため、因果関係の依存構造木を生成するためのアークおよびノードとして、ルートノードである「至る」ノードおよび第1世代子ノードである「火災」ノード間のアーク、当該「至るノード」および当該「火災」ノードが特定される。
また、上記したように対象依存構造木における手がかり語ノードは、「ため、」ノードである。このため、因果関係の依存構造木を生成するためのノードとして、手がかり語ノードである「ため、」ノードが特定される。このとき、因果関係の依存構造木を生成するためのアークとして、手がかり語ノードである「ため、」ノードおよび当該手がかり語ノードの子ノード(第1の子ノード)である「生じる」ノード間のアークが特定される。
上記したように対象依存構造木における手がかり語ノードである「ため、」ノードの子ノード(第1の子ノード)は、「生じる」ノードである。また、対象依存構造木における第1の子ノードである「生じる」ノードの子ノード(第2の子ノード)は、「不足」ノード、「不良」ノードおよび「接着部」ノードである。
ここで、第1の子ノードである「生じる」ノードおよび第2の子ノードである「不足」ノード間のアークの種類は道具格である。第1の子ノードである「生じる」ノードおよび第2の子ノードである「不良」ノード間のアークの種類はガ格である。第1の子ノードである「生じる」ノードおよび第2の子ノードである「接着部」ノード間のアークの種類はカラ格である。
このため、因果関係の依存構造木を生成するためのアークおよびノードとして、第1の子ノードである「生じる」ノードおよび第2の子ノードである「不足」ノード間のアーク、第1の子ノードである「生じる」ノードおよび第2の子ノードである「不良」ノード間のアーク、第1の子ノードである「生じる」ノードおよび第2の子ノードである「接着部」ノード間のアーク、当該「生じる」ノード、当該「不足」ノード、当該「不良」ノードおよび当該「接着部」ノードが特定される。
以上により、上記特定されたアーク、ルートノードである「至る」ノード、第1世代子ノードである「火災」ノード、手がかり語ノードである「ため、」ノード、第1の子ノードである「生じる」、第2の子ノードである「不足」ノード、「不良」ノードおよび「接着部」ノードから因果関係の依存構造木が生成される。
つまり、上記したように対象依存構造木に対して第6の抽出ルールが適用された場合には、図30に示す因果関係の依存構造木が抽出される。
なお、ここでは抽出ルール格納部22に格納される抽出ルールとして第1〜第6の抽出ルールについて説明したが、他の抽出ルールが用いられても構わない。
また、抽出ルール格納部22に格納されている複数の抽出ルールのうち、例えばユーザによって選択された抽出ルールのみが適用される構成であっても構わない。
以下の説明においては、抽出ルール格納部22に格納されている複数の抽出ルール(第1〜第6の抽出ルール)のうち、第1〜第4の抽出ルールのみが適用されたものとして説明する。
上記したように、抽出ルール格納部22に格納されている第1〜第4の抽出ルールが例えば対象依存構造木に適用された場合には、図12、図14、図15、図17〜図22、図24、図26および図27に示す各部分構造木(部分依存構造木、分岐なし依存構造木、1世代部分依存構造木および2語文部分依存構造木)が抽出される。
なお、図12および図14に示す部分構造木は、上記した第1〜第4の抽出ルールが適用されることによって抽出される部分構造木である。図15に示す部分構造木は、上記した第1の抽出ルールが適用されることによって抽出される部分構造木である。図17〜図21に示す部分構造木は、上記した第2の抽出ルールが適用されることによって抽出される部分構造木である。図22に示す部分構造木は、上記した第2および第4の抽出ルールが適用されることによって抽出される部分構造木である。図24に示す部分構造木は、上記した第3の抽出ルールが適用されることによって抽出される部分構造木である。図26および27に示す部分構造木は、上記した第4の抽出ルールが適用されることによって抽出される部分構造木である。
つまり、代表文候補抽出部33は、第1〜第4の抽出ルールを用いることによって、図12、図14、図15、図17〜図22、図24、図26および図27に示す各部分構造木である代表文候補を対象依存構造木から抽出する。
なお、代表文候補抽出部33によって抽出された代表文候補(部分構造木)には、当該代表文候補が抽出された依存構造木の生成に用いられた文によって構成される文書を識別するための文書ID(つまり、当該依存構造木に付与された文書IDと同一の文書ID)が付与される。
上記した図12、図14、図15、図17〜図22、図24、図26および図27に示す代表文候補は、文書ID「1」によって識別される文書を構成する文のうちの2つ目の文である「タンクの強度不足により燃料タンクの底板形状の成形不良が当該接着部から生じるため、燃料が漏れて火災に至る。」の依存構造木(対象依存構造木)から抽出されている。したがって、これらの代表文候補には、文書ID「1」が付与される。
ここで、図31は、代表文候補抽出部33によって抽出された代表文候補の一例を示す。なお、代表文候補抽出部33によって抽出された代表文候補は依存構造木の形式(つまり、部分構造木)であるが、図31においては便宜的に平文の形式で表すものとする。
図31に示すように、代表文候補抽出部33によって抽出された代表文候補の各々には、当該代表文候補を識別するための代表文候補IDおよび当該代表文候補(部分構造木)が抽出された依存構造木の生成に用いられた(文から構成される)文書を識別するための文書ID(当該依存構造木に付与された文書IDと同一の文書ID)が付与されている。
図31に示す例では、代表文候補「燃料が漏れる」には、代表文候補ID「1」および文書ID「1」が付与されている。これによれば、代表文候補ID「1」によって識別される代表文候補「燃料が漏れる」は、文書ID「1」によって識別される文書(を構成する文)から生成された依存構造木から抽出されたことが示される。
また、代表文候補「燃料が漏れる」には、代表文候補ID「130」および文書ID「197」が付与されている。これによれば、代表文候補ID「130」によって識別される代表文候補「燃料が漏れる」は、文書ID「197」によって識別される文書から生成された依存構造木から抽出されたことが示される。
ここでは、代表文候補「燃料が漏れる」について説明したが、他の代表文候補についても同様であるため、その詳しい説明を省略する。
なお、図31においては、代表文候補には、代表文候補IDおよび文書IDのみが付与されているものとして説明したが、例えば当該文書IDによって識別される文書中における当該代表文候補の出現位置を示す情報(当該代表文候補におけるルートノードに付与されている見出し語が当該文書の先頭から何文字目に出現するかを示す情報)等が付与されていても構わない。
再び図3に戻ると、文生成集約部34は、変換情報格納部23に格納されている変換情報に基づいて代表文候補抽出部33によって抽出された代表文候補(部分構造木)によって表される複数の自立語および当該自立語間の係り受け関係を変換する。文生成集約部34は、変換された代表文候補(によって表される複数の自立語および当該自立語間の係り受け関係)に基づいて、当該代表文候補から代表文候補文(つまり、平文)を生成する(ステップS4)。変換情報格納部23には、変換情報として活用形辞書、置換ルールおよび同義語辞書が格納されている。
ここでは、代表文候補から代表文候補文を生成する方法として、例えば第1〜第3の方法(以下、第1〜第3の文生成方法と表記)が用いられる。以下、第1〜第3の文生成方法について説明する。
第1の文生成方法は、代表文候補におけるルートノードが動詞ノードである場合に、当該動詞ノードの見出し語を終止形とすることによって代表文候補文を生成する方法である。この第1の文生成方法では、変換情報格納部23に格納されている活用形辞書が用いられる。この活用形辞書には、例えば動詞ノードの見出し語(の各活用形)に対する終止形を示す情報が格納されている。つまり、この活用形辞書を参考することによって、動詞ノードの見出し語を終止形に変換することができる。
第1の文生成方法においては、代表文候補に含まれるノード毎に、当該ノードの見出し語および付属語を結合することによって表層文字列が生成される。この場合において、ルートノードが動詞ノードであるときには、活用形辞書を参照することによって当該動詞ノードの見出し語(の活用形)が終止形に変換される。なお、この場合には、活用形辞書を用いなくてもよい。その後、更に、ノード毎に生成された表層文字列を、代表文候補におけるリーフノードからアークの矢印方向を辿って順に結合することによって代表文候補文(平文)が生成される。
なお、ノード間のアークの種類が隣接である場合には、当該両ノードの見出し語が当該アークの矢印方向に従って結合される。また、上記した1世代部分依存構造木のように代表文候補において第1世代子ノードが複数存在するような場合には、例えばルートノードおよび当該1世代子ノード間のアークの種類によって表層文字列を結合する順番を定めてもよいし、任意の順番であっても構わない。
ここで、図32を参照して、第1の文生成方法によって生成される代表文候補文について具体的に説明する。
まず、第1の文生成方法によって例えば図31に示す代表文候補ID「1」によって識別される代表文候補「燃料が漏れる(依存構造木形式)」から代表文候補文が生成される場合について説明する。
この場合、代表文候補「燃料が漏れる」におけるルートノード(「漏れる」ノード)は動詞ノードであるが、当該ルートノードの見出し語は既に終止形である。このため、文生成集約部34は、図32に示すように代表文候補「燃料が漏れる(依存構造木形式)」から代表文候補文「燃料が漏れる(平文形式)」を生成する。
また、第1の文生成方法によって例えば図31に示す代表文候補ID「9」によって識別される代表文候補「燃料が漏れて(依存構造木形式)」から代表文候補文が生成される場合について説明する。
この場合、代表文候補「燃料が漏れて」におけるルートノード(「漏れて」ノード)は動詞ノードであるため、活用形辞書を参照することによって当該ルートノードの見出し語「漏れて」は終止形(つまり、「漏れる」)に変換される。このため、文生成集約部34は、図32に示すように代表文候補「燃料が漏れて(依存構造木形式)」から代表文候補「燃料が漏れる(平文形式)」を生成する。
また、第1の文生成方法によって例えば図31に示す代表文候補ID「126」によって識別される代表文候補「燃料が漏れない(依存構造木形式)」から代表文候補文が生成される場合について説明する。
この場合、代表文候補「燃料が漏れない」におけるルートノード(「漏れない」ノード)は動詞ノードであるが、当該ルートノードの見出し語は既に終止形である。このため、文生成集約部34は、図32に示すように代表文候補「燃料が漏れない(依存構造木形式)」から代表文候補文「燃料が漏れない(平文形式)」を生成する。
ここでは詳しい説明を省略するが、第1の文生成方法によって図31に示す代表文候補ID「17」、「128」および「130」によって識別される代表文候補から代表文候補文が生成された場合には、上記した代表文候補ID「1」および「9」によって識別される代表文候補と同様に、代表文候補文「燃料が漏れる」が生成される。
なお、第1の文生成方法においては、活用形辞書を参照することによって、例えば受身形または使役形の動詞ノードの見出し語が終止形に変換されてもよい。具体的には、第1の文生成方法によれば、例えば図31に示す代表文候補ID「122」によって識別される代表文候補「エンジンが停止される(依存構造木形式)」からは代表文候補文「エンジンが停止する(平文形式)」が生成される。同様に、第1の文生成方法によれば、例えば図31に示す代表文候補ID「125」によって識別される代表文候補「エンジンを停止させる(依存構造木形式)」からは代表文候補文「エンジンを停止する(平文形式)」が生成される。
第2の文生成方法は、代表文候補に対して言い換え処理を実行することによって代表文候補文を生成する方法である。なお、第2の文生成方法における言い換え処理は、代表文候補におけるルートノードの見出し語が終止形とされた後に行われるものとする。
第2の文生成方法においては、変換情報格納部23に格納されている置換ルールを用いて代表文候補の言い換え処理、即ち、部分構造木(依存構造木)の置換処理が実行され、当該置換処理後の部分構造木を用いて平文が生成される。
ここで、図33は、言い換え処理に用いられる置換ルールのデータ構造の一例を示す。図33に示すように、置換ルールには、ルールIDに対応づけて置換前依存構造木(変更前の複数の自立語および当該自立語間の係り受け関係)および置換後依存構造木(変更後の複数の自立語および当該自立語間の係り受け関係)が含まれる。
ルールIDは、置換ルールを識別するための識別子である。置換前依存構造木および置換後依存構造木は、それぞれパターン、アーク種類およびノード種類から構成される。以下、置換前依存構造木を構成するパターン、アーク種類およびノード種類を単に置換前依存構造木のパターン、アーク種類およびノード種類と称する。同様に、置換後依存構造木を構成するパターン、アーク種類およびノード種類を単に置換後依存構造木のパターン、アーク種類およびノード種類と称する。
置換前依存構造木のパターンは、当該置換前依存構造木における複数のノード間の係り受け関係を表す依存構造木のパターンを示す。置換前依存構造木のアーク種類は、当該置換前依存構造木によって表される係り受け関係の種類を示す。置換前依存構造木のノード種類は、当該置換前依存構造木における複数のノードの見出し語、品詞または付属語を示す。
置換後依存構造木のパターンは、当該置換後依存構造木における複数のノード間の係り受け関係を表す依存構造木のパターンを示す。置換後依存構造木のアーク種類は、当該置換後依存構造木によって表される係り受け関係の種類を示す。置換後依存構造木のノード種類は、当該置換後依存構造木における複数のノードの見出し語、品詞または付属語を示す。
第2の文生成方法における言い換え処理においては、代表文候補が置換前依存構造木(のパターン、アーク種類およびノード種類)の条件を満たす場合に、当該代表文候補が置換後依存構造木(のパターン、アーク種類およびノード種類)に置き換えられる。これにより、代表文候補が変換(置換)される。
図33に示す例では、置換ルールには、ルールID「1」に対応づけて置換前依存構造木のパターン「A→B→C」、置換前依存構造木のアーク種類「A→B:<隣接>、B→C:<ガ格>」および置換前依存構造木のノード種類「A(品詞):名詞、B(品詞):名詞、C(見出し語):生じる」から構成される置換前依存構造木および置換後依存構造木のパターン「A→B」、置換語依存構造木のアーク種類「A→B:<ガ格>」および置換語依存構造木のノード種類「A(付属語):が、B(品詞):動詞」から構成される置換後依存構造木が含まれる。なお、図33に示す置換ルールにおいて、A、BおよびCは、ノードを表す。
ここで、図34を参照して、第2の文生成方法によって生成される代表文候補文について具体的に説明する。ここでは、図33に示す置換ルールを用いて、図31に示す代表文候補ID「20」によって識別される代表文候補「燃料漏れが生じ」および代表文候補ID「127」によって識別される代表文候補「燃料漏れが生じた」から代表文候補文が生成される場合について説明する。
なお、上記したように言い換え処理は、代表文候補におけるルートノードの見出し語が終止形(現在形の終止形)に変換された後に行われる。このため、代表文候補ID「20」によって識別される代表文候補「燃料漏れが生じ」および代表文候補ID「127」によって識別される代表文候補「燃料漏れが生じた」に対して言い換え処理が実行される場合には、当該代表文候補におけるルートノードである動詞ノードの見出し語が終止形に変換された代表文候補「燃料漏れが生じる」に対して言い換え処理が実行される。つまり、代表文候補ID「20」および代表文候補ID「127」によって識別される代表文候補に対して言い換え処理が実行された場合には、同様の言い換え処理結果が得られる。
以下、代表文候補ID「20」および代表文候補ID「127」によって識別される代表文候補におけるルートノードである動詞ノードの見出し語が終止形に変換された代表文候補「燃料漏れが生じる」を単に代表文候補「燃料漏れが生じる」とする。
この場合、代表文候補「燃料漏れが生じる(依存構造木形式)」は、置換ルールID「1」に対応づけて置換ルールに含まれる置換前依存構造木のパターンを満たす。具体的には、代表文候補「燃料漏れが生じる」においては、見出し語が「燃料」であるノード(「燃料」ノード)が置換前依存構造木のパターンにおけるAに該当し、見出し語が「漏れ」であるノード(「漏れ」ノード)が当該置換前依存構造木のパターンにおけるBに該当し、見出し語が「生じる」であるノード(「生じる」ノード)が置換前依存構造木のパターンにおけるCに該当する。
また、代表文候補「燃料漏れが生じる」において、置換前依存構造木のパターンにおけるAに該当する「燃料」ノードおよびBに該当する「漏れ」ノード間のアークの種類は隣接であり、置換前依存構造木のパターンにおけるBに該当する「漏れ」ノードおよびCに該当する「生じる」ノード間のアークの種類はガ格であるため、当該代表文候補「燃料漏れが生じる」は置換前依存構造木のアーク種類を満たす。
更に、代表文候補「燃料漏れが生じる」において、置換前依存構造木のパターンにおけるAに該当する「燃料」ノードの品詞は名詞であり、Bに該当する「漏れ」ノードの品詞は名詞であり、Cに該当する「生じる」ノードの見出し語は「生じる」であり、置換前依存構造木のノード種類を満たす。
したがって、代表文候補「燃料漏れが生じる」は、置換ルールに含まれる置換前依存構造木の条件を満たす。
このように代表文候補「燃料漏れが生じる」が置換前依存構造木の条件を満たす場合、当該代表文候補「燃料漏れが生じる」は、置換後依存構造木(のパターン、アーク種類およびノード種類)に置換される。つまり、置換前依存構造木(代表文候補)のパターン「A→B→C」が置換後依存構造木のパターン「A→B」に置換され、置換前依存構造木のアーク種類「A→B:<隣接>、B→C:<ガ格>」が置換後依存構造木のアーク種類「A→B:<ガ格>」に置換され、また、置換前依存構造木のノード種類「A(品詞):名詞、B(品詞):名詞、C(見出し語):生じる」が置換後依存構造木のノード種類「A(付属語):が、B(品詞):動詞」に置換される。これにより、代表文候補「燃料漏れが生じる(依存構造木形式)」は、代表文候補「燃料が漏れ(依存構造木形式)」に置換される。
上記したように置換された代表文候補「燃料が漏れ」から代表文候補文(平文)が生成される。この場合、上記した第1の文生成方法が用いられる。つまり、置換された代表文候補「燃料が漏れ(依存構造木形式)」のルートノード(動詞ノード)の見出し語が終止形に変換されることによって、代表文候補「燃料が漏れ(依存構造木形式)」から代表文候補文「燃料が漏れる(平文形式)」が生成される。
つまり、図31に示す代表文候補ID「20」によって識別される代表文候補「燃料漏れが生じ」および代表文候補ID「127」によって識別される代表文候補「燃料漏れが生じた」から第2の文生成方法によって代表文候補文「燃料が漏れる」が生成される。
第3の文生成方法は、変換情報格納部23に格納されている同義語辞書を用いて代表文候補から代表文候補文を生成する方法である。
ここで、図35は、同義語辞書のデータ構造の一例を示す。図35に示すように、同義語辞書には、代表語および同義語が対応づけて格納されている。代表語は、同様の意味を有する語のうち代表となる語を示す。同義語は、代表語と同様の意味を有する語を示す。
図35に示す例では、同義語辞書には、代表語「生じる」および同義語「発生する、起こる、出現する、…」が対応づけて格納されている。これによれば、代表語「生じる」と同様の意味を有する同義語が「発生する」、「起こる」および「出現する」等であることが示される。
第3の文生成方法によれば、代表文候補に含まれるノードの見出し語が同義語として同義語辞書に格納されている場合には、当該見出し語が代表語に変換(統一)される。なお、代表文候補に含まれるノードの見出し語が代表語である場合には、当該見出し語は変換されない。また、第3の文生成方法においては、同義語辞書を用いてノード(自立語)の見出し語が変更された代表文候補(つまり、依存構造木形式)から代表文候補文(つまり、平文形式)を生成する場合には第1の文生成方法が用いられる。
ここで、図36を参照して、第3の文生成方法によって生成される代表文候補文について具体的に説明する。ここでは、図35に示す同義語辞書が変換情報格納部23に格納されているものとする。
まず、第3の文生成方法によって例えば図31に示す代表文候補ID「24」によって識別される代表文候補「亀裂が生じる(依存構造木形式)」から代表文候補文が生成される場合について説明する。
この場合、図36に示すように、代表文候補に含まれる「生じる」ノードの見出し語「生じる」は、図35に示す同義語辞書に代表語として格納されている。したがって、代表文候補に含まれる「生じる」ノードの見出し語「生じる」は変換されない。この場合、代表文候補「亀裂が生じる(依存構造木形式)」からは、第1の文生成方法によって代表文候補文「亀裂が生じる(平文形式)」が生成される。
次に、第3の文生成方法によって例えば図31に示す代表文候補ID「129」によって識別される代表文候補「亀裂が発生する(依存構造木形式)」から代表文候補文が生成される場合について説明する。
この場合、図36に示すように、代表文候補に含まれる「発生する」ノードの見出し語「発生する」は、図35に示す同義語辞書に同義語として格納されている。したがって、代表文候補に含まれる「発生する」ノードの見出し語「発生する」は、同義語「発生する」に対応づけて同義語辞書に格納されている代表語「生じる」に変換される。つまり、代表文候補に含まれる「発生する」ノードは、「生じる」ノードとされる。この場合、同義語辞書を用いてノードの見出し語が変換された代表文候補「亀裂が生じる(依存構造木形式)」からは、第1の文生成方法によって代表文候補文「亀裂が生じる(平文形式)」が生成される。
上記したように文生成集約部34は、第1〜第3の文生成方法を用いて、代表文候補から代表文候補文を生成する。
なお、ここでは第1〜第3の文生成方法が用いられるものとして説明したが、当該第1〜第3の文生成方法以外の方法が用いられても構わない。
また、第1〜第3の文生成方法の全てを用いるのではなく、当該第1〜第3の文生成方法のうち例えばユーザによって選択された方法のみが用いられても構わない。
再び図3に戻ると、文生成集約部34は、ステップS4において生成された代表文候補文を集約することによって、集約代表文候補文を生成する(ステップS5)。文生成集約部34は、生成された代表文候補文のうち、同一の代表文候補文を1つの集約代表文候補文に集約する。なお、文生成集約部34によって生成された集約代表文候補文には、当該集約代表文候補文を識別するための集約代表文候補文IDおよび当該集約代表文候補文に集約された代表文候補文に付与された文書IDが付与される。
ここで、図37は、文生成集約部34によって生成された集約代表文候補文の一例を示す。図37に示すように、文生成集約部34によって生成された集約代表文候補文には、集約代表文候補文IDおよび文書IDが付与されている。
図37に示す例では、集約代表文候補文「燃料が漏れる」には、集約代表文候補文ID「1」および文書ID「1,5,8,195,196,197,…」が付与されている。
なお、集約代表文候補文ID「1」は、文生成集約部34によって生成された集約代表文候補文「燃料が漏れる」に対して代表文抽出装置30において自動的に付与される。また、文書ID「1,5,8,195,196,197,…」は、集約代表文候補文「燃料が漏れる」に集約された代表文候補文の生成に用いられた代表文候補の各々に対して付与された文書IDの集合である。換言すれば、集約代表文候補文「燃料が漏れる」に付与されている文書IDの数は、当該集約代表文候補文「燃料が漏れる」に集約された代表文候補文の数と同一である。
ここでは、集約代表文候補文「燃料が漏れる」について説明したが、他の集約代表文候補文についても同様であるため、その詳しい説明を省略する。
再び図3に戻ると、代表文決定部35は、文生成集約部34によって生成された集約代表文候補文の中から代表文を決定(選択)する(ステップS6)。このとき、代表文決定部35は、文生成集約部34によって生成された集約代表文候補文に付与された文書IDの数(つまり、当該集約代表文候補文に集約された代表文候補文の数)に基づいて代表文を決定する。
この場合、代表文決定部35は、例えば集約代表文候補文に付与されている文書IDの数(文書頻度)が上位n位までの集約代表文が代表文として決定される。代表文として決定される集約代表文候補文の数(つまり、nの値)は、適宜、変更可能である。
なお、集約代表文候補文の中に文書頻度(つまり、文書IDの数)が同一の集約代表文候補文が複数存在する場合には、当該集約代表文候補文に含まれる文字列の長い方が優先されるものとする。
ここで、図38は、代表文決定部35によって決定された代表文の一例を示す。図38に示すように、代表文決定部35によって決定された代表文には、代表文IDおよび文書IDが付与されている。代表文IDは、代表文決定部35によって決定された代表文を識別するための識別子である。また、代表文に付与される文書IDは、代表文として決定された集約代表文候補文に付与された文書IDと同一の文書IDである。
図38に示す例では、文書頻度の高い(つまり、文書IDの数が多い)順に10個の代表文が示されている。
ここでは、単に集約代表文候補文に付与された文書IDの数(文書頻度)に基づいて代表文が決定されるものとして説明したが、代表文決定部35は、入力部31によって入力された文書群が属するクラスタ(以下、対象クラスタと表記)の文書群カバー率を用いて代表文を決定しても構わない。文書群カバー率は、対象クラスタに属する文書群(複数の文書)に対する集約代表文候補文の網羅性を表す。
ここで、例えば内部パラメータとして予め定められている代表文として決定される集約代表文候補文の数がMであるものとすると、文書群カバー率は、当該Mを用いて、次式によって定義される。
この式(1)におけるdj(j=1,2,…,M)は、代表文として決定されるM個の集約代表文候補文のうちの集約代表文候補文jに付与されている文書IDの集合を示す。つまり、式(1)における|d1∪d2…∪dj…∪dM|は、集約代表文候補文1〜Mの各々に付与されている文書IDの集合の和集合における当該文書IDの数を示す。
また、式(1)における|dall|は、対象クラスタに属する文書群に含まれる文書数を示す。
つまり、文書群カバー率は、「代表文として決定されるM個の集約代表文候補文に付与されている文書IDの和集合における当該文書IDの数/対象クラスタに属する文書群に含まれる文書数」によって定義される。
代表文決定部35は、上記した式(1)を用いて、文生成集約部34によって生成された集約代表文候補文のうちのM個の集約代表文候補文の集合(組)毎に文書群カバー率を算出する。この場合、代表文決定部35は、算出された文書群カバー率が最も高いM個の集約代表文候補文の集合(組)を代表文として決定する。
なお、代表文決定部35によって算出された文書群カバー率が最も高い集約代表文候補文の集合が複数存在する場合には、例えば当該複数の集合のうち、文書頻度が最も高い(付与されている文書IDの数が最も多い)集約代表文候補文を含む集合(つまり、M個の集約代表文候補文)が代表文として決定される。
再び図3に戻ると、出力部36は、ステップS6において決定された代表文(例えば、M個の集約代表文候補文)を表示(出力)する(ステップS7)。
ここで、図39は、代表文が表示された場合の表示画面の一例(出力部36による出力例)を示す。ここでは、上述した図38に示す代表文が表示された場合について説明する。
図39に示すように、表示画面200には、対象クラスタに属する文書群(入力部31によって入力された文書群)の内容を適切に表す代表文として「燃料が漏れる」、「エンジンが停止する」、「不良が生じる」、「火災に至る」、「亀裂が生じる」、「タンクの強度不足により燃料タンクの底板形状の成形不良が接着部から生じる」、「不足により不良が接着部から生じる」、「燃料タンクの形状の不良が生じる」、「タンクから燃料漏れが生じる」および「タンクの不足により生じる」が表示されている。
なお、表示画面200には、文書頻度が高い(つまり、代表文に付与された文書IDの数が多い)順に代表文が表示される。
図39に示すような表示画面200を参照することにより、ユーザは、対象クラスタに属する文書群の内容を容易に把握することができる。
上記したように本実施形態においては、対象クラスタに属する複数の文書に含まれる文を解析することによって、当該文に含まれる複数の自立語および当該自立語間の係り受け関係が表された構造木(依存構造木)が生成され、当該依存構造木の部分構造木である代表文候補が当該依存構造木から抽出される。本実施形態においては、依存構造木から抽出された代表文候補によって表される複数の自立語および当該自立語間の係り受け関係に基づいて当該代表文候補から平文(代表文候補文)が生成され、当該代表文候補文のうち同一の代表文候補文を集約することによって集約代表文候補文が生成される。また、本実施形態においては、集約代表文候補文に集約された代表文候補文の数(つまり、当該集約代表文候補文の文書頻度)に基づいて、当該集約代表文候補文の中から代表文が決定される。
つまり、本実施形態においては、依存構造木形式である代表文候補から平文形式である代表文候補文を生成した後に、当該代表文候補文を集約することによって集約代表文候補文が生成され、当該集約代表文候補文のスコア(文書頻度)に基づいて代表文が決定される。このため、本実施形態においては、例えば依存構造木形式である代表文候補を集約し、また、スコアを付与することによって代表文を決定するような場合と比較して、必要となる処理時間およびデータ容量を削減することが可能となる。
なお、本実施形態においては、全ての代表文候補(依存構造木形式)について代表文候補文(平文形式)を生成した後に同一の代表文候補文が1つの集約代表文候補文に集約されるものとして説明したが、例えば当該代表文候補から既に生成された代表文候補文を集約代表文候補とし、代表文候補から生成された代表文候補文を順次、当該代表文候補文と同一の集約代表文候補文に集約(統合)していく構成としても構わない。
また、本実施形態においては、抽出ルール格納部22に格納されている抽出ルールを用いて依存構造木から代表文候補が抽出されるものとして説明したが、例えば当該依存構造木から代表文候補を抽出することなく、当該依存構造木をそのまま代表文候補とする構成であっても構わない。
また、本実施形態においては、上述した図3に示すステップS5において集約代表文候補文が生成され、ステップS6において当該集約代表文候補文の中から代表文が決定されるものとして説明したが、当該ステップS5およびステップS6の処理の間で当該集約代表文候補文の中から代表文として適切でない文(以下、不要集約代表文候補文と表記)を抽出し、当該不要集約代表文候補文を除外する処理(以下、不要集約代表文候補文除外処理と表記)が実行されてもよい。
この不要集約代表文候補文除外処理においては、例えば入力された文書群に含まれる文書IDの数に対する集約代表文候補文に紐づいている文書IDの数の割合が予め定められている範囲に該当する集約代表文候補文が不要集約代表文候補文として抽出される。
具体的には、「集約代表文候補文に紐づいている文書IDの数/入力された文書群に含まれる文書IDの数」の値(以下、不要判定値と表記)が予め定められている値であるN以下またはM以上の集約代表文候補文が不要集約代表文候補文として抽出される。集約代表文候補文に紐づいている文書IDとは、上述した図37において説明したように集約代表文候補文に付与されている文書IDである。また、入力された文書群に含まれる文書IDとは、上述した図3に示すステップS1において入力された文書群に含まれる文書の各々に付与されている文書ID(当該文書を識別するための文書ID)である。なお、N<Mである。
つまり、不要集約代表文候補文除外処理においては、図3に示すステップS5において生成された集約代表文候補文の各々について不要判定値が算出され、当該不要判定値が予め定められている範囲(例えば、N以下またはM以上)に該当するか否かの判定が行われることによって、当該集約代表文候補文の中から不要集約代表文候補文が抽出される。
例えば不要集約代表文候補文であるか否かの判定の対象となる集約代表文候補文(以下、対象集約代表文候補文と表記)に紐づいている文書IDの数が40であって、N=0.3およびM=0.7である場合を想定する。
この場合において、入力された文書群に含まれる文書IDの数が100である場合には、対象集約代表文候補文に対する不要判定値は、0.4(40/100)であり、N以下でなくM以上でもないため、当該対象集約代表文候補文は不要集約代表文候補文として抽出されない。
一方、入力された文書群に含まれる文書IDの数が1000である場合には、対象集約代表文候補文に対する不要判定値は、0.04(40/1000)であり、N以下であるため、当該対象集約代表文候補文は不要集約代表文候補文として抽出される。
更に、入力された文書群に含まれる文書IDの数が50である場合には、対象集約代表文候補文に対する不要判定値は、0.8(40/50)であり、M以上であるため、当該対象集約代表文候補文は不要集約代表文候補文として抽出される。
ここでは、N=0.3およびM=0.7であるものとして説明したが、このNおよびMの値については、ユーザが適宜設定することが可能である。
ここで、図40は、集約代表文候補文の中から抽出される不要集約代表文候補文の一例を示す。なお、図40は、上述した図37に示す集約代表文候補文の中から抽出される不要集約代表文候補文を示す。
図40に示す例では、集約代表文候補文ID「1」が付与されている集約代表文候補文「燃料が漏れる」に対する不要判定値は、M+0.2であるため、M以上である。したがって、集約代表文候補文「燃料が漏れる」は、不要集約代表文候補文として抽出される。
また、集約代表文候補文ID「2」が付与されている集約代表文候補文「タンクの強度不足により燃料タンクの底板形状の形成不良が接着部から生じる」に対する不要判定値は、N−0.2であるため、N以下である。したがって、集約代表文候補文「タンクの強度不足により燃料タンクの底板形状の形成不良が接着部から生じる」は、不要集約代表文候補文として抽出される。
更に、集約代表文候補文ID「9」が付与されている集約代表文候補文「火災に至る」に対する不要判定値は、M+0.15であるため、M以上である。したがって、集約代表文候補文「火災に至る」は、不要集約代表文候補文として抽出される。
図41は、不要集約代表文候補文が除外された後の集約代表文候補文の一例を示す。ここでは、上述した図37に示す集約代表文候補文から図40に示す不要集約代表文候補文(つまり、当該集約代表文候補文から抽出された不要集約代表文候補文)が除外された場合の集約代表文候補文を示す。
つまり、図41に示す集約代表文候補文においては、図37に示す集約代表文候補文の中から図40に示す集約代表文候補文ID「1」、「2」および「9」が付与されている集約代表文候補文が除外されている。
上記したように不要集約代表文候補文除外処理が実行された場合には、当該不要集約代表文候補文が除外された後の集約代表文候補文(図41に示す集約代表文候補文)に対して図3に示すステップS6以降の処理が実行される。なお、ステップS6以降の処理については上述した通りであるため、その詳しい説明は省略する。
このように、本実施形態において不要集約代表文候補文除外処理が実行されることで、代表文として適切でない不要代表文候補文が代表文として決定されることを回避することができ、文書群の内容をより適切に表す代表文を抽出することができる。更に、不要集約代表文候補文が除外されることで図3に示すステップS6の処理の対象となる集約代表文候補文の数を減らすことができるため、当該処理の高速化を図ることが可能となる。
[第2の実施形態]
次に、本発明の第2の実施形態について説明する。なお、本実施形態に係る代表文抽出装置の構成は、前述した第1の実施形態と同様であるため、適宜、図2を用いて説明する。
本実施形態においては、代表文を抽出する対象となる対象クラスタ(第1のクラスタ)および当該対象クラスタとは異なるクラスタ(第2のクラスタ)の各々に属する複数の文書(文書群)を用いて、当該対象クラスタと当該対象クラスタとは異なるクラスタとの差分を考慮して当該対象クラスタの内容を適切に表す代表文を抽出する点が、前述した第1の実施形態とは異なる。
ここで、本実施形態に係る文書処理装置30に含まれる各部について説明するが、前述した第1の実施形態に係る文書処理装置30と同様の部分についてはその詳しい説明を省略する。
入力部31は、ユーザの操作に応じて、当該ユーザによって指定された例えば2つのクラスタに属する文書群(に含まれる複数の文書)を入力する。このとき、ユーザは、2つのクラスタのうちの一方を対象クラスタとして指定することができる。なお、入力部31によって入力される文書群に含まれる文書の各々には、当該文書を識別するための文書IDが付与されている。また、入力部31は、ユーザによって指定された対象クラスタおよび当該対象クラスタとは異なるクラスタの各々に属する文書(群)を示すクラスタ情報を入力する。
代表文決定部35は、入力部31によって入力されたクラスタ情報に基づいて、文生成集約部34によって生成された集約代表文候補文に付与されている文書IDを対象クラスタ内文書IDおよび比較クラスタ内文書IDに分類する(分ける)。これにより、文生成集約部34によって生成された集約代表文候補文には、対象クラスタ内文書IDおよび比較クラスタ内文書IDが付与される。
対象クラスタ内文書IDは、集約代表文候補文に付与されている文書IDのうち対象クラスタに属する文書を識別するための文書IDである。一方、比較クラスタ内文書IDは、集約代表文候補文に付与されている文書IDのうち対象クラスタに属さない文書であって比較クラスタに属する文書を識別するための文書ID、つまり、当該集約代表文候補文に付与されている文書IDのうち対象クラスタ内文書ID以外の文書IDである。
代表文決定部35は、集約代表文候補文に付与された対象クラスタ内文書IDの数および比較クラスタ内文書IDの数に基づいて、当該集約代表文候補文の対象クラスタにおける代表度を算出する。なお、代表度は、文生成集約部34によって生成された集約代表文候補文毎に算出される。代表文決定部35は、集約代表文候補文毎に算出された代表度に基づいて、代表文を決定する。
次に、図42のフローチャートを参照して、本実施形態に係る代表文抽出装置30の処理手順について説明する。
まず、入力部31は、ユーザの操作に応じて、クラスタ情報、対象クラスタIDおよび文書群を入力する(ステップS101)。入力部31によって入力されたクラスタ情報は、ユーザによって指定された例えば2つのクラスタ(対象クラスタおよび当該対象クラスタとは異なるクラスタ)の各々に属する文書(群)を示す。入力部31によって入力された対象クラスタIDは、ユーザによって指定された2つのクラスタのうち、対象クラスタ(代表文を抽出する対象となるクラスタ)を識別するためのクラスタIDである。また、入力部31によって入力された文書群は、ユーザによって指定された2つのクラスタ(対象クラスタおよび当該対象クラスタとは異なるクラスタ)に属する文書の集合(当該対象クラスタに属する文書および当該対象クラスタとは異なるクラスタに属する文書の集合)である。なお、この文書群に含まれる文書の各々には、当該文書を識別するための文書IDが付与されている。
ここで、図43は、入力部31によって入力されたクラスタ情報のデータ構造の一例を示す。図43に示すように、クラスタ情報には、クラスタIDおよび文書IDが対応づけて含まれる。クラスタ情報によれば、クラスタIDによって識別されるクラスタに属する文書が当該クラスタIDに対応づけられている文書IDによって識別される文書であることが示される。
図43に示す例では、クラスタ情報には、クラスタID「1」および文書ID「1,5,8,…,191,192,193,194,195,196,197,…」が対応づけて含まれる。これによれば、クラスタID「1」によって識別されるクラスタには、文書ID「1,5,8,…,191,192,193,194,195,196,197,…」によって識別される文書(群)が属することが示される。
ここでは、クラスタID「1」について説明したが、クラスタID「2」についても同様であるため、その詳しい説明を省略する。
なお、以下の説明では、上記した対象クラスタIDとしてクラスタID「1」が入力部31によって入力されたものとする。つまり、クラスタID「1」によって識別されるクラスタが対象クラスタであり、クラスタID「2」によって識別されるクラスタが当該対象クラスタとは異なるクラスタであるものとして説明する。
また、図44は、入力部31によって入力された文書群の一例を示す。なお、文書群に含まれる文書の各々は、平文の形式で入力部31によって入力される。図44に示すように、入力部31によって入力された文書群に含まれる文書の各々には、当該文書を識別するための文書IDが付与されている。
図44に示す例では、入力部31によって入力された文書群には、例えば文書「タンク付近で燃料が漏れた。…。」が含まれる。なお、この文書「タンク付近で燃料が漏れた。…。」には、当該文書を識別するための文書ID「10」が付与されている。
ここでは、入力部31によって入力された文書群に含まれる文書「タンク付近で燃料が漏れた。…。」について説明したが、他の文書についても同様であるため、その詳しい説明を省略する。
再び図42に戻ると、前述した図3に示すステップS2〜ステップS5の処理に相当するステップS102〜ステップS105の処理が実行される。なお、ステップS102〜ステップS105の処理は、入力部31によって入力された文書群に含まれる文書を構成する文の全てについて実行される。
ここで、図45は、ステップS5において文生成集約部34によって生成された集約代表文候補文の一例を示す。図45に示すように、文生成集約部34によって生成された集約代表文候補文には、集約代表文候補文IDおよび文書IDが付与されている。なお、集約代表文候補文に付与される集約代表文候補文IDおよび文書IDについては、前述した第1の実施形態と同様であるため、その詳しい説明を省略する。
図45に示す例では、集約代表文候補文「燃料が漏れる」には、集約代表文候補文ID「1」および文書ID「1,5,8,10,195,196,197,…」が付与されている。
ここでは、集約代表文候補文「燃料が漏れる」について説明したが、他の集約代表文候補文についても同様であるため、その詳しい説明を省略する。
再び図42に戻ると、代表文決定部35は、集約代表文候補文毎に、当該集約代表文候補文に付与されている文書IDを対象クラスタ内文書IDおよび比較クラスタ内文書IDに分類する(ステップS106)。代表文決定部35は、入力部31によって入力されたクラスタ情報に基づいて、対象クラスタ内文書IDおよび比較クラスタ内文書IDに分類する処理を実行する。
ここで、対象クラスタ内文書IDには、集約代表文候補文に付与されている文書IDのうち、対象クラスタを識別するためのクラスタID(つまり、入力部31によって入力された対象クラスタID)に対応づけてクラスタ情報に含まれている文書IDが含まれる。つまり、対象クラスタ内文書IDとは、集約代表文候補文に付与されている文書IDのうち、対象クラスタに属する文書を識別するための文書IDである。
一方、比較クラスタ内文書IDには、集約代表文候補文に付与されている文書IDのうち、対象クラスタ内文書ID以外の文書IDが含まれる。つまり、比較クラスタ内文書IDとは、集約代表文候補文に付与されている文書IDのうち、対象クラスタに属さない文書であって当該対象クラスタとは異なるクラスタに属する文書を識別するための文書IDである。
これにより、代表文決定部35は、文生成集約部34によって生成された集約代表文候補文の各々に対して、対象クラスタ内文書IDおよび比較クラスタ内文書IDを付与する。以下の説明では、文生成集約部34によって生成された集約代表文候補文の各々に付与されている比較クラスタ内文書IDによって識別される文書の集合(つまり、対象クラスタに属さない文書であって当該対象クラスタとは異なるクラスタに属する文書の集合)が属するクラスタを、比較クラスタと称する。
ここで、図46は、対象クラスタ内文書IDおよび比較クラスタ内文書IDが付与された集約代表文候補文の一例を示す。
図46に示す例では、集約代表文候補文ID「1」によって識別される集約代表文候補文「燃料が漏れる」には、対象クラスタ内文書ID「1,5,8,195,196,197,…」および比較クラスタ内文書ID「10,…」が付与されている。これによれば、上記した図45に示す集約代表文候補文「燃料が漏れる」に付与されている文書ID「1,5,8,10,195,196,197,…」のうち、文書ID「1,5,8,195,196,197,…」が対象クラスタに属する文書を識別するための文書ID(つまり、対象クラスタ内文書ID)であることが示される。また、上記した図45に示す集約代表文候補文「燃料が漏れる」に付与されている文書ID「1,5,8,10,195,196,197,…」のうち、対象クラスタ内文書ID「1,5,8,195,196,197,…」以外の文書ID「10,…」が比較クラスタ内文書IDであることが示される。
ここでは、集約代表文候補文ID「1」によって識別される集約代表文候補文「燃料が漏れる」について説明したが、他の集約代表文候補文についても同様であるため、その詳しい説明を省略する。
再び図42に戻ると、代表文決定部35は、文生成集約部34によって生成された集約代表文候補文に付与されている代表クラスタ内文書IDの数および比較クラスタ内文書IDの数に基づいて対象クラスタにおける当該集約代表文候補文の代表度を算出する(ステップS107)。なお、代表度は、集約代表文候補文毎に算出される。
ここでは、代表文決定部35は、対象クラスタにおける集約代表文候補文の代表度として、例えば当該集約代表文候補文の相互情報量を算出するものとする。
具体的には、代表文決定部35は、集約代表文候補文に付与されている対象クラスタ内文書IDの数(対象クラスタにおける当該集約代表文候補文の文書頻度)および比較クラスタ内文書IDの数(比較クラスタにおける当該集約代表文候補文の文書頻度)を用いて、当該集約代表文候補文の重み付き相互情報量を算出する。
この集約代表文候補文の重み付き相互情報量は、次式により定義される。
この式(2)におけるP(w,t)は、対象クラスタtに属する文書および比較クラスタに属する文書の集合(つまり、対象クラスタtに属する文書集合および当該対象クラスタとは異なるクラスタに属する文書集合の和集合)において、文書が集約代表文候補文wに付与されている対象クラスタ内文書IDによって識別される文書(つまり、図45に示す集約代表文候補文wに付与されている文書IDによって識別される文書であって対象クラスタtに属する文書)である確率を示す。なお、P(w,t)の値は、「集約代表文候補文wに付与されている対象クラスタ内文書IDの数/対象クラスタtに属する文書および比較クラスタに属する文書の数」により推定されるものとする。なお、対象クラスタに属する文書および比較クラスタに属する文書の数は、対象クラスタを識別するためのクラスタID(対象クラスタ)に対応づけてクラスタ情報に含まれる文書IDの集合および当該対象クラスタとは異なるクラスタを識別するためのクラスタIDに対応づけてクラスタ情報に含まれる文書IDの集合の和集合における当該文書IDの数と同一である。
式(2)におけるP(w)は、対象クラスタに属する文書および比較クラスタに属する文書の集合において、文書が集約代表文候補文wに付与されている対象クラスタ内文書IDおよび比較クラスタ内文書ID(つまり、図45に示す集約代表文候補文wに付与されている文書ID)によって識別される文書である確率を示す。なお、P(w)の値は、「集約代表文候補文wに付与されている対象クラスタ内文書IDおよび比較クラスタ内文書IDの数/対象クラスタに属する文書および比較クラスタに属する文書の数」により推定されるものとする。
また、式(2)におけるP(t)は、対象クラスタtに属する文書および比較クラスタに属する文書の集合において、文書が対象クラスタtに属する文書である確率を示す。なお、P(t)の値は、「対象クラスタに属する文書の数/対象クラスタに属する文書および比較クラスタに属する文書の数」により推定されるものとする。なお、対象クラスタに属する文書の数は、当該対象クラスタを識別するためのクラスタID(対象クラスタID)に対応づけてクラスタ情報に含まれる文書IDの数である。
上記したように、代表文決定部35は、図46に示すように集約代表文候補文の各々に対して付与されている対象クラスタ内文書IDおよび比較クラスタ内文書IDを用いて、対象クラスタにおける当該集約代表文候補文の代表度(当該集約代表文候補文の重み付き相互情報量)を上記した式(2)により算出する。
ここで、図47は、文生成集約部34によって生成された集約代表文候補文毎に算出された代表度の一例を示す。
図47に示す例では、集約代表文候補文ID「1」によって識別される集約代表文候補文「燃料が漏れる」の代表度は、「−0.012」であることが示されている。
また、集約代表文候補文ID「2」によって識別される集約代表文候補文「タンクの強度不足により燃料タンクの底板形状の成形不良が接着部から生じる」の代表度は、「0.210」であることが示されている。
なお、ここでは集約代表文候補文ID「1」によって識別される「燃料が漏れる」および集約代表文候補文ID「2」によって識別される集約代表文候補文「タンクの強度不足により燃料タンクの底板形状の成形不良が接着部から生じる」について説明したが、他の集約代表文候補文についても同様であるため、その詳しい説明を省略する。
再び図42に戻ると、代表文決定部35は、集約代表文候補文毎に算出された代表度に基づいて、当該集約代表文候補文の中から代表文を決定(選択)する(ステップS108)。
ここで、上記したステップS107において算出された代表度が0未満である集約代表文候補文は、比較クラスタの特徴を表す度合いが大きいといえる。このため、代表文決定部35は、ステップS107において算出された代表度が0未満である集約代表文候補文を代表文の候補から除外し、当該代表度が0以上である集約代表文候補文のみを代表文の候補とする。つまり、上記した図47に示す例では、集約代表文候補文ID「1」によって識別される集約代表文候補文「燃料が漏れる」および集約代表文候補文ID「9」によって識別される集約代表文候補文「火災に至る」が代表文の候補から除外される。
代表文決定部35は、算出された代表度が0以上である集約代表文候補文のうち、当該代表度(重み付き相互情報量)が高い順に集約代表文候補文を代表文として決定する。具体的には、代表文決定部35は、例えば代表度が上位n位までの集約代表文候補文を代表文として決定する。なお、代表文として決定される集約代表文候補文の数(つまり、nの値)は、適宜、変更可能である。
なお、集約代表文候補文の中に代表度が同一の集約代表文候補文が複数存在する場合には、文書頻度(つまり、当該集約代表文候補文に付与された対象クラスタ内文書IDの数)が高い(多い)方、または、当該集約代表文候補文に含まれる文字列の長い方が優先されるものとする。
ここで、図48は、代表文決定部35によって決定された代表文の一例を示す。図48に示すように、代表文決定部35によって決定された代表文には、代表文IDおよび文書IDが付与されている。代表文IDは、代表文決定部35によって決定された代表文を識別するための識別子である。また、文書IDは、代表文として決定された集約代表文候補文に付与された対象クラスタ内文書IDと同一の文書IDである。図48に示す例では、代表度が高い順に10個の代表文が示されている。
再び図42に戻ると、前述した図3に示すステップS7の処理に相当するステップS109の処理が実行される。
上記したように本実施形態においては、複数のクラスタ(対象クラスタおよび当該対象クラスタとは異なるクラスタ)の各々に属する文書群を用いて、前述した第1の実施形態と同様に集約代表文候補文が生成される。本実施形態においては、集約代表文候補文に付与された対象クラスタ内文書ID及び比較クラスタ内文書IDに基づいて集約代表文候補文毎に代表度(対象クラスタにおける重み付き相互情報量)が算出され、当該代表度に応じて代表文が決定される。
これにより、本実施形態においては、前述した第1の実施形態のように1つのクラスタ(つまり、対象クラスタ)に属する文書群のみを用いて代表文を抽出する場合と比較して、当該対象クラスタの特徴をより鮮明(適切)に表す代表文を抽出することが可能となる。
なお、本実施形態においては、対象クラスタにおける集約代表文候補文の代表度として重み付き相互情報量を算出するものとして説明したが、この代表度は、例えば文書頻度またはTスコア等の統計量を表すものであれば構わない。
また、本実施形態においては、上述した図42に示すステップS105において生成された集約代表文候補文の中から代表文として適切でない文(不要集約代表文候補文)を抽出し、当該不要集約代表文候補文を除外する処理(不要集約代表文候補文除外処理)が実行されても構わない。この不要集約代表文候補文除外処理は、例えば図42に示すステップS105およびステップS106の処理の間で実行される。
不要集約代表文候補文除外処理においては、図42に示すステップS105において生成された集約代表文候補文の各々について不要判定値が算出され、当該不要判定値が予め定められている範囲(例えば、N以下またはM以上)に該当するか否かの判定が行われることによって、当該集約代表文候補文の中から不要集約代表文候補文が抽出される。
なお、不要集約代表文候補文除外処理の詳細については、前述した第1の実施形態において説明した通りであるため、その詳しい説明を省略する。
ここで、図49は、集約代表文候補文の中から抽出される不要集約代表文候補文の一例を示す。なお、図49は、上述した図45に示す集約代表文候補文の中から抽出される不要集約代表文候補文を示す。
図49に示す例では、集約代表文候補文ID「1」が付与されている集約代表文候補文「燃料が漏れる」に対する不要判定値は、M+0.2であるため、M以上である。したがって、集約代表文候補文「燃料が漏れる」は、不要集約代表文候補文として抽出される。
また、集約代表文候補文ID「2」が付与されている集約代表文候補文「タンクの強度不足により燃料タンクの底板形状の形成不良が接着部から生じる」に対する不要判定値は、N−0.2であるため、N以下である。したがって、集約代表文候補文「タンクの強度不足により燃料タンクの底板形状の形成不良が接着部から生じる」は、不要集約代表文候補文として抽出される。
同様に、集約代表文候補文ID「9」が付与されている集約代表文候補文「火災に至る」に対する不要判定値は、M+0.15であるため、M以上である。したがって、集約代表文候補文「火災に至る」は、不要集約代表文候補文として抽出される。
更に、集約代表文候補文ID「18」が付与されている集約代表文候補文「タンク付近で漏れる」に対する不要判定値は、M+0.05であるため、M以上である。したがって、集約代表文候補文「タンク付近で漏れる」は、集約代表文候補文として抽出される。
図50は、不要集約代表文候補文が除外された後の集約代表文候補文の一例を示す。ここでは、上述した図45に示す集約代表文候補文から図49に示す不要集約代表文候補文(つまり、当該集約代表文候補文から抽出された不要集約代表文候補文)が除外された場合の集約代表文候補文を示す。
つまり、図50に示す集約代表文候補文においては、図45に示す集約代表文候補文の中から図49に示す集約代表文候補文ID「1」、「2」、「9」および「18」が付与されている集約代表文候補文が除外されている。
上記したように不要集約代表文候補文除外処理が実行された場合には、当該不要集約代表文候補文が除外された後の集約代表文候補文(図50に示す集約代表文候補文)に対して図42に示すステップS106以降の処理が実行される。なお、ステップS106以降の処理については上述したとおりであるため、その詳しい説明を省略する。
このように、本実施形態において不要集約代表文候補文除外処理が実行されることで、代表文として適切でない不要代表文候補文が代表文として決定されることを回避することができ、対象クラスタ(に属する文書群)の内容をより適切に表す代表文を抽出することができる。更に、不要集約代表文候補文が除外されることで集約代表文候補文の数を減らすことができるため、図42に示すステップS106以降の処理の高速化を計ることが可能となる。
[第3の実施形態]
次に、図51を参照して、本発明の第3の実施形態について説明する。図51は、本実施形態に係る代表文抽出装置の主として機能構成を示すブロック図である。なお、前述した図2と同様の部分には同一参照符号を付してその詳しい説明を省略する。ここでは、図2と異なる部分について主に述べる。
また、本実施形態に係る代表文抽出装置のハードウェア構成は前述した第1の実施形態と同様であるため、適宜、図1を用いて説明する。
本実施形態においては、前述した第1の実施形態において説明した処理によって文書群から抽出された代表文を用いて、当該文書群を分類する点が、前述した第1の実施形態とは異なる。
図51に示すように、本実施形態に係る代表文抽出装置300は、代表文分類部301を含む。本実施形態において、代表文分類部301は、図1に示すコンピュータ10が外部記憶装置20に格納されるプログラム21を実行することにより実現されるものとする。
代表文分類部301は、代表文決定部35によって決定された代表文を用いて、入力部31によって入力された文書群(に含まれる文書の各々)を分類する。代表文分類部301は、代表文決定部35によって代表文として決定された集約代表文候補文に集約された代表文候補文(第2の文)の生成に用いられた文書(つまり、当該代表文に付与された文書IDによって識別される文書)が属するサブクラスタを作成することによって、入力部31によって入力された文書群を分類する。
次に、図52のフローチャートを参照して、本実施形態に係る代表文抽出装置300の処理手順について説明する。
まず、前述した図3に示すステップS1〜ステップS6に示す処理に相当するステップS201〜ステップS206の処理が実行される。
なお、ステップS206においては、前述した図38に示す代表文が代表文決定部35によって決定されたものとする。つまり、ステップS206において決定された代表文には、当該代表文を識別するための代表文IDおよび当該代表文として決定された集約代表文候補文に付与された文書ID(と同一の文書ID)が付与されている。
次に、代表文分類部301は、ステップS206において代表文決定部35によって決定された代表文に基づいて、ステップS201において入力部31によって入力された文書群(ユーザによって指定されたクラスタに属する文書群)を分類する(ステップS207)。
この場合、代表文分類部301は、代表文決定部35によって決定された代表文を用いて、入力部31によって入力された文書群に含まれる文書の各々が分類されるサブクラスタ(ユーザによって指定されたクラスタのサブクラスタ)を作成する。
具体的には、代表文分類部301は、代表文決定部35によって決定された代表文に付与されている代表文IDをサブクラスタIDとし、当該代表文をサブクラスタ名とするサブクラスタを作成する。なお、サブクラスタは、代表文決定部35によって決定された代表文毎に作成される。つまり、代表文分類部301による文書群の分類結果には、代表文毎に作成されたサブクラスタが含まれる。
代表文分類部301は、代表文分類部301によって代表文毎に作成されたサブクラスタに、当該代表文に付与されている文書IDによって識別される文書を分類する。これにより、入力部31によって入力された文書群が分類される。なお、代表文分類部301による分類結果は、例えば外部記憶装置20に含まれる記憶部(図示せず)等に記憶される。
ここで、図53は、代表文分類部301による分類結果の一例を示す。なお、図53は、前述した図38に示す代表文のうち、例えば代表文ID「1」〜「5」によって識別される代表文を用いて分類された結果を示す。
図53に示すように、代表文分類部301による分類結果には、代表文ID「1」〜「5」によって識別される代表文の各々を用いて作成されたサブクラスタ311〜315が含まれる。
なお、サブクラスタ311は、図38に示す代表文「燃料が漏れる」を用いて作成されたサブクラスタである。サブクラスタ312は、図38に示す代表文「エンジンが停止する」を用いて作成されたサブクラスタである。サブクラスタ313は、図38に示す代表文「不良が生じる」を用いて作成されたサブクラスタである。サブクラスタ314は、図38に示す代表文「火災に至る」を用いて作成されたサブクラスタである。サブクラスタ315は、図38に示す代表文「亀裂が生じる」を用いて作成されたサブクラスタである。
図53に示すサブクラスタ311は、代表文「燃料が漏れる」に付与されている代表文ID「1」をサブクラスタIDとし、当該代表文「燃料が漏れる」をサブクラスタ名とすることによって作成される。なお、サブクラスタ311には、代表文「燃料が漏れる」に付与されている文書ID「1,5,8,195,196,197,…」によって識別される文書(群)が分類されている。
また、サブクラスタ312は、代表文「エンジンが停止する」に付与されている代表文ID「2」をサブクラスタとし、当該代表文「エンジンが停止する」をサブクラスタ名とすることによって作成される。なお、サブクラスタ312には、代表文「エンジンが停止する」に付与されている文書ID「191,192,…」によって識別される文書(群)が分類されている。
ここでは、サブクラスタ311およびサブクラスタ312について説明したが、他のサブクラスタについても同様であるため、その詳しい説明を省略する。
再び図52に戻ると、前述した図3に示すステップS7の処理に相当するステップS208の処理が実行される。このステップS208の処理においては、例えば図53に示す代表文分類部301による分類結果が出力されても構わない。一方、ステップS208においては代表文分類部301による分類結果は出力されない場合であっても、例えば記憶部に記憶された当該分類結果をユーザが閲覧できる構成であってもよい。
上記したように本実施形態においては、ユーザによって指定されたクラスタに属する文書群から抽出された代表文を用いて、当該代表文をサブクラスタ名としたサブクラスタに当該文書群を分類することができる。
つまり、本実施形態においては、ユーザによって指定されたクラスタに属する文書群が分類されるサブクラスタ名はサブクラスタ(に分類された文書)の内容を表す代表文であることから、例えばユーザは当該サブクラス名を確認することによって当該サブクラスタに属する文書の内容を容易に把握することが可能となる。したがって、本実施形態においては、ユーザは、容易に所望の内容の文書を探索することが可能となる。
なお、本実施形態においては、上述した図52に示すステップS205およびステップS206の処理の間で、当該ステップS205において生成された集約代表文候補文の中から代表文として適切でない文(不要集約代表文候補文)を抽出し、当該不要集約代表文候補文を除外する処理(不要集約代表文候補文除外処理)が実行されても構わない。
この不要集約代表文候補文除外処理の詳細については、前述した第1および第2の実施形態において説明した通りであるため、その詳しい説明を省略する。
また、本実施形態においては、ステップS207において代表文に基づいて文書群が分類され、当該文書群に含まれる文書の各々が分類されるサブクラスタ(当該代表文をサブクラスタ名とするサブクラスタ)が作成されるものとして説明したが、当該サブクラスタに分類された文書群(当該サブクラスタに属する文書群)に対して図52に示すステップS202〜ステップS207の処理に相当する処理(以下、再分類処理と表記)が更に実行されることによって、当該サブクラスタに分類された文書群が更に分類(代表文分類)されても構わない。
サブクラスタに分類された文書群に対して再分類処理が実行されると、サブクラスタのサブクラスタ(以下、サブサブクラスタと表記)が作成され、当該サブクラスタに分類された文書群が当該作成されたサブサブクラスタに分類される。つまり、サブクラスタに分類された文書群に対して再分類処理が実行されることによって、ユーザによって指定されたクラスタに属する文書群を階層的に分類することができる。
ここで、図54は、サブクラスタに分類された文書群に対して再分類処理が実行された結果(階層的な代表文分類結果)の一例を示す。なお、図54は、上述した図53に示すサブクラスタ名が「燃料が漏れる」であるサブクラスタ311に分類された文書群に対して再分類処理が実行された結果を示す。
ここでは、サブクラスタ311に分類された文書群に対する再分類処理において、当該文書群の内容を適切に表す代表文として「取付部から燃料が漏れる」、「振動により燃料が漏れる」および「タンクに亀裂が入る」が決定(抽出)されたものとする。なお、再分類処理において、代表文「取付部から燃料が漏れる」には代表文ID「1」が、代表文「振動により燃料が漏れる」には代表文ID「2」が、代表文「タンクに亀裂が入る」には代表文ID「3」が付与されたものとする。
図54に示すように、階層的な代表文分類結果には、サブサブクラスタ311a〜311cが含まれる。
サブサブクラスタ311aは、サブクラスタ311に分類された文書群に対する再分類処理において決定された例えば代表文「取付部から燃料が漏れる」に付与されている代表文ID「1」をサブサブクラスタIDとし、当該代表文「取付部から燃料が漏れる」をサブサブクラスタ名とすることによって作成される。なお、サブサブクラスタ311aには、再分類処理において代表文「取付部から燃料が漏れる」に付与された文書ID(ここでは、「1,195,…」)によって識別される文書(群)が分類されている。
サブサブクラスタ311bは、サブクラスタ311に分類された文書群に対する再分類処理において決定された例えば代表文「振動により燃料が漏れる」に付与されている代表文ID「2」をサブサブクラスタIDとし、当該代表文「振動により燃料が漏れる」をサブサブクラスタ名とすることによって作成される。なお、サブサブクラスタ311bには、再分類処理において代表文「振動により燃料が漏れる」に付与された文書ID(ここでは、「5,196,…」)によって識別される文書(群)が分類されている。
また、サブサブクラスタ311cは、サブクラスタ311に分類された文書群に対する再分類処理において決定された例えば代表文「タンクに亀裂が入る」に付与されている代表文ID「3」をサブサブクラスタIDとし、当該代表文「タンクに亀裂が入る」に付与された文書ID(ここでは、「197,…」)によって識別される文書(群)が分類されている。
なお、サブクラスタに分類された文書群に対して上記した再分類処理(ステップS202〜ステップS207の処理)が実行される場合、上記した不要集約代表文候補文除外処理が実行されることが好ましい。
ここで、サブクラスタに分類された文書群とは、当該サブクラスタのサブクラスタ名(代表文)に付与された文書IDによって識別される文書である。したがって、このようなサブクラスタに分類された文書群に対して不要集約代表文候補文除外処理を実行することなく再分類処理が実行された場合には、当該文書群の内容を適切に表す代表文として当該サブクラスタのサブクラスタ名と同一の代表文が決定(抽出)される。この場合には、サブクラスタ(サブクラスタ名)およびサブサブクラスタ(サブサブクラスタ名)が同一となり、更には、当該サブクラスタおよびサブサブクラスタに分類された文書も同一となり、階層的な分類を行うことを目的とするにもかかわらず冗長となる。
つまり、サブクラスタに分類された文書群に対して再分類処理が実行される場合には、上記した不要集約代表文候補文除外処理が実行されることによって、サブクラスタのサブクラスタ名と同一の代表文が決定(抽出)されることを回避できるため、冗長な情報を除外して階層的な分類を行うことが可能となる。
なお、本願発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、各実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。