Affiner la FGVC: Leçons du classificateur de voitures temps réel

Towardsdatascience

Au cours de la dernière année, les chercheurs de Multitel ont approfondi les complexités de la classification visuelle à grain fin (FGVC). Leur objectif principal : concevoir un classificateur de voitures robuste capable d’identifier des modèles et des années de voitures spécifiques, et pas seulement de grandes marques, et, surtout, de fonctionner en temps réel sur des appareils périphériques à ressources limitées aux côtés d’autres modèles d’IA. Cette entreprise ambitieuse a nécessité de concilier la rigueur académique avec les exigences pratiques du déploiement en conditions réelles.

Le défi de la FGVC est multifacette. Contrairement à la classification d’images générale, qui pourrait distinguer une voiture d’un chat, la FGVC exige de discerner des différences visuelles subtiles entre des objets très similaires — par exemple, différencier divers modèles de BMW ou même des années de production spécifiques. Cette tâche est intrinsèquement difficile en raison de plusieurs facteurs. Premièrement, il y a souvent une variation inter-classes minimale, ce qui signifie que les indices visuels séparant les catégories peuvent être incroyablement subtils. Concurremment, une grande variation intra-classe existe, car les instances au sein de la même catégorie peuvent apparaître très différentes en raison de changements d’éclairage, de perspective ou d’encombrement de l’arrière-plan, submergeant facilement ces distinctions subtiles. De plus, les ensembles de données réels présentent fréquemment des distributions à longue traîne, où quelques catégories courantes ont des exemples abondants, tandis que de nombreuses catégories rares ne sont représentées que par une poignée d’images, ce qui rend difficile pour les modèles d’apprendre également bien toutes les classes.

Pour aborder ce problème, l’équipe de Multitel a initialement examiné la vaste littérature académique sur la FGVC. Des années de recherche ont produit une pléthore d’architectures et de pipelines de plus en plus complexes. Les approches antérieures impliquaient souvent des modèles multi-étapes, où un sous-réseau localisait les parties discriminantes d’un objet avant qu’un second ne le classifie. D’autres méthodes exploraient des fonctions de perte personnalisées, des interactions de caractéristiques d’ordre supérieur ou des dépendances hiérarchiques d’étiquettes. Bien que de nombreuses solutions de pointe les plus récentes, en particulier celles basées sur des architectures de transformeurs, aient atteint des précisions de référence impressionnantes — certaines dépassant même 97 % sur des ensembles de données comme Stanford Cars — elles manquaient souvent de discussion sur le temps d’inférence ou les contraintes de déploiement. Pour l’application en temps réel sur appareil périphérique de Multitel, de tels modèles furent jugés impraticables.

Au lieu de poursuivre les solutions les plus complexes ou spécialisées, Multitel a adopté une stratégie contre-intuitive : un modèle généraliste connu et efficace, s’il était entraîné de manière optimale, pourrait-il atteindre des performances comparables à celles d’architectures plus lourdes et plus spécialisées ? Cette ligne de recherche a été inspirée par des travaux suggérant que de nombreuses nouvelles architectures d’IA sont injustement comparées à d’anciennes bases de référence entraînées avec des procédures obsolètes. La prémisse était qu’un modèle bien établi comme ResNet-50, bénéficiant des avancées modernes en matière d’entraînement, pourrait “riposter” avec des résultats étonnamment solides, même sur des benchmarks FGVC exigeants.

Avec cette philosophie, l’équipe a entrepris de construire une procédure d’entraînement puissante et réutilisable, capable de fournir des performances élevées sur les tâches de FGVC sans dépendre de modifications spécifiques à l’architecture. L’idée centrale était de commencer avec un backbone efficace comme ResNet-50 et de se concentrer entièrement sur l’affinage du pipeline d’entraînement, en s’assurant que la “recette” puisse être largement appliquée à d’autres architectures avec des ajustements minimaux. Ils ont méticuleusement collecté et combiné les meilleures pratiques de plusieurs articles influents, y compris ceux sur “Bag of Tricks for Image Classification”, “Compounding Performance Improvements”, et le travail de Wightman “ResNet Strikes Back”.

Pour valider leur pipeline d’entraînement en évolution, les chercheurs ont utilisé l’ensemble de données Stanford Cars, un benchmark FGVC largement accepté, comprenant 196 catégories de voitures et plus de 16 000 images, toutes recadrées en boîtes englobantes pour simuler un scénario de classification en aval. Leur ligne de base initiale, utilisant un modèle ResNet-50 pré-entraîné sur ImageNet et entraîné pendant 600 époques avec l’optimisation Nesterov Accelerated Gradient, un taux d’apprentissage de 0,01 et une taille de lot de 32, a atteint une précision de 88,22 %.

L’équipe a ensuite systématiquement introduit des améliorations. L’implémentation d’un entraînement par grands lots (taille de lot 128, taux d’apprentissage 0,1) combinée à une stratégie de réchauffement linéaire du taux d’apprentissage a immédiatement augmenté la précision à 89,21 %. Un bond significatif s’est produit avec l’adoption de TrivialAugment, une technique d’augmentation de données remarquablement simple mais efficace et sans paramètres qui échantillonne et applique aléatoirement des augmentations. Cela seul a propulsé la précision à 92,66 %. Des raffinements supplémentaires ont inclus le passage à une décroissance cosinus du taux d’apprentissage, qui a poussé la précision à 93,22 %, et l’introduction du lissage d’étiquettes (label smoothing). Cette technique, qui adoucit les étiquettes de vérité terrain pour réduire l’excès de confiance du modèle, a non seulement amélioré la régularisation mais a également permis un taux d’apprentissage initial plus élevé (0,4), culminant à une précision robuste de 94,5 %. Une régularisation additionnelle est venue de Random Erasing, qui obscurcit aléatoirement des parties d’images, augmentant la précision à 94,93 %. Enfin, la moyenne mobile exponentielle (EMA) a été incorporée. Bien que l’EMA ait constamment amélioré la stabilité et la généralisation dans des tests isolés, son intégration dans le pipeline complet et déjà optimisé n’a montré aucun gain incrémentiel supplémentaire. Cependant, en raison de ses avantages globaux et de son faible coût, elle a été conservée dans la recette finale pour son applicabilité générale.

L’équipe a également exploré d’autres techniques d’optimisation courantes qui, au final, n’ont pas donné d’améliorations pour cette tâche spécifique. Le “weight decay” a constamment régressé les performances, tandis que des méthodes d’augmentation avancées comme Cutmix et Mixup se sont également avérées préjudiciables. Bien qu’AutoAugment ait donné de solides résultats, TrivialAugment a été préféré pour ses performances supérieures et sa nature sans paramètres, simplifiant le processus de réglage. Parmi les divers optimiseurs et planificateurs de taux d’apprentissage testés, Nesterov Accelerated Gradient et Cosine Annealing ont constamment fourni les meilleurs résultats.

En conclusion, en appliquant et en combinant systématiquement les meilleures pratiques d’entraînement modernes à une architecture ResNet-50 standard, Multitel a obtenu de solides performances sur l’ensemble de données Stanford Cars, poussant la précision à près de 95 %. Cela démontre qu’un réglage minutieux des techniques établies peut améliorer considérablement les capacités d’un modèle généraliste en classification à grain fin. Cependant, il est crucial de reconnaître les limites de tels benchmarks. L’ensemble de données Stanford Cars est presque équilibré en termes de classes, présente des images de haute qualité, principalement frontales, et manque d’occlusion significative ou de bruit du monde réel. Il ne répond pas entièrement aux défis tels que les distributions à longue traîne, le décalage de domaine ou la reconnaissance de classes non vues, qui sont omniprésents dans les applications pratiques. Bien que cette recherche fournisse une base solide et une preuve de concept, la construction d’un système véritablement prêt pour la production, capable de gérer les complexités inhérentes aux données du monde réel, reste un effort continu.