DataLearner 标志DataLearnerAI
最新AI资讯
大模型排行榜
大模型评测基准
大模型列表
大模型对比
资源中心
工具
语言中文
DataLearner 标志DataLearner AI

专注大模型评测、数据资源与实践教学的知识平台,持续更新可落地的 AI 能力图谱。

产品

  • 评测榜单
  • 模型对比
  • 数据资源

资源

  • 部署教程
  • 原创内容
  • 工具导航

关于

  • 关于我们
  • 隐私政策
  • 数据收集方法
  • 联系我们

© 2026 DataLearner AI. DataLearner 持续整合行业数据与案例,为科研、企业与开发者提供可靠的大模型情报与实践指南。

隐私政策服务条款
  1. 首页/
  2. 博客列表/
  3. 博客详情

TorchVision最新0.13版本发布!

2022/07/31 11:54:20
2,416 阅读
cvpytorchtorchvision开源软件

PyTorch是由Facebook AI研究实验室开发的一个基于Python的深度学习框架,也是业界十分流行的深度学习框架(详情:PyTorch详情)。

PyTorch最新的1.12版本已经在前天发布。而其中TorchVision是基于PyTorch框架开发的面向CV解决方案的一个PyThon库,其最主要的特点是包含了很多流行的数据集、模型架构以及预训练模型等。本次也随着PyTorch1.12的发布更新到了v0.13。此次发布包含几个非常好的提升,值得大家关注。

  • 一、多权重的支持(Multi-weight support API)
  • 二、新的架构和模型变体(New architectures and model variants)
  • 2.1、分类模型
  • 2.2、对象检测和实例分割
  • model = fasterrcnn_resnet50_fpn_v2(weights="DEFAULT")
  • model = maskrcnn_resnet50_fpn_v2(weights="DEFAULT")
  • 2.3、新的预训练权重
  • 2.4、模型刷新(Model Refresh)
  • 三、新的增强、Layers和损失函数(New Augmentations, Layers and Losses)

一、多权重的支持(Multi-weight support API)

TorchVision有一个新的向后兼容的API,用于建立支持多权重的模型。新的API允许在同一个模型变体上加载不同的预训练权重,跟踪重要的元数据,如分类标签,并包括使用模型所需的预处理转换。

目前,TorchVision提供了预训练的模型,这些模型可以作为转移学习的起点,也可以在计算机视觉应用中原样使用。但是上述方法有一些局限性。

  1. 无法支持多个预训练的权重。由于预训练的变量是布尔值,我们只能提供一组权重。当我们大幅提高现有模型的准确性,并希望将这些改进提供给社区时,这就造成了严重的限制。这也阻止了我们在不同的数据集上提供同一模型变体的预训练权重。
  2. 缺少推理/预处理的转换。用户被迫在使用模型之前定义必要的转换。推理变换通常与训练过程和用于估计权重的数据集有关。这些转换中的任何微小差异(如插值、调整大小/裁剪大小等)都会导致精度的大幅降低或模型无法使用。
  3. 缺少元数据。与权重有关的关键信息对用户来说是不可用的。例如,人们需要从外部来源和文档中寻找诸如类别标签、训练配方、准确度指标等信息。

新的API解决了上述限制,减少了标准任务所需的模板代码量。具体可以参考:https://pytorch.org/blog/introducing-torchvision-new-multi-weight-support-api/

二、新的架构和模型变体(New architectures and model variants)

TorchVision在这个版本中增加了很多新的模型供大家使用。主要包括以下几点。

2.1、分类模型

Swin Transformer和EfficienetNetV2是两个流行的分类模型,经常被用于下游的视觉任务。这个版本包括6个预训练的权重,用于它们的分类变体。下面是如何使用这些新模型的方法。

import torch
from torchvision.models import *

image = torch.rand(1, 3, 224, 224)
model = swin_t(weights="DEFAULT").eval()
prediction = model(image)

image = torch.rand(1, 3, 384, 384)
model = efficientnet_v2_s(weights="DEFAULT").eval()
prediction = model(image)

除此以外,我们还为现有架构提供了新的变体,如ShuffleNetV2、ResNeXt和MNASNet。在ImageNet-1K上获得的所有新的预训练模型的准确率如下所示。

2.2、对象检测和实例分割

我们为RetinaNet、FasterRCNN和MaskRCNN引入了3个新的模型变体,其中包括一些论文后的架构优化和改进的训练配方。所有模型都可以类似地使用。

import torch
from torchvision.models.detection import *

images = [torch.rand(3, 800, 600)]
model = retinanet_resnet50_fpn_v2(weights="DEFAULT")
# model = fasterrcnn_resnet50_fpn_v2(weights="DEFAULT")
# model = maskrcnn_resnet50_fpn_v2(weights="DEFAULT")
model.eval()
prediction = model(images)
2.3、新的预训练权重

ViT和RegNet模型的变体提供了新的预训练的SWAG(来自hashtAGs的监督弱化)权重。其中最大的一个模型在ImageNet-1K上达到了惊人的88.6%的准确率。我们目前提供两个版本的权重。1)在ImageNet-1K上的微调端到端权重(最高精度);2)在ImageNet-1K上的冻结主干权重与线性分类器拟合(非常适合转移学习)。

SWAG的权重是在Attribution-NonCommercial 4.0国际许可证下发布的。我们要感谢Laura Gustafson、Mannat Singh和Aaron Adcock在为TorchVision提供权重方面的工作和支持。

2.4、模型刷新(Model Refresh)

多重支持API的发布使我们能够刷新最受欢迎的模型并提供更准确的权重。我们将每个模型平均提高了~3分。所用的新配方是在ResNet50的基础上学习的。

三、新的增强、Layers和损失函数(New Augmentations, Layers and Losses)

这个版本带来了一堆新的基元,可用于制作SOTA模型。一些亮点包括增加了AugMix数据增强方法、DropBlock层、cIoU/dIoU损失等。我们要感谢Aditya Oke、Abhijit Deo、Yassine Alouini和Hu Ye对项目的贡献,并帮助我们保持TorchVision的相关性和新鲜感。

DataLearner 官方微信

欢迎关注 DataLearner 官方微信,获得最新 AI 技术推送

DataLearner 官方微信二维码
返回博客列表

相关博客

  • 计算机视觉领域的六大任务简介
  • 计算机视觉的五个趋势
  • 华为大模型生态重要一步!PyTorch最新2.1版本宣布支持华为昇腾芯片(HUAWEI Ascend)
  • 重磅!PyTorch官宣2.0版本即将发布,最新torch.compile特性说明!
  • 12倍推理速度提升!Meta AI开源全新的AI推理引擎AITemplate
  • 卷到家了!发布2天后MetaAI的Text-to-Video模型MAKE-A-VIDEO的开源PyTorch实现就要来了!
  • 重磅!Meta将PyTorch移交给Linux基金会!
  • PyTorch终于支持苹果的M1芯片了!

热门博客

  • 1Dirichlet Distribution(狄利克雷分布)与Dirichlet Process(狄利克雷过程)
  • 2回归模型中的交互项简介(Interactions in Regression)
  • 3贝塔分布(Beta Distribution)简介及其应用
  • 4矩母函数简介(Moment-generating function)
  • 5普通最小二乘法(Ordinary Least Squares,OLS)的详细推导过程
  • 6使用R语言进行K-means聚类并分析结果
  • 7深度学习技巧之Early Stopping(早停法)
  • 8手把手教你本地部署清华大学的ChatGLM-6B模型——Windows+6GB显卡本地部署