(57)【要約】      （修正有）【課題】人間からの指示に基づいてそれぞれ予め定めた特定のシーンに属する対話のシーンを識別し、当該シーンに即した自然対話を構成する応答文を作成して、それを音声合成することにより、素早く且つ効率的に対話を行うコンピュータによる音声対話方法を提供する。【解決手段】コンピュータによる音声対話方法は、予め複数のシーンに対してシーン毎にシーン名を付してシーン固有のデータベースを作成しておく工程と、複数のシーンの内で何れのシーンに関する対話を行うのかをユーザコンピュータはユーザに質問し、ユーザに入力を促す工程と、入力された入力文章を認識して、入力文章を入力単語に分解し入力単語をデータベース内の単語に照合して、対話のシーンを特定する工程と、そして、特定したシーンに基づいて、対話内容を限定して対話を進めていく工程と、を含んで構成される。【選択図】図４
2004219714.tif 000002
【特許請求の範囲】
【請求項１】
人間からの指示に基づいてそれぞれ予め定めた特定のシーンに属する対話のシーンを識別し、当該シーンに即した自然対話を構成する応答文を作成して、それを音声合成することにより、対話を行うコンピュータによる音声対話方法であって、
予め、複数のシーンに対してシーン毎にシーン名を付してシーン固有のデータベースを作成しておく工程と、
前記複数のシーンの内で何れのシーンに関する対話を行うのかをユーザコンピュータは、ユーザに質問し、ユーザに入力を促す工程と、
入力された入力文章を認識して、当該入力文章を入力単語に分解し、当該入力単語を前記データベースの単語に照合して、対話のシーンを特定する工程と、
そして、特定したシーンに基づいて、対話内容を限定して対話を進めていく工程と、
を含んで構成されてなるコンピュータによる音声対話方法。
【請求項２】
請求項１に記載のコンピュータによる音声対話方法において、
前記データベースは、
シーン固有の観点に基づきデータが整理されたサロゲイト化データベースと、前記サロゲイト化データベースの検索用のインデックスファイル及びコツキャッシュと、シーンに基づく単語データベースと、そして前記シーンに基づく単語データベース中の重要な単語をまとめたシーン重要単語データベースであることを特徴とするコンピュータによる音声対話方法。
【請求項３】
請求項２に記載のコンピュータによる音声対話方法において、
前記対話のシーンを特定する工程が、
ユーザコンピュータは、前記入力文章を音声認識部で認識し、音素メモリ部に保存されている単語と照合して、前記入力文章中の前記入力単語を特定する工程と、
前記入力単語を、シーン制御部でシーン毎に蓄えられているシーン重要単語データベース中の単語と照合して、出現頻度値又は／及び重要度計算値が多いシーンを一つだけ特定し、当該シーンを対話内容のシーンであるか否かをユーザに問いかけて、対話内容のシーンを特定する工程と、
を含んで構成されていることを特徴とするコンピュータによる音声対話方法。
【請求項４】
請求項３に記載のコンピュータによる音声対話方法において、
シーンを特定できなかった時に、
ユーザにさらに対話内容のシーンを特定するための質問をして、入力を促して、請求項３に記載の工程を繰り返し行うことで、対話のシーンを特定することを特徴とするコンピュータによる音声対話方法。
【請求項５】
請求項３又は４に記載のコンピュータによる音声対話方法において、
シーンが特定された直後に、キャッシュメモリに当該シーンのコツキャッシュをコピーすることを特徴とするコンピュータによる音声対話方法。
【請求項６】
請求項５に記載のコンピュータによる音声対話方法において、
特定されたシーンに関するサロゲイト化データベースからスキーマを取り出して、当該スキーマの観点に対応する入力単語の入力をユーザに促し、入力された入力文章から抽出した入力単語を一の観点に対応させ、前記入力単語を前記コツキャッシュのタップルデータと照合して、一のタップルを特定することを特徴とするコンピュータによる音声対話方法。
【請求項７】
請求項６に記載のコンピュータによる音声対話方法において、
タップルを特定できなかった時に、
特定されたシーンに関するインデックスファイルに前記入力単語の検索をして、前記入力単語に該当するタップルデータを、前記コツキャッシュにコピーして、一の観点に対応する前記入力単語を前記コツキャッシュのタップルデータと照合して、一のタップルを特定することを特徴とするコンピュータによる音声対話方法。
【請求項８】
請求項６又は７に記載のコンピュータによる音声対話方法において、
ユーザコンピュータは、特定されたタップルの内容を、前記スキーマに従ってユーザに音声合成して出力することを特徴とするコンピュータによる音声対話方法。
【請求項９】
請求項２〜８のいずれか一項に記載のコンピュータによる音声対話方法において、
コンピュータに自発的にインターネット等の通信手段を介して未知の情報を獲得させ、当該情報を前記サロゲイト化データベースにおける規定に従って前記サロゲイト化データベースに組み込み又は他のサロゲイト化データベースを構築して前記サロゲイト化データベースを拡張することを特徴とするコンピュータによる音声対話方法。
【請求項１０】
人間からの指示に基づいてそれぞれ予め定めた特定のシーンに属する対話のシーンを識別し、当該シーンに即した自然対話を構成する応答文を作成して、それを音声合成することにより、対話を行うコンピュータによる音声対話システムであって、
ユーザコンピュータには、ユーザから入力された入力文章から入力単語を特定し、またユーザコンピュータにおいて処理した結果をユーザに出力する対話コントロール部と、
対話内容のシーンを特定するための複数のシーンに対してシーン毎のデータが蓄積されているデータベースが保存されている外部記憶装置部と、
そして、前記データベースを用いてシーンを特定することを行うシーン制御部と、
を備えて構成されてなるコンピュータによる音声対話システム。
【請求項１１】
請求項１０に記載のコンピュータによる音声対話システムにおいて、前記データベースは、
シーン固有の観点に基づきデータが整理されたサロゲイト化データベースと、前記サロゲイト化データベースの検索用のインデックスファイル及びコツキャッシュと、シーンに基づく単語データベースと、そして前記シーンに基づく単語データベース中の重要な単語をまとめたシーン重要単語データベースであることを特徴とするコンピュータによる音声対話システム。
【請求項１２】
請求項１１に記載のコンピュータによる音声対話システムであって、
前記対話コントロール部は、音素メモリ部と、そして入力文章を認識し、当該音素メモリ部にある音素と照合して入力単語を特定する音声認識部と、ユーザが処理した結果を発話テンプレート部のフォーマットに当てはめて出力する音声合成部と、シーンが特定された後に特定されたシーンに関する前記サロゲイト化データベースからスキーマを取り出して、当該スキーマの観点に対応する入力単語の入力をユーザに入力させ、一又は複数の観点に対応する前記入力単語を音声認識部から動作指示部に送る対話のコツ部と、
前記シーン制御部は、前記外部記憶装置部に保存されているシーン重要単語データベース中の単語と前記入力単語を照合することでシーンを特定するシーン判定プログラムと、
そして、前記動作指示部は、前記外部記憶装置部に保存されているコツキャッシュ及びインデックスファイルと照合して一のタップルを特定する検索プログラム部と、
を備えて構成されてなることを特徴とするコンピュータによる音声対話システム。
【請求項１３】
請求項１１又は１２に記載のコンピュータによる音声対話システムにおいて、
コンピュータに自発的にインターネット等の通信手段を介して未知の情報を獲得させ、当該情報を前記サロゲイト化データベースにおける規定に従って前記サロゲイト化データベースに組み込み又は他のサロゲイト化データベースを構築して前記サロゲイト化データベースを拡張する情報収集共有処理部を含んでいることを特徴とするコンピュータによる音声対話システム。
【請求項１４】
コンピュータによる音声対話に用いられるサロゲイト化データベースの構築方法であって、
ユーザコンピュータは、インターネット等の通信回線を介して収集可能なシーンに属する複数の事例から、又は書面を電子化処理したシーンに属する複数の事例からそれぞれ複数のデータを抽出する工程と、
ユーザに質問して、前記データが何れの観点に属するのかを特定する工程と、前記観点の配列したスキーマに対して、前記スキーマの前記観点と同一の配列で、事例毎に前記データを配列する工程と、を有していて、
事例固有の前記データ等である複数のタップルデータからなるタップルと、そして前記観点が同一な前記データ等である複数のタップルデータから成り立つカラムとを含んで構成され、シーン毎に構築されるサロゲイト化データベースの構築方法。
【請求項１５】
請求項１４に記載のサロゲイト化データベース構築方法であって、
予め、事例が属するシーンの専門家等が予めその分野に関係する及び関連すると思われるシチュエーション単語にそれぞれ観点を付して、膨大な数のシチュエーション単語を保存してある概念辞書を一つ又は複数のシーンに対して作成する工程と、
前記データが単語であって、当該単語を前記概念辞書のシチュエーション単語に照合して、当該単語と、当該シチュエーション単語に付されている観点と、を結びつける工程と、
前記観点の配列したスキーマに対して、前記スキーマの前記観点と同一の配列で、事例毎に前記単語を配列する工程と、
を有していることを特徴とするサロゲイト化データベースの構築方法。
【請求項１６】
請求項１４に記載のサロゲイト化データベースの構築方法であって、
前記スキーマの前記観点の一又は複数において、前記観点を細分化する観点が含まれていて、
当該観点を配列したスキーマによりスキーマが階層化され、階層化された前記スキーマに基づき前記データを分類することを特徴とするサロゲイト化データベースの構築方法。
【請求項１７】
請求項１４〜１６のいずれか一項に記載のサロゲイト化データベースを使用してキャッシュメモリを構築する方法であって、
前記サロゲイト化データベース内のタップルデータに、当該サロゲイト化データベースの内のタップル番号と、当該タップルデータの使用頻度数を付して保存することを特徴とする前記サロゲイト化データベースとリンク可能なキャッシュメモリを構築する方法。
【請求項１８】
インターネット等の通信回線を介して接続されていて、相互に開放されている情報を共有してホーム家電の管理や地域ネットワークの促進が図れる情報共有化システムにおいて、
インターネット等の通信回線を介して相互に接続可能となっている複数のサロゲイト化データベースを共有可能とする情報共有化技術を有している情報共有化システム。
【請求項１９】
請求項１８に記載の情報共有化システムにおいて、
インターネット等の通信回線を介して相互に接続可能となっていて共有可能な複数の前記サロゲイト化データベースは、インターネット等の通信回線を介して提供可能であり、移転された前記サロゲイト化データベース及び／又は前記サロゲイト化データベース内のタップルデータにはそれぞれの原本の所在位置を示す位置情報が付されていて、当該位置情報を介して原本にアクセス可能とすることを特徴とする情報共有化システム。
【請求項２０】
請求項１８又は１９に記載の情報共有化システムにおいて、
前記原本には、インターネット等の通信回線を通じて、当該原本の情報の使用頻度が蓄積されることを特徴とする情報共有化システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータが、ユーザの音声を認識処理し、得られた入力単語に基づいて応答文を作成してそれを音声合成することにより対話を行う音声対話のためのコンピュータによる音声対話方法及び音声対話システムに関する。
【０００２】
【従来の技術】
音声対話は、人間の発声した音声を音声認識により認識した結果に基づいて予め定められた会話プログラムにより人間とコンピュータがあたかも人間同士で会話を行っているかのように対話を行うものである。この音声対話を利用して意志通りに機械や装置の操作を行わせる等、その利用範囲は広く、多方面での応用研究がなされている。このような音声対話を行うためにデータベースや、音声認識技術等が研究されている。
【０００３】
【特許文献１】
国際公開第ＷＯ０２／２１２７０号パンフレット
【特許文献２】
国際公開第ＷＯ０２／０６７２４４号パンフレット
【特許文献３】
国際公開第ＷＯ００／６５４４９号パンフレット
【０００４】
従来から、音声対話に用いられるデータベースとして、リレーショナル型データベースや、オブジェクト指向型データベースや、これらのデータベースを改良したデータベースが研究・開発され利用されている（例えば、特許文献１）。これらは、例えば一般に流布されている事例中の文章を単語解析及び文章解析をすることにより、スキーマの分類名に従い、事例中の単語を分類し、整理したデータベースである。このデータベースは、事例中の莫大な単語をくまなく整理することが出来る。
【０００５】
また、従来の音声対話における音声認識としては、人間が普通に話す言葉をそのままの状態で頭から認識を行う「ディクテーション」や、人間が話した言葉の中からキーとなる単語を抽出してその単語を認識していく「ワードスポット」等種々の手法が用いられている。
「ディクテーション」の一般的な仕組みとしては、まず人間が話した言葉を入力音声として音素列に変換し、その音素列を単語列に置き換えてこれを構文解析したのち、文字列に変換する。さらに、論理解析や意味解析を行って文章を生成し、音声合成して出力する。単語にも同音異義語があるために各単語の属性情報を付す等して的確な認識を行うようにされている。
【０００６】
一方、「ワードスポット」は、人間が話した言葉を音声としてコンピュータが分析し、その音声の特徴を抽出し、特徴量の時系列を作成する。そして、予めコンピュータに備えられている各単語の特徴量の時系列を記録保存した音声認識辞書に含まれる単語との類似度を計算し、その中から類似度の高い単語を認識結果として出力する。
【０００７】
また、対話に用いる莫大な数の単語を予めシーン毎に音声認識辞書として保存しておき、その音声認識辞書中の単語に入力された単語を照合することで音声認識を行い、入力された文書から単語を抽出する音声認識がある（例えば、特許文献２参照）。これは、シーンごとに属する単語のデータベースを一度にメモリに保存し、シーンに基づいて単語の認識速度を速める方法でもある。
【０００８】
そして、この音声対話において、一箇所にデータベース等の情報を集中させずに分散し、一箇所に情報過多の状況を構築せず、且つセキュリティーに優れた情報を分散させる技術も発明されている（例えば、特許文献３参照）。
【０００９】
【発明が解決しようとする課題】
しかし、音声対話に用いられるデータベースとして、リレーショナル型データベースや、オブジェクト指向型データベースや、これらのデータベースを改良したデータベースを音声対話に用いても、これらのデータベース内には事例中の無用な単語を大量に蓄積しているために、対話に用を成さない無用な単語を音声対話の音声認識で拾うことがある。このため、入力した文章から認識される単語として、全く関係のない無意味な単語が認識されたり、ひいては対話の処理に供されるので、対話が円滑に、且つ高速で処理されることが難しいといった問題点が生じる。また、これらのデータベースは、単語等の情報を単にスキーマに従って整理しているだけであるので、データに主従関係は無く、高速で必要なデータを検索することが難しいといった問題点も生じていた。
【００１０】
また、一般に、「ディクテーション」を用いる場合であっても「ワードスポット」による場合であっても認識率を上げるためには予め音声認識に使用する音声認識辞書に膨大な数の単語を登録しておく必要があると考えられる。しかしながら、音声認識辞書に登録する単語の数が多いとそれだけメモリの容量を必要とすると共に、入力された音声と音声認識辞書に記録された単語とのマッチングに時間がかかりすぎてコンピュータが応答するまでに不必要な間が空いてしまい音声会話としての実用に耐えなくなるという問題があった。その上、音声認識辞書に登録された単語数が多すぎると検索すべき対象が多くなるので逆に認識率が低下し、且つ認識に要する時間がかかりすぎるという問題も生じる。
さらに、対話のシーンごとに音声認識辞書を作成しておいても、シーンが固定されるとメモリに音声認識のために保存されるデータが変わらないので、一定容量以上のデータを一度にメモリに保存しておかなければならない問題点があった。
【００１１】
また、従来の音声認識システム、特に「ディクテーション」による場合では意味のない単語の羅列についても認識しようとしてかえって認識率を低下させるという問題を有していた。例えば、発話者が言葉に詰まったり、言いよどんだりした場合であってもその言葉を認識しようとする。その結果、意味のない言葉として認識してしまうのみならず、前後の言葉についても誤った認識を誘発するという問題を生じさせていた。
【００１２】
さらに、従来の音声認識においては、入力された音声を音声認識辞書に含まれる単語との類似度を計算し、音声認識辞書の中から類似度の高い単語を認識結果として出力するようになっているため、実際は正しく認識できていない場合でもとりあえず候補の単語を出力するようになっている。そのためにかえって認識率が低下し、意味不明な応答文を返すという問題があった。
【００１３】
また、音声認識辞書を如何に整理しても、一つの概念又は観点のもとで整理されたものではないので、対話を高速に処理するためには、莫大なデータにアクセスして、音声認識処理を行い、対話を進めなければならなかった。そのため、広範なデータベースを効率よく音声対話のために利用することも出来なかった。
【００１４】
加えて、コンピュータによって音声認識が行われるときには、コンピュータ内のメモリやハードディスク等に蓄積されているデータが利用されるのが一般的である。しかし、メモリやハードディスク等の容量は有限であり、利用できるデータには制限がある。そのため、入力された音声に対応するデータが、メモリやハードディスク等に無い場合、一向にデータがかみ合わず、対話が行えないという問題を生じていた。
【００１５】
ところで、人間同士の会話においても相手の話を聞く気になっていないときは相手が何を話してもその内容を認識できず上の空である。一方、相手の聞く気になっているときにはかなりの騒音下であって一部によく聞き取れない部分が合ったとしても話の内容を理解することが可能である。この違いは、相手の話を聞く気になっているときには聞き手としては今話題となっているシーンを予め想定し、相手が次に話すであろう言葉（単語）をある程度予想した上でその認識を行っているからである。従って、いきなり話が飛んで今話題となっている話題と違う話題に及ぶと聞き手としてはすぐには理解できず一瞬聞き間違えたのかと勘違いをすることになる。
【００１６】
そこで、発話者が発声した単語を認識するための音声認識に用いるデータベースを話題となるシーン毎に予め作成しておき、入力された単語をデータベースに照合することで音声認識を行い、このデータベースを話題となっているシーンごとに、又はデータベース内の一部のデータを対話文毎にメモリに切り替えて使用することにより素早く且つ効率的に対話を行い、限られたメモリやハードディスク等を有効に活用する音声対話のためのコンピュータによる音声対話方法及び音声対話システムを提供することを目的とする。
【００１７】
本発明は、また、一定時間経っても候補が検索されない場合や認識できない単語がある場合には発話者に対してもう一度発言を促すことにより、不自然な間を作ることなく自然な感じで対話を行わせながら音声認識を行う音声対話のためのコンピュータによる音声対話方法及び音声対話システムを提供することを目的とする。
【００１８】
本発明は、また、有限なメモリを有効に使い、音声を高速で認識処理し、且つ的確に応答して、シーンに基づいて対話の内容を限定し、円滑に音声対話を進めていくコンピュータによる音声対話方法及び音声対話システムを提供することを目的とする。
【００１９】
本発明は、また、高速で音声対話を行うために画像を含む単語等のデータを観点に従い整理・保存した有用なデータからなるデータベースを提供することを目的とする。また、このデータベース中のデータを高速で且つ的確に検索するためのデータベースを提供することを目的とする。
本発明は、さらに、本願発明によるデータベースをインターネット等の通信手段を介して接続されているコンピュータに分散させることで、重複労力を払わずに、データベースを効率よく利用して、音声対話を進められる音声対話の応用技術を提供することも目的とする。
【００２０】
【課題を解決するための手段】
課題を解決するために、本願発明の第一の態様は、人間からの指示に基づいてそれぞれ予め定めた特定のシーンに属する対話のシーンを識別し、シーンに即した自然対話を構成する応答文を作成して、それを音声合成することにより、対話を行うコンピュータによる音声対話方法であって、予め、複数のシーンに対してシーン毎にシーン名を付してシーン固有のデータベースを作成しておく工程と、複数のシーンの内で何れのシーンに関する対話を行うのかをユーザコンピュータは、ユーザに質問し、ユーザに入力を促す工程と、入力された入力文章を認識して、入力文章を入力単語に分解し、入力単語をデータベースの単語に照合して、対話のシーンを特定する工程と、そして、特定したシーンに基づいて、対話内容を限定して対話を進めていく工程と、を含んで構成されてなるコンピュータによる音声対話方法を提供する。
【００２１】
請求項２に記載の発明は、請求項１に記載のコンピュータによる音声対話方法において、データベースは、シーン固有の観点に基づきデータが整理されたサロゲイト化データベースと、サロゲイト化データベースの検索用のインデックスファイル及びコツキャッシュと、シーンに基づく単語データベースと、そしてシーンに基づく単語データベース中の重要な単語をまとめたシーン重要単語データベースであることを特徴とする。
【００２２】
請求項３に記載の発明は、請求項２に記載のコンピュータによる音声対話方法において、対話のシーンを特定する工程が、ユーザコンピュータは、入力文章を音声認識部で認識し、音素メモリ部に保存されている単語と照合して、入力文章中の入力単語を特定する工程と、入力単語を、シーン制御部でシーン毎に蓄えられているシーン重要単語データベース中の単語と照合して、出現頻度値又は／及び重要度計算値が多いシーンを一つだけ特定し、シーンを対話内容のシーンであるか否かをユーザに問いかけて、対話内容のシーンを特定する工程と、を含んで構成されていることを特徴とする。
【００２３】
請求項４に記載の発明は、請求項３に記載のコンピュータによる音声対話方法において、シーンを特定できなかった時に、ユーザにさらに対話内容のシーンを特定するための質問をして、入力を促して、請求項３に記載の工程を繰り返し行うことで、対話のシーンを特定することを特徴とする。
【００２４】
請求項５に記載の発明は、請求項３又は４に記載のコンピュータによる音声対話方法において、シーンが特定された直後に、キャッシュメモリにシーンのコツキャッシュをコピーすることを特徴とする。
【００２５】
請求項６に記載の発明は、請求項５に記載のコンピュータによる音声対話方法において、特定されたシーンに関するサロゲイト化データベースからスキーマを取り出して、スキーマの観点に対応する入力単語の入力をユーザに促し、入力された入力文章から抽出した入力単語を一の観点に対応させ、入力単語をコツキャッシュのタップルデータと照合して、一のタップルを特定することを特徴とする。
【００２６】
請求項７に記載の発明は、請求項６に記載のコンピュータによる音声対話方法において、タップルを特定できなかった時に、特定されたシーンに関するインデックスファイルに入力単語の検索をして、入力単語に該当するタップルデータを、コツキャッシュにコピーして、一の観点に対応する入力単語をコツキャッシュのタップルデータと照合して、一のタップルを特定することを特徴とする。
【００２７】
請求項８に記載の発明は、請求項６又は７に記載のコンピュータによる音声対話方法において、ユーザコンピュータは、特定されたタップルの内容を、スキーマに従ってユーザに音声合成して出力することを特徴とする。
【００２８】
請求項９に記載の発明は、請求項２〜８のいずれか一項に記載のコンピュータによる音声対話方法において、コンピュータに自発的にインターネット等の通信手段を介して未知の情報を獲得させ、情報をサロゲイト化データベースにおける規定に従ってサロゲイト化データベースに組み込み又は他のサロゲイト化データベースを構築してサロゲイト化データベースを拡張することを特徴とする。
【００２９】
前記課題を解決するために、本願発明の第二の態様は、人間からの指示に基づいてそれぞれ予め定めた特定のシーンに属する対話のシーンを識別し、シーンに即した自然対話を構成する応答文を作成して、それを音声合成することにより、対話を行うコンピュータによる音声対話システムであって、ユーザコンピュータには、ユーザから入力された入力文章から入力単語を特定し、またユーザコンピュータにおいて処理した結果をユーザに出力する対話コントロール部と、対話内容のシーンを特定するための複数のシーンに対してシーン毎のデータが蓄積されているデータベースが保存されている外部記憶装置部と、そして、データベースを用いてシーンを特定することを行うシーン制御部と、を備えて構成されてなるコンピュータによる音声対話システムを提供する。
【００３０】
請求項１１に記載の発明は、請求項１０に記載のコンピュータによる音声対話システムにおいて、データベースは、シーン固有の観点に基づきデータが整理されたサロゲイト化データベースと、サロゲイト化データベースの検索用のインデックスファイル及びコツキャッシュと、シーンに基づく単語データベースと、そしてシーンに基づく単語データベース中の重要な単語をまとめたシーン重要単語データベースであることを特徴とする。
【００３１】
請求項１２に記載の発明は、請求項１１に記載のコンピュータによる音声対話システムであって、対話コントロール部は、音素メモリ部と、そして入力文章を認識し、音素メモリ部にある音素と照合して入力単語を特定する音声認識部と、ユーザが処理した結果を発話テンプレート部のフォーマットに当てはめて出力する音声合成部と、シーンが特定された後に特定されたシーンに関するサロゲイト化データベースからスキーマを取り出して、スキーマの観点に対応する入力単語の入力をユーザに入力させ、一又は複数の観点に対応する入力単語を音声認識部から動作指示部に送る対話のコツ部と、シーン制御部は、外部記憶装置部に保存されているシーン重要単語データベース中の単語と入力単語を照合することでシーンを特定するシーン判定プログラムと、そして、動作指示部は、外部記憶装置部に保存されているコツキャッシュ及びインデックスファイルと照合して一のタップルを特定する検索プログラム部と、を備えて構成されてなることを特徴とする。
【００３２】
請求項１３に記載の発明は、請求項１１又は１２に記載のコンピュータによる音声対話システムにおいて、コンピュータに自発的にインターネット等の通信手段を介して未知の情報を獲得させ、情報をサロゲイト化データベースにおける規定に従ってサロゲイト化データベースに組み込み又は他のサロゲイト化データベースを構築してサロゲイト化データベースを拡張する情報収集共有処理部を含んでいることを特徴とする。
【００３３】
請求項１４に記載の発明は、コンピュータによる音声対話に用いられるサロゲイト化データベースの構築方法であって、ユーザコンピュータは、インターネット等の通信回線を介して収集可能なシーンに属する複数の事例から、又は書面を電子化処理したシーンに属する複数の事例からそれぞれ複数のデータを抽出する工程と、ユーザに質問して、データが何れの観点に属するのかを特定する工程と、観点の配列したスキーマに対して、スキーマの観点と同一の配列で、事例毎にデータを配列する工程と、を有していて、事例固有の前記データ等である複数のタップルデータからなるタップルと、そして観点が同一なデータ等である複数のタップルデータから成り立つカラムとを含んで構成され、シーン毎に構築されるサロゲイト化データベースの構築方法を提供する。
【００３４】
請求項１５に記載の発明は、請求項１４に記載のサロゲイト化データベース構築方法であって、予め、事例が属するシーンの専門家等が予めその分野に関係する及び関連すると思われるシチュエーション単語にそれぞれ観点を付して、膨大な数のシチュエーション単語を保存してある概念辞書を一つ又は複数のシーンに対して作成する工程と、データが単語であって、単語を概念辞書のシチュエーション単語に照合して、単語と、シチュエーション単語に付されている観点と、を結びつける工程と、観点の配列したスキーマに対して、スキーマの観点と同一の配列で、事例毎に単語を配列する工程と、を有していることを特徴とする。
【００３５】
請求項１６に記載の発明は、請求項１４に記載のサロゲイト化データベースの構築方法であって、スキーマの観点の一又は複数において、観点を細分化する観点が含まれていて、観点を配列したスキーマによりスキーマが階層化され、階層化されたスキーマに基づきデータを分類することを特徴とする。
【００３６】
請求項１７に記載の発明は、請求項１４〜１６のいずれか一項に記載のサロゲイト化データベースを使用してキャッシュメモリを構築する方法であって、サロゲイト化データベース内のタップルデータに、サロゲイト化データベースの内のタップル番号と、タップルデータの使用頻度数を付して保存することを特徴とするサロゲイト化データベースとリンク可能なキャッシュメモリを構築する方法を提供する。
【００３７】
請求項１８に記載の発明は、インターネット等の通信回線を介して接続されていて、相互に開放されている情報を共有してホーム家電の管理や地域ネットワークの促進が図れる情報共有化システムにおいて、インターネット等の通信回線を介して相互に接続可能となっている複数のサロゲイト化データベースを共有可能とする情報共有化技術を有している情報共有化システムを提供する。
【００３８】
請求項１９に記載の発明は、請求項１８に記載の情報共有化システムにおいて、インターネット等の通信回線を介して相互に接続可能となっていて共有可能な複数のサロゲイト化データベースは、インターネット等の通信回線を介して提供可能であり、移転されたサロゲイト化データベース及び／又はサロゲイト化データベース内のタップルデータにはそれぞれの原本の所在位置を示す位置情報が付されていて、位置情報を介して原本にアクセス可能とすることを特徴とする。
【００３９】
請求項２０に記載の発明は、請求項１８又は１９に記載の情報共有化システムにおいて、原本には、インターネット等の通信回線を通じて、原本の情報の使用頻度が蓄積されることを特徴とする。
【００４０】
【発明の実施の形態】
本発明に係るコンピュータによる対話を図示された実施の形態に基づいて、更に詳しく説明する。
【００４１】
図１は、本発明に係るコンピュータによる音声対話に必要なサロゲイト化データベースの構築方法を、具体例に基づいて示したブロック図である。
サロゲイト化データベース２０ａは、「食事」というシーンに関するサロゲイト化データベースである。サロゲイト化データベースは、シーン毎に作成されるデータベースである。サロゲイト化データベース２０ａを構築するためには、サロゲイト化データベース２０ａのシーンに含まれる複数の事例（図１ではそのうちの一つの事例２１を示している。）と、観点２２ｂを付してシーン固有の複数のシチュエーション単語２２ａを保存した概念辞書２２と、そして事例２１から取り出した単語を概念辞書２２に基づいて分類するデータマイニング部２３とが必要である。
【００４２】
事例２１は、インターネット等の通信回線を通じてアクセス可能なカタログであり、「食事」のシーンに関する事例の一つである。事例２１は、一つのタイトル毎にデータが収められているものであれば、カタログ以外にパンフレット等でも良い。また、通信回線を介して収集されるもの以外にも、一般に流布されている書面でも良い。書面の場合には、スキャナーで取りこまれ、電子化処理された後、通信回線を介して収集されたものと同様に扱われる。事例２１では「新東京寿司」という店舗名が一つのタイトルに相当していて、事例２１の中には「新東京寿司」の紹介や概要等が記されている。事例２１の中には、「寿司」、「日本料理」、「穴子握り」、「５台」等の意味のある単語、そして寿司の「参考写真」等を含んだ店の概要が記載されている。
【００４３】
一方、概念辞書２２は、事例２１が属するシーンの専門家等が予めその分野に関係する及び関係すると思われるシチュエーション単語２２ａにそれぞれ観点２２ｂを付して、膨大な数のシチュエーション単語２２ａを保存してあるデータベースである。シチュエーション単語２２ａとしては、業界固有の用語を編集した辞書に記載してある単語や、業界の関係者が日常用いている用語等が挙げられる。そのため、事例２１の文章を意味解析及び単語解析して得られた単語、つまり事例２１から助詞や冠詞等を取り除いて分解した意味のある単語は、全て概念辞書２２に含まれている。図１においては、例えば「日本料理」というシチュエーション単語２２ａに「ジャンル」という観点が付されて、概念辞書２２に保存されている。なお、原則として観点の数は一つのシーンに付き３０個程度であるが、事例が属するシーンの専門家等の判断により、１００個以上にまで観点の数を増やすことも可能である。
また、これらの観点は、互いに従属関係を持たせておくことも可能である。この従属関係を用いて、後述するサロゲイト化データベースのスキーマの階層化に反映することも可能である。
【００４４】
データマイニング部２３には、事例２１の中に記載の文章を意味解析及び単語解析して単語を抽出する機能と、抽出した単語を概念辞書２２中のシチュエーション単語２２ａと照合する機能と、照合した結果抽出した単語をサロゲイト化データベース２０ａに分類する機能とが設けられている。加えて、事例２１の中のタイトルを「新東京寿司」と認識する機能と、写真やグラフをそれぞれ写真やグラフであることを認識して、分類する機能が組み込まれている。
【００４５】
サロゲイト化データベース２０ａには、シーン毎のデータ、つまり事例２１に関する単語等が、人間が入力した観点２２ｂに従って整理保存される。サロゲイト化データベース２０ａにおける観点２２ｂは、概念辞書２２で用いている観点２２ｂと１対１に対応している。図１のサロゲイト化データベース２０ａを広範囲にわたって示した図を、図２に示す。
【００４６】
サロゲイト化データベース２０ａにおいて、観点２２ｂを配列したものをスキーマと総称している。図２においてスキーマは、スキーマＡ２５ａと、スキーマＢ２５ｂと、スキーマＣ２５ｃに分けられている。スキーマＡ２５ａには、「タイトル」、「ＵＲＬ」、「ジャンル」、「参考写真」、「お勧め料理」、「食材」「店舗情報」等が含まれている。この内の「店舗情報」をさらに細分化する観点が「収容人数」、「営業時間」、「駐車場」等の観点であり、「参考写真」を細分化する観点が「皿の数」、「明るさ」等の観点であり、これらはスキーマＡ２５ａに対してさらに細分化した観点の集合体であるスキーマＢ２５ｂやスキーマＣ２５ｃに含まれている。スキーマＡ２５ａとスキーマＢ２５ｂとを統合して一つのスキーマにしても良いが、逆にスキーマＡ２５ａとスキーマＢ２５ｂを細分化してスキーマＡ、スキーマＢ、スキーマＣ、スキーマＤにさらに細分化することも出来る。このように、スキーマを階層に並べて、シーンを整理することをシーンの階層化と呼んでいる。シーンの階層化はユーザの嗜好をユーザコンピュータが伺いながら構築され、ユーザコンピュータがユーザと対話をしながら作成する。
【００４７】
一方、このユーザは、シーンに関する専門家等であり、ユーザが利用する前に予め専門家等がサロゲイト化データベースを作成しておくようにしても良い。図示していないが、概念辞書２２の観点は、一般辞書に含まれる概念を専門家等が整理したものである。一般辞書とは、一般に流通している膨大な数の国語辞典等が該当する。この中で単語に概念が付されているが、これを専門家等がそれぞれのシーンに対して分類・整理したものが観点である。事例中の単語はユーザコンピュータにより、全て自動的に分類・整理されてサロゲイト化データベースが構築されるようにすることも可能である。この時には、一端サロゲイト化データベースを構築した後に、専門家等にユーザコンピュータが確認を取り、サロゲイト化データベースの完成度を上げることが可能である。つまり、一端構築したサロゲイト化データベースが満足にいかないものであった時には、専門家等の指示のもと、スキーマを組み直す等してサロゲイト化データベースを満足のいくものに修正可能である。
【００４８】
サロゲイト化データベース２０ａでは、シーン固有の事例がそれぞれスキーマＡ２５ａ、スキーマＢ２５ｂ及びスキーマＣ２５ｃに従って分類される。事例の一つ一つを、スキーマに従って分類したものをタップルと呼び、事例２１をスキーマＡ２５ａに従って分類したものをタップル２６と記している（図２参照）。図２のサロゲイト化データベース２０ａには、「新東京寿司」、「四川創作亭」、「グラツィオーゾ」、そして「豚骨亭」の四つタイトルで代表される四つの事例をスキーマＡ２５ａ、スキーマＢ２５ｂ及びスキーマＣ２５ｃに従って分類したタップルが各四つ記されている。スキーマＡ２５ａに従って分類したタップルに、Ｔ１、Ｔ２、Ｔ３、そしてＴ４のタップル番号が、スキーマＢ２５ｂに従って分類したタップルに、Ｔ１ａ、Ｔ２ａ、Ｔ３ａ、そしてＴ４ａのタップル番号が、そしてスキーマＣ２５ｃに従って分類したタップルに、Ｔ１ｂ、Ｔ２ｂ、Ｔ３ｂ、そしてＴ４ｂのタップル番号が付されている。
【００４９】
サロゲイト化データベース２０ａを、観点に基づいてまとめたものがカラムである。一例として図２において、観点「ジャンル」に従ってまとめたものを、カラム２７と記している。以上から、サロゲイト化データベースは、事例の一つ一つをスキーマに従って分類したものであり、タップルとカラムにより構成されていることが分かる。
【００５０】
事例２１では、データマイニング部２３で「新東京寿司」が事例２１のタイトルであることが識別される。例えば、これは、事例のファースト頁の最上段に位置する用語を、その事例のタイトルであるとするプログラムが組まれていることにより可能となる。そして、「新東京寿司」はタイトルであるので、サロゲイト化データベース２０ａの「タイトル」の観点によりまとめられたカラムの一つに入れる。これにより、「タイトル」の欄に「新東京寿司」を入れた「タップル」は、事例２１の「新東京寿司」に関するデータを分類・整理したものであることになる。尚、サロゲイト化データベース２０ａでは、上から順に各タップルにタップル番号を付していて、事例２１のデータがおさめられている「タップル」のタップル番号は、Ｔ１である。タップル番号は、任意に決められるものであるが、一つのタップルが重複して一つのシーンにおけるサロゲイト化データベースに含まれることは無い。また、タップル番号により、事例の優劣が決定されるものでもない。
【００５１】
次に、事例２１の中には、例えば「寿司は、日本料理の一つである。」という文章が記されている。まずこの文章の意味解析及び単語解析をデータマイニング部２３で行い「寿司」、「日本料理」の二つの単語が抽出される。
一方、概念辞書２２には、「寿司・・・カテゴリ」、「日本料理・・・ジャンル」というように「寿司」と「日本料理」のシチュエーション単語２２ａが観点２２２ｂを伴って保存されている。
【００５２】
これより、「寿司」の単語は「カテゴリ」、「日本料理」の単語は「ジャンル」の観点に従って、Ｔ１のタップルに分類される。この工程を、スキーマＡ２５ａに従って事例２１について全部行うとＴ１のタップルが完成する。そして、同様の作業を、「食事」のシーンに属する他の「事例」について行った結果、サロゲイト化データベース２０ａが完成する。他のシーンに関しても、同様の作業を繰り返して、サロゲイト化データベースを作成する。尚、サロゲイト化データベースに分類され、組み込まれた単語等のデータをタップルデータと呼ぶことにする。つまり、サロゲイト化データベース２０ａ中の「寿司」や「日本料理」等の単語等は、それぞれタップルデータである。
【００５３】
サロゲイト化データベース２０ａのスキーマＡ２５ａには、観点として「ＵＲＬ」や「参考写真」が含まれている。この観点に対応する単語は、概念辞書２２には含まれていない。そのため、「ＵＲＬ」や「参考写真」の観点に対するデータを事例２１から抽出することは、概念辞書２２によっては行えない。「ＵＲＬ」の観点に対するデータを抽出する時には、ＵＲＬ認識プログラムを用いる。また、「参考写真」の観点に対するデータを抽出するときには、データマイニング部２３の中の写真やグラフをそれぞれ写真やグラフであることを認識する機能を用いる。事例２１は、ＨＴＭＬファイルのホームページであるので、ＵＲＬ認識プログラムは、このＵＲＬ、すなわち「Ａ１」を「ＵＲＬ」の観点に対するＴ１のタップルの欄に記入する。一方、写真を事例２１から探したデータマイニング部２３は、この写真の所在位置を詳細に示すＵＲＬ等の位置情報をＴ１のタップルの欄に入れる。これにより、一つのデータベースに収めることが不可能である文字や写真等の画像を、一つのデータベースに保存することが可能になる。
【００５４】
また、写真のＵＲＬ等を取り込むと同時に、写真を文章や単語で判断できるように画像認識プログラムを用いて、写真を分解する。写真を文章や単語で判断できるように画像認識プログラムは、写真を網の目状に区分けして、その特徴を読み取る機能を担っている。これにより、写真の中の特徴、例えば写真が店内の椅子やテーブルの配置を表したものであれば、店内の椅子の数やテーブルの間隔等が文章や単語として、保存される。また、専門家等のコメント等に代表される主観を事例の中から取り出す機能を画像認識プログラムに付加しておく。この主観は、事例の中の写真の解説欄に記載の文章であり、この文章を取り出す機能が、画像認識プログラムに付加される専門家等のコメント等に代表される主観を事例の中から取り出す機能のことである。サロゲイト化データベース２０ａにおいては、「参考写真」の観点のさらに下層に参考写真のデータを入れるスキーマＣ２５ｃが形成されている。これにより、写真のデータを、個別具体的にサロゲイト化データベース２０ａに記録することが可能になる。グラフについても、同様に保存することが出来る。
【００５５】
しかし、写真といっても事例２１には、店舗の外観写真と料理の見本を示した写真の２種類が掲載されている。この内、「参考写真」の観点に対応する写真は、料理の見本を示した写真である。この判別は、写真を見つけるごとに、専門家等の観点を導入した人やユーザに確認を取りつつ行われる。つまり、データマイニング部２３が店舗の外観写真を事例２１から抽出した時、データマイニング部２３は、専門家等の観点を導入した人やユーザに「この写真を、参考写真に組み込みますか？」と尋ねるようにプログラムを組んでおく。しかし、この写真は、「参考写真」に組み込みたい写真ではないので、専門家等の観点を導入した人やユーザは「いいえ。」と答える。この結果、データマイニング部２３は、抽出した店舗の外観写真を採用しない。次にデータマイニング部２３が料理の見本を示した写真を事例２１から抽出した時、データマイニング部２３は、専門家等の観点を導入した人やユーザに「この写真を、参考写真に組み込みますか？」と尋ねる。この写真は、「参考写真」に組み込みたい写真なので、専門家等の観点を導入した人やユーザは「はい。」と答える。その結果、この写真をデータマイニング部２３は料理の見本を示した写真の所在位置を詳細に示すＵＲＬ等の位置情報をＴ１のタップルの欄に入れる。
以上より正確に事例２１のデータはサロゲイト化データベース２０ａに分類され、完成する。
【００５６】
尚、他のタップルデータをサロゲイト化データベースに組み込む際にも、個別に、専門家等の観点を導入した人やユーザに確認を取ることが可能であり、これがサロゲイト化データベースを構築する際の特徴になっている。この結果、作成したサロゲイト化データベースは、ユーザ等にとって最も有効なデータベースになる。
【００５７】
次に、本発明に係るコンピュータによる音声対話に必要なコツキャッシュの構築方法を具体例に基づいて示す。
図３は、図１及び図２に示したサロゲイト化データベース２０ａに基づいて作成した「食事」のシーンのコツキャッシュ２８ａである。
【００５８】
コツキャッシュ２８ａは、サロゲイト化データベース２０ａのタップルデータの一部と、それらのタップルデータのそれぞれがサロゲイト化データベース２０ａのどのタップルに含まれているのかを示すタップル番号と、そしてそのタップルデータの使用頻度を付して保存したものである。
【００５９】
まず、コツキャッシュ２８ａを作る前に、サロゲイト化データベース２０ａのタップルデータの全てと、それぞれのタップルデータがどのタップルに含まれているのかを示すタップル番号を保存したものであるインデックスファイル２７ａを作成する。インデックスファイル２７ａは具体例を示さないが、サロゲイト化データベース２０ａのタップルデータを全て集めたものであるので、容量は莫大であり、サロゲイト化データベース２０ａと共に、保存されている。タップルデータが同一の単語である時には、タップルデータを統合して、タップル番号をまとめることが出来る。これにより、データ量が少なくなり、後述する検索の重複した作業が省くことが出来るようになる。
【００６０】
一方、インデックスファイル２７ａの一部のタップルデータに、タップル番号と使用頻度を付して保存したデータファイルがコツキャッシュ２８ａである。コツキャッシュ２８ａ中のタップルデータの数は、５０００個である。同様にして他のそれぞれのシーンに対してもサロゲイト化データベースからインデックスファイル及びコツキャッシュが作成される。
尚、使用頻度数は、そのタップルデータの使用割合やアクセス回数を用いて表すことが出来るが、使用割合はそのタップルデータへのアクセス回数をコツキャッシュへのアクセス回数で除して、１００を乗じた値である。
【００６１】
サロゲイト化データベースに含まれるタップルを特定するために、コツキャッシュやインデックスファイルは使用される。コツキャッシュやインデックスファイルは、共にサロゲイト化データベースの中から特定のタップルを検索するための検索用ファイルである。つまり、サロゲイト化データベースを本と例えるならば、コツキャッシュもインデックスファイルも共に本の索引に相当する。但し、コツキャッシュは簡易な索引に、インデックスファイルは詳細な索引に相当する。また、コツキャッシュ内のタップルデータは使用頻度数が多い順に配列されるが、インデックスファイルのタップルデータは、あいうえお順やアルファベット順に配列される。
【００６２】
例えば、図２において、「ジャンル」の観点に「日本料理」というタップルデータは、Ｔ１とＴ４の二つのタップルに記されている。これを、図３においては、一行目に記している。つまり、「日本料理」のタップルデータと同じ行に「Ｔ１＆Ｔ４」というデータが記されている。「Ｔ１＆Ｔ４」は、「Ｔ１とＴ４のタップルにそれぞれ入っています。」ということを表している。これらより、「「日本料理」のタップルデータは、Ｔ１のタップルとＴ４のタップルデータに組み込まれている。」ということを指し示していることが分かる。他のタップルデータに関しても、同様に処理した結果が、図３に示したコツキャッシュ２８ａであり、使用頻度数は「日本料理」が最も多いことを表している。
【００６３】
しかし、サロゲイト化データベース２０ａのスキーマＢ２５ｂのように観点の中には駐車場や、収容人数と言ったものがあり、「５台」や「２０人」というタップルデータをそのままコツキャッシュ２８ａに保存したのでは、そのタップルデータの意味するところが不明確になってしまうおそれがある。そこで、例えば「駐車場」の観点に対するタップルデータに関しては、「駐車場有り」又は「駐車場無し」と言うように分けている。コツキャッシュ２８ａでは、「駐車場有り」というようにタップルデータをプログラムで設定して、駐車場があるものをコツキャッシュ２８ａに保存している。
【００６４】
ところで、「５台」や「２０人」といったタップルデータであっても、インデックスファイルは、そのままのタップルデータを保存する。これは、インデックスファイルは、データ処理の高速化を目的とするというよりも、サロゲイト化データベースの検索用ファイルとしての側面が、コツキャッシュよりも強いからである。
【００６５】
それに対して、コツキャッシュは、高速で入力された単語からタップル、すなわち事例を特定することに主眼を置いている。そのため、検索を単純に、且つスマートに行うためにタップルデータそのものを一部簡潔に整理・保存している。つまり、コツキャッシュはタップルデータの正確さよりも検索の高速化を、インデックスファイルはコツキャッシュよりもタップルデータの正確さを主眼に構築される。もちろん、コツキャッシュにインデックスファイルからタップルデータをそのまま取り込んでも良い。
【００６６】
一方、インデックスファイルからコツキャッシュには、タップルデータが移行可能である。コツキャッシュに含まれるタップルデータに検索する単語、つまりタップルデータが含まれていないときには、インデックスファイルのタップルデータを用いて検索する。インデックスファイルで検索に用いられたタップルデータには、最も高い使用頻度、例えば１００％が付されて、コツキャッシュにコピーされて書き込まれる。その後、インデックスファイルで検索に用いられたタップルデータは消去もされず、何の変化も無く保存されている。それ故、インデックスファイルは、保存されているタップルデータの数は変化しないが、コツキャッシュは変化する。当初５０００個のタップルデータが保存されていたコツキャッシュのタップルデータは、使用されると５００１個、５００２個、・・・と増加する。
【００６７】
コツキャッシュは、一定期間経過したとき、又は一定容量に達したときに整理される。コツキャッシュには、原則５０００個のタップルデータが保存されるように規定されているので、増加したタップルデータを整理して５０００個にする。これは、瞬時に行われ、使用頻度の少ないものがコツキャッシュから消去されることで５０００個にされる。もしくは、コツキャッシュは二個あって、タップルデータを整理しているときには、一方のコツキャッシュを使用していて、整理された他のコツキャッシュを入れ替えることで整理中でもコツキャッシュが円滑に機能するようにすることも可能である。
【００６８】
原則として、コツキャッシュには、サロゲイト化データベース中で使用頻度の高い単語が５０００個集められている。しかし、５０００個という数は、設定により増減可能であり、２０００個にすることも、また７０００個にすることも可能である。尚、サロゲイト化データベースと、インデックスファイルと、コツキャッシュとは一つのシーンに付き一つずつ少なくともあり、コツキャッシュの数のみ設定により二個にすることが可能である。
また、以上から明らかなように、インデックスファイルやコツキャッシュにはサロゲイト化データベースのスキーマやカラムという概念は無関係である。
【００６９】
さらに、タップルデータの集合からボトムアップ形式で構築した類似検索を、コツキャッシュやインデックスファイルのタップルデータに付することも可能である。例えば、「ラーメン」と「パスタ」のタップルデータから「めん類」というように類似点を抽出して、ボトムアップ形式で新たな観点をツリー状に分類・整理していく。この結果、導き出された「めん類」という観点を「ラーメン」や「パスタ」のタップルデータに付しておいて、検索に利用することも可能である。
【００７０】
一方、本願発明の基礎であるシーン特定に用いるデータベース、具体的にはシーンに基づく単語データベース及びシーン重要単語データベースを、シーン毎に作成する。
シーンに基づく単語データベースは、シーン毎に、サロゲイト化データベースの全てのタップルデータや、各事例からサロゲイト化データベース中に分類されなかった単語を含んだデータベースである。しかし、シーンに基づく単語データベースは、サロゲイト化データベースの様に事例や観点に基づき、又はコツキャッシュやインデックスファイルの様にタップル番号を付して、保存しているデータベースとは異なり、一切の規定が無く、タップルデータそのものを、単に羅列したものである。
【００７１】
シーン重要単語データベースは、シーンに基づく単語データベース中の単語の中で出現頻度の高いもの、又は重要度計算を行った結果、出現頻度値や重要度計算値が高いものを５０個から３００個、保存したものである。出現頻度値は、シーンの中で各事例の範囲を越えて、例えば「日本料理」の単語が何回表れたのかを示す値である。また、重要度計算値は、シーンの中で各事例の範囲を超えて、例えば「日本料理」と「寿司」の出現頻度値が高いときに、この様な単語同士の関係から導いた値のことである。出現頻度値も、重要度計算値も共に、シーンの中で、その単語等がどれだけ不可欠な単語等であるかを示すものであり、一般的に言うところの「キーワード」に対応している。また、シーンの名称や、図２で言うところの「タイトル」や「ジャンル」の観点で定義されるカラムに含まれる単語は、シーン固有の単語であり、シーンを特定する際に必要不可欠であるので優先してシーン重要単語データベースに入れるようにされている。つまり、シーンの名称等は、事例の中で出てくる回数が少なくても、シーン重要単語データベースに含まれるものとする。尚、このような単語は、重要度計算値が高いので、シーン重要単語データベースから漏れることはない。
【００７２】
次に、本発明に係るコンピュータによる音声対話の一実施形態を図４に基づいて説明する。
図４は、本発明に係るコンピュータによる音声対話の一実施形態を示すブロック図である。
【００７３】
コンピュータによる音声対話に用いるユーザコンピュータ１には、キャッシュメモリ２ａと、サロゲイト化データベース２０ａ、２０ｂ、２０ｃ等のデータベースを保存・蓄積してある外部記憶装置部２ｂと、対話コントロール部３と、シーン制御部４ａと、動作指示部４ｂと、そして類似リンク部５０と、が含まれていて、且つユーザ１００からの入出力を行うマイク及びスピーカが備わっている。
【００７４】
対話コントロール部３は、音声認識部３１と、音素メモリ部３２と、音声合成部３６と、発話テンプレート部３７と、対話のコツ部３８と、そして質問処理部３９とからなっている。音声認識部３１は、ユーザ１００から入力された音声を認識し、音素メモリ部３２にある音素と照合する。音素メモリ部３２は、一時的に単語等のデータが保存される領域であり、対話の応答に従って、頻繁に且つ即座に書き換えられる。音声合成部３６は、シーン制御部４ａや動作指示部４ｂで処理した結果を、発話テンプレート部３７に保存されているフォーマットに従い、音に変換して、出力する。
【００７５】
外部記憶装置部２ｂには、サロゲイト化データベース２０ａ、２０ｂ、２０ｃと、インデックスファイル２７ａ、２７ｂ、２７ｃと、コツキャッシュ２８ａ、２８ｂ、２８ｃと、そしてシーン重要単語データベース４３ａ、４３ｂ、４３ｃをそれぞれ含んだシーンに基づく単語データベース４２ａ、４２ｂ、４２ｃと、が保存・蓄積されている。シーン重要単語データベース４３ａ、４３ｂ、４３ｃをそれぞれ含んだシーンに基づく単語データベース４２ａ、４２ｂ、４２ｃは、シーン制御部４ａに対して使用される。インデックスファイル２７ａ、２７ｂ、２７ｃと、コツキャッシュ２８ａ、２８ｂ、２８ｃは、動作指示部４ｂに対して使用される。シーン制御部４ａが、シーン重要単語データベース４３ａ、４３ｂ、４３ｃをそれぞれ含んだシーンに基づく単語データベース４２ａ、４２ｂ、４２ｃに単語を照合する時や、動作指示部４ｂがインデックスファイル２７ａ、２７ｂ、２７ｃと、コツキャッシュ２８ａ、２８ｂ、２８ｃに単語を照合する時には、それらのデータベースはキャッシュメモリ２ａにコピーされる。また、サロゲイト化データベース２０ａ、２０ｂ、２０ｃは、質問処理部３９にスキーマを提供したりするために使用される。
【００７６】
尚、図４においては、シーンが「食事」、「宿泊」、「レジャーランド」の三つあり、それぞれに対応するサロゲイト化データベース２０ａ、２０ｂ、２０ｃ、インデックスファイル２７ａ、２７ｂ、２７ｃ、コツキャッシュ２８ａ、２８ｂ、２８ｃ、シーンに基づく単語データベース４２ａ、４２ｂ、４２ｃ、シーン重要単語データベース４３ａ、４３ｂ、４３ｃが保存されている。
【００７７】
シーン制御部４ａには、シーンの判定をするシーン判定プログラム４１が備わっている。シーン判定プログラム４１は、外部記憶装置２ｂにあるシーンに基づく単語データベース４２ａ、４２ｂ、４２ｃや、シーン重要単語データベース４３ａ、４３ｂ、４３ｃに、ユーザ１００が入力した入力単語を照合してシーンを特定する。シーンに基づく単語データベース４２ａ、４２ｂ、４２ｃは、それぞれ外部記憶装置部２ｂの中にあるサロゲイト化データベース２０ａ、２０ｂ、２０ｃ中の全タップルデータである。この全タップルデータの内、シーンを代表する単語に、その出現頻度数等を付して保存したものがシーン重要単語データベース４３ａ、４３ｂ、４３ｃである。このシーン重要単語データベース４３ａ、４３ｂ、４３ｃは、入力された単語と照合して、高速でシーンを特定するために配列した単語のデータ群のことである。シーン制御部４ａが、シーン重要単語データベース４３ａ、４３ｂ、４３ｃやシーン毎の全タップルデータが納まっているシーンに基づく単語データベース４２ａ、４２ｂ、４２ｃにアクセスすることで対話内容のシーンが特定できる。
【００７８】
そこで、図４に示した本発明に係るコンピュータによる音声対話をカーナビゲーションに適用して具体的に説明する。尚、この場合、図４のユーザ１００は車の運転手に、そしてユーザコンピュータ１はカーナビゲーションに相当する。
【００７９】
本発明に係るコンピュータによる音声対話において、ユーザ１００がマイクにより入力された音声は、まず音声認識部３１で認識されて入力文章となる。そして、文章解析及び単語解析が行われる。
入力文章とは、入力された音声、つまり音を、電気的な信号に変換されたものを表している。入力文章は、対話を繋げるために必要不可欠な入力単語に分解される。
【００８０】
例えば、ユーザ１００がユーザコンピュータ１に「聞きたいことがあるから、起きてくれる。（入力文１）」と、ユーザコンピュータ１に起動をかける。ユーザコンピュータ１はこの音声に反応して、「私を起動してくれてありがとう。私は食事、宿泊施設、そしてレジャーランドの三つのシーンについて話が出来ます。（出力文１）」と、返答する。これは、起動されたときに、ユーザコンピュータ１が対話可能な内容、つまりシーン、をユーザ１００に答えるプログラムが質問処理部３９に記録されているからである。すなわち、ユーザコンピュータ１の中には、食事、宿泊施設、そしてレジャーランドの三つのシーンに関するデータが保存されていて、ユーザ１００は出力文１を受けて、三つの内のどのシーンの対話をするのかを決める必要がある。ユーザコンピュータ１では、出力文１を音声合成部３６から出力すると同時に、食事、宿泊施設、レジャーランドの三つシーン固有のシーン重要単語データベース４３ａ、４３ｂ、４３ｃの単語を一時的にキャッシュメモリ２ａに保存する。
【００８１】
ユーザ１００は出力文１に対して、「そうだな、食事をしたいな。（入力文２）」と答える。入力文２の中には、「食事」という入力単語がある。これを音素メモリ部３２で認識する。そして、シーン判定プログラム４１は、一時的にキャッシュメモリ２ａに蓄えたシーン重要単語データベース４３ａ、４３ｂ、４３ｃに照合をかける。この場合には、明らかに食事のシーンだけに「食事」の単語があったので、対話内容のシーンが「食事」であることが特定される。これは、対話の範囲が狭まったことを意味していて、本発明の最も重要な工程である。
【００８２】
しかし、音声メモリ部３２で認識した入力単語が、複数のシーンのシーン重要単語データベース４３ａ、４３ｂ、４３ｃに重複してあったときには、その単語の数にシーン内でのその単語の出現頻度値や重要度計算値を乗じた数が多いシーンが、対話のシーンである可能性が高いことと判断する。ところが、その乗じた数は、相対的な数であるので、絶対的にその数で判断するのには問題がある。そこで、その際にはユーザコンピュータ１は、ユーザ１００にこのシーンで良いのかどうかを聞くか、又は更なるシーン特定のための情報入力を促して、シーンを決定する。
【００８３】
シーンは、明らかに特定されたと思われるが、念を押して確認するために、質問処理部３９のプログラムに従って、発話テンプレート部３７の次のフォーマットが起動する。発話テンプレート部３７には、シーンが決まったときに、それを聞き返すフォーマットである「〜の話ですね。」が記録されている。「〜」の部分には特定されたシーンが当てはめられて、「食事の話ですね。（出力文２）」とユーザ１００に確認することが出来る。
ユーザ１００は出力文２に対して、「そうだよ。（入力文３）」という入力文３を入力する。
以上の工程を得ることで、シーンが確実に特定され、対話が続けられる。
【００８４】
次に、特定された「食事」のシーンに対して、どのような話をしたいのかをユーザコンピュータ１はユーザ１００に聞く。「どのカテゴリのものが食べたいですか？」や「どのようなジャンルの料理が食べたいですか？」等の対話のコツ部３８の指示に従って発話テンプレート３７に含まれているフォーマットを起動して、出力文を出力する。これにより、ユーザコンピュータ１は、ユーザ１００に対話を続けていくための情報の入力を促すことが可能になる。
【００８５】
対話のコツ部３８は、観点をユーザ１００に聞くプログラム群であり、シーンによって異なるプログラム群を形成することも可能である。対話のコツ部３８には、シーンが特定された後に、ユーザ１００に観点の入力を促す仕組みが設けられている。「食事」のシーンが特定されると、「食事」のシーンに関するサロゲイト化データベース２０ａ中のスキーマＡ２５ａが対話のコツ部３８に呼び出される。対話のコツ部３８は、タップルを特定するために、呼び出したスキーマＡ２５ａを使用する。具体的には、「ジャンル」と「食材」の入力を促して、タップルを特定するというプログラムが対話のコツ部３８に組み込まれている。もちろん、どの観点の入力を促しても良いし、全ての観点の入力を促すことも可能である。しかし、対話を滑らかに組み立てるためには、二つ以上五つ程度の観点の入力を促して、対話を進めた方が、対話が双方向で滑らかに、且つ確実に行われているようにユーザ１００に感じさせることが出来る。また、ユーザ１００が入力した入力音声から入力単語を抽出するために、音素メモリ部３２にそれぞれの観点に対するタップルデータが記録される。しかし、音素メモリ部３２に記録されるタップルデータの数が多いと照合に長い時間を要するようになる。そこで、照合時間が３秒以内に収まる量のタップルデータのみが音素メモリ部３２には保存されるようになっている。また、３秒以内に照合できないときには、ユーザ１００に聞き返したり、更なる質問をしたりして対話が途切れないようにするようになっている。
【００８６】
一方、シーンが特定された後は、キャッシュメモリ２ａ上でコツキャッシュを用いて対話が滑らかに、且つ高速に行われる。これを実現するため、シーンが特定されたと同時又は直後に、外部記憶装置部２ｂに保存されている特定されたシーン「食事」に固有のコツキャッシュ２８ａをキャッシュメモリ２ａにコピーして記録する（図４参照）。
【００８７】
「どのような食材を用いた料理を食べたいですか？（出力文３）」と問われたユーザは、「日本料理が食べたい。」や、「ラーメンが食べたい。」や、「中華が食べたい。」等の返事を入力することが好ましい。しかし、図４の実施形態においては、ユーザは、「海の近くに来たから、魚介類が食べたいな。（入力文４）」と応答した。
【００８８】
入力文４を音声認識部３１で文章解析や単語分解を行うと、「海」、「魚介類」という入力単語が抽出される。「海」、「魚介類」の入力単語は、この段階では「音素メモリ部」に蓄えられる。次に、「どのようなジャンルの料理が食べたいですか？（出力文４）」とユーザコンピュータ１は、ユーザ１００に聞く。そこで、ユーザ１００は、「日本料理がいいな。（入力文５）」と答える。入力文５を音声認識部３１は処理して、「日本料理」の入力単語を抽出する。
【００８９】
対話のコツ部３８が、入力を促した二つの観点はこれにより満たされたので、動作指示部４ｂの検索プログラム部４６にこれらの抽出された入力単語は送られる。検索プログラム部４６は、入力された入力単語「海」、「魚介類」そして「日本料理」とコツキャッシュ２８ａの単語を照合し、照合により合致した一又は複数の単語からさらにシーンの中の話題、具体的にはタップルを特定する作業が行われる。
【００９０】
しかし、「海」や「魚介類」という入力単語は、コツキャッシュ２８ａのタップルデータに合致しない。そこでユーザコンピュータ１は、類似リンク部５０の中の類義語辞書、同義語辞書、類推検索辞書を用いて、ユーザ１００が意図している単語を探す。これによりコツキャッシュ２８ａの中の「魚」が候補に浮上した。ここで、候補に挙がるタップルデータは、ユーザコンピュータ１による検索で８０％以上の確率でユーザ１００が意図している単語であることが認められたものに限定されている。この確率には、類義語辞書、同義語辞書、類推検索辞書にそれぞれ付されている確率を用いる。ここで導き出した「魚」というタップルデータがユーザ１００の意図したものと合致する可能性は、８０％以上であったが、１００％ではない。
【００９１】
そこで、質問処理部３９に従って発話テンプレート３７に含まれているフォーマットを起動して、ユーザコンピュータ１はユーザ１００に、「魚の料理が食べたいのですか？（出力文５）」と聞き返す。これに対して、ユーザ１００は、「そうだよ。（入力文６）」と答える。
【００９２】
この結果、「食材」の観点のタップルデータは「魚」であることが確定した。しかし、「魚」を含むタップルは図３によると、たくさんある。一方、「日本料理」の入力単語は、コツキャッシュ２８ａ内のタップルデータの「日本料理」と合致した。「日本料理」のタップル番号を見ると、Ｔ１とＴ４の二つである。
【００９３】
これにより、検索プログラム部４６では、コツキャッシュ２８ａの「魚」と「日本料理」のタップル番号を用いて、「魚」と「日本料理」のタップル番号の集合を求める。つまり、「魚」のタップルデータを含んだタップルのタップル番号と、「日本料理」のタップルデータを含んだタップルのタップル番号とから、両方にあるタップル番号を探す。その結果、Ｔ１のタップルを特定することが出来る。
【００９４】
特定したタップルのタイトルをユーザコンピュータ１はユーザ１００に答える。これは、スキーマＡ２５ａの内で、「タイトル」の観点に相当するものを出力するように質問処理部３９のプログラムが組まれているからである。「新東京寿司はいかがですか？（出力文６）」とユーザコンピュータ１は尋ねる。しかし、ユーザ１００は、車を運転しているところなので、「駐車場は、あるの？（入力文７）」とユーザコンピュータ１に聞く。
【００９５】
入力文７は、音声認識部３１で処理されて、「駐車場」という入力単語が抽出される。対話のコツ部３８のスキーマＡ２５ａに含まれる観点に当てはまるものがあるかどうかが、音素メモリ部３２で照合される。音素メモリ部３２は、当てはまる単語が無いので、対話のコツ部３８は他のスキーマ、具体的にはスキーマＢ２５ｂやスキーマＣ２５ｃをサロゲイト化データベース２０ａから呼び出す。その結果、音素メモリ部３２はスキーマＢ２５ｂの中に「駐車場」の観点を見つけることが出来る。検索プログラム部４６では、「駐車場」の観点のタップルデータをサロゲイト化データベース２０ａに読みに行く。その結果、Ｔ１のタップルの駐車場の観点には、「無し」というタップルデータが入っていることが分かる。それ故、発話テンプレート部３７を使って音声合成部３６から「駐車場は無いです。（出力文７）」を出力する。
【００９６】
ユーザ１００は、そこで「中華料理でも良いよ。（入力文８）」と答える。この入力文８を受けて、対話のコツ部３８は、先に入力された「日本料理」に代えて、「中華料理」を、「ジャンル」の観点に入れる。これを受けて検索プログラム部２９は、「日本料理」を消去して、「魚」、「駐車場」、「中華料理」で検索をコツキャッシュ２７ａにかける。その結果、Ｔ２のタップルが条件に合致したので、ユーザコンピュータ１は「四川創作亭はいかがですか？（出力文８）」とユーザ１００に尋ねる。ユーザ１００は、「そこで良いよ。（入力文９）」と答える。これにより、シーンが「食事」で、タップルが「四川創作亭」と決まった。ここまでが、タップルを決める工程で、コツキャッシュ２８ａを用いて対話を行う工程になる。
【００９７】
ところで、以上の工程で特定されたタップルが一つではなく、複数あるときには、さらに対話の内容を絞る条件をユーザ１００に入力する様に促すことにつながり、対話のコツ部３８が起動する。対話のコツ部３８では、一回でタップルが特定できなかったときに、さらに未だ特定していない「観点」の入力を促すプログラムが準備されている。そこで、ユーザコンピュータ１は、「どのカテゴリの料理が良いですか？例えば、中華料理には、四川料理、広東料理、上海料理、北京料理があります。また、日本料理には、天ぷら、寿司、鍋料理等があります。どれが宜しいですか？」と言うような質問をユーザ１００に行う。このようにして、タップルを特定する要素を多くして、ユーザ１００が希望するタップルを検索することが可能になる。
【００９８】
タップルが決まると、スキーマと、そして特定したタップルＴ２のデータが、対話のコツ部３８に呼び出されて、何時でもユーザコンピュータ１はＴ２のタップルの内容をユーザ１００に答える準備を整える。
【００９９】
次に、特定したＴ２のタップルを用いて対話を進めていく。ユーザコンピュータ１が、四川創作亭に行きますか？（出力文９）」と尋ねる。ユーザ１００は、「四川創作亭に行こう。ところで、何がおいしいの？（入力文１０）」とユーザコンピュータ１に尋ねる。入力文１０を受けて、ユーザコンピュータ１は、Ｔ２のタップルから関連事項である「エビチリがお勧めです。（出力文１０）」と答える。「写真があれば、見たいな。（入力文１１）」と入力する。これを受けて、ユーザコンピュータ１は、「写真を表示します。車を止めてから見て下さい。（出力文１１）」と、ユーザに答える。このようにして、ユーザ１００とユーザコンピュータ１の対話は、行われる。
尚、対話途中で、シーンが変わったときには、シーン制御部４ａや検索プログラム部４６を用いて、再度シーンやタップルを特定して滑らかに、且つ高速で対話処理を行うことが出来る。
【０１００】
次に、本発明に係るコンピュータによる音声対話において、インターネット等の通信手段を介して情報を収集する知識獲得について説明する。
図５は、本発明に係るコンピュータによる音声対話におけるインターネット等の通信手段を介した知識獲得を表したブロック図である。
図５において、左側半分のユーザコンピュータ１及びユーザ１００の関係は、図４を用いて説明した一の実施形態と同じである。インターネット等の通信手段を介した知識獲得では、情報収集共有処理部６が必要である。図５では、情報収集共有処理部６は、ユーザコンピュータ１と通信回線を介して繋がっている中央管理センターにある。情報収集共有処理部６は、ユーザコンピュータ１の内部に有するように構成しても良い。
【０１０１】
情報収集共有処理部６は、単語・分解処理部６１と、単語まとめ部６２と、ＵＲＬ検索処理部６３と、ＵＲＬ知識体６４と、インターネット知識獲得部６５と、Ｗｅｂロボット６６と、ダイナミックまとめ部６７と、頻度プログラム部６８、そして図示しない複数の概念辞書とにより構成されている。
また、ユーザコンピュータ１の対話コントロール部３等と結びつき情報収集共有処理部６は、起動している。もちろん情報収集共有処理部６に必要な機能のみを組み込んで、独立した端末として起動させることも可能である。
【０１０２】
単語分解・処理部６１は、ユーザ１００が入力した入力文章を文章解析及び単語解析を行い、意味のある単語を抽出する役目を担っている。しかし、図５においては、ユーザ１００と情報収集共有処理部６とは、ユーザコンピュータ１を介して繋がっているので、単語分解・処理部６１は起動していない。つまり、ユーザコンピュータ１の対話コントロール部３で、単語分解・処理部６１の仕事が成されているので、あえて単語分解・処理部６１で入力文章の解析を行う必要が無い。それ故、図５においては、ユーザコンピュータ１から入ってきた単語等のデータは、単語まとめ部６２に伝わる。
【０１０３】
単語まとめ部６２は、入力された入力単語を基に集めてくる情報を、どのような観点に従って分類しようか、つまり、どのようなスキーマに従って分類をするかを決定する役割を担っている。単語まとめ部６２には、既存スキーマ６２ａと、新規スキーマ６２ｂとが蓄えられるメモリを有している。既存スキーマ６２ａは、観点が入力されないときに、入力された入力単語を基に集めてくる情報を整理するための観点「５Ｗ１Ｈ」が入っている。「５Ｗ１Ｈ」とは、Ｗｈｏ（だれが）・Ｗｈｅｎ（いつ）・Ｗｈｅｒｅ（どこで）・Ｗｈａｔ（なにを）・Ｗｈｙ（なぜ）・Ｈｏｗ（どうした）のことである。一方、新規スキーマ６２ｂとは、ユーザ１００の意向の基に作成されるスキーマのことである。例えば、図２におけるスキーマＡ２５ａを用いて、入力された入力単語を基に集めてくる情報を分類したいのであれば、ユーザ１００が、ユーザコンピュータ１を介して新規スキーマ６２ｂをスキーマＡ２５ａとする指示を入力する。また、全く別の観点に基づきその情報を分類したいのであれば、ユーザ１００が単語まとめ部６２に、その都度新規スキーマ６２ｂを作成することが出来る。つまり、ユーザ１００が複数の入力単語を入力し、これらの入力単語がどの観点に属するのかを概念辞書を用いて特定して、特定された観点に基づいて新規スキーマ６２ｂが形成される。
【０１０４】
ＵＲＬ検索処理部６３は、ＵＲＬ知識体６４と密接に繋がっていて、入力された入力単語を基に情報を集めるに当たって、どのＵＲＬを用いて、どのホームページにアクセスするのかを決定する。ＵＲＬ知識体６４は、予め作成しておくデータベースであって、あるシーン固有の一つの事例を指し示すホームページのＵＲＬと、そのホームページ内の単語等の複数のデータとを組にして、膨大なシーンに対するデータベースを保存している。ＵＲＬ検索処理部６３は、入力された単語をＵＲＬ知識体６４のデータベースに当てはめて、合致単語数の多いＵＲＬを一つ決定する。
【０１０５】
インターネット知識獲得部６５は、ＵＲＬ検索処理部６３で決定したＵＲＬを基に、情報を探す。そして、Ｗｅｂロボット６６は、ＵＲＬ検索処理部６３で決定したＵＲＬを基にＵＲＬデータ６５ａを取り込み、そのＵＲＬデータ６５ａの中にあるリンクされたＵＲＬ６５ｂを取り出し、それらでまたＵＲＬ６５ｂのデータを取り込む機構を備えている。それ故、Ｗｅｂロボット６６は、自立型のロボットであり、ユーザの意志に従って動くものではない。つまり、情報収集共有処理部６がユーザ１００によりアクセスされていない時に、Ｗｅｂロボット６６はＵＲＬ知識体６４を拡張する作業を行っている。
【０１０６】
ダイナミックまとめ部６７は、インターネットを介して収集した情報を、単語まとめ部６２で決定したスキーマを基に分類してタップルを一つ作成する。つまり、単語まとめ部６２で決定したスキーマに対して、一つの事例に関する一のタップルを作成する。作成した一組のスキーマとタップルは、ユーザコンピュータ１に伝達され、ユーザ１００に伝えられる。
【０１０７】
頻度プログラム部６８は、勘違いプログラムを有している。図５において図示していない勘違いプログラムは、一定回数以上、ユーザ１００から情報収集共有処理部６に同一の事例、または同一のシーンに関する情報を収集するようにアクセスがあったときに、起動するように設定されている。例えば、「同一シーンに対して一週間で５回以上アクセスがあったとき」のような設定がされている。勘違いプログラムは、シーン固有の概念辞書を用いて、シーン固有のサロゲイト化データベースを新規に作成する。このサロゲイト化データベースの構築は、人間の意志に関係なく行われる。そのため、作成した時点で、ユーザ１００に新規に構築したサロゲイト化データベース２０ｄをユーザコンピュータ１の外部記憶装置部２ｂに記録するか否かを質問する。この質問により始まるユーザ１００との対話の中で、ユーザ１００は新規に構築したサロゲイト化データベース２０ｄを修正することも可能である。スキーマを修正して、再構築することも出来る。こうして、ユーザコンピュータ１等は、ユーザ１００の意向に沿って構築した新規のサロゲイト化データベース２０ｄを構築し、ユーザコンピュータ１の外部記憶装置部２ｂにサロゲイト化データベース２０ｄを保存することが出来る。もちろん、ユーザコンピュータ１等が構築したサロゲイト化データベース２０ｄが不要の時には、ユーザ１００はその旨をユーザコンピュータ１等に伝えて削除することも出来る。
【０１０８】
外部記憶装置部２ｂにサロゲイト化データベース２０ｄが保存されると、外部記憶装置部２ｂの中で、ユーザコンピュータ１はサロゲイト化データベース２０ｄに基づくインデックスファイルとコツキャッシュを作成する。このインデックスファイルは、サロゲイト化データベース内のタップルデータを集めたものであるので自動的に作成される。しかし、コツキャッシュはタップルデータに使用頻度が付されるため、ユーザコンピュータ１が勝手に構築するのは不可能である。そのため、ユーザコンピュータ１は、ユーザ１００に聞きながらコツキャッシュに入れるタップルデータを聞く。例えば、「観点「何々」に関するタップルデータをコツキャッシュに入れますか？」等と質問をして、ユーザ１００に入力を促すことでコツキャッシュにタップルデータを入れることも可能である。この時には、使用頻度は、全て最も高い値、例えば１００％にしておくように設定したほうが良い。これは、使用するたびに、使用頻度が変わり、望みのコツキャッシュが形成されるためである。
【０１０９】
一方、サロゲイト化データベース２０ｄに基づくコツキャッシュには、当初は何のデータを入れておかなくても良い。つまり、空のままでも良い。これは、使用されるごとにインデックスファイルからコツキャッシュにタップルデータがコピーされて、コツキャッシュが成長していくので、コツキャッシュが自己成長型である特性を利用することにつながる。
【０１１０】
次に、本発明に係る分散共有技術（以下、ＯＦＣ）について説明する。
図６は、本発明に係るＯＦＣ７を地域ネットワーク社会に適用したところを表したブロック図である。
ＯＦＣ７は、各ユーザ端末、各家、会社単位で設置可能な、独立した共有化技術である。図６において、ユーザコンピュータ１にＯＦＣ７が外部に相互に開かれて設置されている。
【０１１１】
ＯＦＣ７は、各ＯＦＣ７を介して分散されて設置されている又は遠隔の地にある自己の又は他人の情報、すなわち世の中にある複数のサロゲイト化データベースを共有化するための技術である。サロゲイト化データベースを、各々のユーザコンピュータ等の端末で利用するためにはコツキャッシュが必要であり、それぞれのサロゲイト化データベースにはコツキャッシュが設けられている。もちろん、サロゲイト化データベースからコツキャッシュを作る際に必要不可欠であるインデックスファイルも設けられているが、図６における実施例では、インデックスファイルの記載を省略している。
【０１１２】
一方、サロゲイト化データベース、コツキャッシュ及びインデックスファイルは、互いに直接にアクセスして利用可能であるが、利用頻度が高いときや他のユーザコンピュータのサロゲイト化データベースを自己の好みに合わせて作り変えたいとき等には、他のユーザコンピュータにあるサロゲイト化データベースをコピーして自己のユーザコンピュータにダウンロードすることも可能である。また、サロゲイト化データベースをコピーすることが可能であるため、サロゲイト化データベースの原本がどこにあったものなのか、又はあるものなのかを示す端末番号が、サロゲイト化データベースばかりでなく、コツキャッシュ及びインデックスファイルの全てのデータには付されている。これによりサロゲイト化データベース等をコピーしてきても、いつでも原本に容易に行き着くことが可能になる。
【０１１３】
さらに、コピーしたサロゲイト化データベースを修正したり、改善したりした際に、原本をこれに対応させて更新することも可能である。複数のユーザコンピュータを繋いで、一つのサロゲイト化データベースを共有する際には、それぞれのユーザコンピュータでサロゲイト化データベースはコピーされて、使用される。使用された結果、サロゲイト化データベースは、タップルデータは修正され及び増加され、改善される。使用が終わった後、サロゲイト化データベースに起動をかけると、改善されたサロゲイト化データベースが原本に反映される。そのため、使用されることにより、サロゲイト化データベースが進化することになる。これは、サロゲイト化データベースは、時代遅れになることなく、常に最新の情報で満たされていることを意味している。
【０１１４】
図６では、ユーザ１００がいて、ユーザコンピュータ１が設置されているのが自家用車８１となっている。また、自家用車８１のユーザコンピュータ１は、他の民家８２や中央管理センター９内のそれぞれのコンピュータと、インターネット等の通信回線を通じて繋がっている。また、それぞれのコンピュータには、ＯＦＣ７が外に向かって、及び内に向かって開かれている。
【０１１５】
ＯＦＣ７を介して、ユーザ１００は他のコンピュータにあるデータベースを有効に活用することが可能である。ユーザ１００のユーザコンピュータ１には、カーナビで有効に用いられるレジャーランド、宿泊、食事のシーンに関するサロゲイト化データベース等のデータが保存されている。そのため、ユーザ１００は、カーナビとしてのみ、サロゲイト化データベースを利用するのであれば、不自由は感じない。しかし、ユーザが旅をして、フィールドワークを行った際には、旅先で、フィールドワークに必要な情報を利用する必要性が出てくる場合がある。図６は、そのような状況を想定している。
【０１１６】
ユーザ１００は、植生を調べるために、海岸線を探索していたが、１年前には無かった崖を発見した。ユーザ１００は、海岸線で露出している断層を発見し、断層から地層ごとにサンプルを採取した。サンプルは、持ち運び可能な分析器等により、分析された。しかし、ユーザ１００は、地質学の専門家ではないため、ユーザ１００は判断することが出来ない。そこで、ＯＦＣ７を介して、他のユーザのユーザコンピュータにある地質学のサロゲイト化データベースを利用することを思いついた。
【０１１７】
ユーザ１０１のサロゲイト化データベース１０１ａには、地質学に関する膨大なデータが、ユーザ１０１が入力した観点を配列したスキーマに基づき整然と保存されている。また、地質調査に関して利用頻度の高い単語が収められたコツキャッシュ１０１ｂがサロゲイト化データベース１０１ａの検索用に構築されている。また、ユーザ１０１のこれらのデータは、ＯＦＣ７を介して外に開かれている。そのため、ユーザ１００は、自家用車８１のカ−ナビを介して、ユーザ１０１のサロゲイト化データベース１０１ａやコツキャッシュ１０１ｂを自己のデータベースのごとく利用できる。
【０１１８】
しかし、ユーザ１０１のサロゲイト化データベース１０１ａがどこにあるのかユーザ１００は知らない。そこで中央管理センター９の情報収集共有処理部６のＵＲＬ知識体６４に地質学のサロゲイト化データベース１０１ａが存在しているのかを検索に行く。ＵＲＬ知識体６４には、ＵＲＬばかりでなくそのＵＲＬを利用して作成したサロゲイト化データベースの原本の所在情報が記録されている。そこで、ユーザ１０１のユーザコンピュータに地質学のサロゲイト化データベース１０１ａが存在しているのを確認することが出来た。
【０１１９】
コツキャッシュ１０１ｂは、ユーザ１００から真っ先にアクセスされる入り口の役目を果たし、ユーザ１００が意図する単語からシーンを特定することが出来る。これにより、ユーザ１０１のサロゲイト化データベース１０１ａからユーザ１００は必要なデータを迅速に取りだして、解析結果を導き出すことが出来るようになる。これは、サロゲイト化データベース１０１ａへの高速検索を可能にするコツキャッシュ１０１ｂがＯＦＣを介して窓口になっているためである。これによりインターネット等の通信回線を通じて提供されるデータ量が少なく、且つ検索が速やかに行われ、通信に要する時間が短時間ですむようになる。具体的には、一つの情報を検索するために要する時間は数ｍｓ程度である。
【０１２０】
ＯＦＣ７を介して、分散環境にある他のサロゲイト化データベースを自己のサロゲイト化データベースのように利用することが出来る。しかし、特定の者にのみ利用を許して、自己のサロゲイト化データベースの秘密性を保つことも可能である。これは、各ユーザコンピュータ等において、ＯＦＣ７が一番外に設置されているので、ＯＦＣ７で特定のコードを有するものからのアクセスのみ中に入れるセキュリティーを設けることもＯＦＣ７では可能である。これにより、情報の安全な運用が可能になる。
【０１２１】
また、図５で示した情報収集共有処理部６でのインターネット等の通信回線を介しての知識獲得等もＯＦＣ７により、制限することが出来る。例えば、スキーマに手を加えるためには、ＯＦＣ７を介して中央管理センター９にアクセスして、認可を得なければならないように設定する。この認可は、ＯＦＣ７の設置時の契約により設けるだけではなく、ユーザからの要望により設けることが出来る。なぜならば、ユーザコンピュータが共有に係るとき等に、勝手に他のユーザによって新規のサロゲイト化データベースが構築されたり、既存のサロゲイト化データベース内の情報が更新されたりしないようにすることを可能にするためである。
【０１２２】
以上より、サロゲイト化データベースを用いて、有効に情報探索を行い、且つセキュリティー管理をしながら、人間とコンピュータの自然な対話を実現することが出来るようになる。また、このシステム及び方法を、他の領域、例えば、老人介護への適用、遠隔地医療への適用、留守宅のセキュリティーシステムへの適用、遠隔教育への適用に用いることで、地理的、又は時間的な差の無いサービスの提供を行うことが出来るようになる。
【０１２３】
【発明の効果】
請求項１に記載の発明によれば、ユーザの意図する対話のシーンを確実に識別でき、円滑に且つ即座にユーザはユーザコンピュータとの対話の中で得たい情報を獲得することが出来るようになる効果を有する。
請求項２に記載の発明によれば、シーン毎のデータをシーンに基づき利用することが出来るようになる効果を有する。
【０１２４】
請求項３に記載の発明によれば、シーンを特定するための入力単語をユーザが入力した入力文章から確実に抽出でき、また音素メモリに保存されている単語は頻繁に書き換えられるので入力単語を抽出するために音素メモリに一度に保存される単語の数が少なくてすみ、迅速に入力単語を識別できるようになる効果を有する。さらに、抽出した入力単語からシーンをユーザコンピュータによる演算により、的確に絞り込むことが出来る効果を有し、最終的にはユーザに質問するので確実にユーザの意図するシーンを特定できる効果を有する。
【０１２５】
請求項４に記載の発明によれば、シーンを特定する単語を的確にユーザコンピュータはユーザから獲得することができ、且つシーンを特定できないときにユーザコンピュータは勝手にシーン特定の工程を進めていかないので紆余曲折することなく確実にシーンを特定することが出来る効果を有する。
請求項５に記載の発明によれば、シーンが特定されたときにシーン固有のコツキャッシュの準備が直ぐに整えられるので、シーン固有のサロゲイト化データベースに迅速にアクセスすることが出来る効果を有する。
【０１２６】
請求項６に記載の発明によれば、観点に基づき対話が進行して、データ容量が少なく且つ使用頻度に従ってタップルデータが整理されたコツキャッシュを活用するので、迅速に一のタップル、すなわち一の事例が特定できる効果を有する。請求項７に記載の発明によれば、コツキャッシュでタップルが特定できなくても、インデックスファイルがあるので、インデックスファイルを活用し、的確に一のタップルを特定することが出来るようになる効果を有する。
【０１２７】
請求項８に記載の発明によれば、特定したタップル、つまり特定した事例の有用な情報のみを迅速にユーザは、ユーザコンピュータから得ることが出来る効果を有する。
請求項９に記載の発明によれば、サロゲイト化データベース内の情報に新規情報が付加され、または新たにサロゲイト化データベースが構築されるので、最新の情報を用いて対話を進めることが出来る効果を有する。
【０１２８】
請求項１０に記載の発明によれば、汎用のユーザコンピュータを用いて、簡単に音声による対話を、シーンに基づいて迅速に進めることが出来る効果を有する。
請求項１１に記載の発明によれば、シーン毎のデータをシーンに基づき整理して、且つユーザコンピュータは利用することが出来るようになる効果を有する。
【０１２９】
請求項１２に記載の発明によれば、一のユーザコンピュータでシーンを的確に特定し、そしてそのシーンに基づくタップルを特定できるので、円滑に対話を進めることが出来る効果を有する。
請求項１３に記載の発明によれば、最新の情報を有効に活用することが出来るようになる効果を有する。
【０１３０】
請求項１４に記載の発明によれば、一般に流布されている事例を、観点に基づき有効に配列し、有用なデータからなるサロゲイト化データベースをシーン毎に構築することが出来るようになる効果を有する。
請求項１５に記載の発明によれば、概念辞書中のシチュエーション単語と事例中の単語を照合することで、事例中の単語に一の観点を的確に付し、サロゲイト化データベースに事例中の単語を組み込むことが出来る効果を有する。
【０１３１】
請求項１６に記載の発明によれば、サロゲイト化データベース中のスキーマを階層化することが出来るので、事例中の単語等のデータを上位概念から下位概念に、または抽象的な観点から明確な観点までの広範囲にわたって、さらには大きなシーンから小さなシーンまでを階層的に分類且つ整理したサロゲイト化データベースが構築できる効果を有する。また、観点の従属関係を、スキーマの階層化に反映することが出来る効果を有する。
請求項１７に記載の発明によれば、サロゲイト化データベースにコツキャッシュを持たせることが出来るので、サロゲイト化データベース内のタップルを検索することが迅速に出来る効果を有する。
【０１３２】
請求項１８に記載の発明によれば、インターネット等の通信回線で接続されていて、互いに開かれているサロゲイト化データベースを共有することが出来るため、重複したサロゲイト化データベースの構築の労が省くことが出来る効果を有する。
請求項１９に記載の発明によれば、インターネット等の通信回線を通じて開かれているデータが、インターネット上を浮遊することが無く、的確に著作権等も保護することが出来る効果を有する。
請求項２０に記載の発明によれば、原本の管理者に使用状況を知らせることができ、サロゲイト化データベース等の使用に応じて、サロゲイト化データベースを成長させることが出来る効果を有する。
【図面の簡単な説明】
【図１】本発明に係るサロゲイト化データベースの構築方法を説明したブロック図である。
【図２】本発明に係るサロゲイト化データベースの具体例である。
【図３】図２に示したサロゲイト化データベースと同一のシーンに関するコツキャッシュである。
【図４】本発明に係るコンピュータによる音声対話の一実施形態を示すブロック図である。
【図５】本発明に係るコンピュータによる音声対話におけるインターネット等の通信手段を介した知識獲得の一実施形態を表したブロック図である。
【図６】本発明に係るＯＦＣを地域ネットワーク社会に適用したところを表した一実施形態のブロック図である。
【符号の説明】
１  ユーザコンピュータ
２ａ  キャッシュメモリ
２ｂ  外部記憶装置部
２０ａ、２０ｂ、２０ｃ、２０ｄ  サロゲイト化データベース
２１  事例
２２  概念辞書
２２ａ  シチュエーション単語
２２ｂ  観点
２３  データマイニング部
２５ａ、２５ｂ、２５ｃ  スキーマ
２６  タップル
２７  カラム
２７ａ、２７ｂ、２７ｃ  インデックスファイル
２８ａ、２８ｂ、２８ｃ  コツキャッシュ
３  対話コントロール部
３１  音声認識部
３２  音素メモリ部
３６  音声合成部
３７  発話テンプレート部
３８  対話のコツ部
３９  質問処理部
４ａ  シーン制御部
４１  シーン判定プログラム
４２ａ、４２ｂ、４２ｃ  シーンに基づく単語データベース
４３ａ、４３ｂ、４３ｃ  シーン重要単語データベース
４ｂ  動作指示部
４６  検索プログラム部
５０  類似リンク部
６  情報収集共有処理部
６１  単語・分解処理部
６２  単語まとめ部
６２ａ  既存スキーマ
６２ｂ  新規スキーマ
６３  ＵＲＬ検索処理部
６４  ＵＲＬ知識体
６５  インターネット知識獲得部
６５ａ  ＵＲＬデータ
６５ｂ  ＵＲＬ
６６  Ｗｅｂロボット
６７  ダイナミックまとめ部
６８  頻度プログラム
７  ＯＦＣ
８１  自家用車
８２  民家
９  中央管理センター
１００  ユーザ
１０１  ユーザ
１０１ａ  サロゲイト化データベース
１０１ｂ  コツキャッシュ
【図１】
2004219714.tif 000003
【図２】
2004219714.tif 000004
【図３】
2004219714.tif 000005
【図４】
2004219714.tif 000006
【図５】
2004219714.tif 000007
【図６】
2004219714.tif 000008