以下、図面を参照して、本発明の各実施形態について説明する。
[第1の実施形態]
まず、図1および図2を参照して、本発明の第1の実施形態について説明する。図1は、本実施形態に係る代表文抽出装置のハードウェア構成を示すブロック図である。図1に示すように、コンピュータ10は、例えばハードディスクドライブ(HDD:Hard Disk Drive)のような外部記憶装置20と接続されている。この外部記憶装置20は、コンピュータ10によって実行されるプログラム21を格納する。コンピュータ10および外部記憶装置20は、代表文抽出装置30を構成する。
代表文抽出装置30は、文書集合に対するクラスタリング結果における各クラスタに属する文書群から、当該文書群の内容を適切に表す代表文を抽出する機能を有する。
図2は、図1に示す代表文抽出装置30の主として機能構成を示すブロック図である。図2に示すように、代表文抽出装置30は、クラスタID受付部31、特徴文抽出部32、構文解析部33、代表文候補抽出部34、代表文候補集約部35、代表度算出部36、代表文決定部37、代表文分類部38および出力部39を含む。本実施形態において、これらの各部31〜39は、図1に示すコンピュータ10が外部記憶装置20に格納されているプログラム21を実行することにより実現されるものとする。このプログラム21は、コンピュータ読み取り可能な記憶媒体に予め格納して頒布可能である。また、このプログラム21が、例えばネットワークを介してコンピュータ10にダウンロードされても構わない。
また、代表文抽出装置30は、クラスタリング結果格納部22、パラフレーズ辞書格納部23および同義語辞書格納部24を含む。本実施形態において、これらの各部22〜24は、例えば外部記憶装置20に格納される。
クラスタリング結果格納部22には、文書集合に対するクラスタリング結果が格納される。
文書集合がクラスタリングされた場合、当該文書集合中における内容等において共通点または類似性のある文書群(複数の文書)が属するクラスタが作成される。また、クラスタリングによって作成されたクラスタには、当該クラスタに属する文書群の特徴を表す特徴語が付与される。
つまり、クラスタリング結果格納部22には、クラスタリング結果における各クラスタに属する複数の文書(文書群)および当該クラスタに付与された特徴語が格納される。具体的には、クラスタリング結果格納部22には、各クラスタを識別するためのクラスタIDに対応づけて当該クラスタに属する複数の文書および当該クラスタに付与された特徴語が格納される。
なお、クラスタリング結果格納部22に格納されている複数の文書の各々は、テキストデータであり、複数の文から構成される。文書を構成する複数の文の各々は、自立語を含む文節から構成される。
また、クラスタに付与された特徴語は、当該クラスタに属する複数の文書の特徴を表す少なくとも1つの単語である。このクラスタに付与された特徴語は、例えば当該クラスタに属する複数の文書に含まれる自立語の出現頻度等に基づいて決定される。
パラフレーズ辞書格納部23には、複数の自立語間の係り受け構造を示す対象パターンおよび当該対象パターンの言い換えとなる自立語間の係り受け構造を示すと共に当該対象パターンより自立語の数が少ない置換パターンを含む置換ルールが予め格納される。同義語辞書格納部24は、文書に含まれる自立語の同義語(を示す情報)が格納される。
クラスタID受付部31は、ユーザによって指定されたクラスタ(を識別するためのクラスタID)を受け付ける。代表文抽出装置30においては、クラスタID受付部31によって受け付けられたクラスタ(に属する文書群)の代表文が抽出される。
特徴文抽出部32は、クラスタリング結果格納部22を参照して、クラスタID受付部31によって受け付けられたクラスタ(ユーザによって指定されたクラスタ)に付与された特徴語を含む文(第1の文)を、当該クラスタに属する複数の文書から抽出する。以下、特徴文抽出部32によって抽出された文を特徴文と称する。
構文解析部33は、特徴文抽出部32によって抽出された特徴文を構文解析する。なお、構文解析部33による構文解析結果には、特徴文抽出部32によって抽出された特徴文に含まれる自立語間の関係が含まれる。
代表文候補抽出部34は、構文解析部33による構文解析結果および予め定められた複数の自立語間の関係を表す抽出ルールに基づいて、当該抽出ルールによって表される複数の自立語間の関係に合致する文(第2の文)を、特徴文抽出部32によって抽出された特徴文から抽出する。代表文候補抽出部34によって抽出される文には、特徴語が含まれる。なお、抽出ルールの具体例については後述する。以下、代表文候補抽出部34によって抽出された文を代表文候補と称する。
代表文候補集約部35は、代表文候補抽出部34によって抽出された代表文候補に含まれる自立語に基づいて、当該代表文候補を集約する。つまり、代表文候補集約部35は、複数の代表文候補を1つ(の代表文候補)に集約する。代表文候補集約部35は、パラフレーズ辞書格納部23および同義語辞書格納部24を参照して集約処理を実行する。
代表度算出部36は、代表文候補集約部35によって集約された結果の代表文候補のクラスタID受付部31によって受け付けられたクラスタに対する代表度を算出する。代表度算出部36は、クラスタID受付部31によって受け付けられたクラスタに属する複数の文書における代表文候補を含む文書の数に基づいて、当該代表文候補の代表度を算出する。代表度算出部36は、代表度の指標として、例えば文書カバー率または代表文候補を含む文書の数に基づくスコア式を用いる。なお、文書カバー率とスコア式の詳細については後述する。
代表文決定部37は、代表度算出部36によって算出された代表度に基づいて、代表文候補集約部35によって集約された代表文候補を代表文として決定する。なお、代表文決定部37によって決定される代表文は複数であっても構わない。
代表文分類部38は、クラスタID受付部31によって受け付けられたクラスタに属する複数の文書を、代表文決定部37によって決定された代表文に基づいて分類する。代表文分類部38は、クラスタID受付部31によって受け付けられたクラスタに属する複数の文書のうち代表文決定部37によって決定された代表文を含む文書が属するサブクラスタを作成することによって、当該複数の文書を分類する。代表文分類部38によって作成されたサブクラスタには、代表文分類部38によって決定された代表文が付与される。
これにより、代表文分類部38は、クラスタID受付部31によって受け付けられたクラスタに属する複数の文書を、代表文決定部37によって決定された代表文毎の部分集合で細分類する。代表文分類部38による分類結果は、出力部39を介して出力される。
図3を参照して、図2に示すクラスタリング結果格納部22に格納されるクラスタリング結果のデータ構造について説明する。図3は、文書集合100に対するクラスタリング結果の一例を示す。
図3に示すように、クラスタリング結果格納部22に格納されているクラスタリング結果221には、クラスタIDに対応づけて特徴語ID、特徴語、クラスタ内文書数および文書IDが含まれる。
クラスタIDは、クラスタリングによって作成されたクラスタを識別するための識別子である。
特徴語IDは、クラスタIDによって識別されるクラスタに付与された特徴語を識別するための識別子である。特徴語は、特徴語IDによって識別される特徴語(つまり、クラスタIDによって識別されるクラスタに付与された特徴語)を示す。特徴語は、クラスタIDによって識別されるクラスタに属する複数の文書の特徴を表す少なくとも1つの単語である。
クラスタ内文書数は、クラスタIDによって識別されるクラスタに属する文書(群)の数である。文書IDは、クラスタIDによって識別されるクラスタに属する文書を識別するための識別子である。
図3に示す例では、クラスタリング結果221には、クラスタID「1」に対応づけて文書数「200」および文書ID「1,2,3,4,5,6,7,8,…,300」が含まれる。また、クラスタリング結果221には、クラスタID「1」に対応づけて特徴語ID「1」および特徴語「燃料」が含まれる。また、クラスタリング結果221には、クラスタID「1」に対応づけて特徴語ID「2」および特徴語「亀裂」が含まれる。これによれば、クラスタID「1」によって識別されるクラスタには、文書ID「1」、「2」、「3」、「4」、「5」、「6」、「7」、「8」および「300」等によって識別される200の文書が属していることが示される。また、クラスタID「1」によって識別されるクラスタには、特徴語ID「1」によって識別される特徴語「燃料」および特徴語ID「2」によって識別される特徴語「亀裂」が付与されていることが示される。つまり、クラスタID「1」によって識別されるクラスタには、「燃料」および「亀裂」の2つの特徴語が付与されている。
また、クラスタリング結果221には、クラスタID「2」に対応づけて特徴語ID「1」、特徴語「コンピュータ」、文書数「150」および文書ID「9,…」が含まれる。これによれば、クラスタID「2」によって識別されるクラスタには、特徴語ID「1」によって識別される特徴語「コンピュータ」が付与されており、文書ID「9」等によって識別される150の文書が属していることが示される。
なお、図3に示すクラスタリング結果221には、クラスタIDによって識別されるクラスタに属する複数の文書(つまり、文書IDによって識別される文書)が含まれる。
次に、図4のフローチャートを参照して、本実施形態に係る代表文抽出装置30の処理手順について説明する。なお、クラスタリング結果格納部22には、上記した図3に示すクラスタリング結果221が格納されているものとして説明する。
まず、クラスタID受付部31は、クラスタリング結果格納部22に格納されているクラスタリング結果221に含まれるクラスタIDのうち、ユーザによって指定されたクラスタIDを受け付ける(ステップS1)。
この場合、例えばクラスタリング結果221(クラスタID、特徴語ID、特徴後、文書数、文書IDおよび文書内容)がユーザに対して表示される。ユーザは、表示されたクラスタリング結果221を参照して、代表文を抽出すべき文書群が属するクラスタ(を識別するためのクラスタID)を指定することができる。
以下の説明においては、クラスタID受付部31によって受け付けられたクラスタIDによって識別されるクラスタ(ユーザによって指定されたクラスタ)を対象クラスタと称する。
ここでは、対象クラスタを識別するためのクラスタIDとして図3に示すクラスタリング結果221に含まれるクラスタID「1」がクラスタID受付部31によって受け付けられたものとする。
ここで、図5は、図3に示すクラスタリング結果221に含まれるクラスタID「1」によって識別されるクラスタ(つまり、対象クラスタ)に属する文書群(複数の文書)の一例を示す。
図5に示す例では、クラスタID「1」によって識別される対象クラスタに属する文書群には、文書ID「1」、「2」「3」、「4」、「5」、「6」、「7」、「8」および「300」等によって識別される文書が含まれる。
具体的には、対象クラスタには、文書ID「1」によって識別される文書「燃料が漏れる。燃料タンクを良品と交換する。」等が属している。なお、文書ID「1」によって識別される文書以外の文書については説明を省略する。
再び図4に戻ると、対象クラスタに付与された特徴語の各々について以下のステップS2〜ステップS4の処理が実行される。ここでは、対象クラスタに付与された特徴語「燃料」および「亀裂」の各々について処理が実行される。
特徴文抽出部32は、対象クラスタに属する文書群(図5に示す文書群)から、対象クラスタに付与された特徴語を含む文(特徴文)を抽出する(ステップS2)。
ここで、図6は、対象クラスタに付与された特徴語「燃料」を含む特徴文の抽出結果を示す。
図6に示すように、特徴語ID「1」によって識別される特徴語「燃料」を含む特徴文として、文書ID「1」によって識別される文書から「燃料が漏れる」および「燃料タンクを良品と交換する」が抽出されている。
また、特徴語ID「1」によって識別される特徴語「燃料」を含む特徴文として、文書ID「2」によって識別される文書から「燃料漏れが生じる」が抽出されている。
同様に、特徴語ID「1」によって識別される特徴語「燃料」を含む特徴文として、文書ID「3」によって識別される文書から「漏れていた燃料に火が広がった」、文書ID「4」によって識別される文書から「結合部のホースに亀裂が生じて燃料が漏れる」および文書ID「6」によって識別される文書から「ホースの亀裂から燃料が漏れていた」等が抽出されている。
なお、図6に示すように、抽出された特徴文の各々には、当該特徴文を識別するための特徴文IDが割り当てられる。
一方、図7は、対象クラスタに付与された特徴語「亀裂」を含む特徴文の抽出結果を示す。
図7に示すように、特徴語ID「2」によって識別される特徴語「亀裂」を含む特徴文として、文書ID「4」によって識別される文書から「結合部のホースに亀裂が生じて燃料が漏れる」が抽出されている。
また、特徴語ID「2」によって識別される特徴語「亀裂」を含む特徴文として、文書ID「5」によって識別される文書から「ホースに亀裂が生じる」が抽出されている。
同様に、特徴語ID「2」によって識別される特徴語「亀裂」を含む特徴文として、文書ID「6」によって識別される文書から「ホースの亀裂から燃料が漏れていた」、文書ID「7」によって識別される文書から「パイプに亀裂が発生する」、文書ID「8」によって識別される文書から「タイヤに亀裂が生じる」および文書ID「300」によって識別される文書から「亀裂が生じる」が抽出されている。
なお、図7に示すように、抽出された特徴文の各々には、当該特徴文を識別するための特徴文IDが割り当てられる。
再び図4に戻ると、構文解析部33は、特徴文抽出部32によって抽出された特徴文の各々を構文解析する(ステップS3)。これにより、特徴文抽出部32によって抽出された特徴文の構文解析結果が得られる。この構文解析部33による特徴文の構文解析結果には、当該特徴文に含まれる自立語間の関係が含まれる。
ここで、図8および図9を参照して、構文解析部33による特徴文の構文解析結果(特徴文の構文木の構造)について説明する。
図8は、対象クラスタに付与された特徴語「燃料」を含む特徴文(図6に示す特徴文)の構文解析結果の一例を示す。
図9は、対象クラスタに付与された特徴語「亀裂」を含む特徴文(図7に示す特徴文)の構文解析結果の一例を示す。
図8および図9に示すように、特徴文の構文解析結果には、当該特徴文を識別するための特徴文IDに対応づけて文節ID、文節の自立語、品詞、親IDおよび関係が含まれる。この文節ID、文節の自立語、品詞、親IDおよび関係により特徴文に含まれる自立語間の係り受け構造(関係)が示される。
文節IDは、特徴文IDによって識別される特徴文を構成する各文節を識別するための識別子である。文節の自立語は、文節IDによって識別される文節に含まれる自立語を示す。品詞は、文節の自立語の品詞を示す。親IDは、文節の自立語と係り受け関係にある自立語を含む文節(親の文節)を識別するための文節IDを示す。関係は、文節IDによって識別される文節(に含まれる自立語)と親IDによって識別される文節(に含まれる自立語)との係り受け関係を示す。自立語には、例えば名詞、動詞、サ変名詞等が含まれる。係り受け関係には、例えば「の」、「を」、「並列」「隣接」等が含まれる。
図8に示す例では、特徴文ID「1」によって識別される特徴文「燃料が漏れる」の構文解析結果には、特徴文ID「1」に対応づけて文節ID「1」、文節の自立語「燃料」、品詞「名詞」、親ID「2」および関係「が」が含まれる。また、特徴文ID「1」によって識別される特徴文「燃料が漏れる」の構文解析結果には、特徴文ID「1」に対応づけて文節ID「2」、文節の自立語「漏れる」および品詞「動詞」が含まれる。
この例によると、特徴文ID「1」によって識別される特徴文「燃料が漏れる」は2つの文節を含み、品詞が名詞である自立語「燃料」が、品詞が動詞である「漏れる」に「が」の関係で係ることが示される。
なお、図8示す特徴文ID「1」によって識別される特徴文以外の特徴文の構文解析結果についても同様であるため、その詳しい説明を省略する。
また、図9に示す例では、特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」の構文解析結果には、特徴文ID「312」に対応づけて文節ID「1」、文節の自立語「結合部」、品詞「名詞」、親ID「2」および関係「の」が含まれる。特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」の構文解析結果には、特徴文ID「312」に対応づけて文節ID「2」、文節の自立語「ホース」、品詞「名詞」、親ID「4」および関係「に」が含まれる。特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」の構文解析結果には、特徴文ID「312」に対応づけて文節ID「3」、文節の自立語「亀裂」、品詞「サ変名詞」、親ID「4」および関係「が」が含まれる。特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」の構文解析結果には、特徴文ID「312」に対応づけて文節ID「4」、文節の自立語「生じて」、品詞「動詞」、親ID「6」および関係「並列」が含まれる。特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」の構文解析結果には、特徴文ID「312」に対応づけて文節ID「5」、文節の自立語「燃料」、品詞「名詞」、親ID「6」および関係「が」が含まれる。また、特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」の構文解析結果には、特徴文ID「312」に対応づけて文節ID「6」、文節の自立語「漏れる」および品詞「動詞」が含まれる。
この例によると、特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」は6つの文節を含み、名詞である自立語「結合部」が名詞である自立語「ホース」に「の」の関係で係り、名詞である自立語「ホース」が動詞である自立語「生じて」に「に」の関係で係り、サ変名詞である自立語「亀裂」が「動詞」である自立語「生じて」に「が」の関係で係り、動詞である自立語「生じて」が動詞である自立語「漏れる」に「並列」の関係で係り、名詞である自立語「燃料」が動詞である自立語「漏れる」に「が」の関係で係ることが示される。
なお、図9に示す特徴文ID「312」によって識別される特徴文以外の特徴文の構文解析結果についても同様であるため、その詳しい説明を省略する。
再び図4に戻ると、代表文候補抽出部34は、構文解析部33による構文解析結果および予め定められた抽出ルールに基づいて、特徴文抽出部32によって抽出された特徴文(の構文解析結果)から代表文の候補となる文(代表文候補)を抽出する(ステップS4)。
ここで、代表文候補の抽出に用いられる抽出ルールの具体例について説明する。この抽出ルールには、第1〜第3の抽出ルールが含まれる。なお、第1〜第3の抽出ルールは、例えば3つ以下の自立語からなる単文を代表文候補として抽出する場合の抽出ルールである。単文とは基本的に名詞と述語(動詞、形容詞、形容動詞)から構成されるものであり、ここでは単文の述語に動詞の名詞化である動作名詞も含むとする。動作名詞は、例えば「漏れ」「揺れ」などである。
第1の抽出ルールは、特徴語を含み、第1の自立語(品詞が名詞)と第2の自立語(品詞が動詞または動作名詞)とが存在し、当該第1の自立語と第2の自立語との間に関係が存在する単文を抽出することを示す。
第2の抽出ルールは、特徴語を含み、第1および第2の自立語(品詞が名詞)と第3の自立語(品詞が動詞または動作名詞)とが存在し、第1の自立語と第2の自立語との間に関係が存在し、かつ、第2の自立語と第3の自立語との間に関係が存在する単文(または、第1の自立語と第3の自立語との間に関係が存在し、かつ、第2の自立語と第3の自立語との間に関係が存在する単文)を抽出することを示す。
第3の抽出ルールは、特徴語を含み、第1の自立語(品詞が名詞)と第2および第3の自立語(品詞が動詞または動作名詞)とが存在し、第1の自立語と第2の自立語との間に関係が存在し、かつ、第2の自立語と第3の自立語との間に関係が存在する単文(または、第1の自立語と第3の自立語との間に関係が存在し、かつ、第2の自立語と第3の自立語との間に関係が存在する単文、または、第1の自立語と第2の自立語との間に関係が存在し、かつ、第1の自立語と第3の自立語との間に関係が存在する単文)を抽出することを示す。
なお、抽出ルールとしては、上記した第1〜第3の抽出ルールの全てが用いられてもよいし、当該第1〜第3の抽出ルールのいずれか(1つまたは2つ)が用いられてもよい。以下の説明では、第1〜第3の抽出ルールの全てが用いられるものとして説明する。
また、抽出ルールは、上記した第1〜第3の抽出ルールに限られるものではなく、当該第1〜第3の抽出ルール以外の抽出ルールが用いられても構わない。また、抽出ルールは、入れ替え、追加または削除等が可能である。例えばユーザによって入れ替え、追加または削除等が行われる仕組みであっても構わない。
ここで、図10〜図15を参照して、代表文候補抽出部34によって抽出された代表文候補について説明する。
図10は、第1の抽出ルールにより上記した図6に示す特徴文(図8に示す構文解析結果)から抽出された代表文候補の一例を示す。なお、図6は、上記したように特徴語「燃料」を含む特徴文の一例を示す。また、図8は、図6に示す特徴文の構文解析結果を示す。
まず、図6に示す特徴文のうち、例えば特徴文ID「1」によって識別される特徴文「燃料が漏れる」から抽出される代表文候補について説明する。
図8に示す特徴文「燃料が漏れる」の構文解析結果によれば、この特徴文「燃料が漏れる」に含まれる自立語のうち、自立語「燃料」が第1の抽出ルールにおける第1の自立語に該当し、自立語「漏れる」が第1の抽出ルールにおける第2の自立語に該当する。また、第1の自立語である自立語「燃料」と第2の自立語である自立語「漏れる」との間には関係(ここでは、関係「が」)が存在する。また、第1の自立語である自立語「燃料」は、特徴語である。したがって、図10に示すように、特徴文ID「1」によって識別される特徴文「燃料が漏れる」からは、第1の抽出ルールにより特徴語「燃料」を含む代表文候補「燃料が漏れる」が抽出される。
次に、図6に示す特徴文のうち、例えば特徴文ID「2」によって識別される特徴文「燃料タンクを良品と交換する」から抽出される代表文候補について説明する。
図8に示す特徴文「燃料タンクを良品と交換する」の構文解析結果によれば、この特徴文「燃料タンクを良品と交換する」に含まれる自立語のうち、自立語「燃料タンク」が第1の抽出ルールにおける第1の自立語に該当し、自立語「交換する」が第1の抽出ルールにおける第2の自立語に該当する。また、第1の自立語である自立語「燃料タンク」と第2の自立語である自立語「交換する」との間には関係(ここでは、関係「を」)が存在する。また、第1の自立語である自立語「燃料タンク」には、特徴語である「燃料」が含まれる。したがって、図10に示すように、特徴文ID「2」によって識別される特徴文「燃料タンクを良品と交換する」からは、第1の抽出ルールにより特徴語「燃料」を含む代表文候補「燃料タンクを交換する」が抽出される。
なお、特徴文ID「2」によって識別される特徴文「燃料タンクを良品と交換する」に含まれる自立語のうち自立語「良品」は第1の抽出ルールにおける第1の自立語に該当し、自立語「交換する」は第1の抽出ルールにおける第2の自立語に該当する。また、第1の自立語「良品」と第2の自立語「交換する」との間には関係(ここでは、関係「と」)が存在する。しかしながら、第1の自立語「良品」および第2の自立語「交換する」には特徴語「燃料」が含まれていないため、「良品と交換する」は、代表文候補としては抽出されない。
次に、図6に示す特徴文のうち、例えば特徴文ID「4」によって識別される特徴文「漏れていた燃料に火が広がった」から抽出される代表文候補について説明する。
図8に示す特徴文「漏れていた燃料に火が広がった」の構文解析結果によれば、この特徴文「漏れていた燃料に火が広がった」に含まれる自立語のうち、自立語「燃料」が第1の抽出ルールにおける第1の自立語に該当し、自立語「漏れていた」が第1の抽出ルールにおける第2の自立語に該当する。また、第1の自立語である自立語「燃料」と第2の自立語である自立語「漏れていた」との間には関係(ここでは、関係「が修飾」)が存在する。また、第1の自立語である自立語「燃料」は、特徴語である。したがって、図10に示すように、特徴文ID「4」によって識別される特徴文「漏れていた燃料に火が広がった」からは、第1の抽出ルールにより特徴語「燃料」を含む代表文候補「漏れていた燃料」が抽出される。
更に、図8に示す特徴文「漏れていた燃料に火が広がった」の構文解析結果によれば、この特徴文「漏れていた燃料に火が広がった」に含まれる自立語のうち、自立語「燃料」が第1の抽出ルールにおける第1の自立語に該当し、自立語「広がった」が第1の抽出ルールにおける第2の自立語に該当する。また、第1の自立語である自立語「燃料」と第2の自立語である自立語「広がった」との間には関係(ここでは、関係「に」)が存在する。また、第1の自立語である自立語「燃料」は、特徴語である。したがって、図10に示すように、特徴文ID「4」によって識別される特徴文「漏れていた燃料に火が広がった」からは、第1の抽出ルールにより特徴語「燃料」を含む代表文候補「燃料に広がった」が抽出される。
このように、1つの特徴文(ここでは、特徴文ID「4」によって識別される特徴文)から複数の代表文候補が抽出されても構わない。
ここでは、図10を参照して、図6に示す特徴文ID「1」、「2」および「4」によって識別される特徴文から抽出された代表文候補について説明したが、図6に示す他の特徴文から抽出された代表文候補についても同様であるため、その詳しい説明を省略する。
なお、図10に示すように、代表文候補抽出部34によって抽出された代表文候補の各々には、当該代表文候補を識別するための代表文候補IDが割り当てられる。以下に説明する各代表文候補についても同様である。
図11は、第1の抽出ルールにより上記した図7に示す特徴文(図9に示す構文解析結果)から抽出された代表文候補の一例を示す。なお、図7は、上記したように特徴語「亀裂」を含む特徴文の一例を示す。また、図9は、図7に示す特徴文の構文解析結果を示す。
ここでは、図7に示す特徴文のうち、例えば特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」から抽出される代表文候補について説明する。
図9に示す特徴文「結合部のホースに亀裂が生じて燃料が漏れる」の構文解析結果によれば、この特徴文「結合部のホースに亀裂が生じて燃料が漏れる」に含まれる自立語のうち、自立語「亀裂」が第1の抽出ルールにおける第1の自立語に該当し、自立語「生じて」が第1の抽出ルールにおける第2の自立語に該当する。また、第1の自立語である自立語「亀裂」と第2の自立語である自立語「生じて」との間には関係(ここでは、関係「が」)が存在する。また、第1の自立語である「亀裂」は、特徴語である。したがって、図11に示すように、特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」からは、第1の抽出ルールにより特徴語「亀裂」を含む代表文候補「亀裂が生じて」が抽出される。
なお、特徴文「結合部のホースに亀裂が生じて燃料が漏れる」に含まれる自立語のうち、自立語「ホース」は第1の抽出ルールにおける第1の自立語に該当し、自立語「生じて」は第1の抽出ルールにおける第2の自立語に該当する。また、第1の自立語「ホース」および第2の自立語「生じて」との間には関係(ここでは、関係「に」)が存在する。しかしながら、第1の自立語「ホース」および第2の自立語「生じて」には特徴語「亀裂」が含まれていないため、「ホースに生じて」は、代表文候補としては抽出されない。また、「燃料が漏れる」についても同様であるため、代表文候補としては抽出されない。
ここでは、図11を参照して、図7に示す特徴文ID「312」によって識別される特徴文から抽出された代表文候補について説明したが、図7に示す他の特徴文から抽出された代表文候補についても同様であるため、その詳しい説明を省略する。
図12は、第2の抽出ルールにより上記した図6に示す特徴文(図8に示す構文解析結果)から抽出された代表文候補の一例を示す。
ここでは、図6に示す特徴文のうち、例えば特徴文ID「2」によって識別される特徴文「燃料タンクを良品と交換する」から抽出される代表文候補について説明する。
図8に示す特徴文「燃料タンクを良品と交換する」の構文解析結果によれば、この特徴文「燃料タンクを良品と交換する」に含まれる自立語のうち、自立語「燃料タンク」が第2の抽出ルールにおける第1の自立語に該当し、自立語「良品」が第2の抽出ルールにおける第2の自立語に該当し、自立語「交換する」が第3の抽出ルールにおける第3の自立語に該当する。また、第1の自立語である自立語「燃料タンク」と第3の自立語である自立語「交換する」との間には関係(ここでは、関係「を」)が存在し、かつ、第2の自立語である自立語「良品」と第3の自立語である自立語「交換する」との間には関係(ここでは、関係「と」)が存在する。また、第1の自立語である自立語「燃料タンク」には、特徴語である「燃料」が含まれる。したがって、図12に示すように、特徴文ID「2」によって識別される特徴文「燃料タンクを良品と交換する」からは、第2の抽出ルールにより特徴語「燃料」を含む代表文候補「燃料タンクを良品と交換する」が抽出される。
ここでは、図11を参照して、図6に示す特徴文ID「2」によって識別される特徴文から抽出された代表文候補について説明したが、図6に示す他の特徴文から抽出された代表文候補についても同様であるため、その詳しい説明を省略する。
図13は、第2の抽出ルールにより上記した図7に示す特徴文(図9に示す構文解析結果)から抽出された代表文候補の一例を示す。
まず、図7に示す特徴文のうち、例えば特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」から抽出される代表文候補について説明する。
図9に示す特徴文「結合部のホースに亀裂が生じて燃料が漏れる」の構文解析結果によれば、この特徴文「結合部のホースに亀裂が生じて燃料が漏れる」に含まれる自立語のうち、自立語「ホース」が第2の抽出ルールにおける第1の自立語に該当し、自立語「亀裂」が第2の抽出ルールにおける第2の自立語に該当し、自立語「生じて」が第2の抽出ルールにおける第3の自立語に該当する。また、第1の自立語である自立語「ホース」と第3の自立語である自立語「生じて」との間には関係(ここでは、関係「に」)が存在し、かつ、第2の自立語である「亀裂」と第3の自立語である自立語「生じて」との間には関係(ここでは、関係「が」)が存在する。また、第2の自立語である自立語「亀裂」は、特徴語である。したがって、図13に示すように、特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」からは、第2の抽出ルールにより特徴語「亀裂」を含む代表文候補「ホースに亀裂が生じて」が抽出される。なお、「結合部のホースに生じて」には特徴語「亀裂」が含まれていないため、代表文候補としては抽出されない。
次に、図7に示す特徴文のうち、例えば特徴文ID「314」によって識別される特徴文「ホースの亀裂から燃料が漏れていた」から抽出される代表文候補について説明する。
図9に示す特徴文「ホースの亀裂から燃料が漏れていた」の構文解析結果によれば、この特徴文「ホースの亀裂から燃料が漏れていた」に含まれる自立語のうち、自立語「亀裂」が第2の抽出ルールにおける第1の自立語に該当し、自立語「燃料」が第2の抽出ルールにおける第2の自立語に該当し、自立語「漏れていた」が第2の抽出ルールにおける第3の自立語に該当する。また、第1の自立語である自立語「亀裂」と第3の自立語である自立語「漏れていた」との間には関係(ここでは、関係「から」)が存在し、かつ、第2の自立語である自立語「燃料」と第3の自立語である自立語「漏れていた」との間には関係(ここでは、関係「が」)が存在する。また、第1の自立語である自立語「亀裂」は、特徴語である。したがって、図13に示すように、特徴文ID「314」によって識別される特徴文「ホースの亀裂から燃料が漏れていた」からは、第2の抽出ルールにより特徴語「亀裂」を含む代表文候補「亀裂から燃料が漏れていた」が抽出される。
更に、図9に示す特徴文「ホースの亀裂から燃料が漏れていた」の構文解析結果によれば、この特徴文「ホースの亀裂から燃料が漏れていた」に含まれる自立語のうち、自立語「ホース」が第2の抽出ルールにおける第1の自立語に該当し、自立語「亀裂」が第2の抽出ルールにおける第2の自立語に該当し、自立語「漏れていた」が第2の抽出ルールにおける第3の自立語に該当する。また、第1の自立語である自立語「ホース」と第2の自立語である自立語「亀裂」との間には関係(ここでは、関係「の」)が存在し、かつ、第2の自立語である自立語「亀裂」と第3の自立語である自立語「漏れていた」との間には関係(ここでは、関係「から」)が存在する。また、第2の自立語である自立語「亀裂」は、特徴語である。したがって、図13に示すように、特徴文ID「314」によって識別される特徴文「ホースの亀裂から燃料が漏れていた」からは、第2の抽出ルールにより特徴語「亀裂」を含む代表文候補「ホースの亀裂から漏れていた」が抽出される。
ここでは、図13を参照して、図7に示す特徴文ID「312」および「314」によって識別される特徴文から抽出された代表文候補について説明したが、図7に示す他の特徴文から抽出された代表文候補についても同様であるため、その詳しい説明を省略する。
図14は、第3の抽出ルールにより上記した図6に示す特徴文(図8に示す構文解析結果)から抽出された代表文候補の一例を示す。
まず、図6に示す特徴文のうち、例えば特徴文ID「3」によって識別される特徴文「燃料漏れが生じる」から抽出される代表文候補について説明する。
図8に示す特徴文「燃料漏れが生じる」の構文解析結果によれば、この特徴文「燃料漏れが生じる」に含まれる自立語のうち、自立語「燃料」が第3の抽出ルールにおける第1の自立語に該当し、自立語「漏れ」が第3の抽出ルールにおける第2の自立語に該当し、自立語「生じる」が第3の抽出ルールにおける第3の自立語に該当する。また、第1の自立語である自立語「燃料」と第2の自立語である自立語「漏れ」との間には関係(ここでは、関係「隣接」)が存在し、かつ、第2の自立語である自立語「漏れ」と第3の自立語である自立語「生じる」との間には関係(ここでは、関係「が」)が存在する。また、第1の自立語である自立語「燃料」は、特徴語である。したがって、図14に示すように、特徴文ID「3」によって識別される特徴文「燃料漏れが生じる」からは、第3の抽出ルールにより特徴語「燃料」を含む代表文候補「燃料漏れが生じる」が抽出される。
次に、図6に示す特徴文のうち、例えば特徴文ID「5」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」から抽出された代表文候補について説明する。
図8に示す特徴文「結合部のホースに亀裂が生じて燃料が漏れる」の構文解析結果によれば、この特徴文「結合部のホースに亀裂が生じて燃料が漏れる」に含まれる自立語のうち、自立語「燃料」が第3の抽出ルールにおける第1の自立語に該当し、自立語「生じて」が第3の抽出ルールにおける第2の自立語に該当し、自立語「漏れる」が第3の抽出ルールにおける第3の自立語に該当する。また、第1の自立語である自立語「燃料」と第3の自立語である「漏れる」との間には関係(ここでは、関係「が」)が存在し、かつ、第2の自立語である自立語「生じて」と第3の自立語である自立語「漏れる」との間には関係(ここでは、関係「並列」)が存在する。また、第1の自立語である自立語「燃料」は、特徴語である。したがって、図14に示すように、特徴文ID「5」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」からは、第3の抽出ルールにより特徴語「燃料」を含む代表文候補「生じて燃料が漏れる」が抽出される。
ここでは、図14を参照して、図6に示す特徴文ID「3」および「5」によって識別される特徴文から抽出された代表文候補について説明したが、図6に示す他の特徴文から抽出された代表文候補についても同様であるため、その詳しい説明を省略する。
図15は、第3の抽出ルールにより上記した図7に示す特徴文(図9に示す構文解析結果)から抽出された代表文候補の一例を示す。
ここでは、図7に示す特徴文のうち、例えば特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」から抽出される代表文候補について説明する。
図9に示す特徴文「結合部のホースに亀裂が生じて燃料が漏れる」の構文解析結果によれば、この特徴文「結合部のホースに亀裂が生じて燃料が漏れる」に含まれる自立語のうち、自立語「亀裂」が第3の抽出ルールにおける第1の自立語に該当し、自立語「生じて」が第3の抽出ルールにおける第2の自立語に該当し、自立語「漏れる」が第3の抽出ルールにおける第3の自立語に該当する。また、第1の自立語である自立語「亀裂」と第2の自立語である自立語「生じて」との間には関係(ここでは、関係「が」)が存在し、かつ、第2の自立語である自立語「生じて」と第3の自立語である自立語「漏れる」との間には関係(ここでは、関係「並列」)が存在する。また、第1の自立語である自立語「亀裂」は、特徴語である。したがって、図15に示すように、特徴文ID「312」によって識別される特徴文「結合部のホースに亀裂が生じて燃料が漏れる」からは、第3の抽出ルールにより特徴語「亀裂」を含む代表文候補「亀裂が生じて漏れる」が抽出される。
再び図4に戻って説明する。上記したように対象クラスタに付与された特徴語の各々について上記したステップS2〜ステップS4の処理が実行されると、後述するステップS5の処理が実行される。
上記したように、対象クラスタに付与された例えば特徴語「燃料」についてステップS2〜ステップS4の処理が実行されると、ステップS2の処理においては図6に示す特徴文が抽出され、ステップS3の処理においては図8に示す構文解析結果が得られ、ステップS4においては図10、図12および図14に示す代表文候補が抽出される。
一方、対象クラスタに付与された特徴語「亀裂」についてステップS2〜ステップS4の処理が実行されると、ステップS2の処理においては図7に示す特徴文が抽出され、ステップS3の処理においては図9に示す構文解析結果が得られ、ステップS4においては図11、図13および図15に示す代表文候補が抽出される。
次に、代表文候補集約部35は、代表文候補抽出部34によって抽出された代表文候補(ここでは、図10〜図15に示す代表文候補)の各々に含まれる自立語に基づいて、当該代表文候補を集約する処理を実行する(ステップS5)。代表文候補集約部35は、代表文候補抽出部34によって抽出された代表文候補のうち、例えば同様の意味内容を有する複数の代表文候補を(1つの代表文候補へ)集約する。なお、代表文候補集約部35は、同様の意味内容を有する複数の代表文候補を、当該複数の代表文候補のうち代表文候補抽出部34によって抽出された数が最も多い(つまり、出現頻度が最も高い)代表文候補へ集約する。以下、複数の代表文候補が集約された結果となる代表文候補を集約代表文候補と称する。
代表文候補集約部35は、以下に説明する第1〜第3の集約方法により代表文候補を集約する。
第1の集約方法によれば、例えば代表文候補に含まれる自立語の語幹が同じ複数の代表文候補が集約される。具体的には、図10に示す代表文候補においては、代表文候補ID「1」および「6」によって識別される代表文候補「燃料が漏れる」と代表文候補ID「3」によって識別される代表文候補「燃料漏れ」と代表文候補ID「4」によって識別される代表文候補「漏れていた燃料」と代表文候補ID「7」によって識別される代表文候補「燃料が漏れていた」が集約される。この場合、これらの代表文候補のうち代表文候補「燃料が漏れる」の出現頻度が最も高いため、これらの代表文候補は集約代表文候補「燃料が漏れる」へ集約される。
なお、第1の集約方法においては、語幹が同じ代表文候補であっても否定の表現を含む代表文候補は集約されない。したがって、図10に示す代表文候補ID「183」によって識別される代表文候補「燃料が漏れない」は、上記した集約代表文候補「燃料が漏れる」へは集約されない。
第2の集約方法においては、パラフレーズ辞書23に格納されている置換ルールを用いて代表文候補の言い換え処理(パラフレーズ)が行われる。つまり、第2の集約方法によれば、代表文候補の言い換え結果が同一である複数の代表文候補が集約される。
ここで、図16は、図2に示すパラフレーズ辞書格納部23のデータ構造の一例を示す。パラフレーズ辞書格納部23には、置換ルール231を含む複数の置換ルールが格納されている。なお、図16においては、置換ルール231以外の置換ルールについては省略されている。
図16に示すように、置換ルール231には、ルールID、対象パターン、置換パターン、係り受け条件、品詞条件および一致条件が含まれる。ルールIDは、置換ルール231を識別するための識別子である。対象パターンは、代表文候補における複数の自立語間の係り受け構造を示す構文パターンである。置換パターンは、対象パターンの言い換えとなる自立語間の係り受け構造を示す構文パターンである。
係り受け条件、品詞条件および一致条件は、代表文候補において、当該代表文候補に含まれる自立語を残すと共に対象パターンを置換パターンに置換するための置換条件である。つまり、これらの全ての置換条件を満たした場合に、代表文候補に対して置換処理が行われることになり、当該代表文候補の言い換えが行われる。
係り受け条件は、文節間の係り受け(関係)についての条件を示す。品詞条件は、各文節の自立語の品詞の条件を示す。一致条件は、代表文候補と当該代表文候補の言い換え結果(集約代表文候補)との文節の一致条件を示す。
図16に示す例では、置換ルール231には、ルールID「1」、対象パターン「B−C−A」、置換パターン「B−C」、係り受け条件「B−C:隣接、C−A:が」、品詞条件「C:動詞,動作名詞、B:名詞、A:「生じる」」および一致条件「A:不一致、B:語幹が一致(活用語尾が否定であるものは除く)、C:一致」が含まれる。なお、図16において、A、BおよびCは、自立語(文節の自立語)を示す。
ここで、図14に示す代表文候補ID「187」によって識別される代表文候補「燃料漏れが生じる」を集約代表文候補「燃料が漏れる」に集約する場合について具体的に説明する。なお、パラフレーズ辞書格納部23には、図16に示す置換ルール231が格納されているものとする。なお、適宜、図8に示す代表文候補「燃料漏れが生じる」および集約代表文候補「燃料が漏れる」の構文解析結果を用いて説明する。
この場合、置換ルール231に含まれる対象パターンは「B−C−A」である。この場合、図8に示すように代表文候補「燃料漏れが生じる」に含まれる自立語「燃料」が対象パターンにおける「B」に該当し、自立語「漏れ」が対象パターンにおける「C」に該当し、自立語「生じる」が対象パターンにおける「A」に該当する。
図8に示すように自立語「燃料(B)」と自立語「漏れ(C)」との間の関係(係り受け関係)は「隣接」である。また、自立語「漏れ(C)」と自立語「生じる(A)」との間の関係は「が」である。したがって、代表文候補「燃料漏れが生じる」は、係り受け条件を満たす。
図8に示すように自立語「漏れ(C)」の品詞は「動作名詞」であり、自立語「燃料(B)」の品詞は「名詞」である。したがって、代表文候補「燃料漏れが生じる」は、品詞条件を満たす。
一方、置換ルール231に含まれる置換パターンは「B−C」である。この場合、図8に示すように集約代表文候補「燃料が漏れる」に含まれる自立語「燃料」が置換パターンにおける「B」に該当し、自立語「漏れる」が置換パターンにおける「C」に該当する。
つまり、上記した図16に示す置換ルール231において、代表文候補「燃料漏れが生じる」は、対象パターン、係り受け条件および品詞条件を満たしている。
また、集約代表文候補「燃料が漏れる」は、置換ルール231に含まれる置換パターンを満たす。
更に、代表文候補「燃料漏れが生じる」および集約代表文候補「燃料が漏れる」は、置換ルール231に含まれる一致条件を満たす。
よって、代表文候補「燃料漏れが生じる」は置換ルール231を用いて集約代表文候補「燃料が漏れる」に言い換える(つまり、置換する)ことができる。したがって、代表文候補「燃料漏れが生じる」は集約代表文候補「燃料が漏れる」に集約することができる。
つまり、第2の集約方法においては、上記したようにパラフレーズ辞書格納部23を用いて代表文候補を集約することができる。
第3の集約方法によれば、同義語辞書格納部24を用いて同義語を含む複数の代表文候補が集約される。ここで、同義語辞書格納部24に同義語として「生じる」および「発生する」が格納されているものとする。この場合には、図11に示す代表文候補ID「192」によって識別される代表文候補「亀裂が発生する」および代表文候補ID「193」によって識別される代表文候補「亀裂が生じる」が集約される。この場合、これらの代表文候補のうち出現頻度が最も高い代表文候補(集約代表文候補)へ集約される。
なお、代表文候補集約部35は、上記した第1〜第3の集約方法の全てを用いて代表文候補の集約処理を実行してもよいし、当該第1〜第3の集約方法のいずれか(1つまたは2つ)を用いて集約処理を実行しても構わない。
ここで、図17は、代表文候補集約部35による代表文候補の集約結果(集約代表文候補)の一例を示す。なお、図17は、上記した図10〜図15に示す代表文候補の集約結果を示す。
図17に示す集約代表文候補IDは、集約代表文候補を識別するための識別子であり、代表文候補集約部35による集約処理において集約代表文候補毎に割り当てられる。また、図17に示す特徴文IDは、集約代表文候補に集約された代表候補文が抽出された特徴文を識別するための識別子である。
図17に示す例では、集約代表文候補ID「1」によって識別される集約代表文候補「燃料が漏れる」には、特徴文ID「1,3,4,5,6,…」の各々によって識別される特徴文から抽出された代表候補文が集約されていることが示される。
ここでは、集約代表文候補ID「1」によって識別される集約代表文候補「燃料が漏れる」について説明したが、当該集約代表文候補以外の集約代表文候補についても同様であるため、その詳しい説明を省略する。
次に、代表度算出部36は、代表文候補集約部35による集約結果(に含まれる集約代表文候補)毎に、対象クラスタに対する代表度を算出する(ステップS6)。代表度算出部36は、代表度の指標として、例えば“文書カバー率”または代表文候補を含む文書の数に基づく“スコア式”を用いる。以下、文書カバー率によって算出される代表度を第1の代表度とする。一方、スコア式によって算出される代表度を第2の代表度とする。
まず、第1の代表度について説明する。第1の代表度は、文書カバー率により定義される。ここで文書カバー率は、「集約代表文候補を含む文書数/対象クラスタに属する全文書数」で定義され、対象クラスタに属する文書群(複数の文書)に対する集約代表文候補の網羅性を表すことができる。なお、集約代表文候補を含む文書数には、集約代表文候補に集約された代表文候補の各々が含まれる文書数が含まれる。また、文書カバー率により定義される第1の代表度は、値が大きい方が対象クラスタに属する文書群(複数の文書)に対する集約代表文候補の網羅性が高いことを表す。
次に、第2の代表度について説明する。ここで、集約代表文候補の数がNである場合の集約代表文候補Xの第2の代表度は、次式(即ち、スコア式)によって定義される。
この式(1)におけるdXは、対象クラスタに属する文書群(複数の文書)のうちの集約代表文候補Xが含まれる文書の集合である。なお、dXには、集約代表文候補Xに集約された代表文候補の各々が含まれる文書が含まれる。上記したように図10に示す代表文候補「燃料が漏れる」と「燃料漏れ」と「漏れていた燃料」と「燃料が漏れていた」とが集約代表文候補「燃料が漏れる」へ集約された場合を想定する。この場合において、集約代表文候補Xが当該集約代表文候補「燃料が漏れる」である場合には、式(1)におけるdXは、集約代表文候補「燃料が漏れる」に集約された「燃料が漏れる」、「燃料漏れ」、「漏れていた燃料」および「燃料が漏れていた」の各々が含まれる文書の集合である。
式(1)におけるdiは、集約代表文候補X以外の集約代表文候補iが含まれる文書の集合である。なお、diには、集約代表文候補iに集約された代表文候補が含まれる文書が含まれる。
式(1)における|dX|は、dXの集合中に含まれる文書の数である。また、式(1)における|dX∩di|は、dXおよびdiの積集合中に含まれる文書の数である。
なお、上記した式(1)により定義される第2の代表度は、値が小さい方が集約代表文候補Xが対象クラスタ内においてより代表らしいことを表す。
ここで、集約代表文候補A、BおよびCが存在するものとする。また、対象クラスタには、第1〜第15の文書が属しているものとする。
この場合において、集約代表文候補Aは第1〜第5の文書に含まれ、集約代表文候補Bは第4〜第9の文書に含まれ、集約代表文候補Cは第9〜第15の文書に含まれる場合を想定する。つまり、第4および第5の文書には集約代表文候補AおよびBが含まれる。また、第9の文書には、集約代表文候補BおよびCが含まれる。
この場合、上記した式(1)において、|dA|は5であり、|dB|は6であり、|dC|は7である。また、|dA∩dB|は2であり、|dB∩dC|は1であり、|dA∩dC|は0である。
したがって、集約代表文候補Aの第2の代表度は2/5(=2/5+0/5)、集約代表文候補Bの第2の代表度は1/2(=2/6+1/6)、集約代表文候補Cの代表度は1/7(=0/7+1/7)となる。
これにより、この対象クラスタにおいて最も代表らしい集約代表文候補は、集約代表文候補Cとなる。
代表文決定部37は、代表度算出部36によって算出された代表度に基づいて、代表文候補集約部35による集約結果(に含まれる集約代表文候補)の中から代表文を決定する(ステップS7)。
具体的には、ステップS6において代表度算出部36によって集約代表文候補毎に第1の代表度(文書カバー率)が算出された場合には、代表文決定部37は、第1の代表度が大きい順に上位n位までの集約代表文候補を対象クラスタにおける代表文として決定する。ここで、nは、例えばユーザによって予め定められた整数である。
ここで、図18は、代表度算出部36によって集約代表文候補毎に算出された第1の代表度の一例を示す。図18においては、第1の代表度が大きい順に集約代表文候補が示されている。
例えば第1の代表度が大きい順に上位3位までの集約代表文候補を代表文として決定する場合、図18に示す例においては、集約代表文候補ID「4」によって識別される集約代表文候補「亀裂が生じる」、集約代表文候補ID「7」によって識別される集約代表文候補「燃料に火が広がる」および集約代表文候補ID「1」によって識別される集約代表文候補「燃料が漏れる」が代表文として決定される。
一方、ステップS6において代表度算出部36によって集約代表文候補毎に第2の代表度(スコア式)が算出された場合には、代表文決定部37は、第2の代表度が小さい順に上位n位までの集約代表文候補を対象クラスタにおける代表文として決定する。ここで、nは、上記したようにユーザによって予め定められた整数である。
ここで、図19は、代表度算出部36によって集約代表文候補毎に算出された第2の代表度の一例を示す。図19においては、第2の代表度が小さい順に集約代表文候補が示されている。
例えば第2の代表度が小さい順に上位3位までの集約代表文候補を代表文として決定する場合、図19に示す例においては、集約代表文候補ID「1」によって識別される集約代表文候補「燃料が漏れる」、集約代表文候補ID「4」によって識別される集約代表文候補「亀裂が生じる」および集約代表文候補ID「7」によって識別される集約代表文候補「燃料に火が広がる」が代表文として決定される。
以下の説明では、上記したように集約代表文候補「亀裂が生じる」、集約代表文候補「燃料に火が広がる」および集約代表文候補「燃料が漏れる」が代表文として決定されたものとして説明する。
次に、代表文分類部38は、代表文決定部37によって決定された代表文による分類処理を実行する(ステップS8)。この場合、代表文分類部38は、代表文決定部37によって決定された代表文毎に、対象クラスタに属する文書であって当該代表文を含む文書が属するサブクラスタを作成する。これにより、代表文分類部38は、対象クラスタに属する文書群(複数の文書)をサブクラスタに分類する。つまり、代表文分類部38は、対象クラスタに属する文書群を、代表文決定部37によって決定された代表文毎の部分集合で細分類する。なお、この部分集合(サブクラスタ)には、代表文が付与される。
ここで、図20は、代表文分類部38による分類結果の一例を示す。なお、図20に示す分類結果は、上記した図3に示すクラスタリング結果221に含まれるクラスタID「1」によって識別されるクラスタが対象クラスタとしてユーザによって指定された場合の分類結果を示す。
図20に示すように、代表文分類部38による分類結果(以下、単に分類結果と表記)には、クラスタIDに対応づけてクラスタ内文書数、特徴語、サブクラスタID、代表文、文書IDおよびサブクラスタ内文書数が含まれる。
クラスタ内文書数は、クラスタIDによって識別されるクラスタに属する文書の数を示す。特徴語は、クラスタIDによって識別されるクラスタに付与された特徴語を示す。なお、分類結果に含まれるクラスタID、クラスタ内文書数および特徴語は、上記した図3に示すクラスタリング結果221に含まれるクラスタID、クラスタ内文書数および特徴語と同一である。
サブクラスタIDは、上記した代表文分類部38によって代表文毎に作成されたサブクラスタを識別するための識別子である。
代表文は、代表文決定部37によって決定された代表文であって、分類結果において対応づけられているサブクラスタIDによって識別されるサブクラスタの作成に用いられた代表文を示す。つまり、代表文は、サブクラスタIDによって識別されるサブクラスタに属する文書群の特徴を表す文である。
文書IDは、分類結果において対応づけられているサブクラスタIDによって識別されるサブクラスタに属する文書の各々を識別するための識別子である。
サブクラスタ内文書数は、分類結果において対応づけられているサブクラスタIDによって識別されるサブクラスタに属する文書の数を示す。
図20に示す例では、分類結果には、クラスタID「1」に対応づけてクラスタ内文書数「200」、特徴語「燃料、亀裂」が含まれる。これによれば、クラスタID「1」によって識別されるクラスタには特徴語「燃料、亀裂」が付与されており、当該クラスタには200の文書が属していることが示されている。
また、分類結果には、クラスタID「1」に対応づけてサブクラスタID「1」、代表文「亀裂が生じる」、文書ID「4,5,7,8,…,300」およびサブクラスタ内文書数「36」が含まれている。これによれば、サブクラスタID「1」によって識別されるサブクラスタには、文書ID「4」、「5」、「7」、「8」、…、「300」によって識別される36の文書が属しており、これらの文書には代表文「亀裂が生じる」が含まれることが示されている。
また、分類結果には、クラスタID「1」に対応づけてサブクラスタID「2」、代表文「燃料に火が広がる」、文書ID「3,…,265」およびサブクラスタ内文書数「30」が含まれている。これによれば、サブクラスタID「2」によって識別されるサブクラスタには、文書ID「3」、…、「265」によって識別される30の文書が属しており、これらの文書には代表文「燃料に火が広がる」が含まれることが示されている。
また、分類結果には、クラスタID「1」に対応付けてサブクラスタID「3」、代表文「燃料が漏れる」、文書ID「1,2,3,4,6,…,220」およびサブクラスタ内文書数「40」が含まれている。これによれば、サブクラスタID「3」によって識別されるサブクラスタには、文書ID「1」、「2」、「3」、「4」、「6」、…、「220」によって識別される36の文書が属しており、これらの文書には代表文「燃料が漏れる」が含まれることが示されている。
なお、図20に示すように、対象クラスタに属する1の文書が複数のサブクラスタに属しても構わない。また、対象クラスタに属する文書であっても代表文を含まない文書は、サブクラスタには分類されない。これにより、図20に示すように、各サブクラスタ内文書数の合計がクラスタ内文書数より少なくなる場合がある。
次に、出力部39は、図20に示すような代表文分類部38による分類結果を出力する(ステップS9)。この場合、出力部39は、分類結果を表示することによりユーザに対して提示する。
ユーザは、出力部39によって出力された分類結果において例えば代表文を指定(選択)することで、当該代表文に対応するサブクラスタに属する文書を確認することができる。
上記したように本実施形態においては、対象クラスタに付与された特徴語を含む特徴文が当該対象クラスタに属する複数の文書から抽出され、当該特徴文の構文解析結果および予め定められた抽出ルールに基づいて、当該特徴文から代表文候補が抽出される。また、本実施形態においては、抽出された代表文候補が集約された集約代表文候補毎に代表度が算出され、当該代表度に基づいて対象クラスタにおける代表文が決定される。
これにより、本実施形態においては、対象クラスタに属する文書群の分類に利用することができる当該文書群の内容を適切に表す代表文を当該文書群から抽出することができる。つまり、本実施形態においては、ユーザによって指定された対象クラスタに対して特徴語ではなく代表文でラベリングすることが可能となる。したがって、本実施形態においては、対象クラスタに特徴語のみが付与されている場合と比較して、対象クラスタに属する文書群の内容の可読性を向上させることが可能となる。
また、本実施形態においては、決定された代表文を含む文書が属するサブクラスタが作成されることにより対象クラスタに属する文書群が細分類される。
これにより、本実施形態においては、ユーザは分類結果を確認することにより、容易に対象クラスタに属する文書の部分集合(サブクラスタ)の内容を把握し、所望の内容の文書を容易に探索することが可能となる。
なお、本実施形態においては、クラスタリング結果が予めクラスタリング結果格納部22に格納されているものとして説明したが、代表文抽出装置30が文書群に対してクラスタリング処理をするクラスタリング部を備える構成であっても構わない。
[第2の実施形態]
次に、図21を参照して、本発明の第2の実施形態について説明する。図21は、本実施形態に係る代表文抽出装置の主として機能構成を示すブロック図である。なお、前述した図2と同様の部分には同一参照符号を付してその詳しい説明を省略する。ここでは、図2と異なる部分について主に述べる。
また、本実施形態に係る代表文抽出装置のハードウェア構成は前述した第1の実施形態と同様であるため、適宜、図1を用いて説明する。
本実施形態においては、前述した第1の実施形態において説明した処理によって抽出される代表文を用いてFAQ(Frequently Asked Questions)を作成する点が、前述した第1の実施形態とは異なる。
図21に示すように、本実施形態に係る代表文抽出装置300は、クラスタリング部301およびFAQ作成部302を含む。本実施形態において、これらの各部301および302は、図1に示すコンピュータ10が外部記憶装置20に格納されているプログラム21を実行することにより実現されるものとする。
なお、本実施形態に係る代表文抽出装置30に含まれるクラスタリング結果格納部22に格納されている複数の文書は、各文書において自立語を含む文からなる質問に関する記述(第1の記述)および当該質問に対する回答に関する記述(第2の記述)を含む。また、クラスタリング結果格納部22には、文書集合に含まれる質問に関する記述に対するクラスタリング結果が格納されている。
また、本実施形態に係る代表文抽出装置30に含まれるクラスタID受付部31、特徴文抽出部32、構文解析部33、代表文候補抽出部34、代表文候補集約部35、代表度算出部36、代表文決定部37、代表文分類部38は、前述した第1の実施形態において説明した図4に示すステップS1〜ステップS9の処理に相当する処理(以下、代表文分類処理と表記)を実行する。この代表文分類処理においては、代表文が抽出され、当該代表文が付与されたサブクラスタが作成される。
クラスタリング部301は、クラスタリング結果格納部22に格納されているクラスタリング結果に対する代表文分類処理において作成されたサブクラスタ(第1のサブクラスタ)に属する文書群(複数の文書)の各々が属するサブクラスタ(第2のサブクラスタ)を作成する。つまり、クラスタリング部301は、代表文分類処理において作成されたサブクラスタに属する文書群を分類(クラスタリング)する。このとき、クラスタリング部301は、代表文分類処理において作成されたサブクラスタに属する文書群に含まれる回答に関する記述に基づいてクラスタリング処理を実行する。なお、クラスタリング部301によって作成されたサブクラスタには、当該サブクラスタに属する文書群の特徴を表す特徴語が付与される。この特徴語は、クラスタリング部301によって作成されたサブクラスタに属する文書群に含まれる回答に関する記述における単語(自立語)の出現頻度に基づいて決定される。
FAQ作成部302は、後述する質問に関する代表文(第1の代表文)および回答に関する代表文(第2の代表文)に基づいてFAQを作成する。なお、FAQ作成部302によって作成されたFAQは、FAQ出力部303によって出力される。
図22は、本実施形態に係る代表文抽出装置300に含まれるクラスタリング結果格納部22に格納されている複数の文書のデータ構造の一例を示す。
図22に示すように、クラスタリング結果格納部22に格納されている複数の文書(文書群)は、各文書において質問に関する記述および回答に関する記述を含む。
図22に示す例では、文書ID「4」によって識別される文書は、質問に関する記述「…。亀裂が生じる。…。」および回答に関する記述「…、ホースを新品に交換する。…。」を含む。
なお、図22に示す複数の文書においては、例えば文書がXML(eXtensible Markup Language)形式であれば当該XMLのタグ等により質問に関する記述および回答に関する記述を区別できる。
次に、図23のフローチャートを参照して、本実施形態に係る代表文抽出装置300の処理手順について説明する。
なお、上記したように代表文抽出装置300に含まれるクラスタリング結果格納部22には、文書集合に含まれる質問に関する記述に対するクラスタリング結果が格納されている。クラスタリング結果格納部22に格納されているクラスタリング結果のデータ構造自体は前述した第1の実施形態と同様である。このため、クラスタリング結果格納部22には、前述した図3に示すクラスタリング結果221が格納されているものとして説明する。
まず、クラスタリング結果格納部22に格納されているクラスタリング結果に対して代表文分類処理(前述した図4に示すステップS1〜ステップS9)が実行される(ステップS21)。なお、代表文分類処理においてクラスタID受付部31によって受け付けられたクラスタIDによって識別されるクラスタ(ユーザによって指定されたクラスタ)を対象クラスタと称する。ここでは、図3に示すクラスタリング結果221に含まれるクラスタID「1」によって識別されるクラスタが対象クラスタであるものとする。
また、ステップS21の代表文分類処理においては、特徴文抽出部32は、対象クラスタに属する文書群(複数の文書)に含まれる質問に関する記述から、対象クラスタに付与された特徴語を含む特徴文(第1の文)を抽出する。なお、この点以外については前述した第1の実施形態において説明した処理と同様であるためその詳しい説明を省略する。
代表文分類処理においては、対象クラスタに属する文書群から代表文(第1の代表文)が抽出され、当該代表文を含む文書が属するサブクラスタが作成される。以下、ステップS21の代表文分類処理において抽出された代表文を質問に関する代表文とする。また、ステップS21における代表文分類処理において作成されたサブクラスタを質問サブクラスタとする。
ここで、図24は、ステップS21の代表文分類処理における処理結果(分類結果)の一例を示す。なお、前述した図20と同様の部分については、詳しい説明を省略する。
図24に示すように、代表文分類処理における分類結果には、質問サブクラスタIDおよび質問に関する代表文が含まれる。なお、質問サブクラスタIDは、前述した図20に示すサブクラスタIDに相当する。また、質問に関する代表文は、前述した図20に示す代表文に相当する。
次に、ステップS21の代表文分類処理における分類結果に含まれる質問サブクラスタIDによって識別される質問サブクラスタの各々について以下のステップS22〜ステップS29の処理を実行する。
クラスタリング部301は、ステップS21の代表文分類処理における分類結果に含まれる質問サブクラスタIDによって識別される質問サブクラスタ(第1のサブクラスタ)に属する文書群(複数の文書)に対して、クラスタリング処理を実行する(ステップS22)。このとき、クラスタリング部301は、質問サブクラスタに属する文書群に含まれる回答に関する記述に基づいてクラスタリング処理を実行する。クラスタリング部301は、クラスタリング処理により質問サブクラスタに属する文書が属する複数のサブクラスタ(第2のサブクラスタ)を作成する。以下、クラスタリング部301によって作成された複数のサブクラスタの各々を回答サブクラスタと称する。クラスタリング部301によって作成された回答サブクラスタの各々には、当該回答サブクラスタを識別するための識別子(以下、回答サブクラスタIDと表記)が割り当てられる。
なお、回答サブクラスタには、当該回答サブクラスタに属する文書群の特徴を表す特徴語が付与される。回答サブクラスタに付与される特徴語は、当該回答サブクラスタに属する文書に含まれる回答に関する記述における自立語の出現頻度に基づいて決定される。
次に、クラスタリング部301によって作成された回答サブクラスタの各々について以下のステップS23〜ステップS28の処理が実行される。なお、ステップS23〜ステップS28の処理は、前述した図4に示すステップS2〜ステップS7の処理に相当する。
まず、特徴文抽出部32は、クラスタリング部301によって作成された回答サブクラスタに属する文書群(複数の文書)に含まれる回答に関する記述から、当該回答サブクラスタに付与された特徴語を含む特徴文(第3の文)を抽出する。
次に、構文解析部33は、特徴文抽出部32によって抽出された特徴文の各々を構文解析する(ステップS24)。
代表文候補抽出部34は、構文解析部33による構文解析結果および前述した第1の実施形態において説明した例えば第1〜第3の抽出ルールに基づいて、特徴文抽出部32によって抽出された特徴文(の構文解析結果)から代表文候補(第4の文)を抽出する(ステップS25)。
なお、上記したステップS23〜ステップS25の処理は、クラスタリング部301によって作成された回答サブクラスタに複数の特徴語が付与されている場合には当該特徴語の各々について実行される。
次に、代表文候補集約部35は、代表文候補抽出部34によって抽出された代表文候補の各々に含まれる自立語に基づいて、当該代表文候補を集約する(ステップS26)。代表文候補集約部35は、前述した第1の実施形態において説明した例えば第1〜第3の集約方法により、同様の意味内容を有する複数の代表文候補を集約代表文候補へ集約する。
代表度算出部36は、代表文候補集約部35によって集約された集約代表文候補毎に、回答サブクラスタに対する代表度を算出する(ステップS27)。代表度算出部36は、前述した第1の実施形態と同様に、例えば文書カバー率(またはスコア式)を用いて代表度を算出する。
次に、代表文決定部37は、代表度算出部36によって算出された代表度に基づいて、代表文候補集約部25によって集約された集約代表文候補の中から代表文(第2の代表文)を決定する(ステップS28)。この場合、代表文決定部37は、代表度算出部36によって算出された代表度が最上位の集約代表文候補を回答サブクラスタに対する代表文として決定する。
つまり、上記したステップS23〜ステップS28の処理(以下、代表文抽出処理と表記)においては、回答サブクラスタに属する文書群から1つの代表文が抽出される。以下、代表文抽出処理において抽出された代表文を回答に関する代表文とする。なお、回答サブクラスタには、回答に関する代表文を含む文書が分類される。
クラスタリング部301によって作成された全ての回答サブクラスタについてステップS23〜ステップS28の処理(代表文抽出処理)が実行されたか否かが判定される(ステップS29)。
全ての回答サブクラスタについて処理が実行されていないと判定された場合(ステップS29のNO)、上記したステップS23に戻って処理が繰り返される。これにより、全ての回答サブクラスタについて回答に関する代表文が抽出される。
一方、全ての回答サブクラスタについて処理が実行されたと判定された場合(ステップS29のYES)、ステップS21の代表文分類処理における分類結果(図24に示す分類結果)に含まれる質問サブクラスタIDによって識別される全ての質問サブクラスタについて上記したステップS22〜ステップS29の処理が実行されたか否かを判定する(ステップS30)。
全ての質問サブクラスタについて処理が実行されていないと判定された場合(ステップS30のNO)、上記したステップS22に戻って処理が繰り返される。
一方、全ての質問サブクラスタについて処理が実行されたと判定された場合(ステップS30のYES)、後述するステップS31の処理が実行される。
ここで、図25は、図24に示す分類結果に含まれる質問サブクラスタIDによって識別される全ての質問サブクラスタについてクラスタリング処理および代表文抽出処理(つまり、ステップS22〜ステップS29の処理)が実行された結果(処理結果)の一例を示す。
図25に示す例では、質問に関する代表文「亀裂が生じる」が付与された質問サブクラスタID「1」によって識別される質問サブクラスタに属する文書群に対するクラスタリング処理によって、回答サブクラスタID「1」および「2」によって識別される回答サブクラスタが作成されている。なお、回答サブクラスタID「1」によって識別される回答サブクラスタには特徴語として例えば「ホース」が付与されているものとする。また、回答サブクラスタID「2」によって識別される回答サブクラスタには特徴語として例えば「カバー」が付与されているものとする。
この場合、図25に示す例では、回答サブクラスタID「1」によって識別される回答サブクラスタに対して上記した代表文抽出処理(ステップS23〜ステップS28の処理)が実行されることによって、回答に関する代表文「ホースを新品と交換する」が抽出されている。なお、回答サブクラスタID「1」によって識別される回答サブクラスタには、文書ID「4,5,…,300」によって識別される15の文書が属している。
また、回答サブクラスタID「2」によって識別される回答サブクラスタに対して代表文抽出処理が実行されることによって、回答に関する代表文「カバーを取り付ける」が抽出されている。なお、回答サブクラスタID「2」によって識別される回答サブクラスタには、文書ID「7,8,…」によって識別される13の文書が属している。
ここでは、質問サブクラスタID「1」について説明したが、当該質問サブクラスタID「1」以外についても同様であるため、その詳しい説明を省略する。
次に、FAQ作成部302は、上記した図25に示す処理結果を参照して、FAQを作成する(ステップ31)。この場合、FAQ作成部302は、上記したステップS21の代表文分類処理において抽出された質問に関する代表文および上記した代表文抽出処理において抽出された回答に関する代表文を用いて、対象クラスタに関する質問および回答から構成されるFAQを作成する。
ここで、図26は、FAQ作成部302によって作成されたFAQの一例を示す。図26は、上記した図25に示す処理結果を参照して作成されたFAQの一例を示す。
図26に示すように、FAQ作成部302によって作成されたFAQには、図25に示す質問に関する代表文が質問として含まれ、当該質問に対応づけて回答に関する代表文が回答として含まれる。なお、FAQに含まれる質問および回答には、それぞれFAQ番号が割り当てられている。
図26に示す例では、FAQ作成部302によって作成されたFAQには、FAQ番号「1」に対応づけて図25に示す質問に関する代表文「亀裂が生じる」および回答に関する代表文「ホースを新品と交換する」が含まれる。
また、FAQ作成部302によって作成されたFAQには、FAQ番号「2」に対応づけて図25に示す質問に関する代表文「亀裂が生じる」および回答に関する代表文「カバーを取り付ける」が含まれる。
ここでは、FAQ番号「1」および「2」について説明したが、当該FAQ番号「1」および「2」以外についても同様であるため、その詳しい説明は省略する。
上記したようにFAQ作成部302によってFAQが作成されると、FAQ出力部303は、当該FAQを出力する(ステップS32)。つまり、FAQ出力部303は、上記した質問に関する代表文(第1の代表文)および回答に関する代表文(第2の代表文)を対応づけて出力する。
上記したように本実施形態においては、文書(例えば、クレーム文書等)に含まれる質問に関する記述(第1の記述)に対するクラスタリング結果に対して代表文分類処理(前述した第1の実施形態における処理)が実行されることにより質問に関する代表文が抽出される。また、本実施形態においては、代表文分類処理において作成された質問サブクラスタ(第1のサブクラスタ)に属する文書群に含まれる回答に関する記述(第2の記述)に対してクラスタリング処理が実行される。また、本実施形態においては、クラスタリング処理において作成された回答サブクラスタ(第2のサブクラスタ)に対して代表文抽出処理が実行されることにより回答に関する代表文が抽出される。また、本実施形態においては、代表文分類処理において抽出された質問に関する代表文および代表文抽出処理において抽出された回答に関する代表文を対応づけて含むFAQが作成され、出力される。
これにより、本実施形態においては、質問に関する記述および回答に関する記述を含む大量の文書(例えば、クレーム文書)からFAQを自動で作成することができるため、ユーザが例えば手作業により当該大量の文書を分類することによってFAQを作成する場合と比較して、当該FAQの作成作業の負荷を低減することが可能となる。
なお、本願発明は、上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、各実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。