(57)【要約】      （修正有）【課題】検索システムの仕様の変更などにも容易に対応でき、且つ検索動作制御も容易かつ高速で行える情報処理システムを提供する。【解決手段】検索対象となる情報を記憶する検索対象記憶手段と、検索対象記憶手段に記憶される検索対象となる情報の中から有効情報を抽出する登録有効情報抽出手段と、登録有効情報抽出手段で抽出した検索対象に含まれる有効情報ごとの固有の桁を割り当て、検索対象となる情報を有効情報抽出手段で抽出した有効情報の有無を所定桁の情報の有無で識別可能な中間検索情報を生成する中間検索情報生成手段と、中間検索情報生成手段で生成した中間検索情報を検索対象記憶手段に記憶されている検索対象となる情報と対応付けて記憶する中間情報記憶手段とを備え、中間情報記憶手段に記憶された所定桁の情報を検索することにより所望の検索対象となる情報を特定可能とする。【選択図】図１
2014016751.tif 000002
【特許請求の範囲】
【請求項１】
検索対象となる情報群に対応する所定桁の情報を保持して該所定桁の情報を検索して前記検索対象を抽出可能な情報処理システムであって、
検索対象となる情報を記憶する検索対象記憶手段と、
前記検索対象記憶手段に記憶される前記検索対象となる情報の中から有効情報を抽出する登録有効情報抽出手段と、
前記登録有効情報抽出手段で抽出した前記検索対象に含まれる有効情報ごとの固有の桁を割り当て、前記検索対象となる情報を前記有効情報抽出手段で抽出した有効情報の有無を所定桁の情報の有無で識別可能な中間検索情報を生成する中間検索情報生成手段と、
前記中間検索情報生成手段で生成した中間検索情報を前記検索対象記憶手段に記憶されている検索対象となる情報と対応付けて記憶する中間情報記憶手段とを備え、
前記中間情報記憶手段に記憶された所定桁の情報を検索することにより所望の検索対象となる情報を特定可能とすることを特徴とする情報処理システム。
【請求項２】
更に、前記検索対象記憶手段に記憶されている情報群より所望の情報を検索するための検索情報を取得する検索情報取得手段と、
検索情報取得手段で取得した検索情報の中から有効情報を抽出する検索有効情報抽出手段と、
前記検索有効情報抽出手段で抽出した有効情報毎に前記中間検索情報生成手段で抽出した登録有効情報に対応する有効情報に割り当てられた固有の桁を割り当て前記検索情報に含まれる有効情報の有無を所定桁の情報の有無で識別可能な検索キーワードを生成する検索キーワード生成手段と、
前記中間情報記憶手段に記憶されている中間検索情報から前記検索キーワード生成手段で生成した検索キーワードの含まれる中間検索情報を検索し対応する前記検索対象記憶手段に記憶されている検索対象となる情報を抽出する抽出手段と、
前記抽出手段で抽出した検索対象となる情報を検索結果として出力する検索結果出力手段とを供えることを特徴とする請求項１記載の情報処理システム。
【請求項３】
前記検索対象記憶手段は、検索対象となる情報を、当該情報の属する分野ごとに振り分けて、振り分けた分野ごとに記憶し、
前記中間情報記憶手段は前記検索対象記憶手段に振り分けられて記憶されている分野ごとに対応つけて前記中間検索情報を対応分野ごとに記憶することを特徴とする請求項２記載の情報処理システム。
【請求項４】
前記抽出手段は、検索分野の前記振り分けられた中間検索情報群から対応する検索キーワードに該当する中間検索情報が抽出されない場合には他の分野に移行して移行した分野の中間検索情報を検索することを特徴とする請求項３記載の情報処理システム。
【請求項５】
前記検索情報及び検索対象の分野の特定情報の入力は、指示入力ガイダンスを出力して該ガイダンスに対応して入力された情報とすることを特徴とする請求項２乃至請求項４のいずれかに記載の情報処理システム。
【請求項６】
前記抽出手段は、前記中間情報記憶手段に記憶されている中間検索情報のうち抽出される可能性が高いと判断した中間検索情報群を予め選択しておき、選択した中間検索情報を最初に検索対象とすることを特徴とする請求項１又は請求項５の何れかに記載の情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、種々の情報の中から所望の情報を簡単且つ確実に検索することができる情報処理システムに関するものである。  
【背景技術】
【０００２】
種々の情報の中から所望の情報を検索する従来の手続型プログラミングによる検索システムは、以下に述べるように、トリガー条件の煩雑さ、シーケンス処理（プログラムフロー）の煩雑さ、動作レベルの煩雑さが避けられなかった。
【０００３】
従来の手続型プログラミングにより検索システムを構築しようとしたときには、検索のためのトリガー条件の設計の際に、システム設計が重要であり、システム全体の動きを見ながら、全体の状態図を作り、関連しているところの共通資源、例えば共通に使うフラグやレジスタを設定する必要がある。更に、システムの状態の遷移図を作り、どういう状態の時、どのプログラムを起動するかのタイミングをすべて把握してから検索プログラムを作成しなければならなかった。
【０００４】
又、プログラムフロー（シーケンス）設計時においても、部品の共通化の問題とファイル設計の煩雑さが特に問題であった。プログラムの拡張性や共通化を考慮に入れると、プログラムのフローチャート設計の良否は如何に再利用可能な関数を用意できるかにかかっている。
【０００５】
更に、ファイル設計においては、検索対象たるファイルとして、通常外部磁気ディスク装置のような二次メモリが使われるため、二次メモリに入っているデータを検索してかつ検索結果を素早く表示するためには、ファイルのアクセスを最小とする必要があり、予めデータを構造化してメモリに格納しておく必要がある。そのためには、検索対象となるデータ、即ち、入力データの種類と性質を全て把握し、さらにそれをどのように記憶し、どのように出力するかを明確化してからファイル設計を行わなければならなかった。これを動作レベルと呼ぶ。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２９９１５９号公報
【特許文献２】特開２００９−２４４９５０号公報
【非特許文献】
【０００７】
【非特許文献１】Ａｒｔｉｆｉｃｉａｌ  Ｇｅｎｅｒａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ（Ｃｏｇｎｉｔｉｖｅ  Ｔｅｃｈｎｏｌｏｇｉｅｓ）Ｂｅｎ  Ｇｏｅｒｔｚｅｌ，Ｃａｓｓｉｏ  Ｐｅｎｎａｃｈｉｎ  （２００６）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来の検索のためのトリガー条件の設計では、把握が不十分であると検索プログラムそのものが正しく動作しないことにもなる。
【０００９】
この設計は最終的にシステムの性能に大きく影響するので、設計は慎重に行わなければならなかった。当然出来上がったシステムの性能が満足いくものでなければ、この共通資源の設定のやり直しと状態遷移図の作成をやり直さなければならず、プログラムの再設計とならざるを得なかった。このため、ユーザからの改造要求、例えば仕様の追加や変更要求がでたときに、ほとんどの場合、検索プログラムの作り変えになる可能性が高かった。
【００１０】
又、シーケンス（プログラムフロー）設計時において、関数化したプログラムを作成しても、開発者が使う時はその関数の使い方や条件が既に頭の中にあり、利用する時にその条件を思い出すだけで良いが、他人の作ったプログラムの場合はその目的、使い方、パラメータの条件などが全て明確になっていなくてはならず、共通使用に耐えるプログラムの開発は難しかった。
【００１１】
更に、従来の一般的なファイル設計では、いったん設計したものは容易に変更、拡張などが困難であり、各仕様の把握が不十分な場合や、途中で仕様が変更となるような場合には、ファイル設計をやり直さなければならないことも多かった。
【００１２】
更に、検索結果の出力データは表示画面等へ画面表示する場合が多く、画面表示に要する時間を短縮する必要から、ファイル設計は出力フォーマットに従った読み出しが速くなるように設計せざるを得ない。これがデータの登録制御を複雑化してしまい、途中のデータ加工のための処理の効率悪化にもなっていた。
【００１３】
更に、システム構成が複雑にならざるを得ないため、出来上がった際のシステムテストも条件が多く、多大の時間が掛かかっていた。
【００１４】
本発明は、かかる課題を解決することを目的としてなされたもので、検索システムの検索元データのファイリングが容易で且つ仕様の変更などにも容易に対応でき、且つ検索動作制御も容易かつ高速で行える情報処理システム及び情報処理方法を提供する。かかる目的を達成する一手段として以下の構成を備える。
【００１５】
即ち、検索対象となる情報群に対応する所定桁の情報を保持して該所定桁の情報を検索して前記検索対象を抽出可能な情報処理システムであって、検索対象となる情報を記憶する検索対象記憶手段と、前記検索対象記憶手段に記憶される前記検索対象となる情報の中から有効情報を抽出する登録有効情報抽出手段と、前記登録有効情報抽出手段で抽出した前記検索対象に含まれる有効情報ごとに固有の桁を割り当て、前記検索対象となる情報を前記有効情報抽出手段で抽出した有効情報の有無を所定桁の情報の有無で識別可能な中間検索情報を生成する中間検索情報生成手段と、前記中間検索情報生成手段で生成した中間検索情報を前記検索対象記憶手段に記憶されている検索対象となる情報と対応付けて記憶する中間情報記憶手段とを備え、前記中間情報記憶手段に記憶された所定桁の情報を検索することにより所望の検索対象となる情報を特定可能とすることを特徴とする。
【００１６】
そして例えば、更に、前記検索対象記憶手段に記憶されている情報群より所望の情報を検索するための検索情報を取得する検索情報取得手段と、検索情報取得手段で取得した検索情報の中から有効情報を抽出する検索有効情報抽出手段と、前記検索有効情報抽出手段で抽出した有効情報毎に前記中間検索情報生成手段で抽出した登録有効情報に対応する有効情報に割り当てられた固有の桁を割り当て前記検索情報に含まれる有効情報の有無を所定桁の情報の有無で識別可能な検索キーワードを生成する検索キーワード生成手段と、前記中間情報記憶手段に記憶されている中間検索情報から前記検索キーワード生成手段で生成した検索キーワードの含まれる中間検索情報を検索し対応する前記検索対象記憶手段に記憶されている検索対象となる情報を抽出する抽出手段と、前記抽出手段で抽出した検索対象となる情報を検索結果として出力する検索結果出力手段とを供えることを特徴とする。
【００１７】
また例えば、前記検索対象記憶手段は、検索対象となる情報を、当該情報の属する分野ごとに振り分けて、振り分けた分野ごとに記憶し、前記中間情報記憶手段は前記検索対象記憶手段に振り分けられて記憶されている分野ごとに対応つけて前記中間検索情報を対応分野ごとに記憶することを特徴とする。
【００１８】
さらに例えば、前記抽出手段は、検索分野の前記振り分けられた中間検索情報群から対応する検索キーワードに該当する中間検索情報が抽出されない場合には他の分野に移行して移行した分野の中間検索情報を検索することを特徴とする。
【００１９】
また例えば、前記検索情報及び検索対象の分野の特定情報の入力は、指示入力ガイダンスを出力して該ガイダンスに対応して入力された情報とすることを特徴とする。
【００２０】
さらに例えば、前記抽出手段は、前記中間情報記憶手段に記憶されている中間検索情報のうち抽出される可能性が高いと判断した中間検索情報群を予め選択しておき、選択した中間検索情報を最初に検索対象とすることを特徴とする。
【発明の効果】
【００２１】
本発明によれば、検索システムの仕様の変更などにも容易に対応でき、且つ検索動作制御も容易かつ高速で行える情報処理システムを提供する。
【図面の簡単な説明】
【００２２】
【図１】本発明に係る一発明の実施の形態例の検索システムの構成を示すブロック図である。
【図２】本実施の形態例の検索対象情報の生成及び登録処理の概要を説明するためのフローチャートである。
【図３】本実施の形態例のデータ検索処理の概要を説明するためのフローチャートである。
【図４】本実施の形態例の有効語抽出及び中間検索データ処理を説明するための図である。
【発明を実施するための形態】
【００２３】
以下、本発明に係る一発明の実施の形態例を、図面を参照して詳細に説明する。以下に説明する実施の形態例では、検索プログラムを「オブジェクト」形式のモジュール（オブジェクトモジュール）で作成し、オブジェクトモジュール間のやり取りは「メッセージ」形式のモジュール（メッセージモジュール）というもっと人間に近い処理方法、見方を変えて言えば、大変曖昧な処理方法を採用する。
【００２４】
これにより、各オブジェクトモジュールをサブルーチンのように動作させ、しかもこのオブジェクト間の各種制御をコンピュータ筐体の中のコモンバスを介して行う場合に限定せずに一般のネットワーク回線を介して動作させることで分散のメッセージ・パッシングを内部のメッセージ・パッシングと同じ取り扱いとすることができる。
【００２５】
このため、操作者の操作する装置（通信装置あるいは端末装置など）を一次メモリと見なし、他のコンピュータ端末を二次メモリと見なすことが可能となり、新しいスワッピング処理を提供する。従って、クライアント／サーバを超える分散処理を実現している。
【００２６】
この結果、立ち上げ時に一箇所のコンピュータのみにプログラムをインストールしておけばよいことにもなる。そして、リモートでスワッピングする時にこの検索プログラムを、二次メモリに記憶させておくことで、プログラムのダウンロード制御と同じ制御データで他のコンピュータにもプログラムを格納して動作させることが可能となる。
【００２７】
本実施の形態例では、このリモート・スワッピングを採用することで、同じネットワークに接続される他のコンピュータに格納されているプログラムを使用することを可能としている。
【００２８】
この場合にはメッセージ・パッシングでデータを渡し、他のコンピュータで処理してもらえば自分の装置にプログラムをスワッピングすることなく所望のプログラムを実行、処理することが可能となる。
【００２９】
このリモート・メッセージ・パッシングの機能は、特に、容量の小さい端末、例えば移動体通信の端末などに対して強烈な武器となる。さらに、他のコンピュータや端末装置にあるデータをその他のコンピュータや端末装置のメソッドで処理したり、その逆に、他のコンピュータや端末装置のメソッドをその他のコンピュータや端末装置に持って来てデータを処理することも可能とする。この機能は特に分散化されている各種データベースの構造を決めるリンクデータを一つのコンピュータや端末装置に持って来て取りまとめるという働きを実現させる時に大いに役立つ。
【００３０】
本実施の形態例によれば、それぞれ異なったデータ構造を持つデータベース群、例えば、ＣＯＤＡＳＹＬ型データベース、リレーショナル型データベース、オブジェクト指向データベースなどの異なった種類のリンク構造を持つデータベースを一つにまとめる場合であっても、また、各社の異なったＤＢシステムのリンクデータのみを取り扱うことで全てのデータフォーマットにあわせることが可能であり、データベースの構造を示すメッセージ・パッシングを作成するのみで足りる。又、各社の異なったＤＢシステムのリンクデータのみを取り扱うことで、全てのデータフォーマットを合わせることが可能となる。
【実施例】
【００３１】
以下、順次具体的に説明を行う。
＜人間に近い処理の実現＞
本実施の形態例では、先ず、検索端末の操作者（検索者）との間で人間の言葉と同じようなコミュニケーションを実現している。言葉一つ一つが「言葉の定義」と「メソッド」、即ち「振る舞い」から出来ていると見なし、完全カプセル化の部品として取り扱う。ここで、完全カプセル化の超部品とは、普通のプログラムを実行するときにオブジェクトのカプセル化の構造で行うことができる部品化方法を言う。
【００３２】
即ち、「言葉」を「言葉の定義」＋「メソッド（プログラムの実行のための「プログラム」＋「仕様」を含む。）」＝「振る舞い」としてとらえ、完全カプセル化を実現している。この言葉（単語）に意味が付与されているものを「名辞」と称する。
【００３３】
メッセージ・パッシングのシンタックスは「名辞」で出来ることから人間のコミュニケーションと同じシンタックスにするため、会話の内容を「有効語」とそれ以外とにわけ、「有効語」のみをコミュニケーション対象とすることができる。文章であってもコミュニケーション対象は「有効語」のみ抽出し、その他はすべて無効入力として破棄する。
【００３４】
これにより、キーワード（ＫＷ）対話を成り立たしている。つまり、文法の誤り文、片言文、舌足らず文、単語の綴り誤りなどが有っても、影響を最小限に抑えることを可能とし、正確な文章とほぼ同様に取り扱える様にしている。
【００３５】
さらに、有効語のみ取り扱うことから、経験則の知識（文そのもの、文脈）が存在するかどうか（つまり、そのクラスで意味があるかどうか）をもチェックできる。
【００３６】
例えば、舌足らず文においても、経験則の知識がある（意味のある会話）と分かった後に処理することにより、問題なく処理できる。特に、単語の綴りミスが含まれる場合の処理等に有効である。
【００３７】
［検索システム構成］
先ず、本実施の形態例の検索システムの構成を図１のシステム構成図を参照して以下に説明する。図１のシステムは、全てが一カ所に設置されていても、あるいはまったく異なる複数の場所に分散して設置されていても良い。
【００３８】
図１において、１０００がパンフレットやカタログ、観光案内等の登録情報（検索対象となる情報）であり、印刷されたイメージ情報、電子データ（キャラクタデータ）、両者の混在情報など、情報の形式にはとらわれない。
【００３９】
１１０は公衆ネットワーク網７００とのインタフェースを司るネットワーク制御部であり、例えばネットワーク網７００に接続可能な他の通信端末、例えば検索端末６１０，６２０などからの検索を受け付けることが可能である。又、検索端末よりの検索を受け付けると、検索制御部５００を介して検索処理を行うことになる。
【００４０】
１２０は検索対象情報を取り込み、該当するシーン別にデータベースに登録すると共に、登録情報（検索対象情報）の分析を行う分析部である。分析部１２０は、検索対象情報を取り込む登録情報取込部１２１、登録情報取込部１２１で読み込んだ登録情報の中の文章情報を抽出し、詳細を後述する有効語抽出処理を行なう有効語抽出部１２２、有効語抽出部１２２で抽出した有効語から名辞化処理を行ない、知識情報を生成する知識情報生成部１２３、中間検索データを生成する中間検索データ生成部１２４等を備えている。
登録情報取込部１２１は、検索対象情報１０００を取り込み、取り込んだ情報（単語〜文章〜文書〜図〜動画）をＩＤ化し、同じサイズのデータとして取り扱える様にしている。
更に登録情報取込部１２１は、検索対象情報１０００から２種類の知識データベース登録情報を取り込んでいる。第１には検索対象情報１０００を大人の知識（サロゲイト）として取り込み、知識データベースＡ３００に登録し、第２には子供の知識（仮サロゲイト）として取り込み、知識データベースＢ４００に登録している。
ここで、登録情報取込部１２１が子供の知識（仮サロゲイト）情報として取り込んだ場合には、検索対象情報１０００を、情報を生成したプログラムの各種フォーマットのタグを外したのみの生データをそのまま取り込み、有効語抽出部１２２では取り込んだ情報から有効語を抽出し、知識情報生成部１２３では、プロダクションルールに従ってＩＤ化した文書・文章を知識データベースＢ４００に登録する
ＩＤ化したデータとして同じサイズのデータとして取り扱うことが可能であることから、時にマルチメディア情報の取り扱いが容易なものとなっている。
一方、大人の知識（サロゲイト）情報として取り込んだ場合には、有効語抽出処理は同じように行われるが、知識情報生成部１２３では有効語抽出部１２２で抽出した有効語に対してＡＶ化処理、有効語（Ｖ）に意味的処理として概念（Ａ）をくっ付ける処理、を行って一次検索データを生成すると共に知識データベースＢ４００にシーン毎に登録し、同じく中間検索データ生成部１２４で中間検索データの生成を行う。  例えば、登録情報は知識化され構造上のシーン（分野）毎にまとめられて知識データベースＢ４００に登録される。同時に単語上でまとめられたのが中間リンク検索データ２００であり、シーン上でまとめられたのが一次検索データである。
【００４１】
有効語抽出部１２２では、検索対象情報の中の有効語を抽出する。この有効語は、文章中の単独で固有の意味を有している単語であり、助詞や接続語等の意味を含めて有効語処理を行う。有効語処理した結果情報は予め中間検索データベース２００に登録しておき、知識情報の生成時に割り当てたビット域情報も付属情報として中間検索データベース２００に登録更新しておく。これにより２度目以降の有効語抽出処理において中間検索データベース２００を参照することでビット域情報の割り当て処理の簡略化が可能である。
【００４２】
有効語に対してそれぞれ割り当てられたビット位置（有効語に割り当てられた所定桁）は、有効語毎に固有の位置としても、分野ごとの有効語ごとに異なる位置としてもよい。
知識情報生成部１２３では、第２の認識処理（大人の認識処理）として、業界分野毎に分類された文書毎の観点を抽出し、この「観点」をメタデータとしてＡＶ化処理し、知識データベースＡ３００を生成する。又、第１の認識処理（子供の認識処理）として、文書・文章を整理し、有効語（単語）の含まれている文書と文章そのものを、ＩＤを付与してファイル化し知識データベースＡを生成するプロダクションルールの作成を行っている。  
【００４３】
２００は知識データベースＢ４００に登録されている知識情報に含まれる有効語と当該有効語に割り当てられている桁情報を保持し、有効語をキーワードとして知識情報を検索可能とするための中間検索データベースである。又、各分野別に知識データベースＢ４００に登録されている知識データに対応付けした中間検索データを登録する。中間検索処理においては、情報量の多い知識データを検索するのではなく、知識データを所定ビットのデータとして表した中間検索データを検索するため、効率の良い検索処理が実現する。
中間検索データ生成部１２４では、情報のシーン（分野）の意味まで分析するので、登録情報量によっては膨大な量となるので、磁気ディスク上に登録することが望ましい。
【００４４】
１２４は中間検索データ生成部であり、知識情報生成部１２３で生成した知識情報から中間検索データを生成して、知識データベースＢ４００に登録されている対応する検索対象情報と関連付けて中間検索データベース２００に分野別に登録する。  
【００４５】
２５０は一次検索データ（キャッシュデータ）記憶部であり、一次検索データ管理部２６０の管理の基で中間検索データベース２００に記憶されている中間検索データの中から検索される可能性が高いと予想される中間検索データを抽出してキャッシュデータとして分野ごとに記憶している一次検索データ記憶部である。
【００４６】
例えば、一次検索データ記憶部２５０には１０００件から５０００件程度の検索対象情報分の中間検索データを登録する。本実施の形態例では、分野別に検索データを登録しているため、検索する分野があっていればこの程度のデータを検索するのみでほとんどの要求に応えることができる。
【００４７】
後述する検索処理においては、まずこの一次検索データ記憶部２５０に記憶されている一次検索データ（キャッシュデータ）を調べ、対象が抽出されないときに中間検索データベース２００の検索を行う。
【００４８】
２６０は一次検索データ管理部であり、一次検索データ記憶部２５０に記憶される一次検索データの更新管理を行っている。具体的には、シーン（分野）別に中間検索データのヒット履歴を調べ、ヒット率の高い中間検索データを選択して選択したデータのインデックス情報を一次検索データ（キャッシュデータ）として登録する。又、もっとも最近にヒットした所定数の中間検索データのインデックス情報も選択して登録する。
シーン（分野）が変われば（又は取り扱う情報の概念が変われば）、そのシーン（分野）に合わせて一次検索データを置き換えてシーン（分野）に追従できる様に制御する必要がある。このための動きがシーン（分野）切り替えであり、シーン（分野）情報の退避／スワッピングを行う。
【００４９】
３００は知識データベースＡであり、各シーン（分野）別にＩＤ化された文書・文章を登録する。この知識データベースＡ３００は、マルチメディア情報を容易に取り扱えるようにするためのデータベースであり、単語の様な小さな情報もドキュメントや動画の様な膨大な情報量の情報であっても、ＩＤ化した情報として同じように取り扱うことができるためである。
【００５０】
また４００は検索対象である登録情報を記憶する知識データベースＢであり、シーン（分野）毎の検索対象情報をそれぞれ記憶する。なお、情報が複数のシーン（分野）内容にまたがる場合には、特定の一のシーン（分野）に情報を登録し、他のシーン（分野）からも関連付けてアクセスできるようになっている。
【００５１】
５００は詳細を後述する検索処理のための検索制御部であり、例えば検索端末５１０からの検索指示や検索情報を受け取る検索情報入力部５０１、検索情報入力部５０１で入力した検索情報中の有効語を抽出する有効語抽出部５０２、有効語抽出部５０２で抽出した有効語から中間検索データベース２００を参照して対応する桁情報を獲得して検索キーワードを表すビット列を生成し、検索キーワードを生成する検索キーワード生成部５０３、検索端末操作者に対する検索情報の入力や検索に必要な指示入力のガイダンスを出力し、検索端末操作者と会話形式でのコミュニケーションを実現させるガイダンス制御部５０４等を備えている。
【００５２】
検索制御としては、検索キーワード生成部５０３で生成した検索キーワードを基に一次検索データ記憶部２５０に記憶されている一次検索データ（中間検索データ）を検索し、検索データに含まれる有効語が全て、あるいは予め定められた割合以上の有効語が存在する中間検索データを抽出する。
【００５３】
ここで、一次検索データ記憶部２５０に登録されている当該シーン（分野）のデータ中に条件を満たす中間検索データがない場合には検索対象を広げて中間検索データベース２００の当該シーン（分野）の中間検索データの検索を行う。
【００５４】
ここでも条件を満たす中間検索データはなかったときには、検索したシーン（分野）が適切でなかった可能性があるため、ガイダンス制御部５０４から、会話形式で現在のシーン（分野）に近い他のシーン（分野）か否かの問いかけを行うなど、言葉を換えて他の検索情報の入力を求めるなどして、異なる他のシーン（分野）の検索に移行する処理を行う。
【００５５】
又、５５０は検索プログラム提供部であり、接続されている検索端末又はネットワーク制御部１１０を介したネットワークに接続されている端末装置よりの要求に従って検索プログラム登録部５６０に登録されている検索プログラムをダウンロードする制御を行う。
【００５６】
５６０は本実施の形態例の検索システムを制御して検索処理を行うためのプログラムが登録されている検索プログラム登録部である。ここには、例えば携帯端末で実行可能な検索プログラムや、パソコン端末で実行可能な検索プログラムなど種々の端末に対応可能に構成されている。
【００５７】
本実施の形態例では、検索プログラムはオブジェクトというモジュールで作成し、オブジェクトモジュール間のやり取りはメッセージ形式であるため、やりとりを内部バスや閉鎖的なネットワークに限定せず、オープンなネットワークを介して各オブジェクトモジュールをサブルーチンのように動作させることができる。
【００５８】
そして、検索端末は、プログラム提供部５５０から検索プログラム登録部５６０に登録されている検索プログラム中の自装置の仕様に合致する検索プログラムを受け取り、自装置内にダウンロードしてインストールしておく。又は、検索端末からＤＶＤプログラムディスク、ＣＤプログラムディスクなどをアクセスして検索プログラムをダウンロードしてもよい。
【００５９】
検索端末にインストールされる検索プログラムでは、会話形式で検索制御部５００よりの検索制御ガイダンスの受け取り及び操作者への出力を行うと共に、操作者よりの検索指示データ等の検索に必要なデータの受け付け及び検索制御部５００への出力制御などを可能としている。
【００６０】
［検索対象情報の生成］
次に図２を参照して以上の構成を備える本実施の形態例の検索システムにおける分析部１２０などによる検索対象情報の生成及び登録処理を説明する。図２は本実施の形態例の検索対象情報の生成及び登録処理を説明するためのフローチャートである。
【００６１】
本実施の形態例では、検索対象となる情報を全て１つの情報として取り扱うのではなく、一定のシーン（分野）毎に分け、グループ単位で登録を行い、グループ単位で検索を行う。特定のグループ内に検索対象が抽出できないときに他のシーン（分野）に検索対象を移して検索を行う。これにより検索対象を自動的に絞り込むことができる。
【００６２】
そして、検索処理においても検索対象となる情報に対して直接検索を行うのではなく、検索対象となる情報を予め分析部１２０の有効語抽出部１２２で解析して有効語のみを抽出し、知識情報生成部１２３で抽出した有効語が中間検索データベース２００に登録されている場合には割り当てられた桁位置にビットと立て、検索対象となる情報（文章）をビット列として表す。このビット列を以下「中間検索データ」と言う。
【００６３】
ここで、抽出した有効語が中間検索データベース２００に登録されていない有効語である場合には重み付け処理を行い、特定桁の１ビットを割り当て、この桁情報を付属情報として未登録の有効語情報を未登録有効語情報として中間検索データベース２００に登録する。なお、この有効語情報が、登録情報読取部１２１が読み取った有効語に含まれている場合には当該未登録有効語情報の属性データと共に中間検索データベース２００及び知識データベースＢ４００に登録する
【００６４】
以上の検索用ファイル作成するために、先ず図２のステップＳ１０１において、パンフレットやカタログなどの登録すべき情報があると、検索対象となるこの登録情報を登録情報取込部１２１で取り込む。例えば、情報がイメージ情報である場合には、そのままイメージ情報として取り込むと共に、情報中の文字情報部分を抽出して対応するキャラクタコードに変換し、共に登録情報とする。
【００６５】
ステップＳ１０１で登録情報を読み込むと、ステップＳ１０３に進み、有効語抽出部１２２が登録情報に含まれるキャラクタ情報中の単語を分解し、上述した有効語抽出処理で有効語のみを抽出する。    
【００６６】
次にステップＳ１０５において、登録情報がどのシーン（分野）の情報であるかを選択し、選択した分野の当該登録情報を登録し、検索対象とする。このシーン（分野）の選択は、予め情報の特定の箇所にシーン（分野）情報を記載しておいてこれを解析しても、ガイダンスに従った登録操作者のシーン（分野）選択指示入力を監視し、指示入力があったときに指示に従ってシーン（分野）選択をおこなっても、あるいはいくつかのキーワードが抽出されるかによって属するシーン（分野）の分野を自動特定しても良い。
【００６７】
例えば、情報が飲食店に関する情報であれば、まず飲食店情報に分類し、和食系か、洋食系か、中華系か、エスニック系、無国籍系か、麺系かなどに分類する。
【００６８】
その後必要に応じて和食は、例えば、すしか、天ぷらか、懐石料理か、焼き鳥、すき焼きなどの肉系か、魚料理か、おでんか、地方料理か等に分類する。麺類の情報である場合には、例えば、そばか、うどんか、中華そばか、パスタ系か等に分類する。
【００６９】
この分類にあっては、一つの情報が複数の分野にまたがることを許容する。このため、例えば、中華系でありながら麺系の中華そばでもある場合などがある。この分類は、あまり広範囲であると検索対象数が多くなってしまうし、狭い範囲に限ると検索分野を変える頻度が上がり、かえって検索制御が煩雑になることにもなる。このため、検索対象の情報量に応じて対象分類の範囲を変更することは望ましく、検索頻度の少ない分野はある程度広範囲の情報を検索範囲とできる。
【００７０】
ここで、先に抽出した有効語が当該シーン（分野）の既登録の有効語でない場合には当該有効語及び他の有効語が全て、あるいは一定割合以上既登録であるシーン（分野）があるか否かを調べる。当該有効語及び他の有効語が全て既登録であるシーン（分野）がある場合にはそのシーン（分野）の情報か否かを今一度判断し、登録するシーン（分野）の分野を変えた方が適切な場合にはその分野のシーン（分野）情報として取り扱う。
【００７１】
そして、続くステップＳ１０７で知識情報生成部１２３が知識情報の生成処理を行う。知識情報生成処理では、子供の認識処理を行って生成した知識データを知識データベースＡＢ４００に登録すると共に大人の認識処理を行って生成した知識データを知識データベースＡ３００に登録する。
【００７２】
登録すべきシーン（分野）分野を変えない場合、あるいは他のシーン（分野）分野に該当する有効語群がない場合には既登録されていない有効語に対して新たな桁のビットを割り当てる。
【００７３】
知識情報を生成したらステップＳ１０９に進み、中間検索データ生成部１２４において中間検索データの生成処理を行ない、中間検索データを生成する。抽出した有効語がすでに中間検索データベース２００に登録されており、当該登録情報の属するシーン（分野）の既登録情報の有効語である場合にはその有効語に割り当てられたビットを「１」にした中間検索データを生成する。  
【００７４】
次にステップＳ１１１で、生成した中間検索データを登録情報と関連付けて中間検索データベース２００のシーン（分野）別のデータファイルに登録する。中間検索データは、ステップＳ１０７で生成した知識データに属性情報、有効信号を付加したデータである。属性情報としては、例えば所属するシーン（分野）特定情報、検索ヒット履歴、対応する登録情報との関連付け情報、一次検索データ記憶部２５０への登録可否情報等が考えられる。
【００７５】
次にステップＳ１１３で決定したシーン（分野）名を、中間検索データベース２００に追加登録する。
【００７６】
そして続くステップＳ１１５において、中間検索データベース２００のシーン（分野）別のデータファイルに登録したデータが一次検索データ記憶部２５０に登録するべき中間検索データに該当する場合には当該データをキャッシュデータとして一次検索データ記憶部２５０に記憶する。
【００７７】
一次検索データ記憶部２５０に記憶するデータは、例えば検索ヒット履歴から、ヒット数の多いデータ、最近所定回分のヒットデータ、最新の登録データなど検索対象となる可能性が高いと認識したデータである。この場合には最新に知識データベースＢ４００に登録した登録情報は一次検索データ記憶部２５０への登録データとなる。
【００７８】
その後ステップＳ１１７において、次に登録する情報がまだあるか否かを調べ、登録情報がなければ登録処理を終了する。一方、登録する情報がある場合にはステップＳ１２０に進み、次の登録情報の入力準備を行う。例えば情報の読取装置に登録情報をセットしたり、必要に応じて分野特定情報の付加などを行う。その後ステップＳ１０１に戻り、次の登録情報の取り込みを行う。登録処理においては、例えば同じ分野の情報を連続して処理することにより、分野特定処理を簡略化することが望ましい。このようにして分野別の検索対象情報が蓄積されていく。
【００７９】
［検索制御の概要］
本実施の形態例では、指示入力された検索対象の情報（検索指示データ）をそのまま用いて検索するのではなく、又、検索するキーとなる情報もそのまま用いるのではなく、いずれの情報も検索処理に先立ってそれぞれ情報の中の有効語を抽出し、この有効語の組み合わせのみを検索対象とし、又検索のためのキーワードとする。これにより、検索指示が厳格でなくとも、一部不明瞭であっても、確実に検索対象を特定できる。
【００８０】
シーン（分野）別情報の登録された知識データベースＢ４００の登録情報を検索する検索処理を図３も参照して以下具体的に説明する。図３は本実施の形態例のデータ検索処理の概要を説明するためのフローチャートである。
【００８１】
検索をしようとする操作者は、まずステップＳ２００で、検索端末を検索制御部５００と接続状態として検索制御部５００のガイダンス制御部からのガイダンスに従って音声入力部又はキーボードなどから検索情報及び検索開始指示データ等を入力して、検索開始を検索制御部５００に送る。このため、システム側では、検索端末と接続状態となるとガイダンス制御部５０４から検索のためのガイダンスを送信し、会話形式に従った操作を促し、検索情報が送られてくるのを監視する。操作者による検索データの入力及び検索開始が指示され、検索端末からの検索指示が送られてくるとステップＳ２０１の処理に移行する。
【００８２】
ステップＳ２０１では、検索制御部５００の検索情報入力部５０１が、検索端末より送られてくる検索情報（検索指示データ）を取り込む。検索端末では、検索指示データが音声データである場合には音声解析を行いキャラクタデータ列に変換し、キーボードなどからのキャラクタデータによる指示である場合には、当該指示データをそのまま検索制御部５００に送る。
【００８３】
なお、検索端末に音声解析機能がない場合を想定して、音声データをそのまま検索制御部５００の検索情報入力部５０１に送り、検索制御部５００で音声解析を行う様に構成することもできる。
【００８４】
続くステップＳ２０３において、検索制御部５００の有効語抽出部５０２は、検索情報入力部５０１で受け取った検索情報中の有効語を抽出し、分析する。この有効語抽出部５０２による有効語の抽出処理は、分析部１２０の有効語抽出部１２２とほぼ同様の処理で行うことができる。
【００８５】
続いてステップＳ２０５において、抽出した有効語を調べ、中間検索データベース２００に予め登録されている有効語か否かを調べ、登録されている有効語であれば割り当てられている桁位置（重み付け情報）を抽出する。又、中間検索データベース２００に登録されていない単語が抽出された場合にはこの語を未知語として単語置換処理を行う。単語置換処理は、未知語は誤って指示された語、あるいは言い代えることが可能な語と見なして登録された語のなかで該当する対応語を推察して、検索情報中の未登録語を対応する語に置換したガイダンス情報を生成して検索端末から出力させ、判断結果を確認させる。その後有効語のみの群に変換する。
【００８６】
そして続くステップＳ２０７において有効語の組み合わせから検索を希望する登録情報のシーン（分野）を判断する。ここでは、ます検索キーワード生成部５０３で検索情報に含まれる有効語の対応桁のビットをオンとした検索キーワードを生成する。そして、例えば中間検索データベース２００の属性情報などを参照して検索対象のシーン（分野）を判断する。
【００８７】
続いてステップＳ２０９において、ステップＳ２０７で生成した検索キーワードを包含する一次検索データ記憶部２５０に登録されている特定したシーン（分野）の一次検索データ（キャッシュデータ）を検索するＳ２１１。
【００８８】
そしてステップＳ２１３で検索の結果検索キーワードでヒットした一次検索データがあるか否かを確認する。ヒットするか否かは、例えば検索キーワードに含まれる有効語が全て含まれる一次検索データがあればこのデータをヒットデータとする。しかし以上の例に限定されるものではなく、一定割合含まれる場合にもヒットとしてもよい。
【００８９】
ヒットデータが抽出された場合にはステップＳ２２１に進み、抽出されたヒットデータで特定される登録情報が複数の場合には抽出されたキーワードに対応する情報一覧を表示し、情報が選択された場合には選択された情報を読み出してきて出力する。登録情報が一つのみの場合には抽出されたキーワードに対応する情報を読み出してきて出力する。
【００９０】
一方、ステップＳ２１３で該当データがヒットできなかった場合にはステップＳ２１５に進み、検索したシーン（分野）が適切ではなかったと判断して他の適切なシーン（分野）を把握するためのシーン（分野）特定誘導ガイダンスを検索端末に対して出力する。
【００９１】
シーン（分野）特定誘導ガイダンスとしては、例えば、会話形式で追加情報の入力を促すガイダンスを出力したり、あるいは、現在のシーン（分野）に近接する分野のシーン（分野）に含まれるキーワードを提示して検索キーワード入力のアドバイスを出力する。又は、特に推薦するシーン（分野）や、キャンペーン中のシーン（分野）を紹介などするガイダンスであってもよい。
【００９２】
検索者は、ステップＳ２１５のガイダンスを受け取って、新たなキーワードの入力を行う。このため、ガイダンスの出力後に検索端末などからの新たな、シーン（分野）の指示又は追加の検索データの受け取りを行う。
【００９３】
そして続くステップＳ２１７で新たに入力した検索情報から別のシーン（分野）を特定可能か、あるいは新たなシーン（分野）の指定でシーン（分野）の特定が可能かを判断する。他のシーン（分野）が特定可能であればステップＳ２００に戻り、有効語抽出、未知語処理をしてステップ２０７に進み、新たな検索情報の入力処理を行う。なお、先の検索キーワードに変更がない場合には直ちにステップＳ２０９の処理に移行可能である。
【００９４】
ステップＳ２１７でまだ新たな課題の特定ができない（情報不足の場合、あるいはサポートしていないシーン（分野）の指定であった場合など）にはステップＳ２１９に進み、別のシーン（分野）誘導ガイダンスの出力及びシーン（分野）特定情報（検索指示）入力を行う。そしてステップＳ２１７に進む。
【００９５】
図４は本実施の形態例の「有効語の抽出及び中間検索データ生成処理」を説明するための図である。
【００９６】
検索キーワードの入力処理を例として説明するが、検索情報の登録時においてもまったく同様にして中間検索データを生成している。本実施の形態例では、対話形式での入力であっても適切に有効語のみを抽出することができるので、多少の文法の誤りやあいまい表現であっても、中間検索データベース２００を参照するなどして適切に処理できる。
【００９７】
例えば、検索指示を会話形式で『赤坂あたりのおいしい天ぷら屋さんを探してください。』等の指示が入力された場合、検索のための有効語として「赤坂」、「あたり」、「天ぷら屋」が有効語候補とし、『探して』は検索開始指示として認識する。
【００９８】
他の「の」、「おいしい」「さん」「ください」は検索に際しての意味がないものとして処理対象から外す。そして、「あたり」は中間検索データ部ベース２００から「付近」とする。「あたり」は赤坂のみでなく、近接する地区までを検索対象に含めて処理する。
【００９９】
そして、このようにして抽出した有効語が予め登録されているどの桁のビットに対応するかを、中間検索データベース２００を参照して読み出す。図４の例では「赤坂」には１０桁目が、「付近（あたり）」には７桁目が、「天ぷら屋」には５桁目が割り当てられている。この場合にはこの入力されたキーワードを１０ビットデータで表すことができ、「１００１０１００００」が対応する。
【０１００】
このため、一次検索データ記憶部２５０に記憶されている一次検索データの中に５桁目、７桁目、１０桁目のビットがオンである情報を検索すれば、キーワードに合致する所望のデータをヒットできることになる。このため非常に少量のデータ比較のみで検索対象情報の抽出が実現する。
【図１】
2014016751.tif 000003
【図２】
2014016751.tif 000004
【図３】
2014016751.tif 000005
【図４】
2014016751.tif 000006