System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及图像处理,具体涉及一种模型压缩方法和计算机可读存储介质。
技术介绍
1、由于语义分割等语义密集型深度视觉检测方案具有精度高、可靠性好等优点,因此其通常作为工业图像缺陷检测的首选技术。但语义密集型任务所采用的深度神经网络的结构较为复杂,内存占用高,计算量大,因此其对硬件的要求较高,不利于cpu端、移动端或者边缘设备的部署,从而不仅增大了生产厂商的成本投入,而且在一定程度上也限制了深度模型技术的进一步推广发展。而模型小型化、轻量化的市场需求日益旺盛。其中,模型轻型化的研究主要包括:
2、(1)模型结构设计轻量化:设计网络之初,从网络结构优化的角度出发,设计更少参数和计算量的网络结构。例如大量使用1x1卷积的squeezenet(一种精简化的轻量级的卷积神经网络结构)、采用深度可分离卷积的mobilenet(一种轻量化深度神经网络结构)以及最新的ghostnet(一种轻量化深度神经网络结构)等网络,皆属于轻量化模型。轻量化网络的缺点主要在于:训练需要较长时间或者训练难以拟合;网络结构的专门化设计普适性较低,例如mobilenet的设计主要针对于移动设备的使用,进而不利于gpu上的部署。
3、(2)模型量化:指的是将训练好的网络模型的权重参数,从高精度的浮点存储(运算)转换为低精度的浮点(或者整型)存储(运算),例如二值化、线性量化、对数量化等。权重量化技术,可以很好地压缩参数,提升网络模型的推理速度以及降低内存占用,但是量化是一种近似计算的方法,往往会伴随较为严重的精度下降问题。
4、
5、(4)知识蒸馏:指的是训练好的已达到精度要求的教师(大)模型将知识迁移至学生(小)模型中,本质上是通过引导结构更加轻量化的学生(小)模型“学习并获取”性能更好、结构更复杂的教师模型的知识。蒸馏的效果较大程度上取决于蒸馏过程的算法处理,学生模型通常时延更低、参数量更小,因此蒸馏是一种比较有效的模型压缩方法。在实际处理过程中,为了保证精度,学生模型一般采用的还是经典网络(相较于教师模型小),例如:教师网络采用resnet-101,学生网络使用resnet-18,因此,用于蒸馏的学生模型仍旧存在较大的压缩优化空间。
6、对于语义密集型任务,如语义分割等,为了保证检测效果,网络模型结构较为复杂,计算量大,时延较高,对于模型压缩的需求更为迫切。当前已有的压缩方法中,知识蒸馏效果较好,但是仍然存在特征冗余,知识转换不够精准,蒸馏效果欠佳,蒸馏完成的模型偏大等问题。
7、因此,针对现有技术的不足有必要进行改进。
技术实现思路
1、本专利技术主要解决的技术问题是提供一种模型压缩方法和计算机可读存储介质,通过高效的知识转换,提升蒸馏效果,增强压缩模型的拟合和泛化能力。
2、根据第一方面,一种实施例中提供一种模型压缩方法。该方法包括:
3、提取中间层特征的步骤:获取样本图像和对应的标注信息,利用已训练好的教师网络对所述样本图像进行处理,以获取n个不同分辨率的教师中间层特征图和教师预测结果;利用待压缩的学生网络对所述样本图像进行处理,以获取n个不同分辨率的学生中间层特征图和学生预测结果;其中,所述n≥3,所述n为整数;
4、提取关键特征的步骤:将所述标注信息和所述n个不同分辨率的教师中间层特征图输入至知识转换网络,以获得目标特征图和背景特征图,且分别对所述目标特征图和背景特征图进行关键信息提取,获得与所述目标特征图对应的目标关键特征图以及与所述背景特征图对应的背景关键特征图;其中,所述目标特征图用于表示所述教师中间层特征图中的目标区域,所述背景特征图用于表示所述教师中间层特征图中的背景区域,所述标注信息用于标注出所述目标区域和所述背景区域;
5、知识迁移的步骤:根据总损失函数对所述知识转换网络r和所述学生网络进行迭代训练;
6、其中,所述总损失函数包括特征图蒸馏损失函数和预测结果蒸馏损失函数;所述特征图蒸馏损失函数根据所述目标关键特征图、所述背景关键特征图与所述学生中间层特征图之间的差异确定,所述预测结果蒸馏损失函数根据所述教师预测结果和所述学生预测结果之间的差异确定;
7、重复所述提取中间层特征的步骤、所述提取关键特征的步骤和所述知识迁移的步骤,直至达到预设的迭代停止条件,将达到预设的迭代停止条件的所述学生网络作为压缩好的压缩模型。
8、一实施例中,所述知识迁移的步骤还包括:
9、剪枝的子步骤:在所述迭代训练的次数达到预设的剪枝阈值时,对所述知识转换网络和所述学生网络采用同样的剪枝操作;
10、其中,在所述剪枝操作之后,所述知识转换网络中输出所述目标关键特征图和所述背景关键特征图的通道与所述学生网络中输出所述学生中间层特征图的通道相匹配;
11、其中,
12、所述预设的迭代停止条件为:所述学生网络收敛且所述剪枝操作已经全部完成。
13、一实施例中,所述将所述对应的标注信息和所述n个不同分辨率的教师中间层特征图输入至知识转换网络,以获得目标特征图和背景特征图;
14、包括:
15、根据所述对应的标注信息得到目标掩码和背景掩码,对所述目标掩码和背景掩码的分辨率分别进行调整,以得到与所述教师中间层特征图的分辨率对应的目标掩码和背景掩码,根据所述与所述教师中间层特征图的分辨率对应的目标掩码和背景掩码,得到对应分辨率的目标特征图和背景特征图;
16、其中,所述教师中间层特征图为所述教师网络连续的n个中间层输出的特征图,且这n个中间层的层数不高于预设的层数阈值;
17、其中,所述教师中间层特征图的数量与所述学生中间层特征图的数量相同,所述学生中间层特征图的分辨率分别与对应的所述教师中间层特征图的分辨率相同。
18、一实施例中,所述知识转换网络r包含自适应转换模块,所述自适应转换模块包括多个自适应转换单元,所述自适应转换单元包括一个注意力层和一个与所述注意力层对应的卷积层,所述卷积层用于实现特征通道的降维,以实现所述卷积层所输出的特征图的特征通道的数量与对应的所述学生中间层特征图的特征通道的数量相匹配;所述自适应转换单元的数量等于2n,每个所述自适应转换单元内部的数据处理流程相同;
19、其中,
20、所述知识转换网络r分别对所述目标特征图和背景特征图进行关键信息提取,以获得与所述目标特征图对应的目标关键特征图以及与所本文档来自技高网...
【技术保护点】
1.一种模型压缩方法,其特征在于,包括:
2.如权利要求1所述的模型压缩方法,其特征在于,所述知识迁移的步骤还包括:
3.如权利要求1或2所述的模型压缩方法,其特征在于,所述将所述对应的标注信息和所述n个不同分辨率的教师中间层特征图输入至知识转换网络,以获得目标特征图和背景特征图,包括:
4.如权利要求3所述的模型压缩方法,其特征在于,所述知识转换网络R包含自适应转换模块,所述自适应转换模块包括多个自适应转换单元,所述自适应转换单元包括一个注意力层和一个与所述注意力层对应的卷积层,所述卷积层用于实现特征通道的降维,以实现所述卷积层所输出的特征图的特征通道的数量与对应的所述学生中间层特征图的特征通道的数量相匹配;所述自适应转换单元的数量等于2n,每个所述自适应转换单元内部的数据处理流程相同;
5.如权利要求4所述的模型压缩方法,其特征在于,所述注意力层包括通道子层和空间子层;
6.如权利要求5所述的模型压缩方法,其特征在于,所述将所述输入特征图输入所述通道子层以得到通道注意力图包括:
7.如权利要求5所述的模型
8.如权利要求4所述的模型压缩方法,其特征在于,所述剪枝操作包括:
9.如权利要求1所述的模型压缩方法,其特征在于,所述总损失函数的表达式为:L=αLf+βLr,
10.如权利要求9所述的模型压缩方法,其特征在于,所述特征图蒸馏损失函数Lf的表达式为:
11.如权利要求9所述的模型压缩方法,其特征在于,所述预测结果蒸馏损失函数Lr的表达式为:
12.一种计算机可读存储介质,其特征在于,包括程序,所述程序能够被处理器执行以实现如权利要求1至11中任一项所述的模型压缩方法。
...【技术特征摘要】
1.一种模型压缩方法,其特征在于,包括:
2.如权利要求1所述的模型压缩方法,其特征在于,所述知识迁移的步骤还包括:
3.如权利要求1或2所述的模型压缩方法,其特征在于,所述将所述对应的标注信息和所述n个不同分辨率的教师中间层特征图输入至知识转换网络,以获得目标特征图和背景特征图,包括:
4.如权利要求3所述的模型压缩方法,其特征在于,所述知识转换网络r包含自适应转换模块,所述自适应转换模块包括多个自适应转换单元,所述自适应转换单元包括一个注意力层和一个与所述注意力层对应的卷积层,所述卷积层用于实现特征通道的降维,以实现所述卷积层所输出的特征图的特征通道的数量与对应的所述学生中间层特征图的特征通道的数量相匹配;所述自适应转换单元的数量等于2n,每个所述自适应转换单元内部的数据处理流程相同;
5.如权利要求4所述的模型压缩方法,其特征在于,所述注意力...
【专利技术属性】
技术研发人员:曾利宏,杨洋,黄涛,林泽伟,
申请(专利权)人:深圳市华汉伟业科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。