Main Content

resnet50

Rete neurale convoluzionale ResNet-50 (non consigliata)

  • ResNet-50 architecture

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

Descrizione

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

esempio

net = resnet50 restituisce una rete neurale ResNet-50 addestrata sul set di dati di ImageNet.

Questa funzione richiede il pacchetto di supporto Deep Learning Toolbox™ Model for ResNet-50 Network. Se il pacchetto di supporto non è installato, la funzione fornisce un link per il download.

net = resnet50('Weights','imagenet') restituisce una rete neurale ResNet-50 addestrata sul set di dati di ImageNet. Questa sintassi è equivalente a net = resnet50.

lgraph = resnet50('Weights','none') restituisce l'architettura della rete neurale ResNet-50 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 ResNet-50 Network.

Digitare resnet50 nella riga di comando.

resnet50

Se il pacchetto di supporto Deep Learning Toolbox Model for ResNet-50 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 resnet50 nella riga di comando. Se il pacchetto di supporto richiesto è installato, la funzione restituisce un oggetto DAGNetwork.

resnet50
ans = 

  DAGNetwork with properties:

         Layers: [177×1 nnet.cnn.layer.Layer]
    Connections: [192×2 table]

Visualizzare la rete neurale con Deep Network Designer.

deepNetworkDesigner(resnet50)

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 ResNet-50 preaddestrata, restituita come un oggetto DAGNetwork.

Architettura della rete neurale convoluzionale ResNet-50 non addestrata, restituita come un oggetto LayerGraph.

Riferimenti

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

[2] He, Kaiming, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. "Deep residual learning for image recognition." In Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 770-778. 2016.

Funzionalità estese

Cronologia versioni

Introdotto in R2017b

comprimi tutto

R2024a: Non consigliato

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

Non è prevista la sospensione dell'assistenza per la funzione resnet50. 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 resnet50 e come aggiornare il codice per utilizzare invece la funzione imagePretrainedNetwork.

Non consigliatoConsigliato
net = resnet50;[net,classNames] = imagePretrainedNetwork("resnet50");
net = resnet50(Weights="none");net = imagePretrainedNetwork("resnet50",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.