(57)【要約】【課題】手掛かり語のあるなしにかかわらず、高精度で因果関係表現を認識できる因果関係認識装置を提供する。【解決手段】因果関係認識装置３０は、因果関係候補３２を受けて、当該候補を構成する単語列を表す候補ベクトルを生成する候補ベクトル生成部５０と、因果関係候補の原因部の名詞句と結果部の名詞句が出現する文脈を表す文脈ベクトルを生成する文脈ベクトル生成部５２と、原因部に含まれる名詞句と、結果部に含まれる名詞句との間の因果関係の有無を判定するための背景知識を表す単語ベクトルを生成するバイナリパターンベクトル生成部５４、回答ベクトル生成部５６、及び背景知識ベクトル生成部５８と、これら単語ベクトルを受けて、因果関係候補が因果関係か否かを判定するように予め学習済のマルチカラム畳み込みニューラルネットワーク６０とを含む。【選択図】図１
2018060364.tif 000002
【特許請求の範囲】
【請求項１】
テキスト中に見いだされる第１のフレーズ及び第２のフレーズにより表される因果関係を自動認識する因果関係認識装置であって、
前記第１のフレーズは前記因果関係の原因部の候補であり、前記第２のフレーズは前記因果関係の結果部の候補であり、
前記第１のフレーズ及び前記第２のフレーズは、いずれも名詞句と述部との組合せを含み、
前記因果関係認識装置は、
前記第１及び第２のフレーズからなる因果関係候補を受けて、当該因果関係候補を構成する単語列をそれぞれ表す第１の単語ベクトルの組を生成する第１のベクトル生成手段と、
前記テキスト中において前記第１及び第２のフレーズが出現する文脈を構成する単語列をそれぞれ表す第２の単語ベクトルを生成する第２のベクトル生成手段と、
前記第１のフレーズに含まれる名詞句と、前記第２のフレーズに含まれる名詞句との間の因果関係の有無を判定するための背景知識を表す単語ベクトルを生成するための背景知識ベクトル生成手段と、
前記第１及び第２の単語ベクトル、並びに前記背景知識ベクトル生成手段により生成された単語ベクトルを受けて、それら単語ベクトルの元になった前記因果関係候補が因果関係である指標を出力するように予め学習済の分類手段とを含み、
前記背景知識ベクトル生成手段は、
大量の文書から、前記第１のフレーズに含まれる名詞句と、前記第２のフレーズに含まれる名詞句と、それら名詞句を結ぶ述部とを含むパターンを収集し、当該パターンの単語列を表す第３の単語ベクトルを生成する第３のベクトル生成手段と、
前記因果関係候補からなぜ型質問を生成して、なぜ型質問応答装置から当該なぜ型質問に対する回答の集合を受け、当該回答の集合に含まれる回答のうちで、前記第１のフレーズに含まれる名詞句及び前記第２のフレーズに含まれる名詞句をいずれも含む回答から、前記第１のフレーズに含まれる名詞句及び第２のフレーズに含まれる名詞句を少なくとも含む単語列を表す第４の単語ベクトルを生成する第４のベクトル生成手段と、
大量の文書に存在する、連続する所定個数の文の組であって、前記第１のフレーズに含まれる名詞句及び前記第２のフレーズに含まれる名詞句と、因果関係に関連する手掛かり語とが共起しているパッセージから、前記第１及び第２のフレーズに含まれる名詞句と、当該文の組内において両者の依存関係を表す単語と、当該文の組に含まれる前記手掛かり語とを連結した単語列を表す第５の単語ベクトルを生成する第５のベクトル生成手段との、少なくとも１つを含む任意の組合せを含む、因果関係認識装置。
【請求項２】
前記分類手段は、複数のカラムを持ち、前記第１及び第２の単語ベクトル、並びに前記背景知識ベクトル生成手段により出力される単語ベクトルをそれぞれ別々のカラムのサブネットワークに受けて、それら単語ベクトルの元になった前記因果関係候補が因果関係候補である指標を出力するように予め学習済のマルチカラムニューラルネットワークを含む、請求項１に記載の因果関係認識装置。
【請求項３】
前記第３のベクトル生成手段は、前記大量の文書から、前記第１のフレーズに含まれる名詞句と、前記第２のフレーズに含まれる名詞句と、それら名詞句を結ぶ述部とを含むパターンからなるバイナリパターンを収集するバイナリパターン収集手段と、
前記バイナリパターン収集手段により収集されたバイナリパターンの出現頻度を算出する頻度算出手段と、
前記バイナリパターン収集手段により収集されたバイナリパターンのうち、前記頻度算出手段により算出された頻度が上位の所定個数のバイナリパターンを構成する単語列を表す単語ベクトルを生成し、前記第３の単語ベクトルとして出力する手段とを含む、請求項１又は請求項２に記載の因果関係認識装置。
【請求項４】
前記第４のベクトル生成手段は、
前記第２のフレーズになぜ型質問を表す疑問詞を付してなぜ型質問を生成し、前記なぜ型質問応答装置に与えることにより、当該なぜ型質問応答装置から回答の集合を取得する回答取得手段と、
前記回答取得手段が取得した前記回答の集合から前記第１のフレーズに含まれる名詞句及び前記第２のフレーズに含まれる名詞句をいずれも含む所定個数の回答を抽出する抽出手段と、
前記抽出手段により抽出された回答の各々の依存関係を解析して依存構造を生成する依存関係解析手段と、
前記抽出手段により抽出された回答の各々について、前記依存関係解析手段により生成された前記依存構造上の、前記第１及び第２のフレーズに含まれる名詞句と所定の関係にある位置に存在する単語とを含む単語列を表す単語ベクトルを生成し、前記第４のベクトルとして出力する手段とを含む、請求項１〜請求項３の何れかに記載の因果関係認識装置。
【請求項５】
前記第５の単語ベクトル生成手段は、大量の文書から、連続する所定個数の文からなるパッセージであって、前記第１のフレーズに含まれる名詞句及び前記第２のフレーズに含まれる名詞句と、因果関係に関連する手掛かり語とが共起しているパッセージを検索する検索手段と、
前記検索手段により検索されたパッセージの依存関係を解析し依存構造を生成する依存解析手段と、
前記依存解析手段により生成された依存構造において、前記第１及び第２のフレーズに含まれる名詞句の間のパスに存在する単語と、当該パッセージに含まれる前記手掛かり語とを連結して単語列から第５の単語ベクトルを生成する手段とを含む、請求項１〜請求項４の何れかに記載の因果関係認識装置。
【請求項６】
請求項１〜請求項５の何れかに記載の因果関係認識装置としてコンピュータを機能させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、自然言語文中に存在する表現から因果関係を抽出するための装置に関し、特に、自然言語で記載された文中に明示的な手掛かり語なしに表現されている因果関係を認識し抽出するための技術に関する。
【背景技術】
【０００２】
Web等にあるテキストに書かれた出来事間の因果関係の自動認識は、適切な意思決定のため、将来シナリオを自動生成したりするために重要な技術である。しかし、因果関係の記述が多岐に亘るため、高精度の認識は難しかった。例えば、「地震が起き、津波が来た」という文は明らかに「地震が起きる」という原因と「津波が来た」という結果からなる因果関係を表現していると考えられる。しかし、この文には、因果関係を表すとされる接続詞「ため」「から」等の明示的な手がかり語がない。従来技術は、因果関係に関する手掛かり語に基づいて因果関係を認識しているため、手掛かり語がない因果関係を認識することが難しい。こうした文からも高い精度で因果関係を抽出することが、より幅広い因果関係に関する知識を集積し、文書理解、なぜ型質問応答、将来シナリオの生成等において重要である。
【０００３】
この分野の従来技術としては、手掛かり語だけではなく、なんらかの言語表現のパターンを使って因果関係の原因と結果を表すフレーズの対を認識する技術、あるいは、パターンではなくて言語表現を手がかりとする機械学習による原因、結果のフレーズ対の自動認識技術等がある。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Chikara  Hashimoto,  Kentaro  Torisawa,  Julien  Kloetzer,  Motoki  Sano,  Istvan  Varga,  Jong-Hoon  Oh,  and  Yutaka  Kidawara.  2014.  Toward  future  scenario  generation:  Extracting  event  causality  exploiting  semantic  relation,  context,  and  association  features.  In  Proceedings  of  ACL,  pages  987-997.
【非特許文献２】Jong-Hoon  Oh,  Kentaro  Torisawa,  Chikara  Hashimoto,  Motoki  Sano,  Stijn  De  Saeger,  and  Kiyonori  Ohtake.  2013.  Why-question  answering  using  intra-  and  inter-  sentential  causal  relations.  In  Proceedings  of  ACL,  pages  1733-1743.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、因果関係認識に関する従来の手法は、依然として精度が低く、応用範囲も限定されているという問題がある。なぜなら、因果関係は様々な形で表現され、多くの場合には因果関係を示す手掛かり語なしに表現されていることがあり、また因果関係を表現するパターンも非常にたくさんあり得るためである。
【０００６】
例えば以下の２つの文について考える。
１．地球温暖化が進んだために台風が強力になった。
２．地球温暖化が進み、台風が強力になった。
【０００７】
第１文は「ために」という語を含む。この語は、「台風が強力になった」という結果と、「地球温暖化が進んだ」という原因との間の因果関係を明示している。これに対して、第２文にはそのような手掛かり語が存在しない。にもかかわらず、多くの人々はこの文が第１文と同じ因果関係を表現していると理解するであろう。これが可能なのは、人々が「台風」と「地球温暖化」とに関する背景知識を持っているためである。因果関係が多くの場合手掛かり語なしで表現されているために、上記した第２文のような因果関係を高精度で認識できるようにする必要がある。
【０００８】
それゆえに本発明の目的は、自然言語文から、因果関係を示す手掛かり語があるか否かにかかわらず、高精度で因果関係表現を認識できる因果関係認識装置を提供することである。
【課題を解決するための手段】
【０００９】
本発明の第１の局面に係る因果関係認識装置は、テキスト中に見いだされる第１のフレーズ及び第２のフレーズにより表される因果関係を自動認識する。第１のフレーズは因果関係の原因部の候補であり、第２のフレーズは因果関係の結果部の候補である。第１のフレーズ及び第２のフレーズは、いずれも名詞句と述部との組合せを含む。因果関係認識装置は、第１及び第２のフレーズからなる因果関係候補を受けて、当該因果関係候補を構成する単語列をそれぞれ表す第１の単語ベクトルの組を生成する第１のベクトル生成手段と、テキスト中において第１及び第２のフレーズが出現する文脈を構成する単語列をそれぞれ表す第２の単語ベクトルを生成する第２のベクトル生成手段と、第１のフレーズに含まれる名詞句と、第２のフレーズに含まれる名詞句との間の因果関係の有無を判定するための背景知識を表す単語ベクトルを生成するための関連パッセージベクトル生成手段と、第１及び第２の単語ベクトル、並びに関連パッセージベクトル生成手段により生成された単語ベクトルを受けて、それら単語ベクトルの元になった因果関係候補が因果関係である指標を出力するように予め学習済の分類手段とを含む。背景知識ベクトル生成手段は、大量の文書から、第１のフレーズに含まれる名詞句と、第２のフレーズに含まれる名詞句と、それら名詞句を結ぶ述部とを含むパターンを収集し、当該パターンの単語列を表す第３の単語ベクトルを生成する第３のベクトル生成手段と、因果関係候補からなぜ型質問を生成して、なぜ型質問応答装置から当該なぜ型質問に対する回答の集合を受け、当該回答の集合に含まれる回答のうちで、第１のフレーズに含まれる名詞句及び第２のフレーズに含まれる名詞句をいずれも含む回答から、第１のフレーズに含まれる名詞句及び第２のフレーズに含まれる名詞句を少なくとも含む単語列を表す第４の単語ベクトルを生成する第４のベクトル生成手段と、大量の文書に存在する、連続する所定個数の文の組であって、第１のフレーズに含まれる名詞句及び第２のフレーズに含まれる名詞句と、因果関係に関連する手掛かり語とが共起している文の組から、第１及び第２のフレーズに含まれる名詞句と、当該文の組内において両者の依存関係を表す単語と、当該文の組に含まれる手掛かり語とを連結した単語列を表す第５の単語ベクトルを生成する第５のベクトル生成手段との、少なくとも１つを含む任意の組合せを含む。
【００１０】
好ましくは、分類手段は、複数のカラムを持ち、第１及び第２の単語ベクトル、並びに背景知識ベクトル生成手段により出力される単語ベクトルをそれぞれ別々のカラムのサブネットワークに受けて、それら単語ベクトルの元になった因果関係候補が因果関係候補である指標を出力するように予め学習済のマルチカラムニューラルネットワークを含む。
【００１１】
より好ましくは、第３のベクトル生成手段は、大量の文書から、第１のフレーズに含まれる名詞句と、第２のフレーズに含まれる名詞句と、それら名詞句を結ぶ述部とを含むパターンからなるバイナリパターンを収集するバイナリパターン収集手段と、バイナリパターン収集手段により収集されたバイナリパターンの出現頻度を算出する頻度算出手段と、バイナリパターン収集手段により収集されたバイナリパターンのうち、頻度算出手段により算出された頻度が上位の所定個数のバイナリパターンを構成する単語列を表す単語ベクトルを生成し、第３の単語ベクトルとして出力する手段とを含む。
【００１２】
さらに好ましくは、第４のベクトル生成手段は、第２のフレーズになぜ型質問を表す疑問詞を付してなぜ型質問を生成し、なぜ型質問応答装置に与えることにより、当該なぜ型質問応答装置から回答の集合を取得する回答取得手段と、回答取得手段が取得した回答の集合から第１のフレーズに含まれる名詞句及び第２のフレーズに含まれる名詞句をいずれも含む所定個数の回答を抽出する抽出手段と、抽出手段により抽出された回答の各々の依存関係を解析して依存構造を生成する依存関係解析手段と、抽出手段により抽出された回答の各々について、依存関係解析手段により生成された依存構造の、第１及び第２のフレーズに含まれる名詞句と所定の関係にある位置に存在する単語とを含む単語列を表す単語ベクトルを生成し、第４の単語ベクトルとして出力する手段とを含む。
【００１３】
第５の単語ベクトル生成手段は、大量の文書から、連続する所定個数の文からなるパッセージであって、第１のフレーズに含まれる名詞句及び第２のフレーズに含まれる名詞句と、因果関係に関連する手掛かり語とが共起しているパッセージを検索する検索手段と、検索手段により検索されたパッセージの依存関係を解析し依存構造を生成する依存解析手段と、依存解析手段により生成された依存構造において、第１及び第２のフレーズに含まれる名詞句の間のパスに存在する単語と、当該パッセージに含まれる手掛かり語とを連結して単語列から第５の単語ベクトルを生成する手段とを含む。
【００１４】
本発明の第２の局面に係るコンピュータプログラムは、上記したいずれかの因果関係認識装置としてコンピュータを機能させる。
【図面の簡単な説明】
【００１５】
【図１】本発明の１実施の形態に係る因果関係認識装置のブロック図である。
【図２】図１に示す文脈ベクトル生成部のブロック図である。
【図３】図１に示すバイナリパターンベクトル生成部のブロック図である。
【図４】図１に示す回答ベクトル生成部のブロック図である。
【図５】図１に示す関連パッセージベクトル生成部のブロック図である。
【図６】図１に示すニューラルネットワークの構成を示す概略図である。
【図７】図６に示すニューラルネットワークの１カラムの構成を示す概略図である。
【図８】因果関係を構成するパターンを抽出する処理の概略を示す模式図である。
【図９】実験結果を示すグラフである。
【図１０】本発明の実施の形態の因果関係認識装置を実現するハードウェアとしてのコンピュータシステムの外観図である。
【図１１】図１０に外観を示すコンピュータシステムのハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【００１６】
以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。
【００１７】
以下の実施の形態では、文中に因果関係を示す手掛かり語があるか否かにかかわらず、自然言語文から因果関係を示す表現を認識し抽出する因果関係認識装置の構成及び動作を説明する。本実施の形態では、ウェブアーカイブ中のウェブ文書に記載されている大量の背景知識をニューラルネットワーク（畳み込みニューラルネットワーク及びＬＳＴＭ：Long  Short  Term  Memory）で処理することにより、こうした因果関係の認識を行う。すなわち、因果関係候補が与えられると、このニューラルネットワークは、因果関係候補と何らかの関係を持つような文をウェブ文書から検索して抽出し、それら文により表現される背景知識を用いて、因果関係候補が正しい因果関係か否かを判定する。ウェブ文書は以下に説明するようなある特定の基準にしたがって検索を行う。
【００１８】
以下の実施の形態では、「地球温暖化が進む」→「台風が強力になる」というような、前者のように原因部を表す表現と、後者のように結果部を表す表現の組み合わせを対象とする。原因部及び結果部は、いずれも名詞句と述部（動詞）の組み合わせからなる。
【００１９】
本発明の実施の形態の説明に先立ち、非特許文献１に記載された技術について説明する。非特許文献１は、因果関係の認識に、ウェブアーカイブから抽出した背景知識を用いている。非特許文献１に記載された技術では、名詞句Ａ及びＢを「ＡがＢを引き起こす」、「ＡがＢを防ぐ」のような形式で記述したパターン（「バイナリパターン」という。）の集合を用い、大量のウェブ文書中に、因果関係候補内の名詞句をＡ及びＢに代入したバイナリパターンがあるか否かを分類器の素性に組み込むことによって因果関係認識の分類器の性能を改善した。
【００２０】
例えば、「タバコを吸う」→「肺がんで死ぬ」という因果関係候補が正しいか否かを判定する場合、非特許文献１では「タバコ」と「肺がん」という名詞句の組み合わせがウェブアーカイブ中のいずれかのバイナリパターンを充足するか否かを調べ、もしそのようなパターンがあれば、分類器（非特許文献１ではＳＶＭ）に入力する素性にそうしたパターンを組み込んだ。なお、非特許文献１では、因果関係パターンだけではなく、材料関係（「ＡはＢから作られる」）、使用関係（「ＡはＢのために用いられる」）等から成るバイナリパターンも使用されている。非特許文献１によれば、こうしたものも使用することにより、因果関係認識の精度が向上したということである。これはおそらく、因果関係判定の精度を改善する上で、非常に幅広い範囲の情報が手掛かりとして利用可能であることを示す。
【００２１】
本実施の形態では、幅広い範囲の情報を用いて因果関係の判定を行うために、後述するようなマルチカラム畳み込みニューラルネットワーク（Multicolumn  Convolution  Neural  Network:  MCNN）を用いる。ＭＣＮＮを用いることにより、後述するように因果関係に関連する幅広い背景知識を因果関係の認識に用いることができる。
【００２２】
本実施の形態における因果関係の認識には、後述するようになぜ型質問応答装置からの回答を用いるが、それ以外に以下のように、いずれも因果関係候補内の２つの名詞句を使用する２種類の情報もＭＣＮＮに対する入力として用いる。すなわち、
Ａ）非特許文献１で使用されたものよりも幅広いバイナリパターン。非特許文献１では、パターンに意味的制約を加えていたが、本実施の形態ではそのような制約を課すことなく、検索されたバイナリパターンは全て使用する。
【００２３】
Ｂ）ウェブアーカイブ中の文書中の１又は連続する２つの文であって、因果関係に関する「理由」、「なぜなら」のような手掛かり語と、因果関係候補に含まれる２つの名詞句とがその範囲で共起しているような文の組（「関連パッセージ」という。）。以下の実施の形態では、このパッセージの抽出には単純な単語マッチングを使用しているだけであって、複雑な検索処理をしているわけではない。上記した２つの名詞句と手掛かり句とを含む、１又は連続する２文を検索するだけである。もちろん、文の数は２に限定されず、３以上でもよいが、計算量からいって上限は２文又は３文程度が適切である。ただし、コンピュータの性能によりこの上限が変化し得るものであることはいうまでもない。
【００２４】
なぜ型質問応答システムの回答には、何ら有用な情報を含んでいないものも多く含まれる可能性がある。それ以上、上記Ｂに挙げたような情報は、有用な情報を含んでいない可能性が高い。単に単語マッチングにより検索しただけだからである。この情報を採用したのは、単純な処理で少ない計算量でこれら情報を得ることができるためである。また、なぜ型質問応答システム及び上記Ｂに挙げた情報は、バイナリパターンと比較してより複雑であり、分類器に与える情報としては不適当である。したがって、本実施の形態では、これら表現をよりコンパクトに、かつ背景知識を有効に表現するような表現手法を採用した。
【００２５】
また、以下の実施の形態はいずれも日本語に関連するものだが、他の言語に対してもそれほど大きな労力なく適用できるものと考える。
【００２６】
［実施の形態］
以下に述べる実施の形態に係る装置の入力は、「タバコを吸う」→「肺がんで死ぬ」のような因果関係候補である。以下に述べる実施の形態の装置は、こうした因果関係候補の入力を受けて、この表現が正しい因果関係を表しているか否かを判定するものである。原因候補Ａと結果候補Ｂとからなる因果関係候補が正しいか否かの基本的な判定基準は、もしもイベントＡが発生したときに、イベントＢが発生する可能性が増加するという関係にあり、かつそのときに限り、その因果関係候補を正しいとする、というものである。実際の判定では、これに加えて、因果関係候補が出現する文脈を考慮することなく、因果関係候補のみからこうした判断ができることも必要である。
【００２７】
因果関係候補は、上記したように原因候補と結果候補とからなる。原因候補も結果候補も、述部と、その述部の引数としての名詞句との組み合わせを含む。すなわち、「タバコを吸う」であれば引数Ｘを持つ述部である「Ｘを吸う」と、Ｘに入る「タバコ」という名詞句との組み合わせであり、「肺がんで死ぬ」であれば「Ｘで死ぬ」という述部とＸに入る「肺がん」という名詞句との組み合わせである。以下、引数Ｘを持つ述部（「Ｘを吸う」「Ｘで死ぬ」等）をテンプレートと呼ぶ。原因部は、元の文書で何らかの形で、たとえば「そして」とか「ので」のような接続詞を介して、結果部と依存関係にあることも必要である。このテンプレートは、非特許文献１に記載されたものと同じフォーマットのものを用いることができる。このフォーマットは、因果関係のエッセンスのみを含み、しかもアプリケーションに用いることが容易なためである。
【００２８】
＜構成＞
〔因果関係認識装置〕
図１に、本発明の１実施の形態に係る因果関係認識装置３０の概略ブロック図を示す。図１を参照して、因果関係認識装置３０は、因果関係候補３２を受けて、因果関係候補３２に含まれる単語を表す単語列から単語埋め込みベクトルを生成し、候補ベクトルとして出力する候補ベクトル生成部５０と、因果関係候補３２と、因果関係候補３２が出現した文内の文脈３４を受け、因果関係候補３２が出現する文脈を表す単語埋め込みベクトルを生成して文脈ベクトルとして出力する文脈ベクトル生成部５２とを含む。
【００２９】
因果関係認識装置３０はさらに、大量のウェブ文書を格納した、コンピュータ読取り可能なウェブアーカイブ３８に接続され、因果関係候補３２を受けて、因果関係候補３２の原因部に含まれる名詞句と、結果部に含まれる名詞句と、それら名詞句を結ぶ述部とを含むバイナリパターンを収集し、当該バイナリパターンの単語列を表す単語埋め込みベクトルを生成するバイナリパターンベクトル生成部５４と、外部の質問応答システム３６に接続され、因果関係候補３２からなぜ型質問を自動的に生成して質問応答システム３６に与えることにより、回答の集合を受け、回答の中で因果関係候補３２の原因部に含まれる名詞句と結果部に含まれる名詞句とをいずれも含む回答から、少なくともそれら名詞句と、もしあれば因果関係に関係する手掛かり句とを含む単語列を表す単語埋め込みベクトルを生成し出力する回答ベクトル生成部５６と、ウェブアーカイブ３８に接続され、因果関係候補３２を受けて、ウェブアーカイブ３８に含まれる文書の中で、１つの文又は連続する２つの文であって、因果関係候補３２の原因部の名詞句と結果部の名詞句とが共起している文の組から成るパッセージを抽出し、それら文の内で依存構造の上でそれら名詞句を結ぶパス上の単語、及び当該文の組内に因果関係を示す手掛かり語がもしあれば、その手掛かり語をも含む単語列を表す単語埋め込みベクトルを生成し、広くこの因果関係候補に関連すると思われる背景知識を表す関連パッセージベクトルとして出力する関連パッセージベクトル生成部５８とを含む。
【００３０】
因果関係認識装置３０はさらに、８つのカラムを持ち、第１カラムに候補ベクトル生成部５０からの候補ベクトル、第２〜第５カラムの４カラムに文脈ベクトル生成部５２からの４つの文脈ベクトル、第６カラムにバイナリパターンベクトル生成部５４からのバイナリパターンベクトル、第７カラムに回答ベクトル生成部５６からの回答ベクトル、及び第８カラムに関連パッセージベクトル生成部５８からの関連パッセージベクトルを受け、因果関係候補３２が因果関係である確率の指標であるスコアを出力するように予め機械学習により学習したマルチカラム畳み込みニューラルネットワーク（ＭＣＮＮ）６０と、ＭＣＮＮ６０の出力するスコアをしきい値と比較することにより、因果関係候補３２が正しい因果関係を表すか否かを判定しその結果４０を出力する判定部６４と、判定部６４が判定に使用するしきい値を予め記憶するしきい値記憶部６２とを含む。
【００３１】
なお、本実施の形態に係る因果関係認識装置３０は、候補ベクトル生成部５０及び文脈ベクトル生成部５２に加え、バイナリパターンベクトル生成部５４、回答ベクトル生成部５６及び関連パッセージベクトル生成部５８を含む。しかし本発明はそのような実施の形態には限定されない。後述する実験結果から、バイナリパターンベクトル生成部５４、回答ベクトル生成部５６及び関連パッセージベクトル生成部５８はいずれも単独でも従来技術よりも因果関係の認識精度を高めるものであることがわかった。したがって因果関係認識装置３０は、バイナリパターンベクトル生成部５４、回答ベクトル生成部５６、及び関連パッセージベクトル生成部５８のうち少なくとも１つを含む任意の組み合わせを含んでいればよい。
【００３２】
〈文脈ベクトル生成部５２〉
図２を参照して、文脈ベクトル生成部５２は因果関係候補３２を受けて記憶する候補記憶部８０と、候補記憶部８０に記憶された因果関係候補に含まれる単語（名詞句とテンプレートを構成する述部）を分離して出力する単語分離部８２と、因果関係候補３２が取り出された元文書において、因果関係候補３２とその周辺に存在する単語列からなる文脈３４を受けて、文脈３４に含まれる各文の形態素解析をする形態素解析部８４と、形態素解析部８４が出力する形態素列に対して依存関係解析をし、依存構造を出力する依存関係解析部８６とを含む。
【００３３】
文脈ベクトル生成部５２はさらに、依存関係解析部８６が出力する依存構造を参照して、文脈中において単語分離部８２が出力する、原因部の名詞句と述部との間に存在する単語列からなる第１の文脈ベクトルを生成し出力する第１の文脈ベクトル生成部８８と、結果部の名詞句と述部との間に存在する単語列からなる第２の文脈ベクトルを生成し出力する第２の文脈ベクトル生成部９０と、原因部の名詞句と結果部の述部との間の単語列からなる第３の文脈ベクトルを生成し出力する第３の文脈ベクトル生成部９２と、結果部の後に出現する全ての単語からなる第４の文脈ベクトルを生成し出力する第４の文脈ベクトル生成部９４とを含む。第１の文脈ベクトルはＭＣＮＮ６０の第２カラムに、第２の文脈ベクトルは第３カラムに、第３の文脈ベクトルは第４カラムに、第４の文脈ベクトルは第５カラムに、それぞれ入力される。
【００３４】
〈バイナリパターンベクトル生成部５４〉
図３を参照して、本実施の形態では、背景知識の１つとして、ウェブアーカイブ３８から抽出されたバイナリパターンを用いる。非特許文献１では、因果関係認識のために、「ＡがＢを引き起こす」、「ＡがＢを防ぐ」等、何らかの形で因果関係を表すと思われるものとして予め検討した結果選択された395,578個のバイナリパターンの集合を用いている。ここでいうパターンとは、依存構造上で２つの名詞句（変数Ａ又はＢに置き換えられている。）を接続するパスのことである。非特許文献１では、６億のウェブ文書のうちで、１０回以上同じパターンで出現した名詞句のペアのみを用いている。この条件により、長く、かつまれにしか出現しないバイナリパターンが除かれ、比較的短いパターンのみが残る。本実施の形態でも、非特許文献１と同様の手法で検索されるバイナリパターンを用いる。ただし本実施の形態では、非特許文献１が用いたような制限はなく、因果関係候補の原因部及び結果部からそれぞれ抽出した２つの名詞句が変数Ａ及びＢに現れるようなパターンであれば全て用いている。２つの名詞句が与えられると、検索されたパターンの数は１から数百となる。本実施の形態では、これらの中から因果関係候補の名詞句のペアと共起する頻度が最大の１５個のバイナリパターンを選択し、それらをデリミタ「｜」を挟んで連結することによりできた単語列を出力する。ここでバイナリパターンの数として選択した「１５」は、事前に２００までの数の範囲で行った実験の結果、１５個以上では性能に変化が認められないため、学習に係る計算量の節約の観点から選択した数字である。
【００３５】
図３を参照して、バイナリパターンベクトル生成部５４は、因果関係候補３２を受けて記憶する因果関係候補記憶部１１０と、予め作成されたバイナリパターンを多数記憶したバイナリパターン辞書１２８と、ウェブアーカイブ３８において、因果関係候補記憶部１１０の原因部及び結果部から取り出された名詞句のペアがバイナリパターン辞書１２８に記憶されたバイナリパターンと共起している可能性がある単語列を含む候補文を検索する候補文検索部１１２と、候補文検索部１１２により検索された文の各々の形態素解析を行って形態素列を出力する形態素解析部１１４と、形態素解析部１１４が出力する形態素列に対する依存関係解析を行って依存構造を出力する依存関係解析部１１６と、依存関係解析部１１６により出力された依存構造上において、因果関係候補記憶部１１０から出力された名詞句のペアとバイナリパターン辞書１２８に記憶されているバイナリパターンとが共起している単語列があればそれを特定し、該当するバイナリパターンを出力するバイナリパターン検索部１１８とを含む。
【００３６】
バイナリパターンベクトル生成部５４はさらに、バイナリパターン検索部１１８が出力したバイナリパターンをバイナリパターン別にカウントし、その値を記憶するバイナリパターンカウント記憶部１２０と、ウェブアーカイブ３８からのバイナリパターンの検出が全て終了した後、バイナリパターンカウント記憶部１２０に記憶されているカウントの降順にバイナリパターンをソートしバイナリパターンのリストを出力するバイナリパターンソート部１２２と、バイナリパターンソート部１２２から出力されたバイナリパターンのリストのうち、カウントが上位１５位までであるバイナリパターンを選択し出力するバイナリパターン選択部１２４と、バイナリパターン選択部１２４により選択されたバイナリパターンを、デリミタである「｜」により互いに連結して単語埋め込みベクトルとして出力するバイナリパターン連結部１２６とを含む。バイナリパターン連結部１２６の出力する単語埋め込みベクトルは、ＭＣＮＮ６０の第６カラムに入力される。
【００３７】
〈回答ベクトル生成部５６〉
本実施の形態では、背景知識源の１つとしてなぜ型質問応答システムの出力を使用する。より具体的には、非特許文献２に記載されたなぜ型質問応答システムを用いる。この質問応答システムは、与えられたなぜ型質問に対する回答として、ウェブアーカイブから７つの連続した文を１つの回答として出力する。
【００３８】
図４を参照して、回答ベクトル生成部５６は、因果関係候補３２を受けて記憶する候補記憶部１５０と、候補記憶部１５０の結果部の先頭に「なぜ」のような疑問詞を付ける等して質問文を自動的に作成する質問文作成部１５２と、質問文作成部１５２より作成された質問文を質問応答システム３６に与えることにより、質問応答システム３６から所定個数の回答とそれらのスコアの集合を取得する回答取得部１５４とを含む。本実施の形態で使用した質問応答システム３６は、１つの回答が、ウェブアーカイブから抽出された７つの連続した文を含み、教師あり学習により学習した分類器によりスコアが付されている。このランクの上位の回答には、質問に対する正しい回答が含まれている可能性が高い。回答取得部１５４は、質問応答システム３６の回答のうち、上位のスコアを持つ２００個の回答を取得し、さらに候補記憶部１５０に記憶された因果関係候補の原因部及び結果部からそれぞれ抽出された２つの名詞句を含むもののみを出力する。
【００３９】
回答ベクトル生成部５６はさらに、回答取得部１５４が出力する回答の集合をそれらのスコアとともに記憶する回答・スコア記憶部１５６と、回答・スコア記憶部１５６に含まれる各回答について、それらの各文を形態素解析する形態素解析部１５８と、形態素解析部１５８が出力する形態素列に対して依存関係解析を行い、依存構造を出力する依存関係解析部１６０と、因果関係に関する手掛かり語を記憶した手掛かり語辞書１６２と、手掛かり語辞書１６２を参照して、依存関係解析部１６０により出力される依存構造上のパスにおいて、因果関係候補の原因部及び結果部から抽出された２つの名詞句の各々と依存構造のルートとの間の単語列を、出現順序を保存して連結し、もしも因果関係に関する手掛かり語が他に存在していれば、その出現位置にかかわらずその手掛かり語を連結したパターンを生成して出力するパターン生成部１６４とを含む。
【００４０】
例えば「なぜ（人は）肺がんで死ぬのですか？」という質問に対して回答の１つが「多くの人がタバコをやめられず、その結果、彼らは肺がんで苦しむ。」という文を含み、そこから「Ａをやめられず、その結果、Ｂで苦しむ」というパターンが得られるものとする。この場合、Ａは原因部からの名詞句、Ｂは結果部からの名詞句に対応する変数である。「その結果」は手掛かり語である。
【００４１】
なお、２つの名詞句が連続する文にまたがって存在している場合には、第１文の依存構造のルートから第２文の依存構造のルートへの仮想リンクを追加して、あたかも１文であるかのようにして上記パターンを生成する。この様子を図８に示す。
【００４２】
図８は因果関係を構成するパターンを抽出する処理の概略を示しており、因果関係候補から抽出された第１の名詞句「タバコ」が第１文４６０に存在し、第２の名詞句「肺がん」が第２文４６２に存在するものとする。この場合には、第１文４６０のルートと、第２文４６２との間に、仮想リンク４６４を追加し、第１文４６０及び第２文４６２があたかも１文であるかのようにしてパターン抽出４６６をし、「Ａは有害だ  Ｂを引き起こす」というパターン４６８を抽出する。
【００４３】
図４に戻って、回答ベクトル生成部５６はさらに、パターン生成部１６４により生成されたパターンと各パターンが得られた回答に質問応答システム３６により付されていた元スコアとを互いに関連付けて記憶するパターン・元スコア記憶部１６６と、質問応答システム３６からの回答に対するパターン生成部１６４によるパターン生成の処理が全て完了した後、パターン・元スコア記憶部１６６に記憶されているパターンをそのスコアの降順にソートしリストとして出力するパターンソート部１６８と、パターンソート部１６８により出力されたリストの、上位１５個を選択するパターン選択部１７０と、パターン選択部１７０により選択されたパターンをデリミタを介して連結し単語埋め込みベクトルとして出力するパターン連結部１７２とを含む。回答は、因果関係候補の結果部の理由を様々な観点で説明するものであるため、回答のいくつかは因果関係候補の原因部の名詞句を含まない場合があり得る。パターン連結部１７２の出力は、ＭＣＮＮ６０の第７カラムに入力される。
【００４４】
〈関連パッセージベクトル生成部５８〉
背景知識源の他の一つとして、本実施の形態では、大量のウェブ文書を記憶したウェブアーカイブから、因果関係候補の原因部と結果部とから取り出した名詞句のペアと、因果関係に関する「なぜなら」のような手掛かり語とを含む文を取出して利用する。取り出す文は１又は２個の連続した関連パッセージで、上記した名詞句のペアといずれかの手掛かり語とを含むものである。取り出されたパッセージから、回答ベクトル生成部５６が行うのと同じ手法によりパターンを生成する。ウェブアーカイブ３８の全体を処理したときのそれらパターンの出現頻度を計算し、回答ベクトル生成部５６と同様、出現頻度が上位１５位までのパターンを因果関係候補の判定に用いる。出現頻度が同じパターンがある場合には、より短い方を選択する。これらパターンは回答ベクトル生成部５６によるものと同様、デリミタを介して互いに連結され、単語埋め込みベクトルとしてＭＣＮＮ６０に与えられる。
【００４５】
図５を参照して、上記した処理を行う関連パッセージベクトル生成部５８は、因果関係候補３２を受けて記憶する候補記憶部２００と、候補記憶部２００の原因部及び結果部からそれぞれ名詞句を抽出する単語抽出部２０２と、手掛かり語を記憶した手掛かり語辞書２０４と、ウェブアーカイブ３８から、単語抽出部２０２が抽出した名詞句のペアと、手掛かり語辞書２０４に記憶された手掛かり語のいずれかとが共起している１又は２個の連続した文の組（関連パッセージ）を取得する関連パッセージ取得部２０６と、関連パッセージ取得部２０６により取得された関連パッセージを記憶する関連パッセージ記憶部２０８とを含む。
【００４６】
関連パッセージベクトル生成部５８はさらに、関連パッセージ記憶部２０８に記憶された各関連パッセージに含まれる文について、形態素解析を行う形態素解析部２１０と、形態素解析部２１０が出力する形態素列に対して依存関係解析を行い、依存構造を出力する依存関係解析部２１２と、図４に示すパターン生成部１６４と同様の手法によりパターンを生成し出力するパターン生成部２１４と、パターン生成部２１４により生成されたパターンを、それらの頻度とともに記憶するパターン・頻度記憶部２１６と、ウェブアーカイブ３８に対するパターン生成部２１４の処理が全て完了した後、パターン・頻度記憶部２１６に記憶されているパターンをそれらの頻度の降順でソートしリストとして出力するパターンソート部２１８と、パターンソート部２１８の出力するパターンのリストから、出現頻度が上位の１５個のパターンを選択するパターン選択部２２０と、パターン選択部２２０が出力する１５個のパターンを、間にデリミタをはさみながら連結して単語埋め込みベクトルとして出力するパターン連結部２２２とを含む。パターン連結部２２２の出力する単語埋め込みベクトルは、ＭＣＮＮ６０の第８カラムに入力される。
【００４７】
〈マルチカラム畳み込みニューラルネットワーク６０〉
図６を参照して、本実施の形態では、ＭＣＮＮ６０は、第１〜第８の畳み込みニューラルネットワーク３６０〜３７４からなるニューラルネットワーク層３４０と、ニューラルネットワーク層３４０内の各ニューラルネットワークの出力を線形に連結する連結層３４２と、連結層３４２の出力するベクトルに対してSoftmax関数を適用して、因果関係候補が正しいか否かを０〜１の間のスコアで評価し出力するSoftmax層３４４とを含む。
【００４８】
第１カラムの畳み込みニューラルネットワーク３６０は、図１に示す候補ベクトル生成部５０が生成する候補ベクトルを受ける。第２〜第５カラムの畳み込みニューラルネットワーク３６２、３６４、３６６、及び３６８は、図１及び図２に示す文脈ベクトル生成部５２が出力する第１から第４の文脈ベクトルを受ける。第６カラムの畳み込みニューラルネットワーク３７０は、図１及び図３に示すバイナリパターンベクトル生成部５４の出力するバイナリパターンベクトルを受ける。第７カラムの畳み込みニューラルネットワーク３７２は、図１及び図４に示す回答ベクトル生成部５６の出力する回答ベクトルを受ける。第８カラムの畳み込みニューラルネットワーク３７４は、図１及び図５に示す関連パッセージベクトル生成部５８の出力する関連パッセージベクトルを受ける。
【００４９】
ニューラルネットワーク層３４０の各畳み込みニューラルネットワークの出力は連結層３４２で単純に線形に連結され、Softmax層３４４への入力ベクトルとなる。
【００５０】
ＭＣＮＮ６０についてその機能をより詳細に説明する。図７に、代表として１つの畳み込みニューラルネットワーク３９０を示す。ここでは、説明を分かりやすくするために、畳み込みニューラルネットワーク３９０が、入力層４００、畳み込み層４０２、及びプーリング層４０４のみからなっているものとするが、この３つの層を複数備えているものでもよい。
【００５１】
入力層４００には、単語ベクトル列Ｘ１、Ｘ２、…、Ｘ|ｔ|が入力される。この単語ベクトル列Ｘ１、Ｘ２、…、Ｘ|ｔ|は、行列Ｔ＝［Ｘ１、Ｘ２、…、Ｘ|ｔ|］Ｔとして表される。この行列Ｔに対して、Ｍ個の素性マップが適用される。素性マップはベクトルであって、各素性マップの要素であるベクトルＯは連続する単語ベクトルからなるＮグラムに対してｆj（１≦ｊ≦Ｍ）で示されるフィルタを適用しながらＮグラム４１０を移動させることにより計算される。Ｏは次の式により表される。なお、このフィルタ数Ｍ及びＮグラムのＮはいずれもＭＣＮＮ６０のハイパーパラメータの一つである。
【００５２】
【数１】
2018060364.tif 000003
なお、素性マップの全体にわたりＮを等しくしてもよいし、異なるものがあってもよい。Ｎは任意の自然数だが、｛２，…，６｝の範囲から選択することが望ましい。本実施の形態では、Ｎグラムについては連続する複数の値を組み合わせて用いている。本実施の形態では、重み行列は全ての畳み込みニューラルネットワークにおいて等しくしてある。これらは互いに異なっていても良いが、実際、互いに等しくした方が、各重み行列を独立に学習する場合より精度が高くなる。
【００５３】
この素性マップの各々について、プーリング層４０４は、いわゆるマックスプーリングを行う。すなわち、プーリング層４０４は、例えば素性マップｆＭの要素のうち、最大の要素４２０を選択し、要素４３０として取出す。これを素性マップの各々に対して行うことによって、要素４３２、…、４３０を取出し、これらをｆ１からｆＭの順番に連結して連結層３４２にベクトル４４２として出力する。各畳み込みニューラルネットワークからはこのようにして得られたベクトル４４０、…、４４２、…、４４４が連結層３４２に出力される。連結層３４２は、ベクトル４４０、…、４４２、…、４４４を単純に線形に連結してSoftmax層３４４に与える。なお、プーリング層４０４としてはマックスプーリングを行うものの方が平均値を採用するものよりも精度が高いと言われている。しかし、もちろん平均値を採用するようにしてもよいし、下位の層の性質をよく表現するものであれば、他の代表値を用いるようにしてもよい。
【００５４】
＜動作＞
上記実施の形態に係る因果関係認識装置３０は以下のように動作する。
【００５５】
図１を参照して、因果関係認識装置３０の候補ベクトル生成部５０は、因果関係候補３２を受けて、因果関係候補３２に含まれる単語を表す単語列から単語埋め込みベクトルを生成し、候補ベクトルを出力する。この候補ベクトルは、図６に示す第１カラムの畳み込みニューラルネットワーク３６０に入力される。
【００５６】
文脈ベクトル生成部５２は、因果関係候補３２と、因果関係候補３２が出現した文内の文脈３４を受け、因果関係候補３２が出現する文脈を表す単語埋め込みベクトルを生成して文脈ベクトルとして出力する。
【００５７】
より具体的には、図２を参照して、文脈ベクトル生成部５２の候補記憶部８０は、因果関係候補３２を受けて記憶する。単語分離部８２は、候補記憶部８０に記憶された因果関係候補に含まれる単語（名詞句とテンプレートを構成する述部）を分離して出力する。形態素解析部８４は、因果関係候補３２が取り出された元文書において、因果関係候補３２とその周辺に存在する単語列からなる文脈３４を受けて、文脈３４に含まれる各文の形態素解析をし、形態素列を出力する。依存関係解析部８６は、形態素解析部８４が出力する形態素列に対して依存関係解析をし、依存構造を出力する。
【００５８】
第１の文脈ベクトル生成部８８は、依存関係解析部８６が出力する依存構造を参照して、文脈中において単語分離部８２が出力する、原因部の名詞句と述部との間に存在する単語列からなる第１の文脈ベクトルを生成し出力する。第２の文脈ベクトル生成部９０は、結果部の名詞句と述部との間に存在する単語列からなる第２の文脈ベクトルを生成し出力する。第３の文脈ベクトル生成部９２は、原因部の名詞句と結果部の述部との間の単語列からなる第３の文脈ベクトルを生成し出力する。第４の文脈ベクトル生成部９４は、結果部の後に出現する全ての単語からなる第４の文脈ベクトルを生成し出力する。第１の文脈ベクトルはＭＣＮＮ６０の第２カラムの畳み込みニューラルネットワーク３６２に、第２の文脈ベクトルは第３カラムの畳み込みニューラルネットワーク３６４に、第３の文脈ベクトルは第４カラムの畳み込みニューラルネットワーク３６６に、第４の文脈ベクトルは第５カラムの畳み込みニューラルネットワーク３６８に、それぞれ入力される。
【００５９】
図３を参照して、バイナリパターンベクトル生成部５４は、因果関係候補３２の原因部に含まれる名詞句と、結果部に含まれる名詞句と、それら名詞句を結ぶ述部とを含むバイナリパターンを収集し、当該バイナリパターンの単語列を表す単語埋め込みベクトルを生成する。
【００６０】
より具体的には、バイナリパターンベクトル生成部５４の因果関係候補記憶部１１０は、因果関係候補３２を受けて記憶する。バイナリパターン辞書１２８は、予め作成されたバイナリパターンを多数記憶している。候補文検索部１１２は、ウェブアーカイブ３８において、因果関係候補記憶部１１０の原因部及び結果部から取り出された名詞句のペアがバイナリパターン辞書１２８に記憶されたバイナリパターンと共起している可能性がある単語列を含む候補文を検索する。形態素解析部１１４は、候補文検索部１１２により検索された文の各々の形態素解析を行って形態素列を出力する。依存関係解析部１１６は、形態素解析部１１４が出力する形態素列に対する依存関係解析を行って依存構造を出力する。バイナリパターン検索部１１８は、依存関係解析部１１６により出力された依存構造上において、因果関係候補記憶部１１０から出力された名詞句のペアとバイナリパターン辞書１２８に記憶されているバイナリパターンとが共起している単語列があればそれを特定し、該当するバイナリパターンを出力する。
【００６１】
バイナリパターンカウント記憶部１２０は、バイナリパターン検索部１１８が出力したバイナリパターンをバイナリパターン別にカウントし、その値を記憶する。バイナリパターンソート部１２２は、ウェブアーカイブ３８からのバイナリパターンの検出が全て終了した後、バイナリパターンカウント記憶部１２０に記憶されているカウントの降順にバイナリパターンをソートしバイナリパターンのリストを出力する。バイナリパターン選択部１２４は、バイナリパターンソート部１２２から出力されたバイナリパターンのリストのうち、カウントが上位１５位までであるバイナリパターンを選択し出力する。バイナリパターン連結部１２６は、バイナリパターン選択部１２４により選択されたバイナリパターンを、デリミタである「｜」により互いに連結して単語埋め込みベクトルとして出力する。バイナリパターン連結部１２６の出力する単語埋め込みベクトルは、ＭＣＮＮ６０の第６カラムの畳み込みニューラルネットワーク３７０に入力される。
【００６２】
図４を参照して、回答ベクトル生成部５６の候補記憶部１５０は、因果関係候補３２を受けて記憶する。質問文作成部１５２は、候補記憶部１５０の結果部の先頭に「なぜ」のような疑問詞を付ける等して質問文を自動的に作成する。回答取得部１５４は、質問文作成部１５２より作成された質問文を質問応答システム３６に与えることにより、質問応答システム３６から所定個数の回答とそれらのスコアの集合を取得する。１つの回答は、ウェブアーカイブから抽出された７つの連続した文を含み、各回答にはスコアが付されている。回答取得部１５４は、質問応答システム３６の回答のうち、上位のスコアを持つ２００個の回答を取得し、さらに候補記憶部１５０に記憶された因果関係候補の原因部及び結果部からそれぞれ抽出された２つの名詞句を含むもののみを出力する。
【００６３】
回答・スコア記憶部１５６は、回答取得部１５４が出力する回答の集合をそれらのスコアとともに記憶する。形態素解析部１５８は、回答・スコア記憶部１５６に含まれる各回答について、それらの各文を形態素解析する。依存関係解析部１６０は、形態素解析部１５８が出力する形態素列に対して依存関係解析を行い、依存構造を出力する。パターン生成部１６４は、手掛かり語辞書１６２を参照して、依存関係解析部１６０により出力される依存構造上のパスにおいて、因果関係候補の原因部及び結果部から抽出された２つの名詞句の各々と依存構造のルートとの間の単語列を、出現順序を保存して連結しパターンを生成する。パターン生成部１６４はこの際、もしも因果関係に関する手掛かり語が他に存在していれば、その出現位置にかかわらずその手掛かり語をもこのパターンに連結する。
【００６４】
パターン・元スコア記憶部１６６は、パターン生成部１６４により生成されたパターンと各パターンが得られた回答に質問応答システム３６により付されていた元スコアとを互いに関連付けて記憶する。パターンソート部１６８は、質問応答システム３６からの回答に対するパターン生成部１６４によるパターン生成の処理が全て完了した後、パターン・元スコア記憶部１６６に記憶されているパターンをそのスコアの降順にソートしリストとして出力する。パターン選択部１７０は、パターンソート部１６８により出力されたリストの、上位１５個を選択する。パターン連結部１７２は、パターン選択部１７０により選択されたパターンをデリミタを介して連結し単語埋め込みベクトルとして出力する。パターン連結部１７２の出力は、ＭＣＮＮ６０の第７カラムの畳み込みニューラルネットワーク３７２に入力される。
【００６５】
図５を参照して、関連パッセージベクトル生成部５８の候補記憶部２００は、因果関係候補３２を受けて記憶する。単語抽出部２０２は、候補記憶部２００の原因部及び結果部からそれぞれ名詞句を抽出する。関連パッセージ取得部２０６は、ウェブアーカイブ３８から、単語抽出部２０２が抽出した名詞句のペアと、手掛かり語辞書２０４に記憶された手掛かり語のいずれかとが共起している１又は２個の連続した文の組（関連パッセージ）を取得する。関連パッセージ記憶部２０８は、関連パッセージ取得部２０６と、関連パッセージ取得部２０６により取得された関連パッセージを記憶する。
【００６６】
形態素解析部２１０は、関連パッセージ記憶部２０８に記憶された各関連パッセージに含まれる文について、形態素解析を行い形態素列を出力する。依存関係解析部２１２は、形態素解析部２１０が出力する形態素列に対して依存関係解析を行い、依存構造を出力する。パターン生成部２１４は、図４に示すパターン生成部１６４と同様の手法によりパターンを生成し出力する。パターン・頻度記憶部２１６は、パターン生成部２１４により生成されたパターンを、それらの頻度とともに記憶する。ウェブアーカイブ３８に対するパターン生成部２１４の処理が全て完了した後、パターンソート部２１８が、パターン・頻度記憶部２１６に記憶されているパターンをそれらの頻度の降順でソートしリストとして出力する。パターン選択部２２０は、パターンソート部２１８の出力するパターンのリストから、出現頻度が上位の１５個のパターンを選択する。パターン連結部２２２は、パターン選択部２２０が出力する１５個のパターンを、間にデリミタをはさみながら連結して単語埋め込みベクトルとして出力する。パターン連結部２２２の出力する単語埋め込みベクトルは、ＭＣＮＮ６０の第８カラムの畳み込みニューラルネットワーク３７４に入力される。
【００６７】
図６を参照して、ＭＣＮＮ６０の第１カラムの畳み込みニューラルネットワーク３６０は、図１に示す候補ベクトル生成部５０が生成する候補ベクトルを受ける。第２〜第５カラムの畳み込みニューラルネットワーク３６２、３６４、３６６、及び３６８は、図１及び図２に示す文脈ベクトル生成部５２が出力する第１から第４の文脈ベクトルを受ける。第６カラムの畳み込みニューラルネットワーク３７０は、図１及び図３に示すバイナリパターンベクトル生成部５４の出力するバイナリパターンベクトルを受ける。第７カラムの畳み込みニューラルネットワーク３７２は、図１及び図４に示す回答ベクトル生成部５６の出力する回答ベクトルを受ける。第８カラムの畳み込みニューラルネットワーク３７４は、図１及び図５に示す関連パッセージベクトル生成部５８の出力する関連パッセージベクトルを受ける。これら畳み込みニューラルネットワークは、いずれも予め学習したパラメータにしたがって内部計算を行い、結果を出力する。各畳み込みニューラルネットワークの出力は連結層３４２で単純に線形に連結され、Softmax層３４４への入力ベクトルとなる。
【００６８】
Softmax層３４４は、入力ベクトルにSoftmax関数を適用することにより、因果関係候補が因果関係として適切である確率を表すスコアを算出し、出力する。
【００６９】
図１に示す判定部６４は、このスコアとしきい値記憶部６２に記憶されたしきい値とを比較し、スコアがしきい値以上であれば因果関係候補３２が因果関係として適切であることを示す値を出力する。それ以外の場合には判定部６４は、因果関係候補３２が因果関係として適切でないことを示す値を出力する。
【００７０】
〔実験〕
本実験では、非特許文献１において、６億ウェブ文書から抽出した2,451,254個の因果関係候補の一部をデータセットとして利用した。３人のアノテータがこれらデータに対して因果関係として適切か否かを判定してアノテートした。この場合の因果関係の定義としては、もしもイベントＡが発生したときに必ずイベントＢの発生確率が増加するときに限り、しかも文脈を考慮せず、その因果関係候補のみでこの基準にしたがって判定できるときに限り、その因果関係が適切であると判定するようにした。最終的な決定は多数決により、Fleiss'  kappaは０．６７であり、判定はほぼ一致していた。
【００７１】
表１に、学習データ、開発データ、及びテストデータに関する統計を示す。開発データ及びテストデータは抽出された全因果関係候補からランダムにサンプリングして選択したが、学習データについてはそのようなことはしなかった。３つのデータセットの間で共通する因果関係候補は存在しなかった。
【００７２】
【表１】
2018060364.tif 000004
ＭＣＮＮ６０については、３００次元の単語埋め込みベクトルで、スキップグラム及びネガティブサンプリングアルゴリズムを用いて、非特許文献１において因果関係候補が抽出された日本語の元データ（２．４Ｍ文、０．６Ｍ語）により事前学習を行った。スキップ間隔は５に設定し、負例の数を１０に設定した。これら文内での出現回数が５回に満たない単語はいずれも削除し、未知語として扱い、ランダムベクトルを割り当てた。また、パターン中の変数についても未知語として扱い、ランダムベクトルを割り当てた。
【００７３】
全実験において、ＭＣＮＮ６０の最終層において０．５のドロップアウトを適用し、１００個のデータを用いたミニバッチで、学習率減衰＝０．９５としてＳＧＤ（Stochastic  Gradient  Descent：確率的勾配降下法）により学習を行った。全ての学習データを用いて５エポックの学習を行った。
【００７４】
ハイパーパラメータについては、開発データを用いて以下のような設定について検討した。Ｎグラムの組み合わせについては、｛２，３，４，５，６｝の中から３つ、４つ、及び５つを選択して組み合わせた。例えばある設定は、（２，３，４）×２００と書くことができる。２グラム、３グラム及び４グラムの組み合わせで各々２００個のフィルタを用いたということを意味する。Ｎグラムの組み合わせについては連続するＮについてだけ選択した。例えば２、３、４という組み合わせは調べたが、２、４、６という組み合わせについては採用しなかった。フィルタ数は５０、１００、及び２００の中から選択した。ハイパーパラメータの設定の組み合わせ数は１８通りとなり、これらの全てについて検討した。
【００７５】
評価基準としては、非特許文献１にしたがい、平均適合率(Average  Precision:  AP)を採用した。開発データにより得られた、APがトップの２つのハイパーパラメータ設定を用いて、各ハイパーパラメータ設定につき５つのモデルの学習を行い、２×５のモデルに対するAPを以って最終の適合率を計算した。表２に、最もよいハイパーパラメータ設定と開発データによるハイパーパラメータのチューニング時のAPを示す。
【００７６】
【表２】
2018060364.tif 000005
この表で、Baseは上記実施の形態と同様の考え方で因果関係候補の原因部及び結果部並びに元の文の文脈のみを用いた場合である。表２で使用されている略号及びその意味は以下のとおりである。BPはバイナリパターンを使用したもの、WHはなぜ型質問応答システムの回答を用いたもの、CLは手掛かり語を持つ文の組。最も高い性能を示したのは、Base+BP+WH  (2,3,4,5,6)×200であった。
【００７７】
【表３】
2018060364.tif 000006
表３は、テストデータに対する実験結果を示す。比較のため、本願発明によるものに加え、他の従来技術によるものも示した。非特許文献１はＳＶＭを用いているが、その全ての素性を用いて開発データによりＳＶＭをファインチューニングし、これに上記実施の形態で使用したBP、WH及びCLを組み合わせてテストした。非特許文献１に対する実験では、上記実施の形態のようにバイナリパターンを１５個のみを用いるのではなく、全てのバイナリパターンを用いている。
【００７８】
表３において「CNN-SENT」は、上記実施の形態と同様の構成で、ＭＣＮＮ６０に代えて単一カラムの畳み込みニューラルネットワーク（CNN）を用いたものを示す。ただしこの場合、因果関係を含む元の文をスキャンする点が異なる。ハイパーパラメータについては最適化し、既に述べた方法と同様の手法によりモデルのAPを算出した。
【００７９】
表３から明らかなとおり、本願発明に係る手法により、他の方式と比較してよいAPが得られた。本願発明に係る手法で最も高いAP(54.85%)は、Base+BP+WHの組み合わせで得られ、これは非特許文献１の方法の最良の値（47.52%）より7%高い。また、単一カラムのCNNを用いた場合と比較して、ＭＣＮＮ６０を用いたことにより、APに5.6%の改善が見られた(CNN-SENT  vs.  Base)。バイナリパターンとなぜ型質問応答システムの回答から得られた背景知識を組み込むことにより、APに5%の改善が得られた（Base  vs.  Base+BP+WH）。
【００８０】
図９に、この実験の一部の設定についてのPR（Precision-Recall）曲線を示す。図９にに示すグラフにおいて、横軸は再現率、縦軸は適合率を示す。再現率とは、スコア上位の所定個数中に存在している正しい因果関係の数の、対象データ中に存在する正しい因果関係全体の数に対する割合を示し、適合率とは、スコア上位の所定個数に対する、その中の正しい候補の割合を示す。ＰＲ曲線は、スコア上位から選ぶ個数を順次変化させたときの再現率と適合率との関係をプロットしたものである。PR曲線のグラフが上にあるほど望ましい結果ということができる。
【００８１】
図９を参照して、本願発明によるベストの結果（Base+BP+WH）を示すグラフ４８０は、他の全てのPR曲線よりかなり上に位置している。また、本願発明で背景知識を用いないもの（Base）のグラフ４８２も、従来の手法の非特許文献１+BP+WHによるグラフ４８４、非特許文献１によるグラフ４８４、及びCNN-SENTによるグラフ４８８より上に位置していることから、本願発明の有効性が確認できた。
【００８２】
表２からはまた、本願発明にしたがったいずれの手法も、従来技術を上回るAPを示していることが分かる。すなわち、上記した実施の形態で説明した背景知識源のいずれも、本願発明ではAPの向上に有効である。また、これら背景知識源を組み合わせると、CL（手掛かり語による関連パッセージ）を除き、単独の場合よりもAPがさらに向上していることも分かる。CLの場合には、簡略な処理で背景知識を取出しているために、背景知識としてはノイジーであることが原因と思われる。しかしCL単独でも従来技術と比較してAPが向上している。したがって、本願発明では、上記した背景知識源の任意の組み合わせを適用できる。
【００８３】
なお、上記実施の形態では、ＭＣＮＮ６０を用いている。しかし、本発明はＭＣＮＮによってのみ可能となるわけではない。ＭＣＮＮに代えて、マルチカラムのLSTM（Long  Short  Term  Memory）を用いても良い。
【００８４】
［コンピュータによる実現］
本発明の上記実施の形態に係る対話システム、因果関係認識装置３０及びその各機能部は、コンピュータハードウェアと、そのコンピュータハードウェア上で実行されるコンピュータプログラムとにより実現できる。図１０はこのコンピュータシステム６３０の外観を示し、図１１はコンピュータシステム６３０の内部構成を示す。
【００８５】
図１０を参照して、このコンピュータシステム６３０は、メモリポート６５２及びＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）ドライブ６５０を有するコンピュータ６４０と、キーボード６４６と、マウス６４８と、モニタ６４２とを含む。
【００８６】
図１１を参照して、コンピュータ６４０は、メモリポート６５２及びＤＶＤドライブ６５０に加えてＣＰＵ（中央処理装置）６５６を含み、さらに、ＣＰＵ６５６とメモリポート６５２と及びＤＶＤドライブ６５０とに接続されたバス６６６と、ブートプログラム等を記憶する読出専用メモリ（ＲＯＭ）６５８と、バス６６６に接続され、プログラム命令、システムプログラム及び作業データ等を記憶するランダムアクセスメモリ（ＲＡＭ）６６０と、ハードディスク６５４を含む。コンピュータシステム６３０はさらに、他端末との通信を可能とするネットワーク６６８への接続を提供するネットワークインターフェイス６４４を含む。
【００８７】
コンピュータシステム６３０を上記した実施の形態に係る対話システムの各機能部として機能させるためのコンピュータプログラムは、ＤＶＤドライブ６５０又はメモリポート６５２に装着されるＤＶＤ６６２又はリムーバブルメモリ６６４に記憶され、さらにハードディスク６５４に転送される。又は、プログラムはネットワーク６６８を通じてコンピュータ６４０に送信されハードディスク６５４に記憶されてもよい。プログラムは実行の際にＲＡＭ６６０にロードされる。ＤＶＤ６６２から、リムーバブルメモリ６６４から又はネットワーク６６８を介して、直接にＲＡＭ６６０にプログラムをロードしてもよい。
【００８８】
このプログラムは、コンピュータ６４０を、上記実施の形態に係る因果関係認識装置３０及びその各機能部として機能させるための複数の命令からなる命令列を含む。コンピュータ６４０にこの動作を行わせるのに必要な基本的機能のいくつかはコンピュータ６４０上で動作するオペレーティングシステム若しくはサードパーティのプログラム又はコンピュータ６４０にインストールされる、ダイナミックリンク可能な各種プログラミングツールキット又はプログラムライブラリにより提供される。したがって、このプログラム自体はこの実施の形態のシステム、装置及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能又はプログラミングツールキット又はプログラムライブラリ内の適切なプログラムを実行時に動的に呼出すことにより、上記したシステム、装置又は方法としての機能を実現する命令のみを含んでいればよい。もちろん、プログラムのみで必要な機能を全て提供してもよい。
【００８９】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
【符号の説明】
【００９０】
３０     因果関係認識装置
３２     因果関係候補
３６     質問応答システム
３８     ウェブアーカイブ
５０     候補ベクトル生成部
５２     文脈ベクトル生成部
５４     バイナリパターンベクトル生成部
５６     回答ベクトル生成部
５８     関連パッセージベクトル生成部
６０     マルチカラム畳み込みニューラルネットワーク（ＭＣＮＮ）
６２     しきい値記憶部
６４     判定部
８０、１５０、２００       候補記憶部
８２     単語分離部
８４、１１４、１５８、２１０         形態素解析部
８６、１１６、１６０、２１２         依存関係解析部
８８〜９４        第１〜第４の文脈ベクトル生成部
１１０   因果関係候補記憶部
１１２   候補文検索部
１１８   バイナリパターン検索部
１２０   バイナリパターンカウント記憶部
１２２   バイナリパターンソート部
１２４   バイナリパターン選択部
１２６   バイナリパターン連結部
１２８   バイナリパターン辞書
１５２   質問文作成部
１５４   回答取得部
１５６   回答・スコア記憶部
１６２、２０４    手掛かり語辞書
１６４、２１４    パターン生成部
１６６   パターン・元スコア記憶部
１６８、２１８    パターンソート部
１７０、２２０    パターン選択部
１７２、２２２    パターン連結部
２０２   単語抽出部
２０６   関連パッセージ取得部
２０８   関連パッセージ記憶部
２１６   パターン・頻度記憶部
３４４   Softmax層
３６０〜３７４    第１〜第８カラムの畳み込みニューラルネットワーク
【図１】
2018060364.tif 000007
【図２】
2018060364.tif 000008
【図３】
2018060364.tif 000009
【図４】
2018060364.tif 000010
【図５】
2018060364.tif 000011
【図６】
2018060364.tif 000012
【図７】
2018060364.tif 000013
【図８】
2018060364.tif 000014
【図９】
2018060364.tif 000015
【図１０】
2018060364.tif 000016
【図１１】
2018060364.tif 000017