Cosmo-demo
Este modelo fue creado con la intención de complementar nuestra aplicación móvil como un contador de ingredientes. De modo que un usuario pueda tomar una imagen y la IA determine si tiene los ingredientes necesarios para crear una receta. Debido a la simplicidad del caso de uso, nos motivamos a usar un modelo ligero para esta tarea de clasificación. Recibimos la recomendación de usar Moondream por un mentor de Intel, que afinamos en este proyecto. Utilizamos el servidor Jupyter proporcionado por Intel para afinar y desplegar en una instancia de cómputo IDC con un procesador Intel® Xeon 4ª generación escalable para conectar con nuestro frontend.
Como usar
Procedimiento de Entrenamiento: Creada una clase básica de cargador de datos para leer datos de imagen y salida esperada. Las imágenes PIL fueron pasadas a través del VIT proporcionado con Moondream. Moondream fue luego afinado usando el optimizador Adam predeterminado con un tamaño de lote de 8 durante 30 épocas.
Código de ejemplo
# Ejemplo de cómo cargar y utilizar el modelo
from PIL import Image
from transformers import ViTFeatureExtractor, ViTForImageClassification
import torch
# Cargar modelo y tokenizador
model = ViTForImageClassification.from_pretrained('nyap/cosmo-demo')
feature_extractor = ViTFeatureExtractor.from_pretrained('nyap/cosmo-demo')
# Preparar imagen
image = Image.open('ruta/a/la/imagen.jpg')
inputs = feature_extractor(images=image, return_tensors='pt')
# Realizar predicción
with torch.no_grad():
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
# Resultado
print('Predicted class:', model.config.id2label[predicted_class_idx])
Funcionalidades
- Clasificación y conteo de ingredientes
- Uso de Moondream afinado
- Desplegado en Intel® Xeon 4ª generación escalable
- Precisión perfecta en conjunto de prueba pequeño
- Optimizado con Adam y entrenado durante 30 épocas
Casos de uso
- Contar y clasificar ingredientes (aguacates, plátanos, doritos y cebollas) en imágenes
- Aplicación asistente de cocina móvil construida en React-native