SuperGradients 开源项目教程
项目介绍
SuperGradients 是一个由 Deci AI 开发的深度学习训练库,专注于计算机视觉任务。该库提供了预训练的 SOTA(State of the Art)模型,以及一系列经过验证的超参数,帮助用户轻松实现最佳的模型性能。SuperGradients 支持多种模型架构,如 ViT、EfficientNet、RegNet 等,并且与 TensorRT 和 OpenVINO 等部署工具兼容,使得模型可以轻松地投入生产环境。
项目快速启动
安装 SuperGradients
你可以通过以下命令安装 SuperGradients:
pip install super-gradients
加载预训练模型
以下是一个简单的示例,展示如何加载一个预训练的 YOLO-NAS 模型:
from super_gradients.training import models
from super_gradients.common.object_names import Models
model = models.get(Models.YOLO_NAS_M, pretrained_weights="coco")
应用案例和最佳实践
图像分类
SuperGradients 提供了多种预训练的图像分类模型,如 ViT、EfficientNet 等。以下是一个使用 ViT 模型进行图像分类的示例:
from super_gradients.training import models
from super_gradients.common.object_names import Models
model = models.get(Models.VIT_BASE, pretrained_weights="imagenet21k")
目标检测
YOLO-NAS 模型是 SuperGradients 中一个强大的目标检测模型。以下是一个使用 YOLO-NAS 进行目标检测的示例:
from super_gradients.training import models
from super_gradients.common.object_names import Models
model = models.get(Models.YOLO_NAS_M, pretrained_weights="coco")
典型生态项目
TensorRT 部署
SuperGradients 模型可以轻松地转换为 TensorRT 格式,以便在 NVIDIA GPU 上进行高效推理。以下是一个将模型转换为 TensorRT 格式的示例:
from super_gradients.training import models
from super_gradients.common.object_names import Models
model = models.get(Models.YOLO_NAS_M, pretrained_weights="coco")
model.prepare_for_conversion()
OpenVINO 部署
SuperGradients 模型也可以转换为 OpenVINO 格式,以便在 Intel 硬件上进行高效推理。以下是一个将模型转换为 OpenVINO 格式的示例:
from super_gradients.training import models
from super_gradients.common.object_names import Models
model = models.get(Models.YOLO_NAS_M, pretrained_weights="coco")
model.prepare_for_conversion()
通过这些示例,你可以看到 SuperGradients 不仅提供了强大的预训练模型,还支持多种部署工具,使得模型可以轻松地投入生产环境。