CN112733963A - 一种通用图像目标分类方法及系统 - Google Patents
一种通用图像目标分类方法及系统 Download PDFInfo
- Publication number
- CN112733963A CN112733963A CN202110134064.0A CN202110134064A CN112733963A CN 112733963 A CN112733963 A CN 112733963A CN 202110134064 A CN202110134064 A CN 202110134064A CN 112733963 A CN112733963 A CN 112733963A
- Authority
- CN
- China
- Prior art keywords
- images
- training
- sample
- data set
- neural network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明提供了一种通用图像目标分类方法及系统,方法包括:当训练数据集中各类样本是否存在数据不均衡问题时,将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得神经网络的初始参数;对训练数据集中各类样本内的图像进行扩充,获得扩充数据集;采用批量内均衡方法根据扩充数据集构造多个训练样本列表;将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得神经网络的最终参数;将待分类图像输入到已求出最终参数的神经网络进行分类,获得初始分类结果;采用阈值移动方法将所述初始分类结果进行阈值移动,获得最终分类结果,进一步提高了类别间样本不均衡条件下的目标分类精度。
Description
技术领域
本发明涉及图像分类技术领域,特别是涉及一种通用图像目标分类方法及系统。
背景技术
传统通用图像目标分类方法主要包括特征设计和分类器设计两个步骤,随着2012年卷积神经网络的出现,基于深度学习的分类技术得到了广泛使用。目前,通用图像目标分类技术面临数据集存在类别间样本不均衡的问题,即有些类样本个数非常多,有些类样本个数非常少,因此存在类别间样本不均衡条件下通用图像目标分类不准确的问题。例如,在对自然场景图片收集时,行人样本个数会比飞机样本个数多很多,遥感图像中民用目标就会比舰船目标个数要多很多。当应用上述数据集进行分类时,分类器为了提高分类的整体精度,会将分类边界偏向少数样本类,导致多数类分类空间增大,少数类样本难以被识别出来。
发明内容
基于此,本发明的目的是提供一种通用图像目标分类方法及系统,以提高类别间样本不均衡条件下的目标分类精度。
为实现上述目的,本发明提供了一种通用图像目标分类方法,所述方法包括:
步骤S1:判断训练数据集中各类样本是否存在数据不均衡问题;如果存在数据不均衡问题,则执行“步骤S2”;如果不存在数据不均衡问题,则结束;
步骤S2:将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得神经网络的初始参数;
步骤S3:对所述训练数据集中各类样本内的图像进行扩充,获得扩充数据集;
步骤S4:采用批量内均衡方法根据所述扩充数据集构造多个训练样本列表;
步骤S5:将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得神经网络的最终参数;
步骤S6:将待分类图像输入到已求出最终参数的神经网络进行分类,获得初始分类结果;
步骤S7:采用阈值移动方法将所述初始分类结果进行阈值移动,获得最终分类结果。
可选地,步骤S1具体包括:
步骤S11:统计所述训练数据集中各类样本包含图像的总数量Ni,i=1,2,...,M,M为总类别;
步骤S13:判断所述不平衡度量系数是否大于第一给定阈值;如果所述不平衡度量系数大于第一给定阈值,则说明所述训练数据集中各类样本存在数据不均衡问题,执行“步骤S2”;如果所述不平衡度量系数小于或等于第一给定阈值,则说明不存在数据不均衡问题,则结束。
可选地,步骤S2具体包括:
步骤S21:将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得第一网络预测值;
步骤S22:计算所述第一网络预测值与各类样本中图像真实标签之间的第一损失值;
步骤S23:判断所述第一损失值是否小于或等于第二给定阈值;如果所述第一损失值小于或等于第二给定阈值,则输出神经网络的初始参数;如果所述第一损失值大于第二给定阈值,则执行“步骤S24”。
步骤S24:通过梯度反向传播算法更新神经网络的初始参数,并返回“步骤S21”。
可选地,步骤S3具体包括:
步骤S31:对所述训练数据集中各类样本内的图像进行几何变换和/或颜色变换,获得变换后的图像;
步骤S32:将所述训练数据集内的图像与变换后的图像组成所述扩充数据集。
可选地,步骤S4具体包括:
步骤S41:对所述扩充数据集内的图像进行排序,获得M类样本,每类样本包含Ni张图像,i=1,2,...,M;
步骤S42:令图像数量最多的样本的图像数量为Nmax;
步骤S43:确定各批次每类样本待输入图像的数量L;
步骤S45:判断各类样本中图像的数量是否大于或等于L;如果各类样本中图像的数量大于或等于L,则不重复的从各类样本中提取前L个图像,并将各图像和地址写入当前批次对应的训练列表中;如果各类样本中图像的数量小于L,则从所述训练数据集的相同类型的样本中随机抽取Δ=L-Pi,i=1,2,...,M张图像,并将各图像和地址写入当前批次对应的训练列表中;其中,Pi为当前批次第i类样本已经写入训练列表的图像数量,Δ为待抽取图像的数量;
步骤S46:将当前批次对应的所述训练列表进行随机打乱操作,形成大小为O的训练样本列表;
步骤S47:判断当前批次是否小于总批次;如果当前批次小于总批次,则令当前批次加一,返回“步骤S45”;如果当前批次大于或等于总批次,则执行“步骤S5”。
可选地,步骤S5具体包括:
步骤S51:引入Dropout,将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得第二网络预测值;
步骤S52:计算所述第二网络预测值与各类样本中图片的真实标签之间的第二损失值;
步骤S53:判断所述第二损失值是否小于或等于第三给定阈值;如果所述第二损失值小于或等于第三给定阈值,则输出神经网络的初始参数作为最终参数;如果所述第二损失值大于第三给定阈值,则执行“步骤S54”;
步骤S54:通过梯度反向传播算法更新神经网络的初始参数,并返回“步骤S51”。
本发明还提供一种通用图像目标分类系统,所述系统包括:
判断模块,用于判断训练数据集中各类样本是否存在数据不均衡问题;如果存在数据不均衡问题,则执行“初始参数确定模块”;如果不存在数据不均衡问题,则结束;
初始参数确定模块,用于将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得神经网络的初始参数;
扩充数据集确定模块,用于对所述训练数据集中各类样本内的图像进行扩充,获得扩充数据集;
训练样本列表确定模块,用于采用批量内均衡方法根据所述扩充数据集构造多个训练样本列表;
最终参数确定模块,用于将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得神经网络的最终参数;
初始分类结果确定模块,用于将待分类图像输入到已求出最终参数的神经网络进行分类,获得初始分类结果;
最终分类结果确定模块,用于采用阈值移动方法将所述初始分类结果进行阈值移动,获得最终分类结果。
可选地,判断模块具体包括:
统计单元,用于统计所述训练数据集中各类样本包含图像的总数量Ni,i=1,2,...,M,M为总类别;
不平衡度量系数确定单元,用于根据确定不平衡度量系数;其中,max Ni为样本中包含图像最多的第i类样本包含图像的总数量,min Nj为样本中包含图像最少的第j类样本包含图像的总数量,ρ表示不平衡度量系数;
第一判断单元,用于判断所述不平衡度量系数是否大于第一给定阈值;如果所述不平衡度量系数大于第一给定阈值,则说明所述训练数据集中各类样本存在数据不均衡问题,执行“初始参数确定模块”;如果所述不平衡度量系数小于或等于第一给定阈值,则说明不存在数据不均衡问题,则结束。
可选地,所述初始参数确定模块,具体包括:
第一网络预测值确定单元,用于将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得第一网络预测值;
第一损失值确定单元,用于计算所述第一网络预测值与各类样本中图像真实标签之间的第一损失值;
第二判断单元,用于判断所述第一损失值是否小于或等于第二给定阈值;如果所述第一损失值小于或等于第二给定阈值,则输出神经网络的初始参数;如果所述第一损失值大于第二给定阈值,则执行“第一参数更新单元”;
第一参数更新单元,用于通过梯度反向传播算法更新神经网络的初始参数,并返回“第一网络预测值确定单元”。
可选地,所述训练样本列表确定模块,具体包括:
排序单元,用于对所述扩充数据集内的图像进行排序,获得M类样本,每类样本包含Ni张图像,i=1,2,...,M;
Nmax确定单元,用于令图像数量最多的样本的图像数量为Nmax;
L确定单元,用于确定各批次每类样本待输入图像的数量L;
第三判断单元,用于判断各类样本中图像的数量是否大于或等于L;如果各类样本中图像的数量大于或等于L,则不重复的从各类样本中提取前L个图像,并将各图像和地址写入当前批次对应的训练列表中;如果各类样本中图像的数量小于L,则从所述训练数据集的相同类型的样本中随机抽取Δ=L-Pi,i=1,2,...,M张图像,并将各图像和地址写入当前批次对应的训练列表中;其中,Pi为当前批次第i类样本已经写入训练列表的图像数量,Δ为待抽取图像的数量;
训练样本列表确定单元,用于将当前批次对应的所述训练列表进行随机打乱操作,形成大小为O的训练样本列表;
第四判断单元,用于判断当前批次是否小于总批次;如果当前批次小于总批次,则令当前批次加一,返回“第三判断单元”;如果当前批次大于或等于总批次,则执行“最终参数确定模块”。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明提供了一种通用图像目标分类方法及系统,方法包括:当训练数据集中各类样本是否存在数据不均衡问题时,将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得神经网络的初始参数;对训练数据集中各类样本内的图像进行扩充,获得扩充数据集;采用批量内均衡方法根据扩充数据集构造多个训练样本列表;将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得神经网络的最终参数;将待分类图像输入到已求出最终参数的神经网络进行分类,获得初始分类结果;采用阈值移动方法将所述初始分类结果进行阈值移动,获得最终分类结果,进一步提高了类别间样本不均衡条件下的目标分类精度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例通用图像目标分类方法流程图
图2为本发明实施例三阶段学习方法流程图;
图3为本发明实施例批量内均衡方法流程图;
图4为本发明实施例通用图像目标分类系统结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种通用图像目标分类方法及系统,以提高类别间样本不均衡条件下的目标分类精度。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
使用卷积神经网络直接对不均衡数据进行训练和测试往往得不到理想的结果,其原因在于多数类数据对分类器的影响力大于少数类数据,从而使分类边界偏向少数类。卷积神经网络中参数众多,经过不平衡数据训练后的参数很容易陷入局部最优,更增加了调整分类边界的难度,从而导致识别结果变差。本发明将卷积神经网络进行训练,完成参数的初始化,之后通过批量内均衡方法构建多个训练样本列表,并对网络进行微调训练,最后完成测试。
实施例1
如图1-2所示,本发明提供一种通用图像目标分类方法,所述方法包括:
步骤S1:判断训练数据集中各类样本是否存在数据不均衡问题;如果存在数据不均衡问题,则执行“步骤S2”;如果不存在数据不均衡问题,则结束。
步骤S2:将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得神经网络的初始参数。
步骤S3:对所述训练数据集中各类样本内的图像进行扩充,获得扩充数据集。
步骤S4:采用批量内均衡方法根据所述扩充数据集构造多个训练样本列表。
步骤S5:将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得神经网络的最终参数。
步骤S6:将待分类图像输入到已求出最终参数的神经网络进行分类,获得初始分类结果。
步骤S7:采用阈值移动方法将所述初始分类结果进行阈值移动,获得最终分类结果。
下面对各个步骤进行详细论述:
步骤S1:确定训练数据集中各类样本是否存在数据不均衡问题;如果存在数据不均衡问题,则执行“步骤S2”;如果不存在数据不均衡问题,则结束,具体包括:
步骤S11:统计所述训练数据集中各类样本包含图像的总数量Ni,i=1,2,...,M;所述样本包括Ni张图像。
步骤S12:根据确定不平衡度量系数;其中,max Ni为样本中包含图像最多的第i类样本包含图像的总数量,min Nj为样本中包含图像最少的第j类样本包含图像的总数量,ρ表示不平衡度量系数,M为总类别。
步骤S13:判断所述不平衡度量系数是否大于第一给定阈值;如果所述不平衡度量系数大于第一给定阈值,则说明所述训练数据集中各类样本存在数据不均衡问题,执行“步骤S2”;如果所述不平衡度量系数小于或等于第一给定阈值,则说明不存在数据不均衡问题,则结束。
步骤S2:将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得神经网络的初始参数,具体包括:
步骤S21:将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得第一网络预测值。
步骤S22:计算所述第一网络预测值与各类样本中图像真实标签之间的第一损失值。
步骤S23:判断所述第一损失值是否小于或等于第二给定阈值;如果所述第一损失值小于或等于第二给定阈值,则输出神经网络的初始参数;如果所述第一损失值大于第二给定阈值,则执行“步骤S24”。
步骤S24:通过梯度反向传播算法更新神经网络的初始参数,并返回“步骤S21”。
步骤S3:对所述训练数据集中各类样本内的图像进行扩充,获得扩充数据集,具体包括:
步骤S31:对所述训练数据集中各类样本内的图像进行几何变换和/或颜色变换,获得变换后的图像;几何变换包括旋转、裁剪、变形和缩放中至少一种,颜色变换包括添加噪声、模糊和颜色变换中至少一种。
步骤S32:将所述训练数据集内的图像与变换后的图像组成所述扩充数据集。
现有的批量内均衡方法是使参与训练的每个批次中各类样本尽量保持平衡,主要思路是通过建立类别列表和类内样本列表控制进入训练批次的样本。但这种方法实质上还是一种面向卷积神经网络训练的过采样方法,在一个训练批次中会出现重复参与训练的样本,不利于网络学习特征,且对于M类训练样本就需要建立M个对应的类内样本列表,当数据集较大或样本类别较多时会带来过大的工作量。因此发明在此基础上,利用批量内均衡方法处理不平衡数据集,只需要建立训练样本列表就可以控制每批次训练图像的数量均衡,整个操作可以在内存中在线完成,便于实现。
如图3所示,本发明采用批量内均衡方法根据所述扩充数据集构造多个训练样本列表,具体包括:
步骤S41:对所述扩充数据集内的图像进行排序,获得M类样本,每类样本包含Ni张图像,i=1,2,...,M。
步骤S42:令图像数量最多的样本的图像数量为Nmax。
步骤S43:确定各批次每类样本待输入图像的数量L。
步骤S45:判断各类样本中图像的数量是否大于或等于L;如果各类样本中图像的数量大于或等于L,则不重复的从各类样本中提取前L个图像,并将各图像和地址写入当前批次对应的训练列表中;如果各类样本中图像的数量小于L,则从所述训练数据集的相同类型的样本中随机抽取Δ=L-Pi,i=1,2,...,M张图像,并将各图像和地址写入当前批次对应的训练列表中;其中,Pi为当前批次第i类样本已经写入训练列表的图像数量,Δ为待抽取图像的数量。
步骤S46:将当前批次对应的所述训练列表进行随机打乱操作,形成大小为O的训练样本列表,训练样本列表O=L*M。
步骤S47:判断当前批次是否小于总批次;如果当前批次小于总批次,则令当前批次加一,返回“步骤S45”;如果当前批次大于或等于总批次,则执行“步骤S5”。
步骤S5:将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得神经网络的最终参数,具体包括:
步骤S51:引入Dropout,将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得第二网络预测值。在微调训练中引入Dropout,起到网络正则化的作用,避免因为平衡数据的数据量过大而导致过拟合问题。
步骤S52:计算所述第二网络预测值与各类样本中图片的真实标签之间的第二损失值。
步骤S53:判断所述第二损失值是否小于或等于第三给定阈值;如果所述第二损失值小于或等于第三给定阈值,则输出神经网络的初始参数作为最终参数;如果所述第二损失值大于第三给定阈值,则执行“步骤S54”。
步骤S54:通过梯度反向传播算法更新神经网络的初始参数,并返回“步骤S51”。
由于数据扩充和采用批量内均衡方法构造多个训练样本列表不可避免的会增加训练数据量,导致不平衡数据和平衡数据的分布与体量存在较大差异,所以在微调训练过程中使用Dropout防止网络过拟合。
步骤S6:将待分类图像输入到已求出最终参数的神经网络进行分类,获得初始分类结果。
步骤S7:采用阈值移动方法将所述初始分类结果进行阈值移动,获得最终分类结果。
由于对数据进行了平衡处理,数据量将远大于测试时使用的不平衡数据,如果直接用继续训练得到的模型进行测试将可能致过拟合问题。Dropout是一种简单有效的正则化方法,具体是指在网络的训练过程中,将神经网络单元按照一定的概率p将其暂时从网络中丢弃,不参与训练过程。
假设a(h)是形如h(x)=Wx+b的激活函数,表示di维输入x在dh维输出空间上的线性投影,则加入Dropout后的激活函数表示为:f(h)=D·a(h),是dh维的伯努利变量,满足以下概率密度分布:
对于第i个神经元,训练时输出为:
可以看出,这种使神经元随机失活的操作相当于在每一次随机梯度下降过程中都训练了不同的网络,因此Doropout相当于对完整的神经网络抽样出一些子集进行训练,每次基于输入数据只更新子网络的参数。需要说明的是,在测试过程中是不使用Dropout的,但是需要对输出值乘以失活概率p(本专利中p取0.5)。因为在训练时使用的是部分神经元,而测试时使用的是全部神经元,因此只有在输出中乘上p才能使神经元的输出与训练时的预期输出保持一致,即测试时第i个神经元的输出为:
在测试过程中采用阈值移动方法。定义w为错分代价权重,假设有M类共N个样本,将各类样本按数量从大到小排列为N1,N2,...,NM,则第i类的错分代价权重表示为数量越少的类别对应的错分代价权重越大。在分类任务中,分类器往往输出一个满足且0≤Oi≤1的实数值Oi(i=1,2,...,M),它表征了输入样本相对于某一类别的隶属度,或者说Oi可以表示分类器对某一样本的M个预测概率,则最终的输出结果为也就是说,将经过阈值移动处理后的预测结果表示为具体公式为:
在网络中的实现输出层阈值移动时,首先统计不平衡测试集中各类目标的数量,然后计算各类的错分代价权重wi,得到总体的错分代价权重w=[w1,w2,...,wm],最后用w乘以网络输出,送入分类器完成分类。
阈值移动方法的目的是将判决阈值向错分代价较低的多数类移动,使错分代价越高的样本类越难被错误分类。这种方法实际上是在测试阶段引入了代价敏感学习机制,提升少数类的错分代价,但错分代价权重w并不是由主观赋值得到的,而是基于数据分布情况求得,可以更好地适应数据自身特点。
本发明分为三个阶段,第一阶段使用不平衡的训练数据集对神经网络进行预训练,神经网络的初始参数,使用预训练得到的初始参数相比一般的初始化方法更贴合数据特征,降低了继续训练过程中参数优化的难度。第二阶段对训练数据集进行扩充,获得扩充数据集;第三阶段使用批量内均衡方法构造平衡数据列表,然后在平衡数据列表上利用已求出初始参数的神经网络进行微调训练,增大了对少数类数据的学习强度,有利于提升网络对少数类的识别能力。在微调训练中引入Dropout,起到网络正则化的作用,避免因为平衡数据的数据量过大而导致过拟合问题。在最后测试时,使用输出层阈值移动抑制不平衡测试数据对分类器的影响。
实施例2
如图4所示,本发明提供一种通用图像目标分类系统,所述系统包括:
判断模块401,用于判断训练数据集中各类样本是否存在数据不均衡问题;如果存在数据不均衡问题,则执行“初始参数确定模块”;如果不存在数据不均衡问题,则结束。
初始参数确定模块402,用于将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得神经网络的初始参数.
扩充数据集确定模块403,用于对所述训练数据集中各类样本内的图像进行扩充,获得扩充数据集。
训练样本列表确定模块404,用于采用批量内均衡方法根据所述扩充数据集构造多个训练样本列表。
最终参数确定模块405,用于将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得神经网络的最终参数。
初始分类结果确定模块406,用于将待分类图像输入到已求出最终参数的神经网络进行分类,获得初始分类结果。
最终分类结果确定模块407,用于采用阈值移动方法将所述初始分类结果进行阈值移动,获得最终分类结果。
作为一种实施方式,本发明判断模块401具体包括:
统计单元,用于统计所述训练数据集中各类样本包含图像的总数量Ni,i=1,2,...,M,M为总类别。
不平衡度量系数确定单元,用于根据确定不平衡度量系数;其中,max Ni为样本中包含图像最多的第i类样本包含图像的总数量,min Nj为样本中包含图像最少的第j类样本包含图像的总数量,ρ表示不平衡度量系数。
第一判断单元,用于判断所述不平衡度量系数是否大于第一给定阈值;如果所述不平衡度量系数大于第一给定阈值,则说明所述训练数据集中各类样本存在数据不均衡问题,执行“初始参数确定模块”;如果所述不平衡度量系数小于或等于第一给定阈值,则说明不存在数据不均衡问题,则结束。
作为一种实施方式,本发明所述初始参数确定模块402,具体包括:
第一网络预测值确定单元,用于将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得第一网络预测值。
第一损失值确定单元,用于计算所述第一网络预测值与各类样本中图像真实标签之间的第一损失值。
第二判断单元,用于判断所述第一损失值是否小于或等于第二给定阈值;如果所述第一损失值小于或等于第二给定阈值,则输出神经网络的初始参数;如果所述第一损失值大于第二给定阈值,则执行“第一参数更新单元”。
第一参数更新单元,用于通过梯度反向传播算法更新神经网络的初始参数,并返回“第一网络预测值确定单元”。
作为一种实施方式,本发明所述扩充数据集确定模块403,具体包括:
图像变换单元,用于对所述训练数据集中各类样本内的图像进行几何变换和/或颜色变换,获得变换后的图像。
扩充数据集确定单元,用于将所述训练数据集内的图像与变换后的图像组成所述扩充数据集。
作为一种实施方式,本发明所述训练样本列表确定模块404,具体包括:
排序单元,用于对所述扩充数据集内的图像进行排序,获得M类样本,每类样本包含Ni张图像,i=1,2,...,M。
Nmax确定单元,用于令图像数量最多的样本的图像数量为Nmax。
L确定单元,用于确定各批次每类样本待输入图像的数量L。
第三判断单元,用于判断各类样本中图像的数量是否大于或等于L;如果各类样本中图像的数量大于或等于L,则不重复的从各类样本中提取前L个图像,并将各图像和地址写入当前批次对应的训练列表中;如果各类样本中图像的数量小于L,则从所述训练数据集的相同类型的样本中随机抽取Δ=L-Pi,i=1,2,...,M张图像,并将各图像和地址写入当前批次对应的训练列表中;其中,Pi为当前批次第i类样本已经写入训练列表的图像数量,Δ为待抽取图像的数量。
训练样本列表确定单元,用于将当前批次对应的所述训练列表进行随机打乱操作,形成大小为O的训练样本列表。
第四判断单元,用于判断当前批次是否小于总批次;如果当前批次小于总批次,则令当前批次加一,返回“第三判断单元”;如果当前批次大于或等于总批次,则执行“最终参数确定模块”。
作为一种实施方式,本发明所述最终参数确定模块405,具体包括:
第二网络预测值确定单元,用于引入Dropout,将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得第二网络预测值。
第二损失值确定单元,用于计算所述第二网络预测值与各类样本中图片的真实标签之间的第二损失值。
第五判断单元,用于判断所述第二损失值是否小于或等于第三给定阈值;如果所述第二损失值小于或等于第三给定阈值,则输出神经网络的初始参数作为最终参数;如果所述第二损失值大于第三给定阈值,则执行“第二参数更新单元”。
第二参数更新单元,用于通过梯度反向传播算法更新神经网络的初始参数,并返回“步第二网络预测值确定单元”。
实施例3
实验在64位Ubuntu 14.04系统环境下进行,软件方面主要基于深度学习架构Pytorch和Python开发环境Pycharm,硬件主要基于Intel(R)Core(TM)i7-6770K@4.00GHzCPU和NVIDIA GTX1080 GPU,采用CUDA8.0加速计算。
在一般分类任务中,大多采用准确率这一指标对分类结果进行评价,但在不平衡分类中,这一指标不再适用。以简单的二分类为例,假设有100个待分类样本,多数类有90个,少数类有10个,那么即使分类器将所有的少数类错分为多数类,也可以得到90%的准确率,但这样的衡量指标显然是没有意义的。从混淆矩阵中可以简明的获取到每一类样本的分类结果和分类准确率,且很容易推广到多分类情况。基于这样的考虑,本实验采用混淆矩阵作为分类结果的评价指标。
以不均衡数据集OpenSARShip为例,讲解不均衡分类过程。
将输入图像大小统一为128×128,迭代次数(Epoch)设为50次,批处理大小(BatchSize)为16,反向传播过程采用交叉熵损失函数,学习率设置为0.01。两种模式下的分类混淆矩阵如表1和2所示,P表示各类/总体分类精度,定义为各类/总体被正确分类的样本数与样本总数的比值。
表1 GRD模式实验基准
表2 SLC模式实验基准
混淆矩阵中第i行第j列的数字表示第i类被判别为第j类的数量,每一横行的数字总和表示该类样本的总个数,因此对角线上的数字越大表示分类结果越好。从表1和表2中可以看出两种模式下最多类Cargo的分类准确率都远高于其他少数类,少数类的分类率很低且很多样本都被误判为Cargo类,说明多数类对少数类的分类结果产生了很大干扰。
保持实验条件不变,采用三阶段学习方法进行分类实验,得到两种模式下的分类结果如表3和表4所示。
表3 GRD模式分类结果
表4 SLC模式分类结果
从表3和表4中可以看出,GRD模式下的三个少数类的分类准确率从0.3,0.34和0.11分别提升至0.59,0.60和0.61,总体精度由0.77提升至0.82;SLC模式下的四个少数类的分类准确率从0,0.53,0.47和0.29分别提升至0.50,0.69,0.64和0.57,总体精度由0.73提升至0.78,表明使用三阶段学习方法能够取得比直接使用不平衡数据训练更优的实验结果。各少数类的分类效果有明显提升,总体精度提升幅度较小主要因为多数类样本的数量过大,总体精度很大程度上还是受到多数类分类精度的影响。同时也注意到两种模式下,多数类Cargo的分类正确率都略有下降,这是因为阈值移动导致了决策边界偏移,从而使部分多数类样本出现了错分情况。但从整体来看,所提方法用多数类分类率的略微下降换来了少数类分类精度的大幅增长,对不平衡数据的分类结果具有较好的提升。
为了研究更好地研究第一和第三阶段方法对实验结果的具体影响,在相同的训练条件下,使用相同的卷积神经网络结构(ResNet50)进行了三组对比实验。实验设置如下:
对比实验1:不使用第一阶段方法对网络初始化,采用第三阶段学习方法构建平衡数据列表,在模型微调的基础上完成训练和测试(目的在于研究第一阶段方法对实验结果的影响)。
对比实验2:不使用模型微调策略,只对不平衡数据分别采用传统方法和批内平衡采样方法进行处理,然后完成训练和测试(目的在于研究批内平衡采样对实验结果的影响)。
对比实验3:不使用批内平衡采样,在卷积神经网络中分别使用模型微调中的Dropout和阈值移动策略进行训练和测试(目的在于研究Dropout和阈值移动对实验结果的影响)。
本发明以GRD模式为例进行实验,各组实验结果如表5至6所示。
表5对比实验1的分类精度
表6对比实验2的分类精度
表7对比实验3的分类精度
由表5可知,不使用不平衡数据对网络初始化(即第一阶段),只采用第二阶段方法的总体分类精度为0.81,略低于使用两阶段方法的分类精度,说明使用不平衡数据初始化网络对于提升分类精度有一定帮助。由表6可知,相比于ClassAware Sampling方法,批内平衡采样方法对各类样本分类精度能够有更大的提升,多数类的分类精度也得到了略微提升。由表7可知,只使用Dropout方法对分类精度的提升较小,其主要作用还是体现在防止过拟合上,阈值移动方法虽然对少数类分类精度的提升比较明显,但使得多数类Cargo的分类精度有所下降,也体现在了综合采用几种方法时的实验结果中。综合分类结果,批内平衡采样方法和阈值移动方法对提升少数类分类精度起到了主要作用,两种方法同时使用可以得到更好的分类结果。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种通用图像目标分类方法,其特征在于,所述方法包括:
步骤S1:判断训练数据集中各类样本是否存在数据不均衡问题;如果存在数据不均衡问题,则执行“步骤S2”;如果不存在数据不均衡问题,则结束;
步骤S2:将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得神经网络的初始参数;
步骤S3:对所述训练数据集中各类样本内的图像进行扩充,获得扩充数据集;
步骤S4:采用批量内均衡方法根据所述扩充数据集构造多个训练样本列表;
步骤S5:将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得神经网络的最终参数;
步骤S6:将待分类图像输入到已求出最终参数的神经网络进行分类,获得初始分类结果;
步骤S7:采用阈值移动方法将所述初始分类结果进行阈值移动,获得最终分类结果。
2.根据权利要求1所述的通用图像目标分类方法,其特征在于,步骤S1具体包括:
步骤S11:统计所述训练数据集中各类样本包含图像的总数量Ni,i=1,2,...,M,M为总类别;
步骤S13:判断所述不平衡度量系数是否大于第一给定阈值;如果所述不平衡度量系数大于第一给定阈值,则说明所述训练数据集中各类样本存在数据不均衡问题,执行“步骤S2”;如果所述不平衡度量系数小于或等于第一给定阈值,则说明不存在数据不均衡问题,则结束。
3.根据权利要求1所述的通用图像目标分类方法,其特征在于,步骤S2具体包括:
步骤S21:将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得第一网络预测值;
步骤S22:计算所述第一网络预测值与各类样本中图像真实标签之间的第一损失值;
步骤S23:判断所述第一损失值是否小于或等于第二给定阈值;如果所述第一损失值小于或等于第二给定阈值,则输出神经网络的初始参数;如果所述第一损失值大于第二给定阈值,则执行“步骤S24”。
步骤S24:通过梯度反向传播算法更新神经网络的初始参数,并返回“步骤S21”。
4.根据权利要求1所述的通用图像目标分类方法,其特征在于,步骤S3具体包括:
步骤S31:对所述训练数据集中各类样本内的图像进行几何变换和/或颜色变换,获得变换后的图像;
步骤S32:将所述训练数据集内的图像与变换后的图像组成所述扩充数据集。
5.根据权利要求1所述的通用图像目标分类方法,其特征在于,步骤S4具体包括:
步骤S41:对所述扩充数据集内的图像进行排序,获得M类样本,每类样本包含Ni张图像,i=1,2,...,M;
步骤S42:令图像数量最多的样本的图像数量为Nmax;
步骤S43:确定各批次每类样本待输入图像的数量L;
步骤S45:判断各类样本中图像的数量是否大于或等于L;如果各类样本中图像的数量大于或等于L,则不重复的从各类样本中提取前L个图像,并将各图像和地址写入当前批次对应的训练列表中;如果各类样本中图像的数量小于L,则从所述训练数据集的相同类型的样本中随机抽取Δ=L-Pi,i=1,2,...,M张图像,并将各图像和地址写入当前批次对应的训练列表中;其中,Pi为当前批次第i类样本已经写入训练列表的图像数量,Δ为待抽取图像的数量;
步骤S46:将当前批次对应的所述训练列表进行随机打乱操作,形成大小为O的训练样本列表;
步骤S47:判断当前批次是否小于总批次;如果当前批次小于总批次,则令当前批次加一,返回“步骤S45”;如果当前批次大于或等于总批次,则执行“步骤S5”。
6.根据权利要求1所述的通用图像目标分类方法,其特征在于,步骤S5具体包括:
步骤S51:引入Dropout,将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得第二网络预测值;
步骤S52:计算所述第二网络预测值与各类样本中图片的真实标签之间的第二损失值;
步骤S53:判断所述第二损失值是否小于或等于第三给定阈值;如果所述第二损失值小于或等于第三给定阈值,则输出神经网络的初始参数作为最终参数;如果所述第二损失值大于第三给定阈值,则执行“步骤S54”;
步骤S54:通过梯度反向传播算法更新神经网络的初始参数,并返回“步骤S51”。
7.一种通用图像目标分类系统,其特征在于,所述系统包括:
判断模块,用于判断训练数据集中各类样本是否存在数据不均衡问题;如果存在数据不均衡问题,则执行“初始参数确定模块”;如果不存在数据不均衡问题,则结束;
初始参数确定模块,用于将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得神经网络的初始参数;
扩充数据集确定模块,用于对所述训练数据集中各类样本内的图像进行扩充,获得扩充数据集;
训练样本列表确定模块,用于采用批量内均衡方法根据所述扩充数据集构造多个训练样本列表;
最终参数确定模块,用于将多个所述训练样本列表依次输入到已求出初始参数的神经网络进行微调训练,获得神经网络的最终参数;
初始分类结果确定模块,用于将待分类图像输入到已求出最终参数的神经网络进行分类,获得初始分类结果;
最终分类结果确定模块,用于采用阈值移动方法将所述初始分类结果进行阈值移动,获得最终分类结果。
8.根据权利要求7所述的通用图像目标分类系统,其特征在于,判断模块具体包括:
统计单元,用于统计所述训练数据集中各类样本包含图像的总数量Ni,i=1,2,...,M,M为总类别;
不平衡度量系数确定单元,用于根据确定不平衡度量系数;其中,max Ni为样本中包含图像最多的第i类样本包含图像的总数量,min Nj为样本中包含图像最少的第j类样本包含图像的总数量,ρ表示不平衡度量系数;
第一判断单元,用于判断所述不平衡度量系数是否大于第一给定阈值;如果所述不平衡度量系数大于第一给定阈值,则说明所述训练数据集中各类样本存在数据不均衡问题,执行“初始参数确定模块”;如果所述不平衡度量系数小于或等于第一给定阈值,则说明不存在数据不均衡问题,则结束。
9.根据权利要求7所述的通用图像目标分类系统,其特征在于,所述初始参数确定模块,具体包括:
第一网络预测值确定单元,用于将所述训练数据集中各类样本依次输入神经网络进行粗调训练,获得第一网络预测值;
第一损失值确定单元,用于计算所述第一网络预测值与各类样本中图像真实标签之间的第一损失值;
第二判断单元,用于判断所述第一损失值是否小于或等于第二给定阈值;如果所述第一损失值小于或等于第二给定阈值,则输出神经网络的初始参数;如果所述第一损失值大于第二给定阈值,则执行“第一参数更新单元”;
第一参数更新单元,用于通过梯度反向传播算法更新神经网络的初始参数,并返回“第一网络预测值确定单元”。
10.根据权利要求7所述的通用图像目标分类系统,其特征在于,所述训练样本列表确定模块,具体包括:
排序单元,用于对所述扩充数据集内的图像进行排序,获得M类样本,每类样本包含Ni张图像,i=1,2,...,M;
Nmax确定单元,用于令图像数量最多的样本的图像数量为Nmax;
L确定单元,用于确定各批次每类样本待输入图像的数量L;
第三判断单元,用于判断各类样本中图像的数量是否大于或等于L;如果各类样本中图像的数量大于或等于L,则不重复的从各类样本中提取前L个图像,并将各图像和地址写入当前批次对应的训练列表中;如果各类样本中图像的数量小于L,则从所述训练数据集的相同类型的样本中随机抽取Δ=L-Pi,i=1,2,...,M张图像,并将各图像和地址写入当前批次对应的训练列表中;其中,Pi为当前批次第i类样本已经写入训练列表的图像数量,Δ为待抽取图像的数量;
训练样本列表确定单元,用于将当前批次对应的所述训练列表进行随机打乱操作,形成大小为O的训练样本列表;
第四判断单元,用于判断当前批次是否小于总批次;如果当前批次小于总批次,则令当前批次加一,返回“第三判断单元”;如果当前批次大于或等于总批次,则执行“最终参数确定模块”。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110134064.0A CN112733963B (zh) | 2021-02-01 | 2021-02-01 | 一种通用图像目标分类方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110134064.0A CN112733963B (zh) | 2021-02-01 | 2021-02-01 | 一种通用图像目标分类方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112733963A true CN112733963A (zh) | 2021-04-30 |
CN112733963B CN112733963B (zh) | 2023-02-21 |
Family
ID=75595087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110134064.0A Active CN112733963B (zh) | 2021-02-01 | 2021-02-01 | 一种通用图像目标分类方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112733963B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108985342A (zh) * | 2018-06-22 | 2018-12-11 | 华南理工大学 | 一种基于深度增强学习的不平衡分类方法 |
CN109102014A (zh) * | 2018-08-01 | 2018-12-28 | 中国海洋大学 | 基于深度卷积神经网络的类别不平衡的图像分类方法 |
CN109711452A (zh) * | 2018-12-20 | 2019-05-03 | 四川新网银行股份有限公司 | 一种基于wgan-gp模型对用户行为的不平衡分类方法 |
CN110059720A (zh) * | 2019-03-18 | 2019-07-26 | 西北大学 | 用于在非均衡数据集上训练深度神经网络的方法及结构 |
WO2019237240A1 (zh) * | 2018-06-12 | 2019-12-19 | 中国科学院深圳先进技术研究院 | 一种增强型生成式对抗网络以及目标样本识别方法 |
CN110689089A (zh) * | 2019-10-12 | 2020-01-14 | 电子科技大学 | 用于深度学习多类别医疗图像分类的主动增量训练方法 |
CN111461190A (zh) * | 2020-03-24 | 2020-07-28 | 华南理工大学 | 一种基于深度卷积神经网络的非均衡船舶分类方法 |
-
2021
- 2021-02-01 CN CN202110134064.0A patent/CN112733963B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019237240A1 (zh) * | 2018-06-12 | 2019-12-19 | 中国科学院深圳先进技术研究院 | 一种增强型生成式对抗网络以及目标样本识别方法 |
CN108985342A (zh) * | 2018-06-22 | 2018-12-11 | 华南理工大学 | 一种基于深度增强学习的不平衡分类方法 |
CN109102014A (zh) * | 2018-08-01 | 2018-12-28 | 中国海洋大学 | 基于深度卷积神经网络的类别不平衡的图像分类方法 |
CN109711452A (zh) * | 2018-12-20 | 2019-05-03 | 四川新网银行股份有限公司 | 一种基于wgan-gp模型对用户行为的不平衡分类方法 |
CN110059720A (zh) * | 2019-03-18 | 2019-07-26 | 西北大学 | 用于在非均衡数据集上训练深度神经网络的方法及结构 |
CN110689089A (zh) * | 2019-10-12 | 2020-01-14 | 电子科技大学 | 用于深度学习多类别医疗图像分类的主动增量训练方法 |
CN111461190A (zh) * | 2020-03-24 | 2020-07-28 | 华南理工大学 | 一种基于深度卷积神经网络的非均衡船舶分类方法 |
Non-Patent Citations (4)
Title |
---|
ZHI-HUA ZHOU ET AL.: "Training cost-sensitive neural networks with methods addressing the class imbalance problem", 《IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING》 * |
朱雪: "动态集成分类方法的研究", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 * |
邵嘉琦 等: "基于CNN的不平衡SAR图像舰船目标识别", 《电光与控制》 * |
马骏等: "不均衡数据对卷积神经网络的影响及改进算法", 《浙江科技学院学报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112733963B (zh) | 2023-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110097543B (zh) | 基于生成式对抗网络的热轧带钢表面缺陷检测方法 | |
EP3633549B1 (en) | Method and apparatus for training a facial detection model | |
KR102224253B1 (ko) | 심층 네트워크와 랜덤 포레스트가 결합된 앙상블 분류기의 경량화를 위한 교사-학생 프레임워크 및 이를 기반으로 하는 분류 방법 | |
CN109766835B (zh) | 基于多参数优化生成对抗网络的sar目标识别方法 | |
CN110276377A (zh) | 一种基于贝叶斯优化的对抗样本生成方法 | |
CN110322445B (zh) | 基于最大化预测和标签间相关性损失函数的语义分割方法 | |
CN111368660A (zh) | 一种单阶段半监督图像人体目标检测方法 | |
CN110716792B (zh) | 一种目标检测器及其构建方法和应用 | |
CN109598220A (zh) | 一种基于多元输入多尺度卷积的人数统计方法 | |
CN109919055B (zh) | 一种基于AdaBoost-KNN的动态人脸情感识别方法 | |
CN111145145B (zh) | 一种基于MobileNets的图像表面缺陷检测方法 | |
CN112232395B (zh) | 一种基于联合训练生成对抗网络的半监督图像分类方法 | |
CN110033043B (zh) | 基于条件生成式对抗网络的雷达一维距离像拒判方法 | |
Nguyen-Son et al. | Opa2d: One-pixel attack, detection, and defense in deep neural networks | |
CN109409231B (zh) | 基于自适应隐马尔可夫的多特征融合手语识别方法 | |
CN112556682B (zh) | 一种水下复合传感器目标自动检测算法 | |
CN112733963B (zh) | 一种通用图像目标分类方法及系统 | |
CN110992334B (zh) | 用于dcgan网络生成图像的质量评估方法 | |
CN114936890A (zh) | 一种基于逆倾向加权方法的反事实公平的推荐方法 | |
Soujanya et al. | A CNN based approach for handwritten character identification of Telugu guninthalu using various optimizers | |
Guan | Performance Analysis of Convolutional Neural Networks and Multilayer Perceptron in Generative Adversarial Networks | |
CN117975190B (zh) | 基于视觉预训练模型的模仿学习混合样本处理方法及装置 | |
Wada et al. | Performance Study of Image Data Augmentation by Generative Adversarial Networks | |
CN104063591B (zh) | 统一模型非库属目标一维距离像判别方法 | |
Liiv et al. | Iterative gradient-based adversarial attacks on neural network image classifiers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |