(57)【特許請求の範囲】
【請求項１】
意味を特定することのできる漢字、ひらがな、カタカナ、英字、数字、記号及びその組合せにより構成される文字列を定義語と呼び、
自然言語の入力を受け付ける入力手段と、
入力された自然言語を正規化された標準文字列へ変換する変換手段と、
各定義語について、入力された自然言語の中で使用されている状態でのその定義語の使用方法、その定義語の抽出方法、その定義語についての質問への回答方法を記述言語により記述した手続きとその定義語の複数の属性とを意味決定情報として記憶した定義語記憶手段と、
上記意味決定情報のうち、各定義語の使用方法及び複数の属性を用いて上記標準文字列を構成する定義語の組合せを決定することにより各定義語の意味推定を行う意味推定手段と、
上記意味推定手段により推定された各定義語の抽出方法により入力された自然言語に含まれる情報を抽出する情報抽出手段と、
上記情報抽出手段により抽出された知識データ情報を蓄積する知識データ蓄積手段と、
上記入力手段により自然言語による質問を受け付け、上記意味推定手段により上記質問を構成する定義語の組合せを推定し、上記組合せの中の定義語の回答方法と上記知識データ蓄積手段により蓄積した知識データ情報を使用して質問に対応する回答を生成する回答生成手段とを備えることを特徴とする自然言語応答装置。
【請求項２】
上記定義語記憶手段に記憶された意味決定情報は、入力された自然言語を構成する定義語が、その関係により互いに影響する状態を、定義語の使用方法へ記述言語によって記述した処理手続きを記憶し、記憶した処理手続きを使用して自然言語解析を行うことを特徴とする請求項１に記載の自然言語応答装置。
【請求項３】
上記定義語記憶手段に記憶された意味決定情報は、入力された自然言語を構成する定義語が、その関係により互いに影響する状態を、定義語の抽出方法へ記述言語によって記述した処理手続きを記憶し、記憶した処理手続きを使用して、
入力された自然言語に含まれる情報を定義語の組合せによって表現される文字列で情報抽出することを特徴とする請求項１に記載の自然言語応答装置。
【請求項４】
上記定義語記憶手段に記憶された意味決定情報は、入力された自然言語を構成する定義語が、その関係により互いに影響する状態を、定義語の回答方法へ記述言語によって記述した処理手続きを記憶し、記憶した処理手続きを使用して、
入力された自然言語に含まれる情報取得要求に対応する回答生成処理を行うことを特徴とする請求項１に記載の自然言語応答装置。
【請求項５】
文字変換、語彙の意味決定、文の意味決定、文に含まれる情報抽出、語彙を核とした語彙構成変更及び構文構成変更、回答文の生成を定義語変換行列を使用して行うことを特徴とする請求項１に記載の自然言語応答装置。
【請求項６】
コンピュータにより実行される自然言語応答方法であって、
意味を特定することのできる漢字、ひらがな、カタカナ、英字、数字、記号及びその組合せにより構成される文字列を定義語と呼び、
各定義語について、入力された自然言語の中で使用されている状態でのその定義語の使用方法、その定義語の抽出方法、その定義語についての質問への回答方法を記述言語により記述した手続きとその定義語の複数の属性とからなる意味決定情報が記憶されており、
自然言語の入力を受け付け、入力された自然言語を正規化された標準文字列へ変換し、
上記意味決定情報のうち、各定義語の使用方法及び複数の属性を用いて上記入力された自然言語を構成する定義語の組合せを決定することにより各定義語の意味推定処理を行い、推定された各定義語の抽出方法により入力された自然言語に含まれる情報を抽出し、抽出した情報を知識データ情報として蓄積し、
自然言語による質問の入力を受け付け、上記意味推定処理により上記質問を構成する定義語の組合せを推定し、上記組合せの中の定義語の回答方法と上記知識データ情報を使用して質問に対応する回答を生成する、
ことを特徴とする自然言語応答方法。
【請求項７】
コンピュータに、
意味を特定することのできる漢字、ひらがな、カタカナ、英字、数字、記号及びその組合せにより構成される文字列を定義語と呼び、
各定義語について、入力された自然言語の中で使用されている状態でのその定義語の使用方法、その定義語の抽出方法、その定義語についての質問への回答方法を記述言語により記述した手続きとその定義語の複数の属性とからなる意味決定情報が記憶されており、
自然言語の入力を受け付け、入力された自然言語を正規化された標準文字列へ変換し、
上記意味決定情報のうち、各定義語の使用方法及び複数の属性を用いて上記入力された自然言語を構成する定義語の組合せを決定することにより各定義語の意味推定処理を行い、推定された各定義語の抽出方法により入力された自然言語に含まれる情報を抽出し、抽出した情報を知識データ情報として蓄積し、
自然言語による質問の入力を受け付け、上記意味推定処理により上記質問を構成する定義語の組合せを推定し、上記組合せの中の定義語の回答方法と上記知識データ情報を使用して質問に対応する回答を生成する、
との処理を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項８】
意味を特定することのできる漢字、ひらがな、カタカナ、英字、数字、記号及びその組合せにより構成される文字列を定義語と呼び、
自然言語の入力を受け付ける入力手段と、
入力された自然言語を正規化された標準文字列へ変換する変換手段と、
各定義語について、入力された自然言語の中で使用されている状態でのその定義語の使用方法、その定義語の抽出方法、その定義語についての質問への回答方法を記述言語により記述した手続きとその定義語の複数の属性とを意味決定情報として記憶した定義語記憶手段と、
上記意味決定情報のうち、各定義語の使用方法及び複数の属性を用いて上記標準文字列を構成する定義語の組合せを決定することにより各定義語の意味推定を行う意味推定手段と、
上記意味推定手段により推定された各定義語の抽出方法により入力された自然言語に含まれる情報を抽出する情報抽出手段と、
上記意味推定手段と情報抽出手段の解析結果を用いて、定義語の組合せにより文を構成することにより、入力された自然言語をより正規化された標準文字列へ変換する手段とを備えることを特徴とする標準文字列自動変換装置。
【請求項９】
上記定義語記憶手段に記憶された意味決定情報は、入力された自然言語の中で使用されている状態で、入力された自然言語を構成する定義語が、その関係により互いに影響する状態を定義語の使用方法、抽出方法に区分して記述言語により記述した処理手続きを使用して、入力された自然言語を正規化された標準文字列へ変換することを特徴とする請求項８に記載の標準文字列自動変換装置。
【請求項１０】
上記定義語記憶手段に記憶された意味決定情報は、入力された自然言語を構成する定義語が、その関係により互いに影響する状態を、定義語の使用方法へ記述言語によって記述した処理手続きを記憶し、記憶した処理手続きを使用して自然言語解析を行うことを特徴とする請求項８に記載の標準文字列自動変換装置。
【請求項１１】
上記定義語記憶手段に記憶された意味決定情報は、入力された自然言語を構成する定義語が、その関係により互いに影響する状態を、定義語の抽出方法へ記述言語によって記述した処理手続きを記憶し、記憶した処理手続きを使用して、
入力された自然言語に含まれる情報を定義語の組合せによって表現される文字列で情報抽出することを特徴とする請求項８に記載の標準文字列自動変換装置。
【請求項１２】
文字変換、語彙の意味決定、文の意味決定、文に含まれる情報抽出、語彙を核とした語彙構成変更及び構文構成変更を定義語変換行列を使用して行うことを特徴とする請求項８に記載の標準文字列自動変換装置。
【請求項１３】
コンピュータにより実行される標準文字列自動変換方法であって、
意味を特定することのできる漢字、ひらがな、カタカナ、英字、数字、記号及びその組合せにより構成される文字列を定義語と呼び、
各定義語について、入力された自然言語の中で使用されている状態でのその定義語の使用方法、その定義語の抽出方法、その定義語についての質問への回答方法を記述言語により記述した手続きとその定義語の複数の属性とからなる意味決定情報が記憶されており、
自然言語の入力を受け付け、入力された自然言語を正規化された標準文字列へ変換し、
上記意味決定情報のうち、各定義語の使用方法及び複数の属性を用いて上記標準文字列を構成する定義語の組合せを決定することにより各定義語の意味推定処理を行い、
上記意味推定処理により推定された各定義語の抽出方法により入力された自然言語に含まれる情報を抽出する情報抽出処理を行い、
上記意味推定処理と上記情報抽出処理の解析結果を用いて、定義語の組合せにより文を構成することにより、入力された自然言語をより正規化された標準文字列へ変換する、
ことを特徴とする標準文字列自動変換方法。
【請求項１４】
コンピュータに、
意味を特定することのできる漢字、ひらがな、カタカナ、英字、数字、記号及びその組合せにより構成される文字列を定義語と呼び、
各定義語について、入力された自然言語の中で使用されている状態でのその定義語の使用方法、その定義語の抽出方法、その定義語についての質問への回答方法を記述言語により記述した手続きとその定義語の複数の属性とからなる意味決定情報が記憶されており、
自然言語の入力を受け付け、入力された自然言語を正規化された標準文字列へ変換し、
上記意味決定情報のうち、各定義語の使用方法及び複数の属性を用いて上記標準文字列を構成する定義語の組合せを決定することにより各定義語の意味推定処理を行い、
上記意味推定処理により推定された各定義語の抽出方法により入力された自然言語に含まれる情報を抽出する情報抽出処理を行い、
上記意味推定処理と上記情報抽出処理の解析結果を用いて、定義語の組合せにより文を構成することにより、入力された自然言語をより正規化された標準文字列へ変換する、
との処理を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１５】
前記意味決定情報の各定義語の複数の属性は、
定義語の読みを記述した１以上の文字列と、
定義語の品詞と、
定義語の品詞による活用と、
定義語の正規化された標準文字列の表記方法を記述した属性と、
定義語に対し、必要に応じて想像することのできる１以上の他の定義語と、
定義語と同じ意味を表す１以上の他の定義語、
からなる請求項８または１４に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、自然言語で表現された文字列に含まれる情報を文字列により抽出して蓄積した知識データに対して、自然言語による質問を行い、蓄積した情報を取得する自然言語応答装置及び方法に関する。
【０００２】
【従来の技術】
従来の形態素解析において、語彙の意味を確率、使用頻度、集合論、木構造を使用して予め定義し、語彙の組合せによる論理値や集合論による領域によって文章の意味を判断している。また、言葉によるコンピュータ操作は、特定の単語を記憶し、単語に対応した動作、単語、文章を登録しておき、論理回路による組合せにより動作を実行している。
【０００３】
文章の文脈解析において、文法解析手法が適用されている。これは、文法を定型パターンに分類し、このパターンに合致した語彙の意味接合条件により意味を確定する方法が取られている。
【０００４】
しかし、文章を構成する語彙の意味は、語彙の互いの関係により決定され、
その結果として文法が構成される必要があり、語彙の意味や文法を固定的に定義しておくことは、これらの関係を限定することになる。語彙や文法による文章の解析は、固定パターンを増大させてしまい、また、限定したパターンによる文章の解析は、パターン認識による近似が行われることになり、正確な情報を把握することが難しい。
【０００５】
上述したような意味解析は、
特開平４−１９１３３８号広報「質問回答方法および装置」、
特開平５−２３０７０１号広報「情報抽出装置」、
特開平７−０７８３５５号広報「自然言語の意味解析処理装置」、
特開平１０−３０４５８３号広報「自然言語処理装置及び方法」などがある。
【０００６】
【発明が解決しようとする課題】
自然言語で表される文章の意味は、文章を構成する語彙の組合せにより、一方の語彙が他方の語彙との関係により、互いに影響した結果として文章を構成する１つ１つの語彙の意味が決定され、文章全体が指し示す意味が決定される必要がある。また、文章は、文章全体が指し示す意味を含んでいるので、文章を構成する語彙が表現するイメージを決定し、文章を構成する個々の語彙の意味を確定する方法を用いる必要がある。
【０００７】
そこで本発明は、構文解析のための文法パターンを必要としない形態素解析を実現するために、文章を構成する語彙が他の語彙による影響を自律して判断し、文章を構成する語彙の組合せを語彙が変更すること（以下、このことを他の語彙に対する影響と定義する）により文章を構成する要素となる語彙を確定し、語彙の組合せによる意味を推定し、文章全体の概要となる意味を推定し、文章に含まれる情報を抽出し、抽出した情報を自然言語により蓄積することで、自然言語により蓄積した情報を自然言語により取得することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を解決するために本発明に係る自然言語応答装置及び方法は、文を構成する最小単位を定義語とし、定義語は、意味を特定することのできる漢字、ひらがな、カタカナ、英字、数字、記号及びその組合せによる文字列に対して定義される。自然言語による文章を入力し、文章の構成要素と成り得る全ての定義語が他の定義語へ与える影響を記述言語により記述した処理手続きを定義語の使用方法、抽出方法、動作方法、回答方法へ必要に応じて定義しておく。
従来、意味や使用方法による違いを人間が一般常識として判断し、選択していた語句を、記述言語で記述した手続きを定義語のデータの一部として定義することにより、文章を構成する定義語によって作られた組合せを、個々の定義語へ定義された手続きを実行することで、自己または、他の定義語への影響を定義語自身が判断し、文章を構成する定義語の組合せ構造を変化させ、文章を構成する最適な定義語の連結状態を作り出し、
【０００９】
文章に含まれる情報を抽出する場合や質問に対する回答を行う場合についても語句の組合せによって生じる条件を定義語の動作方法、回答方法へ定義されている記述言語による手続きを実行し、蓄積情報の検索条件を作り出すことで、質問に対して、個々の状況に応じた回答を的確に作り出すことができる。
【００１０】
上記定義語と定義語に対する上記方法を記述した手続きと定義語の言語学上の属性を定義したデータを定義語情報とした場合、文は定義語の連結状態として定義することができ、個々の定義語情報が小さなプログラムとして動作することのできるデータを記憶していて、文を構成する定義語情報の組合せにより形態素解析処理の手続きを決定することができる。このことは、組立て工場などの生産ラインにロボットを配置して１つの製品を生産することができるが、ロボットの機能や構成を変更することで他の製品を生産することができる。これは、個々のロボットは限定された機能を使用しているだけであるが、全体としての生産ラインでは、個々のロボットの構成やバランスをとることで、あらゆる製品を生産することができる。定義語情報に記述された上記手続きがこのロボットに相当し、上記手続きは限定的な動作定義がなされ、定義語情報の接続によって構成される文は生産ラインに相当する。ロボットである定義語情報の動作により生産物として、文の構文を解析し、文に含まれる情報を取得することができる。
【００１１】
このことは、文章全体の文法を解釈する必要が無く、定義語が他の定義語に与える影響を定義語にデータとして記述することで、定義語の組合せによるあらゆる文章表現に対応できることを特徴としている。
【００１２】
上記操作を行い、文章に含まれる情報を個別の文として取り出すことで、文章や語彙を数学モデルや数値に変換する必要が無いため、解析で必要とする情報量や記憶するデータ量を少なくすることができ、解析時間を短縮することで自然なスピードで対話を行うことができる。また、文章に含まれる情報を定義語の組合せによる文字列によって情報を知識データとして蓄積することで、数値化することが難しい言葉の表現自体に含まれる情報や意味を少ないデータで蓄積することができることを特徴としている。
【００１３】
【発明の実施の形態】
上記課題を解決するために本発明の実施の形態について、事例をあげて、詳細に説明する。本例では、簡単な言葉のやりとりとして、
情報１「公園へ行き弁当を食べた。」
質問１「何を食べましたか。」
質問２「何処で弁当を食べましたか。」
質問３「公園で何を食べましたか。」
質問４「弁当を食べましたか。」
質問５「公園で弁当を食べましたか。」
質問６「弁当を公園で食べましたか。」
質問７「公園でリンゴを食べましたか。」
を想定し、上記情報１に対して質問１から７による会話を想定した場合、人間は簡単に回答することができるが、情報１をコンピュータに蓄積しておき、上記質問を人間が入力することで、コンピュータが質問に対する回答を行うことは、従来の技術では、簡単に得られていない。このことは、従来の方法が、限定した言葉や文法などによってコンピュータとの対話を実現しようとしているためである。本発明では、情報１などの情報を蓄積することで、上記質問１から７などの多様に表現された質問に対して的確に回答する方法を詳細に記述して、自然言語応答装置の説明を行う。
【００１４】
本発明は、例えば図１に示すような自然言語応答装置１に適用される。この自然言語応答装置１は、操作者が情報や文字列を入力することで自然言語応答装置１を操作するための入力部２を備える。入力部２は、例えばキーボードやマウス等のポインティングデバイスから成り、操作者により操作されることで入力処理の対象となって、入力部で変換された自然言語を示す文字列として文字変換部３へ出力される。
【００１５】
また、上述した入力部２は、キーボード等に限らず、例えば、マイクロホンから入力した音声信号を音声認識を行うことで自然言語を文字列へ変換するものであっても良い。また、データファイルへ書き込んだ外部テキストデータを入力するものであっても良く、自然言語を入力できる手段であれば広く適用することができる。
【００１６】
上記、情報１の文を自然言語により入力部２で入力した場合、文字変換部３へ出力される文字列が、例えば、平仮名であるとすると、
上記文字変換部３は、入力部２によって変換された情報１の文字列として、「こうえんへいきべんとうをたべた。」を入力し、定義語記憶部４に格納された定義語情報を用いて正規化された標準文字列へ変換する処理を行う。
定義語情報２０は、図２に示すような領域Ｒ１からＲ１４を持ち、従来の形態素解析において辞書と呼ばれるものに相当するが、単に、語彙や品詞などの固定情報を記憶させたものではなく、形態素解析処理の一部を定義語情報２０のデータとして定義されている。このことは、文を構成する語彙の接続情報や構文を判定している従来の主プログラムから、解析処理を取り除き、標準解析処理のみを主プログラムに設定しておく。主プログラムの標準解析処理で行えない文の解析処理については、定義語情報のデータとして解析処理を記述言語による手続きとして定義する。従って、自然言語応答装置１の解析処理は、文を構成している定義語情報２０に記述された上記手続きの組合せにより決定される。
【００１７】
図２に、定義語情報２０のデータ構造を示す。定義語情報２０は、漢字、ひらがな、カタカナ、英字、数字、記号及びその組合せにより意味を特定できる文字列を定義語として記録している。定義語は、意味を特定できる文字列であれば、ファイル名や画像データなどを文字列で表現したものでも良く、言葉である必要はない。定義語Ｒ１には属性として、識別番号Ｒ２、読みＲ３、送り仮名Ｒ４、品詞Ｒ５、特殊活用Ｒ６、活用Ｒ７、表記方法Ｒ８を記憶し、定義語Ｒ１の意味を電子化するために意味として、標準選択手順を変更するための手続きを記述した使用方法Ｒ９、動作手続きを記述した動作方法Ｒ１０、標準の文章意味抽出手順を変更するための手続きを記述した文章意味抽出方法Ｒ１１、標準回答生成手順を変更するための手続きを記述した回答生成方法Ｒ１２、定義語から想像することのできる他の定義語を必要に応じて１以上記述した関連定義語Ｒ１３、同じ意味を持つ他の定義語を必要に応じて１以上記述した同意定義語Ｒ１４を記憶している。
【００１８】
識別番号Ｒ２は、定義語Ｒ１へ割り当てられた一意の番号で、同音異義語や読み方の違いにより意味が異なる場合に定義語Ｒ１を特定するために使用される。”金（きん）”と”金（かね）”では表記”金”は同一であるが読み方の違いによって使用方法や意味が異なる。このような語彙を区別するために識別番号Ｒ２によって定義語Ｒ１の区別を行っている。
【００１９】
読みＲ３は、定義語Ｒ１の発音を定義語Ｒ１の１文字ごとに分割した平仮名を使用して定義する。定義語Ｒ１として”構造”を定義した場合、読みＲ３では”こう□ぞう”（□は空白文字を表す）と分割文字として空白文字で区切って定義する。このことにより、”構ぞう”、”こう造”、”こうぞう”を”構造”として検索することが可能となる。送り仮名Ｒ４は、慣用句などの活用で送り仮名を必要とする場合に１以上の送り仮名を定義する。動詞、形容詞などの送り仮名は、定義語Ｒ１、特殊活用Ｒ６、活用Ｒ７によって定義する。また、送り仮名省略検索を行うために、”行う”や”行なう”などの表記について、Ｒ３へ”おこな”と登録し、定義語Ｒ１の表記方法Ｒ８の属性の一部として、送り仮名省略検索を行う属性を定義する。この送り仮名省略検索属性を持つ定義語Ｒ１は読みＲ３の最後の文字と送り仮名が同一である場合、Ｒ３の最後の１字を省略して検索対象とすることで、”行う”や”行なう”を標準文字列”行う”として検索することができる。
【００２０】
品詞Ｒ５は、言語学で使用する文法上の品詞を定義する。また、人名に対する姓名の区別や単位を拡張品詞としてＲ５へ定義する。
【００２１】
特殊活用Ｒ６は、サ変動詞活用、形容動詞活用、連体形の活用、副詞の活用、ク活用、シク活用、タリ活用、ナリ活用などの特殊な活用について定義する。
定義語として”定義”を定義した場合、特殊活用Ｒ６へサ変動詞活用であることを定義する。これにより、”定義する”、”定義した”、”定義しない”などの助詞、終助詞、格助詞などを含んだ活用変化を定義しておき、この活用変化の種別によって、文法上の現在形、過去形、進行形、肯定、否定、疑問などの文章の形態や論理値を認識することができる。
【００２２】
活用Ｒ７は、特殊活用Ｒ６以外の動詞活用で、五段活用、上一段活用、下一段活用、上二段活用、下二段活用、カ行変格活用、サ行変格活用、ナ行変格活用、ラ行変格活用などの文法上の動詞活用を定義する。これにより、特殊活用Ｒ６と同じように、文法上の現在形、過去形、進行形、肯定、否定、疑問などの文章の形態や論理値を認識することができる。
【００２３】
表記方法Ｒ８は、標準化した表記形式を定義する。”キロメートル”を”Ｋｍ”として表記することや”林檎”を”リンゴ”と表記することを標準文字列として定義する。また、”行う”や”行なう”などの送り仮名の送りについて”行う”と表記することを正規化された標準文字列として定義する。
【００２４】
使用方法Ｒ９、動作方法Ｒ１０、文章意味抽出方法Ｒ１１、回答生成方法Ｒ１２は、自然言語解析処理手順を変更するためのプログラム記述言語で記述された手続きであり、文章中の定義語Ｒ１の関連性を条件に、定義語の組合せを変更する手続きを定義する。
【００２５】
関連定義語Ｒ１３は、定義語Ｒ１から想像することのできる他の定義語Ｒ１を必要に応じて１以上定義する。定義語Ｒ１として”リンゴ”を定義した場合、”食物”、”果物”、”木”、”赤”、”美味い”などの定義語Ｒ１を関連定義語Ｒ１３として定義することができる。これにより、定義語Ｒ１の組合せにより生じる統一された意味をこの関連定義語Ｒ１３を使用して推定することができる。同意定義語Ｒ１４は、同じ意味で表現方法が異なる定義語を必要に応じて１以上定義する。”ゴールド”と”金（きん）”は表記が異なるが同じ”貴金属の金”を指している。文章中に”ゴールド”と表記された場合、”金（きん）”として認識することができる。
【００２６】
図１の文字変換部３は、上記文字列「こうえんへいきべんとうをたべた。」に対して定義語記憶部４から定義語情報２０を取得し、上記文字列を構成することのできる組合せを作成する。この組合せは、定義語Ｒ１が上記文字列の位置情報をもとに、同一位置から始まる定義語情報２０を１つの行とし、複数の行を１つの列にまとめ、各列の位置順に接続する。この組合せの状態を定義語変換行列と呼び、図３に示す。図３の定義語変換行列は、第１列に入力文字列の第１文字である”こ”から始まる語彙を列にまとめ、第２列は、入力文字列の第２文字”う”から始まる語彙を列にまとめている。この定義語変換行列Ｍ１は、上記入力文字列に対する初期状態を示している。定義語変換行列Ｍ１で定義語を矩形で囲んだ表現は、図２に示す定義語情報２０のＲ１からＲ１４により構成されていることを表し、矩形内の語彙は定義語Ｒ１を表している。
【００２７】
上記定義語変換行列Ｍ１を構成する列は、入力文字列に対応する変換候補を入力文字列の開始位置によりまとめているので、定義語Ｒ１の選択によって使用しない列が存在する。
図３は、第１列の第１行に入力文字列”こうえん”に対する変換候補として”後援”が選択されていることを示している。この場合、入力文字列の一部である”こうえん”を第１列の変換領域と呼ぶ。第１列の変換領域が”こうえん”であると仮定すると、第２列及び第３列の変換領域は第１列の変換領域と重なり第１列に対して接続できない。図３の第２列、第３列が１段下がって表示されているのは、接続できない状態を示している。第１列へ接続できるのは、第１列の変換領域が接する第４列であり、変換領域”へいき”に対して”併記”が変換候補となっている。第４列に接続できるのは、第７列の変換領域”べんとう”に対して変換候補”弁当”である。この場合、３つの変換候補は全て名詞であることは明白であるが、名詞結合を行って新しい名詞と判断するためには、定義語情報２０の関連定義語Ｒ１３による意味の統一性が必要条件となる。
【００２８】
上記定義語情報２０の関連定義語Ｒ１３は、定義語Ｒ１から想像することのできる他の定義語により定義する。このことは、定義語Ｒ１の文字列や言葉から想像できるイメージを他の言葉によって定義することで、定義語Ｒ１が属するグループを概念的にとらえることができ、固定化したグループを形成する必要がない。関連定義語Ｒ１３へ複数の言葉を定義することにより、複数の異なる概念グループを定義したり、同じような概念グループを定義することで、より狭域的な概念グループなどを同時に形成することができる。例えば、名詞の”犬”について、”動物”、”生物”などの言葉により広域的意味を定義し、同時に、”秋田犬”、”シェパード”、”ブルドッグ”などの犬種を定義することで、犬自体のグループを構成することができ、登録語の相互関係や依存関係を意識する必要がない。
【００２９】
上記変換候補は、関連定義語Ｒ１３を使用して意味の統一性を判断することで名詞結合した場合に意味を創出できるかを判定することができる。関連定義語Ｒ１３は、定義語Ｒ１から創造することのできる他の定義語であれば何でも定義することができ、上記３つの名詞に対して関連定義語Ｒ１３を想定すると、上記３つの名詞について、
”後援”に対して、”人”、”会場”、”会”、”講堂”などのＲ１３、
”併記”に対して、”記述”、”説明”、”並べる”などのＲ１３、
”弁当”に対して、”食物”、”食事”、”愛妻”、”家庭”などのＲ１３
を定義する。上位３つの名詞のＲ１３から意味の統一性を判定する共通した言葉がない。さらに、Ｒ１３に定義されている言葉（例えば、”人”や”記述”など）の定義語情報２０を取得し、関連定義語Ｒ１３を比較しても、２次の関連定義語Ｒ１３による共通した言葉を見出すことはできない。従って、上位３つの名詞に対する意味の統一性が無いことが判定でき、３つの名詞を結合することができない。また、上位２つの名詞”後援”と”併記”の結合についても結合できないと判定することができる。以上のことから、２番目の変換候補である”併記”が変換候補とならないことが確定できる。図３の変換行列Ｍ１の第４列について、変換領域”へいき”の他の変換候補について上記操作を行うと、
”兵器”、”平気”についても名詞結合による意味の統一性が無いことが判定できる。この結果から、第１列の変換領域を”こうえん”と仮定した場合、第１列の変換領域へ接続する変換領域を”へいき”としたことが誤りであると判定できる。第４列の変換領域を”へいき”に対する変換候補を第４列の最下位行へ移動すると、変換領域は”へ”となる。
【００３０】
第４列の変換領域を”へ”と仮定した場合、第４列の変換候補は格助詞”へ”となる。格助詞”へ”の定義語情報２０の使用方法Ｒ９に対して、”へ”の使用方法を記述言語により記述しておく。図４は、格助詞”へ”の使用方法Ｒ９へ登録されている記述言語で記述された使用方法の例を示したものである。この使用方法Ｒ９へ記述されている内容は、格助詞”へ”の接続条件として、
”名詞＋へ＋動詞”、”名詞＋へ＋形容詞”、”名詞＋へ＋副詞”または、”名詞＋へ”の優先順位を持つ接続条件を定義し、格助詞”へ”の後ろへ接続される品詞を属する列の先頭へ移動することを指定している。但し、移動できるのは、”へ”の前にある名詞と移動する品詞の意味の統一性が必要条件となる。
第４列の変換領域へ接続するのは第５列となり、第１列の変換領域
”こうえん”に対する名詞属性を持つ変換候補と第５列の変換領域”いき”に対する変換候補の組合せを、上記意味の統一性の判定処理を行うと、接続条件の内、”名詞＋へ＋動詞”について、第１列第２行の”公園”と第５列第１行の”行き”によって、”公園＋へ＋行き”が成り立つことが判定できる。これは、名詞の”公園”に対して、”場所”、”遊び”などのＲ１３、
動詞の”行く”に対して、”場所”、”建物”などのＲ１３
を定義することができ、関連定義語”場所”によって意味の統一性があると判定することができる。従って、”こうえんへいき”は”公園へ行き”と確定することができる。残りの”べんとうをたべた”についても、同様な処理を行うことができる。接続詞”を”の使用方法Ｒ９へ接続条件として、
”名詞＋を＋動詞”、”名詞＋を＋形容詞”、”名詞＋を＋副詞”、
”名詞＋を”などを定義することで、”を”の前にある名詞と”を”の後ろにある品詞の意味の統一性を考慮することで、”弁当を食べた”が成り立つことが判定できる。従って、図３に示す変換行列Ｍ１は最終的に、図５に示す変換行列Ｍ１の構造となる。図５の接続している列の先頭行にある定義語を使用することで、入力文字列に対する変換結果とすることができる。
【００３１】
図１の情報抽出部５は、上記文字変換部３で作成された図５に示す定義語変換行列Ｍ１を使用して入力文字列に含まれる情報を抽出する。情報の抽出は、文を構成する最小単位に分割することで行う。通常、文の分割は”名詞＋動詞”の形態を１つの単位として行うが、定義語情報２０の文章意味抽出方法Ｒ１１に抽出方法が記述されている場合は、記述されている手続きを実行することによって行う。図５の変換結果”公園へ行き弁当を食べた”について、”名詞＋動詞”の単位に分割すると、”公園へ行き”と”弁当を食べた”の２つに分割することができる。２つに分割した上記文が入力文字列に対応する文字列
”こうえんへいき”と”べんとうをたべた”を取得して、図６に示す分割した文の其々の定義語変換行列Ｍ２、Ｍ３を上記変換方法を使用して作成する。
【００３２】
上記定義語変換行列Ｍ２、Ｍ３は、Ｍ１の構成要素である定義語を文を構成することのできる最小単位に分割した結果であり、定義語情報２０の使用方法Ｒ９や関連定義語Ｒ１３の影響を最小に抑えた結果となっている。このため、Ｍ２、Ｍ３は直接的な語彙の関係により変換されている。もし、Ｍ１とＭ２、Ｍ３の結果が異なる場合は、Ｍ２、Ｍ３の変換結果の方が信頼度が高い。このような場合、Ｍ２、Ｍ３の結果をＭ１へ反映させることで、より信頼性を高めることができる。これは、一般的に、Ｍ１の変換結果が正しいかどうかをＭ２、Ｍ３、…Ｍｎ（ｎは入力文字列に含まれる情報数を示す）により判定でき、もしＭ１の変換結果が誤っている場合は、Ｍ２、Ｍ３、…Ｍｎを使用してＭ１を自動修正することができる。
【００３３】
上記入力文字列に対する定義語変換行列Ｍ１は、定義語による標準文字列変換結果であり、定義語変換行列Ｍ２、Ｍ３は、入力文字列に含まれる情報である。
図１の情報蓄積部６は、上記定義語変換行列Ｍ１、Ｍ２、Ｍ３を図７に示す構造で文単位に作成し、図１の知識データ記憶部７へ記憶する。図７の構造は、上記入力文字列について言えば、Ｍ２として”公園へ行った事実”、Ｍ３として”弁当を食べた事実”、Ｍ２とＭ３連結により、”公園へ行ってから弁当を食べたという時間経過及び条件”を示している。
【００３４】
図１の知識データ記憶部７へ蓄積される情報は、図７に示すデータ単位を図８に示す階層構造を使用して蓄積される。図８の階層構造は、必要に応じて作成されるが、例えば、情報を蓄積するための文章をファイルへ記述し、記述内容について章番号や節番号を章や節のタイトルへ付すことにより、階層構造を作り出す。階層構造は、定義語変換行列Ｍ２、Ｍ３…Ｍｎが連結されたＭ１に、他のレコードを連結するためのアドレスポインターＰＶ（Ｐ２）、ＮＸ（Ｐ３）を設ける。タイトル文章については、アドレスポインターＢＰ（Ｐ１）、ＰＶ（Ｐ２）、ＮＸ（Ｐ３）を設ける。階層構造を作るタイトル文章については、階層終了データＰ４を設け、階層開始位置のＰ１にＰ４のレコードの先頭アドレスを、Ｐ４にＰ１のレコードの先頭アドレスを記憶する。タイトル１（Ｍ１）の文章にＭ２、Ｍ３を連結し、Ｍ１にＰ１、Ｐ２、Ｐ３を設けた全体をレコード１（Ｒ１）とし、Ｒ１からＲ６までの接続関係を示している。  Ｒ１は階層構造を持ち、Ｒ１の終了レコードとしてＲ６を定義し、Ｒ１のＰ１へＲ６の先頭アドレスを記憶し、Ｒ６のＰ１へＲ１の先頭アドレスを記憶する。Ｐ２に１つ前のレコードの先頭アドレスを記憶し、Ｐ３は１つ先のレコードの先頭アドレスを記憶する。Ｒ１及びＲ６は、特異レコードとし、Ｒ１のＰ２へＲ６の先頭アドレスを記憶し、Ｒ６のＰ３へＲ１の先頭アドレスを記憶する。Ｒ１からＲ６のＰ１、Ｐ２、Ｐ３に対して上記レコードの先頭アドレスを記憶することにより、文章で記憶した情報の階層構造を作り出し、１行ごとに管理された文章全体の位置関係を構築し、各行のレコードを双方向型循環サーチチェインをＰ１、Ｐ２、Ｐ３により構築することにより、必要な情報の範囲を推定し、高速検索を可能とすることができる。
【００３５】
入力文字列に含まれる情報が不足している場合、文字変換部３及び情報抽出部５において、上記知識データ記憶部７へ蓄積された知識データを検索することにより、不足情報の推定を行う。例えば、”ろがつかえるようになった”を変換する場合、”ろ”を変換するための情報が不足し、”炉”又は”櫓”と変換して良いか判断できない。このような場合、知識データ記憶部７に、”舟に乗った”と変換されている情報がある場合、”櫓”の図２に示す関連定義語Ｒ１３へ”舟”を定義しておくことにより”舟”の影響によって”櫓”と変換すると判断して”櫓が使えるようになった”と変換できる。知識データ記憶部７に、”皿を作った”と変換されている場合、”皿”の関連定義語Ｒ１３へ”陶器”、”陶芸”、”ガラス”、”瀬戸物”と定義し、”炉”のＲ１３に”焼く”、”陶芸”、”溶かす”などを定義しておくことにより、”炉”と変換すると判断して”炉が使えるようになった”と変換できる。知識データ記憶部７に、対応する知識データが存在しない場合は、”炉”や”櫓”の関連定義語Ｒ１３を使用して何に使う”ろ”なのかを質問することで、変換候補を確定することができる。
【００３６】
図９は、上記操作による変換結果及び情報抽出結果を画面へ表示した一例を示したものであって、キーボードから入力文字列
”こうえんへいきべんとうをたべた”（ａ１）を読み込み、定義語記憶部４を検索し、定義語変換行列Ｍ１、Ｍ２、Ｍ３を作成し、定義語データの意味を考慮して、定義語変換行列Ｍ１、Ｍ２、Ｍ３の解析結果を表示し、抽出した情報を知識データ記憶部７へ蓄積した内容を示している。ａ２の表示は、入力した文字列を示す。ａ３は、定義語変換行列Ｍ１、Ｍ２、Ｍ３を用いて変換し、定義語単位に空白文字で区切って、図２の定義語情報２０の表記方法Ｒ８に従って表示している。ａ４の表示は、変換結果を品詞ごとに空白文字で区切って表示している。ａ５の表示は、ａ３の変換結果と、定義語Ｒ１の読みＲ３を用いて、定義語ごとに空白文字で区切って読みＲ３を表示している。ａ６、ａ７の表示は、ａ２の文章に定義されている情報を抽出し、抽出情報ごとに表示している。
【００３７】
上記情報蓄積方法により知識データ記憶部７へ蓄積された知識データについて自然言語により質問を受け付ける。情報の蓄積と質問は、マウスなどのポインティングデバイスにより動作切り替えを行う。また、文の解析結果である定義語変換行列から、動詞の定義語情報２０の特殊活用Ｒ６、活用Ｒ７から疑問文であると判断することで動作切り替えを行う。
上記情報１の入力文字列を情報として蓄積し、上記質問１を入力した場合の回答方法について記述する。
上記変換及び情報抽出方法により、図１の入力部１で入力された質問１
”なにをたべましたか”を文字変換部３へ出力し、変換した結果を情報抽出部５が入力して、図１０に示す定義語変換行列が作成される。質問１に含まれる情報はＭ２のみ存在し、Ｍ１とＭ２の結果は同じとなり、変換結果は、
”何を食べましたか”となる。
【００３８】
図１の回答生成部８は、上記定義語変換行列Ｍ１、Ｍ２を入力し、質問１に対する回答を生成する。回答は、回答の鍵となる定義語に対して、定義語情報２０の回答生成方法Ｒ１２へ記述言語を使用して回答方法を定義することにより生成することができる。上記質問１の場合、代名詞”何”の定義語情報２０の回答生成方法Ｒ１２へ回答方法を記述しておく。図１１は、代名詞”何”のＲ１２への記述例を示している。図１１に示した回答生成方法は、
”何＋接続詞＋動詞”、”何＋格助詞＋動詞”の質問形態に対して、動詞の”食べた”の関連定義語Ｒ１３を使用して、知識データ記憶部７に蓄積された知識データのＭ２、Ｍ３、…Ｍｎから一致する動詞に接続する名詞と質問１を検索した接続詞及び動詞を回答文とすることを示している。従って、上記手続きは、図６のＭ３から名詞である”弁当”と質問１の”を”と情報１の動詞である”食べた”を連結し、図２の活用Ｒ７を使用して、動詞”食べた”の回答形として”食べました”を取得することにより、回答文”弁当を食べました”を生成することができる。
【００３９】
図１の回答表示部９は、上記回答文を出力装置へ出力することにより、情報１に対する質問１の回答として、”弁当を食べました”を、例えば、ディスプレイや音声出力によって出力することで、自然言語による応答を実現する。
【００４０】
上記質問２「何処で弁当を食べましたか。」を入力した場合、格助詞”で”の文章意味抽出方法Ｒ１１へ”名詞＋で”、”代名詞＋で”を抽出単位とし、残りの文を”名詞＋動詞”で抽出する手続きを記述しておく。この場合、Ｒ１１の抽出結果として”何処で”と”弁当を食べました”を定義語変換行列Ｍ２、Ｍ３とすることができる。質問文において、代名詞を含まない抽出情報は、知識データを検索する条件となる。情報１はこの条件を満足するので、回答対象文と判断することができる。代名詞”何処”の回答生成方法Ｒ１２に、知識データから、関連定義語Ｒ１３に”場所”を示す名詞を検索して回答条件とする手続きを記述しておく。これにより”公園で”の回答条件を作り出すことができ、回答として”公園で食べました”を出力することができる。
上記質問３は、逆に、”公園で”が検索条件となり、上記処理と同様に行うことで、”弁当をたべました”を出力できる。
上記質問４は、質問１の代名詞”何”が名詞”弁当”となっているため、
質問４自体が検索条件となる。この場合、”はい”または”いいえ”が回答となり、質問４の条件に一致する知識データが存在するので、回答として、
”はい＋動詞”の形態で、”はい食べました”を出力することができる。
上記質問５は、”公園で”と”弁当を食べた”の２つの条件が存在し、質問４と条件数が異なるだけで、同じ処理で同じ結果となる。
上記質問６は、情報抽出条件が質問２で、検索条件は質問５と同じであり、
回答は、質問５と同じ結果となる。
上記質問７は質問５と同じ処理であるが、知識データに”公園で”の検索条件を満足する文に”リンゴを食べた”を満足する文が存在しないので、回答として”いいえ”を出力することができる。
【００４１】
以上のように、具体的な事実や情報を含んだ文章を知識データとして文の構成をそのまま蓄積することで、文の構成要素を検索条件として使用して目的の情報を自然言語による質問を行って得ることができる。また、自然言語解析において解析パターンや文法パターンでは表現することができない語彙特有の使用方法や回答方法を鍵となる語彙に記述することで、多くの言葉の表現について意味を推定することができる。
【００４２】
【実施例】
上記本発明の実施の形態を使用した具体的な実施例について図を参照しながら説明する。
【００４３】
図１２は、本発明による標準文字列自動変換装置１０の実施例を示したものである。標準文字列自動変換装置１０は、上記実施形態で説明した図１の自然言語応答装置１と同じ、入力部２、文字変換部３、定義語記憶部４、情報抽出部５を備えている。また、変換結果を一時記憶する変換結果一時記憶部１１と変換結果を表示装置へ表示するための文字出力部１２を備えている。
入力部２は、キーボード等に限らず、例えば、マイクロホンから入力した音声信号を音声認識を行うことで自然言語を文字列へ変換するものであっても良い。
また、データファイルへ書き込んだ外部テキストデータを入力するものであっても良く、自然言語を入力できる手段であれば広く適用することができる。
【００４４】
上記入力部２で入力された文字列は、上記実施形態の方法を使用して、入力文字列に対応する定義語記憶部４に記憶された定義語情報２０を取得し、文字変換部３で図３に示す定義語変換行列Ｍ１を作成する。
【００４５】
情報抽出部５は、上記定義語変換行列Ｍ１を使用して、入力文字列に含まれる情報を上記実施形態で説明した情報抽出方法により抽出し、図５及び図６に示す定義語変換行列Ｍ１、Ｍ２、…Ｍｎを作成し、この定義語変換行列を変換結果一時記憶部１１へ保存する。
文字出力部１２は、上記変換文字列を表示するための出力バッファーへ出力する。
【００４６】
上記のような処理により、これまで、語彙の使用頻度や同音異義語のメニュー選択などによって行っていた方法を、文の意味を把握することにより、語彙の選択を自動的に行うことができる。また、情報不足によって自動変換できない場合、操作者に対して質問を行うことで不足情報を補う方法により、操作者は変換に必要な操作方法を覚える必要がない。
【００４７】
また、この標準文字列自動変換装置１０は、「ひらがな」を漢字へ変換するだけではなく、漢字、ひらがな、カタカナ、英字、数字、記号及びその組合せにより表現された文字列を、上記実施形態で説明したように、定義語情報２０の定義語Ｒ１、読みＲ３、送り仮名Ｒ４、表記方法Ｒ８を使用して正規化された標準文字列へ変換することができる。
【００４８】
図１３に示す実施例は、自然言語によるデータベース検索方法であって、
通信回線で接続されている外部データベースや同一コンピュータに構築されている外部データベースに対し、自然言語によってデータベースのデータを検索する処理の流れ図を示したものである。
上記実施形態で説明した方法により、外部データベースに登録されているデータの概要説明文を外部ファイルとして作成し、外部ファイルを読み込み、外部データベース３０に関する知識データを知識データ記憶部７へ作成しておく。
【００４９】
例えば、外部データベース３０のテーブルＡ、カラムＢについて外部ファイルへ”テーブルＡのカラムＢは社員の生年月日である。”と記述した場合、この文の変換行列Ｍ１、Ｍ２、…Ｍｎの抽出情報は、
”テーブルＡのカラムＢは社員の生年月日”となり、この結果を知識データ記憶部７へ蓄積する。定義語”生年月日”の関連定義語Ｒ１３へ”誕生日”を登録し、定義語”誕生日”のＲ１３へ”日付”を登録しておく。
【００５０】
ステップ１（Ｓ１）で、入力装置から外部データベース３０を検索するための条件を自然言語で入力する。文字列を入力する装置は、キーボードや、
マイクロホンから入力した音声を音声認識システムによる文字列入力、或いは、外部ファイルへ格納した文書など、自然言語を入力できるものであれば広く適用できる。
【００５１】
ステップ２（Ｓ２）で、処理を終了する操作が行われた場合、処理を終了する。入力した文字列が存在する場合、本発明の実施形態で説明した方法を使用して処理を行う。ステップ３（Ｓ３）は図１の文字変換部３に相当し、ステップ４（Ｓ４）は情報抽出部５に相当する。入力された文字列は、Ｓ３で図３に示すような定義語変換行列Ｍ１を作成し、Ｓ４で図５及び図６に示される定義語変換行列Ｍ１、Ｍ２、…Ｍｎを作成する。ステップ５（Ｓ５）で、定義語変換行列Ｍ１、Ｍ２、…Ｍｎを使用して、図７及び、図８に示す構造で情報を抽出して一時記憶装置へ記憶する。
【００５２】
ステップ６（Ｓ６）で、Ｓ５で蓄積した情報を使用して、外部データベース３０に関する知識データ記憶部７に蓄積された情報を検索し、入力文字列に含まれるデータ表現（テーブル名、カラム名、データ値など）について、蓄積した情報があるか検索し、蓄積情報がない場合、操作者に対して不足情報を出力し、条件の再入力を促す。
【００５３】
ステップ７（Ｓ７）で、Ｓ４で抽出した条件を使用して、外部データベース３０を検索するための条件を生成する。検索条件は、蓄積情報を構成する定義語情報２０の品詞Ｒ５、同意定義語Ｒ１４を使用して生成される。名詞はテーブル名、カラム名、データ値として判断し、形容詞、副詞はデータの範囲条件となる。また、動詞や助詞、格助詞、接続詞は条件を構成する演算要素として判定し、演算要素は同意定義語Ｒ１４を用いて作成することができ、また、文法を伴う条件は回答生成方法Ｒ１２へ記述言語を用いて生成手順を記述しておく。
【００５４】
例えば、検索条件として、”１９７０年生まれの社員”と入力した場合、この文の定義語変換行列Ｍ１、Ｍ２、…Ｍｎの抽出情報は、
”１９７０年生まれの社員”となり、１９７０年は日付、社員は人称代名詞として判断することができる。この場合、関連定義語Ｒ１３へ”誕生日”が登録された名詞属性を持つ定義語”生まれ”の使用方法Ｒ９が
”日付＋生まれ＋人称名詞”の場合、この名詞を含む定義語変換行列の列の先頭行へ移動する手続きを記述しておく。”１９７０年生まれ”は、”名詞＋名詞”となり、名詞結合状態を示す。この場合、”１９７０年”のＲ１３は”日付”、”生まれ”のＲ１３は”誕生日”を持つが、”日付”と”誕生日”は一致しない。この場合、定義語”日付”と”誕生日”のＲ１３を参照すると、”誕生日”のＲ１３に”日付”が存在する。従って、”１９７０年生まれ”の結合名詞に関して推定したＲ１３は、”日付”または”誕生日”となる。従って、上記例で、知識データ記憶部７へ蓄積した知識データに対し、”日付”と”社員”、”誕生日”と”社員”の条件で検索すると、
”テーブルＡのカラムＢは社員の生年月日”を取得することができる。この文は格助詞により接続された名詞を含んでいるが、格助詞”の”による接続は、
無条件で単一名詞として解釈することができるので”Ａ１はＡ２”となる文章形態を構成すると判断でき、”誕生日”と”社員”を含むのはＡ２であることも判断できる。従って、接続詞”は”を示す定義語の回答生成方法Ｒ１２に、知識データ記憶部７の知識データを検索した結果からテーブル名やカラム名を、入力した検索条件から範囲条件を抽出する手続きを記述しておく。
【００５５】
上記自然言語による検索条件を、ＳＱＬ文により記述するデータベース検索に適応した場合、知識データ記憶部７を検索した結果からテーブル名、カラム名を抽出するとテーブル名＝”テーブルＡ”、カラム名＝”カラムＢ”となり、入力した検索条件から範囲条件を抽出すると”１９７０”となる。従って、検索条件を含むＳＱＬ文は
”ＳＥＬＥＣＴ  ＊  ＦＲＯＭ  テーブルＡ  ＷＨＥＲＥ  カラムＢ＝
１９７０；”となる。アクセスする外部データベース名はシステムにより既知であるが、データベース名を文書ファイルへ記述し、知識データとして蓄積することにより、データベースのオープンを行うことができる。また、複数の外部データベースが存在するような場合、文書ファイルへ外部データベースごとにテーブル、カラム情報を記述することで、外部データベースの検索条件から外部データベースを選択することができる。
上記検索条件をステップ７（Ｓ７）で検索条件として蓄積しておく。
【００５６】
ステップ８（Ｓ８）で上記検索条件で外部データベース６０を検索するか操作者に対して質問を行い、検索しない場合、次の条件を入力する。
次の検索条件として、”または、１９６０年生まれの社員”と入力した場合、上記検索条件に、入力条件を付加することで、複合条件を作り出す。この場合、接続詞”または”を示す定義語の同意定義語Ｒ１４へ”ＯＲ”を登録しておく。
上記例と同様に条件解析を行うと、ＳＱＬ文の条件項目は
”ＯＲ  カラムＢ＝１９６０”となる。従って、２つの条件を結合したＳＱＬ文は、
”ＳＥＬＥＣＴ  ＊  ＦＲＯＭ  テーブルＡ  ＷＨＥＲＥ  カラムＢ＝１９７０ＯＲ  カラムＢ＝１９６０；”とすることができる。
【００５７】
上記例において、表示条件を同様に設定することができる。テーブルＡにカラムＣ、Ｄが存在する場合、表示条件として”カラムＣ、カラムＤを表示”と入力した場合、表示カラムとしてカラムＣ、Ｄを上記検索条件に結合させるとＳＱＬ文は、
”ＳＥＬＥＣＴ  カラムＣ  カラムＤ  ＦＲＯＭ  テーブルＡ  ＷＨＥＲＥ
カラムＢ＝１９７０  ＯＲ  カラムＢ＝１９６０；”とすることができる。
【００５８】
Ｓ８で外部データベースへ上記検索条件で外部データベース３０を検索する指示を行った場合、ステップ９（Ｓ９）で上記検索条件により外部データベース３０をアクセスし、検索したデータを取得し、表示装置へ検索結果を表示することができる。
【００５９】
【発明の効果】
以上説明したように本発明の自然言語応答装置及び方法は、人間とコンピュータ、コンピュータとコンピュータが自然言語による対話を行うことが容易にできる。このことは、音声入力や文字列入力による対話が可能となる。
【００６０】
また、本発明に係る自然言語応答装置及び方法は、文法パターンを必要としない解析方法を用い、語彙の処理方法を語彙のデータとして取り扱うことにより、言葉の持つ多くの処理形態を単純化した特定処理とすることが可能となる。
【００６１】
漢字変換装置において、文章や語句の意味を本発明の方法を用いることで、複数行にわたる漢字、ひらがな、英字、数字、記号およびその組み合わせによる文字列を従来行われている漢字変換ではなく、正規化された標準文字列へ変換することが容易に可能となる。
【００６２】
本発明の方法により、対話によって操作方法を導出しながら、コンピュータに蓄積した情報を取り出すことが可能なため、コンピュータの知識や蓄積データに関する知識を必要としない操作が可能である。
【図面の簡単な説明】
【図１】本発明を適用した自然言語応答装置の構成を示したブロック図である。
【図２】本発明を適用した定義語情報の領域を示した説明図である。
【図３】本発明を適用した定義語変換行列の初期状態のデータ構造を示した説明図である。
【図４】本発明を適用した定義語情報の使用方法へ登録する手続きの１例を示した図である。
【図５】本発明を適用した定義語変換行列の確定状態のデータ構造を示した説明図である。
【図６】本発明を適用した意味分割文字列の定義語変換行列を示した説明図である。
【図７】本発明を適用した文章の情報抽出状態を示した説明図である。
【図８】本発明を適用した階層構造を持つ知識データ構造を示した説明図である。
【図９】本発明を適用した定義語変換行列の変換結果、情報抽出結果の表示例を示した説明図である。
【図１０】本発明を適用した質問に対する定義語変換行列の確定状態のデータ構造を示した説明図である。
【図１１】本発明を適用した定義語情報の回答方法へ登録する手続きの１例を示した図である。
【図１２】本発明を適用した標準文字列自動変換装置の構成を示したブロック図である。（実施例１）
【図１３】本発明を適用した自然言語による外部データベースのデータ検索を行う処理の流れ図を示した説明図である。（実施例２）
【符号の説明】
１      自然言語応答装置
２      入力部
３      文字変換部
４      定義語記憶部
５      情報抽出部
６      情報蓄積部
７      知識データ記憶部
８      回答生成部
９      回答表示部
１０    標準文字列自動変換装置
１１    変換結果一時記憶部
１２    文字出力部
１３    ディスプレイ
１４    スピーカー
２０    定義語情報
３０    外部データベース
【図１】
0004579400.tif 000002
【図２】
0004579400.tif 000003
【図３】
0004579400.tif 000004
【図４】
0004579400.tif 000005
【図５】
0004579400.tif 000006
【図６】
0004579400.tif 000007
【図７】
0004579400.tif 000008
【図８】
0004579400.tif 000009
【図９】
0004579400.tif 000010
【図１０】
0004579400.tif 000011
【図１１】
0004579400.tif 000012
【図１２】
0004579400.tif 000013
【図１３】
0004579400.tif 000014