Main Content

alexnet

Rete neurale convoluzionale AlexNet (non consigliata)

  • AlexNet network architecture

alexnet non è consigliata. Utilizzare invece la funzione imagePretrainedNetwork e specificare il modello "alexnet". Per ulteriori informazioni, vedere Cronologia della versione.

Descrizione

AlexNet è una rete neurale convoluzionale con 8 livelli di profondità. È possibile caricare una versione preaddestrata della rete, addestrata su oltre un milione di immagini del database di ImageNet [1]. La rete preaddestrata è in grado di classificare le immagini in 1000 categorie di oggetti, come tastiera, mouse, matita e molti animali. Di conseguenza, la rete ha appreso rappresentazioni ricche di feature per un'ampia gamma di immagini. La dimensione di input dell'immagine della rete è 227x227. Per ulteriori reti addestrate in MATLAB®, vedere Reti neurali profonde preaddestrate.

Per un’introduzione concreta ai metodi pratici di Deep Learning, vedere Deep Learning Onramp.

esempio

net = alexnet restituisce una rete AlexNet addestrata sul set di dati di ImageNet.

Questa funzione richiede il pacchetto di supporto Deep Learning Toolbox™ Model for AlexNet Network. Se il pacchetto di supporto non è installato, la funzione fornisce un link per il download. In alternativa, vedere Deep Learning Toolbox Model per la rete AlexNet.

Per ulteriori reti addestrate in MATLAB, vedere Reti neurali profonde preaddestrate.

net = alexnet('Weights','imagenet') restituisce una rete AlexNet addestrata sul set di dati di ImageNet. Questa sintassi è equivalente a net = alexnet.

layers = alexnet('Weights','none') restituisce l'architettura della rete AlexNet non addestrata. Il modello non addestrato non richiede il pacchetto di supporto.

Esempi

comprimi tutto

Scaricare e installare il pacchetto di supporto Deep Learning Toolbox Model for AlexNet Network.

Digitare alexnet nella riga di comando.

alexnet

Se il pacchetto di supporto Deep Learning Toolbox Model for AlexNet Network non è installato, la funzione fornisce un link al pacchetto di supporto richiesto nell’Add-On Explorer. Fare clic sul link per installare il pacchetto di supporto, quindi fare clic su Install. Verificare che l’installazione sia stata eseguita correttamente digitando alexnet nella riga di comando.

alexnet
ans = 

  SeriesNetwork with properties:

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

Se il pacchetto di supporto richiesto è installato, la funzione restituisce un oggetto SeriesNetwork.

Visualizzare la rete con Deep Network Designer.

deepNetworkDesigner(alexnet)

Scoprire altre reti neurali preaddestrate in Deep Network Designer facendo clic su New.

Deep Network Designer start page showing available pretrained neural networks

Se è necessario scaricare una rete neurale, fermarsi sulla rete neurale desiderata e fare clic su Install per aprire l’Add-On Explorer.

Argomenti di output

comprimi tutto

Rete neurale convoluzionale AlexNet preaddestrata, restituita come un oggetto SeriesNetwork.

Architettura della rete neurale convoluzionale AlexNet non addestrata, restituita come un array di Layer.

Suggerimenti

Riferimenti

[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

Funzionalità estese

Cronologia versioni

Introdotto in R2017a

comprimi tutto

R2024a: Non consigliato

alexnet non è consigliata. Utilizzare invece la funzione imagePretrainedNetwork e specificare "alexnet" come modello.

Non è prevista la sospensione dell'assistenza per la funzione alexnet. Comunque, la funzione imagePretrainedNetwork presenta delle funzionalità aggiuntive che aiutano i workflow del transfer learning. Ad esempio, è possibile specificare il numero di classi nei dati utilizzando l'opzione numClasses; in questo modo, la funzione restituisce una rete pronta per essere riaddestrata senza bisogno di modifiche.

La funzione imagePretrainedNetwork restituisce la rete come oggetto dlnetwork che non memorizza i nomi delle classi. Per ottenere i nomi delle classi della rete preaddestrata, utilizzare il secondo argomento di output della funzione imagePretrainedNetwork.

Questa tabella mostra alcuni usi tipici della funzione alexnet e come aggiornare il codice per utilizzare invece la funzione imagePretrainedNetwork.

Non consigliatoConsigliato
net = alexnet;[net,classNames] = imagePretrainedNetwork("alexnet");
net = alexnet(Weights="none");net = imagePretrainedNetwork("alexnet",Weights="none");

imagePretrainedNetwork restituisce un oggetto dlnetwork che presenta inoltre questi vantaggi:

  • Gli oggetti dlnetwork sono un tipo di dati unificato che supporta la costruzione di reti, la previsione, l'addestramento integrato, la visualizzazione, la compressione, la verifica e i loop di addestramento personalizzati.

  • Gli oggetti dlnetwork supportano una gamma più ampia di architetture di rete che è possibile creare o importare da piattaforme esterne.

  • La funzione trainnet supporta gli oggetti dlnetwork che consentono di specificare le funzioni di perdita con facilità. È possibile scegliere tra le funzioni di perdita integrate o specificare una funzione di perdita personalizzata.

  • L'addestramento e la previsione con gli oggetti dlnetwork è generalmente più veloce dei workflow LayerGraph e trainNetwork.

Per addestrare una rete neurale specificata come oggetto dlnetwork, utilizzare la funzione trainnet.