次に、本発明を実施する形態について図面を参照して説明する。以下の各実施形態に記載されている具体的な構成は、本発明を実現可能な一つの具体例であり、本願発明の技術範囲はそれらには限定されない。
以下に説明する各実施形態において、「文章」は、単文であってもよく、複文であってもよい。
以下の各実施形態に例示する装置又はシステムは、2以上の物理的に離間した装置(情報処理装置等)が、有線又は無線又はそれらを組み合わせた任意の通信ネットワークを用いて通信可能に接続されることにより構成されてもよい。
まず、本発明の各実施形態に関する説明に先立って、本発明に関する技術的背景、及び、技術的課題等について、具体例を用いて説明する。
一般的に、文章の意味は、文章に記述されている語彙要素と、語彙要素同士の関係から構成される構造とに基づいて決定される。
これに対して、上記したように、上記関連技術(例えば、非特許文献1)において用いられる被覆率は、複数の文章において共通する語彙要素の有無(共通性)は捉えられる一方、文章の構造における違いを捉えることが困難である。このため、上記非特許文献1に開示された技術のように、含意認識において被覆率を用いる手法の多くは、被覆率が高いにも関わらず、対象文章に含意されない仮説文章について、含意関係を正しく判定できない場合がある。
文章の構造的な観点からは、対象文章が仮説文章を含意しない理由(要因)として、例えば、以下のような要因が考えられる。
即ち、対象文章と仮説文章とにおいて共通する部分構造である共通部分構造について、対象文章に含まれる共通部分構造間の関係と、仮説文章に含まれる共通部分構造間の関係とが異なることが、係る要因の一つになり得る。より具体的には、例えば、対象文章と仮説文章とにおいて共通部分構造が複数存在する場合、対象文章における各共通部分構造間の関係と、仮説文章における各共通部分構造間の関係とが異なることが、当該要因となり得る。
また、対象文章と仮説文章とにおける各共通部分構造について、それぞれの共通部分構造の子孫である部分構造(例えば部分木)が異なること(不一致)が、係る要因の一つとなり得る。
上記例示した要因は、共通部分構造に関する依存関係の相違(不一致)により、文の意味が変化することを表している。ここで、係る依存関係は、例えば、文を木構造により表した場合の、ノード間(あるいは部分木間)の関係を表す(以下、本願において同様)。
上記した共通部分構造に関する依存関係は、例えば、特定の共通部分構造と他の共通部分構造とが直接接続される接続関係を含んでもよい。また、当該共通部分構造に関する依存関係は、例えば、特定の共通部分構造と他の共通部分構造との間に、任意の部分構造が介在する接続関係を含んでもよい。
例えば、上記非特許文献(例えば、非特許文献2及び非特許文献3)に開示された技術は、対象文章と仮説文章とに含まれる共通部分構造に関する依存関係を考慮しない。しかしながら、上記したように、共通部分構造に関する依存関係は、文章の間の含意関係に影響を与える要因となり得る。即ち、係る共通部分構造に関する依存関係を考慮することは、対象文章と、仮説文章との間の含意関係の適切な判定に有効である。以下、上記について、具体例を用いて更に説明する。
まず、対象文章における仮説文章の被覆率が高いにも関わらず、当該対象文章が当該仮説文章を含意しない場合について、具体例を用いて説明する。以下、具体例として、対象文章(T1)が、「近年スーパーでも見かけるルッコラはホウレンソウを小型にしたような緑黄色野菜でごまのような味がする。」であることを想定する。また、仮説文章(H1)が、「ルッコラはホウレンソウのような味がする」であることを想定する。
上記対象文章T1に含まれる各文節ごとに、当該文節の意味を代表する形態素の原形を、以下の代表形態素列“T1−M”のように列挙することが可能である。即ち、代表形態素列“T1−M”は、「スーパー、見かける、ルッコラ、ホウレンソウ、小型、する、野菜、ごま、味、する」である。同様に、仮説文章H1に対する代表形態素列“H1−M”は、「ルッコラ、ホウレンソウ、味、する」である。
代表形態素列“H1−M”は、全ての要素が代表形態素列“T1−M”のいずれかの要素と共通である。即ち、代表形態素列“T1−M”は、代表形態素列“H1−M”の要素をすべて含む。これより、仮説文章H1は、対象文章T1に完全に被覆されている。この場合、対象文章T1及び仮説文章H1の代表形態素における被覆率は最大(被覆率:“1”)であるが、対象文章T1は仮説文章H1を含意しない。
例えば、上記非特許文献1に開示されている技術は、主に被覆率に基づいて文章の間の含意関係を判定することから、上記例示する対象文章T1と仮説文章H1との間の含意関係を正しく判定することが困難な場合がある。
次に、対象文章T1と仮説文章H1とを具体例として、上記各非特許文献に開示された関連技術が、対象文章と仮説文章との含意関係に影響する文章の構造(部分)を特定することが困難であることを説明する。
まず、上記対象文章T1及び仮説文章H1を、日本語の文法に基づいて、それぞれ文節単位の係り受けからなる木構造に変換した木を、木T1、木H1とする。木T1及び木H1を構成するノード(木構造における節)には、それぞれの文章(T1、H1)の各文節を意味的に代表する形態素が、ラベルとして付与される。
なお、以下の説明においては、文字列を用いて木構造を表現する場合、当該木構造を行きがかり順(pre−order)に走査して得られるノード列に含まれる各ノードは、当該ノードに付与されたラベルを用いて表される。また、一対の括弧開き記号と、括弧閉じ記号との間に、あるノードを先頭(部分木の根)として、当該ノードを含む子孫(子ノード)により構成される部分木を表す。
例えば、上記方法により文字列を用いて表された木T1は、「(する(ルッコラ(見かける(スーパー)))(味(ごま(野菜(する(ホウレンソウ)(小型))))))」と表される(図10参照)。
木T1の根ノードは「(する)」であり、根ノードの子ノードは左から順に「(ルッコラ)」と「(味)」の2個である。ノード「(味)」は、自身を構成するノードを含めて、子孫ノードを6個有する。
同様に、文字列を用いて表された木H1は、「(する(ルッコラ)(味(ホウレンソウ)))」と表される(図11参照)。
上記非特許文献2に開示された方法は、木T1と木H1との間の共通部分木が、木H1において占める割合を用いることにより、対象文章T1と仮説文章H1との間の含意関係を識別する。上記非特許文献2は、共通部分木が占める割合が大きいほど、対象文章が仮説文章を含意する場合が多いという仮説に基づいている。
しかし、上記非特許文献2に開示された手法は、対象文章及び仮説文章における共通部分木と異なる部分の構造を十分考慮しない。上記具体例を用いて説明すると、木H1は木T1の部分木のみにより構成されていることから、木H1において共通部分木が占める割合は最大である。しかしながら、対象文章T1は仮説文章H1を含意しない。これより、上記非特許文献2に開示された手法は、係るT1とH1との間の含意関係を正しく判定できない可能性がある。
以上より、仮説文章を表す木構造と、対象文章を表す木構造との間の共通の木構造(部分木)が、対象文章において占める割合を特徴量とした場合、正しい含意判定が困難な場合がある。また、上記非特許文献2に開示された方法は、共通部分構造の割合にのみ着目していることから、対象文章又は仮説文章において、含意関係に影響を与える部分(構造)を特定することが困難である。
次に、非特許文献3に開示された手法は、機械学習による含意判定に用られる識別器の入力として、以下の特徴量を用いる。即ち、係る特徴量は、対象文章を表す木構造を、仮説文章を表す木構造に変換する際に発生する操作(編集操作)を表す特徴量である。なお、係る木構造の編集操作は、例えば、ノードの置換、削除、挿入、部分木の移動などを含む。
上記対象文章T1と仮説文章H1とを用いて説明する。木T1から木H1に変換する際に生じる編集操作は、例えば、木T1における4個のノード(「(する)」、「(ルッコラ)」、「(味)」、「(ホウレンソウ)」)の置換を含む。また、当該編集操作は、例えば、木T1から、「(見かける)」、「(スーパー)」、「(ごま)」、「(野菜)」、「(する)」、「(小型)」の6個のノードを削除する操作を含む。
ここで、対象文章T1が仮説文章H1を含意しない理由の一つは、木T1における共通部分木「(する(ルッコラ)(味(ホウレンソウ)))」と「(ホウレンソウ)」との間に、部分木「(ごま(野菜(する(小型))))」が存在することである。木T1のその他の部分である「(見かける(スーパー))」は、木T1と木H1との間の含意関係に大きな影響を及ぼさない。
上記非特許文献3は、対象文章及び仮説文章を表す木構造において、部分木の移動やノードの置換操作等により得られる共通部分構造に着目する。しかしながら、上記非特許文献3は、各文書において共通部分構造の間に存在する部分(例えば、上記T1における「(ごま(野菜(する(小型))))」)と、他の部分(例えば、上記T1における「(見かける(スーパー))」)とを区別しない。このため、上記非特許文献3は、特定の対象文章及び仮説文章について、含意関係に大きく影響する要素を特定することが困難である。
上記したように、上記非特許文献2及び非特許文献3に開示された技術は、対象文章における共通の各部分構造同士の関係と、仮説文章における共通の各部分構造同士の関係との間の相違を十分考慮していない。例えば、上記具体例においては、係る相違は、木T1と木H1とのそれぞれにおいて、共通部分木「(する(ルッコラ)(味(ホウレンソウ)))」と「(ホウレンソウ)」との間のパスに存在する部分木に現れる。
また、上記非特許文献2及び非特許文献3に開示された技術は、対象文章における共通の各部分構造の子孫ノードと仮説文章における共通の各部分構造の子孫ノードとの間の相違を十分考慮していない。例えば、上記具体例においては、係る相違は、木T1と木H1とのそれぞれにおける、共通部分木「(する(ルッコラ)(味(ホウレンソウ)))」と「(ホウレンソウ)」との子孫ノードに現れる。
以上より、上記各非特許文献に開示された関連技術は、被覆率が高い仮説文章を含意しない対象文章に対して、正しい含意関係を判定することが困難である。また、上記各非特許文献に開示された関連技術は、文章の間の含意関係に影響を与える要素(木構造におけるノードや部分木)を特定することが困難である。以下、上記のような問題を解決可能な本発明の実施形態について説明する。
<第1の実施形態>
次に、本願発明を実施する第1の形態について図面を参照して詳細に説明する。
図1は、本発明の第1の実施形態に係る、テキスト含意認識装置の機能的な構成を例示するブロック図である。
テキスト含意認識装置100は、対象文章と仮説文章とを入力として、対象文章が仮説文章を含意するか否かを判定可能な装置である。
第一の実施の形態に係るテキスト含意認識装置100は、構文解析部101、共通部分構造抽出部102、特徴量抽出部103、及び、判定部104を備える。なお、本実施形態におけるテキスト含意認識装置100は、入力装置105、及び、出力装置106と、任意の通信手段(通信ネットワークや通信回線等)を用いて通信可能に接続されていてもよい。
構文解析部101は、入力された仮説文章と対象文章とについて、それぞれ依存構造を解析する。これにより、構文解析部101は、当該仮説文章と当該対象文章とを、それぞれ依存構造を表す木構造に変換する。この場合、構文解析部101は、例えば、入力された仮説文章と対象文章とに対して、周知の技術を用いて、形態素解析や構文解析等を実行してもよい。
なお、本実施形態において、「木構造」は、1以上の節点(ノード)の間を枝(リンク、エッジ)により接続した構造である。係る木構造における各ノードは、子孫ノード、あるいは、先祖ノードを有してもよい。ここで、子孫ノードを有するノードは、当該子孫ノードから見た場合の先祖ノードである。また、先祖ノードを有するノードは、当該先祖ノードから見た場合の子孫ノードである。係る木構造は、先祖ノードを持たない根ノードを有してもよい。なお、当該木構造を構成する任意の1以上のノードにより構成される当該木構造の一部を、部分木と称する場合がある。係る「木構造」は、周知の一般的なデータ構造等を用いて実現可能である。また、当該仮説文章及び当該対象文章の依存構造は、それぞれの文章を分解した要素(例えば、形態素、単語、文節等)の間の関係を表す構造である。
以下に例示する具体例は、日本語の文法に基づいて、日本語の文章を解析する例であるが、本実施形態はこれには限定されない。例えば、文章の構造(構文や係り受け関係等)を解析可能な言語であれば、日本語以外の言語にも適用可能である。
具体的には、構文解析部101は、例えば、「近年スーパーでも見かけるルッコラはホウレンソウを小型にしたような緑黄色野菜でごまのような味がする。」という文章を、文節単位の依存構造を表す木構造に変換する。そして、構文解析部101は、文節を意味的に代表する形態素の原形を、係る木構造の各ノードに、ラベルとして付与する。この場合、上記例文は、「(する(ルッコラ(見かける(スーパー)))(味(ごま(野菜(する(ホウレンソウ)(小型)))))))」に変換される。
共通部分構造抽出部102は、構文解析部101が変換した対象文章を表す木構造と仮説文章を表す木構造とにおいて共通する部分構造(共通部分構造)を抽出する。係る共通部分構造は、上記各文章を表す木構造における部分木であってもよい。共通部分構造が複数存在する場合、共通部分構造抽出部102は、例えば、含まれるノードの数が最大である共通部分構造から順に、重複しないように共通部分構造を選択する。
共通部分構造抽出部102は、具体的には、例えば、対象文章を表す木構造「(する(ルッコラ)(味(ごま)))」と、仮説文章を表す木構造「(する(ルッコラ)(味(ホウレンソウ)))」とから、共通部分構造として「(する(ルッコラ)(味))」を抽出する。
特徴量抽出部103は、対象文章を表す木構造と、仮説文章を表す木構造と、それらにおける共通部分構造とを用いて、対象文章と仮説文章との間の含意関係を判定可能な特徴量を抽出する。
本実施形態における特徴量は、対象文章あるいは仮説文章を表す構造(例えば木構造)における共通部分構造に関する情報である。当該共通部分構造に関する情報は、対象文章あるいは仮説文章を表す構造における、1以上の共通部分構造の間の依存関係を表す情報、及び、共通部分構造と他の部分構造との間の依存関係を表す情報、の少なくとも何れかを含むものとする。
共通部分構造間の依存関係を表す情報は、例えば、1以上の共通部分構造の間に存在する他の部分構造と、共通部分構造との間の接続関係を表す情報を含んでもよい。また、共通部分構造間の依存関係を表す情報は、1以上の共通部分構造の間に存在する他の部分構造自体の情報(木構造に含まれるノードの数やノードの属性等)等を含んでもよい。
共通部分構造と他の部分構造との間の依存関係を表す情報は、例えば、共通部分構造と他の部分構造との間の接続関係を表す情報を含んでもよい。また、共通部分構造と他の部分構造との間の依存関係を表す情報は、当該他の部分構造自体の情報(木構造に含まれるノードの数やノードの属性等)等を含んでもよい。
より具体的には、特徴量抽出部103は、例えば、対象文章及び仮説文章における、各共通部分構造同士の依存関係の差異(一致または不一致)を特徴量として抽出してもよい。また、特徴量抽出部103は、例えば、各共通部分構造間に存在する部分構造及び各共通部分構造の子孫からなる部分構造におけるノード数及びノードの属性等を、特徴量として抽出してもよい。
以下、簡単な具体例を用いて、係る特徴量について説明する。以下の具体例においては、対象文章を表す木構造が「(する(ルッコラ)(味(ごま)))」であり、仮説文章を表す木構造「(する(ルッコラ)(味(ホウレンソウ)))」であることを想定する。この場合、対象文章を表す木構造及び仮説文章を表す木構造における共通部分構造は、「(する(ルッコラ))」及び「(味)」である。
特徴量抽出部103は、例えば、対象文章を表す木構造と、仮説文章を表す木構造と、対象文章を表す木構造及び仮説文章を表す木構造における共通部分構造と、を用いて、以下の特徴量を抽出する。
即ち、上記具体例の場合、特徴量抽出部103は、例えば、「共通部分構造における依存関係の不一致数は0」、という特徴量を抽出する。
また、特徴量抽出部103は、例えば、「対象文章における共通部分構造間の部分構造における総ノード数は0」、という特徴量を抽出する。
また、特徴量抽出部103は、例えば、「仮説文章における共通部分構造間の部分構造における総ノード数は0」、という特徴量を抽出する。
また、特徴量抽出部103は、例えば、「対象文章における共通部分構造間の部分構造における述語ノード数は0」、という特徴量を抽出する。なお、係る「述語ノード」は、例えば、当該ノードの属性である文節に、述語が含まれるノードを表す。
また、特徴量抽出部103は、例えば、「仮説文章における共通部分構造間の部分構造における述語ノード数は0」、という特徴量を抽出する。
また、特徴量抽出部103は、例えば、「共通部分構造の子孫からなる部分構造の不一致数は1」、という特徴量を抽出する。
また、特徴量抽出部103は、例えば、「共通部分構造の子孫において(ホウレンソウ)と(ごま)という差異の数が1」という特徴量を抽出する。
なお、特徴量抽出部103は、上記に限定されず、他の任意の特徴量を抽出してもよい。
判定部104は、特徴量抽出部103が抽出(出力)した特徴量と、所定の識別規則とに基づいて、対象文章が仮説文章を含意するか否かを判定する。
判定部104は、例えば、サポートベクターマシン等の周知のパターン認識技術を用いることにより、対象文章と仮説文章とから抽出された特徴量からなる特徴ベクトルと、識別モデルとに基づいて、当該対象文章と仮説文章との間の含意関係を判定してもよい。
例えば、サポートベクターマシンを用いて含意関係を判定する場合、判定部104は、対象文章及び仮説文章から抽出された特徴量からなる特徴ベクトルと、識別モデルによる識別超平面とを用いて、対象文章と仮説文章との間の含意関係を判定することができる。より具体的には、判定部104は、例えば、上記特徴ベクトルが、上記識別超平面により分割される超空間において、含意側に存在する場合、上記対象文章が上記仮説文章を含意すると判定してもよい。
入力装置105は、テキスト含意認識装置100に対して対象文章及び仮説文章を入力可能な任意の機器である。入力装置105は、例えば、キーボードやマウス等の入力機器そのものであってもよく、それらの入力機器が接続された情報処理装置であってもよい。この場合、入力装置105は、当該入力機器を介して入力された対象文章及び仮説文章等を、テキスト含意認識装置100に対して送信してもよい。入力装置105は、上記に限定されず、対象文章及び仮説文章等を保持する任意のデータベースや、ファイルサーバ等であってもよい。
出力装置106は、テキスト含意認識装置100における含意認識の結果等を出力可能な、任意の機器である。出力装置106は、ディスプレイやプリンタ等の出力機器そのものであってもよく、それらの出力機器が接続された情報処理装置であってもよい。この場合、出力装置106は、テキスト含意認識装置100から含意認識の結果等を受け付け(受信し)、係る結果を当該出力機器に対して出力してもよい。
なお、上記入力装置105、及び、出力装置106と、テキスト含意認識装置100との間を接続する通信手段は、周知の技術を適宜採用してよいので、詳細な説明を省略する。
次に、上記のように構成されたテキスト含意認識装置100の動作について、図2及び図3のフローチャートを参照して説明する。
構文解析部101は、入力装置105から対象文章及び仮説文章が入力されると、対象文章及び仮説文章のそれぞれを構文解析し、依存関係を表すことが可能な木構造に変換する(ステップS201)。以下、係る依存関係を表すことが可能な木構造を、「依存構造」と称する場合がある。
より具体的には、構文解析部101は、入力された対象文章及び仮説文章を形態素解析し、その結果を用いて構文解析を実行する。この場合、構文解析部101は、各文節間の係り受け関係に基づいて、入力された文章を木構造に変換する。
次に、構文解析部101は、依存構造の各単位(木構造を構成するノード)にラベルを付与し、ラベル付き木構造を生成する(ステップS202)。
日本語により記載された文章を、日本語の文法に基づいて、依存構造を表す係り受け構造に変換する例について説明する。例えば、構文解析部101は、「ルッコラはホウレンソウのような味がする。」という文章を、「ルッコラは、ホウレンソウのような、味が、する。」という文節に区切る。そして、構文解析部101は、各文節に対して、当該文節を意味的に代表する形態素をラベルとして付与する。次に、構文解析部101は、区切られた文節間の係り受け関係と文節のラベルとを用いて、上記文章を「(する(ルッコラ)(味(ホウレンソウ)))」という木構造に変換する。この際、構文解析部101は、木構造を構成する各ノードの属性として、上記のように区切られた各文節(あるいは、当該文節を代表する形態素)を設定する。
次に、共通部分構造抽出部102は、上記ステップS202において生成した対象文章を表す木構造と、仮説文章を表す木構造とから、それらに共通する同型の部分構造の候補(以下「共通部分構造候補」と称する場合がある)を検出する。そして、共通部分構造抽出部102は、検出した0個以上の共通部分構造候補のうち、含まれるノード数が最大のものから、重複しないように、共通部分構造を抽出する(ステップS203)。
以下、図3を参照して、ステップS203の動作について詳細に説明する。
図3は、本発明の第1の実施形態に係るテキスト含意認識装置100において、共通部分構造を抽出する動作の具体例を示すフローチャートである。
共通部分構造抽出部102は、まず、抽出した共通部分構造を要素として格納する配列を初期化する(ステップS301)。
次に、共通部分構造抽出部102は、対象文章を表すラベル付き木構造を構成する全てのノードから、1個ずつノードを選択して、以下のステップS303乃至307の処理を繰り返す(ステップS302乃至ステップS308)。
まず、共通部分構造抽出部102は、仮説文章を表すラベル付き木構造から、ステップS301において選択したノードと同じラベルが付与されたノードを探索する(ステップS303)。
探索の結果、仮説文章を表す木構造に同じラベルのノードが存在しない場合は(ステップS304においてNO)、共通部分構造抽出部102は、ステップS302に戻って処理を続行し、対象文章から次のノードを選択する。
探索の結果、仮説文章を表す木構造において同じラベルのノードが検出された場合(ステップS304においてYES)、共通部分構造抽出部102は、対象文章から、ステップS301において選択されたノードを根ノードとする部分構造(例えば部分木)をコピーする(ステップS305)。
次に、共通部分構造抽出部102は、ステップS303において検出されたノードを根ノードとする(仮説文章における)部分構造と、ステップS305において対象文章からコピーした部分構造とを、根ノードからそれぞれの階層毎に比較する。そして、共通部分構造抽出部102は、各部分構造において異なる(不一致である)ノードを、ステップS305においてコピーした部分構造から削除する(ステップS306)。より具体的には、共通部分構造抽出部102は、ステップS303において検出されたノードを根ノードとする部分構造と、ステップS305においてコピーした部分構造との間で、不一致となるノード及びその子孫である部分木を抽出する。そして、共通部分構造抽出部102は、抽出された当該部分木を、ステップS305においてコピーした部分構造から削除する。
次に、共通部分構造抽出部102は、ステップS305においてコピーした部分構造から不一致ノード等を削除(上記ステップS306)した結果として得られる部分構造(共通部分構造候補)を、ステップS301において作成した配列に格納する(ステップS307)。
次に、共通部分構造抽出部102は、ステップS301に戻って、対象文章を表す木構造から、次のノードを選択する(ステップS301)。
全てのノードについて上記処理が実行された場合(ステップS308)、共通部分構造抽出部102は、ステップS301において作成した配列に格納された全要素(共通部分構造候補)のうち、他の要素の一部(例えば、部分木やノード)と重複する要素を削除する(ステップS309)。
より具体的には、共通部分構造抽出部102は、上記配列の特定の要素に格納された共通部分構造候補の根ノードが、上記配列の他の要素に格納された共通部分構造候補の根ノード以外に含まれる場合、当該特定の要素を、上記配列から削除する。
なお、上記説明においては、一具体例として、抽出した共通部分構造を配列に格納しているが、本実施形態はこれに限定されない。共通部分構造抽出部102は、抽出した共通部分構造を任意のデータ構造を用いて保持してよい。
図4は、本発明の第1の実施形態に係るテキスト含意認識装置において抽出された共通部分構造の具体例を示す図である。
図4に示す具体例においては、対象文章T1が、「近年スーパーで見かけるルッコラはホウレンソウを小型にしたような緑黄色野菜でごまのような味がする。」であることを想定する。また、仮説文章H1が、「ルッコラはホウレンソウのような味がする」であることを想定する。
この場合、対象文章T1を表す木T1は、「(する(ルッコラ(見かける(スーパー)))(味(ごま(野菜(する(ホウレンソウ)(小型))))))」となる。また、仮説文章H1を表す木H1は、「(する(ルッコラ)(味(ホウレンソウ)))」となる。
共通部分構造抽出部102は、木T1及び木H1に含まれる同型な共通部分構造のうち、含まれるノード数が最大のものから順に、共通部分構造候補を抽出する。その結果として、部分構造C1「(する(ルッコラ)(味))」と、部分構造C2「(ホウレンソウ)」と、が共通部分構造として抽出される。
再び、図2に例示するフローチャートに戻ると、特徴量抽出部103は、共通部分構造抽出部102が抽出した各共通部分構造と、対象文章及び仮説文章を変換した木構造とを用いて、特徴量を抽出する(ステップS204)。係る特徴量は、対象文章と、仮説文章との間の含意関係を判定する際に用いられる。
特徴量抽出部103は、対象文章及び仮説文章における、1以上の共通部分構造の間の依存関係に基づいて、上記特徴量を抽出してよい。また、特徴量抽出部103は、対象文章及び仮説文章における共通部分構造と、共通部分構造とは異なる他の部分構造と、の間の依存関係に基づいて、上記特徴量を抽出してよい。即ち、特徴量抽出部103は、対象文章及び仮説文章における、1以上の共通部分構造の間の依存関係に基づいて、及び、共通部分構造と、他の部分構造との間の依存関係、の少なくとも何れかに基づいて、上記特徴量を抽出する。
ここで、1以上の共通部分構造の間の依存関係は、それぞれの文章における共通部分構造と、共通部分構造間に介在する部分構造と、の間の依存関係を含んでもよい。また、1以上の共通部分構造の間の依存関係は、それぞれの文章における共通部分構造間に介在する他の部分構造自体の構造や、当該他の部分構造に含まれるノードの属性等を含んでもよい。
また、共通部分構造と、共通部分構造とは異なる他の部分構造との間の依存関係は、それぞれの文章において、共通部分構造間に介在しない、共通部分構造の子孫(部分木あるいはノード)の構造や属性等を含んでもよい。
より具体的には、特徴量抽出部103は、対象文章に含まれる各共通部分構造同士の関係と、仮説文章に含まれる各共通部分同士の関係との間の差異を検出し、特徴量として出力してもよい。また、特徴量抽出部103は、各共通部分構造の間に存在する部分構造から特徴量を抽出してもよい。また、特徴量抽出部103は、各共通部分構造の子孫からなる部分構造から、特徴量を抽出してもよい。
例えば、対象文章が上記対象文章T1であり、仮説文章が上記仮説文章H1である場合を想定する。この場合、木T1における部分木C1と部分木C2との間のパスにより構成される部分木(以下「部分木A1」と称する)は、「(ごま(野菜(する)))」である。なお、木H1においては、部分木C1と部分木C2との間には他の部分構造(部分木)は存在しない。なお、以下においては、A1の代わりに(あるいはA1に加えて)、木T1における部分木C1(部分構造C1)と部分木C2(部分構造C2)との間のパスに存在する部分木(以下、「部分木X1」と称する)は「(ごま(野菜(する(小型))))」を用いてもよい。
特徴量抽出部103は、例えば、以下の各部分木を用いて、上記特徴量を抽出する。即ち、係る特徴量の抽出に用いられる部分木は、上記部分木A1であってもよい。また、係る特徴量の抽出に用いられる部分木は、木H1における部分木C1又は部分木C2の子孫であり、共通部分構造間にない各部分木であってもよい。また、係る特徴量の抽出に用いられる部分木は、木T1における部分木C1又は部分木C2の子孫であり、共通部分構造間にない各部分木であってもよい。
当該特徴量は、例えば、上記部分木に含まれるノード数、それらの部分木を構成する各ノードに設定されたラベル、及び、各ノードに属性として設定された文節の構成要素のいずれか1以上を含んでもよい。また、当該特徴量は、木T1又は木H1について、根ノードから部分木C1あるいは部分木C2までのノードの数を含んでもよい。また、当該特徴量は、木T1における部分木C1と部分木C2との間の依存関係、あるいは、木H1における部分木C1と部分木C2との間の依存関係の差異(一致または不一致)に関する情報を含んでもよい。
上記はあくまで一例であり、本実施形態における特徴量は上記には限定されない。即ち、特徴量抽出部103は、木T1において共通部分構造の間(C1とC2との間)に存在するA1と、C1(あるいはC2)との間の依存関係(接続関係)に基づいて、任意の特徴量を抽出してもよい。また、特徴量抽出部103は、A1自体の構造や、A1を構成するノードの属性等から、任意の特徴量を抽出してよい。
また、特徴量抽出部103は、木T1における部分木C1又は部分木C2の子孫であり、共通部分構造間にない各部分木と、C1(あるいはC2)との間の依存関係(接続関係)に基づいて、任意の特徴量を抽出してもよい。木T1における部分木C1又は部分木C2の子孫であり、共通部分構造間にない各部分木は、例えば、(見かける(スーパー))及び、(小型)である。
各文章に共通部分構造が3個以上含まれる場合、特徴量抽出部103は、それら全ての組み合わせについて特徴量を抽出してもよい。また、特徴量抽出部103は、木T1における共通部分構造の依存構造に基づく組み合わせについて特徴量を抽出してもよい。
次に、判定部104は、ステップS204において特徴量抽出部103が抽出した特徴量からなる特徴ベクトルが、特定の識別条件を満たすか否かを確認する(ステップS205)。
ステップS205において識別条件を満たす場合は(ステップS205においてYES)、判定部104は、対象文章が仮説文章を含意すると判定する(ステップS206)。
ステップS205において識別条件を満たさない場合は(ステップS205においてNO)、判定部104は、対象文章が仮説文章を含意しないと判定する(ステップS207)。
判定部104は、例えば、ステップS205乃至ステップS207において、サポートベクターマシンを用いて、特定の識別モデルを判定条件として、対象文章と仮説文章との間の含意関係を判定してもよい。この場合、例えば、判定部104は、上記ステップS204において抽出した特徴ベクトルが識別超平面により分割された空間のうち含意側に属する場合、対象文章が仮説文章を含意すると判定する。判定部104は、上記ステップS204において抽出した特徴ベクトルが上記識別超平面により分割された空間のうち(含意側でない)もう一方の空間に属する場合は、対象文章が仮説文章を含意しないと判定する。なお、判定部104は、サポートベクターマシン以外の識別器を用いてもよい。
次に、対象文章が、被覆率が高い仮説文章を含意しない場合に、本実施形態におけるテキスト含意認識装置100は、含意関係を正しく判定可能であることを説明する。また、本実施形態におけるテキスト含意認識装置100が文章間の含意関係に影響を与える部分を特定する特徴量を抽出する方法について説明する。
対象文章T1を表す木T1と、仮説文章H1を表す木H1の共通部分構造は、上記部分木C1及び上記部分木C2である。
特徴量抽出部103は、上記部分木A1を参照して、当該部分木A1を構成するノードの属性から特徴量を抽出する。より具体的には、特徴量抽出部103は、例えば、ノード「(野菜)」の属性である文節「緑黄色野菜で」から、「「で」という格助詞が1個存在する」などの特徴量を抽出する。即ち、対象文章T1においては、共通部分構造間(即ち、C1とC2との間)に存在する部分構造(具体的には、当該部分構造の属性である文節)に、格助詞が出現する。この場合、当該部分構造の子孫にあたる共通部分構造と、当該部分構造の祖先にあたる共通部分構造との間の関係が変わる。
例えば、判定部104は、識別条件に「共通部分構造間の部分木に格助詞「で」が1個以上含まれる場合、非含意であると判定する」という条件を設定することにより、上記関係の変化を捉えることが可能である。このような識別条件が設定された場合、判定部104は、対象文章T1は仮説文章H1を非含意であると正しく判定可能である。即ち、特徴量抽出部103において抽出した特徴量(例えば、「共通部分構造C1とC2との間に存在する部分木に格助詞が出現」)と、上記識別条件とに基づいて、判定部104は、対象文章T1と仮説文章H1との間の含意関係を判定可能である。
また、係る識別条件は、格助詞「で」の有無のみに限定されない。係る識別条件は、例えば、特徴量として抽出する対象(ノードあるいはノードの属性等)が文章の中で現れる位置を、共通部分構造との関係を用いて指定する条件であってもよい。係る識別条件は、例えば、特徴量として抽出する対象の位置と、共通部分構造との相対的な位置を指定する条件であってもよい。係る識別条件を用いることにより、含意関係に影響を与える部分を指定する特徴量を設定することが可能である。
なお、上記した識別条件の具体例は、日本語の文法に基づいて、日本語の文章を解釈する例であるが、本実施形態はこれには限定されない。係る識別条件は、例えば、対象とする文章の言語毎に、当該言語に関する文法等に基づいて、適宜定められてよい。即ち、上記した判定部104の動作は、言語に依らず適用可能である(例えば、日本語によらず、他の言語にも適用可能である)。
更に、本実施形態におけるテキスト含意認識装置100においては、これらの識別条件は、明示的に与えられなくともよい。即ち、本実施形態におけるテキスト含意認識装置100においては、周知の機械学習を用いて識別モデルを作成することにより、判定部104が識別条件を学習可能である。
この場合、テキスト含意認識装置100は、例えば、ラベル(「含意」または「非含意」)が付与された対象文章及び仮説文章と、それらの文章に対する識別処理(含意判定)に用いる特徴量とを教師データとして用意し、周知の機械学習を実行することにより、識別モデルを生成することが可能である。なお、当該識別モデルは、例えば、テキスト含意認識装置100のユーザ等が、予め生成しておき、テキスト含意認識装置100に対して設定してもよい。なお、このような機械学習を用いる方法を採用することにより、対象とする文章の言語によらず(即ち日本語などの特定の言語に限定されることなく)、識別モデルを生成することが可能である。
上記したように、判定部104は、当該識別モデルにより、上記ステップS205にいて識別条件を満たすか否かを判定可能である。即ち、判定部104は、事前に学習した識別モデルを用いて、未ラベルの対象文章と仮説文章の組に対する含意関係を識別可能である。
上記したような識別条件(すなわち、識別モデル)の学習により、本時実施形態におけるテキスト含意認識装置100によれば、あるコーパスに含まれる対象文章と仮説文章とについて、含意関係に影響を与える得る特徴量が特定される。例えば、ある特徴量を用いて機械学習を実行することにより生成された識別モデルを用いて、対象文章と仮説文章との含意関係を判定した結果から、当該特徴量が含意関係に影響を与えるか否かを特定することが可能である。また、本時実施形態におけるテキスト含意認識装置100は、上記特徴量に基づいて、含意関係に影響を与える部分構造を特定可能である。
以上説明したように、本実施形態における特徴量抽出部103は、対象文章を表す木構造と、仮説文章を表す木構造とに含まれる共通部分構造に注目し、共通部分構造同士の関係から特徴量を抽出する。また、特徴量抽出部103は、対象文章及び仮説文章を表すそれぞれの木構造における、共通部分構造の子孫ノードの関係(例えば、子孫ノード同士の差異等)に基づいて特徴量を抽出する。
本実施形態における判定部104は、これらの特徴量と、これらの特徴量に関する識別条件とに基づいて、対象文章と、仮説文章との間の含意関係を識別する。このため、判定部104は、例えば、対象文章に対する被覆率は高いものの、対象文章に含意されない仮説文章について、それらの文章間の共通部分構造に関する差異の程度等の特徴量に基づいて、正しい含意関係を判定可能である。
また、本実施形態におけるテキスト含意認識装置100は、対象文章と仮説文章とを表すそれぞれの木構造における共通部分構造同士の関係から抽出される特徴量と、共通部分構造の子孫ノードの差異から抽出される特徴量とを区別することが可能である。
このため、本実施形態におけるテキスト含意認識装置100は、対象文章と仮説文章とにおける各共通部分構造同士の関係が含意関係に影響を与えるのか、又は、各共通部分構造の子孫ノードが含意関係に影響を与えるのかを区別することが可能である。よって、本実施形態におけるテキスト含意認識装置100は、含意関係に影響を与える部分構造を特定可能である。
また、本実施形態における共通部分構造抽出部102は、対象文章と仮説文章とを変換したそれぞれの木構造から共通部分構造を選択する場合、当該共通部分構造に含まれるノード数が大きい順に、重複しないように選択する。例えば、対象文章を表す木構造と、仮説文章を表す木構造とにおいて、共通のラベルを持つノードが複数出現する場合(例えば、被覆率が高い場合等)を想定する。このような場合、本実施形態におけるテキスト含意認識装置100は、共通部分構造が細分化されることによる共通部分構造の組み合わせ数の増加を、抑えることが可能である。また、これにより、本実施形態におけるテキスト含意認識装置100は、含意関係に影響しない共通部分構造間の関係を無視することができる。
以上より、本実施形態におけるテキスト含意認識装置100によれば、文章の構造を表す情報である特徴量を用いることにより、対象文章と、仮説文章との間の含意関係を適切に判定可能である。より具体的には、本実施形態におけるテキスト含意認識装置100は、例えば、被覆率が高い文章間の含意関係を適切に判定可能である。また、本実施形態におけるテキスト含意認識装置100は、例えば、各文章を表す構造において、含意関係に影響を及ぼす部分を特定可能である。
なお、上記説明した本実施形態におけるテキスト含意認識装置100は、全ての構成要素を含む単一の装置(情報処理装置等)として構成されてもよい。
また、本実施形態におけるテキスト含意認識装置100は、1以上の構成要素が複数の物理的あるいは論理的に離間した装置(物理的な情報処理装置や、仮想的な情報処理装置等)を用いて実現された、システムとして構成されてもよい。この場合、係る複数の装置の間は、有線又は無線又はそれらを組み合わせた任意の通信ネットワークを用いて通信可能に接続されてもよい。また、係る複数の装置が仮想的な情報処理装置等により構成される場合は、上記通信ネットワークは、仮想的な通信ネットワークであってもよい。
<第2の実施形態>
次に、本発明の第2実施形態について詳細に説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。上述した第1の実施形態と同様な構成についての重複する説明は省略する。
まず、図5を参照して、本実施形態におけるテキスト含意認識装置100の構成について説明する。図5は、本実施形態におけるテキスト含意認識装置100の機能的な構成を例示するブロック図である。
図5に例示するように、本実施形態におけるテキスト含意認識装置100の基本的な構成は、上記第1の実施形態と同様である。より具体的には、本実施形態における共通部分構造抽出部102による共通部分構造の抽出方法が第1の実施形態と異なる。その他の構成要素は、上記第1の実施形態と同様としてよい。
また、本実施形態におけるテキスト含意認識装置100は、同型情報保持部107と通信可能に接続されている。本実施形態においては、例えば、共通部分構造抽出部102が、同型情報保持部107と通信可能に接続されていてもよい。
同型情報保持部107は、同型情報辞書107aを保持する記憶装置である。同型情報保持部107は、任意のデータベースやファイルシステム等を提供する記憶装置そのものであってもよく、当該記憶装置を備えた情報処理装置等であってもよい。係る記憶装置は、例えば、ハードディスクドライブ(Hard Disc Drive:HDD)や、不揮発性の半導体記憶装置など、周知の技術を適宜採用することにより実現されてもよい。なお、同型情報保持部107はテキスト含意認識装置100と独立した要素として構成されてもよく(例えば図5)、テキスト含意認識装置100の一部として構成されてもよい。
同型情報辞書107aは、特定の部分構造(部分木)と、当該特定の部分構造と同一として扱う他の部分構造とを関連付ける情報を保持する。具体的には、同型情報辞書107aは、特定の部分構造と、当該特定の部分構造と同一として扱う他の部分構造とのペア(対)を1以上保持する。ここで、ある特定の部分構造と、他の部分構造とが同一として扱われる場合、共通部分構造抽出部102は、それらの部分構造を相互に置換可能である。即ち、ある特定の部分構造と、他の部分構造とが同型情報辞書107aにペアとして登録されている場合、共通部分構造抽出部102は、それらの部分構造を仮想的な同型の部分構造として扱うことが可能である。なお、同型情報辞書107aには、同一として扱われる部分構造のペアが予め登録されていてもよい。
以下、具体例を用いて、本実施形態における共通部分構造抽出部102、及び、同型情報辞書107aについて説明する。
本実施形態における共通部分構造抽出部102は、共通部分構造を抽出する際に、同型情報辞書107aに登録された、同一として扱う部分構造(ペア)の情報を参照する。
例えば、図6に例示するように、同型情報辞書107aに、部分構造ペアP1「(かける(カレー)(ご飯))、(カレーライス)」が登録されていることを仮定する。また、対象文章T2が「カレーをご飯にかけたものが食べたい。」であり、仮説文章H2が「カレーライスが食べたい。」であることを仮定する。この場合、対象文章T2を、木構造により表した木T2は、「(食べる(かける(カレー)(ご飯)))」となる。また、仮説文章H2を木構造により表した木H2は、「(食べる(カレーライス))」となる。
このような木T2と、木H2とに対して、上記第1の実施形態における共通部分構造抽出部102により抽出される共通部分構造は、「(食べる)」のみである。
これに対して、本実施形態における共通部分構造抽出部102は、同型情報辞書107aの情報を用いることにより、部分構造ペアP1「(かける(カレー)(ご飯))、(カレーライス)」を同一の部分構造として扱う。これにより、本実施形態における共通部分構造抽出部102は、図7に例示するように、共通部分構造として、共通部分構造C3「(食べる)」と、共通部分構造C4「(かける(カレー)(ご飯))=(カレーライス)」とを抽出する。
次に、上記のように構成された本実施形態におけるテキスト含意認識装置100の動作について説明する。なお、以下においては、主に共通部分構造抽出部102の動作について説明する。その他の構成については、上記第1の実施形態と同様としてよいので、詳細な説明は省略する。
まず、本実施形態におけるテキスト含意認識装置100は、上記第1の実施形態と同様、図2に例示するフローチャートにおけるステップS201、及び、S202を実行する。これらの処理は、上記第1の実施形態と同様としてよいため、詳細な説明は省略する。
次に、共通部分構造抽出部102は、上記ステップS202において生成した木構造から、同型かつ共通の部分構造の候補を検出する。以下、共通部分構造抽出部102による共通部分構造の抽出処理について図8に例示するフローチャートを参照して説明する。
本実施形態における共通部分構造抽出部102は、同型である部分構造を特定する際に、同型情報保持部107に格納された同型情報辞書107aを参照する。上記において説明したように、同型情報保持部107に格納された同型情報辞書107aには、ある部分構造と同一とみなす部分構造のペアが1以上登録されている。
まず、共通部分構造抽出部102は、仮説文章を表す木構造の各ノードを根ノードとする部分構造について、同型情報保持部107に格納された同型情報辞書107aを検索する(ステップS801)。そして、共通部分構造抽出部102は、仮説文章における当該部分構造と同一として扱う部分構造を、同型情報辞書107aより抽出する。この場合、共通部分構造抽出部102は、仮説文章に含まれるある部分構造と同一として扱う部分構造のリストを抽出してもよい。
次に、共通部分構造抽出部102は、上記リストに含まれる全ての要素(部分木)について、仮説文章を表す木構造に含まれる部分構造を、上記リストに含まれる要素を用いて置き換える組合せを抽出する。そして、共通部分構造抽出部102は、抽出した全ての組合せについて、仮説文章を表す木構造に含まれる部分構造を置き換えた木構造のリストを生成する(ステップS802)。なお、上記組合せには、仮説文章を表す木構造に含まれる部分構造を、当該部分構造と同一として扱う他の部分構造に置き換えた場合と、置き換えない場合との両方が含まれてもよい。
次に、共通部分構造抽出部102は、上記ステップS802において生成した木のリストに含まれる全ての要素(仮説文章を表す木構造)から1つずつ要素を選択し(ステップS803)、下記処理を繰り返す(ステップS803乃至ステップS805)。
共通部分構造抽出部102は、上記ステップS803において選択した要素(仮説文章を表す木構造)と、対象文章との共通部分構造を抽出する(ステップS804)。なお、ステップS804における具体的な動作は、上記第1の実施形態において説明した共通部分構造の抽出動作(図3に例示するフローチャート)と同様としてよい。このため、詳細な説明は省略する。
ステップS802において抽出したリストに含まれる全ての要素に対する上記処理が終了した場合(ステップS805)、共通部分構造抽出部102は、ステップS806から処理を続行する。
次に、共通部分構造抽出部102は、ステップS804において抽出した共通部分構造を参照する。そして、共通部分構造抽出部102は、ステップS802において抽出したリストに含まれる仮説文章を表す全ての木構造のうち、共通部分構造ではない(共通部分構造に含まれない)ノードの数が最小である木構造を選択する(ステップS806)。
より具体的には、共通部分構造抽出部102は、ステップS802において抽出したリストに含まれる仮説文章を表す全ての木構造について、ステップS804において抽出した対象文章との間の共通部分構造を確認する。そして、共通部分構造抽出部102は、ステップS802において抽出したリストに含まれる仮説文章を表す木構造のうち、共通部分構造以外のノードの数が最小(即ち、共通部分構造に含まれるノードの数が最大)となる木構造を選択する。
そして、共通部分構造抽出部102は、上記選択された仮説文章を表す木構造と、対象文章を表す木構造と、上記選択した共通部分構造とを出力する。
本実施形態におけるテキスト含意認識装置100は、上記ステップS806の後、上記第1の実施形態と同様、図2に例示するステップS204から処理を続行してもよい。ステップS204以降の処理については、上記第1の実施形態と同様としてよいので、詳細な説明を省略する。
以上説明したように、本実施形態における共通部分構造抽出部102は、同型情報辞書107aに登録された部分構造ペアの情報を用いる。これにより、共通部分構造抽出部102は、仮説文章に含まれる部分構造を、当該部分構造と同一として扱う他の部分構造に置換する。即ち、本実施形態における共通部分構造抽出部102は、仮説文章を表す木構造の少なくとも一部を他の部分構造に置換することにより、仮説文章を表す木構造を変形可能である。
例えば、予め同義語やパラフレーズ等の同型情報が存在する場合を想定する。このような場合、係る同型情報を用いて、同一として扱う部分構造のペアを同型情報辞書107aに登録することにより、共通部分構造抽出部102は、表記が異なっていても同等の意味を表す部分構造を相互に置換可能である。
これにより、共通部分構造抽出部102は、例えば、対象文章と仮説文章との間に表記のゆれが存在している場合であっても、共通部分構造を抽出可能である。
即ち、本実施形態におけるテキスト含意認識装置100は、表記が異なっていても同等の意味を表す表現の単位(部分構造)を用いて特徴量を抽出し、当該特徴量を用いて含意判定が可能である。
また、本実施形態におけるテキスト含意認識装置100は、上記第1の実施形態と同様の構成を有することから、上記第1の実施形態と同様の効果を奏する。
<第3の実施形態>
次に、本発明の第3の実施形態について説明する。図9は、本発明の第3の実施形態にかかるテキスト処理システム900の機能的な構成を例示するブロック図である。
本実施形態に係るテキスト処理システム900は、共通部分構造抽出部(共通部分構造抽出手段)901と、特徴量抽出部(特徴量抽出手段)902と、判定部(判定手段)903とを有する。本実施形態に係るテキスト処理システム900は、これらの構成要素を含む単一の装置(情報処理装置等)により構成されてもよい。また、本実施形態に係るテキスト処理システム900は、これらの構成要素が複数の物理的あるいは論理的に離間した装置(物理的な情報処理装置や、仮想的な情報処理装置等)を用いて実現されたシステムとして構成されてもよい。この場合、係る複数の装置の間は、有線又は無線又はそれらを組み合わせた任意の通信ネットワークを用いて通信可能に接続されてもよい。また、係る複数の装置が仮想的な情報処理装置等により構成される場合は、上記通信ネットワークは、仮想的な通信ネットワークであってもよい。
以下、本実施形態に係るテキスト処理システム900の各構成要素について説明する。
共通部分構造抽出部901は、第1の文を表す構造と、第2の文を表す構造と、に基づいて、それらに共通する同型な部分の構造である共通部分構造を抽出する。
上記第1の文は、上記各実施形態における対象文章と同様としてもよく、上記第2の文は、上記各実施形態における仮説文章と同様としてもよい。
上記第1の文を表す構造は、上記各実施形態と同様、当該第1の文に対して形態素解析、及び、依存構造の解析等を実行した結果から生成された木構造であってもよい。同様に、上記第2の文を表す構造は、上記各実施形態と同様、当該第2の文に対して形態素解析、及び、依存構造の解析等を実行した結果から生成された木構造であってもよい。また、上記共通部分構造は、第1の文を表す木構造と、第2の文を表す木構造とに共通する、部分木あるいはノードであってもよい。
なお、本実施形態における共通部分構造抽出部901は、例えば、上記各実施形態における共通部分構造抽出部102と同様の機能を実現可能な、共通部分構造抽出手段として機能してもよい。
特徴量抽出部902は、上記第1及び第2の文のそれぞれにおける、1以上の上記共通部分構造間の依存関係に基づいた特徴量と、上記共通部分構造と、上記共通部分構造とは異なる部分構造と、の間の依存関係に基づいた特徴量と、の少なくともいずれかを抽出する。
具体的には、特徴量抽出部902は、上記第1の文における1以上の上記共通部分構造間の依存関係と、上記第2の文における1以上の上記共通部分構造間の依存関係と、に基づいた特徴量を抽出してもよい。
また、特徴量抽出部902は、以下のような方法で特徴量を抽出してもよい。即ち、特徴量抽出部902は、例えば、上記第1の文における、上記共通部分構造と、上記共通部分構造とは異なる部分構造と、の間の依存関係(第1の依存関係)を抽出する。更に、特徴量抽出部902は、上記第2の文における、上記共通部分構造と、上記共通部分構造とは異なる部分構造と、の間の依存関係(第2の依存関係)を抽出する。特徴量抽出部902は、係る第1の依存関係と、第2の依存関係とに基づいた特徴量(第1の依存関係と、第2の依存関係との間の差異に基づいた特徴量)、を抽出してもよい。
なお、本実施形態における特徴量抽出部902は、上記各実施形態における特徴量抽出部103と同様の機能を実現可能な、特徴量抽出手段として機能してもよい。
判定部903は、抽出された上記特徴量を用いることにより、上記第1の文と上記第2の文との間の含意関係を判定する。より具体的には、判定部903は、特徴量抽出部902において抽出された特徴量と、当該特徴量に関する特定の識別条件とに基づいて、第1の文と、第2の文との間の含意関係を判定してもよい。
なお、本実施形態における判定部903は、上記各実施形態における判定部104と同様の機能を実現可能な、判定手段として機能してもよい。
以上説明したように、本実施形態におけるテキスト処理システム900は、第1の文章及び第2の文章を表すそれぞれの構造における共通部分構造を抽出する。そして、テキスト処理システム900は、共通部分構造同士の関係、あるいは、共通部分構造と他の部分構造との関係から、特徴量を抽出する。
本実施形態におけるテキスト処理システム900は、例えば、これらの特徴量と、当該特徴量に対する識別条件等に基づいて、第1の文と、第2の文との間の含意関係を判定する。即ち、上記のように構成された本実施形態に係るテキスト処理システム900は、上記各実施形態におけるテキスト含意認識装置100と同様、2以上のテキスト(文書)間の含意関係を判定可能である。
以上より、本実施形態におけるテキスト処理システム900によれば、含意関係の判定対象である文章(第1の文及び第2の文)の構造を表す特徴量を用いることにより、それらの文章間の含意関係を判定可能である。より具体的には、本実施形態におけるテキスト処理システム900は、被覆率が高い文章間の含意関係を適切に判定可能である。また、本実施形態におけるテキスト処理システム900は、当該各文章を表す構造のうち、含意関係に影響を及ぼす部分を特定可能である。
<ハードウェア及びソフトウェア・プログラム(コンピュータ・プログラム)の構成>
以下、上記説明した各実施形態を実現可能なハードウェア及びソフトウェア・プログラムの構成について説明する。以下においては、特に、上記各実施形態におけるテキスト含意認識装置100、テキスト処理システム900の構成について説明する。以下、テキスト含意認識装置100と、テキスト処理システム900の各構成要素とをまとめて「テキスト処理システム等」と称する場合がある。なお、以下においては、テキスト処理システム900の各構成要素(共通部分構造抽出部901、特徴量抽出部902、及び、判定部903)は、単一の装置により実現されてもよく、複数の異なる装置により実現されてもよい。
上記各実施形態において説明したテキスト処理システム等は、専用のハードウェア装置により構成してもよい。その場合、上記各図に示した各部は、一部又は全部を統合したハードウェア(処理ロジックを実装した集積回路等)として実現されてもよい。
また、上記テキスト処理システム等は、図12に例示するようなハードウェアと、係るハードウェアによって実行される各種ソフトウェア・プログラム(コンピュータ・プログラム)とによって構成されてもよい。
図12における演算装置1201は、汎用のCPU(Central Processing Unit)やマイクロプロセッサ等の演算処理装置である。演算装置1201は、例えば後述する不揮発性記憶装置1203に記憶された各種ソフトウェア・プログラムを記憶装置1202に読み出し、係るソフトウェア・プログラムに従って処理を実行してもよい。
記憶装置1202は、演算装置1201から参照可能な、RAM(Random Access Memory)等のメモリ装置であり、ソフトウェア・プログラムや各種データ等を記憶する。記憶装置1202は、揮発性のメモリ装置であってもよい。
不揮発性記憶装置1203は、例えば半導体記憶装置によるROM(Read Only Memory)や、フラッシュメモリのような、不揮発性の記憶装置であり、各種ソフトウェア・プログラムやデータ等を記録してもよい。
ドライブ装置1204は、例えば、後述する記憶媒体1205に対するデータの読み込みや書き込みを処理する装置である。
記憶媒体1205は、例えば光ディスク、光磁気ディスク、半導体フラッシュメモリ等、データを記録可能な任意の記録媒体である。
ネットワークインタフェース1206は、テキスト処理システム等と、有線又は無線、及びこれらが組み合わされて構成された任意の通信ネットワークとの間を通信可能に接続するインタフェース装置である。なお、上記各実施形態におけるテキスト含意認識装置100、あるいは、テキスト処理システム900を、図12に例示するハードウェアにより構成された複数の装置の組合せにより構成する場合、それらの装置の間は、ネットワークインタフェース1206を介して相互に通信可能に接続されていてもよい。
入出力インタフェース1207は、テキスト処理システム等に対する各種入力を受け付ける入力装置、及び、テキスト処理システム等からの各種出力を受け付ける出力装置が接続されるインタフェースである。例えば、上記第1及び第2の実施形態における入力装置105、及び、出力装置106は、入出力インタフェース1207を介してテキスト含意認識装置100に接続されてもよい。
上述した各実施形態を例に説明した本発明は、例えば、図12に例示したハードウェア装置によりテキスト処理システム等を構成し、係るテキスト処理システム等に対して、上記各実施形態において説明した機能を実現可能なソフトウェア・プログラムを供給することにより実現されてもよい。この場合、係るテキスト処理システム等に対して供給したソフトウェア・プログラムを、演算装置1201が実行することによって、本願発明が達成されてもよい。
上述した各実施形態において、上記各図に示した各部は、上述したハードウェアにより実行されるソフトウェア・プログラムの機能(処理)単位である、ソフトウェアモジュールとして実現することができる。ただし、これらの図面に示した各ソフトウェアモジュールの区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。
例えば、図1、図5、及び、図9に例示したテキスト処理システム等をソフトウェアモジュールとして実現する場合、これらのソフトウェアモジュールを不揮発性記憶装置1203に記憶しておき、演算装置1201がそれぞれの処理を実行する際に、これらのソフトウェアモジュールを記憶装置1202に読み出すよう構成してもよい。
また、これらのソフトウェアモジュール間は、共有メモリやプロセス間通信等の適宜の方法により、相互に各種データを伝達できるように構成してもよい。このような構成により、これらのソフトウェアモジュール間は、相互に通信可能に接続可能である。
更に、上記各ソフトウェア・プログラムは記憶媒体1205に記録されてもよい。この場合、上記テキスト処理システムは、出荷段階、あるいは運用段階等において、適宜ドライブ装置1204を通じて当該ソフトウェア・プログラムが不揮発性記憶装置1203に格納されるよう、構成されてもよい。
なお、上記の場合において、テキスト処理システム等への各種ソフトウェア・プログラムの供給方法としては、例えば、出荷前の製造段階、あるいは出荷後のメンテナンス段階等において、適当な治具を利用して当該テキスト処理システム等内にインストールする方法が採用されてもよい。また、各種ソフトウェア・プログラムの供給方法は、インターネット等の通信回線を介して外部からダウンロードする方法等のように、現在では一般的な方法であってもよい。
そして、このような場合において、本発明は、係るソフトウェア・プログラムを構成するコード、あるいは係るコードが記録されたところの、コンピュータ読み取り可能な記憶媒体によって構成されると捉えることができる。
以上、本発明を、上述した模範的な実施形態に適用した例として説明した。しかしながら、本発明の技術的範囲は、上述した各実施形態に記載した範囲には限定されない。当業者には、係る実施形態に対して多様な変更又は改良を加えることが可能であることは明らかである。そのような場合、係る変更又は改良を加えた新たな実施形態も、本発明の技術的範囲に含まれ得る。そしてこのことは、請求の範囲に記載した事項から明らかである。
なお、上述した実施形態及びその変形例の一部又は全部は、以下の付記のようにも記載されうる。しかしながら、上述した実施形態及びその変形例により例示的に説明した本発明は、以下には限られない。
(付記1)
第1の文を表す構造と第2の文を表す構造とに基づいて、それらに共通する同型な部分の構造である共通部分構造を抽出する共通部分構造抽出手段と、
上記第1及び第2の文における1以上の上記共通部分構造間の依存関係に基づいた特徴量、及び、上記第1及び第2の文における上記共通部分構造と、上記共通部分構造とは異なる部分構造との間の依存関係に基づいた特徴量の、少なくともいずれかを抽出する特徴量抽出手段と、
抽出された上記特徴量を用いることにより、上記第1の文と上記第2の文との間の含意関係を判定する判定手段と、
を備えるテキスト処理システム。
(付記2)
上記共通部分構造抽出手段は、
上記第1の文を表す構造である第1の木構造、及び、上記第2の文を表す構造である第2の木構造に含まれる同型な部分木である共通部分構造の候補が1以上存在する場合、
1以上の上記共通部分構造の候補から、当該共通部分構造の候補に含まれるノードの数に基づいて、他の上記共通部分構造の候補と重複しない上記共通部分構造の候補を選択することにより、上記共通部分構造を抽出する
付記1に記載のテキスト処理システム。
(付記3)
上記特徴量抽出手段は、
上記共通部分構造が複数存在する場合、上記第1の文を表す構造における上記共通部分構造間の依存関係と、上記第2の文を表す構造における上記共通部分構造間の依存関係との間の関係を表す情報を少なくとも含む上記特徴量を抽出する
付記2に記載のテキスト処理システム。
(付記4)
上記特徴量抽出手段は、
上記共通部分構造が複数存在する場合、上記第1の木構造及び上記第2の木構造において、複数の上記共通部分構造のうち、特定の上記共通部分構造と他の上記共通部分構造との間に存在する部分構造に含まれるノードの数及び当該ノードの属性の少なくとも一方に基づいて上記特徴量を抽出する
付記2または付記3に記載のテキスト処理システム。
(付記5)
上記特徴量抽出手段は、
上記第1の木構造及び上記第2の木構造において、特定の上記共通部分構造の子孫であり、特定の上記共通部分構造と、他の上記共通部分構造との間に存在しない部分構造から、当該部分構造に含まれるノードの数及びノードの属性の少なくとも一方に基づいて上記特徴量を抽出する、
付記2乃至付記4の何れかに記載のテキスト処理システム。
(付記6)
1以上の部分構造について、当該部分構造と同型である他の部分構造に関する同型情報を保持する同型情報保持手段を更に備え、
上記共通部分構造抽出手段は、
上記同型情報保持手段が保持する上記同型情報に基づいて、上記第1の木構造に含まれる部分構造及び上記第2の木構造に含まれる部分構造の少なくとも一方を、当該部分構造と同型である他の部分構造に置換し、
当該置換後の上記第1の木構造と上記第2の木構造とに基づいて、上記共通部分構造を抽出する、
付記2乃至付記5のいずれかに記載のテキスト処理システム。
(付記7)
上記共通部分構造抽出手段は、
上記同型情報保持手段が保持する上記同型情報に基づいて、上記第1の木構造に含まれる部分構造及び上記第2の木構造に含まれる部分構造の少なくとも一方を、当該部分構造と同型である他の部分構造に置換する全ての組合せについて、当該置換後の上記第1の木構造と上記第2の木構造とに基づいて上記共通部分構造の候補を抽出し、
上記抽出した上記共通部分構造の候補のうち、上記置換後の上記第2の木構造に含まれる上記共通部分構造の候補ではないノードの数が最小となる上記共通部分構造の候補を、上記共通部分構造として抽出する、
付記6に記載のテキスト処理システム。
(付記8)
情報処理装置が、
第1の文を表す構造と第2の文を表す構造とに基づいて、それらに共通する同型な部分の構造である共通部分構造を抽出し、
上記第1及び第2の文における1以上の上記共通部分構造間の依存関係に基づいた特徴量、及び、上記第1及び第2の文における上記共通部分構造と、上記共通部分構造とは異なる部分構造との間の依存関係に基づいた特徴量の、少なくともいずれかを抽出し、
抽出された上記特徴量を用いることにより、上記第1の文と上記第2の文との間の含意関係を判定する、
テキスト処理方法。
(付記9)
第1の文を表す構造と第2の文を表す構造とに基づいて、それらに共通する同型な部分の構造である共通部分構造を抽出する処理と、
上記第1及び第2の文における1以上の上記共通部分構造間の依存関係に基づいた特徴量、及び、上記第1及び第2の文における上記共通部分構造と、上記共通部分構造とは異なる部分構造との間の依存関係に基づいた特徴量の、少なくともいずれかを抽出する処理と、
抽出された上記特徴量を用いることにより、上記第1の文と上記第2の文との間の含意関係を判定する処理と、をコンピュータに実行させる、
コンピュータ・プログラム。
(付記10)
第1の文を表す構造と第2の文を表す構造とに基づいて、それらに共通する同型な部分の構造である共通部分構造を抽出する共通部分構造抽出手段と、
上記第1及び第2の文における1以上の上記共通部分構造間の依存関係に基づいた特徴量、及び、上記第1及び第2の文における上記共通部分構造と、上記共通部分構造とは異なる部分構造との間の依存関係に基づいた特徴量の、少なくともいずれかを抽出する特徴量抽出手段と、
抽出された上記特徴量を用いることにより、上記第1の文と上記第2の文との間の含意関係を判定する判定手段と、
を単一の装置として備えるテキスト処理装置。
(付記11)
上記共通部分構造抽出部は、
上記第1の木構造、及び、上記第2の木構造に含まれる上記共通部分構造の候補が1以上存在する場合、
上記1以上の共通部分構造の候補から、当該共通部分構造の候補に含まれるノードの数が所定の基準に基づいて多い順に、他の上記共通部分構造の候補と重複しない上記共通部分構造の候補を選択することにより、当該選択した上記共通部分構造の候補を上記共通部分構造として抽出する、
付記2に記載のテキスト処理システム。
(付記12)
上記特徴量抽出部は、
上記共通部分構造が複数存在する場合に、
上記第1の文を表す構造における上記共通部分構造間の依存関係と、上記第2の文を表す構造における上記共通部分構造間の依存関係とが一致するか否かを表す情報を少なくとも含む上記特徴量を抽出する
付記3に記載のテキスト処理システム。
(付記13)
上記共通部分構造抽出手段は、
上記第1の文を表す構造である第1の木構造、及び、上記第2の文を表す構造である第2の木構造に含まれる同型な部分木である共通部分構造の候補が1以上存在する場合、
1以上の上記共通部分構造の候補から、当該共通部分構造の候補に含まれるノードの数が最大となる、他の上記共通部分構造の候補と重複しない上記共通部分構造の候補を選択することにより、上記共通部分構造を抽出する
付記2に記載のテキスト処理システム。