EfficientNet (modelo b0)
EfficientNet es un modelo puro de convoluciones (ConvNet) amigable con dispositivos móviles que propone un nuevo método de escalado que ajusta uniformemente todas las dimensiones de profundidad/ancho/resolución usando un coeficiente compuesto simple pero altamente efectivo. Este modelo fue entrenado en ImageNet-1k con una resolución de 224x224. Fue introducido en el artículo EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks por Mingxing Tan y Quoc V. Le, y fue lanzado por primera vez en este repositorio. (Nota: El equipo que liberó EfficientNet no escribió una tarjeta de modelo para este modelo, por lo que esta tarjeta de modelo ha sido redactada por el equipo de Hugging Face)
Como usar
Aquí se muestra cómo usar este modelo para clasificar una imagen del conjunto de datos COCO 2017 en una de las 1,000 clases de ImageNet:
import torch
from datasets import load_dataset
from transformers import EfficientNetImageProcessor, EfficientNetForImageClassification
dataset = load_dataset('huggingface/cats-image')
image = dataset['test']['image'][0]
preprocessor = EfficientNetImageProcessor.from_pretrained('google/efficientnet-b0')
model = EfficientNetForImageClassification.from_pretrained('google/efficientnet-b0')
inputs = preprocessor(image, return_tensors='pt')
with torch.no_grad():
logits = model(**inputs).logits
# El modelo predice una de las 1000 clases de ImageNet
predicted_label = logits.argmax(-1).item()
print(model.config.id2label[predicted_label])
Para más ejemplos de código, consulte la documentación.
Funcionalidades
- Modelo puro de convoluciones
- Escalado uniforme de dimensiones de profundidad/ancho/resolución
- Altamente efectivo y amigable con dispositivos móviles
Casos de uso
- Clasificación de imágenes