Main Content

alexnet

(Déconseillé) Réseau de neurones à convolution AlexNet

  • AlexNet network architecture

L’utilisation de alexnet est déconseillée. Utilisez la fonction imagePretrainedNetwork à la place et spécifiez le modèle "alexnet". Pour plus d’informations, veuillez consulter Historique des versions.

Description

AlexNet est un réseau de neurones à convolution d’une profondeur de 8 couches. Vous pouvez charger une version préentraînée du réseau entraîné sur plus d’un million d’images dans la base de données ImageNet [1]. Le réseau entraîné peut classer des images dans 1 000 catégories d’objets, par exemple un clavier, une souris, un crayon et de nombreux animaux. En conséquence, le réseau a appris des représentations avec de nombreuses caractéristiques pour une grande variété d’images. Le réseau a une taille d’image en entrée de 227 par 227. Pour plus de réseaux pré-entraînés dans MATLAB®, veuillez consulter Pretrained Deep Neural Networks.

Pour une introduction gratuite aux méthodes pratiques de Deep Learning, veuillez consulter Deep Learning Onramp.

exemple

net = alexnet renvoie un réseau AlexNet entraîné sur le jeu de données ImageNet.

Cette fonction nécessite le support package Deep Learning Toolbox™ Model for AlexNet Network. Si ce support package n’est pas installé, la fonction propose un lien de téléchargement. Vous pouvez également consulter Deep Learning Toolbox Model for AlexNet Network.

Pour plus de réseaux pré-entraînés dans MATLAB, veuillez consulter Pretrained Deep Neural Networks.

net = alexnet('Weights','imagenet') renvoie un réseau AlexNet entraîné sur le jeu de données ImageNet. Cette syntaxe est équivalente à net = alexnet.

layers = alexnet('Weights','none') renvoie l’architecture du réseau AlexNet non entraîné. Le modèle non entraîné ne nécessite pas de support package.

Exemples

réduire tout

Téléchargez et installez le support package Deep Learning Toolbox Model for AlexNet Network.

Saisissez alexnet en ligne de commande.

alexnet

Si le support package Deep Learning Toolbox Model for AlexNet Network n’est pas installé, la fonction propose un lien vers le support package nécessaire dans l’Add-On Explorer. Pour installer le support package, cliquez sur le lien, puis cliquez sur Install. Vérifiez que l’installation est réussie en saisissant alexnet en ligne de commande.

alexnet
ans = 

  SeriesNetwork with properties:

    Layers: [25×1 nnet.cnn.layer.Layer]

Si le support package requis est installé, la fonction renvoie un objet SeriesNetwork.

Visualisez le réseau avec Deep Network Designer.

deepNetworkDesigner(alexnet)

Découvrez d’autres réseaux de neurones préentraînés dans Deep Network Designer en cliquant sur New.

Deep Network Designer start page showing available pretrained neural networks

Si vous devez télécharger un réseau de neurones, arrêtez-vous sur le réseau souhaité et cliquez sur Install pour ouvrir l’Add-On Explorer.

Arguments de sortie

réduire tout

Réseau de neurones à convolution AlexNet préentraîné, renvoyé comme un objet SeriesNetwork.

Architecture du réseau de neurones à convolution AlexNet non entraîné, renvoyée comme un tableau Layer.

Conseils

  • Pour une introduction gratuite aux méthodes pratiques de Deep Learning, veuillez consulter Deep Learning Onramp.

Références

[1] ImageNet. http://www.image-net.org.

[2] Russakovsky, O., Deng, J., Su, H., et al. "ImageNet Large Scale Visual Recognition Challenge." International Journal of Computer Vision (IJCV). Vol 115, Issue 3, 2015, pp. 211–252

[3] Krizhevsky, Alex, Ilya Sutskever, and Geoffrey E. Hinton. "ImageNet Classification with Deep Convolutional Neural Networks." Communications of the ACM 60, no. 6 (May 24, 2017): 84–90. https://doi.org/10.1145/3065386

[4] BVLC AlexNet Model. https://github.com/BVLC/caffe/tree/master/models/bvlc_alexnet

Capacités étendues

Historique des versions

Introduit dans R2017a

réduire tout

R2024a: Déconseillé

L’utilisation de alexnet est déconseillée. Utilisez la fonction imagePretrainedNetwork à la place et spécifiez "alexnet" comme modèle.

Il n’est pas prévu de supprimer le support de la fonction alexnet. Cependant, la fonction imagePretrainedNetwork propose des fonctionnalités supplémentaires qui facilitent les workflows d’apprentissage par transfert. Par exemple, vous pouvez spécifier le nombre de classes de vos données avec l’option numClasses. La fonction renvoie un réseau prêt pour un nouvel apprentissage sans nécessiter de modification.

La fonction imagePretrainedNetwork renvoie le réseau comme un objet dlnetwork qui ne stocke pas les noms de classes. Pour obtenir les noms de classes du réseau préentraîné, utilisez le deuxième argument de sortie de la fonction imagePretrainedNetwork.

Le tableau suivant indique quelques utilisations courantes de la fonction alexnet et comment mettre à jour votre code pour qu’il utilise la fonction imagePretrainedNetwork à la place.

DéconseilléRecommandé
net = alexnet;[net,classNames] = imagePretrainedNetwork("alexnet");
net = alexnet(Weights="none");net = imagePretrainedNetwork("alexnet",Weights="none");

imagePretrainedNetwork renvoie un objet dlnetwork, ce qui présente également les avantages suivants :

  • Un objet dlnetwork est un type de données unifié qui supporte la création de réseau, la prédiction, l’apprentissage prédéfini, la visualisation, la compression, la vérification et les boucles d’apprentissage personnalisées.

  • Les objets dlnetwork supportent un plus large éventail d’architectures de réseau que vous pouvez créer ou importer à partir de plateformes externes.

  • La fonction trainnet supporte les objets dlnetwork, ce qui vous permet de spécifier facilement des fonctions de perte. Vous pouvez sélectionner une fonction de perte prédéfinie ou spécifier une fonction de perte personnalisée.

  • L’apprentissage et la prédiction avec des objets dlnetwork sont généralement plus rapides que les workflows LayerGraph et trainNetwork.

Pour entraîner un réseau de neurones spécifié comme un objet dlnetwork, utilisez la fonction trainnet.