CN103514157A - 一种面向室内智能机器人导航的路径自然语言处理方法 - Google Patents
一种面向室内智能机器人导航的路径自然语言处理方法 Download PDFInfo
- Publication number
- CN103514157A CN103514157A CN201310495299.8A CN201310495299A CN103514157A CN 103514157 A CN103514157 A CN 103514157A CN 201310495299 A CN201310495299 A CN 201310495299A CN 103514157 A CN103514157 A CN 103514157A
- Authority
- CN
- China
- Prior art keywords
- noun
- semantic chunk
- path
- language material
- chunk
- 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.)
- Granted
Links
Images
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种面向室内智能机器人导航的路径自然语言处理方法,本发明通过分析收集到的路径自然语言的语料,提出句法结构,在此基础上构造层叠条件随机场,提取生语料中名词短语,然后提取生语料中的语义组块,引入名词实体关系推理方法获取名词短语中名词实体之间的关系,最后提取路径单元,连接路径单元生成路径。本发明实现了既不需要依靠高精度的地图,也不需要提前输入手绘地图的路径自然语言处理方法,来实现路径提取。
Description
技术领域
本发明涉及一种自然语言处理方法,具体涉及一种面向室内智能机器人导航的路径自然语言处理方法。
背景技术
在苹果公司推出的手机iphone4s中包含Siri系统,其可以高度智能的完成与通话相关的操作,人们通过日常用语就能够控制手机自己完成打电话,查号码等操作,甚至能够完成诸如查找音乐,网上搜索功能。Siri系统强大的自然语言理解系统给人以深刻印象,同样如果能用自然语言控制移动机器人导航,那么诸如室内服务机器人之类的机器人也将可以由普通人非常方便的操作。
在基于汉语的描述路径的自然语言处理方面,相关研究工作还比较滞后,目前还没有研究者提出完全基于自然语言的处理方法。聂仙丽等虽然提出过将自然语言处理用于机器人导航,但是通篇文章更多的是用编程语言处理特定对话,没有真正涉及到自然语言处理(聂仙丽,蒋平,陈辉堂;采用自然语言的移动机器人任务编程[J];机器人,2003(7):308-317)。尽管如此,其它领域中和路径相关的研究有一定借鉴作用,因为路径自然语言中确定方位是基本的要求,这和GIS领域的部分工作比较相似,乐小虬[2]采用基于分层有限状态自动机的方法来分析自然语言中的方位关系(乐小虬,杨崇俊,于文洋;基于空间语义角色的自然语言空间概念提取[J];武汉大学学报,2005,12(3):1100-1103)。张雪等从城市道路导航角度出发,研究了汉语中路径语言的基本语法,在此基础上提出了处理方法(张雪英,闾国年,宦建.面向汉语的自然语言路径描述方法[J].地球信息科学,2008,10(6):757-762)。但实际上这样的处理更多的是受限自然语言处理,而不是自然语言处理。
在基于英语的路径自然语言处理方面。在路径自然语言语义表达规律的基础上,Klippel等人很详细的分析了路径的组成,路径中的方向和距离,分析了路标的作用,landmark和路径的关系等等(Alexander Klippel,Stefan Hansen,Kai-Florian Richter,StephanWinter.Urban granularities—a data structure for cognitively ergonomic routedirections[J].Geoinformatica,2009(13):223–247.)。N.Shimizu等人提出了End-to-End系统的概念,认为用路径自然语言进行机器人导航应该分为两步即:1.路径自然语言分成若干系列运动。2.将这一系列的运动,地图,机器人初始方向结合(N.Shimizu and A.Haas.Learning to Follow Navigational RouteInstructions[C].Int’l Joint Conf.on ArtificialIntelligence(IJCAI),2009,1488-1493),这种系统划分被后来的研究者普遍接受,尽管文中提出了使用组块进行分析的方法,但是所采用的语料非常单一,其算法只具有启发性。Yuan Wei等人认为路径自然语言中经常有很多错误或者模糊信息,因此只要通过环境感知方法推导出大环境的信息,则可以通过与现有地图结合的方法进行机器人的路径推导(Yuan Wei,Emma Brunskill,et al.Where to Go:Interpreting Natural Directions UsingGlobal Inference[A].2009IEEE International Conference on Robotics andAutomation[C].kobe:Proceedings-IEEE International Conference on Robotics andAutomation,2009.3761-3767.)。Kollar等人在Yuan Wei等人的基础上提出了SDC用来分析路径自然语言中的方向,并结合Yuan Wei等人的结果给出了相关的实验结果(KollarT,Tellex S,et al.Toward understanding natural language directions[A].Human-RobotInteraction(HRI)[C].Boston:20105th ACM/IEEE InternationalConference,2010.259-267.)。鲁汶大学的Kordjamshidi[8]则从更加宽广的角度研究了自然语言中物体的空间关系,类比一般的语义角色标注方法,她采用了以方位词为中心的空间角色语义标注方法,为路径自然语言提供了很好的借鉴(Parisa Kordjamshidi,Martijnvan otterlo,Marie-Francine Moens.Spatial Role Labeling:Towards Extraction of SpatialRelations from Natural Language[J].ACM,2011.1-33.)。
在这个领域,英文基于路径自然语言理解的机器人导航已经有了初步的发展。总体来说,英文的路径自然语言处理侧重于提取路标名词和方位词,然后通过已有的地图,进行路径规划,自然语言的处理只涉及到句法层面。自然语言处理仍然是一个辅助性的工具,更多的依靠路径规划算法来提取路径。
因此,迫切的需要一种更加智能,既不需要依靠高精度的地图,也不需要提前输入手绘地图的路径自然语言处理方法,来实现路径提取。
发明内容
发明目的:为了克服现有技术中存在的不足,本发明提供一种面向室内智能机器人导航的路径自然语言处理方法,实现了既不需要依靠高精度的地图,也不需要提前输入手绘地图的路径自然语言处理方法,来实现路径提取。
为解决上述技术问题,本发明采用的技术方案是:
一种面向室内智能机器人导航的路径自然语言处理方法,包括以下步骤:
步骤一,收集路径自然语言的语料,分析语料的句法,提出句法结构,根据句法结构提出表示名词性路标的语义组块NL、表示动词性路标的语义组块VL、表示介词性路标的语义组块PL、表示方位转换模块的语义组块DTM、表示基于参照物的方位转换模块或者间接方位转化模块的语义组块IDTM、表示与方位无关的动词短语的语义组块VP、表示路径执行主体的语义组块ROBO;
步骤二,对收集的路径自然语言的语料进行名词实体标注构造名词实体语料库,对收集的路径自然语言的语料进行名词短语标注构造名词短语语料库,对收集的路径自然语言的语料进行语义组块标注构造语义组块语料库;
步骤三,构造层叠条件随机场,所述层叠条件随机场包括底层的条件随机场和高层的条件随机场,通过底层的条件随机场对名词短语语料库中的语料进行训练,得到名词短语语料的特征参数,通过高层的条件随机场对语义组块语料库中的语料进行训练,得到语义组块语料的特征参数;构造条件随机场,对名词实体语料库中的语料进行训练,得到名词实体语料的特征参数;
步骤四,对生语料进行词性标注;
步骤五,识别生语料中的名词短语,然后在识别生语料中的名词短语的基础上识别生语料中的语义组块,具体步骤如下:
1)用名词短语语料的特征参数识别已经标注词性的生语料中的名词短语;
2)用语言学规则对名词短语进行辅助处理,所述的辅助处理为检查每个名词短语前后三个词以内的词,如果有词可以成为名词短语中的成分,则将该词纳入名词短语中;
3)将识别的名词短语进行替换;
4)将替换所得的生语料用语义组块语料的特征参数进行语义组块的识别;
步骤六,引入名词实体关系推理方法获取名词短语中名词实体之间的关系,具体步骤如下:
1)用名词实体语料的特征参数识别已经标注词性的生语料中的名词实体;
2)识别包含在名词短语内表示路标的名词实体和修饰路标的名词实体:
当名词短语由单个名词实体构成时,名词实体直接认为表示路标;
当名词短语包括若干个名词实体时,将任意两个识别的名词实体A、B组合,由贝叶斯公式推导公式推导所得得:
当A和B并列时
当A和B为偏正关系时
P(R|Ω(A,B))≈P(fA|R)·P(fB|R)·P(fC|R)·P(fD|R)·P(fP|R)·P(R)公式2
计算概率P(RA→B),P(RB→A),P(RB=A)的值,三者中最大的值对应的名词实体关系即为所求;
其中A→B表示A依赖于B,B→A表示B依赖于A,B=A表示A和B并列,R表示A和B之间的关系,RA→B、RB→A、RA=B表示对应A和B之间三种关系,Ω(A,B)表示A和B之间的特征,fA、fB、fC、fD、fP表示名词实体关系的特征:fA、fB表示名词归类,fC表示两个实体名词之间的连词,fD表示两个实体名词之间的“的”,fP表示两个实体名词之间的相对位置;
步骤七,生成路径,具体步骤如下:
1)结构化定义路径,定义路径S=∪pi,pi={ri,fi},ri=(xi,yi),fi={l_fi,di,l_bi},其中pi为路径单元,ri为路径单元向量,xi为x轴的坐标,yi为y轴的坐标,fi为路径的导航辅助信息,l_fi为向前路标,l_bi为向后路标,di为距离信息,i=1,2,…n,n为语义组块数量;
2)提取语义组块中的信息,通过提取的信息提取路径单元,具体步骤如下:
a)采用槽体填充方法提取语义组块中的信息;
b)提取路径单元步骤如下
(1)输入一个语义组块;
(2)判断当前语义组块是不是路标语义组块,如果不是则转到(7),如果是则转到(3);
(3)将当前语义组块中的路标赋值给向后路标l_bi;
(4)如果当前语义组块是第一个语义组块,ri=r_d,r_fi=ri,其中r_d=(0,1)为默认的路径向量,r_fi为用来保存前一个路径单元向量的向量,保存pi;否则转到(5);
(5)判断前一个语义组块是不是DTM或者IDTM,如果是则保存pi;如果不是,则ri=r_fi,保存pi;
(6)判断当前语义组块是不是最后一个语义组块,如果不是,则转向(1);如果是,则结束;
(7)如果是DTM组块,则转到(8),如果不是则转到步骤(18);
(8)如果当前语义组块不包含方向,则转向(9),反之则转向(14);
(9)如果当前语义组块是第一个语义组块,ri=r_d,其中r_d=(0,1)为默认的路径向量,否则计算ri;
(10)如果当前语义组块包含距离,值为l,则di=1,ri=ri*l,否则,di=0;
(11)如果前一个语义组块是DTM,转到(12),否则转到(13);
(12)如果i>1且di-1值为1,则ri=r_fi+ri,保存pi,转到(6);如果di-1值不为1,保存pi,转到(6);
(13)如果后一个语义组块不是路标语义组块或者当前语义组块为最后一个语义组块,保存pi,转向(6),否则直接转向(6);
(14)判断当前语义组块内部是不是带明确的旋转角度,如果没有则转到(15),如果有则转到(17);
(15)判断当前语义组块是否是第一个语义组块,如果是则通过判断方位词确定ri,如果不是,则通过r_fi和方位词来确定ri;
(16)如果当前语义组块包含距离,值为l,则di=1,ri=ri*l,转到(13),否则,di=0转到(13);
(17)如果当前语义组块是第一个语义组块,则利用旋转角度确定ri,反之利用r_fi和旋转角度确定ri,转到(16);
(18)如果是IDTM组块,则转向(19),否则结束;
(19)将IDTM组块中的向前路标赋值给l_fi,向后路标路标赋值给l_bi,转到(8)。
3)识别归类方位词;
4)连接路径单元生成路径。。
有益效果:本发明通过分析收集到的路径自然语言的语料,提出句法结构,在此基础上构造层叠条件随机场,提取生语料中名词短语,然后提取生语料中的语义组块,引入名词实体关系推理方法获取名词短语中名词实体之间的关系,最后提取路径单元,连接路径单元生成路径;既不需要依靠高精度的地图,也不需要提前输入手绘地图,直接从路径自然语言中提取路径,更加智能。
附图说明
图1为路径自然语言的处理流程图。
图2为提取路径单元的流程图。
图3为例2的路径图。
图4为例3的路径图。
图5为例4的路径图。
图6为例5的路径图。
具体实施方式
下面结合附图对本发明作更进一步的说明。
如图1和2所示,一种面向室内智能机器人导航的路径自然语言处理方法,包括以下步骤:
步骤一,收集路径自然语言的语料,分析语料的句法,提出句法结构,根据句法结构提出表示名词性路标的语义组块NL、表示动词性路标的语义组块VL、表示介词性路标的语义组块PL、表示方位转换模块的语义组块DTM、表示基于参照物的方位转换模块或者间接方位转化模块的语义组块IDTM、表示与方位无关的动词短语的语义组块VP、表示路径执行主体的语义组块ROBO。
步骤二,对收集的路径自然语言的语料进行名词实体标注构造名词实体语料库,对收集的路径自然语言的语料进行名词短语标注构造名词短语语料库,对收集的路径自然语言的语料进行语义组块标注构造语义组块语料库;其中三个语料库中的句子完全一致,只是标注的对象不同,如下:
例1:“向厨房方向走,经过客卫然后向右拐,一直向前走,走到主卧进入主卧,然后走向主卧的斜对角,进入书房”;
名词实体标注:“向/p[厨房/n]NL方向/n走/v,/wd经过/p[客/ng卫/ng]NL然后/c向/p右/f拐/v,/wd一直/d向/p前/f走/v,/wd走/v到/v[主/ag卧/n]NL进入/v[主/ag卧/n]NL,/wd然后/c走向/v[主/ag卧/n]NL的/ude1斜/a[对角/n]NL,/wd进入/v[书房/n]NL”;其中,p表示介词,n表示名词,v表示动词,c表示连词,f表示方位词,ag表示形容词性语素,a表示形容词,wd表示逗号,ng表示名词性语素,udle表示“的”;
名词短语语标注:“向/p[厨房/n]NL方向/n走/v,/wd经过/p[客卫/n]NL然后/c向/p右/f拐/v,/wd一直/d向/p前/f走/v,/wd走/v到/v[主/ag卧/n]NL进入/v[主/ag卧/n]NL,/wd然后/c走向/v[主/ag卧/n的/ude1斜/a对角/n]NL,/wd进入/v[书房/n]NL”;
语义组块标注:“[向/p厨房/n方向/n走/v]DTMC,/wd[经过/p名词/n]PL然后/c[向/p右/f拐/v]DTM,/wd一直/d[向/p前/f走/v]DTM,/wd[走/v到/v名词/n]VL[进入/v名词/n]VL,/wd然后/c[走向/v名词/n]VL,/wd[进入/v书房/n]VL”;
在语义组块标注中,PL,VL等组块中出现了“名词/n”,这是将名词短语语标注中的名词短语进行了替换,但是一部分比较简单的名词短语没有替换。
步骤三,构造层叠条件随机场(周俊生,戴新宇,尹存燕,陈家骏.基于层叠条件随机场模型的中文机构名自动识别[J].电子学报,2006(5):804-809),所述层叠条件随机场包括底层的条件随机场和高层的条件随机场,通过底层的条件随机场对名词短语语料库中的语料进行训练,得到名词短语语料的特征参数,通过高层的条件随机场对语义组块语料库中的语料进行训练,得到语义组块语料的特征参数;构造条件随机场,对名词实体语料库中的语料进行训练,得到名词实体语料的特征参数;由于语料库比较小,条件随机场的训练效率低下等问题并不突出,因此直接使用开源的CRF++程序包进行训练,其中训练的语料将按照IOB2标记方法进行标记。
步骤四,对生语料进行词性标注;词性标注直接使用中科院自然语言研究所的ICTCLAS系统,通过测试总体来讲符合使用的要求。
步骤五,识别生语料中的名词短语,然后在识别生语料中的名词短语的基础上识别生语料中的语义组块,具体步骤如下:
1)用名词短语语料的特征参数识别已经标注词性的生语料中的名词短语;由于语料库规模较小,训练复杂度有限,训练时间有限,因此使用了尽可能多的特征,使用的特征模板如表1所示。
表1特征模板
2)用语言学规则对名词短语进行辅助处理,所述的辅助处理为检查每个名词短语前后三个词以内的词,如果有词可以成为名词短语中的成分,则将该词纳入名词短语中。
3)将识别的名词短语进行替换;替换操作如例1。
4)将替换所得的生语料用语义组块语料的特征参数进行语义组块的识别;所使用的特征模板如表5.1所示
步骤六,引入名词实体关系推理方法获取名词短语中名词实体之间的关系,具体步骤如下:
1)用名词实体语料的特征参数识别已经标注词性的生语料中的名词实体,使用的特征模板如表1所示。
2)识别包含在名词短语内表示路标的名词实体和修饰路标的名词实体。
当名词短语由单个名词实体构成时,名词实体直接认为表示路标。
当名词短语包括若干个名词实体时,将任意两个识别的名词实体A、B组合,定义A→B表示A依赖于B,B→A表示B依赖于A,B=A表示A和B并列,R表示A和B之间的关系,RA→B、RB→A、RA=B表示对应A和B之间三种关系,Ω(A,B)表示A和B之间的特征,Ω′(A,B)表示A和B互换位置后A和B之间的特征,fA、fB、fC、fD、fP表示名词实体关系的特征:fA、fB表示名词归类(或者分别表示A、B的父概念),在路径自然语言中,名词实体大都是具体实物或者空间方位概念,因此把名词按照物理空间的大小分为:1类名词,较大空间名词,例如:卧室,走廊等;2类名词,具体实物名词,例如:电视,椅子等;3类名词,指代部位名词,例如:边缘,头部等等;4类名词,其它;fC表示两个实体名词之间的连词;fD表示两个实体名词之间的“的”;fP表示两个实体名词之间的相对位置;fP′表示两实体名词之间互换位置。
由贝叶斯公式推导公式得:
我们默认各个特征之间的关系式相互独立,则:
Ω(A,B)=fAfBfCfDfP
故可得:
当A=B时,由语法知识可知,即使A,B的相对位置发生变化,也应该不影响之间的关系,所以概率P(RA=B|Ω(A,B))不会发生变化,所以有:
当PA>PB时,P(RA=B|Ω(A,B))=P1Ω(A,B)=fAfBfCfDfP
当PA<PB时,P(RA=B|Ω′(A,B))=P2Ω′(A,B)=fAfBfCfDfP′
PA,PB分别表示名词实体A,B在名词短语中的位置,因为位置不影响条件概率大小,所以P1=P2,则可得:
因为P(fp|R)与P(fp′|R)分别表示A,B互换位置之后的概率,因此有:
P(fp|R)+P(fp′|R)=1
故:
当A和B并列时可得
当A和B为偏正关系时可得
P(R|Ω(A,B))≈P(fA|R)·P(fB|R)·P(fC|R)·P(fD|R)·P(fP|R)·P(R)公式2
由公式1和公式2分别计算P(RA→B),P(RB→A),P(RB=A)的值,三者中最大的值对应的那个名词实体关系即为所求。
对名词实体关系做推导试验,验证其准确性:
为了便于训练和推导,对各特征fA、fB、fC、fD、fP进行量化:
在训练时通过查询词典库来确定特征的值,fB取值同上。
由于复杂名词短语的数量有限,采用如下方法进行相关概率的求解(瓦苏德万,西格沃特.贝叶斯空间概念化和为语义地图地点分类的移动机器人[J].机器人技术和自动系
统,2008(56):522-537)
其中,P(ft=j|R)表示当A,B关系为R时,特征ft值为j的概率,其中j为整数,ft∈{fA,fB,fC,fD},t为集合{fA,fB,fC,fD}中元素的个数,表示在语料库中,特征ft值为j时出现的次数,NR为A,B关系R在语料库中出现的次数,δ是一个较小的值,防止数据稀疏的参数,这里我们赋值为0.0001。
为了获得各个特征对应的概率,首先将语料中的所有非单个名词实体的名词短语标注出表示路标的名词实体和修饰路标的名词实体,然后利用以上量化的特征统计出现的特征种类及其数量,最后利用公式3计算其对应的概率,结果如下:
表2A是不同词性时A、B所对应的概率
fA=0 | fA=1 | fA=2 | fA=3 | |
P(fA|RA=B) | 0.0483886 | 0.935482 | 1.6129*10-6 | 0.0161306 |
P(fA|RA→B) | 0.0476205 | 0.730158 | 0.174604 | 0.0476205 |
P(fA|RB→A) | 0.523809 | 0.460318 | 1.5873*10-6 | 0.0158746 |
表2表示在存在两个名词实体A、B时,A是不同词性时A、B所对应的概率。其中第一排表示A和B并列关系的概率,第二排表示A依赖于B的概率,第三排表示B依赖于A的概率。
表3A、B之间存在连词和存在“的”时A、B之间的关系对应的概率
表3中分别表示两个名词实体A、B之间存在连词和存在“的”时A、B之间的关系所对应的概率,这里主要关注A、B是否是并列关系,表第一排表示A、B是并列关系时所对应的概率,第二排表示A、B为非并列关系时的概率。
表4名词位置的概率
fP=0 | fP=1 | |
P(fA|RB→A) | 0.999998 | 1.5873*10-6 |
P(fA|RA→B) | 1.5873*10-6 | 0.999998 |
表4表示位置对名词依赖性的影响,第一列表示A的位置在B之前时A,B之间所对应的依赖关系的概率。第二列表示A的位置在B之后时所对应的概率。这样的关系也符合我们的普遍认识,一般来讲位置靠前的名词都是修饰后面的。
利用以上各个概率进行测试,测试中所用的11个测试样本为均能准确地推导出来,准确率为100%。总的来说我们收集的样本还比较简单,一般一个名词短语中名词实体的数量还不超过4个因此推理的难度比较小。
步骤七,生成路径,具体步骤如下:
1)结构化定义路径,定义路径S=∪pi,pi={ri,fi},ri=(xi,yi),fi={l_fi,di,l_bi},其中pi为路径单元,ri为路径单元向量,xi为x轴的坐标,yi为y轴的坐标,fi为路径的导航辅助信息,l_fi为向前路标,l_bi为向后路标,di为距离信息,i=1,2,…n,n为语义组块数量;
2)提取语义组块中的信息,通过提取的信息提取路径单元,具体步骤如下:
a)采用槽体填充方法提取语义组块中的信息;在此方法中我们主要关注路标的名词,距离,角度等信息。
语义组块NL,VL,PL主要是用于提取路标相关的信息,例如,名称,大小,颜色等等。这些语义组块统称为路标相关语义组块,但是现阶段我们只关心路标的名称,此路标相关语义组块的模板为定义如表5。
表5路标相关语义组块的模板
槽名 | 注释 |
序号 | 表示该语义组块在句子中的序号 |
表示路标的名词实体 | 表示路标的名词实体,数量可以大于一 |
修饰路标的名词实体 | 修饰路标的名词实体,数量可以大于一 |
在填充路标相关语义组块时,先获得该语义组块内部的名词实体,然后确定语义组块内部的表示路标的名词实体和修饰路标的名词实体,然后逐个填入槽中。
DTM模块中,主要提取距离,方向,转弯角度等信息,模板定义如表6。
表6DTM模块的模板
槽名 | 注释 |
序号 | 表示该语义组块在句子中的序号 |
方向 | 包含的关于方向的词,例如:左,南等 |
动作 | 有些动作本身包含动作,例如:转弯,掉头等等 |
数量 | 距离,或者转弯的角度 |
单位标示 | 表示量词属性的单位,例如:公里,度(角度) |
副词 | 表示动作的幅度或者属性 |
在填充DTM的模板时,主要是依靠词性来确定哪个词填到哪个槽中:
(1)词性为f(方位词),s(处所词)的词就填充到“方向”槽中。
(2)词性为v(动词),vi(内动词),vn(名动词),vf(趋向动词)则填充到“动作”槽中。
(3)词性为m(数词)则填充到“数量”槽中。
(4)词性为q(量词),mq(数量词),,qv(动量词)则填充到“单位标示”槽中。
(4)词性为d(副词)则填充到“副词”槽中。
其中“数量”和“单位标示”的次序一对一的,例如短语“走10米右转45度”,填槽时就需要先填入“10”“米”,然后再分别填进“45”,“度”。
IDTM模块,主要提取路标名称,距离,方向,转弯角度等信息,模板定义如表7。
表7IDTM模块的模板
IDTM的填槽和DTM类似,主要是依靠词性来确定词填到哪个槽中:
(1)对IDTM中出现在靠前位置的名词短语采用表5中的槽,进行填充,其结果即为表7中的“前向路标”;“后向路标”的处理方法相同。
(2)表7中和表6中相同名称的槽的填充方法是相同的。
(3)词性为p(介词)的词填充到“介词”槽中。
b)提取路径单元步骤如下:
(1)输入一个语义组块;
(2)判断当前语义组块是不是路标语义组块,如果不是则转到(7),如果是则转到(3);
(3)将当前语义组块中的路标赋值给向后路标l_bi;
(4)如果当前语义组块是第一个语义组块,ri=r_d,r_fi=ri,其中r_d=(0,1)为默认的路径向量,r_fi为用来保存前一个路径单元向量的向量,保存pi;否则转到(5);
(5)判断前一个语义组块是不是DTM或者IDTM,如果是则保存pi;如果不是,则ri=r_fi,保存pi;
(6)判断当前语义组块是不是最后一个语义组块,如果不是,则转向(1);如果是,则结束;
(7)如果是DTM组块,则转到(8),如果不是则转到步骤(18);
(8)如果当前语义组块不包含方向,则转向(9),反之则转向(14);
(9)如果当前语义组块是第一个语义组块,ri=r_d,其中r_d=(0,1)为默认的路径向量,否则计算ri;
(10)如果当前语义组块包含距离,值为l,则di=1,ri=ri*l,否则,di=0;
(11)如果前一个语义组块是DTM,转到(12),否则转到(13);
(12)如果i>1且di-1值为1,则ri=r_fi+ri,保存pi,转到(6);如果di-1值不为1,保存pi,转到(6);
(13)如果后一个语义组块不是路标语义组块或者当前语义组块为最后一个语义组块,保存pi,转向(6),否则直接转向(6);
(14)判断当前语义组块内部是不是带明确的旋转角度,如果没有则转到(15),如果有则转到(17);
(15)判断当前语义组块是否是第一个语义组块,如果是则通过判断方位词确定ri,如果不是,则通过r_fi和方位词来确定ri;
(16)如果当前语义组块包含距离,值为l,则di=1,ri=ri*l,转到(13),否则,di=0转到(13);
(17)如果当前语义组块是第一个语义组块,则利用旋转角度确定ri,反之利用r_fi和旋转角度确定ri,转到(16);
(18)如果是IDTM组块,则转向(19),否则结束;
(19)将IDTM组块中的向前路标赋值给l_fi,向后路标路标赋值给l_bi,转到(8)。
3)识别归类方位词;
路径自然语言中的方位一般分为三种:1.相对方位,例如:前,后,左,右等,这类方位涉及到方位的推导;2.绝对方位,例如:东,西,南,北等,这类方向不做处理,机器人导航时将靠硬件识别,这里不加讨论;3.间接方位,一般用物体指代,例如:“从书房走到卧室”这里书房和卧室的位置关系没有明确指出来,但是人一般都能理解其方位是由书房指向卧室,这类方位的识别需要再导航时确定方向,这里默认方向都是向前。
对于相对方位,参考笛卡尔坐标系,当机器人没有运动时,定义与Y轴正方向相同的方向为“前”,X轴正方向相同的方向为“右”。则可以用单位向量量化表示各个方向如表8所示。
表8单位向量量化表示各个方向
当机器人开始运动时,以顺时针方向为正,逆时针方向为负定义转过的角度可以得表9。
表9相对方位的角度变化
设单位向量di=(xi,yi)为机器人运行过程中在第i(i=1,2,…,n)个路径单元内相对上一路径单元的方向,则机器人朝向推导规则如下:
1.当机器人还未启动时,机器人朝向为d0,根据路径自然语言的描述,d0值可以从表2中得到。
2.当机器人启动之后,若第i个路径单元的相对方位变化为αj,j=1,2,…,8则di+1的值可以由向量旋转公式推导得公式。
在实际的处理过程中,方位词的同义词较多。为了简化处理,本方法定义了方位词同义词词典,共有方位词151个,在处理过程中将所有同义的词进行归类,然后转化成对应的标准同义。
4)连接路径单元生成路径。
每一个路径单元中的路径ri=di·li,其中di表示第i个路径单元方向的单位向量,li表示该路径单元的距离,如果该路径单元中没有距离信息,则用单位距离表示,如果有则按照实际距离表示。设L为S所对应的运行路线。则L=∪ri,表示由ri首尾相接形成的路线。例2:一条路径由三个路径单元组成,r1=(1,0),r2=(0,1),r3=(1,0),则对应的L如图3所示,向前路标和向后路标则作为向量的定点处理。
按照以上所述的步骤做如下试验:
例3:生语料“先直走,碰到椅子后右拐,沿着L型柜向前走到吉他处左拐,再在饮水机前左拐并直走至盆景处。”
名词实体提取的结果为:
先/d直/d走/v碰到/v[椅子/n]NL后/f右/f拐/v沿着/p[L/x型/k柜/ng]NL向前/vi走/v到/v[吉他/n]NL处/n左/f拐/v再/d在/p[饮水/n机/ng]NL前/f左/f拐/v并/cc直/d走/v至/p[盆景/n处/n]NL;其中x表示字符串,d表示副词,cc表示并列连词,k表示后缀;
名词短语处理结果为:
先/d直/d走/v碰到/v[椅子/n]NL后/f右/f拐/v沿着/p[L/x型/k柜/ng]NL向前/vi走/v到/v[吉他/n处/n]NL左/f拐/v再/d在/p[饮水/n机/ng]NL前/f左/f拐/v并/cc直/d走/v至/p[盆景/n处/n]NL;
语义组块提取的处理结果为:
“[先/d]VL[直/d走/v]DTM[碰到/v名词/n]VL后/f[右/f拐/v]DTM[沿着/p名词/n向前/vi]DTMC[走/v到/v名词/n]VL[左/f拐/v]DTM再/d[在/p名词/n]PL前/f[左/f拐/v并/cc直/d走/v]DTM[至/p名词/n]VL”;
从以上语义组块提取的结果可知,总共提取出10个语义组块,其中,第一个组块“[先/d]VL”为误识别,其余都正确。按照语义提取的方法,可以得到语句中的关键信息如下:“直走”,“椅子”,“右”,“拐”,“L型柜子”,“前”,“吉他”,“左”,“饮水机”,“左拐”,“直走”,“盆景”。
按照每个路径单元只能有一个方向的原则,将上述关键信息组织成相应的路径单元:
(1)“前”,“椅子”
(2)“右”,“L型柜子”
(3)“前”,“吉他”
(4)“左”,“饮水机”
(5)“左”,“盆景处”
默认机器人面向前方,则可以计算出路径的路线,如图4所示。
例4:“先往前走2米,向右转前进2米,再次向右转,前进3米,再向左转前进3米,向左转向前进5米停下”。形成的路径如图5所示。
例5:“向前走到椅子处右拐前进,经过L型柜子后朝斜前方椅子前进,然后左转一定角度,从机器人与电视柜之间的路走向终点”。形成的路径如图6所示。
例4和例5的处理过程与例句3相似。其中例4种出现了“虚拟路标”,这是里表示路径方向发生改变的情形,便于机器人导航。例5则是反映了名词短语处理的结果,其中“机器人”和“电视柜”都是用来修饰路的名词,在图中反映了相关的位置关系。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (1)
1.一种面向室内智能机器人导航的路径自然语言处理方法,其特征在于:包括以下步骤:
步骤一,收集路径自然语言的语料,分析语料的句法,提出句法结构,根据句法结构提出表示名词性路标的语义组块NL、表示动词性路标的语义组块VL、表示介词性路标的语义组块PL、表示方位转换模块的语义组块DTM、表示基于参照物的方位转换模块或者间接方位转化模块的语义组块IDTM、表示与方位无关的动词短语的语义组块VP、表示路径执行主体的语义组块ROBO;
步骤二,对收集的路径自然语言的语料进行名词实体标注构造名词实体语料库,对收集的路径自然语言的语料进行名词短语标注构造名词短语语料库,对收集的路径自然语言的语料进行语义组块标注构造语义组块语料库;
步骤三,构造层叠条件随机场,所述层叠条件随机场包括底层的条件随机场和高层的条件随机场,通过底层的条件随机场对名词短语语料库中的语料进行训练,得到名词短语语料的特征参数,通过高层的条件随机场对语义组块语料库中的语料进行训练,得到语义组块语料的特征参数;构造条件随机场,对名词实体语料库中的语料进行训练,得到名词实体语料的特征参数;
步骤四,对生语料进行词性标注;
步骤五,识别生语料中的名词短语,然后在识别生语料中的名词短语的基础上识别生语料中的语义组块,具体步骤如下:
1)用名词短语语料的特征参数识别已经标注词性的生语料中的名词短语;
2)用语言学规则对名词短语进行辅助处理,所述的辅助处理为检查每个名词短语前后三个词以内的词,如果有词可以成为名词短语中的成分,则将该词纳入名词短语中;
3)将识别的名词短语进行替换;
4)将替换所得的生语料用语义组块语料的特征参数进行语义组块的识别;
步骤六,引入名词实体关系推理方法获取名词短语中名词实体之间的关系,具体步骤如下:
1)用名词实体语料的特征参数识别已经标注词性的生语料中的名词实体;
2)识别包含在名词短语内表示路标的名词实体和修饰路标的名词实体:
当名词短语由单个名词实体构成时,名词实体直接认为表示路标;
当名词短语包括若干个名词实体时,将任意两个识别的名词实体A、B组合,由贝叶斯公式推导公式推导所得:
当A和B并列时
当A和B为偏正关系时
P(R|Ω(A,B))≈P(fA|R)·P(fB|R)·P(fC|R)·P(fD|R)·P(fP|R)·P(R) 公式2
计算概率P(RA→B),P(RB→A),P(RB=A)的值,三者中最大的值对应的名词实体关系即为所求;
其中A→B表示A依赖于B,B→A表示B依赖于A,B=A表示A和B并列,R表示A和B之间的关系,RA→B、RB→A、RA=B表示对应A和B之间三种关系,Ω(A,B)表示A和B之间的特征,fA、fB、fC、fD、fP表示名词实体关系的特征:fA、fB表示名词归类,fC表示两个实体名词之间的连词,fD表示两个实体名词之间的“的”,fP表示两个实体名词之间的相对位置,;
步骤七,生成路径,具体步骤如下:
1)结构化定义路径,定义路径S=∪pi,pi={ri,fi},ri=(xi,yi),fi={l_fi,di,l_bi},其中pi为路径单元,ri为路径单元向量,xi为x轴的坐标,yi为y轴的坐标,fi为路径的导航辅助信息,l_fi为向前路标,l_bi为向后路标,di为距离信息,i=1,2,…n,n为语义组块数量;
2)提取语义组块中的信息,通过提取的信息提取路径单元,具体步骤如下:
a)采用槽体填充方法提取语义组块中的信息;
b)提取路径单元步骤如下
(1)输入一个语义组块;
(2)判断当前语义组块是不是路标语义组块,如果不是则转到(7),如果是则转到(3);
(3)将当前语义组块中的路标赋值给向后路标l_bi;
(4)如果当前语义组块是第一个语义组块,ri=r_d,r_fi=ri,其中r_d=(0,1)为默认的路径向量,r_fi为用来保存前一个路径向量的向量,保存pi;否则转到(5);
(5)判断前一个语义组块是不是DTM或者IDTM,如果是则保存pi;如果不是,则ri=r_fi,保存pi;
(6)判断当前语义组块是不是最后一个语义组块,如果不是,则转向(1);如果是,则结束;
(7)如果是DTM组块,则转到(8),如果不是则转到步骤(18);
(8)如果当前语义组块不包含方向,则转向(9),反之则转向(14);
(9)如果当前语义组块是第一个语义组块,ri=r_d,其中r_d=(0,1)为默认的路径向量,否则计算ri;
(10)如果当前语义组块包含距离,值为l,则di=1,ri=ri*l,否则,di=0;
(11)如果前一个语义组块是DTM,转到(12),否则转到(13);
(12)如果i>1且di-1值为1,则ri=r_fi+ri,保存pi,转到(6);如果di-1值不为1,保存pi,转到(6);
(13)如果后一个语义组块不是路标语义组块或者当前语义组块为最后一个语义组块,保存pi,转向(6),否则直接转向(6);
(14)判断当前语义组块内部是不是带明确的旋转角度,如果没有则转到(15),如果有则转到(17);
(15)判断当前语义组块是否是第一个语义组块,如果是则通过判断方位词确定ri,如果不是,则通过r_fi和方位词来确定ri;
(16)如果当前语义组块包含距离,值为l,则di=1,ri=ri*l,转到(13),否则,di=0转到(13);
(17)如果当前语义组块是第一个语义组块,则利用旋转角度确定ri,反之利用r_fi和旋转角度确定ri,转到(16);
(18)如果是IDTM组块,则转向(19),否则结束;
(19)将IDTM组块中的向前路标赋值给l_fi,向后路标路标赋值给l_bi,转到(8)。
3)识别归类方位词;
4)连接路径单元生成路径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310495299.8A CN103514157B (zh) | 2013-10-21 | 2013-10-21 | 一种面向室内智能机器人导航的路径自然语言处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310495299.8A CN103514157B (zh) | 2013-10-21 | 2013-10-21 | 一种面向室内智能机器人导航的路径自然语言处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103514157A true CN103514157A (zh) | 2014-01-15 |
CN103514157B CN103514157B (zh) | 2016-01-27 |
Family
ID=49896898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310495299.8A Expired - Fee Related CN103514157B (zh) | 2013-10-21 | 2013-10-21 | 一种面向室内智能机器人导航的路径自然语言处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103514157B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021225A (zh) * | 2016-05-12 | 2016-10-12 | 大连理工大学 | 一种基于汉语简单名词短语的汉语最长名词短语识别方法 |
CN106705974A (zh) * | 2016-12-30 | 2017-05-24 | 华北电力大学(保定) | 一种非受限路径自然语言的语义角色标注及语义提取方法 |
CN106840161A (zh) * | 2016-12-16 | 2017-06-13 | 海航生态科技集团有限公司 | 导航方法及装置 |
CN108664969A (zh) * | 2018-04-28 | 2018-10-16 | 西安电子科技大学 | 基于条件随机场的路标识别方法 |
US11341334B2 (en) | 2020-01-28 | 2022-05-24 | Here Global B.V. | Method and apparatus for evaluating natural language input to identify actions and landmarks |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0703435A1 (en) * | 1994-09-21 | 1996-03-27 | Nec Corporation | Moving object navigation apparatus |
US20090265298A1 (en) * | 2007-04-25 | 2009-10-22 | Boris Kaplan | Pointer-oriented object acquisition method for tangible treatment of information of the computer system which is based on one natural language and in which a received signal reaction of this computer system of artificial intelligence of a cyborg or an android, a corresponding association of this computer system of artificial intelligence of a cyborg or an android, a corresponding thought of this computer system of artificial intelligence of a cyborg or an android are substantiated |
CN102306145A (zh) * | 2011-07-27 | 2012-01-04 | 东南大学 | 一种基于自然语言处理的机器人导航方法 |
-
2013
- 2013-10-21 CN CN201310495299.8A patent/CN103514157B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0703435A1 (en) * | 1994-09-21 | 1996-03-27 | Nec Corporation | Moving object navigation apparatus |
US20090265298A1 (en) * | 2007-04-25 | 2009-10-22 | Boris Kaplan | Pointer-oriented object acquisition method for tangible treatment of information of the computer system which is based on one natural language and in which a received signal reaction of this computer system of artificial intelligence of a cyborg or an android, a corresponding association of this computer system of artificial intelligence of a cyborg or an android, a corresponding thought of this computer system of artificial intelligence of a cyborg or an android are substantiated |
CN102306145A (zh) * | 2011-07-27 | 2012-01-04 | 东南大学 | 一种基于自然语言处理的机器人导航方法 |
Non-Patent Citations (5)
Title |
---|
JOSE RAMON MEDINA等: "Towards interactive physical robotic assistance: Parameterizing motion primitives through natural language", 《2012 IEEE ROMAN:THE 21ST IEEE INTERNATIONAL SYMPOSIUM ON ROBOT AND HUMAN INTERACTION COMMUNICATION》 * |
MARJORIE SKUBIC等: "Testing an Assistive Fetch Robot with Spatial Language from Older and Younger Adults", 《2013 IEEE ROMAN:THE 22ND IEEE INTERNATIONAL SYMPOSIUM ON ROBOT AND HUMAN INTERACTION COMMUNICATION》 * |
张秀龙等: "基于组块分析的路径自然语言语义角色标注方法", 《东南大学学报(自然科学版)》 * |
李新德等: "一种基于受限自然语言处理的移动机器人视觉导航方法", 《机器人》 * |
陆新华等: "室内服务机器人导航方法研究", 《机器人》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021225A (zh) * | 2016-05-12 | 2016-10-12 | 大连理工大学 | 一种基于汉语简单名词短语的汉语最长名词短语识别方法 |
CN106021225B (zh) * | 2016-05-12 | 2018-12-21 | 大连理工大学 | 一种基于汉语简单名词短语的汉语最长名词短语识别方法 |
CN106840161A (zh) * | 2016-12-16 | 2017-06-13 | 海航生态科技集团有限公司 | 导航方法及装置 |
CN106705974A (zh) * | 2016-12-30 | 2017-05-24 | 华北电力大学(保定) | 一种非受限路径自然语言的语义角色标注及语义提取方法 |
CN106705974B (zh) * | 2016-12-30 | 2020-05-12 | 华北电力大学(保定) | 一种非受限路径自然语言的语义角色标注及语义提取方法 |
CN108664969A (zh) * | 2018-04-28 | 2018-10-16 | 西安电子科技大学 | 基于条件随机场的路标识别方法 |
CN108664969B (zh) * | 2018-04-28 | 2022-04-19 | 西安电子科技大学 | 基于条件随机场的路标识别方法 |
US11341334B2 (en) | 2020-01-28 | 2022-05-24 | Here Global B.V. | Method and apparatus for evaluating natural language input to identify actions and landmarks |
Also Published As
Publication number | Publication date |
---|---|
CN103514157B (zh) | 2016-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Teng et al. | Context-sensitive lexicon features for neural sentiment analysis | |
CN109213995B (zh) | 一种基于双语词嵌入的跨语言文本相似度评估技术 | |
CN112329467B (zh) | 地址识别方法、装置、电子设备以及存储介质 | |
CN104361127B (zh) | 基于领域本体和模板逻辑的多语种问答接口快速构成方法 | |
Zettlemoyer et al. | Online learning of relaxed CCG grammars for parsing to logical form | |
CN103514157B (zh) | 一种面向室内智能机器人导航的路径自然语言处理方法 | |
US8190628B1 (en) | Phrase generation | |
CN106777275A (zh) | 基于多粒度语义块的实体属性和属性值提取方法 | |
Khan et al. | Extracting Spatial Information From Place Descriptions | |
CN102567306B (zh) | 一种不同语言间词汇相似度的获取方法及系统 | |
CN106021227A (zh) | 一种基于状态转移与神经网络的汉语组块分析方法 | |
CN104899188A (zh) | 一种基于问题主题和焦点的问题相似度计算方法 | |
CN104572614A (zh) | 一种语言模型的训练方法及系统 | |
CN104572631A (zh) | 一种语言模型的训练方法及系统 | |
CN104731775A (zh) | 一种口语转换为书面语的方法和装置 | |
CN114281968B (zh) | 一种模型训练及语料生成方法、装置、设备和存储介质 | |
Berg et al. | Grounding language to landmarks in arbitrary outdoor environments | |
Zhu et al. | Catslu: The 1st chinese audio-textual spoken language understanding challenge | |
Lu et al. | Integrating answer set programming with semantic dictionaries for robot task planning | |
CN105786963A (zh) | 一种语料库的检索方法及系统 | |
CN104881399A (zh) | 基于概率软逻辑psl的事件识别方法和系统 | |
CN106705974B (zh) | 一种非受限路径自然语言的语义角色标注及语义提取方法 | |
CN115017425A (zh) | 地点检索方法、装置、电子设备以及存储介质 | |
CN114841353A (zh) | 一种融合句法信息的量子语言模型建模系统及其应用 | |
Moncla et al. | Automatic itinerary reconstruction from texts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160127 Termination date: 20201021 |
|
CF01 | Termination of patent right due to non-payment of annual fee |