本发明涉及图像识别技术领域,特别是关于一种基于胶囊参数优化的图像识别方法及系统。
背景技术:
随着大数据时代的到来和硬件计算能力的提高,图像识别技术发展迅速。但是放眼全局,仍处于早期阶段。在适应世界发展的同时也存在着适用性等问题。深度学习在图像识别领域中取得了优异的成绩,打破了传统模式识别和机器学习方法的局限性。但是深度网络所面临的一个重大问题之一是网络结构越来越复杂化,这将导致面临的网络结构越来越抽象。复杂的网络虽然能够带来图像识别的强劲性能,但是也伴随着一些负面的影响,例如对特定范围内的图像识别会存在过拟合或者对未知的图片识别产生错误率非常高的现象。
卷积神经网络能够保留图片的基本特征,类似人类的视觉原理,在图片分类、检索、目标定位检测等各个领域中都表现出惊人的准确性。虽说卷积神经网络在图像中应用广泛,但是就其本质来说,只是对物体的局部特征理解的过于深刻,而忽视了物体整体的空间结构,归其由是采用了池化策略的影响。池化策略能够有效地提升网络分类的鲁棒性,但也正是这种因素,破坏了图片原有细微的结构,例如位置、方向、大小等。cnn抛弃这些属性特征来最大地增加其特征检测能力,但是在特征理解上却大打折扣。同时,cnn需要大量的图像数据进行训练模型,需要耗费大量的空间保存所有数据的副本,从而产生大量资源浪费。因此需要更为有效的方法来进行日益复杂的图像识别分类。
技术实现要素:
针对上述问题,本发明的目的是提供一种基于胶囊参数优化的图像识别方法及系统,能够提高胶囊网络在复杂图像数据的识别准确率,不仅减少了低层冗余胶囊,还提高了网络的泛化能力。
为实现上述目的,本发明采取以下技术方案:
第一方面,本发明提供一种基于胶囊参数优化的图像识别方法,包括以下步骤:
步骤s1:将输入图像通过初级卷积层进行滤波操作进行初级特征提取,获得初级胶囊;
步骤s2:设计胶囊块卷积层,通过3d卷积核作为转换矩阵,使用较低水平的胶囊预测较高水平的胶囊,获得复杂数据的特征;
步骤s3:将复杂数据的特征进行整组形变后形成一个个低级胶囊,采用剪枝优化策略实现对低级胶囊的筛选,并基于筛选的低级胶囊预测高层胶囊;
步骤s4:通过数字胶囊对图像进行分类。
进一步地,所述步骤s1进行初级特征提取的过程包括:
步骤s11:采用多个初级卷积层对输入图像滤波进行操作获取图像的初级特征;
步骤s12:将初级特征进行特征形变及重组,形成一个个初级胶囊。
进一步地,所述步骤s2设计胶囊块卷积层的过程包括:
步骤s21:假设φl=(ml,ml,cl,nl)作为该层l的输入,其中,ml表示的是层l特征图的高度和宽度,cl代表的是层l的胶囊数目,nl表示的是层l的胶囊维度,φl 1=(cl 1,ml 1,ml 1,nl 1)作为该层l的输出;
步骤s22:层l的输入φl=(ml,ml,cl,nl)通过添加维度形成单个通道张量
步骤s23:将单个通道张量
步骤s24:使用3d卷积核作为转换矩阵,使用一组较低水平的胶囊预测较高水平的胶囊;
步骤s25:该预测通过3dsquash函数传递,将胶囊向量的长度限制在0和1之间。
进一步地,所述步骤s3剪枝优化参数策略具体包括:
步骤s31:将复杂数据的特征进行整组形变,形成一个个低级胶囊;
步骤s32:预测的高层胶囊vj中活性高的胶囊ui具有相对较大的耦合系数cij,设低层胶囊的矢量输出为:
ul={ui∈bd|i=1,2,...nl}
式中,bd表示的是维度的空间;其相应的活动水平通过squash函数获得表示为:
al={0≤ai≤1|i=1,2,...,nl};
ui的方向表示实体的姿态,ui的长度表示活动级别或实体存在的概率,并且
ai=||ui||;
步骤s33:设ai表示在a中第i个活跃的胶囊,对低层胶囊的所有胶囊进行排序,选择最活跃的k个低层胶囊连接下一层高层胶囊:
{i|ai≥a(k)}
步骤s34:获取这k个最活跃的低层胶囊的索引值,取得相应的k个低层胶囊,然后对其进行重新排序,使抽出的胶囊重组成新的活跃低层胶囊,使用动态路由算法预测高层胶囊。
第二方面,本发明还提供一种基于胶囊参数优化的图像识别系统,该系统包括:
初级卷积层单元,被配置为将输入的图像数据进行滤波操作,对数据进行初级特征提取;
胶囊块卷积层单元,被配置为设计胶囊块卷积层,通过3d卷积核作为转换矩阵,使用较低水平的胶囊预测较高水平的胶囊,获得复杂数据的特征表示;
胶囊筛选单元,被配置为将复杂数据的特征进行整组形变后形成一个个低级胶囊,采用剪枝优化策略实现对低级胶囊的筛选,并基于筛选的低级胶囊预测高层胶囊;
图像分类单元,被配置为通过数字胶囊对图像进行分类。
第三方面,本发明还提供一种处理设备,所述处理设备至少包括处理器和存储器,所述存储器上存储有计算机程序,所述处理器运行所述计算机程序时执行以实现所述的基于胶囊参数优化的图像识别方法。
第四方面,本发明还提供一种计算机存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现所述的一种基于胶囊参数优化的图像识别方法。
本发明由于采取以上技术方案,其具有以下优点:
1、本发明在图像识别中,能够提高复杂图像数据的识别准确率;并且能够有效处理胶囊网络层之间的连接关系,减少了低层冗余胶囊,提高了网络的泛化能力;
2、本发明提出的新胶囊网络的剪枝策略,对低层胶囊进行严格筛选,通过选择的高水平胶囊进行接下来的线性组合,并通过胶囊块卷积层的设计,实现低层胶囊与高层胶囊的跳跃连接,获取更加全面的高维特征,同时还能有效地解决胶囊中间层的学习抑制问题;
3、本发明通过对多个实际应用图像识别,大大减少计算量的同时,也大大减少了图像的训练时间;
综上,本发明能够利于简单且高效地处理复杂图像中的识别问题,降低时间与空间的复杂度,可以广泛应用于图像识别中。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。在整个附图中,用相同的附图标记表示相同的部件。在附图中:
图1是本发明胶囊参数优化的图像识别方法的连接方式示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施方式。虽然附图中显示了本发明的示例性实施方式,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
应理解的是,文中使用的术语仅出于描述特定示例实施方式的目的,而无意于进行限制。除非上下文另外明确地指出,否则如文中使用的单数形式“一”、“一个”以及“所述”也可以表示包括复数形式。术语“包括”、“包含”、“含有”以及“具有”是包含性的,并且因此指明所陈述的特征、步骤、操作、元件和/或部件的存在,但并不排除存在或者添加一个或多个其它特征、步骤、操作、元件、部件、和/或它们的组合。文中描述的方法步骤、过程、以及操作不解释为必须要求它们以所描述或说明的特定顺序执行,除非明确指出执行顺序。还应当理解,可以使用另外或者替代的步骤。
为了便于对本发明实施例的技术方案进行清楚描述,首先对本发明实施例中出现的技术术语进行详细定义和说明:
耦合系数:耦合系数cij从某种程度来说可以看成是一个概率分布,表示的是高层胶囊对于低层胶囊的需求度。cij具有明显的几个特征:耦合系数cij是非负值的标量,所有的耦合系数值都大于等于0。此外,对于每一个低层胶囊i,与它所连接的所有高级胶囊j,其耦合系数之和为1。耦合系数是动态变化的,它是由动态路由算法决定的,通过训练可以得到每个低层胶囊与之对应的高层胶囊之间的每个耦合系数值cij。
squash函数:为保证胶囊输出向量的长度,表示的是胶囊实体在当前输入中存在的概率,使用非线性挤压函数(squash)来确保短向量缩小到几乎为零长度,而长向量缩小到略低于1的长度,即长度的值压缩在[0,1)之间,向量的方向保持不变,如下所示:
其中,sj是输入向量,是传入函数squash的胶囊,低层胶囊经过加权求和之后得到的结果;vj是胶囊j的矢量输出,表示的是单个胶囊经过一个非线性的压缩函数squash,把其长度压缩在0到1之间。
动态路由算法:低层胶囊代表的是对象的基本实体,本发明需要一种方法来将信息传递到下一层适当的高层胶囊中,使用的是一种动态路由算法来实现。动态路由算法过程决定从低层胶囊的输出应该通过一个迭代过程进入下一个高层胶囊。这个机制是基于低层胶囊对高层胶囊的参数预测。预测是通过一个变换矩阵来计算的,当来自低层胶囊的多个预测与高层胶囊的输出一致时,该机制就被激活。
实施例一
如图1所示,本实施例提供的基于胶囊参数优化的图像识别方法,包括以下步骤:
步骤s1:将输入图像数据在初级卷积层中进行滤波操作,对数据进行初级特征提取。通过初级卷积层将像素转化成局部的特征输出,优选地,该层的激活函数使用relu。
具体地,上述,对数据进行初级特征提取的过程包括:
步骤s11:采用多个初级卷积层来对图像进行滤波操作获取图像初级特征,本层不使用池化操作,仅仅使用卷积操作。
步骤s12:将获取的初级特征,进行特征形变以及重组形成一个个初级胶囊层,初级胶囊层是以神经元为对象的卷积层,例如原先256个通道,每一个通道一个卷积核,可以获取256个特征,现在形变成通道数为32个,每个通道包含8个卷积核,也就是每个通道可以获取8个特征,总的获取特征的总量是不变的即32*8=256。
步骤s2:设计胶囊块卷积层,通过3d卷积核作为转换矩阵,使用一组较低水平(较低水平的定义是初级胶囊)的胶囊来预测较高水平(较高水平的定义是比初级胶囊高一层的胶囊)的胶囊。通过增加更多的卷积层来获取更抽象的特征,设计3d卷积核的目的是将局部的初级胶囊块转化为一个更加抽象的高级胶囊块。
具体地,设计胶囊块卷积层方法包括:
步骤s21:假设φl=(ml,ml,cl,nl)作为该层l的输入,其中,ml表示的是层l特征图的高度和宽度,cl代表的是层l的胶囊数目,nl表示的是层l的胶囊维度。φl 1=(cl 1,ml 1,ml 1,nl 1)作为该层l的输出。
步骤s22:层l的输入φl=(ml,ml,cl,nl)通过添加一个维度,形成单个通道张量
步骤s23:将单个通道张量
假设k∈(cl 1×nl 1),lk是层l的第k个核,进行卷积得到中间值(ml 1,ml 1,cl,cl 1×nl 1)。将(1,1,nl)用作3d卷积运算的步幅,来保证其通道数一致,其中卷积后的结果(ml 1,ml 1,cl,cl 1×nl 1)中的每个值θijt可以通过如下公式得到:
式中,ijt表示的是三维中θijt的脚标,pqr表示的是中间变量的脚标。
步骤s24:使用3d卷积核作为转换矩阵,使用一组较低水平的胶囊来预测较高水平的胶囊,框架图中的k表示的卷积核,w表示的通道数。
本实施例设计的胶囊块卷积由3层3d卷积进行连接,第一层的胶囊块卷积输出分为两条路线。其中的一条路线正常卷积,向下连接;而另外一条卷积输出直接跳过第二层卷积,连接到最后一层的输出。
步骤s25:该预测将通过如下公式定义的3dsquash函数传递,将胶囊向量的长度限制在0和1之间,表示实体存在的可能性:
步骤s3:通过胶囊块卷积层得到了复杂数据的特征表示,将这些特征进行整组形变后,形成一个个低级胶囊。本实施例采用剪枝优化参数策略,实现对低级胶囊的筛选。
具体地,剪枝优化参数策略方法包括:
步骤s31:通过胶囊块卷积层,得到了能表示复杂数据的特征表示,这些特征进行整组形变后,形成一个个低级胶囊。
步骤s32:对于预测的高层胶囊vj,这些活性高(活性高的定义是通过squansh函数计算出来的概率比较大的)的胶囊ui往往具有相对较大的耦合系数cij,设低层胶囊的矢量输出为:
ul={ui∈bd|i=1,2,...nl}
式中,bd表示的是维度的空间。
其相应的活动水平通过squash函数获得(或实体存在的概率)表示为:
al={0≤ai≤1|i=1,2,...,nl}
ui的方向表示实体的姿态,ui的长度表示活动级别或实体存在的概率,并且
ai=||ui||。
步骤s33:选择k个最活跃(通过squansh函数计算出来的概率比较大的)胶囊,设ai表示在a中第i个活跃的胶囊。对低层胶囊的所有胶囊进行排序,然后选择最活跃的k个低层胶囊连接下一层高层胶囊:
{i|ai≥a(k)}
步骤s34:获取这k个最活跃的低层胶囊的索引值,就可以取得相应的k个低层胶囊,然后对其进行重新排序抽出的胶囊重组成新的活跃低层胶囊,使用动态路由算法进行加权连接预测高层胶囊。
步骤s4:通过数字胶囊来对图像进行分类。在这一层中,例如要识别的分类是10个,则该层的胶囊个数就算为10,该层是全连接,连接前面一层的所有胶囊。
实施例二
上述实施例一提供了基于胶囊参数优化的图像识别方法,与之相对应地,本实施例提供一种图像识别系统。本实施例提供的图像识别系统可以实施实施例一的基于胶囊参数优化的图像识别方法,该系统可以通过软件、硬件或软硬结合的方式来实现。例如,该系统可以包括集成的或分开的功能模块或功能单元来执行实施例一各方法中的对应步骤。由于本实施例的图像识别系统基本相似于方法实施例,所以本实施例描述过程比较简单,相关之处可以参见实施例一的部分说明即可,本实施例的图像识别系统仅仅是示意性的。
本实施例提供的基于胶囊参数优化的图像识别系统,该系统包括:
初级卷积层单元,被配置为将输入的图像数据进行滤波操作,对数据进行初级特征提取;
胶囊块卷积层单元,被配置为设计胶囊块卷积层,使用3d卷积核作为转换矩阵,使用一组较低水平的胶囊来预测较高水平的胶囊,获得复杂数据的特征表示;
胶囊筛选单元,被配置为复杂数据的特征进行整组形变后,形成一个个低级胶囊,采用剪枝优化策略实现对低级胶囊的筛选;
图像分类单元,被配置为通过数字胶囊对图像进行分类。
实施例三
本实施例提供一种实现本实施例一所提供的基于胶囊参数优化的图像识别方法的处理设备,处理设备可以是用于客户端的处理设备,例如手机、笔记本电脑、平板电脑、台式机电脑等,以执行实施例一的图像识别方法。
所述处理设备包括处理器、存储器、通信接口和总线,处理器、存储器和通信接口通过总线连接,以完成相互间的通信。存储器中存储有可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行本实施例一所提供的基于胶囊参数优化的图像识别方法。
优选地,存储器可以是高速随机存取存储器(ram:randomaccessmemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。
优选地,处理器可以为中央处理器(cpu)、数字信号处理器(dsp)等各种类型通用处理器,在此不做限定。
实施例四
本实施例一的基于胶囊参数优化的图像识别方法被具体实现为一种计算机程序产品,计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本实施例一所述的图像识别方法的计算机可读程序指令。
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意组合。
最后应说明的是,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
1.一种基于胶囊参数优化的图像识别方法,其特征在于包括以下步骤:
步骤s1:将输入图像通过初级卷积层进行滤波操作进行初级特征提取,获得初级胶囊;
步骤s2:设计胶囊块卷积层,通过3d卷积核作为转换矩阵,使用较低水平的胶囊预测较高水平的胶囊,获得复杂数据的特征;
步骤s3:将复杂数据的特征进行整组形变后形成一个个低级胶囊,采用剪枝优化策略实现对低级胶囊的筛选,并基于筛选的低级胶囊预测高层胶囊;
步骤s4:通过数字胶囊对图像进行分类。
2.根据权利要求1所述的基于胶囊参数优化的图像识别方法,其特征在于,所述步骤s1进行初级特征提取的过程包括:
步骤s11:采用多个初级卷积层对输入图像滤波进行操作获取图像的初级特征;
步骤s12:将初级特征进行特征形变及重组,形成一个个初级胶囊。
3.根据权利要求1所述的基于胶囊参数优化的图像识别方法,其特征在于,所述步骤s2设计胶囊块卷积层的过程包括:
步骤s21:假设φl=(ml,ml,cl,nl)作为该层l的输入,其中,ml表示的是层l特征图的高度和宽度,cl代表的是层l的胶囊数目,nl表示的是层l的胶囊维度,φl 1=(cl 1,ml 1,ml 1,nl 1)作为该层l的输出;
步骤s22:层l的输入φl=(ml,ml,cl,nl)通过添加维度形成单个通道张量
步骤s23:将单个通道张量
步骤s24:使用3d卷积核作为转换矩阵,使用一组较低水平的胶囊预测较高水平的胶囊;
步骤s25:该预测通过3dsquash函数传递,将胶囊向量的长度限制在0和1之间。
4.根据权利要求1~3任一项所述的基于胶囊参数优化的图像识别方法,其特征在于,所述步骤s3剪枝优化参数策略具体包括:
步骤s31:将复杂数据的特征进行整组形变,形成一个个低级胶囊;
步骤s32:预测的高层胶囊vj中活性高的胶囊ui具有相对较大的耦合系数cij,设低层胶囊的矢量输出为:
ul={ui∈bd|i=1,2,...nl}
式中,bd表示的是维度的空间;其相应的活动水平通过squash函数获得表示为:
al={0≤ai≤1|i=1,2,...,nl};
ui的方向表示实体的姿态,ui的长度表示活动级别或实体存在的概率,并且
ai=||ui||;
步骤s33:设ai表示在a中第i个活跃的胶囊,对低层胶囊的所有胶囊进行排序,选择最活跃的k个低层胶囊连接下一层高层胶囊:
{i|ai≥a(k)}
步骤s34:获取这k个最活跃的低层胶囊的索引值,取得相应的k个低层胶囊,然后对其进行重新排序,使抽出的胶囊重组成新的活跃低层胶囊,使用动态路由算法预测高层胶囊。
5.一种基于胶囊参数优化的图像识别系统,其特征在于,该系统包括:
初级卷积层单元,被配置为将输入的图像数据进行滤波操作,对数据进行初级特征提取;
胶囊块卷积层单元,被配置为设计胶囊块卷积层,通过3d卷积核作为转换矩阵,使用较低水平的胶囊预测较高水平的胶囊,获得复杂数据的特征表示;
胶囊筛选单元,被配置为将复杂数据的特征进行整组形变后形成一个个低级胶囊,采用剪枝优化策略实现对低级胶囊的筛选,并基于筛选的低级胶囊预测高层胶囊;
图像分类单元,被配置为通过数字胶囊对图像进行分类。
6.一种处理设备,所述处理设备至少包括处理器和存储器,所述存储器上存储有计算机程序,其特征在于,所述处理器运行所述计算机程序时执行以实现根据权利要求1到4任一项所述的基于胶囊参数优化的图像识别方法。
7.一种计算机存储介质,其特征在于,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现权利要求1到4任一项所述的一种基于胶囊参数优化的图像识别方法。
技术总结