一种基于轨迹模仿的机器人汉字书写学习方法技术领域
本发明属于人工智能和机器人学习领域,特别涉及基于轨迹匹配的模仿学习在机
器人书写技能中的实现,即一种基于轨迹模仿的汉字书写学习方法。
背景技术
随着机器人研究的不断发展,其运动行为越来越复杂,对于运动规律不易获取的
复杂运动,如汉字书写任务,传统的算法实现,即有经验的“专家”通过底层的运动控制获取
运动技能,变得越来越困难,甚至不可能实现。此时,机器人需要具备学习的能力,提高其智
能性,使其能够在传统方法不易或不能实现的情况下,找到有效的控制策略以完成复杂的
运动任务。
模仿学习(Imitation Learning)是机器人学习的一种方式,是机器人智能性的重
要体现,在机器人仿生学中占有重要地位。所谓模仿学习是指模仿者(机器人)通过“观察”
示教者(人或机器人)的运动行为,学习运动控制策略,进而获取运动技能。
根据模仿的生物仿生机制,机器人模仿学习可归结为行为获取、行为表征、行为再
现这三个问题,分别对应示教数据采集,提取行为特征进行表征学习和泛化输出的过程。表
征和泛化是模仿学习的重点,其典型方法有插值法,动态系统法及概率模型法,插值法能够
快速生成轨迹,但具有时间依赖性,对干扰敏感;动态系统法将运动建模为动态吸引子模
型,具有很强的鲁棒性,能够进行在线校正,但需要更多的示教信息;概率模型法通过建模
随机模型如高斯混合模型模型、隐马尔科夫模型、贝叶斯网络等,进行轨迹编码,具有很强
的编码和噪声处理能力,鲁棒性好,能够处理高维问题,实现复杂运动模仿。
基于轨迹匹配的模仿学习可用于复杂轨迹的表征泛化,建立感知和运动信息的非
线性映射,进而实现复杂运动技能的学习。书写是复杂轨迹的运动,其学习过程存在如下两
个问题:(1)连续性复杂轨迹的表征;(2)离散轨迹的生成。现有的方法,如底层运动控制、控
制图模型、递归神经网络,可用于书写技能的获取,但均不能有效解决以上问题,传统控制
较复杂,且泛化性能不足,不可移植,控制图模型能够生成离散轨迹,但对复杂轨迹的表征
能力不足,递归神经网络只能用于简单轨迹的再现。针对以上存在的问题及模仿学习的特
点,提出一种基于轨迹模仿的汉字书写学习方法,即采用基于高斯混合模型的模仿学习进
行书写轨迹的表征与泛化,实现书写技能的学习。
发明内容
本发明将轨迹模仿的思想应用于书写技能的学习,提出一种基于轨迹模仿的汉字
书写学习方法,通过高斯混合模型(Gaussian Mixture Model,GMM)对示教数据进行编码,
提取轨迹特征,通过高斯混合回归(Gaussian Mixture Regression,GMR)对数据重构,进而
实现轨迹可连续汉字书写技能的学习;在基本高斯混合模型的基础上进行了多任务扩展,
将其思想应用于离散轨迹的生成,实现了轨迹不可连续的汉字书写。本方法具有较好的编
码能力和抗干扰性,具有良好的汉字书写泛化效果。
根据模仿的仿生机制和机器人模仿学习的流程,构建了基于轨迹模仿的汉字书写
学习方法流程,如图1所示,机器人从示教者处获取示教数据,经GMM编码,提取行为的本质
特征,进行表征学习,之后,通过GMR泛化输出,实现行为再现。其中,GMM实现行为表征的过
程是通过贝叶斯信息准则(BIC)和EM算法进行模型参数的确定,以k均值对EM初始化。具体
流程如下:
(1)获取二维示教数据ξ={ξs,ξt},其中,ξs,ξt分别表示示教信息的空间值和时间
值。
(2)基于高斯混合模型(GMM)对示教数据进行编码学习,实现轨迹表征。
设第j个示教数据点为ξj={ξs,j,ξt,j},j={1,2,…,N},其中,N是单次示教包含的
数据点的个数,ξs,j是空间坐标值或节点角,ξt,j是时间值。假设每一个数据点ξj服从如下概
率分布:
其中,p(k)是先验概率,p(ξj|k)是条件概率分布,服从高斯分布,于是,整个示教
数据集合可以用高斯混合模型来表示,K即组成高斯混合模型的高斯分布的个数。
p(k)=πk (2)
其中,D是编码示教数据的GMM的维度。因此,高斯混合模型需要确定的参数是{K,
πk,μk,Σk},分别表示组成高斯混合模型的高斯分布的个数及第k个高斯分布的先验概率,
期望和方差。
2.1)K参数估计
K值的确定直接影响模型自由参数的个数,进而影响模型的复杂度,因此需要利用
模型选择准则,在模型复杂度和数据拟合性能最优之间作出权衡,找出最合适的K值。利用
贝叶斯信息准则(BIC)进行模型选择,通过最优化BIC指标函数SBIC对K值估计。
n(K)=(K-1)+K(D+1/2D(D+1)) (6)
其中,L(ξj)是高斯混合模型的对数似然函数,用来衡量模型对数据的表征性能,n
(K)是模型自由参数的个数,是对模型复杂度的度量。
2.2)EM算法估计参数{πk,μk,Σk}
采用EM算法对含隐含变量的参数估计问题进行求解,其本质上是一最大似然估计
问题,算法的思想是不断提高似然函数的下界,进而实现参数的优化。该算法分为两步:E步
固定参数,优化隐含变量的函数Q,这一步是定下界;M步是固定Q,优化参数,这一步是优化
提高下界。为防止陷入局部最优,k均值聚类被用于参数的初始化。
(3)基于高斯混合回归(GMR)对GMM学习的示教的数据进行重构,得到泛化的输出。
示教数据的ξt用作查询点,对应的重构空间值ξ′s利用GMR进行估计。已知p(ξj|k)
满足高斯分布,即其中,μk={μs,k,μt,k},分别是高斯
混合模型的第k个高斯分布的期望和协方差矩阵,均由空间值和时间值对应的期望和协方
差组成,则在给定ξt,k下,ξs,k的条件概率也满足高斯分布,即ξs,k|ξt,k~N(μ′s,k,∑′s,k),
μ′s,k和∑′s,k分别表示该高斯分布的期望和协方差。
μ′s,k=μs,k+Σst,k(Σt,k)-1(ξt,k-μt,k) (7)
Σ′s,k=Σs,k-Σst,k(Σt,k)-1Σts,k (8)
由(5)(6)可得,K个高斯成分的高斯混合模型的均值μ′s和方差Σ′s,其中ηk表示第
k个高斯分布的权重系数,p(ξt|i)是K个高斯分布中第i个高斯分布。
设高斯混合模型的回归函数为m(ξt),是给定时间值ξt下,空间值ξs下的期望E(ξs|
ξt),则
则均值μ′s就是要求的示教数据重构值,也即ξ′s=μ′s,最终得到泛化的数据点ξ′
={ξ′s,ξt}及用于提取任务约束的协方差矩阵Σ′s。泛化的数据点ξ′不包含在示教数据中,
但封装了示教行为的所有本质特征,在相关约束Σ′s下,能够生成平滑可靠的运动轨迹。
(4)获取书写的示教数据,将基于高斯混合模型的模仿学习应用于书写技能的学
习之中,通过高斯混合回归得到泛化的输出,实现轨迹可连续汉字书写。
4.1)采集汉字书写轨迹的二维示教点ξj=(ξjx1,ξjx2),其中,j={1,2…N},N是示
教点的数目,ξjx1 ξjx2分别表示二维平面上的空间坐标点,引入时间步ξt,得到最终的模型
训练数据如下表所示(部分截取)。第一行是时间步ξt,第二行是ξjx1,第三行是ξjx2。
1
2
3
4
5
6
7
8
9
10
11
12
0.3317
0.3569
0.3936
0.4005
0.4051
0.4142
0.4257
0.4509
0.4601
0.4716
0.4784
0.4858
0.8036
0.8153
0.8327
0.8356
0.8356
0.8356
0.8356
0.8356
0.8356
0.8827
0.8327
0.8298
将每个汉字视为一条连续的轨迹,构建高斯混合模型(GMM)对其进行学习,实现数
据的编码,对汉字“王”的书写,编码效果如图8所示,其中高斯混合模型中高斯分布的个数K
=8,即图中阴影分布的个数,每个阴影分布的×表示该高斯分布的期望,阴影表示该高斯
分布的方差。
之后通过高斯混合回归(GMR)进行轨迹数据的重构,得到泛化的输出,如图9所示,
实线是通过学习最终得到的一系列重构点,阴影表示数据的波动性。
以上分别完成了二维数据的学习和重构,然后,以时间步ξt为参考,将ξjx1ξjx2对应
输出,实现汉字的书写,如图10所示。
最后,引入均方差(Mean Squared Error,MSE)对模仿学习效果的进行分析,评价
其泛化性能。
4.2)对书写过程中由于干扰导致示教数据存在噪声引入的问题进行分析,通过
GMM可对多次示教进行同时编码的特性进行抗干扰处理,提取轨迹的本质特征,泛化得到一
般轨迹,提高方法的容噪性。所谓多次示教是多次教机器人学习同一汉字,得到多次示教数
据集,对这多个数据集进行同时编码学习。
(5)对GMM进行多任务扩展,针对复杂运动轨迹进行分解,通过多任务学习实现轨
迹不可连续汉字书写模仿。所谓多任务学习是对不同运动轨迹进行同时编码学习,与多次
示教不同,多次示教是对同一运动的多次(相似)轨迹进行同时编码学习。
针对汉字轨迹较复杂,一笔一划的特点,将一个复杂的汉字分解为若干部分,引入
多任务学习,分别对分解的每一部分进行轨迹编码和重构,实现多条离散轨迹的同时学习
与泛化,完成轨迹不可连续的汉字的书写。
(6)由轨迹表征和泛化得到书写轨迹的一般输出,经逆运动学转化,映射到机器人
的执行器空间,得到机器人节点角的信息,获得控制策略,进而实现机器人书写技能的学
习。
附图说明
图1基于轨迹模仿的汉字书写学习方法流程图
图2轨迹可连续的汉字“王”的编码与重构
图3汉字“机器人”的编码与重构
图4有噪声的单次示教编码学习
图5有噪声的多次示教编码学习
图6双任务学习
图7轨迹不可连续的汉字书写对比
图8编码效果图
图9轨迹数据的重构
图10汉字的书写实现
具体实施方式
利用手写板获取书写示教数据,将基于GMM的模仿学习应用于书写技能的学习之
中,通过GMR得到泛化的输出,实现轨迹可连续汉字书写。对GMM进行多任务扩展,针对复杂
运动轨迹进行分解,通过多任务学习对多条离散轨迹同时进行表征与泛化,实现轨迹不可
连续汉字书写模仿。最后,将轨迹模仿得到书写轨迹的泛化输出作为机器人末端执行器的
运动轨迹,经逆运动学转化,映射到机器人的执行器空间,得到机器人执行过程的节点角变
化信息,实现机器人书写技能的学习。
引入均方差(MSE)作为模仿学习效果的评价标准,如式(13)所示,对实验结果进行
定量说明:
xi为模仿学习算法重构得到的数据点与示教数据点的差值,为模仿学习算法重
构得到的数据点与示教数据点的差值的均值,MSE用来计算泛化输出与示教点的差异离散
程度,其值越小效果越好.
(1)轨迹可连续汉字书写
图2是利用基于GMM的模仿学习实现轨迹可连续汉字“王”的书写。图中,第一列表
示每一维(x1或x2)相对于时间步t的轨迹,第二列表示对应时间步t得到的二维空间轨迹。
其中,第一行是示教数据,第二行是经GMM编码的数据,本实验中K=6,最后一行是经GMR得
到的重构数据。为说明该方法的有效性,对具有复杂轨迹的汉字“机器人”进行书写实验,如
图3所示,该方法能够实现复杂轨迹的编码与重构,具有良好的泛化效果。
(2)噪声问题的研究及抗干扰性的解决方案
在书写过程,存在的一项大的问题就是书写过程的干扰,包括手的抖动,纸张的影
响等,因此,模仿学习的抗干扰直接影响书写技能的学习的成败。
如图4,5所示,分别表示有噪声的单次和多次示教编码学习,是对含噪声的复杂轨
迹曲线进行编码与复现,其中,噪声是红色线圈出部分。图4中,单次示教,由于噪声的存在,
重构曲线变形(黄色线圈出),不能有效地提取示教行为的本质特征。图5中,采用多次示教
的方式,能够消除噪声对重构曲线的影响,实现对示教行为的高效表征学习。该方法能够通
过对多次示教数据进行同时编码,消除噪声影响,具有较强的抗干扰性,能够有效提高方法
的容噪性和稳定性。
(3)基于多任务模仿学习的轨迹不可连续汉字书写
基于GMM的模仿学习进行汉字书写存在的一个问题是只能对连续轨迹进行编码学
习,而很多汉字的轨迹是不连续的,为解决该问题,本方法对GMM进行多任务扩展,通过多任
务学习实现轨迹不可连续汉字书写模仿。
3.1)基于GMR的多任务学习
GMM的训练数据可以归结为ξ={ξO,ξI},其中ξI是查询向量,ξO是编码向量,通过建
模概率分布p(ξO,ξI)进行GMM的训练,通过GMR估计条件期望E[p(ξO|ξI)]及相应的协方差矩
阵cov[p(ξO|ξI)]进行轨迹的重现。在基于GMM的机器人模仿学习中,示教数据是ξ={ξs,
ξt},即以空间位置向量ξs代替ξO,时间步ξt代替ξI,进行轨迹的学习。与基本方法加载二维数
据不同,多任务学习是以二维向量ξI作为查询向量,以多个二维向量ξO作为编码向量,通过
学习多维示教数据进行模型的训练,进行轨迹编码学习。
以双任务为例,构建4维(2×2)示教数据集合ξ={ξ1O,ξ2O,ξ1I,ξ2I},即
分别表示两个维度上的编码向量,分别表示两
个维度上的查询向量,建模GMM为
其它各变量的含义与式(3)相同,在轨迹重构过程中,以ξI为查询点,通过GMR估计
p(ξO|ξI)对余下的二维ξO进行学习,能够实现两组运动同时编码与再现,进行双任务学习,
如图6所示,是对两组不同运动进行同时编码与复现,第一行是示教数据,第二行是GMM编码
后的特征,第三行是GMR的重构复现。
将双任务推广到多任务,针对N任务,构建2N维(N×2)的示教数据ξ={ξ1O1,ξ2O1,
ξ1O2,ξ2O2…ξ1ON-1,ξ2ON-1,ξ1I,ξ2I},即ξO={ξ1O1,ξ2O1,ξ1O2,ξ2O2…ξ1ON-1,ξ2ON-1},由N-1个二维向
量组成,建模GMM,进行N组运动的同时编码学习,完成表征学习从二到多的
推广,实现多任务学习。
3.2)轨迹不可连续的汉字书写
GMM凭借其强大的轨迹编码能力,能够实现轨迹可连续的汉字书写,如图2所示,但
是对轨迹不可连续的汉字,如“大”,则不能完成任务,如图7第一列所示。本发明通过多任务
学习方式实现轨迹不可连续的汉字书写,其思想在于,轨迹不可连续的汉字可以通过分解
为一系列轨迹可连续的笔画,将每一笔画的书写模仿作为一个任务,则一个轨迹不连续的
汉字就可以通过多任务学习来实现,如“大”字可以分解为“一”、“丿”和“ㄟ”三部分,考虑空
间约束,用GMM编码后,通过GMR重构实现,如图7第二列所示,第一行是示教数据,第二行是
GMM编码,第三行是重构复现。
多任务学习符合针对复杂任务进行分解,建立运动基元库的高水平表征学习思
想,可以扩展的复杂任务的学习之中,具有良好的泛化能力。