
Un pipeline d'évaluation automatisé et de haute précision zero-shot pour le modèle CLIP d'OpenAI sur CIFAR-10. Avec une précision de 88.80%, une atténuation de sécurité Safetensors (CVE-2025-32434) et un flux de travail AI Native (Trae).
Ce projet implémente un pipeline automatisé et robuste pour évaluer le modèle CLIP (ViT-B/32) d'OpenAI sur l'ensemble de test complet de CIFAR-10 (10 000 images). Développé avec un workflow AI natif (Trae IDE), il atteint une précision zero-shot de 88,80 %.
88,80 % (Zero-Shot)openai/clip-vit-base-patch32 (avec Safetensors)
Analyse : Le modèle présente une forte dominance diagonale. Un biais statistique est observé entre 'Deer' et 'Horse' (15,4 % de chevauchement), probablement dû à des contours squelettiques similaires dans la résolution ultra-faible 32x32 de CIFAR-10. Les catégories Automobile et Horse ont atteint la plus haute précision (97,6 %).
CIFAR10Dataset personnalisé pour traiter les données binaires brutes (pickle), convertissant efficacement les tableaux 1D en tenseurs RGB 3D.torch.utils.data.DataLoader avec tqdm pour gérer 10 000 échantillons sans dépassement de VRAM."a photo of a {label}" pour optimiser l'alignement sémantique entre les embeddings de texte et d'image.scikit-learn pour calculer la matrice de confusion, offrant un aperçu granulaire des erreurs de classification sémantique.Ce projet documente la résolution de plusieurs défis de niveau production rencontrés lors du développement :
.bin (Pickle) non sécurisés.use_safetensors=True pour un chargement sécurisé et sans copie du modèle.HF_HUB_DISABLE_SYMLINKS=1 et mise en place d'un protocole manuel de nettoyage du cache pour assurer la compatibilité multi-plateforme.CLIPProcessor pour gérer correctement les entrées uint8 brutes, restaurant avec succès la précision à 88,8 %.HF_ENDPOINT et de local_files_only=True pour un déploiement hors ligne et haute vitesse.pip install torch transformers pillow numpy tqdm scikit-learn seaborn matplotlib
Téléchargez la version Python de CIFAR-10 et placez le dossier cifar-10-batches-py à la racine du projet.
# Sur Windows, exécutez simplement le fichier batch pré-configuré :
.\run.bat
# Ou manuellement via Python :
python full_cifar_clip_eval.py
clip_eval_project/
├── full_cifar_clip_eval.py # Script d'évaluation principal
├── run.bat # Point d'entrée exécution en un clic
├── confusion_matrix.png # Résultat de la matrice de confusion
├── cifar-10-batches-py/ # Données brutes CIFAR-10
│ └── test_batch # Données du jeu de test
└── README.md # Documentation du projet
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.