(57)【特許請求の範囲】
【請求項１】
１以上の入力文からなるテキストデータを要約するテキスト要約装置であって、
２つの素性要素の順序を考慮した組合せである素性に対する重みパラメタと、文を構成する文要素に対する文要素スコアを予め記憶しておく記憶部と、
入力文を変換し、各入力文に対し１以上の変換文を生成する変換文生成部と、
前記変換文から素性要素を抽出する素性要素抽出部と、
各変換文に含まれる文要素に対する前記文要素スコアを用いて、各変換文の内容性スコアを求める内容性スコア計算部と、
前記素性要素抽出部で抽出した素性要素と前記重みパラメタを用いて、変換文の連接スコアを求める連接スコア計算部と、
前記内容性スコアと前記連接スコアの和が、最大値となる、または、最大値の近似値となる変換文の順列を探索する重要文順列探索部と、を有する、
ことを特徴とするテキスト要約装置。
【請求項２】
請求項１記載のテキスト要約装置であって、
さらに前記記憶部は、単語のつながりの確率を言語モデルとして記憶し、
さらに前記変換文生成部は、入力文を用いて、各入力文に対し１以上の短縮文を生成する短縮文生成部を備える、
ことを特徴とするテキスト要約装置。
【請求項３】
請求項１または２記載のテキスト要約装置であって、
さらに前記記憶部は、複文及び重文を単文に分割する分割ルールを記憶し、
さらに前記変換文生成部は、前記分割ルールを参照して、入力文が複文及び重文の場合には、単文に分割する分割部を備える、
ことを特徴とするテキスト要約装置。
【請求項４】
請求項１から請求項３の何れかに記載のテキスト要約装置であって、
さらに前記記憶部は、ある表現をより短い同じ意味を持つ他の表現に言い換えるルールである換言テーブルを記憶し、
さらに前記変換文生成部は、前記換言テーブルを参照して、入力文の表現をより短い同じ意味を持つ他の表現に言い換える換言部を備える、
ことを特徴とするテキスト要約装置。
【請求項５】
１以上の入力文からなるテキストデータを要約するテキスト要約方法であって、
２つの素性要素の順序を考慮した組合せである素性に対する重みパラメタと、文を構成する文要素に対する文要素スコアを予め記憶しておき、
変換文生成部が、入力文を変換し、各入力文に対し１以上の変換文を生成する変換文生成ステップと、
素性要素抽出部が、前記変換文から素性要素を抽出する素性要素抽出ステップと、
内容性スコア計算部が、各変換文に含まれる文要素に対する文要素スコアを用いて、各変換文の内容性スコアを求める内容性スコア計算ステップと、
連接スコア計算部が、前記素性要素抽出ステップで抽出した素性要素と前記重みパラメタを用いて、変換文の連接スコアを求める連接スコア計算ステップと、
重要文順列探索部が、前記内容性スコアと前記連接スコアの和が、最大値となる、または、最大値の近似値となる変換文の順列を探索する重要文順列探索ステップと、を有する、
ことを特徴とするテキスト要約方法。
【請求項６】
請求項５記載のテキスト要約方法であって、
単語のつながりの確率を言語モデルとして記憶しておき、
さらに前記変換文生成ステップは、短縮文生成部が、入力文を用いて、各入力文に対し１以上の短縮文を生成する短縮文生成ステップを備える、
ことを特徴とするテキスト要約方法。
【請求項７】
請求項５または６記載のテキスト要約方法であって、
複文及び重文を単文に分割する分割ルールを予め記憶しておき、
さらに前記変換文生成ステップは、分割部が、前記分割ルールを参照して、入力文が複文及び重文の場合には、単文に分割する分割ステップを備える、
ことを特徴とするテキスト要約方法。
【請求項８】
請求項５から請求項７の何れかに記載のテキスト要約方法であって、
ある表現をより短い同じ意味を持つ他の表現に言い換えるルールである換言テーブルを予め記憶しておき、
さらに前記変換文生成ステップは、換言部が、前記換言テーブルを参照して、入力文の表現をより短い同じ意味を持つ他の表現に言い換える換言ステップを備える、
ことを特徴とするテキスト要約方法。
【請求項９】
請求項１から請求項４の何れかに記載のテキスト要約装置としてコンピュータを機能させるためのテキスト要約プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキスト（文書）を要約する技術に関する。
【背景技術】
【０００２】
複数の文からなる文章から文を選択することで要約を作成する重要文抽出の手法と、文そのものを短くする文短縮の手法を組合せることにより、限られた要約長の中でもより多くの原文の情報を要約に含めることが可能になることが、従来技術（非特許文献１参照）として知られている。
【０００３】
従来の文短縮の方法として、文の中の重要な単語の集合を抽出し、それらをｎ-ｇｒａｍモデルを利用して接合することによって文を短縮する方法が非特許文献２に記載されている。あるいはそれらの単語を含む文節同士の係り受け構造に基づいて文全体から重要でない部分木を削除していくことで重要な部分木を取り出して、文を短縮する方法が非特許文献３に記載されている。また、コーパスから学習した文節間の係り受けの強度に基づいて文節を選択することにより文を短縮する手法が非特許文献４参照に提案されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】奥村学、難波英嗣著、「テキスト自動要約」、オーム社、2005年、p.55-56
【非特許文献２】堀智織、古井貞煕著、「講演音声の自動要約の試み」、話し言葉の科学と工学ワークショップ講演予稿集、2001年、p.165-171
【非特許文献３】大森岳史、増田英孝、中川裕志著、「Ｗｅｂ新聞記事の要約とその携帯端末向け記事による評価」、情報処理学会研究報告、社団法人情報処理学会、2003年、NL153-1、p.1-8
【非特許文献４】Kiwamu Yamagata、 Satoshi Fukutomi、 Kazuyuki Takagi、 Kazuhiko Ozeki、"Sentence Compression Using Statistical Information about Dependency Path Length"、Text, Speech and Dialogue、Springer Berlin / Heidelberg、2006年、Volume 4188、p. 127-134
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術は可読性の低い要約が生成されるという問題が起こり得る。従来の文短縮の手法は、重要な単語の選択の基準としてｔｆ＊ｉｄｆ等のコーパスにおける統計量に基づいていたり、コーパスから学習した文節間の係り受け強度による基準を利用したものである。このような基準による文短縮と重要文抽出を組合せると、重要文抽出により選択された文を短縮してこれらを並べる、あるいは、各文を短縮してから短縮文を選択して並べることになる。このとき、可読性の低い要約が生成されてしまう可能性がある。例えば、次の隣り合う文ｎと文ｎ＋１を要約する場合を考える。
【０００６】
文ｎ：（重要語１  非重要語１  非重要語２）
文ｎ＋１：（重要語２  非重要語１  重要語３）
隣り合う文同士で共通に存在する単語（例えば、非重要語１）は、要約に含まれる方が、可読性が高くなる場合があるが、テキスト全体ではそれほど重要でないと判断され、文短縮により削除されることがある。
【０００７】
逆に、テキスト全体で重要である異なる単語（例えば、文ｎに含まれる重要語１と文ｎ＋１に含まれる重要語２と重要語３で、重要語１と重要語２は異なる話題を示すような相互の関連が薄いものとする）で、一方の重要語（例えば、文ｎ＋１に含まれる重要語２）を要約に含めると話題がずれ、可読性が低い要約が作成されてしまう場合があるが、テキスト全体では、重要と判断されるため、文短縮により削除されることなく、その重要語も要約に含まれることがある。
【０００８】
このように、従来の重要文抽出と文短縮の組合せにおける問題は、重要文抽出と文短縮の処理が独立であって、単語や文節の選択の尺度として大域的な情報（ｔｆ＊ｉｄｆやコーパスから得た係り受け強度）しか用いないところにある。このため、要約を構成する隣り合う短縮文において、局所的な情報を利用することができず、可読性の低い要約が生成される可能性がある。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、本発明のテキスト要約技術は、２つの素性要素の順序を考慮した組合せである素性に対する重みパラメタと、文を構成する文要素に対する文要素スコアを予め記憶しておき、入力文を変換し、各入力文に対し１以上の変換文を生成し、変換文から素性要素を抽出し、各変換文に含まれる文要素に対する文要素スコアを用いて、各変換文の内容性スコアを求め、素性要素抽出部で抽出した素性要素と重みパラメタを用いて、変換文の連接スコアを求め、内容性スコアと連接スコアの和が、最大値となる、または、最大値の近似値となる変換文の順列を探索する。
【発明の効果】
【００１０】
本発明に係るテキスト要約技術は、各入力文に対し１以上の変換文を生成し、各変換文の内容性スコアと変換文の連接スコアを求めて、要約長以内の変換文の順列を探索するため、コーパス等から求めた大域的な情報に加えて、変換文同士の連接に関する局所的な情報を利用することができ、内容網羅性及び可読性の高い要約を生成することができるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】テキスト要約装置１００、２００の構成例を示す図。
【図２】テキスト要約装置１００の処理フローを示す図。
【図３】形態素解析済みの文１のデータ例を示す図。
【図４】形態素解析済みの文２のデータ例を示す図。
【図５】形態素解析済みの文３のデータ例を示す図。
【図６】形態素解析済みの文４のデータ例を示す図。
【図７】変換文生成部１１２の構成例を示す図。
【図８】変換文生成部１１２の処理フローを示す図。
【図９】言語モデルのデータ例を示す図。
【図１０】短縮文生成部１１２ａの処理フローを示す図。
【図１１】素性ベクトルの生成方法を説明するための図。
【図１２】平均化パーセプトロンを用いた学習アルゴリズムの疑似コード例を示す図。
【図１３】図１２のフローチャート例を示す図。
【図１４】重みパラメタのデータ例を示す図。
【図１５】最大値を求める際に用いるHeld and Karp Algorithmの疑似コード例を示す図。
【図１６】動的計画法及びビームサーチを説明するための図。
【図１７】重要文順列探索部の処理フロー例を示す図。
【図１８】テキスト要約装置１００のブロック図。
【図１９】変換文生成部２１２の構成例を示す図。
【図２０】変換文生成部２１２の処理フローを示す図。
【図２１】重みパラメタ（条件付き確率）のデータ例を示す図。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について、詳細に説明する。
【実施例１】
【００１３】
＜テキスト要約装置１００＞
図１及び図２を用いて実施例１に係るテキスト要約装置１００を説明する。テキスト要約装置１００は、記憶部１０３、入力部１３１、変換文生成部１１２、素性要素抽出部１１３、内容性スコア計算部１１５、連接スコア計算部１１７、重要文順列探索部１１９及び出力部１３５を有する。例えば、素性要素抽出部１１３、内容性スコア計算部１１５、連接スコア計算部１１７、重要文順列探索部１１９は、未公開の特願２０１０−０１０９０６に記載のテキスト要約装置と同様の構成を有する。
【００１４】
テキスト要約装置１００は、１以上の入力文からなるテキストデータを要約する。以下、詳細を説明する。なお、テキストデータは１以上の文章からなり、文章は話し手または書き手の思考や感情が表現されており、１つ以上の文からなるものである。
【００１５】
＜記憶部１０３及び入力部１３１＞
記憶部１０３は、２つの素性要素の順序を考慮した組合せである素性に対する重みパラメタと、文を構成する文要素に対する文要素スコアを予め記憶しておく。
【００１６】
各データの生成方法については、後述する。さらに、記憶部１０３は入出力される各データや演算過程の各データを、逐一、格納・読み出しする。それにより各演算処理が進められる。但し、必ずしも記憶部１０３に記憶しなければならないわけではなく、各部間で直接データを受け渡してもよい。
【００１７】
テキスト要約装置１００は、入力部１３１を介して、要約の対象となるテキストデータを入力される。さらに、本実施例では、入力部１３１を介して、要約の長さを規定する要約長の数値も入力される。要約長は文字数、バイト数、単語数など要約の長さを規定するものならば何れでもよく、要約作成者等が適宜設定する。
【００１８】
入力とするテキストデータは形態素解析済み、固有表現抽出済み、係り受け解析済みであってもよい。入力部１３１は、キーボード、ファイル、通信回線またはそれらの入力端子等であって、特に規定されるものではない。例えば、以下に示す文１〜文４を含むテキストデータのデータ例を、図３〜図６に示す。
文１：「ここのピザを食べましたが、ピザに対するイメージが大きく変わりました。」
文２：「イタリアで修行してきたシェフによる料理はどれも最高です。」
文３：「お料理は、イタリアンをベースとした創作料理で大変おいしいです。」
文４：「このお店はイタリアンの老舗であり、横浜駅から徒歩１０分の場所に位置する。」
【００１９】
＜変換文生成部１１２＞
変換文生成部１１２は、入力部１３１を介して入力文を受信し、これを変換し、各入力文に対し１以上の変換文（以下、「変換文のバリエーション」という）を生成し（ｓ１１２）、素性要素抽出部１１３に送信する。例えば、変換文生成部１１２は、図７記載の短縮文生成部１１２ａのみを備える。
【００２０】
（短縮文生成部１１２ａ）
短縮文生成部１１２ａは入力文を用いて、各入力文に対し１以上の短縮文（以下、「短縮文のバリエーション」という）を生成し（ｓ１１２ａ、図８参照）、これを変換文として素性要素抽出部１１３に送信する。
【００２１】
短縮文生成部１１２ａは、文を短縮するときに不自然でない短縮文を生成する。なお、短縮文生成の方法は、特に規定するものではなく、既存の文短縮の方法を用いてもよい。例えば、参考文献１記載の方法を用いて短縮文のバリエーションを生成してもよいし、係り受けの構造のみを用いて単純に部分木となる短縮文候補を短縮文のバリエーションとして生成してもよい。
［参考文献１］長谷川隆明、西川仁、今村賢治、菊井玄一郎、奥村学著、「携帯端末のためのＷｅｂページからの概要文生成」、人工知能学会論文誌、2010年、Vol.25、No.1、p.133-143
【００２２】
一例として、係り受け関係に基づいてルートの文節を含むすべての部分木を文短縮の候補とし、単語ｎ-ｇｒａｍあるいは品詞ｎ-ｇｒａｍによる言語モデルを用いて各短縮文候補の生成確率を計算し、生成確率の高い上位Ｎ個の短縮文候補に絞り、これを短縮文のバリエーションとして出力する方法について説明する。なお、閾値を設けてその閾値以上の生成確率となる短縮文候補に絞ってもよい。また、原文、つまり短縮していない元の入力文を短縮文のバリエーションの１つとして含めてもよい。
【００２３】
この場合、記憶部１０３は、単語のつながりの確率を言語モデルとして予め記憶しておく。例えば、言語モデルは、大量のテキストコーパスから単語あるいは品詞の連鎖の出現頻度に基づいて、単語あるいは品詞のｎ-ｇｒａｍ確率を格納したものである（図９参照）。以下、図１０を用いて、短縮文生成部１１２ａの処理例を説明する。
【００２４】
すべての入力文に対して以下の処理を行う。まず係り受け解析済みの文を入力し（ｓ１１２ａ−１）、ポインタを文末にセットする（ｓ１１２ａ−２）。ポインタが文頭ではない場合（ｓ１１２ａ−３）、ポインタのセットされている文節を当該文のすべての文短縮候補の前に接続する（ｓ１１２ａ−４）。ポインタのセットされている文節が述部を示すルート文節か、もしくはポインタのセットされている文節の係り先が存在する場合には（ｓ１１２ａ−５）、ルート文節もくしはポインタのセットされている文節を接続した文短縮候補を、新たに短縮文候補として生成し、この短縮文候補の生成確率を計算する（ｓ１１２ａ−６）。その後、ポインタを１文節だけ文頭に向かって動かす（ｓ１１２ａ−７）。また、ポインタの文節が先の条件を満たさなければ（ｓ１１２ａ−５）、新たに短縮文候補として生成せずにポインタを１文節だけ前に動かす（ｓ１１２ａ−７）。以上を処理できる文節がなくなるまで（文頭まで）繰り返す（ｓ１１２ａ−３）。なお、この過程で、短縮文候補の数を生成確率の最大上位Ｎ個に制限しながら探索（ビームサーチ）を行ってもよい。その他にも探索の過程において動的計画法などの効率的な手法を適用してもよい。すべての文節を処理し終えたら（ｓ１１２ａ−３）、短縮文の生成確率の上位Ｎ件（Ｎ-ｂｅｓｔ）の短縮文候補を、または、予め指定した閾値以上の生成確率となる短縮文候補を選択し（ｓ１１２ａ−８）、短縮文のバリエーションとして出力する。なお、例えば、生成確率は以下の式により求める。
【００２５】
【数１】
0005523929.tif 000002
【００２６】
但し、Ｗは短縮文候補の単語の系列とし、ｗｉはｉ番目の単語とし、ｗ０とｗｎ+１はそれぞれ文頭記号＜ｓ＞、文末記号＜／ｓ＞とする。生成確率は単語の長さで幾何平均を取ってもよい。
【００２７】
例として、文１から生成される短縮文のバリエーションを以下に示す。なお、短縮文候補の生成確率の上位１２件を短縮文のバリエーションとした例である。
短縮文１−１「大きく変わりました。」（１０文字）
短縮文１−２「イメージが変わりました。」（１２文字）
短縮文１−３「イメージが大きく変わりました。」（１５文字）
短縮文１−４「ピザに対するイメージが変わりました。」（１８文字）
短縮文１−５「ピザに対するイメージが大きく変わりました。」（２１文字）
短縮文１−６「ピザを食べましたが、イメージが変わりました。」（２２文字）
短縮文１−７「ピザを食べましたが、イメージが大きく変わりました。」（２５文字）
短縮文１−８「ピザを食べましたが、ピザに対するイメージが変わりました。」（２８文字）
短縮文１−９「ピザを食べましたが、ピザに対するイメージが大きく変わりました。」（３１文字）
短縮文１−１０「ここのピザを食べましたが、イメージが大きく変わりました。」（２８文字）
短縮文１−１１「ここのピザを食べましたが、ピザに対するイメージが変わりました。」（３１文字）
短縮文１−１２「ここのピザを食べましたが、ピザに対するイメージが大きく変わりました。」（３４文字）
【００２８】
同様に、文２から生成される短縮文のバリエーションを以下に示す。
短縮文２−１「最高です。」（５文字）
短縮文２−２「どれも最高です。」（８文字）
短縮文２−３「料理は最高です。」（８文字）
短縮文２−４「料理はどれも最高です。」（１１文字）
短縮文２−５「シェフによる料理は最高です。」（１４文字）
短縮文２−６「シェフによる料理はどれも最高です。」（１７文字）
短縮文２−７「修行してきたシェフによる料理は最高です。」（２０文字）
短縮文２−８「修行してきたシェフによる料理はどれも最高です。」（２３文字）
短縮文２−９「イタリアで修行してきたシェフによる料理は最高です。」（２５文字）
短縮文２−１０「イタリアで修行してきたシェフによる料理はどれも最高です。」（２８文字）
【００２９】
同様に、文３から生成される短縮文のバリエーションを以下に示す。
短縮文３−１「おいしいです。」（７文字）
短縮文３−２「大変おいしいです。」（９文字）
短縮文３−３「創作料理でおいしいです。」（１２文字）
短縮文３−４「創作料理で大変おいしいです。」（１４文字）
短縮文３−５「イタリアンをベースとした創作料理でおいしいです。」（２４文字）
短縮文３−６「イタリアンをベースとした創作料理で大変おいしいです。」（２６文字）
短縮文３−７「お料理は、おいしいです。」（１２文字）
短縮文３−８「お料理は、大変おいしいです。」（１４文字）
短縮文３−９「お料理は、創作料理でおいしいです。」（１７文字）
短縮文３−１０「お料理は、創作料理で大変おいしいです。」（１９文字）
短縮文３−１１「お料理は、イタリアンをベースとした創作料理でおいしいです。」（２９文字）
短縮文３−１２「お料理は、イタリアンをベースとした創作料理で大変おいしいです。」（３１文字）
【００３０】
＜素性要素抽出部１１３＞
素性要素抽出部１１３は、変換文を受信し、この変換文から素性要素（例えば内容語（名詞、動詞、形容詞））を抽出し（ｓ１１３）、連接スコア計算部１１７に送信する。なお、変換文生成部１１２において、形態素解析済み、固有表現抽出済み、係り受け解析済みの入力文（図３〜図６参照）を用いて、変換文のバリエーションを生成しているため、各変換文に付加された形態素解析データに基づいて素性要素を抽出することができる。
【００３１】
＜内容性スコア計算部１１５＞
内容性スコア計算部１１５は、各変換文に含まれる文要素を受信し、これに対する文要素スコアを用いて、各変換文の内容性スコアを求め（ｓ１１５）、内容性スコアを重要文順列探索部１１９へ送信する。
【００３２】
例えば、文要素として、素性要素を用いる場合には（本実施例では素性要素は内容語）、素性要素抽出部１１３の出力を、入力とし、内容性スコア計算部１１５は、入力される内容語をキーとして、記憶部１０３からその内容語に対する文要素スコアを検索して、取得し、文に含まれるすべての内容語に対する文要素スコアの和を求める。この和を内容性スコアとし、以下の式で表すことができる。但し、Ｃｏｎｔｅｎｔ(ｓ)は文ｓの内容性スコアを、Ｗｅｉｇｈｔ(ｐ)は文sが含む内容語ｐの文要素スコアを表す。
【００３３】
【数２】
0005523929.tif 000003
【００３４】
［文要素スコアの算出方法］
各内容語の文要素スコアは、予め記憶部１０３に記憶しておく。テキスト要約装置１００は、例えば、図示しない文要素スコア計算部を有し、文要素スコアを求める。文要素スコアとして、例えば要約の対象とするテキスト中において該単語が出現する回数などを用いることができる。
【００３５】
また例えば、文要素スコア計算部は、予め文要素スコア学習用のテキスト集合を用いて、テキスト集合に含まれる文要素から文要素スコアを求める。例えば、文要素スコア計算部は、予め文要素スコア学習用のテキスト集合を用いて、文要素を含む文の数を数え、その数ｃｎｔを記録したデータベースを用いて、文要素スコアを求める。
【００３６】
例えば、文要素スコア計算部は、学習用テキスト集合内に、多い文要素ほど重要である場合には、その数ｃｎｔが大きいほど文要素スコアが大きくなるように文要素スコアを算出する。この場合、文要素スコアはその数ｃｎｔ自体や、ｃｎｔの対数等である。また、学習用テキスト集合内に、多い文要素ほど重要でない場合には、その数ｃｎｔが大きいほど文要素スコアが小さくなるように文要素スコアを算出する。この場合、文要素スコアはテキスト集合に含まれるテキストの数をその数ｃｎｔで割った値や割った値の対数等である。このような構成とすることによって、要約対象の文の集合に対して適切な内容性スコアを算出することができる。
【００３７】
もちろん、文要素として評価情報等の情報抽出の結果を用いることもできる。その場合、上述した内容語の代わりに「画質がよい」「料理がおいしい」などといった何らかの対象を評価している文言に対して文要素スコアを与え、それらに基づいて文に内容性スコアを与えることができる。
【００３８】
＜連接スコア計算部１１７＞
連接スコア計算部１１７は、素性要素を受信し、素性要素から得られる素性に対応する重みパラメタを用いて、変換文の連接スコアを求め（ｓ１１７）、重要文順列探索部１１９へ送信する。なお、２つの文の連接スコアは、その２つの文のつながりの良さを示す値である。
【００３９】
例えば、「昨日ご飯を食べました」という文と「しかしあまりおいしくありませんでした」という文があったとする。この２つの文は「昨日ご飯を食べました」「しかしあまりおいしくありませんでした」という並びで現れるならば自然であるが、「しかしあまりおいしくありませんでした」「昨日ご飯を食べました」という並びで現れると非常に不自然である。これは「しかしあまりおいしくありませんでした」という文が、暗黙のうちに前の文で食事に関する話題が出現していることを前提にしているからである。
【００４０】
同様に、複数の文を繋ぎ合せて要約を生成する場合、文を適切に並び替えることができなければ、生成された要約は非常に読みづらく不自然なものになる場合がある。
【００４１】
仮に、文のつながりの良さにスコアを与えることができ、「しかしあまりおいしくありませんでした」「昨日ご飯を食べました」という文の並びよりも、「昨日ご飯を食べました」「しかしあまりおいしくありませんでした」という並びの方に高いスコアを与えることができれば、スコアに従って文を並び替えることができる。つまり、仮に２つの文ｓｉとｓｊを与えられたときには、ｓｉ、ｓｊの順序と、ｓｊ、ｓｉの順序それぞれのスコアを計算し、スコアが高い順序を採用する。
【００４２】
そこで、まず、連接スコアを定義する。本実施例では一例として、文ｓｉの次に文ｓｊが現れる場合の連接スコアを以下の関数Ｃｏｎｎｅｃｔ(ｓｊ|ｓｉ)で定義する。
【００４３】
Connect(sj|si)=wTφ(si,sj)        （2）
ここで、ｗは上述した重みパラメタであり、φ(ｓｉ,ｓｊ)は文ｓｉと文ｓｊのつながりを表すバイナリベクトル（以下「素性ベクトル」という）であり、Ｔは転置を表す。ｗＴφ(ｓｉ,ｓｊ)はｗＴとφ（ｓｉ，ｓｊ）の内積である。重みパラメタｗは、一例として後述する方法によって事前に計算され、記憶部１０３に格納され、要約を行う際には記憶部１０３から呼び出される。
【００４４】
連接スコア計算部１１７は、例えば、素性ベクトル生成部１１７ａと計算部１１７ｂを備える。
（素性ベクトル生成部１１７ａ）
素性ベクトル生成部１１７ａは、２つの文ｓｉ、ｓｊが含む素性要素の直積集合の各要素を該２つの文の素性とし、求めた素性に対応する次元を１とし、他の次元を０とする素性ベクトルφ（ｓｉ，ｓｊ）を生成する。
【００４５】
２つの文のつながりを表わす素性ベクトルは、一例として、２つの文が含む内容語（名詞、動詞、形容詞）の直積集合として与えられる。図１１を用いて説明する。文ｓｉが「昨日ご飯を食べました」という文、文ｓｊが「しかしあまりおいしくありませんでした」という文であったとする。文ｓｉには「昨日」「ご飯」「食べ」という内容語が含まれ、文ｓｊには「おいし」「あ」という内容語が含まれる。これらの直積集合は図１１に示すように「昨日」「おいし」、「昨日」「あ」、「ご飯」「おいし」、「ご飯」「あ」、「食べ」「おいし」「食べ」「あ」の6つの単語の組となる。素性ベクトルφ（ｓｉ，ｓｊ）はこれらの６種類の素性に対応する次元が１となっているバイナリベクトルである。素性ベクトルの次元は、素性の刈り込みを行わなければ、学習の際に用いるテキスト集合中に現れる素性の数と同数となる。そのため実際には遥かに高次元なベクトルとなるが、図１１では簡単のため図に示した６種類の素性に対応する６次元のベクトルとしている。素性としては上に示したもの他にも、一例として、単語間の係り受けや固有表現などを用いることもできる。なお、素性の刈り込みとは、重みパラメタを算出する際に、文のつながりの良さを示すパラメタとして、あまり重要でないと思われる素性については、削除し、素性の数を減らす処理のことである。
【００４６】
（計算部１１７ｂ）
計算部１１７ｂは、重みパラメタｗと素性ベクトルφ（ｓｉ，ｓｊ）の内積を、２つの文の連接スコアＣｏｎｎｅｃｔ（ｓｊ｜ｓｉ）として求める。つまり、重みパラメタと素性ベクトルを用いて、式（２）の計算を行う。
【００４７】
（３つ以上の文の連接スコアの算出部）
連接スコア計算部１１７は、２つの文の連接スコアＣｏｎｎｅｃｔ（ｓｊ｜ｓｉ）を用いて、３つ以上の文の並びの連接スコアｗＴΦ（ｘ，ｙ）を求める（ｓ１１７）。この場合、連接スコアとは、３つ以上の文の集合の全体的なつながりの良さを表す。ｘは与えられた文の集合を表し、ｙは文の並びを現す。
【００４８】
例えば文ｓ１、ｓ２、ｓ３が与えられたとき、これらには６通りの並べ方がある。この６通りの並べ方のうち、最も文の並びの連接スコアが高い並びを、与えられた３つの文の並びとする。そのためには３つ以上の文の並びの連接スコアを計算する必要があるが、ここでは、３つ以上の文の並びを２つの文の並びに分解し、分解された２つの文の連接スコアの和を３つ以上の文の並びの連接スコアとする。３つ以上の文の並びの連接スコアｗＴΦ（ｘ，ｙ）を以下のように定義する。
【００４９】
【数３】
0005523929.tif 000004
【００５０】
ｙは文の並びを表わすもので、この例では、与えられた文の集合ｘ=｛ｓ１，ｓ２，ｓ３｝がｓ２、ｓ３、ｓ１の順に並べられていることを表す。加えて、ｓ０とｓ４はそれぞれ文書の頭と末尾を表わすもので、即ち文ｓ２が３つの文の先頭に、文ｓ１が３つの文の末尾にあることを示している。ｓ０とｓ４を導入することで、文書の先頭になりやすい文や、末尾になりやすい文を考慮することが可能になる。
【００５１】
［重みパラメタの算出方法］
重みパラメタｗの算出方法について説明する。ここで、人間によって書かれたテキストの文の並びを正解として、その文の並びを再現することができる重みパラメタｗがよいパラメタであるという仮定を置く。つまり、文の集合が与えられたとき、それらを読みやすく並べることができるパラメタｗは、人手で書かれたあるテキストに含まれる文の集合が与えられたとき、それを元の並びに復元できる、あるいは元の並びに近い並びに並べることができるという仮定を置く。この仮定の下、人手によって書かれたテキスト集合から、パラメタｗを推定する。重みパラメタｗは、一例としてテキスト集合から図１２及び図１３に示すアルゴリズムで計算することができる（参考文献２参照）。
［参考文献２］Michael Collins, “Discriminative Training Methods for Hidden Markov Models: Theory and Experiments with Perceptron Algorithms”, In Proceedings of the 2002 Conference on Empirical Methods on Natural Language Processing （EMNLP）, Association for Computational Linguistics, 2002, Volume 10, pp.1 - 8
【００５２】
テキスト要約装置１００は、例えば図示しない重みパラメタ算出部を有し、重みパラメタを求める。重みパラメタ算出部は、Ｑ個のｘｑ（文の集合）と各文の集合に対する正しい文の並びｙｑの組からなる訓練データτを入力され、図１２に示すアルゴリズムは重みパラメタｗを学習する。但し、ｑ＝１，２，…，Ｑである。具体的には、Ｑ個の訓練事例を一つずつ取り上げ、現在のｗを用いてｘｑ内の文を並べる（図１２の４行目）。現在の重みパラメタｗを用いて得られる、可能な文の並びのうち連接スコアｗＴΦ（ｘ，ｙ）が最大の文の並びｙ’を求める（図１２の４行目のａｒｇｍａｘ操作）。ａｒｇｍａｘ操作の詳細については後述する。ｙｑ≠ｙ’の場合（つまり、連接スコアｗＴΦ（ｘ，ｙ）が最大の文の並びと正しい文の並びが異なる場合）、現在の重みパラメタｗでは、正しい並びを再現することができなかったことになる。その時は重みパラメタｗを更新し、正しく文を並び替えることができるようにする（図１２の５行目）。現在のパラメタｗで正しい並びを再現することができたのならば、重みパラメタは更新しない（図１２の６行目）。
【００５３】
これをＱ個の訓練データに対し行い、さらに、それをＮ回繰り返すことによって重みパラメタｗを更新し、ある瞬間の重みパラメタｗの和ｖを、ｗを足した回数であるＮ×Ｑで割ることによって平均化し、これを最終的な重みパラメタｗとし（図１２の９行目）、記憶部１０３に格納する。なお、Ｎは求めようとする重みパラメタｗの性質により異なり、重みパラメタｗの算出に先立ち、実験等により適宜求めることができる。また、訓練データτは、文書の頭と末尾、文境界が明示された任意のテキストである。もちろん、要約の対象とするテキストのジャンルと同一ジャンルのテキストのみからパラメタｗを学習するなどの工夫をしてもよい。一例として、推定された重みパラメタを図１４に示す。図１４に示された素性の列が図１１に示した素性と対応しており、重みの列が該素性の重みパラメタである。図１４によれば、文を並べる際に、「料理」という語を含む文の後には「野菜」、「油」、「友達」といった語を含む文を並べた方が正しい並びとなりやすい。一方、「料理」という語を含む文の後に「夜景」「優雅」という語を含む文を並べると誤りとなりやすい。
【００５４】
（ａｒｇｍａｘ操作）
ａｒｇｍａｘ操作は、文の集合ｘｑに含まれる文を用いて可能な文の並びのうち連接スコアが最大となる文の並びｙ’を求める。これはいわゆる巡回セールスマン問題であり、厳密解を短時間で求めることが難しい。例えば、Ｑ！通りの文の並びから最も連接スコアの高い文の並びを求める必要があり、Ｑの値が大きくなるに従い、指数的に計算量も増大する。
【００５５】
そのため、一例として、動的計画法とビームサーチを用いて近似解を求め、ａｒｇｍａｘ操作を代替することができる。具体的には、一例として、動的計画法の一種であるHeld and Karp Algorithmを用いる（参考文献３参照）。Held and Karp Algorithmによる文の並びの近似解の探索を図１５に示す。
［参考文献３］Michael Held and Richard M. Karp, “A dynamic programming approach to sequencing problems”, In Journal of the Society for Industrial and Applied Mathematics （SIAM）, 1962, Vol.10, No.1, pp.196-210
【００５６】
Ｓは並び替えの対象とする文の集合であり、うちｓ０を文書の頭を示すもの、ｓ（Ｑ+１）を文書の末尾を示すものとする。すなわち、ｓ０から出発し、ｓ１からｓＱまでの文を必ず一度通過し、ｓ（Ｑ+１）に到着するすべての経路のうち最もスコアが高い経路を探索する問題となる。ＭはＳに含まれるすべての文の間の連接スコアを格納した行列である。例えばＭｋ,ｊは文ｓｋとｓｊの連接スコアを示し、即ちｗＴφ（ｓｋ,ｓｊ）に相当する。Ｈｉ（Ｃ,ｓｋ）は、既にＣ⊆Ｓを通過し、ｉ時点で文ｓｋを追加した仮説及び該仮説のスコアである。Ｈ＊は最も文の並びの連接スコアの高い経路である。
【００５７】
Held and Karp Algorithmは、文を並べる際に、最後に選ばれた文と、順序は関係なくそれまでに選ばれた文が同じである仮説が複数ある場合、スコアが最も高い仮説を除くすべての仮説を破棄することによって効率的に探索を行うものである（図１５の５行目）。例えば、図１６の破線で表す文の並びｓ１、ｓ２、ｓ３とｓ２、ｓ１、ｓ３は最後がｓ３であり、それまでに選ばれた文も同様であるため、これら２つの仮説を両方とも展開する必要はない。例えば、ｓ２、ｓ１、ｓ３の連接スコアが高い場合には、この文の並びに係る仮説のみを展開し、ｓ１、ｓ２、ｓ３に係る仮説は破棄すればよい。
【００５８】
しかし、それでも依然探索空間は広大であるため、ｉ時点において連接スコアが高い上位ｂ件の仮説のみを、展開し、ｉ＋１時点の仮説とする（ビームサーチ、図１５の４行目）。つまり、上位ｂ件以外の仮説を破棄する。例えば、図１６の一点鎖線で表す文の並びｓ３、ｓ１、ｓ２がｉ＝３時点において、上位ｂ件以内でなければ、この仮説について、ｉ＝４以降において展開する必要はない。これにより探索空間を大幅に狭めることができる。これにより、さらに効率的に近似解を探索することができる。
【００５９】
例えば、Ｑ＝１００とし、ｂ＝２０としHeld and Karp Algorithmを用いない場合、ｉ＝１時点において、生成される１００個の仮説のうち、上位２０件の仮説のみを展開する。よって、上位２０件に対し、それぞれ９９件の仮説が展開される。その結果、生成される１９８０件の仮説のうち、また上位２０件の仮説のみを展開するだけでよい。ビームサーチを行わない場合には、１００件に対し、それぞれ９９件の仮説が展開される。その結果生成される９９００件の仮説に対し、それぞれ９８件の仮説を展開する。この処理をｉ＝Ｑ時点まで繰り返すため、ビームサーチを用いる場合に比べ演算量が膨大となる。
【００６０】
なお、ａｒｇｍａｘ操作は、重みパラメタｗを求める処理の中で行われ（図１２の４行目）、その操作中に連接スコアＭを用いるが（図１５参照）、この連接スコアはａｒｇｍａｘ操作呼出し時の（更新中の）重みパラメタを用いて、式（２）等を用いて求める。
【００６１】
＜重要文順列探索部１１９＞
重要文順列探索部１１９は、内容性スコアと連接スコアを受信し、これらの和が、最大値となる、または、最大値の近似値となる変換文の順列を探索し（ｓ１１９）、出力部１３５へ送信する。
【００６２】
重要文順列探索部１１９は、連接スコアと内容性スコアを元に、要約の対象とするテキストデータから求めた１以上の変換文の並びを、要約長以内で探し出す。このとき、同じ入力文から生成される変換文のバリエーション間の順列は求めないように制約を付加してもよい。この場合、連接スコア計算部においても同じ入力文から生成される変換文のバリエーション間の連接スコアを求める必要はない。例えば、短縮文のバリエーションには、入力文識別子を付加し、同じ入力文識別子を付与されたる短縮文同士の連接スコア及び順列は求めないようにする。
【００６３】
Ｓ＊は内容性スコアと連接スコアの和が最大値、または、最大値の近似値である文の並びとし、Ｕは要約の対象とするテキストから構成可能な文の並びのすべて、ＳはＵに含まれる任意の並びの一つとする。文を選び出す際には単純に文を選ぶのではなく、内容性スコアと、連接スコアの２点を考慮し、最良の文の並びＳ＊を、Ｕから選び出す。一例として、Ｓ＊は以下のように定義できる。
【００６４】
【数４】
0005523929.tif 000005
【００６５】
λは内容性スコアと連接スコアのどちらを重視するか制御するパラメタである。（ｓｉ,ｓｊ）∈Ｓは、文の並びＳにおいて隣接する文ｓｉとｓｊのうち、ｓｉがｓｊの前に現れることを示している。ｌｅｎｇｔｈ（Ｓ）は文の並びＳの長さを、Ｋは要約長を示す。
【００６６】
最良の要約Ｓ＊は、Ｓ＊が含むすべての文sの内容性スコアＣｏｎｔｅｎｔ（ｓ）の合計ΣＣｏｎｔｅｎｔ（ｓ）と、それらの文のうち隣接する文間の連接スコアＣｏｎｎｅｃｔ（ｓｊ｜ｓｉ）の合計ΣＣｏｎｎｅｃｔ（ｓｊ｜ｓｉ）の和が最大のものである。なお、内容性スコアと連接スコアの和の最大値とは、ａｒｇｍａｘ［ΣＣｏｎｔｅｎｔ（ｓ）＋ΣＣｏｎｎｅｃｔ（ｓｊ｜ｓｉ）］だけでなく、λを用いて調整される値ａｒｇｍａｘ［ΣＣｏｎｔｅｎｔ（ｓ）＋λΣＣｏｎｎｅｃｔ（ｓｊ｜ｓｉ）］をも含む。
【００６７】
しかし、このようなＳ＊を求める問題、即ち式（４）のａｒｇｍａｘ操作を行う問題も厳密解を短時間で求めることが難しい。これに対処するため、重みパラメタｗを学習する際と同様に、動的計画法とビームサーチを用いて探索を行い、近似解を求める。具体的には、図１５のＨｉ（Ｃ,ｓｋ）を連接スコアと内容性スコアの和を表わすものとし（ｗを学習する際には連接スコアのみを表わす）、この和の高い仮説のみを順次展開するようにする。一方、ｗを学習した際とは異なり、要約サイズの制限があるため、すべての文を並べる必要はない。そのため、図１５に示したHeld and Karp Algorithmとビームサーチを用い探索を行いつつ、いかなる文を追加しても要約サイズを超える仮説は展開を停止し要約候補として別途保存しておく。そして、すべての仮説を展開し終わった後、保存された要約候補の中から最もスコアが高いものを選ぶことによって近似解を得ることができる。
【００６８】
以下、図１７を用いて重要文順列探索部１１９の処理例について説明する。時点ｉにおけるＨ（ｉ）個の文の並びの集合をＳ（ｉ）＝｛Ｓ（ｉ，１），Ｓ（ｉ，２），…，Ｓ（ｉ，Ｈ（ｉ））｝とする。要約元となるテキストにはＱ個の文が含まれ、その集合をＺ＝｛ｓ１，ｓ２，…，ｓＱ｝と表す。
【００６９】
まず、初期設定を行う（ｓ１１９ａ）。ｉ時点の文の並びのＳ（ｉ，ｈ）が文ｓｑを既に網羅しているか否か判定し（ｓ１１９ｂ）、網羅していない場合には、Ｓ（ｉ，ｈ）に文ｓｑを追加し、文の並びＳ（ｉ＋１，ｋ）を生成する（ｓ１１９ｃ）。Ｓ（ｉ＋１，ｋ）の大きさが要約サイズＫ以下か否かを判定し（ｓ１１９ｄ）、大きい場合には、文ｓｑ追加前の文の並びＳ（ｉ，ｈ）を保存する（ｓ１１９ｅ）。以降、この文の並びＳ（ｉ＋１，ｋ）に対する仮説の展開は行わない。例えば、図１６において、一点鎖線で表される文の並びＳ３，Ｓ１に対し、Ｓ２を追加したときに、要約サイズＫを超える場合には、文の並びＳ３，Ｓ１を保存し、文の並びＳ３，Ｓ１，Ｓ２に対する仮説の展開は行わない。
【００７０】
この処理をｉ時点の文の並びＳすべてに対して行い（ｓ１１９ｇ、ｈ）、さらに、要約元となるテキストに含まれるすべての文に対して行う（ｓ１１９ｉ，ｊ）。
【００７１】
生成された文の並びの集合Ｓ（ｉ＋１）＝｛Ｓ（ｉ＋１，１），Ｓ（ｉ＋１，２），…，Ｓ（ｉ＋１，ｋ）｝に含まれる各文の並びの内容性スコアと連接スコアの和ｓｕｍを求める（ｓ１１９ｋ）。ｋ’＝１，２，…，ｋとし、各文の並びの内容性スコアをＣｏｎｔｅｎｔ（Ｓ（ｉ＋１，ｋ’））とし、連接スコアをＣｏｎｎｅｃｔ（Ｓ（ｉ＋１，ｋ’））とすると、
【００７２】
【数５】
0005523929.tif 000006
【００７３】
と表すことができる。すべてのｋ’に対応するｓｕｍ（Ｓ（ｉ＋１，ｋ’））を求め、最後に追加した文が同一であって、かつ、既に網羅した文の集合が同一の文の並びが存在するか否か判定し、存在する場合には、存在する文の並びの中でｓｕｍ（Ｓ（ｉ＋１，ｋ’））が最大か否か判定し（ｓ１１９ｍ）、最大でない場合には、対応する仮説を破棄する（ｓ１１９ｎ）。その上で、各ｓｕｍの値が上位ｂ件に属するか否か判定し（ｓ１１９ｐ）、属さない場合には対応する仮説を破棄する（ｓ１１９ｎ）。以降、破棄した文の並びに対する仮説の展開は行わない。
【００７４】
ｉを更新し（ｓ１１９ｑ）、上記処理（ｓ１１９ｂ〜ｓ１１９ｑ）を繰り返し、通常、Ｋは要約元のテキストの大きさよりも小さいので、要約元のテキストに含まれる文のすべてを並べる前に、すべての仮説は破棄されるか、保存される。そして、保存された仮説の中から最も大きいｓｕｍに対応する文の並びをＳ＊とする。
【００７５】
＜出力部１３５＞
出力部１３５は、重要文順列探索部１１９で探索された変換文の並びを受信し、この順列を文に整形し、出力する。
【００７６】
例えば、テキスト要約装置１００に対して、文１、文２、文３からなるテキストデータと（図３〜図５参照）、要約長として４５文字が入力された場合、下記のような出力（要約）を得ることができる。
文２「イタリアで修行してきたシェフによる料理は最高です。」（２５文字：短縮率０．８９）
↓
文１「ピザに対するイメージが変わりました。」（１８文字：短縮率０．５３）
要約「イタリアで修行してきたシェフによる料理は最高です。ピザに対するイメージが変わりました。」（４３文字：要約率０．４６）
これは、文２の短縮文の後に文１の短縮文がつながることを意味し、それぞれの文の短縮率は異なる。
【００７７】
＜効果＞
このような構成とすることで、各入力文に対し尤もらしい変換文バリエーションを生成し、各変換文の内容性スコアと変換文の連接スコアを求め、これを同時に考慮した順列を探索するため、重要かつ自然な変換文の順列となる。大域的な情報に加えて、局所的な情報を利用することができ、内容網羅性及び可読性の高い要約を生成することができるという効果を奏する。言い換えると、原文の重要な内容を多く網羅し、かつ、読みやすい要約を生成することが可能となる。
【００７８】
特に、要約長が短いほど本発明は有利になる。本実施例によれば、要約において隣接する短縮文同士のつながりやすさが考慮されるので、文短縮を行いつつも、つながりやすさに不可欠な情報が欠落しない文短縮が実現でき、限られた要約長でも読みやすい要約を生成することが可能になる。
【００７９】
また、複数の文章から要約を生成するという問題に対して、文を短縮しても要約の可読性を犠牲にせず、短縮した長さだけ別の価値ある情報を要約に含めることにより要約の内容網羅性を向上させることができる。
【００８０】
さらに、本実施例によれば、最適な文短縮の順列が、各文に最適な文短縮の短縮率を一意に決定する。このため、各文における文短縮の短縮率に関するパラメタをもはや必要としないという効果がある。
【００８１】
＜ハードウェア構成＞
図１８は、本実施例におけるテキスト要約装置１００のハードウェア構成を例示したブロック図である。図１８に例示するように、この例のテキスト要約装置１００は、それぞれＣＰＵ（Central Processing Unit）１１、入力部１２、出力部１３、補助記憶装置１４、ＲＯＭ（Read Only Memory）１５、ＲＡＭ（Random Access Memory）１６及びバス１７を有している。
【００８２】
この例のＣＰＵ１１は、制御部１１ａ、演算部１１ｂ及びレジスタ１１ｃを有し、レジスタ１１ｃに読み込まれた各種プログラムに従って様々な演算処理を実行する。また、入力部１２は、データが入力される入力インターフェース、キーボード、マウス等であり、出力部１３は、データが出力される出力インターフェース、ディスプレイ、プリンタ等である。補助記憶装置１４は、例えば、ハードディスク、半導体メモリ等であり、テキスト要約装置１００としてコンピュータを機能させるためのプログラムや各種データが格納される。また、ＲＡＭ１６には、上記のプログラムや各種データが展開され、ＣＰＵ１１等から利用される。また、バス１７は、ＣＰＵ１１、入力部１２、出力部１３、補助記憶装置１４、ＲＯＭ１５及びＲＡＭ１６を通信可能に接続する。なお、このようなハードウェアの具体例としては、例えば、パーソナルコンピュータの他、サーバ装置やワークステーション等を例示できる。
【００８３】
＜プログラム構成＞
上述のように、補助記憶装置１４には、本実施例のテキスト要約装置１００の各処理を実行するための各プログラムが格納される。テキスト要約プログラムを構成する各プログラムは、単一のプログラム列として記載されていてもよく、また、少なくとも一部のプログラムが別個のモジュールとしてライブラリに格納されていてもよい。
【００８４】
＜ハードウェアとプログラムとの協働＞
ＣＰＵ１１は、読み込まれたＯＳプログラムに従い、補助記憶装置１４に格納されている上述のプログラムや各種データをＲＡＭ１６に展開する。そして、このプログラムやデータが書き込まれたＲＡＭ１６上のアドレスがＣＰＵ１１のレジスタ１１ｃに格納される。ＣＰＵ１１の制御部１１ａは、レジスタ１１ｃに格納されたこれらのアドレスを順次読み出し、読み出したアドレスが示すＲＡＭ１６上の領域からプログラムやデータを読み出し、そのプログラムが示す演算を演算部１１ｂに順次実行させ、その演算結果をレジスタ１１ｃに格納していく。
【００８５】
図１は、このようにＣＰＵ１１に上述のプログラムが読み込まれて実行されることにより構成されるテキスト要約装置１００の機能構成を例示したブロック図である。
【００８６】
ここで、記憶部１０３は、補助記憶装置１４、ＲＡＭ１６、レジスタ１１ｃ、その他のバッファメモリやキャッシュメモリ等の何れか、あるいはこれらを併用した記憶領域に相当する。また、変換文生成部１１２、素性要素抽出部１１３、内容性スコア計算部１１５、連接スコア計算部１１７及び重要文順列探索部１１９は、ＣＰＵ１１にテキスト要約プログラムを実行させることにより構成されるものである。
【００８７】
［変形例１］
図７及び図８を用いて実施例１と異なる部分についてのみ説明する。
【００８８】
変換文生成部１１２は、図７記載の分割部１１２ｂのみを備える。記憶部１０３は、複文及び重文を単文に分割する分割ルールを記憶している。
【００８９】
分割部１１２ｂは、入力部１３１を介して入力文を受信し、記憶部１０３の分割ルールを参照して、入力文が複文及び重文の場合には、単文に分割し（ｓ１１２ｂ）、２以上の単文を変換文のバリエーションとして素性要素抽出部１１３に送信する。
【００９０】
例えば、形態素「で/判定詞:連用」＋「あ/動詞語幹:R」＋「り/動詞接尾辞:連用」＋「、/読点」を「で/判定詞:連用」＋「あ/動詞語幹:R」＋「る/動詞接尾辞:終止」＋「。/句点」に分割するという分割ルールを記憶部１０３に記憶しておく。分割部１１２ｂは、形態素解析済み文４「このお店はイタリアンの老舗であり、横浜駅から徒歩１０分の場所に位置する。（図６参照）」を受信し、形態素「で/判定詞:連用」＋「あ/動詞語幹:R」＋「り/動詞接尾辞:連用」＋「、/読点」をキーとして記憶部１０３を検索し、該当する分割ルールを取得し、このルールに従って、文４−１「このお店はイタリアンの老舗である。」と文４−２「横浜駅から徒歩１０分の場所に位置する。」という２つの文に分割し、これらを変換文のバリエーションとして出力する。
【００９１】
本変形例によれば、各入力文に対し１以上の変換文を生成し、各変換文の内容性スコアと変換文の連接スコアを求めて、要約長以内の変換文の順列を探索するため、コーパス等から求めた大域的な情報に加えて、変換文同士の連接に関する局所的な情報を利用することができ、内容網羅性及び可読性の高い要約を生成することができる。特に、複文や重文を単文に分割し、変換文のバリエーションとすることができるので、読みやすい（可読性の高い）要約を生成できる。
【００９２】
なお本変形例では、同じ入力文から生成される変換文のバリエーション間の順列は求めないように制約を付加する必要はない。変換文のバリエーションは、それぞれ異なる内容を持つ文となるためである。
【００９３】
［変形例２］
図７及び図８を用いて実施例１と異なる部分についてのみ説明する。
【００９４】
変換文生成部１１２は、図７記載の換言部１１２ｃのみを備える。記憶部１０３は、ある表現をより短い同じ意味を持つ他の表現に言い換えるというルールを換言テーブルとして記憶している。
【００９５】
換言部１１２ｃは、入力部１３１を介して入力文を受信し、記憶部１０３の換言テーブルを参照して、入力文の表現をより短い同じ意味を持つ他の表現に言い換え（ｓ１１２ｃ）、言い換えた文を変換文のバリエーションとして素性要素抽出部１１３に送信する。
【００９６】
例えば、「徒歩Ｘ分の場所に位置する」という表現をより短い同じ意味を持つ「Ｘ分歩くと着く」という表現に言い換えるというルールを換言テーブルとして記憶部１０３に記憶している場合、換言部１１２ｃは、文４「このお店はイタリアンの老舗であり、横浜駅から徒歩１０分の場所に位置する。」を受信し、「徒歩１０分の場所に位置する」という表現をキーとして、記憶部１０３を検索し、上記ルールを取得し、このルールに従って、文４を「このお店はイタリアンの老舗であり、横浜駅から１０分歩くと着く。」に言い換え、言い換えた文を変換文のバリエーションとして素性要素抽出部１１３に送信する。なお、１つの入力文に対し、２つ以上の言い換え表現を用意し、換言テーブルに記憶してもよい。なお、言い換え表現は文字列のパターン以外でもよい。例えば、形態素のパターンでもよいし、係り受けのパターンでもよく、特に規定するものではない。
【００９７】
本変形例によれば、実施例１及び変形例１と同様に、内容網羅性及び可読性の高い要約を生成することができる。特に、より短い同じ意味を持つ他の表現に言い換えるため、同内容の要約をより短い文字数で作成できる。
【００９８】
［変形例３］
図７及び図８を用いて実施例１と異なる部分についてのみ説明する。
【００９９】
変換文生成部１１２は、短縮文生成部１１２ａと、分割部１１２ｂと、換言部１１２ｃを備える。実施例１、変形例１、変形例２では、各部が単独で変換処理を行っていたが、本変形例では、各部が並列に変換処理を行う。短縮文生成部１１２ａと、分割部１１２ｂと、換言部１１２ｃは、それぞれ第１の変換文のバリエーション、第２の変換文のバリエーション、第３の変換文のバリエーションを求め（ｓ１１２ａ，ｓ１１２ｂ，ｓ１１２ｃ）、素性要素抽出部１１３に送信する。各部の処理は実施例１、変形例１、変形例２で説明した通りである。
【０１００】
このような構成とすることで、実施例１、変形例１、変形例２と同様の効果を得ることができる。さらに、入力文に対して、より多くの変換文のバリエーションを求めることができ、より多くのバリエーションに基づき、重要文順列を探索することができるため、より内容網羅性及び可読性の高い要約を生成することができる。重要文抽出と文短縮を組合せるだけでなく、文短縮の代わりに、各文に対して同義でもより短い表現への言い換えを行ったり、重文に対する文分割を行うことを、重要文抽出と組合せることによって、さらに読みやすく原文の情報を網羅した要約を生成する。
【０１０１】
なお、変換文生成部１１２は、短縮文生成部１１２ａと分割部１１２ｂと換言部１１２ｃのうち、何れか２つを備える構成としてもよい。
【０１０２】
［変形例４］
図１９及び図２０を用いて実施例１と異なる部分についてのみ説明する。
【０１０３】
変換文生成部２１２は、短縮文生成部１１２ａと、分割部１１２ｂと、換言部１１２ｃを備える。実施例１、変形例１、変形例２では、各部が単独で変換処理を行っていたが、本変形例では、各部が縦列に変換処理を行う（ｓ２１２）。例えば、短縮文生成部１１２ａは入力文を用いて第一の変換文のバリエーションを求める（ｓ１１２ａ）。分割部１１２ｂは、入力文の代わりに、短縮文生成部１１２ａで求めた第１の変換文のバリエーションを入力され、これを用いて、第２の変換文のバリエーションを求める（ｓ１１２ｂ）。さらに、換言部１１２ｃは、入力文の代わりに、第２の変換文のバリエーションを入力され、これを用いて、第３の変換文バリエーションを求める（ｓ１１２ｃ）。そして、第３の変換文のバリエーションを素性要素抽出部１１３に送信する。
【０１０４】
このような構成とすることで、実施例１、変形例１、変形例２と同様の効果を得ることができる。さらに、短縮文作成部１１２ａにより、入力文に対して、多くの変換文のバリエーションを求めることができ、さらに、分割部１１２ｂにより可読性の高い変換文のバリエーションを得ることができ、換言部１１２ｃにより同内容の要約をより短い文字数で作成することができる。これらの文をもとに、重要文順列を探索することができるため、より内容網羅性及び可読性の高い要約を生成することができる。
【０１０５】
なお、短縮文生成部１１２ａと、分割部１１２ｂと、換言部１１２ｃのうち、何れか二つを備える構成としてもよいし、各部は、どのような順番で縦列接続してもよい。
【０１０６】
［変形例５］
実施例１と異なる部分についてのみ説明する。短縮文生成部１１２ａにおいて、参考文献３記載の方法を用いて短縮文のバリエーションを生成する。参考文献３では、文節網羅率と文節連接確率に基づいて各部分木のスコアを以下のように定義し、スコアが最大となる述部をルートとした部分木を要約対象である文の短縮文とする。本変形例では、スコアが最大となる述部をルートとした部分木だけではなく上位Ｎ件を短縮文のバリエーションとして求める。
【０１０７】
【数６】
0005523929.tif 000007
【０１０８】
ここで、Ｘは要約対象の文を、Ｇ（Ｘ）は文Ｘにおける部分木の集合を、Ｗは部分木を、ｎｏｄｅ（Ｗ）は部分木Ｗを構成する文節数を表す。Ｐｉｍｐ（ｗｉ）は文節網羅率を表し、
【０１０９】
【数７】
0005523929.tif 000008
【０１１０】
である。ここで、Ｘは文全体、ｗｉとｗｊは文節を表し、ｔｋは文節ｗｉに含まれる単語を、ｔｌは文節ｗｊに含まれる単語を表す。文節網羅率を考慮することで、文の内容を網羅するような重要な単語を含む文節を多く含む部分木のスコアが高くなる。Ｐａｄｊ（ｗｉ｜ｗｉ−１）は文節連接確率を表し、
【０１１１】
【数８】
0005523929.tif 000009
【０１１２】
である。但し、ｆｉは文節の内容語の主辞を表し、ｆｉ−１は文節の機能語の主辞を表す。文節の内容語の主辞とは、文節に存在する内容語列のうち最後尾のものを指す。また、節の機能語の主辞とは、文節に存在する機能語列のうち句読点等の記号類を除く最後尾のものを指す。但し、副詞文節のように機能語がないものは内容の主辞と同じ単語になる。文節連接確率は各文節が隣り合う尤もらしさを表し、コーパスから最尤推定みより求める。
【０１１３】
このような構成とすることによって、実施例１と同様の効果を得ることができる。
【０１１４】
［その他の変形例］
入力とするテキストデータは形態素解析、固有表現抽出、係り受け解析が済んでいないものであってもよい。その場合には必要に応じてテキスト要約装置に従来技術の形態素解析部、固有表現抽出部、係り受け解析部等を設ければよい。
【０１１５】
素性要素は、必ずしも形態素単位である必要はなく、文節等、素性を構成することができる単位であればよい。
【０１１６】
内容性スコア計算部１１５は、素性要素とは異なる単位を文要素（例えば、単語や固有表現等）としてもよい。その場合、素性要素抽出部１１３の出力を入力とするのではなく、自身の備える文要素抽出部において、入力されたテキストデータから文要素を抽出する。
【０１１７】
文要素スコア及び重みパラメタは、他の方法を用いて求めてよいし、他の装置で予め求めたものを記憶部１０３に記憶してもよい。
【０１１８】
重要文順列探索部１１９は、他に、冗長性を削減する工夫を行うこともできる。式（１）と式（４）によれば、同一の内容語や情報抽出の結果がＳに含まれていた場合、それらは何度も内容性スコアに加算される。しかし、一般に、要約に同一の情報が何度も現れることは好ましくないため、同一の内容語や情報抽出の結果は一度しか内容性スコアに加算されない工夫を行うことによって、要約に同一の情報が何度も含まれることを防ぐことができる。この工夫により、同一の入力文から生成される複数の変換文が同時に要約に含まれる可能性が小さくなる。
【０１１９】
連接スコア計算部１１７が３つ以上の文の並びの連接スコアｗＴΦ（ｘ，ｙ）を求めているが、連接スコア計算部１１７は２つの文の連接スコアＣｏｎｎｅｃｔ（ｓｊ｜ｓｉ）のみを求め、出力し、重要文順列探索部１１９で３つ以上の文の並びの連接スコアｗＴΦ（ｘ，ｙ）を求める構成としてもよい。
【０１２０】
また、連接スコア計算部１１７は、２つの文の連接スコアＣｏｎｎｅｃｔ（ｓｊ｜ｓｉ）から３つ以上の文の並びの連接スコアｗＴΦ（ｘ，ｙ）を求めているが、３つ以上の文から連接スコアを求め、その連接スコアを用いて、文の並びの連接スコアを求める構成としてもよい。例えば、Ｃｏｎｎｅｃｔ（ｓｎ｜ｓｉ，ｓ（ｉ＋１）,…，ｓ（ｎ−１））とし、文ｓｉ，ｓ（ｉ＋１）,…，ｓ（ｎ−１）の次に文ｓｎが続く場合の連接スコアを求める。この場合、重みパラメタ等をこれに併せて適宜設定する。
【０１２１】
重みパラメタを算出する際や、重要文順列探索部１１９において、ビームサーチを用いる場合に、ｂの値は、テキスト要約装置の演算性能等を加味して適宜設定すればよい（例えば、ｂ＝１〜１０００）。また、時点ｉにより、その数を変更してもよい。例えば、ｉの増加に従い、ｂを減少させる構成としてもよい。ｉが大きくなるにつれ、一つの仮説から展開できる仮説の数は少なくなるため、演算量を調整することができる。また、ｂの値は、定数ではなく、例えば、要約元となるテキストに含まれる文の数Ｑに応じて変更してもよく、ｂ＝Ｑ×０．１等としてもよい。
【０１２２】
また、重みパラメタを算出する際や、重要文順列探索部１１９において、必ずしもビームサーチと動的計画法を用いなくともよい。また、何れか一方のみを用いても、効率化を図ることは可能である。また、他の方法を用いて高いスコアを効率的に求めてもよい。
【０１２３】
要約長は、図示しない要約長決定部で求め重要文順列探索部１１９の入力としてもよい。要約長決定部は、入力部１３１を介して、要約元となるテキストデータ、または、その大きさ（キロバイト）が入力され、その大きさに応じて要約長を決定する。例えば、要約したテキストデータが、要約元となるテキストデータの大きさの５％〜２０％以下の大きさとなるように、自動的に要約長を決定してもよい。
【実施例２】
【０１２４】
＜テキスト要約装置２００＞
図１及び図２１を用いて実施例２に係るテキスト要約装置２００を説明する。テキスト要約装置１００とは、連接スコア計算部２１７の構成及び記憶部２０３の記憶するデータが異なる。
【０１２５】
＜連接スコア計算部２１７＞
連接スコア計算部２１７は、素性ベクトル生成部１１７ａを有さず、計算部２１７ｂのみを備え、連接スコアをMirella Lapata, "Probabilistic Text Structuring: Experiments with Sentence Ordering", In Proceedings of the 41st Annual Meeting of the Association for Computational Linguistics (ACL), Association for Computational Linguistics, 2003, pp.545 - 552.記載の方法を用いて計算する。その場合、一例として、連接スコアは以下のように定義できる。
【０１２６】
【数９】
0005523929.tif 000010
【０１２７】
ｆｉｋは文ｓｉのｋ番目の素性要素、ｆｊｍは文ｓｊのｍ番目の素性要素である。これはそれぞれ図１１の文ｓｉ、文ｓｊから抽出された素性要素に対応する。ｐ（ｆｊｍ|ｆｉｋ）は、即ち素性要素ｆｊｍが、素性要素ｆｉｋが与えられた状態で出現する確率である。式（５）によれば、連接スコア計算部２１７は、文ｓｉと文ｓｊの連接スコアとして、それぞれの文の素性要素の直積集合（ｓｉ,ｓｊ）の、各条件付き確率ｐ（ｆｊｍ|ｆｉｋ）の総積を、直積集合の濃度で正規化したものを求める。ｐ（ｆｊｍ|ｆｉｋ）は一例として以下のように計算できる。
【０１２８】
【数１０】
0005523929.tif 000011
【０１２９】
ここでＣ（ｆｉｋ,ｆｊｍ）は素性要素ｆｉｋと素性要素ｆｊｍが、上述の訓練データτ中の隣接する文において、素性要素ｆｉｋが前の文に、素性要素ｆｊｍが後の文に現れる回数である。分母は素性要素ｆｉｋが訓練データτにおいて現れる数である。式（５）を連接スコアとして用いる場合、例えば、図示しない重みパラメタ算出部は、訓練用データτを用いて、各数をカウントし、式（６）により各条件付き確率を求め、重みパラメタとして、記憶部２０３に記憶する。図２１に推定した条件付き確率の一例を示す。素性の列の左側が素性要素ｆｉｋに対応し、右側が素性要素ｆｊｍ、条件付き確率の列がｐ（ｆｊｍ|ｆｉｋ）に対応する。
【０１３０】
このような構成とすることで、実施例１と同様の効果を得ることができる。
【符号の説明】
【０１３１】
１００，２００  テキスト要約装置
１０３，２０３  記憶部
１１２  変換文生成部
１１２ａ  短縮文生成部
１１２ｂ  分割部
１１２ｃ  換言部
１１３  素性要素抽出部
１１５  内容性スコア計算部
１１７，２１７  連接スコア計算部
１１９  重要文順列探索部
【図１】
0005523929.tif 000012
【図２】
0005523929.tif 000013
【図３】
0005523929.tif 000014
【図４】
0005523929.tif 000015
【図５】
0005523929.tif 000016
【図６】
0005523929.tif 000017
【図７】
0005523929.tif 000018
【図８】
0005523929.tif 000019
【図９】
0005523929.tif 000020
【図１０】
0005523929.tif 000021
【図１１】
0005523929.tif 000022
【図１２】
0005523929.tif 000023
【図１３】
0005523929.tif 000024
【図１４】
0005523929.tif 000025
【図１５】
0005523929.tif 000026
【図１６】
0005523929.tif 000027
【図１７】
0005523929.tif 000028
【図１８】
0005523929.tif 000029
【図１９】
0005523929.tif 000030
【図２０】
0005523929.tif 000031
【図２１】
0005523929.tif 000032