说明文档
EfficientNet
EfficientNet 模型由 Mingxing Tan 和 Quoc V. Le 在论文 EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks 中提出。EfficientNet 是一系列图像分类模型,在达到最先进准确率的同时,比之前的模型更小、更快一个数量级。这里的特定版本是 EfficientNet-ES(EdgeTPU-Small)。
我们开发了一个可由 AMD Ryzen AI 支持的修改版本。
模型描述
论文摘要如下:
卷积神经网络(ConvNets)通常在固定的资源预算下开发,如果有更多资源可用,则会扩大规模以提高准确率。在本文中,我们系统地研究了模型缩放,发现仔细平衡网络深度、宽度和分辨率可以获得更好的性能。基于这一观察,我们提出了一种新的缩放方法,使用简单但高效的复合系数统一缩放深度/宽度/分辨率的所有维度。我们在 MobileNets 和 ResNet 上展示了这种方法的有效性。为了更进一步,我们使用神经架构搜索设计了一个新的基准网络,并将其扩展以获得一系列模型,称为 EfficientNets,它们比之前的 ConvNets 实现了更好的准确率和效率。特别是,我们的 EfficientNet-B7 在 ImageNet 上实现了最先进的 84.3% top-1 准确率,同时比现有的最佳 ConvNet 小 8.4 倍,推理速度快 6.1 倍。我们的 EfficientNets 也具有良好的迁移性,在 CIFAR-100(91.7%)、Flowers(98.8%)和其他 3 个迁移学习数据集上实现了最先进的准确率,参数量减少了一个数量级。
原始代码可在这里找到。
预期用途与限制
您可以使用原始模型进行图像分类。请参阅模型中心以查找您感兴趣的任务的微调版本。
如何使用
安装
-
按照 Ryzen AI Installation 为 Ryzen AI 准备环境。
-
运行以下脚本安装此模型的先决条件。
pip install -r requirements.txt
测试与评估
-
推理单张图片(图像分类):
import onnxruntime import argparse from PIL import Image import torchvision.transforms as transforms parser = argparse.ArgumentParser() parser.add_argument('--onnx_path', type=str, default=\"EfficientNet_int.onnx\", required=False) parser.add_argument('--image_path', type=str, required=True) args = parser.parse_args() def read_image(): # Read a PIL image image = Image.open(args.image_path) normalize = transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]) transform = transforms.Compose([ transforms.ToTensor(), transforms.Resize((224, 224)), normalize, ]) img_tensor = transform(image).unsqueeze(0) return img_tensor.numpy() def main(): so = onnxruntime.SessionOptions() ort_session = onnxruntime.InferenceSession( args.onnx_path, so, providers=['CUDAExecutionProvider']) ort_inputs = { \"WrapModel::input_0\": read_image() } output = ort_session.run(None, ort_inputs)[0] print(\"class id =\", output[0].argmax()) if __name__ == \"__main__\": main() -
使用
eval_onnx.py评估 ImageNet 验证数据集(50,000 张图片)。python eval_onnx.py --onnx_model EfficientNet_int.onnx --ipu --provider_config Path\To\vaip_config.json --data_dir /Path/To/Your/Dataset
性能
数据集:ImageNet 验证数据集(50,000 张图片)。
| 指标 | IPU 上的准确率 |
|---|---|
| top1 和 top5 准确率 | 77.72% / 93.78% |
引用
@article{EfficientNet,
author = {Mingxing Tan and Quoc V. Le},
title = {Searching for MobileNetV3},
year = {2019},
url = {https://arxiv.org/abs/1905.11946},
}
amd/efficientnet-es
作者 amd
创建时间: 2023-12-04 09:02:55+00:00
更新时间: 2024-01-09 08:32:48+00:00
在 Hugging Face 上查看