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

一种图像自动数据增强方法、系统、介质及终端与流程

2021-10-24 10:43:00 来源:中国专利 TAG:终端 计算机应用 介质 图像 增强


1.本发明涉及计算机应用领域,尤其涉及一种图像自动数据增强方法、系统、介质及终端。


背景技术:

2.随着深度学习的应用发展,部分领域模型、算法的发展步入了一个发展瓶颈,这是由于数据和特征据决定了机器学习的上限,而模型和算法只是尝试去逼近这个上限。因此,不少研究者把目光重新放在了数据。在深度学习任务中,面临复杂的实际问题,庞大的训练集也无法面面俱到,覆盖问题的每一个角落。如果从训练集的数据分布上来看,训练集在某些点上,是缺失的。通常在模型训练过程中,算法工程会使用例如平移、旋转等方法对原始数据进行增强拓展,尝试补充数据分布上缺失的点。
3.目前,研究者开始将目光转向对数据进行自动增强,把以往通过人工设计的过程交给机器自己去学习,让机器自己对数据分布缺失的点进行填充。常见的自动数据增强方法有autoaugment(自动数据增强)、fast autoaugment(快速自动数据增强)、aws(权重共享自动数据增强)、dada(高效可微分自动数据增强技术)等。以fast autoaugment为例,其过程为建立若干个数据增强策略组合,每个策略组合由多个数据增强操作组成,每个增强操作具有两个参数,可能性和强度,限制参数空间,然后使用常用的automl(自动机器学习)的参数搜索方法对参数进行搜索,试图找出最优的若干组数据增强策略组合,然后利用其作为任务训练过程中的增强方法对训练集进行增强。但是,现有的方式存在参数空间大,耗时多,策略组合参数是固定,数据分布填充不完整,数据增强效果不佳的问题。


技术实现要素:

4.鉴于以上所述现有技术的缺点,本发明提供一种图像自动数据增强方法、系统、介质及终端,以解决上述技术问题。
5.本发明提供的图像自动数据增强方法,包括:
6.获取多种基础数据增强操作及每种操作的参数范围,形成基础数据增强操作集;
7.根据所述基础数据增强操作集,以及基础数据增强操作的执行概率、数据增强操作的强度参数,构建数据增强策略集;
8.根据所有数据增强策略的执行概率和数据增强处理的准确率,判定数据增强策略集中的有害增强策略,对其进行剔除处理,通过剔除处理后的数据增强策略,进行模型训练。
9.于本发明的一实施例中,所述构建数据增强策略集之后,还包括:
10.在所述选择数据增强策略集中选择一数据增强策略,对待训练模型进行数据增强处理;
11.获取数据增强处理的准确率,以所述准确率为目标对数据增强策略的执行概率进行更新,直至训练结束;
12.重复采用数据增强策略集中的其他数据增强策略进行训练,获取准确率最高的数据增强策略,及其对应的执行概率并作为最优概率。
13.于本发明的一实施例中,所述根据所有数据增强策略的执行概率和数据增强处理的准确率,判定数据增强策略集中的有害增强策略,包括:
14.将更新后的执行概率与预设的初始执行概率进行比较,
15.若更新后的执行概率大于所述初始执行概率,则判定为有益增强策略;
16.若更新后的执行概率小于等于预设最低阈值,则判定为有害增强策略;所述最低阈值小于所述初始执行概率。
17.于本发明的一实施例中,在所述选择数据增强策略集中选择一数据增强策略,对待训练模型进行数据增强处理之前,还包括:
18.获取图像数据,并在所述图像数据中进行随机选取,形成样本数据集;
19.按预设比例将所述样本数据集分为用于训练的第一训练集和用于测试的第二训练集;
20.通过所述第一训练集进行训练,并采用预设的初始执行概率,以及在参数范围内随机选取的数据增强策略中的强度参数,进行数据增强处理;
21.在模型训练初始阶段结束后,每经过m批处理,通过所述第二训练集对模型进行测试。
22.于本发明的一实施例中,针对训练的任一批处理,各数据增强策略通过单独使用或串行使用进行数据增强处理。
23.于本发明的一实施例中,通过超参数优化算法,以所述准确率为目标对数据增强策略的执行概率进行更新。
24.于本发明的一实施例中,所述待训练模型与训练任务类型相匹配,所述待训练模型包括分类模型、检测模型、分割模型,根据所述任务类型和耗时预先将所述基础数据增强操作的执行概率量化为不同梯度的级别,进而选取所述初始执行概率。
25.本发明提供一种图像自动数据增强系统,包括:
26.基础模块,用于获取多种基础数据增强操作及每种操作的参数范围,形成基础数据增强操作集;
27.策略模块,用于根据所述基础数据增强操作集,以及基础数据增强操作的执行概率、数据增强操作的强度参数,构建数据增强策略集;
28.处理模块,用于根据所有数据增强策略的执行概率和数据增强处理的准确率,判定数据增强策略集中的有害增强策略,对其进行剔除处理,通过剔除处理后的数据增强策略,进行模型训练。
29.本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述方法。
30.本发明提供一种电子终端包括:处理器及存储器;
31.所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行如上述任一项所述方法。
32.本发明的有益效果:本发明中的图像自动数据增强方法、系统、介质及终端,通过所有数据增强策略的执行概率和数据增强处理的准确率,判定并有效的去除对训练任务有
害的数据增强策略,直观的反应了各个数据增强方法的效果,本发明针对单个增强策略,而不是一个增强策略的组合进行优选,减少了参数搜索空间,防止不同增强方法之间的干扰,结果更加准确,同时,既减少了参数搜索空间,又最大限度的保留了数据增强丰富度和数据分布填充的完整性。
附图说明
33.图1是本发明实施例中图像自动数据增强方法的流程示意图。
34.图2是本发明实施例中图像自动数据增强方法中数据增强超参搜索过程示意图。
35.图3a是本发明实施例中图像自动数据增强方法中参数为搜索的固定值的数据填充结果示意图。
36.图3b是本发明实施例中图像自动数据增强方法中固定范围随机选取的数据填充结果示意图。
37.图4是本发明实施例中图像自动数据增强电子设备的结构示意图。
具体实施方式
38.以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
39.需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
40.在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
41.如图1所示,本实施例中的图像自动数据增强方法,包括:
42.s1.获取多种基础数据增强操作及每种操作的参数范围,形成基础数据增强操作集;
43.s2.根据所述基础数据增强操作集,以及基础数据增强操作的执行概率、数据增强操作的强度参数,构建数据增强策略集;
44.s3.根据所有数据增强策略的执行概率和数据增强处理的准确率,判定数据增强策略集中的有害增强策略,对其进行剔除处理,通过剔除处理后的数据增强策略,进行模型训练。
45.在本实施例的步骤s1中,首先构建参数搜索空间,获取多种基础数据增强操作及每种操作的参数范围,形成基础数据增强操作集。如表1所示,包括了表中的基础增强操作,记这些基础的数据增强方法为集合a={a1,a2,...,an}。
46.数据增强名称参数数据增强名称参数horizontalshear(

0.3,0.3)horizontaltranslate(

0.3,0.3)verticalshear(

0.3,0.3)verticaltranslate(

0.3,0.3)rotate(

30,30)sharpness(0.1,1.9)color adjust(0.1,1.9)brightness(0.1,1.9)posterize(4,7)autocontrastnonesolarize{26,102,179}equalizenonecontrast(0.1,1.9)invertnone
47.表1
48.在本实施例中,构建数据增强策略集之后,构建优化的基本单元,如下式:
49.base={(opt,probablity,magnitude)|opt∈a}
50.其中,opt为a中的数据增强操作,probablity为运用该数据增强操作的可能性,magnitude为该数据增强操作的强度参数,即表1中的参数。在实际训练任务当中,某个训练batch使用增强操作opt的可能性为probablity,实施强度参数为magnitude。例如(rotate,0.7,10)代表某个训练batch使用rotate(旋转)的可能性为0.7,旋转角度为10度。在后面的参数搜索过程中,只对参数probablity,范围0~1进行搜索,不对magnitude进行搜索。对于使用过程中的magnitude,直接在表1的参数范围内,利用random的方法随机选取。通过这种方式,可以使需要搜索的参数只有probablity,降低了参数搜索空间。
51.可选的,本实施例为了进一步降低参数搜索空间,可以直接将probablity量化为{0,0.2,0.4,0.6,0.8,1}6个级别。将所有增强操作的probablity参数初始化为ps=0.6,当最终搜索出来的probablity小于等于0.2时(远小于初始化值0.6),则判定该增强操作对训练任务是无益的或者有害的,反之则认为该增强操作对训练任务是有益的。
52.在本实施例步骤s2中,获取图像数据,并在所述图像数据中进行随机选取,形成样本数据集;按预设比例将所述样本数据集分为用于训练的第一训练集和用于测试的第二训练集;通过所述第一训练集进行训练,并采用预设的初始执行概率,以及在参数范围内随机选取的数据增强策略中的强度参数,进行数据增强处理;在模型训练初始阶段结束后,每经过m批处理,通过所述第二训练集对模型进行测试。
53.在本实施例中,通过构建数据增强策略集进行数据增强参数搜索,具体包括:
54.s201.从图片量为n的数据集p中,随机采样n张图片,作为实验数据集p,
55.s202.将p按照一定比例,分为第一训练集p
train
和第二训练集p
value

56.s203.选择一个待训练模型,作为自动数据增强任务的模型。本实施实例直接选择后续训练任务的模型,通过自动数据增强过程更加贴近后续真实的训练过程。
57.s204.从base中选取一个数据增强策略b=(opt,probablity,magnitude),作为该次模型训练使用的数据增强方法。
58.s205.开始模型训练,对于训练中的每一个batch,采用b=(opt,probablity,magnitude)进行增强,其中probablity的初始化值为0.6,magnitude则在设置的参数空间内随机选择。相对magnitude也加入搜索空间进行搜索,将其固定在一定范围内做随机搜索的方式缩小了搜索空间,耗时更少,效率更高,搜索算法更容易收敛。
59.s206.每经过m个batch对模型进行测试,测试集为p
value
。测试集的准确率为acc。
60.s207.使用tpe算法,以最大化acc为目标对参数probablity进行更新。
61.s208.重复步骤s206~s207直到触发训练结束条件。
62.s209.对于base中的每一个数据增强策略,重复步骤s204~s208,如图2所示。
63.s210.最终对于base中的每一个数据增强策略,在训练过程中magnitude固定范围随机选取的条件下,得到了使测试集准确率最高的probablity参数值p,b=(opt,probablity=p,magnitude=random),例如(rotate,0.7,random)代表在训练过程中,每个batch以0.7的概率使用rotate旋转图像,旋转角度随机。
64.在本实施例的步骤s3中,将更新后的执行概率与预设的初始执行概率进行比较,若更新后的执行概率大于所述初始执行概率,则判定为有益增强策略;若更新后的执行概率小于等于预设最低阈值,则判定为有害增强策略;所述最低阈值小于所述初始执行概率。
65.在本实施例中,使用搜索得到的数据增强策略进行训练,具体包括:
66.s301.在参数probablity与数据增强方法对任务的增益之间的关系,据此去除有害增强策略。步骤2已经对base中的每一个增强策略的probablity参数搜索到了最佳值p,当某个opt的p>0.6(初始值)时,模型认为更高概率的对图像进行opt增强,可以提高模型准确率,即该opt对模型有益;当p<0.6时,模型认为更小概率的对图像进行opt增强,可以提高模型精度;当p<=0.2时,模型认为极小概率的对图像进行opt增强或者不进行opt增强,模型精度有提升,即认为opt增强对模型训练无益,甚至有害。因此在实际使用过程中,将去除掉base中p<=0.2的增强策略,得到实际任务使用的增强策略集合fine_base。
67.fine_base={(opt,probablity,magnitude)|opt∈a,probablity>0.2}
68.s303.magnitude参数选择。实际训练任务中,依然在固定范围内,对magnitude参数随机选择。不固定magnitude,可以使获取的增强图像更加丰富,数据填充更加完整;通过固定magnitude在常用的取值范围,对每个增强策略的强度限制,使得数据分布填充更加紧凑。
69.s304.利用上述筛选后得到的增强策略及其参数,正常进行训练任务。
70.下面以一个具体实施例进行说明:
71.实施例1
72.1.1).选取若干个数据增强方法作为基础数据增强操作,可以是其他常用的数据增强方法,各个数据增强方法的参数范围,可以根据具体任务进行适当调整
73.1.2).构建优化的基本单元,其中probablity初始化参数ps=0.6,初始值可以适当调节,例如在(0.5,0.7)之间。将probablity量化为{0,0.2,0.4,0.6,0.8,1},可以根据任务类型和耗时,对其分布密度适当调整,本实施例中的的量化后的格点不超过10个,否则搜索耗时太大。
74.2.1).从图片量为n的数据集p中,随机采样n张图片,作为实验数据集p,n取值最佳2000~4000张,过大会增加耗时,太小导致网络欠拟合,指标波动较大。
75.2.2).按比例将p分为第一训练集p
train
和第二训练集p
value
,测试集比训练集的比例,可以选择为1:5,1:4
76.2.3).选择一待训练模型,作为自动数据增强任务的模型述选择的模型,模型为训练任务需要使用的模型。如果训练任务模型较大,会导致自动数据增强过程耗时较长。因此,可以在自动数据增强过程中选择常用的其他较小模型进行替换,后面具体的训练任务
在使用原本的模型。模型与训练任务类型对应。可以是分类、检测、分割等网络模型。
77.2.5).开始模型训练,每经过m个batch对模型进行测试,具体实施可以使用m=训练集数量/batchsize,每经过m个batch对模型进行测试,在模型的初始阶段(2个epoch内)不进行此步骤。避免由于初始阶段模型不稳定,测试波动会大。
78.2.6).每经过m个batch对模型进行测试,测试集为pvalue。测试集的准确率为acc,获取测试集的acc,对于分类、检测、分割等不同的任务,也可以是map、召回等其他一种或几种组合的指标。具体任务具体选择。
79.2.7).使用tpe算法,以最大化acc为目标对参数probablity进行更新,本实施例中的tpe算法,可以替换为随机超参搜索等其他常用的有效方法。实际使用过程中,可以使用nni,ray等自动训练框架已经封装好的算法api,也可以根据需求自行实现。
80.2.8).重复步骤2.6

2.7直到触发训练结束条件,其中,训练结束条件可以训练迭代步数、测试集指标等达到设定值。
81.2.9).最终对于base中的每一个数据增强策略,在训练过程中magnitude固定范围随机选取的条件下,得到测试集准确率最高的probablity参数值p。
82.3.1).去除有害增强策略,其中,当p<=0.2时认为该数据增强操作是有害的或者无益的,此阈值可以根据实际任务情况调整,例如可以采用0.1~0.3。
83.3.2).magnitude参数选择。实际训练任务中,依然在固定范围内,对magnitude参数随机选择。不固定magnitude,获取的增强图像更加丰富,数据填充更加完整;固定magnitude在常用的取值范围,对每个增强策略的强度限制,使得数据分布填充更加紧凑。
84.3.3).使用搜索得到的数据增强策略进行训练,在训练的某个batch,各个数据增强策略可以单独或者串行使用。
85.如图3a,3b所示,根据数据填充结果对比,其中,圆点为原训练集数据分布,三角为使用自动数据增强填充的数据(图3a为magnitude参数为搜索的固定值,图3b为magnitude在固定范围随机选取),图3a填充的数据更加集中在数据的中间区域,对周边数据填充不充分;而图3b填充的数据则更加均匀,更加完整。
86.相应的本实施例还提供一种图像自动数据增强系统,包括:
87.基础模块,用于获取多种基础数据增强操作及每种操作的参数范围,形成基础数据增强操作集;
88.策略模块,用于根据所述基础数据增强操作集,以及基础数据增强操作的执行概率、数据增强操作的强度参数,构建数据增强策略集;
89.处理模块,用于根据所有数据增强策略的执行概率和数据增强处理的准确率,判定数据增强策略集中的有害增强策略,对其进行剔除处理,通过剔除处理后的数据增强策略,进行模型训练。
90.本实施例中的图像自动数据增强系统可以根据上述方式,进行图像自动数据增强,可以有效的去除对训练任务有害的增强策略,获取对训练任务有益的增强策略,在每个数据增强策略优化后的probablity参数与该数据增强策略对训练任务的增益之间建立关系,将对训练任务的增益这个抽象的概念转换为probablity参数的具体值,并据此对各个数据增强策略进行有效性筛选,去除有害或者无益的增强策略。对每个数据增强策略probablity参数搜索,magnitude参数固定范围内随机,将常规的自动数据增强与random方
法结合,可以最大限度的保留了数据增强丰富度和数据分布填充的完整性。
91.本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本实施例中的任一项方法。
92.本实施例还提供一种电子终端,如图4所示,包括:处理器及存储器;
93.所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行本实施例中任一项方法。
94.本实施例中的计算机可读存储介质,本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
95.本实施例提供的电子终端,包括处理器、存储器、收发器和通信接口,存储器和通信接口与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接口用于进行通信,处理器和收发器用于运行计算机程序,使电子终端执行如上方法的各个步骤。
96.在本实施例中,存储器可能包含随机存取存储器(random access memory,简称ram),也可能还包括非易失性存储器(non

volatile memory),例如至少一个磁盘存储器。
97.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
98.在上述实施例中,除非另外规定,否则通过使用“第一”、“第二”等序号对共同的对象进行描述,只表示其指代相同对象的不同实例,而非是采用表示被描述的对象必须采用给定的顺序,无论是时间地、空间地、排序地或任何其他方式。
99.在上述实施例中,说明书对“本实施例”、“一实施例”、“另一实施例”、或“其他实施例”的提及表示结合实施例说明的特定特征、结构或特性包括在至少一些实施例中,但不必是全部实施例。“本实施例”、“一实施例”、“另一实施例”的多次出现不一定全部都指代相同的实施例。
100.在上述实施例中,尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变形对本领域普通技术人员来说将是显而易见的。例如,其他存储结构(例如,动态ram(dram))可以使用所讨论的实施例。本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。
101.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
102.本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的
分布式计算环境等等。
103.本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
104.上述实施例仅示例性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜