一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于判别特征学习和熵的深度半监督图像分类方法

2022-07-23 02:15:14 来源:中国专利 TAG:


1.本发明属于计算机视觉图像分类技术领域,具体涉及一种基于判别特征学习和熵的深度半监督图像分类方法。


背景技术:

2.半监督学习是指训练过程中所使用的训练样本只有很少一部分具有标签,而其余大量的训练样本都没有标签。近年来,越来越多的研究工作致力于提出用于深度卷积神经网络模型训练的半监督学习方法。一些研究工作使用对抗生成网络生成额外的训练样本来进行深度卷积神经网络训练。由对抗生成网络生成训练样本可以看成是一种数据扩充的方式。
3.目前较流行的深度半监督学习方法是对深度卷积神经网络所学的特征进行一致性正则化,即在图像上增加扰动(随机噪声、数据扩充或dropout)来学习鲁棒特征。例如,∏-model方法通过给每一张图像都独立添加的随机扰动来生成两张带扰动的图像,然后采用一致性损失函数约束网络对相应两个扰动图像的标签预测尽可能的一致。时间集成方法通过维持训练过程中指数平滑的标签预测与当前网络输出的标签预测的一致性来保证训练过程的稳定性。mean teacher方法通过维持训练过程中指数平滑的模型参数与当前网络模型参数的一致性来保证训练过程的稳定性。
4.以上基于一致性正则化的方法训练时计算复杂度比较高,需要给每一张图像添加随机扰动进行数据扩充。


技术实现要素:

5.本发明的目的是提供一种基于判别特征学习和熵的深度半监督图像分类方法,不依赖于深度卷积网络结构,可以应用到任何一个深度卷积神经网络上,能够显著减少训练数据的标注成本,能够显著提高图像分类精度。
6.本发明所采用的技术方案是,基于判别特征学习和熵的深度半监督图像分类方法,包括以下步骤:
7.1)准备图像训练样本集,将训练样本集划分为有标注训练样本集和无标注训练样本集;
8.2)搭建适用于步骤1)中图像训练样本集分类任务的深度卷积神经网络模型;
9.3)构造判别特征学习目标函数;
10.4)构造熵目标函数;
11.5)结合判别特征学习目标函数和熵目标函数构造总的目标函数;
12.6)设定当前轮次训练数的值为0;
13.7)根据总的目标函数、当前的有标注训练样本集和无标注训练样本集,使用基于mini-batch的随机梯度下降法训练步骤2)构建的深度卷积神经网络模型直到深度卷积神经网络模型收敛;
14.8)基于收敛的深度卷积神经网络模型,分别计算当前无标注训练样本集中每一个无标注样本属于不同类的概率;
15.9)设定一个阈值,如果无标注样本属于不同类的概率的最大值大于阈值,给对应的无标注样本赋予概率最大值对应的类标签,将该无标注样本加入有标注训练样本集,并将该无标注样本从无标注训练样本集中去除;
16.10)当前轮次训练数的值加1;
17.11)重复执行步骤7)、8)、9)和10),直到当前轮次训练数达到预先设定的最大轮次训练数,得到训练好的深度卷积神经网络模型;
18.12)将待分类的图像输入训练好的深度卷积神经网络模型,在分类层得到该图像的预测类别。
19.本发明的特征还在于,
20.步骤1)的具体实现方法如下:
21.给定图像训练样本集其中,和分别表示有标注训练样本集和无标注训练样本集;xi表示第i个训练样本图像;如果那么ci=[c
i1
,c
i2
,

,c
ic
]
t
∈{0,1}c是相应的类标签向量,ci中有且仅有一个元素为1,其余全部为0;如果xi含有第j类,那么c
ij
=1,否则c
ij
=0;c表示类别总数,l和u分别表示有标注和无标注训练样本的数量。
[0022]
步骤2)的具体实现方法如下:
[0023]
任意选择一个深度卷积神经网络模型,将该深度卷积神经网络模型最后的分类层神经元的数目设为图像训练样本集的类别总数;将所搭建网络模型的倒数第二层称为特征层,即将一张图像输入到网络,在倒数第二层的输出为该图像的特征向量。
[0024]
步骤3)的具体实现方法如下:
[0025]
定义xi(t)表示第t次迭代时样本xi的特征向量;在第t次迭代的mini-batch中,第c类的类内距离表示为:
[0026][0027]
其中,πc(t)表示第t次迭代的mini-batch中属于第c类样本的下标索引的集合;mc(t)表示第t次迭代时第c类的经过指数平滑更新所得到的均值向量,即
[0028][0029]
其中,α表示指数平滑系数,其取值范围为0<α<1,nc(t)=|πc(t)|,即nc(t)表示集合πc(t)中元素的个数;特别地,当t=0时,
[0030]
总的类内距离表示为:
[0031][0032]
最小化等价于增强类内紧凑性;
[0033]
相应地,总的类间距离表示为:
[0034][0035]
最大化等价于增大类间距离;
[0036]
根据上面的描述,所构造的判别特征学习目标函数为:
[0037][0038]
显然,最小化上面的判别特征学习目标函数等价于使得网络模型所学习到特征具有较好的类内紧凑性和类间分离性。需要特别说明的是,在网络模型训练过程中,判别特征学习目标函数只使用在有标注样本集上。
[0039]
步骤4)的具体实现方法如下:
[0040]
对于无标注训练样本集中的样本,虽然没有样本的类别标签,但它一定属于某一个类。对于第j个无标注样本图像(j=1,2,

,u),其属于第c类的概率表示为:
[0041][0042]
其中,表示的特征向量,exp(
·
)表示指数函数,‖
·
‖2表示l2范数,mc表示第c类的经过指数平滑更新所得到的均值向量;样本图像属于不同类的概率向量的熵为:
[0043][0044]
其中,log(
·
)表示以常数e为底的对数;
[0045]
根据上面的描述,所构造的熵目标函数ε为:
[0046][0047]
需要特别说明的是,在网络模型训练过程中,熵目标函数只使用在无标注训练样本集上。
[0048]
步骤5)中,结合判别特征学习目标函数和熵目标函数构造总的目标函数具体为:
[0049][0050]
其中,表示网络模型的层参数集合,softmax(
·
,
·
,
·
)表示softmax分类损失函数,和ε分别是判别特征学习目标函数和熵目标函数,参数λ1和λ2用于调节上式右边三项之间的平衡。
[0051]
步骤9)的具体实现方法如下:
[0052]
设定阈值为0.7,对于第j个无标注样本图像j=1,2,

,u,其属于第c类的概率为令c=1,2,

,c,如果那么就给无标注样本图像赋予第k类的类标签,将该无标注样本加入有标注训练样本集,并将该无标注样本从无标注训练样本集中去除。
[0053]
本发明的有益效果是:
[0054]
(1)本发明所提出的基于判别特征学习和熵的深度半监督图像分类方法不依赖于网络结构。
[0055]
(2)本发明所提出的基于判别特征学习和熵的深度半监督图像分类方法能够显著减少训练数据的标注成本。
[0056]
(3)本发明所提出的基于判别特征学习和熵的深度半监督图像分类方法能够显著提高图像分类精度。
附图说明
[0057]
图1是本发明基于判别特征学习和熵的深度半监督图像分类方法的深度卷积神经网络模型示意图。
具体实施方式
[0058]
下面结合附图和具体实施方式对本发明进行详细说明。
[0059]
本发明提供一种基于判别特征学习和熵的深度半监督图像分类方法,如图1所示,包括以下步骤:
[0060]
1)准备图像训练样本集,将训练样本集划分为有标注训练样本集和无标注训练样本集;
[0061]
步骤1)的具体实现方法如下:
[0062]
给定图像训练样本集其中,和分别表示有标注训练样本集和无标注训练样本集;xi表示第i个训练样本图像;如果那么ci=[c
i1
,c
i2
,

,c
ic
]
t
∈{0,1}c是相应的类标签向量,ci中有且仅有一个元素为1,其余全部为0;如果xi含有第j类,那么c
ij
=1,否则c
ij
=0;c表示类别总数,l和u分别表示有标注和无标注训练样本的数量。
[0063]
2)搭建适用于步骤1)中图像训练样本集分类任务的深度卷积神经网络模型;
[0064]
步骤2)的具体实现方法如下:
[0065]
任意选择一个深度卷积神经网络模型,将该深度卷积神经网络模型最后的分类层神经元的数目设为图像训练样本集的类别总数即得到本发明基于判别特征学习和熵的深度半监督图像分类方法的深度卷积神经网络模型。如图1所示:分类层神经元的数目为图像训练样本集的类别总数,将所搭建网络模型的倒数第二层称为特征层,特征层前面是若干卷积层,本发明采用的判别特征学习目标函数和熵目标函数在网络模型训练过程中均直接施加于特征层,将一张图像输入到网络在特征层的输出为该图像的特征向量。
[0066]
3)构造判别特征学习目标函数;
[0067]
步骤3)的具体实现方法如下:
[0068]
定义xi(t)表示第t次迭代时样本xi的特征向量;在第t次迭代的mini-batch中,第c类的类内距离表示为:
[0069][0070]
其中,πc(t)表示第t次迭代的mini-batch中属于第c类样本的下标索引的集合;mc(t)表示第t次迭代时第c类的经过指数平滑更新所得到的均值向量,即
[0071][0072]
其中,α表示指数平滑系数,其取值范围为0<α<1,nc(t)=|πc(t)|,即nc(t)表示集合πc(t)中元素的个数;特别地,当t=0时,
[0073]
总的类内距离表示为:
[0074][0075]
最小化等价于增强类内紧凑性;
[0076]
相应地,总的类间距离表示为:
[0077][0078]
最大化等价于增大类间距离;
[0079]
根据上面的描述,所构造的判别特征学习目标函数为:
[0080][0081]
显然,最小化上面的判别特征学习目标函数等价于使得网络模型所学习到特征具有较好的类内紧凑性和类间分离性。需要特别说明的是,在网络模型训练过程中,判别特征学习目标函数只使用在有标注样本集上。
[0082]
4)构造熵目标函数;
[0083]
步骤4)的具体实现方法如下:
[0084]
对于无标注训练样本集中的样本,虽然没有样本的类别标签,但它一定属于某一个类。对于第j个无标注样本图像(j=1,2,

,u),其属于第c类的概率表示为:
[0085][0086]
其中,表示的特征向量,exp(
·
)表示指数函数,‖
·
‖2表示l2范数,mc表示第
c类的经过指数平滑更新所得到的均值向量;样本图像属于不同类的概率向量的熵为:
[0087][0088]
其中,log(
·
)表示以常数e为底的对数;
[0089]
根据上面的描述,所构造的熵目标函数ε为:
[0090][0091]
需要特别说明的是,在网络模型训练过程中,熵目标函数只使用在无标注训练样本集上。
[0092]
5)结合判别特征学习目标函数和熵目标函数构造总的目标函数;
[0093]
步骤5)中,结合判别特征学习目标函数和熵目标函数构造总的目标函数具体为:
[0094][0095]
其中,表示网络模型的层参数集合,softmax(
·
,
·
,
·
)表示softmax分类损失函数,和ε分别是判别特征学习目标函数和熵目标函数,参数λ1和λ2用于调节上式右边三项之间的平衡。
[0096]
6)设定当前轮次训练数的值为0;
[0097]
7)根据总的目标函数、当前的有标注训练样本集和无标注训练样本集,使用基于mini-batch的随机梯度下降法训练步骤2)构建的深度卷积神经网络模型直到深度卷积神经网络模型收敛;
[0098]
8)基于收敛的深度卷积神经网络模型,分别计算当前无标注训练样本集中每一个无标注样本属于不同类的概率;
[0099]
9)设定一个阈值,如果无标注样本属于不同类的概率的最大值大于阈值,给对应的无标注样本赋予概率最大值对应的类标签,将该无标注样本加入有标注训练样本集,并将该无标注样本从无标注训练样本集中去除;
[0100]
步骤9)的具体实现方法如下:
[0101]
设定阈值为0.7,对于第j个无标注样本图像j=1,2,

,u,其属于第c类的概率为令c=1,2,

,c,如果那么就给无标注样本图像赋予第k类的类标签,将该无标注样本加入有标注训练样本集,并将该无标注样本从无标注训练样本集中去除。
[0102]
10)当前轮次训练数的值加1;
[0103]
11)重复执行步骤7)、8)、9)和10),直到当前轮次训练数达到预先设定的最大轮次训练数,得到训练好的深度卷积神经网络模型;
[0104]
12)将待分类的图像输入训练好的深度卷积神经网络模型,在分类层得到该图像
的预测类别。
[0105]
实施例
[0106]
目前非常具有代表性的基于半监督深度学习的图像分类方法是∏-model、tempens和mean teacher。为了了公平比较,本发明采用这些方法所采用的深度卷积神经网络模型进行实验。实验数据集分别是cifar10和svhn。在这两个数据集上的实验,本发明总的目标函数中的参数λ1设为0.01,参数λ2设为0.001。最大轮次训练数设为4。
[0107]
cifar10数据集包括10个类别共计60000张自然图像,其中50000张为训练图像,10000张为测试图像。按照∏-model、tempens和mean teacher方法的实验设置,分别从50000张训练图像中选取1000、2000、4000和50000张图像作为有标注训练图像,其余训练图像作为无标注训练图像。
[0108]
svhn数据集包括73257张训练图像和26032张测试图像。同样按照∏-model、tempens和mean teacher方法的实验设置,分别从训练集中选取250、500、1000和73257张图像作为有标注训练图像,其余训练图像为无标注训练图像。
[0109]
表1、表2中分别列出了对应的实验结果,为了更加公平比较,表格中的数值均是10次重复实验的平均值。在这两个表中,同时还给出了fully supervised方法的实验结果,即只使用有标注训练样本训练网络模型的结果。从这两个表可以看出,本发明提出的方法均显著优于表中其他半监督深度学习方法以及fully supervised方法,充分证明了本发明所提方法的有效性。
[0110]
表1在cifar10测试集上分类精度(%)的比较结果
[0111][0112]
表2在svhn测试集上分类精度(%)的比较结果
[0113]
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献