EfficientNet est une famille de réseaux de neurones convolutifs (CNN) développée pour les tâches de vision par ordinateur, publiée pour la première fois par des chercheurs de Google AI en 2019. Sa caractéristique déterminante est la mise à l'échelle composée, une technique qui ajuste uniformément toutes les dimensions d'un réseau de neurones - profondeur, largeur et résolution - à l'aide d'un coefficient unique. Cette approche contraste avec les pratiques conventionnelles qui ne modifient qu'une seule dimension, comme l'ajout de couches ou l'augmentation de la taille des entrées. Les modèles EfficientNet ont été largement adoptés dans des domaines tels que la classification d'images, la détection d'objets et la segmentation sémantique, et sont reconnus pour atteindre une haute précision avec un coût de calcul inférieur par rapport aux architectures antérieures.
L'article original sur EfficientNet a démontré que la mise à l'échelle composée pouvait surpasser les modèles dont les dimensions étaient ajustées individuellement sur le benchmark ImageNet. En équilibrant soigneusement la croissance sur plusieurs axes, la famille atteint des résultats de pointe tout en maintenant les opérations en virgule flottante (FLOPs) à un niveau gérable. Les modèles reposent sur une architecture de base découverte par recherche d'architecture neuronale, et la méthode de mise à l'échelle s'appuie sur cette fondation pour produire un spectre de modèles allant de compacts à très précis.
Architecture et mise à l'échelle composée
L'innovation centrale d'EfficientNet est la méthode de mise à l'échelle composée. Au lieu d'augmenter arbitrairement la profondeur (nombre de couches), la largeur (nombre de canaux) ou la résolution (taille de l'image d'entrée) individuellement, la méthode met à l'échelle les trois simultanément. Étant donné un réseau de base, le multiplicateur de profondeur d, le multiplicateur de largeur w et le multiplicateur de résolution r sont définis comme d = α^φ, w = β^φ et r = γ^φ, où φ est un coefficient composé contrôlant l'échelle globale. Ces multiplicateurs sont contraints par la condition α · β² · γ² ≈ 2, ce qui garantit qu'augmenter φ d'un facteur φ₀ accroît le coût de calcul total du réseau d'environ 2^φ₀ fois. Les hyperparamètres α, β et γ sont généralement définis via une petite recherche par grille ; l'article original suggérait des valeurs de 1,2, 1,1 et 1,15, respectivement.
Sur le plan architectural, le réseau de base EfficientNet-B0 a été découvert grâce à la recherche d'architecture neuronale (NAS), qui a identifié la convolution en goulot d'étranglement inversé (appelée MBConv) - un bloc de construction précédemment popularisé dans MobileNet - comme très efficace. La famille complète EfficientNet consiste en des couches MBConv empilées, dont le nombre exact et les tailles de filtres sont déterminés par les équations de mise à l'échelle composée. La publication originale a introduit huit modèles, EfficientNet-B0 à EfficientNet-B7, chacun avec une profondeur, une largeur et une résolution croissantes, conduisant à des améliorations proportionnelles de la précision sur des tâches comme la classification d'images.
Variantes et adaptations
Au-delà des modèles originaux B0-B7, EfficientNet a été adapté pour du matériel spécialisé grâce à des recherches supplémentaires en architecture neuronale. Des variantes ont été optimisées pour les TPU de périphérie, qui privilégient une faible latence et une efficacité énergétique, ainsi que pour les clusters de TPU ou de GPU centralisés où le débit est primordial. Ces adaptations échangent souvent de légères réductions de précision contre des gains significatifs en vitesse d'inférence, ce qui les rend adaptées aux applications en temps réel dans les systèmes embarqués et les services cloud.
EfficientNet V2 a été publié en juin 2021, introduisant plusieurs raffinements architecturaux. La conception mise à jour intègre un ensemble plus large de types de couches convolutives découverts grâce à une recherche NAS étendue, y compris les blocs MBConv fusionnés. Une avancée notable a été une nouvelle procédure d'entraînement qui augmente progressivement la taille des images d'entrée pendant l'entraînement, couplée à des techniques de régularisation telles que le dropout, RandAugment et Mixup. Les auteurs ont rapporté que cette approche atténue la dégradation de la précision couramment observée lors de l'utilisation du redimensionnement progressif, conduisant à un entraînement plus rapide et à de meilleures performances finales. EfficientNet V2 a également introduit des variantes comme S, M et L, qui ciblent différentes contraintes de ressources.
Impact et applications
EfficientNet a influencé les recherches ultérieures sur la mise à l'échelle des modèles et la conception d'architectures dans le domaine de l'apprentissage profond. Son principe de mise à l'échelle composée a été appliqué à d'autres architectures, y compris les transformeurs, où il a inspiré des stratégies de mise à l'échelle multidimensionnelle. En pratique, les modèles EfficientNet sont couramment utilisés comme réseaux de base pour les systèmes de détection d'objets comme You Only Look Once (YOLO) et pour les modèles de segmentation tels que U-Net, grâce à leurs capacités d'extraction de caractéristiques et à leur efficacité. Ils sont également fréquemment employés dans les pipelines d'apprentissage par transfert, où des poids pré-entraînés sur de grands ensembles de données comme ImageNet sont affinés pour des tâches spécifiques à un domaine.
L'accent mis par la famille de modèles sur l'efficacité computationnelle en a fait un choix populaire pour le déploiement sur les appareils mobiles et le matériel de périphérie, complétant le travail d'entreprises comme Apple et Qualcomm dans l'optimisation de l'inférence des réseaux de neurones. Sa disponibilité en open source, généralement sous des licences permissives, a facilité une large adoption tant dans le milieu académique qu'industriel, consolidant son statut de référence pour la conception de CNN modernes.
Limites et orientations futures
Malgré ses atouts, EfficientNet présente des limites. La méthode de mise à l'échelle composée repose sur une approximation approximative des FLOPs et peut ne pas toujours produire le compromis optimal pour un matériel ou des contraintes spécifiques. De plus, les couches MBConv originales, bien qu'efficaces, peuvent être moins performantes que les mécanismes plus récents basés sur l'attention trouvés dans les modèles transformeurs. Des recherches ont depuis exploré des architectures hybrides qui intègrent des blocs convolutifs avec de l'attention, visant à combiner l'efficacité des CNN avec la compréhension contextuelle de l'attention multi-têtes. Ces dernières années, EfficientNet reste une référence compétitive, mais les modèles plus récents intègrent de plus en plus des idées issues de la recherche d'architecture neuronale et de la mise à l'échelle automatisée pour repousser les limites de la précision et de l'efficacité.