模型复现 超简单复现轻量架构网络模型 <Shufflenet—v2>

Posted 极链AI云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模型复现 超简单复现轻量架构网络模型 <Shufflenet—v2>相关的知识,希望对你有一定的参考价值。

【模型复现 】超简单复现轻量架构网络模型《Shufflenet—v2》

极链AI云
关注极链AI云公众号,学习更多知识!


文章目录

一、模型详情

1.模型简介

近来,深度CNN网络如ResNet和DenseNet,已经极大地提高了图像分类的准确度。但是除了准确度外,计算复杂度也是CNN网络要考虑的重要指标,过复杂的网络可能速度很慢,一些特定场景如无人车领域需要低延迟。另外移动端设备也需要既准确又快的小模型。为了满足这些需求,一些轻量级的CNN网络如MobileNet和ShuffleNet被提出,它们在速度和准确度之间做了很好地平衡。今天我们要讲的是ShuffleNetv2,它是旷视最近提出的ShuffleNet升级版本,并被ECCV2018收录。在同等复杂度下,ShuffleNetv2比ShuffleNet和MobileNetv2更准确。

2.关键词

高复杂度、低元素级运算

3.应用场景

图像预测

4.模型结构

5.论文地址

https://arxiv.org/pdf/1807.11164.pdf

6.代码地址

https://github.com/TropComplique/shufflenet-v2-tensorflow


二、效果展示


三、平台环境准备

1.打开极链AI云平台

极链AI云

2.点击模型

3.选择并创建实例

4.使用jupyterlab连接

四、模型复现

1.打开终端

2.环境配置

输入以下代码,执行配置命令

cd ..
cd ..
# 进入根目录
cp -r /datasets/ImageNet-1000 ../../user-data
# 将复现所需的公开数据集复制到指定文件夹下
cp -r modelsets/shufflenet/shufflenet_v2_batch1024_imagenet_20200812-5bf4721e.pth ../../user-data
# 将复现所需的预训练权重文件复制到指定文件夹下

3.模型推断

执行以下代码,执行推断命令

python inference.py
# 实际标签为211,推断标签为363。可通过不断提高训练的批次(epoch)降低损失率(loss)来提高模型检测的精度。

4.模型训练

执行以下代码,执行训练命令

python train.py

5.模型测试

在默认路径下执行以下代码

python test.py

以上是关于模型复现 超简单复现轻量架构网络模型 <Shufflenet—v2>的主要内容,如果未能解决你的问题,请参考以下文章

CV+Deep Learning——网络架构Pytorch复现系列——basenets(BackBones)

SENet代码复现+超详细注释(PyTorch)

模型难复现不一定是作者的错,最新研究发现模型架构要背锅丨CVPR 2022

[ 注意力机制 ] 经典网络模型2——CBAM 详解与复现

[ 注意力机制 ] 经典网络模型1——SENet 详解与复现

对比复现34个预训练模型,PyTorch和Keras你选谁?