(57)【特許請求の範囲】
【請求項１】
特定の関係を有する単語の対と、該単語の対を含む文に関する形態素の構造とを関連付けて持つ単語対テーブルを格納した第１の記憶手段と、
前記第１の記憶手段から抽出した単語の対と形態素の構造に、検索対象を限定する特定の事象を加えた検索キーを作成し、該検索キーで検索対象の文書群を格納した第２の記憶手段を検索して該検索キーの出現数を求め、求めた出現数を前記単語の対と前記形態素の構造に関連付けて前記単語対テーブルに格納する出現数情報取得手段と、
前記単語対テーブルを参照し、各単語の対に関する形態素の構造毎の出現数傾向と、全単語の対に関する形態素の構造毎の出現数傾向との合致程度に基づいて、前記各単語の対と前記特定の事象との関連性を評価した評価値を出力する評価手段と、
を備える知識獲得装置。
【請求項２】
請求項１に記載の知識獲得装置であって、
前記評価手段は、各単語の対に関する形態素の構造毎の出現数に、全単語対に関する形態素の構造毎の出現数をそれぞれ乗じて合計し、総出現数で除した値を評価値として出力する手段である、
知識獲得装置。
【請求項３】
請求項１又は２に記載の知識獲得装置であって、
所与の単語の対又は形態素の構造を検索キーとして第２の記憶手段を検索し、得られた検索結果を検索キーに追加して更にデータ検索を行うことを繰り返すことにより、得られた複数の単語の対及び複数の形態素の構造を前記記憶手段に格納するデータ収集手段を更に備える、
知識獲得装置。
【請求項４】
請求項１ないし３のいずれか１項に記載の知識獲得装置であって、
前記単語の対を含む文に関する形態素の構造は、前記データ検索の対象文を係り受け解析をして得た最小限の部分構造となる形態素の構造から、前記単語対の形態素を除いた形態素の構造である、
知識獲得装置。
【請求項５】
特定の関係を有する単語の対と、該単語の対を含む文に関する形態素の構造とを関連付けて持つ単語対テーブルを格納した第１の記憶手段から抽出した単語の対と形態素の構造に、検索対象を限定する特定の事象を加えた検索キーを作成し、該検索キーで検索対象の文書群を格納した第２の記憶手段を検索して該検索キーの出現数を求め、求めた出現数を前記単語の対と前記形態素の構造に関連付けて前記単語対テーブルに格納する処理と、
前記単語対テーブルを参照し、各単語の対に関する形態素の構造毎の出現数傾向と、全単語の対に関する形態素の構造毎の出現数傾向との合致程度に基づいて、前記各単語の対と前記特定の事象との関連性を評価した評価値を出力する処理と、
をコンピュータが実行する知識獲得方法。
【請求項６】
特定の関係を有する単語の対と、該単語の対を含む文に関する形態素の構造とを関連付けて持つ単語対テーブルを格納した第１の記憶手段から抽出した単語の対と形態素の構造に、検索対象を限定する特定の事象を加えた検索キーを作成し、該検索キーで検索対象の文書群を格納した第２の記憶手段を検索して該検索キーの出現数を求め、求めた出現数を前記単語の対と前記形態素の構造に関連付けて前記単語対テーブルに格納する処理と、
前記単語対テーブルを参照し、各単語の対に関する形態素の構造毎の出現数傾向と、全単語の対に関する形態素の構造毎の出現数傾向との合致程度に基づいて、前記各単語の対と前記特定の事象との関連性を評価した評価値を出力する処理と、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータを用いてデータ群から単語対等の知識を取得する技術に関し、特に、特定の事象と単語対との関係に関する知識を取得する知識獲得装置、知識取得方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、インターネット等を利用して、アクセス可能なデータ群からキーワード（検索キー）を含むデータを検索することが広く行われている。検索の結果として取得されるデータは、主に電子文書である。
【０００３】
このようなデータ検索を通じて獲得された知識は、辞書・辞典等の作成、及び電子的情報サービスの提供等に応用することができる。例えば、「＊は＊＊に効く」、「＊は＊＊に効果がある」等を検索キーとしてデータ群を検索すると、「病気」と「それに効果のある食品」のような単語の対が複数組取得されることが期待される。ここで、上記「＊」や「＊＊」は、内容を特定せずにデータ検索を行う部分を示す。
【０００４】
以下、このようにして得られる特定の関係を有する単語の対を、単語対と称する。上記の場合、「風邪」と「大根」、「風邪」と「生姜」、「頭痛」と「梅干し」などが単語対として取得され得る。また、上記「＊は＊＊に効く」の他にも、「場所」と「そこに適した掃除道具」、「季節」と「料理」、「食材」と「調味料」等、様々なものが単語対として考えられる。このような単語対を網羅的に収集することによって、有用な情報サービスを提供することが可能になると考えられる。
【０００５】
一方、「＊」や「＊＊」以外の部分、すなわち「は」・「に効く」の部分、及び「は」・「に効果がある」の部分は、単語対を取得するための抽出規則といえる。以下、こうした抽出規則を、「文脈パターン」と称する。
【０００６】
単語対と文脈パターンは、大規模データからコンピュータが自動アルゴリズムで取得することができる（例えば、特許文献１、並びに非特許文献１参照）。
【０００７】
具体的には、まず、シードと称される既知の単語対をコンピュータに与える。コンピュータは、シードを含む文脈パターンを、大規模データから検索する。文脈パターンが得られると、得られた文脈パターンを含む文書を検索し、得られた文書から未知の単語対を取得する。これらを繰り返し行うことによって、単語対及び文脈パターンの数が増加していく。最終的には、複数の単語対と複数の文脈パターンが知識として獲得され、辞書・辞典等の用途に用いることが可能なデータベースが作成される。
【０００８】
なお、「出現数が所定数以上である」等の条件を付与して、一般的でないと思われる知識（ノイズ、ゴミ）を除外する処理等が行われ得る。この際に、コンピュータの作業にユーザの各種設定入力等を挟むことにより、文脈パターンに重み付けを行うことも想定される。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許第７１４６３０８号明細書
【非特許文献】
【００１０】
【非特許文献１】Stijn De Saeger他、「単語の意味クラスを用いたパターン学習による大規模な意味的関係獲得」、言語処理学会第１６回年次大会、ｐｐ９３２−９３５、２０１０
【発明の概要】
【発明が解決しようとする課題】
【００１１】
ところで、上記のように知識を獲得する際には、データ（電子文書）に関する特定の事象に限定してデータを収集したいというニーズが存在する。特定の事象の代表的なものは、地域・業界・分野等のカテゴリーである。以下、簡便のため、カテゴリーと表記する。
【００１２】
具体的には、前述の「病気」と「それに効果のある食品」のような単語対を取得する場合、（１）医療関連の権威ある文書から獲得された単語対のみを用いたい、（２）その反対に、草の根的な単語対を網羅的に集めたい等の要求が考えられる。また、ユーザの居住地等に起因し、（３）西日本だけで通説となっている単語対を集めたい、等の要求も考えられる。
【００１３】
ところが、大規模データからコンピュータが自動アルゴリズムで単語対及び文脈パターンを取得する処理は、多くの繰り返し処理を含むため、カテゴリーが指定されてから処理を行うのでは、処理時間が長くなってしまう。この結果、ユーザに所望の結果を迅速に提供できない可能性が高くなる。
【００１４】
一方、予め、カテゴリー毎に単語対や文脈パターンを取得してデータベースに格納しておくことも考えられるが、この場合、データ量が膨大となり、リソースに対する要求が高くなってしまう。また、ユーザにより指定され得る全てのカテゴリーを予測するのは現実的でない。
【００１５】
本発明はこのような課題を解決するためのものであり、より迅速に結果を出力可能な知識獲得装置、知識取得方法、及びプログラムを提供することを、主たる目的とする。
【課題を解決するための手段】
【００１６】
上記目的を達成するための一態様は、
特定の関係を有する単語の対と、該単語の対を含む文に関する形態素の構造とを関連付けて持つ単語対テーブルを格納した第１の記憶手段と、
前記第１の記憶手段から抽出した単語の対と形態素の構造に、検索対象を限定する特定の事象を加えた検索キーを作成し、該検索キーで検索対象の文書群を格納した第２の記憶手段を検索して該検索キーの出現数を求め、求めた出現数を前記単語の対と前記形態素の構造に関連付けて前記単語対テーブルに格納する出現数情報取得手段と、
前記単語対テーブルを参照し、各単語の対に関する形態素の構造毎の出現数傾向と、全単語の対に関する形態素の構造毎の出現数傾向との合致程度に基づいて、前記各単語の対と前記特定の事象との関連性を評価した評価値を出力する評価手段と、
を備える知識獲得装置である。
【発明の効果】
【００１７】
本発明によれば、より迅速に結果を出力可能な知識獲得装置等を提供することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施例に係る知識獲得装置１を含む情報システムの全体像である。
【図２】本実施例の知識獲得装置１のハードウエア構成例である。
【図３】本実施例の知識獲得装置１の機能構成例である。
【図４】本実施例の知識獲得装置１により実行される処理の全体像を模式的に示す図である。
【図５】オペレータ１１０がクライアントコンピュータ１００に対してシードを入力し、知識獲得装置１が単語対テーブル４０を生成する様子を模式的に示す図である。
【図６】単語対獲得部３０により生成される単語対テーブル４０の一例である。
【図７】ユーザ１２０がクライアントコンピュータ１００に対してクエリを入力し、知識獲得装置１が出現数テーブル４２を生成する様子を模式的に示す図である。
【図８】検索部３２により生成される出現数テーブル４２の一例である。
【図９】知識獲得装置１がスコア付単語対４４を生成する様子を模式的に示す図である。
【図１０】スコア算出部３４の出力により出力されるスコア付単語対４４の一例である。
【図１１】従来の装置によって実行され得る処理と、本実施例の知識獲得装置１により実行される処理とを対比するための模式図である。
【図１２】単語対獲得部３０により実行される特徴的な処理の流れを示すフローチャートである。
【図１３】単語対獲得部３０により実行される文脈パターン抽出処理の流れを示すフローチャートである。
【図１４】Ｓ４１０の解析において用いられる形態素の構造を模式的に示す図である。
【図１５】検索部３２により実行される特徴的な処理の流れを示すフローチャートである。
【図１６】スコア算出部３４により実行される特徴的な処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１９】
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
【実施例】
【００２０】
以下、図面を参照し、本発明の一実施例に係る知識獲得装置１について説明する。
【００２１】
［ハードウエア構成］
図１は、本発明の一実施例に係る知識獲得装置１を含む情報システムの全体像である。図示するように、知識獲得装置１は、例えば、一又は複数のクライアントコンピュータ１００がネットワーク５０を介して接続されたサーバ装置である。また、知識獲得装置１は、ネットワーク５０を介して大規模文書２００にアクセス可能となっている。なお、ネットワーク５０は、インターネット、携帯電話やＰＨＳ（Personal Handy-phone System）の電波網、ＬＡＮ（Local Area Network）等を含む。
【００２２】
図２は、本実施例の知識獲得装置１のハードウエア構成例である。知識獲得装置１は、例えば、ＣＰＵ（Central Processing Unit）１０と、ドライブ装置１２と、補助記憶装置１６と、メモリ装置１８と、インタフェース装置２０と、入力装置２２と、出力装置２４と、を備える情報処理装置である。これらの構成要素は、バスやシリアル回線等を介して接続されている。
【００２３】
ＣＰＵ１０は、例えば、プログラムカウンタや命令デコーダ、各種演算器、ＬＳＵ（Load Store Unit）、汎用レジスタ等を有するプロセッサである。
【００２４】
ドライブ装置１２は、記憶媒体１４からプログラムやデータを読み込み可能な装置である。プログラムを記録した記録媒体１４がドライブ装置１２に装着されると、プログラムが記録媒体１４からドライブ装置１２を介して補助記憶装置１６にインストールされる。記録媒体１４は、例えば、ＣＤ−ＲＯＭ、ＤＶＤディスク、ＵＳＢメモリ等の可搬型の記録媒体である。また、補助記憶装置１６は、例えば、ＨＤＤ（Hard Disk Drive）やフラッシュメモリである。
【００２５】
プログラムのインストールは、上記のように記憶媒体１４を用いる他、インタフェース装置２０がネットワーク５０を介して他のコンピュータよりダウンロードし、補助記憶装置１６にインストールすることによって行うこともできる。また、情報処理装置の出荷時に、予め補助記憶装置１６やＲＯＭ（Read Only Memory）等に格納されていてもよい。
【００２６】
このようにしてインストール又は予め格納されたプログラムをＣＰＵ１０が実行することにより、図１に示す態様の情報処理装置が、本実施例の知識獲得装置１として機能することができる。
【００２７】
メモリ装置１８は、例えば、ＲＡＭ（Random Access Memory）やＥＥＰＲＯＭ（Electrically Erasable and Programmable Read Only Memory）である。インタフェース装置２０は、上記ネットワークとの接続等を制御する。
【００２８】
入力装置２２は、例えば、キーボードやマウス、タッチパッド、タッチパネル、マイク等である。また、出力装置２４は、例えば、ＬＣＤ（Liquid Crystal Display）やＣＲＴ（Cathode Ray Tube）等の表示装置、プリンタ、スピーカ等を含む。
【００２９】
インタフェース装置２０は、ネットワーク５０を介してクライアントコンピュータ１００や大規模文書２００にアクセスすることができる。
【００３０】
クライアントコンピュータ１００は、サーバ側の知識獲得装置１と同様、ＣＰＵ、ドライブ装置、補助記憶装置、メモリ装置、インタフェース装置、入力装置、出力装置等を有する。これらについての詳細な説明は省略する。
【００３１】
大規模文書２００は、ネットワーク５０を介してアクセス可能なあらゆる記憶装置に格納された電子文書である。
【００３２】
［機能構成］
図３は、本実施例の知識獲得装置１の機能構成例である。知識獲得装置１は、単語対獲得部３０と、検索部３２と、スコア算出部３４と、を備える。これらの機能ブロックは、補助記憶装置１６等に格納されたプログラム・ソフトウエアをＣＰＵ１０が実行することにより機能する。
【００３３】
また、知識獲得装置１は、メモリ装置１８や補助記憶装置１６の所定領域に、単語対テーブル４０と、出現数テーブル４２と、スコア付単語対４４と、を生成する。
【００３４】
図４は、本実施例の知識獲得装置１により実行される処理の全体像を模式的に示す図である。図示するように、知識獲得装置１は、大規模文書２００とシード２５０に基づき単語対テーブル４０を生成する。
【００３５】
また、知識獲得装置１は、単語対テーブル４０とクエリ２６０に基づきカテゴリー検索を行って出現数テーブル４２を生成し、出現数テーブル４２に基づいてスコア算出を行ってスコア付単語対４４を出力する。ここで、「カテゴリー」とは、特許請求の範囲における「検索対象を限定する特定の事象」の一例である。
【００３６】
これらの処理のうち、単語対テーブル４０の生成は、サービス提供の前処理（事前のバッチ処理）として行われ、出現数テーブル４２の生成及びスコア算出は、ユーザによりサービス要求が行われた際に（適用先が決まった後に）実行されると好適である。以下、これらの処理について説明する。
【００３７】
｛単語対獲得｝
単語対獲得部３０は、所与のシードを元に、シードを含む文脈パターンを大規模文書２００から検索する。
【００３８】
ここで、シードとは、特定の関係を有する単語の対（単語対）、又は単語対を含む文の中に現れる文脈パターンである。これらの双方がシードとして与えられてもよい。単語対の例として、「生姜は風邪に効く。」という文における「風邪」、「生姜」が挙げられ、この場合の文脈パターンは、「は」・「に効く」である。文脈パターンは、データ検索の対象とされる大規模文書２００内の文に含まれる単語対以外の特徴的な文字列であり、大規模文書２００から単語対を獲得するための抽出規則として理解することができる。また、後述するように、本実施例における文脈パターンは、特許請求の範囲における「単語の対を含む文に関する形態素の構造」の一例である。なお、本実施例では句点「。」を区切りとする「文」をデータ検索の対象とするが、複数の文が集まった「文章」をデータ検索の対象としてもよい。
【００３９】
シードは、例えば、オペレータがクライアントコンピュータ１００に対して任意の単語対、又は文脈パターン（或いはこれらの双方）を入力することにより、ネットワーク５０を介してＣＰＵ１０に提供される。図５は、オペレータ１１０がクライアントコンピュータ１００に対してシードを入力し、知識獲得装置１が単語対テーブル４０を生成する様子を模式的に示す図である。
【００４０】
単語対獲得部３０は、シードが単語対である場合、まず、シードを含む文脈パターンを大規模文書２００から検索する。文脈パターンが得られると、得られた文脈パターンを含む文書を大規模文書２００から検索し、得られた文書から未知の単語対を取得する。これらを繰り返し行うことによって、単語対及び文脈パターンの数が増加していく。単語対獲得部３０は、取得された単語対及び文脈パターンを、例えばこれらをラベルとする空のデータテーブルの形式で保持する。
【００４１】
図６は、単語対獲得部３０により生成される単語対テーブル４０の一例である。図示するように、単語対テーブル４０は、単語対と文脈パターンを行方向と列方向のラベルとし、単語対と文脈パターンの組み合わせに該当するデータ内容部分はブランクとなっている。このブランク部分に、後述する検索部３２の検索結果として出力される出現数（ヒット件数）が格納されることにより、出現数テーブル４２が生成される。
ここで、大規模文書２００からのデータ検索は、大規模文書を所有している場合には既知の検索技術により行ない、大規模文書を所有していない場合にはGoogle（登録商標）に代表される既存の検索サービス業者により実施されている技術を利用して行う。このようなデータ検索の具体的内容に関しては、周知・慣用技術であるため詳細な説明は省略するが、一般的な文書検索で用いられるAND、OR、NOT等の検索条件を適切に設定することにより、単語対又は文脈パターンを含む文書を抽出することができる。
【００４２】
｛検索｝
検索部３２は、単語対獲得部３０により生成された単語対テーブル４０を元に、オペレータやユーザにより入力されたクエリを反映したデータ検索を、大規模文書２００に対して実行する。そして、その結果を出現数テーブル４２として格納する。
【００４３】
図７は、オペレータ１１０又はユーザ１２０がクライアントコンピュータ１００に対してクエリを入力し、知識獲得装置１が出現数テーブル４２を生成する様子を模式的に示す図である。なお、本図におけるクライアントコンピュータ１００は、図５とは異なるものであってよい。
【００４４】
オペレータ１１０又はユーザ１２０は、例えば、「『国立病院』OR『市立病院』」等のカテゴリー（特許請求の範囲における「特定の事象」の一例である）をクエリとして入力する。すると、検索部３２は、「『国立病院』OR『市立病院』」というクエリを満たすデータ検索を、単語対テーブル４０に格納された単語対と文脈パターンの全ての組み合わせについて行う。すなわち、単語対テーブル４０に格納された複数の単語対と複数の文脈パターンから抽出された一の単語対及び一の文脈パターンに、クエリを加えたものを検索キーとして、大規模文書２００から検索する処理を、全ての単語対と文脈パターンについて行う。
【００４５】
そして、検索部３２は、各単語対と文脈パターンの組み合わせについて、「『国立病院』OR『市立病院』」というクエリを満たす検索結果における出現数を取得し、単語対テーブル４０のブランク部分に格納して出現数テーブル４２とする。例えば、（「風邪」には「大根」が効く）AND（「国立病院」OR「市立病院」）について検索を行った際の出現数が２１であれば、これを単語対テーブル４０の「風邪」−「大根」と「ＡにはＢが効く」に対応する場所（アドレス）に格納する。当該出現数テーブル４２は、クエリ（「国立病院」OR「市立病院」）に対応する専用テーブルとして生成される。すなわち、検索部３２は、入力されたクエリに対応する専用テーブルを生成する。図８は、検索部３２により生成される出現数テーブル４２の一例である。
【００４６】
このようにして、検索部３２は、入力されたクエリを満たし、且つ単語対獲得部３０に予め格納されている単語対と文脈パターンの全ての組み合わせに該当する文書の出現数を取得し、出現数テーブル４２を生成する。
【００４７】
｛スコア算出｝
スコア算出部３４は、検索部３２により生成された出現数テーブル４２を参照し、各単語対とクエリの関連性を評価し、評価結果に基づく出力を行う。
【００４８】
スコア算出部３４の出力は、例えば、出現数テーブル４２にスコアを付加したスコア付単語対４４の形式でなされる。本実施例におけるスコアとは、（１）クエリとして入力されたカテゴリーとの関連性、及び（２）その単語対自身の出現数の多さ、すなわちその単語対が一般に浸透しているかどうか、を示す評価値である。
【００４９】
図９は、知識獲得装置１がスコア付単語対４４を生成する様子を模式的に示す図である。また、図１０は、スコア算出部３４により出力されるスコア付単語対４４の一例である。図示するように、スコア算出部３４は、出現数テーブル４２に格納された各単語対について、スコアを付加して出力する。
【００５０】
スコアの算出は、例えば次式（１）により行うことができる。式中、Scoreiはi番目の単語対のスコアを表し、f(w,p)は単語対wと文脈パターンpの同時出現数を示し、Nは全ての単語対と文脈パターンの組み合わせの出現数を示す。また、添字jは文脈パターンの識別パラメータであり、添え字kは単語対の識別パラメータである。
【００５１】
【数１】
0005594225.tif 000002
【００５２】
上式（１）は、単語対全体に関しての文脈パターン毎の出現数（図１０における「合計」行の各数値）を算出し、これを総出現数で除した値を荷重係数として、単語対の文脈パターン毎の出現数に乗じて合計したものである。従って、本実施例におけるスコアは、各単語対に関する文脈パターン毎の出現数傾向と、全単語対に関する文脈パターン毎の出現数傾向との合致程度に基づいて、各単語対とクエリとの関連性を適切に評価した評価値となる。図１０に即して説明すると、例えば、単語対（「風邪」−「大根」）のスコアは、Nが１０４７であるため、次式（２）のようになる。
【００５３】
Score（「風邪」−「大根」）＝２１×（２０１／１０４７）＋８×（１５５／１０４７）＋３６×（８３／１０４７）＋…＝０．２１  …（２）。
【００５４】
これによって、単に出現数の多い単語対が好スコアを獲得するのではなく、当該クエリを満たす全ての単語対に対応する文脈パターンの出現傾向に近い傾向を示す単語対が、高スコアを獲得することとなる。例えば、「病院関係」というカテゴリーでは、文脈パターン１はよく用いられるが、文脈パターン３は余り用いられないといった傾向が存在する場合、このような傾向に近い傾向を示す単語対に対して、高スコアを付与する。これによって、カテゴリーによく適合した単語対に高スコアを付与することができ、「カテゴリーに合致した単語対の知識を得たい」というユーザの要求に応えることができる。なお、スコアの算出は、例えば単語対の総数を乗じる等して何らかの正規化処理を行ってもよい。
【００５５】
以上のようにスコア付単語対４４を生成すると、これをそのままユーザに出力してもよいし、スコア順にランキング（並べ替え）したものを出力してもよい。また、ランキング上位のものに限定してユーザに提供してもよい。このように、スコア算出の結果に基づく出力は、種々のものが考えられる。
【００５６】
また、上記のように、単語対テーブル４０の生成は、サービス提供の前処理として行われ、出現数テーブル４２の生成及びスコア算出は、ユーザによりサービス要求が行われた際に実行されると好適である。図１１は、従来の装置によって実行され得る処理と、本実施例の知識獲得装置１により実行される処理とを対比するための模式図である。
【００５７】
図中、上段は、従来の装置によって実行される処理を模式的に示している。図示するように、従来の装置においてカテゴリー毎に単語対を獲得しようとすると、カテゴリー毎に単語対獲得部３０と同等の処理を行う必要があった。ところが、単語対獲得部３０の処理は、シードから単語対や文脈パターンを繰り返し取得するものであり、所要時間が比較的長いものである。この結果、ユーザやオペレータがカテゴリーを入力してから単語対を取得するまでの処理時間が長くなってしまう。
【００５８】
これに対し、図１１の後段で処理の概要が表される本実施例の知識獲得装置１では、事前のバッチ処理として単語対テーブル４０が生成され、適用先が決まった後には出現数テーブル４２の生成及びスコア算出のみが行われる。出現数テーブル４２の生成は、クエリを反映した検索キーを設定して大規模文書２００を検索する処理であり、比較的短時間で終了する。また、スコア算出についても、単純な演算処理であるため、処理時間は短いものとなる。この結果、ユーザがクエリを入力してから単語対を取得するまでの処理時間を短くすることができる。すなわち、より迅速に結果を出力することができる。
【００５９】
［処理フロー］
以下、知識獲得装置１が有する各機能ブロックの処理について、フローチャートに即して具体的に説明する。なお、全体フローについては、図４を参照することとし、図示を省略する。
【００６０】
図１２は、単語対獲得部３０により実行される特徴的な処理の流れを示すフローチャートである。
【００６１】
まず、単語対獲得部３０は、入力されたシード２５０を単語対リストに追加する（Ｓ３００）。単語対リスト４０Ａ、及び後述する文脈パターンリスト４０Ｂは、単語対テーブル４０の行方向及び列方向のラベルとなるものであり、メモリ装置１８や補助記憶装置１６の所定領域に設定される。
【００６２】
次に、単語対獲得部３０は、単語対リスト４０Ａに格納された単語対で大規模文書２００を検索し、文脈パターンを抽出して文脈パターンリスト４０Ｂに追加する（Ｓ３０２；詳細は図１２に記載）。
【００６３】
次に、単語対獲得部３０は、新たな文脈パターンが一つでも抽出できたかどうかを判定する（Ｓ３０４）。新たな文脈パターンが全く抽出できなかった場合は、本フローを終了する。
【００６４】
一方、新たな文脈パターンが一つでも抽出できた場合には、文脈パターンリストに格納された文脈パターンで大規模文書２００を検索し、単語対を抽出して単語対リスト４０Ａに追加する（Ｓ３０６）。
【００６５】
次に、単語対獲得部３０は、新たな単語対が一つでも抽出できたかどうかを判定する（Ｓ３０８）。新たな単語対が全く抽出できなかった場合は、本フローを終了する。
【００６６】
一方、新たな単語対が一つでも抽出できた場合には、Ｓ３０２に戻る。こうして、単語対と文脈パターンが繰り返し抽出され、単語対リスト４０Ａや文脈パターンリスト４０Ｂに追加される。
【００６７】
単語対獲得部３０は、本フローが終了すると、単語対リスト４０Ａや文脈パターンリスト４０Ｂの内容に基づき単語対テーブル４０を生成し、メモリ装置１８や補助記憶装置１６の所定領域に格納する。
【００６８】
図１３は、単語対獲得部３０により実行される文脈パターン抽出処理の流れを示すフローチャートである。本フローは、図１２のＳ３０２に相当する。
【００６９】
まず、単語対獲得部３０は、単語対リスト４０Ａの最上段から順に単語対を一つ取り出す（Ｓ４００）。
【００７０】
次に、単語対獲得部３０は、単語対リスト４０Ａの最後まで検索を終了したか否か、すなわち、Ｓ４００において新たな単語対を取り出すことができたかどうかを判定する（Ｓ４０２）。単語対リスト４０Ａの最後まで検索を終了した場合は、本フローを終了する。
【００７１】
一方、単語対リスト４０Ａの最後まで検索を終了していない場合は、取り出した単語対を検索キーとして大規模文書を検索する（Ｓ４０４）。検索結果は、メモリ装置１８や補助記憶装置１６に一時的に格納される。
【００７２】
次に、単語対獲得部３０は、Ｓ４０４の検索結果を一つ取り出す（Ｓ４０６）。そして、最後まで検索結果を取り出したか否か、すなわち、Ｓ４０６において、新たな検索結果を取り出すことができたかどうかを判定する（Ｓ４０８）。新たな検索結果を取り出すことができなかった場合は、Ｓ４００に戻る。
【００７３】
一方、新たな検索結果を取り出すことができた場合は、検索結果に含まれる単語対が所定の構文パターンを形成しているか否かを解析し、これを判定する（Ｓ４１０）。
【００７４】
図１４は、Ｓ４１０の解析において用いられる形態素の構造を模式的に示す図である。ある単語対（「風邪」−「大根」）を検索キーとした文書検索の結果は、例えば「風邪にはやっぱり大根が一番効くよ」のような、単語対や文脈パターン以外の語を含む文であることが想定される。
【００７５】
単語対獲得部３０は、まず、日本語の文を形態素と呼ばれる最小の単位に分割する形態素解析という処理を行なう。形態素の単位では、例えば「お茶」という語は、「お（接頭語）」と「茶（名詞）」の二つにカウントされる。そして、「風邪にはやっぱり大根が一番効くよ」という文を形態素解析すると、「風邪／に／は／やっぱり／大根／が／一番／効く／よ」のように分割される。
【００７６】
次に、単語対獲得部３０は、係り受け解析を行なう。係り受け解析では、まず形態素列を文節という単位にまとめ上げる。上記の文は、「（風邪／に／は），（やっぱり），（大根／が），（一番），（効く／よ）」のように文節にまとめ上げられる。そして、文節の間の係り関係を定義する。日本語における係り関係は、（１）係り先は一つ、（２）前から後ろに向かって係るという原則に基づいて解析される。上記の形態素解析と係り受け解析は、既存の技術が周知となっており、それぞれ、９９％、９１％程度の精度で自動的に処理される。
【００７７】
上記の文の係り関係は、以下のようになる。
（風邪／に／は）→（効く／よ）
（やっぱり）    →（効く／よ）
（大根／が）    →（効く／よ）
（一番）        →（効く／よ）
（効く／よ）    →＜文末＞
【００７８】
このような係り関係を木構造で表わし、且つ「文節内の形態素はそれぞれ直後の形態素に係る」という経験則を用いると，図１４で例示する構造が取得される。
【００７９】
更に、形態素解の木構造から「へ」の字の部分を抽出する方法について図１４の例に即して説明する。まず、「風邪」と「大根」が単語対として与えられていることを前提とする。そして、この二つの単語対（形態素）の双方を含む最小限の部分構造を抽出する。図１４の例では、網掛けされた「へ」の字の部分が、この最小限の部分構造に相当する。
【００８０】
このように最小限の部分構造が得られると、単語対獲得部３０は、単語対が、ある所定の距離内に在る場合に、所定の構文パターンを形成していると判定する。所定の構文パターンを形成していると判定した場合、得られた最小限の部分構造から単語対を除いた部分が、文脈パターンとして認識される。
【００８１】
ここで、「所定の距離」とは、例えば、図１４で示す形態素の木構造における、形態素を接続するリンクの数をいう。下記の矢印の数（５）が、これに相当する。
（風邪）→（に）→（は）→（効く）
（大根）→（が）→（効く）
【００８２】
このように距離を限定することによって、比較的長い文に含まれる単語対から有意でない文脈パターンが抽出されるのを抑制することができる。この距離を限定しなかった場合、或いは距離を３０程度まで許容した場合、「風邪になった妻に頼まれて買い物に来たがリストに入っていた納豆が無い。」のような文から、「風邪」と「納豆」を抽出し、この文から有意でない文脈パターンを抽出してしまう可能性があるからである。距離の閾値を決定するのに特段の規則は無く、得られた知識における誤りの多少に応じて経験的に定めて良い。
【００８３】
なお、形態素解の木構造は、図１４で示すような「へ」の字であるとは限らず、多様な形態を取り得る。例えば、「風邪に効く大根を買った。」という文についての形態素解析の結果は「風邪／に／効く／大根／を／買っ／た」のようになる。
【００８４】
また、係り受け解析の結果は以下のようになる。
（風邪／に）→（効く）
（効く）→（大根／を）
（大根／を）→（買っ／た）
【００８５】
この場合、形態素の木構造は以下のように「ヘ」の字ではなく一直線になり、抽出されるパターンも一直線になる。
（風邪／に）→（効く）→（大根／を）→（買っ／た）
（風邪→に）→（効く）→（大根→を）→（買っ→た）
【００８６】
フローの説明に戻る。単語対が所定の構文パターンを形成している場合は、抽出された文脈パターンを文脈パターンリスト４０Ｂに追加する（Ｓ４１２）。単語対が所定の構文パターンを形成していない場合は、Ｓ４０６に戻る。
【００８７】
図１５は、検索部３２により実行される特徴的な処理の流れを示すフローチャートである。
【００８８】
まず、検索部３２は、単語対テーブル４０の最上段から順にから単語対を一つ取り出す（Ｓ５００）。
【００８９】
次に、検索部３２は、単語対に関して単語対テーブル４０の最後まで処理を行ったか否か、すなわち、Ｓ５００において新たな単語対を取り出すことができたかどうかを判定する（Ｓ５０２）。単語対テーブル４０の最後まで処理を行った場合は、本フローを終了する。
【００９０】
一方、単語対テーブル４０の最後まで処理を行っていない場合は、単語対テーブル４０最左列から順に文脈パターンを一つ取り出す（Ｓ５０４）。
【００９１】
次に、検索部３２は、文脈パターンに関して単語対テーブル４０の最後まで処理を行ったか否か、すなわち、Ｓ５０４において新たな文脈パターンを取り出すことができたかどうかを判定する（Ｓ５０６）。単語対テーブル４０の最後まで処理を行った場合は、Ｓ５００に戻る。
【００９２】
一方、単語対テーブル４０の最後まで処理を行っていない場合は、Ｓ５００及びＳ５０４において取り出された単語対及び文脈パターンと、入力されたクエリとを結合して検索キーを作成し（Ｓ５０８）、大規模文書２００を検索する（Ｓ５１０）。検索キーは、例えば、文脈パターン（例えば「ＡはＢに効く」）のＡ及びＢの箇所に単語対を埋め込んだ文と、入力されたクエリをAND条件で結合して作成される。
【００９３】
そして、出現数（ヒット件数）を取得し、出現数テーブル４２における、Ｓ５００及びＳ５０４で取り出された単語対及び文脈パターンに該当する箇所に格納し（Ｓ５１２）、Ｓ５０４に戻る。
【００９４】
なお、図１５のフローは、全てが自動的に進行するのではなく、検索実行毎にユーザに検索結果を出力し、確認操作を行わせるものであってもよい。
【００９５】
ここで、図１５のフローでは、形態素の木構造を扱わずに文字列を用いた検索を行うため、検索キーの設定方法や検索の仕様次第では、「風邪にはやっぱり大根が効く」のように「やっぱり」等が入っていると出現数がカウントされない可能性がある。しかしながら、（１）係る検索は大規模な文書から行なわれるため、「やっぱり」などが入っていない表現も多く存在することが期待される、（２）検索の処理では正確な出現数が必要になるのではなく、特定のカテゴリーにおける傾向が分かればよい、（３）「やっぱり」などの文字列が間に含まれる割合がパターン毎に一定だと仮定すると、傾向を知るときには、「やっぱり」などの表現による検索数の低下は無視できる等の理由から、大きな問題とはならない。むしろ、詳細な検索を行わないため、処理を単純化することができ、高速な処理を実現することができる。
【００９６】
図１６は、スコア算出部３４により実行される特徴的な処理の流れを示すフローチャートである。
【００９７】
まず、スコア算出部３４は、出現数テーブル４０を参照し、各文脈パターンの出現数、及び総出現数Nを算出する（Ｓ６００）。
【００９８】
次に、スコア算出部３４は、単語対テーブル４０の最上段から順に単語対を一つ取り出す（Ｓ６０２）。
【００９９】
次に、スコア算出部３４は、単語対に関して単語対テーブル４０の最後まで処理を行ったか否か、すなわち、Ｓ６０２において新たな単語対を取り出すことができたかどうかを判定する（Ｓ６０４）。単語対テーブル４０の最後まで処理を行った場合は、本フローを終了する。
【０１００】
一方、単語対テーブル４０の最後まで処理を行っていない場合は、単語対テーブル４０の最左列から順に文脈パターンを一つ取り出す（Ｓ６０６）。
【０１０１】
次に、スコア算出部３４は、文脈パターンに関して単語対テーブル４０の最後まで処理を行ったか否か、すなわち、Ｓ６０６において新たな文脈パターンを取り出すことができたかどうかを判定する（Ｓ６０８）。単語対テーブル４０の最後まで処理を行った場合は、Ｓ６０２に戻る。
【０１０２】
一方、単語対テーブル４０の最後まで処理を行っていない場合は、該当する単語対及び文脈パターンの組み合わせの出現数（例えば図中（２））に、該当する文脈パターンの総出現数（図中（３））を総出現数N（図中（４））で除した値を乗じた値を算出する。そして、この値を、該当する単語対のスコア（図中（１））に累積加算する（Ｓ６１０）。
【０１０３】
係る処理によって、上式（１）で表したスコアが、各単語対について算出されることになる。
【０１０４】
「まとめ」
以上説明した本実施例の知識獲得装置１によれば、適用先が決まった後に出現数テーブル４２の生成及びスコア算出のみを行うことができるため、クエリが入力されてから単語対を取得するまでの処理時間を短くすることができる。従って、各単語対とクエリとの関連性を適切に評価した評価値を、より迅速に出力することができる。
【０１０５】
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０１０６】
例えば、単語対テーブル４０に相当するデータは、外部から入力され、或いは予め補助記憶装置１６等に格納されているものとしてもよい。この場合、単語対獲得部３０を省略することができる。
【０１０７】
また、スコア算出部３４は、上記のように、単語対とクエリの関連性を評価した結果に基づく出力を行うものとしたが、反対に、文脈パターンとクエリの関連性を評価した結果に基づく出力を行うものとしてもよい。この場合、スコア算出部３４は、一の文脈パターンについての単語対毎の出現数比率と、全文脈パターンについての単語対毎の出現数比率と、の合致程度に基づいて、文脈パターンとカテゴリーの関連性を評価する。こうした出力は、利用者がエンドユーザ以外の場合に、好適に利用され得る。この場合、スコアの算出は、上式（１）における単語対と文脈パターンをそっくり入れ替えることにより行われる。こうすれば、文脈パターンとクエリとの関連性を適切に評価した評価値を、より迅速に出力することができる。
【０１０８】
また、ユーザが入力するクエリの内容の代表例として「カテゴリー」を挙げたが、クエリは検索対象を限定するものであればよく、一般的に「カテゴリー」という概念に含まれないクエリの入力を受け付けても構わない。例えば、「何年何月何日以降の文書」のような時期的な制限等が考えられる。
【０１０９】
以上の説明に関し、さらに以下の項を開示する。
（付記１）
特定の関係を有する単語の対と、該単語の対を含む文に関する形態素の構造とを関連付けて持つ単語対テーブルを格納した第１の記憶手段と、
前記第１の記憶手段から抽出した単語の対と形態素の構造に、検索対象を限定する特定の事象を加えた検索キーを作成し、該検索キーで検索対象の文書群を格納した第２の記憶手段を検索して該検索キーの出現数を求め、求めた出現数を前記単語の対と前記形態素の構造に関連付けて前記単語対テーブルに格納する出現数情報取得手段と、
前記単語対テーブルを参照し、各単語の対に関する形態素の構造毎の出現数傾向と、全単語の対に関する形態素の構造毎の出現数傾向との合致程度に基づいて、前記各単語の対と前記特定の事象との関連性を評価した評価値を出力する評価手段と、
を備える知識獲得装置。
（付記２）
付記１に記載の知識獲得装置であって、
前記評価手段は、各単語の対に関する形態素の構造毎の出現数に、全単語対に関する形態素の構造毎の出現数をそれぞれ乗じて合計し、総出現数で除した値を評価値として出力する手段である、
知識獲得装置。
（付記３）
付記１又は２に記載の知識獲得装置であって、
所与の単語の対又は形態素の構造を検索キーとして第２の記憶手段を検索し、得られた検索結果を検索キーに追加して更にデータ検索を行うことを繰り返すことにより、得られた複数の単語の対及び複数の形態素の構造を前記記憶手段に格納するデータ収集手段を更に備える、
知識獲得装置。
（付記４）
付記１ないし３のいずれか１項に記載の知識獲得装置であって、
前記単語の対を含む文に関する形態素の構造は、前記データ検索の対象文を係り受け解析をして得た最小限の部分構造となる形態素の構造から、前記単語対の形態素を除いた形態素の構造である、
知識獲得装置。
（付記５）
特定の関係を有する単語の対と、該単語の対を含む文に関する形態素の構造とを関連付けて持つ単語対テーブルを格納した第１の記憶手段と、
前記第１の記憶手段から抽出した単語の対と形態素の構造に、検索対象を限定する特定の事象を加えた検索キーを作成し、該検索キーで検索対象の文書群を格納した第２の記憶手段を検索して該検索キーの出現数を求め、求めた出現数を前記単語の対と前記形態素の構造に関連付けて前記単語対テーブルに格納する出現数情報取得手段と、
前記単語対テーブルを参照し、各形態素の構造に関する単語の対毎の出現数傾向と、全形態素の構造に関する単語の対毎の出現数傾向との合致程度に基づいて、前記各形態素の構造と前記特定の事象との関連性を評価した評価値を出力する評価手段と、
を備える知識獲得装置。
（付記６）
特定の関係を有する単語の対と、該単語の対を含む文に関する形態素の構造とを関連付けて持つ単語対テーブルを格納した第１の記憶手段から抽出した単語の対と形態素の構造に、検索対象を限定する特定の事象を加えた検索キーを作成し、該検索キーで検索対象の文書群を格納した第２の記憶手段を検索して該検索キーの出現数を求め、求めた出現数を前記単語の対と前記形態素の構造に関連付けて前記単語対テーブルに格納する処理と、
前記単語対テーブルを参照し、各単語の対に関する形態素の構造毎の出現数傾向と、全単語の対に関する形態素の構造毎の出現数傾向との合致程度に基づいて、前記各単語の対と前記特定の事象との関連性を評価した評価値を出力する処理と、
をコンピュータが実行する知識獲得方法。
（付記７）
特定の関係を有する単語の対と、該単語の対を含む文に関する形態素の構造とを関連付けて持つ単語対テーブルを格納した第１の記憶手段から抽出した単語の対と形態素の構造に、検索対象を限定する特定の事象を加えた検索キーを作成し、該検索キーで検索対象の文書群を格納した第２の記憶手段を検索して該検索キーの出現数を求め、求めた出現数を前記単語の対と前記形態素の構造に関連付けて前記単語対テーブルに格納する処理と、
前記単語対テーブルを参照し、各単語の対に関する形態素の構造毎の出現数傾向と、全単語の対に関する形態素の構造毎の出現数傾向との合致程度に基づいて、前記各単語の対と前記特定の事象との関連性を評価した評価値を出力する処理と、
をコンピュータに実行させるプログラム。
【符号の説明】
【０１１０】
１      知識獲得装置
１０    ＣＰＵ
１２    ドライブ装置
１４    記憶媒体
１６    補助記憶装置
１８    メモリ装置
２０    インタフェース装置
２２    入力装置
２４    出力装置
３０    単語対獲得部
３２    検索部
３４    スコア算出部
４０    単語対テーブル
４０Ａ  単語対リスト
４０Ｂ  文脈パターンリスト
４２    出現数テーブル
４４    スコア付単語対
５０    ネットワーク
１００  クライアントコンピュータ
１１０  オペレータ
１２０  ユーザ
２００  大規模文書
２５０  シード
２６０  クエリ
【図１】
0005594225.tif 000003
【図２】
0005594225.tif 000004
【図３】
0005594225.tif 000005
【図４】
0005594225.tif 000006
【図５】
0005594225.tif 000007
【図６】
0005594225.tif 000008
【図７】
0005594225.tif 000009
【図８】
0005594225.tif 000010
【図９】
0005594225.tif 000011
【図１０】
0005594225.tif 000012
【図１１】
0005594225.tif 000013
【図１２】
0005594225.tif 000014
【図１３】
0005594225.tif 000015
【図１４】
0005594225.tif 000016
【図１５】
0005594225.tif 000017
【図１６】
0005594225.tif 000018