本发明属于机器人人机交互与自然语言语义理解的交叉领域,。
背景技术:
考虑到人与人之间最为自然的交流方式是自然语言,研究者们试图让机器人能够理解人的自然语言,执行人用自然语言发出的各种指令。这里涉及到机器人的人机交互与自然语言处理两个领域。自然语言处理的工作包括语音信号的采集、语音信息的识别、语义的理解、语音的合成几个方面。目前随着计算机软硬件技术的发展,除了语义的理解还存在比较大的困难外,自然语言处理的以上其它方面均取得了很大的进步。简单来说,从语音到文字和从文字到语音的转换方面已在一定程度达到实用,对自然语言文字的语义理解目前尽管也取得了一定的进展但距离问题的解决还有相当远的路要走。语义理解的核心是人工智能,这是研究者们面临的一个难题,也是目前国内外研究的一个热点领域。
尽管完全的自然语言语义理解还有很长的路要走,但如果把应用范围加以限定,自然语言的语义理解就有可能得到一定程度的应用。出于这一想法,本发明提出一种自然语言语义理解模型,能够对机器人导航的自然语言指令进行处理,提取出导航指令中包含的指令要素。
技术实现要素:
本发明提出一种基于叠层CRF模型的自然语言处理模型,来对机器人导航的自然语言指令进行处理。CRF(即条件随机场)模型是一种序列标注模型,能够对输入的序列进行标注。本发明把自然语言导航指令文本看成是一串序列,第一层CRF实现自然语言指令文本到导航词性的标注,第二层CRF在此基础上标注出导航指令的导航要素,第三层CRF对导航指令中的导航过程进行标注。为了提高模型的准确性,在第一层CRF后加入了是否为导航指令的判断,把不属于导航指令的“噪音”过滤掉。下面对这里用到的术语进行解释。
这里的导航过程是指导航指令中一段持续的运动过程,一个导航指令语句中可能包括一个或者多个导航过程。例如“往前走”就包含一个导航过程,而“走到前面路口处左拐”就包含两个导航过程“走到前面路口”和“(在前面路口)左拐”两个导航过程。一般一个导航指令语句多为一个或者两个导航过程。导航要素是一个导航过程可能包含的要素有“动作”、“方向”、“距离”、“速度”、“起点”、“终点”中的一种或多种。导航词性有以下12种:地名词、持续性动词、非持续性动词、介词、方向词、距离量词、距离描述词、速度量词、速度描述词、数词、连词、非导航类词汇。
本发明的模型参数要通过对模型的训练来确定,其训练过程是一个监督学习过程,即搜集出自然语言导航指令的样本,手工对样本进行标注,形成标注样本语料集;利用这些样本语料集对模型进行训练,获得模型参数,从而确定模型。训练好的模型就可以用于实际对自然语言导航指令进行导航过程分割和导航要素提取,从而实现对自然语言导航指令的语义理解。