以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。
<第1の実施の形態>
[概略]
図3を参照して、本発明の第1の実施の形態に係る項共有判別器により収集した項共有知識を用いた学習データ生成補助装置においてアノテーションをテキストに付する作業の概略を説明する。図3の上段を参照して、表示装置の画面に、アノテーション対象のテキスト90が表示される。このテキスト90は2つの文からなる。第1の文には、「導入する」という述部と、述部の主語である「N社」という単語100と、述部の目的語である「新型交換機」という単語110とが含まれる。第2の文は実質的には2つの節からなる。前半の文の先頭には「自己診断機能を搭載」の主語が省略されている箇所(省略箇所)114がある。前半の文と後半の文との中間箇所には、「200システムを設置する予定だ。」の主語が省略されている省略箇所104がある。
照応・省略解析では、図3の矩形102及び矩形112内に記載したように、まず省略箇所104又は114を発見する。その後、その省略箇所を補完すべき表現を探索し決定する。省略箇所104の場合には単語100が補完すべき表現となる。省略箇所114の場合には、単語110が補完すべき表現となる。
従来は、こうした省略箇所の発見と、補完表現の候補の探索及び決定とを、いずれも人間が行っていた。しかしそのような作業は非効率的であり、学習データの生成コストを押し上げる要因となっていた。本実施の形態では、上記した省略箇所の発見と、補完表現の候補の探索とをコンピュータプログラムで自動的に行う。こうした処理には、後述するように様々な手法を使用する。特に、項共有知識を含む言語知識を活用することで、人間が行うような作業と同様、省略箇所の発見と補完表現の候補の探索及び決定とを効率的に行う。
省略箇所の発見と補完表現の候補の探索とが終わると、各省略箇所に対して、図3の下段に示すような処理を行う。この例では、図3の上段に示す省略箇所114に対する補完表現に対しては「新型交換機」という単語110が発見され、省略箇所104には単語100を含む複数の単語が発見されたものとする。この場合、学習データ生成補助装置は、省略箇所114に単語110と同じ「新型交換機」という単語と主格の格助詞「ハ」とからなる文字列130を挿入し、さらにその右側には、いわゆるドロップダウンリストが存在することを意味するアイコン「▼」を表示する。ユーザがこのアイコンをクリックするとドロップダウンリスト132が表示される。ドロップダウンリスト132には、表示された候補をこの省略箇所114に対するアノテーションとして付加して良いか否かを尋ねる2つのオプション(YES、NO)と、人間が手入力するオプション(「手入力」)が表示される。利用者がYESを選択すると、この省略箇所114に文字列130がアノテーションとして付加される。NOを選択すればこの省略箇所114にはアノテーションは付加されない。「手入力」を選択すると、図示しない入力ダイアログが開き、アノテーションを直接入力できる。
省略箇所104の場合、候補の一つ、例えば単語100と同じ単語と格助詞「ハ」からなる文字列134が表示され、右側にドロップダウンリストを示すアイコン「▼」が表示される。このアイコンをユーザがクリックすると、複数の候補のリストと「直接入力」とをオプションとして含むドロップダウンリストが表示される。ユーザが候補のいずれかを選択すると、その候補の単語が省略箇所104に対するアノテーションとして付加される。直接入力が選択されたときについては、省略箇所114と同様である。
[照応・解析システムの全体構成]
図4を参照して、最初に、本実施の形態に係る学習データ生成補助装置を使用する照応・省略解析システム150の全体構成について説明する。
この照応・省略解析システム150は、予め準備された大量のテキストについて、省略箇所及び照応詞の検出を行い、それらが指す表現(先行詞)の候補をユーザに提示して簡単な操作で選択させることにより、ユーザが照応・省略解析に必要なモデルの学習データ(アノテーションデータ)を生成するのを補助するアノテーションデータ生成補助システム160と、アノテーションデータ生成補助システム160を用いてユーザにより生成された学習データを記憶する学習データDB162と、学習データDB162に記憶された学習データを用いて、後述する省略検出器166、照応詞検出器168、及び先行詞特定器170の学習を行うための学習システム164とを含む。省略検出器166は、テキスト中の任意の述語を対象に、省略検出を行う。省略検出器166は、テキスト中の主語、目的語等が省略された省略箇所を検出するための統計的モデルを含む。照応詞検出器168は、テキスト中の任意の名詞句(照応詞候補)を分類対象として、他の単語などを指示するための照応詞を検出するための統計的モデルを含む。先行詞特定器170は、テキスト中の、省略を持つ述語と先行詞候補である名詞句とを分類対象に、省略が指す先(先行詞)を特定するための検出器と、テキスト中の名詞句の対(照応詞と先行詞候補)とを分類対象に、照応詞が指す先行詞を特定するための検出器とを含む。これら検出器は、それぞれ別個の統計的モデルを有する。本実施の形態では、省略検出器166、照応詞検出器168、及び先行詞特定器170は、いずれもSVM(Support Vector Machine)を統計的モデルとして用いる。
照応・省略解析システム150はさらに、省略検出器166、照応詞検出器168、及び先行詞特定器170を用いて、入力テキスト中の省略箇所及び照応詞を検出し、それらの指す先行詞を特定する情報を付して出力する照応・省略解析装置172を含む。
<アノテーションデータ生成補助システム160>
アノテーションデータ生成補助システム160は、表示装置とキーボート及びマウス等を用いてユーザとの間で対話的な入出力を行う入出力装置202と、言語知識を含む様々な資源を用いて、テキストアーカイブ192に記憶された大量のテキストに対するユーザのアノテーション付与作業を補助することで、学習データを生成し学習データDB162に出力する学習データ生成補助装置204とを含む。
学習データ生成補助装置204が使用する資源は、学習データDB162と同様の学習データを記憶した既存小規模学習データDB190と、テキストアーカイブ192に記憶されたテキストに対して適用可能な形式の言語知識を規則の形で記憶した言語知識DB194と、学習データ生成補助装置204が言語知識DB194に記憶された言語知識をテキストに対して適用する際に、規則中の表現を他の表現に言換えたり、規則中の単語を別の単語に入れ替えたりするために使用される言換え規則及びカテゴリを記憶した言換え・カテゴリ辞書196と、テキストが特定のパターンを持つときに、そのパターンに付随する省略箇所を特定できるよう、予め準備されたパターンを記憶するためのパターン辞書198とを含む。
アノテーションデータ生成補助システム160はさらに、学習データ生成補助装置204が、テキスト中に省略箇所を発見したときに、その省略箇所が指し示す単語の候補を問い合わせる質問応答システム206と、学習データ生成補助装置204が質問応答システム206に対する質問をテキストに基づいて作成するときに参照する質問タイプDB200と、テキストに対して照応・省略解析を行って、学習データ生成補助装置204が実行する照応・省略解析の際に、省略箇所、照応詞、先行詞等の候補を学習データ生成補助装置204に対して提示するための既存照応・省略解析器208とを含む。
既存小規模学習データDB190の構成は、テキスト中の省略箇所、照応詞、及び先行詞の特定ができるようなフォーマットであればどのような形式でもよい。
テキストアーカイブ192に記憶されたテキストは、本実施の形態では単純なテキストであり、形態素解析、構造・係り受け解析がされていないことを前提とする。しかし、本発明はそのような実施の形態には限定されない。他のシステムで形態素解析若しくは構造・係り受け解析又はその双方が行われ、そうした情報が付されたものを用いてもよい。
〈言語知識DB194〉
図5を参照して、言語知識DB194に記憶された言語知識の規則は、大きく分けて5種類ある。すなわち、因果関係知識270、含意関係知識272、事態生起順序関係知識274、事態生起無効化関係知識276、及び項共有知識278である。各知識は、ワイルドカード的な役割を果たす、任意の名詞句等に置換可能な変数(以下では、「X」,「Y」等によって表わす)を含んでもよい。
因果関係知識270は、例えば「Xがタバコを吸う」という、原因に相当する表現と、「Xが肺がんの可能性を高める」という、結果に相当する表現との順序付ペアである。ここでは、原因に相当する表現が先に、結果に相当する表現が後に位置するものとする。
含意関係知識272は、例えば「XがYの著者だ」という表現により、「XがYを執筆した」という表現が含意されている、ということをこれら2つの表現の順序付ペアで表す。ここでは、含意する表現が先に、含意される表現が後に位置するものとする。
事態生起順序関係知識274は、例えば「XがYを発見する」という事象が生じると、「XがYを発表する」という事象が生じ得る、という事象の正規の順序関係を、これら2つの表現の順序付ペアで表す。ここでは、事象の順序関係にしたがって表現が配置されるものとする。
事態生起無効化関係知識276は、例えば「Xを禁止する」という事象が発生すると、「Xを公開できない」という事象が発生するように、ある事象が発生したことにより別のある事象の発生が無効化されるような関係にある表現の順序付ペアである。ここでは、発生する事象が先に位置し、その事象により発生が無効化される事象が後に位置するものとする。
後述するように、これら知識は単独でテキストに対して適用できるが、それだけではなく、例えば2つの知識のうち、一方の知識の後半の表現が、他方の知識の前半の表現と一致するような場合には、知識を連鎖させて適用できる。なお、ここでいう「一致」は、例えば同義語の言換え、含意等も含む。
一方、項共有知識278は、他の知識とやや異なった性格を持つ。図5に示すように、項共有知識278は、2つの述語(例えば「深める」と「協議する」、「目指す」と「続ける」等)が、それらの意味とは独立に、主語を共有することが多いという知識である。このような知識があれば、ある文章中で、項を共有する確率が高い2つの述語のうちの一方(第1の述語)と関係するある項(例えば主格の単語)が分かっているときに、他方の述語(第2の述語)に関係する同じ項が省略されていれば、第2の述語の項が、第1の述語の項と同じである確率が高い。したがって、その単語を第2の述語の省略箇所が指す単語の候補とすることができる。
〈項共有判別器〉
このような項共有知識を効率的に収集するためには、照応・省略関係がアノテーションされたコーパスを利用して、与えられた2つの述語の2つの格が項を共有するか否かを判別する判別器が有効である。判別器自体には、機械学習を用いることとし、統計的モデルとして例えばSVMを利用する。もちろん、統計的モデルとしてはSVMに限定されず、ニューラルネットワーク等を用いることもできる。
図6を参照して、本実施の形態では、アノテート済テキスト記憶部281から得た学習データにより項共有判別器283の学習を行う項共有判別器学習装置282を用いる。アノテート済テキスト記憶部281には、例えば以下の様な文が格納されている。
「村山富市首相は年頭にあたり首相官邸で内閣記者会と二十八日会見し、社会党の新民主連合所属議員の離党問題について離党者がいても、その範囲にとどまると思うと述べ、大量離党には至らないとの見通しを示した。」
このテキストには複数の述語が出現している。アノテート済テキスト記憶部281に記憶されたテキストにおいては、各述語の各々の格について、その項がどの表現であるかがアノテーションされている。この例では、「会見する」「思う」「述べる」「示す」「示す」の主語が「村山富市首相」であることがアノテーションされている。それ以外の述語「いる」「とどまる」「至る」についてはそれ以外の表現が主語となっている。このようなアノテーション結果が与えられたときに、任意の述語の対を抽出し、その対の格、例えば述語の主語同士が共有されている場合には正例、それ以外の場合には負例として学習データを作成し、この学習データにより、2つの述語が格を共有するか否かを判別するように項共有判別器283の学習を行う。
項共有判別器学習装置282は、アノテート済テキスト記憶部281に格納されたテキスト中の各述語対について、述語の文字列、品詞、係り元、係り先の情報、述語間の距離、その間に出現する機能語等を特徴量として抽出し、格ごとに分けて学習データを生成する学習データ生成部284と、学習データ生成部284が出力する格ごとの学習データを記憶する学習データ記憶部285と、学習データ記憶部285に記憶された格ごとの学習データにより、格ごとの項共有判別器283の学習を行う学習処理部286とを含む。述語対としては、同一文内の述語対についてのみ考慮してもよいし、テキスト中で文境界を超えて出現する述語対まで考慮してもよい。本実施の形態では、後者を採用し、文境界を超えて出現する述語対からも学習データを生成する。
図7を参照して、学習データ生成部284を実現するコンピュータプログラムは、アノテート済テキスト記憶部281の中の全てのテキストの各々について、以下の処理292を行うステップ291を含む。
処理292は、処理対象の文書に含まれる全ての述語対の各々について、処理294を行うステップ293を含む。
処理294は、処理対象の述語対から前述した特徴量を抽出するステップ295と、抽出された特徴量を用いて学習データを生成し出力する処理296とを含む。ステップ295では、具体的には、処理対象の述語対を含む文の各々について形態素解析及び構文解析を行った後、得られた形態素列及び係り受け関係から特徴量が抽出される。本実施の形態では、特徴量は、品詞情報を含む形態素列、及び文の係り受け構造のみであるため、特徴量抽出は単純な処理で実現できる。処理296は、述語格の組み合わせごとに実行される。図7では、図面を分かりやすくするために、主語についての処理のみを処理296として示してある。目的語等についての処理は図示していないが、ステップ295の後、主語の処理と並列に行う事ができる。
処理296は、処理対象の述語対が主語を共有するか否かを判定するステップ297と、ステップ297の判定が肯定の時に、正例としてマークされた学習データをステップ295で抽出された特徴量から生成するステップ298と、ステップ297の判定が否定のときに、負例としてマークされた学習データをステップ295で抽出された特徴量から生成するステップ299と、ステップ298及びステップ299で生成された学習データを現在の処理中の格に応じたファイルに出力するステップ300とを含む。
図8を参照して、上に説明したようにして学習が行われた項共有判別器283を用いて未アノテートテキストアーカイブ302から項共有知識を抽出する項共有知識収集装置301について説明する。ここでは、項共有判別器283として、判別の対象となる項別に3つの項共有判別器306,307及び308を用いるものとする。項共有知識収集装置301は、未アノテートテキストアーカイブ302から全ての述語対を抽出する述語対抽出部303と、述語対抽出部303により抽出された述語対の各々について、図7のステップ295で抽出されたものと同じ特徴量を抽出する特徴量抽出部304と、特徴量抽出部304により抽出された特徴量を、判別対象の項の格にしたがって3つの項共有判別器306,307及び308に振り分ける振り分け部305と、項共有判別器306、307及び308の判別結果と処理対象となっている述語対と判別対象の格の情報とをまとめて項共有知識として記憶する項共有知識記憶部310とを含む。判別結果は、処理対象の述語対が項を共有しているか否かを示す情報と、そのスコアとを含む。項共有判別器306,307及び308はいずれも前述したとおりSVMからなる。ここでのスコアは、SVMから出力される、判別の基準となる分離平面から判別対象のデータポイントまでの距離に相当するスコアを用いる。
本実施の形態ではさらに、項共有知識記憶部310に記憶された項共有知識について、人手による対話型処理312により検証して取捨選択を行うための検証処理部309を含む。検証処理部309は例えば、項共有知識記憶部310に記憶された項共有知識の内、スコアが低い判別結果を表示装置に表示し、人手によりその取捨選択を行う。ただし、人手による対話型処理312を用いて項共有知識の取捨判別を行うことに限定されない。例えば、項共有判別器306、307及び308が信頼度の低い判別結果を破棄する(出力しない)ようにしてもよい。又は、項共有知識記憶部310に記憶された項共有知識を利用する際に、スコアが一定の値より高いもののみを使用してもよい。このスコアはアプリケーションごとに変更してもよく、また格ごとに別々の値にしてもよい。
〈質問タイプDB200〉
図9を参照して、質問タイプDB200は、学習データ生成補助装置204が質問応答システム206を利用して先行詞の候補を入手するときに利用される。質問タイプDB200は、複数のエントリを持つ。各エントリは例えば、ある動詞について、ある表現内でのその動詞の係り受け関係において省略されている部分の文法役割と、省略部分に挿入されるべき表現を求める際に、どのような形で質問文を生成すればよいかを示す情報(質問タイプ)とを含む。例えば「食べる」という動詞について、ある表現内でその主語が省略されている場合には、「誰が」を文の先頭に配置して文を生成すれば、回答として「食べる」の主語になるべき表現が質問応答システムから得られる。
〈質問応答システム206〉
図10を参照して、質問応答システム206を利用して省略箇所の指す表現の候補を得るプロセスについて説明する。まず、入力テキスト320が2つの文を含むものとする。第1の文は「夕食に赤ワインを飲みましょう」という文であり、第2の文は「心臓病を防ぎます」であるものとする。第2の文の先頭には「防ぎます」という動詞332の主語が省略されており、この省略箇所334には省略を示すタグが付されているものとする。ここでは、この省略箇所には「赤ワイン」という単語330が入るべきである。
ここで、このテキストから省略箇所334に入るべき表現の候補を質問応答システムから得るためには、適切な質問文を生成して質問応答システム206への入力として与える必要がある。ここでは、入力テキスト320の省略箇所の文で「防ぎます」の主語を知る必要がある。図示しないが、言換え・カテゴリ辞書196に「予防」と「防ぐ」との言換えが可能であるという情報が格納されているものとする。すると、図9に示す質問タイプDB200に、動詞が「予防する」、文法役割が「主語」となったエントリが見つかる。その「質問タイプ」のカラムには「何が」が格納されている。学習データ生成補助装置204は、これら情報から、「何が心臓病を防ぐのか」という質問文336を生成する。質問文の生成において、文末は質問文にふさわしく、予め準備された規則にしたがって変換する。文末の変換規則を、質問タイプDB200の各エントリに予め格納しておくようにしてもよい。
図10を参照して、質問応答システム206は、この質問文336を受け取ると、システム内のデータベース内から、質問文336に対する回答としてふさわしい単語候補群342を検索して取り出す。質問応答システム206はさらに、このようにして得られた単語候補群342を、カテゴリ別に、各カテゴリ344、346、及び348が1又は複数の回答候補を含むようにして学習データ生成補助装置204に送信する。ここでは、カテゴリ344が「赤ワイン」、「酒」、「ビール」を含むものとする。他のカテゴリ346及び348も同様である。学習データ生成補助装置204は、例えば、こうして得られた単語の候補のうち、入力テキスト320内で省略箇所334より前の位置にある単語と一致する表現(この例では「赤ワイン」という単語330)を選択し、省略箇所334と、その指し先の候補としての単語330とをアノテーション350の対象とする。以上が質問応答システム206を用いたアノテーション付加作業の概略である。
〈既存照応・省略解析器208〉
図11を参照して、既存照応・省略解析器208は、既存の、照応・省略解析を行うものである。ここでは、既存照応・省略解析器208は、省略箇所の候補、照応詞の候補、及び省略箇所及び照応詞の先行詞の候補を提示するために使用される。最終的には人間がこれら候補の中から正しい候補を選択する。したがって、ここで用いる既存照応・省略解析器208の精度は必ずしも高くなくてもよい。
〈学習データ生成補助装置204〉
図11はアノテーションデータ生成補助システム160を示しており、学習データ生成補助装置204は、テキストアーカイブ192に含まれる各テキストに対して形態素解析を行い、さまざまな文法情報が付された形態素列を出力する形態素解析システム380と、形態素解析システム380の出力する形態素列に対し、文の構造及び係り受け解析を行い、構造・係り受け情報が付された形態素列を出力する係り受け関係解析システム382と、係り受け関係解析システム382が出力する形態素列を、それらの文法情報及び構造・係り受け関係とともに記憶する解析後テキストDB384とを含む。ここでは、係り受け関係解析システム382は、少なくともどの単語がどの単語に係っているかを示す係り受け情報を各形態素列に付すものとする。なお、図11においては、図面を簡略にするために図示していないが、本実施の形態では、学習データ生成補助装置204内の各要素は、入出力装置202を介したユーザの指示により動作する。
学習データ生成補助装置204はさらに、解析後テキストDB384に記憶された解析後テキストにおいて、省略箇所を検出し、質問タイプDB200及び質問応答システム206を用いて各省略箇所の先行詞を指すアノテーション候補群を生成する第1の候補生成部388と、解析後テキストDB384に記憶された解析後テキストにおいて、第1の候補生成部388と同様に省略箇所を検出し、各省略箇所に対して言語知識DB194、言換え・カテゴリ辞書196、及びパターン辞書198を用いて省略箇所に関するアノテーション候補群を生成する第2の候補生成部390と、既存小規模学習データDB190に記憶された学習データに対して、その中に存在している照応関係、省略関係の一部を変更して新たな学習データを生成し、その学習データから新たなアノテーション候補を生成する第3の候補生成部392と、既存照応・省略解析器208を用い、解析後テキストDB384に記憶されたテキストに対する照応・省略解析を行って、その結果をアノテーション候補として生成する第4の候補生成部394とを含む。
学習データ生成補助装置204はさらに、第1の候補生成部388、第2の候補生成部390、第3の候補生成部392、及び第4の候補生成部394の出力するアノテーション候補群を、各アノテーションが付されるべき省略箇所、照応詞等と関連付けて記憶する候補DB386と、解析後テキストDB384に記憶された各テキストの省略箇所及び照応詞の各々について、候補DB386を参照して候補を選択可能な形式で入出力装置202の表示装置に表示し、ユーザからの選択入力を受け付けて学習データDB162に学習データとして出力する対話型アノテーション装置396とを含む。
再び図4を参照して、学習システム164は、アノテーションデータ生成補助システム160で用いられた質問タイプDB200及び学習データ生成補助装置204とそれぞれ同様の質問タイプDB220及び質問応答システム226と、後述するように、先行詞特定器170の学習の際に、選択される先行詞に課される制約を記述した選択制限DB224と、アノテーションデータ生成補助システム160で使用される言語知識DB194と同様の構成を持つ言語知識を記憶した言語知識DB228と、学習データDB162に記憶された学習データ、質問タイプDB220、質問応答システム226、言語知識DB228、及び選択制限DB224を用い、省略検出器166、照応詞検出器168、及び先行詞特定器170の学習処理を実行する検出器学習装置222とを含む。
〈第1の候補生成部388〉
図12を参照して、第1の候補生成部388は、解析後テキストDB384に記憶された各テキストデータのうちの述語を検索する述語検索部420と、述語検索部420が出力した各述語のリストを各述語の出現位置とともに記憶する述語リスト記憶部422と、述語リスト記憶部422に記憶された各述語のうち、当該述語が関与する係り受け関係のうちで省略されている箇所を検出し、省略候補として出力する省略候補検出部424と、省略候補検出部424に記憶された省略候補の各々に対して、質問タイプDB200を参照してその省略箇所を補完する単語を回答として求める質問文を生成し、質問応答システム206に質問文として与える質問文自動生成部426と、質問文自動生成部426から質問文を、その質問文に対する回答候補群を質問応答システム206から受信し、質問文とその回答候補群とを組み合わせて出力する回答受信部428と、回答受信部428が出現する質問文と回答候補群とのペアを受け、回答候補群に含まれる候補のうち、解析後テキストDB384に記憶された解析後テキスト文内の出現箇所を確認し、質問の対象となっている省略箇所より前の位置に出現するものを全て選択して省略箇所の指し先候補として出力する出現位置確認部430と、出現位置確認部430から出力される省略箇所とその省略箇所を補完する候補群とを組にしてアノテーション候補として候補DB386に追加する候補追加部432とを含む。
〈第2の候補生成部390〉
図13を参照して、第2の候補生成部390は、図12に示す述語検索部420、述語リスト記憶部422、及び省略候補検出部424とそれぞれ同様の述語検索部450、述語リスト記憶部452、及び省略候補検出部454と、省略候補検出部454により検出された省略候補のうち、テキスト内でその省略の候補を持つ述語よりも前に出現している他の述語を検索し、検索された各述語とその省略の候補を持つ述語とをペアにして出力する対象述語検索部456と、対象述語検索部456が出力する各述語ペアについて、それらペアを構成する述語、又はそれを言換え・カテゴリ辞書196を参照して得られた等価な表現で言換えた述語が、第1文と第2文とにそれぞれ出現するような言語知識が言語知識DB194内にあるか、又はそうした表現のパターンがパターン辞書198にあるか否かを判定し、あればその言語知識又はパターンを出力する言語知識検索部458と、言語知識検索部458が出力する言語知識又はパターンを一時記憶する合致言語知識記憶部460と、合致言語知識記憶部460に記憶された言語知識又はパターンを用い、対象述語検索部456が出力した述語ペアの各述語を含む表現を用いて、それら表現に含まれる省略箇所の指し先を推定し、省略箇所と指し先とを組にしてアノテーション候補として候補DB386に記憶させる候補追加部462とを含む。
候補追加部462による省略箇所の指し先の推定は以下のようにして行われる。図14を参照して、テキスト482中に出現するある述語対(文字列494の「導入する」、文字列500の「設置する」)に対して、言語知識検索部458が言語知識480を検索したものとする。テキスト482は、図2に示す例文60と同文である。言語知識480は、「XがYを導入する」という第1文と、「XがYを設置する」という第2文とからなる。テキスト482内で、第1文の変数Xに相当する表現は「N社は」という文字列490である。第1文の「Y」に相当する表現は、テキスト482内の「新型交換機を」という文字列492である。そして、言語知識480の第1文の「導入する」という表現は、テキスト482内の「導入する」という文字列494と一致している。この関係から、変数Xが指す候補は文字列490中の「N社」という単語であり、変数Yが指す候補は文字列492中の「新型交換機」という単語であることが分かる。
一方、言語知識480の第2文の「設置する」という表現と合致する表現としてテキスト482に出現するのは、「200システムを設置する」の中の「設置する」という文字列500である。この表現の先頭には省略箇所496を示すタグが付されている。この文(「(〈主語〉は)200システムを設置する」)という文と言語知識480の第2文とを比較することにより、Yは「システム」に相当し、Xは省略されていることがわかる。言語知識480の第1文から得られた知識を用いると、テキスト482の省略箇所496は、言語知識480のXを指し、したがって「N社は」という文字列490が「設置する」の主語であることが分かる。さらに、テキスト482の第2文の「システム」が言語知識480の変数Yに相当し、したがってテキスト482の「新型交換機は」という文字列492がテキスト482の「システム」という文字列498に対応するものであることが分かる。このようにして、省略箇所496の指し先の候補が言語知識480とテキストとを比較することにより求められる。
言語知識を用いた別の例について、図15を参照して説明する。この例では、2つ以上の規則を順次結合することにより、3つ以上の文についての連続した因果関係が得られ、その関係を用いることで、テキスト中に出現する3つ以上の述語に関連して検出される2か所以上の省略箇所の指し先候補を特定する処理を表す。
図15に示すように、第1の言語知識520として「砂漠化が進む→黄砂が増える」、第2の言語知識522として「黄砂が増える→喘息が悪化する」という知識があるものとする。第1の言語知識520の第2文と、第2の言語知識522の第1文とは一致する。したがって、これら2つの知識を連鎖させることにより、「砂漠化が進む→黄砂が増える→喘息が悪化する」という第3の知識524が得られる。この第3の知識524とたとえば図15に示すテキスト526とを、特に述語その出現順序に注目して比較する。ここで、テキスト526については省略箇所の推定がされており、省略箇所542、省略箇所548等を示すタグが付加されているものとする。なお、テキスト526において、「(φ1)」は第1の省略箇所を、「(φ2)」は第2の省略箇所を、それぞれ表し、以下同様である。すると、テキスト526に「砂漠化が進んでいて」という表現540、「(φ1が)増えている」という表現544、及び「(φ2が)悪化して」という表現546が、第3の知識524の3つの述語部分と同じ順序で出現している。これらの表現の述語部分は、第3の知識524の述語と同じか、その活用形である。そこで、第3の知識524とテキスト526のうちで上記述語の出現している箇所とを比較することにより、φ1は黄砂を指し、φ2は喘息を指すことが分かる。
このような比較により、2つ以上の知識を連結して得た知識を活用することで、省略箇所の指し先を効率よく探索できる。なお、知識をどの程度まで連結するかは、設計事項に関する。知識が長くなると1つの知識で探索可能な省略箇所の指し先数の最大値は大きくなるが、規則が適用可能なテキストは少なくなる。本実施の形態では、2つの知識までの連結することを想定している。ただし、本発明はそのような実施の形態には限定されない。もっと多くの知識を連結して省略箇所の指し先の探索に用いてもよい。又は、文の種類により連結数の最大値を変化させたり、ユーザに知識の連結数の最大値を指定させたりしてもよい。
図16を参照して、知識の述語の言換えを適用することにより、一つの知識でより多くの指し先の探索を行う例について説明する。知識として「Xが生まれる→Xを販売する」という事態生起順序関係言語知識570があるものとする。一方、「販売する」を「売る」と言換えられるという言換え規則574が言換え・カテゴリ辞書196に記憶されているものとする。処理対象のテキストとして、「ウィスキー『W』が北海道で生まれA社が(φヲ)販売した」というテキスト572を考える。処理対象のテキストは、(φヲ)で表される省略箇所582を含む。テキスト572の前半部分と事態生起順序関係言語知識570の第1文とを比較すると、変数Xがテキスト572中の「ウィスキー『W』」という単語580を指すことが分かる。一方、テキスト572の述語「販売する」の目的語がXとなっている。この結果と、テキスト572の後半部の述語が「販売した」という表現584であることから、テキスト572中の「φヲ」で示される省略箇所582が「ウィスキー『W』」という単語580に相当することが分かる。そこで、まずこのようなアノテーション済のテキスト572が得られる。さらに、こうして得られたテキスト572に対し、言換え規則574を適用した言換え576により「販売した」を「売った」という表現586に置換し、アノテーションはそのまま残すことで、アノテーション済の新たなアノテーション済テキスト578が得られる。
図17を参照して、さらに、経験的に得られた文のパターンを用いて省略箇所又は照応詞の指し元及び/又は指し先を特定する処理について説明する。例えば、「Xは〜して、〜する」のようなパターンが出現する場合、「〈述語〉して」の主語と「〈述語〉する」の主語とがいずれもXであるような例が多いことが経験的に知られている。そうした知識を文法的なパターンとしてパターン辞書198に記憶しておく。パターン中には、省略箇所に相当する部分を特定する情報と、その指し先を示す情報とを挿入しておいてもよい。そして、処理対象のテキスト中にパターン辞書198に記憶されたパターンに合致するような表現が出現した場合、その表現をパターンと比較することで、入力箇所内の省略箇所(指し元)と、その省略箇所の指し先との候補を特定できる。
例えば、図17に示すように、パターン612がパターン辞書198に記憶されているものとする。このパターン612は、「Xは」という表現650、「…して」という表現652、及び「…する」という表現654がこの順序で出現した場合、表現654の先頭に表現654の主語が省略された箇所を示すタグ656が付されること、そのタグ656の指先がXであることが記述されているものとする。
入力としてテキスト610が与えられたものとする。テキスト610には、「台風20号は」という表現630、「…を北上し」という表現632、及び「接近する」という表現634がこの順番で出現する。このテキスト610をパターン612と照合614することにより、Xが台風20号に相当すること、「接近する」の主語が省略されており、その指し先は台風20号であることが判明する。そこで、「接近する」の直前の省略箇所を示すタグ636と、その指し先としての「台風20号」とを対にしてアノテーション候補616とする。このように、人の経験から導き出されたパターンを照応・省略解析に適応することで、人が持つ知識を生かした照応・省略解析を実現できる。
図18を参照して、項共有知識を用いた候補検索は例えば以下のようにして行われる。項共有知識660として「Xは…北上する」という表現662と「Xは…接近する」という表現とを対にした項共有知識660があったものとする。入力テキストとして、図18に示すアノテーション候補616が与えられた場合を考える。この例では、タグ636により示される省略の指し先として誤って別の単語が挙げられているか、そもそも指し先候補が見つかっていない場合があり得る。その場合、項共有知識660を用いて正しい指し先を示すアノテーション候補668が以下のようにして得られる。
すなわち、アノテーション候補616に出現する述語対である表現「北上(する)」と「接近する」について、項共有知識を検索し照合666することにより、該当する項共有知識660を見出すことができる。項共有知識660によれば「北上する」と「接近する」とは主格を共有することが多い。そこで、アノテーション候補616において主格が省略されているタグ636が、述語である表現632と同じ主語(台風20号)を指している可能性が高く、タグ636と、その指し先としての「台風20号」とを対にしてアノテーション候補668とする。このように、人の経験により導き出された項共有知識を用いて、省略箇所とその指し先とを対にしてアノテーション候補を生成できる。他の解析時に得られた手がかりに加え、項共有知識を用いた項共有の可能性も手がかりとすることで、正しい解析結果が得られる可能性が高くなるという効果がある。なお、項共有知識を用いて項を共有する述語対を探索する代わりに、前述した項共有判別器を用いるようにしてもよい。
〈第3の候補生成部392〉
図19を参照して、第3の候補生成部392は、既存小規模学習データDB190の中からアノテーション済の照応関係及び省略関係を検索し、両者を区別して出力する照応・省略関係検索部680と、照応・省略関係検索部680の出力する照応関係を構成する名詞句対の各々について、その名詞句の内の指し元(テキスト内で後方に位置するもの)を自動的に省略した新たな文を生成して新たなテキストを生成する指し元省略文生成部682と、指し元省略文生成部682の生成した文のうち、省略された箇所と、省略された箇所とともに照応関係がアノテーションされていた名詞句との間に新たな省略関係のアノテーション候補を付すアノテーション追加部684と、照応・省略関係検索部680が出力する省略関係を含むテキスト部分のうち、省略箇所について、アノテーションに基づいて省略箇所に、その指し先の要素を代名詞として復元することで新たな文を生成する省略要素復元部688と、省略要素復元部688により生成された新たな文に、省略要素復元部688により復元された代名詞の指し元とその指し先とからなるアノテーション候補を追加するアノテーション追加部690と、アノテーション追加部684及びアノテーション追加部690により生成された新たな文をそのアノテーション候補とともに候補DB386に追加する候補追加部686とを含む。
第3の候補生成部392により指し元を省略した場合、省略は機械によりある基準にしたがって自動的に行われる。そのため、省略語の表現について、その省略部分の指し先が何かを人が判断できない場合も生ずる。そうした場合には、そのアノテーションを負例として学習データに追加する。
なお、候補追加部686は、照応・省略関係検索部680及び省略要素復元部688の出力するテキストが解析後テキストDB384に存在しない場合には、これらテキストを解析後テキストDB384に追加し、アノテーション候補を解析後テキストDB384に追加されたテキストと関連付けて候補DB386に追加する。
〈第4の候補生成部394〉
図20を参照して、第4の候補生成部394は、解析後テキストDB384に記憶された解析後テキストに対して、既存照応・省略解析器208を適用することにより、照応・省略解析の実行結果を得て、解析後テキストにアノテーションとして追加する照応・省略解析実行部710と、照応・省略解析実行部710の出力する照応・省略解析結果のアノテーションが付されたテキストを記憶する解析結果記憶部712と、解析結果記憶部712に記憶された解析結果に含まれるアノテーションを、解析後テキストDB384で解析対象となったテキストに対するアノテーション候補として候補DB386に追加する候補追加部714とを含む。
〈対話型アノテーション装置396〉
図11に示す対話型アノテーション装置396は、図21に示すような状態遷移を行うプログラムにより実現される。図21を参照して、このプログラムは、プログラム実行開始時及び文書クローズ時等に初期処理を実行し、初期画面を表示した状態(初期状態)740から開始する。この状態では、テキストアーカイブから処理対象の文書を選択する処理と、プログラムの実行を終了する処理とのいずれかを選択できる。文書の選択が選ばれるとプログラムの状態は文書選択状態742に遷移する。文書選択状態742では、文書ファイルの選択ダイアログが表示される。ここでは文書ファイルの選択と、処理のキャンセルとを選ぶことができる。処理のキャンセルが選ばれると状態は初期状態740に戻る。文書選択状態742で文書が選択されるとプログラムは文書の内容を表示する状態(文書表示状態)744に遷移する。文書表示状態744では、文書の表示をキャンセルし、更新を反映せずに再度文書選択状態742に戻る処理と、更新を反映して文書をクローズする処理と、照応・省略解析の学習データを作成するために、アノテーション候補の選択を指示する処理とのいずれかを選択できる。アノテーション候補の選択が指示されると、文書の、現在処理中の位置から文書の末尾方向に向かって、アノテーション候補を検索する状態(候補検索状態)746を経由した後、アノテーション候補を表示してユーザによるアノテーション候補の選択を待つ状態(候補選択待機状態)748に遷移する。
候補検索状態746では、アノテーション候補が付された次の位置を検索し、検索された位置に付されているアノテーション候補が1つだけであれば図3の下段に示したような、アノテーション候補を承認するか否かを指定するドロップダウンリストを生成し、ドロップダウンリスト表示のためのアイコン「▼」を対象箇所に表示する。アノテーション候補が複数個ある場合には、それらを全て表示するドロップダウンリストを生成し、ドロップダウンリスト表示のためのアイコンを対象箇所に表示する。なお、ドロップダウンリストの表示時に、ユーザがリストのいずれかにポインタを合わせると、その候補と、その候補に対応する文書上の表現とが同じ色でハイライトされる。こうした処理により、指し元と指し先との対応についてユーザが容易に理解できる。この状態では、アノテーション選択処理を中断して文書表示状態744に状態を遷移させる処理と、それまでに行われたアノテーションの選択を文書に反映させて文書を保存し、文書ファイルをクローズする処理とのいずれかが選択できる。
ドロップダウンリストの操作により候補のいずれかが選択がされると、プログラムはアノテート付加状態750に遷移する。アノテート付加状態750では、選択にしたがって文書内の指定箇所に選択されたアノテートを付し、他の候補には選択されなかったことを示す情報を付すよう、メモリ上の文書を更新する。プログラムは再び候補検索状態746に移動し、次の候補が見つかると候補選択待機状態748に遷移する。
候補選択待機状態748で文書を表示させたままアノテーション処理を中断することを選択すると、プログラムは文書表示状態744に遷移する。文書に対して行ったアノテーション処理を反映させて現在の文書を保存することを選択した場合、プログラムは、文書クローズ状態752に遷移する。文書クローズ状態752では、プログラムは、メモリにロードされている更新済の文書データを文書ファイルとして上書き保存し、開いている文書ファイルをクローズする処理と、文書を保存せず、文書選択状態742に遷移する処理とのいずれかを選択できる。文書を保存しないことが選択されると、状態は文書選択状態742に直接遷移する。文書を保存することが選択されると、メモリ上のファイルを文書ファイルとして記憶媒体に上書き保存する状態(上書保存状態)754に遷移し、保存が完了すると文書選択状態742に遷移する。
このプログラムを実行することにより、省略箇所、照応詞を装置側で自動的に検索し、いずれかが検索されるたびに、その箇所に付されたアノテーション候補が表示される。アノテーション候補が1つであればユーザはそのアノテーション候補を承認するか否かを入力すればよい。場合によってはアノテーション候補を手入力してもよい。いずれにせよ、削除位置又は照応詞をユーザが目視で探し、その指し先をさらに目視で探す場合と比較して、はるかに容易にアノテーションを行える。
<検出器学習装置222>
再び図4を参照して、検出器学習装置222は、前述したとおり、学習データDB162に記憶された学習データから、選択制限DB224、質問タイプDB220及び質問応答システム226を用いて省略検出器166、照応詞検出器168、及び先行詞特定器170の学習をそれぞれ別々に行う。先行詞特定器170についてはさらに、省略箇所の先行詞用の特定器と、照応詞の先行詞用の特定器との学習を独立に行う。
図22を参照して、検出器学習装置222は、このために、省略検出器学習部770、照応詞検出器学習部772、及び先行詞特定器学習部774を含む。
〈省略検出器学習部770〉
本実施の形態では、省略検出器166は、主語省略検出器800、目的語省略検出器802,及び間接目的語省略検出器804を含む。省略検出器学習部770は、これら3つの検出器の学習を個別に行うため、学習データDB162に記憶された学習データの省略箇所の各々が、述語の主語(ガ格)、直接目的語(ヲ格)、又は間接目的語(二格)であるときに、それらを分類して、主語省略検出器800、目的語省略検出器802、及び間接目的語省略検出器804の学習をそれぞれ行うための素性ベクトル群782、784及び786を生成するための格別素性ベクトル生成部780と、これら素性ベクトル群782,784及び786を用いてそれぞれ主語省略検出器800、目的語省略検出器802、及び間接目的語省略検出器804を構成するSVMの学習を行うためのSVM学習処理部788とを含む。
ここでは、述語とは、動詞、形容詞、及び「名詞+『だ』」の形式の文字列である。素性ベクトルに含む学習のラベルとしては、述語が省略を持つ場合に1,それ以外なら0を用いる。
格別素性ベクトル生成部780が生成する素性ベクトルは、以下のような要素を含む。
・省略検出対象の述語に関して、検出対象の文法役割(例えば、主語)が係り受け関係にあるなら1,それ以外なら0
・主題となる表現(「は」でマークされた名詞句)が述語と同一文内に出現しているなら1,それ以外なら0
・省略検出対象の述語が対象テキストの1文目に出現しているなら1,それ以外なら0
・省略検出対象の述語が文の最初の後であるなら1,それ以外なら0
・省略検出対象の述語と係り受け関係にある語の見出し語、品詞
〈照応詞検出器学習部772〉
照応詞検出器学習部772は、学習データDB162に記憶された学習データから、照応詞検出器168のSVMの学習を行うために、照応関係の指し元(照応詞)としてアノテーションが付された単語を選択する照応詞候補選択部830と、照応詞候補選択部830により選択された照応詞の各々について、後述するような素性ベクトルを生成するための素性ベクトル生成部832と、素性ベクトル生成部832により生成された素性ベクトル群を用い、照応詞検出器168を構成するSVMの学習を行うためのSVM学習処理部834とを含む。
素性ベクトル生成部832が生成する素性ベクトルにおいて、学習のラベルは、分類対象の名詞句が、テキストの前方に照応関係となる指し先を持つなら1,それ以外なら0である。照応詞検出学習のための素性ベクトルの要素は以下を含む。
・照応詞候補の品詞、見出し語文字列、及びその候補に後続する格助詞
・照応詞候補の係り先の品詞、見出し語、その係り先に後続する格助詞
・テキスト中で照応詞候補より前の位置に出現する名詞句が文字列として照応詞候補と完全一致する場合に1,それ以外は0
・テキスト中で照応詞候補と部分一致する場合に1,それ以外は0
〈先行詞特定器学習部774〉
先行詞特定器170は、照応詞用先行詞特定器900と、省略用先行詞特定器902とを含む。そのため、先行詞特定器学習部774はこの2つの特定器900及び902の学習を別個に行う構成を有する。
具体的には、先行詞特定器学習部774は、照応詞用先行詞特定器900の学習を行う照応詞用先行詞特定器学習部840と、省略用先行詞特定器902の学習を行う省略用先行詞特定器学習部842とを含む。
照応詞用先行詞特定器学習部840は、学習データDB162に記憶された学習データから照応関係の指し元(照応詞)としてアノテーションが付された表現を選択する照応詞選択部850と、照応詞選択部850が選択した照応詞に対し、実際に先行詞としてアノテーションされたものとそれ以外の先行詞の可能性がある表現とからなる先行詞候補を選択する先行詞候補選択部852と、照応詞選択部850が選択した照応詞と、先行詞候補選択部852が選択した照応詞候補との組み合わせの各々について照応詞用先行詞特定器900の学習を行うための素性ベクトルを生成する素性ベクトル生成部854と、素性ベクトル生成部854が生成した素性ベクトルを用いて照応詞用先行詞特定器900を構成するSVMの学習を行うためのSVM学習処理部856とを含む。
一方、省略用先行詞特定器学習部842は、学習データDB162内の学習データのうち、省略関係としてアノテーションされた表現(省略)を選択する省略選択部870と、省略選択部870が選択した省略に対する先行詞としてアノテーションされた表現を含め、先行詞となる可能性のある候補を学習データ中で選択する先行詞候補選択部872と、省略選択部870が選択した省略部と、先行詞候補選択部872が選択した先行詞候補との組み合わせの各々について、素性ベクトルを生成するための素性ベクトル生成部874と、素性ベクトル生成部874により生成された素性ベクトルを用いて、省略用先行詞特定器902を構成するSVMの学習を行うSVM学習処理部876とを含む。なお、素性ベクトル生成部874は後述するように選択制限DB224、質問タイプDB220、質問応答システム226、及び言語知識DB228に接続されており、素性ベクトルの生成時にこれらから得られる情報を用いる。
素性ベクトル生成部854及び素性ベクトル生成部874が生成する素性ベクトルにおいて、学習のラベルは、分類対象の省略・先行詞候補又は照応詞・先行詞候補の対が照応・省略関係となるなら1,それ以外は0である。
素性ベクトルの要素は以下のとおりである。
・先行詞候補の品詞、見出し語文字列、その候補に後続する格助詞
・先行詞候補がテキストの1文目に出現するなら1,それ以外なら0
・先行詞候補が文内で最初に言及された先行詞候補なら1,それ以外なら0
・先行詞候補と照応詞が完全に同じ文字列なら1,それ以外なら0
・先行詞候補と照応詞が部分的に同じ文字列なら1,それ以外なら0
・選択制限DB224を用い、省略を持つ述語と先行詞となる名詞句の間で選択制限が満たされる場合には1,それ以外なら0
・省略を含む文、その省略の箇所について、質問タイプDB220を用いてその箇所が回答となるような質問文を生成し質問応答システム226に与えて得られた回答のいずれかが先行詞候補と一致すれば1,それ以外なら0
・省略を持つ述語、先行詞の係り先の述語が検出器学習装置222に登録されている因果関係知識に含まれる述語対と合致するなら1,それ以外なら0
〈照応・省略解析装置172〉
図4を参照して、照応・省略解析装置172は、省略検出器166、照応詞検出器168及び先行詞特定器170に接続され、これらを用いて入力250に対する照応・省略解析をし、自動的にアノテーションを入力250に追加して出力するための照応・省略解析器252と、照応・省略解析器252が照応・省略解析をする際の素性ベクトル生成に使用する言語知識DB256、質問タイプDB258、質問応答システム260、及び選択制限DB262とを含む。言語知識DB256は、照応・省略解析システム150で使用される言語知識DB194、学習システム164で使用される言語知識DB228と同様の言語知識を記憶したデータベースである。質問タイプDB258は、アノテーションデータ生成補助システム160で使用される質問タイプDB200及び学習システム164で使用される質問タイプDB220と同様の構成を持ち、その記憶内容も同様である。質問応答システム260は、アノテーションデータ生成補助システム160で使用される質問応答システム206及び学習システム164で使用される質問応答システム226と同様の機能を持つシステムである。選択制限DB262は、学習システム164における素性ベクトルの生成時に使用される選択制限DB224と同様のものである。なお、ここで同様の構成を持つと記載したDBは、互いに同一のものでもよいし、互いに異なるものでもよい。
[動作]
以上に構成を述べた照応・省略解析システム150は以下のように動作する。項共有判別器283の学習、項共有知識の収集、学習データの作成、検出器の学習、及び入力に対する自動アノテーションの5つのフェーズに分けて説明する。
<項共有判別器283の学習>
図6を参照して、予めアノテート済テキスト記憶部281にアノテート済のテキストが格納される。このテキストは、多くの場合人手で準備する。その量はそれほど多くなくてもよい。学習データ生成部284により、項を共有する述語対からなる正例と、項を共有しない負例とが、述語に対する格ごとの学習データとして生成され、学習データ記憶部285に格ごとに格納される。図7を参照して、具体的には、アノテート済テキスト記憶部281に記憶された全テキストについて(ステップ291)、以下の処理292が実行される。処理292では、処理中の文書に含まれる全述語対について、以下の処理294が実行される。
処理294では、処理対象の述語対について、構成の欄で説明した特徴量の抽出が行われる。抽出された特徴量を用い、格ごとに以下の処理296が行われる。まず、アノテーションにしたがい、ステップ297で処理対象の述語対が対象の格の項を共有するか否かが判定される。項を共有する場合には、特徴量からなる学習データがステップ298で正例としてマークされ、ステップ300で対象の格用のファイルに出力される。ステップ297で述語対が項を共有しないと判定された場合には、学習データがステップ299で負例としてマークされ、ステップ300で対象の格用のファイルに出力される。
上記した処理が、アノテート済テキスト記憶部281中の全てのテキストの全ての述語対について実行され、学習データ記憶部285に学習データが記憶される。
学習処理部286が、格ごとに準備された項共有判別器283の学習を行う。その結果、述語対について所与の特徴ベクトルが与えられると、その述語対がある格の項を共有するか否かを判別する項共有判別器283が得られる。
図6の構成によって、項共有判別器283が得られれば、図8に示すように項共有知識収集装置301が未アノテートテキストアーカイブ302から項共有知識を収集して項共有知識記憶部310に蓄積できる。すなわち、項共有知識収集装置301の述語対抽出部303は、未アノテートテキストアーカイブ302から述語対を抽出し特徴量抽出部304に与える。特徴量抽出部304は、学習データ生成部284により抽出されたものと同様の特徴量を各述語対について算出し振り分け部305に与える。振り分け部305は、各述語対について処理すべき格ごとに、その格に応じた項共有判別器306、307及び308に特徴量からなる特徴ベクトルを与える。項共有判別器306、307及び308はそれぞれ、特徴ベクトルが与えられると、各共有判別器が担当している格についてその述語対が項を共有しているか否かについての判定をスコアとともに出力し、項共有知識記憶部310に蓄積する。
このようにして項共有知識記憶部310に蓄積された項共有知識について、作業者が対話型処理312及び検証処理部309を用いて検証し、不適切なもの、又はスコアが低いものを削除することで項共有知識が得られる。
〈学習データの作成〉
学習データの作成はアノテーションデータ生成補助システム160により行われる。この処理に先立ち、既存小規模学習データDB190、テキストアーカイブ192、言語知識DB194、言換え・カテゴリ辞書196、パターン辞書198、既存照応・省略解析器208、及び質問タイプDB200を準備しておく必要がある。また、質問応答システム206については、予めアノテーションデータ生成補助システム160内に準備し学習データ生成補助装置204からアクセス可能にしておくか、外部の質問応答システムに対して質問文を送れるよう準備しておく必要がある。
図11を参照して、利用者は学習データ生成補助装置204を起動し、テキストアーカイブ192を指定して学習データの生成の開始を指示する。形態素解析システム380は、テキストアーカイブ192に記憶された各テキストを読出し、形態素解析をして種々の文法的情報が付された形態素列を係り受け関係解析システム382に与える。係り受け関係解析システム382は、与えられた形態素列からなる各文について文法的構造解析及び係り受け解析を行い、構造情報と係り受け情報とが付された形態素列を解析後テキストDB384に出力する。こうして、テキストアーカイブ192に記憶された各テキストが解析され、解析後テキストが解析後テキストDB384に蓄積される。
図12を参照して、第1の候補生成部388の述語検索部420は、解析後テキストDB384に記憶された解析後テキストの各々を読出し、述語を検索して述語リスト記憶部422に書き出す。省略候補検出部424は、述語リスト記憶部422に蓄積された述語リスト内の各述語について、その述語を含む係り受け関係において、その述語の主語、目的語、間接目的語等のいずれかが存在している否かを判定し、存在していないときにはその部分を省略候補として検出し質問文自動生成部426に与える。質問文自動生成部426は、省略候補の部分が回答となるような質問文から質問文を生成する。この際、質問文自動生成部426は、処理対象となっている述語と、省略候補の文法役割(主語、目的語、等)とをキーとして質問タイプDB200をアクセスし、質問タイプを読み出す。質問文自動生成部426はさらに、読み出した質問タイプの表現を用いて、省略箇所を含む文を変形して図10に示す質問文336のような質問文を生成する。質問文自動生成部426はこの質問文を質問応答システム206と回答受信部428に与える。回答受信部428は、質問文自動生成部426から質問文を受けると、質問文に対する回答が質問応答システム206から与えられるまで待機する。
質問応答システム206は、本実施の形態では、与えられた質問文に対し、いくつかのカテゴリ別に、各カテゴリについて複数の回答候補を生成し、回答受信部428に与える。回答受信部428は、質問応答システム206から回答を受信すると、その回答が質問文自動生成部426から送信されたどの質問文に対するものかを確認し、出現位置確認部430に処理対象となっている述語を特定する情報と回答とを与える。
出現位置確認部430は、回答受信部428からの情報に基づき、処理対象の解析後テキストのうち、処理の対象となっている述語より前に出現している省略の指し先候補の位置を確認し、それらを省略箇所の補完候補として、処理対象となっている述語と、候補の各々とを組みにして候補追加部432に出力する。候補追加部432は、出現位置確認部430から与えられた候補を候補DB386に追加する。
図13を参照して、第2の候補生成部390は以下のように動作する。述語検索部450は、解析後テキストDB384に格納された解析後テキストの内の各述語を検索し、述語リスト記憶部452に蓄積する。省略候補検出部454は、図11に示す省略候補検出部424と同様、述語リスト記憶部452に蓄積された述語リスト内の各述語について、その述語を含む係り受け関係において、その述語の主語、目的語、間接目的語等のいずれかが存在している否かを判定し、存在していないときにはその部分を省略候補として検出する。省略候補検出部454は、検出された省略候補の位置を示す情報を対象述語検索部456に与える。対象述語検索部456は、省略候補検出部454により検出された省略候補のうち、テキスト内でその省略の候補を持つ述語よりも前に出現している他の述語を検索し、検索された各述語とその省略の候補を持つ述語とをペアにして言語知識検索部458に与える。
言語知識検索部458は、対象述語検索部456が出力する各述語ペアについて、それらペアを構成する述語又はそれを言換えた述語が言語知識DB194内の言語知識のいずれかにおいて、第1文と第2文とに出現するような言語知識があるか否かを判定し、あればその言語知識を出力する。言語知識検索部458はまた、対象述語検索部456から与えられる述語ペアを含む表現であって、かつパターン辞書198に記憶されたパターンに合致するものがあればそれも出力する。言語知識検索部458はこれら言語知識及びパターンをテキストに適用する際に、言換え・カテゴリ辞書196に記憶された言換え規則及びカテゴリを用い、規則中の表現を他の表現に言換えたり、規則中の単語を別の単語に入れ替えたりすることにより、言語知識の適用対象を広げる。言語知識検索部458により検索された言語知識は、その言語知識の検索の際に用いられた述語ペアとともに合致言語知識記憶部460に蓄積される。最後に、候補追加部462が、図14〜図18を参照して説明したように、合致言語知識記憶部460に記憶された述語ペアと、合致した言語知識又はパターンとを照合することにより、省略候補の指し先候補を特定し、省略候補と、各指し先候補とのペアをアノテーション候補として候補DB386に追加する。この場合、後述するように、項共有知識を用いることで、述語ペアのうち、省略候補を持つ述語と項を共有する述語があれば、省略候補と、その述語の持つ項の内容とのペアをアノテーション候補として候補DB386に追加する。このようにすることで、アノテーション候補の生成に項共有知識を活かすことができる。
図19を参照して、第3の候補生成部392の照応・省略関係検索部680は、既存小規模学習データDB190の中でアノテーション済の照応関係及び省略関係を検索し、照応関係を含む文を指し元省略文生成部682に、省略関係を含む文を省略要素復元部688に、それぞれ出力する。
指し元省略文生成部682は、照応関係を含むテキストから、照応関係を構成する名詞句対を探し、その各々について、その名詞句の内、テキスト内で後方に位置する指し元を自動的に省略した新たなテキストを生成してアノテーション追加部684に与える。アノテーション追加部684は、このようにして指し元省略文生成部682の生成した文のうち、省略された箇所と、省略された箇所とともに照応関係がアノテーションされていた名詞句との間に新たな省略関係のアノテーション候補を付して候補追加部686に出力する。
候補追加部686は、照応・省略関係検索部680が出力する省略関係を含むテキストのうち、省略箇所について、アノテーションに基づいて、その指し先の要素を代名詞として復元することで新たなテキストを生成しアノテーション追加部690に与える。アノテーション追加部690は、省略要素復元部688により生成された新たなテキストに、省略要素復元部688により復元された代名詞からなる指し元と、もともとのアノテーションにより指し先とされていた部分とからなる新たな照応関係のアノテーション候補を追加し候補追加部686に出力する。
候補追加部686は、アノテーション追加部684及びアノテーション追加部690から出力されたテキストをそれらに付加されたアノテーション候補とともに候補DB386に追加する。
図20を参照して、第4の候補生成部394の照応・省略解析実行部710は、解析後テキストDB384からテキストを読出し、既存照応・省略解析器208による照応・省略解析を実行する。既存照応・省略解析器208は、その性能には限界があるものの、入力されたテキストに対して照応・省略解析を実行し、アノテーションされたテキストを照応・省略解析実行部710に返す。照応・省略解析実行部710は、そのアノテーションされた解析結果を解析結果記憶部712に蓄積する。候補追加部714は、解析結果記憶部712に記憶された解析結果に含まれるアノテーションをアノテーション候補として候補DB386に追加する。
以上の処理をテキストアーカイブ192(図4及び図11参照)に記憶された全てのテキストに対して実行することにより、最終的に候補DB386にはアノテーション候補が付されたテキストが蓄積される。候補DB386に蓄積されたテキストは、省略候補及び照応詞候補を含み、各省略候補及び照応詞候補には、それらの指し先を示すアノテーション候補が1又は複数個付加されている。
対話型アノテーション装置396は、候補DB386に蓄積された候補の各々について、入出力装置202を用いたユーザとの対話型処理により、省略候補及び照応詞候補の各々について、以下のように動作する。
図3の下段を参照して、対話型アノテーション装置396は、アノテーション候補を含むテキスト92を画面に表示する。その際、対話型アノテーション装置396は、省略候補及び照応詞候補の各々について、以下のようにしてアノテーション候補を選択するドロップダウンメニューを作成する。すなわち、省略候補の指し先が1箇所しか存在しない場合には、図3において文字列130で示される省略候補の位置に、その指し先候補である単語110と同じ単語を表示し、さらにその右側にドロップダウンメニューがあることを示すアイコン「▼」を表示する。ドロップダウンメニューには、表示されている候補を受け入れるか否かを示すオプション(YES・NO)と、直接入力とを示すオプションとが表示される。ユーザがYESを選択すると、選択されたアノテーションがアノテーションとして確定される。NOが選択された場合、アノテーションは未確定で残される。直接入力が選択されると、文字列130で示される省略候補の指し先を直接指定するためのダイアログが表示される。ユーザが指し先を入力することにより、ユーザの指定にしたがった新たなアノテーションが生成され、確定アノテーションとなる。この場合、最初に表示されていながらユーザにより選択されなかったアノテーションは、学習時の素性ベクトル作成の際の負例を生成するために使用される。したがって、負例であることを示すフラグがこのアノテーション候補に付される。
アノテーション候補が複数個ある場合には、それら複数個のアノテーション候補をオプションとして含むドロップダウンリストが生成される。該当箇所には、アノテーション候補のうち先頭のもの、又は何らかの形でアノテーション候補にスコア付けした際の最高スコアのアノテーション候補が表示される。その右側には、ドロップダウンリストがあることを示すアイコン「▼」が表示される。この場合にも、ドロップダウンリストには、直接入力することを選択するオプション項目が表示される。ユーザがいずれかのオプションを選択すると、選択されたアノテーション候補がアノテーションとして確定する。選択されなかった候補については、学習時の素性ベクトル作成の際に、負例を生成するために使用される。
いずれの場合も、アノテーションが確定した解析後テキストは学習データDB162に蓄積される。候補DB386に記憶された全ての解析後テキストについて、上記したアノテーションの選択が完了すると、学習データDB162が完成する。
〈検出器の学習〉
図22を参照して、検出器学習装置222は以下のように動作する。省略検出器学習部770の格別素性ベクトル生成部780は、学習データDB162に記憶されたアノテーション確定済の学習データのうち、省略を含む学習データを読出す。格別素性ベクトル生成部780は、学習データの省略箇所の各々が、述語の主語(ガ格)、直接目的語(ヲ格)、又は間接目的語(二格)であるときに、それらを分類して、それぞれ素性ベクトル群782、784及び786を生成し図示しない記憶装置に蓄積する。この際、格別素性ベクトル生成部780は、確定したアノテーションについては学習ラベルを1、それ以外のアノテーションについては学習ラベルを0とする。SVM学習処理部788は、これら素性ベクトル群782、784及び786を用いて、主語省略検出器800、目的語省略検出器802、及び間接目的語省略検出器804が有するSVMの学習を行う。
照応詞検出器学習部772の照応詞候補選択部830は、学習データDB162に蓄積された学習データのうち、照応詞候補を含むテキストを読み出し、照応関係の指し元(照応詞)としてアノテーションが付された単語を選択する。素性ベクトル生成部832は、照応詞候補選択部830により選択された照応詞候補の各々について、前述した素性ベクトルを生成する。この際、素性ベクトル生成部832は、確定したアノテーションについては学習ラベルを1,それ以外のアノテーションについては学習ラベルを0とする。素性ベクトル生成部832が生成した素性ベクトルは図示しない記憶装置に蓄積される。SVM学習処理部834は、このようにして蓄積された素性ベクトル群を用い、照応詞検出器168を構成するSVMの学習を行う。
先行詞特定器学習部774において、照応詞用先行詞特定器学習部840は以下のように動作する。照応詞用先行詞特定器学習部840の照応詞選択部850は、学習データDB162に記憶された学習データのうち、照応関係の指し元(照応詞)としてアノテーションされている表現を選択し、先行詞候補選択部852に与える。先行詞候補選択部852は、照応詞選択部850が選択した照応詞に対し、実際に先行詞としてアノテーションされたものとそれ以外の先行詞の可能性がある表現(名詞句)との双方を含む先行詞候補を選択する。素性ベクトル生成部854は、照応詞選択部850が選択した照応詞と、先行詞候補選択部852が選択した照応詞候補の各々との組み合わせについて照応詞用先行詞特定器900の学習を行うための素性ベクトルを生成する。この際、素性ベクトル生成部854は、照応関係において照応詞の指し先としてアノテーションされた表現については学習ラベルを1,それ以外の学習ラベルを0とする。SVM学習処理部856は、素性ベクトル生成部854が生成した素性ベクトルを用いて照応詞用先行詞特定器900を構成するSVMの学習を行う。
一方、省略用先行詞特定器学習部842は以下のように動作する。省略用先行詞特定器学習部842の省略選択部870は、学習データDB162内の学習データのうち、省略関係としてアノテーションされた表現(省略)を選択し、先行詞候補選択部872に与える。先行詞候補選択部872は、省略選択部870が選択した省略に対する先行詞としてアノテーションされた表現を含め、省略の先行詞となる可能性のある候補を学習データ中で選択する。素性ベクトル生成部874は、省略選択部870が選択した省略部と、先行詞候補選択部872が選択した先行詞候補の各々との組み合わせについて、素性ベクトルを生成し図示しない記憶装置に蓄積する。このとき、素性ベクトル生成部874が生成する素性ベクトルにおいて、学習のラベルは、分類対象の省略・先行詞候補の対が省略関係となるなら1、それ以外は0である。また素性ベクトル生成部874は、素性ベクトルの生成にあたって、前述したとおり、選択制限DB224、質問タイプDB220、質問応答システム226及び言語知識DB228を用いる。SVM学習処理部876は、素性ベクトル生成部874により生成された素性ベクトルを用いて、省略用先行詞特定器902を構成するSVMの学習を行う。
以上の処理により、省略検出器166に含まれる主語省略検出器800、目的語省略検出器802、及び間接目的語省略検出器804、照応詞検出器168、並びに先行詞特定器170に含まれる照応詞用先行詞特定器900及び省略用先行詞特定器902の学習が完了する。
〈自動アノテーション〉
図4に戻り、照応・省略解析器252による入力250に対する照応・省略解析とその結果の自動アノテーションは以下のようにして実行される。なお、この解析は省略解析、照応解析、省略及び照応詞に対する先行詞解析に分割される。省略解析では省略検出器166が用いられる。照応解析では照応詞検出器168が用いられる。先行詞解析では先行詞特定器170が用いられる。
最初に、入力250に対する形態素解析及び構造・係り受け解析が実行され、構造・係り受け情報が付された形態素列が処理の対象となる。この形態素列に対し、省略解析では、それぞれ図22に示す主語省略検出器800、目的語省略検出器802、及び間接目的語省略検出器804の学習を行ったときと同様の構成の素性ベクトルを生成し、これら検出器に与える。主語省略検出器800、目的語省略検出器802、及び間接目的語省略検出器804の出力により、入力250のうちでそれぞれ最も高いスコアを示す部分に省略箇所としてのアノテーションが付される。
この後、このようなアノテーションが付された入力に対し、省略又は照応詞(以下単に「省略等」と呼ぶ。)を持つ述語を含む項共有知識を適用し、その述語と項を共有する述語が入力中にあるか否かを判定する。そのような述語が見つかれば、省略等の箇所に、見つかった述語が持つ項の内容を補完するよう、アノテーションする。この場合、項共有知識を直接用いるのではなく、図6に示した項共有判別器283等を利用して、省略等を持つ述語と項を共有する述語を入力中で見つけるようにしてもよい。このような処理で省略等されている項を補完すべき語が見つかれば、この省略等の箇所に対してはこの後の解析を打ち切り、次の省略等の箇所に対する処理に進めばよい。補完すべき語が見つからなければ、以後の照応・省略解析を実行する。もちろん、ここで見つかった語を補完候補の1つとしてアノテートし、照応・省略解析の処理に進んでも良い。
照応詞解析では、入力250に含まれる名詞句対中から照応詞候補となり得る語句を選択し、その各々について、図22に示す素性ベクトル生成部832により生成された素性ベクトルと同様の構成の素性ベクトルを入力250から生成する。この組成ベクトルを照応詞検出器168に与えることにより、照応詞検出器168からスコアが得られる。このスコアにより、照応詞か否かを決定し、その旨のアノテーションを付する。
照応詞用先行詞特定器900による先行詞の推定は以下のようにして行われる。照応詞検出器168により照応詞と判定された表現の各々について、先行詞となり得る表現を入力250中で選択し、両者をペアとして図22の素性ベクトル生成部854と同様に素性ベクトルを生成する。この素性ベクトルを照応詞用先行詞特定器900への入力とし、照応詞用先行詞特定器900のスコアを得て、しきい値より高いスコアで、かつ最も高いスコアを示した先行詞候補と、処理対象の照応詞との間で照応関係のアノテーションを追加する。
省略用先行詞特定器902による先行詞の推定も同様である。ただしこの場合、素性ベクトル生成部854により生成される素性ベクトルではなく素性ベクトル生成部874により作成されるものと同様の構成の素性ベクトルが使用される。したがってこのときには、選択制限DB224、質問タイプDB220、質問応答システム226及び言語知識DB228が必要となる。
以上のように本実施の形態によれば、テキストアーカイブから、照応・省略解析のための検出器の学習を行うための学習データ生成が容易に行える。例えば照応・省略関係の候補が自動的に検索され、その先行詞候補がリストとして表示される。ユーザは、リストに表示された候補が1つでかつ正しいものであればそれを承認し、リストに表示された候補が複数個であればそのうちの1つを選択すればよい。従来のように、照応・省略関係の位置を目視で探し、次にその指し示す位置をさらに目視で探して両者に照応・省略関係のアノテーションを付す、という作業を行う必要はない。仮に表示されたリストに正しい指し先が示されないときには、手入力により正しい指し先を指定することができる。
したがって、従来の技術よりもはるかに簡便に、照応・省略解析の検出器の学習を行うための学習データを準備できる。その結果、学習データの作成コスト及び作成時間をいずれも低減できる。大量の学習データを低コストで準備できるため、この学習データを使用して学習を行った省略検出器166、照応詞検出器168、及び先行詞特定器170を用いてテキストの照応・省略解析を効率的に行うことが可能になる。また、学習データが大量になるため、これら検出器の精度が向上することが期待でき、高い精度でほぼ自動的にテキストの照応・省略解析を行うことができる。
なお、上記実施の形態では、質問応答システム206は単数であるものとして説明した。しかし本発明はそのような実施の形態には限定されない。質問応答システムが複数個利用できるのであれば、複数個の質問応答システムを利用してもよい。この場合、各質問応答システムがいずれも自然言語のテキストを入力とするのであれば、同一の質問文をそれらに送信するだけで回答候補を得ることができる。
また上記実施の形態では、照応・省略解析では、最初に項共有知識を用いた処理で省略等の箇所に補完すべき語が見つかれば、その後はその省略等の箇所についての照応・省略解析は行わず、補完すべき語が見つからない場合のみ、照応・省略解析を行うようにしている。しかし本発明はそのような実施の形態には限定されない。項共有知識を適用することによって得られた補完候補に関する情報を、照応・省略解析のための素性の一部として使用してもよい。
<第2の実施の形態>
第1の実施の形態では、図6に示すように、アノテート済テキスト記憶部281に記憶されたテキストから項共有判別器283の学習を行っている。しかし、アノテート済テキスト記憶部281のテキストが少量の場合には、項共有判別器283の精度はあまり高くならない。その結果、十分な量のテキストがアノテート済テキスト記憶部281に準備できないと、項共有関係による指し先候補の推定の精度が高くならないおそれがある。そこで、この第2の実施の形態では、アノテート済テキスト記憶部281のテキストが少量でも、項共有判別の精度が高くなるような項共有判別器の学習方法を示す。
図25を参照して、この方法を採用した項共有判別器学習装置972は、いずれも第1の実施の形態で使用したアノテート済テキスト記憶部281に記憶されたテキスト及びテキストアーカイブ192を用いて項共有判別器974の学習を行う。項共有判別器学習装置972は、テキストアーカイブ192の各文に対し形態素解析及び構文解析を行い、ある述語が構文的に他の述語に依存するような述語対を抽出する述語対抽出部980と、述語対抽出部980が抽出した述語対の各々について項共有関係の有無を判別する、第1の実施の形態で得た項共有判別器283と、項共有判別器283により得られた結果に対する統計的処理により、変化形を含む同じ述語の対に対して共有関係があると判定された率(項共有率)を算出する統計処理部984と、図1に示すものと同様のアノテート済テキスト記憶部281に記憶されたテキスト、及び統計処理部984の処理結果を入力として、図6に示す学習データ生成部284と同様の特徴量に、さらに統計処理部984により算出された項共有率を特徴量として加えた学習データを生成する学習データ生成部986とを含む。
項共有判別器学習装置972はさらに、学習データ生成部986の出力する学習データを記憶する学習データ記憶部988と、学習データ記憶部988に記憶された学習データを用いてSVMからなる項共有判別器974の学習を行う学習処理部990とを含む。
なお、統計処理部984による処理において、出現頻度の低い述語対については、項共有の有無に関する判別結果の信頼性は低いと考えられる。そこで、本実施の形態では、出現頻度があるしきい値(例えば5)以下の述語対については、項共有率をデフォルト値の0に設定した。このしきい値については他の値に変更して同様の処理を行ったが、最終的な結果には大きな影響をもたらさなかった。
[評価実験]
この項共有判別器974の性能を確認するために評価実験を行った。評価実験は、述語対の主語の共有について行い、NAISTテキストコーパス1.4内の80%を学習に用いた。学習データは42,806の述語対を含んでいた。そのうちで8,496個の述語対が主語を共有していた。
評価実験では、6億のウェブページから、後掲の参考文献1に記載の手法で2,451,254個の因果関係に関する例をサンプリングした。元の文の中には述語の主語が含まれているケースがあったので、それらは対象から除外した。より具体的には、名詞の後に助詞「は」又は「が」が続く例を除外した。その結果、サンプルの数は2,451,254から1,321,172となった。これらの中から1000個をランダムサンプリングした。これらの各々について、述語対が主語を共有するか否かについて3人の判定者により判定した。これらの判定に関する平均カッパ係数(Cohen’s Kappa)は0.683であった。最終的なアノテーションラベルは3人の判定者の判定結果の多数決により決定した。その結果、1000個のサンプル中で644個が主語を共有すると判定された。この割合は予想より高いが、この原因は元になるデータが因果関係を表す例であったせいであると思われる。
評価実験では以下の3つの手法とこの第2の実施の形態に係る項共有判別器(主語に関するもの)との性能を比較した。
(1)BaselineKNP
これは日本語構文解析システムの出力に基づいて主語の共有を判定するものであって、後掲の参考文献2による照応・省略解析システムが組み込まれたものによる解析結果である。
(2)BaselineAllShare
入力中の全ての述語対が主語を共有すると判定するもの。前述したとおり、元のデータが因果関係を表すものであることから、この仮定は妥当であってベースラインをなすものと思われる。
(3)FirstStepClassifier
第1の実施の形態に係る項共有判別器である。
結果を次のテーブル1に示す。
平均精度は、各手法の分類器により計算されたスコアの値によってサンプルをランキングした結果による。FirstStepClassifier及び本実施の形態による手法では、主語を共有するか否かはSVMで判定している。BaselineAllShareでは、参考文献1によるSVMによるスコアを用いている。
テーブル1から以下のように本実施の形態の効果を見ることができる。まず、F値において、本実施の形態の手法による値は他の全手法より大幅な改善を示していることが分かる。FirstStepClassifierと比較してもそのF値の向上幅は大きい。これは、主として再現率の向上(0.155→0.826)によるものと思われる。
これら手法により得られた再現率−適合率カーブを図26に示す。このグラフは、各手法のSVMにより得られたスコアのしきい値を変化させて描いたものである。なお、BaselineKNPについては、出力された結果にもとづく再現率と精度の1点をグラフ上にプロットしてある。
図26から、この第2の実施の形態に係る項共有判別器は、FirstStepClassifier及びBaselineKBNによる判別結果に比して、広い範囲の再現率の値に対して適合率が5〜10%程度高くなっていることが分かる。またこの項共有判別器は、同じ再現率では、BaselineKNP に対して20%程度高い適合率を示していることが分かる。
以上のようにこの実施の形態によれば、第1実施の形態で用いた項共有判別器283よりも精度の高い項共有判別器をほぼ自動的な処理で得ることができる。このような項共有判別器を用いれば、アノテーションの検証だけではなく、第1の実施の形態で説明した項共有知識の収集も高い精度で効率よく行うことができる。
なお、上記第2の実施の形態は照応・省略解析に本発明に係る装置で学習した項共有判別器を適用した例を示した。この結果、照応・省略解析の精度が実用レベルまで向上することが考えられる。その効果が特に発揮されるのは、日本語から英語への自動翻訳である。日本語のテキストには、主語等が省略されていることが多い。一方、英語は主語の存在を要求する。したがって、日本語から英語への翻訳にあたっては、日本語で省略されている主語を高い精度で特定する必要がある。したがって、照応・省略解析の精度が向上することで日本語から英語への自動翻訳の精度も高くなることが期待できる。
さらに、他の例としては、質問応答システムがある。質問応答システムでは、質問に対する回答を探す先の文書が自然言語で書かれたテキストであることが多い。仮にテキストに照応・省略関係が含まれる場合には、正しく回答を発見することができない可能性がある。そこで、予めテキストに対して照応・省略解析を適用し、照応関係の特定及び省略の補完を適切に行っておけば、これまで回答できなかった質問に対しても適切な回答をテキスト中から発見することが可能になる。
さらに、一般的な言語知識を大量のテキストから収集する際にも、予め照応関係の特定及び省略の補完が適切に行えていれば、1文からの知識獲得のカバレッジが向上するため、結果的に獲得できる知識の規模の拡大に貢献できると考えられる。
<第3の実施の形態>
上記実施の形態では、項共有知識は照応・省略解析前、及び照応・解析処理中において使用されている。しかし、本発明はそのような実施の形態には限定されない。例えば、項共有知識を用いない照応・省略解析の出力に対して項共有知識を適用して解析結果を検証・修正する事もできる。図23にそのようなアノテーション処理を実現するプログラムの機能を概略ブロック図形式で示す。
図23を参照して、項共有知識を用いて照応・省略解析結果を検証・修正するプログラムは、照応・省略解析器の出力911に対して、項共有知識910を利用して指し先の検証を行い、必要なら修正を行った出力912を生成するためのものである。例えば、照応・省略解析器の出力911において、「示した」の主格の省略の指し先が「村山富市首相」であるとアノテーション913され、「述べ」の主格の省略の指し先が誤って「離党者」になっていたものとする(アノテーション914)。この場合、項共有関係の検証・修正をするプログラムは、両者が項を共有していない結果になっているので、まず2つの表現「示す」と「述べる」とを含む項共有知識を検索する。そのような項共有知識910があったとすると、項共有関係の検証・検証をするプログラムは、その項共有知識910と出力911とを照合915する。具体的には、プログラムは、照応・省略解析器の出力911から「示した」と「述べ」とが主格を共有するか否かを判別するための特徴量を抽出し、SVMからなる項共有判別器により判別する。この項共有判別器は図6〜図8に示したものと同様のものである。共有しないという結果であればプログラムはそれ以上何もしない。共有するという結果であれば、プログラムは、処理対象の述語対のうち、照応・省略解析器の出力中で指し先の信頼性としてアノテーションに付されていたスコアのうち、値の低い方の指し先を、値の高い方の指し先によって書き換える。この結果、例えば、図23に示すアノテーション914のスコアが低ければ、その指し先を、アノテーション913の指し先と同じ「村山富市首相」に変更した新たなアノテーション916がされ正しく出力912される。ただし、このプログラムによる項共有判別の信頼性(スコア)が低い場合にはそのような書き換えをしないようにしてもよい。なお、述語対のうち一方の指し先が省略されていないときには、省略としてアノテーションされた方の指し先を、省略されていない方の指し先によって書き換えればよい。
図24を参照して、このアノテーションを実行するプログラムは、照応・省略解析器の出力のうち、照応・省略を含む述語対であって、項を共有しない述語対の各々について以下の処理922を実行するステップ920を含む。
処理922は、処理対象の述語対のアノテーションによる指し先が一致するか否かを判定し、判定の結果が肯定である場合にはこの述語対に対する処理を終了するステップ924と、ステップ924の判定が否定である場合に、処理中の述語対と合致する項共有知識を検索し、判定が否定のときには現在の述語対に対する処理を終了するステップ926と、ステップ926の判定が肯定であるときに、2つのアノテーションのうち、照応・省略解析器によるスコアの低い方の指し先をスコアの高い方の指し先に書き換えてこの述語対に対する処理を終了するステップ928とを含む。アノテーションのスコアは、照応・省略解析を実現している機械学習モデルによるスコア(SVMの場合には分離平面からデータポイントまでの距離)を用いればよい。
こうした処理を行うことにより、事後的に照応・解析処理の結果を項共有知識を用いて検証及び修正できる。
<第4の実施の形態>
〈概略〉
上記第1〜第3の実施の形態では、未アノテートテキストアーカイブ302内のアノテーションを用いて項共有判別器306、307及び308の学習をし、これらを用いて項共有知識の獲得を行っている。項共有判別器306、307及び308はいずれも、各述語対が個別に項を共有しているか否かを判別するものである。しかし、本発明はそのような実施の形態には限定されない。項を共有する述語が3個以上ある場合も考えられる。そうした場合、各述語対について個別に項共有知識を適用して照応解析を行おうとすると、結果が矛盾したり、判定の条件が複雑になったりすることがある。そこで、互いに項を共有する述語群については、まとめて判定できるようにすることが望ましい。第4の実施の形態では、これを項共有述語ネットワークという概念を導入して解決する。
項共有述語ネットワークとは、互いに項を共有する述語群を頂点とし、各頂点をエッジで結んで得られるネットワークのことをいう。項を共有する述語群の集まりを表すので、項共有グループと呼んでも良い。このようなネットワークを考えた場合、頂点をなす1つの述語についてその項(例えば主語)の値が分かれば、同じネットワークの他の頂点にその項の値を伝搬させることにより、同じネットワークに属する各述語群の項の値が定められる。同じネットワーク内で複数の述語についてその項の値があり得るときは、それらの中で最も信頼度の高い値を各述語群の項の値として定めれば良い。
本実施の形態では、第1の実施の形態で使用した項共有判別器306、307及び308とは異なり、項共有関係にある述語の出現するパターンに応じた3種類の項共有判別器を使用する。パターンには3種類がある。DEP型、ADJ型、及びPNP型である。以下、これらについて順番に説明する。
―DEP型―
DEP型は、典型的な項共有パターンであり、述語対が互いに係り受け関係において依存関係にある場合を言う。例えば「トムはインフルエンザになったので、(φiが)薬を飲んだ。」という文における2つの述語「なった」と「飲んだ」との関係である。なぜなら、これらは同じ主語(トム、φi)を持っているからである。この係り受け関係を図27(A)に示す。このような項共有関係をDEP型と呼ぶ。
─ADJ型─
一文中で隣接する位置にある述語は互いに同じ主語を持つ傾向にあるが、それらが常にDEP型の項共有関係にあるとは限らない。これは2つの述語の間での長距離の係り受け関係が存在するからである。例えば、「飛行機は無事に着陸したが誘導路に入った後に操縦桿が効かなくなった。」という文において、2つの述語「着陸した」と「入った」は同じ主語を持つが、直接の係り受け関係を持たない。この関係を図27(B)に示す。このような項共有関係を明らかにするために、2つの述語が表層構造において互いに隣接して出現するケースもADJ型に分類する。
─PNP型─
日本語の述語対の場合、述語が統語関係上である名詞(又は名詞句)に依存し、その名詞(又は名詞句)が統語関係上で別の述語に依存しているという場合がしばしばである。例えば「知事は(φiが)条項を撤回する方針を明らかにした。」という文における「撤回する」と「明らかにした」のような場合である。この関係を図27(C)に示す。このような型の項共有関係をPNP型と呼ぶ。
本実施の形態では、このような項共有関係(特に主語)の検出をバイナリ識別問題としてとらえ、2つの述語が同じ主語を共有するか否かを判定する判別器を構成する。ここでは、教師付学習を用いて判別器の学習を行う。そのために、例えば図4に示すようなアノテート済のテキストアーカイブから、各型の学習データを別々に抽出する。アノテーションとしては、最低限、(ゼロ)代名詞関係、coreference関係、及び主語がアノテートされていればよい。抽出された2つの述語がcoreference関係及び(ゼロ)代名詞関係を共有している場合にはラベルを正、そうでいない場合にはラベルを負とし、それぞれ所定の素性とともに学習データを作成する。本実施の形態では判別器にSVMlightを用いる。各関係の学習に用いる素性を次のテーブル2に示す。
〈構成〉
図28(A)に、本実施の形態においてDEP型項共有判別器1014の学習を行うDEP型項共有判別器学習装置1012のブロック図を、図28(B)にADJ型項共有判別器1054の学習を行うADJ型項共有判別器学習装置1052のブロック図を、図28(C)にPNP型項共有判別器1094の学習を行うPNP型項共有判別器学習装置1092のブロック図を、それぞれ示す。DEP型項共有判別器学習装置1012は例えば学習データDB162から手作業で抽出し、DEP型テキスト記憶部1010に記憶されたDEP型の項共有関係学習のためのデータを用いてDEP型項共有判別器1014の学習を行う。ADJ型項共有判別器学習装置1052は同様に、ADJ型テキスト記憶部1050に記憶されたADJ型の項共有関係の学習データを用いてADJ型項共有判別器1054の学習を行う。PNP型項共有判別器学習装置1092は、PNP型テキスト記憶部1090に記憶されたPNP型の項共有の学習データを用いてPNP型項共有判別器1094の学習を行う。DEP型テキスト記憶部1010、ADJ型テキスト記憶部1050、及びPNP型テキスト記憶部1090はいずれも、各型の項共有関係の判別器の学習をするために準備された、正例にマークされた文例と負例にマークされた文例とを記憶している。
DEP型項共有判別器学習装置1012、ADJ型項共有判別器学習装置1052、及びPNP型項共有判別器学習装置1092は、いずれも図6に示す第1の実施の形態の項共有判別器学習装置282と同様の構成を持つ。例えばDEP型項共有判別器学習装置1012は、DEP型テキスト記憶部1010に格納された正例の文例と負例の文例とを読出し、テーブル2の上段に示すような素性を抽出し、正例、又は負例のラベルを付けた学習データを生成し出力する学習データ生成部1030と、この学習データを記憶する学習データ記憶部1032と、学習データ記憶部1032に記憶された学習データを用いてDEP型項共有判別器1014のトレーニングを行う学習処理部1034とを含む。ADJ型項共有判別器学習装置1052は同様に、学習データ生成部1070、学習データ記憶部1072、及び学習処理部1074を含む。PNP型項共有判別器学習装置1092は、学習データ生成部1110、学習データ記憶部1112、及び学習処理部1114を含む。
ここで、学習データ生成部1030及び学習データ生成部1070は、テーブル2の上段に示した素性を抽出して学習データを生成する。一方、学習データ生成部1110は、テーブル2の上段に示した素性に加え、下段に加えた素性も抽出して学習データを生成する。
図29を参照して、この実施の形態に係る項共有知識収集装置1130は、上に説明したようにして学習が行われたDEP型項共有判別器1014、ADJ型項共有判別器1054、及びPNP型項共有判別器1094等を用いて、未アノテートテキストアーカイブ302から項共有知識を抽出するものであって、第1の実施の形態に係る項共有知識収集装置301(図8参照)に替えて使用できる。
項共有知識収集装置1130は、未アノテートテキストアーカイブ302から全ての述語対を抽出する述語対抽出部303と、述語対抽出部303により抽出された各述語対に対し、それらが出現する文中での係り受け関係と依存関係とによってDEP型、ADJ型、及びPNP型のいずれかに分類し、DEP型項共有判別器1014、ADJ型項共有判別器1054、及びPNP型項共有判別器1094にそれぞれ与えて各型の共有関係があるか否かを判定させるための振り分け部1140と、DEP型項共有判別器1014、ADJ型項共有判別器1054、及びPNP型項共有判別器1094による項共有関係の判別結果を表す情報を、その判定の基になった述語対とともに項共有知識として記憶する項共有知識記憶部310とを含む。
一方、図30を参照して、この実施の形態では、図4に示す照応・省略解析器252内の先行詞特定器170に替えて、図30に示す先行詞特定器1150を用いる。先行詞特定器1150は、照応・省略解析の対象となる入力250から全ての述語を抽出する述語抽出部1162と、述語抽出部1162により抽出された述語を記憶する述語DB1164と、述語DB1164に記憶された述語の集合から全ての述語対を抽出する述語対抽出部1166と、述語対抽出部1166により抽出された各述語対に対し、図28に示すようなDEP型項共有判別器1014、ADJ型項共有判別器1054、PNP型項共有判別器1094及びその他の項共有判別器にそれぞれ与えてその述語対に項共有関係があるか否かを判定し、項共有関係がある場合にはその述語対の両者に同じラベルを付すように述語DB1164を更新するための項共有判定部1168とを含む。
項共有判定部1168は、処理対象の述語対の間に項共有関係がある場合、以下のように述語DB1164を更新する。項共有関係が見出された述語対の双方にまだラベルが付されていない場合、新たな述語グループを作成し、それを示すラベルを述語対の双方に付す。したがって、項共有判定部1168は、今までに作成されたグループのラベルを記憶するラベルDB(図示せず)を持つ必要がある。述語対の一方のみにラベルが付されており、他方にはラベルが付されていない場合、ラベルが付されていない方に、他方のラベルを付す。述語対の双方にラベルが付されている場合には、いずれか一方に統一するとともに、他方のラベルを有している他の述語のラベルを全てこの一方のラベルに統一する。他方のラベルはラベルDBから削除する。こうすることで、項共有関係を持つ述語対がラベルによりグルーピングされる。このように、順次、ラベルを統一していくと、複数の述語対について共有された項を個別に決定した後にさらにそれらを統一する場合と比較して処理が容易になるという効果がある。
先行詞特定器1150はさらに、項共有判定部1168による述語DB1164の更新が完了した後に、述語DB1164から同じラベルが付された項共有述語グループをグループ別に検索する項共有述語グループ検索部1170と、項共有述語グループ検索部1170により検索された各グループに属する述語により項共有述語ネットワークを生成する項共有述語ネットワーク生成部1172とを含む。
ここで、項共有述語ネットワークとは、同じ項を共有する複数の述語からなるグループのことを言う。項共有述語ネットワークのデータ形式は、あるグループに属する述語から、その同じグループに属する述語を全てたどれるようなものであればよい。例えばリスト形式でもよいし、グループの述語を要素とする配列からなる配列でもよい。
先行詞特定器1150はさらに、項共有述語ネットワーク生成部1172が生成した項共有述語ネットワークを記憶する項共有述語ネットワークDB1174と、項共有述語ネットワーク生成部1172によって、他の述語と項を共有しないと判定された述語を記憶する非項共有述語記憶部1180と、項共有述語ネットワークDB1174に記憶された項共有述語ネットワークの各々について、その項共有述語ネットワークに属する述語が共有する項を特定する共有項判定部1176と、項共有述語ネットワークDB1174を参照することにより、共有項判定部1176により判定された項の値を同じ項共有述語ネットワークに属する全ての述語に伝搬させ、それらの述語に対応する項にその値を代入(埋め込む)する共有項伝搬部1178と、非項共有述語記憶部1180に記憶された述語、及び、共有項判定部1176によって、共有する項(主語)の値が特定できないと判定された項共有述語ネットワークに属する述語の各々について、既存の項判定方式によって各述語の項(主語)を特定する処理を補充的に行う補充判定部1182と、共有項伝搬部1178による処理結果と補充判定部1182による処理結果とを用いて、入力250内の省略箇所にその項を先行詞として埋め込むことで入力250を更新して出力254を出力する先行詞更新部1184とを含む。
補充判定部1182としては、既存のものが利用できる。例えば非特許文献1に記載された手法、又は参考文献2に記載された手法を使用できる。また、従来技術の説明に述べたように、形態素解析、構文・係り受け解析等が出力する情報に加え、例えば「食べる」の目的語に「食べ物」に相当する表現が含まれるという特性をまとめた辞書などを利用した自動解析技術を適用することもできる。
図31に、図30に示す先行詞特定器1150をコンピュータにより実現するためのコンピュータプログラムのフローチャートを示す。図31を参照して、このプログラムは、入力250(図30を参照)に対する形態素解析、構文解析、及び係り受け解析を行うステップ1190と、解析結果を使用して入力250内の全ての述語を抽出し、空のラベルとともに述語DB1164に各述語を登録するステップ1192と、全ての述語対について項共有関係があるか否かを判定して、判定結果を用いて各述語にその属する項共有述語グループのラベルを付す処理を行うステップ1194と、ステップ1194の結果を用いて項共有述語ネットワークを生成するステップ1196と、各項共有述語ネットワークごとに共有されている項の値を判定するステップ1198と、ステップ1198までの処理で決定できなかった省略箇所を従来の手法等を用いて判定するステップ1200とを含む。
ステップ1194の処理は、全ての述語対についてステップ1212及び1214の処理を繰返し実行するステップ1210を含む。
ステップ1212では、処理対象の述語対が項を共有しているか否かを判定する。述語対が項を共有している場合には、ステップ1214で、その述語対を構成する述語に、項を共有していることを示すラベルを付してそれぞれ述語DBを更新する。ここでのラベルは、項を共有する述語からなるグループを表す。述語対の双方ともラベルが付されていなければ、新たなラベルを付して両者を更新するとともに、そのラベルをラベルDBに記憶する。述語対の一方のみにラベルが付されている場合、述語対の他方に同じラベルを付して述語DBを更新する。述語対の双方にラベルが付されている場合、いずれかの方法で一方のラベルを採用してラベルを統一する。ここで採用されなかったラベルはラベルDBから削除する。
ステップ1196は、述語DBからラベルをキーにしてソートして述語を検索するステップ1230と、検索された述語に対し、ラベルごとにステップ1234の処理を実行するステップ1232とを含む。ステップ1232では、同一のラベルが付されている述語を用いて項共有述語ネットワークを構築する。
ステップ1198は、ステップ1196で生成された項共有述語ネットワークごとに、ステップ1252,1254及び1256の処理を実行するステップ1250を含む。
ステップ1252では、処理対象の項共有述語ネットワーク内の各述語について、共有項の値を判定することを試みる。ここでは、1つのみ項の値が決定できればその値を採用する。2つ以上の項の値の候補がある場合には、何らかの基準でいずれか1つに決定する。例えば判定の信頼度が最も高いものを採用してもよい。項の値の候補が見つからない場合にはそのまま次の処理に進む。続くステップ1254では、ステップ1252により、項の値が決定できたか否かを判定する。項の値が決定できていれば、その値を同じ項共有述語ネットワーク内の全ての述語に伝搬させる。項の値が決定できなければ、そのまま次の処理に進む。
ステップ1200では、ステップ1198までの処理で共有項の値が決定できなかった箇所の値を、他の手法(例えば従来の手法)で判定する。
〈動作〉
この項共有述語ネットワークの動作には大きく分けて3つのフェーズが存在する。第1のフェーズは図28に示すDEP型項共有判別器1014、ADJ型項共有判別器1054、及びPNP型項共有判別器1094の学習である。第2のフェーズは、図29に示す、DEP型項共有判別器1014、ADJ型項共有判別器1054、及びPNP型項共有判別器1094を用いた項共有知識収集装置1130による項共有知識の収集である。第3のフェーズは、図30に示す先行詞特定器1150により、入力250の内で省略された箇所の先行詞を項共有知識又は項共有判別器を用いて特定する処理である。
図28に示すDEP型項共有判別器1014、ADJ型項共有判別器1054、及びPNP型項共有判別器1094の学習は、互いによく似ている。例えばDEP型項共有判別器1014の学習は以下のように行われる。最初に、DEP型の項共有判別器のための述語対を含むテキストからなる学習データが人手で収集され、DEP型テキスト記憶部1010に記憶される。この際、学習データには、述語対がDEP型の項共有関係を持つか否かを示すラベルが付される。学習データ生成部1030は、これらのテキストから、テーブル2に示すような素性とラベルとからなる学習データを生成し、学習データ記憶部1032に蓄積する。学習処理部1034は、学習データ記憶部1032に蓄積された学習データを用いて、SVMからなるDEP型項共有判別器1014の学習を行う。学習後のDEP型項共有判別器1014は、2つの述語対を含むテキストが与えられると、それらが項共有関係を持つか否かを判定できる。
ADJ型項共有判別器学習装置1052によるADJ型項共有判別器1054の学習、及びPNP型項共有判別器学習装置1092によるPNP型項共有判別器1094の学習も同様である。
図29を参照して、項共有知識収集装置1130による項共有知識の収集は以下のように行われる。述語対抽出部303が未アノテートテキストアーカイブ302からあらゆる述語対を抽出する。振り分け部1140は、抽出された各述語対を含むテキストの構文解析及び係り受け解析を行い、各語の間の依存関係に基づいて、述語対をDEP型、ADJ型、及びPNP型のいずれかに分類し、それぞれDEP型項共有判別器1014、ADJ型項共有判別器1054、及びPNP型項共有判別器1094のいずれかに与えて項共有関係の有無を判定させる。DEP型項共有判別器1014、ADJ型項共有判別器1054、PNP型項共有判別器1094はそれぞれ、与えられた述語対がDEP型、ADJ型、及びPNP型か否かを判定し、項共有関係にある場合にはその項を特定し、後に項共有関係が判定可能となるような情報(係り受け関係、単語、品詞他の情報)を項共有知識記憶部310に出力する。項共有知識記憶部310は、この情報を項共有知識として蓄積する。
一方、入力文に対して照応・省略解析を行う場合には、先行詞特定器1150は以下のように動作する。述語抽出部1162は入力250から全ての述語を抽出し、それぞれ述語DB1164に空のラベルとともに登録する(図31のステップ1190、1192)。
述語抽出部1162による述語の抽出が完了すると、述語対抽出部1166が述語DB1164に含まれる全ての述語対を抽出し、項共有判定部1168に与える(図31のステップ1210)。項共有判定部1168が、各述語対について、項共有関係にあるか否かを判定し(図31、ステップ1212)、項共有関係にあればその述語対を構成する述語の双方に、項を共有することを示すラベルを付して述語DB1164を更新する。この際のラベルの付し方については前述したとおりで、同じ項を共有する述語については同じラベルが付されるようにする。
このようにして全ての述語対について項共有関係の判定が終わると、項共有述語グループ検索部1170が述語DB1164からラベル別に述語を検索する(図31、ステップ1230)。項共有述語ネットワーク生成部1172が、ラベルごとに、同一ラベルを持つ述語で項共有ネットワークを生成し(図31,ステップ1232,1234)、項共有述語ネットワークDB1174に登録する。項共有述語ネットワークに属さない述語、他の述語対とグループを形成しない述語対等は非項共有述語記憶部1180に出力される。
共有項判定部1176が、項共有述語ネットワークごとに、共有項の値を決定することを試みる(図31,ステップ1250,1252)。値が決定すれば(ステップ1254でYES)、共有項伝搬部1178が同じ項共有ネットワークに属する全ての述語に対して、決定された項の値を伝搬させる(ステップ1256)。一方、補充判定部1182は、非項共有述語記憶部1180に記憶されていた述語、及び共有項判定部1176により共有項の値が決定できなかった項共有述語グループに属する述語の項の値を従来の手法等何らかの手法により決定する。
先行詞更新部1184は、共有項伝搬部1178による伝搬結果と、補充判定部1182による判定結果とを統合して、出力254を生成して出力する。
以上のように、本実施の形態によれば、文型により適切な項共有判定器を構成し、入力に含まれる述語のうち、項を共有するものを特定する。さらに、同じ項を共有する述語により項共有述語ネットワークを生成し、何らかの手法で項共有述語ネットワークの述語で共有されている語を決定し、同じ項共有述語ネットワークに属する項の全てにその値を伝搬させる。したがって、入力250に複数の省略箇所があったときに、それらが指す値が同じ場合に、効率よく省略箇所の特定を行うことができる。
例えば、「政府は、被災地に50人を派遣することを計画し、その準備作業を進めている。」というテキストについて考える。このテキストには、「派遣する」「計画する」「進める」の3つの述語が出現している。項共有関係判別器を適用することで、例えば、「派遣する」と「計画する」、「計画する」と「進める」の2つの述語対に対して項を共有することが特定できたとする。その場合、これらに関係する3つの述語(「派遣する」「計画する」「進める」)は同じ項を持つ述語と考えられる。したがってこれら3つの述語をグルーピングできる。このグループに属する3つの述語のいずれかに対して項が特定できた場合に、このグループに属する他の述語にそれを伝搬させる処理を行うことで省略解析が実現できる。例えば、「進める」に対して主語「政府」が同定できた場合に、その主語を「派遣する」と「計画する」の主語の位置に補完することで主語省略の補完を達成する。
このような項共有に着目した省略解析技術で解析できない問題には既存の省略解析の技術を適用することで頑健に省略解析が行える。
[参考文献1]
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 the 52nd Annual Meeting of the Association for Computational Linguistics, pages 987-997.
[参考文献2]
Ryohei Sasano and Sadao Kurohashi. 2011. A discriminative approach to Japanese zero anaphora resolution with large-scale lexicalized case frames. In Proceedings of 5th International Joint Conference on Natural Language Processing, pages 758-766.
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
[コンピュータによる実現]
上記実施の形態に係る学習データ生成補助装置204、検出器学習装置222、照応・省略解析器252、DEP型項共有判別器学習装置1012、ADJ型項共有判別器学習装置1052、PNP型項共有判別器学習装置1092、項共有知識収集装置1130、及び先行詞特定器1150は、いずれも、コンピュータハードウェアと、そのコンピュータハードウェア上で実行されるコンピュータプログラムとにより実現できる。図32はこのコンピュータシステム1330の外観を示し、図33はコンピュータシステム1330の内部構成を示す。
図32を参照して、このコンピュータシステム1330は、メモリポート1352及びDVD(Digital Versatile Disc)ドライブ1350を有するコンピュータ1340と、いずれもコンピュータ1340に接続されたキーボード1346、マウス1348、及びモニタ1342とを含む。
図33を参照して、コンピュータ1340は、メモリポート1352及びDVDドライブ1350に加えて、CPU(中央処理装置)1356と、CPU1356、メモリポート1352及びDVDドライブ1350に接続されたバス1366と、ブートプログラム等を記憶する読出専用メモリ(ROM)1358と、バス1366に接続され、プログラム命令、システムプログラム及び作業データ等を記憶するランダムアクセスメモリ(RAM)1360と、ハードディスク1354を含む。コンピュータシステム1330はさらに、他端末との通信を可能とするネットワーク1368への接続を提供するネットワークインターフェイス(I/F)1344を含む。
コンピュータシステム1330を上記した実施の形態に係る学習データ生成補助装置204の各機能部として機能させるためのコンピュータプログラムは、DVDドライブ1350又はメモリポート1352に装着されるDVD1362又はリムーバブルメモリ1364に記憶され、さらにハードディスク1354に転送される。又は、プログラムはネットワーク1368を通じてコンピュータ1340に送信されハードディスク1354に記憶されてもよい。プログラムは実行の際にRAM1360にロードされる。DVD1362から、リムーバブルメモリ1364から又はネットワーク1368を介して、直接にRAM1360にプログラムをロードしてもよい。
このプログラムは、コンピュータ1340を、上記実施の形態に係る学習データ生成補助装置204の各機能部として機能させるための複数の命令からなる命令列を含む。コンピュータ1340にこの動作を行わせるのに必要な基本的機能のいくつかはコンピュータ1340上で動作するオペレーティングシステム若しくはサードパーティのプログラム又はコンピュータ1340にインストールされる、ダイナミックリンク可能な各種プログラミングツールキット又はプログラムライブラリにより提供される。したがって、このプログラム自体はこの実施の形態のシステム及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令の内、所望の結果が得られるように制御されたやり方で適切な機能又はプログラミングツールキット又はプログラムライブラリ内の適切なプログラムを実行時に動的に呼出すことにより、上記したシステムとしての機能を実現する命令のみを含んでいればよい。もちろん、プログラムのみで必要な機能を全て提供してもよい。