(58)【調査した分野】(Int.Cl.,DB名)
情報の抽出および複数の情報間の関係の抽出の少なくとも一方の実行に用いるモデルを学習するための第1訓練事例と、前記第1訓練事例を学習に用いる根拠を示す手掛かり情報と、の入力を受け付ける受付部と、
前記第1訓練事例と前記手掛かり情報とを用いて、学習に用いる訓練事例を生成するための教師パターンを生成するパターン生成部と、
前記教師パターンにより第2訓練事例を生成するデータ生成部と、
前記第2訓練事例と、前記第2訓練事例を生成した前記教師パターンの生成に用いられた前記手掛かり情報とを出力する出力制御部と、
を備える情報抽出支援装置。
【発明を実施するための形態】
【0008】
以下に添付図面を参照して、この発明にかかる情報抽出支援装置の好適な実施形態を詳細に説明する。
【0009】
上記のように、従来の教師あり学習では、機械学習の訓練事例を大量に準備する必要があるため、作業負荷が増大するという問題がある。そこで、本実施形態では、作業者自身が教示する訓練事例の数は少なく留め、教示された訓練事例に基づいて教示ルール(教師パターン)を獲得し、他のデータに適用する。これにより、作業者が教示するコストを下げる。すなわち、本実施形態では、従来のように訓練事例に対し個別にラベル付けするのでなく、「概ね正しい」ラベル付け手法に基づく教示方法(弱教師)に基づいて、訓練事例を生成する。これにより、ラベル付けの作業の手間を減らす。
【0010】
弱教師の教示パターン(以下、弱教師パターンと記載)を獲得する方式を用いる場合、入力された訓練事例のみからでは、作業者がどのような知識および手掛かりに基づいてその訓練事例を登録したかが判定し難い。そこで、訓練事例が正例または負例であることを示す判断基準となった手掛かりを併せて入力するなどの手段により、訓練事例からの学習効果を高めることが望ましい。さらに、生成された弱教師パターンを作業者が簡単に把握できるとは限らないため、作業者自身が記述または理解せずに弱教師パターンを生成および更新できることが望ましい。
【0011】
そこで、本実施形態は、属性または属性間の関係についての訓練事例と、属性または属性間の関係が適切か否かを判断するための手掛かりに基づき生成された、属性または属性間の関係をラベル付けする弱教師ルールに基づきラベル付けを行う。また本実施形態は、根拠となる訓練事例および手掛かりと併せて既存の訓練事例およびラベル付け結果との差分を提示する。これにより、作業の手間を減らしながら高精度な弱教師のラベル付けを行うことが可能となる。
【0012】
図1は、本実施形態にかかる情報抽出支援装置100の構成の一例を示すブロック図である。
図1に示すように、情報抽出支援装置100は、受付部101と、パターン生成部102と、データ生成部103と、出力制御部104と、学習部105と、抽出部106と、記憶部121と、を備えている。
【0013】
受付部101は、情報抽出支援装置100による各種処理で用いる各種情報の入力を受け付ける。例えば受付部101は、分析対象となる1以上の対象データ、対象データに対する1以上の訓練事例(第1訓練事例)、および、手掛かり表現の入力を受け付ける。
【0014】
以降では、主に電子的な文書を対象データ(対象文書)とした場合について記載するが、画像や音声など他のデータを対象データとしてもよい。受付部101は、作業者から入力された対象文書を取得してもよいし、外部のサーバなどから収集してもよい。対象文書とは、例えば、Webページおよびインターネット上にアップロードされている、ニュース記事、論文、および、特許明細書などの自然文で表現されたテキストデータである。対象文書はこれに限られず、データから属性を抽出できればどのような文書であってもよい。属性は、作業者が抽出したい所望の情報の種類を示し、例えば、商品名、価格、企業名、材料名、および、特性値などが挙げられる。これらの複数の属性間の関係をさらに属性として扱ってもよい。
【0015】
訓練事例とは、例えば、対象文書においてどの単語や単語列が抽出対象となるかを示す、抽出対象の具体例を示す情報である。また訓練事例は、情報抽出処理に用いるモデルを学習するために用いられる。例えば訓練事例は、「文書Dの、N番目の文に出現する“○○”という単語は商品名である」などの情報を示す。訓練事例の具体的な入力方法の例は後述する。
【0016】
手掛かり表現とは、上述の訓練事例がなぜ所望の属性または関係であるかを判断する根拠となった情報(手掛かり情報)である。手掛かり表現は、訓練事例を学習に用いる根拠を示す情報、または、訓練事例が教示対象となった根拠を示す情報である、と言い換えることができる。例えば手掛かり表現は、「文書Dの、N番目の文に出現する“新商品○○”という文字列において、文字列“新商品”は文字列“○○”が商品名であることを判断するための手掛かり表現である」などの情報を示す。手掛かり表現の具体的な入力方法の例は後述する。
【0017】
受付部101は、さらに、後述するデータ生成部103により生成された訓練事例が正しいか否か示す判定結果の入力を受け付ける。
【0018】
パターン生成部102は、受け付けられた訓練事例(第1訓練事例)と、手掛かり情報とを用いて教師パターンを生成する。教師パターンは、情報抽出処理に用いるモデルの学習に用いる訓練事例を生成するためのパターンである。例えばパターン生成部102は、対象文書、訓練事例、および、手掛かり表現に基づき、その訓練事例と同じ属性(個々の属性または複数の属性間の関係)の訓練事例の候補を出力できる弱教師パターンを生成する。弱教師パターンは、例えば「“○○”という単語は商品名とみなす」、および、「“円”という単語の直前に出現する整数は価格とみなす」などのパターンマッチルールを示す。教師パターンは、学習に用いる訓練事例が満たす条件を定める情報であると言い換えることができる。教師パターンは、正例となる訓練事例を生成するパターンであってもよいし、負例となる訓練事例を生成するパターンであってもよい。
【0019】
パターン生成部102は、教師パターンによって生成された訓練事例に対して入力された判定結果に基づいて、教師パターンを更新する。教師パターンの生成処理および更新処理の詳細は後述する。
【0020】
データ生成部103は、パターン生成部102により生成された教師パターンにより訓練事例(第2訓練事例)を生成する。またデータ生成部103は、パターン生成部102により更新された教師パターンにより訓練事例(第3訓練事例)を生成する。例えばデータ生成部103は、パターン生成部102で生成された弱教師パターンを文書に対して適用し、新たな訓練事例(訓練事例の候補)を生成するとともに、生成した訓練事例の各候補に対して正例または負例のラベルを付与する。以降では、弱教師パターンなどの、作業者による教示以外の手段で得られた属性およびラベル付与結果を含む、訓練事例の候補を事例候補と呼ぶ。なお、弱教師パターンを適用する文書は、作業者が訓練事例を付与した文書(対象文書)と異なってもよい。
【0021】
出力制御部104は、情報抽出支援装置100による各種処理で用いる各種情報の出力を制御する。例えば出力制御部104は、表示装置(ディスプレイなど)に対する情報の出力(表示)を制御する。表示装置は、情報抽出支援装置100の内部および外部のいずれに備えられてもよい。情報の出力方法は、表示装置に表示する方法に限られるものではない。
【0022】
例えば出力制御部104は、データ生成部103により生成された事例候補と、この事例候補を生成した教師パターンの生成に用いられた手掛かり表現とを対応づけて表示装置などに出力する。これにより、作業者は、事例候補が正しいか否かをより適切に判断可能となる。
【0023】
出力制御部104は、以前に生成された事例候補と、新たに生成された事例候補との間の差分を出力してもよい。例えばパターン生成部102により教師パターンが更新された場合、出力制御部104は、更新前の教師パターンで生成された事例候補に対する、更新後の教師パターンで生成された事例候補の差分を示す情報を出力してもよい。差分を示す情報は、例えば、事例候補が新たに生成されたことを示す情報、および、対応する事例候補に対するラベルが変更されたことを示す情報などである。
【0024】
学習部105は、訓練事例を用いて情報抽出処理に用いるモデルを学習する。情報抽出処理に用いるモデルは、どのようなモデルであってもよい。例えば、教師あり学習により学習されるモデルを適用することができる。教師あり学習とは、事前に与えられた訓練事例(例題である入力データ、および、例題である入力データに対応する正解の出力の組み合わせ)を元に、未知の入力に対する出力を推定するモデルの構築方式である。典型的な手法としては、ロジスティック回帰、ニューラルネットワーク、サポートベクトルマシン(Support Vector Machine:SVM)、決定木、条件付き確率場(Conditional Random Field:CRF)、および、マルコフロジックネットワーク(Markov Logic Network:MLN)、並びに、それらの組み合わせなどが挙げられる。
【0025】
機械学習方式としては既存のどのような方式を用いてもよい。教師データの入力方法としては、事例候補自体を入力する方式、弱教師パターンを適用して教師データを生成する方式、および、それらの組み合わせのいずれを用いてもよい。また、機械学習方式に対し手掛かり表現を新たに追加できるのであれば、本実施形態で登録された手掛かり表現の有無を学習用の特徴として登録する方式を用いてもよい。
【0026】
関係を抽出する場合、複数の属性の抽出、および、複数の属性間の関係の抽出の2段階がある。本実施形態では、属性、および、属性間の関係、の両者対して、弱教師パターンおよび事例候補が出力されているので、学習のために抽出処理それぞれを新たに作り込むことなく、出力された情報を利用することが可能となる。
【0027】
抽出部106は、学習されたモデルを用いて、文書から情報を抽出する。例えば抽出部106は、指定された文書に対してモデルを適用し、個々の属性、および、複数の属性完の関係を抽出する。出力制御部104は、抽出部106による抽出結果をさらに表示装置などに出力してもよい。
【0028】
記憶部121は、情報抽出支援装置100による各種処理で用いる各種情報を記憶する。例えば記憶部121は、出力制御部104により得られた結果を記憶する。記憶部121は、HDD(Hard Disk Drive)、光ディスク、メモリカード、RAM(Random Access Memory)などの一般的に利用されているあらゆる記憶媒体により構成することができる。
【0029】
なお、受付部101、パターン生成部102、データ生成部103、出力制御部104、学習部105、および、抽出部106は、例えば、CPU(Central Processing Unit)などの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、IC(Integrated Circuit)などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【0030】
次に、このように構成された本実施形態にかかる情報抽出支援装置100による情報抽出支援処理について
図2を用いて説明する。
図2は、本実施形態における情報抽出支援処理の一例を示すフローチャートである。
【0031】
最初に作業者は、どのような属性や属性間の関係を抽出するかを示すスキーマ(フォーマット)を定義する。受付部101は、指定されたスキーマの定義を受け付ける(ステップS101)。例えば、属性「商品名」と属性「価格」の関係を抽出する場合、2つの属性の名前、および、「属性“価格”の値は整数である」といったデータ形式がスキーマとして定義される。
【0032】
図3は、スキーマを作成するスキーマ作成画面の一例を示す図である。
図3に示すように、スキーマ作成画面300は、入力フィールド301、302、303と、追加ボタン304と、登録ボタン305と、を含む。入力フィールド301は、文書の識別情報(DocID)を入力するためのフィールドである。入力フィールド302は、属性の名前を入力するためのフィールドである。入力フィールド303は、属性のタイプを入力するためのフィールドである。追加ボタン304が押下されると、新たな列(属性)を追加するためのフィールドが画面上に追加される。登録ボタン305が押下されると、入力されたスキーマがデータベース等に登録される。テーブル310は、登録されたスキーマの一例を示す。なおスキーマの表現形式は、テーブル形式に限られるものではない。
【0033】
図2に戻り、受付部101は、処理対象とする文書または文書の一部の選択を受け付ける(ステップS102)。受付部101は、例えば一覧表示された文書から、作業者により選択された文書を受け付ける。文書を選択する前に、文書検索などにより所望の文書を探す処理が含まれてもよい。
【0034】
図4は、対象文書を検索するための文書検索画面の一例を示す図である。
図4は、キーワード検索により対象文書を検索する場合の文書検索画面の例である。
図4に示すように、文書検索画面400は、入力フィールド401と、検索ボタン402と、表示ボタン403と、を含む。入力フィールド401は、検索キーワードを入力するためのフィールドである。検索ボタン402が押下されると、入力フィールド401に入力された文字列を検索キーワードとして文書が検索される。対象文書は、例えば、インターネット、および、所定のサーバなどを検索対象として検索される。検索された文書のうちいずれかの文書が選択され、表示ボタン403が押下されると、選択された文書が表示される。作業者は、表示された文書に対して、さらに訓練事例などの選択を行うことができる。
【0035】
図2に戻り、受付部101は、選択された文書または文書の一部に対して、作業者により選択された訓練事例および手掛かり表現の選択を受け付ける(ステップS103)。パターン生成部102は、受け付けられた訓練事例(属性、属性間の関係など)、および、手掛かり表現に基づいて弱教師パターンを生成する(ステップS104)。データ生成部103は、生成された弱教師パターンを文書に適用することにより、新たな教師データ(事例候補)を生成する(ステップS105)。
【0036】
出力制御部104は、生成された事例候補(属性、ラベルなど)を出力する(ステップS106)。事例候補の生成が2回目以降の場合、出力制御部104は、前回生成された事例候補と、今回生成された事例候補とを比較し、両者の差分を示す情報を出力してもよい。
【0037】
作業者は、例えば表示装置に表示された事例候補を確認し、各事例候補に対して正誤の判定結果を入力する。受付部101は、このようにして入力された判定結果を受け付ける(ステップS107)。パターン生成部102は、さらに、教師パターンを再作成するか否かを判断する(ステップS108)。例えばパターン生成部102は、誤っていることが入力された事例候補が存在する場合に、判定結果に応じて修正した事例候補を新たな訓練事例とみなして、弱教師パターンを再度生成する。パターン生成部102は、例えば、正例として生成された事例候補が誤りであることが判定結果として入力された場合、この事例候補を負例とするように修正し、弱教師パターンの再生成を実行する。教師パターンを再作成するか否かの判断方法はこれに限られるものではない。例えば、作業者によって再作成が指定された場合に、教師パターンの再作成を実行してもよい。パターン生成部102は、誤っていることが入力された事例候補を削除して弱教師パターンを再作成してもよい。
【0038】
教師パターンを再作成すると判断された場合(ステップS108:Yes)、ステップS104に戻り処理が繰り返される。教師パターンを再作成すると判断されなかった場合(ステップS108:No)、受付部101は、訓練事例を再登録するか否かを判断する(ステップS109)。
【0039】
例えば受付部101は、作業者により訓練事例の再登録が指定された場合に、訓練事例を再登録すると判断する。なお作業者は、例えば、表示された訓練事例(事例候補)の精度が十分であるかを確認し、精度が十分でない場合に、訓練事例の再登録を指定する。
【0040】
訓練事例を再登録する場合(ステップS109:Yes)、ステップS102に戻り処理が繰り返される。訓練事例を再登録しない場合(ステップS109:No)、学習部105は、生成された訓練事例(教師データ)による学習を実行する(ステップS110)。抽出部106は、学習されたモデルを用いて、指定された文書から属性を抽出する(ステップS111)。出力制御部104は、抽出された属性を表示装置などに出力してもよい。
【0041】
一般にモデルの学習には時間がかかるため、学習の手前で手早く大量かつ精度のよい教師データを生成することが、学習や情報抽出の効率化や性能向上に結び付く。本実施形態によれば、ステップS102からステップS109の処理によって作業者の作業を支援し、大量かつ精度のよい教師データを生成することを可能となる。
【0042】
以下、上記各処理の具体例について画面例などを用いてさらに説明する。
【0043】
図5は、訓練事例および手掛かり表現の登録方式の例を示す図である。
図5は、ステップS103などで作業者が訓練事例などを登録(選択)するための事例登録画面500の例を示す。事例登録画面500に表示された文書内の所望の文字列501が選択されると、この文字列501の属性等を選択するためのフィールド502が表示される。フィールド502では、例えば「材料」および「移動度」などの属性、または、手掛かり表現であることを指定するための「ヒント」が選択できる。例えば
図3で説明したスキーマ作成画面で作成されたスキーマに含まれる属性が、フィールド502に選択可能に表示される。
【0044】
確定ボタン503が押下されると、現在選択されている文字列に対する属性等の指定が確定される。削除ボタン504が押下されると、例えば選択された文字列に対して選択された属性が削除される。キャンセルボタン505が押下されると、処理が中断され、例えば前の画面に戻る。確定ボタン506が押下されると、それまでに登録(選択)された訓練事例が確定され、記憶部121などに記憶される。
【0045】
作業者は、このようにして文字列501を選択するとともに、文字列501の属性が「材料」であることを選択する。文字列と属性の対応付けが可能であれば他の入力方式を用いてもよい。
【0046】
図5の右上の事例登録画面500は、文字列「GaN」が材料名であることを作業者が登録した状態を示す。同様に、
図5の左下の事例登録画面500は、材料名「GaN」に対応する属性「移動度」の値が「100」であること、並びに、これらの属性が訓練事例であると判断する根拠となった文字列が「Mobility」および「cm
2/Vs」であることを登録した状態を示す。
【0047】
手掛かり表現は、
図5に示すように作業者自身が選択または入力してもよい。
図4のように文書を検索するキーワード(「Mobility」)が入力されている場合、このキーワードを手掛かり表現として登録してもよい。
【0048】
図6および
図7は、登録された訓練事例に基づき、パターン生成部102により生成される弱教師パターンの例を示す図である。
図6は、属性「移動度」を示す値を抽出する弱教師パターンの生成例を示す。訓練事例(a1)から(a5)は、例えば
図5の事例登録画面500によって登録された訓練事例を示す。なおこの例では、すべての訓練事例の直後に「cm
2/Vs」という文字列が記載され、かつ当該文字列が手掛かり表現として登録されているものとする。
【0049】
教師パターン(b1)から(b8)は、訓練事例(a1)から(a5)に基づいて生成された、属性「移動度」の事例候補を生成する弱教師パターンである。上述の通り、文字列の直後に出現する「cm
2/Vs」という文字列が手掛かり表現として登録されている。このため、弱教師パターン(b1)から(b8)は、すべて「直後に文字列“cm
2/Vs”が記載される」という条件を含むものとする。
【0050】
パターン生成部102は、弱教師パターン(b1)から(b5)のように、登録された訓練事例と同じ文字列が出現する場合のみ適合するパターンを生成する他、弱教師パターン(b6)から(b8)のように、2以上の訓練事例の共通点、および、2以上の訓練事例の一般化により弱教師パターンを生成してもよい。
【0051】
例えば、訓練事例(a1)と(a2)には、「整数である」、「数字3文字である」、および、「数字+00と表記される」などの共通点がある。このため、パターン生成部102は、これらを弱教師パターンとして生成する。
【0052】
このような方式で弱教師パターンを生成すると、弱教師パターンが大量に生成される可能性がある。このため、弱教師パターンを生成する基準として「既存のパターンと同じパターンは生成しない」、「出力される事例候補が既存のパターンと所定の数または比率以上重複するパターンは生成しない」、および、「出力される事例候補数が所定の閾値より多い、または少ないパターンは生成しない」などの制限を設けてもよい。パターンの生成方式や一般化に関しては、例えば非特許文献1などの既存の任意の手法を用いることができる。
【0053】
図7は、属性「材料」と属性「移動度」の関係を属性として抽出する弱教師パターンの生成例を示す。パターンIDは、生成された弱教師パターンを識別する情報である。
【0054】
図7の例では、属性「材料」と属性「移動度」の間に記載される単語、および、属性間に記載される単語数のように、両者がどのような関係を有するかを示す情報が、弱教師パターンとして生成される。これらの情報は、
図6の場合と同様に、「名詞が含まれる」、および、「属性間の単語数は5以内」のように弱教師パターンを一般化する方式、並びに、複数パターンの共通点を新たな弱教師パターンとして導出する方式などにより生成してもよい。また、「同じ文の中に文字列“cm
2/Vs”が出現する」など手掛かり表現を含む弱教師パターンが生成されてもよい。
【0055】
なお、弱教師パターンの生成処理は、作業者が明示的に生成を指示したとき、所定回数訓練事例を登録したとき、および、所定時間が経過するごと、など任意のタイミングで実行してよい。
【0056】
その後、データ生成部103は、生成された弱教師パターンを用いて事例候補を生成する。なお
図6では、一般化により生成された弱教師パターンを用いてシステム(情報抽出支援装置100)により出力された事例候補の出力例、および、出力例に対する人間(作業者)の判定結果の例も示されている。例えば
図6では、属性「移動度」に関して弱教師パターンが適用されて得られる文字列の例が示されている。弱教師パターン(b6)が適用可能な例として「50」、弱教師パターン(b7)が適用可能な例として「9.7」、並びに、弱教師パターン(b8)が適用可能な例として「0.5×10
4」および「1 was 100」などが出力され得る。また
図6では、「0.5×10
4」については正しい(○)と判定され、「1 was 100」については誤っていると判定された例が示されている。
【0057】
なお、事例候補は、属性に関する事例候補のみ生成する方式、および、属性および属性間の関係の両方が事例候補として生成可能な場合のみ生成する方式、などのいずれの方式で生成してもよい。
【0058】
図8および
図9は、生成された事例候補および付与されたラベルなどを含む出力結果の例を示す図である。
【0059】
図8は、属性「移動度」に関する弱教師パターンの適用結果を示す一覧画面800の一例を示す。出力制御部104は、DocID、移動度、根拠、変化、情報抽出支援装置100により判定結果(自動)、および、作業者による判定結果(手動)などを含む一覧画面800を表示する。
図8の一覧画面800では、すべて弱教師パターンにより出力された結果であるため、「自動」列には「正例」であることが記載されている。一部は作業者が登録した訓練事例でもあるため、「手動」列にも「正例」であることが記載されている。新たに追加された事例候補に関しては「変化」列に「新規」であることが記載されている。
【0060】
これらの出力に対し、必要に応じ作業者は正誤を判定する。例えば、出力「1 was 100」の正誤を判定する場合「判定」ボタンを押すことで正誤を判定可能となる。判定画面810は、「判定」ボタンが押下された場合に表示される画面の一例である。
【0061】
図8に示すように、出力制御部104は、事例候補「1 was 100」とともに、事例候補が生成された根拠となる弱教師パターンを含む判定画面810を表示する。作業者は、判定画面810の「○」ボタンまたは「×」ボタンを押下することで、事例候補が正しいか否かの半径結果を指定することができる。キャンセルボタンが押下された場合は、例えば前の画面(一覧画面800)が再度表示される。
【0062】
出力制御部104は、判定が困難であることを指定するための情報(「不明」ボタンなど)を含む判定画面810を表示してもよい。この情報が指定された場合、出力制御部104は、表示中の訓練事例に対して、手掛かり情報が同一または類似する他の訓練事例を出力してもよい。これにより、表示中の訓練事例が正しいか否かの判定を補助する情報を出力可能となる。
【0063】
一覧画面800または判定画面810で「表示」ボタンが押されると、表示画面820が表示される。表示画面820は、該当する弱教師パターンを生成する元となった訓練事例を示すための画面である。表示画面820により、作業者は、正誤を判定する以外にどのような問題があるか、および、どのような訓練事例を追加で登録すべきかなどを、理解および判断することができるようになる。
【0064】
図9は、属性「材料」および属性「移動度」の間の関係に関するパターンも含む弱教師パターンの適用結果を示す。この場合の弱教師パターンは、例えば、「材料の前に“Mobility”が出現」(材料要素に関するパターン)、「移動度の後に“cm
2/Vs”が出現」(移動度要素に関するパターン)、および、「材料名と移動度との間の単語数は1」(関係を示すパターン)などである。出力結果の判定方式、および、根拠の確認方法は
図8と同様である。
【0065】
なお、同じ属性や関係に対し、正例および負例を含む複数の弱教師パターンが適合する場合もあり得る。このような場合は、多数決、または、弱教師パターンの重要度(重み、優先度)などに応じて、生成された事例候補を正例とするか負例とするかを決定することができる。弱教師パターンの重要度は、適合する訓練事例の数、訓練事例の正誤の数、および、訓練事例の正誤の比率などに応じて決定することができる。例えば、パターン生成部102は、決定した重要度を対応づけた弱教師パターンを生成する。そしてデータ生成部103は、例えば弱教師パターンに対応づけられた重要度に応じて、事例候補を生成する弱教師パターンを変更する。データ生成部103は、重要度が大きい弱教師パターンを優先して適用して事例候補を生成してもよい。データ生成部103は、適合しうる複数の弱教師パターンを用いて複数の事例候補を生成し、重要度が大きい順に所定数の事例候補を出力するように構成してもよい。
【0066】
図10および
図11は、出力結果の誤りを修正するための画面の一例を示す図である。
図10および
図11は、
図5と同様の事例登録画面500を用いて事例候補を修正する場合の例を示す。
図10で修正すべき移動度の値「300」が選択され、削除メニュー1001が指定されると、移動度の値「300」が削除される。
図11は、削除後に表示される事例登録画面500の例を示す。作業者は、正しい移動度を示す値1101(「1.2×10
3」)を選択し、この値が移動度であることを指定する。このようにして新たな訓練事例を生成することができる。
【0067】
なお上述の
図9の例では、下から2つ目の判定結果(自動)が、正例から負例に変更されている。これは、例えば以下のように出力結果の誤りが修正された結果であることを意味する。
(P1)データ生成部103は、「材料名と移動度との間の単語数は1」の弱教師パターンを適用し、「Mobility of InGaZnO on 300 K is 9.7 cm
2/Vs」という文から、「300」が移動度を示す事例候補を生成する。
(P2)
図10のような修正画面で、「300」ではなく「9.7」が移動度を示すことが指定される。
(P3)パターン生成部102は、修正された判定結果を参照し、弱教師パターンを「移動度の後に“K”が来る場合は負例」に更新する。
【0068】
図8の判定画面810のような根拠や前後の記述を詳細に確認しなくても、生成された事例候補の値だけを参照して正しいか誤りかを判断できる場合もある。例えば、抽出対象が特性値のような数字であれば、整数、実数、および、負数などのうち、いずれが許容され得るかは、事例候補だけを参照してある程度判断することができる。
【0069】
図12から
図14は、事例候補の値だけで判定するための判定画面の一例を示す図である。判定画面では、個々の出力例(事例候補)を表示してもよいし、弱教師パターンごとに出力例を抽出して表示してもよい。
【0070】
図12は、生成された事例候補の値だけ表示する単純な例である。例えば「1 was 100」は値としては適切でないため前後の文脈によらず「×」と判定することができる。この場合、同じ弱教師パターンにより生成された「1.2×10
2」と「1 was 100」が新たに区別できるようになる。
【0071】
図13は、適用された弱教師パターンごとに値をグルーピングした例を示す図である。この例の場合、すべての事例候補を一度に判定することも可能である。また、弱教師パターンに重要度を設ける場合、重要度の値を直接変化させることも可能となる。
【0072】
図14は、文書に記載があるか否かによらず、弱教師パターンに当てはまる値を生成して提示する例である。すなわちデータ生成部103は、弱教師パターンが定める条件を満たす訓練事例を、文書に記載されているか否かによらずに生成してもよい。これにより、例えば弱教師パターンに適合する事例候補が少ない場合でも、弱教師パターンが正しいか否か、および、汎用性を持つか否かなどを評価しやすくなる。
図14は、
図13と同様に弱教師パターンごとにグルーピングして表示する例であるが、
図12と同様に、事例候補を個別に表示する方式としてもよい。
【0073】
弱教師パターンによっては、条件を満たす事例候補が同じにならない場合がある。例えば、属性間の関係を抽出する弱教師パターンでは、属性の組み合わせのうち一部が異なる事例候補が生成される場合がある。
図15および
図16は、このような場合の出力結果の出力例を示す図である。
【0074】
例えば、同じ材料名「GaN」に対して、属性「移動度」の値は測定条件によって変わり得る。
図15は、このように属性の組み合わせの一部(移動度)が異なる事例候補を出力する画面1500の例を示す。作業者は、チェックボックス1501により、一部が異なる出力結果を許容するか否かを指定できる。なお
図15の「文ID」は文書内の各文を識別する情報である。このように文単位で許容するかを指定してもよいし、文単位で指定してもよい。
【0075】
一方、
図16は、夫婦関係を抽出する弱教師パターンにより生成された事例候補を出力する画面1600の例を示す。例えば重婚が認められない国に関しては、一部異なる組み合わせは許容されない。作業者は、チェックボックス1601により、一部が異なる出力結果を許容しないことを指定できる。この場合、評価状況として、登録された訓練事例と一部組み合わせが異なる出力との間には齟齬(矛盾)があることを出力してもよい。
【0076】
属性を抽出する際、表記揺れや同義語による違いを吸収することが望ましい場合がある。
図17および
図18は、このような場合に同義語を登録可能とする画面の例を示す図である。
図17は、
図16の状況が表記揺れに起因する場合の例である。「バラク・オバマ」と「バラック・オバマ」を同一人物として扱いたい場合などのために、同義語を登録する機能が備えられてもよい。例えば出力制御部104は、「同義語の登録」メニュー1701が指定された場合に、
図18に示すような同義語登録画面1800を表示してもよい。出力制御部104は、例えば、単語の編集距離が一定数以内の単語、および、関係の対となる単語が共通する単語を同義語の候補として同義語登録画面1800に表示する。同一視可能な単語が選択され、確定ボタン1801が押下されると、選択された単語が同義語として記憶部121などに登録される。登録された同義語は、弱教師パターン、および、後段の機械学習処理に反映することで、抽出性能の向上への寄与が期待される。材料についても同義語を登録することは有効である。例えば、「In−Ga−Zn−O」、「InGaZnO」、「IGZO」、および、「GIZO」を同義語として登録可能としてもよい。
【0077】
同じ文から抽出される関係の組み合わせが変化する場合も考えられる。
図19は、このような場合の事例候補の例を示す図である。
図19は、既存の事例候補が「B社」と「C社」の組み合わせであったが、新たな事例候補が「A社」と「C社」の組み合わせに変化した例を示す。
図19では、「合弁」の文字列1901がポジティブな手掛かりであることが指定され弱教師パターンが生成された後に、「対抗」の文字列1902がネガティブな手掛かりであることが指定され弱教師パターンが生成されている。
図8および
図9などの出力結果を示す画面などで、組み合わせが変化したことを表示することも可能となる。
【0078】
出力制御部104は、生成された事例候補、生成された弱教師パターン、および、手掛かり表現が十分であるか否かを作業者が判断するための判断情報をさらに出力してもよい。判断情報は、例えば、事例候補の文書全体に対するカバー率(何%の文書から事例候補が抽出されたか)、弱教師パターンの数、手掛かり表現の数、事例候補の正例および負例の数、並びに、正例と負例の比率など、後段の機械学習処理を実行するために十分な要件を備えているかを示す情報を利用することができる。
【0079】
図20は、判断情報の表示例を示す図である。
図20は、上記のような判断情報の集計結果とともに、次にどのような作業をすべきかの方針を表示する例である。この例では、正例に対し負例が約10倍多いため、正例の訓練事例をさらに増やすことが次の作業として提案されている。このように、作業者が次にどのような作業を実施すればよいか分かりやすくすることも可能となる。
【0080】
以上のような処理により得られた事例候補、弱教師パターン、または、手掛かり表現を用いることで、機械学習、特に教師あり学習に基づく情報抽出が容易となる。
【0081】
機械学習により得られた結果を、
図8および
図9などと同様の方式で表示し、確認可能としてもよい。
図21は、機械学習により学習された結果を示すスコア(学習スコア)も併せて表示する画面2100の例を示す図である。
【0082】
この例では、作業者により判定されていない例について、候補が正しいとみなせる確率をスコアとして表示しているものとする。例えば移動度の値「24」は、弱教師パターンでは「正例」と判断されているが、学習結果の確率は0.15と低いスコアとなっている。作業者がこの事例候補に対して、弱教師パターンが誤っていることを示す判定結果を入力した場合は、弱教師パターンに対するフィードバックを与えることになる。作業者が、学習結果が誤っていることを示す判定結果を入力した場合は、学習部105に対する学習事例(訓練事例)が追加される。これにより、学習部105に対するフィードバックが与えられることになる。このように、弱教師パターン、および、機械学習の学習器(学習部105)の双方に適切なフィードバックが与えられ、改善が進められる。
【0083】
以上説明したとおり、本実施形態によれば、作業者が複雑なルールを記述することなく訓練事例や判断根拠を登録することで高精度な弱教師パターンを容易に生成できるようになる。本実施形態の情報抽出支援装置100を利用することで、情報抽出作業の継続的な評価および改良を効率的に進めることが可能となる。
【0084】
次に、本実施形態にかかる情報抽出支援装置のハードウェア構成について
図22を用いて説明する。
図22は、本実施形態にかかる情報抽出支援装置のハードウェア構成例を示す説明図である。
【0085】
本実施形態にかかる情報抽出支援装置は、CPU(Central Processing Unit)51などの制御装置と、ROM(Read Only Memory)52やRAM(Random Access Memory)53などの記憶装置と、ネットワークに接続して通信を行う通信I/F54と、各部を接続するバス61を備えている。
【0086】
本実施形態にかかる情報抽出支援装置で実行されるプログラムは、ROM52等に予め組み込まれて提供される。
【0087】
本実施形態にかかる情報抽出支援装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
【0088】
さらに、本実施形態にかかる情報抽出支援装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施形態にかかる情報抽出支援装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【0089】
本実施形態にかかる情報抽出支援装置で実行されるプログラムは、コンピュータを上述した情報抽出支援装置の各部として機能させうる。このコンピュータは、CPU51がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
【0090】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。