(57)【要約】【課題】電子化された大量の文書データ中から重要なキーワードを自動的に抽出するに際し、複数の抽出アルゴリズムを組み合わせることで抽出漏れの発生を低減できるシステムの実現。【解決手段】複数の文書データが格納された文書ＤＢ12からキーワードを抽出し、キーワードＤＢ16に格納するキーワード抽出システム10であって、係り受け表現抽出フィルタ32、区切り文字抽出フィルタ34、文字列頻度統計フィルタ36、TermExtractフィルタ38と、各フィルタによって抽出されたキーワード候補をマッチングし、２以上のフィルタによって抽出されたキーワード候補をキーワードとして認定する多数決フィルタ40を備えた。【選択図】図２
2008192171.tif 000002
【特許請求の範囲】
【請求項１】
複数の文書データが格納された文書記憶手段からキーワードを抽出し、所定の記憶手段に格納するキーワード抽出システムであって、
それぞれ固有の抽出基準に基づいてキーワード候補を抽出する複数のフィルタと、
各フィルタによって抽出されたキーワード候補をマッチングし、２以上のフィルタによって抽出されたキーワード候補をキーワードとして認定する手段を備え、
上記キーワード候補を抽出するフィルタの一つが、
(1) 各文書中に含まれる名詞を注目語として抽出し、
(2) 各注目語の全文書中における出現頻度を算出し、
(3) 各注目語の一つ前及び／又は一つ後の形態素に範囲を拡張し、この拡張範囲を含めた注目語の全文書中における出現頻度を算出し、
(4) 上記(3)の処理によって算出された出現頻度が所定数以上の場合には、さらにその一つ前あるいは後の形態素に範囲を拡張し、この拡張範囲を含めた注目語の全文書中における出現頻度を算出する処理を、その出現頻度が所定数未満となるまで繰り返し、
(5) 最初の注目語及び拡張範囲を含めた注目語の中で、所定範囲内の出現頻度を有するものをキーワード候補として選定することを特徴とするキーワード抽出システム。
【請求項２】
上記キーワード候補を抽出するフィルタの一つが、
各文書中に含まれる所定の係り受け表現を探索し、当該係り受け表現の少なくとも一部をキーワード候補として選定することを特徴とする請求項１に記載のキーワード抽出システム。
【請求項３】
上記キーワード候補を抽出するフィルタの一つが、
各文書中に含まれる所定の区切り文字を探索し、当該区切り文字で囲まれた文字列をキーワード候補として選定することを特徴とする請求項１または２に記載のキーワード抽出システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はキーワード抽出システムに係り、特に、電子化された大量の文書データ中から、注目に値する重要なキーワードを自動的に抽出するためのシステムに関する。
【背景技術】
【０００２】
パソコンやインターネットの普及、あるいは電子ファイリング技術の発展等に伴い、電子化された大量の文書データを利用可能な環境が整いつつあるが、一方で膨大な情報の中から重要なキーワードを自動的に抽出するシステムの必要性が生じている。
例えば、ロボット型の検索エンジンの場合、インターネット上に公開された大量のWebページから重要なキーワードを抽出し、これをインデックス化することによって検索精度を上げることができる。また、企業内においては、社内に蓄積されたナレッジデータを有効活用するために、各データ中のキーワードをリスト化する必要がある。個人ベースでも、膨大な研究論文データや特許データから重要語を抽出することにより、必要な文献に辿り着くことが可能となる。
【０００３】
このため、これまでも様々なキーワード抽出システムが提案され、実用化されている。例えば非特許文献１には、「TermExtract」という専門用語自動抽出アルゴリズムを用いて文書中のキーワードをリストアップするサービスが開示されている。また、非特許文献２には、「茶筌」というキーワード抽出システムについての記述がなされている。
【非特許文献１】専門用語（キーワード）自動抽出サービス／「言選Ｗｅｂ」へようこそ［平成１８年１１月２日検索］インターネットURL:http://www.nttdata.co.jp/release/2005/081500-01.html
【非特許文献２】形態素解析システム茶筌［平成１８年１１月２日検索］インターネットURL:http://chasen.naist.jp/hiki/ChaSen/
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このような既存のシステムを用いることにより、これまでも文書データからキーワードを自動抽出すること自体は可能であった。
しかしながら、従来のキーワード抽出システムの多くは単一の抽出アルゴリズムに基づいており、各抽出アルゴリズムは固有の癖（得手不得手）を有しているため、文書データの記述内容や記述形式によっては抽出漏れが生じ易いという問題があった。
また、従来のキーワード抽出システムは目的の文書データ内でワードの重要度を判断する仕組みであり、他の複数の文書データとの比較がなされないため、抽出されたキーワードの重要度について客観性が担保されないという問題があった。
【０００５】
この発明は上記の問題を解決するために案出されたものであり、電子化された大量の文書データ中から重要なキーワードを自動的に抽出するに際し、複数の抽出アルゴリズムを組み合わせることで抽出漏れの発生を低減できるシステムの実現を第１の目的としている。また、キーワードの抽出に際し、他の文書データ中における各キーワードの出現状況を考慮することにより、当該キーワードの重要度を客観的に担保可能なシステムの実現を第２の目的としている。
【課題を解決するための手段】
【０００６】
上記の目的を達成するため、請求項１に記載したキーワード抽出システムは、複数の文書データが格納された文書記憶手段からキーワードを抽出し、所定の記憶手段に格納するキーワード抽出システムであって、それぞれ固有の抽出基準に基づいてキーワード候補を抽出する複数のフィルタと、各フィルタによって抽出されたキーワード候補をマッチングし、２以上のフィルタによって抽出されたキーワード候補をキーワードとして認定する手段を備え、上記キーワード候補を抽出するフィルタの一つが、(1) 各文書中に含まれる名詞を注目語として抽出し、(2) 各注目語の全文書中における出現頻度を算出し、(3) 各注目語の一つ前及び／又は一つ後の形態素に範囲を拡張し、この拡張範囲を含めた注目語の全文書中における出現頻度を算出し、(4) 上記(3)の処理によって算出された出現頻度が所定数以上の場合には、さらにその一つ前あるいは後の形態素に範囲を拡張し、この拡張範囲を含めた注目語の全文書中における出現頻度を算出する処理を、その出現頻度が所定数未満となるまで繰り返し、(5) 最初の注目語及び拡張範囲を含めた注目語の中で、所定範囲内の出現頻度を有するものをキーワード候補として選定することを特徴としている。
ここで「形態素」とは、意味を有する最小の言語単位を指す。例えば、「私の名前は鈴木です」を形態素に分解すると、「私（代名詞）」「の（助詞）」「名前（一般名詞）」「は（係助詞）」「鈴木（固有名詞）」「です（助動詞）」となる。
【０００７】
請求項２に記載したキーワード抽出システムは、請求項１のシステムであって、さらに上記キーワード候補を抽出するフィルタの一つが、各文書中に含まれる所定の係り受け表現を探索し、当該係り受け表現の少なくとも一部をキーワード候補として選定することを特徴としている。
【０００８】
請求項３に記載したキーワード抽出システムは、請求項１または２のシステムであって、さらに上記キーワード候補を抽出するフィルタの一つが、各文書中に含まれる所定の区切り文字を探索し、当該区切り文字で囲まれた文字列をキーワード候補として選定するものであることを特徴としている。
【発明の効果】
【０００９】
請求項１〜３に記載したキーワード抽出システムにあっては、複数のフィルタを用いて文書データ中からそれぞれ独自にキーワード候補を抽出し、これらの中で２以上のフィルタによって抽出されたものを正式なキーワードと認定する仕組みを備えているため、重要なキーワードの取りこぼしを防止できると共に、重要でないノイズがキーワード中に混入することを防止することができる。
また、キーワード候補の抽出に際し、複数の文書データ中における出現頻度に基づいてある注目語をキーワード候補として選定するか否かを判断する仕組みを備えているため、選定されたキーワード候補の重要度に対して客観性を持たせることが可能となる。
【発明を実施するための最良の形態】
【００１０】
図１は、この発明に係るキーワード抽出システム10、及びこれを利用した検索システム11を示すブロック図であり、キーワード抽出システム10は、文書ＤＢ12と、キーワード抽出部14と、キーワードＤＢ16とを備えている。また検索システム11は、上記の他に、関連度算出部18と、キーワード共起頻度表20と、キーワード組合せ頻度総和表22と、キーワード頻度総和表24と、キーワード関連度表26と、固有名詞ＤＢ28と、検索処理部30とを備えている。
【００１１】
上記のキーワード抽出部14、関連度算出部18及び検索処理部30は、コンピュータのCPUが、ＯＳ及び専用のアプリケーションプログラムに従い、必要な処理を実行することによって実現される。
【００１２】
上記の文書ＤＢ12、キーワードＤＢ16、キーワード共起頻度表20、キーワード組合せ頻度総和表22、キーワード頻度総和表24、キーワード関連度表26及び固有名詞ＤＢ28は、同コンピュータのハードディスクに格納されている。
文書ＤＢ12には、新聞記事や学術雑誌、論文等の電子データ（テキストデータ）が予め多数蓄積されている。また、固有名詞ＤＢ28には、企業名、商品名、サービス名、人物名等の固有名詞がカテゴリ別に多数登録されている。
【００１３】
上記のキーワード抽出部14は、図２に示すように、係り受け表現抽出フィルタ32、区切り文字抽出フィルタ34、文字列頻度統計フィルタ36、TermExtractフィルタ38、多数決フィルタ40を備えている。
【００１４】
つぎに、図３のフローチャートに従い、キーワード抽出部14によるキーワード抽出工程について説明する。
まずキーワード抽出部14は、文書ＤＢ12内に蓄積された各文書データに係り受け表現抽出フィルタ32を適用し、各文書データから所定の係り受け表現を備えた文字列を抽出する（Ｓ10）。
すなわち、係り受け表現抽出フィルタ32には、「○○メーカー」、「○○が主力」、「○○を生産」という係り受け表現パターンが予め多数用意されており、キーワード抽出部14は、これに当てはまる表現パターンを検出した後、「○○」に相当する文字列をキーワード候補として抽出する。
【００１５】
つぎにキーワード抽出部14は、各文書データに区切り文字抽出フィルタ34を適用し、「○○」、"○○"、（○○）、［○○］、,○○,のように、カンマや括弧、スペース、タブ等の区切り文字で囲まれた○○の部分をキーワード候補として抽出する（Ｓ12）。
【００１６】
つぎにキーワード抽出部14は、各文書データに文字列頻度統計フィルタ36を適用し、各文書データに含まれる各文字列が他の文書も含めて何回登場するのかを集計し、一定範囲の出現頻度を備えた文字列をキーワード候補として抽出する（Ｓ14）。
まず文字列頻度統計フィルタ36は、図４に示すように、文書中の名詞（ここでは「ＤＶＤ」）に注目し、このＤＶＤという注目語が文書ＤＢ12内に蓄積された各文書データ中に出現する数を集計する。つぎに、文字列頻度統計フィルタ36は、この注目語の前後の形態素に範囲を拡張し、それぞれの全文書中に登場する頻度を集計し、出現頻度が一定以下（例えば20以下）となった時点で文字範囲拡張を停止する。
【００１７】
例えば、ＤＶＤの一つ前の形態素を含む「したＤＶＤ」の出現頻度は「２」と低いため、これ以上前の形態素に範囲が拡張されることはない。これに対し、ＤＶＤの一つ後の形態素を含む「ＤＶＤレコーダー」の出現頻度は「８６２」と多いため、その一つ後の形態素を含む「ＤＶＤレコーダーでは」の出現頻度を集計する。そして、この出現頻度は「５」と低いため、これ以降の形態素に範囲を拡張することが停止される。
【００１８】
つぎに文字列頻度統計フィルタ36は、「ＤＶＤ」及び「ＤＶＤレコーダー」が所定範囲（例えば20〜5,000）内の出現頻度を備えていることを理由にキーワード候補として抽出する。これに対し、「したＤＶＤ」及び「ＤＶＤレコーダーでは」は上記の範囲外であるため、キーワード候補から除外される。
全文書中における出現頻度が20未満のものはそもそも重要語とはいえず、また5,000を越えるものは逆に特徴のない汎用語あるいは一般語と考えられるからであるが、この範囲設定は文書データの分量や検索システムの使用目的に応じて適宜調整される。
【００１９】
ところで、文書ＤＢ12内に蓄積された多量の文書データに含まれる各文字列に関して、それぞれの出現頻度を集計するには膨大な時間を要するため、図５に示すように、文書ＤＢ12内には予め全文書データに登場する各形態素が、個々の文書データ中に存在しているか否かを一覧表にまとめたインデックス（所謂転置インデックス）が生成されている。このため、キーワード抽出部14はこのインデックスを参照することにより、比較的短時間でその出現頻度を取得することが可能となる。
【００２０】
つぎにキーワード抽出部14は、文書ＤＢ12内に蓄積された文書データにTermExtractフィルタ38を適用し、各文書データから所定以上のスコアを備えた文字列をキーワード候補として抽出する（Ｓ16）。
このTermExtractは、専門分野のコーパス（主として研究目的で収集され、電子化された自然言語の文章からなる巨大なテキストデータ）から専門用語を自動抽出するために案出された文字列抽出アルゴリズムであり、文書データ中から単名詞及び複合名詞を候補語として抽出し、各候補語の出現頻度と連接頻度に基づいてそれぞれの重要度を算出する機能を備えている。このTermExtract自体は公知技術であるため、これ以上の説明は省略する。
【００２１】
つぎにキーワード抽出部14は、係り受け表現抽出フィルタ32、区切り文字抽出フィルタ34、文字列頻度統計フィルタ36、TermExtractフィルタ38によって抽出された各キーワード候補を多数決フィルタ40に入力し、キーワードを絞り込む。
多数決フィルタ40では、各フィルタによってリストアップされたキーワード候補同士をマッチングし、２以上のフィルタによってキーワード候補として挙げられているものを最終的なキーワードと認定し、キーワードＤＢ16に格納する（Ｓ18）。
【００２２】
このように、係り受け表現抽出フィルタ32、区切り文字抽出フィルタ34、文字列頻度統計フィルタ36、TermExtractフィルタ38の４つのフィルタを用いることにより、文書データからキーワードを抽出する際に重要語が漏れ落ちることを防止すると共に、多数決フィルタ40を用いて絞り込むことにより、不要なキーワード（ノイズ）が混入することを防止できる。
【００２３】
上記のように４つのフィルタ中の２以上のフィルタによって選別されたキーワード候補を正式なキーワードと認定するのは一例であり、３以上のフィルタによって選別されることをキーワード認定の要件とすることもできる。
また、フィルタの数も上記に限定されるものではなく、他の有効なキーワード候補抽出フィルタをキーワード抽出部14に設けることもできる。
【００２４】
つぎに、図６のフローチャートに従い、関連度算出部18による各キーワード間の関連度算出工程について説明する。
まず関連度算出部18は、各キーワードの各文書データ中における共起頻度を集計し、キーワード共起頻度表20を生成する（Ｓ20）。
図７は、このキーワード共起頻度表20の具体例を示すものであり、文書ＤＢ12に格納された各文書D1〜Dnごとに、各キーワードKW-1〜nの出現頻度が記述されている。
【００２５】
ここで、あるキーワードＸとＹとの間の関連度は、数１のiにキーワード共起頻度表20に記載されたＸとＹの出現頻度を代入することにより、理論的には算出可能である。
【数１】
2008192171.tif 000003
ただし、文書データの分量及びキーワードの総数が多い場合には膨大な計算量が発生し、多くの処理時間を要することとなる。
そこで、この実施の形態では、キーワード共起頻度表20に基づいてキーワード組合せ頻度総和表22及びキーワード頻度総和表24を生成することにより、計算工程の簡素化を図っている。
【００２６】
図８は、その要領を例示するものである。この場合、キーワード共起頻度表20にはキーワードKW-1〜KW-5の文書D1における出現頻度が記載されているが、この中KW-3及びKW-4の出現頻度は０であるため、実際に関連度を算出すべきキーワードの組合せは以下の３パターンで済むこととなる。
（KW-1, KW-2）、（KW-1, KW-5）、（KW-2, KW-5）
つぎに関連度算出部18は、各組合せ毎に出現頻度を乗じた値を記述したキーワード組合せ頻度総和表22と、各キーワードの出現頻度を二乗した値を記述したキーワード頻度総和表24を生成する（Ｓ22、Ｓ24）。
【００２７】
図８のキーワード組合せ頻度総和表では、文書D1についての値のみが記述されているが、同様の処理を各文書毎に実行し、その結果に基づいて値を加算していくことにより、各キーワードの値が数１の分子に相当する結果となる。
同じく、図８のキーワード頻度総和表では、文書D1についての値のみが記述されているが、各文書における各キーワードの出現頻度を二乗した値を足し込んでいき、各キーワードの最終的な値の平方根を求めることにより、数１の分母に相当する値が得られることになる。
【００２８】
この結果、図９に示すように、各キーワード間の関連度が比較的容易に算出でき、その値がキーワード関連度表26に記述される（Ｓ26）。
上記のように、文書毎に各キーワード間の組合せパターンを抽出し、それぞれの積及び各キーワードの二乗値を求めた上で、各文書の値を加算していくことにより、値が０のキーワードに係る計算処理を省くことが可能となる。
このため、特許文献１の検索システムのように企業名に限定することなく、全キーワード間における関連度を算出することが現実的になる。
【００２９】
また、文書ＤＢ12に新規の文書データが追加された場合には、この新規文書データ中の各キーワードに係るデータをキーワード組合せ頻度総和表22及びキーワード頻度総和表24に追加し、既存の集計値に追加分の値を加算することによって、簡単にキーワード間の関連度が再計算可能となる。
古くなった文書データの影響を排除する場合にも、当該文書データ中の各キーワードに係るデータをキーワード組合せ頻度総和表22及びキーワード頻度総和表24から削除し、既存の集計値から削除分の値を減算することによって、簡単にキーワード間の関連度を最新の状態に維持することが可能となる。
【００３０】
つぎに、図１０のフローチャートに従い、このシステム10における検索処理手順について説明する。
まずユーザが端末装置αから検索語を入力すると、これを受け付けた検索処理部30は（Ｓ40）、図１１に示すように、キーワード関連度表26を参照し、当該検索語と同一または一定範囲内の類似性を有するキーワードを特定すると共に、当該キーワードに対して所定以上の関連度を有するキーワードのリストを抽出する（Ｓ42）。
つぎに検索処理部30は、固有名詞ＤＢ28の中の例えば企業名ＤＢを参照し、上記リスト中に含まれる企業名を抽出する（Ｓ44）。
この抽出された企業名のリストは、検索語に関連の深い企業リストとして端末装置αに送信される（Ｓ46）。
【００３１】
この結果ユーザは、入力した検索語（例えば時事用語）と関連の深い企業を認識することが可能となり、投資行動の判断材料に利用することができる。
また、固有名詞ＤＢ28として人物名ＤＢを指定すれば、入力した検索語と関連の深い人物をピックアップできる。
【００３２】
もっとも、企業名ＤＢや人物名ＤＢとのマッチングを行うことなく、検索語と関連の深いキーワードのリストを、そのまま端末装置αに返すようにしてもよい。
この後、ユーザがキーワードリスト中の特定のキーワードを検索語として指定すると、そのキーワードと所定以上の関連性を備えたキーワードのリストが検索処理部30によってさらに抽出され、端末装置αに送信される。
この結果、ユーザは関連語から関連語へと、連鎖的に検索範囲を広げていくことが可能となり、予想外のキーワードに辿り着くことが期待できる。
【００３３】
ユーザが検索結果リスト中の特定のキーワードを指定し、その根拠となる文書の提示をリクエストすると、これを受け付けた検索処理部は（Ｓ48）、図１２に示すように、検索語及び当該キーワードに基づいてキーワード共起頻度表20を検索し、両者間で共起の生じている文書番号のリストを生成する（Ｓ50）。
つぎに検索処理部30は、この文書番号リストに基づいて文書ＤＢ12を検索し、文書本文のリストを生成した後、端末装置αに送信する（Ｓ52、Ｓ54）。
この結果、端末装置αのディスプレイには、検索語と当該キーワードとが同時に出現している文書の番号、タイトル、抄録、年月日等がリスト表示される。
【００３４】
また、この中の一つをユーザが選択すると、検索処理部30は該当の文書データを文書ＤＢ12から抽出し、端末装置αに送信する。
この結果ユーザは、当該文書データの内容を閲覧し、検索語とキーワードとの関連性を個別に確認することが可能となる。
【図面の簡単な説明】
【００３５】
【図１】この発明に係るキーワード抽出システム及びこれを利用した検索システムの機能構成を示すブロック図である。
【図２】キーワード抽出部の機能構成を示すブロック図である。
【図３】キーワード抽出工程を示すフローチャートである。
【図４】文字列頻度統計フィルタの動作を示す説明図である。
【図５】文書ＤＢ内に形態素インデックスが形成されている様子を示す説明図である。
【図６】キーワード間の関連度算出工程を示すフローチャートである。
【図７】キーワード共起頻度表の一例を示す説明図である。
【図８】関連度算出処理を簡略化する方法を示す説明図である。
【図９】キーワード組合せ頻度総和表及びキーワード頻度総和表に基づいてキーワード関連度表が生成される様子を示す説明図である。
【図１０】検索処理の手順を示すフローチャートである。
【図１１】検索語に基づき企業名リストを抽出する様子を示す説明図である。
【図１２】検索語及び特定キーワード間の関連度の根拠を提示する様子を示す説明図である。
【符号の説明】
【００３６】
10 キーワード抽出システム
11 検索システム
12 文書ＤＢ
14 キーワード抽出部
16 キーワードＤＢ
18 関連度算出部
20 キーワード共起頻度表
22 キーワード組合せ頻度総和表
24 キーワード頻度総和表
26 キーワード関連度表
28 固有名詞ＤＢ
30 検索処理部
32 係り受け表現抽出フィルタ
34 区切り文字抽出フィルタ
36 文字列頻度統計フィルタ
38 TermExtractフィルタ
40 多数決フィルタ
【図１】
2008192171.tif 000004
【図２】
2008192171.tif 000005
【図３】
2008192171.tif 000006
【図４】
2008192171.tif 000007
【図５】
2008192171.tif 000008
【図６】
2008192171.tif 000009
【図７】
2008192171.tif 000010
【図８】
2008192171.tif 000011
【図９】
2008192171.tif 000012
【図１０】
2008192171.tif 000013
【図１１】
2008192171.tif 000014
【図１２】
2008192171.tif 000015