🚀 分层模型 (Tiny,在IN1K上微调)
Hiera 是一种 分层 视觉变换器,它快速、强大,最重要的是 简单。该模型在论文 Hiera: A Hierarchical Vision Transformer without the Bells-and-Whistles 中被提出,在众多图像和视频任务中超越了当前的先进水平,同时速度更快。
🚀 快速开始
预期用途和限制
Hiera 可用于图像分类、特征提取或掩码图像建模。此特定检查点旨在用于 特征提取。
如何使用
基础用法
from transformers import AutoImageProcessor, HieraModel
import torch
from PIL import Image
import requests
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
image_processor = AutoImageProcessor.from_pretrained("facebook/hiera-base-224-hf")
model = HieraModel.from_pretrained("facebook/hiera-base-224-hf")
inputs = image_processor(images=image, return_tensors="pt")
outputs = model(**inputs)
高级用法
你还可以使用 HieraBackbone
并在加载模型时设置 out_features
来从模型的不同阶段提取特征图。以下是如何从每个阶段提取特征图的示例:
from transformers import AutoImageProcessor, HieraBackbone
import torch
from PIL import Image
import requests
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
image_processor = AutoImageProcessor.from_pretrained("facebook/hiera-base-224-hf")
model = HieraBackbone.from_pretrained("facebook/hiera-base-224-hf", out_features=['stage1', 'stage2', 'stage3', 'stage4'])
inputs = image_processor(images=image, return_tensors="pt")
outputs = model(**inputs)
feature_maps = outputs.feature_maps
✨ 主要特性
工作原理

像 ViT 这样的视觉变换器在整个网络中使用相同的空间分辨率和特征数量。但这是低效的:早期层不需要那么多特征,而后期层不需要那么高的空间分辨率。像 ResNet 这样的先前分层模型通过在开始时使用较少的特征和在结束时使用较低的空间分辨率来解决这个问题。
已经有几种采用这种分层设计的特定领域视觉变换器被提出,如 Swin 或 MViT。但在追求使用 ImageNet - 1K 上的完全监督训练获得最先进结果的过程中,这些模型变得越来越复杂,因为它们添加了专门的模块来弥补 ViT 缺乏的空间偏差。虽然这些更改产生了具有吸引人的浮点运算次数(FLOP)的有效模型,但在底层,增加的复杂性使这些模型整体 变慢。
我们表明,很多这种复杂性实际上是 不必要的。我们没有通过架构更改手动添加空间基础,而是选择 教导 模型这些偏差。通过使用 MAE 进行训练,我们可以简化或移除现有变换器中的 所有 这些庞大模块,并在此过程中 提高准确性。结果就是 Hiera,一种极其高效且简单的架构,在多个图像和视频识别任务中超越了最先进水平。
📄 许可证
本项目采用 CC BY - NC 4.0 许可证。
BibTeX 引用和引用信息
如果您在工作中使用了 Hiera 或此代码,请引用:
@article{ryali2023hiera,
title={Hiera: A Hierarchical Vision Transformer without the Bells-and-Whistles},
author={Ryali, Chaitanya and Hu, Yuan-Ting and Bolya, Daniel and Wei, Chen and Fan, Haoqi and Huang, Po-Yao and Aggarwal, Vaibhav and Chowdhury, Arkabandhu and Poursaeed, Omid and Hoffman, Judy and Malik, Jitendra and Li, Yanghao and Feichtenhofer, Christoph},
journal={ICML},
year={2023}
}
属性 |
详情 |
数据集 |
imagenet - 1k |
语言 |
en |
库名称 |
transformers |
许可证 |
CC BY - NC 4.0 |