基于超限学习机的非线性典型相关分析及应用

2018-09-19 01:05温晓红刘华平阎高伟孙富春
智能系统学报 2018年4期
关键词:识别率分类器典型

温晓红,刘华平,阎高伟,孙富春

(1. 太原理工大学 电气与动力工程学院,山西 太原 030600; 2. 清华大学 计算机科学与技术系,北京 100084;3. 智能技术与系统国家重点实验室,北京 100084)

典型相关分析(canonical correlation analysis,CCA)[1]是一种经典统计方法,旨在研究两组随机变量之间的相关性。通过极大化两组变量在线性投影空间中的相关性而达到特征融合的目的。CCA可用于对多模态数据的特征提取和融合[2-4],减小预测或识别问题中的样本复杂度[5],已成功应用于字符与人脸图像识别及多模态检索等任务中[6]。核典型相关分析(kernel CCA,KCCA)[7]是对CCA的扩展,解决了CCA只能进行线性映射的问题。通过隐性的非线性映射将两组特征分别映射到高维特征空间,借助于核技巧,以线性的方式提取变量的非线性特征。尽管KCCA可以通过核来学习变量之间的非线性关系,但其需要通过人工选择核函数,并且当训练集规模较大时,会造成巨大的计算消耗。

为了解决KCCA存在的问题,文献[8]提出深度典型相关分析 (deep CCA,DCCA),即用深度神经网络学习灵活的非线性相关表示,使得到的特征具有更高的相关度。文献[9]提出基于神经网络和自编码(auto encoder,AE)的深度典型相关自编码 (deep canonically correlated autoencoders,DCCAE),用于无标签多视图特征学习。但是这些方法在参数训练过程中,需要根据梯度下降法多次迭代至误差收敛,容易陷入局部最优,且计算消耗大。

另一方面,超限学习机(extreme learning machine,ELM)以结构简单、学习速度快和泛化能力好等优点[10],近年来已广泛应用于分类、回归等任务中。伴随着大数据时代的到来,关于数据潜在信息的挖掘引起了大量关注。然而ELM是一种单隐含层前馈神经网络,其浅层的网络结构难以发现数据深层抽象特征,因此基于ELM进行深度学习的算法相继提出。文献[11]提出了ELM-AE,首次将ELM用于数据的特征表示;文献[12]提出了基于ELM堆栈构成的深度表示模型;文献[13]将流行正则引入原始ELM-AE中,并提出一种新的深度神经网络;文献[14]使用深度ELM学习图像的非线性结构,用于图像分类中,并且在速度和准确率上表现出优越的性能;文献[15]将深度ELM模型用于多模态融合中,表明了ELM在多模态数据应用中的有效性。

为了解决基于传统深度神经网络的非线性CCA训练速度缓慢、无法快速收敛等问题,本文将ELM-AE引入CCA框架,用于多模态数据的特征提取。首先利用ELM-AE分别对每个模态进行多层无监督特征提取,然后极大化深层特征的相关性。实验结果表明,相比于线性CCA和DCCA,本文方法在取得高相关度的同时,还显著提升了算法的快速性。将该算法在康奈尔大学机器抓取数据集上进行验证,实验结果表明该方法有效提高了抓取点识别率。

1 相关工作

1.1 典型相关分析

1.2 深度典型相关分析

Andrew等[8]对CCA进行扩展改进,提出基于深度神经网络的CCA,即DCCA。给定模态X和Y,两个深度神经网络模型和分别用来学习X和Y的非线性结构,其中W=为神经网络模型参数。然后通过CCA将提取的特征和相关性极大化:

与CCA不同,DCCA没有固定的解,其参数需要通过梯度下降法优化,Andrew等采用批处理算法L-BFGS对参数进行调整。王等[16]随后提出采用随机梯度下降(stochastic gradient descent,SGD)对DCCA的权值进行优化。本文选择与后者提出的方法进行比较。

1.3 超限学习机

超限学习机是一类针对单隐含层前馈神经网络的学习算法。典型的单隐层前馈神经网络结构如图1所示,由输入层、隐含层和输出层组成。

图 1 ELM网络结构Fig. 1 The model structure of ELM

式中:H为神经网络的隐含层输出矩阵,T是网络期望输出值。

在训练过程中,对w和b随机初始化,且保持不变,而隐含层与输出层的连接权值β可以通过求解以下方程组获得:

式中:H+为隐含层输出矩阵H的Moore-Penrose广义逆。

2 基于超限学习机的非线性典型相关分析

本文提出基于ELM的非线性典型相关分析

(ELM-CCA),通过对两个模态分别进行复杂的非线性转换,最终使学习到的特征最大相关,其模型结构如图2所示。给定样本,N为样本个数,,因此可以得到两个模态的样本矩阵,分别为和,传统的CCA对X和Y进行线性变换,使变换后的两组数据相关性最大。实际中很多问题需要非线性变换来挖掘事物间潜在的非线性关系。而ELM-CCA算法可以实现非线性相关学习。

图 2 ELM-CCA模型结构Fig. 2 The model structure of ELM-CCA

ELM-CCA结构分为两部分:分别对每个模态进行多层非线性转换;极大化对两个模态多层非线性映射后特征的相关性。对于中的其中一个样本,设有k个隐含层,则第1个隐含层的输出为

通过深度ELM-CCA的训练,得到X和Y的非线性映射表示U和V,并且U和V的相关度最大。

2.1 无监督非线性映射

采用ELM-AE逐层训练得到每层之间的连接权值,即每层权值的训练都作为一个独立的ELM。在独立组件ELM-AE中,令其输出y=x,通过最小化输出的重构误差来训练权值。

图 3 ELM-AE无监督非线性映射Fig. 3 Unsupervised nonlinear learning of ELM-AE

2.2 极大化非线性映射的相关性

由于式(14)中A或B等比例变化时,目标函数的值不变,因此CCA定义了下式约束条件,此时,目标函数等价于:

经过矩阵A和B转换,使最终输出U和V实现最大相关,从而实现对X和Y的非线性典型相关分析学习。

ELM-CCA与DCCA具有相同的模型结构,二者均通过深度神经网络学习特征的非线性表示,然后对得到的深度特征进行线性CCA求解,最终将非线性模态相关性问题转化为线性相关分析。不同的是,在神经网络参数的优化过程中,DCCA首先由式(4)计算目标函数对深度特征的梯度,然后根据反向传播算法优化每层的权值。而在ELM-CCA中,每层之间的权值是通过前向逐层训练,由式(13)直接计算得到。相比DCCA,不需要反向微调,极大地提高了训练速度。

3 实验结果

为了验证本文提出的ELM-CCA算法在多模态特征提取中的有效性,我们在康奈尔大学抓取数据集[17]上开展了实验对比。机器抓取是指机器人根据传感器采集到的信息来推断夹持器放置的位置,抓取过程涉及感知、规划、识别和控制等问题。在实施抓取操作之前,机器人首先需要对物体可抓取部分做出准确的识别,因此本文将提出的算法应用于机器抓取识别任务中。

康奈尔大学抓取数据集包括由机器人视觉感知部位RGB-D相机采集到的一系列图像,图4给出了部分图像样本。相比传统的2-D图像,采用RGB-D相机能够在获取彩色图像的同时得到每个像素的深度信息,提高了机器人抓取的成功率[18]。文献[19]通过对物体深度信息进行处理,实现了目标抓取任务。近年来,相关文献的研究也表明了多模态特征融合的必要性[20],文献[21]提出采用多特征光学遥感图像提高目标的分类识别性能;文献[22]指出RGB-D融合的多应用场合。因此本文将对图像的颜色RGB模态和深度信息模态进行研究,寻找其相关信息。

图 4 康奈尔大学数据集样本Fig. 4 Example objects from the Cornell grasping dataset

3.1 实验数据

实验数据集包含885张RGB图像,这些图像来自于对240个不同物体的多角度拍摄。每张图片被多个已标签矩形框标记,共记8 019个,如图5所示,粗线对应夹持器抓取的位置。其中正矩形表示可抓取,负矩形表示当前状态不可抓取。

每个矩形框对应一个样本,同时对这些矩形内的图像提取颜色信息和深度信息,分别对应算法中的X和Y。颜色特征为三通道24×24像素的RGB图像,即。深度特征包含单通道图像深度信息,即。图5右所示为抓取识别任务的实验流程。

图 5 抓取识别任务流程Fig. 5 The process of grasping recognition tasks

3.2 实验结果

为了体现本文算法的优越性,将实验结果与线性CCA、分数阶嵌入典型相关分析(fractionalorder embedding canonical correlation analysis,FECCA)[4]和DCCA进行比较。分别在相关度、时间和抓取识别任务3个方面验证了ELM-CCA的优势。

CCA是对随机变量线性映射的统计方法,FECCA使用分子阶思想,对传统CCA类内和类间协方差进行重新估计,以减小训练样本噪声造成的样本协方差偏离真实数据的问题。DCCA和ELM-CCA都属于非线性映射方法。上述方法的目标都是极大化两个随机变量之间的相关系数。因此,首先对以上算法学习的特征进行相关度的比较。图6为不同特征下,4种方法在测试集下得到的前100个最相关典型变量的相关系数之和。从图中可以看出,ELM-CCA学习到的特征相关度始终高于其他算法。尤其在低维时表现突出,当输出维度为100时,采用ELM-CCA得到的相关系数之和相比前两者优势最大。输出维度较高时,相关度基本趋于一致。

图 6 前100个典型变量相关度随映射维度变化曲线Fig. 6 The correlation curve of the top 100 canonical variables with the increase of output dimensions

图7对DCCA和ELM-CCA在不同网络结构下,提取特征至100维时,进行了时间和相关度的比较,横坐标表示隐含层的规模。从图7(a)可以看出,随着网络层数和隐含层节点数增加,算法消耗的时间在显著增长。并且在每个网络结构下,DCCA算法消耗的时间都远远高于ELMCCA。当隐含层层数低于4层,且每层节点数在2 000以内时,ELM-CCA的训练时间可保持在10 s之内。而DCCA在隐含层结构为1 000-1 000时,训练时间已经达到466 s,可以看出ELM-CCA在训练速度上取得了很大的优势。图7(b)为在各网络结构映射下得到的特征相关度,ELM-CCA学习到的特征相关度均高于DCCA,随着网络层数增多,相关度逐渐增加,当隐含层层数为3层时,得到的结果最好。因此选择该网络结构提取多模态特征,用于机器人抓取点的识别任务。

图 7 不同网络结构下DCCA和ELM-CCA性能比较Fig. 7 The performance comparison of DCCA and ELMCCA with different network structures

通过对原始RGB和深度特征的非线性映射,可以得到两个模态特征的最终表示。我们分别将原始特征与经过CCA、DCCA和ELM-CCA算法提取后的特征输入到分类器中,通过得到的识别准确率比较不同算法的学习性能。为了使结果更有说服力,我们在不同的分类器上进行了实验,选择了基于统计理论的SVM和基于神经网络的ELM。此外,我们还比较了使用单模态特征(即RGB和Depth)和多模态特征融合(即RGBD)对识别率的影响。

表1和表2分别给出了使用SVM分类器和ELM分类器得到的分类结果。从表中可以看出,尽管使用了不同的分类器,得到的识别率趋势是相同的,经过特征提取后的识别率要高于直接使用原始特征进行识别的结果。而DCCA和ELMCCA经过非线性的学习后,体现出了比线性CCA和FECCA的优势,其中FECCA通过对类内和类间协方差重新估计,相比传统CCA,性能得到了改善。ELM-CCA在经过快速的特征学习后,相比DCCA,仍然取得了满意的识别率。图8所示为不同输出维度下,采用ELM分类器在RGBD特征输入下的识别结果。在低维时,识别率随着输出维度的增加显著提升,在输出维度达到20维时基本稳定,并且在不同维度下,ELMCCA始终体现了较好的识别效果。

表 1 在SVM分类器上得到的识别率Table 1 The recognition rate obtained by the SVM classifier %

表 2 在ELM分类器上得到的识别率Table 2 The recognition rate obtained by the ELM classifier %

图 8 抓取点识别率随输出维度的变化Fig. 8 The recognition rate of grasping point along with the increasing of output dimension

4 结束语

本文提出一种新的ELM-CCA非线性典型相关分析方法,并应用于机器人抓取点的识别任务中。对机器人采集到的原始图像提取RGB模态和深度模态,首先采用ELM分别的对每个模态进行无监督特征学习,得到非线性特征表示,然后将学习到的特征通过CCA极大化模态之间的相关性。该方法在保证了识别率较高的情况下还体现了强大的快速性。在实际应用中,为机器人实现快速准确的抓取操作奠定了基础。

猜你喜欢
识别率分类器典型
用最典型的事写最有特点的人
典型胰岛素瘤1例报道
基于特征选择的SVM选择性集成学习方法
基于真耳分析的助听器配戴者言语可懂度指数与言语识别率的关系
听力正常青年人的低通滤波言语测试研究*
基于深度优先随机森林分类器的目标检测
提升高速公路MTC二次抓拍车牌识别率方案研究
基于差异性测度的遥感自适应分类器选择
高速公路机电日常维护中车牌识别率分析系统的应用
典型催开百花香