(57)【要約】【課題】ユーザが欲する情報を抽出するための規則を効率よく作成する抽出規則作成システムを提供する。【解決手段】抽出規則作成手段８２は、タグ付きテキスト及びそのタグ付きテキスト中の文字列の位置を示す情報である文字列位置情報が与えられたときに、その文字列位置情報が示す位置に対応する単語又はタグと、その単語又はタグの前後の単語又はタグとを組み合わせて、タグ付きテキストから情報を抽出するための規則である抽出規則を作成する。適合文位置情報抽出手段８３は、タグ付きテキスト記憶手段８１に記憶されたタグ付きテキストごとに、抽出規則に適合する単語又はタグを含む適合文の位置を示す情報である適合文位置情報を抽出する。評価値算出手段８４は、１つのタグ付きテキスト内に現れる適合文がより少ないほど評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほど評価値を高く算出する。【選択図】図１５
2010262332.tif 000002
【特許請求の範囲】
【請求項１】
文字列中の任意の位置に付加された情報であって、当該情報が付加された文字列の位置を示す位置情報と、当該位置に対応する単語の属性を示す属性情報とを表す情報であるタグの集合を含む文書であるタグ付きテキストを記憶するタグ付きテキスト記憶手段と、
前記タグ付きテキスト及び当該タグ付きテキスト中の文字列の位置を示す情報である文字列位置情報が与えられたときに、当該文字列位置情報が示す位置に対応する単語又はタグと、当該単語又はタグの前後の単語又はタグとを組み合わせて、前記タグ付きテキストから情報を抽出するための規則である抽出規則を作成する抽出規則作成手段と、
前記タグ付きテキスト記憶手段に記憶されたタグ付きテキストごとに、前記抽出規則に適合する単語又はタグを含む適合文の位置を示す情報である適合文位置情報を抽出する適合文位置情報抽出手段と、
前記適合文位置情報をもとに、前記抽出規則を評価した値である評価値を算出する評価値算出手段とを備え、
前記評価値算出手段は、１つのタグ付きテキスト内に現れる適合文がより少ないほど前記評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほど前記評価値を高く算出する
ことを特徴とする抽出規則作成システム。
【請求項２】
複数のタグ付きテキストの中から、指定された条件に該当するタグ付きテキストを抽出し、当該タグ付きテキストをタグ付きテキスト記憶手段に登録するタグ付きテキスト登録手段を備え、
適合文位置情報抽出手段は、前記タグ付きテキスト登録手段が登録したタグ付きテキストごとに適合文位置情報を抽出する
請求項１記載の抽出規則作成システム。
【請求項３】
抽出規則作成手段は、作成した抽出規則のうち、タグを一つ以上含む組合せを選択する
請求項１または請求項２に記載の抽出規則作成システム。
【請求項４】
抽出規則作成手段は、文字列位置情報が示す位置に対応する単語又はタグの前後の単語又はタグのうち、予め定められた種類の自立語を組み合わせて抽出規則を作成する
請求項１から請求項３のうちのいずれか１項に記載の抽出規則作成システム。
【請求項５】
抽出規則作成手段は、文字列位置情報が示す位置に対応する単語又はタグと予め定められた種類の自立語との間にワイルドカードを組み合わせて抽出規則を作成する
請求項４記載の抽出規則作成システム。
【請求項６】
文字列中の任意の位置に付加された情報であって、当該情報が付加された文字列の位置を示す位置情報と、当該位置に対応する単語の属性を示す属性情報とを表す情報であるタグの集合を含む文書であるタグ付きテキスト及び当該タグ付きテキスト中の文字列の位置を示す情報である文字列位置情報が与えられたときに、当該文字列位置情報が示す位置に対応する単語又はタグと、当該単語又はタグの前後の単語又はタグとを組み合わせて、前記タグ付きテキストから情報を抽出するための規則である抽出規則を作成する抽出規則作成ステップと、
タグ付きテキスト記憶手段に記憶されたタグ付きテキストごとに、前記抽出規則に適合する単語又はタグを含む適合文の位置を示す情報である適合文位置情報を抽出する適合文位置情報抽出ステップと、
前記適合文位置情報をもとに、抽出規則を評価した値である評価値を算出する評価値算出ステップとを含み、
前記評価値算出ステップで、１つのタグ付きテキスト内に現れる適合文がより少ないほど前記評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほど前記評価値を高く算出する
ことを特徴とする抽出規則作成方法。
【請求項７】
複数のタグ付きテキストの中から、指定された条件に該当するタグ付きテキストを抽出し、当該タグ付きテキストをタグ付きテキスト記憶手段に登録するタグ付きテキスト登録ステップを含み、
適合文位置情報抽出ステップで、前記テキスト登録ステップで登録したタグ付きテキストごとに適合文位置情報を抽出する
請求項６記載の抽出規則作成方法。
【請求項８】
文字列中の任意の位置に付加された情報であって、当該情報が付加された文字列の位置を示す位置情報と、当該位置に対応する単語の属性を示す属性情報とを表す情報であるタグの集合を含む文書であるタグ付きテキストを記憶するタグ付きテキスト記憶手段を備えたコンピュータに適用される抽出規則作成プログラムであって、
前記コンピュータに、
前記タグ付きテキスト及び当該タグ付きテキスト中の文字列の位置を示す情報である文字列位置情報が与えられたときに、当該文字列位置情報が示す位置に対応する単語又はタグと、当該単語又はタグの前後の単語又はタグとを組み合わせて、前記タグ付きテキストから情報を抽出するための規則である抽出規則を作成する抽出規則作成処理、
前記タグ付きテキスト記憶手段に記憶されたタグ付きテキストごとに、前記抽出規則に適合する単語又はタグを含む適合文の位置を示す情報である適合文位置情報を抽出する適合文位置情報抽出処理、
前記適合文位置情報をもとに、前記抽出規則を評価した値である評価値を算出する評価値算出処理を実行させ、
前記評価値算出処理で、１つのタグ付きテキスト内に現れる適合文がより少ないほど前記評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほど前記評価値を高く算出させる
ための抽出規則作成プログラム。
【請求項９】
コンピュータに、
複数のタグ付きテキストの中から、指定された条件に該当するタグ付きテキストを抽出し、当該タグ付きテキストをタグ付きテキスト記憶手段に登録するタグ付きテキスト登録処理を実行させ、
適合文位置情報抽出処理で、前記テキスト登録処理で登録したタグ付きテキストごとに適合文位置情報を抽出させる
請求項８記載の抽出規則作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書から情報を抽出するための抽出規則を作成する抽出規則作成システム、抽出規則作成方法及び抽出規則作成プログラムに関する。
【背景技術】
【０００２】
ある文書の中から必要な情報を抽出する場合、ユーザが、何らかの規則（パターン）に合致する情報を抽出したいと考える場合がある。抽出したい情報のパターンが分かれば、そのパターンを用いて他の文書からも情報を抽出することが可能になる。
【０００３】
例えば、ユーザが、文書内から人名を抽出する場合について考える。仮に、ユーザが、
人名の中から容疑者名を集めたいと考えている場合、ユーザが抽出したい情報のパターンは「「人名」＋容疑者」であると推測できる。また、ユーザが、姓が「ａｂ（ａｂは、姓を表す漢字２文字）」である人名を集めたいと考えている場合、ユーザが抽出したい情報のパターンは「ａｂ＋「名詞」」であると推測できる。このように、ユーザが抽出した情報のパターンが分かれば、そのパターンに合致する情報を他の文書からも抽出できるようになる。
【０００４】
特許文献１には、訓練用コーパスから情報抽出規則を簡易に生成する情報抽出規則生成装置が記載されている。特許文献１に記載された情報抽出規則生成装置は、木構造表示部が表示部に構文木を表示させる。作業者は、表示部に表示された構文木を参照しながら、マウス操作やキーボード操作に基づいてアノテーションを入力する。木構造正規表現抽出部は、木構造及びアノテーションをもとに、対応する規則を表示する木構造表現を抽出する。
【０００５】
また、非特許文献１には、ルールの自動生成と対話的選択に基づく情報抽出ルール作成支援方法が記載されている。非特許文献１に記載された方法では、１つの事例から予め複数の抽出規則を自動作成し、各抽出規則に基づいて抽出処理を実行する。そして、抽出結果をユーザに提示した後、ユーザはその抽出結果に対する正否を対話的に入力することで、適切な抽出規則を絞り込む。これにより、ユーザは抽出結果の正否を入力するのみで、適切な抽出規則を作成することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−３１８８０９号（段落００２８〜００３２）
【非特許文献】
【０００７】
【非特許文献１】河合剛巨、安藤真一、「ルールの自動生成と対話的選択に基づく情報抽出ルール作成支援の提案」、言語処理学会第１３回年次大会論文集、言語処理学会、Ｄ３−１、２００７年３月
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ユーザが文書内から人名を抽出する場合、ユーザは、人名に関連する何らかのパターンに合致する情報を欲していると考えられる。しかし、上述の例のように、ユーザが文書内から人名を抽出する場合、ユーザが抽出したい情報を表すパターンは複数推測できる。例えば、ユーザが人名の中から容疑者名を集めたい場合、ユーザが抽出したい情報のパターンは、「「人名」＋容疑者」になる。また、ユーザが、姓が「ａｂ（ａｂは、姓を表す漢字２文字）」である人名を集めたいと考えている場合には、ユーザが抽出したい情報のパターンは、「ａｂ＋「名詞」」になる。このように、「文書内から人名を抽出する」という情報だけでは、ユーザが欲する情報を抽出するためのパターンは複数推測されるため、情報を抽出するためのパターンを効率よく作成することは困難である場合が多い。
【０００９】
特許文献１に記載された情報抽出規則生成装置では、ユーザが、表示部に表示された構文木をもとに複雑な抽出規則を記述しなければならない。そのため、特許文献１に記載された装置を使って抽出規則を作成するためには、多くの時間を要してしまうという課題がある。また、特許文献１に記載された装置では、入力方法が複雑なため、ユーザが操作方法を理解しなければならないという課題がある。
【００１０】
また、非特許文献１に記載された方法では、適切な抽出規則を作成するために、ユーザは抽出結果に対する正否を入力するのみでよい。しかし、適切な抽出結果が得られるまで、ユーザは繰り返し抽出結果の正否を入力する必要がある。そのため、抽出規則を生成するためには、依然としてユーザの手間が大きいという問題がある。
【００１１】
そこで、本発明は、ユーザが欲する情報を抽出するための規則を効率よく作成することができる抽出規則作成システム、抽出規則作成方法及び抽出規則作成プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明による抽出規則作成システムは、文字列中の任意の位置に付加された情報であって、その情報が付加された文字列の位置を示す位置情報と、その位置に対応する単語の属性を示す属性情報とを表す情報であるタグの集合を含む文書であるタグ付きテキストを記憶するタグ付きテキスト記憶手段と、タグ付きテキスト及びそのタグ付きテキスト中の文字列の位置を示す情報である文字列位置情報が与えられたときに、その文字列位置情報が示す位置に対応する単語又はタグと、その単語又はタグの前後の単語又はタグとを組み合わせて、タグ付きテキストから情報を抽出するための規則である抽出規則を作成する抽出規則作成手段と、タグ付きテキスト記憶手段に記憶されたタグ付きテキストごとに、抽出規則に適合する単語又はタグを含む適合文の位置を示す情報である適合文位置情報を抽出する適合文位置情報抽出手段と、適合文位置情報をもとに、抽出規則を評価した値である評価値を算出する評価値算出手段とを備え、評価値算出手段が、１つのタグ付きテキスト内に現れる適合文がより少ないほど評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほど評価値を高く算出することを特徴とする。
【００１３】
本発明による抽出規則作成方法は、文字列中の任意の位置に付加された情報であって、その情報が付加された文字列の位置を示す位置情報と、その位置に対応する単語の属性を示す属性情報とを表す情報であるタグの集合を含む文書であるタグ付きテキスト及びそのタグ付きテキスト中の文字列の位置を示す情報である文字列位置情報が与えられたときに、その文字列位置情報が示す位置に対応する単語又はタグと、その単語又はタグの前後の単語又はタグとを組み合わせて、タグ付きテキストから情報を抽出するための規則である抽出規則を作成する抽出規則作成ステップと、タグ付きテキスト記憶手段に記憶されたタグ付きテキストごとに、抽出規則に適合する単語又はタグを含む適合文の位置を示す情報である適合文位置情報を抽出する適合文位置情報抽出ステップと、適合文位置情報をもとに、抽出規則を評価した値である評価値を算出する評価値算出ステップとを含み、評価値算出ステップで、１つのタグ付きテキスト内に現れる適合文がより少ないほど評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほど評価値を高く算出することを特徴とする。
【００１４】
本発明による抽出規則作成プログラムは、文字列中の任意の位置に付加された情報であって、その情報が付加された文字列の位置を示す位置情報と、その位置に対応する単語の属性を示す属性情報とを表す情報であるタグの集合を含む文書であるタグ付きテキストを記憶するタグ付きテキスト記憶手段を備えたコンピュータに適用される抽出規則作成プログラムであって、コンピュータに、タグ付きテキスト及びそのタグ付きテキスト中の文字列の位置を示す情報である文字列位置情報が与えられたときに、その文字列位置情報が示す位置に対応する単語又はタグと、その単語又はタグの前後の単語又はタグとを組み合わせて、タグ付きテキストから情報を抽出するための規則である抽出規則を作成する抽出規則作成処理、タグ付きテキスト記憶手段に記憶されたタグ付きテキストごとに、抽出規則に適合する単語又はタグを含む適合文の位置を示す情報である適合文位置情報を抽出する適合文位置情報抽出処理、適合文位置情報をもとに、抽出規則を評価した値である評価値を算出する評価値算出処理を実行させ、評価値算出処理で、１つのタグ付きテキスト内に現れる適合文がより少ないほど評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほど評価値を高く算出させることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、ユーザが欲する情報を抽出するための規則を効率よく作成することができる。
【図面の簡単な説明】
【００１６】
【図１】タグ付きテキストの例を示す説明図である。
【図２】抽出規則を表現した構文の例を示す説明図である。
【図３】本発明による抽出規則作成システムの一実施形態を示すブロック図である。
【図４】対象文書記憶部１１内のデータ形式の例を示す説明図である。
【図５】パターン合成部１２によって作成されたパターンの例を示す説明図である。
【図６】パターン評価部１３が算出した評価値の例を示す説明図である。
【図７】合成ステップの例を示すフローチャートである。
【図８】パターンを選び出す方法の例を示す状態遷移図である。
【図９】ステップＳ１０におけるアルゴリズムの例を示すフローチャートである。
【図１０】ステップＳ４０におけるアルゴリズムの例を示すフローチャートである。
【図１１】評価ステップの例を示すフローチャートである。
【図１２】検索処理の例を示すフローチャートである。
【図１３】ステップＳ５２における判定処理の例を示すフローチャートである。
【図１４】ステップＳ１０〜Ｓ３０で作成したパターンの例を示す説明図である。
【図１５】本発明の最小構成を示すブロック図である。
【発明を実施するための形態】
【００１７】
以下、本発明の説明で使用する用語について定義する。タグ付きテキストとは、少なくとも、文字列の集合である本文と、文字列中の任意の位置に付加されたタグの集合を含む文書である。図１は、タグ付きテキストの例を示す説明図である。図１に例示するタグ付きテキストは、「奈良県警は１４日、ａｂｃｄ容疑者（２０）を強盗殺人の容疑で逮捕したと発表。」という本文（ただし、ａｂは姓を表す漢字２文字、ｃｄは名を表す漢字２文字）と、本文中の各文字列に対して付加されたタグの集合を含んでいることを示す。
【００１８】
タグとは、単語の属性を表す文字列（以下、タグ名と記す。）と、タグを付加する文字列の本文中の位置（開始位置及び終了位置）を含む情報である。開始位置及び終了位置は、タグが付加された文字列の本文中の位置を、例えば、文頭を「０」とし、文字間を数えた数で表現する。図１に例示するタグ付きテキストでは、「ａｂｃｄ」に付加されたタグを、タグ名「人名」、開始位置「９」、終了位置「１３」とするタグを用いて表現できる。また、以下の説明では、タグ名をＴとするタグを「Ｔタグ」と記すこともある。
【００１９】
指定抽出位置とは、ユーザ又は外部のプログラム等が抽出しようとする文字列を指定するタグ付きテキスト中の文字列の位置であり、開始位置及び終了位置によって表される情報である。例えば、図１に例示するタグ付きテキストに対し、ユーザが指定抽出位置として、開始位置９文字目、終了位置１３文字目を指定した場合、そのユーザは、文字列「ａｂｃｄ」を抽出したいと考えていることが分かる。
【００２０】
事例とは、一つのタグ付きテキストと、そのタグ付きテキストに対して指定する指定抽出位置の組を表す情報であり、ユーザ又は外部のプログラム等により作成される。
【００２１】
抽出規則とは、タグ付きテキストから情報を抽出するための規則である。この抽出規則を適切に作成することにより、ユーザが欲する情報をタグ付きテキストから抽出できるようになる。抽出規則は、少なくとも、文字列、タグ名及びワイルドカードの組み合わせ（テンプレートと記すこともある。）で表現され、そのテンプレート中には、指定抽出位置を示す情報を含む。
【００２２】
図２は、本発明における抽出規則を表現した構文の例を示す説明図である。図２に例示する構文では、抽出規則Ｒが、フレーズＰＨと抽出位置パターンＥＰとからなる列を一つ以上含む文字列で定義されていることを示す。フレーズＰＨとは、一つ以上の条件ＫＥＹからなる文字列である。また、条件ＫＥＹは、文字列そのもの、”［”と”］”で囲まれたタグ名、ワイルドカード（＊）、又は空文字（φ）のいずれかにより表現される。なお、抽出規則を表現した構文のことを、抽出するパターン（もしくは、単にパターン）と記すこともある。
【００２３】
抽出位置パターンＥＰは、指定抽出位置におけるタグ付きテキストの構成要素を組み合わせたパターンである。具体的には、抽出位置パターンＥＰは、一つ以上タグを含み、文字列とタグからなるパターンである。図２に例示する構文では、抽出位置パターンＥＰが、構成要素ＥＰＨの前後を記号「＄」で囲んだ文字列として定義されていることを示す。構成要素ＥＰＨは、タグと条件ＥＫＥＹとからなる列を一つ以上含む文字列、又は、構成要素ＥＰＨ自身に、条件ＥＫＥＹを結合した文字列である。また、条件ＥＫＥＹは、文字列そのもの、又は、”［”と”］”で囲まれたタグ名、又は空文字（φ）のいずれかにより表現される。
【００２４】
抽出規則Ｒの例として、「＄［人名］＄容疑者」という規則が挙げられる。この抽出規則は、人名タグと、「容疑者」という文字列が隣接している部分から、人名タグが付加されている部分の文字列を抽出する、という規則であることを示す。
【００２５】
また、別の例として、「奈良＊＄ａｂ［名詞］＄」（ただし、ａｂは、姓を表す漢字２文字）という規則が挙げられる。この抽出規則は、「奈良」という文字列の後ろに任意の文字列（＊）が存在し、その後ろに「ａｂ」という文字列が存在し、さらにその直後に名詞タグが隣接している文から、「ａｂ」と名詞タグ部分の文字列とを合わせて抽出する、という規則であることを示す。
【００２６】
なお、以下の説明では、タグ付きテキストの集合と一つ以上の事例とをもとに抽出規則を作成する問題を抽出規則作成問題と呼ぶことがある。
【００２７】
以下、本発明の実施形態を図面を参照して説明する。
【００２８】
図３は、本発明による抽出規則作成システムの一実施形態を示すブロック図である。本発明における抽出規則作成システムは、対象文書記憶部１１と、パターン合成部１２と、パターン評価部１３と、文書検索部１４とを備えている。
【００２９】
対象文書記憶部１１は、抽出対象のタグ付きテキストの集合を記憶する記憶装置である。対象文書記憶部１１は、図１に例示したタグ付きテキストを任意の形式で保持する。図４は、対象文書記憶部１１がタグ付きテキストを記憶する形式の例を示す説明図である。図４に示す例では、対象文書記憶部１１が、本文テーブルとタグテーブルの二つのテーブルに分けて図１に例示したタグ付きテキストを記憶していることを示す。
【００３０】
本文テーブルは、タグ付きテキストを文ごとに記憶するテーブルである。本文テーブルは、タグ付きテキストのユニークな識別子である文書ＩＤと、文のユニークな識別子である文ＩＤとを、本文の文字列と対応付けて記憶する。
【００３１】
また、タグテーブルは、あるタグ付きテキストに付加されたすべてのタグを記憶するテーブルである。タグテーブルは、あるタグのタグ名と、本文の開始位置及び終了位置と、タグが付加された文書の文書ＩＤと、タグが付加された文の文ＩＤとを対応付けて記憶する。
【００３２】
タグ付きテキストは、例えば、管理者によって予め対象文書記憶部１１に登録されていてもよく、また、後述の文書検索部１４によって対象文書記憶部１１に登録されてもよい。
【００３３】
パターン合成部１２は、後述する方法により、一つ以上の事例（すなわち、タグ付きテキストと、そのタグ付きテキストに対して指定する指定抽出位置の組）が与えられたときに、指定抽出位置のタグ付きテキストの単語又はタグと、その単語又はタグの前後の単語又はタグとをもとに抽出規則の候補を合成（作成）する。図５は、パターン合成部１２によって作成されたパターンの例を示す説明図である。例えば、図１に例示するタグ付きテキストと、そのタグ付きテキストの９文字目から１３文字目を指定抽出位置とする事例が与えられると、パターン合成部１２は、その事例及びその指定抽出位置付近の単語又はタグとをもとに、図５に例示するパターンを作成する。
【００３４】
パターン評価部１３は、パターン合成部１２が作成したパターンが対象文書記憶部１１に記憶されたタグ付きテキスト内に発生する位置、及びその発生頻度の分布を調べ、この分布をもとに評価値を算出する。すなわち、パターン評価部１３は、対象文書記憶部１１に記憶されたタグ付きテキストごとに、パターン合成部１２が作成したパターンに適合する単語又はタグを含む文の位置を抽出し、その位置をもとに評価値を算出する。具体的には、パターン評価部１３は、対象文書記憶部１１に記憶されたタグ付きテキストごとに、パターン合成部１２が作成した抽出規則（パターン）に適合する単語又はタグを含む文の位置を抽出する。以下、抽出規則に適合する単語又はタグを含む文を適合文と記す。そして、パターン評価部１３は、１つのタグ付きテキスト内に現れる適合文がより少ないほどその抽出規則の評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほどその抽出規則の評価値を高く算出する。
【００３５】
例えば、対象文書記憶部１１内のタグ付きテキスト内にパターンｐが登場した総数（すなわち、適合するパターンが含まれる数）をｐｆ（ｐ）、対象文書記憶部１１内のタグ付きテキスト内にパターンｐが登場した回数（すなわち、適合するパターンが含まれる文書の種類）をｄｆ（ｐ）とするとき、評価値ｉｐｆｄｆ（ｐ）は次の式１で算出できる。
【００３６】
【数１】
2010262332.tif 000003
【００３７】
以下の説明では、パターン評価部１３が式１を用いて評価値を算出する場合について説明する。なお、評価値の算出方法は、１つのタグ付きテキスト内に現れる適合文がより少ないほどその抽出規則の評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほどその抽出規則の評価値を高く算出するような他の式を用いて算出してもよい。
【００３８】
図６は、パターン評価部１３が算出した評価値の例を示す説明図である。パターン評価部１３は、例えば、図５に例示するパターンごとに、対象文書記憶部１１に記憶されたタグ付きテキスト内に発生する位置及びその発生頻度の分布を調べ、その分布をもとに評価値を算出する。
【００３９】
文書検索部１４は、ユーザもしくは外部のプログラム等が検索クエリとして抽出条件（抽出対象のキーワード）を指定すると、その条件に該当するタグ付きテキストを抽出する。文書検索部１４は、例えば、指定した条件に該当するタグ付きテキストを抽出する文書検索システムなどにより実現される。抽出対象のタグ付きテキストは、文書検索部１４内の記憶部（図示せず）に、例えば、図４に例示するフォーマットで予め記憶されている。文書検索部１４は、その記憶部（図示せず）から条件を満たす文書ＩＤ及び文ＩＤのリストを抽出し、各文書ＩＤが示すタグ付きテキストを読み込み、そのタグ付きテキストを対象文書記憶部１１に登録してもよい。なお、対象文書記憶部１１にタグ付きテキストを登録するとは、対象文書記憶部１１にタグ付きテキストを記憶させることを意味する。
【００４０】
また、上記記憶部に記憶されたフォーマットが、図４に例示するフォーマットと異なる場合、文書検索部１４は、抽出条件に該当するタグ付きテキストを、図４に例示するフォーマットに変換して、対象文書記憶部１１に登録してもよい。
【００４１】
上記内容により、文書検索部１４は、キーワードで表現された検索クエリを元に、抽出対象のタグ付きテキストの集合を選択的に収集し、対象文書記憶部１１内に挿入する処理を行うと言うことができる。
【００４２】
このように、文書検索部１４が、ユーザもしくは外部のプログラム等が指定した検索クエリをもとにタグ付きテキストを抽出し、抽出したタグ付きテキストを対象文書記憶部１１に登録することにより、対象文書記憶部１１内のタグ付きテキストの集合を変化させることができる。抽出対象のタグ付きテキストを変化させることにより、ユーザが欲するパターンの評価値をより高くできるため、効率よく抽出規則を取り出すことができる。
【００４３】
パターン合成部１２と、パターン評価部１３と、文書検索部１４とは、プログラム（抽出規則作成プログラム）に従って動作するコンピュータのＣＰＵによって実現される。例えば、プログラムは、パターン合成部１２、パターン評価部１３及び文書検索部１４を含む装置が備える記憶部（図示せず）に記憶され、ＣＰＵは、そのプログラムを読み込み、プログラムに従って、パターン合成部１２、パターン評価部１３及び文書検索部１４として動作してもよい。また、パターン合成部１２と、パターン評価部１３と、文書検索部１４とは、それぞれが専用のハードウェアで実現されていてもよい。
【００４４】
次に、動作について説明する。以下の説明では、まず、パターン合成部１２が、入力された事例をもとにパターンを合成（作成）し、パターン評価部１３が、パターン合成部１２が作成した各パターンを評価する処理（以下、これらの処理をまとめて、事例入力プロセスと記すこともある。）について説明する。その後、文書検索部１４が、内部の記憶部（図示せず）に記憶するタグ付きテキストの中から、キーワードを本文に含むタグ付きテキストの集合を作成する処理（以下、この処理を、検索プロセスと記すこともある。）について説明する。
【００４５】
なお、以下の説明では、パターン合成部１２が、入力された事例をもとにパターンを合成（作成）する処理を、合成ステップと記し、パターン評価部１３が、パターン合成部１２が作成した各パターンを評価する処理を、評価ステップと記す。
【００４６】
初めに、事例入力プロセスについて説明する。事例入力プロセスは、ユーザもしくは外部のプログラムがパターン合成部１２に事例を入力することにより処理を開始する。
【００４７】
図７は、合成ステップの例を示すフローチャートである。パターン合成部１２は、ある事例（すなわち、タグ付きテキストと指定抽出位置を含む情報）が入力されると、まず、タグ付きテキストから指定抽出位置の文字列とタグをすべて取り出し、タグを一つ以上含むすべての組み合わせを抽出してパターンを作成する（ステップＳ１０）。
【００４８】
図８は、パターン合成部１２がパターンを選び出す方法の例を示す状態遷移図である。図８に示す例では、事例として、図１に例示するタグ付きテキストと、指定抽出位置「９文字目から１３文字目」とが入力された場合について説明する。パターン合成部１２は、図１に例示するタグ付きテキストから、図８に例示する状態遷移のすべてのパターンを調べ、「ａｂｃｄ」，「ａｂ[名詞]」，「[名詞]ｃｄ」，「[名詞][名詞]」，「[人名]」という５つのパターンを取り出す。このうち、タグを一つ以上含む組合せとして、「ａｂ[名詞]」，「[名詞]ｃｄ」，「[名詞][名詞]」，「[人名]」の４つのパターンを抽出する。
【００４９】
タグを含まないパターンは、特定の文字列（たとえば、「ａｂｃｄ」という文字列）しか収集できず、抽出規則としては効果が小さい。そのため、タグを一つ以上含む組合せを抽出することにより、無駄なパターンを予め省き、以後の計算量を小さくすることができる。
【００５０】
ステップＳ１０における処理（アルゴリズム）について、図９を用いて説明する。図９は、ステップＳ１０におけるアルゴリズムの例を示すフローチャートである。図９に例示するアルゴリズムは、メソッド（generate）を再帰的に呼び出すことによってパターンを作成する。ここで、generateメソッドは、generateメソッドが呼び出された時点で作成されているパターンｎｏｗと、その時点の位置ｐｏｓと、終了位置ｅｎｄという３つの引数を持つ。
【００５１】
初めに、パターン合成部１２は、generateメソッドの引数として、ｎｏｗ＝””（空）、ｐｏｓ＝指定抽出位置の開始位置、ｅｎｄ＝指定抽出位置の終了位置、を受け取り、generateメソッドが示す処理を開始する。generateメソッドにおいて、パターン合成部１２は、位置ｐｏｓが終了位置ｅｎｄより大きいかどうかを調べる（ステップＳ１１）。位置ｐｏｓが終了位置ｅｎｄより大きい場合（ステップＳ１１におけるＹＥＳ）、パターン合成部１２は、処理を終了する（ステップＳ１２）。位置ｐｏｓが終了位置ｅｎｄより大きくなく（ステップＳ１１におけるＮＯ）、位置ｐｏｓが終了位置ｅｎｄと等しい場合（ステップＳ１３におけるＹＥＳ）、パターン合成部１２は、状態遷移の終了位置に到達したと判定し、その時点のパターンｎｏｗを調べる。パターンｎｏｗにタグが一つでも含まれていれば、パターンｎｏｗの値をパターンとして抽出し、処理を終了する（ステップＳ１４）。
【００５２】
一方、位置ｐｏｓが終了位置ｅｎｄと等しくない場合（ステップＳ１３におけるＮＯ）、パターン合成部１２は、位置ｐｏｓを開始位置とするタグＴをすべて取り出し、それらのタグＴを現在のパターンに追加する。また、パターン合成部１２は、現在の位置ｐｏｓをタグＴの終了位置に更新した情報でgenerateメソッドを呼び出す（ステップＳ１５）。さらに、パターン合成部１２は、現在の位置ｐｏｓの次の文字ｃを取り出す（ステップＳ１６）。そして、パターン合成部１２は、パターンｎｏｗにその文字ｃを追加し、現在の位置ｐｏｓに１を加算した情報でgenerateメソッドを呼び出す（ステップＳ１７）。
【００５３】
generateメソッドは、上記内容を実行するための処理である。すなわち、generateメソッドは、指定抽出位置を右に移動させながらパターンを作成する処理であると言える。
【００５４】
次に、パターン合成部１２は、指定抽出位置の右側Ｒ文字の文字列とタグとを組み合わせたパターン、及び、指定抽出位置の左側Ｌ文字の文字列とタグとを組み合わせたパターンを作成する（図７におけるステップＳ２０）。ＲとＬの値は、例えば、予めユーザや開発者によって指定される任意の整数である。
【００５５】
指定抽出位置の右側Ｒ文字（左側Ｌ文字）の文字列とタグを組み合わせたパターンは、図９に例示するアルゴリズムと同様のアルゴリズムによって作成できるため、詳細な説明は省略する。すなわち、指定抽出位置の右側Ｒ文字のパターンを作成する場合、パターン合成部１２は、generateメソッドの引数を、ｎｏｗ＝””（空）、ｐｏｓ＝指定抽出位置の終了位置、ｅｎｄ＝指定抽出位置の終了位置＋Ｒとして処理を行えばよい。また、指定抽出位置の左側Ｌ文字のパターンを作成する場合、パターン合成部１２は、generateメソッドの引数を、ｎｏｗ＝””（空）、ｐｏｓ＝指定抽出位置の開始位置−Ｌ、ｅｎｄ＝指定抽出位置の開始位置として処理を行えばよい。
【００５６】
なお、指定抽出位置の右側Ｒ文字（左側Ｌ文字）には、タグが含まれていなくてもよいため、この場合、パターン合成部１２は、ステップＳ１４において、パターンｎｏｗにタグが含まれているか否か判断してなくてよい。
【００５７】
次に、パターン合成部１２は、名詞タグを元にパターンを作成する（図７におけるステップＳ３０）。具体的には、パターン合成部１２は、指定抽出位置、指定抽出位置の左側Ｌ文字、及び指定抽出位置の右側Ｒ文字以外に登場する名詞をすべて取り出す。そして、パターン合成部１２は、これらの名詞のうち、指定抽出位置に対して左側にある名詞を左パターン語Ｐｌｗ、指定抽出位置に対して右側にある名詞を右パターン語Ｐｒｗとして抽出する。
【００５８】
なお、以下の説明では、パターン合成部１２が名詞タグをもとにパターンを作成（すなわち、本文中から名詞を取り出す）場合について説明するが、パターン合成部１２がパターンを作成する対象とするタグは、名詞タグに限られない。例えば、名詞以外の動詞、形容詞、形容動詞などの自立語であってもよい。このような語を利用してパターンを作成することにより、助詞のように一般的で無意味な語をパターンから排除することができる。
【００５９】
パターン合成部１２は、ステップＳ１０において作成されたパターンの一覧（以下、リストＡと記す。）と、ステップＳ２０において作成された右パターンの一覧（以下、リストＲＰと記す。）及び左パターンの一覧（以下、リストＬＰと記す。）と、ステップＳ３０において作成された左パターン語の一覧（以下、リストＬＷと記す。）及び右パターン語の一覧（以下、リストＲＷと記す。）とを合成して、抽出規則の候補を作成する（ステップＳ４０）。
【００６０】
ステップＳ４０における処理（アルゴリズム）について、図１０を用いて説明する。図１０は、ステップＳ４０におけるアルゴリズムの例を示すフローチャートである。図１０に例示するアルゴリズムでは、まずパターン合成部１２は、リストＲＰ、リストＬＰ、リストＬＷ及びリストＲＷに対して、空文字””を追加する（ステップＳ４１）。この空文字””は、そのリストに含まれるパターンを利用しないことを意味するものである。パターン合成部１２は、各リスト（すなわち、リストＡ、リストＲＰ、リストＬＰ、リストＬＷ及びリストＲＷ）からそれぞれ一つのパターンを取り出し、取り出した各リストのパターンのすべての組合せに対して以下のステップＳ４２〜Ｓ４７に示す処理を行う。
【００６１】
パターン合成部１２は、リストＡから取り出したパターンに指定抽出位置を示す記号である「＄」を追加したパターンＲを作成する（ステップＳ４２）。次に、パターン合成部１２は、リストＲＰから取り出したパターンＰｒを、パターンＲの右側に追加する（ステップＳ４３）。同様に、パターン合成部１２は、リストＬＰから取り出したパターンＰｌを、パターンＲの左側に追加する（ステップＳ４４）。次に、パターン合成部１２は、リストＲＷから取り出したパターンＰｒｗの左側にワイルドカード「＊」を付加したパターンを、パターンＲの右側に追加する（ステップＳ４５）。同様に、パターン合成部１２は、リストＬＷから取り出したパターンＰｌｗの右側にワイルドカード「＊」を付加したパターンを、パターンＲの左側に追加する（ステップＳ４６）。最後に、パターン合成部１２は、作成したパターンＲをパターン評価部１３に通知する（ステップＳ４７）。このように、パターン合成部１２は、与えられた事例をもとに作成したパターンをパターン評価部１３に通知する。
【００６２】
次に、評価ステップの動作について説明する。図１１は、評価ステップの例を示すフローチャートである。パターン評価部１３は、パターン合成部１２から各パターンを受け取ると、パターンに適合する文を探し、適合する文の文書ＩＤと文ＩＤの組を抽出する（ステップＳ５０）。そして、パターン評価部１３は、抽出した文書ＩＤ及び文ＩＤから、受け取ったパターンの評価値を算出する（ステップＳ６０）。なお、以下の説明では、ステップＳ５０における処理を検索処理、ステップＳ６０における処理を、評価値算出処理と記す。
【００６３】
検索処理について、図１２を用いて説明する。図１２は、検索処理の例を示すフローチャートである。パターン評価部１３は、対象文書記憶部１１に記憶された本文テーブル内の各レコードを順に読み込み、各レコードの文書ＩＤ及び文ＩＤに対応するタグをタグテーブルから読み込む（ステップＳ５１）。次にパターン評価部１３は、各文及び各タグと入力されたパターンとを比較し（ステップＳ５２）、両者の間にマッチングが成立（すなわち、パターンに適合する文、又はタグが存在）したときに、その文の文書ＩＤと文ＩＤとを抽出する（ステップＳ５３）。
【００６４】
なお、検索処理を行う方法は、上記方法に限定されない。パターン合成部１２が作成したパターンに適合する文の位置を抽出できる方法であれば、他の方法であってもよい。
【００６５】
ステップＳ５２において、両者の間にマッチングが成立したか否か判定する処理について、図１３を用いて説明する。図１３は、ステップＳ５２における判定処理の例を示すフローチャートである。パターン評価部１３は、パターン合成部１２から受け取ったパターンＰと、ステップＳ５１で読み込んだ文Ｓ及びその文Ｓに付加されたタグの集合ＴＬｉｓｔをもとに、以下のステップＳ７１〜Ｓ８５の処理を行う。
【００６６】
パターン評価部１３は、予め定められた構文（”［”, ”］”，”＊”，”＄”の記号）に基づき、パターンＰを、タグ名、文字列及びワイルドカードの各条件に区切り、区切った条件の一覧（以下、条件列リストＬｉｓｔと記す。）を作成する（ステップＳ７１）。例えば、「＄［人名］＄容疑者＊逮捕」というパターンの場合、パターン評価部１３は、「［人名］」、「容疑者」、「＊」、「逮捕」という４つの条件に区切ることができる。パターン評価部１３は、区切った条件を、パターンの先頭から順に条件列リストＬｉｓｔに格納する。
【００６７】
次に、パターン評価部１３は、文中の位置を表す変数ｉを０に、ワイルドカードの有無を表す変数ｆｌａｇを１にそれぞれ初期化する（ステップＳ７２）。そして、パターン評価部１３は、条件列リスＬｉｓｔから先頭の条件Ｃを取り出す（ステップＳ７３）。取り出した条件Ｃがタグ名の場合（ステップＳ７４におけるＹＥＳ）、パターン評価部１３は、変数ｆｌａｇが１であるか否か調べる（ステップＳ７５）。変数ｆｌａｇが１の場合（ステップＳ７５におけるＹＥＳ）、この状態は、ワイルドカードが有効であるか、パターンの先頭であるかのいずれかであると言える。この場合、パターン評価部１３は、タグの集合ＴＬｉｓｔの中から、開始位置が変数ｉより大きく、条件Ｃで指定されたタグＴが存在するか否か調べる（ステップＳ７６）。条件Ｃで指定されたタグＴがタグの集合ＴＬｉｓｔに存在する場合（ステップＳ７６におけるＹＥＳ）、パターン評価部１３は、タグＴが条件Ｃに一致したと判断して、変数ｉにタグＴの終了位置を代入する（ステップＳ７８）。
【００６８】
一方、ステップＳ７６において、条件Ｃで指定されたタグＴがタグの集合ＴＬｉｓｔに存在しない場合（ステップＳ７６におけるＮＯ）、パターン評価部１３は、パターンが不一致である旨の情報を出力し、処理を終了する。
【００６９】
また、ステップＳ７５において、変数ｆｌａｇが１でない場合（ステップＳ７５におけるＮＯ）、ワイルドカードは有効でないことが分かる。この場合、パターン評価部１３は、タグの集合ＴＬｉｓｔの中から、開始位置が変数ｉと等しく、条件Ｃで指定されたタグＴが存在するか否か調べる（ステップＳ７７）。条件Ｃで指定されたタグＴがタグの集合ＴＬｉｓｔに存在する場合（ステップＳ７７におけるＹＥＳ）、パターン評価部１３は、タグＴが条件Ｃに一致したと判断して、変数ｉにタグＴの終了位置を代入する（ステップＳ７８）。一方、ステップＳ７７において、条件Ｃで指定されたタグＴがタグの集合ＴＬｉｓｔに存在しない場合（ステップＳ７７におけるＮＯ）、パターン評価部１３は、パターンが不一致である旨の情報を出力し、処理を終了する。
【００７０】
ステップＳ７４において、パターン評価部１３が取り出した条件がタグ名でない場合（ステップＳ７４におけるＮＯ）、パターン評価部１３は、条件Ｃが文字列か否か調べる（ステップＳ７９）。条件Ｃが文字列の場合（ステップＳ７９におけるＹＥＳ）、パターン評価部１３は、変数ｆｌａｇが１であるか否か調べる（ステップＳ８０）。変数ｆｌａｇが１の場合（ステップＳ８０におけるＹＥＳ）、ワイルドカードは有効であることが分かる。この場合、パターン評価部１３は、読み込んだ文Ｓのｉ文字目以降に条件Ｃとして指定された文字列Ｗが存在するか否か調べる（ステップＳ８１）。文字列Ｗが存在する場合（ステップＳ８１におけるＹＥＳ）、パターン評価部１３は、文字列Ｗが条件Ｃに一致したと判断して、変数ｉに文字列Ｗの文字数を加算する（ステップＳ８３）。一方、ステップＳ８１において、文字列Ｗが存在しない場合（ステップＳ８１におけるＮＯ）、パターン評価部１３は、パターンが不一致である旨の情報を出力し、処理を終了する。
【００７１】
また、ステップＳ８０において、変数ｆｌａｇが１でない場合（ステップＳ８０におけるＮＯ）、ワイルドカードは有効でないことが分かる。この場合、パターン評価部１３は、読み込んだ文Ｓのｉ文字目に条件Ｃとして指定された文字列Ｗが存在するか否か調べる（ステップＳ８２）。文字列Ｗが存在する場合（ステップＳ８２におけるＹＥＳ）、パターン評価部１３は、文字列Ｗが条件Ｃに一致したと判断して、変数ｉに文字列Ｗの文字数を加算する（ステップＳ８３）。一方、ステップＳ８２において、文字列Ｗが存在しない場合（ステップＳ８２におけるＮＯ）、パターン評価部１３は、パターンが不一致である旨の情報を出力し、処理を終了する。
【００７２】
ステップＳ７８で、変数ｉにタグＴの終了位置を代入した後、又は、ステップＳ８３で、変数ｉに文字列Ｗの文字数を加算した後、パターン評価部１３は、条件リストＬｉｓｔが空か否か（すなわち、条件Ｃの取り出しが完了したか否か）判断する（ステップＳ８４）。条件リストＬｉｓｔが空である場合（ステップＳ８４におけるＹＥＳ）、パターン評価部１３は、すべての条件Ｃが満たされたと判断し、パターンが一致した旨の情報を出力し、処理を終了する。一方、条件リストＬｉｓｔが空でない場合（ステップＳ８４におけるＮＯ）、パターン評価部１３は、変数ｆｌａｇに０を代入して（ステップＳ８５）、ステップＳ７３以降の処理を繰り返す。
【００７３】
また、ステップＳ７９において、条件Ｃが文字列でない場合（ステップＳ７９におけるＮＯ）、条件Ｃはワイルドカードである。よって、パターン評価部１３は、ｆｌａｇに１を代入して（ステップＳ８６）、ステップＳ７３以降の処理を繰り返す。
【００７４】
このようにして、パターン評価部１３は、パターン合成部１２から受け取ったパターンＰが、ステップＳ５１で読み込んだ文Ｓ及びその文Ｓに付加されたタグの集合ＴＬｉｓｔと一致するか否かを示す情報を出力できる。
【００７５】
次に、評価値算出処理について説明する。評価値算出処理では、パターン評価部１３は、検索処理において抽出された文書ＩＤと文ＩＤの組から、ｐｆ（ｐ）とｄｆ（ｐ）とを算出する。パターン評価部１３は、例えば、ｐｆ（ｐ）の値を、文書ＩＤと文ＩＤの組の数を数えることで算出し、ｄｆ（ｐ）の値を、文書ＩＤと文ＩＤの組のうち、文書ＩＤの種類数を数えることで算出する。パターン評価部１３は、例えば、式１で示した式に基づき評価値を算出する。
【００７６】
なお、パターン合成部１２及びパターン評価部１３は、各処理の論理的前後関係が変わらない限り、事例入力プロセス内の処理を任意の順序で行ってもよい。
【００７７】
次に、検索プロセスについて説明する。検索プロセスは、ユーザもしくは外部のプログラムが文書検索部１４にクエリ（すなわち、条件）を入力することにより処理を開始する。
【００７８】
文書検索部１４は、クエリとして抽出対象のキーワードが指定されると、文書検索部１４内の記憶部（図示せず）に記憶されたタグ付きテキストの中から、指定されたキーワードを本文に含むタグ付きテキストの集合を作成する。次に、文書検索部１４は、対象文書記憶部１１内のデータをすべていったん空にした上で、作成したタグ付きテキストの集合を、例えば、図４に例示するフォーマットで対象文書記憶部１１に登録する。
【００７９】
なお、事例入力プロセスが処理済みである場合（すなわち、抽出規則であるパターンが既に作成されている場合）、パターン評価部１３は、文書検索部１４が対象文書記憶部１１にタグ付きテキストの集合を登録した直後に、評価ステップの処理を開始しても良い。これにより、対象文書記憶部１１内のタグ付きテキスト集合の変化に伴う評価値の変化を即座に反映させることができる。
【００８０】
本発明によれば、パターン合成部１２が、タグ付きテキスト及び抽出位置情報が与えられたときに、抽出位置情報の単語又はタグと、その単語又はタグの前後の単語又はタグとを組み合わせて抽出規則を作成する。そして、パターン評価部１３は、対象文書記憶部１１に記憶されたタグ付きテキストごとに、抽出規則に適合する単語又はタグを含む文（適合文）の文書ＩＤ及び文ＩＤを抽出し、その文書ＩＤ及び文ＩＤをもとに評価値を算出する。このとき、パターン評価部１３は、１つのタグ付きテキスト内に現れる適合文がより少ないほど評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほど評価値を高く算出する。そのため、ユーザが欲する情報を抽出するための規則（抽出規則）を効率よく作成することができる。
【００８１】
例えば、事例として、図１に例示するタグ付きテキストと、９文字目から１３文字目の「ａｂｃｄ」が指定抽出位置として入力された場合を考える。例えば、ユーザが単に人名を集めたいと考えていると推測した場合には、抽出規則を「＄［人名］＄」にすべきである。また、ユーザが容疑者名を集めたいと考えていると推測した場合には、抽出規則を「＄［人名］＄容疑者」にすべきである。さらに、ユーザが姓「ａｂ」を持つ人名を集めたいと考えていると推測した場合には、抽出規則を「＄ａｂ［名詞］＄」にすべきである。このように、単に事例のみが入力された場合、上記のようにユーザが何を欲しているかによって決定すべき抽出規則は異なる。
【００８２】
一般的に、抽出規則作成問題の難しさは、ユーザもしくは外部のプログラムがどのような情報を抽出したいかを入力される事例から推測しなければならない点にあるといえる。しかし、本発明によれば、タグ付きテキストの集合と一つ以上の事例とをもとに、抽出規則を作成し、さらにその抽出規則ごとに評価値を算出する。よって、ユーザの手間を減らしつつユーザの抽出要求に応じた抽出規則を作成することができる。
【００８３】
また、文書検索部１４が、指定された条件に該当するタグ付きテキストを抽出して対象文書記憶部１１に登録し、パターン評価部１３が、対象文書記憶部１１に登録されたタグ付きテキストごとに適合文の文書ＩＤ及び文ＩＤを抽出してもよい。この場合、パターン評価部１３が抽出するタグ付きテキストを変化させることにより、ユーザが欲するパターンの評価値をカスタマイズできるため、ユーザの欲する情報に合わせた抽出規則を効率よく取り出すことができる。
【００８４】
また、パターン合成部１２が、作成した抽出規則のうち、タグを一つ以上含む組合せのパターンを選択してもよい。この場合、無駄なパターンが予め省かれるため、以後の計算量を小さくすることができる。
【００８５】
また、パターン合成部１２が、抽出位置情報が示す位置に対応する単語又はタグの前後の単語又はタグのうち、予め定められた種類の自立語（名詞など）を組み合わせて抽出規則を作成してもよい。この場合、助詞のように一般的で無意味な語をパターンから排除することができる。
【実施例】
【００８６】
以下、具体的な実施例により本発明を説明するが、本発明の範囲は以下に説明する内容に限定されない。以下の説明では、図１に例示する新聞記事データがタグ付きテキストとして文書検索部１４に記憶されている場合に、ユーザが殺人事件の容疑者名のリストを作成したいと考えている場合を例に挙げて説明する。
【００８７】
検索プロセスにおいて、例えば、ユーザが「殺人  容疑者」といったキーワードを指定すると、文書検索部１４は内部に記憶するタグ付きテキストの中から、殺人事件の逮捕情報に関するタグ付きテキストの集合を作成し、対象文書記憶部１１に登録する。これにより、殺人事件に関するタグ付きテキストが対象文書記憶部１１に記憶される。
【００８８】
次に、事例入力プロセスにおいて、例えば、ユーザが図１に例示するタグ付きテキストと、９文字目から１３文字目という指定抽出位置をパターン合成部１２に入力すると、パターン合成部１２は、合成ステップを開始する。ここでは、ステップＳ１０，Ｓ２０，Ｓ３０の処理で、図１４に例示するリストＡ、リストＲＰ、リストＬＰ、リストＲＷ、リストＬＷが作成されるものとする。さらに、ステップＳ４０において、パターン合成部１２は、これらのパターンを組み合わせ、図５に例示するパターンを作成し、パターン評価部１３に通知する。
【００８９】
次に、評価ステップにおいて、パターン評価部１３は、通知を受けた各パターンに対して、検索処理及び評価値算出処理を行い、図５に例示するパターン及び図６に例示する評価値を算出する。本実施例においては、対象文書記憶部１１内に「殺人  容疑者」というキーワードを元に作成したタグ付きテキストの集合が記憶されているため、殺人事件の逮捕情報に関する文章が多いと考えられる。そのため、「＄［人名］＄容疑者」や「＄［人名］＄容疑者＊殺人」や「＄［人名］＄容疑者＊殺害」などのパターンにおける評価値が高くなる。
【００９０】
本発明における評価値は、より多くの文書に多く登場し、より頻度の低いパターンが高くなる値である。このため、対象文書記憶部１１内のすべてのタグ付きテキストに対して各１回登場するようなパターンが高く評価されることを意味する。このため、「奈良」や「ａｂ（ただし、ａｂは姓を表す漢字２文字）」など、特定の事件に特化したキーワードは、より多くの文書に多く登場するとは言えないため、評価値は低くなる。さらに、「＄［人名］＄」のように、任意の人名に適合するパターンは、容疑者名だけでなく被害者名などにまで適合して頻度が高くなるため、評価値は低くなる。「＄［人名］＄容疑者」や「＄［人名］＄容疑者＊殺人」や「＄［人名］＄容疑者＊殺害」などのパターンにおける評価値が高くなるのは、このためである。
【００９１】
他にも、本発明はテキストからユーザの欲しい情報を語句単位でリストアップして出力するリストアップ型の検索を実現する検索システムとして利用できる。また、取り出した値をグラフなどで可視化するテキストマイニングシステムとしても利用できる。
【００９２】
次に、本発明の最小構成を説明する。図１５は、本発明の最小構成を示すブロック図である。本発明による抽出規則作成システムは、文字列中の任意の位置に付加された情報であって、その情報が付加された文字列の位置を示す位置情報（例えば、開始位置及び終了位置）と、その位置に対応する単語の属性を示す属性情報（例えば、名詞、人名など）とを表す情報であるタグの集合とを含む文書であるタグ付きテキストを記憶するタグ付きテキスト記憶手段８１（例えば、対象文書記憶部１１）と、タグ付きテキスト及びそのタグ付きテキスト中の文字列の位置を示す情報である文字列位置情報（例えば、抽出位置情報）が与えられたときに、その文字列位置情報が示す位置に対応する単語又はタグと、その単語又はタグの前後の単語又はタグとを組み合わせて、タグ付きテキストから情報を抽出するための規則である抽出規則（例えば、パターン）を作成する抽出規則作成手段８２（例えば、パターン合成部１２）と、タグ付きテキスト記憶手段８１に記憶されたタグ付きテキストごとに、抽出規則に適合する単語又はタグを含む適合文の位置を示す情報である適合文位置情報（例えば、文書ＩＤ及び文ＩＤ）を抽出する適合文位置情報抽出手段８３（例えば、パターン評価部１３）と、適合文位置情報をもとに、抽出規則を評価した値である評価値を算出する評価値算出手段８４（例えば、パターン評価部１３）とを備えている。
【００９３】
評価値算出手段８４は、１つのタグ付きテキスト内に現れる適合文がより少ないほど評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほど評価値を高く算出する（例えば、式１に基づいて評価値を算出する）。
【００９４】
そのような構成により、ユーザが欲する情報を抽出するための規則を効率よく作成することができる。
【００９５】
また、上記の実施形態には、以下に示す構成の抽出規則作成システムが開示されている。
【００９６】
（１）文字列中の任意の位置に付加された情報であって、その情報が付加された文字列の位置を示す位置情報（例えば、開始位置及び終了位置）と、その位置に対応する単語の属性を示す属性情報（例えば、名詞、人名など）とを表す情報であるタグの集合とを含む文書であるタグ付きテキストを記憶するタグ付きテキスト記憶手段（例えば、対象文書記憶部１１）と、タグ付きテキスト及びそのタグ付きテキスト中の文字列の位置を示す情報である文字列位置情報（例えば、抽出位置情報）が与えられたときに、その文字列位置情報が示す位置に対応する単語又はタグと、その単語又はタグの前後の単語又はタグとを組み合わせて、タグ付きテキストから情報を抽出するための規則である抽出規則（例えば、パターン）を作成する抽出規則作成手段（例えば、パターン合成部１２）と、タグ付きテキスト記憶手段に記憶されたタグ付きテキストごとに、抽出規則に適合する単語又はタグを含む適合文の位置を示す情報である適合文位置情報（例えば、文書ＩＤ及び文ＩＤ）を抽出する適合文位置情報抽出手段（例えば、パターン評価部１３）と、適合文位置情報をもとに、抽出規則を評価した値である評価値を算出する評価値算出手段（例えば、パターン評価部１３）とを備え、評価値算出手段が、１つのタグ付きテキスト内に現れる適合文がより少ないほど評価値を高く算出し、より多くのタグ付きテキスト内に適合文が現れるほど評価値を高く算出する（例えば、式１に基づいて評価値を算出する）抽出規則作成システム。
【００９７】
（２）複数のタグ付きテキストの中から、指定された条件に該当するタグ付きテキストを抽出し、そのタグ付きテキスト抽出手段が抽出したタグ付きテキストをタグ付きテキスト記憶手段に登録するタグ付きテキスト登録手段（例えば、文書検索部１４）を備え、適合文位置情報抽出手段が、タグ付きテキスト登録手段が登録したタグ付きテキストごとに適合文位置情報を抽出する抽出規則作成システム。
【００９８】
（３）抽出規則作成手段が、作成した抽出規則のうち、タグを一つ以上含む組合せを選択する抽出規則作成システム。
【００９９】
（４）抽出規則作成手段が、文字列位置情報が示す位置に対応する単語又はタグの前後の単語又はタグのうち、予め定められた種類の自立語（例えば、名詞）を組み合わせて抽出規則を作成する抽出規則作成システム。
【０１００】
（５）抽出規則作成手段が、文字列位置情報が示す位置に対応する単語又はタグと予め定められた種類の自立語との間にワイルドカード（例えば、「＊」）を組み合わせて抽出規則を作成する抽出規則作成システム。
【産業上の利用可能性】
【０１０１】
本発明は、文書から情報を抽出するための抽出規則を作成する抽出規則作成システムに好適に適用される。
【符号の説明】
【０１０２】
１１  対象文書記憶部
１２  パターン合成部
１３  パターン評価部
１４  文書検索部
【図１】
2010262332.tif 000004
【図２】
2010262332.tif 000005
【図３】
2010262332.tif 000006
【図４】
2010262332.tif 000007
【図５】
2010262332.tif 000008
【図６】
2010262332.tif 000009
【図７】
2010262332.tif 000010
【図８】
2010262332.tif 000011
【図９】
2010262332.tif 000012
【図１０】
2010262332.tif 000013
【図１１】
2010262332.tif 000014
【図１２】
2010262332.tif 000015
【図１３】
2010262332.tif 000016
【図１４】
2010262332.tif 000017
【図１５】
2010262332.tif 000018