MobileNet V1
El modelo MobileNet V1 pre-entrenado en ImageNet-1k a una resolución de 192x192. Fue introducido en 'MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications' por Howard et al, y liberado por primera vez en este repositorio. MobileNets son modelos pequeños, de baja latencia y bajo consumo parametrizados para cumplir con las restricciones de recursos de una variedad de casos de uso. Pueden ser utilizados para clasificación, detección, embeddings y segmentación de manera similar a otros modelos grandes populares como Inception. Los MobileNets pueden ejecutarse eficientemente en dispositivos móviles, equilibrando la latencia, el tamaño y la precisión mientras se comparan favorablemente con modelos populares de la literatura científica.
Como usar
Aquí se explica cómo usar este modelo para clasificar una imagen del conjunto de datos COCO 2017 en una de las 1,000 clases de ImageNet:
from transformers import AutoImageProcessor, AutoModelForImageClassification
from PIL import Image
import requests
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
preprocessor = AutoImageProcessor.from_pretrained("google/mobilenet_v1_0.75_192")
model = AutoModelForImageClassification.from_pretrained("google/mobilenet_v1_0.75_192")
inputs = preprocessor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
# el modelo predice una de las 1000 clases de ImageNet
predicted_class_idx = logits.argmax(-1).item()
print("Clase predicha:", model.config.id2label[predicted_class_idx])
Nota: Este modelo en realidad predice 1001 clases, las 1000 clases de ImageNet más una clase extra de 'fondo' (índice 0). Actualmente, tanto el extractor de características como el modelo soportan PyTorch.
Funcionalidades
- Modelo pequeño y de baja latencia
- Bajo consumo de energía
- Parametrizados para cumplir con las restricciones de recursos
- Eficaz para clasificación, detección, embeddings y segmentación
- Eficiencia en dispositivos móviles
Casos de uso
- Clasificación de imágenes
- Detección de objetos
- Generación de embeddings
- Segmentación de imágenes
- Ejecución eficiente en dispositivos móviles