(57)【要約】【課題】文書ベクトルを用いた文書検索において無個性文書を検索対象として扱うことを可能とした文書検索処理装置、文書検索処理方法、プログラム、及び記憶媒体を提供する。【解決手段】文書検索処理装置のＣＰＵ１はＲＯＭ２に格納された制御プログラムを実行する事により、特徴の無い無個性文書を判定する判定結果に応じて文書間の類似性をとらえる制御を行う。即ち、無個性と判定された文書間の文書類似度として高い文書類似度を設定するか、或いは無個性文書の文書ベクトルを特徴が平均的である文書ベクトルに置き換える。また、文書ベクトルを用いて文書類似度に基づき類似文書を検索すると共に、無個性と判定された文書における基準類似度の類似性も用いて検索を行う。即ち、無個性と判定された全ての基準類似度が０の文書同士については類似性があると判断し、文書類似度生成対象とする。【選択図】　　　図１
2004126883.tif 000002
【特許請求の範囲】
【請求項１】
データベースから文書を検索する文書検索処理装置において、
文書を特徴付ける文書ベクトルを生成する文書ベクトル生成手段と、
前記文書ベクトルから文書間の文書類似度を生成する文書類似度生成手段と、
前記文書ベクトルに基づき特徴の無い文書を判定する無個性文書判定手段と、
前記無個性文書判定手段の判定結果に応じて文書間の類似性をとらえる制御を行う制御手段とを有することを特徴とする文書検索処理装置。
【請求項２】
前記無個性文書判定手段は、前記文書ベクトルにおける単語の意味や使用分野に応じて分類された各分類基準を特徴付ける特徴量の最大値と閾値との比較に基づき、文書検索時或いは文書登録時に前記判定を行うことを特徴とする請求項１記載の文書検索処理装置。
【請求項３】
前記文書ベクトル生成手段は、前記無個性文書判定手段の判定結果に応じた文書ベクトルを生成することを特徴とする請求項１記載の文書検索処理装置。
【請求項４】
前記文書類似度生成手段は、前記無個性文書判定手段の判定結果に応じた文書類似度を生成することを特徴とする請求項１記載の文書検索処理装置。
【請求項５】
前記制御手段は、前記文書類似度生成手段を制御し、前記無個性文書判定手段で無個性と判定された文書間の文書類似度として高い文書類似度を設定することを特徴とする請求項１記載の文書検索処理装置。
【請求項６】
前記制御手段は、前記文書ベクトル生成手段を制御し、前記無個性文書判定手段で無個性と判定された文書の文書ベクトルを特徴が平均的である文書ベクトルに置き換えることを特徴とする請求項１記載の文書検索処理装置。
【請求項７】
データベースから文書を検索する文書検索処理装置において、
文書を特徴付ける文書ベクトルを生成する文書ベクトル生成手段と、
前記文書ベクトルから文書間の文書類似度を生成する文書類似度生成手段と、
前記文書ベクトルに基づき特徴の無い文書を判定する無個性文書判定手段と、
文書と独立して存在する複数の基準ベクトルと前記文書ベクトルとの類似度から基準類似度を生成する基準類似度生成手段と、
前記文書ベクトル生成手段で生成された文書ベクトルを用いて、前記文書類似度生成手段で生成された文書類似度に基づき類似文書を検索すると共に、前記無個性文書判定手段で無個性と判定された文書における基準類似度の類似性も用いて前記検索を行う文書検索手段とを有することを特徴とする文書検索処理装置。
【請求項８】
前記文書検索手段は、前記無個性文書判定手段で無個性と判定された全ての基準類似度が０の文書同士については類似性があると判断し、前記文書類似度生成手段による文書類似度生成対象とすることを特徴とする請求項７記載の文書検索処理装置。
【請求項９】
前記基準ベクトルとは、前記文書ベクトルにおける単語の意味や使用分野に応じて分類された各分類基準を特徴付ける特徴量を整数比で表したベクトルであることを特徴とする請求項７記載の文書検索処理装置。
【請求項１０】
データベースから文書を検索する文書検索処理方法において、
文書を特徴付ける文書ベクトルを生成する文書ベクトル生成工程と、
前記文書ベクトルから文書間の文書類似度を生成する文書類似度生成工程と、
前記文書ベクトルに基づき特徴の無い文書を判定する無個性文書判定工程と、
前記無個性文書判定工程の判定結果に応じて文書間の類似性をとらえる制御を行う制御工程とを有することを特徴とする文書検索処理方法。
【請求項１１】
データベースから文書を検索する文書検索処理方法において、
文書を特徴付ける文書ベクトルを生成する文書ベクトル生成工程と、
前記文書ベクトルから文書間の文書類似度を生成する文書類似度生成工程と、
前記文書ベクトルに基づき特徴の無い文書を判定する無個性文書判定工程と、
文書と独立して存在する複数の基準ベクトルと前記文書ベクトルとの類似度から基準類似度を生成する基準類似度生成工程と、
前記文書ベクトル生成工程で生成された文書ベクトルを用いて、前記文書類似度生成工程で生成された文書類似度に基づき類似文書を検索すると共に、前記無個性文書判定工程で無個性と判定された文書における基準類似度の類似性も用いて前記検索を行う文書検索工程とを有することを特徴とする文書検索処理方法。
【請求項１２】
文書を特徴付ける文書ベクトルを生成する機能と、前記文書ベクトルから文書間の文書類似度を生成する機能と、前記文書ベクトルに基づき特徴の無い文書を判定する機能と、前記判定結果に応じて文書間の類似性をとらえる制御を行う機能を、コンピュータに実現させるためのプログラム。
【請求項１３】
文書を特徴付ける文書ベクトルを生成する機能と、前記文書ベクトルから文書間の文書類似度を生成する機能と、前記文書ベクトルに基づき特徴の無い文書を判定する機能と、文書と独立して存在する複数の基準ベクトルと前記文書ベクトルとの類似度から基準類似度を生成する機能と、前記生成された文書ベクトルを用いて、前記生成された文書類似度に基づき類似文書を検索すると共に、無個性と判定された文書における基準類似度の類似性も用いて前記検索を行う機能を、コンピュータに実現させるためのプログラム。
【請求項１４】
データベースから文書を検索する文書検索処理方法を実行するプログラムを記憶したコンピュータにより読み出し可能な記憶媒体において、
前記文書検索処理方法は、文書を特徴付ける文書ベクトルを生成するステップと、前記文書ベクトルから文書間の文書類似度を生成するステップと、前記文書ベクトルに基づき特徴の無い文書を判定するステップと、前記判定結果に応じて文書間の類似性をとらえる制御を行うステップとを有することを特徴とする記憶媒体。
【請求項１５】
データベースから文書を検索する文書検索処理方法を実行するプログラムを記憶したコンピュータにより読み出し可能な記憶媒体において、
前記文書検索処理方法は、文書を特徴付ける文書ベクトルを生成するステップと、前記文書ベクトルから文書間の文書類似度を生成するステップと、前記文書ベクトルに基づき特徴の無い文書を判定するステップと、文書と独立して存在する複数の基準ベクトルと前記文書ベクトルとの類似度から基準類似度を生成するステップと、前記文書ベクトル生成工程で生成された文書ベクトルを用いて、前記文書類似度生成工程で生成された文書類似度に基づき類似文書を検索すると共に、前記無個性文書判定工程で無個性と判定された文書における基準類似度の類似性も用いて前記検索を行うステップとを有することを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、文書ベクトルを用いて文書データを検索する文書検索処理装置、文書検索処理方法、プログラム、及び記憶媒体に関する。
【０００２】
【従来の技術】
近年、大量の文書データを扱う機会が増加してきたため、データベースから所望の文書データを検索する手段も多種多様になってきている。これは、単純なキーワード検索（キーワードを指示し、それが出現するか否かで検索を行う）ではユーザの要求を十分に満たさなくなってきているためである。そのため、文書の内容を特徴付ける文書ベクトルを用いて文書データ検索を行う方法が増えてきている。即ち、文書の内容を特徴付ける意味、分野、単語そのものを次元（分類基準）とし、その特徴量を値とすることで文書をベクトル表現し、文書ベクトル間の内積等の値を用いて文書間の類似度を求める方法が主流である。
【０００３】
文書ベクトルを用いて文書データ検索を行う文書ベクトル検索モデルとしては、文書をｎ次元のベクトル空間上の点にマッピングし、それらの間の距離の大小により文書同士の類似性、又はクエリと文書との類似性を算出するベクトル空間モデル方式が既に知られている（例えば、非特許文献１参照。）。
【０００４】
【非特許文献１】
熊本、島田、加藤著「概念ベースの情報検索への適用」　信学技報、
１９９９年、Ｖｏｌ．ＡＩ９８−６３、ｐｐ．９−１６
【０００５】
【発明が解決しようとする課題】
しかしながら、上記従来技術においては次のような問題があった。文書の内容を特徴付ける文書ベクトルにも表現の限界があり、文書の特徴を表現できない場合がある。特徴を表現できない文書とは、例えば解析不能な未知の単語が多く使われていたり、数字や汎用的な語のみで書かれている文書などである。そのような文書の文書ベクトルは値が極端に低かったりして、文書間の類似度に反映されることはない。文書ベクトルで表現しているのであるから当然の結果であるが、逆に文書ベクトルの表現の上で特徴的でないという面を類似性の観点とすることも可能である。つまり、そのような無個性な文書間に類似性をとらえられれば、同じ枠組みのなかで扱うことが可能となる。しかしながら、従来技術では無個性文書を検索対象として扱うことはできなかった。
【０００６】
本発明は、上述した点に鑑みなされたものであり、文書ベクトルを用いた文書検索において、無個性文書を検索対象として扱うことを可能とした文書検索処理装置、文書検索処理方法、プログラム、及び記憶媒体を提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記目的を達成するため、本発明は、データベースから文書を検索する文書検索処理装置において、文書を特徴付ける文書ベクトルを生成する文書ベクトル生成手段と、前記文書ベクトルから文書間の文書類似度を生成する文書類似度生成手段と、前記文書ベクトルに基づき特徴の無い文書を判定する無個性文書判定手段と、前記無個性文書判定手段の判定結果に応じて文書間の類似性をとらえる制御を行う制御手段とを有することを特徴とする。
【０００８】
また、本発明は、データベースから文書を検索する文書検索処理装置において、文書を特徴付ける文書ベクトルを生成する文書ベクトル生成手段と、前記文書ベクトルから文書間の文書類似度を生成する文書類似度生成手段と、前記文書ベクトルに基づき特徴の無い文書を判定する無個性文書判定手段と、文書と独立して存在する複数の基準ベクトルと前記文書ベクトルとの類似度から基準類似度を生成する基準類似度生成手段と、前記文書ベクトル生成手段で生成された文書ベクトルを用いて、前記文書類似度生成手段で生成された文書類似度に基づき類似文書を検索すると共に、前記無個性文書判定手段で無個性と判定された文書における基準類似度の類似性も用いて前記検索を行う文書検索手段とを有することを特徴とする。
【０００９】
また、本発明は、データベースから文書を検索する文書検索処理方法において、文書を特徴付ける文書ベクトルを生成する文書ベクトル生成工程と、前記文書ベクトルから文書間の文書類似度を生成する文書類似度生成工程と、前記文書ベクトルに基づき特徴の無い文書を判定する無個性文書判定工程と、前記無個性文書判定工程の判定結果に応じて文書間の類似性をとらえる制御を行う制御工程とを有することを特徴とする。
【００１０】
また、本発明は、データベースから文書を検索する文書検索処理方法において、文書を特徴付ける文書ベクトルを生成する文書ベクトル生成工程と、前記文書ベクトルから文書間の文書類似度を生成する文書類似度生成工程と、前記文書ベクトルに基づき特徴の無い文書を判定する無個性文書判定工程と、文書と独立して存在する複数の基準ベクトルと前記文書ベクトルとの類似度から基準類似度を生成する基準類似度生成工程と、前記文書ベクトル生成工程で生成された文書ベクトルを用いて、前記文書類似度生成工程で生成された文書類似度に基づき類似文書を検索すると共に、前記無個性文書判定工程で無個性と判定された文書における基準類似度の類似性も用いて前記検索を行う文書検索工程とを有することを特徴とする。
【００１１】
また、本発明は、文書を特徴付ける文書ベクトルを生成する機能と、前記文書ベクトルから文書間の文書類似度を生成する機能と、前記文書ベクトルに基づき特徴の無い文書を判定する機能と、前記判定結果に応じて文書間の類似性をとらえる制御を行う機能を、コンピュータに実現させるためのプログラムであることを特徴とする。
【００１２】
また、本発明は、文書を特徴付ける文書ベクトルを生成する機能と、前記文書ベクトルから文書間の文書類似度を生成する機能と、前記文書ベクトルに基づき特徴の無い文書を判定する機能と、文書と独立して存在する複数の基準ベクトルと前記文書ベクトルとの類似度から基準類似度を生成する機能と、前記生成された文書ベクトルを用いて、前記生成された文書類似度に基づき類似文書を検索すると共に、無個性と判定された文書における基準類似度の類似性も用いて前記検索を行う機能を、コンピュータに実現させるためのプログラムであることを特徴とする。
【００１３】
また、本発明は、データベースから文書を検索する文書検索処理方法を実行するプログラムを記憶したコンピュータにより読み出し可能な記憶媒体において、前記文書検索処理方法は、文書を特徴付ける文書ベクトルを生成するステップと、前記文書ベクトルから文書間の文書類似度を生成するステップと、前記文書ベクトルに基づき特徴の無い文書を判定するステップと、前記判定結果に応じて文書間の類似性をとらえる制御を行うステップとを有することを特徴とする。
【００１４】
また、本発明は、データベースから文書を検索する文書検索処理方法を実行するプログラムを記憶したコンピュータにより読み出し可能な記憶媒体において、前記文書検索処理方法は、文書を特徴付ける文書ベクトルを生成するステップと、前記文書ベクトルから文書間の文書類似度を生成するステップと、前記文書ベクトルに基づき特徴の無い文書を判定するステップと、文書と独立して存在する複数の基準ベクトルと前記文書ベクトルとの類似度から基準類似度を生成するステップと、前記文書ベクトル生成工程で生成された文書ベクトルを用いて、前記文書類似度生成工程で生成された文書類似度に基づき類似文書を検索すると共に、前記無個性文書判定工程で無個性と判定された文書における基準類似度の類似性も用いて前記検索を行うステップとを有することを特徴とする。
【００１５】
【発明の実施の形態】
先ず、本発明の概要を説明する。本発明は、データベースから文書を検索する文書検索処理装置において、データベースからの文書検索時或いはデータベースへの文書登録時に、当該文書が特徴の無い無個性文書であるか否かを判断し、無個性文書と判断した場合、文書ベクトルに所定の値を設定することで、無個性文書を検索対象として扱うことを可能とするものである。以下、本発明の実施の形態を図面に基づいて詳細に説明する。
【００１６】
図１は本発明の実施の形態に係る文書検索処理装置のシステム構成を示すブロック図である。文書検索処理装置は、ＣＰＵ１、ＲＯＭ２、ＲＡＭ３、入力装置４、表示装置５、記憶装置６、辞書ＤＩＣ（Ｄｉｃｔｉｏｎａｒｙ）７及び文書データベース（ＤＢ（Ｄａｔａｂａｓｅ））８を備えた外部記憶装置９、通信装置１０をバス（ＢＵＳ）１１を介して接続した構成となっている。
【００１７】
図示の構成において、ＣＰＵ１は、マイクロプロセッサとして構成されており、文書検索処理のための演算、論理判断等を行い、バス１１に接続された各構成要素をバス１１を介して制御する。また、ＣＰＵ１は、ＲＯＭ２に格納された制御プログラムに基づき後述の各フローチャートに示す処理を実行する。また、ＣＰＵ１は、文書検索結果を表示装置５に表示制御する手段としても動作する。バス１１は、ＣＰＵ１の制御対象である各構成要素を指示するアドレス信号、コントロール信号を転送する。また、バス１１は、各構成要素間のデータ転送を行う。ＲＯＭ２は、読み出し専用の固定メモリであり、ＣＰＵ１により実行される制御プログラム等を記憶している。ＲＡＭ３は、書き込み可能なランダムアクセスメモリであり、各構成要素からの各種データの一時記憶に用いる。
【００１８】
入力装置４は、キーボード及びマウス等から構成されており、各種データ入力や各種指示に用いる。表示装置５は、ＣＲＴ或いは液晶ディスプレイ等から構成されており、後述の図２に示す文書検索結果の画面等を表示する。記憶装置６は、ハードディスクとして構成されており、単語毎にベクトル表現時のそれぞれの次元（分類基準）に対応した特徴量を記憶した特徴量記憶用辞書や、検索条件文から単語を抽出する際の形態素解析に用いる形態素解析用辞書などの複数の辞書からなる辞書ＤＩＣ７、検索対象となる複数の文書ファイルを記憶した文書データベース（ＤＢ）８等を格納している。
【００１９】
外部記憶装置９は、フロッピー（登録商標）ディスクや書き込み可能ＣＤ、ＤＶＤ等の外部記憶媒体にアクセスするためのドライブ等から構成されており、上記記憶装置６と同等に使用することが可能であり、外部記憶媒体を介して他の文書検索処理装置との間でデータ交換を行う装置である。通信装置１０は、モデム或いはＬＡＮ（Ｌｏｃａｌ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）コントローラから構成されており、通信回線を介して外部装置との間でデータ交換を行う装置である。
【００２０】
かかる各構成要素からなる文書検索処理装置においては、入力装置４からの各種の入力に応じて作動するものであって、入力装置４からの入力が行われると、まずインタラプタ信号がＣＰＵ１に送られ、そのＣＰＵ１がＲＯＭ２内に記憶してある各種の制御信号を読み出し、それらの制御信号に従って各種の制御を行う。
【００２１】
以上の構成よりなる文書検索処理装置では、文書ベクトルから生成される基準類似度（後述）で検索対象の文書を絞り込むことで、文書の類似度判定の負荷を大幅に軽減することにより、高速な文書検索を行うことが可能である。この処理例を以下に説明する。
【００２２】
図２は文書検索処理装置の文書検索結果の表示画面の構成例を示す図である。表示画面には検索条件パネル２１と検索結果パネル２２が表示される。検索条件パネル２１には、今回の検索指示内容が表示される。検索指示としての表示例としては、ユーザの手による自然文、或いはユーザの入力した複数のキーワードの羅列、またユーザが指示した既存の文書の内容等である。検索結果パネル２２には、上記検索条件によって行われた文書検索の結果が表示される。検索結果として、リストアップされた各文書のＩＤと文書タイトル、類似度が表示される。
【００２３】
次に、本実施の形態における基準類似度を用いた検索対象の絞り込みの基本動作を説明する。検索対象の絞り込みの基本動作は、基準類似度の生成、検索クエリ（データベースを検索する場合の処理要求）の文書ベクトルから基準ベクトルのサブセット（組み合わせ）への展開、基準類似度による検索対象の判定、の三つに大きく分けられる。
【００２４】
（１）基準類似度の生成
最初に、基準類似度の生成過程を説明する。文書は記憶装置６の文書ＤＢ８に登録される段階で、最初に、文書を特徴付ける文書ベクトルが生成される。文書からの文書ベクトル生成は、文書内に出現する単語に基づき記憶装置６の辞書ＤＩＣ７を用いて行われる。
【００２５】
図３は辞書ＤＩＣ７の構成例を示したものである。辞書ＤＩＣ７に格納された上記特徴量記憶用辞書には、単語毎にベクトル表現時のそれぞれの次元（Ｄｉｍ．）に対応した特徴量が格納されている。次元は、その単語本来の意味によって分類された基準や、その単語の使用分野に応じて分類された基準等が採用される。例えば単語１のＤｉｍ．０１　の特徴量は０であり、Ｄｉｍ．０２の特徴量は２３であることがわかる。
【００２６】
このように、辞書ＤＩＣ７に格納された上記特徴量記憶用辞書から、一つの単語におけるそれぞれの次元（Ｄｉｍ．）の特徴量を得ることが可能となる。特徴量は、その単語が使用されることにより、その文書がその分類基準（＝次元）をどれぐらい特徴付ける可能性があるかを示す値と解釈することが可能である。文書を構成する全ての単語から得られた分類基準別（次元別）の特徴量から、文書全体の特徴量を、分類基準を次元とするベクトルで表現する。得られたベクトルをノルム＝１で正規化した値を文書ベクトルとして文書ＤＢ８に格納する。
【００２７】
図４は上記文書ＤＢ８に格納された文書ベクトルの状態を示したものである。例えば文書ＩＤ　＝　６９４７の文書ベクトルのＤｉｍ．０１の特徴量は０．１８３　であり、Ｄｉｍ．０２の特徴量は０．２１４　であることがわかる。
【００２８】
次に、上記生成された文書ベクトルから基準類似度を生成する。基準類似度は、用意された固定の値を持つ基準ベクトル（Ｂａｓｅ　Ｖｅｃｔｏｒ　＝　ＢＶ）　と文書ベクトルの類似度から生成する。基準ベクトルは、文書ベクトルの各次元の特徴量比率を整数比で持たせた（表した）ベクトルＰをノルム＝１で正規化したベクトルＢＶの形で保持する。用意する基準ベクトルについては、ターゲット（検索対象）の文書ＤＢ８を考慮し、より有効な任意の値を用意することが可能である。
【００２９】
図５は各次元の特徴量を整数比で持たせた基準ベクトル（Ｐ）の状態例を示したものである。また、図６は図５の基準ベクトルをノルム＝１で正規化した基準ベクトル（ＢＶ）の状態例を示したものであり、文書ベクトルと同様に基準ベクトルの各次元の特徴量を示している。例えばＢＶ１のＤｉｍ．０１〜０３の特徴量はいずれも０．０００、Ｄｉｍ．０４〜０５の特徴量は０．４０８　であることがわかる。本実施の形態では、以上の文書ベクトルと基準ベクトルの余弦測度による類似度をもとに基準類似度を生成している。
【００３０】
図７は基準類似度の算出方法を示したものである。文書ベクトル（文書の特徴ベクトル）Ｘは各次元にｘ１〜ｘｎの値を持つｎ次元のベクトルであり、同様に基準ベクトルＰは各次元にｐ１〜ｐｎの値を持つｎ次元のベクトルである。余弦測度による類似度をＳＤ（Ｘ，Ｐ）　、基準類似度をＳ（Ｘ，Ｐ）と表すことにする。
【００３１】
余弦測度による類似度ＳＤ（Ｘ，Ｐ）は、文書ベクトルＸ及び基準ベクトルＰの両ベクトルの内積を両ベクトルのノルムの積で割った値となる。本実施の形態では両ベクトルがノルム＝１で正規化されているため、余弦測度による類似度ＳＤ（Ｘ，Ｐ）は内積そのものに相当する。よって、余弦測度による類似度ＳＤ（Ｘ，Ｐ）は、両ベクトルの同次元の値の積の総和で求めることができる。基準類似度Ｓ（Ｘ，Ｐ）は、この総和の値を閾値αで判別し、１或いは０の二値いずれかに転値することで算出する。値を簡易化することで、基準類似度による判定効率を向上させ、更に処理速度向上を実現することが可能となる。本実施の形態では、閾値αの値として０．３０２　をセットしている。以上の手法によって文書単位で基準ベクトル毎の基準類似度を生成する。
【００３２】
図８は文書毎の基準類似度の状態を示したものである。基準ベクトル１　（ＢＶ１）　による基準類似度（＝ＳＤ（Ｘ，ＢＶ１））をＢＳＶ１と表現している。文書ＩＤ　＝　６９４７のＢＳＶ１〜２の値は１であり、ＢＳＶ３〜５の値は０であることがわかる。
【００３３】
（２）検索文の文書ベクトルから基準ベクトルのサブセットへの展開
次に、検索文の文書ベクトルから基準ベクトルのサブセットへの展開を説明する。検索クエリとしての入力文についても、上述した文書ベクトル生成と同じ手法で該入力文の文書ベクトルを生成する。生成された検索クエリの文書ベクトルを基準ベクトルのサブセットに展開する。
【００３４】
図９は文書ベクトルから基準ベクトルのサブセットへの展開方法を示したものである。入力文の特徴ベクトルＹの各次元の特徴量を閾値βによって０／１に転置した転置ベクトルＹ’を算出する。本実施の形態では、閾値βの値として０．３０２　をセットするが、閾値βは基準類似度の閾値αと同じ値を使用している。この方法では、入力文の特徴ベクトルＹの各次元の特徴量が０／１　に転置されるので、０／１の整数比で用意された基準ベクトル（Ｐ）のサブセットに展開することが、基準ベクトルの加減算を行うことによって可能である。
【００３５】
（３）基準類似度による検索対象の判定
最後に、基準類似度による検索対象を判定する過程を説明する。上記図９で示したように、Ｙ’　＝　　Ｐｉ　＋　Ｐｊ　＋　Ｐｋに展開された場合、展開された基準ベクトルに対応する基準類似度ＢＳＶｉ　、ＢＳＶｊ　、ＢＳＶｋによって検索対象文書を絞り込むことが可能となる。仮に、Ｙ’　＝　Ｐ３　＋　Ｐ４となる検索クエリが入力されたとする。これは基準類似度ＢＳＶ３、ＢＳＶ４の値が１である文書に絞り込むことが可能である。図８の例で確認すると、ＢＳＶ３　ｏｒ　ＢＳＶ４　＝　＝　１である文書ＩＤは、６９５４、６９５５、６９５９の３文書である。この３文書が検索対象文書として絞り込まれ、入力文の特徴ベクトルＹとそれぞれの文書ベクトルの類似度が実際に算出される。逆に３文書以外の文書の類似度算出は行われないため、高速な文書検索が可能となる。
【００３６】
次に、上記の文書検索処理装置において無個性文書の判定方法と無個性文書間の類似度の算出方法の例を以下に説明する。無個性文書のデータ例として、文書ＤＢ８に格納された上記図４の文書ベクトルのなかの文書ＩＤ＝６９６０　を挙げる。図示の如く、この文書ＩＤを持つ文書の文書ベクトルの各次元の特徴量は全て０であり、この特徴量表現方法では特徴量を表現できていないことになる。そこで、本実施の形態では、無個性文書の判定方法として、図１０で示すように文書ベクトルの各次元の特徴量の最大値ｍａｘ（ｘ１，ｘ２，ｘ３，ｘ４，・・・，ｘｎ）を無個性文書判定閾値γで判定する方法を使用している。上記の例では無個性文書判定閾値γが０でも無個性と判断されることになる。
【００３７】
無個性文書間の類似度（文書類似度）算出方法としては、無個性と判定された文書間の類似度として固定の高い類似度を与える方法が簡易的である。本例では、仮想的に特徴が平均的であり特別個性のない文書ベクトルを与える方法を使用する。即ち、本発明では、無個性と判定された文書間の文書類似度として高い類似度を与える方法と、無個性と判定された文書の文書ベクトルを特徴が平均的である文書ベクトルに置き換える方法がある。ノルム１で正規化するため、無個性文書の文書ベクトルの各次元の値は次元数がｎの場合、図１１に示す値となる。図１１の例では、ｎ次元の無個性文書の文書ベクトルＸは、Ｘ＝（ｘ１，ｘ２，ｘ３，ｘ４，・・・，ｘｎ）であり（ｘ１＝ｘ２＝ｘ３＝ｘ４＝・・・＝ｘｎ）、ｘｎを１／ｎの平方根の値としている。無個性文書の文書ベクトルに図１１に示すような値を割り当てた場合、無個性文書間の類似度演算は、無個性でない文書間の類似度演算と同等の処理で扱うことが可能となる。
【００３８】
また、無個性文書の基準類似度については、上記図８に示した文書ＩＤ＝６９６０を持つ無個性文書のように全ての基準類似度が０となっている。検索クエリから生成された検索入力文の文書ベクトルが無個性文書を示すベクトルであった場合は、基準ベクトルのサブセットは何もない状態となる。このようなケースの時に、上記の文書ＩＤ＝６９６０を持つ無個性文書のような、全ての基準類似度が同様に０となっている文書同士については類似性があると判断して、文書間の類似度算出対象とする。
【００３９】
次に、上述した文書検索処理装置における文書検索処理動作を図１２乃至図１８のフローチャートを参照しながら詳細に説明する。各フローチャートに示す処理は文書検索処理装置のＣＰＵ１がＲＯＭ２に格納された制御プログラムに基づき実行する。
【００４０】
図１２は文書検索処理装置の文書検索処理動作の全体の流れを示す、より具体的にはＣＰＵ１の処理手順を示すフローチャートである。ステップＳ１２０１では、ＣＰＵ１はシステムの初期化処理を行う。即ち、ＣＰＵ１は各種パラメータの初期化や表示装置５に対する初期画面の表示等を行う。ステップＳ１２０２では、ＣＰＵ１はユーザによりキーボード等の入力装置４から何らかのキーが押下され、割込みが発生するのを待つ。ユーザにより入力装置４のキーが押下されると、ステップＳ１２０３において、ＣＰＵ１は押下されたキーの種類を判別し、判別したキーの種類に応じてステップＳ１２０４の各種キーに対応した各種の処理に分岐する。
【００４１】
各種キーに対応した分岐先の複数の処理をステップＳ１２０４という形でまとめて表現している。図１３で説明する文書登録処理、図１４で説明する文書検索実行処理が上記各種キーに対応した分岐先の一部となる。ステップＳ１２０５では、ＣＰＵ１は上記ステップＳ１２０４における各処理の結果、変更された部分を表示装置５に表示する表示処理を行う。該表示処理は、表示装置５に対する表示内容を表示パターンに展開しバッファに出力するといった通常広く行われている処理である。
【００４２】
図１３は上記図１２のステップＳ１２０４に示した各種処理の一部である文書の登録処理の詳細を示すフローチャートである。ステップＳ１３０１では、ＣＰＵ１は文書から単語を抽出する処理を行う。即ち、ＣＰＵ１は辞書ＤＩＣ７に格納された上記形態素解析用辞書を使用して形態素解析を行う。ステップＳ１３０２では、ＣＰＵ１は文書ベクトルの生成処理を行う。即ち、ＣＰＵ１は上記ステップＳ１３０１で文書から抽出された単語に基づき辞書ＤＩＣ７の上記特徴量記憶用辞書を検索し、単語毎の次元別の特徴量を得て、その総和から文書ベクトルを生成する。
【００４３】
ステップＳ１３０３では、ＣＰＵ１は基準類似度の生成処理を行う。即ち、ＣＰＵ１は上記ステップＳ１３０２で得られた文書ベクトルと基準ベクトル（ＢＶ）から基準類似度を算出する。基準類似度算出方法の一例については上記図７において示している。ステップＳ１３０４では、ＣＰＵ１は文書ＤＢ８への登録処理を行う。即ち、ＣＰＵ１は文書の内容と上記ステップＳ１３０２で得られた文書ベクトルと上記ステップＳ１３０３で得られた基準類似度を文書ＤＢ８に登録すると共に、文書ＤＢ８のインデックスを更新する。
【００４４】
図１４は上記図１２のステップＳ１２０４に示した各種処理の一部である文書の検索実行処理の詳細を示すフローチャートである。ステップＳ１４０１では、ＣＰＵ１はユーザの検索条件の入力を受け付ける検索条件入力処理を行う。ここにおいて、ユーザは入力装置４から自然文を入力する、或いは複数のキーワードを入力する、或いは既存の文書を指定する形で検索条件を指示する。ステップＳ１４０２では、ＣＰＵ１は検索条件情報の生成処理を行う。即ち、ＣＰＵ１は類似度生成に必要な検索条件文の文書ベクトルと検索対象絞り込みに必要な基準ベクトルのサブセットを得る。
【００４５】
ステップＳ１４０３では、ＣＰＵ１は上記ステップＳ１４０２で得られた基準ベクトルのサブセットに応じた基準類似度をもとに検索対象文書を絞り、同じく上記ステップＳ１４０２で得られた類似度生成に必要な検索条件文の文書ベクトルと検索対象文書の文書ベクトルから類似度（文書類似度）を生成し、ＲＡＭ３に格納する処理を行う。この場合、生成した類似度の値を文書ＤＢ８に登録することも可能である。ステップＳ１４０４では、ＣＰＵ１は上記ステップＳ１４０３でＲＡＭ３に格納した文書毎の類似度を順序付けする処理を行う。ステップＳ１４０５では、ＣＰＵ１は上記ステップＳ１４０４で順序付けされた文書を検索結果としてリストアップして表示装置５に表示する処理を行う。その際に、ＣＰＵ１は上記ステップＳ１４０３で登録された類似度の値も同時に表示装置５に表示する。
【００４６】
図１５は上記図１４のステップＳ１４０２に示した検索条件情報生成処理の詳細を示すフローチャートである。ステップＳ１５０１では、ＣＰＵ１は上記図１４のステップＳ１４０１で得たユーザ指定の検索条件を読み込む処理を行う。ステップＳ１５０２では、ＣＰＵ１は読み込まれたユーザ指定の検索条件文から単語を抽出する処理を行う。即ち、ＣＰＵ１は辞書ＤＩＣ７に格納された上記形態素解析用辞書を使用して形態素解析を行う。ステップＳ１５０３では、ＣＰＵ１は検索文の文書ベクトルを生成する処理を行う。即ち、ＣＰＵ１は上記ステップＳ１５０２で抽出された単語に基づき辞書ＤＩＣ７の上記特徴量記憶用辞書を検索し、単語毎の次元別の特徴量を得て、その総和から文書ベクトルを生成する。ステップＳ１５０２、ステップＳ１５０３に示す処理は、上記図１３で示した文書登録処理のステップＳ１３０１、ステップＳ１３０２と同等の処理である。
【００４７】
ステップＳ１５０４では、ＣＰＵ１は検索文の転置ベクトルを生成する処理を行う。ステップＳ１５０５では、ＣＰＵ１はその転置ベクトルから基準ベクトルのサブセットに展開する処理を行う。文書ベクトルから転置ベクトルへの算出から基準ベクトルのサブセットへの展開方法の一例については上記図９において示している。
【００４８】
図１６は上記図１４のステップＳ１４０３に示した類似度生成格納処理の詳細を示すフローチャートである。ステップＳ１６０１では、ＣＰＵ１は検索対象である文書ＤＢ８内の文書を指定するカウンタＮに初期値１をセットする処理を行う。ステップＳ１６０２では、ＣＰＵ１は文書ＤＢ８からＮ番目の文書の文書ベクトルと基準類似度を呼び出す処理を行う。ステップＳ１６０３では、ＣＰＵ１は上記ステップＳ１６０２で呼び出された基準類似度から、上記図１５のステップＳ１５０５で展開された基準ベクトルのサブセットに対応した基準類似度のみを抽出する処理を行う。
【００４９】
ステップＳ１６０４では、ＣＰＵ１は基準類似度から類似度（文書類似度）算出の対象になるか否かを判定する処理を行う。上記図８で示した基準類似度の例ではステップＳ１６０３で抽出された基準類似度の総和が０か否かで判定している。また、上記抽出処理において基準類似度が存在しなかった場合は、逆に基準類似度の総和が０の文書を類似度算出対象とするように処理している。上記ステップＳ１６０４で類似度算出の対象となる場合は、ステップＳ１６０５において、ＣＰＵ１は検索文の文書ベクトルと文書ＤＢ８から呼び出されている文書の文書ベクトルから類似度を算出する処理を行う。
【００５０】
上記ステップＳ１６０４で類似度算出の対象とならない場合は、ステップＳ１６０６において、ＣＰＵ１は上記ステップＳ１６０５で行われるような類似度算出処理を行わず、類似度を固定値０にセットする処理を行う。ステップＳ１６０７では、ＣＰＵ１は類似度を格納する処理を行う。即ち、ＣＰＵ１は上記ステップＳ１６０５で算出された類似度、或いは上記ステップＳ１６０６でセットされた類似度（＝０）を格納する処理を行う。類似度は文書ＤＢ８或いはＲＡＭ３等に格納し、上記図１４のステップＳ１４０４において参照する。ステップＳ１６０８では、ＣＰＵ１は文書ＤＢ８内の検索対象文書に残りが存在するか否かを判定する処理を行う。検索対象文書に残りが存在する場合は、ステップＳ１６０９へ分岐する。ステップＳ１６０９では、ＣＰＵ１は上記カウンタＮの値をカウントアップして、上記ステップＳ１６０２に戻り、検索条件適合値の算出を繰り返す。
【００５１】
図１７は上記図１６のステップＳ１６０５に示した類似度算出処理の詳細を示すフローチャートである。ステップＳ１７０１では、ＣＰＵ１は類似度算出対象の文書ベクトルが無個性文書を示す文書ベクトルか否かを判定する処理を行う。無個性文書の判定方法については上記図１０において示している。上記ステップＳ１７０１で無個性文書でないと判定した場合、直接ステップＳ１７０３へ移行する。
【００５２】
上記ステップＳ１７０１で無個性文書であると判定した場合、ステップＳ１７０２において、ＣＰＵ１は無個性文書の文書ベクトルに所定の値を設定する（仮想的に特徴が平均的であり特別個性のない文書ベクトルを与える）。文書ベクトルに設定する所定の値については上記図１１において示している。ステップＳ１７０３では、ＣＰＵ１は文書ベクトル間の類似度を実際に算出する処理を行う。本実施の形態においては文書ベクトル間の内積を算出する。
【００５３】
図１８は上記図１３のステップＳ１３０２及び上記図１５のステップＳ１５０３に示した文書ベクトル生成処理の詳細を示すフローチャートである。上記図１７で示したように、文書検索時において文書間における実際の類似度を算出する際に無個性文書か否かの判断を行い、無個性文書の場合は文書ベクトルに所定の値を設定することで類似度を算出しているが、文書ＤＢ８に登録済みの検索クエリでない文書ベクトルについては、文書ＤＢ８に実際に文書を登録する文書登録の段階で無個性文書か否かを判断し、無個性文書の文書ベクトルに所定の値を設定しておくことによって文書検索時の類似度演算の負荷を軽減させることが可能である。図１８に示す処理は文書ＤＢ８への文書登録時に無個性文書か否かを判定する処理である。
【００５４】
ステップＳ１８０１では、ＣＰＵ１は文書から抽出された単語に基づき、辞書ＤＩＣ７の上記特徴量記憶用辞書を用いて単語毎の特徴量を抽出する処理を行う。ステップＳ１８０２では、ＣＰＵ１は上記ステップＳ１８０１で抽出した単語毎の特徴量から文書ベクトルを算出する処理を行う。本実施の形態では、単語毎の特徴量と単語の出現頻度等の重みを乗じて文書ベクトルを算出している。ステップＳ１８０３では、ＣＰＵ１は上記算出した文書ベクトルから、文書が無個性文書か否かを判定する処理を行う。無個性文書の判定方法については上記図１０において示している。
【００５５】
上記ステップＳ１８０３で無個性文書でないと判定した場合、本処理を終了する。上記ステップＳ１８０３で無個性文書であると判定した場合、ステップＳ１８０４において、ＣＰＵ１は無個性文書の文書ベクトルに所定の値を設定する（仮想的に特徴が平均的であり特別個性のない文書ベクトルを与える）。文書ベクトルに設定する所定の値については上記図１１において示している。
【００５６】
図１９は上記図１８に示した処理で文書ＤＢ８に格納された場合の無個性文書の文書ベクトルの例である。図１９の例では文書ＩＤ＝６９６０を持つ文書が無個性文書であり、この例の場合は次元数がｎ＝１００（Ｄｉｍ．１１以降は図示略）で表現されているため、無個性文書の文書ベクトルの各次元の値が０．１００（図１１からＸｎ＝１／ｎの平方根の値＝０．１００）と算出されていることを確認することができる。
【００５７】
以上説明したように、本実施の形態によれば、文書検索時に特徴の無い無個性文書を判定する判定結果に応じて文書間の類似性をとらえる制御を行う。即ち、無個性と判定された文書間の文書類似度として高い文書類似度を設定するか、或いは無個性文書の文書ベクトルを特徴が平均的である文書ベクトルに置き換える。また、文書ベクトルを用いて文書類似度に基づき類似文書を検索すると共に、無個性と判定された文書における基準類似度の類似性も用いて前記検索を行う。即ち、無個性と判定された全ての基準類似度が０の文書同士については類似性があると判断し、文書類似度生成対象とする。
【００５８】
これにより、特徴の無い無個性文書の類似性をとらえることが可能となり、文書ベクトルを用いた文書検索において、無個性文書を検索対象として扱うことが可能になるという効果を奏する。また、文書登録時に無個性文書か否かを判断し、無個性文書の文書ベクトルに所定の値を設定しておくことで、文書検索時の類似度演算の負荷を軽減させることが可能になるという効果を奏する。
【００５９】
［他の実施の形態］
上記実施の形態においては、無個性文書の類似度を算出する場合、文書ベクトルに特定の固定値を設定し、実際の類似度算出は他の文書と同等のベクトル内積演算を行っているが、本発明はこれに限定されるものではなく、類似度算出の際に無個性文書と判定した場合に固定の類似度を設定する方法も可能である。
【００６０】
また、上記実施の形態においては、無個性文書判定の閾値は固定の値をとる方法であったが、本発明はこれに限定されるものではなく、無個性文書判定の時点での文書ＤＢ内の文書ベクトル及び検索文の文書ベクトルから平均値等の統計処理した値を基に動的に変化させる方法も可能である。
【００６１】
また、上記実施の形態においては、文書検索処理装置について説明したが、本発明は単体の文書検索処理装置に限定されるものではなく、複数の装置（文書検索処理装置、画像形成装置等その他の装置）から構成されるシステムに適用することも可能である。また、それらの装置やシステムに記憶媒体や通信装置を使用してソフトウェアを供給することによっても実現可能であることは言うまでもない。
【００６２】
また、上記実施の形態においては、文書検索処理装置を図１に示す構成としたが、記憶装置内の辞書やデータベースの構成等については文書検索処理装置の使用形態に応じた構成とすることが可能であり、また、文書検索処理装置にプリンタ等の画像形成装置を外部接続または内蔵することで文書検索結果を印刷出力するように構成することも可能である。
【００６３】
また、本発明の目的は、実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成される。
【００６４】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００６５】
また、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００６６】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００６７】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００６８】
【発明の効果】
以上詳細に説明したように、本発明の文書検索処理装置及び方法によれば、文書検索時に特徴の無い無個性文書を判定する判定結果に応じて文書間の類似性をとらえる制御を行うので、即ち、無個性と判定された文書間の文書類似度として高い文書類似度を設定するか、或いは無個性文書の文書ベクトルを特徴が平均的である文書ベクトルに置き換えるので、特徴の無い無個性文書の類似性をとらえることが可能となり、文書ベクトルを用いた文書検索において、無個性文書を検索対象として扱うことが可能になるという効果を奏する。また、文書登録時に無個性文書を判定し、無個性文書の文書ベクトルを特徴が平均的である文書ベクトルに置き換えることも可能としているので、文書検索時の文書類似度演算の負荷を軽減させることが可能になるという効果を奏する。
【００６９】
また、本発明の文書検索処理装置及び方法によれば、文書ベクトルを用いて文書類似度に基づき類似文書を検索すると共に、無個性と判定された文書における基準類似度の類似性も用いて前記検索を行うので、即ち、無個性と判定された全ての基準類似度が０の文書同士については類似性があると判断し、文書類似度生成対象とするので、特徴の無い無個性文書の類似性をとらえることが可能となり、文書ベクトルを用いた文書検索において、無個性文書を検索対象として扱うことが可能になるという効果を奏する。
【００７０】
また、本発明のプログラム及び記憶媒体によれば、上述したような本発明の文書検索処理装置を円滑に制御することができるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る文書検索処理装置のシステム構成を示すブロック図である。
【図２】文書検索処理装置における文書検索結果の表示画面の構成の一例を示す図である。
【図３】文書検索処理装置における辞書ＤＩＣの構成の一例を示す図である。
【図４】文書の文書ベクトルの状態の一例を示す図である。
【図５】基準ベクトルＰの状態の一例を示す図である。
【図６】基準ベクトルＢＶの状態の一例を示す図である。
【図７】基準類似度の算出方法の一例を示す図である。
【図８】基準類似度ＢＳＶの状態の一例を示す図である。
【図９】検索文の展開方法を示す図である。
【図１０】無個性文書の判定方法を示す図である。
【図１１】無個性文書の各次元値の算出方法を示す図である。
【図１２】文書検索処理動作全体の流れを示すフローチャートである。
【図１３】文書を文書ＤＢに登録する処理動作の流れを示すフローチャートである。
【図１４】文書検索実行処理動作の詳細な流れを示すフローチャートである。
【図１５】検索条件情報生成処理動作の詳細な流れを示すフローチャートである。
【図１６】類似度生成格納処理動作の詳細な流れを示すフローチャートである。
【図１７】類似度算出処理動作の詳細な流れを示すフローチャートである。
【図１８】文書ベクトル生成処理動作の詳細な流れを示すフローチャートである。
【図１９】文書の文書ベクトルの状態の一例を示す図である。
【符号の説明】
１　ＣＰＵ（文書ベクトル生成手段、文書類似度生成手段、無個性文書判定手段、制御手段、基準類似度生成手段、文書検索手段）
２　ＲＯＭ
３　ＲＡＭ
４　入力装置
５　表示装置
６　記憶装置
７　辞書ＤＩＣ
８　文書ＤＢ（データベース）
９　外部記憶装置
１０　通信装置
【図１】
2004126883.tif 000003
【図２】
2004126883.tif 000004
【図３】
2004126883.tif 000005
【図４】
2004126883.tif 000006
【図５】
2004126883.tif 000007
【図６】
2004126883.tif 000008
【図７】
2004126883.tif 000009
【図８】
2004126883.tif 000010
【図９】
2004126883.tif 000011
【図１０】
2004126883.tif 000012
【図１１】
2004126883.tif 000013
【図１２】
2004126883.tif 000014
【図１３】
2004126883.tif 000015
【図１４】
2004126883.tif 000016
【図１５】
2004126883.tif 000017
【図１６】
2004126883.tif 000018
【図１７】
2004126883.tif 000019
【図１８】
2004126883.tif 000020
【図１９】
2004126883.tif 000021