JPH0252292B2 - - Google Patents
Info
- Publication number
- JPH0252292B2 JPH0252292B2 JP59011137A JP1113784A JPH0252292B2 JP H0252292 B2 JPH0252292 B2 JP H0252292B2 JP 59011137 A JP59011137 A JP 59011137A JP 1113784 A JP1113784 A JP 1113784A JP H0252292 B2 JPH0252292 B2 JP H0252292B2
- Authority
- JP
- Japan
- Prior art keywords
- user
- natural language
- input
- node
- grammar
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 claims description 30
- 230000006870 function Effects 0.000 description 24
- 239000011159 matrix material Substances 0.000 description 22
- 230000009466 transformation Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 12
- 238000010276 construction Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 238000001914 filtration Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 230000000903 blocking effect Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 7
- 230000014509 gene expression Effects 0.000 description 6
- 238000013519 translation Methods 0.000 description 6
- 230000014616 translation Effects 0.000 description 6
- 230000003416 augmentation Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 238000000844 transformation Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 241000282326 Felis catus Species 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005325 percolation Methods 0.000 description 3
- 229910052799 carbon Inorganic materials 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000011282 treatment Methods 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- 101000604097 Xenopus laevis Homeobox protein notochord Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001055 chewing effect Effects 0.000 description 1
- 210000001072 colon Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010926 purge Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0489—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/243—Natural language query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90324—Query formulation using system suggestions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90332—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Input From Keyboards Or The Like (AREA)
- Devices For Executing Special Programs (AREA)
Description
背景技術および発明の要約
本発明はコンピユータ入力インターフエース装
置に関する。 本発明は、装置の規則に不注意である使用者や
コンピユータ装置に全く不慣れな使用者が、コン
ピユータ装置に理解できる入力を与えることを許
すものである。更に、経験のある使用者には、よ
り明確でかつ単純な方法で会話処理を行えるよう
にする。 自然言語を用いてのコンピユータ装置へのアク
セスを提供することは、使用の容易なコンピユー
タ装置の構築への極めて重要なステツプである。
しかし、「使用の容易さ」はコンピユータ装置の
作成者の、現時点における、主要な目的であり、
自然言語インターフエスの構築に関する研究は15
年を超え(多くの試作装置を作成し)ているので
はあるが、自然言語インターフエースは、今日、
一般に使用されてはいない。この理由は、これ迄
に作成された自然言語インターフエースは、非常
に使いにくいものだからである。 本発明は、利用可能な、コンピユータ装置への
自然言語インターフエースを提供するという問題
を解決する。使用者は装置の規制を学習したり、
暗記したりする必要がない。更に、自然言語イン
ターフエースの実施に要する時間および処理時間
は短縮される。 これ迄に構築された自然言語インターフエース
は、受け付け可能な入力ストリング(記号列)の
クラス(類)の特性を記述する文法を使用してい
る。パーザは、入力ストリングに関しての1個の
パーズトリー(または、不明瞭な入力に関して複
数のパーズトリー)を作成するために、この文法
を使用する。続いて、このパーズトリーは入力ス
トリングの意味を示し、上記のインターフエース
が構築されたコンピユータ装置に解釈できる式
(または複数の式)に翻訳される。種々の文法書
式およびパージングアルゴリズムが使用されてい
る。しかし、これらの文法書式は、増補文脈自由
文法という一般名で分類できる。この意味すると
ころは、基本方法則は文脈自由方法の規則である
が、各文脈自由則は、それに関連して、追加機能
を与える増補分を有しているというものである。
これらの増補分は、一般に文脈自由則のノードの
属性(および時には、値)をアクセスする。 この文法クラスを基礎とする言語理論として
は、Gazdar(1982)、Bresnan and Kaplan
(Kaplan and Bresnan,1981および
Bresnan1982参照)、やRoss and Saenz(Ross,
1981およびSaenz,1982参照)のものがある。上
記の一般的文法クラスを使用する自然言語インタ
ーフエースを構築するパーザには、SRIで開発さ
れたDIAMONDパーザ(J.Robinson,1980参
照)、HPで開発されたGPSGパーザ(Gawron,
King,Lamping,Loebner,Paulson,Pullum,
Sag,およびWasow,1982参照)、更にその他数
多くのパーザがある。この記述は、構文を基礎と
する文法と、意味論を基礎とする文法の中間的な
ものであることに留意されたい。一般に、これら
の(および他の)構成は文法の両方のクラスの特
性を示すのに適している。 一般に自然言語のパーザーは、文脈自由文法の
パージングに用いられているいくつかのパージン
グアルゴリズムのいずれかに基礎を持つている。
(例えば、Earley,1980、Younger,1967,
Griffins and Petrick,1965、およびRoss,1981
を参照され度い。)先ず、文脈自由パーズが実行
される。続いて、増補規則が使用される。システ
ムによつては、部分的文脈自由パーズが実行され
て、次に、そのパーズ部分に関する増補規則が用
いられる。この手順は、完全なパーズが得られる
までくり返される。 上記の一般的傾向に関しての注目すべき例外
は、この10年来IBMにおいて開発中のTQAシス
テムである。(Plath,1975およびPetrick,1973
を参照のこと。)TQAシステムは、変換文法の理
論(Chomsky,1965参照)に基づき、文法則と
して、数百の反転変換を用いている。変換パーザ
はパーズトリー集合を得るために関連する変換を
適用する。 自然言語インターフエースの主な応用先は、自
然言語データベース問合せシステムである。全て
の自然言語システムに対して、使用者はコンピユ
ータ端末のキーボードに質問をタイプする必要が
あつた。質問が全て入力されると、自然言語イン
ターフエースは入力ストリングの処理を始める。
その処理結果は、使用者の問合せに対する答か、
その問合せが理解できなかつたという応答であつ
た。 自然言語装置は、これまでのところでは、まだ
一般に使用されてはいない。この理由は、自然言
語装置の現状では、これまでに作成された全ての
装置は、その処理範囲において、多くの限界を有
しているからである。つまり、自然言語の全ての
問合せのうちの小さな部分集合しか理解できない
のである。現時点では、英語または他の自然言語
の全て(または、ほとんどの部分)を理解する装
置を構築することは不可能である。上記の状態は
この先何年も続くように思われる。このため、現
在の自然言語装置を有益なものとするために、こ
れらの装置を用いている使用者達は、装置の限界
に適応することが出来なくてはならないであろ
う。彼等は装置の限界を学習し、その入力を、装
置が理解できる部分集合に限定するのである。不
幸なことに、彼等には、これらの限界を学ぶこと
はできなかつたので、上手に言語インターフエー
スを使用できなかつた。 Tennant(1980)は自然言語に関する、最初で
唯一の詳細な評価を行なつた。その評価は、軍用
航空機保守データベースを自然言語でアクセスす
る自然言語問合せ装置であるPLANESシステム
に関して実施された。評価の結果は、自然言語イ
ンターフエースが今日、何故、一般に使用されて
いないかをはつきりと明らかに示している。使用
者がシステムに入力した質問の約1/3は理解され
なかつた。しかも、これらの使用者が指定したタ
スクは、比較的単純な問合せに対応して特に設計
された問題を解くものであつたにもかかわらずこ
の結果であつた。 更に、システムに入力した全ての問合せは、6
〜7語の簡単なものであつた。このことは、多く
の場合、使用者に課せられた各問題を解くには、
多くの質問が必要だということを意味する。入力
量を大きく減少することも可能である一層複雑な
質問は、システムがそれらの質問のいくつかを取
り扱うことができるとしても、決して、試される
ことはなかつた。この一層複雑な質問を試みなか
つた理由は、簡単な質問での多くの失敗が使用者
に、より複雑な質問が成功するという自信を殆ん
どなくさせたためのようである。これ故に、使用
者は、複雑な問合せを書式化しようとはしなかつ
たのである。 自然言語インターフエースが今日広く使用され
ない別の理由は、自然言語システムの構築には従
来から長時間を要するからである。現時点での技
術では、各インターフエースは、各アプリケーシ
ヨンに対してケースごとに構築しなければならな
い。あるアプリケーシヨンに関して、10〜30人・
年の労力を要することも珍らしくはない。このた
め、労力の大きな出費に見合うようなアプリケー
シヨンだけが可能なアプリケーシヨンの候補とな
る。しかし、結果としてのシステム品質を考える
と、この労力は有益であつたとは言えない。 本発明では、使用者は、自然言語を理解する装
置にきちんと書式化された入力をタイプする必要
はなく、その代りに、メニユーの集合が示され
る。使用者は、メニユーから語または句(また
は、番号等)を連続的に選択することで入力を作
成する。使用者の自然言語入力列の構築中のいず
れの時点においても、メニユー集合の一部分集合
だけがアクテイブである。これらのメニユーは、
白い背景に黒い表示を有している。アクテイブで
ないメニユーは、暗い背景に白い表示である。使
用者はアクテイブな(または、白い)メニユーか
らのみ選択できる。項目は、マウス(入/出力装
置)を用いてメニユーから選択される。マウスは
テーブル上を動かされ、これに応じて、ポインタ
がスクリーン上を動く。ポインタが希望の項目上
にきた時にマウス上のボタンを押せば、その項目
が選択される。 更に、自然言語入力の構築の全ての時点におい
て、1メニユーの全項目の1部分集合のみがアク
テイブとなる。特定時点においてアクテイブでな
い、アクテイブメニユー内のこれらの項目は、そ
の時点においてメニユー内には現われない。この
ため、自然言語入力の構築中のある特定点におい
ては、正しくは次に現われるべきこれらの語また
は句は、使用者が選択するのに利用できるように
なる。こうして、自然言語装置で処理できない文
は、この装置に決して入力されないので、失敗率
は0%となる。 装置と使用者の会話モードは、本発明の主な新
規な点である。従来の全ての装置は使用者に質問
をタイプすることを要求し、このため、自然言語
装置の限界を学習しそれに適応することを要請し
ていた。使用者はこの学習と適応ができないの
で、従来の装置においては、簡単な問合せに対し
てさえ、失敗率が高かつた。本発明による装置は
この重要な問題を解決する。装置の限界は明らか
にされ、入力できる全ての文は理解される。 本発明の目的は、使用者がコンピユータ言語を
知る必要を全くなくして、コンピユータにインタ
ーフエースする装置を提供することである。 本発明の他の目的は、使用者がインターフエー
ス装置の使用に慣れるために多くの時間を必要と
しないコンピユータインターフエース装置を提供
することである。 本発明の他の目的は、自然言語入力は許すが、
使用者に誤つた形式の入力をさせないコンピユー
タインターフエース装置を提供することである。 本発明の他の目的は、多大の複雑な文法を指定
する必要のない、自然言語を理解するコンピユー
タインターフエース装置を提供することである。 本発明の他の目的は、入力のタイプ方法を知ら
ない使用者が関連するデータベース装置に対して
自然言語質問をすることのできる、コンピユータ
インターフエース装置を提供することである。 本発明によれば、以下の装置が提供される。 インターフエース装置であつて、熟練者でない
使用者から受信された自然言語入力に従つて演算
装置に対して、書式上制限された出力を提供する
ための前記インターフエース装置において、前記
入力は前記書式上制限された出力の集合に関して
予め定められた対応関係を有する予め定められた
自然言語部分集合を用いて表現される上記インタ
ーフエース装置であつて: 許可され得る項目の集合を前記使用者に示すた
めの出力装置と; 前記出力装置によつて示された項目の中から特
定項目を、前記使用者の制御下で、指定するため
の指定装置と; 自然言語入力を、前記使用者によつて前記指定
装置から連続的に指定される連続項目の形で、累
積的にパーズするためであつて、前記予め定めら
れた自然言語部分集合に従つて、その時点で受信
されている一連の項目の直後に続くことの可能な
全ての許され得る項目を、繰返し生成し、前記出
力装置上に表示するためのパージング装置と; 完成された入力のパーズを、前記予め定められ
た対応関係に従つて実行可能な機械命令に翻訳す
るための装置とを備えていることを特徴とする前
記インターフエース装置。 発明の実施態様 本発明、データベース問合せおよび更新を関係
形式データベースに実行する実施例を主に参照し
て説明する。自然言語入力は、Ken Rossが1981
年の学位論文「Passing English Phrase
Strueturelで示したものに全体として同様なパー
ザを用いてパーズされる。このシステムはLISP
で書かれLMI社によつてLISPマシンで実演され
た。しかし、当業者には明らかなように、本発明
は、他の種々の物理装置を用いても実現でき、本
発明の重要なアイデアはLISP以外のプログラム
言語にも翻訳できるものである。例えば、現在開
発中の、本発明の他の実施例は、C言語で書かれ
たソースコードで命令され、Texas Instruments
Professional Compnter上で本発明を実現してい
る。実施例に使用した特定なパーザは本発明に必
要不可欠なものでなく他のパーザも使用できるこ
とに留意され度い。従来技術では多くのパーザが
開示されている。しかし、こゝに示す実施例で
は、後に詳述するパーザを使用する。 上記のように、本発明が目的としている最終結
果は、望ましくは(英語のような)自然言語の部
分集合である便利な言語で通常理解される文を、
使用者が入力できるようにすることである。本発
明によれば、使用者が文の各々連続する語を入力
すると文法に合つた文の列を形成できる、次に続
く全ての可能な語の集合が使用者に示されるの
で、使用者は、可能な次の語の1個を選択しさえ
すればよい。(より広範には、可能な入力のいく
つかを集めて類とすることもでき、表示された項
目には、次に説明するように、例えば
“(specific number)”というものがある。 一般には、これは、使用者からの入力が受信さ
れる間に部分入力をパーズすることで実行され、
パーザは正しい入力の次の要素となり得る可能性
のある機能記述の集合を生成し、語の集合を(可
能な次の要素のこれらの機能記述に対応して)表
示する。これによつて、使用者が完全な文を入力
した後の操作の最終結果は、予め定められた文法
に従つたパーズされた命令であり、故に、下記の
ように実行可能な命令に簡単に翻訳され得る。 以下に詳述するこの方法を解釈する第1ステツ
プはパーザ自身の動作についてである。先ず簡単
なパーザを説明し、次に、一語を一時にパーズし
予測することを許す変更を説明する。望ましいパ
ーザは標準外のチユーリング機械命令で指定でき
るもので、GriffthsとPetrckが記述したように、
アルフアスタツクとベータスタツクの上位要素
で、これらの2スタツクの上位要素の現時点での
状態に従つて動作する。これらのスタツクの最上
位要素は順序づけされた(XY,ZW)のような
対で表わされる。こゝで、Xはアルフアスタツク
の上位要素に対応するストリング変数、Yはアル
フアスタツクのXに続く要素、Zはベータスタツ
クの上位要素、およびWはベータスタツクの次の
要素を示す。すると、パーザ規則は次のように記
述できる。 1 適用できる文法則の1つがA…V1V2…Voの
形であれば、条件(V1Y,X)を(Y,V2…
VotAX)上に写像し、V1をAの下のノードと
して付加する。しかし、この規則はXが非終端
(記号)の集合である場合にのみ適用可能であ
る。つまり、X自身が第1レベル入力でなく、
例えば語または語に対する直接の分類(名詞、
形容詞、限定詞等)のような部分パージングト
リーを示している場合である。記号tは単に位
置を保持する記号であつて、この書式では、以
下に続くパーザ則を適当に使用するために用い
られる。故に、この第一部分則では、V1が高
位レベルノードAの下でパーズされ得る群の始
まりを表わす可能性を記憶する。(例えば、V1
が限定詞であれば、これは、例えば“the
parts”のような名詞句の始まりである可能性
を記憶する。)ある要素が他の要素の下に関連
づけられていれば事実上完全なパーズを形成す
る関連するノードのトリーを構成する上におい
て1ステツプが得られる。故に、大まかに英語
に対応する文法内の完全なパーズの例としては
以下のようになろう。 原文(限定詞形容詞名詞副詞) 第1連想は常に、特定な語(例えば“cat”)
をその語に直接連想されるカテゴリ(項類)に
直接翻訳することである。しかし、前もつて留
意すべき点は、使用されたカテゴリは通常に話
されている英語の部分のように広範である必要
はなく、たゞ少くともデータベース問合せアプ
リケーシヨン用であつて、望ましくは意味論的
情報をある程度含むように変更される。このた
め、望ましい実施例では、“number―noun
phrase”、“operation―noun phrase”、“job
card―noun phrase”その他といつたカテゴリ
が使用される。(このような文法は、専門分野
ではセマンテイツク(意味論的)文法として知
られている。) 直観的には、パーザ規則1は、文法の一規則
がスタツクアルフアV1の最上位要素に適用さ
れ得る場合には、この要素はスタツクアルフア
の最上位から除かれ、連続的に、スタツクベー
タがプツシユダウンされる。こゝで、仮定上の
親ノードV1(この下に関連づけられたV1を有す
る)、位置を保持する記号tおよび、適用し得
る文法の規則に必要とされ得る残りの記号
(V2…Vo)が使用される。便宜上、パーザ規則
1を再び記述する。 規則 1 適用された文法の利用可能な規則の一
個がA…>V1V2…Voであれば、 更に、非終端(記号)Xがスタツクベータの
最上位にあれば、(V1Y,X)は(Y,V2…Vo
tAX)上に写像される。 2 パーザの第2規則は、望ましい部分パーズを
スタツクベータからスタツクアルフアに転送す
ることを示すために、どのように位置保持用記
号tを使用するかを示す。 規則 2 位置保持用記号tがスタツクベータの
最上位にあれば、また、非終端記号Aがtの直
後にあれば、位置保持用記号tは削除され、非
終端記号Aがスタツクベータの最上位からスタ
ツクアルフアに転送される。 (X,
置に関する。 本発明は、装置の規則に不注意である使用者や
コンピユータ装置に全く不慣れな使用者が、コン
ピユータ装置に理解できる入力を与えることを許
すものである。更に、経験のある使用者には、よ
り明確でかつ単純な方法で会話処理を行えるよう
にする。 自然言語を用いてのコンピユータ装置へのアク
セスを提供することは、使用の容易なコンピユー
タ装置の構築への極めて重要なステツプである。
しかし、「使用の容易さ」はコンピユータ装置の
作成者の、現時点における、主要な目的であり、
自然言語インターフエスの構築に関する研究は15
年を超え(多くの試作装置を作成し)ているので
はあるが、自然言語インターフエースは、今日、
一般に使用されてはいない。この理由は、これ迄
に作成された自然言語インターフエースは、非常
に使いにくいものだからである。 本発明は、利用可能な、コンピユータ装置への
自然言語インターフエースを提供するという問題
を解決する。使用者は装置の規制を学習したり、
暗記したりする必要がない。更に、自然言語イン
ターフエースの実施に要する時間および処理時間
は短縮される。 これ迄に構築された自然言語インターフエース
は、受け付け可能な入力ストリング(記号列)の
クラス(類)の特性を記述する文法を使用してい
る。パーザは、入力ストリングに関しての1個の
パーズトリー(または、不明瞭な入力に関して複
数のパーズトリー)を作成するために、この文法
を使用する。続いて、このパーズトリーは入力ス
トリングの意味を示し、上記のインターフエース
が構築されたコンピユータ装置に解釈できる式
(または複数の式)に翻訳される。種々の文法書
式およびパージングアルゴリズムが使用されてい
る。しかし、これらの文法書式は、増補文脈自由
文法という一般名で分類できる。この意味すると
ころは、基本方法則は文脈自由方法の規則である
が、各文脈自由則は、それに関連して、追加機能
を与える増補分を有しているというものである。
これらの増補分は、一般に文脈自由則のノードの
属性(および時には、値)をアクセスする。 この文法クラスを基礎とする言語理論として
は、Gazdar(1982)、Bresnan and Kaplan
(Kaplan and Bresnan,1981および
Bresnan1982参照)、やRoss and Saenz(Ross,
1981およびSaenz,1982参照)のものがある。上
記の一般的文法クラスを使用する自然言語インタ
ーフエースを構築するパーザには、SRIで開発さ
れたDIAMONDパーザ(J.Robinson,1980参
照)、HPで開発されたGPSGパーザ(Gawron,
King,Lamping,Loebner,Paulson,Pullum,
Sag,およびWasow,1982参照)、更にその他数
多くのパーザがある。この記述は、構文を基礎と
する文法と、意味論を基礎とする文法の中間的な
ものであることに留意されたい。一般に、これら
の(および他の)構成は文法の両方のクラスの特
性を示すのに適している。 一般に自然言語のパーザーは、文脈自由文法の
パージングに用いられているいくつかのパージン
グアルゴリズムのいずれかに基礎を持つている。
(例えば、Earley,1980、Younger,1967,
Griffins and Petrick,1965、およびRoss,1981
を参照され度い。)先ず、文脈自由パーズが実行
される。続いて、増補規則が使用される。システ
ムによつては、部分的文脈自由パーズが実行され
て、次に、そのパーズ部分に関する増補規則が用
いられる。この手順は、完全なパーズが得られる
までくり返される。 上記の一般的傾向に関しての注目すべき例外
は、この10年来IBMにおいて開発中のTQAシス
テムである。(Plath,1975およびPetrick,1973
を参照のこと。)TQAシステムは、変換文法の理
論(Chomsky,1965参照)に基づき、文法則と
して、数百の反転変換を用いている。変換パーザ
はパーズトリー集合を得るために関連する変換を
適用する。 自然言語インターフエースの主な応用先は、自
然言語データベース問合せシステムである。全て
の自然言語システムに対して、使用者はコンピユ
ータ端末のキーボードに質問をタイプする必要が
あつた。質問が全て入力されると、自然言語イン
ターフエースは入力ストリングの処理を始める。
その処理結果は、使用者の問合せに対する答か、
その問合せが理解できなかつたという応答であつ
た。 自然言語装置は、これまでのところでは、まだ
一般に使用されてはいない。この理由は、自然言
語装置の現状では、これまでに作成された全ての
装置は、その処理範囲において、多くの限界を有
しているからである。つまり、自然言語の全ての
問合せのうちの小さな部分集合しか理解できない
のである。現時点では、英語または他の自然言語
の全て(または、ほとんどの部分)を理解する装
置を構築することは不可能である。上記の状態は
この先何年も続くように思われる。このため、現
在の自然言語装置を有益なものとするために、こ
れらの装置を用いている使用者達は、装置の限界
に適応することが出来なくてはならないであろ
う。彼等は装置の限界を学習し、その入力を、装
置が理解できる部分集合に限定するのである。不
幸なことに、彼等には、これらの限界を学ぶこと
はできなかつたので、上手に言語インターフエー
スを使用できなかつた。 Tennant(1980)は自然言語に関する、最初で
唯一の詳細な評価を行なつた。その評価は、軍用
航空機保守データベースを自然言語でアクセスす
る自然言語問合せ装置であるPLANESシステム
に関して実施された。評価の結果は、自然言語イ
ンターフエースが今日、何故、一般に使用されて
いないかをはつきりと明らかに示している。使用
者がシステムに入力した質問の約1/3は理解され
なかつた。しかも、これらの使用者が指定したタ
スクは、比較的単純な問合せに対応して特に設計
された問題を解くものであつたにもかかわらずこ
の結果であつた。 更に、システムに入力した全ての問合せは、6
〜7語の簡単なものであつた。このことは、多く
の場合、使用者に課せられた各問題を解くには、
多くの質問が必要だということを意味する。入力
量を大きく減少することも可能である一層複雑な
質問は、システムがそれらの質問のいくつかを取
り扱うことができるとしても、決して、試される
ことはなかつた。この一層複雑な質問を試みなか
つた理由は、簡単な質問での多くの失敗が使用者
に、より複雑な質問が成功するという自信を殆ん
どなくさせたためのようである。これ故に、使用
者は、複雑な問合せを書式化しようとはしなかつ
たのである。 自然言語インターフエースが今日広く使用され
ない別の理由は、自然言語システムの構築には従
来から長時間を要するからである。現時点での技
術では、各インターフエースは、各アプリケーシ
ヨンに対してケースごとに構築しなければならな
い。あるアプリケーシヨンに関して、10〜30人・
年の労力を要することも珍らしくはない。このた
め、労力の大きな出費に見合うようなアプリケー
シヨンだけが可能なアプリケーシヨンの候補とな
る。しかし、結果としてのシステム品質を考える
と、この労力は有益であつたとは言えない。 本発明では、使用者は、自然言語を理解する装
置にきちんと書式化された入力をタイプする必要
はなく、その代りに、メニユーの集合が示され
る。使用者は、メニユーから語または句(また
は、番号等)を連続的に選択することで入力を作
成する。使用者の自然言語入力列の構築中のいず
れの時点においても、メニユー集合の一部分集合
だけがアクテイブである。これらのメニユーは、
白い背景に黒い表示を有している。アクテイブで
ないメニユーは、暗い背景に白い表示である。使
用者はアクテイブな(または、白い)メニユーか
らのみ選択できる。項目は、マウス(入/出力装
置)を用いてメニユーから選択される。マウスは
テーブル上を動かされ、これに応じて、ポインタ
がスクリーン上を動く。ポインタが希望の項目上
にきた時にマウス上のボタンを押せば、その項目
が選択される。 更に、自然言語入力の構築の全ての時点におい
て、1メニユーの全項目の1部分集合のみがアク
テイブとなる。特定時点においてアクテイブでな
い、アクテイブメニユー内のこれらの項目は、そ
の時点においてメニユー内には現われない。この
ため、自然言語入力の構築中のある特定点におい
ては、正しくは次に現われるべきこれらの語また
は句は、使用者が選択するのに利用できるように
なる。こうして、自然言語装置で処理できない文
は、この装置に決して入力されないので、失敗率
は0%となる。 装置と使用者の会話モードは、本発明の主な新
規な点である。従来の全ての装置は使用者に質問
をタイプすることを要求し、このため、自然言語
装置の限界を学習しそれに適応することを要請し
ていた。使用者はこの学習と適応ができないの
で、従来の装置においては、簡単な問合せに対し
てさえ、失敗率が高かつた。本発明による装置は
この重要な問題を解決する。装置の限界は明らか
にされ、入力できる全ての文は理解される。 本発明の目的は、使用者がコンピユータ言語を
知る必要を全くなくして、コンピユータにインタ
ーフエースする装置を提供することである。 本発明の他の目的は、使用者がインターフエー
ス装置の使用に慣れるために多くの時間を必要と
しないコンピユータインターフエース装置を提供
することである。 本発明の他の目的は、自然言語入力は許すが、
使用者に誤つた形式の入力をさせないコンピユー
タインターフエース装置を提供することである。 本発明の他の目的は、多大の複雑な文法を指定
する必要のない、自然言語を理解するコンピユー
タインターフエース装置を提供することである。 本発明の他の目的は、入力のタイプ方法を知ら
ない使用者が関連するデータベース装置に対して
自然言語質問をすることのできる、コンピユータ
インターフエース装置を提供することである。 本発明によれば、以下の装置が提供される。 インターフエース装置であつて、熟練者でない
使用者から受信された自然言語入力に従つて演算
装置に対して、書式上制限された出力を提供する
ための前記インターフエース装置において、前記
入力は前記書式上制限された出力の集合に関して
予め定められた対応関係を有する予め定められた
自然言語部分集合を用いて表現される上記インタ
ーフエース装置であつて: 許可され得る項目の集合を前記使用者に示すた
めの出力装置と; 前記出力装置によつて示された項目の中から特
定項目を、前記使用者の制御下で、指定するため
の指定装置と; 自然言語入力を、前記使用者によつて前記指定
装置から連続的に指定される連続項目の形で、累
積的にパーズするためであつて、前記予め定めら
れた自然言語部分集合に従つて、その時点で受信
されている一連の項目の直後に続くことの可能な
全ての許され得る項目を、繰返し生成し、前記出
力装置上に表示するためのパージング装置と; 完成された入力のパーズを、前記予め定められ
た対応関係に従つて実行可能な機械命令に翻訳す
るための装置とを備えていることを特徴とする前
記インターフエース装置。 発明の実施態様 本発明、データベース問合せおよび更新を関係
形式データベースに実行する実施例を主に参照し
て説明する。自然言語入力は、Ken Rossが1981
年の学位論文「Passing English Phrase
Strueturelで示したものに全体として同様なパー
ザを用いてパーズされる。このシステムはLISP
で書かれLMI社によつてLISPマシンで実演され
た。しかし、当業者には明らかなように、本発明
は、他の種々の物理装置を用いても実現でき、本
発明の重要なアイデアはLISP以外のプログラム
言語にも翻訳できるものである。例えば、現在開
発中の、本発明の他の実施例は、C言語で書かれ
たソースコードで命令され、Texas Instruments
Professional Compnter上で本発明を実現してい
る。実施例に使用した特定なパーザは本発明に必
要不可欠なものでなく他のパーザも使用できるこ
とに留意され度い。従来技術では多くのパーザが
開示されている。しかし、こゝに示す実施例で
は、後に詳述するパーザを使用する。 上記のように、本発明が目的としている最終結
果は、望ましくは(英語のような)自然言語の部
分集合である便利な言語で通常理解される文を、
使用者が入力できるようにすることである。本発
明によれば、使用者が文の各々連続する語を入力
すると文法に合つた文の列を形成できる、次に続
く全ての可能な語の集合が使用者に示されるの
で、使用者は、可能な次の語の1個を選択しさえ
すればよい。(より広範には、可能な入力のいく
つかを集めて類とすることもでき、表示された項
目には、次に説明するように、例えば
“(specific number)”というものがある。 一般には、これは、使用者からの入力が受信さ
れる間に部分入力をパーズすることで実行され、
パーザは正しい入力の次の要素となり得る可能性
のある機能記述の集合を生成し、語の集合を(可
能な次の要素のこれらの機能記述に対応して)表
示する。これによつて、使用者が完全な文を入力
した後の操作の最終結果は、予め定められた文法
に従つたパーズされた命令であり、故に、下記の
ように実行可能な命令に簡単に翻訳され得る。 以下に詳述するこの方法を解釈する第1ステツ
プはパーザ自身の動作についてである。先ず簡単
なパーザを説明し、次に、一語を一時にパーズし
予測することを許す変更を説明する。望ましいパ
ーザは標準外のチユーリング機械命令で指定でき
るもので、GriffthsとPetrckが記述したように、
アルフアスタツクとベータスタツクの上位要素
で、これらの2スタツクの上位要素の現時点での
状態に従つて動作する。これらのスタツクの最上
位要素は順序づけされた(XY,ZW)のような
対で表わされる。こゝで、Xはアルフアスタツク
の上位要素に対応するストリング変数、Yはアル
フアスタツクのXに続く要素、Zはベータスタツ
クの上位要素、およびWはベータスタツクの次の
要素を示す。すると、パーザ規則は次のように記
述できる。 1 適用できる文法則の1つがA…V1V2…Voの
形であれば、条件(V1Y,X)を(Y,V2…
VotAX)上に写像し、V1をAの下のノードと
して付加する。しかし、この規則はXが非終端
(記号)の集合である場合にのみ適用可能であ
る。つまり、X自身が第1レベル入力でなく、
例えば語または語に対する直接の分類(名詞、
形容詞、限定詞等)のような部分パージングト
リーを示している場合である。記号tは単に位
置を保持する記号であつて、この書式では、以
下に続くパーザ則を適当に使用するために用い
られる。故に、この第一部分則では、V1が高
位レベルノードAの下でパーズされ得る群の始
まりを表わす可能性を記憶する。(例えば、V1
が限定詞であれば、これは、例えば“the
parts”のような名詞句の始まりである可能性
を記憶する。)ある要素が他の要素の下に関連
づけられていれば事実上完全なパーズを形成す
る関連するノードのトリーを構成する上におい
て1ステツプが得られる。故に、大まかに英語
に対応する文法内の完全なパーズの例としては
以下のようになろう。 原文(限定詞形容詞名詞副詞) 第1連想は常に、特定な語(例えば“cat”)
をその語に直接連想されるカテゴリ(項類)に
直接翻訳することである。しかし、前もつて留
意すべき点は、使用されたカテゴリは通常に話
されている英語の部分のように広範である必要
はなく、たゞ少くともデータベース問合せアプ
リケーシヨン用であつて、望ましくは意味論的
情報をある程度含むように変更される。このた
め、望ましい実施例では、“number―noun
phrase”、“operation―noun phrase”、“job
card―noun phrase”その他といつたカテゴリ
が使用される。(このような文法は、専門分野
ではセマンテイツク(意味論的)文法として知
られている。) 直観的には、パーザ規則1は、文法の一規則
がスタツクアルフアV1の最上位要素に適用さ
れ得る場合には、この要素はスタツクアルフア
の最上位から除かれ、連続的に、スタツクベー
タがプツシユダウンされる。こゝで、仮定上の
親ノードV1(この下に関連づけられたV1を有す
る)、位置を保持する記号tおよび、適用し得
る文法の規則に必要とされ得る残りの記号
(V2…Vo)が使用される。便宜上、パーザ規則
1を再び記述する。 規則 1 適用された文法の利用可能な規則の一
個がA…>V1V2…Voであれば、 更に、非終端(記号)Xがスタツクベータの
最上位にあれば、(V1Y,X)は(Y,V2…Vo
tAX)上に写像される。 2 パーザの第2規則は、望ましい部分パーズを
スタツクベータからスタツクアルフアに転送す
ることを示すために、どのように位置保持用記
号tを使用するかを示す。 規則 2 位置保持用記号tがスタツクベータの
最上位にあれば、また、非終端記号Aがtの直
後にあれば、位置保持用記号tは削除され、非
終端記号Aがスタツクベータの最上位からスタ
ツクアルフアに転送される。 (X,
【式】)は(
【式】Y)上に写像
される。直観的には、スタツクアルフアとスタ
ツクベータ間の関数の割当ては、スタツクアル
フアはパーズトリーのみまたはパーズトリーの
適切に形成されたサブパートを含み、スタツク
ベータはパーズトリーの部分的に形成されたサ
ブパートを保持するために使用されるようにさ
れる。 3 第3規則は、パーズを完成するのに必要とさ
れる要素の必要部分の検出時点を決定するため
に使用される。正式な記述は次の通りである。 規則 3 (
ツクベータ間の関数の割当ては、スタツクアル
フアはパーズトリーのみまたはパーズトリーの
適切に形成されたサブパートを含み、スタツク
ベータはパーズトリーの部分的に形成されたサ
ブパートを保持するために使用されるようにさ
れる。 3 第3規則は、パーズを完成するのに必要とさ
れる要素の必要部分の検出時点を決定するため
に使用される。正式な記述は次の通りである。 規則 3 (
【式】B…tQ)は(Z,…
【式】)上に写像される。
パーザの動作は次のように始められる。スタ
ツクアルフアにパーズされるべき語列をロード
し、次に数字符号が続き、更に、スタツクベー
タ上に、構築されるべきトリーのルーツノード
に対応する高位レベルの記号をロードし、続い
て数字符号をロードする。即ち、(通常)パー
ザが語列を適当にパーズされた文に組み立てる
処理をしている間に、文法上(例えばS…>
NPVPのような規則上)完全な文を示す記号
がスタツクベータにロードされる。故に、この
手続きの初期条件は(W1W2…Wo#,S#)
で表示される。 適正なパーズはこれらの2個のスタツクの最終
条件が(S#,S#)となる場合に見出される。
この場合、アルフアスタツク上のSの下のノード
は必要とされる完全なパーズを提供する。ルート
ノード(即ち、パージングの目的物)は、文パー
ズではないが、例えば、語句パーズであり、こう
すると適正なパーズを示す条件も対応して異な
り、例えば(NP#,NP#)となる。 規則が適用できない場合には、そのパージング
経路(パス)は不良パーズを示し、パーザはトレ
ースし直し、別のパージング経路(パス)をたど
らなければならない。 複数のパーザルールが適用できるときにはおよ
び/または、複数の文法規則がパーザ規則1を通
して適用できるときには、代替パージング経路も
処理されねばならない。実際、いずれの代替パー
ジング経路も適正または不適正なパーズになる。
パージング処理完了後には適正なパーズの集合が
パーザの出力を示す。このことは、以下に説明す
るように本発明の本質的に有利な点である。 上記の単純化したパージング処理の動作例を説
明する。例えば、適用される文法を次の通りとす
る。 (3.4)文法 S…>AB S…>ABC A…>AC A…>X B…>CB B…>z C…>y この例では、入力例はxyzであり、これはSと
してパーズされる。
ツクアルフアにパーズされるべき語列をロード
し、次に数字符号が続き、更に、スタツクベー
タ上に、構築されるべきトリーのルーツノード
に対応する高位レベルの記号をロードし、続い
て数字符号をロードする。即ち、(通常)パー
ザが語列を適当にパーズされた文に組み立てる
処理をしている間に、文法上(例えばS…>
NPVPのような規則上)完全な文を示す記号
がスタツクベータにロードされる。故に、この
手続きの初期条件は(W1W2…Wo#,S#)
で表示される。 適正なパーズはこれらの2個のスタツクの最終
条件が(S#,S#)となる場合に見出される。
この場合、アルフアスタツク上のSの下のノード
は必要とされる完全なパーズを提供する。ルート
ノード(即ち、パージングの目的物)は、文パー
ズではないが、例えば、語句パーズであり、こう
すると適正なパーズを示す条件も対応して異な
り、例えば(NP#,NP#)となる。 規則が適用できない場合には、そのパージング
経路(パス)は不良パーズを示し、パーザはトレ
ースし直し、別のパージング経路(パス)をたど
らなければならない。 複数のパーザルールが適用できるときにはおよ
び/または、複数の文法規則がパーザ規則1を通
して適用できるときには、代替パージング経路も
処理されねばならない。実際、いずれの代替パー
ジング経路も適正または不適正なパーズになる。
パージング処理完了後には適正なパーズの集合が
パーザの出力を示す。このことは、以下に説明す
るように本発明の本質的に有利な点である。 上記の単純化したパージング処理の動作例を説
明する。例えば、適用される文法を次の通りとす
る。 (3.4)文法 S…>AB S…>ABC A…>AC A…>X B…>CB B…>z C…>y この例では、入力例はxyzであり、これはSと
してパーズされる。
【表】
【表】
【表】
【表】
【表】
【表】
不正パス−適用命令なし。
終 了
上述のパーザ検出処理例は、文脈自由文法によ
るパーザの動作を詳細に示している。こゝで示し
た形式操作ルールによつてプログラム可能な動作
に極めて簡単に変換されることがこの例で容易に
分る。例えば、上記の注意深く実施された例の最
終ステツプでのスタツクβ(ベータ)の最終ステ
ータスは、例えば次に示すように、LISPのリス
ト形式で簡単に現わされ得る。 (Ct(A(A(Ax)(Cy)))S) 空リストは容易にテスト可能なので、#は
LISP処理では必要ないことに留意され度い。 既に述べたように、上記のパーザは本発明にお
いて使用するために変更を加えなくてはならな
い。本発明で使用されるパーザはパーザトリーの
生成に加えて、次に来ることのできる項目の集合
を作成しなければならない。このためには、パー
ザは、最初の語または句(フレーズ)が入力され
るとすぐにパージングを始動できる必要がある。
つまり、従来技術の自然言語処理システムで用い
られたパーザが行つた、全ての文(センテンス)
が入力されるまでパージングを持つことは本発明
でのパーズはできない。Rossによつて1982年に
示されたパーザは第1語または第1句の入力と同
時にパージングを始めることが可能である。故
に、ここでの望ましい実施例は以下に示すように
このパーザを使用する。 発表された文献との矛盾を避けるために、パー
ザの書式を僅かに変更する。こゝでは3スタツク
のインフオーマルチユーリングマシン書式を用い
る。これは、従来の書式とは僅かに異つていて、
書式上では、スタツクβ(ベータ)内で位置保持
記号tの下に置かれるべき不完全パーズトリー
が、別個にガンマ(γ)スタツク内に置かれる。 このMSBT(Modified Selective Bottom to
Top)パーザは、3スタツク即ちα,β,及びγ
スタツクに適用されるチユーリングマシン命令で
書式上特徴づけられている。これらの命令は以下
に示す形式であつて、こゝでA,B,C,D,
E,及びFは、終端および非終端英字から選ばれ
た記号の任意な列でよい。 (A,B,C)……>(D,E,F)if
“Conditions”これは以下のように解釈される。 Aがスタツクαの最上位ならば、 Bはスタツクβの最上位であり、 Cはスタツクγの最上位であつて、 “条件”が満足される、 この場合、AをDで、BをEで、CをFで交換
せよ。 チユーリングマシン命令のこの解釈が与えられ
ていると、MSBTパーザは、次に示すチユーリ
ングマシン命令によつて例示される。ある文のパ
ージングを始めるために、パーズされるべき入力
ストリングがスタツクαに置かれ、構築されるべ
きパーズトリーのルート信号がスタツクβに更
に、0(ゼロ)がスタツクγに置かれる。(こゝ
で、0はスタツクに何も内容がないことを示す。) (1) (V1,X,Y)……>(φ,V2…VotX,
AY) こゝでA……>V1V2…Voが句構造文法のル
ールであればXは非終端(記号)の集合であ
り、Yは任意で、AはXから到達することがで
きる。(AがXから到達することが可能である
かは、以下に示すように、到達可能性マトリク
スで現わされる。簡単に言えば、到達可能性マ
トリツクスは、他の多くの文章の中から、例え
ば“the the”というような不可能な語の文を
除去する。 (2) (X,t,A)……>(AX,φ,φ) Aが非終端(記号)の集合に属するなら、 (3) (B,B,Y)……>(φ,φ,Y) Bが非終端(記号)または終端(記号)の集
合に属するなら、 (4) (X,(C1C2…(n),Y)……>(X,
C1C2…Co,Y) (5) (X,(C1C2…Co),Y)……>(X,φ,
Y) 全てのiに対して、Ci=CjCj+1…Cp)また
は{C1C1+L……Cn}またはXである。Xが
終端(記号)の集合に属するなら、 (6) (X,{C1X,Y)……>(X,}Y) (7) (X,{C1X,Y)……>(X,C1:,Y) Xnot=}ならば (8) (X,:},Y)……>(X,φ,Y) (9) (X,{C1},Y)……>(X,C1,Y) (10) (X,:C1,Y)……>(X,:,Y) こゝで:は終端記号でも非終端記号でもない
特別記号である。 C1は既に定義したようにCiタイプの変数で
ある。 (ルール4からルール10は、かつこおよび中か
つこを含む文法ルールの使用を許すために加えら
れている。これらの要素は極めて便利である。中
かつこは、この中の要素である1個が挿入される
ことを示す。かつこは、この中の要素の少くとも
1個(または0個)が挿入され得ることを示す。
Ci型の変数は、この機能はLISP処理内で容易に
実現されるが、ネストされた中かつこおよびかつ
この軌跡をたどるためにのみ加えられている。) 適用命令がない場合には、ルート記号はスタツ
クβの最上位で、同じルート記号がスタツクαの
最上位で、スタツクγは空であり、この場合には
有効なパーズが検出されたことになる。適用命令
がなく、上記の条件が満たされなければ、このパ
ースは入力ストリングに対する有効パーズを生成
せずに終了する。入力ストリングに関する全ての
有効パーズを得るためには、全てのパスをたどつ
て、それらが有効なパーズを生成するか、パーズ
を生成せずに終了するかを検べなければならな
い。 パーザは、Ross(1981)が記述したように、不
正パーズパスを実行する前に除去するために到達
可能性マトリクスを使用するので選択的であると
呼ばれる。到達可能性マトリクスは、Aが左辺に
ある場合に、XがAを支配するかを示す。到達可
能性条件は、この構成上でXがAを支配できる場
合に満足される。 到達可能性マトリクスはブールマトリクスであ
つて、いずれの有効パーズトリーもノードMの最
左端の子ノード(daughter)としてノードNを
有するかを示すために、その文法中に、ノードの
各々の対(N,M)に対しての値を含んでいる。
完全な到達可能性マトリクスの構築は望ましく
は、WarshallおよびBakerの文献に示されるよ
うに実施される。“A Note on Multiplying
Boolean Matrices”(Communications of the
ACM(Feb.1962)p102)および“A Theorem
on Boolean Matrices”(Journal of the
Association for Computing Machinery,
volume9,p11(1962))を参照され度い。尚、こ
れらは本仕様書において参照として使用されてい
る。つまり、文法ルールを用いてあるノードがど
のノードの直接の子ノードであるかを示す直接到
達可能性用のマトリクスが構築される。この後、
上記マトリクスは安定するまで、それ自身とかけ
合わせられる。即ち、最終マトリクスを直接到達
可能性マトリクスと更にかけ合わせても最終マト
リクスに変化が生じない状態のまでである。この
最終マトリクス自身が到達可能性マトリクスとな
る。しかし、こゝでの望ましい実施例では、完全
な到達可能性マトリクスはコンパイルされない
で、代つて、文法の各ノードに対してリストがコ
ンパイルされ、そのリストには、対象ノードによ
つて支配され得るその他の全ての左端の子ノード
が含まれる。 以上説明したルール(規則)によつて認識手続
きが定義される。与えられたストリングが指定さ
れたルートノードによつて支配されるトリーにパ
ーズされ得るかどうかが決定される。入力ストリ
ングに対して、パーザがパーズトリーを生成でき
るようにするために、次の付加が必要である。 (1)が適用されるときには、Aの下にV1をつけ
る。 (3)が適用されるときには、Bをγ上のトツプ記
号の右側の子(要素)としてのアルフアBにつけ
る。 こうするとパーズトリーは、ルート記号でな
く、スタツクα上に現われてくる。 上記のパーザの記述は、手続きが使用する制御
構造に関して中立的なものである。本発明の望ま
しい実施例はブレドスフアースト制御構造を使用
する。これは、入力ストリングの各語に対して可
能なかぎりパーズを進めるものである。故にn番
目の語を入力すると、その語までの完全なパーズ
が実行される。 ブレドスフアースト方式で実行するパーザで
は、入力ストリングの第1語しか与えられない。
そして、項目!MOREがこの語の後部に挿入さ
れる。他の命令が適用されないで、!MOREが
スタツクαの最上位であれば、βとγの両スタツ
クのその時点での内容が退避され、パーザは、パ
ーズパスが分岐された最終場所に戻るよう逆追跡
する。全ての逆追跡が完了すると、次の語がスタ
ツクαのトツプに置かれ、退避されていたβ―α
スタツク上の対の各々の内容がβとγのスタツク
上に置かれる。次に、各β―γの対に対して1パ
ーザ状態を用いて、パージングが再び始動され
る。この手続きは入力ストリング中に語が無くな
るまで繰り返し行われる。 この機能をもう少し詳しく説明する。このため
には、デプスフアースト制御構造を先ず記述しな
ければならない。 デプスフアースト方法ではある状態をできるか
ぎり遠くへ進める。こうするために、適用可能な
1ルールを利用して新しい状態を得る。次に、そ
の新しい状態に対して適用可能な1ルールを使用
する。この操作を適用可能なルールがなくなるか
パーズが検出できなくなるまで続ける。適用可能
なルールがなくなつた場合は不正パーズパスとい
うことになる。パーズが検出されれば、対象文に
対しての可能ないくつかのパーズの1つになる。
いずれにしても、別の適用可能ルールを用いて上
記の方法でこの操作を続け、最終選択点に到るま
で逆追跡を実行して全ての代替パスを見つけ出
す。全ての可能な選択バスをパーザが実行するま
でこれを繰返すことによつて、この文の全てのパ
ーズが検出される。 プレドフアーストでパーズするために、入力の
ある与えられた1語のみパーズを始める能力を導
入し、スタツクα上に(入力された)語置く。適
用命令がなく、!MOREがスタツクαのトツプ
であれば、パーザは既に説明したように、逆追跡
を実行しなければならない。更に、スタツクβと
スタツクγの内容は退避されなければならない。
全ての逆追跡が完了すると、次の語(これはその
次に!MOREを有している)がスタツクα上に
置かれ状態の集合を用いてパージングが再び始ま
る。この各々の状態は、α上に新しい入力語を有
し、βとγを含む退避された集合の1つを有す
る。この手続きは全ての語が処理されるまで繰り
返し行われる。一時に一語をパーズする能力は
NLMenuシステムに不可欠のものである。しか
し、これは従来の自然言語インターフエースにも
有利なものである。ユーザがタイプし入力を構成
している間に仕事が進められるので、他のパーザ
に比較してずつとスピードが速い。各語に対して
パージングをした後の結果としてのβ―γ集合を
退避することによつて抹消(rubout)機能を加
えることもできる。このような機能はNLMenu
システムで使用されている。 上述した方法で変更されたパーザに、正しい書
式に従つた状態テーブルを加えることは当然のこ
とである。新入力およびβ―γ対の集合を用いて
パーズを始める前に、β―γ対を比較することが
でき、共通のサブコールを有するものをマージす
ることができる。これはNLMenuシステムに使
用されるパーザ内でも実現されている。 ある文の可能性のあるn番目の語の集合を予測
する能力は、その文の頭からのn―1語が与えら
れた場合には、このパーザをメニユを基礎とする
自然言語処理用に使用できるようにするために必
要な最後の変更である。幸いにも、この機能は簡
単な方法で加えることができる。パーズパスの1
個をその文のアクテイブなn―1語で示す全ての
β―γ対が入力されたとすると、この状態を継続
できるようにする全ての語の集合を決定すること
が可能である。このためには、集合のスタツフβ
上の最上位記号を検べる。これは、上記のパーズ
状態の最も近いゴールを示している。このゴール
が与えられたとして、次にくる全ての語を決定す
るために、このノードから左側の子(ノード)と
して到達できる全てのノードの集合を決定しなけ
ればならない。幸いなことに、この情報は既に検
討した到達可能性マトリクスから容易に得られ
る。到達可能性ノードの集合が決定されると、語
彙材料を支配することのできるこれらのノードの
サブセツトを探し出すことが必要なことである。
初めのn―1(対)をパーズした結果としてのβ
―γ対の全てに対して上記操作が実行され、結果
としての全ての集合の和集合が作られれば、この
結果としての集合は、次にくることのできる全て
の語彙カテゴリのリストになる。次の語のリスト
はこれから容易に決定される。例えばレキシコン
から決定される。 一時に一語(または、一句)をパーズする能力
は、(以下に説明するように)次に来ることので
きるものを予測できるようにパーザが変更される
ようにするだけでなく、パージング時間を短縮も
する。パージングが始まる前に文の全体が入力さ
れなければならない従来のパーザでは、使用者が
文を形成し問合せを入力している間にはパージン
グは実行されない。しかし、第1の語または句が
入力されるとすぐに処理が始められるならば、使
用者が文を入力するために使用する時間を生産的
に使用できる。故に文が入力されて後に数秒以上
の遅れを発生することなく、ほとんどの作業が入
力完了までに実行されてしまうので、パーズは入
力終了とほゞ同時に完成する。 この手続きの最も重量な特徴は、(n―1)番
目の入力項目までのパージングが完了していれ
ば、n番目の入力項目となり得る可能性のある終
端記号の集合を予測できることである。次の入力
項目がメニユから選択できるように適切なメニユ
とこれらのメニユ中の適当な項目とが表示される
ようにするのはこの機能でである。各々の可能性
のある親ノードに対して、パーザがこの情報を演
算できるようにするために、左端(レフトコー
ナ)となることのできる可能性のある全ての子
(ノード)のリストを演算で求めなければならな
い。これは、句構造ルールを直接アクセスして
か、または先ず到達可能性マトリクスを演算によ
つて求め、左側の子(ノード)としてのYを支配
できるXのようなXとYの全ての対を探し出すこ
とによつて実行される。望ましい実施例では、第
1の方法が使用される。ルールの各親ノードに対
して、その親ノードがレフトコーナとして支配で
きる全てのノードをコンパイルしてリストが作ら
れる。これは、全ルールを実行しリストをコンパ
イルすることで為される。 この処理(ハイライトでのメニユ、使用者によ
る選択、パーズ、新しくハイライトされたメニ
ユ)は、使用者が入力を希望する文を完成したこ
とを示すまで続けられる。その時点で、上記のよ
うに、少くとも1個の有効なパーズトリーがメモ
リになくてはならない。しかし、パーズトリーが
複数個存在してもよい。故に、例えば、“find
suppliers who ship parts to suppliers who
own airports and who are located in
Boston)というような文は、“who are located
in Boston”という限定が言及されている第1の
“suppliers”の集合に関するのか、第2の
“suppliers”の集合に関するものなのかが明確で
ないために、書式上不明瞭である。このような不
明瞭さを解消するために、こゝでの望ましい実施
例での最終ステツプでは、以下のような表示を使
用者に提供する。即ち、一文の入力完了時に複数
の有効パーズが存在すれば、入力文の代替パーズ
結果をインデントを用いて、従属クローズの関係
指示項目を示す。こゝで使用者は表示された代替
パーズ中から選択をして、最終結果が入力文に対
する唯一の明瞭なパーズとなるようにする。 次に、このような明瞭なパーズを実行可能機械
命令(または、制限のあるシステムでは、他のア
プリケーシヨンへの出力)に変換する処理を説明
する。 レキシコン内の各語に関連して、各変換が存在
する。この変換は、その語が現われる文の意味の
一部である。文中の全ての語の変換(翻訳)を適
当に組み合わせるために、各文脈自由ルールに関
連するルールがあり、これによつて、文脈自由ル
ールの矢印の右辺の記号の変換を組み合わせる順
序が示される。これらのルールは数字のリストを
かつこに入れたもので、数字1は矢印の後の第1
項を、数字2は第2項を参照するというようにな
つている。 例えば、ルールX→ABCDについては、変換
の組み合わせを示す可能性のあるルールは(3
(124))となる。このルールは、Aの変換は関数
とみなされ、Bの変換に引数として使用される。
新しく得られたこの変換は関数とみなされて4の
変換に引数として適用される。更にこの結果の翻
訳は3の変換の引数となり、この3の変換も関数
である。 一般に、最左端の数字の変換は、その右側の数
字の変換に対する引数として使用される。この結
果は、更にその右側の項目の変換への引数として
適用される関数となる。しかし、上記の例のよう
にかつこによつてこの操作をオーバーライドでき
る。 関数である変換は“λx…x…”の形式である。
例えばこれを、引数として“C”というような項
目に適用すると、“λx”後のxの出現のたびに
“C”が入れられて、その結果は、“λx”が式か
ら除かれて、代入が行われるのと等しい。このこ
とは、Montague Grammer(Montague1973参
照)内の全ての操作に使用されたλ変換の単純化
したものと同等ということである。 例えば、“John hit Mary.”という文を考察し
てみる。この妥当な意味は(hit John Mary)で
あるかもしれない。こゝで、Johnが語彙カテゴ
リNPに指定され、“John”の意味が与えられ、
“Mary”が語彙カテゴリNPに指定され、
“Mary”の意味が与えられ、更に“hit”が語彙
カテゴリVに指定され“λxλy(hit yx)”の意味
が与えられれば、次のルールによつて希望する意
味が得られる。 S‐‐→NPVP (21) VP‐‐→VNP (12) この理由を明らかにするために、ルール(12)の故
に、NPの意味をVの意味に適用することの結果
としてサブトリーVPの意味が得られることに注
目され度い。“λxλy(hit yx)”をMaryに適用し
た結果は“λy(hit y Mary)”である。トリー
全体の意味は、関数“λy(hit y Mary)”を介
してVPの意味をNPの意味、即ちJohnに適用し
たものである。この関数は上記の引数に適用され
て“(hit John Mary)”を生成する。 上記の説明で入力が予め定められた文法および
レキシコンに従つてパーズされる方法を明らかに
した。本発明は、相当する文法およびレキシコン
によつて書式上正しく表示され得る全てのシステ
ムに従つて、自然言語入力を規則づけ(処理す)
るために適用できることは当然である。即ち、本
発明はデータベース問合せシステムに適用できる
だけでなく、自然言語を使用する全ての機械言語
で、正しい形式の実行可能な命令を生成するのに
も使用できる。更に、本発明に意味論的文法で定
義されたシステムのみでなく、構文的文法で定義
されたシステムにも使用できる。その上、本発明
は出力として実行可能な命令を作成するためだけ
でなく、書式上規制された出力の集合と、正しい
形式の文法を有する自然言語の部分集合との間に
対応が存在する限りにおいて、自然言語入力か
ら、全ゆるタイプの書式上規制された出力を作成
するために使用できる。 パーザによつてこゝで使用されている文法のク
ラスは、文脈自由文法(CFG)である。どのよ
うな文脈自由文法も、この文法が定義された後に
説明する2個の極めて重大とは云えない例外を除
けば、使用可能である。 文脈自由文法は英字記号とこれらの記号を含む
ルール(規則)の有限集合とから成る。記号は終
端記号と非終端記号とに分類される。終端記号は
レキシコン(即ち辞書)に現われて、カテゴリに
従つて語を分類する。例えば、言語学の作業でよ
く使用される終端記号は、次のレキシコンの例で
は、コロンの左に示される。 限定詞:the,a (冠詞) 形容詞:lazy,red 名 詞:cat,book 動 詞:ate,saw 副 詞:slowly,greedily 非終端記号は、終端記号でない記号である。 ルールはA‐‐→B1……Bn(n>0)の形式で
ある。Bnは終端記号または非終端記号である。
Aは非終端記号である。簡単な例として、以下の
ルールの集合を考える。 S‐‐→NPVP NP‐‐→限定詞 形容詞 名詞 VP‐‐→VP副詞 VP‐‐→動詞 上記のレキシコンが与えられているとすると、
この文法は、非終端記号が文法に対して指定記号
として示されると、レキシコン中の語を含む文が
文法に適合しているかどうかを決定する。この指
定された記号は文が何であるかを示すものであ
る。 文法が与えられた場合に、文を取り出し、これ
が文法に適合するかどうかを決定する処理はパー
ジングと呼ばれる。一文をパージングした結果
は、入力が正しい文であれば、少くとも1個のパ
ーズトリーとなる。入力が文でなければパージン
グはパーズトリーを作成しない。例えば、Sが指
定されたルーツ記号に指定されると、文“The
lazy cat ate greedily”は、上記の文法に従つ
てパージングした結果に次のトリーが得られるの
で、この文法によつて文法に適合しているとみな
される。 次に示す2個の文法クラスを含む文法以外は、
全ての文法が使用できる。これらのルールはX‐‐
→ヌルの形式のものとサイクルを形成するルール
の集合、例えばA‐‐→B,B‐‐→C,C‐‐→D,
およびD‐‐→Aといつたものである。初めのクラ
スの文法上の問題点は、予測用アルゴリズムが、
文中の次に来ることの可能な全ての語を決定する
ことが難かしいことである。第2のクラスの問題
点は、ある文に対して可能性のあるパーズトリー
が無限になることである。 第2のルールの文法を除去しても何の困難も生
じないし文法作成者に何ら負担をかけない。初め
のルールを取り除くと、次のように多少の不便を
生じる。即ち、“Who do you think I
saw?”といつた質問でみられるもので、これは
言語学理論によつては“saw”の後にヌル名詞句
を含むものであつて、このような場合に、文法作
成者が、“Who do you think I saw?”のよ
うな質問で見出されるある限定的従属性を示すた
めに、パーズトリー中でのヌルノードの存在を利
用できなくなる。しかし、ヌル名詞句を必要とし
ない代替文法処理が、通常使用される。故に、上
記のようなルールの禁止はこれらの代替文法処理
を用いさえすれば対応できることになる。 付録Cに例としての文法とレキシコンを示す。 許容される文法が文脈自由ルールに関連される
増補分を許すように拡張されゝば、より単純で小
規模な文法が作成できる。文法のクラスと共に、
上記の拡張によつて、関係形式データベースアプ
リケーシヨン用の文法を自動的に作成する処理は
極めて単純化される。このことは、システム全体
の効率を上げる。 次に拡張について記述する。これはLoss
(1981)およびSaenz(1982)のLocal文法として
書式化され特徴づけられた文法を単純化したもの
である。 変更は2個必要である。第1に、語彙上の項目
(終端ノード)はそれに関連して構文上のフイー
チヤを有する。これは新しい考え方ではない。
(例えばChomsky(1965)を参照のこと。)一般
に、構文上のフイーチヤーの値は、二進表示と考
えられていた。そのため、例えばSINGに対して
は、単数のSINGは+の値を複数のSINGは−の
値を有するようになつていた。この代りに、フイ
ーチヤ(feature:特徴を示す項目)が少くとも
2個の値をとれるようにしてある。このオプシヨ
ンはFriedman(1973)によつて初めて構文上の検
討をされ、彼女の論文では、変換構造内で上記の
アプローチを望ましいものとする論証を示してい
る。フイーチヤの値は結合された記号の有限数か
らなる列(ストリング)と規制される。
Friedmanはこの可能性のあるフイーチヤの値を、
自分のシステム上の変換要素による規制を用いる
ことによつて、更に制限した。 第2の変換は、フイーチヤ名およびフイーチヤ
値を非終端ノードに指定できるようにする機構で
ある。非終端ノードがそれに関連したフイーチヤ
を有しているというアイデアは、提案された多く
の構文分析において暗に含まれていた。これを明
らかにしている分析もある。Dougherty(1970,
1971)はChomsky(1965)がフイーチヤを指定す
るのに使用した機構を更に進めて、これによつて
非終端ノードのあるものにもフイーチヤを指定で
きるようにした。Plath(1973)が示したTQA
(Transformational Question Answering)で
は、変換を用いて非終端ノードにフイーチヤを指
定している。 トリーのノードに、そのトリーのノードのフイ
ーチヤ以外のフイーチヤを基礎として、フイーチ
ヤを指定する極めて一般的な機構をKnuth(1968)
を提案した。Petrick(1973)は、いく分異つた記
法を用いて、この機構を取り入れている。これら
の研究者の仕事は、こゝで記述するフイーチヤ濾
過機構の設計内で作られている。この機構は
Knuthのものを制限して得られる。 Knuthの機械によればフイーチヤ名(Knuthの
名称では属性)およびフイーチヤ値はトリーを上
下できる。各々の句構造ルールに関連して、フイ
ーチヤを転送する方法を示すルールの集合があ
る。これらをフイーチヤ濾過ルールと呼ぶ。
Knuthは、句構造内に表現されたどのノードに対
するフイーチヤの値も、その句構造ルールのいず
れのノードのフイーチヤの値として、もしくは、
その句構造ルールで表現されたいずれのノードの
フイーチヤ値に適用される関数の値として指定す
ることを許している。あるフイーチヤ値が特定な
ノードに指定されると、それは変化しない。 次に示すような構造では、Nomlのフイーチヤ
はそのノードの他のフイーチヤか、それ以下のノ
ード(Nom2とS)のフイーチヤか、それ以上の
ノード(NP)のフイーチヤか、その兄弟ノード
(det)のフイーチヤかによつて決定され得る。
終 了
上述のパーザ検出処理例は、文脈自由文法によ
るパーザの動作を詳細に示している。こゝで示し
た形式操作ルールによつてプログラム可能な動作
に極めて簡単に変換されることがこの例で容易に
分る。例えば、上記の注意深く実施された例の最
終ステツプでのスタツクβ(ベータ)の最終ステ
ータスは、例えば次に示すように、LISPのリス
ト形式で簡単に現わされ得る。 (Ct(A(A(Ax)(Cy)))S) 空リストは容易にテスト可能なので、#は
LISP処理では必要ないことに留意され度い。 既に述べたように、上記のパーザは本発明にお
いて使用するために変更を加えなくてはならな
い。本発明で使用されるパーザはパーザトリーの
生成に加えて、次に来ることのできる項目の集合
を作成しなければならない。このためには、パー
ザは、最初の語または句(フレーズ)が入力され
るとすぐにパージングを始動できる必要がある。
つまり、従来技術の自然言語処理システムで用い
られたパーザが行つた、全ての文(センテンス)
が入力されるまでパージングを持つことは本発明
でのパーズはできない。Rossによつて1982年に
示されたパーザは第1語または第1句の入力と同
時にパージングを始めることが可能である。故
に、ここでの望ましい実施例は以下に示すように
このパーザを使用する。 発表された文献との矛盾を避けるために、パー
ザの書式を僅かに変更する。こゝでは3スタツク
のインフオーマルチユーリングマシン書式を用い
る。これは、従来の書式とは僅かに異つていて、
書式上では、スタツクβ(ベータ)内で位置保持
記号tの下に置かれるべき不完全パーズトリー
が、別個にガンマ(γ)スタツク内に置かれる。 このMSBT(Modified Selective Bottom to
Top)パーザは、3スタツク即ちα,β,及びγ
スタツクに適用されるチユーリングマシン命令で
書式上特徴づけられている。これらの命令は以下
に示す形式であつて、こゝでA,B,C,D,
E,及びFは、終端および非終端英字から選ばれ
た記号の任意な列でよい。 (A,B,C)……>(D,E,F)if
“Conditions”これは以下のように解釈される。 Aがスタツクαの最上位ならば、 Bはスタツクβの最上位であり、 Cはスタツクγの最上位であつて、 “条件”が満足される、 この場合、AをDで、BをEで、CをFで交換
せよ。 チユーリングマシン命令のこの解釈が与えられ
ていると、MSBTパーザは、次に示すチユーリ
ングマシン命令によつて例示される。ある文のパ
ージングを始めるために、パーズされるべき入力
ストリングがスタツクαに置かれ、構築されるべ
きパーズトリーのルート信号がスタツクβに更
に、0(ゼロ)がスタツクγに置かれる。(こゝ
で、0はスタツクに何も内容がないことを示す。) (1) (V1,X,Y)……>(φ,V2…VotX,
AY) こゝでA……>V1V2…Voが句構造文法のル
ールであればXは非終端(記号)の集合であ
り、Yは任意で、AはXから到達することがで
きる。(AがXから到達することが可能である
かは、以下に示すように、到達可能性マトリク
スで現わされる。簡単に言えば、到達可能性マ
トリツクスは、他の多くの文章の中から、例え
ば“the the”というような不可能な語の文を
除去する。 (2) (X,t,A)……>(AX,φ,φ) Aが非終端(記号)の集合に属するなら、 (3) (B,B,Y)……>(φ,φ,Y) Bが非終端(記号)または終端(記号)の集
合に属するなら、 (4) (X,(C1C2…(n),Y)……>(X,
C1C2…Co,Y) (5) (X,(C1C2…Co),Y)……>(X,φ,
Y) 全てのiに対して、Ci=CjCj+1…Cp)また
は{C1C1+L……Cn}またはXである。Xが
終端(記号)の集合に属するなら、 (6) (X,{C1X,Y)……>(X,}Y) (7) (X,{C1X,Y)……>(X,C1:,Y) Xnot=}ならば (8) (X,:},Y)……>(X,φ,Y) (9) (X,{C1},Y)……>(X,C1,Y) (10) (X,:C1,Y)……>(X,:,Y) こゝで:は終端記号でも非終端記号でもない
特別記号である。 C1は既に定義したようにCiタイプの変数で
ある。 (ルール4からルール10は、かつこおよび中か
つこを含む文法ルールの使用を許すために加えら
れている。これらの要素は極めて便利である。中
かつこは、この中の要素である1個が挿入される
ことを示す。かつこは、この中の要素の少くとも
1個(または0個)が挿入され得ることを示す。
Ci型の変数は、この機能はLISP処理内で容易に
実現されるが、ネストされた中かつこおよびかつ
この軌跡をたどるためにのみ加えられている。) 適用命令がない場合には、ルート記号はスタツ
クβの最上位で、同じルート記号がスタツクαの
最上位で、スタツクγは空であり、この場合には
有効なパーズが検出されたことになる。適用命令
がなく、上記の条件が満たされなければ、このパ
ースは入力ストリングに対する有効パーズを生成
せずに終了する。入力ストリングに関する全ての
有効パーズを得るためには、全てのパスをたどつ
て、それらが有効なパーズを生成するか、パーズ
を生成せずに終了するかを検べなければならな
い。 パーザは、Ross(1981)が記述したように、不
正パーズパスを実行する前に除去するために到達
可能性マトリクスを使用するので選択的であると
呼ばれる。到達可能性マトリクスは、Aが左辺に
ある場合に、XがAを支配するかを示す。到達可
能性条件は、この構成上でXがAを支配できる場
合に満足される。 到達可能性マトリクスはブールマトリクスであ
つて、いずれの有効パーズトリーもノードMの最
左端の子ノード(daughter)としてノードNを
有するかを示すために、その文法中に、ノードの
各々の対(N,M)に対しての値を含んでいる。
完全な到達可能性マトリクスの構築は望ましく
は、WarshallおよびBakerの文献に示されるよ
うに実施される。“A Note on Multiplying
Boolean Matrices”(Communications of the
ACM(Feb.1962)p102)および“A Theorem
on Boolean Matrices”(Journal of the
Association for Computing Machinery,
volume9,p11(1962))を参照され度い。尚、こ
れらは本仕様書において参照として使用されてい
る。つまり、文法ルールを用いてあるノードがど
のノードの直接の子ノードであるかを示す直接到
達可能性用のマトリクスが構築される。この後、
上記マトリクスは安定するまで、それ自身とかけ
合わせられる。即ち、最終マトリクスを直接到達
可能性マトリクスと更にかけ合わせても最終マト
リクスに変化が生じない状態のまでである。この
最終マトリクス自身が到達可能性マトリクスとな
る。しかし、こゝでの望ましい実施例では、完全
な到達可能性マトリクスはコンパイルされない
で、代つて、文法の各ノードに対してリストがコ
ンパイルされ、そのリストには、対象ノードによ
つて支配され得るその他の全ての左端の子ノード
が含まれる。 以上説明したルール(規則)によつて認識手続
きが定義される。与えられたストリングが指定さ
れたルートノードによつて支配されるトリーにパ
ーズされ得るかどうかが決定される。入力ストリ
ングに対して、パーザがパーズトリーを生成でき
るようにするために、次の付加が必要である。 (1)が適用されるときには、Aの下にV1をつけ
る。 (3)が適用されるときには、Bをγ上のトツプ記
号の右側の子(要素)としてのアルフアBにつけ
る。 こうするとパーズトリーは、ルート記号でな
く、スタツクα上に現われてくる。 上記のパーザの記述は、手続きが使用する制御
構造に関して中立的なものである。本発明の望ま
しい実施例はブレドスフアースト制御構造を使用
する。これは、入力ストリングの各語に対して可
能なかぎりパーズを進めるものである。故にn番
目の語を入力すると、その語までの完全なパーズ
が実行される。 ブレドスフアースト方式で実行するパーザで
は、入力ストリングの第1語しか与えられない。
そして、項目!MOREがこの語の後部に挿入さ
れる。他の命令が適用されないで、!MOREが
スタツクαの最上位であれば、βとγの両スタツ
クのその時点での内容が退避され、パーザは、パ
ーズパスが分岐された最終場所に戻るよう逆追跡
する。全ての逆追跡が完了すると、次の語がスタ
ツクαのトツプに置かれ、退避されていたβ―α
スタツク上の対の各々の内容がβとγのスタツク
上に置かれる。次に、各β―γの対に対して1パ
ーザ状態を用いて、パージングが再び始動され
る。この手続きは入力ストリング中に語が無くな
るまで繰り返し行われる。 この機能をもう少し詳しく説明する。このため
には、デプスフアースト制御構造を先ず記述しな
ければならない。 デプスフアースト方法ではある状態をできるか
ぎり遠くへ進める。こうするために、適用可能な
1ルールを利用して新しい状態を得る。次に、そ
の新しい状態に対して適用可能な1ルールを使用
する。この操作を適用可能なルールがなくなるか
パーズが検出できなくなるまで続ける。適用可能
なルールがなくなつた場合は不正パーズパスとい
うことになる。パーズが検出されれば、対象文に
対しての可能ないくつかのパーズの1つになる。
いずれにしても、別の適用可能ルールを用いて上
記の方法でこの操作を続け、最終選択点に到るま
で逆追跡を実行して全ての代替パスを見つけ出
す。全ての可能な選択バスをパーザが実行するま
でこれを繰返すことによつて、この文の全てのパ
ーズが検出される。 プレドフアーストでパーズするために、入力の
ある与えられた1語のみパーズを始める能力を導
入し、スタツクα上に(入力された)語置く。適
用命令がなく、!MOREがスタツクαのトツプ
であれば、パーザは既に説明したように、逆追跡
を実行しなければならない。更に、スタツクβと
スタツクγの内容は退避されなければならない。
全ての逆追跡が完了すると、次の語(これはその
次に!MOREを有している)がスタツクα上に
置かれ状態の集合を用いてパージングが再び始ま
る。この各々の状態は、α上に新しい入力語を有
し、βとγを含む退避された集合の1つを有す
る。この手続きは全ての語が処理されるまで繰り
返し行われる。一時に一語をパーズする能力は
NLMenuシステムに不可欠のものである。しか
し、これは従来の自然言語インターフエースにも
有利なものである。ユーザがタイプし入力を構成
している間に仕事が進められるので、他のパーザ
に比較してずつとスピードが速い。各語に対して
パージングをした後の結果としてのβ―γ集合を
退避することによつて抹消(rubout)機能を加
えることもできる。このような機能はNLMenu
システムで使用されている。 上述した方法で変更されたパーザに、正しい書
式に従つた状態テーブルを加えることは当然のこ
とである。新入力およびβ―γ対の集合を用いて
パーズを始める前に、β―γ対を比較することが
でき、共通のサブコールを有するものをマージす
ることができる。これはNLMenuシステムに使
用されるパーザ内でも実現されている。 ある文の可能性のあるn番目の語の集合を予測
する能力は、その文の頭からのn―1語が与えら
れた場合には、このパーザをメニユを基礎とする
自然言語処理用に使用できるようにするために必
要な最後の変更である。幸いにも、この機能は簡
単な方法で加えることができる。パーズパスの1
個をその文のアクテイブなn―1語で示す全ての
β―γ対が入力されたとすると、この状態を継続
できるようにする全ての語の集合を決定すること
が可能である。このためには、集合のスタツフβ
上の最上位記号を検べる。これは、上記のパーズ
状態の最も近いゴールを示している。このゴール
が与えられたとして、次にくる全ての語を決定す
るために、このノードから左側の子(ノード)と
して到達できる全てのノードの集合を決定しなけ
ればならない。幸いなことに、この情報は既に検
討した到達可能性マトリクスから容易に得られ
る。到達可能性ノードの集合が決定されると、語
彙材料を支配することのできるこれらのノードの
サブセツトを探し出すことが必要なことである。
初めのn―1(対)をパーズした結果としてのβ
―γ対の全てに対して上記操作が実行され、結果
としての全ての集合の和集合が作られれば、この
結果としての集合は、次にくることのできる全て
の語彙カテゴリのリストになる。次の語のリスト
はこれから容易に決定される。例えばレキシコン
から決定される。 一時に一語(または、一句)をパーズする能力
は、(以下に説明するように)次に来ることので
きるものを予測できるようにパーザが変更される
ようにするだけでなく、パージング時間を短縮も
する。パージングが始まる前に文の全体が入力さ
れなければならない従来のパーザでは、使用者が
文を形成し問合せを入力している間にはパージン
グは実行されない。しかし、第1の語または句が
入力されるとすぐに処理が始められるならば、使
用者が文を入力するために使用する時間を生産的
に使用できる。故に文が入力されて後に数秒以上
の遅れを発生することなく、ほとんどの作業が入
力完了までに実行されてしまうので、パーズは入
力終了とほゞ同時に完成する。 この手続きの最も重量な特徴は、(n―1)番
目の入力項目までのパージングが完了していれ
ば、n番目の入力項目となり得る可能性のある終
端記号の集合を予測できることである。次の入力
項目がメニユから選択できるように適切なメニユ
とこれらのメニユ中の適当な項目とが表示される
ようにするのはこの機能でである。各々の可能性
のある親ノードに対して、パーザがこの情報を演
算できるようにするために、左端(レフトコー
ナ)となることのできる可能性のある全ての子
(ノード)のリストを演算で求めなければならな
い。これは、句構造ルールを直接アクセスして
か、または先ず到達可能性マトリクスを演算によ
つて求め、左側の子(ノード)としてのYを支配
できるXのようなXとYの全ての対を探し出すこ
とによつて実行される。望ましい実施例では、第
1の方法が使用される。ルールの各親ノードに対
して、その親ノードがレフトコーナとして支配で
きる全てのノードをコンパイルしてリストが作ら
れる。これは、全ルールを実行しリストをコンパ
イルすることで為される。 この処理(ハイライトでのメニユ、使用者によ
る選択、パーズ、新しくハイライトされたメニ
ユ)は、使用者が入力を希望する文を完成したこ
とを示すまで続けられる。その時点で、上記のよ
うに、少くとも1個の有効なパーズトリーがメモ
リになくてはならない。しかし、パーズトリーが
複数個存在してもよい。故に、例えば、“find
suppliers who ship parts to suppliers who
own airports and who are located in
Boston)というような文は、“who are located
in Boston”という限定が言及されている第1の
“suppliers”の集合に関するのか、第2の
“suppliers”の集合に関するものなのかが明確で
ないために、書式上不明瞭である。このような不
明瞭さを解消するために、こゝでの望ましい実施
例での最終ステツプでは、以下のような表示を使
用者に提供する。即ち、一文の入力完了時に複数
の有効パーズが存在すれば、入力文の代替パーズ
結果をインデントを用いて、従属クローズの関係
指示項目を示す。こゝで使用者は表示された代替
パーズ中から選択をして、最終結果が入力文に対
する唯一の明瞭なパーズとなるようにする。 次に、このような明瞭なパーズを実行可能機械
命令(または、制限のあるシステムでは、他のア
プリケーシヨンへの出力)に変換する処理を説明
する。 レキシコン内の各語に関連して、各変換が存在
する。この変換は、その語が現われる文の意味の
一部である。文中の全ての語の変換(翻訳)を適
当に組み合わせるために、各文脈自由ルールに関
連するルールがあり、これによつて、文脈自由ル
ールの矢印の右辺の記号の変換を組み合わせる順
序が示される。これらのルールは数字のリストを
かつこに入れたもので、数字1は矢印の後の第1
項を、数字2は第2項を参照するというようにな
つている。 例えば、ルールX→ABCDについては、変換
の組み合わせを示す可能性のあるルールは(3
(124))となる。このルールは、Aの変換は関数
とみなされ、Bの変換に引数として使用される。
新しく得られたこの変換は関数とみなされて4の
変換に引数として適用される。更にこの結果の翻
訳は3の変換の引数となり、この3の変換も関数
である。 一般に、最左端の数字の変換は、その右側の数
字の変換に対する引数として使用される。この結
果は、更にその右側の項目の変換への引数として
適用される関数となる。しかし、上記の例のよう
にかつこによつてこの操作をオーバーライドでき
る。 関数である変換は“λx…x…”の形式である。
例えばこれを、引数として“C”というような項
目に適用すると、“λx”後のxの出現のたびに
“C”が入れられて、その結果は、“λx”が式か
ら除かれて、代入が行われるのと等しい。このこ
とは、Montague Grammer(Montague1973参
照)内の全ての操作に使用されたλ変換の単純化
したものと同等ということである。 例えば、“John hit Mary.”という文を考察し
てみる。この妥当な意味は(hit John Mary)で
あるかもしれない。こゝで、Johnが語彙カテゴ
リNPに指定され、“John”の意味が与えられ、
“Mary”が語彙カテゴリNPに指定され、
“Mary”の意味が与えられ、更に“hit”が語彙
カテゴリVに指定され“λxλy(hit yx)”の意味
が与えられれば、次のルールによつて希望する意
味が得られる。 S‐‐→NPVP (21) VP‐‐→VNP (12) この理由を明らかにするために、ルール(12)の故
に、NPの意味をVの意味に適用することの結果
としてサブトリーVPの意味が得られることに注
目され度い。“λxλy(hit yx)”をMaryに適用し
た結果は“λy(hit y Mary)”である。トリー
全体の意味は、関数“λy(hit y Mary)”を介
してVPの意味をNPの意味、即ちJohnに適用し
たものである。この関数は上記の引数に適用され
て“(hit John Mary)”を生成する。 上記の説明で入力が予め定められた文法および
レキシコンに従つてパーズされる方法を明らかに
した。本発明は、相当する文法およびレキシコン
によつて書式上正しく表示され得る全てのシステ
ムに従つて、自然言語入力を規則づけ(処理す)
るために適用できることは当然である。即ち、本
発明はデータベース問合せシステムに適用できる
だけでなく、自然言語を使用する全ての機械言語
で、正しい形式の実行可能な命令を生成するのに
も使用できる。更に、本発明に意味論的文法で定
義されたシステムのみでなく、構文的文法で定義
されたシステムにも使用できる。その上、本発明
は出力として実行可能な命令を作成するためだけ
でなく、書式上規制された出力の集合と、正しい
形式の文法を有する自然言語の部分集合との間に
対応が存在する限りにおいて、自然言語入力か
ら、全ゆるタイプの書式上規制された出力を作成
するために使用できる。 パーザによつてこゝで使用されている文法のク
ラスは、文脈自由文法(CFG)である。どのよ
うな文脈自由文法も、この文法が定義された後に
説明する2個の極めて重大とは云えない例外を除
けば、使用可能である。 文脈自由文法は英字記号とこれらの記号を含む
ルール(規則)の有限集合とから成る。記号は終
端記号と非終端記号とに分類される。終端記号は
レキシコン(即ち辞書)に現われて、カテゴリに
従つて語を分類する。例えば、言語学の作業でよ
く使用される終端記号は、次のレキシコンの例で
は、コロンの左に示される。 限定詞:the,a (冠詞) 形容詞:lazy,red 名 詞:cat,book 動 詞:ate,saw 副 詞:slowly,greedily 非終端記号は、終端記号でない記号である。 ルールはA‐‐→B1……Bn(n>0)の形式で
ある。Bnは終端記号または非終端記号である。
Aは非終端記号である。簡単な例として、以下の
ルールの集合を考える。 S‐‐→NPVP NP‐‐→限定詞 形容詞 名詞 VP‐‐→VP副詞 VP‐‐→動詞 上記のレキシコンが与えられているとすると、
この文法は、非終端記号が文法に対して指定記号
として示されると、レキシコン中の語を含む文が
文法に適合しているかどうかを決定する。この指
定された記号は文が何であるかを示すものであ
る。 文法が与えられた場合に、文を取り出し、これ
が文法に適合するかどうかを決定する処理はパー
ジングと呼ばれる。一文をパージングした結果
は、入力が正しい文であれば、少くとも1個のパ
ーズトリーとなる。入力が文でなければパージン
グはパーズトリーを作成しない。例えば、Sが指
定されたルーツ記号に指定されると、文“The
lazy cat ate greedily”は、上記の文法に従つ
てパージングした結果に次のトリーが得られるの
で、この文法によつて文法に適合しているとみな
される。 次に示す2個の文法クラスを含む文法以外は、
全ての文法が使用できる。これらのルールはX‐‐
→ヌルの形式のものとサイクルを形成するルール
の集合、例えばA‐‐→B,B‐‐→C,C‐‐→D,
およびD‐‐→Aといつたものである。初めのクラ
スの文法上の問題点は、予測用アルゴリズムが、
文中の次に来ることの可能な全ての語を決定する
ことが難かしいことである。第2のクラスの問題
点は、ある文に対して可能性のあるパーズトリー
が無限になることである。 第2のルールの文法を除去しても何の困難も生
じないし文法作成者に何ら負担をかけない。初め
のルールを取り除くと、次のように多少の不便を
生じる。即ち、“Who do you think I
saw?”といつた質問でみられるもので、これは
言語学理論によつては“saw”の後にヌル名詞句
を含むものであつて、このような場合に、文法作
成者が、“Who do you think I saw?”のよ
うな質問で見出されるある限定的従属性を示すた
めに、パーズトリー中でのヌルノードの存在を利
用できなくなる。しかし、ヌル名詞句を必要とし
ない代替文法処理が、通常使用される。故に、上
記のようなルールの禁止はこれらの代替文法処理
を用いさえすれば対応できることになる。 付録Cに例としての文法とレキシコンを示す。 許容される文法が文脈自由ルールに関連される
増補分を許すように拡張されゝば、より単純で小
規模な文法が作成できる。文法のクラスと共に、
上記の拡張によつて、関係形式データベースアプ
リケーシヨン用の文法を自動的に作成する処理は
極めて単純化される。このことは、システム全体
の効率を上げる。 次に拡張について記述する。これはLoss
(1981)およびSaenz(1982)のLocal文法として
書式化され特徴づけられた文法を単純化したもの
である。 変更は2個必要である。第1に、語彙上の項目
(終端ノード)はそれに関連して構文上のフイー
チヤを有する。これは新しい考え方ではない。
(例えばChomsky(1965)を参照のこと。)一般
に、構文上のフイーチヤーの値は、二進表示と考
えられていた。そのため、例えばSINGに対して
は、単数のSINGは+の値を複数のSINGは−の
値を有するようになつていた。この代りに、フイ
ーチヤ(feature:特徴を示す項目)が少くとも
2個の値をとれるようにしてある。このオプシヨ
ンはFriedman(1973)によつて初めて構文上の検
討をされ、彼女の論文では、変換構造内で上記の
アプローチを望ましいものとする論証を示してい
る。フイーチヤの値は結合された記号の有限数か
らなる列(ストリング)と規制される。
Friedmanはこの可能性のあるフイーチヤの値を、
自分のシステム上の変換要素による規制を用いる
ことによつて、更に制限した。 第2の変換は、フイーチヤ名およびフイーチヤ
値を非終端ノードに指定できるようにする機構で
ある。非終端ノードがそれに関連したフイーチヤ
を有しているというアイデアは、提案された多く
の構文分析において暗に含まれていた。これを明
らかにしている分析もある。Dougherty(1970,
1971)はChomsky(1965)がフイーチヤを指定す
るのに使用した機構を更に進めて、これによつて
非終端ノードのあるものにもフイーチヤを指定で
きるようにした。Plath(1973)が示したTQA
(Transformational Question Answering)で
は、変換を用いて非終端ノードにフイーチヤを指
定している。 トリーのノードに、そのトリーのノードのフイ
ーチヤ以外のフイーチヤを基礎として、フイーチ
ヤを指定する極めて一般的な機構をKnuth(1968)
を提案した。Petrick(1973)は、いく分異つた記
法を用いて、この機構を取り入れている。これら
の研究者の仕事は、こゝで記述するフイーチヤ濾
過機構の設計内で作られている。この機構は
Knuthのものを制限して得られる。 Knuthの機械によればフイーチヤ名(Knuthの
名称では属性)およびフイーチヤ値はトリーを上
下できる。各々の句構造ルールに関連して、フイ
ーチヤを転送する方法を示すルールの集合があ
る。これらをフイーチヤ濾過ルールと呼ぶ。
Knuthは、句構造内に表現されたどのノードに対
するフイーチヤの値も、その句構造ルールのいず
れのノードのフイーチヤの値として、もしくは、
その句構造ルールで表現されたいずれのノードの
フイーチヤ値に適用される関数の値として指定す
ることを許している。あるフイーチヤ値が特定な
ノードに指定されると、それは変化しない。 次に示すような構造では、Nomlのフイーチヤ
はそのノードの他のフイーチヤか、それ以下のノ
ード(Nom2とS)のフイーチヤか、それ以上の
ノード(NP)のフイーチヤか、その兄弟ノード
(det)のフイーチヤかによつて決定され得る。
【式】
更に、これらのノードのフイーチヤは、それら
の親ノード、子ノード、または兄弟ノードによつ
て決定され得る。実際、このことは、トリーのい
ずれからの情報もNomlのフイーチヤを決定する
ノードに転送できることを意味する。 上記のことを示すためにPetrickの記法を用い
れば、次のフイーチヤ濾過ルールを以下に示す句
構造ルールに関連づけることができる。 NP‐‐→det Nom FEATURE1(0)=F1(FEATURE2(0), FEATURE3(2)) FEATURE3(2)=F2(FEATURE4(1)) FEATURE4(1)=FEATURE4(2) 番号0,1,2は句構造ルールで表示されたノ
ードを示す。番号0は矢印の左のノード、NPノ
ードである。番号1は矢印のすぐ右のノードで、
det nodeである。番号2は矢印の右の第2番目
のノードで、Nomノードである。一般に、Nは
矢印の右側のN番目のノードである。(こゝでN
>0である。) 第1のフイーチヤルールは、NPノードの
FEATURE2の値とNomノードのFEATURE3の
値とに関数F1を適用した結果にNPノードに対す
るFEATURE1の値を設定することと解釈され
る。 Local文法では、ノードのフイーチヤの値は、
そのノードが支配するノード上に存するフイーチ
ヤの値によつてのみ決定される。(他のノードを
支配するノードは、トリーの中の他のノードより
上位にある。) 即ち、どのサブトリーのノードのフイーチヤ値
も、そのサブトリー内のフイーチヤ値にのみ依存
する。これは、フイーチヤがトリーを下方にでな
く上方にのみ濾過されるようにフイーチヤ濾過ル
ールを制限することで実現される。故に、0ノー
ドのフイーチヤがノード1からノードNのフイー
チヤの値に適用された関数によつて、またはノー
ド1からノードNのフイーチヤの値によつて決定
される濾過ルールのみが許される。(こゝで、こ
のフイーチヤ濾過ルールは、矢印に続くN要素の
句構造ルールに関連づけられている。) 他のクラスの増補ルールも同様に使用される。
これらは、ノードのフイーチヤを検査し、そのフ
イーチヤの値に従つて不正な形式の構造を取り除
く。上記のルールはフイーチヤブロツキングルー
ルと呼ばれ、矢印の右側に、ノードのフイーチヤ
の値に関する条件として記述される。Petrickの
記法はこれらのルールにも使用できるがこの場合
には多少異つた解釈が必要である。一般に、ブロ
ツキングルールはノード1からノードNのフイー
チヤの値、または、ノード1からノードNのフイ
ーチヤの値に適用された関数の値は、ノード1か
らノードNのフイーチヤの値またはノード1から
ノードNのフイーチヤの値に適用された値に等し
くなければならないと規定している。これらのル
ールはフイーチヤ値を指定することゝ解釈されて
はならない。そうではなく、これらはサブトリー
が文法に従つて有効であるかを示す正しく書式化
されたかを検査するための条件と解釈されるべき
である。 実際のフイーチヤ機構の例として、以下の性質
を有する仮想言語を考察する。 ―動詞と主語NPは数と格が一致する。 ―名詞とそれらの限定詞は数と性が一致す
る。 ―形容詞と名詞は性が一致する。 ―言語はSVOで名詞句内では要素の順序は、
限定詞―形容詞―名詞である。 以下の句構造ルールおよびフイーチヤルール
は、PERSONというフイーチヤの値が数1,2、
および3(第1、第2、および第3格を示す)を
とり、NUMBERの値がSINGおよびPLURをと
り、GENDERの値がMASCおよびFEMをとるな
らば、上記の状況の特性を示している。 S‐‐→NP VP Blocking PERSON(1)=PERSON(2) NUMBER(1)=NUMBER(2) パーコレーシヨン(濾過) なし VP‐‐→V NP ブロツキング なし パーコレーシヨン PERSON(0)=PERSON(1) NUMBER(0)−NUMBER(1) NP‐‐→det Adj N ブロツキング NUMBER(1)=NUMBER(3) GENDER(1)=GENDER(3) GENDER(2)=GENDER(3) パーコレーシヨン NUMBER(0)−NUMBER(3) PERSON(0)=PERSON(3) これらのルールから作成され得るトリーの例を
次に示す。
の親ノード、子ノード、または兄弟ノードによつ
て決定され得る。実際、このことは、トリーのい
ずれからの情報もNomlのフイーチヤを決定する
ノードに転送できることを意味する。 上記のことを示すためにPetrickの記法を用い
れば、次のフイーチヤ濾過ルールを以下に示す句
構造ルールに関連づけることができる。 NP‐‐→det Nom FEATURE1(0)=F1(FEATURE2(0), FEATURE3(2)) FEATURE3(2)=F2(FEATURE4(1)) FEATURE4(1)=FEATURE4(2) 番号0,1,2は句構造ルールで表示されたノ
ードを示す。番号0は矢印の左のノード、NPノ
ードである。番号1は矢印のすぐ右のノードで、
det nodeである。番号2は矢印の右の第2番目
のノードで、Nomノードである。一般に、Nは
矢印の右側のN番目のノードである。(こゝでN
>0である。) 第1のフイーチヤルールは、NPノードの
FEATURE2の値とNomノードのFEATURE3の
値とに関数F1を適用した結果にNPノードに対す
るFEATURE1の値を設定することと解釈され
る。 Local文法では、ノードのフイーチヤの値は、
そのノードが支配するノード上に存するフイーチ
ヤの値によつてのみ決定される。(他のノードを
支配するノードは、トリーの中の他のノードより
上位にある。) 即ち、どのサブトリーのノードのフイーチヤ値
も、そのサブトリー内のフイーチヤ値にのみ依存
する。これは、フイーチヤがトリーを下方にでな
く上方にのみ濾過されるようにフイーチヤ濾過ル
ールを制限することで実現される。故に、0ノー
ドのフイーチヤがノード1からノードNのフイー
チヤの値に適用された関数によつて、またはノー
ド1からノードNのフイーチヤの値によつて決定
される濾過ルールのみが許される。(こゝで、こ
のフイーチヤ濾過ルールは、矢印に続くN要素の
句構造ルールに関連づけられている。) 他のクラスの増補ルールも同様に使用される。
これらは、ノードのフイーチヤを検査し、そのフ
イーチヤの値に従つて不正な形式の構造を取り除
く。上記のルールはフイーチヤブロツキングルー
ルと呼ばれ、矢印の右側に、ノードのフイーチヤ
の値に関する条件として記述される。Petrickの
記法はこれらのルールにも使用できるがこの場合
には多少異つた解釈が必要である。一般に、ブロ
ツキングルールはノード1からノードNのフイー
チヤの値、または、ノード1からノードNのフイ
ーチヤの値に適用された関数の値は、ノード1か
らノードNのフイーチヤの値またはノード1から
ノードNのフイーチヤの値に適用された値に等し
くなければならないと規定している。これらのル
ールはフイーチヤ値を指定することゝ解釈されて
はならない。そうではなく、これらはサブトリー
が文法に従つて有効であるかを示す正しく書式化
されたかを検査するための条件と解釈されるべき
である。 実際のフイーチヤ機構の例として、以下の性質
を有する仮想言語を考察する。 ―動詞と主語NPは数と格が一致する。 ―名詞とそれらの限定詞は数と性が一致す
る。 ―形容詞と名詞は性が一致する。 ―言語はSVOで名詞句内では要素の順序は、
限定詞―形容詞―名詞である。 以下の句構造ルールおよびフイーチヤルール
は、PERSONというフイーチヤの値が数1,2、
および3(第1、第2、および第3格を示す)を
とり、NUMBERの値がSINGおよびPLURをと
り、GENDERの値がMASCおよびFEMをとるな
らば、上記の状況の特性を示している。 S‐‐→NP VP Blocking PERSON(1)=PERSON(2) NUMBER(1)=NUMBER(2) パーコレーシヨン(濾過) なし VP‐‐→V NP ブロツキング なし パーコレーシヨン PERSON(0)=PERSON(1) NUMBER(0)−NUMBER(1) NP‐‐→det Adj N ブロツキング NUMBER(1)=NUMBER(3) GENDER(1)=GENDER(3) GENDER(2)=GENDER(3) パーコレーシヨン NUMBER(0)−NUMBER(3) PERSON(0)=PERSON(3) これらのルールから作成され得るトリーの例を
次に示す。
【表】
い。
一つの可能性としては、フイーチヤ情報を含
む、かなり大規模な到達可能性マトリクスを作成
することがある。これは、記号の各々と関連づけ
られ得る属性と値の全ての可能な集合に対して、
到達可能性マトリクス内に1エントリを有するこ
とで実現できる。故に、上の例では、NPがdetを
支配するかを示すエントリを持つというよりも、
PERSON=2、NUMBER=SING、および
GENDER=FEMを有するNPが、PERSON=
3、NUMBER=SING、およびGENDER=
FENを有するdetを支配するかを示すエントリ更
に、PERSON=2、NUMBER=SING、および
GENDER=FEMを有するNPがPERSON=2、
NUMBER=SING、およびGENDER=FEMを
有するdetを支配するかを示すエントリ等を持つ
ことが必要である。この情報は、detが文脈自由
の場合にNPから到達できるかを決定するために
使用された文脈自由ルールに関連した濾過ルール
およびブロツキングルールから計算され得る。 極めて小規模な文法を除いて、この第1の解決
は、到達可能性マトリクスを記憶するために許容
され得ぬほどのメモリを必要とする。第2の解決
は、到達可能性マトリクス内に予め答を記憶する
のでなくて、到達可能性情報が必要とされる時点
において、同様な計算を実行する。この場合に
は、実行時間中に、多大な計算が行なわれる。 第3の選択は最も有望とみられるが、文脈自由
のルールに対する到達可能性マトリクスを計算
し、次に、マトリクスの各項目に対して等式また
は等式の集合を関連づける。上記の例では、これ
らの等式はdetが文脈自由ルール内でNPから到達
できるかを決定するために使用された文脈自由ル
ールに関連した濾過ルールおよびブロツキングル
ールから計算される。到達可能性マトリクス情報
を必要とする2個のノードのフイーチヤの値が分
れば、それらがこの等式に代入される。この等式
の結果は、到達可能性を真または偽で示すもので
ある。 本発明の方法を他から区別しているものは、次
に来ることのできる終端(記号)の集合を決定す
る能力であり、この能力が適切な項目とメニユを
表示できるようにし、これによつて、システムへ
の自然言語入力に関する失敗率を0%に保証して
いる。 しかしながら、この0%の失敗率を達成するた
めには犠牲も払われている。望ましいパーザは文
脈自由文法のみを使用でき、既に記述した「増補
文脈自由文法」を使用できない。これは、次に来
ることのできる項目を予測する時に、増補分を考
慮に入れなければならないからである。本発明は
上記のように増補した文法に対しても適用可能で
あるが、こゝでの望ましい実施例にはその能力は
含まれない。故に、文脈自由文法としては余り強
力ではないものを使用しなければならない。全て
のパラフノーズを操作する必要のある自然言語シ
ステムでは(このことは従来のシステムでは必須
であつた)、文脈自由文法は受けつけられない。
これらは、極めて大きな自然言語フラグメントを
特性づけるための十分な力を有していない。しか
し、ある項目を一方法のみで特性づけることだけ
が要求されるシステムでは、文脈自由文法は適当
である。このため本システムでの上記犠牲は大き
なものではない。更に増補文脈自由文法を用いた
入力の処理のできるパーザは、本システムで使用
するパーザよりも必らず遅い。故に、実際、本シ
ステムでのこの犠牲によつてパーザを高速で動作
できる。 試作装置はLMI LISPマシン上で現時点におい
て実現されている。これには上記のアルゴリズム
が使用され、要求されるメニユの作成のためおよ
び上記のようにそれらを操作するためのLISPマ
シンソフトウエアが使われている。この試作シス
テムは、Date(1975,p79)に記述された自然言
語データベース問合せシステムで、部品供給者の
データベースをアクセスするものである。このデ
ータベースはLISPマシン上に作成された関係形
式データベース管理システム内に関係づけられた
形式で記憶される。付録にパーザと、メニユの作
成および操作とのためのLISPコード(マシン)
を示す。データベースへの許容される問合せを特
性化する文法も示す。 使用者に対してメニユ上に示され、使用者が選
択できる項目は語または句とは限らない。使用者
は、語、句、数値(制限なしまたは制限つき)、
直接タイプ入力(例えばデータベースに新しいエ
ントリを加える)、直接グラフイツク入力(例え
ばマツプ上の位置を示して行う)、または他の種
種の情報といつた入力が使用できる。例えば表示
される項目は典型的には“(spesific part no)”
または“(spesific supplier)”といつたエントリ
を含んでいる。使用者がこれらの1項目をマウス
で指示すると、データベースからリアルタイムで
集められた特定供給者名のリストが、小さなウイ
ンドに表示される。故にメニユ上に表示されたこ
れらのノンワード項目によつて種々の処理が付加
され、使用者はこれによつてシステムと会話す
る。 上記の種々の表示項目は一般に“エキスパー
ト”と呼ばれる。これらのエキスパートの作成
は、それらの機能が定義されゝば極めて簡単であ
る。注目すべき微妙な部分は、部分パーズから表
示項目への変換においてレキシコンがこの時点に
おいてノンワード項目を生成するために変更され
なければならないことである。故に、例えば、あ
る文入力の部分パーズが次の語として形容詞か名
詞を要求した場合には、エキスパート項目が表示
される必要があれば、適当なエキスパート項目に
対する擬似語彙エントリを更に加えなければなら
ない。つまり例えば、Johnes brothersを“名詞
―供給者”としてクラス分けする可能性のあるレ
キシコン内のエントリに加えて、エキスパート項
目“(特定供給者)”を“名詞―供給者”としてク
ラス分けするための追加項目を加えなければなら
ない。エキスパート項目が使用者によつて指定さ
れると、この指定は、エキスパートサブルーチン
へのコールとしてのみ動作できることに留意され
度い。更に、エキスパートの使用は、次の語が選
択される直前に各エキスパートはその機能を終了
し終結するので、自然言語入力の機械命令への最
終変換(翻訳)に影響を与えない。即ち、例え
ば、使用者に対してマツプが提供されていてその
使用者がマツプ上で特定の経緯度を選択するため
にポインタを動かす場合には、パーズ中の部分文
内に現われるエントリは“whose latitude
is50゜west and whose longitude is40゜north”と
いつたものである。 更に、次の項目から極めて多数の項目が選択で
きる場合には、エキスパートを可能な次の項目の
サブカテゴリの表示のために使用できる。エキス
パートは使用者に対してデータベースの限界を報
知するのにも使用できる。例えば部品データベー
スにおいて全ての部品の重量が5ポンド未満であ
れば、部品重量のエキスパートを、数値部品重量
入力を5ポンド未満に限定するために使用でき
る。 更にエキスパートは使用者メモリに対する便利
な補助としても機能できる。例えば、野球に関す
る統計データベースの使用者が“Yastrzemski”
の綴りを思い出せないときには、プレーヤの英字
順リストを呼び出すか、適当なチームのプレーヤ
のリストを呼び出すかしさえすればよい。故に有
効なエキスパートであれば、大規模な問合せを形
成している最中に補助問合せ(サブクエリ)をデ
ータベースにかけることが許され、これによつて
多くの時間が節約できる。更に、エキスパートは
例えば、他の入力チヤネルを選択するのにも使用
できる。例えば周辺装置機器がスケールからの電
子的出力を含むとすると、部品データベース中の
エキスパート項目は“(specific weight read
from scale#7)”と示される。 上記のように、使用者への表示のこゝでの望ま
しい方法は種々のメニユが表示されるスクリーン
と、スクリーン上のカーソルを移動させるマウス
である。しかし、当業者には自明であるように、
他の種々の入出力装置も実際に使用できる。例え
ば、CRTの代りに平面図形デイスプレイ(例え
ば螢光デイスプレイ)の使用もでき、カーソルの
使用者による制御を例えば、ジヨイステイツクま
たは音声認識によつて行うことも可能である。 ソフトウエア使用者への自然言語メニユの表示
について図面に関連して詳述する。 第1図は使用者に対して先ず初めに示されるメ
ニユの例である。底部のブランク箇所の中央に見
える矢印はカーソル位置を示していることに留意
されたい。このカーソルはマウスによつて制御さ
れる。直前の問合せはカーソルのあるブランク箇
所の上にある。 新しい問合せを構成してみる。第1図に示すよ
うに、メニユ内の当初からアクテイブなウインド
は、左上にあり、命令の第1語として“find”,
“delete”,または“insert”を許している。これ
らの語のいずれかにマウスを移動することで、例
えば“find”に移動してマウス上のボタンを押す
ことにより、可能なエントリの1個が選択され
る。 第1図は野球統計データベースから使用者が情
報をとり出すメニユーを示し、メニユー中にA,
B,C,D,E,F及びGで表した各ウインドに
は夫々第1A図、第1B図、第1C図、第1D
図、第1E図、第1F図及び第1G図に示す内容
が表示される。第1A図乃至第1G図の各々には
実際に表示される英文がその対訳と共に示されて
いる。第1図においてハイライトされるウインド
Aは2重枠表示してあり、他の図面でも同様にハ
イライトする部分は2重枠表示してある。各図の
命令ウインドにおけるQはQuery(問合せ)を示
す。 第2図に示すように、ウインドのうちの他のウ
インドがハイライトされ、続く図に示されるよう
に選択処理が続行される。 選択の続行に従つて、アクテイブウインドの集
合のみでなく、各ウインドの内容も変化する。こ
れは使用者にアクテイブ項目の集合を明確に示す
ための表示による便宜的なものにすぎず、他の多
くの表示形式がこれに代つて使用できる。 第2図ではウインドB,C,Fがハイライトさ
れる。ウインドBにはfeafuresの下にname,
league,teamが表示され、その下に第1B図の
batting averageからwalks迄の各項が表示され
る。ウインドCにはnounsの下に第1C図の
battersから<specific teams>迄が表示され、
ウインドFではoperatorsの下にthe numbers
of,the average及びthe totalが表示される。第
2図のウインドB中のname,league及びウイン
ドC中のbattersを選択すると第3図の表示が得
られ、第3図のQueryの欄にfind name and
league of betters(打者の名前と所属リーグを検
索せよ)が表示される。 第3図では、ウインドFのoperatorsの下にか
つこ“(”のみが表示される。これによつて大規
模な論理構造を有する問合せを使用者が不明瞭さ
を除いて示すことができる。第3図のウインドG
にはmodifiersの下に第1G図に表示するものの
うちwhose batter name isからwhose batter
steals is迄とwho are on(以下に所属する)が表
示され、即ち、batterにのみ適当に使用される属
性のみがハイライトされ選択に利用できることに
なる。ウインドG中のwhose batter team isを
選択すると第4図の表示が得られ、第4図の
Queryの欄にwhose batter team isが表示され
る。 第4図では、ウインドEのattributesの下にエ
キスパート項目、即ち、specific batter teams
が現われる。これにマウスを当てるとポツプアツ
プ用エキスパートウインドが現われ(第5図)、
選択のできる特定バツタのチーム属性のメニユが
ウインドEに次のように表示される。 select batter teams(打者所属チームを選択せ
よ) abort(中断) do it(それを行え) Houston(ヒユーストン) Texas(テキサス) (ここでHoustonおよびTexasのリストは、こ
こに示す例でサポートされた実際のデータベース
のエクステントが制限されているので短い。)更
にポツプアツプウインドにも“abort”と“do
it”のための命令が含まれていることにも留意さ
れたい。ポツプアツプウインド内のエントリの1
個の選択されると、これらの命令の1個がマウス
で指定されるか、別のオーバーライド命令がマウ
スで指定されるまでは、このウインド機能は終了
しない。ポツプアツプウインド内の実行命令が指
示された後、ポツプアツプウインドは消え、エキ
スパートがその機能を実行する。パーズ中の文内
への、このエキスパートからの出力は、文要素
“Houston”のみであることに注意されたい。機
能実行後表示ウインドは第6図に示すようにウイ
ンドFのみがハイライトされ、ウインドFの
operatorsの下にand,or及び)が表示される。
即ち、エキスパートはその機能を実行してしまう
とパース中の文に対しては何の影響も与えない。 第7図は更に問合せが進んだ場合の表示ウイン
ドを示し、ハイライトされるウインドDには第1
D図と同じ表示がなされ、マウスによる数値比較
演算子の選択が可能である。 第8図は使用者が数値入力をエントリし易くす
るためのポツプアツプ番号エキスパートを示し、
第8図でハイライトされるウインドEには 7 8 9 rubout(消去) 4 5 6 clear(クリア) 1 2 3 return(戻り) − 0 − about(中断) が表示され、ウインドFにはoperatorsの下にthe
numbers of,the average及びthe totalが表示
される。 第8図のポツプアツプ番号エキスパートは、キ
ーボード入力でなく、マウス操作によつて数値入
力を可能にしている。勿論、エキスパートは直接
のキーボード入力を許すようにも使用できる。 式入力は、右かつこが十分な数だけ入力されな
ければ、正しい形式とみなされない。この制限を
システムは、正しい形式での式(例えば完全な文
にパーズされ得る式)が示されるまで、使用者に
実行オプシヨンを表示しないという方法で強制し
ている。第9図は問合せが更に進んだ場合の表示
を示す。第8図及び第9図の命令ウインドは、第
10図の命令ウインドとは異なり、実行命令を含
まないことに留意されたい。 第9図でハイライトされるウインドFには
operatorsの下にandとorが表示され、第10図
乃至第16図の各図も同様である。 正しい形式の文が入力されると、第11図の命
令ウインドに示す如く問合せ表示命令と実行命令
が現われる。問合せ表示命令は入力した要求の翻
訳を直ちに表示したい場合に使用できる。実行命
令にマウスが当てられるとデータベースシステム
はアクセス命令を実行する。ここでの望ましい実
施例では、出力表示の形式に関する他のオプシヨ
ンを使用者に提供するために、別のポツプアツプ
ウインドを使用している。 セーブクエリ命令がマウス指定されると、直前
に実行された問合せを、将来の変更実行のために
退避する。こうすると検索クエリ命令が、以降の
ある時点で、以前に退避された問合せをリトリー
ブするために使用できる。削除クエリ(DLT・
Q)命令は、以前に退避しておいたクエリを削除
する。リフレツシユされる命令はその時点では使
用されていない命令である。プレークエリ命令は
デモンストレーシヨン命令で、退避されたクエリ
を、あたかも使用者が入力をしているかのよう
に、スロー動作で表示する。 ラブアウトコメントは最終エントリを削除す
る。この機能は上記のように、部分的に完成した
パーズをベータ(β)スタツクやガンマ(γ)ス
タツクに記憶する手続きのためのものである。故
に、例えば、使用者がエラーを含んだ質問を入力
すると、その質問はラブアウト命令を用いて編集
することができる。 その他の編集能力は次の通りである。文を構成
する項目にはマウスに感知するものがある。即
ち、マウス感知項目近くにマウスが移動すると、
このマウス感知項目が突然箱に入つて現われる。
こゝでの望ましい実施例では、エキスパートと共
に入力された全ての語またはデータの各々はマウ
ス感知項目であつて、このようなマウス感知のデ
ータが後にマウスで指定されると、エキスパート
が再び現われそのデータを新らしく編集すること
が出来る。 第12図は既に構成された問合せ内のマウス感
知項目の表示を示す。 第13図と第14図に、不明瞭な問合せがされ
た後の使用者への表示の例を示す。第13図は使
用者が不明瞭な問合せを入力した場合を示し、第
14図は第13図に示したような不明瞭な問合せ
を使用者が実行しようとした場合のシステムから
の応答を示す。使用者が不明瞭な問合せを実行し
ようとすると、第14図に示すように可能な代替
パーズを示す表示が使用者に示される。こゝで使
用者はパーズの1個を選択するように要求され
る。こうして選択されたパーズは次に実行され
る。本発明に従つて自然言語インターフエースシ
ステムを実行するために使用できる極めて小規模
の文法は更に次の有利な点を持つている。即ち、
不明瞭にパーズされた入力は簡単に識別され、
こゝで説明したように、その不明瞭な点は解明さ
れ解決される。 こゝでの望ましい実施例はヘルプ機能をも含ん
でいる。ヘルプ機能はカーソルをアクテイブメニ
ユ上の特定項目に移動してマウス上のアクテイベ
ートボタンでなく、ヘルプボタンを押すことで起
動される。カーソルがメニユ上のアクテイブ項目
上にある時にこれが成されると、ヘルプエキスパ
ートがポツプアツプする。第15図のウインドH
にこのヘルプエキスパートが表示され、ウインド
Hの表示内容を第15H図に示す。このエキスパ
ートは使用者にヘルプメツセージを与え、更に、
カーソルがその時点で停止している項目の次に来
ることの可能な全ての項目のリストを示す。カー
ソルがメニユのアクテイブでない部分に存在する
時にヘルプボタンが押されると、アクテイブでな
い項目には項目が続くことはできないので、ヘル
プメツセージのみが使用者に対して示される。 第16図は異つたデータベースへのアクセスの
ために最初に示されるメニユーの例を示す。第1
6図のウインドA及びDには第1A、第1D図と
同じ表示がされるが、ウインドBにはfeaturesの
下にcredits(クレジツト)、department(部門)
等、ウインドCにはnounsの下にcourses(コー
ス)、sections(部)等、ウインドEには
attributesの下に〈specific course
departments〉(特別の部門)、〈specific titles〉
(特別のタイトル)等、ウインドGにはwhose
course department is(コース部門は)、whose
course title is(コースタイトルは)等が表示さ
れる。ハイライトされるウインドFには
operatorsの下にandとorが表示される。第16
図に示す例についても、第1図乃至第15図に示
す場合と同様に処理を進めることができる。 自然言語入力へのメニユによる方法は、従来の
タイプをする方法に比較して多くの有利さを持つ
ている。既に説明したように、入力された全ての
文は理解される。故に、問合せ入力に対しては
100%の成功率が達成される。 実行時間は必要な文法が極めて少ないので大い
に短縮される。一般に多大な時間を要するのは自
然言語処理システムの各アプリケーシヨンに対し
て完全な文法を書く作業である。大規模な文法を
必要としない理由は、従来システムでは、文の全
ての可能なパラフレーズが理解されなければなら
なかつたからである。この種の言語学的範囲に対
して必要な文法は極めて大規模である。メニユベ
ースシステムではただ一個のパラフレーズが必要
となる。使用者はメニユによつてこのパラフレー
ズへ導かれる。 メニユベースの自然言語処理システムが使用者
を望みの入力へとガイドするという事は次の2つ
の理由によつても有利なことである。まず、入力
の書式方法を知らない困乱してしまう使用者が何
の援助もなく自身の入力を作成するという必要が
ない。必要なことはメニユを見ながら入力を認識
することである。何もないところに、自分の入力
を書式化する必要はない。第2に、システムの概
念上の範囲の限界が明らかとなる。使用者はシス
テムが何を知り何を知らないかがすぐに理解でき
る。 実行時間の短縮に加えて、パージングも高速で
行える。これには次の2要素が理由となる。第1
に語単位でのパーズであり、第2は小規模な文法
である。一般にパーズ時間は文法の大きさの関数
であるので、文法が小さくなるほどパーズは高速
で実行できる。 最後の有利さは、使用者がタイプの仕方を知ら
なくてよいことである。 実施したメニユベースの自然言語アプリケーシ
ヨンは自然言語データベース問合せシステムであ
る。その他にも適用できるアプリケーシヨンは多
数存在する。こゝで考えついたアプリケーシヨン
をいくつか以下に列挙する。しかし、自然言語イ
ンターフエースが適当するいずれのコンピユータ
システムも、メニユベースの自然言語入力によつ
て恩恵を得ることは明らかである。 (i) 言語トランスレータ:使用者は自然言語メニ
ユベース入力を用いて文を構築できる。メニユ
ベース自然言語で入力できる文のクラスを大い
に限定することができるので、入力を翻訳(変
換)するのに比較的簡単な技術を使用できる。
音声合成器をシステムに加えることが可能で翻
訳した文を実際に話すこともできる。そのよう
な装置を2個用いて、即ち言語Xを言語Yに変
換する装置と言語Yを言語Xに変換する装置に
よつて、互いの言語を話せない2人の人間が会
話をすることも可能となる。 (ii) 障害者への音声補助:VOCAIDを極めて強
力にしたものを作成できる。話す、書く、タイ
プ等は出来ないが、メニユから(マウスまたは
他の指示装置で)項目を選択できる者は、メニ
ユシステムを利用して文を作ることができる。
文が作成されると、これを音声合成器で話すこ
とも可能となる。VOCAIDに比較すると、提
供されたテンプレートに対応した限定された数
の文だけでなく、広範囲での文が作成できるの
で、より高い能力が期待できる。 故に、本発明は、どのような入力の限定された
集合に対しても、その限定された入力の集合が文
脈自由文法によつて(重大ではない限定のもと
に)書式的に記述され得る限りにおいては、自然
言語入力を制限することのできる方法を提供す
る。本発明は自然言語入力を理解することのでき
るコンピユータシステム分野でのパイオニアであ
り、従つて、極めて広大なアプリケーシヨンに向
いている。このパイオニアとしての発明のアプリ
ケーシヨン範囲は広く、これ迄に考えつかれてい
ないアプリケーシヨンの部分分野を多数含むこと
が確実であるのでこゝで示したアプリケーシヨン
は可能なアプリケーシヨンの全範囲を限定するた
めのものではない。故に、本発明の範囲は多くの
変更および変形も含み、特許請求の範囲に記述さ
れる以外は限定を受けない。
む、かなり大規模な到達可能性マトリクスを作成
することがある。これは、記号の各々と関連づけ
られ得る属性と値の全ての可能な集合に対して、
到達可能性マトリクス内に1エントリを有するこ
とで実現できる。故に、上の例では、NPがdetを
支配するかを示すエントリを持つというよりも、
PERSON=2、NUMBER=SING、および
GENDER=FEMを有するNPが、PERSON=
3、NUMBER=SING、およびGENDER=
FENを有するdetを支配するかを示すエントリ更
に、PERSON=2、NUMBER=SING、および
GENDER=FEMを有するNPがPERSON=2、
NUMBER=SING、およびGENDER=FEMを
有するdetを支配するかを示すエントリ等を持つ
ことが必要である。この情報は、detが文脈自由
の場合にNPから到達できるかを決定するために
使用された文脈自由ルールに関連した濾過ルール
およびブロツキングルールから計算され得る。 極めて小規模な文法を除いて、この第1の解決
は、到達可能性マトリクスを記憶するために許容
され得ぬほどのメモリを必要とする。第2の解決
は、到達可能性マトリクス内に予め答を記憶する
のでなくて、到達可能性情報が必要とされる時点
において、同様な計算を実行する。この場合に
は、実行時間中に、多大な計算が行なわれる。 第3の選択は最も有望とみられるが、文脈自由
のルールに対する到達可能性マトリクスを計算
し、次に、マトリクスの各項目に対して等式また
は等式の集合を関連づける。上記の例では、これ
らの等式はdetが文脈自由ルール内でNPから到達
できるかを決定するために使用された文脈自由ル
ールに関連した濾過ルールおよびブロツキングル
ールから計算される。到達可能性マトリクス情報
を必要とする2個のノードのフイーチヤの値が分
れば、それらがこの等式に代入される。この等式
の結果は、到達可能性を真または偽で示すもので
ある。 本発明の方法を他から区別しているものは、次
に来ることのできる終端(記号)の集合を決定す
る能力であり、この能力が適切な項目とメニユを
表示できるようにし、これによつて、システムへ
の自然言語入力に関する失敗率を0%に保証して
いる。 しかしながら、この0%の失敗率を達成するた
めには犠牲も払われている。望ましいパーザは文
脈自由文法のみを使用でき、既に記述した「増補
文脈自由文法」を使用できない。これは、次に来
ることのできる項目を予測する時に、増補分を考
慮に入れなければならないからである。本発明は
上記のように増補した文法に対しても適用可能で
あるが、こゝでの望ましい実施例にはその能力は
含まれない。故に、文脈自由文法としては余り強
力ではないものを使用しなければならない。全て
のパラフノーズを操作する必要のある自然言語シ
ステムでは(このことは従来のシステムでは必須
であつた)、文脈自由文法は受けつけられない。
これらは、極めて大きな自然言語フラグメントを
特性づけるための十分な力を有していない。しか
し、ある項目を一方法のみで特性づけることだけ
が要求されるシステムでは、文脈自由文法は適当
である。このため本システムでの上記犠牲は大き
なものではない。更に増補文脈自由文法を用いた
入力の処理のできるパーザは、本システムで使用
するパーザよりも必らず遅い。故に、実際、本シ
ステムでのこの犠牲によつてパーザを高速で動作
できる。 試作装置はLMI LISPマシン上で現時点におい
て実現されている。これには上記のアルゴリズム
が使用され、要求されるメニユの作成のためおよ
び上記のようにそれらを操作するためのLISPマ
シンソフトウエアが使われている。この試作シス
テムは、Date(1975,p79)に記述された自然言
語データベース問合せシステムで、部品供給者の
データベースをアクセスするものである。このデ
ータベースはLISPマシン上に作成された関係形
式データベース管理システム内に関係づけられた
形式で記憶される。付録にパーザと、メニユの作
成および操作とのためのLISPコード(マシン)
を示す。データベースへの許容される問合せを特
性化する文法も示す。 使用者に対してメニユ上に示され、使用者が選
択できる項目は語または句とは限らない。使用者
は、語、句、数値(制限なしまたは制限つき)、
直接タイプ入力(例えばデータベースに新しいエ
ントリを加える)、直接グラフイツク入力(例え
ばマツプ上の位置を示して行う)、または他の種
種の情報といつた入力が使用できる。例えば表示
される項目は典型的には“(spesific part no)”
または“(spesific supplier)”といつたエントリ
を含んでいる。使用者がこれらの1項目をマウス
で指示すると、データベースからリアルタイムで
集められた特定供給者名のリストが、小さなウイ
ンドに表示される。故にメニユ上に表示されたこ
れらのノンワード項目によつて種々の処理が付加
され、使用者はこれによつてシステムと会話す
る。 上記の種々の表示項目は一般に“エキスパー
ト”と呼ばれる。これらのエキスパートの作成
は、それらの機能が定義されゝば極めて簡単であ
る。注目すべき微妙な部分は、部分パーズから表
示項目への変換においてレキシコンがこの時点に
おいてノンワード項目を生成するために変更され
なければならないことである。故に、例えば、あ
る文入力の部分パーズが次の語として形容詞か名
詞を要求した場合には、エキスパート項目が表示
される必要があれば、適当なエキスパート項目に
対する擬似語彙エントリを更に加えなければなら
ない。つまり例えば、Johnes brothersを“名詞
―供給者”としてクラス分けする可能性のあるレ
キシコン内のエントリに加えて、エキスパート項
目“(特定供給者)”を“名詞―供給者”としてク
ラス分けするための追加項目を加えなければなら
ない。エキスパート項目が使用者によつて指定さ
れると、この指定は、エキスパートサブルーチン
へのコールとしてのみ動作できることに留意され
度い。更に、エキスパートの使用は、次の語が選
択される直前に各エキスパートはその機能を終了
し終結するので、自然言語入力の機械命令への最
終変換(翻訳)に影響を与えない。即ち、例え
ば、使用者に対してマツプが提供されていてその
使用者がマツプ上で特定の経緯度を選択するため
にポインタを動かす場合には、パーズ中の部分文
内に現われるエントリは“whose latitude
is50゜west and whose longitude is40゜north”と
いつたものである。 更に、次の項目から極めて多数の項目が選択で
きる場合には、エキスパートを可能な次の項目の
サブカテゴリの表示のために使用できる。エキス
パートは使用者に対してデータベースの限界を報
知するのにも使用できる。例えば部品データベー
スにおいて全ての部品の重量が5ポンド未満であ
れば、部品重量のエキスパートを、数値部品重量
入力を5ポンド未満に限定するために使用でき
る。 更にエキスパートは使用者メモリに対する便利
な補助としても機能できる。例えば、野球に関す
る統計データベースの使用者が“Yastrzemski”
の綴りを思い出せないときには、プレーヤの英字
順リストを呼び出すか、適当なチームのプレーヤ
のリストを呼び出すかしさえすればよい。故に有
効なエキスパートであれば、大規模な問合せを形
成している最中に補助問合せ(サブクエリ)をデ
ータベースにかけることが許され、これによつて
多くの時間が節約できる。更に、エキスパートは
例えば、他の入力チヤネルを選択するのにも使用
できる。例えば周辺装置機器がスケールからの電
子的出力を含むとすると、部品データベース中の
エキスパート項目は“(specific weight read
from scale#7)”と示される。 上記のように、使用者への表示のこゝでの望ま
しい方法は種々のメニユが表示されるスクリーン
と、スクリーン上のカーソルを移動させるマウス
である。しかし、当業者には自明であるように、
他の種々の入出力装置も実際に使用できる。例え
ば、CRTの代りに平面図形デイスプレイ(例え
ば螢光デイスプレイ)の使用もでき、カーソルの
使用者による制御を例えば、ジヨイステイツクま
たは音声認識によつて行うことも可能である。 ソフトウエア使用者への自然言語メニユの表示
について図面に関連して詳述する。 第1図は使用者に対して先ず初めに示されるメ
ニユの例である。底部のブランク箇所の中央に見
える矢印はカーソル位置を示していることに留意
されたい。このカーソルはマウスによつて制御さ
れる。直前の問合せはカーソルのあるブランク箇
所の上にある。 新しい問合せを構成してみる。第1図に示すよ
うに、メニユ内の当初からアクテイブなウインド
は、左上にあり、命令の第1語として“find”,
“delete”,または“insert”を許している。これ
らの語のいずれかにマウスを移動することで、例
えば“find”に移動してマウス上のボタンを押す
ことにより、可能なエントリの1個が選択され
る。 第1図は野球統計データベースから使用者が情
報をとり出すメニユーを示し、メニユー中にA,
B,C,D,E,F及びGで表した各ウインドに
は夫々第1A図、第1B図、第1C図、第1D
図、第1E図、第1F図及び第1G図に示す内容
が表示される。第1A図乃至第1G図の各々には
実際に表示される英文がその対訳と共に示されて
いる。第1図においてハイライトされるウインド
Aは2重枠表示してあり、他の図面でも同様にハ
イライトする部分は2重枠表示してある。各図の
命令ウインドにおけるQはQuery(問合せ)を示
す。 第2図に示すように、ウインドのうちの他のウ
インドがハイライトされ、続く図に示されるよう
に選択処理が続行される。 選択の続行に従つて、アクテイブウインドの集
合のみでなく、各ウインドの内容も変化する。こ
れは使用者にアクテイブ項目の集合を明確に示す
ための表示による便宜的なものにすぎず、他の多
くの表示形式がこれに代つて使用できる。 第2図ではウインドB,C,Fがハイライトさ
れる。ウインドBにはfeafuresの下にname,
league,teamが表示され、その下に第1B図の
batting averageからwalks迄の各項が表示され
る。ウインドCにはnounsの下に第1C図の
battersから<specific teams>迄が表示され、
ウインドFではoperatorsの下にthe numbers
of,the average及びthe totalが表示される。第
2図のウインドB中のname,league及びウイン
ドC中のbattersを選択すると第3図の表示が得
られ、第3図のQueryの欄にfind name and
league of betters(打者の名前と所属リーグを検
索せよ)が表示される。 第3図では、ウインドFのoperatorsの下にか
つこ“(”のみが表示される。これによつて大規
模な論理構造を有する問合せを使用者が不明瞭さ
を除いて示すことができる。第3図のウインドG
にはmodifiersの下に第1G図に表示するものの
うちwhose batter name isからwhose batter
steals is迄とwho are on(以下に所属する)が表
示され、即ち、batterにのみ適当に使用される属
性のみがハイライトされ選択に利用できることに
なる。ウインドG中のwhose batter team isを
選択すると第4図の表示が得られ、第4図の
Queryの欄にwhose batter team isが表示され
る。 第4図では、ウインドEのattributesの下にエ
キスパート項目、即ち、specific batter teams
が現われる。これにマウスを当てるとポツプアツ
プ用エキスパートウインドが現われ(第5図)、
選択のできる特定バツタのチーム属性のメニユが
ウインドEに次のように表示される。 select batter teams(打者所属チームを選択せ
よ) abort(中断) do it(それを行え) Houston(ヒユーストン) Texas(テキサス) (ここでHoustonおよびTexasのリストは、こ
こに示す例でサポートされた実際のデータベース
のエクステントが制限されているので短い。)更
にポツプアツプウインドにも“abort”と“do
it”のための命令が含まれていることにも留意さ
れたい。ポツプアツプウインド内のエントリの1
個の選択されると、これらの命令の1個がマウス
で指定されるか、別のオーバーライド命令がマウ
スで指定されるまでは、このウインド機能は終了
しない。ポツプアツプウインド内の実行命令が指
示された後、ポツプアツプウインドは消え、エキ
スパートがその機能を実行する。パーズ中の文内
への、このエキスパートからの出力は、文要素
“Houston”のみであることに注意されたい。機
能実行後表示ウインドは第6図に示すようにウイ
ンドFのみがハイライトされ、ウインドFの
operatorsの下にand,or及び)が表示される。
即ち、エキスパートはその機能を実行してしまう
とパース中の文に対しては何の影響も与えない。 第7図は更に問合せが進んだ場合の表示ウイン
ドを示し、ハイライトされるウインドDには第1
D図と同じ表示がなされ、マウスによる数値比較
演算子の選択が可能である。 第8図は使用者が数値入力をエントリし易くす
るためのポツプアツプ番号エキスパートを示し、
第8図でハイライトされるウインドEには 7 8 9 rubout(消去) 4 5 6 clear(クリア) 1 2 3 return(戻り) − 0 − about(中断) が表示され、ウインドFにはoperatorsの下にthe
numbers of,the average及びthe totalが表示
される。 第8図のポツプアツプ番号エキスパートは、キ
ーボード入力でなく、マウス操作によつて数値入
力を可能にしている。勿論、エキスパートは直接
のキーボード入力を許すようにも使用できる。 式入力は、右かつこが十分な数だけ入力されな
ければ、正しい形式とみなされない。この制限を
システムは、正しい形式での式(例えば完全な文
にパーズされ得る式)が示されるまで、使用者に
実行オプシヨンを表示しないという方法で強制し
ている。第9図は問合せが更に進んだ場合の表示
を示す。第8図及び第9図の命令ウインドは、第
10図の命令ウインドとは異なり、実行命令を含
まないことに留意されたい。 第9図でハイライトされるウインドFには
operatorsの下にandとorが表示され、第10図
乃至第16図の各図も同様である。 正しい形式の文が入力されると、第11図の命
令ウインドに示す如く問合せ表示命令と実行命令
が現われる。問合せ表示命令は入力した要求の翻
訳を直ちに表示したい場合に使用できる。実行命
令にマウスが当てられるとデータベースシステム
はアクセス命令を実行する。ここでの望ましい実
施例では、出力表示の形式に関する他のオプシヨ
ンを使用者に提供するために、別のポツプアツプ
ウインドを使用している。 セーブクエリ命令がマウス指定されると、直前
に実行された問合せを、将来の変更実行のために
退避する。こうすると検索クエリ命令が、以降の
ある時点で、以前に退避された問合せをリトリー
ブするために使用できる。削除クエリ(DLT・
Q)命令は、以前に退避しておいたクエリを削除
する。リフレツシユされる命令はその時点では使
用されていない命令である。プレークエリ命令は
デモンストレーシヨン命令で、退避されたクエリ
を、あたかも使用者が入力をしているかのよう
に、スロー動作で表示する。 ラブアウトコメントは最終エントリを削除す
る。この機能は上記のように、部分的に完成した
パーズをベータ(β)スタツクやガンマ(γ)ス
タツクに記憶する手続きのためのものである。故
に、例えば、使用者がエラーを含んだ質問を入力
すると、その質問はラブアウト命令を用いて編集
することができる。 その他の編集能力は次の通りである。文を構成
する項目にはマウスに感知するものがある。即
ち、マウス感知項目近くにマウスが移動すると、
このマウス感知項目が突然箱に入つて現われる。
こゝでの望ましい実施例では、エキスパートと共
に入力された全ての語またはデータの各々はマウ
ス感知項目であつて、このようなマウス感知のデ
ータが後にマウスで指定されると、エキスパート
が再び現われそのデータを新らしく編集すること
が出来る。 第12図は既に構成された問合せ内のマウス感
知項目の表示を示す。 第13図と第14図に、不明瞭な問合せがされ
た後の使用者への表示の例を示す。第13図は使
用者が不明瞭な問合せを入力した場合を示し、第
14図は第13図に示したような不明瞭な問合せ
を使用者が実行しようとした場合のシステムから
の応答を示す。使用者が不明瞭な問合せを実行し
ようとすると、第14図に示すように可能な代替
パーズを示す表示が使用者に示される。こゝで使
用者はパーズの1個を選択するように要求され
る。こうして選択されたパーズは次に実行され
る。本発明に従つて自然言語インターフエースシ
ステムを実行するために使用できる極めて小規模
の文法は更に次の有利な点を持つている。即ち、
不明瞭にパーズされた入力は簡単に識別され、
こゝで説明したように、その不明瞭な点は解明さ
れ解決される。 こゝでの望ましい実施例はヘルプ機能をも含ん
でいる。ヘルプ機能はカーソルをアクテイブメニ
ユ上の特定項目に移動してマウス上のアクテイベ
ートボタンでなく、ヘルプボタンを押すことで起
動される。カーソルがメニユ上のアクテイブ項目
上にある時にこれが成されると、ヘルプエキスパ
ートがポツプアツプする。第15図のウインドH
にこのヘルプエキスパートが表示され、ウインド
Hの表示内容を第15H図に示す。このエキスパ
ートは使用者にヘルプメツセージを与え、更に、
カーソルがその時点で停止している項目の次に来
ることの可能な全ての項目のリストを示す。カー
ソルがメニユのアクテイブでない部分に存在する
時にヘルプボタンが押されると、アクテイブでな
い項目には項目が続くことはできないので、ヘル
プメツセージのみが使用者に対して示される。 第16図は異つたデータベースへのアクセスの
ために最初に示されるメニユーの例を示す。第1
6図のウインドA及びDには第1A、第1D図と
同じ表示がされるが、ウインドBにはfeaturesの
下にcredits(クレジツト)、department(部門)
等、ウインドCにはnounsの下にcourses(コー
ス)、sections(部)等、ウインドEには
attributesの下に〈specific course
departments〉(特別の部門)、〈specific titles〉
(特別のタイトル)等、ウインドGにはwhose
course department is(コース部門は)、whose
course title is(コースタイトルは)等が表示さ
れる。ハイライトされるウインドFには
operatorsの下にandとorが表示される。第16
図に示す例についても、第1図乃至第15図に示
す場合と同様に処理を進めることができる。 自然言語入力へのメニユによる方法は、従来の
タイプをする方法に比較して多くの有利さを持つ
ている。既に説明したように、入力された全ての
文は理解される。故に、問合せ入力に対しては
100%の成功率が達成される。 実行時間は必要な文法が極めて少ないので大い
に短縮される。一般に多大な時間を要するのは自
然言語処理システムの各アプリケーシヨンに対し
て完全な文法を書く作業である。大規模な文法を
必要としない理由は、従来システムでは、文の全
ての可能なパラフレーズが理解されなければなら
なかつたからである。この種の言語学的範囲に対
して必要な文法は極めて大規模である。メニユベ
ースシステムではただ一個のパラフレーズが必要
となる。使用者はメニユによつてこのパラフレー
ズへ導かれる。 メニユベースの自然言語処理システムが使用者
を望みの入力へとガイドするという事は次の2つ
の理由によつても有利なことである。まず、入力
の書式方法を知らない困乱してしまう使用者が何
の援助もなく自身の入力を作成するという必要が
ない。必要なことはメニユを見ながら入力を認識
することである。何もないところに、自分の入力
を書式化する必要はない。第2に、システムの概
念上の範囲の限界が明らかとなる。使用者はシス
テムが何を知り何を知らないかがすぐに理解でき
る。 実行時間の短縮に加えて、パージングも高速で
行える。これには次の2要素が理由となる。第1
に語単位でのパーズであり、第2は小規模な文法
である。一般にパーズ時間は文法の大きさの関数
であるので、文法が小さくなるほどパーズは高速
で実行できる。 最後の有利さは、使用者がタイプの仕方を知ら
なくてよいことである。 実施したメニユベースの自然言語アプリケーシ
ヨンは自然言語データベース問合せシステムであ
る。その他にも適用できるアプリケーシヨンは多
数存在する。こゝで考えついたアプリケーシヨン
をいくつか以下に列挙する。しかし、自然言語イ
ンターフエースが適当するいずれのコンピユータ
システムも、メニユベースの自然言語入力によつ
て恩恵を得ることは明らかである。 (i) 言語トランスレータ:使用者は自然言語メニ
ユベース入力を用いて文を構築できる。メニユ
ベース自然言語で入力できる文のクラスを大い
に限定することができるので、入力を翻訳(変
換)するのに比較的簡単な技術を使用できる。
音声合成器をシステムに加えることが可能で翻
訳した文を実際に話すこともできる。そのよう
な装置を2個用いて、即ち言語Xを言語Yに変
換する装置と言語Yを言語Xに変換する装置に
よつて、互いの言語を話せない2人の人間が会
話をすることも可能となる。 (ii) 障害者への音声補助:VOCAIDを極めて強
力にしたものを作成できる。話す、書く、タイ
プ等は出来ないが、メニユから(マウスまたは
他の指示装置で)項目を選択できる者は、メニ
ユシステムを利用して文を作ることができる。
文が作成されると、これを音声合成器で話すこ
とも可能となる。VOCAIDに比較すると、提
供されたテンプレートに対応した限定された数
の文だけでなく、広範囲での文が作成できるの
で、より高い能力が期待できる。 故に、本発明は、どのような入力の限定された
集合に対しても、その限定された入力の集合が文
脈自由文法によつて(重大ではない限定のもと
に)書式的に記述され得る限りにおいては、自然
言語入力を制限することのできる方法を提供す
る。本発明は自然言語入力を理解することのでき
るコンピユータシステム分野でのパイオニアであ
り、従つて、極めて広大なアプリケーシヨンに向
いている。このパイオニアとしての発明のアプリ
ケーシヨン範囲は広く、これ迄に考えつかれてい
ないアプリケーシヨンの部分分野を多数含むこと
が確実であるのでこゝで示したアプリケーシヨン
は可能なアプリケーシヨンの全範囲を限定するた
めのものではない。故に、本発明の範囲は多くの
変更および変形も含み、特許請求の範囲に記述さ
れる以外は限定を受けない。
第1図は、使用者に初めに示されるメニユの例
であつてこゝでは野球統計データベースから使用
者が情報をとり出すものを示す図である。第1A
図、第1B図、第1C図、第1D図、第1E図、
第1F図及び第1G図は夫々第1図のウインド
A,B,C,D,E,F及びGに表示される内容
を詳細に示した図である。第2図は第1図に示し
たシステムの操作の以降のステツプであり、こゝ
では異つたウインドメニユがアクテイブを示す図
である。第3図は第1図のシステムでのデータベ
ース問合せの使用者による構築上の更に進んだス
テツプを示す図である。第4図は同一の問合せの
構築での更に進んだステツプでエキスパート項
目、即ち、項目(specific batter name)の使用
者による選択を示す図である。第5図は同一の問
合せでの構築の更に進んだステツプで、こゝでは
使用者によつて選択されたエキスパート項目はポ
ツプアツプエキスパートウインドに呼ばれている
図である。第6図は同一の問合せでの構築の更に
進んだステツプで、これは、エキスパートがその
機能を実行した後のものを示す図である。第7図
は同一の問合せでの構築の更に進んだステツプ
で、数値比較演算子の選択中を示す図である。第
8図は使用者が数値入力をエントリし易くするた
めのポツプアツプ番号エキスパートを示す図であ
る。第9図は同一の問合せでの更に進んだステツ
プを示す図である。第10図はシヨークエリ命令
がどのようにして使用者の問合せを実行可能機械
命令に翻訳するかを示す図である。第11図は使
用者の問合せに対する例としての実際の応答を示
す図である。第12図は既に構築された問合せ内
のマウス感知項目(この場合には数値0.25)の表
示を示す図である。第13図は別の問合せの例
で、使用者が不明瞭な問合せを入力した場合を示
す図である。第14図は第13図に示したような
不明瞭な問合せを実行しようとした場合のシステ
ムからの応答を示す図である。第15図はポツプ
アツプに保持されたエキスパートを示す図であ
る。第15H図は第15図のウインドHに表示さ
れる内容を詳細に示した図である。第16図は異
つたデータベースへのアクセスのために最初に示
されるメニユの例を示す図である。
であつてこゝでは野球統計データベースから使用
者が情報をとり出すものを示す図である。第1A
図、第1B図、第1C図、第1D図、第1E図、
第1F図及び第1G図は夫々第1図のウインド
A,B,C,D,E,F及びGに表示される内容
を詳細に示した図である。第2図は第1図に示し
たシステムの操作の以降のステツプであり、こゝ
では異つたウインドメニユがアクテイブを示す図
である。第3図は第1図のシステムでのデータベ
ース問合せの使用者による構築上の更に進んだス
テツプを示す図である。第4図は同一の問合せの
構築での更に進んだステツプでエキスパート項
目、即ち、項目(specific batter name)の使用
者による選択を示す図である。第5図は同一の問
合せでの構築の更に進んだステツプで、こゝでは
使用者によつて選択されたエキスパート項目はポ
ツプアツプエキスパートウインドに呼ばれている
図である。第6図は同一の問合せでの構築の更に
進んだステツプで、これは、エキスパートがその
機能を実行した後のものを示す図である。第7図
は同一の問合せでの構築の更に進んだステツプ
で、数値比較演算子の選択中を示す図である。第
8図は使用者が数値入力をエントリし易くするた
めのポツプアツプ番号エキスパートを示す図であ
る。第9図は同一の問合せでの更に進んだステツ
プを示す図である。第10図はシヨークエリ命令
がどのようにして使用者の問合せを実行可能機械
命令に翻訳するかを示す図である。第11図は使
用者の問合せに対する例としての実際の応答を示
す図である。第12図は既に構築された問合せ内
のマウス感知項目(この場合には数値0.25)の表
示を示す図である。第13図は別の問合せの例
で、使用者が不明瞭な問合せを入力した場合を示
す図である。第14図は第13図に示したような
不明瞭な問合せを実行しようとした場合のシステ
ムからの応答を示す図である。第15図はポツプ
アツプに保持されたエキスパートを示す図であ
る。第15H図は第15図のウインドHに表示さ
れる内容を詳細に示した図である。第16図は異
つたデータベースへのアクセスのために最初に示
されるメニユの例を示す図である。
Claims (1)
- 【特許請求の範囲】 1 実行可能な機械命令の集合に予め定められた
対応を有する予め定められた自然言語部分集合
で、未熟練使用者から受信される自然言語入力に
従つて、コンピユータ装置に、実行可能な機械命
令を供給する、自然言語を用いてコンピユータに
入力する方法において: 許容される自然言語入力内の次の語を供給でき
る、許容される次の入力の集合を前記使用者に表
示する段階と; 前記使用者が前記表示された許容される入力の
1個を指定すると直ちに、前記使用者によつて入
力されたその時点でのシーケンスで全ての語を繰
り返し、累積的にパーズすること、および、前記
予め定められた自然言語部分集合に従つて、有効
な入力の連続を形成できる可能性のある全ての次
の語の集合を、前記使用者に表示することであつ
て、これによつて前記使用者の選択は、前記使用
者が完成した文を入力するまで、有効な連続文要
素のみの選択を含むように限定される前記パーズ
することと前記表示する段階と; 前記予め定められた前記自然言語の部分集合と
前記実行可能な機械命令の集合との間の対応に従
つて、前記完成した文を前記実行可能な機械命令
に変換する段階と;を含む自然言語を用いてコン
ピユータに入力する方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US46215183A | 1983-01-28 | 1983-01-28 | |
US462151 | 1983-01-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS59176823A JPS59176823A (ja) | 1984-10-06 |
JPH0252292B2 true JPH0252292B2 (ja) | 1990-11-13 |
Family
ID=23835345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59011137A Granted JPS59176823A (ja) | 1983-01-28 | 1984-01-26 | 自然言語を用いてコンピュータに入力する方法 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP0118187B1 (ja) |
JP (1) | JPS59176823A (ja) |
DE (1) | DE3486349T2 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4899276A (en) * | 1984-08-14 | 1990-02-06 | International Business Machines Corporation | Field-directed screen help technique |
JPS61109137A (ja) * | 1984-10-31 | 1986-05-27 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 援助情報表示位置決定方法 |
JPS63156274A (ja) * | 1986-12-20 | 1988-06-29 | Fujitsu Ltd | 意味に基づく略式入力処理装置 |
EP0382871A1 (de) * | 1989-02-17 | 1990-08-22 | TA TRIUMPH-ADLER Aktiengesellschaft | Anordnung und Verfahren zur Bedienungsunterstützung für ein Anwendungssystem |
JP2963463B2 (ja) * | 1989-05-18 | 1999-10-18 | 株式会社リコー | 対話型言語解析装置 |
DE19615693C1 (de) * | 1996-04-19 | 1997-12-11 | Siemens Ag | Vorrichtung und Verfahren zur Aktionsermittlung |
GB9726654D0 (en) * | 1997-12-17 | 1998-02-18 | British Telecomm | Data input and retrieval apparatus |
GB9821969D0 (en) | 1998-10-08 | 1998-12-02 | Canon Kk | Apparatus and method for processing natural language |
GB9904663D0 (en) | 1999-03-01 | 1999-04-21 | Canon Kk | Apparatus and method for generating processor usable data from natural langage input data |
US6311150B1 (en) * | 1999-09-03 | 2001-10-30 | International Business Machines Corporation | Method and system for hierarchical natural language understanding |
AU2001229425A1 (en) * | 2000-01-11 | 2001-07-24 | Verbal Communications Technologies, Llc | Man-machine interface method and apparatus |
US8447775B2 (en) | 2003-06-13 | 2013-05-21 | Microsoft Corporation | Database query user interface to assist in efficient and accurate query construction |
-
1984
- 1984-01-26 JP JP59011137A patent/JPS59176823A/ja active Granted
- 1984-01-27 DE DE3486349T patent/DE3486349T2/de not_active Expired - Lifetime
- 1984-01-27 EP EP84300515A patent/EP0118187B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE3486349T2 (de) | 1995-01-19 |
JPS59176823A (ja) | 1984-10-06 |
EP0118187A1 (en) | 1984-09-12 |
DE3486349D1 (de) | 1994-10-20 |
EP0118187B1 (en) | 1994-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4829423A (en) | Menu-based natural language understanding system | |
Androutsopoulos et al. | Natural language interfaces to databases–an introduction | |
US5386556A (en) | Natural language analyzing apparatus and method | |
JP3009215B2 (ja) | 自然語処理方法および自然語処理システム | |
US5864788A (en) | Translation machine having a function of deriving two or more syntaxes from one original sentence and giving precedence to a selected one of the syntaxes | |
US6446081B1 (en) | Data input and retrieval apparatus | |
JPH0256703B2 (ja) | ||
JPS62163173A (ja) | 機械翻訳方法 | |
JPS6140673A (ja) | 外国語作文用翻訳方法、および翻訳機 | |
JPH0252292B2 (ja) | ||
JPH05120324A (ja) | 言語処理方式 | |
JPH0576067B2 (ja) | ||
US20050165712A1 (en) | Method for operating software object using natural language and program for the same | |
JP2974698B2 (ja) | 機械翻訳装置における単語間関係編集/学習装置 | |
JPS6310265A (ja) | 翻訳装置 | |
Takeda et al. | CRITAC—An experimental system for Japanese text proofreading | |
JPS61221874A (ja) | 自然言語のデ−タベ−ス化方式 | |
JP2866437B2 (ja) | 用例辞書登録方法及び装置 | |
JP2811747B2 (ja) | 言語処理装置 | |
JP3316884B2 (ja) | 言語翻訳装置 | |
Morfeq | Bayan: A text database management system for Arabic engineering documents | |
JP3253311B2 (ja) | 言語処理装置および言語処理方法 | |
JPS63136265A (ja) | 機械翻訳装置 | |
JPH04130577A (ja) | 自然言語処理装置 | |
JPH03191472A (ja) | 文解析装置及びこれを用いた機械翻訳装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |