CN114037856A - 一种基于改进MSDNet与知识蒸馏的识别方法 - Google Patents

一种基于改进MSDNet与知识蒸馏的识别方法 Download PDF

Info

Publication number
CN114037856A
CN114037856A CN202111218803.0A CN202111218803A CN114037856A CN 114037856 A CN114037856 A CN 114037856A CN 202111218803 A CN202111218803 A CN 202111218803A CN 114037856 A CN114037856 A CN 114037856A
Authority
CN
China
Prior art keywords
model
picture
identification
msdnet
softmax
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.)
Pending
Application number
CN202111218803.0A
Other languages
English (en)
Inventor
李尚锴
王凯
袁明明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Communication Information System Co Ltd
Original Assignee
Inspur Communication Information System Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Communication Information System Co Ltd filed Critical Inspur Communication Information System Co Ltd
Priority to CN202111218803.0A priority Critical patent/CN114037856A/zh
Publication of CN114037856A publication Critical patent/CN114037856A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及IT应用领域,具体提供了一种基于改进MSDNet与知识蒸馏的识别方法,具有如下步骤:S1、获取识别图片进行数据样本采集;S2、对识别图片进行数据预处理和数据清洗获得满足要求的足量的识别图片,并对识别图片进行信息标注;S3、对步骤S2中识别的图片采用修改后的MSDNet模型进行训练,从而获得教师模型;S4、将步骤S3中的训练好的模型作为软标签配合图片中原有的标签,根据不同数据采用不同的temperture,从而训练出学生模型;S5、对步骤S1‑S4采集到的数据组成识别的系统。与现有技术相比,本发明能使系统获得更高的性能,即更高的识别精度。

Description

一种基于改进MSDNet与知识蒸馏的识别方法
技术领域
本发明涉及IT应用领域,具体提供一种基于改进MSDNet与知识蒸馏的识别方法。
背景技术
目前的图片识别神经网络效果往往取决于网络层数,即模型复杂度。通常来说,模型越复杂、卷积层越多的神经网络可以提取到图片更多的特征,从而有更好的识别结果。
然而,复杂的网络架构对算力要求较高,当算力成为瓶颈的时候,只能采用较为简单的识别模型,而简单模型识别效果通常不能得到很好地识别效果。随着神经网络层数加深,模型泛化性变差,容易过拟合,使得在训练集上表现好的模型难以在预测的时候表现优异。
神经网络层数过多,容易产生梯度消失现象,使得训练提前终止,需要多次人工干预;网络过大,使实时识别变得困难,影响实际应用时候的经济效益。
目前来看,亟需一种在轻量的前提下达到较高的识别精度的模型。
发明内容
本发明是针对上述现有技术的不足,提供一种实用性强的基于改进MSDNet与知识蒸馏的识别方法。
本发明解决其技术问题所采用的技术方案是:
一种基于改进MSDNet与知识蒸馏的识别方法,具有如下步骤:
S1、获取识别图片进行数据样本采集;
S2、对识别图片进行数据预处理和数据清洗获得满足要求的足量的识别图片,并对识别图片进行信息标注;
S3、对步骤S2中识别的图片采用修改后的MSDNet模型进行训练,从而获得教师模型;
S4、将步骤S3中的训练好的模型作为软标签配合图片中原有的标签,根据不同数据采用不同的temperture,从而训练出学生模型。
S5、对步骤S1-S4采集到的数据组成识别的系统。
进一步的,所述修改后的MSDNet模型为在每个块的末尾实现一个提前退出分类器,并且能够通过在任何所需分类器处停止计算,且所有的子网都共享参数。
进一步的,所述识别图片输入时,若长宽比例不匹配,在数据清理阶段通过添加空白像素点使图片补充至指定要求。
进一步的,在MSDNet模型进行训练时,卷积后使用ReLu激活函数:
φ(x)=max(0,x)然后使用Inception网络把稀疏矩阵转换成密集的自矩阵,在沿着深度划分为若干块之后,在每个块的末尾实现一个提前退出分类器,最后使用全联接层,将卷积后神经网络提取的特征转换以数据的形式输入到全联接层之中。
进一步的,在知识蒸馏时,直接让学生模型去学习教师模型的泛化能力,迁移泛化能力的方法为使用softmax层输出的类别的概率来作为soft target。
进一步的,直接使用softmax层的输出值作为soft target,当softmax输出的概率分布熵相对较小时,负标签的值都很接近0,对损失函数的贡献非常小,小到可以忽略不计,无法有效的捕捉信息量,因此在softmax函数中添加“温度”这个变量,在softmax函数为:
Figure BDA0003311767420000031
蒸馏过程中目标函数由distill loss和student loss加权得到:
L=αLsoft+βLhard
学生网络和教师网络使用相同的训练集,将教师网络的softmax作为softtarget,学生网络在相同温度T条件下的softmax输出和soft target的cross entropy就是损失函数的第一部分;学生网络在T=1的条件下的softmax输出和标签的交叉熵损失就是损失函数的第二部分。
进一步的,使用知识蒸馏后,修改了整个模型架构。将模型分为原有的教师模型和从教师模型中提取的众多子模型,提取的众多子模型称作助教模型,助教模型为先向老师学习,然后再向学生传授知识。
进一步的,所述助教模型分为两种模型:带一个助教的kd和带多个助教的kd;
(1)带一个助教的kd模型的IPKD损失为:
Figure BDA0003311767420000041
(2)带多个助教的kd模型的IPKD损失为:
Figure BDA0003311767420000042
本发明的一种基于改进MSDNet与知识蒸馏的识别方法和现有技术相比,具有以下突出的有益效果:
本发明比起Inception、ResNet等轻量级识别模型,在相同的资源限制下,能使系统获得更高的性能,即更高的识别精度;比起AlexNet、ZF Net、VGGNet等复杂网络为基础的识别方案,由于本发明大大降低模型层熟,因此在识别速度上会有更高效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图1是一种基于改进MSDNet与知识蒸馏的识别方法的流程示意图;
附图2是一种基于改进MSDNet与知识蒸馏的识别方法的框图;
附图3是一种基于改进MSDNet与知识蒸馏的识别方法中神经网络示意图;
附图4是一种基于改进MSDNet与知识蒸馏的识别方法中卷积神经网络示意图;
附图5是一种基于改进MSDNet与知识蒸馏的识别方法中教师模型示意图;
附图6是一种基于改进MSDNet与知识蒸馏的识别方法中知识蒸馏模型示意图;
附图7是一种基于改进MSDNet与知识蒸馏的识别方法中模型对比示意图。
具体实施方式
为了使本技术领域的人员更好的理解本发明的方案,下面结合具体的实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。
下面给出一个最佳实施例:
如图1-5所示,本实施例中的一种基于改进MSDNet与知识蒸馏的识别方法,具有如下步骤:
S1、使用爬虫技术获取识别铁塔图片进行数据样本采集;
S2、对识别铁塔图片进行数据预处理和数据清洗获得满足要求的足量的识别铁塔图片,并对识别铁塔图片进行信息标注;
S3、对步骤S2中识别的图片采用修改后的MSDNet模型进行训练,从而获得教师模型,主要操作设计了,透视变化随机的做透视变化将完成透视变化和未处理的进行马赛克增强;
S4、将步骤S3中的训练好的模型作为软标签配合图片中原有的标签,根据不同数据采用不同的temperture,从而训练出学生模型。
S5、对步骤S1-S4采集到的数据组成识别的系统。
修改后的MSDNet模型具有二维(尺度和深度)结构,并沿深度维划分为若干块。在每个块的末尾实现一个提前退出分类器,并且通过在任何所需分类器处停止计算的可能性来实现灵活性。这样可以通过移除整个卷积信道以具有不同宽度(例如,通过将整个网络宽度缩放0.25、0.5、0.75和1.0)而获得的完整网络的薄型版本。除了批量标准统计之外,所有的子网都共享它们的参数。
设置13个卷积层、5个最大池化层,3个全联接层和最后的softmax层。具体流程如下:
开始输入(224,224,1)的图像数据,即宽度224,高度为224的单通道灰度图像。为了便于训练,将图片裁剪成规定大小。若长宽比例不匹配,数据清理阶段通过添加空白像素点使其补充至指定要求,使用灰度图是为了加快模型的训练。
在MSDNet模型进行训练时,卷积后使用ReLu激活函数:
φ(x)=max(0,x)
能够有效的阻止了梯度消失,而且训练速度也大大加快。
然后使用Inception网络把稀疏矩阵转换成密集的自矩阵可以有效缓解以上问题。故将以上卷积、池化堆叠起来(尺寸相同,通道相加),这种操作被称作Inception。在沿着深度划分为若干块之后,在每个块的末尾实现一个提前退出分类器,最后使用全联接层,将卷积后神经网络提取的特征转换以数据的形式输入到全联接层之中。
如图6所示,知识蒸馏使用的是教师—学生模型,其中教师是“知识”的输出者,学生是“知识”的接受者。知识蒸馏的过程分为2个阶段:
1、原始模型训练:训练"教师模型",它的特点是模型相对复杂,在铁塔分类过程中,本发明使用了MSDNet模型作为铁塔分类的教师模型;
2、精简模型训练:训练"学生模型",它是参数量较小、模型结构相对简单的单模型。
而在知识蒸馏时,由于已经有了一个泛化能力较强的基于MSDNet的铁塔分类模型,可以直接让学生模型去学习教师模型的泛化能力。
迁移泛化能力的方法为:使用softmax层输出的类别的概率来作为“softtarget”。
在softmax层的输出,除了最大的正标签,负标签也带有大量的信息,比如某些负标签对应的概率远远大于其他负标签。而在传统的训练过程中,所有负标签都被统一对待。所以,比起传统的训练方式使用soft label使得每个样本给学生模型带来更多的信息量。
比如在样本标签中,两张对应III型铁塔的图片,有一张更类似于II型铁塔,一张更类似于I型铁塔。在MSDNet softmax的输出值中这两张图片最大概率对应的都是III型铁塔。但是I型铁塔和II型铁塔对应概率各不相同。这两张图片对应相同的标签值,但是它们在教师模型中softmax输出值却不相同。所以我们知道在soft target蕴含着比hardtarget多的信息。并且soft target分布的熵相对高时,其soft target蕴含的知识就更丰富。
但要是直接使用softmax层的输出值作为soft target,当softmax输出的概率分布熵相对较小时,负标签的值都很接近0,对损失函数的贡献非常小,小到可以忽略不计。无法有效的捕捉信息量,因此在softmax函数中添加"温度"这个变量为:
Figure BDA0003311767420000091
在铁塔分类识别做蒸馏过程的目标函数由distill loss(对应soft target)和student loss(对应hard target)加权得到:
L=αLsoft+βLhard
学生网络和教师网络使用相同的训练集,将教师网络的softmax作为softtarget,学生网络在相同温度T条件下的softmax输出和soft target的cross entropy就是损失函数的第一部分。学生网络在T=1的条件下的softmax输出和标签的交叉熵损失就是损失函数的第二部分。
通过知识蒸馏得到了准确率高的轻便模型,大大节省了模型预测时间。在算力不充足情况下取得了不逊色教师模型的成果。
在使用知识蒸馏后,修改了整个模型架构,将模型分为原有的教师模型和从教师模型中提取的众多子模型。
在初步试用中,教师模型和学生模型效果往往差距较大,多次调整模型参数可以提高识别准确率同时也降低了模型的泛化程度。引入一系列子模型,在这里姑且称作助教模型。蒸馏的主要思想由学生模型直接向教师模型学习知识改为助教模型先向老师学习,然后再向学生传授知识。
助教模型和学生模型都是从教师模型中提取出来的,由于最终模型和教师模型参数规模差距较大。为了克服这个问题,这里引入了两种模型:带一个助教(IPKD-TA-1)的kd和带多个助教(IPKD-TA-M)的kd,其中每个子模型分别与相邻的较大子模型(一个助教)或所有较大的子模型(多个助教)相区别。
带一个助教的KD模型(IPKD-TA-1),其中学生模型由单一的助教模型进行教学,IPKD损失的重新表述:
Figure BDA0003311767420000101
带多个助教的kd模型(IPKD-TA-M),每个子模型都由所有助教模型教授,IPKD损失为:
Figure BDA0003311767420000111
因此,本发明比起Inception、ResNet等轻量级识别模型,在相同的资源限制下,能使系统获得更高的性能,即更高的识别精度。比起AlexNet、ZF Net、VGGNet等复杂网络为基础的识别方案,由于本发明大大降低模型层熟,因此在识别速度上会有更高效率。
上述具体的实施方式仅是本发明具体的个案,本发明的专利保护范围包括但不限于上述具体的实施方式,任何符合本发明的一种基于改进MSDNet与知识蒸馏的识别方法权利要求书的且任何所述技术领域普通技术人员对其做出的适当变化或者替换,皆应落入本发明的专利保护范围。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (8)

1.一种基于改进MSDNet与知识蒸馏的识别方法,其特征在于,具有如下步骤:
S1、获取识别图片进行数据样本采集;
S2、对识别图片进行数据预处理和数据清洗获得满足要求的足量的识别图片,并对识别图片进行信息标注;
S3、对步骤S2中识别的图片采用修改后的MSDNet模型进行训练,从而获得教师模型;
S4、将步骤S3中的训练好的模型作为软标签配合图片中原有的标签,根据不同数据采用不同的temperture,从而训练出学生模型;
S5、对步骤S1-S4采集到的数据组成识别的系统。
2.根据权利要求1所述的一种基于改进MSDNet与知识蒸馏的识别方法,其特征在于,所述修改后的MSDNet模型为在每个块的末尾实现一个提前退出分类器,并且能够通过在任何所需分类器处停止计算,且所有的子网都共享参数。
3.根据权利要求2所述的一种基于改进MSDNet与知识蒸馏的识别方法,其特征在于,所述识别图片输入时,若长宽比例不匹配,在数据清理阶段通过添加空白像素点使图片补充至指定要求。
4.根据权利要求3所述的一种基于改进MSDNet与知识蒸馏的识别方法,其特征在于,在MSDNet模型进行训练时,卷积后使用ReLu激活函数:
φ(x)=max(0,x)
然后使用Inception网络把稀疏矩阵转换成密集的自矩阵,在沿着深度划分为若干块之后,在每个块的末尾实现一个提前退出分类器,最后使用全联接层,将卷积后神经网络提取的特征转换以数据的形式输入到全联接层之中。
5.根据权利要求4所述的一种基于改进MSDNet与知识蒸馏的识别方法,其特征在于,在知识蒸馏时,直接让学生模型去学习教师模型的泛化能力,迁移泛化能力的方法为使用softmax层输出的类别的概率来作为soft target。
6.根据权利要求5所述的一种基于改进MSDNet与知识蒸馏的识别方法,其特征在于,直接使用softmax层的输出值作为soft target,当softmax输出的概率分布熵相对较小时,负标签的值都很接近0,对损失函数的贡献非常小,小到可以忽略不计,无法有效的捕捉信息量,因此在softmax函数中添加“温度”这个变量,在softmax函数为:
Figure FDA0003311767410000021
蒸馏过程中目标函数由distill loss和student loss加权得到:
L=αLsoft+βLhard
学生网络和教师网络使用相同的训练集,将教师网络的softmax作为softtarget,学生网络在相同温度T条件下的softmax输出和soft target的cross entropy就是损失函数的第一部分;学生网络在T=1的条件下的softmax输出和标签的交叉熵损失就是损失函数的第二部分。
7.根据权利要求6所述的一种基于改进MSDNet与知识蒸馏的识别方法,其特征在于,使用知识蒸馏后,修改了整个模型架构。将模型分为原有的教师模型和从教师模型中提取的众多子模型,提取的众多子模型称作助教模型,助教模型为先向老师学习,然后再向学生传授知识。
8.根据权利要求6所述的一种基于改进MSDNet与知识蒸馏的识别方法,其特征在于,所述助教模型分为两种模型:带一个助教的kd和带多个助教的kd;
(1)带一个助教的kd模型的IPKD损失为:
Figure FDA0003311767410000031
(2)带多个助教的kd模型的IPKD损失为:
Figure FDA0003311767410000041
CN202111218803.0A 2021-10-20 2021-10-20 一种基于改进MSDNet与知识蒸馏的识别方法 Pending CN114037856A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111218803.0A CN114037856A (zh) 2021-10-20 2021-10-20 一种基于改进MSDNet与知识蒸馏的识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111218803.0A CN114037856A (zh) 2021-10-20 2021-10-20 一种基于改进MSDNet与知识蒸馏的识别方法

Publications (1)

Publication Number Publication Date
CN114037856A true CN114037856A (zh) 2022-02-11

Family

ID=80135500

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111218803.0A Pending CN114037856A (zh) 2021-10-20 2021-10-20 一种基于改进MSDNet与知识蒸馏的识别方法

Country Status (1)

Country Link
CN (1) CN114037856A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117237814A (zh) * 2023-11-14 2023-12-15 四川农业大学 一种基于注意力机制优化的大规模果园虫情监测方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117237814A (zh) * 2023-11-14 2023-12-15 四川农业大学 一种基于注意力机制优化的大规模果园虫情监测方法
CN117237814B (zh) * 2023-11-14 2024-02-20 四川农业大学 一种基于注意力机制优化的大规模果园虫情监测方法

Similar Documents

Publication Publication Date Title
CN111199242A (zh) 一种基于动态修正向量的图像增量学习方法
CN108288035A (zh) 基于深度学习的多通道图像特征融合的人体动作识别方法
CN115294407B (zh) 基于预习机制知识蒸馏的模型压缩方法及系统
CN111127360B (zh) 一种基于自动编码器的灰度图像迁移学习方法
CN116503676B (zh) 一种基于知识蒸馏小样本增量学习的图片分类方法及系统
CN115100238A (zh) 基于知识蒸馏的轻量化单目标跟踪器训练方法
CN111723812B (zh) 一种基于序列知识蒸馏的实时语义分割方法
CN113591978A (zh) 一种基于置信惩罚正则化的自我知识蒸馏的图像分类方法、设备及存储介质
CN115482385A (zh) 一种基于通道特征的语义分割自适应知识蒸馏方法
CN114565628B (zh) 一种基于边界感知注意的图像分割方法及系统
CN114037856A (zh) 一种基于改进MSDNet与知识蒸馏的识别方法
CN114882278A (zh) 一种基于注意力机制和迁移学习的轮胎花纹分类方法和装置
CN112669324B (zh) 基于时序特征聚合和条件卷积的快速视频目标分割方法
CN114299578A (zh) 一种基于面部情绪分析的动态人脸生成方法
CN110287990A (zh) 微型藻类图像分类方法、系统、设备及存储介质
CN110580289B (zh) 一种基于堆叠自动编码器和引文网络的科技论文分类方法
CN115797642A (zh) 基于一致性正则化与半监督领域自适应图像语义分割算法
CN106447691A (zh) 基于加权多示例学习的加权极限学习机视频目标跟踪方法
CN114663657A (zh) 一种偏差上下文信息修正的增量语义分割方法
CN108197663A (zh) 基于对偶集合多标记学习的书法作品图像分类方法
CN114708434A (zh) 基于迭代域内适应和自训练的跨域遥感图像语义分割方法
CN113988154A (zh) 一种基于不变信息蒸馏的无监督解耦图像生成方法
CN113436198A (zh) 一种协同图像超分辨率重建的遥感图像语义分割方法
CN113626537A (zh) 一种面向知识图谱构建的实体关系抽取方法及系统
CN115082770B (zh) 一种基于机器学习的图像中心线结构提取方法

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