(57)【要約】【課題】テキスト内に存在する特定の注目記述を高精度に自動検出し、検出された記述に着目してテキストを自動要約する技術を提供する。【解決手段】要約生成装置は、テキストを、その注目箇所を示す情報とともに記憶するテキスト記憶装置と、テキストの各単語をベクトル化し、当該単語が注目箇所か否かを示す要素をベクトルに追加して、テキストを単語ベクトル列に変換するための単語ベクトル変換部８３４及び８３６と、シーケンス・ツー・シーケンス型の変換を行うニューラルネットワークからなり、単語ベクトル列の各単語ベクトルが所定の順番で入力されたことに応答して、当該単語ベクトル列が表す単語からなるテキストの要約を出力するよう、予め機械学習により学習済のＬＳＴＭと、単語ベクトル列の各単語ベクトルを所定の順番でニューラルネットワークに入力する入力部８３８〜８４８とを含む。【選択図】図１８
2018190188.tif 000002
【特許請求の範囲】
【請求項１】
テキストの要約を生成する要約生成装置であって、
前記テキストを、当該テキストの内の注目箇所を示す情報とともに記憶するテキスト記憶装置と、
前記テキストの各単語を、予め定める方法によりベクトル化し、さらに、当該単語が前記注目箇所か否かを示す要素を前記ベクトルに追加することにより、前記テキストを単語ベクトル列に変換するための単語ベクトル変換手段と、
シーケンス・ツー・シーケンス型の変換を行うニューラルネットワークからなり、単語ベクトル列の各単語ベクトルが所定の順番で入力されたことに応答して、当該単語ベクトル列が表す単語からなるテキストの要約を出力するよう、予め機械学習により学習済の要約手段と、
前記単語ベクトル変換手段により変換された単語ベクトル列の各単語ベクトルを前記所定の順番で前記ニューラルネットワークに入力するための入力手段とを含む、要約生成装置。
【請求項２】
前記テキスト記憶装置は、前記テキストとともに、当該テキストの複数箇所の前記注目箇所を示す情報を記憶可能である、請求項１に記載の要約生成装置。
【請求項３】
前記ニューラルネットワークは、再帰型ニューラルネットワークである、請求項１又は請求項２に記載の要約生成装置。
【請求項４】
前記再帰型ニューラルネットワークはＬＳＴＭである、請求項３に記載の要約生成装置。
【請求項５】
コンピュータを用いてテキストの要約を生成する要約生成方法であって、
コンピュータが、前記テキストを、当該テキストの内の注目箇所を示す情報とともにテキスト記憶装置に記憶するステップと、
コンピュータが、前記テキスト記憶装置に記憶された前記テキストの各単語を、予め定める方法によりベクトル化し、さらに、当該単語が前記注目箇所か否かを示す要素を前記ベクトルに追加することにより、前記テキストを単語ベクトル列に変換するステップと、
コンピュータが、シーケンス・ツー・シーケンス型の変換を行うニューラルネットワークからなり、単語ベクトル列の各単語ベクトルが所定の順番で入力されたことに応答して、当該単語ベクトル列が表す単語からなるテキストの要約を出力するよう、予め機械学習により学習済の要約プログラムを呼び出すステップと、
コンピュータが、前記単語ベクトル列の各単語ベクトルを前記所定の順番で前記ニューラルネットワークに入力し、当該入力に応答して前記ニューラルネットワークの出力する単語列を前記テキストの要約として得るステップとを含む、要約生成方法。
【請求項６】
コンピュータに、請求項５に記載の要約生成方法を実行するよう機能させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、人工知能及び自然言語処理技術の分野に関し、特に、文章中に出現する問題のような特定の事項に関する記述に基づき、その文章の要約を自動的に作成する装置及びその装置の学習装置に関する。
【背景技術】
【０００２】
ある文章内に記載されている何らかの問題を記載した箇所（問題記述）を検出する技術、及びそうして検出された問題記述を中心に文章を要約する技術は、今後発展することが予想される人工知能（ＡＩ）による社会問題等の自動検出、及びその解決策の提示といった、ＡＩの具体的な社会応用のために必須の技術である。しかし、既存の問題自動検出の技術については実用に足る十分な性能が得られているとは言えない。また、自動要約技術に関しても、要約したい対象を適切に要約する処理が未成熟であり、十分な品質の要約結果を得ることができない。
【０００３】
例えば、後掲の非特許文献１に開示の技術は、名詞の意味クラス辞書、語の肯定・否定極性辞書、トラブル名詞辞書、活性・不活性辞書といった様々な言語資源を用いて、対象とする問題候補表現に関する特徴量を機械学習の学習時に利用し、得られたモデルにより問題記述を自動的に検出することを行っている。この従来手法ではテキスト中の＜名詞、助詞、述語＞が分類対象となる。その分類の際、例えば、分類対象となる名詞が肯定的な名詞なのか、否定的な名詞なのか（非トラブル名詞かトラブル名詞か）、分類対象となる＜助詞、述語＞が活性側なのか、不活性側なのか、などの手がかりを活性辞書に基づいて人手で選別して、それらの特徴を利用している。ただし、これらの特徴の取捨選択を人手で列挙することには限界があり、列挙された多種多様な素性の重みを限られた量の学習データで推定することはＳＶＭ（Support Vector Machine）のような汎化能力の高い機械学習アルゴリズムを用いても困難である。
【０００４】
一方、自動要約に関しては、これまでは技術的に困難であった抽象型の要約、つまり、文を抜粋するのではなく、自然な文として要約を「生成」する技術の開発がニューラルネットワークの発展にともない進められている（後掲の非特許文献２）。ただし、これらの自動要約技術は一般的な要約(general summarization)と呼ばれる、テキスト中の特定の内容に着目することなく、要約結果を生成する技術である。このため、この既存技術を利用した場合、テキスト中のある特定の事項（例えば問題記述）に着目してテキストの要約を行うことは困難である。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Istvan Varga, Motoki Sano, Kentaro Torisawa, Chikara Hashimoto,Kiyonori Ohtake, Takao Kawai, Jong-Hoon Oh, and Stijn De Saeger. 2013. Aid isout there: Looking for help from tweets during a large scale disaster. InProceedings of the 51st Annual Meeting of the Association for ComputationalLinguistics. pages 1619-1629.
【非特許文献２】Alexander M. Rush, Sumit Chopra, and Jason Weston. 2015. A neuralattention model for abstractive sentence summarization. In Proceedings of the 2015 Conference on Empirical Methods inNatural Language Processing. pages 379-389.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
したがって、本発明は、テキスト内に存在する問題記述のような特定の注目すべき記述を高精度に自動検出し、検出された記述に着目してテキストを自動要約する技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の第１の局面に係る要約生成装置は、テキストの要約を生成する要約生成装置であって、テキストを、当該テキストの内の注目箇所を示す情報とともに記憶するテキスト記憶装置と、テキストの各単語を、予め定める方法によりベクトル化し、さらに、当該単語が注目箇所か否かを示す要素をベクトルに追加することにより、テキストを単語ベクトル列に変換するための単語ベクトル変換手段と、シーケンス・ツー・シーケンス型の変換を行うニューラルネットワークからなり、単語ベクトル列の各単語ベクトルが所定の順番で入力されたことに応答して、当該単語ベクトル列が表す単語からなるテキストの要約を出力するよう、予め機械学習により学習済の要約手段と、単語ベクトル変換手段により変換された単語ベクトル列の各単語ベクトルを所定の順番でニューラルネットワークに入力するための入力手段とを含む。
【０００８】
好ましくは、テキスト記憶装置は、テキストとともに、当該テキストの複数箇所の注目箇所を示す情報を記憶可能である。
【０００９】
より好ましくは、ニューラルネットワークは、再帰型ニューラルネットワークである。
【００１０】
さらに好ましくは、再帰型ニューラルネットワークはＬＳＴＭ（Long Short-Term Memory）である。
【００１１】
本発明の第２の局面に係る要約生成方法は、コンピュータを用いてテキストの要約を生成する要約生成方法であって、コンピュータが、テキストを、当該テキストの内の注目箇所を示す情報とともにテキスト記憶装置に記憶するステップと、コンピュータが、テキスト記憶装置に記憶されたテキストの各単語を、予め定める方法によりベクトル化し、さらに、当該単語が注目箇所か否かを示す要素をベクトルに追加することにより、テキストを単語ベクトル列に変換するステップと、コンピュータが、シーケンス・ツー・シーケンス型の変換を行うニューラルネットワークからなり、単語ベクトル列の各単語ベクトルが所定の順番で入力されたことに応答して、当該単語ベクトル列が表す単語からなるテキストの要約を出力するよう、予め機械学習により学習済の要約プログラムを呼び出すステップと、コンピュータが、単語ベクトル列の各単語ベクトルを所定の順番でニューラルネットワークに入力し、当該入力に応答してニューラルネットワークの出力する単語列をテキストの要約として得るステップとを含む。
【００１２】
本発明の第３の局面に係るコンピュータプログラムは、コンピュータを、上記したいずれかの装置の各手段として機能させる。
【図面の簡単な説明】
【００１３】
【図１】本発明の１実施の形態に係るテキスト要約システムの全体構成及び学習過程を説明するブロック図である。
【図２】図１に示すテキスト要約システムのうち、問題記述候補抽出器を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図３】図１に示すテキスト要約システムのうち、問題記述判定器に含まれるMulti-column Convolutional Neural Network（ＭＣＮＮ）の学習部の概略構成を示すブロック図である。
【図４】図３に示す学習データ生成部の構成を示すブロック図である。
【図５】本願発明の実施の形態でテキスト中の問題記述、重要箇所等の識別に使用される単語列を説明するための模式図である。
【図６】本願発明の実施の形態でテキスト中の問題記述、重要箇所等の識別に使用される他の単語列を説明するための模式図である。
【図７】本願発明の実施の形態でテキスト中の問題記述、重要箇所等の識別に使用されるさらに他の単語列を説明するための模式図である。
【図８】本願発明の実施の形態で単語ベクトル列を入力として問題記述、重要箇所等の識別を行うＭＣＮＮの構成を模式的に示す図である。
【図９】ＭＣＮＮの動作原理を説明する模式図である。
【図１０】図１に示す問題記述判定器を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図１１】図１に示す重要箇所抽出器ＭＣＮＮ学習部５８を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図１２】人手で作成した要約から重要箇所を抽出する処理を説明するための模式図である。
【図１３】図１１に示す重要箇所選択部を実現するためのコンピュータプログラムの制御構造を示すフローチャートである。
【図１４】図１１に示す学習データ生成部を実現するためのコンピュータプログラムの制御構造を示すフローチャートである。
【図１５】図１に示す重要箇所抽出器を実現するためのコンピュータプログラムの制御構造を示すフローチャートである。
【図１６】図１に示す要約器を実現する再帰型ニューラルネットワークの一種である長・短期記憶の構成と学習時及び要約時の動作を説明するための模式図である。
【図１７】図１に示す要約器ＬＳＴＭ学習部を実現するためのコンピュータプログラム野制御構造を示すフローチャートである。
【図１８】図１に示す要約器を実現するコンピュータプログラムの制御構造を示すフローチャートである。
【図１９】本発明の実施の形態に係るテキスト要約システム３０を実現するコンピュータシステムの外観図である。
【図２０】図１９に示すコンピュータシステムの内部ハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【００１４】
以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。なお、以下の実施の形態では、注目箇所の例として何らかの問題を記述した箇所（問題記述）、及びその箇所に記述された問題という観点から見て重要な箇所を用いる。
【００１５】
［第１の実施の形態］
＜構成＞
図１を参照して、以下に述べる第１の実施の形態に係るテキスト要約システム３０は、テキスト集合記憶装置４０に記憶されたテキストに含まれる、問題を記述した箇所の候補（問題記述候補）を問題記述候補抽出器４６により抽出した後、それら問題記述候補が真に問題を記述しているか否かをＭＣＮＮからなる問題記述判定器５０により判定する。ＭＣＮＮについては後述する。なお、本実施の形態では特定の事項として問題記述を検出し、それに基づいて要約を作成する。しかし本発明はそのような実施の形態には限定されない。様々な手法で検出できる特定事項であれば、それに基づいて要約を作成できる。
【００１６】
問題記述候補抽出器４６による問題記述候補の検出には、名詞が何らかのトラブルを表す名詞か、それ以外かを示す情報（極性）を記憶した名詞極性辞書４２と、名詞と組み合わされる、助詞＋述語からなる、述語テンプレートと呼ぶ言語単位をそれらの極性とともに記憶したテンプレート極性辞書４４とを用いる。本実施の形態では、名詞が何らかのトラブルを表す場合にはその極性は負、トラブル以外を表す場合はその極性は正とする。述語テンプレートは、名詞と結び付いてフレーズを構成する。述語テンプレートには、活性及び不活性という分類に従って活性の向き及びその大きさを表す活性値を付与することが可能である。活性とは、その述語テンプレートが、当該述語テンプレートと組み合わされた名詞の指す対象の機能又は効果を発揮させる方向の出来事を記述することを示す。不活性とは、当該述語テンプレートと組み合わされた名詞の指す対象の機能又は効果を発揮させない方向の出来事を記述することを示す。述語テンプレートに関する活性及び不活性の区別を述語テンプレートの極性と呼ぶ。本明細書では、極性が活性であることを正の極性といい、極性が不活性であることを負の極性と呼ぶ。以上の考え方から、例えば極性が正の名詞と極性が負の述語テンプレートが組み合わされた場合、及び極性が負の名詞と極性が正の述語テンプレートが組み合わされた場合には何らかの問題を表している可能性が高い。問題記述候補抽出器４６は、このように名詞及び述語テンプレートの極性を利用して問題記述候補を抽出する。
【００１７】
しかしこのようにして抽出された問題記述候補が常に正しく問題を記述しているとは限らない。その精度を高めるために、本実施の形態では、問題記述判定器５０を用いて問題記述箇所が真に問題を記述しているか否かを判定する。前述したとおり問題記述判定器５０はＭＣＮＮを用いている。したがって、問題記述判定器５０については予め問題記述判定器ＭＣＮＮ学習部５２による学習を行う。
【００１８】
テキスト要約システム３０はさらに、問題記述判定器５０により問題記述の可能性が高いと判定された箇所が特定された要約対象テキストを記憶するための要約対象テキスト記憶装置５４と、重要箇所抽出器５６と、重要箇所抽出器５６の学習を行う重要箇所抽出器ＭＣＮＮ学習部５８と、重要箇所抽出器５６により重要箇所がマークされた要約対象テキストを記憶するためのマーク済要約対象テキスト記憶装置６０と、マーク済要約対象テキスト記憶装置６０に記憶されたマーク済要約対象テキストについてＬＳＴＭを用いて要約を作成し要約結果６６として出力する要約器６２と、要約器６２の実体であるＬＳＴＭの学習を行うための要約器ＬＳＴＭ学習部６４とを含む。ＬＳＴＭは、再帰型ニューラルネットワークの一種であり、後述するようにシーケンス・ツー・シーケンス型の変換を伴う推定等に用いられる。
【００１９】
図２に、問題記述候補抽出器４６を実現するコンピュータプログラムの制御構造をフローチャート形式で示す。このプログラムは、テキスト要約システム３０による要約作成時にも、問題記述判定器５０の学習時にも利用される。図２を参照して、このプログラムは、テキスト集合記憶装置４０に記憶された全てのテキストに対して、問題記述の候補を検出する処理８２を実行するステップ８０を含む。
【００２０】
処理８２は、対象のテキストを記憶装置から読出すステップ９０と、読出したテキストを句点で文に分割するステップ９２と、処理対象のテキストの全ての文に対して問題記述の候補を探す処理９８を実行するステップ９６とを含む。
【００２１】
処理９８は、テキストを形態素解析するステップ１１０、テキストの係り受け解析を行うステップ１１２、係り受け解析されたテキストの中で、互いに係り受け関係にある名詞と述語テンプレートとの組み合わせの各々について、名詞極性辞書４２及びテンプレート極性辞書４４を参照して、それらの極性の積を算出するステップ１１４、積が負になるものがあるか否かを判定するステップ１１６、及び、判定結果が肯定のとき（即ち、積が負になるものがあるとき）に、その文と前後の文からなるあわせて３文を要約対象テキスト候補として出力するステップ１１８を含む。
【００２２】
図３は、図１に示す問題記述判定器ＭＣＮＮ学習部５２の構成を、学習に用いられる他の資源とともに示すブロック図である。図３を参照して、問題記述判定器ＭＣＮＮ学習部５２は、学習用の多数のテキストからなるテキスト集合を記憶するテキスト集合記憶装置１３０、図１に示す名詞極性辞書４２及びテンプレート極性辞書４４とそれぞれ同様の名詞極性辞書１３２及びテンプレート極性辞書１３４を用いて問題記述判定器５０に含まれるＭＣＮＮの学習を行う。
【００２３】
問題記述判定器ＭＣＮＮ学習部５２は、テキスト集合記憶装置１３０に記憶されたテキストの中から、名詞極性辞書１３２とテンプレート極性辞書１３４を参照して問題記述の候補と思われるものを抽出し、その箇所を含む前後３文を問題記述候補として出力する問題記述候補抽出器１４０と、問題記述候補抽出器１４０により抽出された文を記憶するための問題記述候補記憶装置１４２とを含む。問題記述判定器ＭＣＮＮ学習部５２はさらに、問題記述候補記憶装置１４２に記憶された問題記述候補のうち、人手による分類処理１４４で正しい問題記述箇所であると判定されたものを学習のための正例として記憶するための正例記憶装置１４６と、誤った問題記述箇所であると判定されたものを学習のための負例として記憶するための負例記憶装置１４８とを含む。
【００２４】
問題記述判定器ＭＣＮＮ学習部５２はさらに、正例記憶装置１４６及び負例記憶装置１４８に記憶された正例及び負例から問題記述判定器５０のための学習データを生成するための学習データ生成部１５０と、学習データ生成部１５０により生成された学習データを記憶するための学習データ記憶装置１５２と、学習データ記憶装置１５２に記憶された学習データを用いて問題記述判定器５０の学習を行うための学習処理部１５４とを含む。
【００２５】
図４は、図３に示す学習データ生成部１５０のより詳細な構成を示すブロック図である。図４を参照して、学習データ生成部１５０は、正例と負例とによる学習データ生成を切替えるための制御部１６０と、制御部１６０による制御にしたがって、テキストの読出先を正例記憶装置１４６及び負例記憶装置１４８のいずれかに切替えるセレクタ１６２と、セレクタ１６２を介して正例記憶装置１４６又は負例記憶装置１４８からテキストを１つずつ順番に読出すためのテキスト読出部１６４と、テキスト読出部１６４により読み出されたテキストに対して形態素解析を行う形態素解析部１６６と、形態素解析部１６６により形態素解析が行われたテキストに対して係り受け関係解析を行い、係り受け情報が付された解析後文１７０を出力するための係り受け関係解析部１６８とを含む。
【００２６】
学習データ生成部１５０はさらに、解析後文１７０を構成する単語列から、問題記述判定器５０に含まれるＭＣＮＮのカラム（後述するように１１カラムある。）に与える入力となる１１個の単語列を生成するための第１−第１１の単語列生成部１７２と、第１−第１１の単語列生成部１７２により生成された１１個の単語列をそれぞれ単語ベクトル列に変換するための単語ベクトル変換部１７４と、ある入力テキストに対して単語ベクトル変換部１７４が出力する１１個の単語ベクトル列について、そのテキストが正例記憶装置１４６からのものであるときには正例であることを示す値のフラグを、負例記憶装置１４８からのものであるときには負例であることを示す値のフラグを、それぞれ付すことにより学習データを生成するフラグ付加部１７６と、フラグ付加部１７６から出力される、フラグが付加された後の単語ベクトル群を一組の学習データとして学習データ記憶装置１５２に出力するための学習データ出力部１７８とを含む。フラグ付加部１７６が単語ベクトル群に付加するフラグとしては、制御部１６０がセレクタ１６２を制御するための値をそのまま用いれば良い。
【００２７】
ＭＣＮＮへの入力となる単語列は以下のとおりである。ただしこの表で、ＴＮＰは問題記述候補に含まれる問題記述候補の名詞を含む文節を表し、ＰＲＥＤは問題記述候補に含まれる述語テンプレートの述語を含む文節を表す。
【００２８】
【表１】
2018190188.tif 000003
【００２９】
これら単語列はいずれも、文全体から抽出される。なお、本実施の形態では、要約対象テキストは３文からなる。したがってＴＮＰとＰＲＥＤが別文に存在することもあり得る。本実施の形態では、そうした場合でも上記した単語列が得られるようにするために、３文の係り受け木のルートを仮想的なルートノードで互いに結合し、１つの係り受け木を用いて上記単語列を得るようにした。
【００３０】
第１の単語列生成部は、問題記述候補に含まれる名詞と述語の対から単語列を抽出しBase単語列として出力する。図４に示す単語ベクトル変換部１７４が、この単語列から単語ベクトル列であるBaseベクトル列を生成する。本実施の形態では、単語の出現順序を保存し、かつ演算量を少なくするために以下の全ての単語ベクトルとして単語埋め込みベクトルを使用する。
【００３１】
図５を参照して、単語列生成部１７２のうち、第２−第４の単語列生成部が抽出する単語列は、文２００中での単語列の出現順序に基づき、文頭から問題記述候補の名詞を含む文節２５０までの単語列２６０、文節２５０と述語２０２の間の単語列２６２、及び述語２０２の後、文末までの単語列２６４を含む。したがって、SurfSeqベクトル列は３つの単語埋め込みベクトル列として得られる。
【００３２】
図６を参照して、単語列生成部１７２のうち、第５−第８の単語列生成部が抽出する単語列は、文２００の係り受け木に基づき、問題記述候補の名詞を含む文節２５０に係る部分木２８０、述語２０２の係り先の部分木２８２、文節２５０と述語２０２の間の係り受けパス２８４、及びその他２８６からそれぞれ得られる単語列を含む。したがってこの例ではDepTreeベクトル列は４つの単語埋め込みベクトル列として得られる。
【００３３】
図７を参照して、単語列生成部１７２のうち、第９−第１１の単語列生成部が抽出する単語列は、文２００において、述語２０２の前の単語列３００と、後の単語列３０２とを含む。したがってこの場合、PredContextベクトル列は２つの単語埋め込みベクトル列として得られる。
【００３４】
図８を参照して、本実施の形態では、問題記述判定器５０を構成するＭＣＮＮ２１４は、第１〜第４の畳み込みニューラルネットワーク群３６０、３６２、３６４、３６６からなるニューラルネットワーク層３４０と、ニューラルネットワーク層３４０内の各ニューラルネットワークの出力を線形に連結する連結層３４２と、連結層３４２の出力するベクトルに対してSoftmax関数を適用して、問題記述候補が真の問題記述か否かを０〜１の間のスコアで評価し出力するSoftmax層３４４とを含む。
【００３５】
第１の畳み込みニューラルネットワーク群３６０は、Baseベクトルを受ける第１カラムのサブネットワークを含む。第２の畳み込みニューラルネットワーク群３６２は、３つのSurfSeqベクトル列をそれぞれ受ける第２、第３及び第４カラムのサブネットワークを含む。第３の畳み込みニューラルネットワーク群３６４は、４つのDepTreeベクトル列をそれぞれ受ける第５、第６、第７、及び第８カラムのサブネットワークを含む。第４の畳み込みニューラルネットワーク群３６６は、２つのPredContextベクトル列を受ける第９及び第１０カラムのサブネットワークを含む。これらサブネットワークは、いずれも畳み込みニューラルネットワークである。
【００３６】
ニューラルネットワーク層３４０の各畳み込みニューラルネットワークの出力は連結層３４２で単純に線形に連結され、Softmax層３４４への入力ベクトルとなる。
【００３７】
ＭＣＮＮ２１４についてその機能をより詳細に説明する。図９に、代表として１つの畳み込みニューラルネットワーク３９０を示す。ここでは、説明を分かりやすくするために、畳み込みニューラルネットワーク３９０が、入力層４００、畳み込み層４０２、及びプーリング層４０４のみからなっているものとするが、この３つの層を複数個備えているものでもよい。
【００３８】
入力層４００には、学習データのうち、単語ベクトル変換部１７４が出力した単語ベクトル列Ｘ１、Ｘ２、…、Ｘ|ｔ|が入力される。この単語ベクトル列Ｘ１、Ｘ２、…、Ｘ|ｔ|は、行列Ｔ＝［Ｘ１、Ｘ２、…、Ｘ|ｔ|］Ｔとして表される。この行列Ｔに対して、Ｍ個の素性マップが適用される。素性マップはベクトルであって、各素性マップの要素であるベクトルＯは連続する単語ベクトルからなるＮグラムに対してｆj（１≦ｊ≦Ｍ）で示されるフィルタを適用しながらＮグラム４１０を移動させることにより計算される。Ｎは任意の自然数だが、本実施の形態ではＮ＝３とする。すなわちＯは次の式により表される。
【００３９】
【数１】
2018190188.tif 000004
なお、素性マップの全体にわたりＮを等しくしてもよいし、異なるものがあってもよい。Ｎとしては、２、３、４及び５程度が適当であろう。本実施の形態では、重み行列は各カラムセット内の畳み込みニューラルネットワークにおいて等しくしてある。これらは互いに異なっていても良いが、実際、このように等しくした方が、各重み行列を独立に学習する場合より精度が高くなる。なお、畳み込みニューラルネットワークで使用するフィルタとしては、どのようなものを用いることもできる。画像処理で用いるフィルタを流用してもよい。
【００４０】
この素性マップの各々について、次のプーリング層４０４は、いわゆるマックスプーリングを行う。すなわち、プーリング層４０４は、例えば素性マップｆＭの要素のうち、最大の要素４２０を選択し、要素４３０として取出す。これを素性マップの各々に対して行うことによって、要素４３２、…、４３０を取出し、これらをｆ１からｆＭの順番に連接して連結層３４２にベクトル４４２として出力する。各畳み込みニューラルネットワークからはこのようにして得られたベクトル４４０、…、４４２、…、４４４が連結層３４２に出力される。連結層３４２は、ベクトル４４０、…、４４２、…、４４４を単純に線形に連結してSoftmax層３４４に与える。なお、プーリング層４０４としてはマックスプーリングを行うものの方が平均値を採用するものよりも精度が高いと言われている。しかし、もちろん平均値を採用するようにしてもよいし、下位の層の性質をよく表現するものであれば、他の代表値を用いるようにしてもよい。
【００４１】
学習データは、上記した１１種類の単語ベクトル列と、その単語ベクトル列が得られたテキストが正例か負例かを示すフラグとからなる。学習時には、ＭＣＮＮ２１４の各カラムにはそれぞれの各カラムへの入力ベクトルが与えられ、ＭＣＮＮ２１４の出力がそのテキストのフラグと比較され、通常の誤差逆伝播方式によって、誤差関数の値が小さくなる方向にＭＣＮＮ２１４を構成する各ウェイトとバイアスの値が修正される。
【００４２】
図１０を参照して、問題記述判定器５０のうち、ＭＣＮＮ以外の部分を実現するコンピュータプログラムは、テキスト集合記憶装置４０に記憶されたテキストのうちの問題記述候補の各々に対して以下の処理４６２を実行するステップ４６０を含む。なお、この処理の前に、このテキストに対しては形態素解析及び係り受け解析が行われている。
【００４３】
処理４６２は、解析後のテキストに基づいて、上記テーブル１に示した１１個のカラムへの入力となる単語ベクトル列を作成するステップ４７０と、ステップ４７０で得られた１１個の単語ベクトル列をＭＣＮＮ２１４に入力し、ＭＣＮＮ２１４の出力を得るステップ４７２と、ＭＣＮＮ２１４の出力により、処理対象の問題記述候補が正しい問題記述であるか否かを判定し、判定結果に従って制御の流れを分岐させるステップ４７４と、ステップ４７４の判定が肯定であるとき（即ち、正しい問題記述であるとき）に、その問題記述候補を含む前後の３文を要約対象テキストとして出力して処理４６２を終了するステップ４７６と、ステップ４７４の判定がＮＯであるときに、その問題記述候補が誤りであるという情報を出力して処理４６２を終了するステップ４７８とを含む。
【００４４】
図１１を参照して、重要箇所抽出器５６の学習を行うための重要箇所抽出器ＭＣＮＮ学習部５８は、学習のための要約対象テキストを記憶する要約対象テキスト記憶装置５００と、要約対象テキスト記憶装置５００に記憶された各対象テキストに対して人手により要約を作成する要約作成５０２と、作成された要約を記憶する要約記憶装置５０４とを含む。本実施の形態では、１つの要約対象テキストに対して、３人が合計で３個の要約を人手で作成することにしているが、より多くの要約を作るようにしても良い。
【００４５】
重要箇所抽出器ＭＣＮＮ学習部５８はさらに、各要約対象テキストについて、３人が作成した要約のうち、少なくとも２つの要約に共通に含まれる単語を重要箇所として選択する重要箇所選択部５０６と、各要約対象テキストのうち、重要箇所選択部５０６が選択した単語を重要箇所としてマークしマーク済要約対象テキストを出力する要約対象テキストマーキング部５０８と、要約対象テキストマーキング部５０８の出力するマーク済の要約対象テキストを記憶するためのマーク済要約対象テキスト記憶装置５１０と、マーク済要約対象テキスト記憶装置５１０からマーク済の要約対象テキストを読出し、テキスト中の問題記述中の述語テンプレートと、重要箇所との前後関係に応じた方法で学習データを生成し、第１の学習データ記憶装置５１４又は第２の学習データ記憶装置５１６のいずれかに出力する学習データ生成部５１２とを含む。
【００４６】
学習データを生成する際に、テキスト中の問題記述中の述語テンプレートと、重要箇所との双方が単語ベクトル生成に関係する場合、これらの前後関係に応じて学習データを異なる方法で生成する必要がある。本実施の形態では、表１と同様の考え方で単語ベクトルを生成するが、以下のように変更する。すなわち、重要箇所又はその候補をＣＡＮＤで表すと、マーク済の要約対象テキスト中でＰＲＥＤより前にＣＡＮＤが現れる場合には、表１のＴＮＰをＣＡＮＤで置換する（第１の方法）。もしもＰＲＥＤがＣＡＮＤより前に現れる場合には、表１においてＣＡＮＤとＰＲＥＤの位置を交換する（第２の方法）。本実施の形態では、学習データの生成においてＰＲＥＤより前にＣＡＮＤが現れる場合には第１の方法により学習データを生成して第１の学習データ記憶装置５１４に出力し、逆の場合には第２の方法により学習データを生成して第２の学習データ記憶装置５１６に出力する。
【００４７】
重要箇所抽出器ＭＣＮＮ学習部５８はさらに、第１の学習データ記憶装置５１４に記憶された学習データを用いて、ＭＣＮＮを含む第１の重要箇所検出器５２０の学習を行う第１の学習処理部５１８と、第２の学習データ記憶装置５１６に記憶された学習データを用いて、ＭＣＮＮを含む第２の重要箇所検出器５２４の学習を行う第２の学習処理部５２２とを含む。
【００４８】
重要箇所選択部５０６の機能について、図１２を参照して説明する。要約対象テキスト５３０について、３人の要約作成者が別々に要約５３２、要約５３４及び要約５３６を作成したものとする。重要箇所選択部５０６は、これら３つの要約の各々から内容語を抽出し、２つ以上に使用されている内容後を重要箇所として選択する。例えば、図１２に示す例では、「４月１日現在」、「引き取り手がない１１０人」、及び「老人福祉施設」という内容語が２つの要約で使用されている。さらに、「残っている」という単語列が３つの要約に共通に現れている。したがって、これら４つの部分が重要箇所として抽出され、これらが重要箇所としてマークされた要約対象テキスト５３８が生成される。
【００４９】
このようにして重要語が抽出された後、要約対象テキスト５３０でその重要語が使用されている箇所を正例、それ以外の箇所を負例として、学習データを生成する。
【００５０】
なお、人手による要約の作成には、上記した目的にかなうように注意が必要である。そのためには様々な制約を課す必要がある。例えば、要約を作成する際には最初に要約対象テキストの中で重要と思われる単語をコピーして新たな文書を作成し、そこに適切な機能語を追加するという方法を採ることが好ましい。もとのテキストに出現してない内容語は要約に使用しない。要約は４０文字以内とする。さらに、要約の末尾は統一した形（例えば「…こと」）で終了する、という制約を課してもよい。
【００５１】
図１３は、図１１に示す重要箇所選択部５０６を実現するプログラムの制御構造を示すフローチャートである。図１３を参照して、このプログラムは。全ての要約対象テキストに対し、処理５４２を実行するステップ５４０を含む。
【００５２】
処理５４２は、要約対象テキストを読出すステップ５５０、このテキストに対して形態素解析及び係り受け解析を行うステップ５５２、各形態素に対応した要素を持つ配列を準備するステップ５５４、及び各要約者の要約に対して以下の処理５５８を実行することにより、要約対象テキストの各形態素がいくつの要約において使用されているかをカウントし、対応する配列に格納するステップ５５６と、ステップ５５６でカウントされた数を含む配列を係り受け後の要約対象テキストと関連付けて出力するステップ５６０とを含む。
【００５３】
処理５５８は、要約者の要約のマーク箇所に対して処理５７２を実行するステップ５７０を含む。処理５７２は、要約対象テキストの各形態素に対して処理５８２を実行するステップ５８０を含む。処理５８２では、各形態素に対応する配列の値に１を加算する。すなわち、この処理５８２により各形態素を採用した要約の数が算出される。
【００５４】
図１４は、図１１に示す学習データ生成部５１２を実現するコンピュータプログラムの制御構造を示すフローチャートである。図１４を参照して、このプログラムは、それぞれ第１の学習データ記憶装置５１４及び第２の学習データ記憶装置５１６に格納される第１の学習データファイルと第２の学習データファイルを初期化するステップ６００と、マーク済の全要約対象テキストに対して以下の処理６０４を実行するステップ６０２とを含む。
【００５５】
処理６０４は、処理対象の要約テキストを読むステップ６１０と、読み込んだテキスト中の問題記述の位置を特定するステップ６１２と、問題記述以外の各要素に対して、以下の処理６１６を実行するステップ６１４とを含む。
【００５６】
処理６１６は、処理対象の要素が問題記述中の述語テンプレートの述語より前に有るか否かを判定するステップ６２０と、ステップ６２０の判定が肯定であるとき（即ち、要素が問題記述の述語より前にあるとき）に、第１のパターンにより学習データを生成するステップ６２２と、処理対象の要素に重要箇所のマークが付されているかを判定するステップ６２４と、ステップ６２４の判定が肯定であるとき（即ち、重要箇所のマークが付されているとき）に学習データを正例として第１の学習データファイルに追加するステップ６２８と、ステップ６２４の判定が否定であるとき（即ち、重要箇所のマークが付されていないとき）に、学習データを負例として第１の学習データファイルに追加するステップ６２６とを含む。
【００５７】
処理６１６はさらに、ステップ６２０の判定が否定であるとき（即ち、要素が問題記述の述語より後ろにあるとき）に、第２のパターンにより学習データを生成するステップ６３２と、処理対象の要素に重要箇所のマークが付されているか否かを判定するステップ６３４と、ステップ６３４の判定が肯定であるとき（即ち、重要箇所のマークが付されているとき）に、学習データを正例として第２の学習データファイルに追加するステップ６３６と、ステップ６３４の判定が否定であるとき（即ち、重要箇所のマークが付されていないとき）に、学習データを負例として第２の学習データファイルに追加するステップ６３８とを含む。
【００５８】
図１５は、図１に示す重要箇所抽出器５６を実現するプログラムの制御構造を示すフローチャートである。図１５を参照して、このプログラムは、要約を作成する対象であるテキストを読むステップ６５０と、読み込んだテキストに対して形態素解析を行うステップ６５２と、形態素解析の結果に基づいてテキストの係り受け解析を行うステップ６５４と、テキスト中で問題記述の箇所としてマークされている部分の述語テンプレートを特定するステップ６５６と、テキスト中の内容語を重要箇所の候補とし、その各々に対して処理６６０を実行するステップ６５８とを含む。
【００５９】
処理６６０は、処理対象の候補が問題記述の述語の前か否かを判定し、制御の流れを分岐させるステップ６７０と、ステップ６７０の判定が肯定のとき（即ち、処理対象の候補が問題記述の述語の前にあるとき）に、第１の方法によりＭＣＮＮの各カラムへの入力となる単語ベクトル列を入力テキストから作成するステップ６７２と、ステップ６７２で作成された単語ベクトル列を第１の重要箇所検出器５２０のＭＣＮＮに入力しその判定結果を得るステップ６７４と、ステップ６７０の判定が否定のとき（即ち、処理対象の候補が問題記述の述語の後にあるとき）に、第２の方法によりＭＣＮＮの各カラムへの入力となる単語ベクトル列を入力テキストから作成するステップ６７６と、ステップ６７６で作成された単語ベクトル列を第２の重要箇所検出器５２４のＭＣＮＮに入力し、その判定結果を得るステップ６７８とを含む。
【００６０】
処理６６０はさらに、ステップ６７４又は６７８の結果、ＭＣＮＮにより処理中の要素が重要箇所と判定されたか否かを判定して制御の流れを分岐させるステップ６８０と、ステップ６８０の判定が肯定のとき（即ち、正しい重要箇所であったとき）に、処理中の要素のフラグをセットして処理６６０を終了するステップ６８２と、ステップ６８０の判定が否定のとき（即ち、正しい重要箇所でなかったとき）に、処理中の要素のフラグをリセットして処理６６０を終了するステップ６８４とを含む。
【００６１】
図１６は、図１に示す要約器６２の概略構成を示す図である。図１６を参照して、この要約器６２は、リカレント型ニューラルネットワークの一種であり、入力層を形成するＬＳＴＭ７００と、ＬＳＴＭ７００からの出力を受けるように接続されたアテンション層７０４と、アテンション層７０４の出力を受けるように接続されたＬＳＴＭ７０６とを含む。ＬＳＴＭは機械翻訳、要約作成等で既に使用されており、その基本的構成及び動作はたとえばMinh-Thang Luong、Hieu Pham、Christopher D. Manning．Effective Approaches to Attention-based Neural Machine Translation．Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing, pages 1412-1421, Lisbon, Portugal, 17-21 September 2015.に詳述されている。要約器６２を構成するＬＳＴＭも基本的にはこの文献に記載のものと同様である。ただし、本実施の形態に係る要約器６２では、ＬＳＴＭに入力される各単語ベクトルに、その単語が重要箇所又は問題記述か否かを示すフラグを付す点に特徴がある。
【００６２】
図１６に示すのは要約作成時のＬＳＴＭの動作を示す図であるが、学習時のＬＳＴＭの動作も途中までは要約作成時と同じである。すなわち、学習時には、ＬＳＴＭ７００には、要約対象テキスト７０２を構成する単語列の単語ベクトル列の各単語ベクトルが所定の順番で与えられ、ＬＳＴＭ７００、アテンション層７０４及びＬＳＴＭ７０６の学習が行われる。図１６に示す例では、要約対象テキスト７０２を構成する各単語の単語ベクトル７１０、７１２、７１４、…、７１６がＬＳＴＭ７００に順番に与えられる。このとき、単語ベクトルの末尾要素として、その単語が重要箇所か又は問題記述であるときには１を、それ以外のときには０となるフラグが付されている。もちろんこの要素の値には、単語が重要箇所か否かを判定できるものであればどのようなものを選んでもよい。単語ベクトルを与える順番として、学習時には通常の語順にしたがって与え、要約作成時には逆順にして与えることがよく行われる。ここでも同様の手法を用いる。
【００６３】
さらに、要約対象テキスト７０２の全ての単語及びフラグからなる単語ベクトルの入力が完了すると、入力の終了を示す値「＜ＥＯＳ＞」がＬＳＴＭ７００に入力される。このとき、ＬＳＴＭ７０６の出力に人手で作成された要約の最初の単語が得られるよう、ＬＳＴＭ７００、アテンション層７０４及びＬＳＴＭ７０６の学習が行われる。
【００６４】
学習時には、図１６と異なり、この後、ＬＳＴＭ７００には人手で作成された要約の各単語の単語ベクトルが順に入力され、ＬＳＴＭ７００、アテンション層７０４、及びＬＳＴＭ７０６の学習が行われる。人手で作成された要約の各単語ベクトルのＬＳＴＭ７００への入力が終了したときに、ＬＳＴＭ７０６の出力に「＜ＥＯＳ＞」が得られるよう、ＬＳＴＭ７００、アテンション層７０４、及びＬＳＴＭ７０６の学習が行われる。
【００６５】
要約作成時には学習時と一部異なった動作が行われる。要約作成時の要約対象テキスト７０２の要約器６２への入力は、学習時と同様に行われる。ただし、要約作成時には単語の入力順序を逆転させてもよいことが知られている。要約対象テキストの末尾まで入力が終われば、「＜ＥＯＳ＞」を示すベクトル７１８がＬＳＴＭ７００に入力される。このベクトル７１８に対してＬＳＴＭ７０６が出力する単語が要約の１番目の単語となる。次に、ＬＳＴＭ７０６の出力として得られたこの単語をＬＳＴＭ７００への入力７２０として与える。これに応答してＬＳＴＭ７０６の出力に得られる単語が要約の２番目の単語となる。以下同様に、ＬＳＴＭ７０６の出力をＬＳＴＭ７００への入力７２２とする処理を繰返す。ＬＳＴＭ７００への入力に対してＬＳＴＭ７０６の出力に「＜ＥＯＳ＞」が得られると処理は終了する。この間にＬＳＴＭ７０６の出力として得られた単語列７０８が、入力された要約対象テキスト７０２の要約となる。
【００６６】
図１７は、要約器６２の実体を構成する要約器ＬＳＴＭの学習を行う、要約器ＬＳＴＭ学習部６４を実現するためのプログラムの制御構造をフローチャート形式で示す。図１７を参照して、このプログラムは、全ての学習データに対して、その学習データを用いてＬＳＴＭの学習を行う処理７４２を実行するステップ７４０を含む。
【００６７】
処理７４２は、要約対象テキストを記憶装置から読むステップ７５０と、要約対象テキストを構成する各単語を単語ベクトルに変換して記憶装置に保存する処理７５４を実行するステップ７５２と、処理対象の要約対象テキストに対して人手で作成した要約（本実施の形態では３個）の各々を用いてＬＳＴＭの学習を行う処理７５８を実行するステップ７５６とを含む。
【００６８】
処理７５４は、処理対象の単語を単語ベクトルに変換するステップ７７０と、この単語ベクトルの末尾に、この単語が重要単語又は問題記述箇所の単語であるときにはそれを示す第１の値を、そうでないときには第１の値と異なる第２の値をとる１次元のランダムベクトルからなる新たな要素をフラグとして追加するステップ７７２と、こうして変換された単語ベクトルを、直前の単語に対応する単語ベクトルの次に追加して記憶装置に保存するステップ７７４とを含む。
【００６９】
処理７５８は、処理７５４により記憶装置に保存された単語ベクトル列を読出し、順番にＬＳＴＭ７００に入力し要約器６２を学習させるステップ７８０と、全ての単語ベクトルがＬＳＴＭ７００に入力された後、＜ＥＯＳ＞を表す単語ベクトルをＬＳＴＭ７００に入力し要約器６２を学習させるステップ７８２と、人手で作成された処理対象の要約文を記憶装置から読出すステップ７８４と、この要約文に含まれる各単語を単語ベクトルに変換してＬＳＴＭ７００に順番に入力する処理７８８を実行するステップ７８６と、要約文の末尾を示す＜ＥＯＳ＞をＬＳＴＭ７００に入力するステップ７９０とを含む。
【００７０】
処理７８８は、処理対象の単語を単語ベクトルに変換するステップ８００と、この単語ベクトルをＬＳＴＭ７００に入力し要約器６２を学習させるステップ８０２とを含む。
【００７１】
図１８は、上述のようにして学習が行われた要約器６２を用いて要約対象テキストの要約を作成する、図１に示すテキスト要約システム３０を実現するコンピュータプログラムの制御構造をフローチャート形式で示す。図１８を参照して、このプログラムは、要約対象テキストを記憶装置から読出すステップ８１０と、この要約対象テキストについて、図１に示す問題記述候補抽出器４６に相当する処理（図２）を実行することにより、問題記述の候補を抽出するステップ８１２と、ステップ８１２により抽出された問題記述の候補に対して、図１に示す問題記述判定器５０に相当する処理（図１０）を実行することにより、正しい問題記述か否かを判定するステップ８１４と、ステップ８１４で正しい問題記述であると判定された箇所の各々について、要約を作成する処理８１８を実行するステップ８１６とを含む。
【００７２】
処理８１８は、要約対象テキストから、重要箇所抽出器５６（図１参照）に相当する処理により重要箇所を抽出するステップ８３０と、抽出された重要箇所にフラグをセットするステップ８３２と、要約対象テキストの各単語を単語ベクトルに変換することにより単語ベクトル列を生成するステップ８３４と、生成された各単語ベクトルに、その単語が重要箇所又は問題記述であるときには１を、そうでないときには０をとる要素を付加するステップ８３６とを含む。
【００７３】
処理８１８はさらに、ステップ８３４及び８３６で生成された単語ベクトル列を順番にＬＳＴＭ７００に入力するステップ８３８と、ステップ８３８により全ての単語ベクトルがＬＳＴＭ７００に入力された後に、＜ＥＯＳ＞をＬＳＴＭ７００に入力するステップ８４０と、このときのＬＳＴＭ７０６の出力を読むステップ８４２と、以後、ＬＳＴＭ７０６から＜ＥＯＳ＞が出力されるまで、ＬＳＴＭ７０６から出力される単語列を記憶する処理８４６を実行するステップ８４４と、ＬＳＴＭ７０６から＜ＥＯＳ＞が出力され、ステップ８４４が終了したことに応答して、処理８４６により記憶された単語列を要約対象テキストの要約として出力するステップ８４８とを含む。
【００７４】
処理８４６は、ＬＳＴＭ７０６から出力される単語を、これまでの単語列の末尾に追加して記憶するステップ８６０と、ステップ８６０でＬＳＴＭ７０６から出力された単語をＬＳＴＭ７００に入力として与えるステップ８６２とを含む。
【００７５】
＜動作＞
以上、構成を説明したテキスト要約システム３０は以下のように動作する。テキスト要約システム３０の動作フェーズは大きく分けて２つある。第１は学習フェーズ、第２は要約作成フェーズである。
【００７６】
〈学習フェーズ〉
学習フェーズはさらに３つに分かれる。第１は問題記述判定器５０の学習であり、第２は重要箇所抽出器５６の学習であり、第３は要約器６２の学習である。
【００７７】
−問題記述判定器５０の学習−
問題記述判定器５０の学習は以下のようにして行われる。図３を参照して、最初に、学習用のテキストをテキスト集合記憶装置１３０に記憶し、名詞極性辞書１３２及びテンプレート極性辞書１３４を準備する。問題記述候補抽出器１４０が以下のようにしてテキスト集合記憶装置１３０の各テキストを読み、名詞極性辞書１３２とテンプレート極性辞書１３４を参照してこれらテキスト中で問題記述の候補を見つけ、その箇所を含む前後の３文からなる問題記述候補を抽出する。
【００７８】
すなわち、図２を参照して、問題記述候補抽出器４６を実現するコンピュータプログラムは、対象のテキストを記憶装置から読出し（ステップ９０）、読出したテキストを句点で文に分割する（ステップ９２）。さらに、処理対象のテキストの全ての文に対して問題記述の候補を探す処理９８を実行する（ステップ９６）。
【００７９】
処理９８では、テキストを形態素解析し（ステップ１１０）、テキストの係り受け解析を行う（ステップ１１２）。その後、係り受け解析されたテキストの中で、互いに係り受け関係にある名詞と述語テンプレートとの組み合わせの各々について、名詞極性辞書４２及びテンプレート極性辞書４４を参照して、それらの極性の積を算出する（ステップ１１４）。これらのうち、積が負になるものがあれば（ステップ１１６で肯定）、その文と前後の文からなるあわせて３文を要約対象テキスト候補として出力する（ステップ１１８）。この処理９８を全てのテキストに対して実行することで、問題記述の候補が複数個得られる。
【００８０】
再び図３を参照して、こうして得られた問題記述候補は問題記述候補記憶装置１４２に記憶される。これら問題記述候補を人手で調べ、正しい問題記述箇所とそうでないものとに分類する（分類処理１４４）。正しい問題記述箇所は正例記憶装置１４６に、そうでないものは負例記憶装置１４８に、それぞれ記憶される。
【００８１】
学習データ生成部１５０は、正例記憶装置１４６及び負例記憶装置１４８に記憶された正例及び負例から問題記述判定器５０のための学習データを生成する。生成された学習データは学習データ記憶装置１５２に記憶される。学習処理部１５４は、この学習データを用いて問題記述判定器５０のＭＣＮＮの学習を行う。
【００８２】
図４を参照して、学習データ生成部１５０の制御部１６０は、正例を処理するときは正例記憶装置１４６の出力がテキスト読出部１６４の入力に接続され、負例を処理するときは負例記憶装置１４８の出力がテキスト読出部１６４の入力に接続されるようにセレクタ１６２を切替える。テキスト読出部１６４はセレクタ１６２を介して正例記憶装置１４６又は負例記憶装置１４８からテキストを１つずつ順番に読出す。形態素解析部１６６がこのテキストに対して形態素解析を行い、係り受け関係解析部１６８が係り受け関係解析を行い、係り受け情報が付された解析後文１７０を出力する。
【００８３】
第１−第１１の単語列生成部１７２はそれぞれ、問題記述判定器５０のＭＣＮＮ（図３参照）の各カラムに対応した１１個の単語列を生成し単語ベクトル変換部１７４に与える。単語ベクトル変換部１７４はこれら１１個の単語列を構成する単語の各々を単語ベクトルに変換し、生成された１１個の単語ベクトル列をフラグ付加部１７６に与える。フラグ付加部１７６は、制御部１６０がセレクタ１６２を制御するために出力している信号を受信し、その値を学習データの正例又は負例を表すものとして１１個の単語ベクトル列からなる学習データにフラグを付加する。学習データ出力部１７８は、こうして得られた学習データを学習データ記憶装置１５２に格納する。
【００８４】
正例記憶装置１４６に記憶された正例及び負例記憶装置１４８に記憶された負例の全てについて学習データが生成されると学習データ生成部１５０による学習データの準備が終了する。
【００８５】
第１−第１１の単語列生成部１７２により生成される１１個の単語ベクトル列については、図５−図７を参照して前述したとおりである。
【００８６】
図８を参照して、各学習データの第１の単語ベクトル列は問題記述判定器５０を構成するＭＣＮＮ２１４の第１カラムの畳み込みニューラルネットワーク群３６０の第１カラムに与えられる。第２〜第４の単語ベクトル列は、ＭＣＮＮ２１４の第２カラムの畳み込みニューラルネットワーク群３６２の３つのサブネットワークにそれぞれ与えられる。第５〜第８の単語ベクトル列は、第３カラムの畳み込みニューラルネットワーク群３６４の４つのサブネットワークにそれぞれ与えられる。第９〜第１１の単語ベクトル列は、第４の畳み込みニューラルネットワーク群３６６の３つのサブネットワークにそれぞれ与えられる。ＭＣＮＮ２１４の学習は、通常のニューラルネットワークと同様、誤差逆伝播により行われる。
【００８７】
―重要箇所抽出器５６の学習―
図１１に示す重要箇所抽出器ＭＣＮＮ学習部５８により図１に示す重要箇所抽出器５６の学習を行うためには、図１１を参照して、最初に複数の要約対象テキストを集め、要約対象テキスト記憶装置５００に記憶させておく。これら要約対象テキストの各々について、複数人（本実施の形態では３人）の要約作成者により要約を作成する（要約作成処理５０２）。作成された要約は、要約対象テキストに関連付けて要約記憶装置５０４に記憶させる。この要約作成の際には、ある制約にしたがって行うことは前述したとおりである。
【００８８】
重要箇所選択部５０６が、各要約対象テキストについて、その要約対象テキストの３つの要約のうち、少なくとも２つの要約に共通に含まれる単語を重要箇所として選択する。要約対象テキストマーキング部５０８が、各要約対象テキストのうち、重要箇所選択部５０６が選択した単語を重要箇所としてマークしマーク済要約対象テキストを出力する。要約対象テキストマーキング部５０８の出力するマーク済の要約対象テキストはマーク済要約対象テキスト記憶装置５１０に記憶される。学習データ生成部５１２が、マーク済要約対象テキスト記憶装置５１０からマーク済の要約対象テキストを読出し、テキスト中の問題記述中の述語テンプレートと、重要箇所との前後関係に応じて学習データを生成し、第１の学習データ記憶装置５１４又は第２の学習データ記憶装置５１６のいずれかに出力する。重要箇所又はその候補ＣＡＮＤが要約対象テキスト中でＰＲＥＤより前に現れる場合には、表１のＴＮＰをＣＡＮＤで置換する（第１の方法）。もしもＰＲＥＤがＣＡＮＤより前に現れる場合には、表１においてＣＡＮＤとＰＲＥＤの位置を交換する（第２の方法）。このとき、要約対象テキスト５３０のうちでその重要語が使用されている箇所を正例、それ以外の箇所を負例として、学習データを生成する。
【００８９】
第１の学習処理部５１８は、第１の学習データ記憶装置５１４に記憶された学習データを用いて重要箇所検出器５２０のＭＣＮＮの学習を行う。第２の学習処理部５２２は、第２の学習データ記憶装置５１６に記憶された学習データを用いて重要箇所検出器５２４のＭＣＮＮの学習を行う。
【００９０】
―要約器６２の学習―
図１７を参照して、要約器６２の実体を構成する要約器ＬＳＴＭの学習を行う処理（要約器ＬＳＴＭ学習部６４に相当）は以下のように行われる。この処理に先立って、要約対象テキストと、各要約対象テキストに対して人手で３つずつ作成された要約とが記憶装置に記憶されている必要がある。要約対象テキストの各々の各単語には、問題記述の箇所と重要箇所とをそれ以外に対して識別するフラグが付されている。
【００９１】
まず、全ての学習データに対して処理７４２を実行する。処理７４２では、要約対象テキストを記憶装置から読み（ステップ７５０）、要約対象テキストを構成する各単語を単語ベクトルに変換して記憶装置に保存する処理７５４を実行する（ステップ７５２）。この後、処理対象の要約対象テキストに対して人手で作成した要約の各々を用いてＬＳＴＭの学習を行う処理７５８を実行する（ステップ７５６）。
【００９２】
処理７５４では、処理対象の単語を単語ベクトルに変換し（ステップ７７０）、この単語ベクトルの末尾に、この単語が重要単語又は問題記述箇所の単語であるときには第１の値を、そうでないときには第２の値をとるフラグからなる新たな要素を追加する（ステップ７７２）。こうして変換された単語ベクトルを、直前の単語に対応する単語ベクトルの次に追加して記憶装置に保存する（ステップ７７４）。
【００９３】
処理７５８では、処理７５４により記憶装置に保存された単語ベクトル列を読出し、順番にＬＳＴＭ７００に入力し要約器６２に学習させる（ステップ７８０）。全ての単語ベクトルがＬＳＴＭ７００に入力された後、＜ＥＯＳ＞を表す単語ベクトルをＬＳＴＭ７００に入力し要約器６２を学習させる（ステップ７８２）。この後、人手で作成された処理対象の要約文を記憶装置から読出し（ステップ７８４）、処理７８８でこの要約文に含まれる各単語を単語ベクトルに変換してＬＳＴＭ７００に順番に入力する（ステップ７８６）。要約文の入力が終わったら、その末尾を示す＜ＥＯＳ＞をＬＳＴＭ７００に入力する（ステップ７９０）。
【００９４】
処理７８８は、処理対象の単語を単語ベクトルに変換し（ステップ８００）、この単語ベクトルをＬＳＴＭ７００に入力し要約器６２を学習させる（ステップ８０２）。
【００９５】
以上の一連の処理により、問題記述判定器５０、重要箇所抽出器５６、及び要約器６２の学習が終了し、テキスト要約システム３０による要約の作成が可能になる。
【００９６】
〈要約作成フェーズ〉
図１を参照して、テキスト集合記憶装置４０に要約作成の対象となるテキストを格納し、名詞極性辞書４２とテンプレート極性辞書４４を予め準備しておく。テキスト集合記憶装置４０に格納された各文に対して、問題記述候補抽出器４６が名詞極性辞書４２及びテンプレート極性辞書４４を参照しながら問題記述の候補を抽出し、問題記述の候補を含む文とその前後の文からなる３文を要約対象テキスト候補として抽出し問題記述候補記憶装置４８に格納する。
【００９７】
問題記述判定器５０は、問題記述候補記憶装置４８に格納された要約対象テキスト候補の問題記述の箇所が正しい問題記述であるか否かを判定し、正しいもののみを要約対象テキストとして要約対象テキスト記憶装置５４に格納し、それ以外の候補は破棄する。
【００９８】
重要箇所抽出器５６は要約対象テキスト記憶装置５４に記憶された各要約対象テキストの各単語について、その単語と問題記述との関係に応じて２種類ある重要箇所抽出用のＭＣＮＮを用いてその単語が重要箇所か否かを判定し、重要箇所である単語があるときにはその単語に重要箇所であることを示すマークを付してマーク済要約対象テキスト記憶装置６０に出力する。
【００９９】
要約器６２はマーク済要約対象テキスト記憶装置６０に記憶されたマーク済の要約対象テキストの各単語を単語ベクトルに変換し、さらに各単語ベクトルに、その単語が重要箇所又は問題記述か否かを示すフラグを付して要約器６２のＬＳＴＭ７００に順番に入力し、さらに最後に＜ＥＯＳ＞を示す単語ベクトルをＬＳＴＭ７００に入力する。要約器６２はさらに、このときにＬＳＴＭ７０６から出力された単語を記憶するとともにＬＳＴＭ７００への入力とする。この入力に応じてＬＳＴＭ７０６から出力された単語を追加して記憶し、さらにＬＳＴＭ７００に入力する。要約器６２はこのような動作をＬＳＴＭ７０６から＜ＥＯＳ＞が出力されるまで行う。＜ＥＯＳ＞が出力されると、それまでにＬＳＴＭ７０６から出力された単語列を処理対象の要約対象テキストの要約として出力する。
【０１００】
要約器６２は、マーク済要約対象テキスト記憶装置６０に記憶された要約対象テキストの全てに対し、上記した動作を繰返す。
【０１０１】
［コンピュータによる実現］
上記実施の形態に係る要約作成システム及びその各構成要素は、コンピュータハードウェアと、そのコンピュータハードウェア上で実行されるコンピュータプログラムとにより実現できる。図１９はこのコンピュータシステム９３０の外観を示し、図２０はコンピュータシステム９３０の内部構成を示す。
【０１０２】
図１９を参照して、このコンピュータシステム９３０は、メモリポート９５２及びＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）ドライブ９５０を有するコンピュータ９４０と、キーボード９４６と、マウス９４８と、モニタ９４２とを含む。
【０１０３】
図２０を参照して、コンピュータ９４０は、メモリポート９５２及びＤＶＤドライブ９５０に加えて、ＣＰＵ（中央処理装置）９５６と、ＣＰＵ９５６、メモリポート９５２及びＤＶＤドライブ９５０に接続されたバス９６６と、ブートアッププログラム等を記憶する読出専用メモリ（ＲＯＭ）９５８と、バス９６６に接続され、プログラム命令、システムプログラム、及び作業データ等を記憶するランダムアクセスメモリ（ＲＡＭ）９６０とを含む。コンピュータシステム９３０はさらに、他端末との通信を可能とするネットワークへの接続を提供するネットワークインターフェイス（Ｉ／Ｆ）９４４を含む。ネットワークＩ／Ｆ９４４は、インターネット９６８に接続されてもよい。
【０１０４】
コンピュータシステム９３０を上記した各実施の形態の要約作成システム、又はその各機能部として機能させるためのコンピュータプログラムは、ＤＶＤドライブ９５０又はメモリポート９５２に装着されるＤＶＤ９６２又はリムーバブルメモリ９６４に記憶され、さらにハードディスク９５４に転送される。又は、プログラムはネットワークＩ／Ｆ９４４を通じてコンピュータ９４０に送信されハードディスク９５４に記憶されてもよい。プログラムは実行の際にＲＡＭ９６０にロードされる。ＤＶＤ９６２から、リムーバブルメモリ９６４から、又はネットワークＩ／Ｆ９４４を介して、直接にＲＡＭ９６０にプログラムをロードしてもよい。
【０１０５】
このプログラムは、コンピュータ９４０を、上記各実施の形態に係る要約作成システム又はその各機能部として機能させるための複数の命令を含む。この動作を行なわせるのに必要な基本的機能のいくつかはコンピュータ９４０上で動作するオペレーティングシステム（ＯＳ）若しくはサードパーティのプログラム、又は、コンピュータ９４０にインストールされる各種プログラミングツールキットのモジュールにより提供される。したがって、このプログラムはこの実施の形態の要約作成システムを実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能又はプログラミングツールキット内の適切なプログラムツールを呼出すことにより、上記した要約作成システム又はその各機能部としての機能を実現する命令のみを含んでいればよい。コンピュータシステム９３０の動作は周知である。したがってここでは繰返さない。
【０１０６】
なお、要約対象テキスト等のテキスト類は、上記実施の形態ではハードディスク９５４に記憶され、適宜ＲＡＭ９６０に展開される。ＭＣＮＮ及びＬＳＴＭのためのモデルパラメータ等はいずれもＲＡＭ９６０に記憶される。最終的に最適化されたモデルパラメータ等はＲＡＭ９６０からハードディスク９５４、ＤＶＤ９６２又はリムーバブルメモリ９６４に格納される。またはモデルパラメータはネットワークＩ／Ｆ９４４を介して別の装置に送信してもよいし、別の装置から受信してもよい。
【０１０７】
［実施の形態の効果］
上記した実施の形態のテキスト要約システム３０によれば、要約対象テキストから要約を作成するにあたり、要約対象テキスト中の問題記述の箇所と、さらにその問題記述に対して重要な箇所とが特定され、他の単語と区別したフラグが付された単語ベクトルとしてＬＳＴＭへの入力が行われる。その結果、要約対象テキストに含まれる問題記述に関連した視点から要約が作成され、従来よりもテキストの内容をより適切に表す要約を得ることができる。
【０１０８】
上記実施の形態では、問題記述判定器５０及び重要箇所抽出器５６にはいずれもＭＣＮＮが使用されている。しかし本発明はそのような実施の形態には限定されない。ＭＣＮＮ以外にも、ＳＶＭ、ＬＳＴＭ等を用いることが可能である。また上記実施の形態では、名詞極性辞書をテンプレート極性辞書とを用い、注目記述として問題が記述された箇所の候補を抽出している。その際、名詞の極性としていわゆるトラブル名詞か否かという観点を用いている。しかし本発明はそのような実施の形態には限定されない。名詞の極性としては、興味の対象である名詞の属性であればどのようなものを用いても良い。
【０１０９】
本発明の他の局面に係る注目箇所抽出装置は、対象テキスト内のある観点にしたがって注目すべき記述がされた箇所である注目記述を抽出するための注目箇所抽出装置であって、複数の名詞の各々について、ある観点から見た極性を記録した名詞極性辞書と、名詞と組み合わされることによりフレーズを形成する述語テンプレートを、当該述語テンプレートと組み合わされた名詞の指す対象の機能又は効果を発揮させることを意味するか否かという観点から見た極性を記憶するテンプレート極性辞書と、入力されるテキスト内で組み合わされている名詞と述語テンプレートとの組み合わせの各々について、当該組み合わせの極性を名詞極性辞書とテンプレート極性辞書とを参照して決定し、その極性が所定の条件を充足したものを、その文脈情報とともに注目記述の候補として抽出する候補抽出手段と、候補抽出手段により抽出された注目記述の候補の各々について、当該候補の文脈情報から複数通りの方法で生成した複数通りの単語ベクトル列を生成する単語ベクトル列生成手段と、単語ベクトル列生成手段により生成された単語ベクトル列が入力されたことに応答して、当該単語ベクトル列に対応する注目記述の候補が真の注目記述である度合いを示すスコアを出力するように予め学習済の注目記述スコア算出手段を含む。
【０１１０】
本発明のさらに他の局面に係る重要箇所検出装置は、注目すべき事項が記述された箇所である注目記述にマークが付された対象テキストを記憶するためのテキスト記憶装置と、テキスト記憶装置に記憶された対象テキストについて、注目記述との関連で重要である箇所を検出するための検出手段とを含み、検出手段は、対象テキスト内で所定の条件を満たす単語列の各々について、当該単語列に関する文脈から複数通りの方法で生成した複数通りの単語ベクトル列を生成する単語ベクトル列生成手段と、単語ベクトル列生成手段により生成された単語ベクトル列が入力されたことに応答して、当該単語ベクトル列に対応する単語列が注目記述との関連で重要である箇所であることを示すスコアを出力するように、予め学習済のスコア算出手段と、単語列の内で、スコア算出手段のスコアが最も高いものを注目記述との関連で重要であるとしてマークする重要箇所マーク手段とを含む。
【０１１１】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
【符号の説明】
【０１１２】
３０  テキスト要約システム
４２、１３２  名詞極性辞書
４４、１３４  テンプレート極性辞書
４６、１４０  問題記述候補抽出器
５０  問題記述判定器
５２  問題記述判定器ＭＣＮＮ学習部
５６  重要箇所抽出器
５８  重要箇所抽出器ＭＣＮＮ学習部
６０、５１０  マーク済要約対象テキスト記憶装置
６２  要約器
６４  要約器ＬＳＴＭ学習部
１３０  テキスト集合記憶装置
１４４  人手による分類処理
１５０、５１２  学習データ生成部
１５２、５１４、５１６  学習データ記憶装置
１６０  制御部
１６４  テキスト読出部
１６６  形態素解析部
１６８  係り受け関係解析部
１７０  解析後文
１７２  第１−第１１の単語列生成部
１７４  単語ベクトル変換部
１７６  フラグ付加部
１７８  学習データ出力部
２１４  ＭＣＮＮ
５０４  要約記憶装置
５０６  重要箇所選択部
５０８  要約対象テキストマーキング部
５１８、５２２  学習処理部
５２０、５２４  重要箇所検出器
５４０、７０２  要約対象テキスト
７００、７０６  ＬＳＴＭ
７０４  アテンション層
７０８  単語列
【図１】
2018190188.tif 000005
【図２】
2018190188.tif 000006
【図３】
2018190188.tif 000007
【図４】
2018190188.tif 000008
【図５】
2018190188.tif 000009
【図６】
2018190188.tif 000010
【図７】
2018190188.tif 000011
【図８】
2018190188.tif 000012
【図９】
2018190188.tif 000013
【図１０】
2018190188.tif 000014
【図１１】
2018190188.tif 000015
【図１２】
2018190188.tif 000016
【図１３】
2018190188.tif 000017
【図１４】
2018190188.tif 000018
【図１５】
2018190188.tif 000019
【図１６】
2018190188.tif 000020
【図１７】
2018190188.tif 000021
【図１８】
2018190188.tif 000022
【図１９】
2018190188.tif 000023
【図２０】
2018190188.tif 000024