(57)【特許請求の範囲】
【請求項１】
ユーザからの検索要求に応じて、この検索要求に含まれる検索条件を満足するデータの試行錯誤的な類似検索をデータベースに対して実行する類似情報検索装置において、
前記データベースに対して検索を実行するデータベース管理手段と、
ユーザの操作に基づき、入力キーワードと入力キーワードの重要度を含む検索要求を入力する検索要求入力手段と、
データベースに登録されているキーワード間の関連度を記述した背景知識と、検索条件の制約の強弱を設定するためにあらかじめ検索装置に与えられた検索パラメータを用いて、前記検索要求入力手段によって得られた入力キーワードに関連する関連キーワードを生成する関連キーワード生成手段と、
前記検索要求入力手段によって得られた入力キーワードと前記関連キーワード生成手段によって得られた関連キーワードを用いて検索式を生成する検索式生成手段と、
前記関連キーワード生成手段によって使用される検索パラメータを設定するとともに、前記検索式生成手段によって得られた検索式に基づいて、前記データベース管理手段によって検索を実行させる検索管理手段と、
前記データベース管理手段による検索の実行から得られた最終的な検索結果を出力する検索結果出力手段と、
前記データベース管理手段による検索の実行から得られた暫定的な検索結果の一部を検索データとしてユーザに提示するとともに、ユーザから検索処理の停止命令またはデータの関連性判断情報を取得する関連性判断情報取得手段と、
前記関連性判断情報取得手段によって得られた関連性判断情報を格納、検索する関連性判断情報管理手段と、を備え、
前記関連キーワード生成手段及び検索式生成手段は、
ユーザーから入力された検索パラメータの初期設定値及びその最低値と最大値を取得し、前記検索パラメータの初期設定値に基づいて関連キーワードの生成を行い、この生成された関連キーワードに基づいて検索式を生成し、生成された検索式による前記データベースでの呼び出し率の過剰制約あるいは制約不足を判定し、前記呼び出し率が過剰制約の場合には、前記検索パラメータをその値と前記最大値の間に増加させ、呼び出し率が制約不足の場合には、前記検索パラメータをその値と最小値との間に減少させて、新たな検索パラメータとその最大値または最小値を生成し、
この新たな検索パラメータに基づいて新たな関連キーワードの生成を行い、この新たなキーワードに基づいて再び検索式の生成処理と前記データベースでの呼び出し率を取得する処理を実行するものであり、かつ、これらの処理の繰り返しにより、前記パラメータの変化値が一定の変化値に収束した場合に、その検索パラメータにより生成された検索式を最終的な検索式とするように構成され、
前記検索管理手段は、前記関連性判断情報取得手段によって検索データがユーザに提示され、ユーザがこの検索データに満足せず、前記関連性判断情報取得手段がユーザからの関連性判断情報を取得した場合に、この関連性判断情報を用いて検索パラメータを変更し、前記関連キーワード生成手段によって関連キーワードを変更させ、前記検索式生成手段によって新たな検索式を生成させ、この新たな検索式に基づいて、前記データベース管理手段によって再検索を実行させるように構成され、
前記検索管理手段は、前記関連性判断情報取得手段によって検索データがユーザに提示され、ユーザがこの検索データに満足して、前記関連性判断情報取得手段がユーザからの検索処理の停止命令を取得した場合に、この検索データを最終的な検索結果として前記検索結果出力手段に送るように構成される、
ことを特徴とする類似情報検索装置。
【請求項２】
前記関連性判断情報取得手段は、前記データベース管理手段による検索の実行から得られた暫定的な検索結果の一部を検索データとしてユーザに提示するとともに、ユーザがその検索データが関連データであるとの判断を示した場合にこの関連データまたはその指示情報を取得するように構成された関連データ取得手段であり、前記関連性判断情報管理手段は、前記関連データ取得手段によって得られた関連データまたはその指示情報を格納、検索するように構成された関連データベース管理手段である、ことを特徴とする請求項１に記載の類似情報検索装置。
【請求項３】
前記関連性判断情報取得手段は、前記データベース管理手段による検索の実行から得られた暫定的な検索結果の一部を検索データとしてユーザに提示するとともに、ユーザがその検索データが非関連データであるとの判断を示した場合にこの非関連データまたはその指示情報を取得するように構成された非関連データ取得手段であり、前記関連性判断情報管理手段は、前記非関連データ取得手段によって得られた非関連データまたはその指示情報を格納、検索するように構成された非関連データベース管理手段である、ことを特徴とする請求項１に記載の類似情報検索装置。
【請求項４】
前記関連性判断情報取得手段は、前記データベース管理手段による検索の実行から得られた暫定的な検索結果の一部を検索データとしてユーザに提示するとともに、ユーザがその検索データが関連・非関連データであるとの判断を示した場合にこの関連・非関連データまたはその指示情報を取得するように構成された関連・非関連データ取得手段であり、前記関連性判断情報管理手段は、前記関連・非関連データ取得手段によって得られた関連・非関連データまたはその指示情報を格納、検索するように構成された関連・非関連データベース管理手段である、ことを特徴とする請求項１に記載の類似情報検索装置。
【請求項５】
前記関連キーワード生成手段は、前記検索要求入力手段によって入力された入力キーワードを初期伝搬データとして伝搬操作を行い、前記検索管理手段によって設定された検索パラメータをしきい値として関連キーワードを生成するように構成される、ことを特徴とする請求項１に記載の類似情報検索装置。
【請求項６】
前記関連キーワード生成手段は、前記背景知識として、複数のキーワードを、関連度を付加したキーワード間のリンクとともに配置してなる連想ネットワークを使用し、この連想ネットワーク中の、前記検索要求入力手段によって入力された入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、この第１、第２のキーワード間を接続するリンク列の関連度の積の最大値を求め、このようにして得られた第１、第２のキーワード間の関連度と前記検索要求入力手段によって入力された前記入力キーワードの前記重要度との積が、前記検索管理手段によって設定された検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成するように構成される、ことを特徴とする請求項５に記載の類似情報検索装置。
【請求項７】
前記関連キーワード生成手段は、前記背景知識として、複数のキーワードを、関連度を付加したキーワード間のリンクとともに配置してなる連想ネットワークを使用し、この連想ネットワーク中の、前記検索要求入力手段によって入力された入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、この第１、第２のキーワード間を接続するリンク列の関連度の積の和を求め、このようにして得られた第１、第２のキーワード間の関連度と前記検索要求入力手段によって入力された前記入力キーワードの前記重要度との積が、前記検索管理手段によって設定された検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成するように構成される、ことを特徴とする請求項５に記載の類似情報検索装置。
【請求項８】
前記関連キーワード生成手段は、前記背景知識として、複数のキーワードを、上位・下位関係で表現し、関連度を付加した上位と下位のキーワード間のリンクとともに配置してなる概念階層を使用し、この概念階層中の、前記検索要求入力手段によって入力された入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、第１のキーワードから、第１、第２のキーワードに共通の上位のキーワードで最も下位の第３のキーワードまでのリンク列の関連度の積を求め、このようにして得られた第１、第２のキーワード間の関連度と前記検索要求入力手段によって入力された前記入力キーワードの前記重要度との積が、前記検索管理手段によって設定された検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成するように構成される、ことを特徴とする請求項５に記載の類似情報検索装置。
【請求項９】
ユーザからの検索要求に応じて、この検索要求に含まれる検索条件を満足するデータの試行錯誤的な類似検索をデータベースに対して実行する類似情報検索装置において、
前記データベースに対して検索を実行するデータベース管理手段と、
ユーザの操作に基づき、入力キーワードと入力キーワードの重要度を含む検索要求と検索結果の条件を入力する検索要求入力手段と、
データベースに登録されているキーワード間の関連度を記述した背景知識と、検索条件の制約の強弱を設定するためにあらかじめ検索装置に与えられた検索パラメータを用いて、前記検索要求入力手段によって得られた入力キーワードに関連する関連キーワードを生成する関連キーワード生成手段と、
前記検索要求入力手段によって得られた入力キーワードと前記関連キーワード生成手段によって得られた関連キーワードを用いて検索式を生成する検索式生成手段と、
前記関連キーワード生成手段によって使用される検索パラメータを設定するとともに、前記検索式生成手段によって得られた検索式に基づいて、前記データベース管理手段によって検索を実行させる検索管理手段と、
前記データベース管理手段による検索の実行から得られた最終的な検索結果を出力する検索結果出力手段と、を備え、
前記関連キーワード生成手段及び検索式生成手段は、
ユーザーから入力された検索パラメータの初期設定値及びその最小値と最大値を取得し、前記検索パラメータの初期設定値に基づいて関連キーワードの生成を行い、この生成された関連キーワードに基づいて検索式を生成し、生成された検索式による前記データベースでの呼び出し率の過剰制約あるいは制約不足であるかを判定し、呼び出し率が過剰制約の場合には、前記検索パラメータをその値と前記最大値の間に増加させ、呼び出し率が制約不足の場合には、前記検索パラメータをその値と最小値との間に減少させて、新たな検索パラメータとその最大値または最小値を生成し、
この新たな検索パラメータに基づいて新たな関連キーワードの生成を行い、この新たなキーワードに基づいて再び検索式の生成処理と前記データベースでの呼び出し率を取得する処理を実行するものであり、かつ、これらの処理の繰り返しにより、前記パラメータの変化値が一定の変化値に収束した場合に、その検索パラメータにより生成された検索式を最終的な検索式とするように構成され、
前記検索管理手段は、前記データベース管理手段による検索の実行から得られた暫定的な検索結果が、前記検索要求入力手段によって得られた検索結果の条件を満足していない場合に、この関連性判断情報を用いて検索パラメータを変更し、前記関連キーワード生成手段によって関連キーワードを変更させ、前記検索式生成手段によって新たな検索式を生成させ、この新たな検索式に基づいて、前記データベース管理手段によって再検索を実行させるように構成され、
前記検索管理手段は、前記データベース管理手段による検索の実行から得られた暫定的な検索結果が、前記検索要求入力手段によって得られた検索結果の条件を満足している場合に、この検索結果を最終的な検索結果として前記検索結果出力手段に送るように構成される、ことを特徴とする類似情報検索装置。
【請求項１０】
前記検索式生成手段によって得られた検索式からこの検索式に対応する検索件数を推定する検索件数推定手段、をさらに備えることを特徴とする請求項９に記載の類似情報検索装置。
【請求項１１】
前記検索管理手段は、前処理として、前記データベース管理手段によって実際のデータベース検索を行わせることなしに、前記検索件数推定手段を使用して検索式の検索件数を推定しながら、前記検索式生成手段によって試行錯誤による検索式の生成を行わせ、この前処理の後、前記データベース管理手段によって実際のデータベース検索を行わせながら、前記検索式生成手段によって試行錯誤による検索式の生成を行わせるように構成される、ことを特徴とする請求項１０に記載の類似情報検索装置。
【請求項１２】
前記関連キーワード生成手段は、前記検索要求入力手段によって入力された入力キーワードを初期伝搬データとして伝搬操作を行い、前記検索管理手段によって設定された検索パラメータをしきい値として関連キーワードを生成するように構成される、ことを特徴とする請求項９に記載の類似情報検索装置。
【請求項１３】
前記関連キーワード生成手段は、前記背景知識として、複数のキーワードを、関連度を付加したキーワード間のリンクとともに配置してなる連想ネットワークを使用し、この連想ネットワーク中の、前記検索要求入力手段によって入力された入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、この第１、第２のキーワード間を接続するリンク列の関連度の積の最大値を求め、このようにして得られた第１、第２のキーワード間の関連度と前記検索要求入力手段によって入力された前記入力キーワードの前記重要度との積が、前記検索管理手段によって設定された検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成するように構成される、ことを特徴とする請求項１２に記載の類似情報検索装置。
【請求項１４】
前記関連キーワード生成手段は、前記背景知識として、複数のキーワードを、関連度を付加したキーワード間のリンクとともに配置してなる連想ネットワークを使用し、この連想ネットワーク中の、前記検索要求入力手段によって入力された入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、この第１、第２のキーワード間を接続するリンク列の関連度の積の和を求め、このようにして得られた第１、第２のキーワード間の関連度と前記検索要求入力手段によって入力された前記入力キーワードの前記重要度との積が、前記検索管理手段によって設定された検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成するように構成される、ことを特徴とする請求項１２に記載の類似情報検索装置。
【請求項１５】
前記関連キーワード生成手段は、前記背景知識として、複数のキーワードを、上位・下位関係で表現し、関連度を付加した上位と下位のキーワード間のリンクとともに配置してなる概念階層を使用し、この概念階層中の、前記検索要求入力手段によって入力された入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、第１のキーワードから、第１、第２のキーワードに共通の上位のキーワードで最も下位の第３のキーワードまでのリンク列の関連度の積を求め、このようにして得られた第１、第２のキーワード間の関連度と前記検索要求入力手段によって入力された前記入力キーワードの前記重要度との積が、前記検索管理手段によって設定された検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成するように構成される、ことを特徴とする請求項１２に記載の類似情報検索装置。
【請求項１６】
ユーザからの検索要求に応じて、この検索要求に含まれる検索条件を満足するデータの試行錯誤的な類似検索をデータベースに対して実行する類似情報検索方法において、
ユーザの操作に基づき、入力キーワードと入力キーワードの重要度を含む検索要求を入力するステップと、
データベースに登録されているキーワード間の関連度を記述した背景知識と、検索条件の制約の強弱を設定するためにあらかじめ検索装置に与えられた検索パラメータを用いて、前記入力キーワードに関連する関連キーワードを生成するステップと、
前記入力キーワードと前記関連キーワードを用いて検索式を生成するステップと、
前記検索式に基づいて前記データベースの検索を実行するステップと、
前記検索実行ステップによる暫定的な検索結果の一部を検索データとしてユーザに提示し、ユーザから検索処理の停止命令またはデータの関連性判断情報を取得するステップと、
前記関連性判断情報取得ステップにおいて、ユーザから前記関連性判断情報を取得した場合に、この関連性判断情報を用いて前記検索パラメータを変更し、前記関連キーワード生成ステップに戻るステップと、
前記関連性判断情報取得ステップにおいて、ユーザから検索処理の停止命令を取得した場合に、提示した前記検索データを最終的な検索結果として出力するステップと、を備え、
前記関連キーワード生成ステップ及び検索式生成ステップは、
ユーザーから入力された検索パラメータの初期設定値及びその最低値と最大値を取得し、前記検索パラメータの初期設定値に基づいて関連キーワードの生成を行い、この生成された関連キーワードに基づいて検索式を生成し、生成された検索式による前記データベースでの呼び出し率の過剰制約あるいは制約不足を判定し、前記呼び出し率が過剰制約の場合には、前記検索パラメータをその値と前記最大値の間に増加させ、呼び出し率が制約不足の場合には、前記検索パラメータをその値と最小値との間に減少させて、新たな検索パラメータとその最大値または最小値を生成し、
この新たな検索パラメータに基づいて新たな関連キーワードの生成を行い、この新たなキーワードに基づいて再び検索式の生成処理と前記データベースでの呼び出し率を取得する処理を実行するものであり、かつ、これらの処理の繰り返しにより、前記パラメータの変化値が一定の変化値に収束した場合に、その検索パラメータにより生成された検索式を最終的な検索式とし、
前記検索実行ステップは、前記関連性判断情報取得ステップによって検索データがユーザに提示され、ユーザがこの検索データに満足せず、関連性判断情報取得ステップがユーザからの関連性判断情報を取得した場合に、この関連性判断情報を用いて検索パラメータを変更し、前記関連キーワード生成手段によって関連キーワードを変更させ、前記検索式生成ステップによって新たな検索式を生成させ、この新たな検索式に基づいて、前記データベース管理手段によって再検索を実行させ、
前記検索実行ステップは、前記関連性判断情報取得ステップによって検索データがユーザに提示され、ユーザがこの検索データに満足して、前記関連性判断情報取得ステップがユーザからの検索処理の停止命令を取得した場合に、この検索データを最終的な検索結果として前記検索結果出力ステップに送る、ことを特徴とする類似情報検索方法。
【請求項１７】
前記関連性判断情報取得ステップにおいて、前記検索実行ステップによって得られた暫定的な検索結果の一部を検索データとしてユーザに提示し、ユーザがその検索データが関連データであるとの判断を示した場合にこの関連データまたはその指示情報を取得し、この関連データまたはその指示情報を関連データベースに格納する、ことを特徴とする請求項１６に記載の類似情報検索方法。
【請求項１８】
前記関連性判断情報取得ステップにおいて、前記検索実行ステップによって得られた暫定的な検索結果の一部を検索データとしてユーザに提示し、ユーザがその検索データが非関連データであるとの判断を示した場合にこの非関連データまたはその指示情報を取得し、この非関連データまたはその指示情報を非関連データベースに格納する、ことを特徴とする請求項１６に記載の類似情報検索方法。
【請求項１９】
前記関連性判断情報取得ステップにおいて、前記検索実行ステップによって得られた暫定的な検索結果の一部を検索データとしてユーザに提示し、ユーザがその検索データが関連・非関連データであるとの判断を示した場合にこの関連・非関連データまたはその指示情報を取得し、この関連・非関連データまたはその指示情報を関連・非関連データベースに格納する、ことを特徴とする請求項１６に記載の類似情報検索方法。
【請求項２０】
前記関連キーワード生成ステップにおいて、前記入力キーワードを初期伝搬データとして伝搬操作を行い、前記検索パラメータをしきい値として関連キーワードを生成する、ことを特徴とする請求項１６に記載の類似情報検索方法。
【請求項２１】
前記関連キーワード生成ステップにおいて、前記背景知識として、複数のキーワードを、関連度を付加したキーワード間のリンクとともに配置してなる連想ネットワークを使用し、この連想ネットワーク中の、前記入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、この第１、第２のキーワード間を接続するリンク列の関連度の積の最大値を求め、このようにして得られた第１、第２のキーワード間の関連度と前記入力キーワードの前記重要度との積が、前記検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成する、ことを特徴とする請求項２０に記載の類似情報検索方法。
【請求項２２】
前記関連キーワード生成ステップにおいて、前記背景知識として、複数のキーワードを、関連度を付加したキーワード間のリンクとともに配置してなる連想ネットワークを使用し、この連想ネットワーク中の、前記入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、この第１、第２のキーワード間を接続するリンク列の関連度の積の和を求め、このようにして得られた第１、第２のキーワード間の関連度と前記入力キーワードの前記重要度との積が、前記検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成する、ことを特徴とする請求項２０に記載の類似情報検索方法。
【請求項２３】
前記関連キーワード生成ステップにおいて、前記背景知識として、複数のキーワードを、上位・下位関係で表現し、関連度を付加した上位と下位のキーワード間のリンクとともに配置してなる概念階層を使用し、この概念階層中の、前記入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、第１のキーワードから、第１、第２のキーワードに共通の上位のキーワードで最も下位の第３のキーワードまでのリンク列の関連度の積を求め、このようにして得られた第１、第２のキーワード間の関連度と前記入力キーワードの前記重要度との積が、前記検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成する、ことを特徴とする請求項２０に記載の類似情報検索方法。
【請求項２４】
ユーザからの検索要求に応じて、この検索要求に含まれる検索条件を満足するデータの試行錯誤的な類似検索をデータベースに対して実行する類似情報検索方法において、
ユーザの操作に基づき、入力キーワードと入力キーワードの重要度を含む検索要求と検索結果の条件を入力するステップと、
データベースに登録されているキーワード間の関連度を記述した背景知識と、検索条件の制約の強弱を設定するためにあらかじめ検索装置に与えられた検索パラメータを用いて、前記入力キーワードに関連する関連キーワードを生成するステップと、
前記入力キーワードと前記関連キーワードを用いて検索式を生成するステップと、
前記検索式に基づいて前記データベースの検索を実行するステップと、
前記検索実行ステップによる暫定的な検索結果が、前記検索結果の条件を満足していない場合に、前記検索パラメータを変更し、前記関連キーワード生成ステップに戻るステップと、
前記検索実行ステップによる暫定的な検索結果が、前記検索結果の条件を満足している場合に、この検索結果を最終的な検索結果として出力するステップと、を備え、
前記関連キーワード生成ステップ及び検索式生成ステップは、
ユーザーから入力された検索パラメータの初期設定値及びその最小値と最大値を取得し、前記検索パラメータの初期設定値に基づいて関連キーワードの生成を行い、この生成された関連キーワードに基づいて検索式を生成し、生成された検索式による前記データベースでの呼び出し率の過剰制約あるいは制約不足であるかを判定し、呼び出し率が過剰制約の場合には、前記検索パラメータをその値と前記最大値の間に増加させ、呼び出し率が制約不足の場合には、前記検索パラメータをその値と最小値との間に減少させて、新たな検索パラメータとその最大値または最小値を生成し、
この新たな検索パラメータに基づいて新たな関連キーワードの生成を行い、この新たなキーワードに基づいて再び検索式の生成処理と前記データベースでの呼び出し率を取得する処理を実行するものであり、かつ、これらの処理の繰り返しにより、前記パラメータの変化値が一定の変化値に収束した場合に、その検索パラメータにより生成された検索式を最終的な検索式とし、
前記検索管理ステップは、前記データベース管理ステップによる検索の実行から得られた暫定的な検索結果が、前記検索要求入力ステップによって得られた検索結果の条件を満足していない場合に、この関連性判断情報を用いて検索パラメータを変更し、前記関連キーワード生成ステップによって関連キーワードを変更させ、前記検索式生成ステップによって新たな検索式を生成させ、この新たな検索式に基づいて、前記データベース管理ステップによって再検索を実行させ、
前記検索管理ステップは、前記データベース管理ステップによる検索の実行から得られた暫定的な検索結果が、前記検索要求入力ステップによって得られた検索結果の条件を満足している場合に、この検索結果を最終的な検索結果として前記検索結果出力ステップに送る、ことを特徴とする類似情報検索方法。
【請求項２５】
前記検索式生成ステップは、生成した検索式からこの検索式に対応する検索件数を推定するステップ、を含むことを特徴とする請求項２４に記載の類似情報検索方法。
【請求項２６】
前記検索式生成ステップは、前記検索実行ステップを行う前の前処理として、生成した検索式から検索件数を推定しながら試行錯誤による検索式の生成を行うステップと、
この前処理ステップの後、前記検索実行ステップと並行する実処理として、試行錯誤による検索式の生成を行うステップと、を有することを特徴とする請求項２５に記載の類似情報検索方法。
【請求項２７】
前記関連キーワード生成ステップにおいて、前記入力キーワードを初期伝搬データとして伝搬操作を行い、前記検索パラメータをしきい値として関連キーワードを生成する、
ことを特徴とする請求項２４に記載の類似情報検索方法。
【請求項２８】
前記関連キーワード生成ステップにおいて、前記背景知識として、複数のキーワードを、関連度を付加したキーワード間のリンクとともに配置してなる連想ネットワークを使用し、この連想ネットワーク中の、前記入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、この第１、第２のキーワード間を接続するリンク列の関連度の積の最大値を求め、このようにして得られた第１、第２のキーワード間の関連度と前記入力キーワードの前記重要度との積が、前記検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成する、ことを特徴とする請求項２７に記載の類似情報検索方法。
【請求項２９】
前記関連キーワード生成ステップにおいて、前記背景知識として、複数のキーワードを、関連度を付加したキーワード間のリンクとともに配置してなる連想ネットワークを使用し、この連想ネットワーク中の、前記入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、この第１、第２のキーワード間を接続するリンク列の関連度の積の和を求め、このようにして得られた第１、第２のキーワード間の関連度と前記入力キーワードの前記重要度との積が、前記検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成する、ことを特徴とする請求項２７に記載の類似情報検索方法。
【請求項３０】
前記関連キーワード生成ステップにおいて、前記背景知識として、複数のキーワードを、上位・下位関係で表現し、関連度を付加した上位と下位のキーワード間のリンクとともに配置してなる概念階層を使用し、この概念階層中の、前記入力キーワードと一致する第１のキーワードと、
この第１のキーワードに対して間接的にリンクを張られた第２のキーワードとの間の関連度として、第１のキーワードから、第１、第２のキーワードに共通の上位のキーワードで最も下位の第３のキーワードまでのリンク列の関連度の積を求め、このようにして得られた第１、第２のキーワード間の関連度と前記入力キーワードの前記重要度との積が、前記検索パラメータ以上である場合にこの第２のキーワードによって関連キーワードを生成する、ことを特徴とする請求項２７に記載の類似情報検索方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、文書ベースや事例ベースなどの各種のデータを記憶したデータベースから情報あるいはデータを検索する情報検索システムに関するものであり、特に、ユーザからの検索要求に応じて、この検索要求に含まれる検索条件を満足するデータを検索する類似情報検索装置とその方法に関する。
【０００２】
【従来の技術】
一般のデータベースシステムにおいては、システム設計者と一般のユーザが異なる場合が多い。この場合、システム設計者ではないユーザが、データベースのデータの分布状態を完全に把握することは難しい。したがって、このようなユーザは、試行錯誤的に検索を行うことになる。つまり、ユーザは、思いついた検索条件によって検索を開始し、ユーザの意図する検索結果が得られない場合には、検索条件を変更して再び検索を実行することになる。
【０００３】
このような試行錯誤による検索の検索効率は、検索失敗時の検索条件の変更過程に依存する。なぜなら、ユーザが検索失敗となった検索条件を変更して再度検索しても、再び検索を失敗する可能性があるからである。すなわち、試行錯誤による検索過程において、ユーザが検索結果に満足した場合には、このユーザは新たな検索条件を追加してより有効な検索を行うことができ、意図する検索結果に近付けることができる。これに対して、ユーザが検索結果に満足しない場合、言い換えれば、検索失敗と判断した場合には、このユーザは検索条件を変更して再び検索を行うことになる。
【０００４】
例えば、このように試行錯誤的に情報検索を行う場合、検索結果により、「制約不足」あるいは「過剰制約」という状態が生じる。このうち、「制約不足」とは、ユーザが意図する検索件数よりも検索実行後の検索件数の方が多すぎる場合であり、この場合に、ユーザは、検索条件の制約を強める方向に検索条件を変更し、検索件数の減少を図ることになる。また、「過剰制約」とは、ユーザが意図する検索件数よりも検索実行後の検索件数の方が少なすぎる場合であり、この場合に、ユーザは、検索条件の制約を緩和する方向に検索条件を変更し、検索件数の増加を図ることになる。
【０００５】
また、伝統的には、検索性能は、２つの尺度、すなわち、「呼び出し率」と「精度」を用いて評価されてきた。これらの尺度は、通常、ユーザが、文章の引用や抄録などのデータベースあるいは文書ベースから目的とする情報を引き出す際に行うところの、関連性に関する主観的判断に基づいている。そして、この「呼び出し率」と「精度」は、次のように定義することができる。すなわち、「呼び出し率」とは、データベース中に存在する関連情報に対する実際に検索された関連情報の比率であり、「精度」とは、検索された情報の集合に対するこの集合中の関連情報の比率である。この２つの尺度は、一般的にトレードオフの関係にあり、情報検索において、両方の尺度を低くすることなく、最高の値である「１」に限りなく近付けることが望ましいこととされる。前述した情報検索の状態と関連付けて言えば、「制約不足」の状態は「呼び出し率」が低い状態であり、「過剰制約」の状態は「精度」が低い状態であるとも言える。
【０００６】
したがって、このような試行錯誤的な情報検索において、ユーザが、「呼び出し率」と「精度」を高めながら、効率よく検索を行うためには、データベース内のデータの背景知識を用いて、検索条件を適切に変更しなければならない。すなわち、データベース内の複数のデータは、一般的に、背景知識として抽出されるような概念的関連構造を備えているため、適切な検索条件を生成するためには、このような背景知識を利用することが重要である。そのため、試行錯誤的な情報検索において検索条件を変更する場合には、ユーザは、検索意図を正確に反映させると同時に、検索対象となるデータの背景知識を適切に反映させることにより、適切な検索条件を生成しなければならない。例えば、環境汚染に関するデータベースにおいては、汚染物質、生物、媒体などの概念に関連する背景知識を用いて、調査項目の汚染物質の種類などの検索条件を変更しなければならない。
【０００７】
しかしながら、一般的なユーザにおいては、このような背景知識を十分に把握していない場合が多いため、背景知識を検索条件に適切に反映させて適切な検索条件の変更を行うことは難しい。したがって、ユーザが、無駄な検索を行うことなしに、満足する検索結果を得ることは難しく、検索効率を向上することは難しい。
【０００８】
ところで、以上のような試行錯誤的な検索システムの一例として、特許情報検索がある。この特許情報検索においては、インデキシング検索が中心となるが、その技術要素、目的、入出力などのキーワードをＡＮＤ，ＯＲ論理結合したブール式で検索を行っている。このような検索においては、入力キーワードが適切に設定できている場合には、数十件程度の適当数の検索データが適切な内容でヒットされるが、入力キーワードの設定が不適切な場合には、数十万件程度の莫大な数の無関係なデータがヒットされてしまう可能性がある。このような不都合な事態を回避するためには、１）特許情報の分布を判断しながら初期キーワードを適切に設定し、２）実際に検索し、背景知識を用いて条件を変更しながら、試行錯誤的に関連する特許情報を妥当な件数で獲得する、という作業を行うことが重要である。
【０００９】
例えば、“類似ＡＮＤ検索ＡＮＤデータ”というキーワードを検索装置に与えて十分な検索ができない場合には、“（類似ＯＲあいまい）ＡＮＤ検索ＡＮＤ（情報ＯＲ文章ＯＲデータ）”というように関連キーワードも付け足して検索条件を緩めなければならない。逆に、このように緩めた検索条件が緩すぎる場合には、“（類似ＯＲあいまい）ＡＮＤ検索ＡＮＤデータ”というように、キーワードを削除して検索条件を厳しくしなければならない。このような試行錯誤的な検索を効率良く行うためには、探索戦略と呼ばれる極めて経験的な検索ノウハウにより、データの背景知識を検索条件に適切に反映させることが必要である。しかしながら、不慣れな一般のユーザがこのような探索戦略を立てることは困難であり、適切な検索条件の変更を行うことは難しい。
【００１０】
一方、類似検索を目的として、一般データベースや文書ベースへの全データ検索を行った場合には、システム全体の負荷が大きくなりすぎ、検索速度が著しく低下することが大きな問題として把握されている。つまり、盲目的な全データ検索は、マッチング計算を行っている主記憶と恒久的に格納されている二次記憶との間で非常に多くの回数のページ単位のデータ転送を要求するからである。この場合、ディスクなどの二次記憶の中で最も速い装置と、主記憶用の媒体の中で最も遅いものとの間には、アクセス時間に大きなギャップがある。現段階では、このようなアクセスギャップは１０００倍にも達することが知られている。
【００１１】
前述したような試行錯誤的な検索は、このような全データ検索と同様に頻繁にデータ検索を必要とするため、単に試行錯誤的な検索を行った場合に、検索速度の低下を招くことは必至である。したがって、試行錯誤的な検索システムを実用に供するためには、莫大な試行錯誤により検索速度を著しく低下させることのないような何等かのメカニズムが要求される。
【００１２】
また、二次記憶アクセスを行わない前処理として試行錯誤的なキーワード検索を行うことにより、類似検索すべき部分を取り込む方法がある。この方法においては、予め設定しておいた検索件数が得られるような検索条件を生成しなければならず、そのためには、前述したような極めて経験的な検索ノウハウによって、検索対象となるデータの背景知識を適切に検索条件に反映させ、適切な検索条件を生成することが必要であるが、このことはやはり、一般的なユーザには困難である。また、このように、類似検索を目的として二次記憶アクセスを伴わない試行錯誤的な検索を行う場合にも、結局は、全データ検索と同様に、非常に多くの回数のデータ転送を要求するため、単純に試行錯誤的な検索を行うだけでは、検索速度の低下を招くことは必至である。したがって、このような二次記憶アクセスを伴わない試行錯誤的な類似検索システムを実用に供するためには、やはり、検索速度を著しく低下させないような何等かのメカニズムが不可欠である。
【００１３】
以上のような、試行錯誤的な検索システムの実用化に不可欠なメカニズムの要求に対して、試行錯誤的なデータベース検索、あるいは文書検索を支援するシステムがいくつか提案されている。そのような検索システムの中で、最も期待されているシステムの一つに、ユーザとの対話を念頭においた、「関連フィードバック」がある。この「関連フィードバック」は文書ベースを対象としており、質問を通じて得られた文章を調べ、タイトルや抄録をベースに関連する文書を選択し、その文書に付随する索引語を探索質問に加えて、関連する文書に現れない用語を削除するというものである。しかしながら、非形式的な関連フィードバックでは、ユーザが個々の索引語の有効性を逐一評価しなければならず、この作業は、ユーザにとって大きな負担となる。
【００１４】
「関連フィードバック」におけるこのような問題点を克服するための代替案として、ＳＭＡＲＴシステム（Ｓａｌｔｏｎ  ａｎｄ  ＭｃＧｉｌｌ，（１９８３）Ａｎ  Ｉｎｔｒｏｄｕｃｔｉｏｎ  ｔｏ  Ｍｏｄｅｒｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｒｅｔｒｉｅｖａｌ  Ｎｅｗ  Ｙｏｒｋ，  ＭａｃＧｒａｗ−Ｈｉｌｌ）でも取り入れられている「自動化関連フィードバック」である。このシステムにおいては、質問中の各索引語の関連度として一つの重みが割り当てられ、この重みは、質問を用いて検索された文書の関連性についてのユーザの判断に従って自動的に調整される。この情報検索と質問再編成のアイデアは有効なものであると思われるが、まだ広く用いられていない。その理由としては、１）文章に対する付加的な索引付けを行う負担が存在する、２）質問再編成にあたって行う重み付けの調整が極めて経験的過ぎる、および３）そのために、検索処理が発散する可能性があり、収束性が危ぶまれる、ということが挙げられる。
【００１５】
その他にも、試行錯誤的な類似検索システムとして、例えば、『電子文書参照支援システムＢＥＮＬＩにおける内容検索機能』（石橋他、情報処理学会第４５回（平成４年後期）全国大会）や、『柔軟な知識構造を持つ知的データベースシステムの構築』（緒方他、情報処理学会第４５回（平成４年後期）全国大会）などの文献において、試行錯誤的なデータベース検索、あるいは文書検索を支援するシステムがいくつか提案されている。しかしながら、このようなシステムにおいては、１）検索失敗知識などの詳細かつ手続き的な戦略知識を必要とする、２）生成検査法的な盲目的な試行錯誤検索を行わざるを得ず、検索速度が著しく低下することが明らかである、３）ユーザの検索意図を反映させることが困難である、などの問題点を抱えている。
【００１６】
【発明が解決しようとする課題】
以上説明したように、データベースや文書ベースや事例ベースなどの各種のデータを記憶したデータ記憶装置から情報あるいはデータを検索する情報検索システムにおいては、検索条件を設定し、その検索条件によって得られた結果を調べ、その結果に応じて新たな検索条件を設定する、という試行錯誤的な検索が要求される場合が多い。この場合、ユーザの検索意図を随時汲み取る対話型の情報検索システムが有効であるが、１）盲目な探索を行うため、対話型検索が収束しない、２）関連した情報を逸することなく、試行錯誤的に検索条件を生成することは困難である、３）データの単純な背景知識が正確に反映されない、もしくは高度な戦略知識が必要とされる、などの問題が存在する。
【００１７】
本発明は、以上のような従来技術の問題点を解決するために提案されたものであり、その第１の目的は、検索速度を大幅に低下させることなく、ユーザとの対話によってユーザの検索意図を容易かつ正確に反映させながら、データの単純な背景知識を容易かつ正確に反映させて検索条件を自動的に生成し、試行錯誤的に効率よく類似検索を実行することの可能な、対話型の類似情報検索装置とその方法を提供することである。また、本発明の第２の目的は、検索速度を大幅に低下させることなく、ユーザの意図する検索結果の条件を満足させるようにしてユーザの検索意図を容易かつ正確に反映させながら、データの単純な背景知識を容易かつ正確に反映させて検索条件を自動的に生成し、試行錯誤的に効率よく類似検索を実行することの可能な、検索結果条件型の類似情報検索装置とその方法を提供することである。
【００１８】
【課題を解決するための手段】
本発明の類似情報検索装置は、ユーザからの検索要求に応じて、この検索要求に含まれる検索条件を満足するデータの試行錯誤的な類似検索をデータベースに対して実行する類似情報検索装置において、基本的に、データベース管理手段、検索要求入力手段、関連キーワード生成手段、検索式生成手段、検索管理手段、および検索結果出力手段を備える。このうち、データベース管理手段は、データベースに対して検索を実行する手段である。検索要求入力手段は、ユーザの操作に基づき、入力キーワードと入力キーワードの重要度を含む検索要求を入力する手段である。関連キーワード生成手段は、背景知識と検索パラメータを用いて、検索要求入力手段によって得られた入力キーワードに関連する関連キーワードを形成する手段である。検索式生成手段は、検索要求入力手段によって得られた入力キーワードと関連キーワード生成手段によって得られた関連キーワードを用いて検索式を生成する手段である。検索管理手段は、関連キーワード生成手段によって使用される検索パラメータを設定するとともに、検索式生成手段によって得られた検索式に基づいて、データベース管理手段によって検索を実行させる手段である。検索結果出力手段は、データベース管理手段による検索の実行から得られた最終的な検索結果を出力する手段である。
【００１９】
より詳細に、請求項１に記載の類似情報検索装置は、以上のような基本的な構成に加えて、関連性判断情報取得手段と関連性判断情報管理手段を備える。このうち、関連性判断情報取得手段は、データベース管理手段による検索の実行から得られた暫定的な検索結果の一部を検索データとしてユーザに提示するとともに、ユーザから検索処理の停止命令またはデータの関連性判断情報を取得する手段である。関連性判断情報管理手段は、関連性判断情報取得手段によって得られた関連性判断情報を格納、検索する手段である。さらに、この類似情報検索装置においては、検索管理手段が次のように構成される。すなわち、検索管理手段は、関連性判断情報取得手段によって検索データがユーザに提示され、ユーザがこの検索データに満足せず、検索提示手段がユーザからの関連性判断情報を取得した場合に、この関連性判断情報を用いて検索パラメータを変更し、関連キーワード生成手段によって関連キーワードを変更させ、検索式生成手段によって新たな検索式を生成させ、この新たな検索式に基づいて、データベース管理手段によって再検索を実行させるように構成される。また、検索管理手段は、関連性判断情報取得手段によって検索データがユーザに提示され、ユーザがこの検索データに満足して、検索提示手段がユーザからの検索処理の停止命令を取得した場合に、この検索データを最終的な検索結果として検索結果出力手段に送るように構成される。
【００２０】
請求項２〜４に記載の各類似情報検索装置は、請求項１に記載の構成において、関連性判断情報取得手段および関連性判断情報管理手段が次のように構成されることを特徴としている。すなわち、関連性判断情報取得手段は、ユーザからの関連性判断情報として、関連データと非関連データのいずれか一方またはその指示情報、あるいは関連データと非関連データの両方または指示情報を取得するように構成される。そして、関連性判断情報管理手段は、関連性判断情報取得手段によって得られたデータまたはその指示情報を格納、検索するように構成される。
【００２１】
請求項５〜８に記載の各類似情報検索装置は、請求項１に記載の構成において、関連性キーワード生成手段が次のように構成されることを特徴としている。すなわち、関連キーワード生成手段は、検索要求入力手段によって入力された入力キーワードを初期伝搬データとして伝搬操作を行い、検索管理手段によって設定された検索パラメータをしきい値として関連キーワードを生成するように構成される。請求項６に記載の類似情報検索装置において、関連性キーワード生成手段は、背景知識として連想ネットワークを使用し、入力キーワードである第１のキーワードとそれに対して間接的にリンクを張られた第２のキーワードとの関連度として、この第１、第２のキーワード間を接続するリンク列の関連度の積の最大値を求める。そして、この関連度と入力キーワードの重要度との積が検索パラメータ以上である場合に、第２のキーワードによって関連キーワードを生成する。請求項７に記載の類似情報検索装置において、関連性キーワード生成手段は、背景知識として連想ネットワークを使用し、入力キーワードである第１のキーワードとそれに対して間接的にリンクを張られた第２のキーワードの関連度として、この第１、第２のキーワード間を接続するリンク列の関連度の積の和を求める。そして、この関連度と入力キーワードの重要度との積が検索パラメータ以上である場合に、第２のキーワードによって関連キーワードを生成する。請求項８に記載の類似情報検索装置において、関連性キーワード生成手段は、背景知識として概念階層を使用し、入力キーワードである第１のキーワードとそれに対して間接的にリンクを張られた第２のキーワードとの関連度として、第１のキーワードから、第１、第２のキーワードに共通の上位のキーワードで最も下位の第３のキーワードまでのリンク列の関連度の積を求める。そして、この関連度と入力キーワードの重要度との積が検索パラメータ以上である場合に、第２のキーワードによって関連キーワードを生成する。
【００２２】
請求項９に記載の類似情報検索装置は、前述したような基本的な構成において、検索要求入力手段と検索管理手段が次のように構成されることを特徴としている。すなわち、検索要求入力手段は、ユーザの操作に基づき、入力キーワードと入力キーワードの重要度を含む検索要求だけでなく、さらに検索結果の条件を入力する。検索管理手段は、データベース管理手段による検索の実行から得られた暫定的な検索結果が、検索要求入力手段によって得られた検索結果の条件を満足していない場合に、検索パラメータを変更し、関連キーワード生成手段によって関連キーワードを変更させ、検索式生成手段によって新たな検索式を生成させ、この新たな検索式に基づいて、データベース管理手段によって再検索を実行させるように構成される。また、検索管理手段は、データベース管理手段による検索の実行から得られた暫定的な検索結果が、検索要求入力手段によって得られた検索結果の条件を満足している場合に、この検索結果を最終的な検索結果として検索結果出力手段に送るように構成される。
【００２３】
請求項１０，１１に記載の各類似情報検索装置は、請求項９に記載の構成において、検索式生成手段によって得られた検索式からこの検索式に対応する検索件数を推定する検索件数推定手段をさらに備えることを特徴としている。請求項１１記載の類似情報検索装置において、検索管理手段は、前処理として、データベース管理手段によって実際のデータベース検索を行わせることなしに、検索件数推定手段を使用して検索式の検索件数を推定しながら、検索式生成手段によって試行錯誤による検索式の生成を行わせるように構成される。そして、この前処理の後、データベース管理手段によって実際のデータベース検索を行わせながら、検索式生成手段によって試行錯誤による検索式の生成を行わせるように構成される。
【００２４】
請求項１２〜１５に記載の各類似情報検索装置は、請求項９に記載の構成において、関連性キーワード生成手段が、請求項５〜８に記載の関連キーワード生成手段と同様に構成されることを特徴としている。
【００２５】
また、請求項１６〜３０に記載の各類似情報検索方法は、それぞれ、請求項１〜１５に記載の各類似情報検索装置の動作手順に対応する方法である。
【００２６】
【作用】
以上のような構成を有する本発明の類似情報検索装置とその方法によれば、ユーザの検索意図とデータの単純な背景知識とを容易かつ正確に反映させながら、検索条件である検索式を自動的に生成し、試行錯誤的に類似検索を効率よく実行することができる。
【００２７】
まず、請求項１〜８に記載の類似情報検索装置、および請求項１６〜２３に記載の類似情報検索方法によれば、ユーザからの検索要求である入力キーワードと背景知識に基づく関連キーワードを用いて検索式を生成し、この検索式に基づいて検索を実行して暫定的な検索結果をユーザに提示し、この暫定的な検索結果がユーザの検索意図に沿わない場合には、ユーザに検索意図の情報である関連性判断情報を入力させて、この情報を取得する。そして、このようなユーザからの検索意図を反映した情報によって検索パラメータを変更し、新たな検索式を生成し、この検索式に基づいて再検索を実行することにより、ユーザの検索意図と背景知識とを反映した検索を行うことができる。すなわち、このように、ユーザから取得した関連性判断情報に基づいて検索式を生成することにより、検索式がフィードバックによって次第に洗練化されるという会話的探索過程を実現している。そして、ユーザが設定した入力キーワードとその重要度と、背景知識に基づいて生成した関連キーワード、およびユーザから取得した関連性判断情報とを使用して、検索式を生成することにより、ユーザの検索意図と背景知識の両方を検索式に確実に反映させることができる。したがって、検索速度を大幅に低下させることなく、ユーザとの対話によってユーザの検索意図を容易かつ正確に反映させながら、データの単純な背景知識を容易かつ正確に反映させて、試行錯誤的に有効な類似検索を効率よく実行することができる。
【００２８】
請求項２〜４に記載の類似情報検索装置、および請求項１７〜１９に記載の類似情報検索方法によれば、ユーザの検索意図である関連性判断情報として、関連データ・非関連データまたはその指示情報を直接取得するため、ユーザの検索意図をより容易かつ正確に反映させることができる。
【００２９】
請求項５〜８に記載の類似情報検索装置、および請求項２０〜２３に記載の類似情報検索方法によれば、連想ネットワークや概念階層などの背景知識を使用し、リンク列の関連度の積などの簡単な計算を行うことにより、検索パラメータをしきい値として関連キーワードを自動的に生成することができる。したがって、データの単純な背景知識をより容易かつ正確に反映させることができる。
【００３０】
次に、請求項９〜１５に記載の類似情報検索装置、および請求項２４〜３０に記載の類似情報検索方法によれば、ユーザからの検索要求である入力キーワードと背景知識に基づく関連キーワードを用いて検索式を生成し、この検索式に基づいて検索を実行する。そして、この検索の実行によって得られた暫定的な検索結果がユーザによって設定された検索結果の条件を満足しない場合には、検索パラメータを変更して、新たな検索式を生成し、この検索式に基づいて再検索を実行することにより、ユーザの検索意図と背景知識とを反映した検索を行うことができる。すなわち、このように、ユーザが設定した入力キーワードとその重要度、および検索結果の条件と、背景知識に基づいて生成した関連キーワードとを使用して、検索式を生成することにより、ユーザの検索意図と背景知識の両方を検索式に確実に反映させることができる。したがって、検索速度を大幅に低下させることなく、ユーザによって設定された検索結果の条件を使用してユーザの検索意図を容易かつ正確に反映させながら、データの単純な背景知識を正確に反映させて、試行錯誤的に有効な類似検索を効率よく実行することができる。
【００３１】
請求項１０，１１に記載の類似情報検索装置、および請求項２５，２６に記載の類似情報検索方法によれば、検索式に対応する検索件数を推定することにより、推定される検索件数がユーザによって設定された検索結果の条件を満足するような検索式のみを選別することができる。これにより、前処理としての検索式の生成を探索的に行うことができるため、無駄な検索式に基づく無駄な実検索をできる限り回避することができる。
【００３２】
請求項１２〜１５に記載の類似情報検索装置、および請求項２７〜３０に記載の類似情報検索方法によれば、連想ネットワークや概念階層などの背景知識を使用し、リンク列の関連度の積などの簡単な計算を行うことにより、検索パラメータをしきい値として関連キーワードを自動的に生成することができる。したがって、データの単純な背景知識をより容易かつ正確に反映させることができる。
【００３３】
【実施例】
［１］第１実施例
［１−１］構成
図１は、本発明による類似情報検索装置の一実施例のシステムを示す構成図である。システムの中心に構成全体を制御する制御部１００があり、この制御部１００は、汎用マイクロコンピュータあるいは専用ＬＳＩなどで構成されている。そして、この制御部１００には、入出力や記憶を受け持つ周辺装置として、キーボード入力部１０１、表示部１０２、印刷部１０３、外部記憶部１０４などが接続されている。また、図示していないが、制御部１００には、入出力や検索を制御する下位の制御部が設けられており、これらの下位の制御部は、ＲＯＭなどのファームウェアやソフトウェアなどによって構成されている。このような階層的な制御構成は、周知の技術であるため、ここでは説明を省略する。
【００３４】
そして、図１のシステムにおいては、本発明による類似情報検索機能を実現する手段として、まず、検索要求入力部１１０、検索管理部１２０、および検索結果出力部１３０が設けられている。これらは、制御部１００によって直接的に制御される機能部である。
【００３５】
また、検索管理部１２０の下位の機能部として、関連キーワード生成部１２１、検索式生成部１２２、関連データベース管理部１２３、関連データ取得部１２４、およびデータベース管理部１２５が設けられている。
【００３６】
さらに、図中１４０は、概念階層や連想ネットワークなどの背景知識を格納した背景知識格納部であり、この背景知識格納部１４０は、ＲＯＭなどのファームウェア、あるいはハードディスク装置などによって構成されている。また、図中１５０は、関連データ取得部１２４で得られた関連データを格納するデータベースであり、この関連データベース１５０は、ハードディスク装置によって構成されている。また、図中１６０は、検索対象となるデータを格納したデータベースであり、このデータベース１６０は、ハードディスク装置によって構成されている。
【００３７】
以上のような機能部１１０，１２０，１３０，１２１〜１２５は、それぞれ、次のような機能を有する。
【００３８】
まず、検索要求入力部１１０は、ユーザのキーボード入力部１０１の操作に基づき、制御部１００の制御の下で、ユーザによって設定された入力キーワードと入力キーワードの重要度からなる検索要求を入力する。
【００３９】
また、検索管理部１２０は、検索パラメータを設定するとともに、関連キーワード生成部１２１、検索式生成部１２２、関連データベース管理部１２３、関連データ取得部１２４、およびデータベース管理部１２５を使用して、試行錯誤的な検索を行う。すなわち、検索管理部１２０は、検索パラメータを設定するとともに、関連キーワード生成部１２１によって関連キーワードを生成させ、検索式生成部１２２および関連データベース管理部１２３によって、ユーザの検索意図を満足させるような類似検索式を自動的に生成させ、データベース管理部１２５によって検索を実行させる、という一連の処理を、試行錯誤的な検索として繰り返す。このような試行錯誤的な検索の間、関連データ取得部１２４によって、ユーザからの関連データを受け取り、関連データベース１２６に蓄える。
【００４０】
より詳細には、関連キーワード生成部１２１は、背景知識格納部１４０内に格納された背景知識を用いて、検索要求入力部１１０で得た入力キーワードから、検索パラメータをしきい値として関連キーワードを生成する。検索式生成部１２２は、入力キーワードと関連キーワードを用いて検索式を生成する。関連データベース管理部１２３は、関連データ取得部１２４がユーザから受け取った新たな関連データを関連データベース１５０に登録し、また、検索式を満足する関連データを関連データベース１５０から検索する、などの関連データベース１５０の管理を行う。データベース管理部１２５は、検索式生成部１２２で生成された検索式を用いて、データベース１６０内のデータの検索を実行する。関連データ取得部１２４は、データベース管理部１２５による検索結果の中のいくつかを検出データのサンプルとして取り出してユーザに提示し、このサンプル内にユーザによって関連データであると指示されたデータがある場合には、関連データベース管理部１２５を呼び出して、この関連データを関連データベース１５０に格納する。検索管理部１２０は、関連データベース管理部１２３を呼び出して、関連データベース１５０内のデータ内容に応じて検索パラメータを生成させ、関連キーワード生成部１２１を呼び出して検索パラメータをしきい値として関連キーワードを生成させ、検索式生成部１２２を呼び出して入力キーワードと関連キーワードを用いて検索式を生成させる。
【００４１】
一方、検索結果出力部１３０は、検索管理部１２０によって得られた最終的な検索結果を出力する。この検索結果は、制御部１００によって、表示部１０２、印刷部１０３、および外部記憶部１０４などに適宜出力される。
【００４２】
［１−２］作用
［１−２−１］試行錯誤的な類似情報検索処理の概略
図２は、本実施例のシステムによる試行錯誤的な類似情報検索処理の概略を示すフローチャートである。この図２に示すように、試行錯誤的な類似情報検索処理に当たっては、まず、検索要求入力部１１０により、ユーザによって設定された入力キーワードと入力キーワードの重要度からなる検索要求を入力する（ステップ２１０）。
【００４３】
次に、検索管理部１２０により、検索式の生成（ステップ２２０）、検索の実行（ステップ２３０）、および関連データまたは停止命令の取得（ステップ２４０）を行う。ステップ２２０の検索式の生成においては、関連キーワード生成部１２１、検索式生成部１２２、および関連データベース管理部１２３によって、ユーザの検索意図を満足すると推定される検索式を生成する。ステップ２３０の検索式の実行においては、ステップ２２０で生成された検索式を使用し、データベース管理部１２５によって、データベース１６０に対して検索を実行する。ステップ２４０の関連データの取得においては、関連データ取得部１２４によって、データベース１６０の暫定的な検索結果の中のいくつかの検索データをサンプルとして取り出してユーザに提示し、ユーザによって関連データの指示が入力された場合には、関連データベース管理部１２３によってこの関連データを関連データベース１５０に格納する。そして、このように、関連データを取得した場合には、再びステップ２２０に戻ってこの関連データに基づいて検索式を生成する。
【００４４】
また、ステップ２４０において、ユーザによって検索処理の停止命令が入力された場合には、検索管理部１２０により、ユーザに提示した検索データを最終的な検索結果として決定し、検索結果出力部１３０に送る。続いて、検索結果出力部１３０により、検索管理部１２０で得られた最終的な検索結果であるデータ群を、適当なフォーマットで出力する（ステップ２５０）。
【００４５】
［１−２−２］データと背景知識の構成
図３は、データベース１６０に格納されている検索対象となるデータ（レコード３００）の例と、背景知識格納部１４０に格納されている概念階層３１０や連想ネットワーク３２０などの知識の例を示す説明図である。このうち、検索対象となる１つのレコード（あるいは事例）３００は、属性（あるいはフィールド）の値の集合で表現されている。個々の属性はデータベース１６０のレコードの１カラムに相当し、１つの事例は、データベース１６０の１レコードの形で表現されている。
【００４６】
この例では、レコード３００において、属性１に対して“果物”という属性値が設定され、属性２に対して“値段”という属性値が設定されている。また、背景知識格納部１４０には、属性１に対応する背景知識という形で属性１の概念階層３１０が存在しており、この概念階層３１０においては、“果物”という属性値の下位概念として、“りんご”、“苺”、“梨”が存在している。そしてまた、属性２に対応する背景知識という形で属性２の連想ネットワーク３２０が存在しており、この連想ネットワーク３２０においては、“値段”と“プライス”との関連値が「０．８」、“値段”と“定価”の関連値が「０．５」、というように、キーワード（属性値）間の関連度を記述した背景知識が埋め込まれている。この関連度は、「０」から「１」までの値を取り得る。属性１、２には、このように、対応する背景知識が存在しているが、全ての属性に対応する知識が必ず必要なわけではない。そして、システムは、存在する背景知識を用いて、試行錯誤的な類似情報検索を実行することになる。
【００４７】
［１−２−３］検索要求の入力処理
図４は、検索要求入力部１１０による検索要求の入力処理（図２のステップ２１０）の一例を示す図であり、特に、表示部１０２上での入力支援表示例とそれに対する検索要求の入力例を示す説明図である。
【００４８】
この図４に示すように、検索要求入力部１１０は、属性とその値である入力キーワードとその重要度を、検索要求として入力する。この例では、検索要求入力部１１０は、ユーザに対し、表示部１０２上で、「入力キーワードと重要度を入力して下さい」という入力支援を表示している。そして、この入力支援表示に対して、ユーザが、キーボード入力部１０１を操作して、「属性１」に対して、入力キーワードを“苺”とし、その重要度を「０．７」とするとともに、「属性２」に対して、入力キーワードを“値段”とし、その重要度を「０．８」として検索要求を入力しており、この入力内容が、表示部１０２上に表示されている。
【００４９】
［１−２−４］検索式の生成処理
図５は、本実施例のシステムの中枢部である検索管理部１２０による検索式の生成処理（図２のステップ２２０）を詳細に示すフローチャートである。
【００５０】
この検索式の生成処理においては、検索パラメータＫとこの検索パラメータＫの最高値と最低値の初期設定を行い（ステップ５１０）、この検索パラメータＫによって生成された検索式の呼び出し率に応じて検索パラメータを調整した後、検索パラメータＫが収束したか否かを判定する（ステップ５２０）。そして、このステップ５２０において、検索パラメータＫが収束したものと判断した場合には、検索式生成処理を停止する。なお、ステップ５１０は、図２におけるステップ２２０の第１回目に実行される初期設定処理であり、第２回目以降は、それまでの設定を流用して実行する。
【００５１】
また、ステップ５１０の初期設定処理の後、あるいは、ステップ５２０において検索パラメータの変化値が任意の定数α以上である場合には、この検索パラメータＫを用いて、関連キーワード生成部１２１により関連キーワードを生成し（ステップ５３０）、検索式生成部１２２により検索式を生成する（ステップ５４０）。続いて、関連データベース管理部１２３により関連データベース１５０での呼び出し率を計算する（ステップ５５０）。計算された呼び出し率によって、検索パラメータＫを二分探索に似た手続きで変更し（ステップ５６０、ステップ５７０、またはステップ５８０）、検索式を変更し続けるというものである。
【００５２】
この検索パラメータＫは、検索条件という制約の強弱を表している。すなわち、検索パラメータＫが「１」に近付く程、検索条件は厳しくなり、データベース１６０における実際の検索件数も減少するという傾向を示す。また、検索パラメータＫが「０」に近付く程、検索条件は緩やかになり、データベース１６０における実際の検索件数も増加するという傾向を示す。このように、検索パラメータＫは、制約不足・過剰制約の状態より脱するためのパラメータという意味を持つ。
【００５３】
以下には、図５を参照しながら、検索管理部１２０による検索式の生成処理について、より詳細に説明する。
【００５４】
まず、検索管理部１２０は、検索パラメータＫを初期値ω（この場合、ω＝０．５）に設定し、検索パラメータの最低値と最高値をそれぞれ０と１に設定する（ステップ５１０）。続いて、検索管理部１２０は、この検索パラメータＫを用いて、関連キーワード生成部１２１により、ユーザから入力された入力キーワードに関連するキーワードを関連キーワードとして生成させる（ステップ５３０）。この関連キーワードは、検索パラメータＫをしきい値として、入力キーワードの近傍で探索され、生成される。さらに、検索管理部１２０は、検索式生成部１２２により、入力キーワードと関連キーワードをもとにブール論理式の形式を持つ検索式を生成させる（ステップ５４０）。
【００５５】
次に、検索管理部１２０は、関連データベース管理部１２３により、ステップ５４０で生成された検索式によって、関連データベース１５０を検索し、その呼び出し率を計算する（ステップ５５０）。この呼び出し率は、関連データベース１５０のデータ件数（Ａ）を検索式で検索されたデータ件数（Ｂ）で割ったものである。先にも述べたように、呼び出し率を限りなく最高の値である「１」に近付けることが望ましい。しかしながら、もう一つの情報検索の評価尺度である精度と呼び出し率とは、一般的にトレードオフの関係にあるため、２つの尺度を同時に１にすることはなかなか困難であることが知られている。そこで、図５においては、呼び出し率が「１」であるか否かを判断し（ステップ５６０）、呼び出し率が「１」でない場合（０≦Ｋ＜１）には、過剰制約の状態であると推定されるため、検索パラメータＫを増加させて過剰制約の状態から脱出させる（ステップ５７０）。また、呼び出し率が「１」である場合には、制約不足の状態であると推定されるため、検索パラメータＫを減少させて制約不足の状態から脱出させる（ステップ５８０）。
【００５６】
より具体的に、ステップ５７０においては、検索パラメータＫを検索パラメータＫの最低値に代入し、検索パラメータＫと検索パラメータＫの最高値との間の中間値を検索パラメータＫに代入する。例えば、初期設定時において、検索パラメータＫの初期値（ω）が「０．５」であるとすれば、検索パラメータＫを「０．７５」に変更し、検索パラメータＫの最低値を「０．５」に変更することになる。したがって、検索パラメータＫは、これ以降は「０．５」以下の値を取らないことになる。
【００５７】
また、ステップ５８０においては、検索パラメータＫと検索パラメータＫの最低値との間の中間値を検索パラメータＫに代入する。例えば、初期設定時において、検索パラメータＫの初期値（ω）が「０．５」であるとすれば、検索パラメータＫを「０．２５」に変更することになる。
【００５８】
そして、検索管理部１２０は、以上のように検索パラメータＫを変更した後、この検索パラメータＫが停止条件を満足するか否かを判定する（ステップ５２０）。すなわち、検索パラメータＫの変化値であるところの、変更前の検索パラメータｏｌｄＫと変更後の検索パラメータＫとの差を、任意の定数αと比較することで、検索パラメータＫが収束したか否かを判定する。このステップ５２０において、検索パラメータＫの変化値が任意の定数αより小さい場合には、検索パラメータＫで生成された検索式を最終的な検索式として決定し、検索式生成処理を停止する。これに対し、ステップ５２０において、検索パラメータＫの変化値が任意の定数α以上である場合には、ステップ５３０に進むことになる。
【００５９】
［１−２−５］検索データの提示と関連データの取得処理
図６は、関連データ取得部１２４による検索データの提示と関連データの取得処理（図２のステップ２４０）の一例を示す図であり、特に、表示部１０２上での検索データの表示例とそれに対するユーザからの関連データ指示の入力例を示す説明図である。
【００６０】
この図６に示すように、関連データ取得部１２４は、検索結果のレコード（図３の３００）の集合から適当数をサンプルとして取り出し、表示部１０２に出力する。この例では、関連データ取得部１２４は、ユーザに対し、表示部１０２上で、「以下のデータの中で関連するものを選択して下さい」という入力支援を表示し、さらに、この表示の下部に、４件のレコードを表示している。そして、この入力支援表示およびレコード表示に対して、ユーザが、キーボード入力部１０１を操作して、１番目と３番目のレコードが関連データであることを示す「１  ３」という関連データ指示を入力しており、この関連データ指示が、表示部１０２上に表示されている。このような関連データ指示の入力は、ユーザの関連性の判断に基づいて行われており、ユーザの検索意図に関する情報とみなすことができる。
【００６１】
そして、このようにユーザによって関連データ指示の入力がなされると、関連データ取得部１２４は、関連データベース管理部１２５を呼び出して、指示された関連データを、関連データベース１５０に格納する。図７は、関連データベース１５０に格納されているデータ（レコード３００）の例を示す説明図である。この図７に示すレコード３００は、データベース１６０に格納されているレコード３００（図３）と同じ形で表現されている。なお、このように、関連データ取得部１２４によって関連データを取得した場合には、検索管理部１２０は、この関連データに応じて検索パラメータを変更し、再び検索式の生成処理（図２のステップ２２０）に戻る。
【００６２】
ここで、仮に、ユーザが表示された全てのレコードが関連データであるものと判断し、満足している場合、あるいは、検索を終了させたい場合には、停止命令として「ＥＮＤ」を入力することにより、図２の試行錯誤的な検索式生成のループ（ステップ２２０、ステップ２３０、およびステップ２４０）は終了し、ステップ２５０において、検索結果出力部１３０により、ステップ２４０で提示されたレコードを、最終的な検索結果として出力する。
【００６３】
［１−２−６］関連キーワードの生成処理
［１−２−６−１］連想ネットワークの構成
図８は、背景知識格納部１４０に格納されている背景知識の表現の一つである連想ネットワーク（図３の３２０）の一例を示す説明図である。データベース１６０内に格納されているデータの属性に対して、ユーザにより、このような連想ネットワークが登録される。図３の例では、“値段”、“プライス”、“定価”などのキーワードが、関連度を付加したキーワード間のリンクとともに配置されていたが、この図８では、説明の簡略化の観点から、各キーワードは、“Ａ”、“Ｂ”、“Ｃ”、“Ｄ”などの単一符号で示されている。この図８において、キーワード“Ａ”には、キーワード“Ｄ”、“Ｆ”との間に、各々、「０．８」、「０．６」の関連度でリンクが張られており、さらに、キーワード“Ｄ”からは、キーワード“Ｂ”、“Ｃ”との間に、各々、「０．２」、「０．５」の関連度でリンクが張られている。この関連度は、キーワード間の関連性が高いほど高い値となっており、「０」から「１」までの値を取り得る。
【００６４】
ここで、間接的にリンクを張られたキーワード間の関連度を、例えば、次のように定義することができる。
【数１】
0003621449.tif 000002
この定義１において、Ｒｅｌ（ｉ，ｊ）  は、任意のキーワード“Ｉ”と任意のキーワード“Ｊ”との間の関連度であり、Ｌｗｉｋ  は、任意のキーワード“Ｉ”と任意のキーワード“Ｊ”を通過した場合における、連想ネットワーク３２０上の一つのリンクの関連度を示す。つまり、このＲｅｌ（ｉ，ｊ）  は、キーワード“Ｉ”−“Ｊ”間を通過した場合の関連度の積の最大値を返す関数である。例えば、キーワード“Ａ”とキーワード“Ｂ”の関連度を計算するには、次のリンク列が考えられる。
【数２】
“Ａ”→“Ｆ”→“Ｅ”→“Ｂ”
“Ａ”→“Ｄ”→“Ｂ”
“Ａ”→“Ｄ”→“Ｃ”→“Ｂ”
このリンク列から、それぞれ次のようにして、リンクの関連度の積が計算される。
【数３】
０．６×０．８×０．９＝０．４３２
０．８×０．２        ＝０．１６
０．８×０．５×０．７＝０．２８
したがって、このようにして得られた３つの積「０．４３２」、「０．１６」、「０．２８」のうち、その最大値である「０．４３２」が結果として返される。すなわち、この値「０．４３２」が、前述した定義１の関連度計算に基づくキーワード“Ａ”とキーワード“Ｂ”の関連度として得られる。
【００６５】
また、間接的にリンクを張られたキーワード間の関連度を、次のように定義することもできる。
【数４】
0003621449.tif 000003
この定義２において、Ｒｅｌ（ｉ，ｊ）  は、任意のキーワード“Ｉ”と任意のキーワード“Ｊ”との間の関連度であり、Ｌｗｉｋ  は、任意のキーワード“Ｉ”と任意のキーワード“Ｊ”を通過した場合における、連想ネットワーク上の一つのリンクの関連度を示す。つまり、このＲｅｌ（ｉ，ｊ）  は、キーワード“Ｉ”−“Ｊ”間を通過した場合の関連度の積の和を返す関数である。例えば、キーワード“Ａ”とキーワード“Ｂ”の関連度を計算するには、次のリンク列が考えられる。
【数５】
“Ａ”→“Ｆ”→“Ｅ”→“Ｂ”
“Ａ”→“Ｄ”→“Ｂ”
“Ａ”→“Ｄ”→“Ｃ”→“Ｂ”
このリンク列から、それぞれ次のようにして、リンクの関連度の積が計算される。
【数６】
０．６×０．８×０．９＝０．４３２
０．８×０．２        ＝０．１６
０．８×０．５×０．７＝０．２８
したがって、このようにして得られた３つの積「０．４３２」、「０．１６」、「０．２８」の和である「０．８７２」が結果として返される。すなわち、この値「０．８７２」が、前述した定義２の関連度計算に基づくキーワード“Ａ”とキーワード“Ｂ”の関連度として得られる。このように、通過するリンク列の関連度の積の和から、キーワード間の関連度を計算するようにした場合には、さらに、ユーザの意識あるキーワードから複数のリンクを張り巡らして、関連度を強め、伝搬を増幅させることによって、ユーザの検索意図により適合するような隠れたキーワードを生成することもできる。そして、このような方法を採用した場合には、類似性の観点や視点といった抽象的な検索要求をも取り扱うことができる。
【００６６】
［１−２−６−２］定義１の関連度計算に基づく関連キーワード生成処理
図９は、関連キーワード生成部１２１による、定義１の関連度計算に基づく関連キーワード生成処理を示すフローチャートである。この関連キーワード生成処理は、ユーザから入力された入力キーワードから、しきい値である検索パラメータＫ以上の関連キーワードを生成する処理（図５のステップ５３０）であり、伝搬アルゴリズムに基づき、伝搬キューとキーワードリストを初期化し（ステップ９１０）、伝搬キューに初期伝搬データである入力キーワードをプッシュし（ステップ９２０）た後、一連の伝搬ループを繰り返す処理である。
【００６７】
この伝搬ループは、伝搬キューからノードを取り出し（ステップ９３０）、このノードが空でなく（ステップ９４０）、その重要度が検索パラメータＫ以上である場合には（ステップ９５０）、このノードをキーワードリストに追加し（ステップ９６０）、このノードよりリンクするノード群の各ノードに対して、そのノードを伝搬キューにプッシュする（ステップ９７０）、という一連の操作であり、取り出されたノードが空になるまでこの伝搬ループを繰り返すことで、最終的に関連キーワードをキーワードリストとして得ることができる。なお、関連キーワード生成部１２１は、この処理を、背景知識を持つ属性毎に行い、背景知識を持つ属性毎に関連キーワードを生成する。
【００６８】
以下には、図９を参照しながら、関連キーワード生成部１２１による、定義１の関連度計算に基づく関連キーワード生成処理について、より詳細に説明する。まず、関連キーワード生成部１２１は、伝搬キューとキーワードリストを初期化して、空キューと空リストにする（ステップ９１０）。初期化後に、伝搬キューに入力キーワードを示すＩＤであるノード番号と重要度をペアにした要素をプッシュする（ステップ９２０）。入力キーワードが複数存在する場合には、それらすべてに対応する要素がプッシュされることになる。
【００６９】
次に、関連キーワード生成部１２１は、伝搬ループに入り、伝搬キューから要素Ｅを取り出し（ステップ９３０）、この要素Ｅが空であるか否かを判断する（ステップ９４０）。そして、要素Ｅが空である場合には、キーワードリストを答えとして返し、処理を終了する。この場合、要素Ｅは、キーワードを示すノードＭに対応するものとする。要素Ｅが空でない場合には、その重要度が検索パラメータＫ以上であるか否かを調べる（ステップ９５０）。重要度が検索パラメータＫの値よりも小さい場合には、伝搬キューからの取り出し処理（ステップ９３０）に戻り、そうでない場合には、その要素Ｅをキーワードリストに追加する（ステップ９６０）。ただし、キーワードリストに同じキーワードを持つ要素が存在する場合には、キーワードリストに存在する古い要素Ｅ１を削除する。
【００７０】
この後、関連キーワード生成部１２１は、背景知識のうちのノードＭに直接リンクするノード群の各ノードＮに対して、要素＜ノード番号、ノードＮの重要度＝要素Ｅの重要度×ノードＭからノードＮへのリンクの関連度＞を、伝搬キューにプッシュし（ステップ９７０）、伝搬キューからの取り出し処理（ステップ９３０）に戻る。ただし、キーワードリストに同じノードの要素が存在し、その重要度の方が大きい場合には、新しい要素を伝搬キューにプッシュしない。
【００７１】
以上の処理においては、入力キーワードの重みから関連キーワードの重みを計算しているが、その関連度を求める計算の本質は、定義１の関数Ｒｅｌ（ｉ，ｊ）  にある。すなわち、入力キーワード“Ｉ”の重要度がＷｉ  で、入力キーワード以外のキーワード“Ｊ”との関連度がＲｅｌ（ｉ，ｊ）  であれば、キーワード“Ｊ”の重要度は、Ｗｉ  ×Ｒｅｌ（ｉ，ｊ）  で計算可能である。
【００７２】
［１−２−６−３］定義２の関連度計算に基づく関連キーワード生成処理
図１０は、関連キーワード生成部１２１による、定義２の関連度計算に基づく関連キーワード生成処理を示すフローチャートである。この関連キーワード生成処理は、ユーザから入力された入力キーワードから、しきい値である検索パラメータＫ以上の関連キーワードを生成する処理（図５のステップ５３０）であり、伝搬アルゴリズムに基づき、伝搬キューとキーワードリストを初期化し（ステップ１０１０）、伝搬キューに初期伝搬データである入力キーワードをプッシュし（ステップ１０２０）た後、一連の伝搬ループを繰り返す処理である。
【００７３】
この伝搬ループは、伝搬キューからノードを取り出し（ステップ１０３０）、このノードが空でなく（ステップ１０４０）、その重要度が伝搬値ψよりも大きい場合には（ステップ１０５０）、このノードをキーワードリストに追加し（ステップ１０６０）、このノードよりリンクするノード群の各ノードに対して、そのノードを伝搬キューにプッシュする（ステップ１０７０）、という一連の操作であり、取り出されたノードが空になるまでこの伝搬ループを繰り返すことで、最終的に関連キーワードをキーワードリストとして得ることができる。なお、関連キーワード生成部１２１は、この処理を、背景知識を持つ属性毎に行い、背景知識を持つ属性毎に関連キーワードを生成する。
【００７４】
以下には、図１０を参照しながら、関連キーワード生成部１２１による、定義２の関連度計算に基づく関連キーワード生成処理について、より詳細に説明する。まず、関連キーワード生成部１２１は、伝搬キューとキーワードリストを初期化して、空キューと空リストにする（ステップ１０１０）。初期化後に、伝搬キューに入力キーワードを示すＩＤであるノード番号と重要度をペアにした要素をプッシュする（ステップ１０２０）。入力キーワードが複数存在する場合には、それらすべてに対応する要素がプッシュされることになる。
【００７５】
次に、関連キーワード生成部１２１は、伝搬ループに入り、伝搬キューから要素Ｅを取り出し（ステップ１０３０）、この要素Ｅが空であるか否かを判断する（ステップ１０４０）。そして、要素Ｅが空である場合には、キーワードリストから重要度が検索パラメータＫの値よりも小さい要素を削除し（ステップ１０８０）、それを答えとして返し、処理を終了する。この場合、要素Ｅは、キーワードを示すノードＭに対応するものとする。要素Ｅが空でない場合には、その重要度が予め設定された伝搬値ψよりも大きいか否かを調べる（ステップ１０５０）。重要度が伝搬値ψ以下である場合には、伝搬キューからの取り出し処理（ステップ１０３０）に戻り、そうでない場合には、その要素Ｅをキーワードリストに追加する（ステップ１０６０）。ただし、キーワードリストに同じキーワードを持つ要素が存在する場合には、キーワードリストに新たな要素Ｅを追加せず、重要度だけを加算する。
【００７６】
この後、関連キーワード生成部１２１は、背景知識のうちのノードＭに直接リンクするノード群の各ノードＮに対して、要素＜ノード番号、ノードＮの重要度＝要素Ｅの重要度×ノードＭからノードＮへのリンクの関連度＞を、伝搬キューにプッシュし（ステップ１０７０）、伝搬キューからの取り出し処理（ステップ１０３０）に戻る。
【００７７】
以上の処理においては、入力キーワードの重みから関連キーワードの重みを計算しているが、その関連度を求める計算の本質は、定義２の関数Ｒｅｌ（ｉ，ｊ）  にある。すなわち、入力キーワード“Ｉ”の重要度がＷｉ  で、入力キーワード以外のキーワード“Ｊ”との関連度がＲｅｌ（ｉ，ｊ）  であれば、キーワード“Ｊ”の重要度は、Ｗｉ  ×Ｒｅｌ（ｉ，ｊ）  で計算可能である。
【００７８】
このように、関連キーワード生成部１２１は、定義１、定義２ともに、類似した伝搬アルゴリズムにより関連キーワードを計算する。以下には、キーワード間の関連度Ｒｅｌ（ｉ，ｊ）  の計算式として、定義１を用いることにする。
【００７９】
［１−２−６−４］連想ネットワークを用いた関連キーワードの第１生成例
図１１は、関連キーワード生成部１２１による関連キーワードの第１生成例を示す説明図であり、特に、背景知識である連想ネットワークとして、図８の連想ネットワークを用いて関連キーワードを生成した場合の一例を示している。
【００８０】
まず、入力キーワードが“Ａ”でその重要度が「０．８」であり、検索パラメータＫの値が「０．４」である場合を仮定する。この場合、伝搬キューに要素＜Ａ，０．８＞をプッシュする（図９のステップ９２０）。ここで、Ａはノード番号を示す。そして、伝搬ループでは、要素＜Ａ，０．８＞を取り出す（図９のステップ９３０）。この要素の重要度は「０．８」であり、検索パラメータＫの値「０．４」よりも大きいため（図９のステップ９５０）、この要素＜Ａ，０．８＞をキーワードリストに追加する（図９のステップ９６０）。次に、入力キーワード“Ａ”に直接リンクしているキーワード“Ｄ”、“Ｆ”に伝搬し、要素＜Ｄ，０．６４＝０．８×０．８＞、＜Ｆ，０．４８＝０．８×０．６＞を伝搬キューにプッシュする（図９のステップ９７０）。
【００８１】
続いて、伝搬ループの開始点に戻り、伝搬キューから新たな要素＜Ｄ，０．６４＞を取り出す（図９のステップ９３０）。この要素の重要度は「０．６４」であり、検索パラメータＫの値「０．４」よりも大きいため（図９のステップ９５０）、この要素＜Ｄ，０．６４＞をキーワードリストに追加する（図９のステップ９６０）。さらにこの要素＜Ｄ，０．６４＞からの伝搬により、キーワード“Ｄ”に直接リンクしているキーワード“Ｂ”、“Ｃ”に伝搬し、要素＜Ｂ，０．１３＝０．６４×０．２＞、＜Ｃ，０．３２＝０．６４×０．５＞を伝搬キューにプッシュする（図９のステップ９７０）。次に、伝搬キューから新たな要素＜Ｆ，０．４８＞を取り出す（図９のステップ９３０）。この要素の重要度は「０．４８」であり、検索パラメータＫの値「０．４」よりも大きいため（図９のステップ９５０）、この要素＜Ｆ，０．４８＞をキーワードリストに追加する（図９のステップ９６０）。さらにこの要素＜Ｆ，０．４８＞からの伝搬により、キーワード“Ｆ”に直接リンクしているキーワード“Ｅ”、“Ｇ”に伝搬し、要素＜Ｅ，０．３８＝０．４８×０．８＞、＜Ｇ，０．３８＝０．４８×０．８＞を伝搬キューにプッシュする（図９のステップ９７０）。
【００８２】
再び、伝搬ループの開始点に戻り、伝搬キューから新たな要素＜Ｂ，０．１３＞を取り出すが、この要素の重要度は「０．１３」であり、検索パラメータＫの値「０．４」よりも小さいため（図９のステップ９５０）、伝搬ループの開始点に戻る。また、残りの要素＜Ｃ，０．３２＞、＜Ｅ，０．３８＞、＜Ｇ，０．３８＞についても、同様に、その重要度が検索パラメータＫの値「０．４」よりも小さいため（図９のステップ９５０）、伝搬ループの開始点に戻ることになる。
以上のような伝搬ループの一連の処理の結果として、キーワードリストには、次の３つのキーワードのみが残り、それ以外のキーワードは却下されることになる。
【数７】
（  ＜Ａ，０．８＞、
＜Ｄ，０．６４＞、
＜Ｆ，０．４８＞  ）
このキーワードリストの意味は、検索パラメータＫの値を「０．４」とし、入力キーワード“Ａ”の重要度を「０．８」とした場合に、次のような関連キーワードが得られることを示している。
【数８】
（“Ｄ”、“Ｆ”）
【００８３】
［１−２−６−５］連想ネットワークを用いた関連キーワードの第２生成例
図１２は、関連キーワード生成部１２１による関連キーワードの第２生成例を示す説明図であり、前記第１生成例と同様に、背景知識である連想ネットワークとして、図８の連想ネットワークを用いて関連キーワードを生成した場合の別の一例を示している。まず、入力キーワードが“Ａ”でその重要度が「０．８」であり、検索パラメータＫの値が「０．３５」である場合を仮定する。この場合も、前記第１生成例と同様に、伝搬ループを繰り返し、結果として、キーワードリストには、次の５つのキーワードが残り、その他のキーワードは却下されることになる。
【数９】
（  ＜Ａ，０．８＞、
＜Ｄ，０．６４＞、
＜Ｆ，０．４８＞、
＜Ｅ，０．３８＞、
＜Ｇ，０．３８＞  ）
このキーワードリストの意味は、検索パラメータＫの値を「０．３５」とし、入力キーワード“Ａ”の重要度を「０．８」とした場合に、次のような関連キーワードが得られることを示している。
【数１０】
（“Ｄ”、“Ｆ”、“Ｅ”、“Ｇ”）
【００８４】
［１−２−６−６］検索パラメータの減少と関連キーワード集合の関係
以上のように、検索パラメータＫの値を「０．４」（第１生成例）から「０．３５」（第２生成例）へと減少させると、減少後の関連キーワード集合Ｓ１は、減少前の関連キーワード集合Ｓ２を部分集合として含みながら増大する。この関係は、次のように表現される。
【数１１】
0003621449.tif 000004
【００８５】
［１−２−６−７］概念階層の構成
図１３は、背景知識格納部１４０に格納されている背景知識の表現の一つである概念階層（図３の３１０）の一例を示す説明図である。図３の例では、“果物”の下位概念として、“りんご”、“苺”、“梨”などのキーワードが配置されていたが、この図１３では、説明の簡略化の観点から、各キーワードは、“Ａ”、“Ｂ”、“Ｃ”、“Ｄ”などの単一符号で示されている。この図１３においては、キーワード“Ａ”の上位概念としてキーワード“Ｅ”が存在し、キーワード“Ａ”の下位概念としてキーワード“Ｂ”、“Ｃ”、“Ｄ”が存在することを示している。図８の連想ネットワークでは、キーワード間のリンクにそのキーワード間の関連度が記述されていたが、この図１３の概念階層においては、直接リンクされたキーワード間の関連度が、すべて定数１／２に設定されている。
【００８６】
そして、このような図１３の概念階層を背景知識として持つ場合のキーワード間の関連度は、次のように定義することができる。
【数１２】
0003621449.tif 000005
この定義３において、Ｒｅｌ（ｉ，ｊ）  は、任意のキーワード“Ｉ”と任意のキーワード“Ｊ”との間の関連度であり、Ｌｗｉは、任意のキーワード“Ｉ”と任意のキーワード“Ｊ”の共通の上位概念のうちの最も下位概念をキーワード“Ｇ”とした場合における概念階層上の一つのリンクの関連度を示す。つまり、このＲｅｌ（ｉ，ｊ）  は、キーワード“Ｉ”−“Ｊ”間を通過した場合の関連度の積を返す関数である。例えば、キーワード“Ｂ”、“Ｇ”の関連度を計算するには、その共通の上位概念として、キーワード“Ｅ”、“Ｋ”が存在するが、その中で最も下位の概念は、キーワード“Ｅ”であり、この場合のキーワード“Ｂ”−“Ｇ”間の通過ルート（リンク列）は、次のようになる。
【数１３】
“Ｂ”→“Ａ”→“Ｅ”
このリンク列から、次のようにして、リンクの関連度の積が計算される。
【数１４】
１／２×１／２＝１／４
【００８７】
［１−２−６−８］概念階層を用いた関連キーワードの第３生成例
図１４は、関連キーワード生成部１２１による関連キーワードの第３生成例を示す説明図であり、特に、背景知識である概念階層として、図１３の概念階層を用いて関連キーワードを生成した場合の一例を示している。すなわち、入力キーワードが“Ａ”でその重要度が「０．８」であり、検索パラメータＫの値が「０．３５」である場合には、図１３の概念階層と前述の定義３から、次のような関連キーワードが得られる。
【数１５】
（  “Ｂ”、“Ｃ”、“Ｄ”、“Ｅ”、“Ｆ”、“Ｇ”、“Ｈ”、“Ｉ”、“Ｊ”  ）
【００８８】
［１−２−７］検索式の生成処理
図１５は、検索式生成部１２２による検索式生成処理を示すフローチャートである。この検索式生成処理は、ユーザから入力された入力キーワードと、関連キーワード生成部１３０によりこの入力キーワードに関連して生成された関連キーワードから検索式を生成する処理（図５のステップ５４０）である。すなわち、属性毎に入力キーワードと関連キーワードの等号（＝）単純条件式のＯＲ結合を生成し（ステップ１５１０）、属性毎の結果をＡＮＤ結合する（ステップ１５２０）、というものである。
【００８９】
図１６は、検索式生成部１２２による検索式の第１生成例を示す説明図である。すなわち、図１６の上部の表は、検索要求入力処理によって得られた入力キーワード“苺”、“値段”と、この入力キーワードに対して、関連キーワード生成処理によって得られた関連キーワード“梨”、“りんご”、“定価”、“プライス”を、属性毎に示すとともに、この場合の検索パラメータＫ、すなわち、関連キーワードの重要度が「０．３５」以上であることを示している。この場合、検索式生成部１２２では、このようにして得られた入力キーワード“苺”、“値段”と、関連キーワード“梨”、“りんご”、“定価”、“プライス”を、属性毎にＯＲ結合し、そのＯＲ結合結果をＡＮＤ結合して、図１６の下部に示すような検索式を生成する。
【００９０】
図１７は、検索式生成部１２２による検索式の第２生成例を示す説明図である。すなわち、図１７の上部の表は、検索要求入力処理によって得られた入力キーワード“苺”、“値段”と、この入力キーワードに対して、関連キーワード生成処理によって得られた関連キーワード“定価”を、属性毎に示すとともに、この場合の検索パラメータＫ、すなわち、関連キーワードの重要度が「０．５０」以上であることを示している。この場合、検索式生成部１２２では、このようにして得られた入力キーワード“苺”、“値段”と、関連キーワード“定価”を、属性毎にＯＲ結合し、そのＯＲ結合結果をＡＮＤ結合して、図１７の下部に示すような検索式を生成する。
【００９１】
［１−２−８］検索結果の出力処理
図１８は、検索結果出力部１３０による検索結果の出力処理（図２のステップ２５０）の一例を示す図であり、特に、表示部１０２上での検索要求の出力内容表示例を示す説明図である。この図１８に示すように、検索結果出力部１３０は、まず、「以下のデータが検索されました。」という検索終了報告と、「検索件数は２５件です。」という検索件数とを表示する。次に、実際に検索された情報をレコード単位で表示する。
【００９２】
［１−２−９］マルチウィンドウモード
図１９〜図２１は、表示部１０２上における各処理の表示をマルチウィンドウモードで表現した場合の一例を示している。前述した検索要求の入力処理、検索データの提示と関連データの取得処理、および検索結果の出力処理に関して、図４、図６、および図１８においては、シングルウィンドウモードで表示する例をそれぞれ示しているが、図１９〜図２１は、これらの処理の表示を、それぞれマルチウィンドウモードで表現した場合の一例を示している。すなわち、図１９は、検索要求入力部１１０による入力支援表示例とそれに対する検索要求の入力例であり、図２０は、関連データ取得部１２４による検索データの表示例とそれに対する関連データ指示の入力例であり、図２１は、検索結果出力部１３０による検索結果の出力例である。
【００９３】
［２］第２実施例
［２−１］構成
図２２は、本発明による類似情報検索装置の一実施例のシステムを示す構成図である。システムの中心に構成全体を制御する制御部２２００があり、この制御部２２００は、汎用マイクロコンピュータあるいは専用ＬＳＩなどで構成されている。そして、この制御部２２００には、入出力や記憶を受け持つ周辺装置として、キーボード入力部２２０１、表示部２２０２、印刷部２２０３、外部記憶部２２０４などが接続されている。また、図示していないが、制御部２２００には、入出力や検索を制御する下位の制御部が設けられており、これらの下位の制御部は、ＲＯＭなどのファームウェアやソフトウェアなどによって構成されている。
【００９４】
そして、図２２のシステムにおいては、本発明による類似情報検索機能を実現する手段として、まず、検索要求入力部２２１０、検索管理部２２２０、および検索結果出力部２２３０が設けられている。これらは、制御部２２００によって直接的に制御される機能部である。
【００９５】
また、検索管理部２２２０の下位の機能部として、関連キーワード生成部２２２１、検索式生成部２２２２、検索件数推定部２２２３、およびデータベース管理部２２２４が設けられている。
【００９６】
さらに、図中２２４０は、概念階層や連想ネットワークなどの背景知識を格納した背景知識格納部であり、この背景知識格納部２２４０は、ＲＯＭなどのファームウェア、あるいはハードディスク装置によって構成されている。また、図中２２５０は、検索対象となるデータを格納したデータベースであり、このデータベース２２５０は、ハードディスク装置によって構成されている。
【００９７】
以上のような機能部２２１０，２２２０，２２３０，２２２１〜２２２４のうち、検索要求入力部２２１０、検索管理部２２２０、および検索件数推定部２２２３は、それぞれ、次のように構成されている。
【００９８】
まず、検索要求入力部２２１０は、ユーザのキーボード入力部２２０１の操作に基づき、制御部２２００の制御の下で、ユーザによって設定された入力キーワードと入力キーワードの重要度からなる検索要求と検索結果の条件（検索件数の条件：検索最大数と検索最小数）とを入力する。
【００９９】
また、検索管理部２２２０は、検索パラメータを設定するとともに、関連キーワード生成部２２２１、検索式生成部２２２２、および検索件数推定部２２２３を使用して、試行錯誤的な検索を行う。すなわち、検索管理部２２２０は、検索パラメータを設定するとともに、関連キーワード生成部２２２１によって関連キーワードを生成させ、検索式生成部２２２２および検索件数推定部２２２３によって、ユーザから提示された検索件数が得られるような検索式を生成し、データベース管理部２２２４によって、検索を実行させる、という一連の処理を、試行錯誤的に繰り返す。検索件数推定部２２２３は、得られた検索式からこの検索式に対応する検索件数を推定する。データベース管理部２２２４は、これらの検索式生成部２２２２および検索件数推定部２２２３を用いて、ユーザによって入力された検索結果の条件、すなわち、検索最大数と検索最小数の間の検索件数が得られるような検索式を選別する。そして、データベース管理部２２２４は、このようにして選別された検索式のみを用いて、データベース２２５０内のデータの検索を実行する。
【０１００】
なお、他の各機能部、すなわち、検索結果出力部２２３０、関連キーワード生成部２２２１、および検索式生成部２２２２は、前述した実施例１の対応する各機能部１３０，１２１，１２２と同様に構成されている。
【０１０１】
［２−２］作用
［２−２−１］試行錯誤的な類似情報検索処理の概略
図２３は、本実施例のシステムによる試行錯誤的な類似情報検索処理の概略を示すフローチャートである。この図２３に示すように、試行錯誤的な類似情報検索処理に当たっては、まず、検索要求入力部２２１０により検索要求と検索件数の条件を入力する（ステップ２３１０）。次に、検索管理部２２２０により、二次記憶アクセスを伴わない試行錯誤による検索式の生成を行う（ステップ２３２０）。すなわち、前処理としての検索式の生成を探索的に行うことにより、できるだけ無駄な実検索を避けて検索速度の大幅な低下を防止する。続いて、検索管理部２２２０により、ステップ２３２０で生成された検索式を初期解として、実際に二次記憶のアクセスを伴う試行錯誤による検索式の生成と実行を行う（ステップ２３３０）。最終的に、検索結果出力部２２３０により、検索件数の条件を満足した段階で検索結果を出力する（ステップ２３４０）。
【０１０２】
［２−２−２］データと背景知識の構成
本実施例のデータベース２２５０および背景知識格納部２２４０には、前述した実施例１と同様に、図３に示すようなレコード３００と、概念階層３１０や連想ネットワーク３２０などの知識がそれぞれ格納されている。
【０１０３】
［２−２−３］検索要求の入力処理
図２４は、検索要求入力部２２１０による検索要求の入力処理（図２３のステップ２３１０）の一例を示す図であり、特に、表示部２２０２上での検索要求の入力内容表示例を示す説明図である。この図２４に示すように、検索要求入力部２２１０は、属性とその値（入力キーワード）とその重要度からなる検索要求と、検索最大数と検索最小数の値からなる検索件数の条件とを入力する。この例では、検索要求入力部２２１０は、ユーザに対し、表示部２２０２上で、「入力キーワードと重要度を入力して下さい」という入力支援を表示している。そして、この入力支援表示に対して、ユーザが、キーボード入力部２２０１を操作して、「属性１」に対して、入力キーワードを“苺”とし、その重要度を「０．７」とするとともに、「属性２」に対して、入力キーワードを“値段”とし、その重要度を「０．８」として検索要求を入力しており、この入力内容が、表示部２２０２上に表示されている。
【０１０４】
また、検索要求入力部２２１０は、ユーザに対し、表示部２２０２上で、「検索最大数と検索最小数を設定して下さい（デフォルトは  ４０，１０です）」という入力支援を表示している。そして、この入力支援表示に対して、ユーザが、キーボード入力部２２０１を操作して、検索最大数と検索最小数の値をそれぞれ「３０」、「１０」として入力しており、この入力内容が、表示部２２０２上に表示されている。この場合、検索最大数と検索最小数の値がユーザによって入力されない場合には、予め設定したデフォルト値である「４０」、「１０」が用いられることになる。そして、以上のような表示部２２０２上の表示内容が、ユーザによって確認されると、検索要求入力部２２１０は、入力内容を検索要求および検索件数の条件として入力する。
【０１０５】
［２−２−４］二次記憶アクセスを伴わない検索式の生成処理
図２５は、本実施例のシステムの中枢部である検索管理部２２２０による、二次記憶アクセスを伴わない主記憶上での検索式の生成処理（図２３のステップ２３２０）を詳細に示すフローチャートである。この二次記憶アクセスを伴わない検索式の生成処理は、検索パラメータの初期設定を行い（ステップ２５１０）、検索パラメータの最高値と最低値の差が停止条件を満たさない場合には（ステップ２５２０）、背景知識を使用し、検索パラメータＫの値をしきい値として、入力された入力キーワードに関連する関連キーワードを生成し（ステップ２５３０）、入力キーワードと関連キーワードより検索式を生成し（ステップ２５４０）、検索式の検索件数を実際のデータベース検索を行わずに推定し（ステップ２５５０）、推定された検索件数が、入力された検索最小数と検索最大数の間に入らない場合には（ステップ２５６０またはステップ２５７０）、検索パラメータＫを二分探索に似た手続きで変更し（ステップ２５８０またはステップ２５９０）、検索式を変更し続けるというものである。
【０１０６】
この検索パラメータＫは、検索条件という制約の強弱を表している。すなわち、まず、検索パラメータＫが「１」に近付く程、検索条件は厳しくなり、データベース２２５０における実際の検索件数も減少するという傾向を示す。また、検索パラメータＫが「０」に近付く程、検索条件は緩やかになり、データベースにおける実際の検索件数も増加するという傾向を示す。このように、検索パラメータＫは、制約不足・過剰制約の状態より脱するためのパラメータという意味を持つ。
【０１０７】
以下には、図２５を参照しながら、検索管理部２２２０による二次記憶アクセスを伴わない主記憶上での検索式の生成処理について、より詳細に説明する。
【０１０８】
まず、検索管理部２２２０は、検索パラメータＫを初期値ω（この場合、ω＝０．５）に設定し、検索パラメータの最低値と最高値をそれぞれ「０」と「１」に設定する（ステップ２５１０）。続いて、検索管理部２２２０は、検索パラメータの最高値と最低値の差が起動時に設定された定数ε（この場合、ε＝０．０１）よりも小さいという停止条件を満足するか否かを判断する（ステップ２５２０）。
【０１０９】
そして、このステップ２５２０において、停止条件を満足する場合には、この二次記憶のアクセスを伴わない検索式の生成処理の試行錯誤を終了する。これに対して、ステップ２５２０において、停止条件を満足しない場合、したがって、検索パラメータの最高値と最低値の差が定数ε以上である場合には、検索管理部２２２０は、続くステップ２５３０に進み、この二次記憶のアクセスを伴わない検索式の生成処理の試行錯誤を続行する。例えば、初期設定時において、検索パラメータの最高値が「１」、最低値が「０」である場合には、これらの値の差は１であり、定数ε＝０．０１より大きいため、ステップ２５３０に進むことになる。
【０１１０】
このステップ２５３０において、検索管理部２２２０は、関連キーワード生成部２２２１により、ユーザから入力された入力キーワードに関連するキーワードを関連キーワードとして生成させる。この関連キーワードは、検索パラメータをしきい値として、入力キーワードの近傍で探索され、生成される。さらに、検索管理部２２２０は、検索式生成部２２２２により、入力キーワードと関連キーワードをもとにブール論理式の形式を持つ検索式を生成させる（ステップ２５４０）。
【０１１１】
続いて、検索管理部２２２０は、検索件数推定部２２２３により、生成された検索式の検索件数を推定させる（ステップ２５５０）。この検索件数の推定は、例えば、以下のいずれかの方法ａ〜ｃで行われる。
ａ）統計情報を利用する。すなわち、関係データベースであれば、関係の組数、ある属性の異なる組の数、関係を格納しているページ数などを用いて、属性値の独立分散の仮定の下で計算する。
ｂ）検索結果の事例を利用する。すなわち、検索式あるいは検索時期が類似している検索結果の事例を用いて、その検索件数より類推する。
ｃ）検索件数推定関数を設定する。
【０１１２】
なお、以上のような方法のうち、方法ａは、商用のＲＤＢＭＳ（ｒｅｌａｔｉｏｎａｌ  ｄａｔａ  ｂａｓｅ  ｍａｎａｇｅｍｅｎｔ  ｓｙｓｔｅｍ）において一般的に採用されている方法であり、表ごとのタプル長とタプル数をある間隔でサンプリングしている。
【０１１３】
次に、検索管理部２２２０は、２つの条件分岐（ステップ２５６０とステップ２５７０）により、この推定検索件数が、検索最小数より大きく検索最大数より小さい範囲内にあるか否かを判断する。そして、ステップ２５６０において、推定検索件数が、検索最小数より小さい場合には、検索パラメータＫの値を検索パラメータの最高値に代入し、検索パラメータの最低値と検索パラメータＫとの間の中間値を検索パラメータＫに代入する（ステップ２５８０）。例えば、初期設定時において、検索パラメータＫが初期値「０．５」であり、検索パラメータの最低値と最高値がそれぞれ「０」と「１」である場合には、検索パラメータの最高値を「１」から「０．５」に変更し、検索パラメータＫを０．５から０．２５に変更することになる。
【０１１４】
逆に、ステップ２５７０において、推定検索件数が、検索最大数より大きい場合には、検索パラメータＫの値を検索パラメータの最低値に代入し、検索パラメータの最高値と検索パラメータＫとの中間値を検索パラメータＫに代入する（ステップ２５９０）。例えば、初期設定時において、検索パラメータＫが初期値｛０．５」であり、検索パラメータの最低値と最高値がそれぞれ「０」と「１」である場合には、検索パラメータの最低値を「０」から「０．５」に変更し、検索パラメータＫを「０．７５」に変更することになる。
【０１１５】
したがって、検索管理部２２２０は、このように、ステップ２５６０またはステップ２５７０において、推定検索件数が、検索最大数と検索最小数からなる検索件数の条件の範囲内に収まっていると判断した場合に、あるいは、ステップ２５２０において、前述の停止条件を満足すると判断した場合に限り、この二次記憶のアクセスを伴わない検索式の生成処理を終了することになる。
【０１１６】
［２−２−５］二次記憶アクセスを伴う検索式の生成・実行処理
図２６は、本実施例のシステムの中枢部である検索管理部２２２０による、二次記憶アクセスを伴う主記憶上での検索式の生成・実行処理（図２３のステップ２３３０）を詳細に示すフローチャートである。この二次記憶アクセスを伴う検索式の生成・実行処理は、前述した二次記憶アクセスを伴わない検索式の生成処理において設定された検索パラメータとその最低値および最高値を使用し、検索パラメータの最高値と最低値の差が停止条件を満たさない場合には（ステップ２６１０）、背景知識を使用し、検索パラメータＫの値をしきい値として、入力された入力キーワードに関連する関連キーワードを生成し（ステップ２６２０）、入力キーワードと関連キーワードより検索式を生成し（ステップ２６３０）、実際のデータベース検索を行って検索式の検索件数を求め（ステップ２６４０）、得られた検索件数が、入力された検索最小数と検索最大数の間に入らない場合には（ステップ２６５０またはステップ２６６０）、検索パラメータＫを二分探索に似た手続きで変更し（ステップ２６７０またはステップ２６８０）、検索式を変更し続けるというものである。
【０１１７】
この二次記憶アクセスを伴う検索式の生成・実行処理は、前述した二次記憶アクセスを伴わない検索式の生成処理と、次の点で異なる。すなわち、１）二次記憶アクセスを伴わない検索式の生成処理において設定された検索パラメータＫや最低値、最高値を初期化せずにそのまま使用する点、２）実際のデータベース検索を行う点、３）検索パラメータＫが停止条件を満たす場合でも、そのまま処理を終了せずに、検索件数が検索最小数より小さいか否かを判断し（ステップ２６９０）、検索件数が検索最小数より小さい場合には、検索パラメータの最低値を任意の定数αだけ減少させ（ステップ２７００）、検索件数が検索最小数より大きい場合には、検索パラメータの最高値を任意の定数αだけ増加させる（ステップ２７１０）、という点である。
【０１１８】
以下には、図２６を参照しながら、検索管理部２２２０による二次記憶アクセスを伴う主記憶上での検索式の生成・実行処理についてより詳細に説明する。まず、検索管理部２２２０は、検索パラメータの最高値と最低値の差が起動時に設定された定数ε（この場合、ε＝０．０１）よりも小さいという停止条件を満足するか否かを判断する（ステップ２６１０）。
【０１１９】
このステップ２６１０において、停止条件を満足する場合には、検索管理部２２２０は、実際のデータベース検索から得られた検索件数が検索最小数より小さいか否かを判断する（ステップ２６９０）。このステップ２６９０において、検索件数が検索最小数より小さい場合には、検索パラメータの最低値を任意の定数αだけ減少させ（ステップ２７００）、検索件数が検索最小数以上である場合には、検索パラメータの最高値を任意の定数αだけ増加させる（ステップ２７１０）。この場合、任意の定数αは、α＞εとなるように起動時に設定された値である。また、このように、ステップ２７００またはステップ２７１０において検索パラメータの最低値または最高値の変更を行った後は、再びステップ２６１０に戻る。
【０１２０】
そして、以上のような、ステップ２６９０、ステップ２７００、およびステップ２７１０からなる一連の処理を行うことにより、実際のデータベース検索の結果を検索パラメータに反映させることができる。すなわち、実際のデータベース検索の結果に基づいて、検索パラメータの最高値または最低値の値を増減させることにより、制約不足・過剰制約の状態を脱することができる。
【０１２１】
一方、ステップ２６１０において、停止条件を満足しない場合には、検索管理部２２２０は、関連キーワード生成部２２２１により、ユーザから入力された入力キーワードに関連するキーワードを関連キーワードとして生成させる（ステップ２６２０）。この関連キーワードは、検索パラメータをしきい値として、入力キーワードの近傍で探索され、生成される。さらに、検索管理部２２２０は、検索式生成部２２２２により、入力キーワードと関連キーワードをもとにブール論理式の形式を持つ検索式を生成させる（ステップ２６３０）。
【０１２２】
続いて、検索管理部２２２０は、データベース管理部２２２４により、生成された検索式に基づくデータベース検索を行わせる（ステップ２６４０）。次に、検索管理部２２２０は、２つの条件分岐（ステップ２６５０とステップ２６６０）により、この実際のデータベース検索によって得られた検索件数が、検索最小数より大きく検索最大数より小さい範囲内にあるか否かを判断する。そして、ステップ２６５０において、検索件数が、検索最小数より小さい場合には、検索パラメータＫの値を検索パラメータの最高値に代入し、検索パラメータの最低値と検索パラメータＫとの間の中間値を検索パラメータＫに代入する（ステップ２６７０）。逆に、ステップ２６６０において、検索件数が、検索最大数より大きい場合には、検索パラメータＫの値を検索パラメータの最低値に代入し、検索パラメータの最高値と検索パラメータＫとの中間値を検索パラメータＫに代入する（ステップ２６８０）。
【０１２３】
したがって、検索管理部２２２０は、このように、ステップ２６５０またはステップ２６６０において、検索件数が、検索最大数と検索最小数からなる検索件数の条件の範囲内に収まっていると判断した場合に限り、この二次記憶のアクセスを伴う検索式の生成・実行処理を終了することになる。ただし、実際には、検索最大数と検索最小数の間に実際の検索件数が収まらない場合があるため、一般的に、カウンタを設けて、検索管理部２２２０の処理ループの回数を制限する必要がある。
【０１２４】
［２−２−６］関連キーワードの生成処理
本実施例における関連キーワードの生成処理は、関連キーワード生成部２２２１によって、図７に示すような連想ネットワーク３２０や概念階層３１０を用いて、前述した実施例１と同様の手順により行うことができる。
【０１２５】
［２−２−７］検索式の生成処理
本実施例における検索式の生成処理は、検索式生成部２２２２によって、ユーザから入力された入力キーワードと、関連キーワード生成部２２２１で得られた関連キーワードを用いて、前述した実施例１と同様の手順により行うことができる。
【０１２６】
［２−２−８］検索結果の出力処理
図２７は、検索結果出力部２２３０による検索結果の出力処理（図２３のステップ２３４０）の一例を示す図であり、特に、表示部２２０２上での検索結果の出力内容表示例を示す説明図である。この図２７に示すように、検索結果出力部２２３０は、まず、「以下のデータが検索されました。」という検索終了報告と、」検索件数は２５件です。」という検索件数とを表示する。すなわち、図２４の検索要求の入力処理において検索最大数と検索最小数の値をそれぞれ「３０」、「１０」として入力したのに対し、この検索件数の表示は、実際の検索件数が２５件であったことを示している。次に実際に検索された情報をレコード単位で表示する。
【０１２７】
［３］他の実施例
なお、本発明は、前記実施例に限定されるものではなく、他にも多種多様の変形例を実施可能であり、それらはすべて本発明の請求の範囲に含まれる。さらに、本発明の装置に使用する各手段の具体的な構成は適宜選択可能であり、各手段による各種の処理の具体的な内容についても適宜選択可能である。
【０１２８】
例えば、前述した実施例１，２では、背景知識として、概念階層３１０と連想ネットワーク３２０を示したが、背景知識の表現形式はこれらに限定されるものではなく、キーワード間のマッチ度や距離を表すマトリックス（類似行列）や関数などの、キーワード間の関連度を表現する種類の知識である限り、全く同様に適用できる。
【０１２９】
また、前述した実施例１，２においては、属性−属性値のレコードが格納されたデータベースに対する属性毎のキーワードでの検索について説明したが、本発明の類似情報検索装置は、各種の形式のデータを格納したデータベースを検索するための装置として同様に適用可能である。例えば、文書が格納された文書ベースに対しても、検索式生成部１２２，２２２２で生成するＡＮＤ結合の検索式をＯＲ結合の検索式とし、検索管理部１２０，２２２０での検索パラメータの変更対象に入力キーワードを含めることにより、同様に適用可能である。
【０１３０】
一方、前述した実施例１において、関連性判断情報取得部である関連データ取得部１２４は、ユーザの検索意図として、関連データのみを取得し、関連データベース１５０に格納している。しかしながら、この実施例の変形例として、非関連データのみを取得することも可能であり、さらに、関連データと非関連データの両方を取得することも可能である。特に、関連データと非関連データの両方を取得して関連・非関連データベースに格納すれば、呼び出し率と精度の尺度の両面から推定することが可能となり、検索意図を反映した検索式をより高速に生成することが可能となる。
【０１３１】
この実施例１においてはまた、関連データベース管理部１２３および関連データベース１５０を、データベース管理部１２５およびデータベース１６０と独立した構成要素とし、関連データベース１５０にはデータベース１６０の一部のレコード３００を格納している。しかしながら、レコード３００の第１キー（プライマリーキー）のみを関連データまたは非関連データの指示情報として関連データベース１５０内に格納（例えば、ファイルとして構築）するだけで、データベース１６０内のレコード３００を同定することができる。したがって、データベース管理システムである関連データベース管理部１２３およびデータベース管理部１２５を二重に持つ必要はない。
【０１３２】
さらに、前述した実施例２においては、検索結果の条件として、入力キーワードの入力時に、検索要求入力部２２１０において、ユーザによって設定された検索最大数と検索最小数を入力し、この条件に基づいて、検索管理部２２２０で検索の成功、失敗を決定している。しかしながら、本発明において、このような検索結果の条件は、必ずしも入力キーワードの入力時に入力する必要はなく、暫定的な検索結果に対してユーザから対話的に成功（検索結果の条件を満足）、失敗（検索結果の条件を満足しない）の信号を得ることで、検索の成功、失敗を決定することも可能である。
【０１３３】
【発明の効果】
以上説明したように、請求項１〜８，１６〜２３に記載の発明は、ユーザによって設定された入力キーワードと背景知識に基づく関連キーワードを用いて検索式を生成し、この検索式に基づいて検索を実行し、この検索の実行によって得られた暫定的な検索結果がユーザの検索意図に沿わない場合には、ユーザの検索意図の情報である関連性判断情報を取得し、この情報に基づいて検索パラメータを変更し、新たな検索式を生成し、この検索式に基づいて再検索を実行するものである。したがって、検索速度を大幅に低下させることなく、ユーザとの対話によってユーザの検索意図を容易かつ正確に反映させながら、データの単純な背景知識を容易かつ正確に反映させて、試行錯誤的に有効な類似検索を効率よく実行することができる。
【０１３４】
また、請求項９〜１５，２４〜３０に記載の発明は、ユーザによって設定された入力キーワードと背景知識に基づく関連キーワードを用いて検索式を生成し、この検索式に基づいて検索を実行し、ユーザによって設定された検索結果の条件を満足する検索結果が得られない場合には、検索結果の条件に基づいて検索パラメータを変更し、新たな検索式を生成し、この検索式に基づいて再検索を実行するものである。したがって、検索速度を大幅に低下させることなく、ユーザによって設定された検索結果の条件を使用してユーザの検索意図を容易かつ正確に反映させながら、データの単純な背景知識を正確に反映させて、試行錯誤的に有効な類似検索を効率よく実行することができる。
【図面の簡単な説明】
【図１】本発明による類似情報検索装置のシステム構成の第１実施例を示すブロック図。
【図２】図１のシステムによる試行錯誤的な類似情報検索処理の概略を示すフローチャート。
【図３】図１のデータベース１６０に格納されているデータの例と、背景知識格納部１４０に格納されている知識の例を示す説明図。
【図４】図１の検索要求入力部１１０による入力支援表示例とそれに対する検索要求の入力例を示す説明図。
【図５】図１の検索管理部１２０による検索式の生成処理を示すフローチャート。
【図６】図１の関連データ取得部１２４による検索データの表示例とそれに対する関連データ指示の入力例を示す説明図。
【図７】図１の関連データベース１５０内に格納されているデータの例を示す説明図。
【図８】図１の背景知識格納部１４０に格納されている連想ネットワークの一例を示す説明図。
【図９】図１の関連キーワード生成部１２１による、定義１の関連度計算に基づく関連キーワードの生成処理を示すフローチャート。
【図１０】図１の関連キーワード生成部１２１による、定義２の関連度計算に基づく関連キーワードの生成処理を示すフローチャート。
【図１１】図１の関連キーワード生成部１２１による関連キーワードの第１生成例を示す説明図。
【図１２】図１の関連キーワード生成部１２１による関連キーワードの第２生成例を示す説明図。
【図１３】図１の背景知識格納部１４０に格納されている概念階層の一例を示す説明図。
【図１４】図１の関連キーワード生成部１２１による関連キーワードの第３生成例を示す説明図。
【図１５】図１の検索式生成部１２２による検索式の生成処理を示すフローチャート。
【図１６】図１の検索式生成部１２２による検索式の第１生成例を示す説明図。
【図１７】図１の検索式生成部１２２による検索式の第２生成例を示す説明図。
【図１８】図１の検索結果出力部１３０による検索結果の出力例を示す説明図。
【図１９】図１の検索要求入力部１１０による入力支援表示例とそれに対する検索要求の入力例を、マルチウィンドウモードで示す説明図。
【図２０】図１の関連データ取得部１２４による検索データの表示例とそれに対する関連データ指示の入力例を、マルチウィンドウモードで示す説明図。
【図２１】図１の検索結果出力部１３０による検索結果の出力例を、マルチウィンドウモードで示す説明図。
【図２２】本発明による類似情報検索装置のシステム構成の第２実施例を示すブロック図。
【図２３】図２２のシステムによる試行錯誤的な類似情報検索処理の概略を示すフローチャート。
【図２４】図２２の検索要求入力部２２１０による検索要求の入力例を示す説明図。
【図２５】図２２の検索管理部２２２０による、二次記憶アクセスを伴わない検索式の生成処理を示すフローチャート。
【図２６】図２２の検索管理部２２２０による、二次記憶アクセスを伴う検索式の生成・実行処理を示すフローチャート。
【図２７】図２２の検索結果出力部２２３０による検索結果の出力例を示す説明図。
【符号の説明】
１００，２２００…制御部
１０１，２２０１…キーボード入力部
１０２，２２０２…表示部
１０３，２２０３…印刷部
１０４，２２０４…外部記憶部
１１０，２２１０…検索要求入力部
１２０，２２２０…検索管理部
１２１，２２２１…関連キーワード生成部
１２２，２２２２…検索式生成部
１２３…関連データベース管理部
１２４…関連データ取得部
１２５，２２２４…データベース管理部
１３０，２２３０…検索結果出力部
１４０，２２４０…背景知識格納部
１５０…関連データベース
１６０，２２５０…データベース
２２２３…検索件数推定部
【図１】
0003621449.tif 000006
【図２】
0003621449.tif 000007
【図３】
0003621449.tif 000008
【図４】
0003621449.tif 000009
【図５】
0003621449.tif 000010
【図６】
0003621449.tif 000011
【図７】
0003621449.tif 000012
【図８】
0003621449.tif 000013
【図９】
0003621449.tif 000014
【図１０】
0003621449.tif 000015
【図１１】
0003621449.tif 000016
【図１２】
0003621449.tif 000017
【図１３】
0003621449.tif 000018
【図１４】
0003621449.tif 000019
【図１５】
0003621449.tif 000020
【図１６】
0003621449.tif 000021
【図１７】
0003621449.tif 000022
【図１８】
0003621449.tif 000023
【図１９】
0003621449.tif 000024
【図２０】
0003621449.tif 000025
【図２１】
0003621449.tif 000026
【図２２】
0003621449.tif 000027
【図２３】
0003621449.tif 000028
【図２４】
0003621449.tif 000029
【図２５】
0003621449.tif 000030
【図２６】
0003621449.tif 000031
【図２７】
0003621449.tif 000032