CN1013006B - 自然语言智能指导的方法与装置 - Google Patents

自然语言智能指导的方法与装置

Info

Publication number
CN1013006B
CN1013006B CN 85101133 CN85101133A CN1013006B CN 1013006 B CN1013006 B CN 1013006B CN 85101133 CN85101133 CN 85101133 CN 85101133 A CN85101133 A CN 85101133A CN 1013006 B CN1013006 B CN 1013006B
Authority
CN
China
Prior art keywords
state
character
input
information terminal
vocabulary
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
Application number
CN 85101133
Other languages
English (en)
Other versions
CN85101133A (zh
Inventor
片山恭纪
平冈良成
谷浦裕
中西邦夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to CN 85101133 priority Critical patent/CN1013006B/zh
Publication of CN85101133A publication Critical patent/CN85101133A/zh
Publication of CN1013006B publication Critical patent/CN1013006B/zh
Expired legal-status Critical Current

Links

Images

Landscapes

  • Machine Translation (AREA)

Abstract

这是一种自然语言智能指导的方法与装置,在这里,信息终端装置的用户只要用自然语言输入执行作业的内容,这种自然语言只用通常的会话而不是采用所谓命令序列的形式,而且把用户所要执行的作业的命令显示出来。这样,即使用户并不熟悉操纵该信息终端的方式他也能够用自然语言来和终端进行对话。

Description

本发明是关于信息终端处理的一种方法和装置,特别是用自然语言智能指导的一种方法和装置,这种自然语言适合于不熟悉该信息终端操纵方法的用户用以操纵终端。换句话说,本发明是关于一个系统,这个系统能使用户得到包括日文、中文及相似的语言等在内的自然语言与信息终端进行对话时能学到操纵方法,而且可利用所有联到计算机的终端,在说明书中“信息终端”这个术语是用来表示人的计算机之间处理信息的接口。
如图1所示的一个常用的信息终端包括一个诸如键盘这类的输入设备1,一个处理来自输入设备1的输入内容的处理单元2,以及一个用于显示处理内容的显示单元3。
此外,如图、2所示,信息终端的各种命令在显示单元3的下面部分显示出,这些命令4(转移、移动,…等)可在当前状态输入,同时,按钮5安排在键盘输入设备1的位置以和命令4相对应。
由于这种安排,当信息终端的用户要执行一个命令(4中的一个命令),例如“转移”时,只要按下键盘输入设备上1和“转移”命令4相对应的按钮5就可执行所需要的处理。
此外,当用户不明白命令“转移”的意义而使知道使用它的方法时,可以先按下与“求助”命令6相对应的按钮7,再按下和命令“转移”相应的按钮5中的一个那么关于信息终端手册中所述的指南内容便会显示出来。
现在举例说明,考虑如图3A和图3B所描绘的情况,如图3A所示,显示屏幕显示出一个城市 地图,而用户要把图形8从城市地图的左下部转移到顾客卡片中的虚线方框标明的右上部9的位置上,从而得到如图3B右上部所示的图形10。
假如条件属于“转移”命令,而在已写入一个字符序列而没有一个部分允许转移时,为了实现图3B所示的目标状态,用户必须采用任何下述方法:
(1)输入各种命令,不断摸索。
(2)仔细阅读手册以得到解决的办法。
(3)请教其他有经验的人,或者
(4)向一些制造公司的专家们请教有关输入的方法。这是因为对于很少有机会使用终端的用户来说,操纵终端是非常麻烦和不熟识的。
本发明的目的在于为用户提供一种方法和装置使用户只要输入自然语言(例如日文、中文)就可执行他所需要的处理,而且容易操纵,也就是提供一个自然语言智能指导的方法和装置。
本发明的特征在于只要求信息终端装置的用户输入要执行作业的内容,用通常会话的自然语言而不是采用所谓命令序列的形式,而终端装置能自动地分析,了解其输入内容并显示给用户所要求执行该作业的命令序列。
本发明的特征在于为了分析诸如键盘、语音输入器件等输入设备输入的自然语言,用户是认得其所要求的信息终端的目标状态的,而且通过一个相对于目标状态的预定命令来取得中间目标状态。这种情况一旦确定,该中间目标状态是等同于信息终端的当前状态,然后给用户一个输出和显示的命令序列,这个命令序列指出目标状态到中间目标状态的过渡阶段倒序执行的命令。
此外,本发明的另一特征在于信息终端的历史;这就是说,通过存储信息终端的状态变化和引起状态变化的执行命令,由于状态变化和命令之间的对应关系,这就使得把信息终端的操纵历史输出并显示出来成为可能。
通过下列本发明实施例及附图的详细描述,可见发明的上述的及其他目的、特色和优点将是非常明显的,这些附图是:
图1是一个通用计算机系统信息终端布局的方框图。
图2是一个显示屏的正面图,示出通用信息终端显示屏上各种命令的一个例子;
图3A和图3B分别是显示屏幕的正面图,示出在通用信息终端显示的例子;
图4是本发明一个实施例中信息终端一般布局的方框简图。
图5是图4的信息终端中实现自然语言处理过程的一个流程业;
图6A、6B和6C是示出在图5粗分析处理中所用字典例子的几个表格;
图7A和7B是情况结构字典的表格和方框图,这个字典是为图5的句子结构意义分析的目的而制作的;
图8是通用方法的词素分析的流程图。
图9是本发明的另一个实施例的词素分析设备的方框图;
图10是解释图9控制电路工作的流程图;
图11详细说明图10上限校正当前处理的流程图;
图12是图9字典存储器的一个例子。
图13是词素分析的一个具体例子;
图14是常用的单元字区分处理系统一般布局的一个方框图;
图15是图14单元字区分处理系统所用连接矩阵的一个例子;
图16是履行本发明的单元字区分处理系统一般布局的一个方框图;
图17是图16单元字区分处理系统中控制装置处理内容的一个流程图;
图18是图4推导处理过程的一个流程图。
图19是图18计划产生处理过程的一个流程图;
图20是图19目标产生处理过程的一个流程图;
图21示出一个存储器内容的例子,指出一个输入句子意义结构和一个目标状态之间的对应关系;
图22A和22B是终端命令规则库的格式图表的例子;
图23是图19匹配替代处理过程的一个流程图的例子;
图24是图19中当前状态校正处理过程的一个流程图;
图25是说明本发明信息终端处理的状态图表的一个具体例子;
图26A和26B是显示屏幕的正面图,示出通用信息终端显示的例子;
图27是说明本发明信息终端处理的状态图表的 一个具体例子;
图28是终端命令规则库的一个格式表的例子;
图29的表格是历史过程存储器内容的一个例子;
图30是历史核对处理过程的一个流程图;以及
图31是存储内容的一个例子,它指出输入句子意义结构和目标状态之间的对应关系。
下面将参看图·4来描述本发明的一个实施例。一个输入设备1和一个显示单元3和通用信息终端所用的一样,然而在这个实施例中,一个用户自然语言的输入句子或问题句子是输入到一个处理设备100。
这个处理设备100通常包括如下诸装置:
(a)用于控制一个输入/输出设备的数值的一个输入/输出控制设备11;
(b)自然语言分析装置110是为分析输入语言,把它的意义转换成为处理设备100的内部表达式而用的(例如一种机器语言);
(c)推导装置120,它接收分析装置100的分析结果来判定用户给的是什么句子或问题;
(d)响应句子预备装置130,是用推导装置120的结果来为用户产生一个回答或指令;
(e)规则库装置140,是用于把信息终端的操纵命令进行排序,分类或存储,这是推导装置120完成推导所需要的;
(f)终端状态存储器装置150,是用于将一个信息终端20的操作状态转变成为处理设备100的内部表达式,与信息终端20工作状态变化的同时,内部表达式所表示的状态也同样改变。
(g)历史过程存储器装置160,它是为着当终端状态存储器装置150内容每次变化时存储变化前的事前状态;以及
(h)计划存储器装置170,它为着存储从推导装置120输出的一系列信息终端20的操纵命令。
另外,响应句子预备装置130通过输入/输出控制设备11和显示单元3输出向用户显示。
自然语言分析装置110由一个微处理机或一个电子计算机构成,并按图5所描绘的过程执行如下的自然语言的分析:
步骤111…一序列自然语言的输入字符被分成单个字符,并当完成输入时控制转到下一步骤。
步骤112…执行一个语素分析处理,其中输入字符序列分成一个个字符,又将每个字用如图6B所示的字典中的关键字来检索而分成为词汇。
步骤113…在执行一个句法和语义分析中,它接受词素分析的结果,引用图7A所示的情况结构字典来分析输入句子的意义。
步骤114…按照句法和语义分析的结果将输入的句子转换为意义结构,并用如下的处理来执行输出处理。在完成步骤114的处理之后,处理过程转到步骤111等着再输入一个自然语言的字符序列。
上述的处理过程将作更具体的说明。这是一个具体的例子,输入字符序列如图6A所示,即“ずをみぎろぇにてんきしたソ”(zw    o    mi    qi    u    e    ni    te    n    ki    Shi    ta    i)
〔想将图形转移到右上部〕
是用假名字符(对应于语言表示)和数字输入,在词素分析步骤112中,一个以“ず”〔Zu〕”〔Zu〕开头的词汇是用图6B字典的关键字所得到的。
当已发现“ず”〔Zu〕【
Figure 85101133_IMG1
〔图形〕】存在于关键字中,则寻找一个对应于“
Figure 85101133_IMG2
〔zu〕”的词汇并找到了一个词汇“
Figure 85101133_IMG3
〔zu:图形〕”,同样情况,“を〔o〕”,“右上〔migiue:右上〕”,“に〔ni〕”,転记する〔fenkisuru:转移〕”。和“た〔ai:想要〕”都被分离出来。
其次,分离出来的字符“图〔zu:图形〕”和“に〔o〕”由图6C的连接矩阵来核对,于是确定了前面一个词的词类是名词“
Figure 85101133_IMG4
〔zu图形)”和后面一个词类是虚词“を〔o〕”两者之间满足连接关系。就这样执行了分离出一个词汇的词素分析。
接着用图6B的字典来寻找一个谓语“记する〔fenki-Suvu:转移〕”的意义条件,并可看出,按照指针12(图6B)和13(图7A)提交给图7A的情况结构字典,然后在情况结构字典中替代词素分析的结果。
在图7A的情况结构字典中,可从指针13所指的一个项看到,动作的主语要求一个语法条件,即【一个名词+一个虚词“が〔ga〕”〕】。然而,由于这个项中没有对应,在结构字典的默认数值一栏中就选择了“操作员”。
此外,在图7A中由于动作“転记する〔tenkisuru:转移〕”的宾语要求一个【名词+虚词“を〔o〕”】的语法条件,考虑到这个条件可以找到“ を〔zu o:图形【一个宾语】〕”与此符合。
此外,对于一个指示地点的字,考虑到一个【名词+虚词“に〔ni〕”】语法条件,既找出“右上〔migiueni:到右上〕”来相对应,因而得到图6A输 入句子的分析结果,如图7B所示。
其次,要描述一个在步骤112中执行处理的词素分析设备的实施例。具体地说,这个词素分析设备本身是利用一个从假名到汉字的转换设备,包括一个数据库检索设备在内的其他自然语言的设备一个智能指导系统,一个问题和回答设备和一个信息取样设备,应用这些设备来实现区分一继续序列字符为各有意义的单元的词素分析。
在描述该实施例之前,要描述一下先有技术。在通常的词素分析设备中,包含在输入字符序列中的全部词汇是用最长词汇的二部检索的字典选择来决定的。(参考“计算机算法的设计与分析”AV.Aho和J.E.Hopcroft及J.D.U11man著,Addison    Wesley公司发行)它开始于输入字符序列的某一指定位置并改变这个位置。这里,字典是存储词汇的存储器,而每个词汇是由具有意义的最小单元所构成,而词汇的排列次序是以所谓字典次序为根据的,日本假名表次序和字母表次序都是标准的。
用二分检索法,可以判定某一字符序列是否作为词汇包含于字典之中,为此目的,安排在字典中心的词汇要和输入的字符序列进行比较,即使一次重合也未获得也要进行比较,按照词汇比较的关系重复地把检索范围的词汇量缩小到一半,显然假如要找的词汇存在,就可以在这样重复处理中找到,假如它不存在,就没有检索范围。根据这个方法,对N个词汇来说要得到一个需要的结果大约要花10g2N次的比较。
在词素分析设备中应用这分二分检索法,有一个困难是不能预先确定字符序列的长度,因此,检索要按图8的流程图来实现。
这就是,在步骤17,二分检索是通过设置一个长度为k的被检索字符序列来执行,假如所要的词汇不存在(步骤18),k值就减1(步骤21)而再实行一个缩短的字符序列的二分检索。
然而,按照这个系统,字符序列检索是用删除最后一个字符的方法,到目前使用的这种检索方法不能完全有效地被利用。换句话说,它是在字典的全部词汇中再一次进行检索,因而检索时间很长。
此外,假如需要检索的不只是与最长字符序列相应的词汇,而是次长的等等,这就需要花更多的时间。
在词素分析中按照最长符合方法的词汇检索,当从字符序列某一位置开始有许多词汇时选择最长的词汇。然而,在这种情况下,在字符序列的剩余部分可能并没有一个词汇可与所选择的词汇连接得上,这种情况,所选择的词汇实际上并不包含在输入字符序列之中,而必须选择其他词汇,在这种形势下,具有次长等等词汇就成为必要的了。
该实施例解决了上述通用系统的缺点,并实现一个词素分析设备,其中为了从输入字符序列中找到一个与从某一指定位置开始的字符序列相符合的词汇,所有长度的词汇都被有效地检索,因而把输入字符序列区分为词汇单元的处理过程是高速执行的。
更特别的是,在此实例中在一个词汇的地址范围内,这个词汇是在字典中而它的K-1个字符与输入字符序列中从某指定位置开始的K-1个字符相对应,得到一个词汇的地址范围,这个词汇与一个开始于第K字符的字符序列相对应,而且输出一个包括K个字符并符合一致的字符,通过连续增加K数值这样的重复处理能有效地选择出各种可能长度的词汇。
参照图9来描述本发明的一个实施例。
图9说明一个词素分析设备的安排,其中一个输入字符序列被区分为组词汇单元并输出每个词汇的字典数据。
一个词素分析控制电路31控制确定关于词汇间连接关系,并采用一个按照所谓最长符合法的处理,最长符合法是这样一个方法,假如有许多词汇开始于输入字符序列的某一位置的话,那么就选择长度最长的词汇。
一个控制电路32对从字典中选择的词汇进行控制,并随之计算这个字典地址的数值。
下文将对各部分的处理过程作详细的描述。
输入/输出控制设备11把作为输入字符序列数据34的一个字符序列输出到一个输入字符序列存储器35,并把一个指示词素分析开始的起始控制信号36输出到词素分析控制电路31,一个输入设备1(图4)由一个字符输入设备所构成,诸如英语字符,日本假名字符和汉字的打字机,或者一个语音和字符识别设备及其它类似的。
输入字符序列存储器35存储从输入/输出设备11来的输入字符序列数据并把它作为输入字符序列数据38提供给词素分析控制电路31和一个输入字符 分离电路37。
输入字符分离电路37在输入字符序列数据38的一系列字符中只取出一个字符,该字符存在于对应起始位置数据40和字符位置数据42两者之和的一个位置。对一系列字符从头开始一一计数并把那个取出来的字符作为分离数据43输入字符输出。
一个起始位置存储器39存储着一个被一个词汇的一个字符所占据的位置,这个词汇是在输入字符数据38中要进行检索的。这个位置的数值由词素分析控制电路设置,并作为起始位置数据40的输出。
一个字符位置存储器41是一个存储计数器执行挨个加法或被来自控制电路32的字符位置建立信号44所复位清零,并输出字符位置数据42。
一个字典字符分离电路45从字典数据48的一个词汇的字符序列中提取出第n个字符,这个n是对应于由字符位置数据42所表示的字符的数目,并把这个提取出来的字符作为字典字符分离数据49输出。
一个字符比较电路50对输入字符分离数据43和字典字符分离数据49进行比较并输出,例如,“-1”,“0”和“+”三者任何之一就作为字符比较信号51,字符比较是取决于预先定义的字符次序的关系。这就是说,假如输入字符分离数据43的字符次序是在字典字符分离数据49之后的话,那么字符比较信号51为“-1”,假如次序相同,则信号51为“0”否则为“+1”。至于次序关系,一个英文字符按字母表次序和一个日文假名的次序都是众所周知的。而这个次序关系是以在字典存储器46中所用字符序列的同样关系为基础的。
一个地址门电路52和一个门电路47由一个操纵控制电路32来的门控制信号53所启动而处于连接关系中。假如门控制信号为“0”,则地址门电路52输出双区分指示数据54作为一个地址55,而门电路47把从字典存储器46读出的字典数据56作为字典数据48输出,假如门控制信号53为“1”,上限数据57是通过地址门52输到字典存储器46,并由门电路47输出这个读出的字典数据56作为字典数据58。在这个例子中,通过上限校正处理404和下限校正处理405的处理步骤之后,门控制信号53变成“1”,否则为“0”(参看图10和11)。
就组成字典数据58的一个词汇的一个字符序列而言,一个字典双字符分离电路59输出第n个字符和跟在第n个字符的次一字符,这里n是对应于从字符序列的第一个字符到位置数据42之间的字符数。这就是说字典双字符分离电路59输出这两个字符作为字典双字符分离数据60。
一个判定电路60输出判定信号62,当字典双字符分离数据60的第一个字符和输入字符分离数据43不符合时,判定信号62为“-1”,当前者的次一字符缺少时,该信号为“1”,其它情况信号则为“0”。
一个输出控制电路63被一个判定信号62的一个输入所启动。判定信号62实际上是作为检索控制信号64输出,且只当判定信号为“1”时,输出控制电路63才把字典数据58输出到一个检索结果存储器65。
检索结果存储器65存储挨次从输出控制电路63输入的字典数据66。其存储的内容是被引用为词素分析控制电路31的检索结果数据67。
词素分析控制电路31被起始控制信号36或被一个以后要介绍的检索结束信号68所启动。当起始控制信号36从输入/输出控制电路11输入时,词素分析电路31输出一个信号“1”到起动位置存储器39,再把指出一个词汇检索开始的控制信号69输给控制电路32。当检索结束信号68从控制电路32输入时,电路31就根据检索结果数据67并按照最长符合方法等算法来决定一个新的词汇,而且把已决定的数据输出到一个输出结果存储器70,并把一个新词汇的长度添加到起动位置存储器69的内容中去,而且输出控制信号69,在此情况下,假如上述词汇是在输入字符序列数据38的末尾的话,就输出一个结束控制信号71。
一个输出设备72由结束控制信号71的输入所启动,且读出输出结果存储器70的内容并输出到推导装置120。
字典存储器46是存储词汇信息的存储器,并输出一个与输入地址55对应的一个词汇的字典数据56。包含于字典46的词汇数目以N表示,且用整数1到N来表示单独词汇的地址。地址的次序和通常所说的字典次序的次序规则相一致。
控制电路32由微处理机来实现,参照图10将对其处理过程加以描述。
操作开始于过程401,继之是一个备用状态402,等待词素分析控制电路31来的控制信号69的输入,一旦输入,在403过程中就将初始数值数据输出到存储器。这就是输出一个信号“1”到一个上限存储器73输出一个信号“N”到一个下限存储器74及输出一个信号“0”到字符位置存储器41。这里N是字典存储 器46所包含的词汇总数目。
存储器初始化之后,就开始进行上限校正过程404和下限校正过程405,在这些处理过程中,由字符位置数据42所指示的那个字符的次一字符用一个词汇来核对,该词汇的地址是在上限数据和下限数据之间的范围内,并得到一个与输入字符序列数据34相应字符相一致的地址范围。过程404和405将在以后描述。
在过程406中,输出一个信号“1”作为门控制信号53。为了控制地址门电路52和门电路47,检索控制信号64是在备用状态407中等待着。
假如检索控制信号64是“0”或“+1”,那末就把“1”加(408)到字符位置存储器41,上限校正过程(404)重新执行。假如控制信号64是“-1”,则输出检索结束信号68(409),控制信号69就在备用状态402中等待。
下面,参考图11来描述上限校正过程404。
首先,为是指出二分检索范围,在411过程中上端存储器75和下端存储76分别被上限数据和下限数据初始化。
其次,引用上端数据和下端数据(412),假如其差值是“1”,在过程413中就输出低端数据到上限存储器73并结束上限校正过程404,然而,假如上述条件不满足,检索就按下述处理来实现。
在处理过程414中,取得上端数据和下端数据的平均值并输出到双重区分指示存储器77,然后输出一个信号“0”作为门控制信号53(415)并变成为一个等待状态416等待字符比较信号51的到来。
在输入字符比较信号51之后,有一个数值由此决定。当此数据值为“+1”时,则输出双重区分指示数据到下端存储器76(417),否则输出到上端存储器75(418,419)并重新执行过程412。
此外,下限校正处理过程405除了如下两点之外,都是和上限校正处理过程404一样。
(1)取代处理过程413,而把上端数据输出到下限存储器74。
(2)在处理过程418中,输出到低端存储器76。
其次,这个实施例的工作过程将用一个具体例子来描述。现在,用图12的字典存储器46来考虑要得到对应于输入字符序列“ャマオクニガシマウ〔ya    o    Ku    ni    ga    Shi    ma    u〕”由日文假名和汉字混合组成的输出。
词素分析控制电路31接收一个起始控制信号36的输入,输出“1”到起动位置存储器39,并输出控制信号69。
当检测控制信号输入时,控制电路32输出分别为“1”和“36”的初始值到上限存储器73和下限存储器74,以及输出一个“0”到字符位置存储器41。
紧接着,处理过程411,412和414按如下描述的那样执行,并且把一个数值“18”存于双重区分指示存储器77,其次,输出一个信号“0”作为门控制信号53。
接收了门控制信号53的地址门电路52输入这数值“18”作为双重区分指示数据54。并输出到字典存储器48作为地址55。门电路47输出“ガィコク外国〔ga    i    Ko    Ku外国〕”到字典字符分离电路45,它是从字典存储器46读出的字典数据56。
随着字典数据的输入,字典字符分离电路45读出字符位置存储器41的内容“0”,并分离出一个字符“ガ〔ga〕”作为第(0+1)个字符。这个字典字符分离数据49输入到字符比较电路50,并且和从输入字符分离电路37输入的输入字符分离数据43的字符“ャ〔ya〕”进行比较。由于在字符次序中字符“ャ〔ya〕”是在字符“ガ〔ga〕”之后,因而字符比较信号51是“-1”。
由于在416中对字符比较信号的数值进行计算的结果,在处理过程419中一个双重区分指示数据的数值“18”就输出到上端存储器75。
同样情况,当上端是“29”和下端是“30”时,进行处理过程413而且输出数值“30”到上限存储器73。
接着在下限校正处理过程405中,一个数值“33”输出到下限存储器74。因此,从“30”到“33”的四个词汇的第一个字符是“ャ〔ya〕”而这个字符和输入字符序列的第一个字符一致。
其次,字典数据“ャャ(虚词)〔yaya〕”输入到字典双字符分离电路59,这个数据有一个对应于上限数据57的数值“30”的地址。因此就得到“ャロ〔yaロ〕”。当这个结果输入到判定电路61时,就输出一个信号“1”作为判定信号62,而且通过输出控制电路63把字典数据存储在检索结果存储器65。
在此情况下,得到三个不同长度的词汇“ャ〔ya〕”,“山〔yama:山〕”和“山奥〔yamaoku:山凹〕”而且输出这些词汇作词素分析控制电路31的检索结果数据67。在其中选择这个最长的词汇“山奥〔yamaoku〕”,然后输出一个数值“5”到起始位置存储器39,并检索出一个连接到词汇“山奥〔yamaoku〕”的词汇。
最后,一个由假名和汉字混合组成的句子即“山奥に鬼ヵ 仕舞
Figure 85101133_IMG7
〔yamaoku ni oni ga Shimau:一个魔在山凹跳舞〕”就从输出设备72输出(参见图13)。
在这个实施例中其优点为字典检索是以高速实现,而且各种不同长度的词汇都可得到而无遗漏。特别是在处理过程407中,如果检出的检索控制信号64的内容为“-1”,则可确定输入字符序列中没有一个字符长度对应于字符位置存储器41的数值的词汇。由于这个原因,终止检索的条件是明确的,因而在检索中还会有遗漏。
其次,将要描述一个实施例。该实施例是关于在图4自然语言分析装置110中区分一个自然语言字符序列为单元字的一个方法。本实施例特别适合于对字符序列中发现未定义字的高速处理。
在区分单元字的通常方法中,自然语言输入字符序列是按正向分析的,就是从头到尾,而且字符序列被分为单元字(在日本专利中公开发表专利号为:50-150340(1975))。
在下文中,参考图14,将描述一个区分单元字的通常方法的例子。图14示出通常的单元字区分处理系统的一般布局,其中一个日文输入装置501把一个外部输入的日文字符序列转换成为一个字符码序列并输出到一个单元字区分装置504。该单元字区分装置504是应用来自单元字字典存储器装置502和连接矩阵存储器装置503的信息,沿着正向分析日文字符序列把它转换成为字符码字(或字符编码的日文字符序列),并把它区分成为单元字。
参照图15和表1来详细描述各个方框。
首先,举例来说,日文输入装置501用的是键盘,手写字符识别设备、语音识别设备等等。
其次,一个单元字字典存储器装置502存储一个单元字字典,这个字典包含许多关键字和词类如表1所示。举例来说,使用的是一个集成电路(IC)存储器、磁盘、磁带等等。
连接矩阵存储器装置503存储一个连接矩阵(和以前在图6中所示的一样),它指出单元字前面词类和单元字后面词类之间的连接特性如图15所示。图中假如矩阵的一个元素(I、J)标明为1(或0),这就是说第Ⅰ行的词类和第J列的词类的连接是恰当的(或不恰当的)。举例来说,由于一个名词和一个情况虚词的连接是恰当的,那么一个字“きょぅ〔今天〕”和から〔从〕能够连接。举例来说,连接矩阵存储器部件用的是集成电路Ic存储器、磁盘、磁带等等。
最后,单元字区分装置54应用单元字字典和连接矩阵沿正向来分析字符编码的日文字符序列并把它区分成为单元字。当分析由于未定义而死锁,即在日文字符序列之中包含有一个在单元字字典中未描述过的字,假定一个字符的未定义字存在于未分析部分的开头,而且分析从第二个字符收回,假如未分析部分的分析是成功的,那末可以确定这种假定是恰当的并结束这种处理。然而,如果再死锁,就取消这个假定而再假定未定义字的字符数是二并从第三个字符收回分析。以上类推直至对未分析部分的分析成功为止。未定义字的字符数目是一个一个增加的。
下面将举例对单元字区分装置504作详细描述,这个例子是一个输入字符序列“きよぅからびよぅひんをひぅく<〔Ki    yo    u    ka    ra    bi    yo    u    i    n    o    hi    ra    ku:一个医院今天开业〕”,并参考表2。
当这个字符编码的日文字符序列(下文称之为“字符序列”)输入时,单元字区分装置54通过单元字字典的使用分离出一个从字符序列第一个字符开始的单元字。结果单元字“きょぅ〔Kyo〕”和“きよぅか〔Kyoka〕”被分离出来。一般说来每次重新分离出一个单元字,用上述连接特性矩阵来检查紧接在前面的单元字和分离出来的单元字两者之间的连接特性,而且只有这样连接恰当的单元字才被保留,然而从一个句子的开头分离一个单元字时并不进行检查,为了剩余单元字而建立一个后进先出堆栈,该单元字就存储在这里。
一般说来,当分离许多单元字时,给予更多字符的单元字以优先权,随后放入堆栈。在表2行1概略示出分离单元字“きよぅ〔Kyo〕”和“きよぅか〔KyoKa〕”时的分析方式。
其次,假定单元字“きよぅか〔KyoKa〕”的分离是正确的,并试图在剩余部分“らぴよぅひんむひらく〔ra    bi    yo    u    i    n    o    hi    ra    ku〕”分离出单元字,然而在字典中没有一个从这个字符序列第一个字符开始的单元字;这就决定了这个单元字是被错误分离出来,而把此单元字从堆栈中删掉。
其次,假定单元字“きよら〔Kyo〕的分离是正确的而分析其后面部分,则取得了单元字“か〔ka〕”和“かぅ〔kara〕”。现在检查单元字“きよぅ〔Kyo〕” 和分离出来的单元字的连接特性。具体地说,就单元字“きよぅ〔kyo〕和“か〔ka〕”的连接而言,由于单元字“きよぅ〔Kyo〕”是一个名词而单元字“か〔ka〕”是一个结束虚词,一个行为名词列为结束虚词的元素从连接矩阵读出,就单元字“きよぅ〔ky-o〕”和“から〔kara〕”而言,是用类似的方法进行连接特性的测试,由于不管哪种情况其连接都是恰当的,于是重新建立堆栈并存储这个单元字,此时的分析方式如表2行2所示。
分析以同样的方式继续进行,且当分离单元字达到句子末尾时这种分析就成功了,而在每个堆栈开头的单元字就代表了分析的结果,表2行3示出此时的分析方式。
其次,将详细描述在一个未定义字的情况下的单元字“ぴようひん〔byoin〕”的通常分析方法。
到达表2行2状态之前的分析方式和前面描述的一样,现在由于不能从字符序列“ぴよぅひんむらく〔bi    yo    u    i    n    o    ni    ra    ku〕”中分离出单元字,就决定了单元字“から〔kara〕”是被错误地分离出来,从而从堆栈中删掉。
其次,假定单元字“か〔ka〕”的分离是正确的,试图从“らぴよぅ んをひらく〔ra bi yo u i n o hi ra ku〕”中分离出单元字,由于也未能成功,“か〔ka〕”同样从堆栈中删掉。表2行4示出此时的分析方式。
由于已决定连接到单元字“きよぅ〔Kyo〕”的单元字“か〔ka〕”和“から〔kara〕”都是错的,同样也决定了单“きよぅ〔Kyo〕”也是错的,并从堆栈中删掉。表2行5示出此时的情况。
这表明已确定了任一个从输入句子中分离出来的单元字都是错的。这样,对这个句子的分析就是不可能的了。
现在,系统假定到这个时刻已进行正确的分离,分析已经充分处理即处于表2行2的情况,并可判断在这个时刻点碰到一个未定义字,因此可判定有一个未定义字存在于字符序列“ぴよぅんをひらく〔bi    yo    u    i    n    o    ki    ra    ku〕”的开头。
首先,系统假定有一个单字符的未定义字,并进行关于缺此未定义字的字符序列的通常处理,假如分析成功,就判定了上述假定是正确的从而结束此处理。然而当尚未成功时,所假定的未定义字的字符数目要加一,并进行剩余字符序列的分析,在此方式下,未定义字的字符数目一直增加到分析成功为止。
首先在这个例子中假定一个字符的未定义字“ぴ〔bi〕”,而且对字符序列“よぅひんをひらく〔yo    u    i    n    o    hi    ra    ku〕”进行区分单元字的尝试,并且它是不成功的。
然后假定两个字符的未定义字“ぴよ〔bi    yo〕”并且对其剩余的字符序列进行区分单元字的尝试,结果同样失败。
类似的分析继续进行到假定五个字符的未定义字“ぴよういん〔bi    yo    u    i    n〕”时分析成功,表2行6示出此时的分析方式。
如上所述,假定未定义字为一个字符而分析剩余的字符序列是无用的。同样从假定未定义字是两个字符时起到假定未定义字是四个字符时止的分析也是无用的。
如上所述,当有一个未定义字包含在输入字符序列中时,区分单元字的通常方法存在的缺点是进行许多无用的分析而且花了很长的处理时间。
克服这个缺点的一个办法是考虑用增加存储器和增加字典的条目数来减小未定义字出现的概率。
然而,由于下述原因的影响,这个方法没有什么好处。
一般说来,要区分成为单元字的日文字符序列是关系到特殊领域(例如工程领域的条项)。因此有可能在输入句子中出现的单元字包括少量高频率出现的单元字和大量低频率出现的单元字,而在字典中是编译了高频出现的单元字。即使字典的单元字是增加了也很难减小未定义字出现的概率。
另外一个办法是随着字符形式的不同来预测未定义字的数目。然而由于输入日文的情况,例如某些可以用汉字表示的部分常常是用假名表示的。此外,从键盘输入的字符序列并不经过假名到汉字的转换,而且从语音输入设备输入的字符序列都表示为同样形式的字符。因此这个办法的使用范围是狭窄的。
如上所述,就使用区分单元字的通常方法来说,这些上述缺点是不可避免的。
一个实施例引出一个区分日文字符序列成为单元字的方法。这个方法能把一个日文字符序列高速区分为单元字。
本实施例是这样,在区分一个日文字符序列为 单元字的方法中,包含未定义字的一个输入的日文字符序列是字符编码了的,而此字符编码的日文字符序列是按正向分析,引用一个由日文单元字的关键字字符序列和其预先准备的各种词类组成的单元字字典,引用一个指出日文词类间连接特性的连接矩阵,而且字符序列区分成为单元字的特点又在于有一个反向单元字字典,这个反向单元字字典有一个关键字字符序列,这个反向单元字字符序列是由前面所述的单元字字典的关键字字符序列反向排序所建立的,它还有一个反向连接矩阵,该矩阵就是前面所述连接矩阵的转换矩阵,且当正方分析不可能时,那末字符编码的日文字符序列的未分析部分就引用反向单元字字典以及反向连接矩阵来进行反向的分析。根据正向和反向的分析的结果,抽出未定义字。
下文参照图16来描述本实施例。图16示出一个为实现本实施例的单元字区分处理的一个布置。日文输入装置501转换一个输入日文字符序列为字符码字序列,并输出到单元字区分装置509。这个单元字区分装置509用单元字字典存储器装置502和连接存储器装置503的信息来分析字符编码的日文字符序列(今后称之为字符序列),并将分析结果存储到部分结果存储器装置505。控制装置508控制一个分析方向并按照部分结果存储器505分离出一个未定义字。
现将详细描述各方框的处理过程。
首先,日文输入装置501,单元字字典存储器装置502和连接矩阵存储器装置503都和通常系统中所用的一样。
其次,单元字区分装置509执行和通常系统同样的操作直至分析到达一个未定义字的部分并死锁。然而,在分析死锁时,单元字区分装置509把一个在那时迄已充分分析而分离出来的单元字存到部分结果存储器装置505而停止操作。举例来说,单元字区分装置509是用一个电子计算机或类似的等等。
其次,部分结果存储器505存储一个用单元字区分装置509进行正向分析和用反向区分装置507进行反向分析而分离出来的单元字。举例来说,这个装置用的是一个集成电路IC存储器、磁盘、磁带或类似的等等。
如表3所示反向单元字字典存储器装置506存储一个反向单元字字典。前面所述的单元字字典中的每个关键字的字符次序在反向单元字字典中都反过来,举例来说,这个装置用的是集成电路IC存储器、磁盘、磁带或类似的等等。
其次,除了用反向单元字字典代替单元字典之外,反向区分装置507执行和单元字区分装置509同样的操作。对于连接矩阵来说,从其中读出一个矩阵元素,在这个反向连接矩阵中前面单元字的虚词是放在一个列中而后面单元字的虚词则是放在一个行中(反向连接矩阵)。
最后,当单元字区分装置509的正向分析结束时,控制装置508输出一个输入字符序列未分析部分到反向区分装置507,且当反向分析结束时,输出一个在正向和反向分析的剩余部分作为未定义字。
参照图17,将详细描述控制装置508的操作。
在步骤511单向字区分装置509的正向分析是被监视的。当到达一个未定义字部分而结束分析出现死锁时,就起动步骤512以及其后的各步骤。
其次,在步骤512中,一个在那时迄已充分分析而分离出来的单元字是从部分结果存储器装置读出来。
此外,在步骤513中,原始输入字符序列除去在步骤512读出的正向分析结果之后的剩余部分组成了未分析字符序列。
其次,在步骤514中未分析字符序列被反向。而且在步骤514中,为了发送未分析字符序列(今后称之为反向输入字符序列)而起动反向区分装置507。
其次,在步骤516中,监视了反向区分装置507的反向分析。当到达一个未定义字部分而结束分析出现死锁时,起动步骤517以及其后诸步骤。
而在步骤517中,从部分结果存储器装置505读出一个在那时已经充分反向分析而分离出来的单元字。
其次,在步骤518中,在反向分析中分离出来的单元字被反向而回到正确的字符序列。
此外,在步骤519中,在正向分析的未分析字符序列中除去在步骤519中取得的字符序列,其剩余部分形成未定义字。
最后,在步骤520输出分离出来的单元字和未定义字。
下文将详细描述图16单元字区分系统的操作,这要参照表4以及采用在描述通常系统时所用的同样的字符次序例子,这个字符序列是“きよぅからび よぅ
Figure 85101133_IMG9
んをひらく〔ki yo u ka ra bi yo u i n o hi ra ku〕”,其中,“びよぅ
Figure 85101133_IMG10
ん〔bi yo ui n〕是一个未定义字。
当从日文输入装置501接收一个输入字符序列时,单元字区分装置509完成与通常系统相类似的正向分析,并在表2行2情况下碰到未定义字“びよぅ ん〔byoin〕”,并达到表2行5的情况而分析死锁见。在这里,单元字区分装置509把单元字“きよぅ〔Kyo〕”和“から〔kara〕”存到部分结果存储器装置505,并结束操作,这两个单元字已在表2行2时分离出来,该时分析已充分进展。
当单元字区分装置509停止操作,控制装置508便从部分结果存储器装置505读出单元字“きよぅ〔Kyo〕”和“から〔kara〕”,并从原始输入句子中除去这两个单元字而得到“びよぅ
Figure 85101133_IMG12
んをひらく〔bi yo u i n o hi ra ku〕”作为未分析字符序列。进而,控制装置508把未分析的字符序列反向得到一个字符序列“くらひをんぃぅよひ〔ku ra hi o n i u yo bi〕”,并把这个序列送到反向区分装置507作为反向输入字符序列。
当接收到反向输入字符序列时,反向区分装置507应用反向单元字字典和以前描述过的连接矩阵把这个反向输入字符序列区分为单元字。
首先,反向区分装置507从反向输入字符序列的头分离出单元字“らひ〔kurahi〕”和“くら〔kura〕”,而且建立一个堆栈来存储这些单元字。表4行1示出此时分析方式。
然后,从“をんいぅよび〔o    n    i    u    yo    bi〕”中分离出一个单元字“を〔o〕”。在此用连接矩阵来检查“を〔o〕”(情况虚词)能否跟在“くらひ〔kurahi〕”(动词)后面。由于连接矩阵是为正向分析的匹配准备的,于是检测“くらひ〔kurahi〕”(动词)和“を〔o〕”(情况虚词)的连接的正确性,这是重新安排“を〔o〕”(情况虚词)和“ひらく〔hiraku:开〕”(动词)的连接正确性而得来的。由于“を〔o〕”是可能跟在“くらひ〔kurahi〕”后面的,就建立堆栈存储它。表4行2示出此时的分析方式。
在此时,分析碰上一个未定义字“んいぅよび〔n    i    u    yo    bi〕”类似于正向分析那样地“を〔o〕”和“くらひ〔kurahi〕”从堆栈中删掉,而分析死锁在表4行3的状态。
反向区分装置507把单元字“くらひ〔kurahi〕”和“を〔o〕”存入部分结果存储装置505并结束该操作。这两个单元字在表4行3时分离出来,那时分析已充分进展了。
当反向区分装置507停止工作时,控制装置508从部分结果存储器装置505读出单元字“くらひ〔kurahi〕”和“を〔o〕”,并把这两个字反向而得到反向单元字“を〔o〕”和ひらく〔hiraku〕”。进而把这两个反面单元字“を〔o〕”和“ひらく〔hiraku〕”从反向分析的未分析字符序列中删除而得到其剩余部分“びよぅいん〔biyouin〕”成为一个未定义字。
最后,控制装置508输出已分离的单元字和未定义字“きよぅ〔Kiyou〕”,“から〔kara〕”,“びよぅいん〔biyouin〕”(未定义字),“を〔o〕”和“ひらく〔hiraku〕”。
如上所述,在通常方法中,为了分离出数目为5(五)的未定义字“びよぅぃん〔biyouin〕”而假定未定义字的数为1(一),2(二)-5(五),而需要分析五次。换句话说,一般地说假如一个未定义字的正确长度(字符数)为n,则需要(n-1)次无用的分析。与本实施例对比,本实施例只需要在反向的一次分析,因此可以大大提高包含未定义字的自然语言单元字区分处理的速度。
如前所述,自然语言分析装置110的输出是提供给推导装置120的,并按图18所述进行处理。
那就是,根据图7B输出中的“其他信息”来判定是否有一个表示一个愿望和一个命令的项目存在于输出中(步骤121)。
假如有表示愿望和命令的项目,那就判定了这是一个计划产生,而继之进行到执行步骤123,假如不存在这些项目,就进行执行一次步骤122。
在步骤122中,判定在“其他信息”中是否存在有一个表示过去操纵历史的一个问题的项目。结果是这样,假如有问题存在就继之执行历史核对步骤124,否则继之进行执行步骤130,去执行一个响应句子准备的准备。
如图19所示,计划产生步骤123包含如下诸处理过程。
(a)步骤230产生一个目标状态(详见图20)。
(b)步骤231进行匹配替代(详见图23)。
(c)步骤232进行状态校正,其中是用匹配替代的结果,从图22A和22B所示的终端命令规则库中得到一个预先状态来申请一个产生目标状态的终端 命令(中间或次目标状态),这是按照图24所描述的过程进行的。
(d)步骤233进行匹配,在其中判定一个中间或次目标状态是否等于表示当前状态的终端状态存储器150的内容,当相等时,就起动产生响应句子的处理装置130来执行。
(e)步骤234进行这样的处理,当步骤233判定的结果指示不相等时,就校正了检索范围,因而相同地方是不再检索的。
图20是一个流程图,它示出产生一个计划产生的目标状态的一个处理过程。这是建立在以前参照图18所描述的输入句子分析结果的基础上的,这个流程图包括如下几个步骤。
(a)步骤2301从输入句子中分离出谓语(在以前的例子中,“
Figure 85101133_IMG13
记すゐ〔tenkisuru:转移〕”被分离出来)。
(b)步骤2302,分离谓语是用预先存储的输入句子意义结构和一个目标状态来匹配如图21所示,而在输入句子意义结构的许多谓语中寻找一个与步骤2301分离出来的谓语“ 记すゐ〔tenkisuru:转移〕”相等的一个谓语。
(c)步骤2303,按照输入句子中各项目之间的对应关系,一些常量被用来替代一些诸如X和Z这样在(图21)对应表中的项目的变量(在例子中,以 〔Figure〕”代X,和以“右上〔右上〕”代Z)。
(d)步骤23304,从图21中C处的目标状态中取出在上一步骤中替代的结果(在此例中,在图21目标状态列中取出一个状态“存在(
Figure 85101133_IMG16
〔图形〕,右上〔右上〕)”)。
图22A和22B各自示出终端命令规则库的例子。一个终端命令可执行的状态一般是受限的,而一个预先条件定义为命令可执行基础条件。
此外,通过命令的执行,一个从预先条件中消失的条件是一个删除清单,另一方面作为命令执行结果新出现的状态是一个增添公式。
在以前的例句中,指令转移X(即“
Figure 85101133_IMG17
〔图形〕”)到Z(即,“右上〔右上〕”)这个命令中,有一个内容151“X〔图形〕存在于Y(在显示屏幕中的一个任意位置)和一个空地区(φ)存在于Z(右上)”就是执行转移的预先条件。
进而,在图22A的删去清纯152指出转移处理执行结果的一个内容“一个状态‘一个空地区存在于Z’消失了”。而进一步,图22A的增添公式153指出一个新的状态“X存在于Z”。
这些命令库用于图19的步骤231,232等步骤。例如,假定“
Figure 85101133_IMG18
〔图形〕”替代了变量X而“右上〔右上〕”替代了变量Z,那么图22A的命令名“转移(X,Z)表示“转移图形〔 〕到右上〔右上〕”。
为了执行这样转移命令,下列条件即,在任一地方(由于任一地方可被选择,变量Y保持原状不变),“
Figure 85101133_IMG20
〔图形〕”存在,即“存在(
Figure 85101133_IMG21
〔图形〕,Y)”,另外还有要把这个图形转移到的那个地方是空地方,即“存在(φ,右上〔右上〕)”,以上两个条件即两个预先条件。
而且,在命令执行之后,状态“存在(φ,右上〔右上〕)”消失了,而取代它的一个状态“存在(
Figure 85101133_IMG22
〔图形〕,右上〔右上〕)”产生了。为了指出这些替代,就存储了删除清单和增添公式。
从上所述,可清楚地看出,为了产生一个和增添公式相等的状态,就必须有效地建立预先条件。此外,我们以后将要描述到,删除清单是存储在历史存储器160中的,每时每刻它的状态都和信息终端的状态一起变化。
图23示出应用上述技术的匹配替代步骤231的处理过程。如可从图中看到的,匹配替代步骤包含如下列几个处理过程:
(a)步骤250中,分离出目标状态(图21,在C处)的谓语部分“存在(X,Z)”,此目标状态是从目标产生处理步骤(图20步骤2304)获得的。此外,在一个LISP(表处理程序)语言中,这个处理过程可理解为应用“CAR”(只取出表的开头部分的一个命令)或“CDR”(取出除了开头部分的表的其他部分的命令)等等。
(b)步骤2501的处理过程是判定一个否定符号是否存在于前面步骤250分离出来的谓语的开头。假如这个符号存在,就执行步骤2502,假如这个否定符号不存在,就执行步骤251。
(c)步骤2502中,当否定符号存在于谓语的开关时,则从目标的谓语部分除去这个否定符号之后所形成的那一个部分就成为一个新的目标状态。同时从这一步骤到步骤234的处理期间,假如有一个增添公式的项目出现,应理解为它要由一个删除清单所替代。
此外,可以很容易地了解这个处理过程,例如, 可以通过用一个在计划产生步骤123中的一个增添公式来替一个变量,以及在执行这个步骤2502时,通过用删除清单来替代一个变量的数值。
(d)步骤251的处理过程是判定上一步骤250中分离出来的谓语是否等于规则库(图22A和22B)中任一个增添公式的谓语,假如相等则执行步骤252,假如不等于规则库中任一个谓语,则执行步骤255。
(e)步骤252,当谓语相等,则一个目标参数就替了在规则库中相应谓语的一个变量。
(f)步骤253,判定由于目标参数替换的结果,在变量之间是否出现逻辑矛盾。假如有矛盾,则执行步骤254的处理,假如没有矛盾,则执行步骤256而转到主处理过程中去。
(g)步骤254,作为步骤253判定的结果,假如已有矛盾产生,此规则就暂时从规则库中省略掉,而控制转到前面的步骤251。
(h)步骤255是从步骤251分枝出来的,在建立一个错误码字之后转到主处理过程。
图24是一个流程图,示出图19中状态校正处理步骤232的细节。
在步骤2321,从图21的状态C中省略去增添公式。这就是说,暂时产生一个到达目标状态的前一步处理的状态。
在步骤2322,增加一个预先条件到目标状态,并由此而得到一个新的中间目标状态。
接着,在图19的匹配步骤233,如前所述,中间目标状态是和终端的当前状态进行比较和匹配的,假如两个状态不一致,就产生一个前一步处理的中间目标状态,那时处理过程就又重新返回到状态校正步骤232。
假如在这样状态下产生的中间目标状态与终端的当前状态相一致,则通过依次跟随迄已产生的中间状态,并通过连续执行增添公式,那么就可以从终端的当前状态到达目标状态。
参照图25,通过一个具体例子来描述在前面所述的本发明所布置的操作。
当已输入如图25所示的输入句子190即“左下の を右上しニ
Figure 85101133_IMG24
记レ
Figure 85101133_IMG25
ニぃ〔hidariShita n zu o migiue ni tenki Shitai:想要转移右下图形到右上〕”时,自然语言分析装置110将这个句子区分成为一些词汇,并在目标产生步骤230(图19)中推导装置120产生一个目标状态191“存在(
Figure 85101133_IMG26
〔图形〕,右上〔右上〕)”。
这个目标状态191和规则库140(图22A)的增添公式的谓语相比较,假如没有发现相同的谓语(例如,图22A的增添公式153“存在(X,Z)”)的话,那么在匹配替代步骤231替代每一个变量,并测试在各变量之间有无矛盾。
在本例的情况下,在图22A的增添公式中,当用“〔图形〕”替代变量X和用“右上〔右上〕”替代变得Z之后,就得到图25的公式192。由于替代结果而得到的增添公式是等于目标状态191,这是可知的。
如前所述,由于转移命令执行后所到达的状态对应于增添公式,一个预先条件和一个表示执行这个命令之前状态的删除清单192A就成为次目标状态,这就是一个中间目标193“存在(
Figure 85101133_IMG27
〔图形〕,右下〔左下〕);存在(φ,右上〔右上〕)”。
这个处理过程是对应于图19和图24状态校正步骤232,2321和2322。
其次,通过图19的匹配步骤233,中间目标Ⅰ193和当前状态196即“存在(
Figure 85101133_IMG28
〔图形〕,左下〔左下〕);存在(文〔句子〕,右上〔右上〕)”进行比较,结果判定了中间目标Ⅰ193中标用*的状态即“存在(
Figure 85101133_IMG29
〔图形〕,左下〔左下〕)”是一致的,而条件是满足的。
然而,另一状态“存在(φ,右上〔右上〕)”并不一致而条件是不满足的。因此在执行了图19检索范围校正步骤234之后,重新执行匹配步骤231。
接着,由于以达到和图22B所示的删除命令增添公式谓语的匹配,通过“右上〔右上〕”替代变量V,就可得到删除命令的一个状态194即“存在(φ,右上〔右上〕)”。
在此情况下,由于在预先条件和删除清单194A中有一个变量W,即“存在(W,右上〔右上〕)”和谁都不一致,它就保持原样。而就产生了一个中间目标状态Ⅱ194,即“存在(
Figure 85101133_IMG30
〔图形〕,左下〔左下〕);存在(W,右上〔右上〕)”。
在中间目标Ⅱ和当前状态196的匹配替代中达到谓语一致。因此,当“文〔句子〕”替代了变量W之后,中间目标Ⅱ变成“存在(〔图形〕,左下〔左下〕);存在(文〔句子〕,右上〔右上〕)”,这指出中间目标Ⅱ和当前状态一致。这样就结束了图4的推导步骤120。
此外,如果一个谓语“左下〔左下〕”并不包含在输入句子190中,那么在预先条件192A,中间目标Ⅰ193和中间目标Ⅱ195中的每一个谓语“左下〔左 下〕”都是“Y”。在此情况下,即使“左下〔左下〕”替代了Y也没有矛盾发生。
如上所述,推导处理装置120的处理过程是这样,首先,了解信息终端的目标状态,然后,从上面那个目标状态决定中间目标状态,最后,中间目标状态和当前状态等同(反向推导)。相反地,推导过程也可能是这样,从当前状态正向寻找目标状态(正向推导),这是描述于“人工智能原理”尼尔斯杰克·尼尔森(Nils    J.Nilsson)著,麦克格劳-希尔(MC    Graw-Hill)书局发行于1971。
跟在推导步骤120的结果之后,在响应句子预备步骤130,中间目标是沿着相反方向,而输出一个指令“在执行删除(文〔句子〕,右上〔右上〕)之后执行转移( 〔图形〕,右上〔右上〕)”到输入/输出控制设备11。
按照上述处理过程,假如用户用自然语言输入一个操纵要求或处理内容,就在显示单元3上显示出一系列必需的命令。因此,用户只要根据显示的要求来操纵,用户就能无误而非常有效地执行一个目标作业。
其次,将描述一个关于识别否定目标状态方法的实施例。在图18的计划产生(步骤123)中,虽然将TRRIPS这样方法是众所周知的(参阅上面所指的“人工智能原理“Nils    J.Nilsson著,MCGraw-Hill书局发行于1971),但是对于引起状态消失这种命令,例如在信息终端显示屏幕上擦去一个显示,就难于实现推导。这个实施例改进了已知技术。就是说,在本实施例中,注意到当信息终端执行一个命令时,终端的一个状态消失了,在要达到这个消失的状态,就设计了一个解决方法,这就是通过跟踪一个由于执行命令而消失的状态清单。
参见图26A和26B,当用户想要擦去图26A左下角城市地图的图1(80)而得到图26B的状态;因而输入一个问题命令。例如图227所示的“左下の
Figure 85101133_IMG32
を消去し
Figure 85101133_IMG33
い〔想要擦去左下图形〕”时,由于日本语言处理分析的结果,就得到图27的目标状态640。按照意义处理的结果;这个目标状态的意义是,寻找一个图不在左下的状态,就是说,图在左下这个状态的否定,因此把一个否定符号“~”放在谓语的前面。在图23的处理过程执行推导,而当处理过程进入处理步骤2501时,由于出现否定符号,控制就转到步骤2502。参照图28规则库中的删除清单,结果是执行匹配替代并判定它和删除命令的删除清单650相一致。由于这个预先条件,在图24步骤2322中就得到一个新的中间状态670,而且由于它和当前状态680一致,就决定了要执行这个删除命令。
此外,如图29所示,图4中的历史存储器存储着连接应用于各个终端的规则,并存储着由于应用规则而已消失的状态。同时有一个指针198,用来指出一个某规则即要被应用之前的位置(最新规则)。
图30示出历史匹配步骤的执行过程,这个历史匹配步骤包含如下诸处理过程:
(a)步骤300,判定问题句子是否与原因有关,假如与原因有关,下一步就执行步骤301,假如与原因无关,就执行步骤305。
(b)步骤301,从图31(在后面描述)取出一个目标状态并附加上一个否定符号。
(c)步骤302,用一个数值替代一个在步骤301中取得的目标状态的变量。
(d)步骤303,寻找在应用历史过程存储器的规则之后的一些状态来发现一个和在步骤302中取得的目标状态相等的状态。这个寻找按从新到旧的次序进行(以指针为参考,则状态的次序要低一位)。
(e)步骤304,用步骤303中得到的历史过程存储器的应用规则,把原因提供给用户。
(f)步骤305中进行不是原因问题的处理。
图31示出历史过程存储器的内容,它示出如图21那样的输入句子意义结构和一个目标状态的对应关系,其中输入句子对应于“何故右上の文が消ぇ
Figure 85101133_IMG34
のか〔nage migiue no bun ga Kie ta no Ka:为什么擦去右上句子〕”。
通过这样安排,例如在图18步骤122中,当用户提出一个问题“何故右上の文ヵミ消ぇ のか〔为什么擦去右上句子〕”时,在句子意义结构分析中,被动语态变成主动语态,而取得一个如图31所示的输入句子意义结构。推导装置120(图4)执行图18中历史匹配步骤124(其处理的内容,详见图30)。
在步骤124中因为认识到问题是关系到原因,就执行步骤301。因此,就不要求一个目标状态去实现删除,而只要求一个命令用来删去目标状态的否定。这样,在步骤301就得到一个目标状态“否定存在(X,Z)”在步骤301中,从输入句子的意义可知“X”对应于“文〔句子〕”,和“Z”对应于“右上〔右上〕”,并得到“存在(文〔句子〕,右上〔右上〕”。在步骤303 中,在图29的存储器中寻找“存在(文〔句子〕,右上〔右上〕”。可从图29得知那是状态“1”。在步骤304中,从图29的历史存储器中得到应用规则“删除”。并可能输出(回答)一个回答“ 消去し十ニ
Figure 85101133_IMG37
ニゐ
Figure 85101133_IMG38
ゐ〔因为已经删除了〕”。
如上所述,可在显示单元3显示出对用户问题的回答。
按照本发明,只要通过信息终端输入一个要执行作业的自然语言就可自动产生一系列完成该作业的命令。结果是,即使用户忘记使用终端的方法或者使用有误,也可以通过由于操作中的死锁而使操作不能执行来阻止信息终端的工作,而且只要用很小量的程序即可执行所要求的作业。
此外,按照本发明,一个操纵目标的状态变化能在推导处理中得到理解,同时就一个消失状态而言推导处理是可以形成的。因此,类似人可以适应周围情况而执行最佳指导,在本发明中也可依靠操纵目标设备的状态来产生最佳回答。
而且,按照本发明,一个字典存储器检索范围的地址是存储在一个上限存储器和一个下限存储器内的,而且当参考字符数目增加时,其范围逐渐变窄。因此,由于范围变窄的方法很简单,就可高速检索所存在的所有长度的词汇,因此就可以获得对区分输入字符序列成为词汇单元的高效率的词素分析。
在一次检索期间,可估计引用字典的次数,对于一个60,000个字的字典来说,通例大约是130次,而在本发明中则大约是60次此外,对于字符比较的次数来说,由于通例比较是在词汇单元之间进行,当按字符计数时大约是500次。另一方面,在本发明中,字符比较用的字一个字符单元,大约就60次。从上所述,可看出在本发明中,引用字典的次数降到1/2,而字符单元比较次数则大约降到1/8,因而可以达到高速处理。
此外,在本发明中,当自然语言序列的正向分析到达未定义部分时,就进行一次反向分析,而把剩余部分作为未定义字处理。因此,就有避免无用分析的优点,而用于区分自然语言字符序列成为单元字的处理时间就可大大减小。
表1
表3
Figure 85101133_IMG41
表4
Figure 85101133_IMG42

Claims (13)

1、一个自然语言智能指导系统具有一个输出设备,一个响应来自该输入设备的输入的处理设备用于执行一个预定处理,和一个显示单元,用于至少显示一个该处理设备的内容和处理结果,该处理设备的特征在于:
一个输入/输出控制设备,用于控制从该输入设备的输入和输出到该显示单元;
一个自然语言分析装置,用于把由多个词汇组成的自然语言区分成为各个词汇,并通过分析输入句子的意义,把结果词汇转换成为该处理设备能了解的内部表达式;
规则库装置具有一个规则库,用于在执行各种命令前后预先存储信息终端的状态。
终端状态存储器装置,是用于存储该信息终端的工作状态。
推导装置从该其然语言分析装置得到分析结果;
计划存储器装置用于存储从该推导装置输出的该信息终端的上述的命令序列;
该推导装置的特征在于通过该规则库的引用,输出该信息终端,此信息终端的目标状态,输入于用该自然语言命令序列中。
2、根据权项1所述的系统,其特征为当所得到的中间目标和该信息终端的当前状态不一致时,就重复进行这个中间目标和变换处理过程,当所得到的中间目标和该信息终端的当前状态相一致时,该推导装置就输出一个命令序列来变换各该中间目标。
3、根据权项1所述系统的特征为,该处理设备包括历史过程存储器设备,这个历史过程存储器是用于连续存储该信息终端变化之前的状态,通过该命令序列的执行,每次改变该终端状态存储器装置的内容,该处理设备还包括了该计划存储器存储的操纵命令中的指令序列。
4、根据权项1中所述系统,其特征为该推导装置包含如下各装置:
目标产生装置,用于以输入句子的意义结构为依据来产生该信息终端的目标状态。
状态校正装置,用于通过增加或删除该目标状态中的一个增添公式和一个该规则库的预先条件来产生中间目标状态,以及
匹配装置,用于把该中间目标状态和存储在该终端状态存储器装置中的该信息终端的当前状态相比较,当两个状态彼此一致时,就输出增添公式作为命令序列来改变这个状态,当两个状态不一致时,就把该中间状态视为一个新的目标状态而起动该状态校正装置。
5、根据权项1中所述的系统,其特征为:
该规则库装置包含具有一个预先条件的规则库,它规定了该信息终端执行命令所要求的条件,一个删除清单,它描述该信息终端执行命令后消失的信息,以及一个描述增加的信息的增添公式。
该推导装置,当为了删除一个状态的目的而被查询关于删除该信息终端的一个状态的方法时,从该删除清单中检索这个目的状态。
6、根据权项1中所述系统,其特征为:
该自然语言分析装置包含一个把输入字符序列区分为词汇中单元的词素分析设备,该词素分析设备包含有
一个输入字符序列存储器用于输入字符序列,
一个字典装置用于存储已存词汇的关键字及附加信息,
一个起始位置存储器用于从输入字符序列中分离出词汇而存储一个操作的起始位置,
一个字符序列比较部分用于把该字典存储器的内容和输入字符序列中起始位置之后的字符序列相比较,
一个控制部分用于控制该起始位置存储器的内容,
一个字符位置存储器用于判定是否与字典进行比较,这是建立在从该起始点之后第n个字符的基础上的。
一个上限存储器用于描出第一个地址,其中字典关键字的第一个字符到第(n-1)个字符之间的字符是等同于输入字符序列中从起始位置到第(n-1)个字符之间的字符的。
一个下限存储器表示出用于指出最后地址,和
词汇分离装置用于给该上限存储器和该下限存储器建立一个字符检索范围并分离出词汇,这个字符检索范围中的字符是和该字符位置存储器指出的输入字符相同。
7、根据权项要求6,该系统特征为,当该上限存储器的内容和该下限存储器的内容彼此相等时,判定这个词汇分离已经结束,而校正该起始位置存储器。
8、根据权项要求6,该系统特征为,就上限存储器所指的词汇而言,当该字符位置存储器不包含次一个对应字符时,就输出该词汇。
9、根据权项要求1,该系统特征为该检索算法是基于二分检索方法。
10、根据权项要求3,该系统中特征为,该推导装置包括有如下各装置
目标产生装置,用于以输入句子的意义结构为依据来产生该信息终端的目标状态。
状态校正装置,用于通过增加或删除该目标状态中的一个增添公式和一个该规则库的预先条件来产生中间目标状态,以及
匹配装置,用于把该中间目标状态和存储在该终端状态存储器装置中的该信息终端的当前状态相比较,当两个状态彼此一致时,就输出增添公式作为命令序列来改变这个状态,当两个状态不一致时,就把该中间状态视为一个新的目标状态而起动该状态校正装置。
11、根据权项要求3,该系统的特征为,
该规则库装置包含的规则库有一个预先条件,它规定了该信息终端的执行命令所要求的条件,一个删除清单,它插进该信息终端执行命令后消失的信息,以及一个描述增加信息的增添公式。
该推导装置,当为了删除一个状态的目的而被查询关于删除该信息终端的一个状态的方法时,从该删除清单中检索这个目的状态。
12、用自然语言智能指导系统的一个智能指导方法,这个系统有一个输入设备,一个对来自该输入设备的输入响应用于执行一个预定处理的处理设备,和一个显示单元,该显示单元至少显示一个该处理设备的内容和处理结果其特征为该处理设备至少包含有一个输入/输出控制设备,它用于控制从该输入设备输入和输出到该显示单元,并且有一个自然语言分析装置,用于把由许多词汇组成的自然语言区分成为各个词汇,并通过输入句子意义的分析,把结果词汇转换成为该处理设备能了解的内部表达式,该方法的特点在于下述各步骤:
(a)一个步骤是用于对由许多词汇组成而输入的自然语言进行分析;
(b)一个步骤是用于识别用户所要求的该信息终端的目标状态;
(c)一个步骤是用于通过预定命令对目标状态的处理,从而得到一个中间目标状态;
(d)一个步骤是用于确定该中间目标状态是等同于该信息终端的当前状态;以及
(e)一个步骤是用于把该目标状态转换成为所述的中间状态,并反向执行这个命令。
13、根据权项12,该方法的进一步特征在于,有这样一个步骤,在该步骤中,存储该信息终端的状态变化,并存储一个实时执行的命令,因此使得这个命令和状态变化是按彼此相应的系统存储着,同时在该步骤输出关于该信息终端的历史。
CN 85101133 1985-04-01 1985-04-01 自然语言智能指导的方法与装置 Expired CN1013006B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 85101133 CN1013006B (zh) 1985-04-01 1985-04-01 自然语言智能指导的方法与装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 85101133 CN1013006B (zh) 1985-04-01 1985-04-01 自然语言智能指导的方法与装置

Publications (2)

Publication Number Publication Date
CN85101133A CN85101133A (zh) 1987-04-01
CN1013006B true CN1013006B (zh) 1991-06-26

Family

ID=4791646

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 85101133 Expired CN1013006B (zh) 1985-04-01 1985-04-01 自然语言智能指导的方法与装置

Country Status (1)

Country Link
CN (1) CN1013006B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7107206B1 (en) 1999-11-17 2006-09-12 United Nations Language conversion system

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102314218A (zh) * 2010-07-01 2012-01-11 李峰 一种智能化的手机上的人机交互方法和系统
JP5716328B2 (ja) * 2010-09-14 2015-05-13 株式会社リコー 情報処理装置、情報処理方法、および情報処理プログラム
KR102019719B1 (ko) * 2013-01-17 2019-09-09 삼성전자 주식회사 영상처리장치 및 그 제어방법, 영상처리 시스템
CN106293725B (zh) * 2016-08-04 2021-03-02 深圳市微我科技有限公司 一种基于后实现的自然语言混合编程方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7107206B1 (en) 1999-11-17 2006-09-12 United Nations Language conversion system

Also Published As

Publication number Publication date
CN85101133A (zh) 1987-04-01

Similar Documents

Publication Publication Date Title
CN1171162C (zh) 基于字符分类检索字符串的装置和方法
CN1101032C (zh) 相关词抽取设备和方法
CN1143240C (zh) 用于通过推理识别输入字符串的装置
CN1215433C (zh) 联机文字识别装置及方法
CN1194319C (zh) 对表格式数据进行查找、列表及分类的方法和装置
CN1215457C (zh) 语句识别装置和方法
CN1158627C (zh) 用于字符识别的方法和装置
CN1151456C (zh) 特征文字序列抽取及相似文书检索方法和装置
CN1910601A (zh) 限制条件解决方法、限制条件解决装置、以及限制条件解决系统
CN1552032A (zh) 数据库
CN1281191A (zh) 信息检索方法和信息检索装置
CN1331449A (zh) 用于将粘着法构成的文本或文档分段成词的字符串划分或区分的方法及相关系统
CN1578954A (zh) 机器翻译
CN1319836A (zh) 转换表达方式的方法和装置
CN1219266C (zh) 一种实现多路对话的人-机汉语口语对话系统的方法
CN1608259A (zh) 机器翻译
CN1678975A (zh) 仿效qwerty型布局和键入的缩减键盘系统
CN1091906C (zh) 模式识别方法和系统以及模式数据处理系统
CN1387639A (zh) 语言输入用户界面
CN1694049A (zh) 一种基于五键的汉字输入系统
CN1760869A (zh) 信息显示控制装置、服务器以及信息显示控制方法
CN1266633C (zh) 语音查询中的辨音方法
CN1013006B (zh) 自然语言智能指导的方法与装置
CN1151558A (zh) 信息检索方法和系统
CN1924995A (zh) 基于内容分析的短信问答系统及实现方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C13 Decision
GR02 Examined patent application
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee