一种图像分类方法及装置与流程

文档序号:11216966阅读:1316来源:国知局
一种图像分类方法及装置与流程

本发明涉及迁移学习和深度学习领域,特别涉及一种图像分类方法及装置。



背景技术:

卷积神经网络(convolutionalneuralnetworks,cnn)是一种高效识别方法。一般地,cnn的基本结构包括两层,其一为特征提取层,每个神经元的输入与前一层的局部接受域相连,并提取该局部的特征。一旦该局部特征被提取后,它与其它特征间的位置关系也随之确定下来;其二是特征映射层,网络的每个计算层由多个特征映射组成,每个特征映射是一个平面,平面上所有神经元的权值相等。

迁移学习即一种学习对另一种学习的影响,它广泛地存在于知识、技能、态度和行为规范的学习中。任何一种学习都要受到学习者已有知识经验、技能、态度等的影响,只要有学习,就有迁移,使用深度学习技术解决问题的过程中,在面对某一领域的具体问题时,通常可能无法得到构建模型所需规模的数据然而在一个模型训练任务中针对某种类型数据获得的关系也可以轻松地应用于同一领域的不同问题,这就是所谓的迁移学习。

现有的图像分类方法一般是基于小数据集训练分类模型,然后通过该训练分类模型对图片集进行分类。但是,小数据集的数据量较少,用深层卷积网络训练时容易导致模型训练过程中出现过拟合问题,用浅层卷积网络训练时,使图像特征提取不够完善,降低图像分类率。



技术实现要素:

本发明的目的是提供一种图像分类方法及装置,目的在于解决现有技术中利用小数据集训练图像分类模型时出现过拟合现象导致和图像特征提取不够完善导致图像分类率的问题。

为解决上述技术问题,本发明提供一种图像分类方法,该方法包括:

基于图像大数据集,训练alexnet模型结构,所述alexnet模型结构为包括依次相连的第一卷积层、第二卷积层、第三卷积层、第四卷积层、第五卷积层、第一全连接层、第二全连接层及softmax分类器的模型;

将训练好的所述第一卷积层、所述第二卷积层、所述第三卷积层、所述第四卷积层及所述第五卷积层迁移至小型数据库构成底层特征提取层,并与包括两层卷积层的残差网络层、多尺度池化层、特征层及所述softmax分类器构建得出迁移模型结构;

其中,所述多尺度池化层包括与所述第一卷积层相连的第一多尺度池化层、与所述第三卷积层相连的第二多尺度池化层及与所述第五卷积层相连的第三多尺度池化层;所述特征层为所述残差网络层提取的特征图和所述多尺度池化层提取的特征图串联构成的特征层;

将图像小数据集输入所述迁移模型结构,保持所述底层特征提取层的参数不变,采用批量梯度下降法更新所述残差网络层和所述多尺度池化层的参数,训练得出图像分类混合模型;

根据所述图像分类混合模型,对待分类图像小数据集进行分类,得出分类结果。

可选地,所述将图像小数据集输入所述迁移模型结构,保持所述底层特征提取层的参数不变,采用批量梯度下降法更新所述残差网络层和所述多尺度池化层的参数,训练得出图像分类混合模型包括:

获取所述图像小数据集,将所述小数据集输入所述迁移模型结构;

利用所述底层特征提取层提取出所述图像小数据集的初始特征;

利用所述残差网络层对所述初始特征进行训练,得出第一特征图;

利用所述多尺度池化层提取出所述图像小数据集的第二特征图;

串联所述第一特征图和所述第二特征图,得出目标特征图;

将所述目标特征图输入所述softmax分类器,运用所述批量梯度下降法,迭代更新所述残差网络层和所述多尺度池化层的所述参数,训练得出所述图像分类混合模型。

可选地,所述残差网络层的激活函数为maxout函数。

可选地,所述利用所述多尺度池化层提取出所述图像小数据集的第二特征图包括:

根据所述池化层的预设池化计算公式,提取所述图像小数据集的所述第二特征图;

所述预设池化计算公式具体为:输入特征图的size=r×s×m;每张输出特征图的size=r×s、

按照列顺序展开得到r×s×m、

其中,[*]为向上取整;m为每个输入层的特征图个数;r×s为每个输入特征图的尺寸;为每张特征图经过最大值采样后输出的分量。

可选地,所述基于图像大数据集,训练alexnet模型结构包括:

获取所述图像大数据集;

将所述图像大数据集输入至所述alexnet模型结构,采用变化的dropout参数修剪所述alexnet模型结构的模型参数,训练所述alexnet模型结构;

其中,所述dropout参数的更新公式为d1为初始dropout值,为第一层初始神经元个数,为第i次迭代的dropout保留的神经元个数,δi为第i次迭代后的误差率,为第一层网络下一次迭代训练更新的dropout阈值。

此外,本发明还提供了一种图像分类装置,该装置包括:

预训练模块,用于基于图像大数据集,训练alexnet模型结构,所述alexnet模型结构为包括依次相连的第一卷积层、第二卷积层、第三卷积层、第四卷积层、第五卷积层、第一全连接层、第二全连接层及softmax分类器的模型;

迁移模型构建模块,用于将训练好的所述第一卷积层、所述第二卷积层、所述第三卷积层、所述第四卷积层及所述第五卷积层迁移至小型数据库构成底层特征提取层,并与包括两层卷积层的残差网络层、多尺度池化层、特征层及所述softmax分类器构建得出迁移模型结构;

其中,所述多尺度池化层包括与所述第一卷积层相连的第一多尺度池化层、与所述第三卷积层相连的第二多尺度池化层及与所述第五卷积层相连的第三多尺度池化层;所述特征层为所述残差网络层提取的特征图和所述多尺度池化层提取的特征图串联构成的特征层;

混合模型训练模块,用于将图像小数据集输入所述迁移模型结构,保持所述底层特征提取层的参数不变,采用批量梯度下降法更新所述残差网络层和所述多尺度池化层的参数,训练得出图像分类混合模型;

分类模块,用于根据所述图像分类混合模型,对待分类图像小数据集进行分类,得出分类结果。

可选地,所述混合模型训练模块包括:

获取单元,用于获取所述图像小数据集,将所述小数据集输入所述迁移模型结构;

第一提取单元,用于利用所述底层特征提取层提取出所述图像小数据集的初始特征;

特征训练单元,用于利用所述残差网络层对所述初始特征进行训练,得出第一特征图;

第二提取单元,用于利用所述多尺度池化层提取出所述图像小数据集的第二特征图;

串联单元,用于串联所述第一特征图和所述第二特征图,得出目标特征图;

参数更新训练单元,用于将所述目标特征图输入所述softmax分类器,运用所述批量梯度下降法,迭代更新所述残差网络层和所述多尺度池化层的所述参数,训练得出所述图像分类混合模型。

可选地,所述残差网络层的激活函数为maxout函数。

可选地,所述第二提取单元包括:

池化提取子单元,用于根据所述池化层的预设池化计算公式,提取所述图像小数据集的所述第二特征图;

所述预设池化计算公式具体为:输入特征图的size=r×s×m;每张输出特征图的size=r×s、

按照列顺序展开得到r×s×m、

其中,[*]为向上取整;m为每个输入层的特征图个数;r×s为每个输入特征图的尺寸;为每张特征图经过最大值采样后输出的分量。

可选地,所述预训练模块包括:

大数据集获取单元,用于获取所述图像大数据集;

训练单元,用于将所述图像大数据集输入至所述alexnet模型结构,采用变化的dropout参数修剪所述alexnet模型结构的模型参数,训练所述alexnet模型结构;

其中,所述dropout参数的更新公式为d1为初始dropout值,为第一层初始神经元个数,为第i次迭代的dropout保留的神经元个数,δi为第i次迭代后的误差率,为第一层网络下一次迭代训练更新的dropout阈值。

本发明实施例所提供的图像分类方法及装置,基于图像大数据集,训练alexnet模型结构;将训练好的第一卷积层、第二卷积层、第三卷积层、第四卷积层及第五卷积层迁移至小型数据库构成底层特征提取层,并与包括两层卷积层的残差网络层、多尺度池化层、特征层及softmax分类器构建得出迁移模型结构;其中,多尺度池化层包括与第一卷积层相连的第一多尺度池化层、与第三卷积层相连的第二多尺度池化层及与第五卷积层相连的第三多尺度池化层;特征层为残差网络层提取的特征图和多尺度池化层提取的特征图串联构成的特征层;将图像小数据集输入迁移模型结构,保持底层特征提取层的参数不变,采用批量梯度下降法更新所述残差网络层和多尺度池化层的参数,训练得出图像分类混合模型;根据图像分类混合模型,对待分类图像小数据集进行分类,得出分类结果。本申请通过将在大数据集上预训练好的各卷积层迁移至小数据集,增加多尺度池化层,将残差网络层和多尺度池化层输出的特征量串联起来输入至分类器中,可以增加特征量,同时缓解数据量少导致的过拟合问题;且通过基于卷积神经网络和迁移学习训练得出的混合模型可以使得有效地提高图像分类准确率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的图像分类方法的一种具体实施方式的流程示意图;

图2为本发明实施例提供的大型数据库训练图像分类模型结构示意图;

图3为本发明实施例提供的小数据集训练模型结构示意图;

图4为本发明实施例提供的多尺度池化层结构示意图;

图5为本发明实施例提供的图像分类装置结构示意框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1,图1为本发明实施例提供的图像分类方法的一种具体实施方式的流程示意图,该方法包括以下步骤:

步骤101:基于图像大数据集,训练alexnet模型结构,所述alexnet模型结构为包括依次相连的第一卷积层、第二卷积层、第三卷积层、第四卷积层、第五卷积层、第一全连接层、第二全连接层及softmax分类器的模型。

具体地,预先设置图像分类模型结构,然后将大型数据库上的图像大数据集输入至alexnet模型结构,更新网络参数,训练alexnet模型结构。

上述alexnet模型结构可以具体参见图2,图2为本发明实施例提供的大型数据库训练图像分类模型结构示意图。

如图2所示,图中c1、c2、c3、c4、c5分别为第一卷积层、第二卷积层、第三卷积层、第四卷积层、第五卷积层,fc1、fc2分别为第一全连接层、第二全连接层。

将大数据集输入至如图2所示的图像分类模型结构,可以更新各个卷积层的dropout参数,以减少模型训练参数,训练图像分类模型结构。故作为一种具体实施方式,上述基于图像大数据集,训练alexnet模型结构的过程可以具体为:获取所述图像大数据集;将所述图像大数据集输入至所述alexnet模型结构,采用变化的dropout参数修剪所述alexnet模型结构的模型参数,训练所述alexnet模型结构。

其中,上述dropout参数的更新公式为d1为初始dropout值,为第一层初始神经元个数,为第i次迭代的dropout保留的神经元个数,δi为第i次迭代后的误差率,为第一层网络下一次迭代训练更新的dropout阈值。

可以看出,在原有alexnet模型结构的基础上,在各个卷积层加入参数变化的dropout,且利用上述公式更新参数,减少了模型训练参数,提高了模型训练效率。

步骤102:将训练好的所述第一卷积层、所述第二卷积层、所述第三卷积层、所述第四卷积层及所述第五卷积层迁移至小型数据库构成底层特征提取层,并与包括两层卷积层的残差网络层、多尺度池化层、特征层及所述softmax分类器构建得出迁移模型结构。

其中,所述多尺度池化层包括与所述第一卷积层相连的第一多尺度池化层、与所述第三卷积层相连的第二多尺度池化层及与所述第五卷积层相连的第三多尺度池化层;所述特征层为所述残差网络层提取的特征图和所述多尺度池化层提取的特征图串联构成的特征层。

可以理解,将在大数据集上训练好的五个卷积层迁移至小数据集,保持这五个卷积层内的参数不变,增加残差网络层、多尺度池化层、特征层、softmax分类器构建出新的训练模型结构。

上述迁移模型结构可以具体为如图3所示的训练模型结构,图3为本发明实施例提供的小数据集训练模型结构示意图。

如图3所示,cov1、cov2、cov3、cov4、cov5分别为在大数据集上训练好的第一卷积层、第二卷积层、第三卷积层、第四卷积层、第五卷积层,与cov5相连的两个cov层为残差网络层,与cov1、cov3、cov5对应相连的pool1、pool2、pool3;三个多尺度池化层输出的特征图和残差网络层输出的特征图串联成特征层,得出一幅目标特征图后输入至softmax分类器。

优选地,为了加快收敛效率,残差网络层的激活函数具体可以为maxout函数。当然,使用其它的激活函数也不影响本实施例的实现。

步骤103:将图像小数据集输入所述迁移模型结构,保持所述底层特征提取层的参数不变,采用批量梯度下降法更新所述残差网络层和所述多尺度池化层的参数,训练得出图像分类混合模型。

构建出新的迁移模型结构后,可以通过迭代更新该模型结构内的参数进行训练。故作为一种具体实施方式,上述将图像小数据集输入所述迁移模型结构,保持所述底层特征提取层的参数不变,采用批量梯度下降法更新所述残差网络层和所述多尺度池化层的参数,训练得出图像分类混合模型的过程可以具体为:获取所述图像小数据集,将所述小数据集输入所述迁移模型结构;利用所述底层特征提取层提取出所述图像小数据集的初始特征;利用所述残差网络层对所述初始特征进行训练,得出第一特征图;利用所述多尺度池化层提取出所述图像小数据集的第二特征图;串联所述第一特征图和所述第二特征图,得出目标特征图;将所述目标特征图输入所述softmax分类器,运用所述批量梯度下降法,迭代更新所述残差网络层和所述多尺度池化层的所述参数,训练得出所述图像分类混合模型。

可以看出,迭代更新残差网络和多尺度池化层的参数,可以缓解因为数据少导致的训练收敛慢的问题;且将残差网络层和多尺度池化层提取的特征maps串联成一张目标特征图后输入至softmax中,可以特征训练特征量,有效缓解数据量少导致的过拟合问题。

迁移模型结构中的多尺度池化层可以设置池化计算公式,对图像小数据集进行最大值采样,提取出所需特征分量。故具体地,上述利用所述多尺度池化层提取出所述图像小数据集的第二特征图的过程可以具体为:根据所述池化层的预设池化计算公式,提取所述图像小数据集的所述第二特征图。

可以将多尺度池化层设计为4种尺寸size和4种步长stride进行最大值采样,siez大小分别可以为1、2、3、4,与size对应的stride分别可以为1、2、3、4。

上述预设池化计算公式具体为:输入特征图的size=r×s×m;每张输出特征图的size=r×s、

按照列顺序展开得到r×s×m、其中,[*]为向上取整;m为每个输入层的特征图个数;r×s为每个输入特征图的尺寸;为每张特征图经过最大值采样后输出的分量。最后可以将各个特征分量串联成固定尺寸为k×1的特征向量,k为多层多尺度池化层和卷积残差网络的特征向量之和。

多尺度池化层的具体结构可以参见图4,图4为本发明实施例提供的多尺度池化层结构示意图。具体介绍可以参数上文多尺度池化层的相关内容,在此不再赘述。

步骤104:根据所述图像分类混合模型,对待分类图像小数据集进行分类,得出分类结果。

本实施例所提供的图像分类方法,基于图像大数据集,训练alexnet模型结构;将训练好的第一卷积层、第二卷积层、第三卷积层、第四卷积层及第五卷积层迁移至小型数据库构成底层特征提取层,并与包括两层卷积层的残差网络层、多尺度池化层、特征层及softmax分类器构建得出迁移模型结构;其中,多尺度池化层包括与第一卷积层相连的第一多尺度池化层、与第三卷积层相连的第二多尺度池化层及与第五卷积层相连的第三多尺度池化层;特征层为残差网络层提取的特征图和多尺度池化层提取的特征图串联构成的特征层;将图像小数据集输入迁移模型结构,保持底层特征提取层的参数不变,采用批量梯度下降法更新所述残差网络层和多尺度池化层的参数,训练得出图像分类混合模型;根据图像分类混合模型,对待分类图像小数据集进行分类,得出分类结果。通过将在大数据集上预训练好的各卷积层迁移至小数据集,增加多尺度池化层,将残差网络层和多尺度池化层输出的特征量串联起来输入至分类器中,可以增加特征量,同时缓解数据量少导致的过拟合问题;且通过基于卷积神经网络和迁移学习训练得出的混合模型可以使得有效地提高图像分类准确率。

下面对本发明实施例提供的一种图像分类装置进行介绍,下文描述的一种图像分类装置与上文描述的一种图像分类方法可相互对应参照。

请参考图5,图5为本发明实施例提供的图像分类装置结构示意框图。该装置可以包括:

预训练模块51,用于基于图像大数据集,训练alexnet模型结构,alexnet模型结构为包括依次相连的第一卷积层、第二卷积层、第三卷积层、第四卷积层、第五卷积层、第一全连接层、第二全连接层及softmax分类器的模型;

迁移模型构建模块52,用于将训练好的第一卷积层、第二卷积层、第三卷积层、第四卷积层及所述第五卷积层迁移至小型数据库构成底层特征提取层,并与包括两层卷积层的残差网络层、多尺度池化层、特征层及softmax分类器构建得出迁移模型结构;

其中,多尺度池化层包括与第一卷积层相连的第一多尺度池化层、与第三卷积层相连的第二多尺度池化层及与第五卷积层相连的第三多尺度池化层;特征层为残差网络层提取的特征图和多尺度池化层提取的特征图串联构成的特征层;

混合模型训练模块53,用于将图像小数据集输入迁移模型结构,保持底层特征提取层的参数不变,采用批量梯度下降法更新残差网络层和多尺度池化层的参数,训练得出图像分类混合模型;

分类模块54,用于根据图像分类混合模型,对待分类图像小数据集进行分类,得出分类结果。

作为一种具体实施方式,上述混合模型训练模块可以包括:

获取单元,用于获取图像小数据集,将小数据集输入迁移模型结构;

第一提取单元,用于利用底层特征提取层提取出图像小数据集的初始特征;

特征训练单元,用于利用残差网络层对初始特征进行训练,得出第一特征图;

第二提取单元,用于利用多尺度池化层提取出图像小数据集的第二特征图;

串联单元,用于串联第一特征图和第二特征图,得出目标特征图;

参数更新训练单元,用于将目标特征图输入softmax分类器,运用批量梯度下降法,迭代更新残差网络层和多尺度池化层的参数,训练得出图像分类混合模型。

作为一种具体实施方式,上述残差网络层的激活函数可以为maxout函数。

作为一种具体实施方式,上述第二提取单元可以包括:

池化提取子单元,用于根据池化层的预设池化计算公式,提取图像小数据集的第二特征图;

预设池化计算公式具体为:输入特征图的size=r×s×m;每张输出特征图的size=r×s、

按照列顺序展开得到r×s×m、

其中,[*]为向上取整;m为每个输入层的特征图个数;r×s为每个输入特征图的尺寸;为每张特征图经过最大值采样后输出的分量。

作为一种具体实施方式,上述预训练模块可以包括:

大数据集获取单元,用于获取图像大数据集;

训练单元,用于将图像大数据集输入至alexnet模型结构,采用变化的dropout参数修剪alexnet模型结构的模型参数,训练alexnet模型结构;

其中,dropout参数的更新公式为d1为初始dropout值,为第一层初始神经元个数,为第i次迭代的dropout保留的神经元个数,δi为第i次迭代后的误差率,为第一层网络下一次迭代训练更新的dropout阈值。

本实施例所提供的图像分类装置,通过将在大数据集上预训练好的各卷积层迁移至小数据集,增加多尺度池化层,将残差网络层和多尺度池化层输出的特征量串联起来输入至分类器中,可以增加特征量,同时缓解数据量少导致的过拟合问题;且通过基于卷积神经网络和迁移学习训练得出的混合模型可以使得有效地提高图像分类准确率。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上对本发明所提供的图像分类方法及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1