(57)【要約】【課題】自然な要約を生成することができるようにする。【解決手段】テキスト入力部１が、入力テキストを受け付ける。そして、重要文字列選択部２４が、テキスト入力部１によって受け付けた入力テキストを表す文字列から得られる部分文字列の集合から、部分文字列に含まれる文字の種類、及び部分文字列の言語尤度に基づいて、要約を構成する文字列として相応しくない部分文字列を除去し、除去されなかった部分文字列の集合から得られる部分集合の各々から、長さの上限以下であって、かつ、部分集合に含まれる部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択する。そして、テキスト出力部３が、重要文字列選択部２４によって選択された部分集合を、入力テキストに対応する要約として出力する。【選択図】図１
2015106368.tif 000002
【特許請求の範囲】
【請求項１】
テキスト入力部、重要文字列選択部、及びテキスト出力部を含み、入力テキストから、予め定められた長さの上限以下となるように、前記入力テキストを表す文字列に含まれる部分文字列を選択して、前記入力テキストに対応する要約として出力するテキスト要約装置におけるテキスト要約方法であって、
前記テキスト入力部が、前記入力テキストを受け付けるステップと、
前記重要文字列選択部が、前記テキスト入力部によって受け付けた前記入力テキストを表す文字列から得られる部分文字列の集合から、前記部分文字列に含まれる文字の種類、及び前記部分文字列の言語尤度の少なくとも一方に基づいて、要約を構成する文字列として相応しくない部分文字列を除去し、除去されなかった前記部分文字列の集合から得られる部分集合の各々から、前記長さの上限以下であって、かつ、前記部分集合に含まれる前記部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択するステップと、
前記テキスト出力部が、前記重要文字列選択部によって選択された部分集合を、前記入力テキストに対応する要約として出力するステップと、
を含むテキスト要約方法。
【請求項２】
前記重要文字列選択部が前記部分集合を選択するステップは、前記テキスト入力部によって受け付けた前記入力テキストを表す文字列から得られる部分文字列の集合から、前記部分文字列に含まれる平仮名の割合に基づいて、要約を構成する文字列として相応しくない部分文字列を除去し、除去されなかった前記部分文字列の集合から得られる部分集合の各々から、前記長さの上限以下であって、かつ、前記部分集合に含まれる前記部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択する請求項１記載のテキスト要約方法。
【請求項３】
入力テキストから、予め定められた長さの上限以下となるように、前記入力テキストを表す文字列に含まれる部分文字列を選択して、前記入力テキストに対応する要約として出力するテキスト要約装置であって、
前記入力テキストを受け付けるテキスト入力部と、
前記テキスト入力部によって受け付けた前記入力テキストを表す文字列から得られる部分文字列の集合から、前記部分文字列に含まれる文字の種類、及び前記部分文字列の言語尤度の少なくとも一方に基づいて、要約を構成する文字列として相応しくない部分文字列を除去し、除去されなかった前記部分文字列の集合から得られる部分集合の各々から、前記長さの上限以下であって、かつ、前記部分集合に含まれる前記部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択する重要文字列選択部と、
前記重要文字列選択部によって選択された部分集合を、前記入力テキストに対応する要約として出力するテキスト出力部と、
を含むテキスト要約装置。
【請求項４】
請求項１又は２記載のテキスト要約方法の各ステップをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキスト要約方法、装置、及びプログラムに関し、特に、入力テキストを要約するテキスト要約方法、装置、及びプログラムに関する。
【背景技術】
【０００２】
近年、電子化されたテキストが大量に流通するようになった。そのため、それらのテキストに記述された情報を迅速に把握するため、機械にテキストを要約させる、要約技術の重要性が高まっている。特に、ツイッター（Ｒ）などのマイクロブログの普及によって、極めて大規模なテキスト群が流通するようになった。このようなテキスト群を要約することができれば、その便益は極めて大きい。
【０００３】
現在、テキストを機械に要約させる際には、以下の手続きが取られることが多い。まず、要約の対象となる１つ以上のテキストを、句点で区切るなどの方法で文に分割する。次に、要約対象のテキストから要約にふさわしい文（以下、重要文と呼ぶ）を選び出す。そののち、必要があれば、選び出した文のうち冗長な情報を含むものなどを多少書き換える。最後に、選び出されたテキストを適切に順序付け、連結し、１つの要約として出力する。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】西川仁、長谷川隆明、松尾義博、菊井玄一郎、「文の選択と順序付けを同時に行う評価文書要約モデル」、2013、人工知能学会論文誌、Vol. 28, No. 1, p.88-99
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一方、ツイッター（Ｒ）などのマイクロブログを要約する際には、このような方法には２つの問題がある。１つ目の問題は、文分割である。通常、要約を行う際には、上述のようにまず入力文書を文などの単位に分割し、それらの単位をつなぎ合わせることで要約を生成する。しかし、マイクロブログのテキストは極めて口語的であることに加えて句点などの文境界マーカーを欠いていることが多く、文の範囲が明らかでない。そのため、どのような単位で要約を行うべきかは自明ではない。
【０００６】
例えば、非特許文献１は、複数の文書を要約する際に、文といった単位を仮定している。
【０００７】
しかし、非特許文献１の技術では、マイクロブログにおいては文といった単位は自明ではないため、正しく要約を行うことができるか定かではない。
【０００８】
また、２つ目の問題は、要約のテキストとしての自然性の問題である。マイクロブログのテキストには、人手によって記述され読み手が内容を適切に読み取れるもの以外に、自動生成されたと思われるキーワードを列挙しただけのもの、記号を用いて視覚的な表現を形成するいわゆるアスキーアートなど、要約の一部を成すべきでないテキストが含まれる。
【０００９】
本発明は、上記の事情を鑑みてなされたもので、文境界を欠いた入力テキストであっても自然な要約を得ることができるテキスト要約方法、装置、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために本発明に係るテキスト要約方法は、テキスト入力部、重要文字列選択部、及びテキスト出力部を含み、入力テキストから、予め定められた長さの上限以下となるように、前記入力テキストを表す文字列に含まれる部分文字列を選択して、前記入力テキストに対応する要約として出力するテキスト要約装置におけるテキスト要約方法であって、前記テキスト入力部が、前記入力テキストを受け付けるステップと、前記重要文字列選択部が、前記テキスト入力部によって受け付けた前記入力テキストを表す文字列から得られる部分文字列の集合から、前記部分文字列に含まれる文字の種類、及び前記部分文字列の言語尤度の少なくとも一方に基づいて、要約を構成する文字列として相応しくない部分文字列を除去し、除去されなかった前記部分文字列の集合から得られる部分集合の各々から、前記長さの上限以下であって、かつ、前記部分集合に含まれる前記部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択するステップと、前記テキスト出力部が、前記重要文字列選択部によって選択された部分集合を、前記入力テキストに対応する要約として出力するステップと、を含んで構成されている。
【００１１】
本発明に係るテキスト要約装置は、入力テキストから、予め定められた長さの上限以下となるように、前記入力テキストを表す文字列に含まれる部分文字列を選択して、前記入力テキストに対応する要約として出力するテキスト要約装置であって、前記入力テキストを受け付けるテキスト入力部と、前記テキスト入力部によって受け付けた前記入力テキストを表す文字列から得られる部分文字列の集合から、前記部分文字列に含まれる文字の種類、及び前記部分文字列の言語尤度の少なくとも一方に基づいて、要約を構成する文字列として相応しくない部分文字列を除去し、除去されなかった前記部分文字列の集合から得られる部分集合の各々から、前記長さの上限以下であって、かつ、前記部分集合に含まれる前記部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択する重要文字列選択部と、前記重要文字列選択部によって選択された部分集合を、前記入力テキストに対応する要約として出力するテキスト出力部と、を含んで構成されている。
【００１２】
本発明の前記重要文字列選択部が前記部分集合を選択するステップは、前記テキスト入力部によって受け付けた前記入力テキストを表す文字列から得られる部分文字列の集合から、前記部分文字列に含まれる平仮名の割合に基づいて、要約を構成する文字列として相応しくない部分文字列を除去し、除去されなかった前記部分文字列の集合から得られる部分集合の各々から、前記長さの上限以下であって、かつ、前記部分集合に含まれる前記部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択するようにすることができる。
【００１３】
本発明のプログラムは、本発明に係るテキスト要約方法の各ステップをコンピュータに実行させるためのプログラムである。
【発明の効果】
【００１４】
以上説明したように、本発明のテキスト要約方法、装置、及びプログラムによれば、入力テキストを表す文字列から得られる部分文字列の集合から、部分文字列に含まれる文字の種類、及び部分文字列の言語尤度の少なくとも一方に基づいて、要約を構成する文字列として相応しくない部分文字列を除去し、除去されなかった部分文字列の集合から得られる部分集合の各々から、要約の長さの上限以下であって、かつ、部分集合に含まれる部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択し、選択された部分集合を、入力テキストに対応する要約として出力することにより、文境界を欠いた入力テキストであっても自然な要約を得ることができる、という効果が得られる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施の形態に係るテキスト要約装置の一構成例を示すブロック図である。
【図２】本発明の実施の形態に係るテキスト要約装置に入力される入力テキストの一例を示す図である。
【図３】形態素解析結果の一例を示す図である。
【図４】重要単語リストの一例を示す図である。
【図５】本発明の実施の形態に係るテキスト要約装置におけるテキスト要約処理ルーチンの内容を示すフローチャートである。
【発明を実施するための形態】
【００１６】
＜概要＞
本発明の実施の形態では、入力テキストに対応する要約を生成する際、文などの単位を考えずに、部分文字列を直接抽出の対象とする。すなわち、文の代わりに、マイクロブログのテキストを構成する部分文字列を利用して要約を生成する。また、部分文字列に対して、言語尤度や平仮名の割合に基づくフィルタをかけ、要約として相応しくない部分文字列を除去する。すなわち、本発明の実施の形態では、部分文字列のうち、要約の一部として不適切と思われる部分文字列をフィルタリングすることによって不自然な要約が生成されることを回避する。これらの工夫によって、文境界を欠いたマイクロブログのようなテキストであっても、自然な要約を生成することができる。
【００１７】
＜テキスト要約装置のシステム構成＞
以下、図面を参照して本発明の実施の形態を詳細に説明する。図１は、本発明の実施の形態に係るテキスト要約装置１００を示すブロック図である。テキスト要約装置１００は、入力テキストから、予め定められた長さの上限Ｋ以下となるように、部分文字列を選択して、入力テキストに対応する要約を生成する。テキスト要約装置１００は、ＣＰＵと、ＲＡＭと、後述するテキスト要約処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。
【００１８】
本実施の形態に係るテキスト要約装置１００は、図１に示すように、テキスト入力部１と、演算部２と、テキスト出力部３とを備えている。
【００１９】
テキスト入力部１は、要約対象の入力テキストを受け付ける。入力テキストは、マイクロブログから収集された複数のテキストである。入力テキストの形式の一例を図２に示す。図２はマイクロブログの本文である複数のテキストが入力テキストとして与えられた場合である。例えば、テキスト「今日、街で、来日中のプーチン大統領の車列を見たよ！」がテキストの番号と共に与えられている。また、テキスト入力部１は、要約の長さの上限Ｋを受け付ける。
【００２０】
演算部２は、テキスト解析部２０と、重要単語リストデータベース２２と、重要文字列選択部２４とを備えている。
【００２１】
テキスト解析部２０は、テキスト入力部１によって受け付けた入力テキストに対して、文分割、及び形態素解析を行う。文分割については句点やスラッシュなどを文境界とすることにより行うことができる。また、形態素解析については公知の既存の方法を利用することにより行うことができる（例えば、参考文献１（Takeshi Fuchi and Shinichiro Takagi，“Japanese Morphological Analyzer using Word Co-occurrence‐JTAG.”，1998，In Proc. of the 36th Annual Meeting of the Association for Computational Linguistics and 17th International Conference on Computational Linguistics (Volume 1)，p.409-413）を参照。）。例えば図３では、「今日、街で、来日中のプーチン大統領の車列を見たよ！」という文の解析結果を示しており、空白をデリミターとして、１つの行が単語の表記、品詞、読み、標準形を含んで構成されている。
【００２２】
重要単語リストデータベース２２には、複数の単語の各々について重要度が予め付与されたリストである重要単語リストが格納されている。重要単語リストは、要約を生成するにあたり要約に含まれるべき重要単語のリストである。重要単語リストの形式の一例を図４に示す。図４では３つのキーワード「プーチン大統領」、「銀座」、「百貨店」がその番号及び重要度と共に与えられている。
【００２３】
重要文字列選択部２４は、入力テキストを表す文字列から得られる部分文字列の集合Ｄから、当該部分文字列に含まれる文字の種類、及び当該部分文字列の言語尤度に基づいて、要約を構成する文字列として相応しくない部分文字列を除去する。そして、重要文字列選択部２４は、重要単語リストデータベース２２に格納された重要単語リストを用いて、除去されなかった部分文字列の集合Ｄ’から得られる部分集合Ｓの各々から、テキスト入力部１によって受け付けた要約の長さの上限Ｋ以下であって、かつ、部分集合Ｓに含まれる部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択する。
【００２４】
具体的には、重要文字列選択部２４は、まず、入力テキストを表す文字列から得られる複数の部分文字列を列挙し、部分文字列の集合を生成する。このとき、事前に、１つの部分文字列の長さは予め指定されているものとする。例えば１つの部分文字列の長さが１０文字と指定されているとする。このとき、上記例として示した文「今日、街で、来日中のプーチン大統領の車列を見たよ！」からは「今日、街で、来日中の」という１０文字の部分文字列や、「街で、来日中のプーチ」という１０文字の部分文字列が得られる。また、部分文字列を列挙する際には、テキスト解析部２０による文分割処理によって入力テキストから得られる文の先頭から１文字ずつずらして、取り得る１０文字の部分文字列を列挙してもよいし、テキスト解析部２０で得られた形態素の境界を利用してもよいし、あるいはテキスト解析部２０で係り受け解析器を利用するなどして、文節の境界などを利用してもよい。本実施の形態では、入力テキストから得られる各文の先頭から１文字ずつずらして、取り得る部分文字列を列挙して、部分文字列の集合を生成する。
【００２５】
入力テキストに含まれるｎ個のテキスト（上記図２の例では３個）から得られるｍ個の部分文字列を含む、部分文字列の集合をＤとする。部分文字列の集合Ｄの中には、要約を構成する文字列として相応しくない部分文字列が混入していると考えられる。例えば、単にキーワードが列挙されているものや、アスキーアートの一部をなしているため記号のみからなっているものなどが存在しうる。このようなものを要約として含めないため、重要文字列選択部２４は、部分文字列の集合Ｄに対してフィルタ処理を行い、要約を構成する文字列として相応しくない部分文字列を除去する。
【００２６】
重要文字列選択部２４におけるフィルタ処理としては、一例として、２つの方法が利用できる。１つの方法としては、部分文字列を構成する文字の種類に基づくもので、例えば部分文字列を構成する文字の平仮名の割合に基づいて、要約を構成する文字列として相応しくない部分文字列を除去する。例えば、部分文字列の文字のうち、３０％以上が平仮名でなければ、当該部分文字列を、要約を構成する文字列として相応しくない部分文字列として除去する、といったフィルタ処理を行うことができる。平仮名の割合は事前に指定しておくものとする。例えば、部分文字列が１０文字である場合は、その中に平仮名を３文字以上含まないものは要約を構成する部分文字列の対象とはしない。
【００２７】
もう１つの方法として、重要文字列選択部２４は、言語尤度を用いて部分文字列の集合に対してフィルタ処理を行い、要約を構成する文字列として相応しくない部分文字列を除去する。重要文字列選択部２４は、部分文字列の集合に含まれる部分文字列の各々について、テキスト解析部２０による形態素解析結果から得られた単語列と、事前に用意しておいたｎ−ｇｒａｍ言語モデルとに基づいて、当該部分文字列の言語尤度を計算する。そして、当該部分文字列の言語尤度が一定以下の場合、当該部分文字列を除去する。
【００２８】
重要文字列選択部２４は、上記のように部分文字列の集合Ｄに対してフィルタ処理を行い、除去されなかった部分文字列の集合をＤ’とする。
【００２９】
次に、重要文字列選択部２４は、重要単語リストデータベース２２に格納された重要単語リストを用いて、部分文字列の集合Ｄ’から得られる部分集合Ｓの各々から、テキスト入力部１によって受け付けた要約の長さの上限Ｋ以下であって、かつ、部分集合Ｓに含まれる部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択する。
【００３０】
具体的には、要約の長さの上限Ｋが、部分文字列の数を表す。また、部分文字列の集合Ｄ’の部分集合Ｓ⊆Ｄ’のうち、要約としての良し悪し（以降、スコアと呼ぶ）を与える関数ｆ（Ｓ）を最大化し、かつ部分集合Ｓに含まれる部分文字列の数｜Ｓ｜がＫを超えないものを選び出す。これは以下のように定式化できる。
【００３１】
【数１】
2015106368.tif 000003
【００３２】
上記（１）式の関数ｆ（Ｓ）は、一例として、部分集合Ｓが被覆する、重要単語リストデータベース２２の重要単語リストに含まれる単語ｔの重要度の和とすることができ、以下の（２）式のように定式化できる。
【００３３】
【数２】
2015106368.tif 000004
【００３４】
ここで、関数ＩｍｐｏｒｔａｎｔＷｏｒｄｓ（Ｓ）は、部分集合Ｓに含まれる重要単語のリストを返す関数である。また、ｗｔは単語ｔの重要度であり、重要単語リストデータベース２２の重要単語リストに格納されている。 
【００３５】
上記（１）式のａｒｇｍａｘ操作の実行には、例えば参考文献２（Samir Khuller，Anna Moss and Joseph Naor，“The Budgeted Maximum Coverage Problem.”，1999，Information Processing Letters，Vol. 70, No.1, p.39-45）記載の貪欲法に基づくアルゴリズムなどが利用できる。
【００３６】
テキスト出力部３は、重要文字列選択部２４によって選択された部分集合に含まれる部分文字列のリストを、入力テキストに対応する要約として出力する。
【００３７】
＜テキスト要約装置の作用＞
次に、本実施の形態に係るテキスト要約装置１００の作用について説明する。要約対象の入力テキストと、要約の長さの上限Ｋとがテキスト要約装置１００に入力されると、テキスト要約装置１００によって、図５に示すテキスト要約処理ルーチンが実行される。
【００３８】
まず、ステップＳ１００において、テキスト入力部１によって、入力された要約対象の入力テキストと、要約の長さの上限Ｋとを受け付ける。
【００３９】
ステップＳ１０２において、テキスト解析部２０によって、上記ステップＳ１００で受け付けた入力テキストに対し、文分割、及び形態素解析を行う。
【００４０】
ステップＳ１０４において、重要文字列選択部２４によって、上記ステップＳ１０２による文分割及び形態素解析の結果を用いて、上記ステップＳ１００で受け付けた入力テキストから、部分文字列の集合Ｄを生成する。
【００４１】
ステップＳ１０６において、上記ステップＳ１０４で生成された部分文字列の集合Ｄから、当該部分文字列に含まれる文字の種類、及び上記ステップＳ１０２の形態素解析結果から得られる当該部分文字列の言語尤度に基づいて、要約を構成する文字列として相応しくない部分文字列を除去する。
【００４２】
ステップＳ１０８において、重要文字列選択部２４によって、重要単語リストデータベース２２に格納された重要単語リストを用いて、上記ステップＳ１０６で除去されなかった部分文字列の集合Ｄ’から得られる部分集合Ｓの各々から、テキスト入力部１によって受け付けた要約の長さの上限Ｋ以下であって、かつ、部分集合Ｓに含まれる部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択する。
【００４３】
ステップＳ１１０において、テキスト出力部３によって、上記ステップＳ１０８で選択された部分集合に含まれる部分文字列のリストを、入力テキストに対応する要約として出力して、テキスト要約処理ルーチンを終了する。
【００４４】
以上説明したように、本実施の形態によれば、入力テキストを表す文字列から得られる部分文字列の集合Ｄから、部分文字列に含まれる文字の種類、及び部分文字列の言語尤度に基づいて、要約を構成する文字列として相応しくない部分文字列を除去し、除去されなかった部分文字列の集合Ｄ’から得られる部分集合Ｓの各々から、要約の長さの上限以下であって、かつ、部分集合Ｓに含まれる部分文字列の各々に含まれる単語の各々の重要度の総和が最大となる部分集合を選択し、選択された部分集合に含まれる部分文字列のリストを、入力テキストに対応する要約として出力することにより、文境界を欠いたマイクロブログのテキストであっても、自然な要約を得ることができる。
【００４５】
また、文ではなく部分文字列を選択して要約を作成することで、陽な文境界が不要となり、また要約に含めるべきでない部分文字列をフィルタすることによって、マイクロブログのようなテキストにおいても自然な要約の生成が可能となる。
【００４６】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００４７】
例えば、本実施の形態では、テキスト解析部２０によって入力テキストを文に分割する場合を例に説明したが、これに限定されるものではない。重要文字列選択部２４が、文の境界を用いずに、入力テキストを表す文字列から、部分文字列の集合Ｄを生成する場合には、テキスト解析部２０による文分割を省略してもよい。
【００４８】
また、重要文字列選択部２４は、部分文字列の集合Ｄから、当該部分文字列に含まれる文字の種類、及び当該部分文字列の言語尤度に基づいて、要約を構成する文字列として相応しくない部分文字列を除去する場合を例に説明したが、これに限定されるものではなく、部分文字列の集合Ｄから、当該部分文字列に含まれる文字の種類、及び当該部分文字列の言語尤度の何れか一方に基づいて、要約を構成する文字列として相応しくない部分文字列を除去してもよい。
【００４９】
また、上記のように、重要文字列選択部２４が、言語尤度を用いずに、部分文字列の集合Ｄから当該部分文字列に含まれる文字の種類に基づいて、要約を構成する文字列として相応しくない部分文字列を除去する場合には、テキスト解析部２０による形態素解析を省略してもよい。
【００５０】
また、重要単語リストデータベース２２は、外部に設けられ、テキスト要約装置とネットワークで接続されていてもよい。
【００５１】
上述のテキスト要約装置は、内部にコンピュータシステムを有しているが、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
【００５２】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【００５３】
１     テキスト入力部
２     演算部
３     テキスト出力部
２０   テキスト解析部
２２   重要単語リストデータベース
２４   重要文字列選択部
１００ テキスト要約装置
【図１】
2015106368.tif 000005
【図２】
2015106368.tif 000006
【図３】
2015106368.tif 000007
【図４】
2015106368.tif 000008
【図５】
2015106368.tif 000009