本发明实施例涉及计算机技术领域,尤其涉及一种模型训练方法、装置、设备及存储介质。
背景技术
随着深度神经网络的兴起,人工智能(简称ai)已经可以像人类一样识别并且认知图像属性,如斯坦福大学的研究者通过13万张皮肤疾病图像训练出一个诊断皮肤癌的ai算法,并且诊断结果达专家水平。
目前在深度神经网络的学习方面,除了要求具有大体量的训练数据以外,还有一个很重要的前提是需要有足够量的标注数据。以医学领域为例,在医学图像处理上面,图像数据集标注不只是诊断报告,还需要高质量的精细的标注,如图像层面及病灶类型和区域等标注,标注的准确性关乎结果的准确性。因为医学图像处理需要医学的专业知识,就是说医生对这些病比较熟悉他才能标注,一般人是很难标注的,而且标注的成本还很高。由此可见一般,目前在各个领域中有效标注的图像数据集都是很有限的,那么如何利用有限的图像数据集得到准确的深度神经网络模型就显得十分重要。
技术实现要素:
本发明实施例提供一种模型训练方法、装置、设备及存储介质,用以在保证在图像特征清晰不变的情况下,大规模、有效的增量图像,从而基于增量图像得到准确的模型。
本发明实施例第一方面提供一种模型训练方法,包括:
获取第一图像数据集;
对所述第一图像数据集中的图像进行加权求和处理,获得增量图像;
基于所述增量图像和所述第一图像数据集,训练获得第一模型。
在一种可能的设计中,所述对所述第一图像数据集中的图像进行加权求和处理,获得增量图像,包括:
对所述第一图像数据集中的图像采用相同的加权值进行加权求和处理,获得增量图像,并使得所有加权求和的图像的加权值之和为1。
在又一种可能的设计中,所述对所述第一图像数据集中的图像进行加权求和处理,获得增量图像,包括:
从所述第一图像数据集中获取多组图像样本,使得同一组图像样本中的图像只包括相同的标签;
针对每组图像样本,获取组内的图像进行加权求和处理得到增量图像。
在又一种可能的设计中,所述对所述第一图像数据集中的图像进行加权求和处理,获得增量图像,包括:
从所述第一图像数据集中获取多组图像样本,使得同一组图像样本中至少包括两种标签的图像;
针对每组图像样本,从组内获取具有不同标签的图像进行加权求和,获得增量图像,其中所述增量图像的标签为加权求和时权重值最大的图像的标签。
在又一种可能的设计中,所述基于所述增量图像和所述第一图像数据集,训练获得第一模型之后,所述方法还包括:
获取第二图像数据集,其中所述第二图像数据集和所述第一图像数据集之间的相似度大于预设阈值;
基于所述第二图像数据集,对所述第一模型进行迁移学习处理,获得第二模型。
在又一种可能的设计中,所述基于所述第二图像数据集,对所述第一模型进行迁移学习处理,获得第二模型之后,所述方法还包括:
从所述第二模型中提取所述第二图像数据集的特征数据;
基于所述特征数据训练获得第三模型。
在又一种可能的设计中,所述基于所述特征数据训练获得第三模型,包括:
对所述特征数据进行字典学习处理和稀疏特征提取处理,获得所述特征数据对应的稀疏特征矩阵;
基于所述稀疏特征矩阵训练获得第三模型。
在又一种可能的设计中,所述方法还包括:
获取图像数据;
将所述图像数据输入所述第三模型,以基于所述第三模型对所述图像数据进行数据分类。
本发明实施例第二方面提供一种模型训练装置,包括:
第一获取模块,用于获取第一图像数据集;
第一处理模块,用于对所述第一图像数据集中的图像进行加权求和处理,获得增量图像;
第一训练模块,用于基于所述增量图像和所述第一图像数据集,训练获得第一模型。
在一种可能的设计中,
所述第一处理模块,包括:
第一处理子模块,用于对所述第一图像数据集中的图像采用相同的加权值进行加权求和处理,获得增量图像,并使得所有加权求和的图像的加权值之和为1。
在又一种可能的设计中,
所述第一处理模块,包括:
第一获取子模块,用于从所述第一图像数据集中获取多组图像样本,使得同一组图像样本中的图像只包括相同的标签;
第二处理子模块,用于针对每组图像样本,获取组内的图像进行加权求和处理得到增量图像。
在又一种可能的设计中,
所述第一处理模块,包括:
第二获取子模块,用于从所述第一图像数据集中获取多组图像样本,使得同一组图像样本中至少包括两种标签的图像;
第三处理子模块,用于针对每组图像样本,从组内获取具有不同标签的图像进行加权求和,获得增量图像,其中所述增量图像的标签为加权求和时权重值最大的图像的标签。
在又一种可能的设计中,所述装置还包括:
第二获取模块,用于获取第二图像数据集,其中所述第二图像数据集和所述第一图像数据集之间的相似度大于预设阈值;
第二处理模块,用于基于所述第二图像数据集,对所述第一模型进行迁移学习处理,获得第二模型。
在又一种可能的设计中,所述装置还包括:
提取模块,用于从所述第二模型中提取所述第二图像数据集的特征数据;
第二训练模块,用于基于所述特征数据训练获得第三模型。
在又一种可能的设计中,所述第二训练模块,具体用于:
对所述特征数据进行字典学习处理和稀疏特征提取处理,获得所述特征数据对应的稀疏特征矩阵;
基于所述稀疏特征矩阵训练获得第三模型。
在又一种可能的设计中,所述装置还包括:
第三获取模块,用于获取图像数据;
分类模块,用于将所述图像数据输入所述第三模型,以基于所述第三模型对所述图像数据进行数据分类。
本发明实施例第三方面提供一种计算机设备,包括:
处理器;
存储器,用于存储所述处理器的可执行指令;
当所述处理器执行所述可执行指令时,可以执行上述第一方面所述的方法。
本发明实施例第四方面提供一种计算机可读存储介质,包括指令,当所述指令在所述计算机上运行时,所述计算机可以执行上述第一方面所述的方法。
本发明实施例中,通过获取第一图像数据集,对第一图像数据集中的图像进行加权求和处理获得增量图像,基于增量图像和第一图像数据集来训练获得第一模型。由于本发明实施例中的增量图像是通过加权求和的方式得到的,并且加权求和的处理方式并不会导致图像特征丢失,因此本发明实施例得到的增量图像能够很好的保持原图像的特征,这样在获得足够的增量图像后,再基于增量图像和第一图像数据集就能训练获得较为准确的模型。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种模型训练方法的流程图;
图2是本发明实施例提供的一种模型训练方法的流程图;
图3是本发明实施例提供的模型训练方法的流程图;
图4是本发明实施例提供的一种模型训练装置的结构示意图;
图5是本发明实施例提供的一种模型训练装置的结构示意图;
图6是本发明实施例提供的一种模型训练装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤的过程或结构的装置不必限于清楚地列出的那些结构或步骤而是可包括没有清楚地列出的或对于这些过程或装置固有的其它步骤或结构。
在现有技术中,为了能够基于较少的样本数据得到较为精确的模型,一般会对样本数据进行增量处理,在样本数据足够丰富之后再进行模型训练。其中一般常用的增量处理方式包括:改变图像亮度、饱和度、对比度变化;采用随机图像差值方式,对图像进行裁剪、缩放,或者尺度和长宽比增强变换;水平/垂直翻转,平移变换,旋转/仿射变换;高斯噪声、模糊处理等等。这些增量处理方式都会产生一个问题,原始的图像经过上述增量处理后,本来很容易识别的特征,反而变得不容易识别了。尤其在医学图像上,往往图片很大,而病灶区域却很微小,或者比较模糊。若使用现有的增量处理方式,医学图像上的病灶特征将更加难以捕获。
针对现有技术存在的上述问题,本发明实施例提供了一种模型训练方法,该方法通过对图像数据集中的图像进行加权求和来获得增量图像,由于加权求和的处理方式并不会导致图像特征丢失,因此,基于加权求和的方式获得的增量图像能够很好的保持原始图像的特征,基于加权求和获得的增量图像和原始图像数据集能够训练获得较为准确的模型。从而本发明实施例能够在保证图像特征清晰不变的情况下,大规模、有效的增量图像,提高模型训练的准确性。
下面结合附图以及具体实施例对本发明的技术方案进行详细的描述:
图1是本发明实施例提供的一种模型训练方法的流程图,该方法可以由一种模型训练装置执行。如图1所示,本实施例提供的方法包括:
步骤101、获取第一图像数据集。
其中,本实施例中对于“第一图像数据集”的命名仅是用于将目标获得的图像数据集与其他图像数据集进行区分,而不具备其他含义。
针对第一图像数据集,本实施例不对其图片的领域和类型进行限定。为了方便理解,本实施例中可示例性的将第一图像数据集理解为包含医学领域图像的数据集,比如,在一种可能的场景中,第一图像数据集可以是包含有是否患有某种疾病的标签的图像数据集,当然这里仅为示例说明而不是对本发明的唯一限定。
步骤102、对所述第一图像数据集中的图像进行加权求和处理,获得增量图像。
其中,本实施例在进行加权求和时,可选的方法至少包括如下几种:
在一种可能的加权求和方式中,可以先从第一图像数据集中获取多组图像样本,使得同一组图像样本中只包括相同标签的图像,比如,在同一组图像样本中可能只包括患病标签的图像,或者可能只包括未患病标签的图像等,当然这里仅为示例说明而不是对本发明的唯一限定。进一步的,针对每组图像样本,从组内获取多张图像进行加权求和处理得到增量图像,获取的图像数量小于或等于组内的样本总数。并且,由于这种方式参与加权求和的图像的标签均相同,因此,得到的增量图像的标签也应与参与加权求和的图像的标签相同,即基于各组图像样本得到的增量图像的标签与该组图像样本对应的标签相同。
为了更加清楚的了解上述方式的执行方式,下面通过举例的方式来进行说明:
假设从相同标签的图像样本中随机抽取n个图像样本mi(i=1,2,..,n),通过对图像的像素点数据加权求和,得到新样本图像m:
m=ω1m1+ω2m2+…+ωnmn
ω1+ω2+…+ωn=1
mi为图像像素点数组;
ωi为随机抽取的第i个样本的权重。
在确定各样本的权重时,可能的方式可能有如下几种:
在一种方式中,相同标签的图像样本在进行加权求和处理时可以取等权重,即:
当n=0.5n时
在另一种方式中,也可以采用随机权重:
可以得到增量图像的总数量m为:
当n=n-1时,m最大,m=n!。
在另一种可能的加权求和方式中,可以先从第一图像数据集中获取多组图像样本,使得同一组图像样本中至少包括两种标签的图像,比如,在同一组图样样本中可能既包括患病标签的图像又包括未患病标签的图像,当然这里仅为示例说明而不是对本发明的唯一限定。进一步的,针对每组图像样本,需要从组内获取具有不同标签的图像进行加权求和,获得增量图像,并将参与加权求和的图像中对应加权值最大的图像的标签作为增量图像的标签。
同样的,下面将以举例的方式来这种加权求和方式进行详细说明:
举例来说,假设从标有患病标签的图像中选取一个样本md,从标有未患病标签的图像中选取一个样本mh,二者进行匹配组合,通过加权方式生成新的样本m,即:
m=ωdmd+ωhmh
ωd+ωh=1
新生成的增量图像标签为二者权重较大的图像的标签。这样就得到一个增量图像(即新生成的样本)。当然这里仅是以两个样本加权求和为例所进行的说明,实际上在这种加权求和方式中参与加权求和的样本是更多个,其具体执行方式与两个图像加权求和的情况类似,在这里不再赘述。另外,这种方式所能得到的增量图像的个数也可以基于前述排列组合的方式计算获得,在这里不再赘述。
在又一种可能的加权求和方式中,可以同时采用上述第一种和第二种方式获取增量图像。
步骤103、基于所述增量图像和所述第一图像数据集,训练获得第一模型。
本实施例,通过获取第一图像数据集,对第一图像数据集中的图像进行加权求和处理获得增量图像,基于增量图像和第一图像数据集来训练获得第一模型。由于本发明实施例中的增量图像是通过加权求和的方式得到的,并且加权求和的处理方式并不会导致图像特征丢失,因此本实施例得到的增量图像能够很好的保持原图像的特征,这样在获得足够的增量图像后,再基于增量图像和第一图像数据集就能训练获得较为准确的模型。
图2是本发明实施例提供的一种模型训练方法的流程图,如图2所示,在图1实施例的方法获得第一模型之后,本实施例提供的方法还可以包括如下步骤:
步骤201、获取第二图像数据集,其中所述第二图像数据集和所述第一图像数据集之间的相似度大于预设阈值。
步骤202、基于所述第二图像数据集,对所述第一模型进行迁移学习处理,获得第二模型。
其中,当第二图像数据集和第一图像数据集之间的相似度大于预设阈值时,第二图像数据集中的图像特征数据与第一图像数据集的图像特征数据相似,从而基于迁移学习的方法,就能够基于第二图像数据集对第一模型进行约束,得到能够准确识别第二图像数据集中图像特征的第二模型。
示例的,为了方便理解本实施例的技术方案,下面进行举例说明:
假设第一图像数据集中包括皮肤病a的病征图像,基于第一图像数据集训练获得的第一模型可以基于图像识别皮肤病a。假设第二图像数据集中包括皮肤病b的病征图像,由于第一图像数据集和第二图像数据集属于同一领域,皮肤病a的图像特征和皮肤病b的图像特征相似,基于迁移学习的原理,可以通过第二图像数据集对第一模型进行约束,就能够得到用于识别皮肤病b的第二模型。其中,本实施例中的迁移学习可以参见现有技术,在这里不再赘述。当然上述举例仅是为了便于理解所进行的示例说明,而不是对本发明的唯一限定。
本实施例,当第一图像数据集和第二图像数据集之间的相似度大于预设阈值的时,第一图像数据集中的特征数据与第二图像数据集中的特征数据相似,基于迁移学习的原理,第二图像数据集中的数据量不需要很大,只要很小的数据量就能够在第一模型的基础上对第一模型的高层网络上的特征进行约束,从而得到能够准确识别第二图像数据集中特征的第二模型,从而能够降低模型训练的成本,提高模型训练效率。
图3是本发明实施例提供的模型训练方法的流程图,如图3所示,在上述步骤202之后还可以包括如下方法:
步骤301、从所述第二模型中提取所述第二图像数据集的特征数据。
本实施例中,第二模型包括多层卷积神经网络和全连通神经网络,多层卷积神经网络实现图像特征的提取,全连通神经网络实现图像分类。多层卷积神经网络最后一层隐含的图像数据通常作为图像的特征,把该特征数据抽取出来即获得第二图像数据集的特征数据。
步骤302、基于所述特征数据训练获得第三模型。
其中,为了提高模型的训练效率,本实施例在训练第三模型时,可以先对前述获得的特征数据进行字典学习处理和稀疏特征提取处理,获得特征数据对应的稀疏特征矩阵,进一步的再基于稀疏特征矩阵训练获得第三模型。
假设用一个m*n的矩阵表示前述提取的特征数据的集合x,每一列代表一个样本,每一行代表样本的一个属性,一般而言,该矩阵是稠密的,即大多数元素不为0。稀疏表示的含义是,寻找一个稀疏矩阵a(k*n)以及一个字典矩阵b(m*k),使得b*a尽可能的还原数据集x,且a尽可能的稀疏。a便是数据集x的稀疏表示。
表达为优化问题的话,字典学习的最简单形式为:
通过优化学习,获取b、a矩阵。a矩阵即为数据集x的稀疏特征矩阵。
基于上述字典学习和稀疏特征提取的原理,本实施例可以提取出前述特征数据的稀疏特征矩阵。
示例的,假设本实施例中的第三模型用于预测疾病,则在基于稀疏特征矩阵训练第三模型时,首先建立训练样本集(y,g)其中,y为预测的疾病或者预测年限的数据集,g为前述获得的稀疏特征矩阵。进一步的,再通过svm机器学习获得第三模型。
示例的,本实施例中的第三模型可以被具体为分类模型,在获取到图像数据后,可以将图像数据输入第三模型,通过第三模型对图像数据进行数据分类,比如,当第三模型具体为前述示例中的用于预测疾病的模型时,在图像数据输入第三模型之后,第三模型基于该图像数据输出图像中的生物是否有患病的可能。
当然上述仅为示例说明而不是对本发明的唯一限定。
本实施例中,由于第二模型包括多层卷积神经网络和全连通神经网络,多层卷积神经网络用于实现图像特征的提取,全连通神经网络用于实现图像分类。多层卷积神经网络最后一层隐含的图像数据为图像的特征数据,把该特征数据抽取出来即获得第二图像数据集的特征数据,进一步的,再基于该特征数据进行训练,就能够获得第三模型,从而本实施例在训练第三模型时,不需要使用数量庞大的预先标注好的数据,提高了模型的训练效率,降低了模型的训练成本。
图4是本发明实施例提供的一种模型训练装置的结构示意图,如图4所示,装置40包括:
第一获取模块41,用于获取第一图像数据集;
第一处理模块42,用于对所述第一图像数据集中的图像进行加权求和处理,获得增量图像;
第一训练模块43,用于基于所述增量图像和所述第一图像数据集,训练获得第一模型。
在一种可能的设计中,所述第一处理模块42,包括:
第一处理子模块,用于对所述第一图像数据集中的图像采用相同的加权值进行加权求和处理,获得增量图像,并使得所有加权求和的图像的加权值之和为1。
在一种可能的设计中,所述第一处理模块42,包括:
第一获取子模块,用于从所述第一图像数据集中获取多组图像样本,使得同一组图像样本中的图像只包括相同的标签;
第二处理子模块,用于针对每组图像样本,获取组内的图像进行加权求和处理得到增量图像。
在一种可能的设计中,所述第一处理模块,包括:
第二获取子模块,用于从所述第一图像数据集中获取多组图像样本,使得同一组图像样本中至少包括两种标签的图像;
第三处理子模块,用于针对每组图像样本,从组内获取具有不同标签的图像进行加权求和,获得增量图像,其中所述增量图像的标签为加权求和时权重值最大的图像的标签。
本实施例提供的装置能够用于执行图1实施例的方法,其执行方式和有益效果类似,在这里不在赘述。
图5是本发明实施例提供的一种模型训练装置的结构示意图,如图5所示,在图4实施例的基础上,装置40还可以包括:
第二获取模块44,用于获取第二图像数据集,其中所述第二图像数据集和所述第一图像数据集之间的相似度大于预设阈值;
第二处理模块45,用于基于所述第二图像数据集,对所述第一模型进行迁移学习处理,获得第二模型。
本实施例提供的装置能够用于执行图2实施例的方法,其执行方式和有益效果类似,在这里不在赘述。
图6是本发明实施例提供的一种模型训练装置的结构示意图,如图6所示,在图5实施例的基础上,装置40还可以包括:
提取模块46,用于从所述第二模型中提取所述第二图像数据集的特征数据;
第二训练模块47,用于基于所述特征数据训练获得第三模型。
在一种可能的设计中,所述第二训练模块47,具体用于:
对所述特征数据进行字典学习处理和稀疏特征提取处理,获得所述特征数据对应的稀疏特征矩阵;
基于所述稀疏特征矩阵训练获得第三模型。
在一种可能的设计中,所述装置还包括:
第三获取模块,用于获取图像数据;
分类模块,用于将所述图像数据输入所述第三模型,以基于所述第三模型对所述图像数据进行数据分类。
本实施例提供的装置能够用于执行图3实施例的方法,其执行方式和有益效果类似,在这里不在赘述。
本发明实施例还提供一种计算机设备,包括:
处理器;
存储器,用于存储所述处理器的可执行指令;
当所述处理器执行所述可执行指令时,可以用于实现上述实施例的技术方案。
本发明实施例还提供一种计算机可读存储介质,包括指令,当所述指令在所述计算机上运行时,所述计算机可以用于实现上述实施例的技术方案。
最后需要说明的是,本领域普通技术人员可以理解上述实施例方法中的全部或者部分流程,是可以通过计算机程序来指令相关的硬件完成,所述的程序可存储于一计算机可读存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可以为磁盘、光盘、只读存储记忆体(rom)或随机存储记忆体(ram)等。
本发明实施例中的各个功能单元可以集成在一个处理模块中,也可以是各个单元单独的物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现,并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。上述提到的存储介质可以是只读存储器、磁盘或光盘等。
以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。