公开/公告号CN112818941A
专利类型发明专利
公开/公告日2021-05-18
原文格式PDF
申请/专利权人 西北大学;
申请/专利号CN202110241923.6
申请日2021-03-04
分类号G06K9/00(20060101);G06K9/62(20060101);G06N3/08(20060101);G06N3/04(20060101);
代理机构61200 西安通大专利代理有限责任公司;
代理人朱海临
地址 710069 陕西省西安市碑林区太白北路229号
入库时间 2023-06-19 11:02:01
技术领域
本发明属于文物碎片显微图像分类技术领域,涉及一种迁移学习技术和神经网络减枝技术,尤其是一种基于迁移学习的文物碎片显微图像的分类方法、系统、设备及存储介质。
背景技术
作为机器学习中一个重要的分支,迁移学习是通过将已经学习的相关任务中的知识迁移到新的任务中来提高学习效果。传统的深度学习需要大量的训练数据和训练时间,相比于其,迁移学习可以复用在源域中训练好的网络结构和参数,可以大幅降低目标任务的训练时间。随着自然图片集ImageNet的提出,利用该数据集训练的CNN网络泛化能力强,在ImageNet上训练的Resnet模型的迁移能力始终优于在ImageNet上取得更高准确率的网络。因此采用在ImageNet上预训练好的Resnet101深度残差网络为源域,文物样本图像为目标域,对该网络进行迁移学习以此来进行分类。
文物碎片数据存在数量少、碎片表面特征不明显,深度神经网络由于其计算量太大的缺点在很大程度上阻碍了基于深度学习方法的产品化,尤其是在一些边缘设备上。而网络模型压缩方法,它应用成本低,而且与硬件加速方法并不矛盾,可以相互加成。模型压缩又可细分为剪枝、量化、低秩分解、知识蒸馏。网络通道剪枝Network Slimming方法与许多现有的方法不同,它可以直接应用于CNN架构中也不需要特殊硬件加速,并且引入训练过程的开销最小。
发明内容
本发明的目的在于解决具有少量样本的文物碎片难分类的问题,提供一种基于迁移学习的文物碎片显微图像的分类方法、系统、设备及存储介质,由于文物碎片数据存在数量少、碎片表面特征不明显的问题,本发明收集文物碎片显微图像,按每个碎片的显微特征进行分类。目前基于深度学习的图像分类方法在一些公共的数据集上具有卓越的效果,本发明依托神经网络的迁移学习理论和深度网络的压缩优化理论,研究文物碎片显微图像的分类方法。本发明采用Network Slimming对预训练模型进行压缩优化。基于迁移学习的神经网络分类方法解决了文物碎片显微图像样本数据量少的问题,通过Network Slimming方法轻量化深度网络,在不影响分类准确率的情况下压缩和加速了分类模型。其中优化分类网络是指通过对网络进行通道减枝来压缩和加速网络。
为达到上述目的,本发明采用以下技术方案予以实现:
基于迁移学习的文物碎片显微图像的分类方法,包括以下步骤:
对文物碎片显微图像数据进行划分、预处理和数据增强;
对Resnet101残差网络进行训练,将其作为迁移学习微调的源域,目标域为文物碎片显微图像的分类网络;
搭建文物碎片显微图像分类网络的预训练模型,提取源域的部分权重参数,将权重参数迁移到搭建的预训练模型中的卷积层;
对预训练模型进行网络通道剪枝参数设置,然后进行微调训练,得到初始分类网络;
对初始分类网络进行网络通道剪枝,得到网络通道剪枝后的轻量化网络;
对轻量化网络用文物碎片显微图像数据集进行微调,多次进行网络通道剪枝和微调,直到分类准确率因此次剪枝而下降到设置的最低期待值;
对文物碎片显微图像用最终的轻量化网络进行分类预测。
本发明进一步的改进在于:
用600倍的显微照相机采集文物陶瓷碎片的彩色文物碎片显微图像。
用ImageNet数据集对Resnet101残差网络进行训练;所述微调是将在大数据集ImageNet上训练得到的权重作为文物碎片显微图像分类网络的初始化权重,之后再重新训练该网络。
对预训练模型采用Network Slimming方法进行网络通道剪枝参数设置。
剪枝参数设置具体为:设置剪枝百分比t,剪枝百分比t是指整个网络中将被剪去t%的通道;
微调训练是将预训练模型中BN层的γ参数作为网络通道剪枝的比例因子,用文物碎片显微图像数据集对预训练模型进行微调训练,同时训练权重和比例因子γ。
根据训练出的比例因子γ和设置的剪枝阈值,对得到的初始分类网络通道进行网络通道剪枝。
所述网络通道剪枝的具体方法如下:
对缩放因子的绝对值排序,取从小到大排序的比例因子中t%的位置的缩放因子为剪枝阈值,剪掉低于阈值的γ的通道;其中,t%为剪枝的百分比。
本发明还公开了一种基于迁移学习的文物碎片显微图像的分类系统,包括:
图像预处理模块,所述图像预处理模块用于对文物碎片显微图像数据进行划分、预处理和数据增强;
残差网络训练模块,所述残差网络训练模块用于对Resnet101残差网络进行训练,将其作为基于模型的迁移学习的源域,目标域为显微图像分类网络;
预训练模型搭建模块,所述预训练模型搭建模块用于搭建文物碎片显微图像分类网络的预训练模型,提取源域的部分权重参数,将权重参数迁移到搭建的预训练模型中;
参数设置模块,所述参数设置及微调模块用于对预训练模型进行网络通道剪枝参数设置,然后进行微调训练,得到初始分类网络;
网络通道剪枝模块,所述网络通道剪枝模块用于对初始分类网络进行网络通道剪枝,得到网络通道剪枝后的轻量化网络;
微调模块,所述微调模块用于对轻量化网络用文物碎片显微图像数据集进行微调,多次进行网络通道剪枝和微调,直到分类准确率因此次剪枝而下降到设置的最低期待值;
预测模块,所述预测模块用于对文物碎片显微图像用最终的轻量化网络进行分类预测。
一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
与现有技术相比,本发明具有以下有益效果:
第一,本发明针对文物碎片样本少的问题,采用深度迁移学习的方法,将用ImageNet数据集训练出的Resnet101网络参数迁移到搭建的预训练网络模型。ImageNet数据集拥有强大的迁移能力特性,并且ResNet101参差网络调整了参差模块中各层的顺序,它相比于经典的参差模块更容易训练,也提高了泛化效果,进而迁移性能更好。
第二,本发明采用Network Slimming方法进行通道剪枝,将得到的预训练模型中BN层的γ参数作为网络通道剪枝的比例因子。该方法直接利用BN层的γ参数来当作设计的剪枝参数,对通道进行筛选,使得引入训练过程的开销最小,并且它还可以直接应用于CNN架构中也不需要特殊硬件加速。
第三,本发明在进行网络微调时,也就是在将ImageNet训练得到的权重迁移到搭建的分类网络后,在进行文物碎片显微图像分类网络训练的同时采用Network Slimming方法对网络进行剪枝。本发明在进行网络迁移微调的同时采用Network Slimming方法进行剪枝压缩,节省训练成本,操作简便。
附图说明
为了更清楚的说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明的流程图
图2为文物碎片显微图
图3为预训练网络图
图4为微调和剪枝的流程图
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明实施例的描述中,需要说明的是,若出现术语“上”、“下”、“水平”、“内”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
此外,若出现术语“水平”,并不表示要求部件绝对水平,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。
在本发明实施例的描述中,还需要说明的是,除非另有明确的规定和限定,若出现术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
下面结合附图对本发明做进一步详细描述:
参见图1,本发明实施例公开了一种基于迁移学习的文物碎片显微图像的分类方法,包括以下步骤:
步骤1,文物碎片显微图像预处理。用600倍的显微照相机采集文物陶瓷碎片的彩色文物碎片显微图像,对文物碎片显微图像数据进行划分、预处理和数据增强。
如图2所示,根据古代瓷器碎片的类型,文物碎片显微图像分成四个类别,青瓷、青花瓷、白釉瓷、黄釉瓷。将训练集、验证集和测试集中分别设置有2000张、400张和400张文物碎片显微图像。采集到的文物碎片显微图像统一像素大小为224×224。利用直方图自适应均衡化技术对采集到的文物碎片显微图像进行预处理,可以改进图像的局部对比度以及获得更多的图像细节。利用数据增强技术可以扩充文物碎片显微图像数据集,具体操作有,对文物碎片显微图像进行随机水平翻转、竖直偏移和水平偏移操作。所述文物碎片显微图像数据集是按照以下方法制作的:
首先对收集到的古代陶瓷碎片(主要是古代耀州瓷的瓷器碎片)用数码显微照相机(相机品牌3RAnyty,设置放大倍数600倍)进行显微图像拍摄采集。然后根据瓷器碎片的种类对采集到显微图像进行归类整理,得到文物碎片显微图像数据集。
步骤2,用ImageNet数据集对Resnet101残差网络进行训练,将其作为迁移学习微调的源域,目标域为文物碎片显微图像的分类网络。微调的主要操作是,将在大数据集ImageNet上训练得到的权重作为文物碎片显微图像分类网络的初始化权重,之后再重新训练该网络。其中在ImageNet上训练出的ResNet101的top-5的实验准确为92.9%。
步骤3,搭建文物碎片显微图像分类网络的预训练模型。提取步骤2中源域的部分权重参数,将权重参数迁移到搭建的预训练模型中的卷积层,得到分类网络的预训练模型。文物碎片显微图像分类网络预训练模型如图3所示。本发明实施例在搭建预训练模型时,在resnet101残差网络的全连接层f1之后增加一个全连接层f2,全连接层f2的节点个数为600个,以适应文物碎片显微图像的分类任务。
步骤4,对预训练模型采用Network Slimming方法进行剪枝参数设置,然后进行微调训练。首先设置剪枝百分比t,百分比t是指整个网络中将被剪去t%的通道,其次将步骤3得到的预训练模型中BN层的γ参数作为网络通道剪枝的比例因子,最后用文物碎片显微图像数据集对预训练模型进行微调训练,同时训练权重和比例因子γ,得到初始分类网络。
在神经网络中BN层存在于卷积层和激活层之间,可以防止梯度爆炸、提高训练时模型对于不同超参数的鲁棒性,加快网络收敛。对于神经网络的第l层,
Z
L1正则化是指各个元素的绝对值之和,L1正则化可以产生稀疏权值矩阵,即产生一个稀疏模型。所以在原来的损失函数中增加了一项对网络所有BN层的γ参数的L1正则化限制,使得γ更加稀疏,更有利于剪枝。L为增加了γ参数L1正则化后的损失函数公式,g(γ)为L1正则化公式,λ是两项的平衡因子。
g(γ)=||γ|| (4)
微调训练中的网络设置,输入节点的个数32×32=1024,输出节点个数为4,包含33个残差模块,99个卷积层,2个全连接层。设置120个epochs,每个epochs设置25个batch,对于梯度下降算法的学习率,卷积层为0.01,全连接层为0.1,所有通道的比例因子γ都初始化为0.5。本方法在Ubuntu环境下,使用python3.6实现,基于pytorch深度学习框架,实验运行的GPU型号是NVIDIA GeForce 1080。
步骤5,对初始分类网络进行剪枝。根据训练出的比例因子γ和设置的剪枝百分比t,对步骤4中得到的初始分类网络通道进行剪枝,得到剪枝后的轻量化网络。其中剪枝的方法为,设置t%为剪枝的百分比,首先对缩放因子的绝对值排序,然后取从小到大排序的比例因子中t%的位置的缩放因子为剪枝阈值,剪掉低于阈值的γ的通道,通过这样做,得到一个较少参数、运行时占内存小、低计算量的紧凑网络。
由BN层γ参数的含义可知feature map的每个通道对应一个γ值,所以这个γ值相当于该通道的重要性。在训练的时候,一起训练γ参数,然后将重要性低于阈值的feature map剪掉,剪掉feature map相当于生成这些feature map的对应卷积核也被剪掉,这就完成了剪枝的过程,得到了剪枝后的轻量化网络。对预训练网络进行微调和剪枝的流程图如图4所示。
步骤6,对步骤5中得到的轻量化网络用文物碎片显微图像数据集进行微调,根据测试准确率和压缩效果可多次进行步骤4至步骤6对网络通道剪枝和微调。每次剪枝后,都要对网络进行微调。
步骤7,对文物碎片显微图像用最终的轻量化网络进行分类预测。
本实施例还公开了一种基于迁移学习的文物碎片显微图像的分类系统,包括:
图像预处理模块,所述图像预处理模块用于对文物碎片显微图像数据进行划分、预处理和数据增强;
残差网络训练模块,所述残差网络训练模块用于对Resnet101残差网络进行训练,将其作为基于模型的迁移学习的源域,目标域为显微图像分类网络;
预训练模型搭建模块,所述预训练模型搭建模块用于搭建文物碎片显微图像分类网络的预训练模型,提取源域的部分权重参数,将权重参数迁移到搭建的预训练模型中;
参数设置模块,所述参数设置及微调模块用于对预训练模型进行网络通道剪枝参数设置,然后进行微调训练,得到初始分类网络;
网络通道剪枝模块,所述网络通道剪枝模块用于对初始分类网络进行网络通道剪枝,得到网络通道剪枝后的轻量化网络;
微调模块,所述微调模块用于对轻量化网络用文物碎片显微图像数据集进行微调,多次进行网络通道剪枝和微调;
预测模块,所述预测模块用于对文物碎片显微图像用最终的轻量化网络进行分类预测。
本发明一实施例提供的终端设备包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,例如***程序。所述处理器执行所述计算机程序时实现上述各个方法实施例中的步骤,例如图1所示的步骤1-7。或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能。
所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。
所述处理器可以是中央处理单元(CentralProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述终端设备的各种功能。
所述终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
机译: 图像传输设备,显微图像传输设备,显微图像传输系统和用于存储控制程序的存储介质,与显微图像传输设备相关
机译: 基于深度学习的车牌分类方法,系统,电子设备和存储介质
机译: 基于深度学习,电子设备和存储介质的车牌分类方法和系统