CN117496509A - 一种融合多教师知识蒸馏的Yolov7柚子计数方法 - Google Patents

一种融合多教师知识蒸馏的Yolov7柚子计数方法 Download PDF

Info

Publication number
CN117496509A
CN117496509A CN202311789356.3A CN202311789356A CN117496509A CN 117496509 A CN117496509 A CN 117496509A CN 202311789356 A CN202311789356 A CN 202311789356A CN 117496509 A CN117496509 A CN 117496509A
Authority
CN
China
Prior art keywords
module
model
loss function
teacher
yolov7
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.)
Granted
Application number
CN202311789356.3A
Other languages
English (en)
Other versions
CN117496509B (zh
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.)
Jiangxi Agricultural University
Institute of Applied Physics of Jiangxi Academy of Sciences
Original Assignee
Jiangxi Agricultural University
Institute of Applied Physics of Jiangxi Academy of Sciences
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 Jiangxi Agricultural University, Institute of Applied Physics of Jiangxi Academy of Sciences filed Critical Jiangxi Agricultural University
Priority to CN202311789356.3A priority Critical patent/CN117496509B/zh
Publication of CN117496509A publication Critical patent/CN117496509A/zh
Application granted granted Critical
Publication of CN117496509B publication Critical patent/CN117496509B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/68Food, e.g. fruit or vegetables
    • 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/0464Convolutional networks [CNN, ConvNet]
    • 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
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种融合多教师知识蒸馏的Yolov7柚子计数方法,通过对YOLOv7‑Tiny‑Large网络模型静态剪枝,得到轻量化的YOLOv7‑Tiny‑Pruning网络模型,作为学生模型;对YOLOv7‑Tiny网络模型的主干网络中添加AIFI模块并修改损失函数,作为教师模型Ⅰ;对YOLOv7‑Tiny网络模型的颈网络中添加SEAM注意力机制,修改损失函数,作为教师模型Ⅱ;使用两个教师模型的知识转学生模型,生成总蒸馏损失函数;再用总蒸馏损失函数对学生模型进行蒸馏训练。本发明通过多教师知识蒸馏的方式来恢复因剪枝而损失的精确度,同时提高模型鲁棒性和精确度。

Description

一种融合多教师知识蒸馏的Yolov7柚子计数方法
技术领域
本发明属于农作物信息检测技术领域,涉及一种融合多教师知识蒸馏的Yolov7柚子计数方法。
背景技术
柚子是一种常见的水果,其种植和销售具有重要的经济意义。柚子的计数识别是柚子种植生产中的一项重要任务,可以帮助农民进行产量预估。然而,在自然环境下进行柚子计数识别存在一定的挑战。自然环境中存在大量干扰物体,这给柚子计数识别带来了困难。传统的计数方法往往受到自然环境的影响,导致识别精度较低。并且传统的识别模型往往都有着模型冗余、推理速度慢、可解释性差、部署困难等问题。
为了应对这种情况,机器视觉应用到了农作物辅助生产领域。目前机器视觉辅助农作物生产的应用已经十分广泛,极大的便利了农作物的生产,降低了农作物生产的成本。
发明内容
本发明的目的在于,结合了计算机深度学习,提出一种融合多教师知识蒸馏的Yolov7柚子计数方法。
本发明通过下述方案来实现。一种融合多教师知识蒸馏的Yolov7柚子计数方法,包括以下步骤。
步骤一:通过对YOLOv7-Tiny-Large网络模型静态剪枝,通过剪枝、训练和微调减去冗余的参数和通道数,得到轻量化的YOLOv7-Tiny-Pruning网络模型,作为学生模型;
步骤二:对学生模型使用柚子照片数据集进行训练,生成知识软目标,再由知识软目标生成软标签,用于多教师知识蒸馏训练;
步骤三:在YOLOv7-Tiny网络模型的主干网络中添加AIFI模块,YOLOv7-Tiny网络模型的损失函数改为Wasserstein,得到YOLOv7-Tiny-AIFI-Wasserstein网络模型,并作为教师模型Ⅰ;
步骤四:在YOLOv7-Tiny网络模型的颈网络中添加SEAM注意力机制,YOLOv7-Tiny网络模型的损失函数SlideLoss损失函数,得到 YOLOv7-Tiny-SEAM-SlideLoss网络模型,并作为教师模型Ⅱ;
步骤五:使用教师模型Ⅰ的知识转学生模型,首先,教师模型Ⅰ对柚子照片数据集进行训练,生成教师模型Ⅰ的知识软目标,再由教师模型Ⅰ的知识软目标生成教师模型Ⅰ的软标签,最后通过教师模型Ⅰ的软标签与学生模型的软标签生成蒸馏损失函数Ⅰ;
步骤六:使用教师模型Ⅱ的知识转学生模型,首先,教师模型Ⅱ对柚子照片数据集进行训练,生成教师模型Ⅱ的知识软目标,再由教师模型Ⅱ的知识软目标生成教师模型Ⅱ的软标签,最后通过教师模型Ⅱ的软标签与学生模型的软标签生成蒸馏损失函数Ⅱ;
步骤七:结合蒸馏损失函数Ⅰ与蒸馏损失函数Ⅱ,生成总蒸馏损失函数;再用总蒸馏损失函数对学生模型进行蒸馏训练,蒸馏训练后的学生模型对所输入的柚子照片生成知识软目标,再由知识软目标生成软标签,并计算学生模型损失,最终得到硬目标,使用硬目标对柚子图像进行预测,得到识别框,对识别框计数,即为柚子数量。
进一步优选,所述步骤一中,通过对YOLOv7-Tiny-Large网络模型使用柚子照片数据集进行训练;对训练后的YOLOv7-Tiny-Large网络模型剪枝,剪枝方法为LAMP剪枝;用最优稀疏化目标函数对训练后的YOLOv7-Tiny-Large网络模型进行稀疏化后使用L2正则化,进行权重衰减以达到剪枝的作用;所述最优稀疏化目标函数如下:
其中,为最优稀疏化目标函数,为超参数控制稀疏性的强度,为正 常的损失项;为输入通道序号,为输入通道数,为输出通道序号,为输出通道数,为第k层的第个权重张量,的转置,K为YOLOv7-Tiny-Large网络模型总层 数。
进一步优选,教师模型Ⅰ的知识转学生模型的方法如下:
YOLOv7-Tiny网络模型的损失函数为:
其中,是YOLOv7-Tiny网络模型的损失函数,为YOLOv7-Tiny网络模 型的置信度损失函数,表示一个边界框是否包含类别的损失,为YOLOv7-Tiny网络 模型的分类损失函数,表示一个边界框的分类损失;为YOLOv7-Tiny网络模型的定 位损失函数,表示一个边界框的坐标回归损失,x为置信度信息,y为分类信息,z为真实标签 的定位信息;将置信度损失函数、分类损失函数、定位损失函数引入教师模型Ⅰ的蒸馏损失 函数Ⅰ,得到:
其中,为学生模型经过教师模型Ⅰ知识蒸馏后的置信度损失函数,为学生模型经过教师模型Ⅰ知识蒸馏后的分类损失函数, 为学生模型经过教师模型Ⅰ知识蒸馏后的定位损失函数,为原始检测部分的置信 度损失函数,为原始检测部分的分类损失函数,为原始检测部分的定位 损失函数,为教师模型Ⅰ的置信度蒸馏损失函数,为教师模型Ⅰ的分类 蒸馏损失函数,为教师模型Ⅰ的定位蒸馏损失函数,为教师模型Ⅰ的置信度信 息,为教师模型Ⅰ的分类信息,为教师模型Ⅰ的定位信息,为用来平衡原始检测部分 损失函数跟蒸馏损失函数的系数;得出由教师模型Ⅰ指导学生模型训练的知识蒸馏损失函 数Ⅰ为:
进一步优选,教师模型Ⅱ的知识转学生模型的方法与教师模型Ⅰ的知识转学生模型的方法相同。
进一步优选,总蒸馏损失函数是蒸馏损失函数Ⅰ与蒸馏损失函数Ⅱ之和。
进一步优选,所述教师模型Ⅰ由主干网络、颈网络、预测输出构成,主干网络依次由第一卷积模块(Conv)、第二卷积模块、第一C5模块、第一最大池化模块(Maxpool)、第二C5模块、第二最大池化模块、第三C5模块、第三最大池化模块、第四C5模块、AIFI模块组成;颈网络包括SPPCSPC模块、第三卷积模块、第四卷积模块、第五卷积模块、第五C5模块、第六卷积模块、第六C5模块、第七卷积模块、第七C5模块、第八卷积模块、第八C5模块;第三C5模块输出的特征经第四卷积模块卷积,AIFI模块输出的特征进入SPPCSPC模块处理,SPPCSPC模块输出的特征经上采样后与第四卷积模块输出的特征融合,然后依次经过第五C5模块、第六卷积模块处理,第二C5模块输出的特征经第三卷积模块卷积,第六卷积模块输出的特征经上采样后与第三卷积模块输出的特征融合,然后进入第五C5模块处理,第五C5模块输出的特征经第七卷积模块卷积后与第五C5模块输出的特征融合,然后进入第七C5模块,第七C5模块输出的特征经第八卷积模块卷积后与SPPCSPC模块输出的特征融合,最后进入第八C5模块处理;选择第六C5模块、第七C5模块和第八C5模块的输出作为预测输出。
进一步优选,所述教师模型Ⅱ由主干网络、颈网络、预测输出构成,主干网络依次由第一卷积模块(Conv)、第二卷积模块、第一C5模块、第一最大池化模块(Maxpool)、第二C5模块、第二最大池化模块、第三C5模块、第三最大池化模块、第四C5模块组成;颈网络包括SPPCSPC模块、第三卷积模块、第四卷积模块、第五卷积模块、第五C5模块、第六卷积模块、第六C5模块、第七卷积模块、第七C5模块、第八卷积模块、第八C5模块;第三C5模块输出的特征经第四卷积模块卷积,第四C5模块输出的特征直接进入SPPCSPC模块处理,SPPCSPC模块输出的特征经上采样后与第四卷积模块输出的特征融合,然后依次经过第五C5模块、第六卷积模块处理,第二C5模块输出的特征经第三卷积模块卷积,第六卷积模块输出的特征经上采样后与第三卷积模块输出的特征融合,然后进入第五C5模块处理,第五C5模块输出的特征经第七卷积模块卷积后与第五C5模块输出的特征融合,然后进入第七C5模块,第七C5模块输出的特征经第八卷积模块卷积后与SPPCSPC模块输出的特征融合,最后进入第八C5模块处理;选择第六C5模块、第七C5模块和第八C5模块的输出分别经过SEAM注意力机制处理后,作为预测输出。
本发明通过剪枝对YOLOv7-Tiny-Large网络模型进行轻量化处理,减少模型冗余,参数量大大降低。再通过多教师知识蒸馏的方式来恢复因剪枝而损失的点数,同时提高模型鲁棒性和精确度。本发明使用了两个教师模型,分别是在YOLOv7-Tiny网络模型的主干网络中添加AIFI模块,损失函数改为Wasserstein,作为教师模型Ⅰ,可以提高学生模型对小目标的识别。然后在另一个YOLOv7-Tiny网络模型的颈网络中添加SEAM注意力机制,损失函数改为SlideLoss,作为教师模型Ⅱ,可以提升学生模型在目标物体有遮挡的情况下的识别。本发明得到的YOLOv7-Tiny-Distialltion网络模型相比原来的YOLOv7-Tiny-Large网络模型参数量更少,更轻量,同时精确度还略高于YOLOv7-Tiny-Large网络模型。这对柚子的计数是更有帮助的,对农业学领域具有重要的理论意义和实用价值。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明的方法流程图。
图2是本发明对目标检测模型进行剪枝-蒸馏处理示意图。
图3是教师模型Ⅰ示意图。
图4是教师模型Ⅱ示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,一种融合多教师知识蒸馏的Yolov7柚子计数方法,包括以下步骤。
步骤一:通过对YOLOv7-Tiny-Large网络模型(目标检测模型)静态剪枝,通过剪枝、训练和微调减去冗余的参数和通道数,得到轻量化的YOLOv7-Tiny-Pruning网络模型,作为学生模型;
步骤二:对学生模型使用柚子照片数据集进行训练,生成知识软目标,再由知识软目标生成软标签,用于多教师知识蒸馏训练;
步骤三:在YOLOv7-Tiny网络模型的主干网络中添加AIFI模块,YOLOv7-Tiny网络模型的损失函数改为Wasserstein,得到YOLOv7-Tiny-AIFI-Wasserstein网络模型,并作为教师模型Ⅰ;
步骤四:在YOLOv7-Tiny网络模型的颈网络中添加SEAM注意力机制,YOLOv7-Tiny网络模型的损失函数改为SlideLoss损失函数,得到YOLOv7-Tiny-SEAM-SlideLoss网络模型,并作为教师模型Ⅱ;
步骤五:使用教师模型Ⅰ的知识转学生模型,首先,教师模型Ⅰ对柚子照片数据集进行训练,生成教师模型Ⅰ的知识软目标,再由教师模型Ⅰ的知识软目标生成教师模型Ⅰ的软标签,最后通过教师模型Ⅰ的软标签与学生模型的软标签生成蒸馏损失函数Ⅰ;知识软目标通过计算教师模型和学生模型预测概率分布之间的差异来得到的,在知识蒸馏中,软标签指的是教师模型输出的概率分布,也可以理解为每个类别的置信度,软标签包含了丰富的暗信息知识,有助于诱导学生模型的训练。
步骤六:使用教师模型Ⅱ的知识转学生模型,首先,教师模型Ⅱ对柚子照片数据集进行训练,生成教师模型Ⅱ的知识软目标,再由教师模型Ⅱ的知识软目标生成教师模型Ⅱ的软标签,最后通过教师模型Ⅱ的软标签与学生模型的软标签生成蒸馏损失函数Ⅱ;
步骤七:结合蒸馏损失函数Ⅰ与蒸馏损失函数Ⅱ,生成总蒸馏损失函数;再用总蒸馏损失函数对学生模型进行蒸馏训练,蒸馏训练后的学生模型对所输入的柚子照片生成知识软目标,再由知识软目标生成软标签,并计算学生模型损失,最终得到硬目标,使用硬目标对柚子图像进行预测,得到识别框,对识别框计数,即为柚子数量。
本实施例在测试各种改良网络所用到的柚子照片数据集图片包含训练集1038张、测试集132张、验证集129张,各种改良网络统一运行了200轮得到评价指标数据。使用柚子照片数据集运行后各种改良网络的三种评价指标对比数据如下表1。
表1
表中,MSBlock代表分层特征融合策略;SEAM代表自监督注意力机制;AIFI代表尺度内特征交互模块。
剪枝前的YOLOv7-Tiny-Large网络模型、剪枝后的YOLOv7-Tiny-Pruning网络模型、第一次蒸馏的YOLOv7-Tiny-distill1网络模型、第二次蒸馏的YOLOv7-Tiny-Distialltion网络模型的三种评价指标以及权重文件大小对比数据如下表2。
表2
由表2可以看出,最终得出的网络模型在精度提高的同时数据大小也是最小的。
更具体地是,参照图2,本实施例通过对YOLOv7-Tiny-Large网络模型使用柚子照片数据集进行训练;对训练后的YOLOv7-Tiny-Large网络模型剪枝,剪枝方法为LAMP剪枝,该方法的核心思想是通过在训练过程中引入稀疏正则化项,使网络中的一部分通道变得不重要,然后再将这些不重要的通道剪枝掉,从而得到一个更加紧凑和高效的模型。LAMP剪枝方法的具体步骤如下:在训练过程中,对每个通道的权重参数添加一个L2正则化,使得一部分通道的权重逐渐趋近于零;L2正则化,权重衰减过程如式(1)所示:
(1);
其中,为L2正则化惩罚函数,为相对贡献的超参数,为超参 数,越大,正则化惩罚项的影响越大,模型的复杂度越低;反之,越小,正则化惩罚项的影 响越小,模型的复杂度越高。为所有应受范数惩罚影响的权重,的转置,为所有 应受范数惩罚影响的权重,为特征矩阵,为预测的输出值;L2正则化约束能够产生更加 稀疏的模型,使得其中一些参数的权重会变成0,用来对模型进行剪枝。
再利用上述思想,在此基础上增加结构化稀疏学习,结构化稀疏学习过程如式(2)所示:
(2);
其中,为稀疏化目标函数,为正常的损失项,为系数,为非结构 化正则项,为每一层的结构化正则项,W为通道权重矩阵,K为YOLOv7-Tiny-Large网 络模型总层数,为1到k层的卷积核个数、通道数、高和宽的权重张量。
对输出通道与输入通道进行稀疏化以便于剪枝操作,对输入、输出通道稀疏化的过程如式(3)所示:
(3);
其中,为输入、输出通道稀疏化函数,为输入通道序号,为输入通道 数,为输出通道序号,为输出通道数,为第k层的第个权重张量,的 转置,为第k层的第个权重张量,的转置。
把式(3)与式(2)结合得到最优稀疏化目标函数为式(4):
(4);
其中,为最优稀疏化目标函数,为超参数控制稀疏性的强度,为正 常的损失项。
用得出的最优稀疏化目标函数对训练后的YOLOv7-Tiny-Large网络模型进行稀疏化后使用L2正则化,进行权重衰减以达到剪枝的作用。剪枝前的YOLOv7-Tiny-Large网络模型、剪枝后得到的YOLOv7-Tiny-Pruning网络模型两种评价指标以及权重文件大小对比数据。
表3
由表3可以看出剪枝后效果很好。
更具体地是,多教师知识蒸馏是一种用于提高模型性能的有效方法,通过将多个教师模型的知识传递给一个学生模型,从而达到模型压缩和性能提升的目的。如图2所示,本实施例用来对YOLOv7-Tiny-Pruning网络模型进行精确度提升和提高鲁棒性。在多教师知识蒸馏中,教师模型的构建是关键的一步。通常,构建教师模型包括两个关键方面:教师模型结构的选择和教师模型训练的策略。关于教师模型结构的选择,本实施例选择了YOLOv7-Tiny-AIFI-Wasserstein网络模型作为第一个教师模型和YOLOv7-Tiny-SEAM-SlideLoss网络模型作为第二个教师模型。一般情况下,教师模型的结构应该比学生模型更为复杂,YOLOv7-Tiny-AIFI-Wasserstein网络模型确保学生模型能学到更多在小目标检测的信息。YOLOv7-Tiny-SEAM-SlideLoss网络模型确保剪枝后的学生模型能学到更多在目标被遮挡时检测的信息。
在教师模型训练策略方面,通常有两种方法:硬标签蒸馏和软标签蒸馏。硬标签蒸馏是指将教师模型的输出作为标签,来训练学生模型。这种方法可以有效地将教师模型的知识传递给学生模型,并提高学生模型的性能。然而,硬标签蒸馏只考虑教师模型的预测结果,而忽略了教师模型的不确定性。因此,为了进一步提高学生模型的性能,本实施例采用软标签蒸馏方法。软标签是由知识软目标生成,知识软目标是与教师模型相关的输出概率分布,是教师模型对输入数据的预测结果,可以作为学生模型学习的目标。知识软目标通常是通过计算教师模型和学生模型预测概率分布之间的差异来得到的,常用的差异度量方式有KL散度等。由知识软目标生成的软标签蒸馏是模型预测的概率分布,也可以理解为每个类别的置信度。在知识蒸馏中,软标签通常指的是教师模型输出的概率分布,它包含了丰富的暗信息知识,有助于诱导学生模型的训练。
另外,在多教师知识蒸馏中,还需要考虑教师模型之间的相互关系。一般情况下,教师模型之间的学习目标是相同的,即使它们的训练数据不同。因此,可以通过平均教师模型的输出来合成一个更稳定和更具鲁棒性的目标。这种方法可以减缓训练过程中的过拟合问题,并提高学生模型的性能。
更具体地是,教师模型Ⅰ的知识转移到一个学生模型的方法,推导公式如下:
YOLOv7-Tiny网络模型的损失函数为式(5):
(5);
其中,是YOLOv7-Tiny网络模型的损失函数,为YOLOv7-Tiny网络模 型的置信度损失函数,表示一个边界框是否包含类别的损失,为YOLOv7-Tiny网络 模型的分类损失函数,表示一个边界框的分类损失;为YOLOv7-Tiny网络模型的定 位损失函数,表示一个边界框的坐标回归损失,x为置信度信息,y为分类信息,z为真实标签 的定位信息;上述的三个部分分别引入教师模型Ⅰ的蒸馏损失函数Ⅰ,得到式(6)至式(8):
(6);
(7);
(8);
其中,为学生模型经过教师模型Ⅰ知识蒸馏后的置信度损失函数,为学生模型经过教师模型Ⅰ知识蒸馏后的分类损失函数, 为学生模型经过教师模型Ⅰ知识蒸馏后的定位损失函数,为原始检测部分的置信 度损失函数,为原始检测部分的分类损失函数,为原始检测部分的定位 损失函数,为教师模型Ⅰ的置信度蒸馏损失函数,为教师模型Ⅰ的分类 蒸馏损失函数,为教师模型Ⅰ的定位蒸馏损失函数,为教师模型Ⅰ的置信度信 息,为教师模型Ⅰ的分类信息,为教师模型Ⅰ的定位信息,为用来平衡原始检测部分 损失函数跟蒸馏损失函数的系数,这里默认为1。因此得出由教师模型Ⅰ指导学生模型训练 的知识蒸馏损失函数Ⅰ为式(9):
(9);
同理,教师模型Ⅱ的知识转移到学生模型的方法与教师模型Ⅰ的知识转移到一个学生模型的方法相同。总蒸馏损失函数是蒸馏损失函数Ⅰ与蒸馏损失函数Ⅱ之和。
使用总蒸馏损失函数来指导学生模型训练提高精确度和鲁棒性,最终学生模型蒸馏训练得到YOLOv7-Tiny-Distialltion网络模型。由表2可知多教师知识蒸馏效果不错,YOLOv7-Tiny-Distialltion网络模型精确度提高了将近一个点的同时,YOLOv7-Tiny-Distialltion网络模型大小比原来小了四分之三。
本实施例的教师模型Ⅰ如图3所示,由主干网络、颈网络、预测输出构成,主干网络依次由第一卷积模块(Conv)、第二卷积模块、第一C5模块、第一最大池化模块(Maxpool)、第二C5模块、第二最大池化模块、第三C5模块、第三最大池化模块、第四C5模块、AIFI模块组成;颈网络包括SPPCSPC模块、第三卷积模块、第四卷积模块、第五卷积模块、第五C5模块、第六卷积模块、第六C5模块、第七卷积模块、第七C5模块、第八卷积模块、第八C5模块;第三C5模块输出的特征经第四卷积模块卷积,AIFI模块输出的特征进入SPPCSPC模块处理,SPPCSPC模块输出的特征经上采样后与第四卷积模块输出的特征融合,然后依次经过第五C5模块、第六卷积模块处理,第二C5模块输出的特征经第三卷积模块卷积,第六卷积模块输出的特征经上采样后与第三卷积模块输出的特征融合,然后进入第五C5模块处理,第五C5模块输出的特征经第七卷积模块卷积后与第五C5模块输出的特征融合,然后进入第七C5模块,第七C5模块输出的特征经第八卷积模块卷积后与SPPCSPC模块输出的特征融合,最后进入第八C5模块处理;选择第六C5模块、第七C5模块和第八C5模块的输出作为预测输出。
使用Labelimg制作的柚子照片数据集,对教师模型Ⅰ进行训练。教师模型Ⅰ使用了Wasserstein损失函数,在目标识别中交并比(IoU)对于小目标来说不是一个很好的度量,因此,使用Wasserstein损失函数来代替标准交并比。具体来说,首先将边界框建模为二维高斯分布,然后使用提出的归一化Wasserstein损失函数来度量派生高斯分布的相似性。Wasserstein损失函数的主要优点是,即使没有重叠或重叠可以忽略不计,它也可以度量分布的相似度。此外,Wasserstein损失函数对不同尺度的物体不敏感,因此更适合测量微小物体之间的相似性。Wasserstein损失函数可以应用于单级和多级锚式探测器。此外,Wasserstein损失函数不仅可以代替标签分配中的交并比,还可以代替非最大抑制(NMS)和回归损失函数中的交并比。所以Wasserstein损失函数在对小目标检测上有着很好的效果。
本实施例的教师模型Ⅱ如图4所示,由主干网络、颈网络、预测输出构成,主干网络依次由第一卷积模块(Conv)、第二卷积模块、第一C5模块、第一最大池化模块(Maxpool)、第二C5模块、第二最大池化模块、第三C5模块、第三最大池化模块、第四C5模块组成;颈网络包括SPPCSPC模块、第三卷积模块、第四卷积模块、第五卷积模块、第五C5模块、第六卷积模块、第六C5模块、第七卷积模块、第七C5模块、第八卷积模块、第八C5模块;第三C5模块输出的特征经第四卷积模块卷积,第四C5模块输出的特征直接进入SPPCSPC模块处理,SPPCSPC模块输出的特征经上采样后与第四卷积模块输出的特征融合,然后依次经过第五C5模块、第六卷积模块处理,第二C5模块输出的特征经第三卷积模块卷积,第六卷积模块输出的特征经上采样后与第三卷积模块输出的特征融合,然后进入第五C5模块处理,第五C5模块输出的特征经第七卷积模块卷积后与第五C5模块输出的特征融合,然后进入第七C5模块,第七C5模块输出的特征经第八卷积模块卷积后与SPPCSPC模块输出的特征融合,最后进入第八C5模块处理;选择第六C5模块、第七C5模块和第八C5模块的输出分别经过SEAM注意力机制处理后,作为预测输出。
使用Labelimg制作的柚子照片数据集对教师模型Ⅱ进行训练,教师模型Ⅱ使用SlideLoss损失函数。SlideLoss损失函数也称为滑动窗口损失函数,主要用于解决目标检测中的物体边界框回归问题。在目标检测任务中,需要预测物体的位置和类别。而物体的位置通常用一个边界框来表示,包括边界框的坐标和尺寸。SlideLoss损失函数的目标就是通过最小化预测边界框与真实边界框之间的差异,来提高目标检测模型的准确性和稳定性。具体来说,SlideLoss损失函数计算预测框与真实目标框之间的交并比,并根据交并比的值调整损失函数的权重。当预测框与真实目标框的交并比值越大时,损失函数的权重越小,反之亦然。这样做的目的是让模型更加关注那些与真实目标框重叠较大的预测框,从而提高目标检测的准确率。SlideLoss损失函数对于遮挡物体有不错的检测效果。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (7)

1.一种融合多教师知识蒸馏的Yolov7柚子计数方法,其特征在于,包括以下步骤:
步骤一:通过对YOLOv7-Tiny-Large网络模型静态剪枝,通过剪枝、训练和微调减去冗余的参数和通道数,得到轻量化的YOLOv7-Tiny-Pruning网络模型,作为学生模型;
步骤二:对学生模型使用柚子照片数据集进行训练,生成知识软目标,再由知识软目标生成软标签,用于多教师知识蒸馏训练;
步骤三:在YOLOv7-Tiny网络模型的主干网络中添加AIFI模块,YOLOv7-Tiny网络模型的损失函数改为Wasserstein,得到YOLOv7-Tiny-AIFI-Wasserstein网络模型,并作为教师模型Ⅰ;
步骤四:在YOLOv7-Tiny网络模型的颈网络中添加SEAM注意力机制,YOLOv7-Tiny网络模型的损失函数改为SlideLoss损失函数,得到 YOLOv7-Tiny-SEAM-SlideLoss网络模型,并作为教师模型Ⅱ;
步骤五:使用教师模型Ⅰ的知识转学生模型,首先,教师模型Ⅰ对柚子照片数据集进行训练,生成教师模型Ⅰ的知识软目标,再由教师模型Ⅰ的知识软目标生成教师模型Ⅰ的软标签,最后通过教师模型Ⅰ的软标签与学生模型的软标签生成蒸馏损失函数Ⅰ;
步骤六:使用教师模型Ⅱ的知识转学生模型,首先,教师模型Ⅱ对柚子照片数据集进行训练,生成教师模型Ⅱ的知识软目标,再由教师模型Ⅱ的知识软目标生成教师模型Ⅱ的软标签,最后通过教师模型Ⅱ的软标签与学生模型的软标签生成蒸馏损失函数Ⅱ;
步骤七:结合蒸馏损失函数Ⅰ与蒸馏损失函数Ⅱ,生成总蒸馏损失函数;再用总蒸馏损失函数对学生模型进行蒸馏训练,蒸馏训练后的学生模型对所输入的柚子照片生成知识软目标,再由知识软目标生成软标签,并计算学生模型损失,最终得到硬目标,使用硬目标对柚子图像进行预测,得到识别框,对识别框计数,即为柚子数量。
2.根据权利要求1所述的融合多教师知识蒸馏的Yolov7柚子计数方法,其特征在于,所述步骤一中,通过对YOLOv7-Tiny-Large网络模型使用柚子照片数据集进行训练;对训练后的YOLOv7-Tiny-Large网络模型剪枝,剪枝方法为LAMP剪枝;用最优稀疏化目标函数对训练后的YOLOv7-Tiny-Large网络模型进行稀疏化后使用L2正则化,进行权重衰减以达到剪枝的作用;所述最优稀疏化目标函数如下:
其中,为最优稀疏化目标函数,/>为超参数控制稀疏性的强度,/>为正常的损失项;/>为输入通道序号,/>为输入通道数,/>为输出通道序号,/>为输出通道数,/>为第k层的第/>个权重张量,/>为/>的转置,K为YOLOv7-Tiny-Large网络模型总层数。
3.根据权利要求1所述的融合多教师知识蒸馏的Yolov7柚子计数方法,其特征在于,教师模型Ⅰ的知识转学生模型的方法如下:
YOLOv7-Tiny网络模型的损失函数为:
其中,是YOLOv7-Tiny网络模型的损失函数,/>为YOLOv7-Tiny网络模型的置信度损失函数,表示一个边界框是否包含类别的损失,/>为YOLOv7-Tiny网络模型的分类损失函数,表示一个边界框的分类损失;/>为YOLOv7-Tiny网络模型的定位损失函数,表示一个边界框的坐标回归损失,x为置信度信息,y为分类信息,z为真实标签的定位信息;将置信度损失函数、分类损失函数、定位损失函数引入教师模型Ⅰ的蒸馏损失函数Ⅰ,得到:
其中,为学生模型经过教师模型Ⅰ知识蒸馏后的置信度损失函数,为学生模型经过教师模型Ⅰ知识蒸馏后的分类损失函数,/>为学生模型经过教师模型Ⅰ知识蒸馏后的定位损失函数,/>为原始检测部分的置信度损失函数,/>为原始检测部分的分类损失函数,/>为原始检测部分的定位损失函数,/>为教师模型Ⅰ的置信度蒸馏损失函数,/>为教师模型Ⅰ的分类蒸馏损失函数,/>为教师模型Ⅰ的定位蒸馏损失函数,/>为教师模型Ⅰ的置信度信息,/>为教师模型Ⅰ的分类信息,/>为教师模型Ⅰ的定位信息,/>为用来平衡原始检测部分损失函数跟蒸馏损失函数的系数;得出由教师模型Ⅰ指导学生模型训练的知识蒸馏损失函数Ⅰ为:
4.根据权利要求3所述的融合多教师知识蒸馏的Yolov7柚子计数方法,其特征在于,教师模型Ⅱ的知识转学生模型的方法与教师模型Ⅰ的知识转学生模型的方法相同。
5.根据权利要求4所述的融合多教师知识蒸馏的Yolov7柚子计数方法,其特征在于,总蒸馏损失函数是蒸馏损失函数Ⅰ与蒸馏损失函数Ⅱ之和。
6.根据权利要求1所述的融合多教师知识蒸馏的Yolov7柚子计数方法,其特征在于,所述教师模型Ⅰ由主干网络、颈网络、预测输出构成,主干网络依次由第一卷积模块、第二卷积模块、第一C5模块、第一最大池化模块、第二C5模块、第二最大池化模块、第三C5模块、第三最大池化模块、第四C5模块、AIFI模块组成;颈网络包括SPPCSPC模块、第三卷积模块、第四卷积模块、第五卷积模块、第五C5模块、第六卷积模块、第六C5模块、第七卷积模块、第七C5模块、第八卷积模块、第八C5模块;第三C5模块输出的特征经第四卷积模块卷积,AIFI模块输出的特征进入SPPCSPC模块处理,SPPCSPC模块输出的特征经上采样后与第四卷积模块输出的特征融合,然后依次经过第五C5模块、第六卷积模块处理,第二C5模块输出的特征经第三卷积模块卷积,第六卷积模块输出的特征经上采样后与第三卷积模块输出的特征融合,然后进入第五C5模块处理,第五C5模块输出的特征经第七卷积模块卷积后与第五C5模块输出的特征融合,然后进入第七C5模块,第七C5模块输出的特征经第八卷积模块卷积后与SPPCSPC模块输出的特征融合,最后进入第八C5模块处理;选择第六C5模块、第七C5模块和第八C5模块的输出作为预测输出。
7.根据权利要求1所述的融合多教师知识蒸馏的Yolov7柚子计数方法,其特征在于,所述教师模型Ⅱ由主干网络、颈网络、预测输出构成,主干网络依次由第一卷积模块、第二卷积模块、第一C5模块、第一最大池化模块、第二C5模块、第二最大池化模块、第三C5模块、第三最大池化模块、第四C5模块组成;颈网络包括SPPCSPC模块、第三卷积模块、第四卷积模块、第五卷积模块、第五C5模块、第六卷积模块、第六C5模块、第七卷积模块、第七C5模块、第八卷积模块、第八C5模块;第三C5模块输出的特征经第四卷积模块卷积,第四C5模块输出的特征直接进入SPPCSPC模块处理,SPPCSPC模块输出的特征经上采样后与第四卷积模块输出的特征融合,然后依次经过第五C5模块、第六卷积模块处理,第二C5模块输出的特征经第三卷积模块卷积,第六卷积模块输出的特征经上采样后与第三卷积模块输出的特征融合,然后进入第五C5模块处理,第五C5模块输出的特征经第七卷积模块卷积后与第五C5模块输出的特征融合,然后进入第七C5模块,第七C5模块输出的特征经第八卷积模块卷积后与SPPCSPC模块输出的特征融合,最后进入第八C5模块处理;选择第六C5模块、第七C5模块和第八C5模块的输出分别经过SEAM注意力机制处理后,作为预测输出。
CN202311789356.3A 2023-12-25 2023-12-25 一种融合多教师知识蒸馏的Yolov7柚子计数方法 Active CN117496509B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311789356.3A CN117496509B (zh) 2023-12-25 2023-12-25 一种融合多教师知识蒸馏的Yolov7柚子计数方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311789356.3A CN117496509B (zh) 2023-12-25 2023-12-25 一种融合多教师知识蒸馏的Yolov7柚子计数方法

Publications (2)

Publication Number Publication Date
CN117496509A true CN117496509A (zh) 2024-02-02
CN117496509B CN117496509B (zh) 2024-03-19

Family

ID=89683280

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311789356.3A Active CN117496509B (zh) 2023-12-25 2023-12-25 一种融合多教师知识蒸馏的Yolov7柚子计数方法

Country Status (1)

Country Link
CN (1) CN117496509B (zh)

Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3205484A (en) * 1957-02-04 1965-09-07 Xerox Corp Electrostatic memory system
WO1996033479A1 (en) * 1995-04-19 1996-10-24 Elo Touchsystems, Inc. Acoustic touch position sensor using higher order horizontally polarized shear wave propagation
CN101829835A (zh) * 2010-04-27 2010-09-15 南京航空航天大学 一种焊缝自动跟踪方法及装置
WO2020138680A1 (en) * 2018-12-26 2020-07-02 Samsung Electronics Co., Ltd. Image processing apparatus and image processing method thereof
CN111626330A (zh) * 2020-04-23 2020-09-04 南京邮电大学 基于多尺度特征图重构和知识蒸馏的目标检测方法与系统
CN111932561A (zh) * 2020-09-21 2020-11-13 深圳大学 基于集成知识蒸馏的实时肠镜影像分割方法及装置
WO2021023202A1 (zh) * 2019-08-07 2021-02-11 交叉信息核心技术研究院(西安)有限公司 一种卷积神经网络的自蒸馏训练方法、设备和可伸缩动态预测方法
CN113065558A (zh) * 2021-04-21 2021-07-02 浙江工业大学 一种结合注意力机制的轻量级小目标检测方法
US20210277093A1 (en) * 2020-03-09 2021-09-09 Adma Biologics, Inc. Immunotherapeutic compositions and methods of production for coronavirus
CN113569882A (zh) * 2020-04-28 2021-10-29 上海舜瞳科技有限公司 一种基于知识蒸馏的快速行人检测方法
CN114120205A (zh) * 2021-12-02 2022-03-01 云南电网有限责任公司信息中心 一种配网作业人员系安全带的目标检测和图像识别方法
CN114169501A (zh) * 2021-12-02 2022-03-11 深圳市华尊科技股份有限公司 神经网络压缩方法及相关设备
CN114332994A (zh) * 2021-12-20 2022-04-12 深圳数联天下智能科技有限公司 训练年龄预测模型的方法、年龄检测方法及相关装置
EP4016394A1 (en) * 2020-12-17 2022-06-22 Wistron Corporation Object identification device and object identification method
CN114677673A (zh) * 2022-03-30 2022-06-28 中国农业科学院农业信息研究所 一种基于改进yolo v5网络模型的马铃薯病害识别方法
WO2022162839A1 (ja) * 2021-01-28 2022-08-04 日本電気株式会社 学習装置、学習方法、及び、記録媒体
CN114863248A (zh) * 2022-03-02 2022-08-05 武汉大学 一种基于深监督自蒸馏的图像目标检测方法
CN114998294A (zh) * 2022-06-23 2022-09-02 西南交通大学 一种基于知识蒸馏的高铁绝缘子缺陷检测方法
CN115018039A (zh) * 2021-03-05 2022-09-06 华为技术有限公司 一种神经网络蒸馏方法、目标检测方法以及装置
CN115049534A (zh) * 2021-03-09 2022-09-13 上海交通大学 基于知识蒸馏的鱼眼图像实时语义分割方法
CN115223049A (zh) * 2022-09-20 2022-10-21 山东大学 面向电力场景边缘计算大模型压缩的知识蒸馏与量化技术

Patent Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3205484A (en) * 1957-02-04 1965-09-07 Xerox Corp Electrostatic memory system
WO1996033479A1 (en) * 1995-04-19 1996-10-24 Elo Touchsystems, Inc. Acoustic touch position sensor using higher order horizontally polarized shear wave propagation
CN101829835A (zh) * 2010-04-27 2010-09-15 南京航空航天大学 一种焊缝自动跟踪方法及装置
WO2020138680A1 (en) * 2018-12-26 2020-07-02 Samsung Electronics Co., Ltd. Image processing apparatus and image processing method thereof
WO2021023202A1 (zh) * 2019-08-07 2021-02-11 交叉信息核心技术研究院(西安)有限公司 一种卷积神经网络的自蒸馏训练方法、设备和可伸缩动态预测方法
US20210277093A1 (en) * 2020-03-09 2021-09-09 Adma Biologics, Inc. Immunotherapeutic compositions and methods of production for coronavirus
CN111626330A (zh) * 2020-04-23 2020-09-04 南京邮电大学 基于多尺度特征图重构和知识蒸馏的目标检测方法与系统
CN113569882A (zh) * 2020-04-28 2021-10-29 上海舜瞳科技有限公司 一种基于知识蒸馏的快速行人检测方法
CN111932561A (zh) * 2020-09-21 2020-11-13 深圳大学 基于集成知识蒸馏的实时肠镜影像分割方法及装置
EP4016394A1 (en) * 2020-12-17 2022-06-22 Wistron Corporation Object identification device and object identification method
WO2022162839A1 (ja) * 2021-01-28 2022-08-04 日本電気株式会社 学習装置、学習方法、及び、記録媒体
CN115018039A (zh) * 2021-03-05 2022-09-06 华为技术有限公司 一种神经网络蒸馏方法、目标检测方法以及装置
CN115049534A (zh) * 2021-03-09 2022-09-13 上海交通大学 基于知识蒸馏的鱼眼图像实时语义分割方法
CN113065558A (zh) * 2021-04-21 2021-07-02 浙江工业大学 一种结合注意力机制的轻量级小目标检测方法
CN114169501A (zh) * 2021-12-02 2022-03-11 深圳市华尊科技股份有限公司 神经网络压缩方法及相关设备
CN114120205A (zh) * 2021-12-02 2022-03-01 云南电网有限责任公司信息中心 一种配网作业人员系安全带的目标检测和图像识别方法
CN114332994A (zh) * 2021-12-20 2022-04-12 深圳数联天下智能科技有限公司 训练年龄预测模型的方法、年龄检测方法及相关装置
CN114863248A (zh) * 2022-03-02 2022-08-05 武汉大学 一种基于深监督自蒸馏的图像目标检测方法
CN114677673A (zh) * 2022-03-30 2022-06-28 中国农业科学院农业信息研究所 一种基于改进yolo v5网络模型的马铃薯病害识别方法
CN114998294A (zh) * 2022-06-23 2022-09-02 西南交通大学 一种基于知识蒸馏的高铁绝缘子缺陷检测方法
CN115223049A (zh) * 2022-09-20 2022-10-21 山东大学 面向电力场景边缘计算大模型压缩的知识蒸馏与量化技术

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
JIE PAN: "Semisupervised Cross Domain Teacher–Student Mutual Training for Damaged Building Detection", 《IEEE JOURNAL OF SELECTED TOPICS IN APPLIED EARTH OBSERVATIONS AND REMOTE SENSING》, 7 July 2023 (2023-07-07) *
白士磊;殷柯欣;朱建启;: "轻量级YOLOv3的交通标志检测算法", 计算机与现代化, no. 09, 15 September 2020 (2020-09-15) *
闵锐;: "高效深度神经网络综述", 电信科学, no. 04, 20 April 2020 (2020-04-20) *
高璇;饶鹏;刘高睿;: "基于特征蒸馏的实时人体动作识别", 工业控制计算机, no. 08, 25 August 2020 (2020-08-25) *

Also Published As

Publication number Publication date
CN117496509B (zh) 2024-03-19

Similar Documents

Publication Publication Date Title
CN111489358B (zh) 一种基于深度学习的三维点云语义分割方法
CN110516536B (zh) 一种基于时序类别激活图互补的弱监督视频行为检测方法
JP5197737B2 (ja) 特定被写体検出装置及びその学習装置と学習方法
CN109858390A (zh) 基于端到端时空图学习神经网络的人体骨架的行为识别方法
US11562177B2 (en) Triple verification device and triple verification method
CN113065402B (zh) 一种基于变形注意力机制的人脸检测方法
CN111612051B (zh) 一种基于图卷积神经网络的弱监督目标检测方法
CN112199532B (zh) 一种基于哈希编码和图注意力机制的零样本图像检索方法及装置
CN112036447A (zh) 零样本目标检测系统及可学习语义和固定语义融合方法
CN110610210B (zh) 一种多目标检测方法
CN114218292B (zh) 一种多元时间序列相似性检索方法
CN110728187A (zh) 一种基于容错性深度学习的遥感影像场景分类方法
CN113095251B (zh) 一种人体姿态估计方法及系统
CN112541532A (zh) 基于密集连接结构的目标检测方法
CN111476823B (zh) 基于多挑战交互学习的实时rgbt跟踪方法及装置
JPWO2020012523A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
CN110516950A (zh) 一种面向实体解析任务的风险分析方法
CN111709442B (zh) 一种面向图像分类任务的多层字典学习方法
CN115457332A (zh) 基于图卷积神经网络和类激活映射的图像多标签分类方法
CN116977844A (zh) 一种轻量级水下目标实时检测方法
CN115035599A (zh) 一种融合装备与行为特征的武装人员识别方法和系统
CN114821341A (zh) 基于fpn与pan网络的双重注意力的遥感小目标检测方法
CN116704196B (zh) 一种训练图像语义分割模型的方法
CN117496509B (zh) 一种融合多教师知识蒸馏的Yolov7柚子计数方法
Mehmood et al. Classifier ensemble optimization for gender classification using genetic algorithm

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
GR01 Patent grant
GR01 Patent grant