(57)【要約】【課題】ユニット毎の意味を考慮して、精度良くシステム要約を評価することができる。【解決手段】ユニット分割部が、要約対象の文書と、システム要約との各々を、ユニットに分割する。オラクル生成部が、参照要約の各々について、参照要約に対する、要約対象の文書のユニットの部分集合の評価関数のスコアを最大とする、長さ制約を満たすユニットの部分集合であるオラクルを生成する。オラクルユニットスコア決定部が、生成されたオラクルに基づいて、オラクルの集合に含まれるユニットの各々のスコアを決定する。巣ステムユニットスコア決定部が、システム要約のユニットの各々について、オラクルの集合に含まれるユニットの中から、対応するユニットを求め、システム要約のユニットのスコアを決定する。評価スコア決定部が、システム要約のユニットのスコアに基づいて、システム要約のスコアを決定する。【選択図】図１
2019148934.tif 000002
【特許請求の範囲】
【請求項１】
要約対象の文書と、前記要約対象の文書について予め生成されたシステム要約との各々を、予め定められた単位であるユニットに分割するユニット分割部と、
前記要約対象の文書について予め作成された参照要約の各々について、前記参照要約と、前記要約対象の文書の前記ユニットの集合とに基づいて、前記参照要約に対する、前記要約対象の文書の前記ユニットの部分集合の評価関数のスコアを最大とする、長さ制約を満たすユニットの部分集合であるオラクルを生成するオラクル生成部と、
前記参照要約の各々について生成された前記オラクルに基づいて、前記オラクルの集合に含まれるユニットの各々のスコアを決定するオラクルユニットスコア決定部と、
前記システム要約のユニットの各々について、前記オラクルの集合に含まれるユニットの中から、対応するユニットを求め、前記システム要約のユニットのスコアを決定するシステムユニットスコア決定部と、
前記システム要約のユニットのスコアに基づいて、前記システム要約のスコアを決定する評価スコア決定部と、
を含む要約評価装置。
【請求項２】
前記システムユニットスコア決定部は、前記オラクルの集合に含まれるユニットの各々と対応する前記システム要約のユニットが最大１つとなるように、前記システム要約のユニットの各々について、前記オラクルの集合に含まれるユニットの中から、対応するユニットを割り当てる請求項１記載の要約評価装置。
【請求項３】
前記システムユニットスコア決定部は、ユニット間で共通する部分文字列による類似度に基づいて、前記システム要約のユニットの各々について、前記オラクルの集合に含まれるユニットの中から、対応するユニットを求める請求項１又は２記載の要約評価装置。
【請求項４】
前記オラクルの集合に含まれるユニットの中から、前記長さ制約を満たす前記オラクルに含まれるユニットの組み合わせを選択することにより前記オラクルの最大スコアを計算する最大スコア計算部を更に含み、
前記評価スコア決定部は、前記最大スコアに基づいて前記システム要約のユニットのスコアを正規化し、前記システム要約のスコアを決定する請求項１〜請求項３の何れか１項記載の要約評価装置。
【請求項５】
ユニット分割部が、要約対象の文書と、前記要約対象の文書について予め生成されたシステム要約との各々を、予め定められた単位であるユニットに分割するステップと、
オラクル生成部が、前記要約対象の文書について予め作成された参照要約の各々について、前記参照要約と、前記要約対象の文書の前記ユニットの集合とに基づいて、前記参照要約に対する、前記要約対象の文書の前記ユニットの部分集合の評価関数のスコアを最大とする、長さ制約を満たすユニットの部分集合であるオラクルを生成するステップと、
オラクルユニットスコア決定部が、前記参照要約の各々について生成された前記オラクルに基づいて、前記オラクルの集合に含まれるユニットの各々のスコアを決定するステップと、
システムユニットスコア決定部が、前記システム要約のユニットの各々について、前記オラクルの集合に含まれるユニットの中から、対応するユニットを求め、前記システム要約のユニットのスコアを決定するステップと、
評価スコア決定部が、前記システム要約のユニットのスコアに基づいて、前記システム要約のスコアを決定するステップと、
を含む要約評価方法。
【請求項６】
コンピュータを、請求項１〜請求項４のいずれか１項に記載の要約評価装置の各部として機能させるためのプログラム。
【請求項７】
コンピュータを、請求項１〜請求項４のいずれか１項に記載の要約評価装置の各部として機能させるためのプログラムを格納する記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、要約評価装置、方法、プログラム、及び記憶媒体に係り、特に、システム要約を評価するための要約評価装置、方法、プログラム、及び記憶媒体に関する。
【背景技術】
【０００２】
従来より、計算機を用いて自動的に言語を処理する自然言語処理分野において、人間が作成した正解の要約（以降、参照要約）が与えられた際にそれを用いてシステム要約を自動的に採点する技術がある。
【０００３】
要約の自動評価法として、ROUGE（非特許文献１）やBasic Elementsのようにn-gramや係り受けタプルのような文内のそれよりも小さな断片のシステム要約と参照要約との間での一致率に基づき決定する手法がよく利用される。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Chin-Yew Lin. 2004. ROUGE: A Package for Automatic Evaluation of Summaries. In Proc. of Workshop on Text Summarization Branches Out. pages 7481.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ROUGEやBasic Elementのような評価法はテキスト中の文よりも小さな断片の有無によりシステム要約を評価する。一方、要約システムの多くは「文」や「節」などのテキスト中の有意味な断片を抽出することで要約を生成する。
【０００６】
よって、システムのエラー分析を行うことを考えれば、n-gramや係り受けタプルの抽出が成功したか否かをみるより、「文」や「節」の抽出が成功したか否かをみるほうがより直感的な分析が可能となる。しかし、要約の自動評価においては、ROUGEやBasic Elementsがデファクトスタンダードであり、これらのスコアを向上させることが必要とされる。
【０００７】
本発明は、上記問題点を解決するために成されたものであり、ユニット毎の意味を考慮して、精度良くシステム要約を評価することができる要約評価装置、方法、プログラム、及び記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、第１の発明に係る要約評価装置は、要約対象の文書と、前記要約対象の文書について予め生成されたシステム要約との各々を、予め定められた単位であるユニットに分割するユニット分割部と、前記要約対象の文書について予め作成された参照要約の各々について、前記参照要約と、前記要約対象の文書の前記ユニットの集合とに基づいて、前記参照要約に対する、前記要約対象の文書の前記ユニットの部分集合の評価関数のスコアを最大とする、長さ制約を満たすユニットの部分集合であるオラクルを生成するオラクル生成部と、前記参照要約の各々について生成された前記オラクルに基づいて、前記オラクルの集合に含まれるユニットの各々のスコアを決定するオラクルユニットスコア決定部と、前記システム要約のユニットの各々について、前記オラクルの集合に含まれるユニットの中から、対応するユニットを求め、前記システム要約のユニットのスコアを決定するシステムユニットスコア決定部と、前記システム要約のユニットのスコアに基づいて、前記システム要約のスコアを決定する評価スコア決定部と、を含んで構成されている。
【０００９】
第２の発明に係る要約評価方法は、ユニット分割部が、要約対象の文書と、前記要約対象の文書について予め生成されたシステム要約との各々を、予め定められた単位であるユニットに分割するステップと、オラクル生成部が、前記要約対象の文書について予め作成された参照要約の各々について、前記参照要約と、前記要約対象の文書の前記ユニットの集合とに基づいて、前記参照要約に対する、前記要約対象の文書の前記ユニットの部分集合の評価関数のスコアを最大とする、長さ制約を満たすユニットの部分集合であるオラクルを生成するステップと、オラクルユニットスコア決定部が、前記参照要約の各々について生成された前記オラクルに基づいて、前記オラクルの集合に含まれるユニットの各々のスコアを決定するステップと、システムユニットスコア決定部が、前記システム要約のユニットの各々について、前記オラクルの集合に含まれるユニットの中から、対応するユニットを求め、前記システム要約のユニットのスコアを決定するステップと、評価スコア決定部が、前記システム要約のユニットのスコアに基づいて、前記システム要約のスコアを決定するステップと、を含んで実行することを特徴とする。
【００１０】
第３の発明に係るプログラムは、コンピュータを、第１の発明に係る要約評価装置の各部として機能させるためのプログラムである。
【００１１】
第４の発明に係る記憶媒体は、コンピュータを、第１の発明に係る要約評価装置の各部として機能させるためのプログラムを格納する記憶媒体である。
【発明の効果】
【００１２】
本発明の要約評価装置、方法、プログラム、及び記憶媒体によれば、要約対象の文書と、要約対象の文書について予め生成されたシステム要約との各々を、予め定められた単位であるユニットに分割し、要約対象の文書について予め作成された参照要約の各々について、参照要約と、要約対象の文書の前記ユニットの集合とに基づいて、参照要約に対する、要約対象の文書のユニットの部分集合の評価関数のスコアを最大とする、長さ制約を満たすユニットの部分集合であるオラクルを生成し、生成されたオラクルに基づいて、オラクルの集合に含まれるユニットの各々のスコアを決定し、システム要約のユニットの各々について、オラクルの集合に含まれるユニットの中から、対応するユニットを求め、システム要約のユニットのスコアを決定し、システム要約のユニットのスコアに基づいて、システム要約のスコアを決定することにより、ユニット毎の意味を考慮して、精度良くシステム要約を評価することができる、という効果が得られる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態に係る要約評価装置の構成を示すブロック図である。
【図２】ユニットの割当問題の対応関係の一例を示す図である。
【図３】本発明の実施の形態に係る要約評価装置における要約評価処理ルーチンを示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１５】
＜本発明の実施の形態に係る概要＞
【００１６】
本発明の実施の形態では、要約システムの抽出単位が定まった場合、その抽出単位に基づきROUGEやBasic Elementsを最大化する要約であるオラクルを利用した自動評価指標を提案する。これを用いることで要約システムが文や節の抽出に成功したか否かを直接分析できる。さらに、本自動評価スコアを最大化することはROUGEやBasic Elementsを最大化することにつながるので、自動評価スコア自体もROUGEやBaisc Elementsと強い関連をもたせることができる。
【００１７】
＜本発明の実施の形態に係る要約評価装置の構成＞
【００１８】
次に、本発明の実施の形態に係る要約評価装置の構成について説明する。図１に示すように、本発明の実施の形態に係る要約評価装置１００は、ＣＰＵと、ＲＡＭと、後述する要約評価処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。この要約評価装置１００は、機能的には図１に示すように入力部１０と、演算部２０と、出力部５０とを備えている。
【００１９】
入力部１０は、入力として要約対象の原文書（以下、単に文書と記載する）、要約対象の文書について作成されたＫ個の参照要約、及び要約対象の文書について生成されたシステム要約を受け付ける。なお、文書は文書群を受け付け、当該文書群に対応する参照要約、及びシステム要約を受け付けるようにしてもよい。
【００２０】
演算部２０は、ユニット分割部３０と、オラクル生成部３２と、オラクルユニットスコア決定部３４と、システムユニットスコア決定部３６と、最大スコア計算部３８と、評価スコア決定部４０とを含んで構成されている。
【００２１】
演算部２０の各処理部の各入出力の概要について説明する。まず、文書とシステム要約とをユニット分割部３０を用いてユニット（文や節など）へと分割する。次に、Ｋ個の参照要約とユニットへと分割した原文書（群）をオラクル生成部３２へ入力し、Ｋ個のオラクルを得る。ここで、オラクルとは要約の評価関数であるROUGEやBasic Elementsを最大化するユニットの集合である。そして、得られたオラクルに含まれるユニットに対し１からＫのスコアをオラクルユニットスコア決定部３４にて与える。ここで、Ｋ個のすべてのオラクルに含まれるユニットはスコアＫを獲得し、ただひとつのオラクルにしか出現しないユニットのスコアは１となる。次に、システム要約に含まれるユニットとオラクルに含まれるユニットの対応関係を決定し、オラクルユニットのスコアを考慮しシステムユニットのスコアをシステムユニットスコア決定部３６にて決定する。ここで、システムユニットスコアの和を［０，１］のスコアに正規化するため、オラクルユニットスコアを用いて与えられた要約長のもとでのオラクルユニットスコアの和の最大値を最大スコア計算部３８にて計算する。評価スコア決定部４０にてシステムユニットスコアの和をオラクルユニットスコアの和の最大値で割ることにより評価スコアを出力する。
【００２２】
次に演算部２０の各処理部の詳細について説明する。
【００２３】
ユニット分割部３０は、入力部１０で受け付けた要約対象の文書と、当該文書について生成されたシステム要約との各々を、予め定められた単位であるユニットに分割する。分割は「文」、「節」といったテキスト中の連続かつ有意味な連続したユニットの系列へと分割する。ユニットとして「文」を考えるときは、句点を手がかりにしたり、既存の文境界同定ツールを使えばよい。同様に「節」を考える場合には既存の節境界同定ツールを使えば良い。ユニット分割部３０により、文書、システム要約はそれぞれ、ユニット集合Ｓ＝{Ｓ１, Ｓ2,...,Ｓn,Ｃ＝ｃ１,ｃ２,...,ｃｋ}として表現される。
【００２４】
オラクル生成部３２は、入力部１０で受け付けた文書について作成されたＫ個の参照要約の各々について、参照要約と、ユニット分割部３０で分割された文書のユニットの集合とに基づいて、参照要約に対する、要約対象の文書のユニットの部分集合の評価関数のスコアを最大とする、長さ制約を満たすユニットの部分集合であるオラクルを生成する。オラクルは、長さ制約のもとある評価関数を最大とする文書のユニットの部分集合として、以下（１）式で定義される。
【００２５】
【数１】
2019148934.tif 000003
・・・（１）
【００２６】
Ｒは参照要約の集合、Ｈはユニット集合、ｆはそれらに対して評価スコアを与える関数であり、ROUGEやBasic Elementsなどが利用できる。Ｌｍａｘは要約長の制約であり、参照要約の長さ（単語数、バイト数）が用いられる。オラクルを生成するには非特許文献２の技術を利用すれば良い。オラクル生成部３２では、入力として受け取ったＫ個の参照要約に対してＫ個のオラクルＯ１,Ｏ２,...,ＯＫを生成する。
【００２７】
非特許文献２：Tsutomu Hirao, Masaaki Nishino, Jun Suzuki, and Masaaki Nagata. 2017. Enumeration of extractive oracle summaries. In Proc. of the 15th Conference of the European Chapter of the Association for Computational Linguistics (EACL). pages 386396.
【００２８】
オラクルユニットスコア決定部３４は、オラクル生成部３２で参照要約の各々について生成されたオラクルに基づいて、オラクルの集合に含まれるユニットの各々のスコアを決定する。Ｋ個のオラクルに含まれるユニットのスコアを、それぞれのユニットが何個のオラクルに出現したかという情報を用いて決定する。いま、Ｋ個のオラクルに含まれるユニット集合を
2019148934.tif 000004
とすると、Ｕの要素ｕのスコアはｃｎｔ（ｕ）として表される。ｃｎｔ（）は、ｕが何個のオラクルに出現したかを返す関数である。つまり、ｃｎｔ（）は最大でＫ、最小で１となる。
【００２９】
システムユニットスコア決定部３６は、システム要約のユニットの各々について、オラクルの集合に含まれるユニットの中から、対応するユニットを求め、システム要約のユニットのスコアを決定する。
【００３０】
以下に説明するように、システム要約から得たユニット集合Ｃの各ユニットｃのスコアを、オラクルから得たユニット集合Ｕの各ユニットｕのスコアを利用して決定する。単純にはｃのスコアはＵ中でｃと最も類似するｕのスコア、ｃｎｔ（ｕ）となるが、ユニット集合Ｃ中の要素が似たようなものばかりの場合、それらすべてが同じｕと対応づくこととなり高いスコアを得てしまう。これを避けるため、オラクルの集合に含まれるユニットｃに対応づくシステム要約のユニットｕが最大一つとなるような制約を設けた以下（２）式の割当問題を解くことでｃに対して唯一のｕを割り当てる。図２にｃｉとｕｊの対応関係を示す。
【００３１】
【数２】
2019148934.tif 000005
・・・（２）
【００３２】
ｘｉ,ｊはｃｉとｕｊが対応づく場合に１、そうでない場合０となるバイナリ変数、ｓｉｍ（,）は２つのユニットの間の類似度を返す関数である。ｓｉｍ（，）には、これまでに提案されている様々な類似度を利用可能である。例えば、ｃｉとｕｊの間の最長一致共通部分単語列を［０，１］のスコアに正規化したものを利用すればよい。このようにユニット間で共通する部分文字列による類似度に基づいて、システム要約のユニットの各々について、オラクルの集合に含まれるユニットの中から、対応するユニットを求める。
【００３３】
割当問題を解くことにより、ｃｉに対して最適なｕが決定され、ｕｊに対して対応がつくｃは最大で１つとなる。ｃｉに対応づくｕのインデックスをｏ（ｉ）とすると、システム要約のユニットｃｉのスコアは、ｃｉ＝ｓｉｍ（ｃｉ,ｕｏ（ｉ））ｃｎｔ（ｕｏ（ｉ））となる。したがって。システム要約のスコアは各ユニットのスコアの和となり以下（３）式で表される。
【００３４】
【数３】
2019148934.tif 000006
・・・（３）
【００３５】
最大スコア計算部３８は、オラクルの集合に含まれるユニットの中から、長さ制約を満たすユニットの組み合わせを選択することにより、オラクルの集合に含まれるユニットの組み合わせの最大スコアを計算する。オラクルの最大のスコアを求めるのは、システムユニットスコア決定部３６で求めたＳｃｏｒｅ（Ｃ）は正規化されていないためこのままでは扱いにくいため、Ｓｃｏｒｅ（Ｃ）を［０，１］の値をとるように正規化するためである。いま、Ｕの要素にはｃｎｔ（ｕ）というスコアが与えられているので、要約の長さ制約のもとｕを組合せて最大のスコアを得る要約は以下（４）式の整数計画問題を解くことで求まる。
【００３６】
【数４】
2019148934.tif 000007
・・・（４）
【００３７】
ここでｘｊはｊ番目のユニットを要約に含めるか否かを表すバイナリ変数、ｌｊはｊ番目のユニットの長さ（単語数、又はバイト数）を表す。
【００３８】
評価スコア決定部４０は、最大スコア計算部３８で求めた最大スコアに基づいてシステム要約のユニットのスコアを正規化し、システム要約のスコアを決定する。
【００３９】
最大スコア計算部３８で求めた要約の最大スコアをＳｃｏｒｅｍａｘとすると、正規化したシステム要約のユニットのスコアの和は以下の（５）式により求まる。
【００４０】
【数５】
2019148934.tif 000008
・・・（５）
【００４１】
なお、正規化せずに扱う場合には、上記（３）式によりシステム要約のユニットのスコアを求めればよい。
【００４２】
以上のように、本発明の実施の形態の手法によれば、Ｋ個の参照要約それぞれに対し、ROUGEやBasic Elementsのような従来の評価スコアを最大化する文、節などのユニット集合であるオラクルを求め、オラクルに含まれるユニットに基づきシステムのユニットを文、節などを考慮して評価することができる。
【００４３】
また、オラクルのユニットとシステムのユニットの対応関係の割当問題を解くことで決定することで、一部のユニットが不用意に高いスコアを得てしまうことを防止できる。
【００４４】
また、要約システムがどのユニットを選択するのに失敗したか成功したかが明らかになる。
【００４５】
＜本発明の実施の形態に係る要約評価装置の作用＞
【００４６】
次に、本発明の実施の形態に係る要約評価装置１００の作用について説明する。入力部１０において要約対象の文書、要約対象の文書について作成されたＫ個の参照要約、及び要約対象の文書について生成されたシステム要約を受け付けると、要約評価装置１００は、図３に示す要約評価処理ルーチンを実行する。
【００４７】
まず、ステップＳ１００では、入力部１０において受け付けた要約対象の文書と、当該文書について生成されたシステム要約との各々を、予め定められた単位であるユニットに分割する。
【００４８】
次に、ステップＳ１０２では、入力部１０で受け付けた文書について作成されたＫ個の参照要約の各々について、参照要約と、ユニット分割部３０で分割された文書のユニットの集合とに基づいて、上記（１）式に従って、参照要約に対する、要約対象の文書のユニットの部分集合の評価関数のスコアを最大とする、長さ制約を満たすユニットの部分集合であるオラクルを生成する。
【００４９】
ステップＳ１０４では、ステップＳ１０２で参照要約の各々について生成されたオラクルに基づいて、オラクルの集合に含まれるユニットの各々のスコアを決定する。
【００５０】
ステップＳ１０６では、システム要約のユニットの各々について、オラクルの集合に含まれるユニットの中から、オラクルの集合に含まれるユニットｃに対応づくシステム要約のユニットｕが最大で一つとなるような制約を設けた上記（２）式の割当問題を解くことで、システム要約のユニットのスコアを決定する。
【００５１】
ステップＳ１０８では、オラクルの集合に含まれるユニットの中から、上記（４）式に従って、長さ制約を満たすオラクルに含まれるユニットの組み合わせを選択することによりオラクルの集合に含まれるユニットの組み合わせの最大スコアを計算する。
【００５２】
ステップＳ１１０では、ステップＳ１０８で求めた最大スコアに基づいて、上記（５）式に従って、システム要約のユニットのスコアを正規化し、システム要約のスコアを決定し、出力部５０に出力する。
【００５３】
以上説明したように、本発明の実施の形態に係る要約評価装置によれば、要約対象の文書と、要約対象の文書について予め生成されたシステム要約との各々を、予め定められた単位であるユニットに分割し、要約対象の文書について予め作成された参照要約の各々について、参照要約と、要約対象の文書の前記ユニットの集合とに基づいて、参照要約に対する、要約対象の文書のユニットの部分集合の評価関数のスコアを最大とする、長さ制約を満たすユニットの部分集合であるオラクルを生成し、生成されたオラクルに基づいて、オラクルの集合に含まれるユニットの各々のスコアを決定し、システム要約のユニットの各々について、オラクルの集合に含まれるユニットの中から、対応するユニットを求め、システム要約のユニットのスコアを決定し、オラクルの最大スコアに基づいて、システム要約のユニットのスコアを正規化してシステム要約のスコアを決定することにより、ユニット毎の意味を考慮して、精度良くシステム要約を評価することができる。
【００５４】
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００５５】
また、上述した実施の形態では、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記憶媒体に格納して提供することも可能であるし、ネットワークを介して提供することも可能である。
【符号の説明】
【００５６】
１０   入力部
２０   演算部
３０   ユニット分割部
３２   オラクル生成部
３４   オラクルユニットスコア決定部
３６   システムユニットスコア決定部
３８   最大スコア計算部
４０   評価スコア決定部
５０   出力部
１００ 要約評価装置
【図１】
2019148934.tif 000009
【図２】
2019148934.tif 000010
【図３】
2019148934.tif 000011