(57)【要約】【課題】  文書群を利用して、クエリと類似の用語、クエリと類似の文、クエリと類似の関係性を抽出すること。【解決手段】  文書中の文を構文解析する構文解析処理部と、前記構文解析により得られる構文木から部分構文木およびその構成要素のインデックスを作成するインデックス作成部とを少なくとも有する前処理装置と、検索用語、検索文、及び検索条件の入力を受け付ける入力装置と、当該入力された検索文、検索用語を含む文もしくは検索条件を満たす文の部分構文木/構成要素のプロファイルを計算する手段と、それらの部分構文木/構成要素のプロファイルに類似のプロファイルを有する文、用語群、用語ペア群を計算する手段と、前記計算結果を提示する手段を少なくとも具備する検索システムを提供する。【選択図】  図１
2009199280.tif 000002
【特許請求の範囲】
【請求項１】
文書情報に基づき当該文書における文の構文解析を実行する構文解析処理部と前記構文解析により得られる構文木から部分構文木およびその構成要素のインデックスを作成するインデックス作成部とを少なくとも有する前処理装置と、
検索用語、検索文、及び検索条件の情報の入力を受け付ける入力装置と、当該入力された検索文、検索用語を含む文もしくは検索条件を満たす文情報に基づき、入力された文の部分構文木/構成要素のプロファイルを計算する手段と、それらの部分構文木/構成要素のプロファイルに類似のプロファイルを有する文、用語群、用語ペア群を計算する手段と、前記計算結果を提示する手段を少なくとも具備することを特徴とする検索システム。
【請求項２】
請求項１に記載の検索システムにおいて、
前記インデックス作成部は、前記構文解析により得られた構文木および部分構文木を隣接行列、もしくは、隣接リスト、隣接リストの構成要素、もしくは着目するノードからエッジの数が2-5以内の部分グラフをその出現頻度と共にインデックスとして作成し、文ごと、もしくは、用語ごとにそれらのインデックスを作成することを特徴とする検索システム。
【請求項３】
請求項１または２に記載の検索システムにおいて、
前記構文解析した後に、冠詞、形容詞、副詞などが省略された構文木を更に作成し、当該冠詞、形容詞、副詞などが省略された構文木により類似性を計算することを特徴とする検索システム。
【請求項４】
請求項１から３のいずれかに記載の検索システムにおいて、
前記インデックス作成部が前記インデックスを作成するときに、前記構文木中の用語に意味クラスを付与し、構文木、及び、部分構文木を構成する用語の代わりに意味クラスに置き換え、当該置き換えられた意味クラスに基づいて、類似度を計算することを特徴とする検索システム。
【請求項５】
請求項１から４記載のいずれかに記載の検索システムにおいて、
NP-VP-NP, NP-VP-PP-NP, N-PP-N, N-PP-N-PP, NP-VPなどの構造を有する部分構文木と概部分構文木を構成する用語との関係性を利用することにより、類似文、類似用語及び類似な用語間関係を検索することを特徴とする検索システム。
【請求項６】
請求項１から５のいずれかに記載の検索システムにおいて、
検索語、検索語ペアを含む文に現れる構文木、もしくは部分グラフの出現頻度と、全文書中のそれらの頻度を用いて、重み付けを行い、当該重み付けに基づいて類似性を検索することを特徴とする検索システム。
【請求項７】
請求項１から６のいずれかに記載の検索システムにおいて、
単語の並びのn-gramのプロファイルも部分構文木のプロファイルと同様に検索で用いることを特徴とする検索システム。
【請求項８】
請求項１から７のいずれかに記載の検索システムにおいて、
検索結果の各々について正解か不正解かを判別し、その結果を類似性検索にフィードバックすることにより重みを最適化することを特徴とする検索システム。
【請求項９】
請求項１から８のいずれかに記載の検索システムにおいて、
検索文、検索用語、検索用語ペアを、逐次登録していくことにより、類似文、類似用語、及び、類似な用語間関係の抽出精度を、逐次的に高めていくことを特徴とする検索システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文献中からクエリに類似した文、クエリに類似な用語、クエリに類似な関係性を検索・提示するシステム及びその方法に関するものである。
【背景技術】
【０００２】
文書中からの関係性抽出などの情報抽出は、多くの場合、正解セットからパターンを取り出した後、類似のパターンを持つ用語のペアを取り出すか（非特許文献１）、構文解析を用いてSubjectとObjectの関係を取り出すか（非特許文献２）、ブートストラップを用いて少数のパターンと正解セットから正解となる用語ペアとパターンを増加させていく方法などが取られる（非特許文献３）。また、正解セットと不正解セットがある場合は、文中に出現する用語を用いて機械学習で判別する方法や、部分構文木の出現頻度を相互情報量などを使って解析し、部分構文木に特徴度を付与して出力する方法などもある。（特許文献３）。また、類似文の検索、類似な用語としては、文中に共起する用語を用いた方法や、局所文脈やcollocationの類似性を用いる方法がある。
【０００３】
【非特許文献１】A Koike, Y Kobayashi, T Takagi - Genome Research, 13, 1231-1243, 2003
【非特許文献２】A Yakushiji, Y Tateisi, Y Miyao, J Tsujii, PSB, 2001.
【非特許文献３】H. Yu and E. Agichtein. Bioinformatics, i340-i349, Suppl 1. 2003.
【特許文献１】特許2001-31198号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
文書中からの２項間の関係性抽出などの情報抽出は、多くの場合、正解セットからパターン(例えば、遺伝子間の相互作用ならばNP-activates-NP, NP-phosphorylate-NPなど)を取り出した後、類似のパターンを持つ用語のペアを取り出すか（非特許文献１）、構文解析を用いてSubjectとObjectの関係を取り出すか（非特許文献２）、ブートストラップを用いて少数のパターンと正解セットから正解となる用語ペアとパターンを増加させていく方法などが取られる（非特許文献３）。また、正解セットと不正解セットがある場合は、文中に出現する用語を用いて機械学習で判別する方法や、部分構文木の出現頻度を相互情報量などを使って解析し、部分構文木に特徴度を付与して出力する方法などもある。（特許文献1）。また、類似文の検索、類似な用語としては、文中に共起する用語を用いた方法や、局所文脈やcollocationの類似性を用いる方法がある。
【０００５】
従来の関係性抽出などの情報抽出の方法では、パターンを利用する場合、正解セットからパターンを取り出すことに手間がかかるだけでなく、パターン化できるほど簡単な文の構造をとっているとは限らない。また、パターンは与えられた用語間の関係性によって異なるため、目的に応じて適宜見つける必要があり汎用性が低い。一方、構文解析を行ってSubjectとObjectの関係を取り出す方法においては、抽出したい項目がSubjectとObjectの関係に必ずしもなっていないこと、更に、その関係であっても述語によっては目的の関係ではないことがある。ブートストラップを用いて少数のパターンと正解セットから正解となる用語ペアとパターンを増加させていく方法においては、用意する正解セットが少なくてよい利点はあるが、前述のようにパターン化できるほど簡単な文構造の取りこぼしが生じる。また、類似文の検索、類似な用語に関しては、上述のように文中に共起する用語を用いた方法や、文脈の類似性を用いる方法があるが、共起情報や、局所文脈やcollocation情報だけでは情報量が少なく、類似性が低いものも多く列挙される欠点がある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明では、文書中の全文を予め構文解析を行い、構文木を作るとともに、その部分構文木もしくはその構成要素を出現頻度と共に、文章ごと、もしくは用語ごとにインデックス化し、部分構文木のプロファイルもしくはその構成要素のプロファイルを利用することにより、類似な文、検索用語、用語間の関係性を検索することができる。即ち、予め文書を構成する文全ての構文解析を行い、部分構文木を列挙し、文ごと、もしくは用語ごとに、文中に現れる部分構文木もしくは部分構文木構成要素とその出現頻度にインデックスを張っておく。出現頻度の代わりに部分構文木/概構成要素の重み付けでも構わない。検索文を入力した場合は、検索文を構文解析し、部分構文木に分解し、部分構文木/概構成要素を重みつきでデータベースに検索にいき、部分構文木の得点和が大きいものを類似文とする。部分構文木の重みは、文書検索における単語の重みと同様にTF*IDF、Lnu-term weightingのmeasure（非特許文献４）、okapi（非特許文献５）などを利用することが可能である。また類似な用語の検索としては、予め全ての用語について、概用語を含む部分構文木/概構成要素を出現頻度とともにインデックスとして用語ごとに作成しておき、クエリとなる用語の部分構文木/概構成要素の出現プロファイルと類似のプロファイルを持つ用語を検索、提示する。この場合も、前述と同様に部分構文木に重み付けを行ってもよい。また、類似の用語間の関係性を取り出す場合は、用語ごとに部分構文木、及び、概用語出現位置をインデックスしたものを用い、複数の２つの用語のペアについて、それらのペアの用語が含まれる部分構文木のプロファイルを取り出した後、それらのプロファイルをクエリとして部分構文木群を検索・抽出し、これらに高頻度で現れる用語のペアを取り出し候補とする。候補ペアについて、再び、用語ごとの部分構文木を用いて部分構文木プロファイルを抽出し、このプロファイルがクエリのプロファイルと類似な用語ペアを類似な関係性とみなす。用語ごとの部分構文木インデックスではなく、特定の部分構文木とその構成要素を使って上述と同様に類似な関係性を持つ用語ペアを抽出してもよい。
【０００７】
本発明の検索システムは以下の構成とする。文書中の文を構文解析する前処理手段と、解析した構文木から部分構文木およびその構成要素のインデックスを作成する前処理手段と、検索用語、検索文、及び検索条件を入力する手段と、入力された検索文、検索用語を含む文もしくは検索条件を満たす文の部分構文木/構成要素のプロファイルを計算する手段と、それらの部分構文木/構成要素のプロファイルに類似のプロファイルを有する文、用語群、用語ペア群を計算する手段、及び、前記計算結果を提示する手段を具備することを特徴とする。構文木、部分構文木にインデックスを張る際、構文木を隣接行列、もしくは、隣接リストとその構成要素、もしくは着目するノードからエッジの数が2-5以内の部分グラフをその出現頻度と共にインデックスとして作成してもよい。また、構文解析した後、冠詞、形容詞、副詞などを省略した簡潔な構文木にすることにより、類似性を簡潔に計算できるようにしてもよい。更に、用語に意味クラスを付与することにより、構文木、及び、部分構文木において、構成する用語を意味クラスに置き換えて、類似度を計算してもよい。また、構文木、部分構文木の重み付けについて、検索結果の各々に正解か不正解かを判別し、その結果をフィードバックすることにより構文木、部分木構文木の重みを最適化することを特徴とする検索システムであってもよい。
【０００８】
上記部分構文木を作成する際は、網羅的に作成するだけでなく、文全体の構造を考慮し、複雑な文においても対応する主格、動詞、目的格などのみを取り出し、部分構文木を構築してもよい。
関係性が記述されている文を、逐次登録していくことにより、類似の関係性を持つ用語ペアの抽出精度を、逐次的に高めるシステムになっていてもよい。
【０００９】
また、構文木は、格構造として表示し、インデックスを張ってもよい。
【００１０】
【非特許文献４】Singhal et al. Proc. 19th ACM SIGIR, 21-29, 1996.
【非特許文献５】Ronbertson and Walker， The Eighth Text REtrieval Conference （TREC-8）， 2002.
【発明の効果】
【００１１】
本発明によると、構文木、部分構文木、文脈の類似度や係り受け情報のプロファイルを用いることにより、類似文、類似用語、類似な関係性をより正確に検索・抽出することができる。類似文の検索という点においては、文中に出現する用語だけでなく文の構造も考慮することができること、また部分構文木またはその構成要素の重み付けにより、些細な単語の違いは吸収できることから、精度高く類似文を検索することが可能である。また、類似の用語を検索するという点においては、構文木、部分構文木のプロファイリングを利用することによって、局所文脈の類似性だけでなく、ACTOR-OBJECTの関係も考慮して用語の類似性を計算することが可能である。類似の関係性の抽出という点においては、正解セットが蓄積するにしたがって構文木、部分構文木プロファイルの信頼度が増すため、より精度が増すことと、また、目的とする正解セットごとに関係性のパターンを抽出する手間が省け、かつ不正解例を準備する必要もない。更には、プロファイルを利用することにより、特定のパターンを利用したときの、偽陽性、偽陰性は軽減できる。また、正解セットを順次蓄積できるので、時間の経過と共に、類似関係性の抽出精度が高くなるという利点もある。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の検索システムの実施例を詳細に説明するが本発明は以下に限定されない。
【実施例１】
【００１３】
図１は、本発明の構文木を利用した検索システムのシステム構成を示す図である。図２は、本システムでの計算処理の流れ図である。図１の装置では、予め、入力により与えられる文書ないし文献１２、記憶手段に予め格納されている文書、もしくはインターネット等の通信回線１３を通じてWeb情報等から外部文書１１の入力を入力手段により受け付け、構文解析処理部１５は当該入力された文書の情報に基づいて構文解析を行う（図２−ステップ１）。そして、部分構文木の列挙、及び、文ごともしくは用語ごとの部分構文木とその出現頻度のインデックスを作成するインデックス作成部１６において、構文木から部分構文木およびその構成要素を抽出し、予め出現頻度とともにインデックスを作成する（図２−ステップ３）。その際、必要に応じて冠詞、形容詞、副詞などを削除すると共に、名詞に意味クラスを付与する、もしくは、名詞のタグを意味クラスタグで置き換える（図２−ステップ２）。ステップ３までが前処理となる。
【００１４】
検索処理は検索装置２により実行される。類似文検索の時には（図２−４１）、入力装置４により入力される検索文の構文解析を行い構文木を生成し（図２−２１、ステップ４）、部分構文木を列挙するとともに、列挙した部分構文木の隣接行列もしくは隣接リスト and/or その構成要素に必要に応じて然るべき重みをつけたものをクエリとし、ステップ３で用意されたインデックスに対して検索を掛け、部分構文木/構成要素のプロファイルが類似した文を検索する（図２―２２、ステップ５）。
【００１５】
類似用語の検索の場合は、入力された用語に対して、用語ごとの部分構文木/構成要素インデックスを利用して、クエリ用語の部分構文木のプロファイルと類似のプロファイルを持つ用語を検索する。（図２−２３、ステップ４）
類似な用語間の関係性の検索の場合は、用語ごとの部分構文木インデックスを利用し、用語ペアを含む部分構文木/構成要素を取り出し（図２−２４、ステップ４）、必要に応じて重みをつけた構文部分木/構成要素のプロファイルをクエリとして、用語ごとの構文部分木/構成要素プロファイルが類似した類似な用語間のペアを取り出し候補とする。候補ペアを再度クエリとして、構文部分木/構成要素インデックスを利用しプロファイルを取り出す。各用語ペアのプロファイルとクエリとなる用語ペアのプロファイルを比較し、類似性が高い用語ペアを類似な用語関係性を持つ用語ペアとしてリストアップする（図２−２５、ステップ５）。当該検索により検索された結果は、表示装置３に表示される。
【００１６】
構文解析結果の例は、図３、図４、図５に示す。図３−(a)、図４−(a)、図５−(a)が解析結果そのものとなり、図３−(b)、(c)、図４−(b)、(c)、(d)、及び、図５−(b)、(c)が部分構文木となる。ここでは、品詞として疾患名は”N”の代わりに”DIS”を、遺伝子名称も”N”の代わりに”GENE“をタグとして使用している。このように、特定の意味クラスの名詞は、意味クラスごとに異なるタグをつけてもよい。図３−(d)は、構文解析結果から冠詞と副詞を除いた構文木の例である。助動詞がある場合は、助動詞を取り除いてもよい。
【００１７】
部分構文木は、複文の場合の主節、従属節の各部分構文木、主語が同じ場合は、主語と述部のペアを含む部分構文木、重文の場合は、独立節の部分構文木、及び、これらの部分構文木が含む名詞句、及び、それらを構成する名詞句についてそれぞれ構築する。図４は従属節が名詞節となる重文の例である。(c)が従属節の部分構文木となり(a),(b),(d)が名詞句の部分構文木である。図５は、単文ではあるが動詞句を２つ持つ文である。この場合は、主部と述語が１対１のペアとなる部分構文木(b),(c)を構築する。
【００１８】
図６は図３の部分構文木のインデックスを行うためのテーブルの例である。(a)が用語とID、及び、意味クラスとの関係、(b)が用語IDと同義語の関係、(c)各用語がどの文章で、どの頻度で現れているか、(d)どの文にどの部分構文木が出現しているか、(e)用語がどの文のどの部分構文木のどの位置に出現しているか、(f) 部分構文木のIDと部分構文木の隣接リスト、(g)用語をIDに置き換えた隣接リストである。構文解析をした後に名詞を用語IDに変換している例となっているが、構文解析をする前に用語IDに変えておいてもよい。(h)は部分構文木間の類似度である。(i)部分構文木の隣接リストのうち、単語情報を含む隣接リストを取り出したものである。構文木間の類似検索に適したテーブルの例として(g)の代わりに(i)でもよく、またそのときの用語の位置を示すテーブルを(j)に示す。(j)のrankとは、隣接リストがどのレベルに属するのか（品詞情報か、句情報かなど）を示しており、続き番号とは、該当する隣接リストに接続する隣接リストの位置を示したものである。(j)の構文木中の位置とは(j)中の番号に相当する。(k)は、単語レベルでのbi-gramを部分構文木ごとに書き出したものである。図６−(a)の意味クラスについては、あらかじめ辞書等を用意しておいてもよいし、品詞タグつきコーパスを利用して、n-gram等の機械学習によって動的に判別してもよい。
(h)の部分構文木間の類似度の計算方法には様々な方法があるが、例えば(i)での１ランク目の隣接リストの内積をとってもよいし、（即ち、並びを無視して、同じ要素の隣接リスト要素があるか）、もしくは、文構造の類似度という意味で、(i)で１ランク目以外のエッジの内積をとってもよい。後者の場合は、エッジのみでなく、続き番号カラムの情報から、隣接するエッジ（隣接リスト）を使ってもよい。即ち、NP-ADJ, NP->，…を比較するのではなくADJ-NP-NP, N-NP-NP, PP-NP, DT-NP-NP, N-NP-NPの組成の類似度を利用することになる。隣接するエッジは２連結だけでなく、複数連結（2-5連結）であってもよい。図６の(f), (g), (i)の隣接リストはグラフのエッジに相当し、これらのエッジを持つ部分グラフを取り出し、部分グラフの一致度から構文木の類似度を探すことになる。
【００１９】
図７-（c）部分構文木の骨格をパターンとして表示したものである。A{B,C}はAが親ノード,B,CがAの子ノードとなる。(b)を使った用語の位置情報の保存を図7-(a)で示す。これらのインデックスを使って類似文、類似語、類似の関係性を検索する。
【００２０】
部分構文木保存方法は上述以外であっても構わない。
【実施例２】
【００２１】
類似文の検索の際には（図２−４１）、クエリとなる文を構文解析し、構文木から部分構文木を抽出すると共に、その部分構文木をクエリとして、類似文を検索する。例えば、”Analgesic action of the association of MEK1 and MAPK1 is frequently observed.”の類似文を取り出すには構文解析を行い、図６(f)、(g)、もしくは（i）の部分構文木TR000001に相当する隣接リストを動的に構築し、クエリとし、データベース側の図6(f), (g), もしくは（i）に対して検索をかけ、スコアの降順に表示する。文の構造としての類似度のみを知りたいときは、単語レベルの隣接リスト（ADJ->Analgesic, N1->action, PP->ofなど）を図６(f), (g),もしくは(i)の部分構文木TR000001の隣接リストから除いたリストを動的に生成しクエリとし、同様に図６(f), (g),もしくは(i)から単語レベルの隣接リストを除いたものに相当するデータベースに対して検索を掛ける。もしくは、S{NP3 {NP1, NP2}, VP}のような句構造の類似性を検索する場合は、図７(c)で表されるような句構造のインデックスを動的に生成してクエリとし、データベース側の図7(c)に対して検索する。また、意味クラスレベルでの類似度を知りたいときは、固有名詞のみ単語レベルの隣接リスト（GENE1->MEK1, GENE2->MEK2など）を除きクエリとする。これらの検索の際に重み付けを行ってもよい。単語レベル、連語レベルでの類似性に重きをおきたいときには、文を構成する単語レベルのn-gramを利用してもよい。クエリとなる文の部分構文木の隣接リストのn-gramのプロファイルをクエリとして、部分構文木の隣接リストのインデックスと、n-gramのインデックスを検索することになる。bi-gramの例が、図６(l)である。
【００２２】
隣接リストの重み、もしくは、n-gramの重みは、文書中に現れる単語の重み付けと同様の手法（例えば、tf-idf, TF-IDF, Lnu-term weighting (Singhal et al. ACM, 1999), okapi（Robertson and Walker, 2002）などにおいて、文書を一文に、単語を隣接リストとみなして計算してもよい。例えばTF-IDFでは、tf(q|D)*log(N/doc(q),（式中tf(q|D):着目している文D中に隣接リストqが現れる回数、df(q)：qを含む文の数、N：文の総数となる）。
【実施例３】
【００２３】
クエリとなる文が複数文となり、これらに類似な文を検索する場合、実施例１と同様に、構文解析を行い、部分構文木/構成要素さらにはn-gramのプロファイルをクエリとする。この際、文書中の特徴語を選び出す手法（例えば、HyperGsum (久光, 丹羽, 自然言語処理, 2000)、TF-IDF、Okapiなど）において、文書を一文に、単語を隣接リストもしくはn-gramに置き換えた式を用いて部分構文木/構成要素/n-gramの重みを計算してもよい。例えばTF-IDFでは、tf(q|D)*log(N/doc(q),（式中tf(q|D):クエリとなる複数文D中に隣接リストqが現れる回数、df(q)：（データベース＋クエリ文）の文中のqを含む文の数、N：（データベース＋クエリ文）の文の総数となる）。特徴的な隣接リストとその重みという形で、部分構文木のインデックス、更には、n-gramのインデックスを用いて、類似文を検索し、得点の高い文を取り出す。
【００２４】
また、解析結果を更にフィードバックしてもよい。即ち、解析の結果、類似文とみなされた文のうち上位数件をクエリに加え、繰り返して類似文を見つけてもよい。この場合、人間が正しい文を判別して加えてもよいし、自動的に上位数件のみをクエリに加えてもよい。
【００２５】
【非特許文献６】久光、丹羽, 自然言語処理, Vol.142 85-90, 2000.
【実施例４】
【００２６】
類似語の検索の際には（図２−４２）、クエリとなる用語を含む部分構文木を取り出し、この部分構文木のプロファイルと類似のプロファイルを持つ用語を検索する。具体的には、図８に示す用語ごとのプロファイルを利用して、プロファイルの類似した用語を取り出す方法、もしくは、図８とともに、部分構文木の類似度図６−（h）を利用しながら、類似の用語を取り出す方法がある。後者の場合には、構文木中の位置は使わない。
【実施例５】
【００２７】
類似語の検索の別の例を図９、１０に示す。図９では、NP-VP-NP、NP-VP-PP-NPなどの特定の部分構文木と対応する単語、連語リストを使っている。図９においては、構文木から主語・主部と述語・述部が一対一の関係になるように取り出した部分構文木を利用している。NHはnoun headにあたる。単語もしくは連語がnoun headに相当する場合は”1”をそうでない場合は”0”を、関係のない場合は空欄になっている。類似語を検索するために、図９を単語/連語ごとにまとめ、図１０のように部分構文木とその出現頻度からなるプロファイルを用意する。クエリとなる用語のプロファイルとプロファイルが類似した用語を取り出す。この際も、前述の実施例と同様に、TF-IDF, Okapiなどの文書中の特徴語を選び出す方法を用い、部分構文木ごとに重み付けをしてもよい。
【実施例６】
【００２８】
類似な用語間の関係性の検索の場合は（図２−４３）、まず、クエリとなる用語ペアに対して、図６-(e)を使って、同一部分構文木中にクエリとなる用語ペアが現れる部分構文木をプロファイルとして取り出す。そのプロファイルをクエリとして、(e)を検索する。検索結果がN文だとする。N文中に用語ペアの数が多いものから順番に類似の関係性をもつ用語ペアの候補とする。候補用語ペアを取り出す際、N文中に用語ペアの数が多いものから順番ではなく、用語ペアが検索結果中に現れる回数と、その他の部分に各用語が現れる回数との関係（例えばダイス係数など）を使ってランキングしてもよい。抽出された候補の用語ペアを(e)に対して検索し、部分構文木のプロファイルを取り出す。複数の候補用語ペアに対して検索を繰り返したのち、クエリの用語ペアの部分構文木のプロファイルと候補用語ペアのプロファイルの類似度をプロファイルのベクトルの内積などを使って計算し、類似度の高いものから順にリストアップする。
【００２９】
この方法を使うと、例えば、毒性がある化合物について、化合物と毒性の関連を書いてある複数文をクエリとすることにより、化合物と毒性の関連性を記述している他の用語ペアを取り出すことになる。
【実施例７】
【００３０】
類似な用語間の関係性の検索を、図6-(e)の代わりに特定の部分構文木のみを扱う図１１を用いて行う。図１１においては、構文木から主語・主部と述語・述部が一対一の関係になるように取り出した部分構文木を利用している。従って、shallow parserやn-gramを用いたときよりも、文中距離的に遠い関係で表される主語・主部、述語・述部、目的格の関係を利用することができる。また、類似用語を検索するときよりも（図９）、若干長い句構造を利用する。例えば、クエリとなる用語ペアにMEK1-MAPK1が含まれていた場合、”association of # and #”出現頻度11, “interaction of # and #”出現頻度23， …などのプロファイルが得られる。それぞれのクエリとなる用語ペアについてのプロファイルの和をとったのち、これらをクエリとして図１１に対し検索を掛ける。この際、クエリに含まれる用語の部分は検索対象としない。例えば、”association of MEK1 and MAPK1”でなく、”association of， ， and ， ，”と検索することになる。検索結果がN文だとする。N文中に用語ペアの数が多いものから順番に類似の関係性をもつ用語ペアの候補とする。この候補の用語ペアを図１１に対して検索し、部分構文木のプロファイルを取り出す。複数の候補用語ペアに対して検索を繰り返したのち、クエリの用語ペアの部分構文木のプロファイルと候補用語ペアのプロファイルの類似度をプロファイルベクトルの内積などを使って計算し、類似度が高いものからリストアップする。実施例6と同様に、部分構文木に重みをつけて計算してもよい。
【００３１】
図９、１０、１１は単語/連語レベルで表記しているが、上位の用語での類似度を見るために、意味クラスレベルで表示してもよい。
【００３２】
また、クエリとして類似して欲しい例と、類似して欲しくない例がある場合は、正例も負例もプロファイルを同様に計算し、正例の結果のみから候補用語ペアを取り出した後、候補用語の部分構文木プロファイルと正例のプロファイルの類似度から候補用語の部分構文木プロファイルと負例のプロファイルの類似度を差し引きしたものを最終スコアとし、降順で類似な用語ペアとして取り出すことができる。
【実施例８】
【００３３】
図３，４のような構文木の構造の変わりに、図１２（ａ）に示すような格構造を用いてもよい。データ構造の例を図１２（ｂ）に示す。類似文、類似用語、類似の関係抽出なども、上記実施例と同様に図１２（ｂ）を用いて行う。
【００３４】
以上、例を示したが、本発明は、上記実施例に限定されるわけではない。精度を上げるために、事前に各文書のbag of wordsなどで文書をクラスタリングした後、クエリを殆ど含まないクラスタを除いて上記実施例のインデックスを作成してもよい。また、上記の例では隣接リストを用いていたが、図１４ (b)に示すような隣接行列を用いて構文木の類似度を行列の類似度として計算してもよい。
【００３５】
また、上述では類似性の検索のみの例を示したが、文の構造での検索、例えばN-S-VP
の構造を持ちVPにassociation withを含みなどの、文構造と単語などの複数要素での検索も上記のデータ構造で同時に可能である。また、インデックス作成の際、もしくは、検索の際に検索条件（たとえば、1990年代以降の文書のみに限定など）を加えることも可能である。
【００３６】
上記の例では、クエリを適宜用意しているが、逐次クエリとなるデータを蓄積していき、回答精度を逐次更新していってもよい。例えば、化合物の副作用や化合物の毒性に関する文書を逐次的に蓄積し、毒性や副作用に関する化合物情報を抽出する精度を除除に上げることもできる。
【産業上の利用可能性】
【００３７】
本発明は、図入り文献の図から情報抽出する方法に関するものである。
【図面の簡単な説明】
【００３８】
【図１】本発明の検索システムのシステム構成を示す図である。
【図２】本発明の検索システムのフローチャートである。
【図３】(a)が構文解析した後の構文木である。(b)-(d)が(a)の部分構文木の例である。(e)が(a)から副詞、冠詞を除いた構文木である。
【図４】(a)が構文解析した後の構文木である。(b)-(d)が(a)の部分構文木の例である。
【図５】(a)が構文解析した後の構文木である。(b)-(c)が(a)の部分構文木の例である。
【図６（ａ）】部分構文木データを保存するための用語IDと、代表名称、用語が属する意味クラスのテーブル例である。
【図６（ｂ）】部分構文木データを保存するための各概用語の出現頻度を示すテーブル例である。
【図６（ｃ）】部分構文木データを保存するための各文に出現する用語IDとその出現頻度の関係を示すテーブル例である。
【図６（ｄ）】部分構文木データを保存するための文番号と部分構文木との関係を示すテーブル例である。
【図６（ｅ）】部分構文木データを保存するための用語IDと、その用語が出現する文、部分構文木、及び、部分構文木中の用語の位置を示すテーブル例である。
【図６（ｆ）】部分構文木データを保存するための部分構文木の隣接リストのテーブル例である。
【図６（ｇ）】部分構文木データを保存するための部分構文木の一部を意味クラスを用いた隣接リストを示すテーブル例である。
【図６（ｈ）】部分構文木データを保存するための部分構文木の類似度を示すテーブル例である。
【図６（ｉ）】部分構文木データを保存するための部分構文木IDと、部分構文木を構成する各隣接リスト及び、隣接リスト間の位置関係を示すテーブル例である。
【図６（ｊ）】部分構文木データを保存するための用語IDと、その用語が出現する文、部分構文木、及び、部分構文木中の位置の関係を示すテーブル例である。
【図６（ｋ）】部分構文木データを保存するための部分構文木の隣接リストのうち、用語、もしくは用語の意味クラスを含む隣接リストを示すテーブル例である。
【図６（ｌ）】部分構文木データを保存するための部分構文木を元となる文の単語レベルのbi-gramを示すテーブル例である。
【図７】部分構文木データを保存するためのテーブル例である。(a) 用語IDと、その用語が出現する文、部分構文木、及び、部分構文木中の用語の位置を示すテーブル、(b) 用語IDとその用語が出現する文IDと、用語IDが出現する部分構文木の関係を示すテーブル (c)部分構文木IDと部分構文木の関係を示すテーブル
【図８】部分構文木中に各用語が、部分構文木中どの位置で出現するかと、全文書中で同様な出現をする該用語の出現頻度
【図９】特定の部分構文木と、概部分構文木を構成する句、単語、名詞句の場合はnoun headを含むか否かの関係を示すテーブル
【図１０】特定の部分構文木と、概部分構文木を構成する句、単語、名詞句の場合はnoun headを含むか否かの関係を用語ごとにまとめたテーブル。
【図１１】特定の部分構文木と、概部分構文木を構成する句、単語、名詞句の場合はnoun headを含むか否かの関係を用語ごとにまとめたテーブル。図１０よりも部分構文木は大きいものまで利用。
【図１２】(a)部分構文木を各構造で示したもの (b)各構造で示した構文木、部分構文木を出現頻度、及び、構成する句/単語と共に示したテーブル。
【図１３】(b)構文木を隣接行列を用いて表示  行列の番号は(a)のノードについている番号に相当
【符号の説明】
【００３９】
１…検索システムの前処理装置、１１…Web情報等の図入り外部文書記憶領域、１２…文献記憶領域、１３…インターネット、１４…辞書・シソーラス等記憶領域、１５…構文解析処理部、１６…インデックス作成部、２…類似文、類似用語、類似の関係性の検索部、３…表示装置、４…検索文、検索用語、関係性抽出のために検索用語のペア
１５１…構文解析を行い構文木を生成するステップ、１５２…インデックス作成の条件に応じて冠詞、形容詞、副詞などを削除し構文木を簡潔化すると共に名詞に意味クラスを付与するステップ、１６０…部分構文木を列挙し、用語ごとと文ごとに部分構文木もしくはその構成要素とその出現頻度のインデックスを作成するステップ、２１…類似文の検索の際に検索文の構文解析を行い構文木を生成するステップ、２２…部分構文木を列挙し、部分構文木/構成要素の重みつきプロファイルをクエリとして文ごとの部分木インデックスをサーチし類似文を検索するステップ、２３…用語ごとの部分木インデックスを利用し、クエリ用語の重みつき部分木プロファイルと類似のプロファイルを持つ用語を検索するステップ、２４…文ごとの部分木インデックスを利用し、用語ペアを含む部分木を取り出すステップ、２５…重みつつき部分木のプロファイルをクエリとして、用語ごとの部分木インデックスを検索し、用語ペアを検出するステップ。
【図１】
2009199280.tif 000003
【図２】
2009199280.tif 000004
【図３】
2009199280.tif 000005
【図４】
2009199280.tif 000006
【図５】
2009199280.tif 000007
【図６（ａ）】
2009199280.tif 000008
【図６（ｂ）】
2009199280.tif 000009
【図６（ｃ）】
2009199280.tif 000010
【図６（ｄ）】
2009199280.tif 000011
【図６（ｅ）】
2009199280.tif 000012
【図６（ｆ）】
2009199280.tif 000013
【図６（ｇ）】
2009199280.tif 000014
【図６（ｈ）】
2009199280.tif 000015
【図６（ｉ）】
2009199280.tif 000016
【図６（ｊ）】
2009199280.tif 000017
【図６（ｋ）】
2009199280.tif 000018
【図６（ｌ）】
2009199280.tif 000019
【図７】
2009199280.tif 000020
【図８】
2009199280.tif 000021
【図９】
2009199280.tif 000022
【図１０】
2009199280.tif 000023
【図１１】
2009199280.tif 000024
【図１２】
2009199280.tif 000025
【図１３】
2009199280.tif 000026