PyTorch版的YOLOv5是一个非常流行的基于深度学习的目标检测器。本课程使用Network Slimming剪枝方法对YOLOv5进行网络剪枝,使其更加轻量。
Network Slimming是一种经典的实用模型压缩方法,可实现高效的通道级别的结构化剪枝。该方法通过利用BN(Batch Normalization)层中缩放因子较小的值来剪裁的相应通道,达到精简网络的目的。步骤包括:增加稀疏正则化的训练、网络模型剪枝、剪枝后的网络模型微调。
本课程在YOLOv5 v6.1版本代码的基础上增加Network Slimming剪枝方法,在Windows和Ubuntu系统上演示针对自己的数据集训练和进行网络剪枝过程,并讲解原代码针对剪枝的修改部分。
本课程分为原理篇、实战篇、代码讲解篇。
原理篇包括:网络剪枝的基础知识、Network Slimming剪枝原理。
实战篇包括:PyTorch环境安装、YOLOv5项目安装、准备自己的数据集、修改配置文件、正常训练自己的数据集、稀疏化训练、网络模型剪枝、剪枝后的网络模型微调。
代码讲解篇包括:剪枝代码修改说明和具体修改的代码讲解。