(57)【要約】【課題】解析速度の低下を抑えながら構造解析を精度良く行う。【解決手段】探索部２２により、シフトアクション、及びレデュースアクションを含む複数のアクションを用いて形成されるアクションの列のうち、初期状態から、最終状態までの各状態遷移に対応するアクションからなるアクションの列であって、かつ、各状態遷移について、遷移前の状態におけるスタックの各要素及びバッファの各談話の基本単位とアクションとの組み合わせと、アクションを決定するための予め求められたモデルとに基づいて算出されるスコアの合計が最大となるアクションの列をビーム探索により探索し、探索されたアクションの列に従って、入力文の構造解析結果を表す解析木を作成する。【選択図】図６
2017041207.tif 000002
【特許請求の範囲】
【請求項１】
自然言語の文書の語順に並んだ入力文に含まれる各談話の基本単位を格納したバッファと、
少なくとも１つの前記談話の基本単位の構造解析結果を表す部分解析木を格納するための少なくとも１つの要素からなるスタックと、
前記バッファに格納された先頭の談話の基本単位を取り出し、前記取り出した談話の基本単位の構造解析結果を表す部分解析木を格納した要素を、前記スタックの先頭要素として追加するシフトアクション、及び前記スタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された前記部分解析木を結合して作成される前記部分解析木を格納した要素を、前記スタックの先頭要素として追加するレデュースアクションを含む複数のアクションを用いて形成されるアクションの列のうち、
初期状態から、前記入力文の構造解析結果を表す解析木が前記スタックの先頭要素に格納された最終状態までの各状態遷移に対応する前記アクションからなるアクションの列であって、かつ、各状態遷移について、遷移前の状態における前記スタックの各要素及び前記バッファの各談話の基本単位と前記アクションとの組み合わせと、前記アクションを決定するための予め求められたモデルとに基づいて算出されるスコアの合計が最大となるアクションの列をビーム探索により探索し、
前記探索されたアクションの列に従って、前記入力文の構造解析結果を表す解析木を作成する探索部と、
を含む構造解析装置。
【請求項２】
前記探索部は、
前記初期状態において算出される前記アクション毎のスコアが上位ｋ個となるアクションを選択し、
前記選択された上位ｋ個のアクションによって遷移する状態の各々について、更に前記状態において算出される前記アクション毎のスコアが上位ｋ個となるアクションを選択することを前記最終状態まで繰り返し、
前記繰り返し結果により得られるアクションの列の各々のうち、前記アクションの列のスコアの総和が最大となるアクションの列を探索する請求項１記載の構造解析装置。
【請求項３】
前記レデュースアクションには、
前記スタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された前記部分解析木を、前記先頭要素が主辞になるように結合して作成される前記部分解析木を格納した要素を、前記スタックの先頭要素として追加するレデュースＬアクション、及び前記スタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された前記部分解析木を、前記２番目の要素が主辞になるように結合して作成される前記部分解析木を格納した要素を、前記スタックの先頭要素として追加するレデュースＲアクションの２つのアクションが含まれ、
前記構造解析結果は、談話依存構造解析の結果である請求項１又は２記載の構造解析装置。
【請求項４】
前記構造解析結果は、修辞構造解析の結果である請求項１又は２記載の構造解析装置。
【請求項５】
自然言語の文書の語順に並んだ入力文に含まれる各談話の基本単位を格納したバッファと、少なくとも１つの前記談話の基本単位の構造解析結果を表す部分解析木を格納するための少なくとも１つの要素からなるスタックと、探索部とを含む構造解析装置における、構造解析方法であって、
前記探索部は、前記バッファに格納された先頭の談話の基本単位を取り出し、前記取り出した談話の基本単位の構造解析結果を表す部分解析木を格納した要素を、前記スタックの先頭要素として追加するシフトアクション、及び前記スタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された前記部分解析木を結合して作成される前記部分解析木を格納した要素を、前記スタックの先頭要素として追加するレデュースアクションを含む複数のアクションを用いて形成されるアクションの列のうち、
初期状態から、前記入力文の構造解析結果を表す解析木が前記スタックの先頭要素に格納された最終状態までの各状態遷移に対応する前記アクションからなるアクションの列であって、かつ、各状態遷移について、遷移前の状態における前記スタックの各要素及び前記バッファの各談話の基本単位と前記アクションとの組み合わせと、前記アクションを決定するための予め求められたモデルとに基づいて算出されるスコアの合計が最大となるアクションの列をビーム探索により探索し、
前記探索されたアクションの列に従って、前記入力文の構造解析結果を表す解析木を作成する
構造解析方法。
【請求項６】
前記探索部により探索することは、
前記初期状態において算出される前記アクション毎のスコアが上位ｋ個となるアクションを選択し、
前記選択された上位ｋ個のアクションによって遷移する状態の各々について、更に前記状態において算出される前記アクション毎のスコアが上位ｋ個となるアクションを選択することを前記最終状態まで繰り返し、
前記繰り返し結果により得られるアクションの列の各々のうち、前記アクションの列のスコアの総和が最大となるアクションの列を探索する請求項５記載の構造解析方法。
【請求項７】
前記レデュースアクションには、
前記スタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された前記部分解析木を、前記先頭要素が主辞になるように結合して作成される前記部分解析木を格納した要素を、前記スタックの先頭要素として追加するレデュースＬアクション、及び前記スタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された前記部分解析木を、前記２番目の要素が主辞になるように結合して作成される前記部分解析木を格納した要素を、前記スタックの先頭要素として追加するレデュースＲアクションの２つのアクションが含まれ、
前記構造解析結果は、談話依存構造解析の結果である請求項５又は６記載の構造解析方法。
【請求項８】
コンピュータを、請求項１〜４の何れか１項記載の構造解析装置の各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された自然言語で記述された文書の談話構造を表した修辞構造木、又は談話依存構造木を出力するための構造解析装置、方法、及びプログラムに関するものである。
【背景技術】
【０００２】
従来、修辞構造解析方法として、シフト還元法が知られている。シフト還元法とは、状態とアクションという概念を用いることで解析を進める方法であり、初期状態から各ステップにおいて１つアクションを選択して次の状態へと遷移し、最終状態に至ると解析が完了する。
【０００３】
ここで、状態はステップ数、バッファ、及びスタックを持つ。バッファには、入力となる文書の文や節等の談話の基本単位であるＥＤＵ（Ｅｌｅｍｅｎｔａｒｙ Ｄｉｓｃｏｕｒｓｅ Ｕｎｉｔｓ）が先頭から（語順で）格納される。一方、スタックには、解析の途中結果が保持される。
【０００４】
また、アクションは、シフトとレデュースとの２種類がある。シフトは、バッファの先頭からＥＤＵを１つ取り出し、それに核（Ｎ）か衛星（Ｓ）かのラベルと修辞関係のラベルとを割り当て、スタックの先頭に積む。一方、レデュースは、スタックの先頭とその次に積まれている解析途中の修辞構造木とを、核（Ｎ）か衛星（Ｓ）かのラベルと修辞関係のラベルとが付与された新しいノードをルートにして結合する。なお、修辞関係のラベルが無い場合、特殊なＳｐａｎというラベルを用いるが、特に意味を持たないので説明を省略する。
【０００５】
図１０にシフト還元法の動作例を示す。初期状態（ステップ数０）では、シフトＮアクションをとり、バッファ先頭のＥＤＵにＮラベルを割り当てて、スタックの先頭に積む。また、ステップ数２の状態では、レデュースＮ:Ｔｏｐｉｃ−Ｃｈａｎｇｅアクションをとり、スタック先頭とその次の修辞構造木とを結合して、新たな修辞構造木を作る。同様の操作を入力長｜ｘ｜に対して、２｜ｘ｜−１ステップまで進めることで解析が終了する(シフトを｜ｘ｜回、レデュースを｜ｘ｜−１回行う)。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Daniel Marcu. A decision-based approach to rhetorical parsing. In Proceedings of the 37th annual meeting of the Association for Computational Linguistics on Computational Linguistics, pages 365−372. Association for Computational Linguistics, 1999.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、上述した従来の方法では、解析精度が非常に低いことが知られている。この原因は、シフト還元法では各ステップで１つの状態だけを管理し、貪欲的に探索が進められるため、解析途中で探索エラーを起こしやすく、正しい修辞構造木を導く状態が削除されてしまう可能性があるためである。
【０００８】
本発明では、上記問題点を解決するために成されたものであり、解析速度の低下を抑えながら構造解析を精度良く行うことができる構造解析装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、第１の発明に係る構造解析装置は、自然言語の文書の語順に並んだ入力文に含まれる各談話の基本単位を格納したバッファと、少なくとも１つの前記談話の基本単位の構造解析結果を表す部分解析木を格納するための少なくとも１つの要素からなるスタックと、前記バッファに格納された先頭の談話の基本単位を取り出し、前記取り出した談話の基本単位の構造解析結果を表す部分解析木を格納した要素を、前記スタックの先頭要素として追加するシフトアクション、及び前記スタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された前記部分解析木を結合して作成される前記部分解析木を格納した要素を、前記スタックの先頭要素として追加するレデュースアクションを含む複数のアクションを用いて形成されるアクションの列のうち、初期状態から、前記入力文の構造解析結果を表す解析木が前記スタックの先頭要素に格納された最終状態までの各状態遷移に対応する前記アクションからなるアクションの列であって、かつ、各状態遷移について、遷移前の状態における前記スタックの各要素及び前記バッファの各談話の基本単位と前記アクションとの組み合わせと、前記アクションを決定するための予め求められたモデルとに基づいて算出されるスコアの合計が最大となるアクションの列をビーム探索により探索し、前記探索されたアクションの列に従って、前記入力文の構造解析結果を表す解析木を作成するする探索部と、を含んで構成されている。
【００１０】
第２の発明に係る構造解析方法は、自然言語の文書の語順に並んだ入力文に含まれる各談話の基本単位を格納したバッファと、少なくとも１つの前記談話の基本単位の構造解析結果を表す部分解析木を格納するための少なくとも１つの要素からなるスタックと、探索部とを含む構造解析装置における、構造解析方法であって、前記探索部は、前記バッファに格納された先頭の談話の基本単位を取り出し、前記取り出した談話の基本単位の構造解析結果を表す部分解析木を格納した要素を、前記スタックの先頭要素として追加するシフトアクション、及び前記スタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された前記部分解析木を結合して作成される前記部分解析木を格納した要素を、前記スタックの先頭要素として追加するレデュースアクションを含む複数のアクションを用いて形成されるアクションの列のうち、初期状態から、前記入力文の構造解析結果を表す解析木が前記スタックの先頭要素に格納された最終状態までの各状態遷移に対応する前記アクションからなるアクションの列であって、かつ、各状態遷移について、遷移前の状態における前記スタックの各要素及び前記バッファの各談話の基本単位と前記アクションとの組み合わせと、前記アクションを決定するための予め求められたモデルとに基づいて算出されるスコアの合計が最大となるアクションの列をビーム探索により探索し、前記探索されたアクションの列に従って、前記入力文の構造解析結果を表す解析木を作成する。
【００１１】
第１及び第２の発明によれば、探索部により、バッファに格納された先頭の談話の基本単位を取り出し、取り出した談話の基本単位の構造解析結果を表す部分解析木を格納した要素を、スタックの先頭要素として追加するシフトアクション、及びスタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された部分解析木を結合して作成される部分解析木を格納した要素を、スタックの先頭要素として追加するレデュースアクションを含む複数のアクションを用いて形成されるアクションの列のうち、初期状態から、入力文の構造解析結果を表す解析木がスタックの先頭要素に格納された最終状態までの各状態遷移に対応するアクションからなるアクションの列であって、かつ、各状態遷移について、遷移前の状態におけるスタックの各要素及びバッファの各談話の基本単位とアクションとの組み合わせと、アクションを決定するための予め求められたモデルとに基づいて算出されるスコアの合計が最大となるアクションの列をビーム探索により探索し、探索されたアクションの列に従って、入力文の構造解析結果を表す解析木を作成する。
【００１２】
このように、シフトアクション、及びレデュースアクションを含む複数のアクションを用いて形成されるアクションの列のうち、初期状態から、最終状態までの各状態遷移に対応するアクションからなるアクションの列であって、かつ、各状態遷移について、遷移前の状態におけるスタックの各要素及びバッファの各談話の基本単位とアクションとの組み合わせと、アクションを決定するための予め求められたモデルとに基づいて算出されるスコアの合計が最大となるアクションの列をビーム探索により探索し、探索されたアクションの列に従って、入力文の構造解析結果を表す解析木を作成することにより解析速度の低下を抑えながら構造解析を精度良く行うことができる。
【００１３】
また、第１及び第２の発明において、前記探索部は、前記初期状態において算出される前記アクション毎のスコアが上位ｋ個となるアクションを選択し、前記選択された上位ｋ個のアクションによって遷移する状態の各々について、更に前記状態において算出される前記アクション毎のスコアが上位ｋ個となるアクションを選択することを前記最終状態まで繰り返し、前記繰り返し結果により得られるアクションの列の各々のうち、前記アクションの列のスコアの総和が最大となるアクションの列を探索してもよい。
【００１４】
また、第１及び第２の発明において、前記レデュースアクションには、前記スタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された前記部分解析木を、前記先頭要素が主辞になるように結合して作成される前記部分解析木を格納した要素を、前記スタックの先頭要素として追加するレデュースＬアクション、及び前記スタックの先頭要素及び２番目の要素を取り出し、かつ、取り出した先頭要素及び２番目の要素の各々に格納された前記部分解析木を、前記２番目の要素が主辞になるように結合して作成される前記部分解析木を格納した要素を、前記スタックの先頭要素として追加するレデュースＲアクションの２つのアクションが含まれ、前記構造解析結果は、談話依存構造解析の結果としてもよい。
【００１５】
また、第１の発明において、前記構造解析結果は、修辞構造解析の結果としてもよい。
【００１６】
また、本発明のプログラムは、コンピュータを、上記の構造解析装置を構成する各部として機能させるためのプログラムである。
【発明の効果】
【００１７】
以上説明したように、本発明の構造解析装置、方法、及びプログラムによれば、シフトアクション、及びレデュースアクションを含む複数のアクションを用いて形成されるアクションの列のうち、初期状態から、最終状態までの各状態遷移に対応するアクションからなるアクションの列であって、かつ、各状態遷移について、遷移前の状態におけるスタックの各要素及びバッファの各談話の基本単位とアクションとの組み合わせと、アクションを決定するための予め求められたモデルとに基づいて算出されるスコアの合計が最大となるアクションの列をビーム探索により探索し、探索されたアクションの列に従って、入力文の構造解析結果を表す解析木を作成することにより解析速度の低下を抑えながら構造解析を精度良く行うことができる。
【図面の簡単な説明】
【００１８】
【図１】ＥＤＵのＩＤ、及び文のＩＤが付与された英語文書の一例を示す図である。
【図２】修辞構造木の一例を示す図である。
【図３】談話依存構造木の一例を示す図である。
【図４】ビーム探索型シフト還元法の動作の一例を示す図である。
【図５】談話依存構造解析においてシフト還元法を用いる場合の動作の一例を示す図である。
【図６】本発明の第１の実施形態に係る構造解析装置の機能的構成を示すブロック図である。
【図７】本発明の第１の実施形態に係る構造解析装置における構造解析処理ルーチンのフローチャート図である。
【図８】本発明の第２の実施形態に係る構造解析装置の機能的構成を示すブロック図である。
【図９】本発明の第２の実施形態に係る構造解析装置における構造解析処理ルーチンのフローチャート図である。
【図１０】シフト還元法の動作の一例を示す図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照して本発明の実施形態を詳細に説明する。
【００２０】
＜本実施形態の原理＞
まず、本発明の実施形態の原理について説明する。本実施形態において、例えば、図１に示す英語文書に対して、談話構造を表した修辞構造木は図２のようになる。修辞構造木において、その葉ノードはＥＤＵに対応する。隣接するＥＤＵ同士は修辞関係（例えば、Ｔｅｍｐｏｒａｌ、Ｅｌａｂｏｒａｔｉｏｎなどのラベルで表される)によって結合され、より大きな談話単位が形成される。さらに、その談話単位同士も修辞関係によって結合され、木構造を形作る。ある談話単位は、その修辞関係上において他の談話単位よりも重要な情報を持つ場合、核（Ｎ）、そうでない場合、衛星（Ｓ）と呼ばれる状態で特徴付けられる。ここで、入力される文書は、図１において、「[]」の添字にテキスト内のＥＤＵのＩＤ、「｛｝」の添字に文のＩＤが付加されているものとする。
【００２１】
また、図１に示す英語文書に対する談話依存構造木を図３に示す。談話依存構造木は、修辞構造木と異なり、ＥＤＵ同士の親子関係を直接記述した木構造となる。矢印（辺）の元にある方を主辞、先にある方を修飾子と呼ぶ。このような修辞構造木あるいは談話依存構造木を高速かつ高精度に自動解析して作ることができれば、文書要約などの高度な自然言語処理技術の高精度化につながる。
【００２２】
そこで、本実施形態においては、文の依存構造解析を行う場合等に用いられるビーム探索型シフト還元法（非特許文献２：Yue Zhang and Stephen Clark. A tale of two parsers: investigating and combining graph-based and transition-based dependency parsing using beam-search. In Proceedings of the Conference on Empirical Methods in Natural Language Processing, pages 562−571. Asso-ciation for Computational Linguistics, 2008.）を修辞構造解析に導入する。
【００２３】
上述した従来技術においては、各ステップにおいて、１つの状態だけを管理していたが、本実施形態において用いるビーム探索型シフト還元法は、図４に示すように、各ステップにおいて、複数の状態を管理する。このとき、複数のバッファを格納する領域をビームと呼び、その要領をビーム幅と呼ぶ。なお、ビーム幅は予め定義されているものとする。
【００２４】
また、本実施形態において、ビーム探索型シフト還元法を修辞構造解析に用いることにより、各ステップでビーム幅個までの状態を管理し、並行して解析を進めることができる。そのため、正しい修辞構造木を導く状態が探索エラーにより削除される可能性を軽減できる。なお、本実施形態において、ビーム探索型シフト還元法を修辞構造解析に用いる場合には、アクションの種別は、従来技術と同様、シフトとレデュースとなる。
【００２５】
また、本実施形態において、ビーム探索型シフト還元法を、談話依存構造解析に用いる場合には、従来のシフト還元法とは、アクションの定義が異なり、シフト、レデュースＬ、及びレデュースＲの３種類を用いる。当該３種類のアクションについて、以下に説明する。
【００２６】
シフトは、バッファの先頭からＥＤＵを１つ取り出し、取り出した要素に各（Ｎ）か衛星（Ｓ）かのラベルを割り当て、スタックの先頭に先頭要素として積む（追加）。
【００２７】
レデュースＬは、スタックの先頭とその次（２番目）に積まれている解析途中の談話依存構造木のルートＥＤＵに対して、スタック先頭に積まれている方のＥＤＵを主辞（ｈｅａｄ）にして、新しい依存構造木を作る。また、依存構造木を作る際に、修辞関係を表すラベルを辺に付与する。
【００２８】
レデュースＲは、スタックの先頭とその次に積まれている解析途中の談話依存構造木のルートＥＤＵに対して、スタック先頭の次に積まれている方のＥＤＵを主辞（ｈｅａｄ）にして、新しい依存構造木を作る。また、依存構造木を作る際に、修辞関係を表すラベルを辺に付与する。
【００２９】
図５に、談話依存構造解析において、上述したアクションを選択した場合の動作イメージの一例を示す。なお、図５の例においては、１つの状態において、１つのアクションを選択する場合の動作イメージの例について説明するが、本実施形態においては、図４に示すビーム探索型シフト還元法を用いるため、１つの状態からビーム幅分のアクションが選択されるものとする。初期状態（ステップ数０）では、シフトＮアクションをとり、バッファ先頭のＥＤＵにＮラベルを割り当てて、スタックの先頭に積む。また、ステップ数２の状態では、レデュースＲ:Ｅｌａｂ.アクションをとり、スタック先頭とその次の談話依存構造木を結合して、新たな談話依存構造木を作る。このような操作を入力長｜ｘ｜に対して、２｜ｘ｜−１ステップまで進めることで解析が終了する(シフトを｜ｘ｜回、レデュースを｜ｘ｜−１回行う)。上述した従来技術のシフト還元法との違いは、アクションの定義だけであるため、同様に、ビーム探索型シフト還元法として利用できる。
【００３０】
なお、本実施形態において用いる、ビーム探索型シフト還元法においては、各状態において、取りえるアクションのそれぞれについて統計モデルに基づいて優先度スコアを計算し、当該計算スコアに基づいて、予め定められたビーム幅ｋに対応するｋ個のアクションを選択する。ここで、優先度スコアは、予め学習された重みベクトルと、特定の状態において特定のアクションを選択する場合の素性ベクトルとの内積により計算することができる。なお、初期状態のビームは、１つの状態のみを有する。また、談話依存構造解析を行う場合には、重みベクトルは、ある入力文書と、当該入力文書に対応する談話依存構造木との複数の組み合わせに基づいて学習することができる。一方、修辞構造解析を行う場合には、重みベクトルは、ある入力文書と、当該入力文書に対応する修辞構造木との複数の組み合わせに基づいて学習することができる。また、本実施形態においては、重みベクトルは、任意の学習方法において予め学習されているものとする。また、素性ベクトルは、素性ベクトルの特徴を作り出すための雛形である、予め任意に定義されている素性テンプレートに基づいて、各状態において求めることができる。具体的には、各状態と、選択されるアクションと、素性テンプレートとに基づいて、素性ベクトルを取得することができる。
【００３１】
例えば、初期状態（ステップ０）において、取りえるアクションの各々について、初期状態において当該アクションをとる場合について取得される素性ベクトルと、予め学習された重みベクトルとの内積を計算し優先度スコアを算出する。次に、算出された優先度スコアの上位ｋ個のアクションを選択し、選択したｋ個のアクションの各々を取った状態の各々を、ステップ１の状態とする。そのため、ステップ１の状態においては、ビーム幅ｋ個の状態が含まれる。更に、ステップ１に含まれるｋ個の状態の各々について、当該状態において、同様の方法により、取りえるアクションをｋ個選択し、選択したｋ個のアクションの各々を取った状態の各々を、ステップ２の状態とする。なお、ステップ２においては、ステップ１に含まれるｋ個の状態の各々について、更にｋ個の状態に遷移した状態の各々を含むため、ｋ２個の状態を含むことになる。同様の操作を最終状態（例えば、バッファが空になり、かつスタックに１つの解析木のみが存在する状態）になるまで繰り返す。また、当該各最終状態におけるアクション列（当該最終状態に遷移するまでに選択されたアクションの各々）の各々について、当該アクション列に含まれるアクションの各々を選択する際に算出された優先度スコアの総和を最終スコアとして算出する。そして、最終スコアが一番高いアクション列に対応する最終状態のスタックに格納されている解析木を解析結果とする。また、最終状態に至っていない状態におけるスタックに格納されている解析木は部分解析木となる。
【００３２】
＜本発明の第１の実施形態に係る構造解析装置の構成＞
次に、本発明の第１の実施形態に係る構造解析装置の構成について説明する。図６に示すように、第１の実施形態に係る構造解析装置１００は、ＣＰＵと、ＲＡＭと、後述する構造解析処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。この構造解析装置１００は、機能的には図６に示すように入力部１０と、演算部２０と、出力部９０とを含んで構成されている。なお、第１の実施形態においては、上述したビーム探索型シフト還元法を修辞構造解析に用いる場合に説明する。
【００３３】
入力部１０は、例えば、図１に示すような各テキスト内のＥＤＵのＩＤ，及び各文に文のＩＤが付与された自然言語で記述された文書を受け付ける。
【００３４】
演算部２０は、探索部２２と、重みベクトル記憶部２４と、素性テンプレート記憶部２６とを含んで構成されている。
【００３５】
探索部２２は、入力部１０において受け付けた文書と、重みベクトル記憶部２４に記憶されている重みベクトルと、素性テンプレート記憶部２６に記憶されている素性テンプレートとに基づいて、上述した本実施形態において用いるビーム探索型シフト還元法に従って、修辞構造木を作り、出力部９０から出力する。
【００３６】
具体的には、まず、ステップ数０の初期状態として、スタックを空に設定し、バッファに入力部１０において受け付けたＥＤＵ単位毎の要素を並び順に格納する。次に、初期状態において取りえるアクション（例えばシフトＮ、シフトＳ：Ｅｌａｂｏｒａｔｉｏｎ、及びレデュースＮ：Ｔｏｐｉｃ−Ｃｈａｎｇｅ等）の各々について、初期状態において当該アクションをとる場合の素性ベクトルを素性テンプレートと当該初期状態と当該アクションとに基づいて取得すると共に、取得した素性ベクトルと、重みベクトル記憶部２４に記憶されている重みベクトルとに基づいて、優先度スコアを算出する。
【００３７】
次に、スコアの高い方から、予め定義されたビーム幅ｋ個のアクションを選択し、選択したｋ個のアクションの各々により状態が遷移したｋ個の状態の各々をステップ１の状態とする。次に、ステップ１に含まれるｋ個の状態の各々について、同様の処理を行い、ステップ２に遷移する。更に、ステップ２から、バッファが空になり、かつスタックに１つの解析木のみが存在する状態である最終状態になるまで同様の処理を繰り返す。
【００３８】
次に、最終状態の各々について得られたアクション列について、当該アクション列に含まれるアクションを選択する際に算出した、アクションの各々の優先度スコアの総和を当該最終状態のスコアとして算出する。そして、最終状態のスコアが一番高いアクション列に対応する最終状態のスタックに格納されている解析木を、入力部１０において受け付けた文書の修辞構造木として出力部９０に出力する。
【００３９】
重みベクトル記憶部２４には、修辞構造解析を行うために予め学習された重みベクトルが記憶されている。
【００４０】
素性テンプレート記憶部２６には、修辞構造解析を行うために任意に定義されている素性テンプレートが記憶されている。
【００４１】
＜本発明の第１の実施形態に係る構造解析装置の作用＞
次に、本発明の第１の実施形態に係る構造解析装置１００の作用について説明する。構造解析装置１００は、入力部１０によって、図１に示すような各テキスト内のＥＤＵのＩＤ，及び各文に文のＩＤが付与された自然言語で記述された文書を受け付けると、構造解析装置１００によって、図７に示す構造解析処理ルーチンが実行される。
【００４２】
まず、図７に示す構造解析処理ルーチンのステップＳ１００で、受け付けた文書について、重みベクトル記憶部２４に記憶されている重みベクトルと、素性テンプレート記憶部２６に記憶されている素性テンプレートとに基づいて、上述した本実施形態において用いるビーム探索型シフト還元法に従って、各最終状態に至るまでのアクション列を探索する。
【００４３】
次に、ステップＳ１０２で、ステップＳ１００において取得したアクション列の各々について、当該アクション列に含まれるアクションの各々を選択する際に計算した優先度スコアの総和を最終スコアとして算出する。
【００４４】
次に、ステップＳ１０４で、ステップＳ１０２において取得した最終スコアが一番高いアクション列に対応する最終状態の、スタックに格納された解析木を、入力部１０において受け付けた文書の修辞構造木として出力部９０から出力し、構造解析処理ルーチンを終了する。
【００４５】
以上説明したように、本発明の第１の実施形態に係る構造解析装置によれば、シフトアクション、及びレデュースアクションを含む複数のアクションを用いて形成されるアクションの列のうち、初期状態から、最終状態までの各状態遷移に対応するアクションからなるアクションの列であって、かつ、各状態遷移について、遷移前の状態におけるスタックの各要素及びバッファの各談話の基本単位とアクションとの組み合わせと、アクションを決定するための予め求められたモデルとに基づいて算出されるスコアの合計が最大となるアクションの列をビーム探索により探索し、探索されたアクションの列に従って、入力文の構造解析結果を表す解析木を作成することにより解析速度の低下を抑えながら修辞構造解析を精度良く行うことができる。
【００４６】
また、上述の従来方法にビーム探索を導入したことで、解析速度の低下をビーム幅倍程度に抑えながら、修辞構造解析の精度を飛躍的に向上させることができる。これにより、文書要約などの高度な視線言語処理技術の高精度化につなげることができる。
【００４７】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００４８】
次に、第２の実施形態に係る構造解析装置について説明する。第２の実施形態においては、上述したビーム探索型シフト還元法を用いて、談話依存構造解析を行う点が第１の実施形態と異なる。なお、第１の実施形態に係る構造解析装置と同様の構成及び作用については、同一の符号を付して、説明を省略する。
【００４９】
＜本発明の第２の実施形態に構造解析装置の構成＞
次に、本発明の第２の実施形態に係る構造解析装置の構成について説明する。図８に示すように、本発明の本実施形態に係る構造解析装置２００は、ＣＰＵと、ＲＡＭと、後述する構造解析処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。この構造解析装置２００は、機能的には図８に示すように入力部１０と、演算部２２０と、出力部９０とを含んで構成されている。
【００５０】
演算部２２０は、探索部２２２と、重みベクトル記憶部２２４と、素性テンプレート記憶部２２６とを含んで構成されている。
【００５１】
探索部２２２は、入力部１０において受け付けた文書と、重みベクトル記憶部２２４に記憶されている重みベクトルと、素性テンプレート記憶部２２６に記憶されている素性テンプレートとに基づいて、上述した本実施形態において用いる、アクションの定義をシフト、レデュースＬ、及びレデュースＲの３種類として、ビーム探索型シフト還元法に従って、談話依存構造木を作り、出力部９０から出力する。なお、具体的な内容は、上述した第１の実施形態に係る構造解析装置１００の探索部２２と同様であるため、説明は省略する。
【００５２】
重みベクトル記憶部２２４には、談話依存構造解析を行うために予め学習された重みベクトルが記憶されている。
【００５３】
素性テンプレート記憶部２６には、談話依存構造解析を行うために任意に定義されている素性テンプレートが記憶されている。
【００５４】
＜本発明の第２の実施形態に係る構造解析装置の作用＞
次に、第２の実施形態に係る構造解析装置２００の作用について説明する。構造解析装置２００は、入力部１０によって、図１に示すような各テキスト内のＥＤＵのＩＤ，及び各文に文のＩＤが付与された自然言語で記述された文書を受け付けると、構造解析装置２００によって、図９に示す構造解析処理ルーチンが実行される。なお、第１の実施形態に係る構造解析装置１００と同様の作用については、同一の符号を付して説明を省略する。
【００５５】
まず、図９に示す構造解析処理ルーチンのステップＳ２００で、受け付けた文書について、重みベクトル記憶部２２４に記憶されている重みベクトルと、素性テンプレート記憶部２２６に記憶されている素性テンプレートとに基づいて、上述した本実施形態において用いるビーム探索型シフト還元法に従って、各最終状態に至るまでのアクション列を探索する。
【００５６】
ステップＳ２０４で、ステップＳ１０２において取得した最終スコアが一番高いアクション列に対応する最終状態の、スタックに格納された解析木を、入力部１０において受け付けた文書の談話依存構造解析木として出力部９０から出力し、構造解析処理ルーチンを終了する。
【００５７】
以上説明したように、本発明の第２の実施形態に係る構造解析装置によれば、シフトアクション、レデュースＬアクション、及びレデュースＲアクションを含む複数のアクションを用いて形成されるアクションの列のうち、初期状態から、最終状態までの各状態遷移に対応するアクションからなるアクションの列であって、かつ、各状態遷移について、遷移前の状態におけるスタックの各要素及びバッファの各談話の基本単位とアクションとの組み合わせと、アクションを決定するための予め求められたモデルとに基づいて算出されるスコアの合計が最大となるアクションの列をビーム探索により探索し、探索されたアクションの列に従って、入力文の構造解析結果を表す解析木を作成することにより解析速度の低下を抑えながら談話依存構造解析を精度良く行うことができる。
【００５８】
また、与えられた文書に対して、シフト還元法により、談話依存構造木を構築することができる。
【００５９】
また、シフト還元法による談話依存構造解析手法を定義したことで、修辞構造木以外の談話構造の解析が可能になっている。これにより、文書要約などの高度な視線言語処理技術の高精度化につなげることができる。
【００６０】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００６１】
例えば、第１及び第２の実施形態においては、アクションとして、修辞構造解析の場合、シフトアクション、及びレデュースアクションとし、談話依存構造解析の場合、シフトアクション、レデュースＬアクション、及びレデュースＲアクションと定義する場合について説明したがこれに限定されるものではない。修辞構造解析の場合、シフトアクション、及びレデュースアクションが含まれていれば他のアクションも定義してもよい。また、談話依存構造解析の場合も、シフトアクション、レデュースＬアクション、及びレデュースＲアクションが含まれていれば他のアクションも定義してもよい。
【００６２】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能であるし、ネットワークを介して提供することも可能である。
【符号の説明】
【００６３】
１０   入力部
２０,２２０   演算部
２２,２２２   探索部
２４,２２４   重みベクトル記憶部
２６,２２６   素性テンプレート記憶部
９０   出力部
１００,２００ 構造解析装置
【図１】
2017041207.tif 000003
【図２】
2017041207.tif 000004
【図３】
2017041207.tif 000005
【図４】
2017041207.tif 000006
【図５】
2017041207.tif 000007
【図６】
2017041207.tif 000008
【図７】
2017041207.tif 000009
【図８】
2017041207.tif 000010
【図９】
2017041207.tif 000011
【図１０】
2017041207.tif 000012