(57)【要約】【課題】  効率的な文書検索と、検索結果の読解を支援する文書検索装置および方法を提供する。【解決手段】  検索対象ドメインの知識を表す知識源データの文書から属性値となる重要語と周囲に現れる単語の出現頻度からなる単語ベクトルを重要語の特徴量として抽出する。検索対象文書と重要語の特徴量の類似度を基準として重要語を文書の属性値として付与する。検索対象文書は付与された属性値ごとにグループ化され、文書集合を代表する属性値と、文書集合のばらつき値がユーザに検索観点を提供するために提示される。ユーザが必要な情報を表す属性値を選択すると検索対象文書の絞込みが行われる。また、検索結果全件の最小読解時間を各文書集合の読解時間の積算により算出する。ユーザに最小読解時間となる順序で文書集合毎に文書を提示する。【選択図】  図２３
2010211438.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続され、
ＣＰＵと、
前記ＣＰＵの処理結果を格納するメモリと、
１または複数の属性値と、前記属性値を特徴付ける特徴キーワード群と同じ特徴を持つ１または複数の文書とを、対応付けて格納する検索対象文書データベースと、
前記ＣＰＵが前記ネットワークを通じて１または複数の絞込み属性値を受信し検索結果を送信する送受信手段と、
前記ＣＰＵが前記絞込み属性値を用いて前記検索対象文書データベースを検索し前記検索結果を生成する文書検索手段と、
を備える文書検索装置であって、
前記文書検索手段は、前記検索対象文書データベースから前記絞込み属性値に一致する属性値に対応付けられた第１の文書集合を作成し検索結果とするとともに、前記第１の文書集合を各文書に対応付けられた前記属性値でグループ分けした複数の第２の文書集合を作成し、前記第２の文書集合のばらつき値を算出し、前記第２の文書集合と前記属性値と前記ばらつき値を対応付けて作成したテーブルを前記検索結果に付加すること、
を特徴とする文書検索装置。
【請求項２】
前記送受信手段は、更に１または複数の検索キーワードを受信し、
前記文書検索手段は、更に前記検索キーワードを用いて前記検索対象文書データベースを全文検索し第３の文書集合を作成し、更に前記第３の文書集合から前記絞込み属性値に一致する属性値に対応付けられた第１の文書集合を作成し検索結果とすること、
を特徴とする請求項１に記載の文書検索装置。
【請求項３】
前記文書検索手段は、文書集合の各文書の特徴を表す単語ベクトルの分散を用いて前記ばらつき値を算出すること、
を特徴とする請求項１に記載の文書検索装置。
【請求項４】
前記文書検索手段は、更に前記第1の文書集合を読解するために必要な全文書読解時間を算出し前記検索結果に付加すること、
を特徴とする請求項１に記載の文書検索装置。
【請求項５】
前記文書検索手段は、文書の特徴を表す単語ベクトルから求められる文書集合の重心からの文書の距離と文書長を用いて一つの文書の読解時間を算出し、各文書の読解時間を積算して前記全文書読解時間を算出すること、
を特徴とする請求項４に記載の文書検索装置。
【請求項６】
前記文書検索手段は、複数の前記第２の文書集合の全順列を生成し、前記全順列について前記第２の文書集合毎に算出した文書集合読解時間を積算した全文書読解時間を算出し、前記全順列について算出した全文書読解時間の中から最小の全文書読解時間に対応する順列を前記検索結果に付加すること、
を特徴とする請求項５に記載の文書検索装置。
【請求項７】
前記最小の全文書読解時間に対応する順列の前記第２の文書集合の順序で、かつ文書集合の中にあっては文書集合の重心からの文書の距離の順序で文書を前記検索結果に付加すること、
を特徴とする請求項６に記載の文書検索装置。
【請求項８】
ＣＰＵと、前記ＣＰＵの処理結果を格納するメモリと、を備えるコンピュータにおける文書検索方法であって、
入力手段が、１または複数の絞込み属性値の入力を受け付けるステップと、
絞込手段が、１または複数の属性値と、前記属性値を特徴付ける特徴キーワード群と同じ特徴を持つ１または複数の文書とを、対応付けて格納する検索対象文書データベースから、前記絞込み属性値に一致する属性値に対応付けられた第１の文書集合を作成するステップと、
グループ化手段が、前記第１の文書集合を各文書に対応付けられた前記属性値でグループ分けした複数の第２の文書集合を作成するステップと、
ばらつき値算出手段が、文書集合の各文書の特徴を表す単語ベクトルの分散を用いて前記第２の文書集合のばらつき値を算出し、前記第２の文書集合と前記属性値と前記ばらつき値を対応付けて作成したテーブルを前記検索結果に付加するステップと、
出力手段が、前記検索結果を出力するステップと、
を含むことを特徴とする文書検索方法。
【請求項９】
読解時間算出手段が、文書の特徴を表す単語ベクトルから求められる文書集合の重心からの文書の距離と文書長を用いて一つの文書の読解時間を算出し、各文書の読解時間を積算して前記第1の文書集合を読解するために必要な全文読解時間を算出し、前記検索結果に付加するステップと、
を更に含むことを特徴とする請求項８に記載の文書検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキストマイニングの手法による属性や属性値を付与することで文書検索効率を向上する方法、並びにプログラム、及びそれを用いた文書検索装置に関する。
【背景技術】
【０００２】
近年、電子化文書の流通が進み、文書検索技術、文書解析技術が発展している。特許文献１には、文書データベースを構文解析して、各文書を構文木データとして表し、精度良く情報検索を行う方法が開示されている。特許文献２には、文書から、時期、場所、主体、対象、態様の５要素の情報および述語情報を抽出する方法が開示されている。特許文献３には、クラスタリングされた文書の重心からの距離の算出方法と提示方法が開示されている。また、非特許文献１では、検索結果の上位から選出した文書をフィードバックすることで検索精度を向上させる方法について述べられている。このように、文書検索精度の向上、文書からの重要情報抽出精度の向上、ユーザの検索効率の向上に関する検討が多く進められている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2003-167898号広報
【特許文献２】特開2004-110435号広報
【特許文献３】特開2004-086351号広報
【非特許文献】
【０００４】
【非特許文献１】Tetsuya Sakai, et. Al. Flexible Pseudo-Relevance Feedback via Selective Sampling, ACM Transactions on Asian Language Information Processing, Vol. 4, No. 2, pp. 111-135, 2005
【発明の概要】
【発明が解決しようとする課題】
【０００５】
文書検索精度向上への取り組みは続いているが、精度と検索漏れをともに満足させる、いわゆるピンポイント検索は実現されるに至っていない。そのため、文書を検索した際、検索結果に大量の文書が並び、スコア上位の文書から見ていっても必要な情報がなかなか見つからず、必要な情報が存在するのか否か判断がつかない状況が多くある。また、検索目的によっては検索結果全てを読解する必要があるが、従来のスコア順に閲覧する方法ではキーワードへのヒット率が高くさえあれば内容の類似性に関係なく文書が提示された。この方法では、閲覧するユーザの短期記憶や連想記憶のモデルと整合しないため、文書の読解効率が低いという問題がある。
【０００６】
検索結果が整理されて一覧でき、必要な情報を絞り込むのに有効なキーワードやカテゴリが容易に選択でき、類似する文書をまとめて読解できれば、ユーザが必要な情報に辿り着く時間や、必要な情報が検索対象のデータベースに存在するか否かを判断する時間を短縮することが可能となる。また、検索結果全体を読解するためにどの順序で文書を読めば効率的か、またどの程度の時間を必要とするかを提示できれば、ユーザの作業はいっそう効率的になる。
【０００７】
本発明の目的は、文書検索の検索対象文書の内容を観点(属性)ごとに整理する属性値、いわゆるメタデータを検索対象文書に付与し、検索の過程において各属性値を選択した際の絞込みに対する効果を定量的に提示することで、文書検索作業を効率化することである。本発明の別の目的は絞り込まれた検索結果を読解するのに最適な閲覧順序を提示することで、文書読解作業を効率化することである。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の文書検索装置は、検索対象の文書データと、検索対象ドメインの知識を表す知識源データとを用意し、知識源データから属性値となる重要語およびその特徴量を抽出して、抽出した重要語を含む検索対象の文書データに属性値として付与する。例えば、製品のサポートサービスにおける文書検索を考えた場合、検索対象文書データがＦＡＱ、検索対象ドメインの知識を表す文書データが製品マニュアル、という文書データの組み合わせが考えられる。ここで、検索対象の文書データを検索対象データ、ドメイン知識の文書データを知識源データと呼ぶこととする。
【０００９】
重要語およびその特徴量は、知識源データから抽出する。すなわち、知識源データの中から重要語の記述を特定し、重要語の周囲に現れる単語の出現頻度からなる単語ベクトルを該重要語の特徴量とする。重要語の属性は、検索対象ドメインによって様々なものが考えられる。例えばサポートサービスにおいてＦＡＱを検索する場合、「機能」、「操作」、「製品名」等の属性が考えられる。続いて、検索対象データに、抽出した重要語を属性値として付与する。検索対象データの各文書に付与する重要語は、各文書に含まれる単語の出現頻度からなる単語ベクトルと、最も類似した単語ベクトルを持つ重要語である。
【００１０】
このようにして付与された属性値は、検索対象データを観点（重要語の属性）ごとに整理する目的でユーザに提示され、ユーザは必要な情報を表す属性値を選択することにより絞込み検索を行うことが可能となる。この際、それぞれの属性値を選択すると、検索結果がどれだけ効率的に絞り込まれるかを定量評価し、その値をばらつき度として提示する。
【００１１】
また、絞り込まれた検索結果を同じ属性値でグループ化された文書集合ごとにその集合内での文書のばらつき度合いと文書長から文書読解時間を算出し文書集合の閲覧順序を最適化する閲覧順序最適化手段を設けた。
【発明の効果】
【００１２】
本発明によれば、文書検索において、検索対象データに付与した属性値を観点ごとに整理して提示し、また各属性値の絞込み検索に対する効果を定量的に提示することで、文書検索操作を効率化することが可能となる。また、検索結果を読解するのに最適な閲覧順序を提示することで、文書読解作業を効率化することが可能になる。
【図面の簡単な説明】
【００１３】
【図１】文書検索装置の構成図
【図２】文書検索装置の処理構成図
【図３】文書インデックス生成プログラムのフローチャート
【図４】検索対象文書テーブル
【図５】形態素解析テーブル
【図６】検索対象文書単語ベクトルテーブル
【図７】属性値生成プログラムのフローチャート
【図８】重要語特徴量抽出ステップのフローチャート
【図９】知識源文書テーブル
【図１０】形態素解析テーブル
【図１１】重要語特徴量テーブル
【図１２】属性値付与ステップのフローチャート
【図１３】重要語類似度テーブル
【図１４】属性値テーブル
【図１５】文書検索モジュールのフローチャート
【図１６】検索結果テーブル
【図１７】属性値-文書IDテーブル
【図１８】ばらつき度テーブル
【図１９】文書検索システムの構成図
【図２０】情報端末の構成図
【図２１】情報端末の文書検索画面
【図２２】情報端末の文書検索画面
【図２３】情報端末の文書検索画面
【図２４】情報端末の文書検索画面
【図２５】読解時間算出処理のフローチャート
【図２６】読解時間算出処理のフローチャート
【図２７】情報端末の文書読解画面
【発明を実施するための形態】
【００１４】
以下、図面を参照して、本発明による文書検索装置の実施形態を説明する。
【００１５】
まず、文書検索システムの全体構成及び、ユーザが検索要求を送信する端末について説明する。
【００１６】
文書検索システムの全体構成を図１９に示す。文書検索装置1901は、ネットワーク1902を介して複数の情報端末1903と接続されている。
【００１７】
典型的には、ネットワーク1902としてのインターネットと、情報端末1903としてのWebブラウザプログラムを備えたパーソナルコンピュータと、文書検索装置1901としてのWebアプリケーションプログラムを備えたサーバコンピュータとで構成できる。
【００１８】
情報端末のハードウェア構成を図２０に示す。情報端末は、ＣＰＵ2001、メモリ2002、通信装置2003、入力装置2004、出力装置2005、検索要求生成モジュール2006、ユーザインタフェースモジュール2007、送受信制御モジュール2008を有する。
【００１９】
情報端末1903は、ユーザが入力装置2004から入力した検索クエリを文書検索装置1901に送信し、文書検索装置1901は文書検索を実行し検索結果を返信する。情報端末1903は検索結果を受信し、出力装置2005に文書検索結果を表示する。文書検索結果の表示方法及びユーザとのインタラクションは本発明の特徴の一つであり詳細は後述する。
【００２０】
図１に文書検索装置1901の構成を示す。文書検索装置は、ＣＰＵ101、メモリ102、通信装置103、プログラム記憶装置104、及びデータ記憶装置117によって構成される。プログラム記憶装置104は、文書インデックス生成モジュール105、属性値生成モジュール107、文書検索モジュール110、文書処理モジュール113、送受信制御モジュール115を有する。文書インデックス生成モジュール105は、文書インデックス生成プログラム106を有する。属性値生成モジュール107は、重要語特徴量抽出プログラム108および、属性値付与プログラム109を有する。文書検索モジュール110は、文書検索プログラム111、ばらつき度・読解時間算出プログラム112を有する。文書処理モジュール113は、形態素解析プログラム114を有する。送受信制御モジュール115は、送受信制御プログラム116を有する。データ記憶装置117は、検索対象文書データベース118、知識源文書データベース119を有する。ＣＰＵ101は、上述した各プログラムをメモリ102にロードし実行するとともに、後述する各種テーブルをメモリ102に作成しデータを格納する。各種テーブルは、リレーショナルデータベースソフト等で実現されていてもよいし、プログラムによってリンクポインタを用いて項目が対応付けられていてもよいし、配列構造であっても良い。
【００２１】
図２に文書検索装置のモジュール間のデータフローを示す。文書検索装置の処理は、大きく２つに分かれる。文書インデックス生成処理201と、文書検索処理202である。まず、属性値生成モジュール107で、重要語特徴量抽出プログラム108が知識源文書データベース119から予め重要語およびその特徴量を抽出しておく。これは、知識源文書データベース119は、検索対象文書データベース118に比べ、更新頻度が低いことによる。次に、文書インデックス生成処理201では、文書インデックス生成モジュール105が、検索対象文書データベース118の各文書を表す単語ベクトルを算出し、検索対象文書に属性値付与プラグラム109が重要語を属性値として付与する。このようにして、文書検索の準備が整う。なお、検索対象文書データベース118が更新されたときには属性値の付与を、知識源文書データベース119が更新されたときには重要語の抽出と属性値の付与を、それぞれ再実行する。
【００２２】
文書検索処理202では、情報端末1903から送信された検索要求を送受信制御モジュール115が受け取り、文書検索モジュール110に入力する。文書検索モジュール110は入力された検索要求に従って検索対象文書データベース118を検索し、検索結果を送受信制御モジュール115に返す。送受信制御モジュール115は返された検索結果を情報端末1903に送信する。
【００２３】
以下各処理の詳細を説明する。まず、図３〜図１４を用いて、文書インデックス生成処理201の詳細を説明する。
【００２４】
図７は、文書インデックス生成処理201のフローチャートである。重要語特徴量抽出ステップS701では、属性値生成モジュール107の重要語特徴量抽出プログラム108に図９に示す知識源文書テーブルのデータを入力する。知識源文書テーブルは、知識源文書データベース119に保存されており、検索対象のドメイン知識が記述された文書の集合である。例えば、サポートサービスのＦＡＱ検索を考えた場合、製品マニュアルの記述内容が知識源文書テーブルに格納される。特許検索を考えた場合、当該ドメインの専門用語集が知識源文書テーブルに格納される。重要語特徴量抽出プログラム108の出力は、図１１に示す重要語とその特徴量の組である重要語特徴量テーブルのデータであり、知識源文書データベース119に保存される。文書インデックス生成ステップS702では、文書インデックス生成プログラム106に図４に示す検索対象文書テーブルの文書を入力し、図６に示す検索対象文書単語ベクトルテーブルに単語ベクトルが出力される。例えば、サポートサービスのＦＡＱ検索を考えた場合には、Ｑ＆Ａの履歴文書が検索対象文書テーブルに格納される。特許検索を考えた場合には、特許本文が検索対象文書テーブルに格納される。属性値付与ステップS703では、属性値生成モジュール107の属性値付与プログラム109が、知識源文書データベース119から重要語特徴量テーブルのデータを取り出し、検索対象文書データベース118に保存された検索対象文書テーブルの各文書と特徴を比較することで各文書に重要語を属性値として付与し、図１４に示す属性値テーブルにデータを出力して検索対象文書データベース118に保存する。
【００２５】
図８は、重要語特徴量抽出ステップS701の詳細フローチャートである。重要語抽出ステップS701では、図９に示す知識源文書テーブルの文書が入力され、図１１に示す重要語特徴量テーブルにデータが出力される。
【００２６】
形態素解析ステップS801では、入力された知識源文書テーブルの各文書に対し、句読点で区切るなどの文分割を行ったのち、文書処理モジュール113の形態素解析プログラム114を呼び出して形態素解析を行い、図１０に示す形態素解析テーブルにデータを出力する。図９に知識源文書テーブルの例を示す。知識源文書テーブルは、文書ID901と記述内容902の情報を持つ。図１０に形態素解析テーブルの例を示す。形態素解析テーブルは、文書ID1001、形態素1002、品詞1003の情報を持つ。文書ID1001は検索対象文書テーブルの文書ID901と共通であり、文書を識別するためのIDである。形態素1002は、入力文書を形態素解析した結果の形態素を表す。品詞1003は、形態素の品詞を表す。形態素解析は、公知または周知の手法を用いれば良く、例えば、「Applying Conditional Random Fields to Japanese Morphological Analysis」（工藤拓  他著、EMNLP 2004）に開示される手法等を適用することができる。図１０の形態素解析テーブルの値は、図９の知識源文書テーブルの文書ID1の1文目「本製品のリモートインストール機能を使用して，プログラムプロダクトやソフトウェアなどをクライアントへ配布できます。」を処理した形態素解析結果例である。この形態素解析結果例は、形態素解析器Mecab（http://mecab.sourceforge.net/ 2008年9月11日検索）の実行結果に基づいている。形態素解析ステップS801の処理によって、文書が形態素に分割され、品詞を用いて語を選定したり、単語の出現頻度をカウントしたりすることが可能となる。
【００２７】
重要語抽出ステップS802では、形態素解析テーブルの形態素が入力され、図１１に示す重要語特徴量テーブルが更新される。重要語は検索対象文書に属性値として付与されるものであり、属性と属性値の組として抽出する。例えば、サポートサービスにおけるＦＡＱ検索を考えた場合、「製品名」「製品機能」「操作」等の属性が属性値として有効である。「製品機能」という属性を持った重要語を抽出する場合、知識源データ、ここでは製品マニュアルから、「○○機能」という記述の「○○」の部分を重要語と特定するという方法が考えられる。すなわち、知識源文書データベース119の形態素解析テーブルから「機能」という形態素を特定し、その直前（形態素解析テーブルでは一つ上の行）の形態素が名詞であった場合それを重要語として抽出する。単独の名詞のみではなく名詞の連続を抽出することで、複合語からなる重要語も抽出することが可能である。重要語の記述の特定方法は任意であり、例としては「製品名」であれば製品名辞書を用いるなどの方法も考えられる。重要語を抽出したら、重要語特徴量テーブルの行ラベル（図１１の左端列）に当該重要語があるかを確認し、当該重要語がない場合は重要語特徴量テーブルに当該重要語をラベルとする行を１行追加する。重要語抽出ステップS802の処理により、知識源文書における重要語の記述箇所を特定することができ、重要語の特徴量の抽出が可能となる。
【００２８】
重要語近傍単語抽出ステップS803では、抽出した重要語について、重要語に後続する形態素を特定個数取り出し、重要語特徴量テーブルの該重要語に対する該単語の要素値に出現回数を追加する。後続する形態素を取り出す際は、名詞・動詞・形容詞に限るなど、品詞によるフィルタリングを行ってもよい。また、後続する形態素のみではなく、前出する形態素も特徴量に追加するなどの処理を行ってもよい。
【００２９】
ステップS804では、重要語抽出ステップS802および重要語近傍単語抽出ステップS803を、入力された形態素解析テーブルの全ての形態素に対して処理したかを確認する。処理が終了すると、知識源文書データベースに保存された形態素解析テーブルから抽出した、各重要語の近傍単語の単語ベクトルからなるレコードが重要語特徴量テーブルに出力される。図１１に示す重要語特徴量テーブルでは、各行が一つの重要語の特徴量を表し、左端の列は重要語を表すラベルとなっている。更新された重要語特徴量テーブルは、知識源文書データベース117に格納される。
【００３０】
図３は、文書インデックス生成ステップS702の詳細フローチャートである。文書インデックス生成モジュール105すなわち文書インデックス生成プログラム106の入力は、図４に示す検索対象文書テーブルの文書であり、出力は図６に示す検索対象文書単語ベクトルテーブル、図１４に示す属性値テーブルのデータである。更新された検索対象文書単語ベクトルテーブルと属性値テーブルは、検索対象文書データベース118に保存される。
【００３１】
形態素解析ステップS301では、入力された検索対象文書テーブルの各文書に対し、句読点で区切るなどの文分割を行ったのち、文書処理モジュール113の形態素解析プログラム114を呼び出して形態素解析を行い、図５に示す形態素解析テーブルに出力する。図４に、検索対象文書テーブルの例を示す。検索対象文書テーブルは、文書ID401と記述内容402の情報を持つ。
【００３２】
図５に形態素解析テーブルの例を示す。形態素解析テーブルは、文書ID501、形態素502、品詞503の情報を持つ。文書ID501は検索対象文書テーブルの文書ID401と共通であり、文書を識別するためのIDである。形態素502は、入力文書を形態素解析した結果の形態素を表す。品詞503は、形態素の品詞を表す。形態素解析は、前述したように、公知または周知の手法を用いれば良い。図５の形態素解析テーブルの値は、図４の検索対象文書テーブルの文書ID1の1文目「リモートインストールで起動に失敗したジョブはどうなるか。」を処理した形態素解析結果例である。この形態素解析結果例は、形態素解析器Mecab（http://mecab.sourceforge.net/ 2008年9月11日検索）の実行結果に基づいている。形態素解析ステップS301の処理によって、文書が形態素に分割され、品詞を用いて語を選定したり、単語の出現頻度をカウントしたりすることが可能となる。
【００３３】
単語ベクトル生成ステップS302では、形態素解析テーブルの形態素が入力され、図６に示す検索対象文書単語ベクトルテーブルにレコードが追加される。検索対象文書単語ベクトルテーブルは、行要素が文書ID、列要素が単語IDからなる行列であり、要素値は各文書における各単語の出現回数(出現頻度)を表す。単語ベクトル生成ステップS302では、入力された形態素解析テーブルから、必要に応じて品詞などでフィルタリングをして、文書に出現する単語とその出現回数をカウントし、検索対象文書単語ベクトルテーブルのレコードを生成する。本実施例では、品詞の大分類が「名詞」かつ、中分類が「サ変接続」「ナイ形容詞語幹」「一般」「引用文字列」「一般」「固有名詞」のいずれかである単語のみをカウント対象とした。単語ベクトル生成ステップS302の処理によって、検索対象文書が単語ベクトルによって表され、単語ベクトル間の類似度を算出したり、検索キーワードにマッチする検索対象文書を高速に検索することが可能となる。
【００３４】
以上が、文書インデックス生成モジュール105すなわち文書インデックス生成プログラム106の詳細である。生成された検索対象文書単語ベクトルテーブルは検索対象文書データベース118に保存される。単語ベクトル生成ステップS302の処理によって、検索対象文書が単語ベクトルによって表現され、文書間の類似や文書と他の特徴量との類似を高速に算出することが可能となる。
【００３５】
図１２は、属性値付与ステップS703のフローチャートである。属性値付与ステップS703では、検索対象文書データベース118に保存された検索対象文書単語ベクトルテーブル601と、知識源文書データベース119に保存された重要語特徴量テーブル1101のデータが入力され、各検索対象文書に重要語が属性値として付与されて、図１４に示す属性値テーブルのレコードが出力される。
【００３６】
検索対象文書重要語特徴量類似度算出ステップS1201では、検索対象文書単語ベクトルテーブル601における１つの文書を表す単語ベクトルと、重要語特徴量テーブル1101のデータが入力され、入力された１つの文書を表す単語ベクトルと重要語特徴量との類似度が算出される。類似度の算出には、単語ベクトルの余弦を用いる。算出された類似度は、図１３に示す重要語類似度テーブルに出力される。
【００３７】
高類似度重要語選出ステップS1202では、重要語類似度テーブルのデータが入力され、処理中の検索対象文書に対する類似度の高い重要語が付与される属性値として選出され、図１４に示す属性値テーブルが更新される。属性値として付与する重要語は、例えば、検索対象文書の単語ベクトルと最も類似度の高い特徴量を持った重要語、あるいは類似度上位５語といった基準で選出する。また、類似度の下限値を設定する方法もある。一つの文書には、複数の属性の属性値が付与され得る。例えば、文書ＩＤ１に対し属性「機能」から「配布」、属性「製品名」から「ＡＡＡ」の二つの属性値が付与され得る。
【００３８】
ステップS1203では、検索対象文書重要語特徴量類似度算出ステップS1201および高類似度重要語選出ステップS1202の処理を、検索対象文書単語ベクトルテーブル601の全ての文書（単語ベクトル）に対して繰り返す。処理終了後、属性値テーブルは検索対象文書データベース118に保存される。
【００３９】
以上が、属性値生成モジュール107の処理である。この段階で文書検索の準備が完了したことになる。
【００４０】
続いて、図１５〜図１７を用いて文書検索処理202の処理の詳細を説明する。
【００４１】
図１５に文書検索処理のフローチャートを示す。文書検索処理では、送受信制御モジュール115の送受信制御プログラム116が情報端末から検索要求を受信し、文書検索モジュール110に検索要求を入力し、文書検索モジュール110は検索要求に従って検索対象文書データベース118を検索した結果を出力して送受信制御モジュール115に入力し、送受信制御モジュール115は検索結果を情報端末に送信する。
【００４２】
検索クエリ受信ステップS1501は、送受信制御プログラム116に含まれる処理であり、情報端末から検索要求を受信し、文書検索ステップS1502に検索要求を入力する。検索要求には２種類ある。１つはキーワードをクエリとした検索対象文書単語ベクトルテーブルの検索であり、文書検索ステップS1502で実行される。もう１つは重要語をクエリとした属性値検索であり、属性値検索ステップS1503で実行される。
【００４３】
文書検索ステップS1502では、キーワード集合からなる検索クエリを入力とし、検索対象文書単語ベクトルテーブルを検索し、検索結果を図１６に示す検索結果テーブルに出力する。検索結果テーブルは、文書ID1601と重み1602の情報を持ち、重みは検索クエリに対する各文書の関連の度合いを表す。文書検索プログラムでは、受信した検索クエリによって検索対象文書単語ベクトルテーブルを検索できればよく、方法は特に限定しない。公知または周知の方法としては、全文検索エンジンlucene(http://lucene.apache.org/java/docs/ 2008年9月24日検索)などが挙げられる。文書検索ステップS1502の処理によって、ユーザから受け付けたクエリにマッチする検索対象文書を検索することが可能となる。
【００４４】
属性値検索ステップS1503では、重要語からなる検索クエリを入力とし、属性値テーブルを参照して、検索結果テーブルの要素を、クエリで指定された重要語を属性値として含む検索対象文書に限定する。
【００４５】
ばらつき度算出ステップS1504では、検索結果テーブルのレコードが入力され、図１７に示す属性値-文書IDテーブルを生成したのち、これを用いて各属性値のばらつき度を算出し、図１８に示すように、ばらつき度を算出する。属性値-文書IDテーブルは、属性名1701、属性値1702、文書ID1703、ばらつき度1704の情報を持ち、検索結果テーブルに含まれる文書に付与された属性値の情報をもとに、属性値ごとに、付与されている文書IDをリストにしたものである。ばらつき度算出ステップS1504では、まず、数１を用いて検索結果テーブルに含まれる全文書の単語ベクトルのばらつき値を算出する。
【００４６】
【数１】
2010211438.tif 000003
【００４７】
続いて、数１を用いて属性値毎のばらつき値を算出し、数２を用いて属性値毎のばらつき度を算出する。
【００４８】
【数２】
2010211438.tif 000004
【００４９】
処理が終了したら、属性値-文書IDテーブルにばらつき度を出力する。ばらつき度算出ステップS1504の処理によって、一つの属性値を選択することで、検索結果の絞込みにどれだけ効果があるかを定量的に把握することが可能となる。
【００５０】
以上が、文書検索装置の内部処理に関する説明である。
【００５１】
図２１に、情報端末に表示される文書検索画面を示す。文書検索画面は、検索クエリ入力エリア2101、検索要求送信ボタン2102、絞込み属性値候補表示エリア2103、検索結果表示エリア2104、絞込み属性値表示エリア2105を有する、例えばＨＴＭＬで記述されたＷｅｂ画面である。図２１の例では、検索者はメールサーバがうまく起動しないという問題を抱えており、検索クエリ入力エリア2101に「メールサーバ」という検索クエリを入力し、検索要求送信ボタン2102を押した状態を示す。
【００５２】
検索要求生成モジュール2006が生成した検索クエリを、送受信制御モジュール2008が文書検索装置に送信し、検索結果テーブル、属性値-文書IDテーブルを含むＨＴＭＬを受信する。受信した検索結果テーブルおよび属性値-文書IDテーブルの内容は、Ｗｅｂブラウザによって検索結果表示エリア2104および絞込み属性値候補表示エリア2103に表示される。絞込み属性値候補は、ばらつき度や件数でソートして表示される。図２１の例で操作属性値では、ばらつき度が小さい順に「起動」「設定」「バージョンアップ」が並んでいる。例えば、ユーザは、ばらつき度の小さい「起動」で絞り込むよりも、件数が少ない割にばらつき度が大きい、即ちより広範囲な内容の文書が期待できる「バージョンアップ」の絞込み属性値候補を選択することができる。すると、図２２の画面に遷移し、３６件の絞り込まれた候補が表示される。絞込み属性値表示エリア2105には選択した「バージョンアップ」が表示される。ばらつき度が表示されることで、ユーザはどの属性値を選択したら有効な情報が効率良く得られそうかを定量的に判断することが可能となる。
【００５３】
図２３、図２４には、ユーザがより直感的に絞込み属性値候補を選択できるよう文書検索画面をよりグラフィカルにした例を示している。この例では、ユーザは多様な事例を効率良く得たければ右下を、同じ事例が多いことを検証したければ左上を、選択することができる。また、左下に適切な絞込み属性値候補が存在すれば、ピンポイントで目的の情報を得られる可能性が高い。
【００５４】
図２３、図２４では、更に予想読解時間2106と読解画面起動ボタン2107を追加した。文書群を読解するための予測時間が表示されることで、業務のスケジュールに整合する文書検索が行いやすくなる。特許検索、判例検索などの文書閲覧では検索結果を全件読解する必要のある業務がある。このような全件の読解は、ファーストイン、ファーストアウトの短期記憶モデルにより行われると考えられる。従って大量の文書の中から関連する重要文書をチェックするためには、類似文書をまとめて読解することが合理的であるといえる。
【００５５】
そこで、本発明の文書検索装置では、文書の類似度に従いどの属性値の文書集合から閲覧を行うのが最も効率的、即ち読解時間が最適化されるかを計算し、計算結果に従い文書の提示順序を制御する機能をばらつき度・読解時間算出プログラム112に設けた。
【００５６】
本発明の文書検索装置は、文書に０個以上の属性値を付与し、同じ属性値を持つ文書をグループ化する。文書を理解する場合、グループ毎に閲覧するほうが効率がよい。そこで、本発明の文書検索装置では、文書の読解時間を数３で算出される文書の距離と文書長に基づいて数４で定義した。
【００５７】
【数３】
2010211438.tif 000005
【００５８】
【数４】
2010211438.tif 000006
【００５９】
つまり、ある属性値ｊでグループ化された文書集合ｊの読解時間は、文書集合ｊの重心に最も近い文書の読解を最初に行うことで、残りの文書の読解は、独立に読解するよりも短い時間で行うことができるという人の短期記憶と連想記憶の原理に基づいたモデルとした。数４において、パラメータＡは単位長さの文書読解速度、パラメータＢは文書距離に対して補正した単位長さの文書読解速度であり、予め設定する。望ましくは、個人毎に予め平均的な読解速度を測定して個人毎に設定するのが良い。
【００６０】
以上のように文書集合ｊの読解時間を定義し、図２５に示す手順で最小読解時間を算出する。ここで、２個の属性値を付与された文書が２個の文書集合に属する場合など同じ文書が複数の文書集合に属している場合は、２番目以降の文書集合では閲覧しないものとする。したがって検索結果集合全体の読解時間は文書集合の閲覧順序に依存する。そこで、本発明の文書検索装置では、文書集合の閲覧順序の全順列を生成し(ステップ2502)、上述した読解時間を全ての属性値の文書集合毎に計算し(ステップ2503)、最小の読解時間になる順列を求め(ステップ2505)、閲覧順序としてユーザに提示する(ステップ2507)。
【００６１】
図２６に、文書集合毎の読解時間の計算処理(ステップ2503)の詳細を示す。まず、既に他の文書集合で読解時間を計算済みの文書を算出対象から除外する(ステップ2602)。検索結果と属性値によっては、文書数が少数の時もあり除外した結果文書数が０になることがある。その場合は、読解時間０となる(ステップ2603)。先ず、数４の第１項、即ち重心に最も近い文書の読解時間を求める(ステップ2604)。次に数４の第２項、２文書目以降は文書長と重心との文書距離に従い読解時間を算出し(ステップ2605)、積算し(ステップ2606)する。
【００６２】
以上により、予想読解時間2106が表示可能となる。ユーザが読解ボタン2107を押すと、図２７に示す文書読解画面が表示される。ユーザが次文書ボタン2707を押すと、上述した最小読解時間の文書集合の順列で、また文書集合中では文書距離の小さい順に次々と文書が提示される。ユーザは、検索結果全体の目標読解時間2701やこの属性値の文書集合に対する目標読解時間2702、表示中の文書の目標読解時間2703に注意しながら、文書に付与された他の属性値2704を参考に、本文2705を読解し、必要に応じてメモ2706を記入しながら文書全件を読解して行くことで効率的な文書検索と文書の読解が可能になる。
【００６３】
以上述べてきた本発明の文書検索装置を文書検索方法の観点から表現すると、以下のようになる。
【００６４】
ＣＰＵと、前記ＣＰＵの処理結果を格納するメモリと、を備えるコンピュータにおける文書検索方法であって、入力装置2004及び通信装置2003、103により実現される入力手段が、１または複数の絞込み属性値の入力を受け付けるステップと、文書検索プログラム111により実現される絞込手段が、１または複数の属性値と、属性値を特徴付ける特徴キーワード群と同じ特徴を持つ１または複数の文書とを、対応付けて格納する検索対象文書データベース118から、絞込み属性値に一致する属性値に対応付けられた第１の文書集合を作成するステップと、文書検索プログラム111により実現されるグループ化手段が、第１の文書集合を各文書に対応付けられた属性値でグループ分けした複数の第２の文書集合を作成するステップと、ばらつき度・読解時間算出プログラム112により実現されるばらつき値算出手段が、文書集合の各文書の特徴を表す単語ベクトルの分散を用いて第２の文書集合のばらつき値を算出し、第２の文書集合と属性値とばらつき値を対応付けて作成したテーブルを検索結果に付加するステップと、通信装置103、2003及び出力装置2005により実現される出力手段が、検索結果を出力するステップと、ばらつき度・読解時間算出プログラム112により実現される読解時間算出手段が、文書の特徴を表す単語ベクトルから求められる文書集合の重心からの文書の距離と文書長を用いて一つの文書の読解時間を算出し、各文書の読解時間を積算して第1の文書集合を読解するために必要な全文読解時間を算出し、検索結果に付加するステップと、を含むことを特徴とする文書検索方法。
【符号の説明】
【００６５】
101  ＣＰＵ
102  メモリ
103  通信装置
104  プログラム記憶装置
105  文書インデックス生成モジュール
106  文書インデックス生成プログラム
107  属性値生成モジュール
108  重要語特徴量抽出プログラム
109  属性値付与プログラム
110  文書検索モジュール
111  文書検索プログラム
112  ばらつき度・読解時間算出プログラム
113  文書処理モジュール
114  形態素解析プログラム
115  送受信制御モジュール
116  送受信制御プログラム
117  データ記憶装置
118  検索対象文書データベース
119  知識源文書データベース
201  文書インデックス生成処理
202  文書検索処理
1901  文書検索装置
1902  ネットワーク
1903  情報端末
2001  CPU
2002  メモリ
2003  通信装置
2004  入力装置
2005  出力装置
2006  検索要求生成モジュール
2007  ユーザインタフェースモジュール
2008  送受信制御モジュール
2101  検索クエリ入力エリア
2102  検索要求送信ボタン
2103  絞込み属性値候補表示エリア
2104  検索結果表示エリア
2105  絞込み属性表示エリア
2106  予想読解時間
2107  読解画面起動ボタン
【図１】
2010211438.tif 000007
【図２】
2010211438.tif 000008
【図３】
2010211438.tif 000009
【図４】
2010211438.tif 000010
【図５】
2010211438.tif 000011
【図６】
2010211438.tif 000012
【図７】
2010211438.tif 000013
【図８】
2010211438.tif 000014
【図９】
2010211438.tif 000015
【図１０】
2010211438.tif 000016
【図１１】
2010211438.tif 000017
【図１２】
2010211438.tif 000018
【図１３】
2010211438.tif 000019
【図１４】
2010211438.tif 000020
【図１５】
2010211438.tif 000021
【図１６】
2010211438.tif 000022
【図１７】
2010211438.tif 000023
【図１８】
2010211438.tif 000024
【図１９】
2010211438.tif 000025
【図２０】
2010211438.tif 000026
【図２１】
2010211438.tif 000027
【図２２】
2010211438.tif 000028
【図２３】
2010211438.tif 000029
【図２４】
2010211438.tif 000030
【図２５】
2010211438.tif 000031
【図２６】
2010211438.tif 000032
【図２７】
2010211438.tif 000033