
Un pipeline automatizado de evaluación zero-shot de alta precisión para el modelo CLIP de OpenAI en CIFAR-10. Incluye una exactitud del 88.80 %, mitigación de seguridad de Safetensors (CVE-2025-32434) y flujo de trabajo AI Native (Trae).
Este proyecto implementa un pipeline robusto y automatizado para evaluar el modelo CLIP (ViT-B/32) de OpenAI en el conjunto de prueba completo de CIFAR-10 (10,000 imágenes). Desarrollado mediante un flujo de trabajo AI-Native (Trae IDE), alcanza una precisión zero-shot de alta exactitud del 88.80%.
88.80% (Zero-Shot)openai/clip-vit-base-patch32 (usando Safetensors)
Análisis: El modelo muestra un fuerte dominio diagonal. Se observa un sesgo estadístico entre 'Deer' y 'Horse' (15.4% de superposición), probablemente debido a contornos esqueléticos similares en la resolución ultra baja de 32x32 de CIFAR-10. Las categorías Automobile y Horse alcanzaron la mayor precisión (97.6%).
CIFAR10Dataset personalizado para manejar datos binarios crudos en formato pickle, convirtiendo arreglos de bytes 1D en tensores RGB 3D de manera eficiente.torch.utils.data.DataLoader con tqdm para gestionar 10,000 muestras sin desbordamiento de VRAM."a photo of a {label}" para optimizar la alineación semántica entre los embeddings de texto e imagen.scikit-learn para calcular la matriz de confusión, proporcionando una visión detallada de los errores de clasificación semántica.Este proyecto documenta la resolución de varios desafíos de nivel de producción encontrados durante el desarrollo:
.bin (Pickle) inseguros.use_safetensors=True para una carga de modelos segura y de cero copias.HF_HUB_DISABLE_SYMLINKS=1 y se estableció un protocolo manual de limpieza de caché para garantizar la compatibilidad multiplataforma.CLIPProcessor para manejar correctamente las entradas uint8 crudas, restaurando exitosamente la precisión al 88.8%.HF_ENDPOINT y local_files_only=True para un despliegue de alta velocidad y capaz de funcionar sin conexión.pip install torch transformers pillow numpy tqdm scikit-learn seaborn matplotlib
Descargue la versión Python de CIFAR-10 y coloque la carpeta cifar-10-batches-py en la raíz del proyecto.
# En Windows, simplemente ejecute el archivo por lotes preconfigurado:
.\run.bat
# O manualmente mediante Python:
python full_cifar_clip_eval.py
clip_eval_project/
├── full_cifar_clip_eval.py # Script principal de evaluación
├── run.bat # Entrada de ejecución con un clic
├── confusion_matrix.png # Resultado de la matriz de confusión
├── cifar-10-batches-py/ # Datos crudos de CIFAR-10
│ └── test_batch # Datos del conjunto de prueba
└── README.md # Documentación del proyecto
Este proyecto está bajo la Licencia MIT. Consulte el archivo LICENSE para más detalles.