(57)【要約】      （修正有）【課題】大規模かつ構造化された知識ベースをプログラムによって構築するシステムを搭載した検索システムを提供する。【解決手段】検索システム１は、書籍に含まれる所定の単語をトップレベルに持ち、所定の単語に関連する情報がトップレベルの下に格納されたツリー構造の知識ブロックを有する知識ベース２と、入力部から入力された単語に基づいて知識ベース２に格納された知識ブロックを検索する知識ベース検索システム４と、書籍のテキストデータを読み込むデータ読込手段３０から読み込みこまれたテキストデータに基づいて、知識ベース２に格納される知識ブロックを構築する知識ベース構築システム３と、から構成されている。知識ベース構築システム３は、データ読込手段３０から読み込んだテキストデータから、自然言語処理手段３１および構造化体裁整理処理手段３２を実行することで知識ブロックを生成し、知識ベース２に格納する。【選択図】図１
2010250439.tif 000002
【特許請求の範囲】
【請求項１】
書籍に含まれる所定の単語をトップレベルに持ち、前記所定の単語に関連する情報がトップレベルの下に格納されたツリー構造の知識ブロックを有する知識ベースと、
入力部を有したユーザインターフェイスを備え、前記入力部から入力された単語に基づいて前記知識ベースに格納された知識ブロックを検索する知識ベース検索システムと、
書籍のテキストデータを読み込むデータ読込手段を有し、該データ読込手段から読み込みこまれたテキストデータに基づいて前記知識ベースに格納される知識ブロックを構築する知識ベース構築システムと、を備えた検索システムであって、
前記知識ベース構築システムは、前記読込手段から読み込まれたテキストデータに対して形態素解析を行い、該形態素解析の結果を利用して構文解析を行う自然言語処理手段と、前記自然言語処理手段の構文解析に基づいて文章を抽出し、該抽出した文書に対して予め定めたカテゴリに分類する構造化体裁処理手段と、を有することを特徴とする検索システム。
【請求項２】
前記知識ブロックは、予め定めた８種類のカテゴリに分類された文章のうち少なくとも１つを有して構成されることを特徴とする請求項１に記載の検索システム。
【請求項３】
テキストデータから前記知識ブロックを生成するデータ生成方法であって、前記テキストデータに対して形態素解析を行い、該形態素解析の結果を利用して構文解析を行う自然言語処理工程と、前記自然言語処理工程の処理結果に基づいて文章を抽出し、予め定めたカテゴリに分類する構造化体裁処理工程と、を有することを特徴とするデータ生成方法。
【請求項４】
請求項１または２に記載の検索システムにおいて、コンピュータを、前記自然言語処理手段、前記構造化体裁処理手段として機能させるためのプログラム。
【請求項５】
請求項４に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、書籍の文書データを格納したデータベースから、検索語句に基づいて目的の情報を検索して提示する検索システム、データベースに格納する文書データを生成するデータ生成方法、データ生成に伴う各手段の機能をコンピュータで実現するためのプログラム、同プログラムを記録した記録媒体に関する。
【背景技術】
【０００２】
書籍のような膨大な量の文書データを格納したデータベースから、目的の情報（知識）を的確に見つけ出すために、体系的に情報を集約した知識ベースを搭載した検索システムや、単なるテキスト検索ではなく質問者の質問に回答する質問回答システムが開発されている。
【０００３】
このような検索システムの一例として、ユーザからの質問に対話的に答えるシステムであって、ユーザが質問文を入力するユーザインターフェイスと、ユーザによって入力されて言語を構文解析する入力解析部と、語句の説明文である知識ユニットを格納した知識ベースと、ユーザから入力された質問文と前記知識ユニットとのマッチングを行う対話管理部と、から構成され、前記知識ベースは、固有名詞などの語句をツリー構造のトップレベルに持ち、その下に定義となる知識ユニットと、それ以外のカテゴライズされていない知識ユニットと、のいずれかを、少なくとも１つ持っている構造を有する対話的ヘルプシステムが知られている（非特許文献１参照）。
【０００４】
このような対話的ヘルプシステムでは、知識ベースに格納される知識ユニットの増加に伴って、ユーザからの質問に対する回答の選択肢も増加し適切な回答の提示ができるため、質問に対する回答率が上昇する。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】京都大学総合メディアセンターの対話的ヘルプシステムと京都大学付属図書館の自動レファレンス・サービス・システム．情報処理学会研究報告．自然言語処理研究会報告，Ｖｏｌ．２０００，Ｎｏ．５３，ｐ．９２，２０００
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、非特許文献１に記載された対話的ヘルプシステムでは、作業者がテキストデータから該当する文章を抜き出して知識ユニットを作成するため、大規模な知識ベースの構築には多くの手間と時間がかかる不都合がある。また、手作業で知識ユニットを構築しているため、知識ベースに格納する知識ユニットの数が少なくなり、質問に対する回答率が低くなる不都合がある。
【０００７】
本発明は、上記問題に鑑みてなされたものであり、大規模かつ構造化された知識ベースをプログラムによって構築するシステムを搭載した検索システムを提供することを主たる目的とする。
【課題を解決するための手段】
【０００８】
本発明の検索システムは、書籍に含まれる所定の単語をトップレベルに持ち、前記所定の単語に関連する情報がトップレベルの下に格納されたツリー構造の知識ブロックを有する知識ベースと、入力部を有したユーザインターフェイスを備え、前記入力部から入力された単語に基づいて前記知識ベースに格納された知識ブロックを検索する知識ベース検索システムと、書籍のテキストデータを読み込むデータ読込手段を有し、該データ読込手段から読み込みこまれたテキストデータに基づいて前記知識ベースに格納される知識ブロックを構築する知識ベース構築システムと、を備えた検索システムであって、前記知識ベース構築システムは、前記読込手段から読み込まれたテキストデータに対して形態素解析を行い、該形態素解析の結果を利用して構文解析を行う自然言語処理手段と、前記自然言語処理手段の構文解析に基づいて文章を抽出し、該抽出した文書に対して予め定めたカテゴリに分類する構造化体裁処理手段と、を有することを特徴としている（請求項１）。
【０００９】
これにより、知識ブロックの生成過程を自動化することができるため、知識ベースに格納する知識ブロックの量の増加を図ることができ、質問に対する回答率の向上を図ることが可能となる。
また、文章の形態および構造に基づいて知識ブロックの構築を行うため、予め指定したカテゴリに分類することができ、検索速度の向上を図ることが可能となる。
【００１０】
また、前記知識ブロックは、予め定めた８種類のカテゴリに分類された文章のうち少なくとも１つを有して構成されることが望ましい（請求項２）。
【００１１】
また、テキストデータから前記知識ブロックを生成するデータ生成方法であって、前記テキストデータに対して形態素解析を行い、該形態素解析の結果を利用して構文解析を行う自然言語処理工程と、前記自然言語処理工程の処理結果に基づいて文章を抽出し、予め定めたカテゴリに分類する構造化体裁処理工程と、を有することが望ましい(請求項３)。
【００１２】
また、本発明は、コンピュータを、前記自然言語処理手段、前記構造化体裁処理手段として機能させることを特徴とするプログラムである（請求項４）。
【００１３】
また、本発明は、請求項４に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である（請求項５）。
【発明の効果】
【００１４】
以上本発明によれば、知識ブロックの生成過程を自動化することにより、知識ベースに格納する知識ブロックの量の増加を図ることができ、回答率が向上した検索システムを提供することが可能となる。
また、文章の形態および構造に基づいて知識ブロックの構築を行うため、予め指定したカテゴリに分類することができ、作業者による作業量を減らすことが可能となる。
【図面の簡単な説明】
【００１５】
【図１】図１は、検索システムの構成を示した構成図である。
【図２】図２は、知識ブロックの構成について示したものであり、（ａ）は、知識ブロックの構成を示した構成図である。（ｂ）は、知識ブロックのカテゴリの分類を示した図である。
【図３】図３は、ユーザインターフェイスの例を示したイメージ図である。
【図４】図４は、知識ベース構築システム３における書籍のテキストデータから知識ブロックを生成する処理フロー図である。
【図５】図５は、形態素解析の実行結果例を示したイメージ図である。
【図６】図６は、構文解析の実行結果例を示したイメージ図である。
【図７】図７は、キーワードによる文の抽出例を示したイメージ図である。
【発明を実施するための形態】
【００１６】
以下、本発明の検索システムについて図面を参照して説明する。
【実施例１】
【００１７】
図１に示すように、本発明の検索システム１は、書籍の文書データを格納した知識ベース２と、知識ベース２に格納された文書データを検索する知識ベース検索システム４と、知識ベース２に格納される文書データを構築する知識ベース構築システム３と、これらの知識ベース検索システム４と知識ベース構築システム３とを管理する知識ベース管理システム５から構成されている。
【００１８】
知識ベース２は、図２（ａ）および(ｂ)に示すようなツリー構造をもつ知識ブロック２１を形成して書籍の文書データを格納している。
【００１９】
知識ブロック２１のツリー構造は、所定の単語をツリー構造のトップに持ち、その下に、たとえば、定義（単語の意味や定義の説明の文章）、方法（手法や用法に関する文章）、例示（例示や種類に関する文章）、可能（可能や不可能に関する文章）、兆候（「〜ができない」などの兆候に関する文章）、理由（理由に関する文章）、比較（複数の事柄の比較に関する文章）、その他（これらのカテゴリに分類することができない文章）の８種類にカテゴリ分けされたタグを有している。以後、このタグに格納される文章を知識とする。
【００２０】
このようなツリー構造の知識ブロック２１を格納する知識ベース２は、ＸＭＬ（Extensible Markup Language）データベースが採用されることが好ましく、特に、ツリー構造、メタ情報管理という優位性を最大限活用することができるＸＭＬ文書をその構造のまま格納・操作を行うことができるネイティブＸＭＬデータベースであることが望ましい。
【００２１】
知識ベース構築システム３は、ＰＤＦ（Portable Document Format）（登録商標）形式などの書籍データを読み込むデータ読込手段３０、読み込んだ書籍データをたとえば、ＯＣＲ(Optical Character Reader)などの処理によりテキスト化するテキスト化処理手段３３、テキスト化された書籍データに対して形態素解析を実行し、形態素解析の結果を利用して構文解析する自然言語処理手段３１と、構文解析された書籍データから所定の語句を含む文章を抽出し、抽出した文章を上記した８つのカテゴリに分類して知識ブロック２１を生成する構造化体裁処理手段３２を有して構成される。
ここで、本検索システム１では、書籍データの一例としてＰＤＦ形式を扱うが、ＰＤＦ形式のみに限定されることはなく、他の形式の書籍データにおいても扱うことができる。
【００２２】
知識ベース検索システム４は、知識ベース２に格納された知識ブロック２１を検索して回答を返すシステムであり、ユーザからの質問入力が行われるユーザインターフェイス４１を備え、質問入力された検索文から形態素解析および構文解析を行う自然言語処理手段４２と、知識ブロック２１の検索をする検索アルゴリズム４３と、ユーザに表示する返答文を作成する回答文生成処理手段４４と、を有して構成される。また、知識ベース検索システム４は、サーバ上で動作し、特にＷｅｂアクセスに特化したＪａｖａ（登録商標）ＥＥアプリケーションサーバであることが望ましい。
なお、図３に示すように、ユーザインターフェイス４１は、画面上に検索文を入力することができる入力部を備えている。
【００２３】
知識ベース管理システム５は、知識ベース構築システム３の動作を管理するためのＷｅｂシステムであり、書籍データを知識ベース構築システム３に受け渡しを行うアップロード処理手段５１を有して構成される。
【００２４】
なお、上記又は、後述する自然言語処理手段３１、構造化体裁処理手段３２、テキスト化処理手段３３、自然言語処理手段４２、検索アルゴリズム４３、回答文生成処理手段４４、アップロード処理手段５１、単体知識追加処理手段５３、全文検索手段５５、回答率他解析手段５７は、一般的には、ＣＰＵ、ＲＯＭ、ＲＡＭ、などを有して構成される単数又は複数のコンピュータを、所定のプログラムによって機能させることにより構成されるものである。
【００２５】
また、そのプログラムはコンピュータ読み取り可能な記録媒体に記録して、ユーザに提供することができる。記録媒体としては、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、あるいはハードディスクや半導体メモリなどの記録可能なタイプの媒体が含まれる。
【００２６】
以上の構成の検索システム１において、書籍のテキストデータから知識ブロック２１を生成する処理について説明する。
【００２７】
知識ベース管理システム５のアップロード処理手段５１は、ＰＤＦ形式の書籍データを読み込んだ後、知識ベース構築システム３に書籍データの受け渡すアップロード処理を行う。
【００２８】
知識ベース構築システム３のデータ読込手段３０は、図４に示すように、ＰＤＦデータを受信すると（Ｓ１０１：ＹＥＳ）、図示しないサーバにＰＤＦデータを保存する（Ｓ１０２）。
【００２９】
次いで、テキスト化処理手段３３は、知識ベース管理システム５からの構築開始信号を受信すると（Ｓ１０３：ＹＥＳ）、サーバからＰＤＦデータを読み出してテキスト化（文章の抽出）処理（１０４）を行う。
【００３０】
また、自然言語処理手段３１は、テキスト化処理された書籍データに対して単語ごとに係り受けなどの構造を解析する自然言語処理を行う（Ｓ１０５）。
【００３１】
さらに、構造化体裁整理処理手段３２は、自然言語処理の結果に基づいて、予め定めた所定の単語が含まれている文を抽出してカテゴリ毎に分類する構造化体裁整理処理により（Ｓ１０６）知識ブロック２１を作成し、この知識ブロック２１を知識ベース２に格納する（Ｓ１０７）。
【００３２】
ここで、ステップＳ１０４におけるテキスト化処理は、ＰＤＦデータからテキストを抽出しただけでは、ページヘッダやページ数、プログラムリストなどのノイズが所々に入ってしまい、そのままでは後の解析で用いる場合に不都合がある。そこで、テキスト化を行った後、後述する自然言語処理による解析での支障を最低限に抑えるために、プログラムによって、できる限りテキスト文書の整形を加えた方が好ましい。
【００３３】
具体的なテキスト文書の整形としては、知識ベース構築システム３の書籍データの読み込み時には、受け渡されたた書籍データに対して、ノイズの原因となるページ数及びページヘッダを削除し、ノイズなどにより繋がっていなかったり文章の途中で改行されていたりする文章を結合して読点毎にテキストデータを抽出し、また、注釈の知識自体は、知識ベース構築に際して使用できる知識であるため、注釈の抜き出しも行う。
【００３４】
また、ステップＳ１０５における自然言語処理は、まず、図５に示すように、テキスト化された書籍データに対して、文中に使用される単語ごとに名詞や格助詞などの形態を解析する形態素解析を行う。次いで、図６に示すように、形態素解析によって読点毎に区切られたテキストデータに対して、文節ごとの係り受けを示した文章の構文解析を行う。
【００３５】
ここで、形態素解析ツールとしては、たとえば、奈良先端科学技術大学院大学松本研究室で開発されたＣｈａＳｅｎ（茶筌）（http://chasen.naist.jp/hiki/ChaSen/）を用いることができる。また、構文解析ツールとしては、たとえば、ＧＮＵ Lesser Public License（LGPL）に従ったＣａｂｏＣｈａを用いることができる。
なお、自然言語処理は、処理速度を高めるために可能な限り複雑な処理を行わせずに実行することが望ましい。
【００３６】
さらに、ステップＳ１０６における構造化体裁整理処理は、図７に示すように、自然言語処理によって形態解析が行われたテキストに対して、まず、所定の単語（キーワード）が含まれる文章を抽出し、次いで、抽出した文に対してカテゴリ分類を行い、キーワードに関する知識ブロック２１を構築する。
【００３７】
ここで、文章を抽出する際のキーワードは、たとえば、書籍の巻末に載っている索引一つ一つを用いることができる。なお、索引には、キーワードとしてそのまま使用するには不適当な表現記法を用いているものがあるため、それらを除外・整理して用いることが望ましい。具体的には、索引には「Courier（フォント名）」などのように括弧が追加されて２重に単語が表記されている場合があり、このような複数の単語を含んだ状態で抽出を実行すると、片方の単語のみが記載された目的とする文章が抽出されない虞があるので、このような括弧を除外して文の抽出を行う。
【００３８】
また、カテゴリの分類は、カテゴリごとの文の特徴をまとめ、分類するルールが格納された設定ファイルを知識ベース管理システム５の操作により予め作成しておき、その設定ファイルを参照することで行われる。
具体的には、兆候のカテゴリに分類される文では、「〜ができない」といった否定形の文の形態を含む特徴があるので、このような文の形態の特徴を利用して予め抽出文とカテゴリの関係を設定したファイルを作成し、抽出した文に対してカテゴリ分けが行われる。
【００３９】
以上のように、知識ブロック２１の生成過程を自動化することにより、知識ベース２に格納する知識ブロック２１の量の増加を図ることができ、回答率の向上を図ることが可能となる。
また、文章の形態および構造に基づいて知識ブロック２１の構築を行うため、予め指定したカテゴリに分類することができ、作業者による作業量を減らすことが可能となる。
【００４０】
本検索システム１における知識ブロック２１の検索について説明する。
【００４１】
知識ベース検索システム４のユーザインターフェイス４１に質問文が入力されると、まず、自然言語処理手段４２により質問の対象となるキーワードや主節などの構造が解析される。次いで、検索アルゴリズム４３は、質問の対象となるキーワードと質問文のカテゴリを抽出すると、知識ベース２におけるそのキーワードの知識ブロック下にある同じカテゴリを抜き出し、さらに、質問の対象キーワード以外の単語（固有名詞や形容詞など）と構文解析結果であるツリー構造から、一致度の高い回答に対して回答文生成処理手段４４によって形成された回答文をユーザインターフェイス４１に提示する。
【００４２】
なお、知識ベース管理システム５に、知識ベース２に格納されているデータを表示する閲覧手段５２と、単体の知識のみを個別に知識ブロック２１に追加する単体知識追加処理手段５３と、保存手段５８と、を備えることで、管理者は、たとえば、ユーザの質問に答えられなかった質問に対し、新たに知識ブロック２１を作成することで、単独で知識を追加することができる。
【００４３】
具体的には、保存手段５８は、知識ベース２には格納されていない知識について質問されたときに、その質問の保存を行う。一方で、単体知識追加処理手段５３は、自然言語処理手段５４と全文検索手段５５と、を有しており、管理者が入力した検索文に基づいて知識ブロック２１の検索を行い、格納されていない知識があった場合に知識を追加する。さらに、構築ルールシミュレート処理手段５６を有することによって、構造化体裁処理手段３２がカテゴリ分類の際に参照するファイルの更新を行うことができ、抽出時に起きた不具合を取り除くことが可能となる。
【００４４】
さらに、知識ベース管理システム５に、知識ベース検索システム４を管理する手段として、質問履歴および回答履歴の管理をする回答率他解析手段５７を備えることで、質問履歴の管理をすることができる。さらにまた、回答率他解析手段５７にユーザから理解度に関する評価の収集および集計を行うことで、評価の低い知識に対して管理者が言葉を付け足してより解りやすくすることが可能となる。
【００４５】
なお、本実施例で説明した検索システムは、日本語以外の外国語の言語においても利用できることは、いうまでもない。
【符号の説明】
【００４６】
１  検索システム
２  知識ベース
３  知識ベース構築システム
４  知識ベース検索システム
５  知識ベース管理システム
２１  知識ブロック
３０  データ読込手段
３１  自然言語処理手段
３２  構造化体裁処理手段
３３  テキスト化処理手段
４１  ユーザインターフェイス
４２  自然言語処理手段
４３  検索アルゴリズム
４４  回答文生成手段
５１  アップロード手段
５２  閲覧手段
５３  単体知識追加処理手段
５４  自然言語処理手段
５５  前文検索手段
５６  構築ルールシミュレート手段
５７  回答率他解析手段
５８  保存手段
【図１】
2010250439.tif 000003
【図２】
2010250439.tif 000004
【図３】
2010250439.tif 000005
【図４】
2010250439.tif 000006
【図５】
2010250439.tif 000007
【図６】
2010250439.tif 000008
【図７】
2010250439.tif 000009