Aller au contenu principal
ToolPotion

Implémentation de ConvMixer

Ce dépôt fournit une implémentation de ConvMixer, une architecture de réseau neuronal convolutif pour les tâches de reconnaissance d'images. Il est basé sur l'article "Patches Are All You Need? 🤷" et propose des poids de modèle pré-entraînés pour l'évaluation ainsi que du code pour l'entraînement sur des jeux de données tels que ImageNet-1k et CIFAR-10.

Visiter l'URL

Description

Ce dépôt GitHub, locuslab/convmixer, héberge l'implémentation de ConvMixer, une architecture de réseau neuronal détaillée dans l'article ICLR 2022 intitulé "Patches Are All You Need? 🤷" par Asher Trockman et Zico Kolter. Le code principal du modèle ConvMixer se trouve dans `convmixer.py`. Le projet s'appuie sur le framework `pytorch-image-models` (timm) pour l'entraînement et inclut des modifications à ce framework pour prendre en charge ConvMixers.

Les modifications clés au sein du framework `pytorch-image-models` incluent l'ajout de `timm/models/convmixer.py`, des mises à jour de `timm/models/__init__.py`, et l'intégration d'un planificateur de taux d'apprentissage "OneCycle" avec les fichiers de planificateur correspondants. Bien que le planificateur OneCycle soit noté, les auteurs suggèrent que des planificateurs cosinus standard pourraient également être efficaces pour l'entraînement de ConvMixers.

Le dépôt propose des poids de modèle pré-entraînés pour plusieurs variantes de ConvMixer, notamment ConvMixer-1536/20, ConvMixer-768/32 et ConvMixer-1024/20, avec des détails sur leur taille de noyau, leur taille de patch et leur taille de fichier. Des instructions et des exemples de commandes sont fournis pour évaluer ces modèles sur des jeux de données tels que ImageNet-1k, dans le but d'obtenir une haute précision. Par exemple, ConvMixer-1536/20 devrait atteindre une précision de 81,37 % sur la validation ImageNet-1k.

L'entraînement de ConvMixers est également détaillé, avec une commande d'exemple pour l'entraînement distribué sur une configuration multi-GPU utilisant ImageNet-1k. La commande d'entraînement spécifie des hyperparamètres tels que la taille du lot, le nombre de travailleurs, l'optimiseur, les époques, le planificateur de taux d'apprentissage, les techniques d'augmentation (par exemple, RandAugment, CutMix, MixUp) et la taille d'entrée. Le dépôt inclut également une version simplifiée et « tweetable » de l'architecture ConvMixer en Python.

De plus, un dépôt séparé pour l'entraînement de ConvMixers sur CIFAR-10 est lié, et des conseils sont donnés sur l'ajustement des paramètres d'entraînement tels que `--scale` pour des tailles d'entrée plus petites. Le projet est open-source sous la licence MIT, encourageant la contribution communautaire et le développement futur.

Points forts de Implémentation de ConvMixer

  • Implémentation de l'architecture de réseau neuronal ConvMixer

  • Basé sur l'article de recherche "Patches Are All You Need? 🤷"

  • Inclut du code pour l'entraînement de ConvMixers

  • Fournit des poids de modèle pré-entraînés pour l'évaluation

  • Prend en charge l'entraînement sur les jeux de données ImageNet-1k et CIFAR-10

  • S'appuie sur le framework `pytorch-image-models` (timm)

  • Inclut une implémentation de planificateur de taux d'apprentissage "OneCycle"

  • Propose des exemples de commandes pour l'évaluation des modèles

  • Inclut des exemples de commandes pour l'entraînement distribué

  • Contient une version simplifiée et « tweetable » du modèle ConvMixer

  • Poids du modèle disponibles en téléchargement

  • Open-source sous licence MIT

Premiers pas avec Implémentation de ConvMixer

  1. Accéder au modèle : Clonez le dépôt GitHub sur votre machine locale.

  2. Configurer l'environnement : Installez les bibliothèques Python nécessaires, y compris PyTorch et `pytorch-image-models`.

  3. Charger le modèle : Instanciez un modèle ConvMixer à l'aide des scripts Python fournis.

  4. Évaluer le modèle : Utilisez le script `validate.py` avec les poids téléchargés et un jeu de données de validation.

  5. Entraîner le modèle : Exécutez le script `distributed_train.sh` avec les chemins de jeu de données et les paramètres d'entraînement spécifiés.

  6. Intégrer : Adaptez le code `convmixer.py` pour des boucles d'entraînement personnalisées ou des pipelines d'inférence.

Cas d'utilisation de Implémentation de ConvMixer

  • Classification d'images
  • Évaluation de modèles
  • Entraînement de modèles personnalisés
  • Recherche et développement
  • Apprentissage par transfert
  • Benchmarking

FAQ de Implémentation de ConvMixer

Avis sur Implémentation de ConvMixer

Chargement...

Outils IA populaires comme Implémentation de ConvMixer

Le dépôt Vision Transformer (ViT) fournit des modèles et du code pour les tâches de reconnaissance d'images. Il comprend des implémentations des architectures Vision Transformer…

Modèles d'IA et LLM

Modèles IA

ConvBERT est un modèle d'IA open-source pour le pré-entraînement de modèles linguistiques, introduisant une architecture novatrice avec convolution dynamique basée sur des…

Modèles d'IA et LLM

Modèles IA

SPP_net est une réimplémentation de l'algorithme Spatial Pyramid Pooling pour les réseaux convolutifs profonds en reconnaissance visuelle. Il vise à reproduire les résultats de…

Modèles d'IA et LLM

SqueezeNet est un modèle de réseau neuronal convolutif profond disponible via PyTorch. Il atteint une précision de niveau AlexNet avec beaucoup moins de paramètres et une taille…

Modèles d'IA et LLM

Modèles IA

RepVGG est une architecture ConvNet puissante et simple qui atteint une grande précision sur ImageNet. Elle utilise une conception de style VGG avec des techniques de…

Modèles d'IA et LLM

Modèles IA

Xception est un modèle d'apprentissage profond disponible via l'API Keras 3. Il fait partie de Keras Applications, offrant des modèles pré-entraînés pour diverses tâches de vision…

Modèles d'IA et LLM

Ce modèle d'IA détaille un grand réseau neuronal convolutif profond entraîné pour la classification ImageNet. Il a obtenu des résultats de pointe avec des taux d'erreur top-1 et…

Modèles d'IA et LLM

Modèles IA

Vision GNN (ViG) est une implémentation PyTorch des Vision Graph Neural Networks développée par Huawei Noah's Ark Lab. Elle offre des backbones IA efficaces pour les tâches de…

Modèles d'IA et LLM