專利名稱:自然語言智能指導(dǎo)的方法與裝置的制作方法
本發(fā)明是關(guān)于信息終端處理的一種方法和裝置,特別是用自然語言智能指導(dǎo)的一種方法和裝置,這種自然語言適合于不熟悉該信息終端操縱方法的用戶用以操縱終端。換句話說,本發(fā)明是關(guān)于一個(gè)系統(tǒng),這個(gè)系統(tǒng)能使用戶得到包括日文、中文及相似的語言等在內(nèi)的自然語言與信息終端進(jìn)行對(duì)話時(shí)能學(xué)到操縱方法,而且可利用所有聯(lián)到計(jì)算機(jī)的終端。在說明書中“信息終端”這個(gè)術(shù)語是用來表示人和計(jì)算機(jī)之間處理信息的接口。
如圖1所示的一個(gè)常用的信息終端包括一個(gè)諸如鍵盤這類的輸入設(shè)備1,一個(gè)處理來自輸入設(shè)備1的輸入內(nèi)容的處理單元2,以及一個(gè)用于顯示處理內(nèi)容的顯示單元3。
此外,如圖、2所示,信息終端的各種命令在顯示單元3的下面部分顯示出,這些命令4(轉(zhuǎn)移、移動(dòng),…等)可在當(dāng)前狀態(tài)輸入,同時(shí),按鈕5安排在鍵盤輸入設(shè)備1的位置以和命令4相對(duì)應(yīng)。
由于這種安排,當(dāng)信息終端的用戶要執(zhí)行一個(gè)命令(4中的一個(gè)命令),例如“轉(zhuǎn)移”時(shí),只要按下鍵盤輸入設(shè)備1上和“轉(zhuǎn)移”命令4相對(duì)應(yīng)的按鈕5就可執(zhí)行所需要的處理。
此外,當(dāng)用戶不明白命令“轉(zhuǎn)移”的意義而想知道使用它的方法時(shí),可以先按下與“求助”命令6相對(duì)應(yīng)的按鈕7,再按下和命令“轉(zhuǎn)移”相應(yīng)的按鈕5中的一個(gè)那么關(guān)于信息終端手冊(cè)中所述的指南內(nèi)容便會(huì)顯示出來。
現(xiàn)在舉例說明,考慮如圖3A和圖3B所描繪的情況。如圖3A所示,顯示屏幕顯示出一個(gè)城市地圖,而用戶要把圖形8從城市地圖的左下部轉(zhuǎn)移到顧客卡片中的虛線方框標(biāo)明的右上部9的位置上,從而得到如圖3B右上部所示的圖形10。
假如條件屬于“轉(zhuǎn)移”命令,而在已寫入一個(gè)字符序列而沒有一個(gè)部分允許轉(zhuǎn)移時(shí),為了實(shí)現(xiàn)圖3B所示的目標(biāo)狀態(tài),用戶必須采用任何下述方法(1)輸入各種命令,不斷摸索。
(2)仔細(xì)閱讀手冊(cè)以得到解決的辦法。
(3)請(qǐng)教其他有經(jīng)驗(yàn)的人?;蛘?4)向一些制造公司的專家們請(qǐng)教有關(guān)輸入的方法。這是因?yàn)閷?duì)于很少有機(jī)會(huì)使用終端的用戶來說,操縱終端是非常麻煩和不熟識(shí)的。
本發(fā)明的目的在于為用戶提供一種方法和裝置使用戶只要輸入自然語言(例如日文、中文)就可執(zhí)行他所需要的處理,而且容易操縱,也就是提供一個(gè)自然語言智能指導(dǎo)的方法和裝置。
本發(fā)明的特征在于只要求信息終端裝置的用戶輸入要執(zhí)行作業(yè)的內(nèi)容,用通常會(huì)話的自然語言而不是采用所謂命令序列的形式,而終端裝置能自動(dòng)地分析,了解其輸入內(nèi)容并顯示給用戶所要求執(zhí)行該作業(yè)的命令序列。
本發(fā)明的特征在于為了分析諸如鍵盤、語音輸入器件等輸入設(shè)備輸入的自然語言,用戶是認(rèn)得其所要求的信息終端的目標(biāo)狀態(tài)的,而且通過一個(gè)相對(duì)于目標(biāo)狀態(tài)的預(yù)定命令來取得中間目標(biāo)狀態(tài)。這種情況一旦確定,該中間目標(biāo)狀態(tài)是等同于信息終端的當(dāng)前狀態(tài),然后給用戶一個(gè)輸出和顯示的命令序列,這個(gè)命令序列指出目標(biāo)狀態(tài)到中間目標(biāo)狀態(tài)的過渡階段倒序執(zhí)行的命令。
此外,本發(fā)明的另一特征在于信息終端的歷史;這就是說,通過存儲(chǔ)信息終端的狀態(tài)變化和引起狀態(tài)變化的執(zhí)行命令,由于狀態(tài)變化和命令之間的對(duì)應(yīng)關(guān)系,這就使得把信息終端的操縱歷史輸出并顯示出來成為可能。
通過下列本發(fā)明實(shí)施例及附圖的詳細(xì)描述,可見發(fā)明的上述的及其他目的、特色和優(yōu)點(diǎn)將是非常明顯的,這些附圖是圖1是一個(gè)通用計(jì)算機(jī)系統(tǒng)信息終端布局的方框圖。
圖2是一個(gè)顯示屏的正面圖,示出通用信息終端顯示屏上各種命令的一個(gè)例子;
圖3A和圖3B分別是顯示屏幕的正面圖,示出在通用信息終端顯示的例子;
圖4是本發(fā)明一個(gè)實(shí)施例中信息終端一般布局的方框簡(jiǎn)圖。
圖5是圖4的信息終端中實(shí)現(xiàn)自然語言處理過程的一個(gè)流程業(yè);
圖6A、6B和6C是示出在圖5粗分析處理中所用字典例子的幾個(gè)表格;
圖7A和7B是情況結(jié)構(gòu)字典的表格和方框圖,這個(gè)字典是為圖5的句子結(jié)構(gòu)意義分析的目的而制作的;
圖8是通用方法的詞素分析的流程圖。
圖9是本發(fā)明的另一個(gè)實(shí)施例的詞素分析設(shè)備的方框圖;
圖10是解釋圖9控制電路工作的流程圖;
圖11是詳細(xì)說明圖10上限校正當(dāng)前處理的流程圖;
圖12是圖9字典存儲(chǔ)器的一個(gè)例子。
圖13是詞素分析的一個(gè)具體例子;
圖14是常用的單元字區(qū)分處理系統(tǒng)一般布局的一個(gè)方框圖;
圖15是圖14單元字區(qū)分處理系統(tǒng)所用連接矩陣的一個(gè)例子;
圖16是履行本發(fā)明的單元字區(qū)分處理系統(tǒng)一般布局的一個(gè)方框圖;
圖17是圖16單元字區(qū)分處理系統(tǒng)中控制裝置處理內(nèi)容的一個(gè)流程圖;
圖18是圖4推導(dǎo)處理過程的一個(gè)流程圖。
圖19是圖18計(jì)劃產(chǎn)生處理過程的一個(gè)流程圖;
圖20是圖19目標(biāo)產(chǎn)生處理過程的一個(gè)流程圖;
圖21示出一個(gè)存儲(chǔ)器內(nèi)容的例子,指出一個(gè)輸入句子意義結(jié)構(gòu)和一個(gè)目標(biāo)狀態(tài)之間的對(duì)應(yīng)關(guān)系;
圖22A和22B是終端命令規(guī)則庫的格式圖表的例子;
圖23是圖19匹配替代處理過程的一個(gè)流程圖的例子;
圖24是圖19中當(dāng)前狀態(tài)校正處理過程的一個(gè)流程圖;
圖25是說明本發(fā)明信息終端處理的狀態(tài)圖表的一個(gè)具體例子;
圖26A和26B是顯示屏幕的正面圖,示出通用信息終端顯示的例子;
圖27是說明本發(fā)明信息終端處理的狀態(tài)圖表的一個(gè)具體例子;
圖28是終端命令規(guī)則庫的一個(gè)格式表的例子;
圖29的表格是歷史過程存儲(chǔ)器內(nèi)容的一個(gè)例子;
圖30是歷史核對(duì)處理過程的一個(gè)流程圖;以及圖31是存儲(chǔ)內(nèi)容的一個(gè)例子,它指出輸入句子意義結(jié)構(gòu)和目標(biāo)狀態(tài)之間的對(duì)應(yīng)關(guān)系。
下面將參看圖·4來描述本發(fā)明的一個(gè)實(shí)施例。一個(gè)輸入設(shè)備1和一個(gè)顯示單元3和通用信息終端所用的一樣,然而在這個(gè)實(shí)施例中,一個(gè)用戶自然語言的輸入句子或問題句子是輸入到一個(gè)處理設(shè)備100。
這個(gè)處理設(shè)備100通常包括如下諸裝置(a)用于控制一個(gè)輸入/輸出設(shè)備的數(shù)值的一個(gè)輸入/輸出控制設(shè)備11;
(b)自然語言分析裝置110是為分析輸入語言,把它的意義轉(zhuǎn)換成為處理設(shè)備100的內(nèi)部表達(dá)式而用的(例如一種機(jī)器語言);
(c)推導(dǎo)裝置120,它接收分析裝置100的分析結(jié)果來判定用戶給的是什么句子或問題;
(d)響應(yīng)句子予備裝置130,是用推導(dǎo)裝置120的結(jié)果來為用戶產(chǎn)生一個(gè)回答或指令;
(e)規(guī)則庫裝置140,是用于把信息終端的操縱命令進(jìn)行排序,分類或存儲(chǔ),這是推導(dǎo)裝置120完成推導(dǎo)所需要的;
(f)終端狀態(tài)存儲(chǔ)器裝置150,是用于將一個(gè)信息終端20的操作狀態(tài)轉(zhuǎn)變成為處理設(shè)備100的內(nèi)部表達(dá)式,與信息終端20工作狀態(tài)變化的同時(shí),內(nèi)部表達(dá)式所表示的狀態(tài)也同樣改變。
(g)歷史過程存儲(chǔ)器裝置160,它是為著當(dāng)終端狀態(tài)存儲(chǔ)器裝置150內(nèi)容每次變化時(shí)存儲(chǔ)變化前的事前狀態(tài);以及(h)計(jì)劃存儲(chǔ)器裝置170,它為著存儲(chǔ)從推導(dǎo)裝置120輸出的一系列信息終端20的操縱命令。
另外,響應(yīng)句子預(yù)備裝置130通過輸入/輸出控制設(shè)備11和顯示單元3輸出向用戶顯示。
自然語言分析裝置110由一個(gè)微處理機(jī)或一個(gè)電子計(jì)算機(jī)構(gòu)成,并按圖5所描繪的過程執(zhí)行如下的自然語言的分析步驟111…一序列自然語言的輸入字符被分成單個(gè)字符,并當(dāng)完成輸入時(shí)控制轉(zhuǎn)到下一步驟。
步驟112…執(zhí)行一個(gè)詞素分析處理,其中輸入字符序列分成一個(gè)個(gè)字符,又將每個(gè)字用如圖6B所示的字典中的關(guān)鍵字來檢索而分成為詞匯。
步驟113…在執(zhí)行一個(gè)句法和語義分析中,它接受詞素分析的結(jié)果,引用圖7A所示的情況結(jié)構(gòu)字典來分析輸入句子的意義。
步驟114…按照句法和語義分析的結(jié)果將輸入的句子轉(zhuǎn)換為意義結(jié)構(gòu),并用如下的處理來執(zhí)行輸出處理,在完成步驟114的處理之后,處理過程轉(zhuǎn)到步驟111等著再輸入一個(gè)自然語言的字符序列。
上述的處理過程將作更具體的說明。這是一個(gè)具體的例子,輸入字符序列如圖6A所示,即
“ずをみ
づえじてん
し
?!薄瞆U o mi qi u e ni te n ki Shi fa i〕〔想將圖形轉(zhuǎn)移到右上部〕是用假名字符(對(duì)應(yīng)于語言表示)和數(shù)字輸入,在詞素分析步驟112中,一個(gè)以“ず”〔zu〕開頭的詞匯是用圖6B字典的關(guān)鍵字所得到的。
當(dāng)已出現(xiàn)“ず”〔zu〕”(
〔圖形〕)存在于關(guān)鍵字中,則尋找一個(gè)對(duì)應(yīng)于“
〔zu〕”的詞匯并找到了一個(gè)詞匯“
〔zu圖形〕”,同樣情況,“を〔o〕”,“右上〔migiue右上〕”,“じ〔ni〕”,“転記すゐ〔fenkiauru轉(zhuǎn)移〕”,和“
?!瞐i想要〕”都被分離出來。
其次,分離出來的字符“
〔zu圖形〕”和“を〔o〕”由圖8C的連接矩陣來核對(duì)。于是確定了前面一個(gè)詞的詞類是名詞“
〔zu圖形〕”和后面一個(gè)詞類是虛詞“を〔o〕”兩者之間滿足連接關(guān)系,就這樣執(zhí)行了分離出一個(gè)詞匯的詞素分析。
接著用圖6B的字典來尋找一個(gè)謂語“転記すゐ〔fenki-Suvu轉(zhuǎn)移〕”的意義條件,并可看出,按照指針12(圖6B)和13(圖7A)提交給圖7A的情況結(jié)構(gòu)字典。然后在情況結(jié)構(gòu)字典中替代詞素分析的結(jié)果。
在圖7A的情況結(jié)構(gòu)字典中,可從指針13所指的一個(gè)項(xiàng)看到,動(dòng)作的主語要求一個(gè)語法條件,即(一個(gè)名詞+一個(gè)虛詞“カ
〔ga〕”)。然而,由于這個(gè)項(xiàng)中沒有對(duì)應(yīng),在結(jié)構(gòu)字典的默認(rèn)數(shù)值一欄中就選擇了“操作員”。
此外,在圖7A中由于動(dòng)作“転記すゐ〔tenkisuru轉(zhuǎn)移〕”的賓語要求一個(gè)(名詞+虛詞“を〔o〕”)的語法條件,考慮到這個(gè)條件可以找到“
を〔zuO圖形(一個(gè)賓語)〕”與此符合。
此外,對(duì)于一個(gè)指示地點(diǎn)的字,考慮到一個(gè)(名詞+虛詞”じ〔ni〕”)語法條件,既找出“右上〔migiuani到右上〕”來相對(duì)應(yīng),因而得到圖6A輸入句子的分析結(jié)果,如圖7B所示。
其次,要描述一個(gè)在步驟112中執(zhí)行處理的詞素分析設(shè)備的實(shí)施例。具體地說,這個(gè)詞素分析設(shè)備本身是利用一個(gè)從假名到漢字的轉(zhuǎn)換設(shè)備,包括一個(gè)數(shù)據(jù)檢索設(shè)備在內(nèi)的其他自然語言的設(shè)備一個(gè)智能指導(dǎo)系統(tǒng),一個(gè)問題和回答設(shè)備和一個(gè)信息取樣設(shè)備。應(yīng)用這些設(shè)備來實(shí)現(xiàn)區(qū)分一繼續(xù)序列字符為各有意義的單元的詞素分析。
在描述該實(shí)施例之前,要描述△下先有技術(shù),在通常的詞素分析設(shè)備中,包含在輸入字符序列中的全部詞匯是用最長(zhǎng)詞匯的二部檢索的字典選擇來決定的。(參考“計(jì)算機(jī)算法的設(shè)計(jì)與分析”A.V.Ahol和J.E,.Hopcreft及J.D.Ullman,著Shniison Wesley公司發(fā)行)它開始于輸入字符序列的某一指定位置并改變這個(gè)位置。這里,字典是存儲(chǔ)詞匯的存儲(chǔ)器。而每個(gè)詞匯是由具有意義的最小單元所構(gòu)成,而詞匯的排列次序是以所謂字典次序?yàn)楦鶕?jù)的,日本假名表次序和字母表次序都是標(biāo)準(zhǔn)的。
用二分檢索法,可以判定某一字符序列是否作為詞匯包含于字典之中。為此目的,安排在字典中心的詞匯要和輸入的字符序列進(jìn)行比較,即使一次重合也未獲得也要進(jìn)行比較,按照詞匯比較的關(guān)系重復(fù)地把檢索范圍的詞匯量縮小到一半,顯然假如要找的詞匯存在,就可以在這樣重復(fù)處理中找到,假如它不存在,就沒有檢索范圍,根據(jù)這個(gè)方法,對(duì)N個(gè)詞匯來說要得到一個(gè)需要的結(jié)果大約要花log2N次的比較。
在詞素分析設(shè)備中應(yīng)用這種二分檢索法,有一個(gè)困難是不能預(yù)先確定字符序列的長(zhǎng)度。因此,檢索要按圖8的流程圖來實(shí)現(xiàn)。
這就是,在步驟17,二分檢索是通過設(shè)置一個(gè)長(zhǎng)度為k的被檢索字符序列來執(zhí)行,假如所要的詞匯不存在(步驟18),K值就減1(步驟21)而再實(shí)行一個(gè)縮短的字符序列的二分檢索。
然而,按照這個(gè)系統(tǒng),字符序列檢索是用刪除最后一個(gè)字符的方法,到目前使用的這種檢索方法不能完全有效地被利用。換句話說,它是在字典的全部詞匯中再一次進(jìn)行檢索,因而檢索時(shí)間很長(zhǎng)。
此外,假如需要檢索的不只是與最長(zhǎng)字符序列相應(yīng)的詞匯,而是次長(zhǎng)的等等,這就需要花更多的時(shí)間。
在詞素分析中按照最長(zhǎng)符合方法的詞匯檢索,當(dāng)從字符序列某一位置開始有許多詞匯時(shí)選擇最長(zhǎng)的詞匯。然而,在這種情況下,在字符序列的剩余部分可能并沒有一個(gè)詞匯可與所選擇的詞匯連接得上,這種情況,所選擇的詞匯實(shí)際上并不包含在輸入字符序列之中,而必須選擇其他詞匯,在這種形勢(shì)下,具有次長(zhǎng)等等詞匯就成為必要的了。
該實(shí)施例解決了上述通用系統(tǒng)的缺點(diǎn),并實(shí)現(xiàn)一個(gè)詞素分析設(shè)備,其中為了從輸入字符序列中找到一個(gè)與從某一指定位置開始的字符序列相符合的詞匯,所有長(zhǎng)度的詞匯都被有效地檢索,因而把輸入字符序列區(qū)分為詞匯單元的處理過程是高速執(zhí)行的。
更特別的是,在此實(shí)例中在一個(gè)詞匯的地址范圍內(nèi),這個(gè)詞匯是在字典中而它的K-1個(gè)字符與輸入字符序列中從某指定位置開始的K-1個(gè)字符相對(duì)應(yīng),得到一個(gè)詞匯的地址范圍,這個(gè)詞匯與一個(gè)開始于第K字符的字符序列相對(duì)應(yīng),而且輸出一個(gè)包括K個(gè)字符并符合一致的字符。通過連續(xù)增加K數(shù)值這樣的重復(fù)處理能有效地選擇出各種可能長(zhǎng)度的詞匯。
參照?qǐng)D9來描述本發(fā)明的一個(gè)實(shí)施例。
圖9說明一個(gè)詞素分析設(shè)備的安排,其中一個(gè)輸入字符序列被區(qū)分為組詞匯單元并輸出每個(gè)詞匯的字典數(shù)據(jù)。
一個(gè)詞素分析控制電路31控制確定關(guān)于詞匯間連接關(guān)系。并采用一個(gè)按照所謂最長(zhǎng)符合法的處理。最長(zhǎng)符合法是這樣一個(gè)方法,假如有許多詞匯開始于輸入字符序列的某一位置的話,那么就選擇長(zhǎng)度最長(zhǎng)的詞匯。
一個(gè)控制電路32對(duì)從字典中選擇的詞匯進(jìn)行控制,并隨之計(jì)算這個(gè)字典地址的數(shù)值。
下文將對(duì)各部分的處理過程作詳細(xì)的描述。
輸入/輸出控制設(shè)備11把作為輸入字符序列數(shù)據(jù)34的一個(gè)字符序列輸出到一個(gè)輸入字符序列存儲(chǔ)器35,并把一個(gè)指示詞素分析開始的起始控制信號(hào)36輸出到詞素分析控制電路31,一個(gè)輸入設(shè)備1(圖4)由一個(gè)字符輸入設(shè)備所構(gòu)成,諸如英語字符,日本假名字符和漢字的打字機(jī),或者一個(gè)語音和字符識(shí)別設(shè)備及其它類似的。
輸入字符序列存儲(chǔ)器35存儲(chǔ)從輸入/輸出設(shè)備11來的輸入字符序列數(shù)據(jù)并把它作為輸入字符序列數(shù)據(jù)38提供給詞素分析控制電路31和一個(gè)輸入字符分離電路37。
輸入字符分離電路37在輸入字符序列數(shù)據(jù)38的一系列字符中只取出一個(gè)字符,該字符存在于對(duì)應(yīng)起始位置數(shù)據(jù)40和字符位置數(shù)據(jù)42兩者之和的一個(gè)位置,對(duì)一系列字符從頭開始一一計(jì)數(shù)并把那個(gè)取出來的字符作為分離數(shù)據(jù)43輸入字符輸出。
一個(gè)起始位置存儲(chǔ)器39存儲(chǔ)著一個(gè)被一個(gè)詞匯的一個(gè)字符所占據(jù)的位置,這個(gè)詞匯是在輸入字符數(shù)據(jù)38中要進(jìn)行檢索的,這個(gè)位置的數(shù)值由詞素分析控制電路設(shè)置,并作為起始位置數(shù)據(jù)40的輸出。
一個(gè)字符位置存儲(chǔ)器41是一個(gè)存儲(chǔ)計(jì)數(shù)器執(zhí)行挨個(gè)加法或被來自控制電路32的字符位置建立信號(hào)44所復(fù)位清零,并輸出字符位置數(shù)據(jù)42。
一個(gè)字典字符分離電路45從字典數(shù)據(jù)48的一個(gè)詞匯的字符序列中提取出第n個(gè)字符,這個(gè)n是對(duì)應(yīng)于由字符位置數(shù)據(jù)42所表示的字符的數(shù)目,并把這個(gè)提取出來的字符作為字典字符分離數(shù)據(jù)49輸出。
一個(gè)字符比較電路50對(duì)輸入字符分離數(shù)據(jù)43和字典字符分離數(shù)據(jù)49進(jìn)行比較并輸出,例如,“-1”,“0”和“+”三者任何之一就作為字符比較信號(hào)51。字符比較是取決于預(yù)先定義的字符次序的關(guān)系。這就是說,假如輸入字符分離數(shù)據(jù)43的字符次序是在字典字符分分離數(shù)據(jù)49之后的話,那么字符比較信號(hào)51為“-1”,假如次序相同,則信號(hào)51為“0”否則為“+1”。至于次序關(guān)系,一個(gè)英文字符按字母表次序和一個(gè)日文假名的次序都是眾所周知的。而這個(gè)次序關(guān)系是以在字典存儲(chǔ)器46中所用字符序列的同樣關(guān)系為基礎(chǔ)的。
一個(gè)地址門電路52和一個(gè)門電路47由一個(gè)縱控制電路32來的門控制信號(hào)53所啟動(dòng)而處于連接關(guān)系中,假如門控制信號(hào)為“0”,則地址門電路52輸出雙區(qū)分指示數(shù)據(jù)54作為一個(gè)地址55,而門電路47把從字典存儲(chǔ)器46讀出的字典數(shù)據(jù)56作為字典數(shù)據(jù)48輸出,假如門控制信號(hào)53為“1”,上限數(shù)據(jù)57是通過地址門52輸?shù)阶值浯鎯?chǔ)器46,并由門電路47輸出這個(gè)讀出的字典數(shù)據(jù)56作為字典數(shù)據(jù)58。在這個(gè)例子中,通過上限校正處理404和下限校正處理405的處理步驟之后,門控制信號(hào)53變成“1”,否則為“0”(參看圖10和11)。
就組成字典數(shù)據(jù)58的一個(gè)詞匯的一個(gè)字符序列而言,一個(gè)字典雙字符分離電路59輸出第n個(gè)字符和跟在第n個(gè)字符的次一字符,這里n是對(duì)應(yīng)于從字符序列的第一個(gè)字符到位置數(shù)據(jù)42之間的字符數(shù)。這就是說字典雙字符分離電路59輸出這兩個(gè)字符作為字典雙字符分離數(shù)據(jù)60。
一個(gè)判定電路60輸出判定信號(hào)62,當(dāng)字典雙字符分離數(shù)據(jù)60的第一個(gè)字符和輸入字符分離數(shù)據(jù)43不符合時(shí),判定信號(hào)62為“-1”,當(dāng)前者的次一字符缺少時(shí),該信號(hào)為“1”,其它情況信號(hào)則為“0”。
一個(gè)輸出控制電路63被一個(gè)判定信號(hào)62的一個(gè)輸入所啟動(dòng)。判定信號(hào)62實(shí)際上是作為檢索控制信號(hào)64輸出,且只當(dāng)判定信號(hào)為“1”時(shí),輸出控制電路63才把字典數(shù)據(jù)58輸出到一個(gè)檢索結(jié)果存儲(chǔ)器65。
檢索結(jié)果存儲(chǔ)器65存儲(chǔ)挨次從輸出控制電路63輸入的字典數(shù)據(jù)66。其存儲(chǔ)的內(nèi)容是被引用為詞素分析控制電路31的檢索結(jié)果數(shù)據(jù)67。
詞素分析控制電路31被起始控制信號(hào)36或被一個(gè)以后要介紹的檢索結(jié)束信號(hào)68所啟動(dòng)。當(dāng)起始控制信號(hào)36從輸入/輸出控制電路11輸入時(shí),詞素分析電路31輸出一個(gè)信號(hào)“1”到起動(dòng)位置存儲(chǔ)器39,再把指出一個(gè)詞匯檢索開始的控制信號(hào)69輸給控制電路32。當(dāng)檢索結(jié)束信號(hào)68從控制電路32輸入時(shí),電路31就根據(jù)檢索結(jié)果數(shù)據(jù)67并按照最長(zhǎng)符合方法等算法來決定一個(gè)新的詞匯,而且把已決定的數(shù)據(jù)輸出到一個(gè)輸出結(jié)果存儲(chǔ)器70,并把一個(gè)新詞匯的長(zhǎng)度添加到起動(dòng)位置存儲(chǔ)器69的內(nèi)容中去,而且輸出控制信號(hào)69,在此情況下,假如上述詞匯是在輸入字符序列數(shù)據(jù)38的末尾的話,就輸出一個(gè)結(jié)束控制信號(hào)71。
一個(gè)輸出設(shè)備72由結(jié)束控制信號(hào)71的輸入所啟動(dòng),且讀出輸出結(jié)果存儲(chǔ)器70的內(nèi)容并輸出到推導(dǎo)裝置120。
字典存儲(chǔ)器46是存儲(chǔ)詞匯信息的存儲(chǔ)器,并輸出一個(gè)與輸入地址55對(duì)對(duì)應(yīng)的一個(gè)詞匯的字典數(shù)據(jù)56。包含于字典46的詞匯數(shù)目以N表示,且用整數(shù)1到N來表示單獨(dú)詞匯的地址。地址的次序和通常所說的字典次序的次序規(guī)則相一致。
控制電路32由微處理機(jī)來實(shí)現(xiàn),參照?qǐng)D10將對(duì)其處理過程加以描述。
操作開始于過程401,繼之是一個(gè)備用狀態(tài)402,等待詞素分析控制電路31來的控制信號(hào)69的輸入。一旦輸入,在403過程中就將初始數(shù)值數(shù)據(jù)輸出到存儲(chǔ)器。這就是輸出一個(gè)信號(hào)“1”到一個(gè)上限存儲(chǔ)器73輸出一個(gè)信號(hào)“N”到一個(gè)下限存儲(chǔ)器74及輸出一個(gè)信號(hào)“0”到字符位置存儲(chǔ)器41。這里N是字典存儲(chǔ)器46所包含的詞匯總數(shù)目。
存儲(chǔ)器初始化之后,就開始進(jìn)行上限校正過程404和下限校正過程405,在這些處理過程中,由字符位置數(shù)據(jù)42所指示的那個(gè)字符的次一字符用一個(gè)詞匯來核對(duì),該詞匯的地址是在上限數(shù)據(jù)和下限數(shù)據(jù)之間的范圍內(nèi),并得到一個(gè)與輸入字符序列數(shù)據(jù)34相應(yīng)字符相一致的地址范圍。過程404和405將在以后描述。
在過程406中,輸出一個(gè)信號(hào)“1”作為門控制信號(hào)53。為了控制地址門電路52和門電路47,檢索控制信號(hào)64是在備用狀態(tài)407中等待著。
假如檢索控制信號(hào)64是“0”或“+1”,那末就把“1”加(408)到字符位置存儲(chǔ)器41,上限校正過程(404)重新執(zhí)行。假如控制信號(hào)64是“-1”,則輸出檢索結(jié)束信號(hào)68(409),控制信號(hào)69就在備用狀態(tài)402中等待。
下面,參考圖11來描述上限校正過程404。
首先,為是指出二分檢索范圍,在411過程中上端存儲(chǔ)器75和下端存儲(chǔ)76分別被上限數(shù)據(jù)和下限數(shù)據(jù)初始化。
其次,引用上端數(shù)據(jù)和下端數(shù)據(jù)(412),假如其差值是“1”,在過程413中就輸出低端數(shù)據(jù)到上限存儲(chǔ)器73并結(jié)束上限校正過程404。然而,假如上述條件不滿足,檢索就按下述處理來實(shí)現(xiàn)。
在處理過程414中,取得上端數(shù)據(jù)和下端數(shù)據(jù)的平均值并輸出到雙重區(qū)分指示存儲(chǔ)器77。然后輸出一個(gè)信號(hào)“0”作為門控制信號(hào)53(415)并變成為一個(gè)等待狀態(tài)416等待字符比較信號(hào)51的到來。
在輸入字符比較信號(hào)51之后,有一個(gè)數(shù)值由此決定。當(dāng)此數(shù)值為“+1”時(shí),則輸出雙重區(qū)分指示數(shù)據(jù)到下端存儲(chǔ)器76(417),否則輸出到上端存儲(chǔ)器75(418,419)并重新執(zhí)行過程412。
此外,下限校正處理過程405除了如下兩點(diǎn)之外,都是和上限校正處理過程404一樣。
(1)取代處理過程413,而把上端數(shù)據(jù)輸出到下限存儲(chǔ)器74。
(2)在處理過程418中,輸出到低端存儲(chǔ)器76。
其次,這個(gè)實(shí)施例的工作過程將用一個(gè)具體例子來描述?,F(xiàn)在,用圖12的字典存儲(chǔ)器46來考慮要得到對(duì)應(yīng)于輸入字符序列“ャマオヮニガシマウ〔Ya O Ku ni ga Shi ma u〕”由日文假名和漢字混合組成的輸出。
詞素分析控制電路31接收一個(gè)起始控制信號(hào)36的輸入,輸出“1”到起動(dòng)位置存儲(chǔ)器39,并輸出控制信號(hào)69。
當(dāng)檢測(cè)控制信號(hào)輸入時(shí),控制電路32輸出分別為“1”和“36”的初始值到上限存儲(chǔ)器73和下限存儲(chǔ)器74,以及輸出一個(gè)“0”到字符位置存儲(chǔ)器41。
緊接著,處理過程411,412和414按如下描述的那樣執(zhí)行,并且把一個(gè)數(shù)值“18”存于雙重區(qū)分指示存儲(chǔ)器77。其次,輸出一個(gè)信號(hào)“0”作為門控制信號(hào)53。
接收了門控制信號(hào)53的地址門電路52輸入這數(shù)值“18”作為雙重區(qū)分指示數(shù)據(jù)54,并輸出到字典存儲(chǔ)器48作為地址55。門電路47輸出“ガィコク/外國(guó)〔ga i Ko Ku 外國(guó)〕”到字典字符分離電路45,它是從字典存儲(chǔ)器46讀出的字典數(shù)據(jù)56。
隨著字典數(shù)據(jù)的輸入,字典字符分離電路45讀出字符位置存儲(chǔ)器41的內(nèi)容“0”,并分離出一個(gè)字符“ガ〔ga〕”作為第(0+1)個(gè)字符。這個(gè)字典字符分離數(shù)據(jù)49輸入到字符比較電路50,并且和從輸入字符分離電路37輸入的輸入字符分離數(shù)據(jù)43的字符“ャ〔ya〕”進(jìn)行比較。由于在字符次序中字符“ャ〔ya〕”是在字符“ガ〔ga〕”之后,因而字符比較信號(hào)51是“-1”。
由于在416中對(duì)字符比較信號(hào)的數(shù)值進(jìn)行計(jì)算的結(jié)果,在處理過程419中一個(gè)雙重區(qū)分指示數(shù)據(jù)的數(shù)值“18”就輸出到上端存儲(chǔ)器75。
同樣情況,當(dāng)上端是“29”和下端是“30”時(shí),進(jìn)行處理過程413而且輸出數(shù)值“30”到上限存儲(chǔ)器73。
接著在下限校正處理過程405中,一個(gè)數(shù)值“33”輸出到下限存儲(chǔ)器74。因此,從“30”到“33”的四個(gè)詞匯的第一個(gè)字符是“ャ〔ya〕”而這個(gè)字符和輸入字符序列的第一個(gè)字符一致。
其次,字典數(shù)據(jù)“ャャ(虛詞)〔yaya〕”輸入到字典雙字符分離電路59,這個(gè)數(shù)據(jù)有一個(gè)對(duì)應(yīng)于上限數(shù)據(jù)57的數(shù)值“30”的地址。因此就得到“ャロ〔yaロ〕”。當(dāng)這個(gè)結(jié)果輸入到判定電路61時(shí),就輸出一個(gè)信號(hào)“1”作為判定信號(hào)62,而且通過輸出控制電路63把字典數(shù)據(jù)存儲(chǔ)在檢索結(jié)果存儲(chǔ)器65。
在此情況下,得到三個(gè)不同長(zhǎng)度的詞匯“ャ〔ya〕”,“山〔yama山〕”和“山奧〔yamaoku山凹〕”而且輸出這些詞匯作詞素分析控制電路31的檢索結(jié)果數(shù)據(jù)67。在其中選擇這個(gè)最長(zhǎng)的詞匯“山奧〔yamaoku〕”,然后輸出一個(gè)數(shù)值“5”到起始位置存儲(chǔ)器39,并檢索出一個(gè)連接到詞匯“山奧〔yamaoku〕”的詞匯。
最后,一個(gè)由假名和漢字混合組成的句子即“山奧じ鬼ヵ
仕舞
〔yamaoku ni oni ga Shimau一個(gè)魔在山凹跳舞〕”就從輸出設(shè)備72輸出(參見圖13)。
在這個(gè)實(shí)施例中其優(yōu)點(diǎn)為字典檢索是以高速實(shí)現(xiàn),而且各種不同長(zhǎng)度的詞匯都可得到而無遺漏。特別是在處理過程407中,如果檢出的檢索控制信號(hào)64的內(nèi)容為“-1”,則可確定輸入字符序列中沒有一個(gè)字符長(zhǎng)度對(duì)應(yīng)于字符位置存儲(chǔ)器41的數(shù)值的詞匯。由于這個(gè)原因,終止檢索的條件是明確的,因而在檢索中還會(huì)有遺漏。
其次,將要描述一個(gè)實(shí)施例,該實(shí)施例是關(guān)于在圖4自然語言分析裝置110中區(qū)分一個(gè)自然語言字符序列為單元字的一個(gè)方法。本實(shí)施例特別適合于對(duì)字符序列中發(fā)現(xiàn)未定義字的高速處理。
在區(qū)分單元字的通常方法中,自然語言輸入字符序列是按正向分析的,就是從頭到尾,而且字符序列被分為單元字(在日本專利中公開發(fā)表專利號(hào)為50-150340(1975))。
在下文中,參考圖14,將描述一個(gè)區(qū)分單元字的通常方法的例子。圖14示出通常的單元字區(qū)分處理系統(tǒng)的一般布局,其中一個(gè)日文輸入裝置501把一個(gè)外部輸入的日文字符序列轉(zhuǎn)換成為一個(gè)字符碼序列并輸出到一個(gè)單元字區(qū)分裝置504。該單元字區(qū)分裝置504是應(yīng)用來自單元字字典在儲(chǔ)器裝置502和連接矩陣存儲(chǔ)器裝置503的信息,沿著正向分析日文字符序列把它轉(zhuǎn)換成為字符碼字(或字符編碼的日文字符序列),并把它區(qū)分成為單元字。
參照?qǐng)D15和表1來詳細(xì)描述各個(gè)方框。
首先,舉例來說,日文輸入裝置501用的是鍵盤,手寫字符識(shí)別設(shè)備、語音識(shí)別設(shè)備等等。
其次,一個(gè)單元字字典存儲(chǔ)器裝置502存儲(chǔ)一個(gè)單元字字典,這個(gè)字典包含許多關(guān)鍵字和詞類如表1所示。舉例來說,使用的是一個(gè)集成電路(IC)存儲(chǔ)器、磁盤、磁帶等等。
連接矩陣存儲(chǔ)器裝置503存儲(chǔ)一個(gè)連接矩陣(和以前在圖6中所示的一樣),它指出單元字前面詞類和單元字后面詞類之間的連接特性如圖15所示。圖中假如矩陣的一個(gè)元素(I、J)標(biāo)明為1(或0),這就是說第Ⅰ行的詞類和第J列的詞類的連接是恰當(dāng)?shù)?或不恰當(dāng)?shù)?。
舉例來說,由于一個(gè)名詞和一個(gè)情況虛詞的連接是恰當(dāng)?shù)?,那么一個(gè)字“
すぅ〔今天〕”和から〔從〕能夠連接。舉例來說,連接矩陣存儲(chǔ)器部件用的是集成電路Ic存儲(chǔ)器、磁盤、磁帶等等。
最后,單元字區(qū)分裝置54應(yīng)用單元字字典和連接矩陣沿正向來分析字符編碼的日文字符序列并把它區(qū)分成為單元字。當(dāng)分析由于未定義而死鎖,即在日文字符序列之中包含有一個(gè)在單元字字典中未描述過的字,假定一個(gè)字符的未定義字存在于未分析部分的開頭,而且分析從第二個(gè)字符收回,假如未分析部分的分析是成功的,那末可以確定這種假定是恰當(dāng)?shù)牟⒔Y(jié)束這種處理。然而,如果再死鎖,就取消這個(gè)假定而再假定未定義字的字符數(shù)是二并從第三個(gè)字符收回分析。以上類推直至對(duì)未分析部分的分析成功為止。未定義字的字符數(shù)目是一個(gè)一個(gè)增加的。
下面將舉例對(duì)單元字區(qū)分裝置504作詳細(xì)描述,這個(gè)例子是一個(gè)輸入字符序列“
すぅからびすぅ
んをひぅく<〔Ki yo u ka ra bi yo u i n o hi ra ki一個(gè)醫(yī)院今天開業(yè)〕”,并參考表2。
當(dāng)這個(gè)字符編碼的日文字符序列(下文稱之為“字符序列”)輸入時(shí),單元字區(qū)分裝置54通過單元字字典的使用分離出一個(gè)從字符序列第一個(gè)字符開始的單元字。結(jié)果單元字“
ょぅ〔Kyo〕”和“
すぅか〔Kyoka〕”被分離出來。一般說來每次重新分離出一個(gè)單元字,用上述連接特性矩陣來檢查緊接在前面的單元字和分離出來的單元字兩者之間的連接特性,而且只有這樣連接恰當(dāng)?shù)膯卧植疟槐A?,然而從一個(gè)句子的開頭分離一個(gè)單元字時(shí)并不進(jìn)行檢查。為了剩余單元字而建立一個(gè)后進(jìn)先出堆棧,該單元字就存儲(chǔ)在這里。
一般說來,當(dāng)分離許多單元字時(shí),給予更多字符的單元字以優(yōu)先權(quán),隨后放入堆棧。在表2行1概略示出分離單元字“
すぅ〔Kyo〕”和“
すぅか〔KyoKa〕”時(shí)的分析方式。
其次,假定單元字“
すぅか〔KyoKa〕”的分離是正確的,并試圖在在剩余部分“ら
〔ra bi yo u i n o hi ra Ku〕”分離出單元字。然而在字典中沒有一個(gè)從這個(gè)字符序列第一個(gè)字符開始的單元字,這就決定了這個(gè)單元字是被錯(cuò)誤分離出來,而把此單元字從堆棧中刪掉。
其次,假定單元字“
すぅ〔Kyo〕的分離是正確的而分析其后面部分,則取得了單元字“か〔Ka〕”和“から〔Kara〕”?,F(xiàn)在檢查單元字“
すぅ〔Kyo〕”和分離出來的單元字的連接特性。具體地說,就單元字“
すぅ〔Kyo〕”和“か〔Ka〕”的連接而言,由于單元字“
すぅ〔Kyo〕”是一個(gè)名詞而單元字“か〔Ka〕”是一個(gè)結(jié)束虛詞,一個(gè)行為名詞列為結(jié)束虛詞的元素從連接矩陣讀出。就單元字“
すぅ〔Kyo〕”和“から〔Kara〕”而言,是用類似的方法進(jìn)行連接特性的測(cè)試,由于不管哪種情況其連接都是恰當(dāng)?shù)?,于是重新建立堆棧并存?chǔ)這個(gè)單元字。此時(shí)的分析方式如表2行2所示。
分析以同樣的方式繼續(xù)進(jìn)行,且當(dāng)分離單元字達(dá)到句子末尾時(shí)這種分析就成功了。而在每個(gè)堆棧開頭的單元字就代表了分析的結(jié)果。表2行3示出此時(shí)的分析方式。
其次,將詳細(xì)描述在一個(gè)未定義字的情況下的單元字“
〔byoin〕”的通常分析方法。
到達(dá)表2行2狀態(tài)之前的分析方式和前面描述的一樣,現(xiàn)在由于不能從字符序列“
く〔bi yo u i n o ni ra Ku〕”中分離出單元字,就決定了單元字“から〔Kara〕”是被錯(cuò)誤地分離出來,從而從堆棧中刪掉。
其次,假定單元字“か〔Ka〕”的分離是正確的,試圖從“ら
すぅ
んをひらく〔ra bi yo u i n o hi ra Ku〕”中分離出單元字,由于也未能成功,“か〔Ka〕”同樣從堆棧中刪掉。表2行4示出此時(shí)的分析方式。
由于已決定連接到單元字“
すぅ〔Kyo〕”的單元字“か〔Ka〕”和“から〔Kara〕”都是錯(cuò)的,同樣也決定了單“
すぅ〔Kyo〕”也是錯(cuò)的,并從堆棧中刪掉。表2行5示出此時(shí)的情況。
這表明已確定了任一個(gè)從輸入句子中分離出來的單元字都是錯(cuò)的。這樣,對(duì)這個(gè)句子的分析就是不可能的了。
現(xiàn)在,系統(tǒng)假定到這個(gè)時(shí)刻已進(jìn)行正確的分離,分析已經(jīng)充分處理即處于表2行2的情況,并可判斷在這個(gè)時(shí)刻點(diǎn)碰到一個(gè)未定義字,因此可判定有一個(gè)未定義字存在于字符序列“
すぅんをひらく〔bi yo u i n o Ki ra Ku〕”的開頭。
首先,系統(tǒng)假定有一個(gè)單字符的未定義字,并進(jìn)行關(guān)于缺此未定義字的字符序列的通常處理,假如分析成功,就判定了上述假定是正確的從而結(jié)束此處理。然而當(dāng)尚未成功時(shí),所假定的未定義字的字符數(shù)目要加一,并進(jìn)行剩余字符序列的分析,在此方式下,未定義字的字符數(shù)目一直增加到分析成功為止。
首先在這個(gè)例子中假定一個(gè)字符的未定義字“び〔bi〕”,而且對(duì)字符序列“すぅ
んをひらく〔yo u i n o hi ra Ku〕”進(jìn)行區(qū)分單元字的嘗試,并且它是不成功的。
然后假定兩個(gè)字符的未定義字“びす〔bi yo〕”并且對(duì)其剩余的字符序列進(jìn)行區(qū)分單元字的嘗試,結(jié)果同樣失敗。
類似的分析繼續(xù)進(jìn)行到假定五個(gè)字符的未定義字“びすぅ
ん〔bi yo u i n〕”時(shí)分析成功。表2行6示出此時(shí)的分析方式。
如上所述,假定未定義字為一個(gè)字符而分析剩余的字符序列是無用的。同樣從假定未定義字是兩個(gè)字符時(shí)起到假定未定義字是四個(gè)字符時(shí)止的分析也是無用的。
如上所述,當(dāng)有一個(gè)未定義字包含在輸入字符序列中時(shí),區(qū)分單元字的通常方法存在的缺點(diǎn)是進(jìn)行許多無用的分析而且花了很長(zhǎng)的處理時(shí)間。
克服這個(gè)缺點(diǎn)的一個(gè)辦法是考慮用增加存儲(chǔ)器和增加字典的條目數(shù)來減小未定義字出現(xiàn)的概率。
然而,由于下述原因的影響,這個(gè)方法沒有什么好處。
一般說來,要區(qū)分成為單元字的日文字符序列是關(guān)系到特殊領(lǐng)域(例如工程領(lǐng)域的條項(xiàng))。因此有可能在輸入句子中出現(xiàn)的單元字包括少量高頻率出現(xiàn)的單元字和大量低頻率出現(xiàn)的單元字,而在字典中是編譯了高頻出現(xiàn)的單元字。即使字典的單元字是增加了也很難減小未定義字出現(xiàn)的概率。
另外一個(gè)辦法是隨著字符形式的不同來預(yù)測(cè)未定義字的數(shù)目。然而由于輸入日文的情況,例如某些可以用漢字表示的部分常常是用假名表示的。此外,從鍵盤輸入的字符序列并不經(jīng)過假名到漢字的轉(zhuǎn)換,而且從語音輸入設(shè)備輸入的字符序列都表示為同樣形式的字符。因此這個(gè)辦法的使用范圍是狹窄的。
如上所述,就使用區(qū)分單元字的通常方法來說,這些上述缺點(diǎn)是不可避免的。
一個(gè)實(shí)施例引出一個(gè)區(qū)分日文字符序列成為單元字的方法。這個(gè)方法能把一個(gè)日文字符序列高速區(qū)分為單元字。
本實(shí)施例是這樣,在區(qū)分一個(gè)日文字符序列為單元字的方法中,包含未定義字的一個(gè)輸入的日文字符序列是字符編碼了的,而此字符編碼的日文字符序列是按正向分析。引用一個(gè)由日文單元字的關(guān)鍵字字符序列和其預(yù)先準(zhǔn)備的各種詞類組成的單元字字典,引用一個(gè)指出日文詞類間連接特性的連接矩陣,而且字符序列區(qū)分成為單元字的特點(diǎn)又在于有一個(gè)反向單元字字典,這個(gè)反向單元字字典有一個(gè)關(guān)鍵字字符序列,這個(gè)反向單元字字符序列是由前面所述的單元字字典的關(guān)鍵字字符序列反向排序所建立的,它還有一個(gè)反向連接矩陣,該矩陣就是前面所述連接矩陣的轉(zhuǎn)換矩陣,且當(dāng)正方分析不可能時(shí),那末字符編碼的日文字符序列的未分析部分就引用反向單元字字典以及反向連接矩陣來進(jìn)行反向的分析。根據(jù)正向和反向的分析的結(jié)果,抽出未定義字。
下文參照?qǐng)D16來描述本實(shí)施例。圖16示出一個(gè)為實(shí)現(xiàn)本實(shí)施例的單元字區(qū)分處理的一個(gè)布置。日文輸入裝置501轉(zhuǎn)換一個(gè)輸入日文字符序列為字符碼字序列,并輸出到單元字區(qū)分裝置509。這個(gè)單元字區(qū)分裝置509用單元字字典存儲(chǔ)器裝置502和連接存儲(chǔ)器裝置503的信息來分析字符編碼的日文字符序列(今后稱之為字符序列),并將分析結(jié)果存儲(chǔ)到部分結(jié)果存儲(chǔ)器裝置505??刂蒲b置508控制一個(gè)分析方向并按照部分結(jié)果存儲(chǔ)器505分離出一個(gè)未定義字。
現(xiàn)將詳細(xì)描述各方框的處理過程。
首先,日文輸入裝置501,單元字字典存儲(chǔ)器裝置502和連接矩陣存儲(chǔ)器裝置503都和通常系統(tǒng)中所用的一樣。
其次,單元字區(qū)分裝置509執(zhí)行和通常系統(tǒng)同樣的操作直至分析到達(dá)一個(gè)未定義字的部分并死鎖。然而,在分析死鎖時(shí),單元字區(qū)分裝置509把一個(gè)在那時(shí)迄已充分分析而分離出來的單元字存到部分結(jié)果存儲(chǔ)器裝置505而停止操作。舉例來說,單元字區(qū)分裝置509是用一個(gè)電子計(jì)算機(jī)或類似的等等。
其次,部分結(jié)果存儲(chǔ)器505存儲(chǔ)一個(gè)用單元字區(qū)分裝置509進(jìn)行正向分析和用反向區(qū)分裝置507進(jìn)行反向分析而分離出來的單元字。舉例來說,這個(gè)裝置用的是一個(gè)集成電路IC存儲(chǔ)器、磁盤、磁帶或類似的等等。
如表3所示反向單元字字典存儲(chǔ)器裝置506存儲(chǔ)一個(gè)反向單元字字典。前面所述的單元字字典中的每個(gè)關(guān)鍵字的字符次序在反向單元字字典中都反過來,舉例來說,這個(gè)裝置用的是集成電路IC存儲(chǔ)器、磁盤、磁帶或類似的等等。
其次,除了用反向單元字字典代替單元字典之外,反向區(qū)分裝置507執(zhí)行和單元字區(qū)分裝置509同樣的操作。對(duì)于連接矩陣來說,從其中讀出一個(gè)矩陣元素,在這個(gè)反向連接矩陣中前面單元字的虛詞是放在一個(gè)列中而后面單元字的虛詞則是放在一個(gè)行中(反向連接矩陣)。
最后,當(dāng)單元字區(qū)分裝置509的正向分析結(jié)束時(shí),控制裝置508輸出一個(gè)輸入字符序列未分析部分到反向區(qū)分裝置507,且當(dāng)反向分析結(jié)束時(shí),輸出一個(gè)在正向和反向分析的剩余部分作為未定義字。
參照?qǐng)D17,將詳細(xì)描述控制裝置508的操作。
在步驟511單向字區(qū)分裝置509的正向分析是被監(jiān)視的。當(dāng)?shù)竭_(dá)一個(gè)未定義字部分而結(jié)束分析出現(xiàn)死鎖時(shí),就起動(dòng)步驟512以及其后的各步驟。
其次,在步驟512中,一個(gè)在那時(shí)迄已充分分析而分離出來的單元字是從部分結(jié)果存儲(chǔ)器裝置讀出來。
此外,在步驟513中,原始輸入字符序列除去在步驟512讀出的正向分析結(jié)果之后的剩余部分組成了未分析字符序列。
其次,在步驟514中未分析字符序列被反向。而且在步驟514中,為了發(fā)送未分析字符序列(今后稱之為反向輸入字符序列)而起動(dòng)反向區(qū)分裝置507。
其次,在步驟516中,監(jiān)視了反向區(qū)分裝置507的反向分析。當(dāng)?shù)竭_(dá)一個(gè)未定義字部分而結(jié)束分析出現(xiàn)死鎖時(shí),起動(dòng)步驟517以及其后諸步驟。
而在步驟517中,從部分結(jié)果存儲(chǔ)器裝置505讀出一個(gè)在那時(shí)已經(jīng)充分反向分析而分離出來的單元字。
其次,在步驟518中,在反向分析中分離出來的單元字被反向而回到正確的字符序列。
此外,在步驟519中,在正向分析的未分析字符序列中除去在步表2 在300ml高壓釜中Ir/Ru催化的反應(yīng)速率數(shù)據(jù)a
表2續(xù)
a)所有反應(yīng)在28巴總壓和190℃以1500rpm攪拌速度進(jìn)行約2.1%MeI,30%MeOAc約2.0%MeI,15%MeOAcMeI濃度基于近僅值略向下調(diào)節(jié)使得每摩爾Ir可消耗最多的4摩爾MeI以得到[Ir(CO)2I4]-。單元字“を〔o〕”。在此用連接矩陣來檢查“を〔o〕”(情況虛詞)能否跟在“くらひ〔Kurahi〕”(動(dòng)詞)后面。由于連接矩陣是為正向分析的匹配準(zhǔn)備的,于是檢測(cè)“くらひ〔Kurahi〕”(動(dòng)詞)和“を〔o〕”(情況虛詞)的連接的正確性,這是重新安排“を〔o〕”(情況虛詞)和“ひらく〔hiraKu開〕”(動(dòng)詞)的連接正確性而得來的。由于“を〔o〕”是可能跟在“くらひ〔Kurahi〕”后面的,就建立堆棧存儲(chǔ)它。表4行2示出此時(shí)的分析方式。
在此時(shí),分析碰上一個(gè)未定義字“ん
ぅすび〔n i u yo bi〕”類似于正向分析那樣地“を〔o〕”和“くらひ〔Kurahi〕”從堆棧中刪掉,而分析死鎖在表4行3的狀態(tài)。
反向區(qū)分裝置507把單元字“くらひ〔Kurahi〕”和“を〔o〕”存入部分結(jié)果存儲(chǔ)裝置505并結(jié)束該操作。這兩個(gè)單元字在表4行3時(shí)分離出來,那時(shí)分析已充分進(jìn)展了。
當(dāng)反向區(qū)分裝置507停止工作時(shí),控制裝置508從部分結(jié)果存儲(chǔ)器裝置505讀出單元字“くらひ〔Kurahi〕”和“を〔o〕”,并把這兩個(gè)字反向而得到反向單元字“を〔o〕”和“ひら〔hiraKu〕”。進(jìn)而把這兩個(gè)反面單元字“を〔o〕”和“ひらく〔hiraKu〕”從反向分析的未分析字符序列中刪除而得到其剩余部分“びすぅいん〔biyouin〕”成為一個(gè)未定義字。
最后,控制裝置508輸出已分離的單元字和未定義字“
すぅ〔Kiyou〕”,“から〔Kara〕”,“びすぅ
ん〔biyouin〕”(未定義字),“を〔o〕”和“ひらく〔hiraKu〕”。
如上所述,在通常方法中,為了分離出數(shù)目為5(五)的未定義字“びすぅぃん〔biyouin〕”而假定未定義字的數(shù)為1(一),2(二)-5(五),而需要分析五次。換句話說,一般地說假如一個(gè)未定義字的正確長(zhǎng)度(字符數(shù))為n,則需要(n-1)次無用的分析。與本實(shí)施例對(duì)比,本實(shí)施例只需要在反向的一次分析,因此可以大大提高包含未定義字的自然語言單元字區(qū)處理的速度。
如前所述,自然語言分析裝置110的輸出是提供給推導(dǎo)裝置120的,并按圖18所述進(jìn)行處理。
那就是,根據(jù)圖7B輸出中的“其他信息”來判定是否有一個(gè)表示一個(gè)愿望和一個(gè)命令的項(xiàng)目存在于輸出中(步驟121)。
假如有表示愿望和命令的項(xiàng)目,那就判定了這是一個(gè)計(jì)劃產(chǎn)生,而繼之進(jìn)行到執(zhí)行步驟123,假如不存在這些項(xiàng)目,就進(jìn)行執(zhí)行次一步驟122。
在步驟122中,判定在“其他信息”中是否存在有一個(gè)表示過去操縱歷史的一個(gè)問題的項(xiàng)目。結(jié)果是這樣,假如有問題存在就繼之執(zhí)行歷史核對(duì)步驟124,否則繼之進(jìn)行執(zhí)行步驟130,去執(zhí)行一個(gè)響應(yīng)句子準(zhǔn)備的準(zhǔn)備。
如圖19所示,計(jì)劃產(chǎn)生步驟123包含如下諸處理過程。
(a)步驟230產(chǎn)生一個(gè)目標(biāo)狀態(tài)(詳見圖20)。
(b)步驟231進(jìn)行匹配替代(詳見圖23)。
(c)步驟232進(jìn)行狀態(tài)校正,其中是用匹配替代的結(jié)果,從圖22A和22B所示的終端命令規(guī)則庫中得到一個(gè)預(yù)先狀態(tài)來申請(qǐng)一個(gè)產(chǎn)生目標(biāo)狀態(tài)的終端命令(中間或次目標(biāo)狀態(tài)),這是按照?qǐng)D24所描述的過程進(jìn)行的。
(d)步驟233進(jìn)行匹配,在其中判定一個(gè)中間或次目標(biāo)狀態(tài)是否等于表示當(dāng)前狀態(tài)的終端狀態(tài)存儲(chǔ)器150的內(nèi)容,當(dāng)相等時(shí),就起動(dòng)產(chǎn)生響應(yīng)句子的處理裝置130來執(zhí)行。
(e)步驟234進(jìn)行這樣的處理,當(dāng)步驟233判定的結(jié)果指示不相等時(shí),就校正了檢索范圍,因而相同地方是不再檢索的。
圖20是一個(gè)流程圖,它示出產(chǎn)生一個(gè)計(jì)劃產(chǎn)生的目標(biāo)狀態(tài)的一個(gè)處理過程。這是建立在以前參照?qǐng)D18所描述的輸入句子分析結(jié)果的基礎(chǔ)上的,這個(gè)流程圖包括如下幾個(gè)步驟。
(a)步驟2301從輸入句子中分離出謂語(在以前的例子中,“転記すゐ〔tenkisuru轉(zhuǎn)移〕”被分離出來)。
(b)步驟2302,分離謂語是用預(yù)先存儲(chǔ)的輸入句子意義結(jié)構(gòu)和一個(gè)目標(biāo)狀態(tài)來匹配如圖21所示,而在輸入句子意義結(jié)構(gòu)的許多謂語中尋找一個(gè)與步驟2301分離出來的謂語“転記すゐ〔tenkisuruuru轉(zhuǎn)移〕”相等的一個(gè)謂語。
(c)步驟2303,按照輸入句子中各項(xiàng)目之間的對(duì)應(yīng)關(guān)系,一些常量被用來替代一些諸如X和Z這樣在(圖21)對(duì)應(yīng)表中的項(xiàng)目的變量(在例子中,以“
〔Figure〕”代X,和以“右上〔右上〕”代Z)。
(d)步驟2304,從圖21中C處的目標(biāo)狀態(tài)中取出在上一步驟中替代的結(jié)果(在此例中,在圖21目標(biāo)狀態(tài)列中取出一個(gè)狀態(tài)“存在(
〔圖形〕,右上〔右上〕)”)。
圖22A和22B各自示出終端命令規(guī)則庫的例子。一個(gè)終端命令可執(zhí)行的狀態(tài)一般是受限的,而一個(gè)預(yù)先條件定義為命令可執(zhí)行基礎(chǔ)條件。
此外,通過命令的執(zhí)行,一個(gè)從預(yù)先條件中消失的條件是一個(gè)刪除清單,另一方面作為命令執(zhí)行結(jié)果新出現(xiàn)的狀態(tài)是一個(gè)增添公式。
在以前的例句中,指令轉(zhuǎn)移X(即“
〔圖形〕”)到Z(即,“右上〔右上〕”)這個(gè)命令中,有一個(gè)內(nèi)容151“X〔圖形〕存在于Y(在顯示屏幕中的一個(gè)任意位置)和一個(gè)空地區(qū)(φ)存在于Z(右上)”就是執(zhí)行轉(zhuǎn)移的預(yù)先條件。
進(jìn)而,在圖22A的刪去清純152指出轉(zhuǎn)移處理執(zhí)行結(jié)果的一個(gè)內(nèi)容“一個(gè)狀態(tài)′一個(gè)空地區(qū)存在于Z′消失了”。而進(jìn)一步,圖22A的增添公式153指出一個(gè)新的狀態(tài)“X存在于Z”。
這些命令庫用于圖19的步驟231,232等步驟。例如,假定“
〔圖形〕”替代了變量X而“右上〔右上〕”替代了變量Z,那末圖22A的命令名“轉(zhuǎn)移(X,Z)表示“轉(zhuǎn)移圖形〔
〕到右上〔右上〕”。
為了執(zhí)行這樣轉(zhuǎn)移命令,下列條件即,在任一地方(由于任一地方可被選擇,變量Y保持原狀不變),“
〔圖形〕”存在,即“存在(
〔圖形〕,Y)”,另外還有要把這個(gè)圖形轉(zhuǎn)移到的那方地方是空地方,即“存在(φ,右上〔右上〕)”,以上兩個(gè)條件即兩個(gè)預(yù)先條件。
而且,在命令執(zhí)行之后,狀態(tài)“存在(φ,右上〔右上〕)”消失了,而取代它的一個(gè)狀態(tài)“存在(
〔圖形〕,右上〔右上〕)”產(chǎn)生了。為了指出這些替代,就存儲(chǔ)了刪除清單和增添公式。
從上所述,可清楚地看出,為了產(chǎn)生一個(gè)和增添公式相等的狀態(tài),就必須有效地建立預(yù)先條件。此外,我們以后將要描述到,刪除清單是存儲(chǔ)在歷史存儲(chǔ)器160中的,每時(shí)每刻它的狀態(tài)都和信息終端的狀態(tài)一起變化。
圖23示出應(yīng)用上述技術(shù)的匹配替代步驟231的處理過程。如可從圖中看到的,匹配替代步驟包含如下列幾個(gè)處理過程(a)步驟250中,分離出目標(biāo)狀態(tài)(圖21,在C處)的謂語部分“存在(X,Z)”,此目標(biāo)狀態(tài)是從目標(biāo)產(chǎn)生處理步驟(圖20步驟2304)獲得的。此外,在一個(gè)LISP(表處理程序)語言中,這個(gè)處理過程可理解為應(yīng)用“CAR”(只取出表的開頭部分的一個(gè)命令)或“CDR”(取出除了開頭部分的表的其他部分的命令)等等。
(b)步驟2501的處理過程是判定一個(gè)否定符號(hào)是否存在于前面步驟250分離出來的謂語的開頭。假如這個(gè)符號(hào)存在,就執(zhí)行步驟2502,假如這個(gè)否定符號(hào)不存在,就執(zhí)行步驟251。
(c)步驟2502中,當(dāng)否定符號(hào)存在于謂語的開頭時(shí),則從目標(biāo)的謂語部分除去這個(gè)否定符號(hào)之后所形成的那一個(gè)部分就成為一個(gè)新的目標(biāo)狀態(tài)。同時(shí)從這一步驟到步驟234的處理期間,假如有一個(gè)增增添公式的項(xiàng)目出現(xiàn),應(yīng)理解為它要由一個(gè)刪除清單所替代。
此外,可以很容易地了解這個(gè)處理過程,例如,可以通過用一個(gè)在計(jì)劃產(chǎn)生步驟123中的一個(gè)增添公式來替一個(gè)變量,以及在執(zhí)行這個(gè)步驟2502時(shí),通過用刪除清單來替代一個(gè)變量的數(shù)值。
(d)步驟251的處理過程是判定上一步驟250中分離出來的謂語是否等于規(guī)則庫(圖22A和22B)中任一個(gè)增添公式的謂語,假如相等則執(zhí)行步驟252,假如不等于規(guī)則庫中任一個(gè)謂語,則執(zhí)行步驟255。
(e)步驟252,當(dāng)謂語相等,則一個(gè)目標(biāo)參數(shù)就替了在規(guī)則庫中相應(yīng)謂語的一個(gè)變量。
(f)步驟253,判定由于目標(biāo)參數(shù)替換的結(jié)果,在變量之間是否出現(xiàn)邏輯矛盾。假如有矛盾,則執(zhí)行步驟254的處理,假如沒有矛盾,則執(zhí)行步驟256而轉(zhuǎn)到主處理過程中去。
(g)步驟254,作為步驟253判定的結(jié)果,假如已有矛盾產(chǎn)生,此規(guī)則就暫時(shí)從規(guī)則庫中省略掉,而控制轉(zhuǎn)到前面的步驟251。
(h)步驟255是從步驟251分枝出來的,在建立一個(gè)錯(cuò)誤碼字之后轉(zhuǎn)到主處理過程。
圖24是一個(gè)流程圖,示出圖19中狀態(tài)校正處理步驟232的細(xì)節(jié)。
在步驟2321,從圖21的狀態(tài)C中省略去增添公式。這就是說,暫時(shí)產(chǎn)生一個(gè)到達(dá)目標(biāo)狀態(tài)的前一步處理的狀態(tài)。
在步驟2322,增加一個(gè)預(yù)先條件到目標(biāo)狀態(tài),并由此而得到一個(gè)新的中間目標(biāo)狀態(tài)。
接著,在圖19的匹配步驟233,如前所述,中間目標(biāo)狀態(tài)是和終端的當(dāng)前狀態(tài)進(jìn)行比較和匹配的,假如兩個(gè)狀態(tài)不一致,就產(chǎn)生一個(gè)前一步處理的中間目標(biāo)狀態(tài),那時(shí)處理過程就又重新返回到狀態(tài)校正步驟232。
假如在這樣狀態(tài)下產(chǎn)生的中間目標(biāo)狀態(tài)與終端的當(dāng)前狀態(tài)相一致,則通過依次跟隨迄已產(chǎn)生的中間狀態(tài),并通過連續(xù)執(zhí)行增添公式,那么就可以從終端的當(dāng)前狀態(tài)到達(dá)目標(biāo)狀態(tài)。
參照?qǐng)D25,通過一個(gè)具體例子來描述在前面所述的本發(fā)明所布置的操作。
當(dāng)已輸入如圖25所示的輸入句子190即“左下の
を右上しニ転記レ
?!瞙idariShita n zu o migiue ni tenki Shitai想要轉(zhuǎn)移右下圖形到右上〕”時(shí),自然語言分析裝置110將這個(gè)句子區(qū)分成為一些詞匯,并在目標(biāo)產(chǎn)生步驟230(圖19)中推導(dǎo)裝置120產(chǎn)生一個(gè)目標(biāo)狀態(tài)191“存在(
〔圖形〕,右上〔右上〕)”。
這個(gè)目標(biāo)狀態(tài)191和規(guī)則庫140(圖22A)的增添公式的謂語相比較,假如沒有發(fā)現(xiàn)相同的謂語(例如,圖22A的增添公式153“存在(X,Z)”)的話,那么在匹配替代步驟231替代每一個(gè)變量,并測(cè)試在各變量之間有無矛盾。
在本例的情況下,在圖22A的增添公式中,當(dāng)用“
〔圖形〕”替代變量X和用“右上〔右上〕”替代變量Z之后,就得到圖25的公式192。由于替代結(jié)果而得到的增添公式是等于目標(biāo)狀態(tài)191,這是可知的。
如前所述,由于轉(zhuǎn)移命令執(zhí)行后所到達(dá)的狀態(tài)對(duì)應(yīng)于增添公式,一個(gè)預(yù)先條件和一個(gè)表示執(zhí)行這個(gè)命令之前狀態(tài)的刪除清單192A就成為次目標(biāo)狀態(tài),這就是一個(gè)中間目標(biāo)193“存在(
〔圖形〕,右下〔左下〕);存在(φ,右上〔右上〕)”。
這個(gè)處理過程是對(duì)應(yīng)于圖19和圖24狀態(tài)校正步驟232,2321和2322。
其次,通過圖19的匹配步驟233,中間目標(biāo)Ⅰ193和當(dāng)前狀態(tài)196即“存在(
〔圖形〕,左下〔左下〕);存在(文〔句子〕,右上〔右上〕)”進(jìn)行比較。結(jié)果判定了中間目標(biāo)Ⅰ193中標(biāo)用*的狀態(tài)即“存在(
〔圖形〕,左下〔左下〕)”是一致的,而條件是滿足的。
然而,另一狀態(tài)“存在(φ,右上〔右上〕)”并不一致而條件是不滿足的。因此在執(zhí)行了圖19檢索范圍校正步驟234之后,重新執(zhí)行匹配步驟231。
接著,由于以達(dá)到和圖22B所示的刪除命令增添公式謂語的匹配,通過“右上〔右上〕”替代變量V,就可得到刪除命令的一個(gè)狀態(tài)194即“存在(φ,右上〔右上〕)”。
在此情況下,由于在預(yù)先條件和刪除清單194A中有一個(gè)變量W,即“存在(W,右上〔右上〕)”和誰都不一致,它就保持原樣。而就產(chǎn)生了一個(gè)中間目標(biāo)狀態(tài)Ⅱ194,即“存在(
〔圖形〕,左下〔左下〕);存在(W,右上〔右上〕)”。
在中間目標(biāo)Ⅱ和當(dāng)前狀態(tài)196的匹配替代中達(dá)到謂語一致。因此,當(dāng)“文〔句子〕”替代了變量W之后,中間目標(biāo)Ⅱ變成“存在(
〔圖形〕,左下〔左下〕);存在(文〔句子〕,右上〔右上〕)”,這指出中間目標(biāo)Ⅱ和當(dāng)前狀態(tài)一致。這樣就結(jié)束了圖4的推導(dǎo)步驟120。
此外,如果一個(gè)謂語“左下〔左下〕”并不包含在輸入句子190中,那么在預(yù)先條件192A,中間目標(biāo)Ⅰ193和中間目標(biāo)Ⅱ195中的每一個(gè)謂語“左下〔左下〕”都是“Y”。在此情況下,即使“左下〔左下〕”替代了Y也沒有矛盾發(fā)生。
如上所述,推導(dǎo)處理裝置120的處理過程是這樣,首先,了解信息終端的目標(biāo)狀態(tài),然后,從上面那個(gè)目標(biāo)狀態(tài)決定中間目標(biāo)狀態(tài),最后,中間目標(biāo)狀態(tài)和當(dāng)前狀態(tài)等同(反向推導(dǎo))。相反地,推導(dǎo)過程也可能是這樣,從當(dāng)前狀態(tài)正向?qū)ふ夷繕?biāo)狀態(tài)(正向推導(dǎo)),這是描述于“人工智能原理”尼爾斯杰克·尼爾森(Nils J.Nilsson)著,麥克格勞-希爾(MCGraw-Hill)書局發(fā)行于1971。
跟在推導(dǎo)步驟120的結(jié)果之后,在響應(yīng)句子預(yù)備步驟130,中間目標(biāo)是沿著相反方向,而輸出一個(gè)指令“在執(zhí)行刪除(文〔句子〕,右上〔右上〕)之后執(zhí)行轉(zhuǎn)移(
〔圖形〕,右上〔右上〕)”到輸入/輸出控制設(shè)備11。
按照上述處理過程,假如用戶用自然語言輸入一個(gè)操縱要求或處理內(nèi)容,就在顯示單元3上顯示出一系列必需的命令。因此,用戶只要根據(jù)顯示的要求來操縱,用戶就能無誤而非常有效地執(zhí)行一個(gè)目標(biāo)作業(yè)。
其次,將描述一個(gè)關(guān)于識(shí)別否定目標(biāo)狀態(tài)方法的實(shí)施例。在圖18的計(jì)劃產(chǎn)生(步驟123)中,雖然將TRRIPS這樣方法是眾所周知的(參閱上面所指的“人工智能原理”Nils J.Nilsson著,MCGraw-Hill書局發(fā)行于1971),但是對(duì)于引起狀態(tài)消失這種命令,例如在信息終端顯示屏幕上擦去一個(gè)顯示,就難于實(shí)現(xiàn)推導(dǎo)。這個(gè)實(shí)施例改進(jìn)了已知技術(shù)。就是說,在本實(shí)施例中,注意到當(dāng)信息終端執(zhí)行一個(gè)命令時(shí),終端的一個(gè)狀態(tài)消失了,在要達(dá)到這個(gè)消失的狀態(tài),就設(shè)計(jì)了一個(gè)解決辦法,這就是通過跟蹤一個(gè)由于執(zhí)行命令而消失的狀態(tài)清單。
參見圖26A和26B,當(dāng)用戶想要擦去圖26A左下角城市地圖的圖1(80)而得到圖26B的狀態(tài),因而輸入一個(gè)問題命令。例如圖227所示的“左下の
を消去し
?!蚕胍寥プ笙聢D形〕”時(shí),由于日日本語言處理分析的結(jié)果,就得到圖27的目標(biāo)狀態(tài)640。按照意義處理的結(jié)果,這個(gè)目標(biāo)狀態(tài)的意義是,尋找一個(gè)圖不在左下的狀態(tài),就是說,圖在左下這個(gè)狀態(tài)的否定,因此把一個(gè)否定符號(hào)“~”放在謂語的前面。在圖23的處理過程執(zhí)行推導(dǎo),而當(dāng)處理過程進(jìn)入處理步驟2501時(shí),由于出現(xiàn)否定符號(hào),控制就轉(zhuǎn)到步驟2502。參照?qǐng)D28規(guī)則庫中的刪除清單,結(jié)果是執(zhí)行匹配替代并判定它和刪除命令的刪除清單650相一致。由于這個(gè)預(yù)先條件,在圖24步驟2322中就得到一個(gè)新的中間狀態(tài)670,而且由于它和當(dāng)前狀態(tài)680一致,就決定了要執(zhí)行這個(gè)刪除命令。
此外,如圖29所示,圖4中的歷史存儲(chǔ)器存儲(chǔ)著連接應(yīng)用于各個(gè)終端的規(guī)則,并存儲(chǔ)著由于應(yīng)用規(guī)則而已消失的狀態(tài)。同時(shí)有一個(gè)指針198,用來指出一個(gè)某規(guī)則即要被應(yīng)用之前的位置(最新規(guī)則)。
圖30示出歷史匹配步驟的執(zhí)行過程,這個(gè)歷史匹配步驟包含如下諸處理過程(a)步驟300,判定問題句子是否與原因有關(guān),假如與原因有關(guān),下一步就執(zhí)行步驟301,假如與原因無關(guān),就執(zhí)行步驟305。
(b)步驟301,從圖31(在后面描述)取出一個(gè)目標(biāo)狀態(tài)并附加上一個(gè)否定符號(hào)。
(c)步驟302,用一個(gè)數(shù)值替代一個(gè)在步驟301中取得的目標(biāo)狀態(tài)的變量。
(d)步驟303,尋找在應(yīng)用歷史存儲(chǔ)器的規(guī)則之后的一些狀態(tài)來發(fā)現(xiàn)一個(gè)和在步驟302中取得的目標(biāo)狀態(tài)相等的狀態(tài)。這個(gè)尋找按從新到舊的次序進(jìn)行(以指針為參考,則狀態(tài)的次序要低一位)。
(e)步驟304,用步驟303中得到的歷史過程存儲(chǔ)器的應(yīng)用規(guī)則,把原因提供給用戶。
(f)步驟305中進(jìn)行不是原因問題的處理。
圖31示出歷史過程存儲(chǔ)器的內(nèi)容,它示出如圖21那樣的輸入句子意義結(jié)構(gòu)和一個(gè)目標(biāo)狀態(tài)的對(duì)應(yīng)關(guān)系,其中輸入句子對(duì)應(yīng)于“何故右上の文が消ぇ
のか〔nage migiue no bun ga Kie ta no Ka為什么擦去右上句子〕”。
通過這樣安排,例如在圖18步驟122中,當(dāng)用戶提出一個(gè)問題“何故右上の文ヵミ消ぇ
のか〔為什么擦去右上句子〕”時(shí),在句子意義結(jié)構(gòu)分析中,被動(dòng)語態(tài)變成主動(dòng)語態(tài),而取得一個(gè)如圖31所示的輸入句子意義結(jié)構(gòu)。推導(dǎo)裝置120(圖4)執(zhí)行圖18中歷史匹配步驟124(其處理的內(nèi)容,詳見圖30)。
在步驟124中因?yàn)檎J(rèn)識(shí)到問題是關(guān)系到原因,就執(zhí)行步驟301。因此,就不要求一個(gè)目標(biāo)狀態(tài)去實(shí)現(xiàn)刪除,而只要求一個(gè)命令用來刪去目標(biāo)狀態(tài)的否定。這樣,在步驟301就得到一個(gè)目標(biāo)狀態(tài)“否定存在(X,Z)”在步驟301中,從輸入句子的意義可知“X”對(duì)應(yīng)于“文〔句子〕”,和“Z”對(duì)應(yīng)于“右上〔右上〕”,并得到“存在(文〔句子〕,右上〔右上〕”。在步驟303中,在圖29的存儲(chǔ)器中尋找“存在(文〔句子〕,右上〔右上〕”??蓮膱D29得知那是狀態(tài)“1”。在步驟304中,從圖29的歷史存儲(chǔ)器中得到應(yīng)用規(guī)則“刪除”,并可能輸出(回答)一個(gè)回答“
消去し
ゐ
ゐ〔因?yàn)橐呀?jīng)刪除了〕”。
如上所述,可在顯示單元3顯示出對(duì)用戶問題的回答。
按照本發(fā)明,只要通過信息終端輸入一個(gè)要執(zhí)行作業(yè)的自然語言就可自動(dòng)產(chǎn)生一系列完成該作業(yè)的命令。結(jié)果是,即使用戶忘記使用終端的方法或者使用有誤,也可以通過由于操作中的死鎖而使操作不能執(zhí)行來阻止信息終端的工作,而且只要用很小量的程序即可執(zhí)行所要求的作業(yè)。
此外,按照本發(fā)明,一個(gè)操縱目標(biāo)的狀態(tài)變化能在推導(dǎo)處理中得到理解,同時(shí)就一個(gè)消失狀態(tài)而言推導(dǎo)處理是可以形成的。因此,類似人可以適應(yīng)周圍情況而執(zhí)行最佳指導(dǎo),在本發(fā)明中也可依靠操縱目標(biāo)設(shè)備的狀態(tài)來產(chǎn)生最佳回答。
而且,按照本發(fā)明,一個(gè)字典存儲(chǔ)器檢索范圍的地址是存儲(chǔ)在一個(gè)上限存儲(chǔ)器和一個(gè)下限存儲(chǔ)器內(nèi)的,而且當(dāng)參考字符數(shù)目增加時(shí),其范圍逐漸變窄。因此,由于范圍變窄的方法很簡(jiǎn)單,就可高速檢索所存在的所有長(zhǎng)度的詞匯,因此就可以獲得對(duì)區(qū)分輸入字符序列成為詞匯單元的高效率的詞素分析。
在一次檢索期間,可估計(jì)引用字典的次數(shù),對(duì)于一個(gè)60,000個(gè)字的字典來說,通例大約是130次,而在本發(fā)明中則大約是60次此外,對(duì)于字符比較的次數(shù)來說,由于通例比較是在詞匯單元之間進(jìn)行,當(dāng)按字符計(jì)數(shù)時(shí)大約是500次。另一方面,在本發(fā)明中,字符比較用的字一個(gè)字符單元,大約就60次。從上所述,可看出在本發(fā)明中,引用字典的次數(shù)降到1/2,而字符單元比較次數(shù)則大約降到1/8,因而可以達(dá)到高速處理。
此外,在本發(fā)明中,當(dāng)自然語言序列的正向分析到達(dá)未定義部分時(shí),就進(jìn)行一次反向分析,而把剩余部分作為未定義字處理。因此,就有避免無用分析的優(yōu)點(diǎn),而用于區(qū)分自然語言字符序列成為單元字的處理時(shí)間就可大大減小。
權(quán)利要求
1.一個(gè)自然語言智能指導(dǎo)系統(tǒng)具有一個(gè)輸出設(shè)備,一個(gè)響應(yīng)來自該輸入設(shè)備的輸入的處理設(shè)備用于執(zhí)行一個(gè)預(yù)定處理,和一個(gè)顯示單元,用于至少顯示一個(gè)該處理設(shè)備的內(nèi)容和處理結(jié)果,該處理設(shè)備的特征在于一個(gè)輸入/輸出控制設(shè)備,用于控制從該輸入設(shè)備的輸入和輸出到該顯示單元;一個(gè)自然語言分析裝置,用于把由多個(gè)詞匯組成的自然語言區(qū)分成為各個(gè)詞匯,并通過分析輸入句子的意義,把結(jié)果詞匯轉(zhuǎn)換成為該處理設(shè)備能了解的內(nèi)部表達(dá)式;規(guī)則庫裝置具有一個(gè)規(guī)則庫,用于在執(zhí)行各種命令前后預(yù)先存儲(chǔ)信息終端的狀態(tài)。終端狀態(tài)存儲(chǔ)器裝置,是用于存儲(chǔ)該信息終端的工作狀態(tài)。推導(dǎo)裝置從該自然語言分析裝置得到分析結(jié)果;計(jì)劃存儲(chǔ)器裝置用于存儲(chǔ)從該推導(dǎo)裝置輸出的該信息終端的上述的命令序列;該推導(dǎo)裝置的特性在于通過該規(guī)則庫的引用,輸出該信息終端,此信息終端的目標(biāo)狀態(tài),輸入于用該自然語言命令序列中。
2.根據(jù)權(quán)項(xiàng)1所述的系統(tǒng),其特征為當(dāng)所得到的中間目標(biāo)和該信息終端的當(dāng)前狀態(tài)不一致時(shí),就重復(fù)進(jìn)行這個(gè)中間目標(biāo)和變換處理過程,當(dāng)所得到的中間目標(biāo)和該信息終端的當(dāng)前狀態(tài)相一致時(shí),該推導(dǎo)裝置就輸出一個(gè)命令序列來變換各該中間目標(biāo)。
3.根據(jù)權(quán)項(xiàng)1所述系統(tǒng)的特征為,該處理設(shè)備包括歷史過程存儲(chǔ)器設(shè)備,這個(gè)歷史過程存儲(chǔ)器是用于連續(xù)存儲(chǔ)該信息終端變化之前的狀態(tài),通過該命令序列的執(zhí)行,每次改變終端狀態(tài)存儲(chǔ)器裝置的內(nèi)容,該處理設(shè)備還包括了該計(jì)劃存儲(chǔ)器存儲(chǔ)的操縱命令中的指令序列。
4.根據(jù)權(quán)項(xiàng)1中所述系統(tǒng),其特征為該推導(dǎo)裝置包含如下各裝置目標(biāo)產(chǎn)生裝置,用于以輸入句子的意義結(jié)構(gòu)為依據(jù)來產(chǎn)生該信息終端的目標(biāo)狀態(tài)。狀態(tài)校正裝置,用于通過增加或刪除該目標(biāo)狀態(tài)中的一個(gè)增添公式和一個(gè)該規(guī)則庫的預(yù)先條件來產(chǎn)生中間目標(biāo)狀態(tài),以及匹配裝置,用于把該中間目標(biāo)狀態(tài)和存儲(chǔ)在該終端狀態(tài)存儲(chǔ)器裝置中的該信息終端的當(dāng)前狀態(tài)相比較,當(dāng)兩個(gè)狀態(tài)彼此一致時(shí),就輸出增添公式作為命令序列來改變這個(gè)狀態(tài),當(dāng)兩個(gè)狀態(tài)不一致時(shí),就把該中間狀態(tài)視為一個(gè)新的目標(biāo)狀態(tài)而起動(dòng)該狀態(tài)校正裝置。
5.根據(jù)權(quán)項(xiàng)1中所述的系統(tǒng),其特征為該規(guī)則庫裝置包含具有一個(gè)預(yù)先條件的規(guī)則庫,它規(guī)定了該信息終端執(zhí)行命令所要求的條件,一個(gè)刪除清單,它描述該信息終端執(zhí)行命令后消失的信息,以及一個(gè)描述增加的信息的增添公式。該推導(dǎo)裝置,當(dāng)為了刪除一個(gè)狀態(tài)的目的而被查詢關(guān)于刪除該信息終端的一個(gè)狀態(tài)的方法時(shí),從該刪除清單中檢索這個(gè)目的狀態(tài)。
6.根據(jù)權(quán)項(xiàng)1中所述系統(tǒng),其特征為,該自然語言分析裝置包含一個(gè)把輸入字符序列區(qū)分為詞匯中單元的詞素分析設(shè)備,該詞素分析設(shè)備包含有一個(gè)輸入字符序列存儲(chǔ)器用于輸入字符序列,一個(gè)字典裝置用于存儲(chǔ)已存詞匯的關(guān)鍵字及附加信息,一個(gè)起始位置存儲(chǔ)器用于從輸入字符序列中分離出詞匯而存儲(chǔ)一個(gè)操作的起始位置,一個(gè)字符序列比較部分用于把該字典存儲(chǔ)器的內(nèi)容和輸入字符序列中中起始位置之后的字符序列相比較,一個(gè)控制部分用于控制該起始位置存儲(chǔ)器的內(nèi)容,一個(gè)字符位置存儲(chǔ)器用于判定是否與字典進(jìn)行比較,這是建立在從該起始點(diǎn)之后第n個(gè)字符的基礎(chǔ)上的。一個(gè)上限存儲(chǔ)器用于描出第一個(gè)地址,其中字典關(guān)鍵字的第一個(gè)字符到第(n-1)個(gè)字符之間的字符是等同于輸入字符序列中從起始位置到第(n-1)個(gè)字符之間的字符的。一個(gè)下限存儲(chǔ)器表示出用于指出最后地址,和詞匯分離裝置用于給該上限存儲(chǔ)器和該下限存儲(chǔ)器建立一個(gè)字符檢索范圍并分離出詞匯,這個(gè)字符檢索范圍中的字符是和該字符位置存儲(chǔ)器指出的輸入字符相同。
7.根據(jù)權(quán)項(xiàng)要求6,該系統(tǒng)特征為,當(dāng)該上限存儲(chǔ)器的內(nèi)容和該下限存儲(chǔ)器的內(nèi)容彼此相等時(shí),判定這個(gè)詞匯分離已經(jīng)結(jié)束,而校正該起始位置存儲(chǔ)器。
8.根據(jù)權(quán)項(xiàng)要求6,該系統(tǒng)特征為,就上限存儲(chǔ)器所指的詞匯而言,當(dāng)該字符位置存儲(chǔ)器不包含次一個(gè)對(duì)應(yīng)字符時(shí),就輸出該詞匯。
9.根據(jù)權(quán)項(xiàng)要求1,該系統(tǒng)特征為該檢索算法是基于二分檢索方法。
10.根據(jù)權(quán)項(xiàng)要求3,該系統(tǒng)中特征為,該推導(dǎo)裝置包括有如下各裝置目標(biāo)產(chǎn)生裝置,用于以輸入句子的意義結(jié)構(gòu)為依據(jù)來產(chǎn)生該信息終端的目標(biāo)狀態(tài)。狀態(tài)校正裝置,用于通過增加或刪除該目標(biāo)狀態(tài)中的一個(gè)增添公式和一個(gè)該規(guī)則庫的預(yù)先條件來產(chǎn)生中間目標(biāo)狀態(tài),以及匹配裝置,用于把該中間目標(biāo)狀態(tài)和存儲(chǔ)在該終端狀態(tài)存儲(chǔ)器裝置中的該信息終端的當(dāng)前狀態(tài)相比較,當(dāng)兩個(gè)狀態(tài)彼此一致時(shí),就輸出增添公式作為命令序列來改變這個(gè)狀態(tài),當(dāng)兩個(gè)狀態(tài)不一致時(shí),就把該中間狀態(tài)視為一個(gè)新的目標(biāo)狀態(tài)而起動(dòng)該狀態(tài)校正裝置。
11.根據(jù)權(quán)項(xiàng)要求3,該系統(tǒng)的特征為,該規(guī)則庫裝置包含的規(guī)則庫有一個(gè)預(yù)先條件,它規(guī)定了該信息終端的執(zhí)行命令所要求的條件,一個(gè)刪除清單,它插進(jìn)該信息終端執(zhí)行命令后消失的信息,以及一個(gè)描述增加信息的增添公式。該推導(dǎo)裝置,當(dāng)為了刪除一個(gè)狀態(tài)的目的而被查詢關(guān)于刪除該信息終端的一個(gè)狀態(tài)的方法時(shí),從該刪除清單中檢索這個(gè)目的狀態(tài)。
12.用自然語言智能指導(dǎo)系統(tǒng)的一個(gè)智能指導(dǎo)方法,這個(gè)系統(tǒng)有一個(gè)輸入設(shè)備,一個(gè)對(duì)來自該輸入設(shè)備的輸入響應(yīng)用于執(zhí)行一個(gè)預(yù)定處理的處理設(shè)備,和一個(gè)顯示單元,該顯示單元至少顯示一個(gè)該處理設(shè)備的內(nèi)容和處理結(jié)果其特征為該處理設(shè)備至少包含有一個(gè)輸入/輸出控制設(shè)備,它用于控制從該輸入設(shè)備輸入和輸出到該顯示單元,并且有一個(gè)自然語言分析裝置,用于把由許多詞匯組成的自然語言區(qū)分成為各個(gè)詞匯,并通過輸入句子意義的分析,把結(jié)果詞匯轉(zhuǎn)換成為該處理設(shè)備能了解的內(nèi)部表達(dá)式,該方法的特點(diǎn)在于下述各步驟(a)一個(gè)步驟是用于對(duì)由許多詞匯組成而輸入的自然語言進(jìn)行分析;(b)一個(gè)步驟是用于識(shí)別用戶所要求的該信息終端的目標(biāo)狀態(tài);(c)一個(gè)步驟是用于通過預(yù)定命令對(duì)目標(biāo)狀態(tài)的處理,從而得到一個(gè)中間目標(biāo)狀態(tài);(d)一個(gè)步驟是用于確定該中間目標(biāo)狀態(tài)是等同于該信息終端的當(dāng)前狀態(tài);以及(e)一個(gè)步驟是用于把該目標(biāo)狀態(tài)轉(zhuǎn)換成為所述的中間狀態(tài),并反向執(zhí)行這個(gè)命令。
13.根據(jù)權(quán)項(xiàng)12,該方法的進(jìn)一步特征在于,有這樣一個(gè)步驟,在該步驟中,存儲(chǔ)該信息終端的狀態(tài)變化,并存儲(chǔ)一個(gè)實(shí)時(shí)執(zhí)行的命令,因此使得這個(gè)命令和狀態(tài)變化是按彼此相應(yīng)的系系存儲(chǔ)著,同時(shí)在該步驟輸出關(guān)于該信息終端的歷史。
專利摘要
這是一種自然語言智能指導(dǎo)的方法與裝置。在這里,信息終端裝置的用戶只要用自然語言輸入執(zhí)行作業(yè)的內(nèi)容,這種自然語言只用通常的會(huì)話而不是采用所謂命令序列的形式,而且把用戶所要執(zhí)行的作業(yè)的命令顯示出來。這樣,即使用戶并不熟悉操縱該信息終端的方式也能夠用自然語言來和終端進(jìn)行對(duì)話。
文檔編號(hào)G06F3/14GK85101133SQ85101133
公開日1987年4月1日 申請(qǐng)日期1985年4月1日
發(fā)明者片山恭紀(jì), 平岡良成, 谷浦裕, 中西邦夫 申請(qǐng)人:株式會(huì)社日立制作所導(dǎo)出引文BiBTeX, EndNote, RefMan