AI工业机器人落地:从感知规划到Sim-to-Real的工程实践
2026/10/19 5:14:42
基于知识蒸馏学习的轻量化高光谱图像分类模型代码 Pytorch制作 教师模型采用Resnet18,学生模型是对教师模型进行改进的轻量化模型,外加最新的注意力机制模块。 在一定基础上,可以超过教师模型。 全套项目,包含网络模型,训练代码,预测代码,直接下载数据集就能跑,拿上就能用,简单又省事儿 需要讲解另算) 内附indian pines数据集,采用30%的数据作为训练集,并附上迭代10次的模型结果,准确率90以上。
本项目是一个基于知识蒸馏(Knowledge Distillation)技术的高光谱图像分类系统,采用教师-学生网络架构,实现高效的图像分类任务。系统包含完整的数据预处理、模型训练、知识蒸馏和预测推理流程。
主要功能:
applyPCA()函数对高光谱数据进行主成分分析,将光谱维度从上百个波段压缩到指定数量(如3个)padWithZeros()函数对图像边缘进行零填充,便于后续提取图像块createImageCubes()函数以每个像素为中心提取指定大小的局部图像块(如25×25)splitTrainTestSet()函数按比例划分训练集和测试集,支持分层抽样关键参数:
windowSize=25:图像块大小pca_components=3:PCA降维后的主成分数量testRatio=0.7:测试集比例网络架构:基于ResNet-18的标准卷积神经网络
basicblockteacher使用标准3×3卷积轻量化改进:
Conv2db类结合分组卷积和点卷积,减少计算量CoordAtt模块增强特征表达能力核心组件:
hsigmoid和hswish:激活函数CoordAtt:坐标注意力机制,通过空间注意力提升特征质量三种训练模式:
基于知识蒸馏学习的轻量化高光谱图像分类模型代码 Pytorch制作 教师模型采用Resnet18,学生模型是对教师模型进行改进的轻量化模型,外加最新的注意力机制模块。 在一定基础上,可以超过教师模型。 全套项目,包含网络模型,训练代码,预测代码,直接下载数据集就能跑,拿上就能用,简单又省事儿 需要讲解另算) 内附indian pines数据集,采用30%的数据作为训练集,并附上迭代10次的模型结果,准确率90以上。
1. 单独训练教师网络
trainer.train_teacher()teachernetalonekl2. 单独训练学生网络(注释状态)
# trainer.train_student()3. 知识蒸馏训练
trainer.train_teacher_student()def distillation(self, y, labels, teacher_scores, temp, alpha): return self.KLDivLoss(F.log_softmax(y/temp, dim=1), F.softmax(teacher_scores/temp, dim=1)) * (temp*temp*2.0*alpha) + \ F.cross_entropy(y, labels) * (1. - alpha)temp=10,平衡参数alpha=0.9训练配置:
功能流程:
teacherstudentnet.pkl)关键特性:
本系统适用于各种高光谱图像分类任务,如:
该系统通过知识蒸馏技术实现了高精度与高效率的平衡,为高光谱图像分类提供了一套完整的解决方案。