regressionLayer
Livello di output della regressione (non consigliato)
regressionLayer
non è consigliata. Utilizzare la funzione trainnet
e impostare invece la funzione di perdita su "mse"
. Per ulteriori informazioni, vedere Cronologia della versione.
Descrizione
Un livello di regressione calcola la perdita dell'errore quadratico semi-mediano per le attività di regressione.
restituisce il livello di output della regressione per una rete neurale come un oggetto layer
= regressionLayerRegressionOutputLayer
.
imposta le proprietà opzionali layer
= regressionLayer(Name,Value
)Name
and ResponseNames
utilizzando le coppie nome-valore. Ad esempio, regressionLayer('Name','output')
crea un livello di regressione con il nome 'output'
. Racchiudere ciascun nome della proprietà tra virgolette singole.
Esempi
Creazione del livello di output della regressione
Creare un livello di output della regressione.
Creare un livello di output della regressione con il nome 'routput'
.
layer = regressionLayer('Name','routput')
layer = RegressionOutputLayer with properties: Name: 'routput' ResponseNames: {} Hyperparameters LossFunction: 'mean-squared-error'
La funzione di perdita predefinita per la regressione è l'errore quadratico medio.
Includere un livello di output della regressione in un array di livelli.
layers = [ ...
imageInputLayer([28 28 1])
convolution2dLayer(12,25)
reluLayer
fullyConnectedLayer(1)
regressionLayer]
layers = 5x1 Layer array with layers: 1 '' Image Input 28x28x1 images with 'zerocenter' normalization 2 '' 2-D Convolution 25 12x12 convolutions with stride [1 1] and padding [0 0 0 0] 3 '' ReLU ReLU 4 '' Fully Connected 1 fully connected layer 5 '' Regression Output mean-squared-error
Argomenti di input
Argomenti nome-valore
Specificare coppie opzionali di argomenti come Name1=Value1,...,NameN=ValueN
, dove Name
è il nome dell’argomento e Value
è il valore corrispondente. Gli argomenti nome-valore devono comparire dopo gli altri argomenti, ma l'ordine delle coppie non ha importanza.
Prima della R2021a, utilizzare le virgole per separare ogni nome e valore e racchiudere Name
tra virgolette.
Esempio regressionLayer('Name','output')
crea un livello di regressione con il nome 'output'
Name
— Nome del livello
""
(predefinito) | vettore di carattere | scalare di stringa
Nome del livello, specificato come un vettore di carattere o uno scalare di stringa. Per l'input dell'array di Layer
, la funzione trainNetwork
assegna automaticamente i nomi ai livelli con il nome ""
.
L'oggetto RegressionOutputLayer
memorizza questa proprietà come vettore di carattere.
Tipi di dati: char
| string
ResponseNames
— Nome delle risposte
{}
(predefinito) | array di celle dei vettori di carattere | array di stringhe
Nomi delle risposte, specificati come un array di celle di vettori di carattere o un array di stringhe. Al momento dell'addestramento, il software imposta automaticamente i nomi delle risposte in base ai dati di addestramento. Per impostazione predefinita è {}
.
Tipi di dati: cell
Argomenti di output
layer
— Livello di output della regressione
Oggetto RegressionOutputLayer
Livello di output della regressione, restituito come un oggetto RegressionOutputLayer
.
Ulteriori informazioni
Livello di output della regressione
Un livello di regressione calcola la perdita dell'errore quadratico semi-mediano per le attività di regressione. Per i tipici problemi di regressione, un livello di regressione deve seguire il livello finale completamente connesso.
Per una singola osservazione, l'errore quadratico medio è dato da:
dove R è il numero delle risposte, ti è l’output target e yi è la previsione della rete per la risposta i.
Per le reti di regressione dell’immagine e da sequenza-a-uno, la funzione di perdita del livello di regressione è l’errore quadratico semi-mediano delle risposte previste, non normalizzate da R:
Per le reti di regressione da immagine-a-immagine, la funzione di perdita del livello di regressione è l’errore quadratico semi-mediano delle risposte previste per ciascun pixel, non normalizzate da R:
dove H, W e C indicano rispettivamente l’altezza, la larghezza e il numero di canali dell’output e p indicizza linearmente ciascun elemento (pixel) di t e y.
Per le reti di regressione da sequenza-a-sequenza, la funzione di perdita del livello di regressione è l’errore quadratico semi-mediano delle risposte previste per ciascuna fase temporale, non normalizzate da R:
dove S è la lunghezza della sequenza.
Durante l'addestramento, il software calcola la perdita media sulle osservazioni nel mini-batch.
Funzionalità estese
Generazione di codice C/C++
Genera codice C e C++ con MATLAB® Coder™.
Note sull’utilizzo e sulle limitazioni:
Il generatore di codice rappresenta i caratteri in un set di codice ASCII a 8 bit determinato dall'impostazione dell'ambiente. Pertanto, l'utilizzo di caratteri non ASCII nei nomi delle classi, nei nomi dei livelli, nella descrizione dei livelli o nei nomi della rete potrebbe comportare degli errori. Per ulteriori informazioni, vedere Encoding of Characters in Code Generation (MATLAB Coder).
Generazione di codice GPU
Genera codice CUDA® per GPU NVIDIA® con GPU Coder™.
Note sull’utilizzo e sulle limitazioni:
Per generare codice CUDA® o C++ utilizzando GPU Coder™, è necessario prima costruire e addestrare una rete neurale profonda. Una volta addestrata e valutata la rete, è possibile configurare il generatore di codice per generare il codice e distribuire la rete neurale convoluzionale su piattaforme che utilizzano i processori GPU NVIDIA® o ARM®. Per ulteriori informazioni, vedere Deep Learning with GPU Coder (GPU Coder).
Per questo livello, è possibile generare codice che sfrutti la libreria di reti neurali profonde NVIDIA CUDA (cuDNN), la libreria di inferenza ad alte prestazioni NVIDIA TensorRT™ o ARM
Compute Library
per GPU Mali.Il generatore di codice rappresenta i caratteri in un set di codice ASCII a 8 bit determinato dall'impostazione dell'ambiente. Pertanto, l'utilizzo di caratteri non ASCII nei nomi delle classi, nei nomi dei livelli, nella descrizione dei livelli o nei nomi della rete potrebbe comportare degli errori. Per ulteriori informazioni, vedere Encoding of Characters in Code Generation (MATLAB Coder).
Cronologia versioni
Introdotto in R2017aR2024a: Non consigliato
A partire dalla release R2024a, non è più consigliato utilizzare gli oggetti RegressionOutputLayer
, utilizzare trainnet
e impostare invece la funzione di perdita su "mse"
.
Non è prevista la sospensione dell'assistenza per gli oggetti RegressionOutputLayer
. Comunque, la funzione trainnet
presenta invece questi vantaggi, ed è quindi consigliata:
trainnet
supporta gli oggettidlnetwork
, che supportano una gamma più ampia di architetture di rete che è possibile creare o importare da piattaforme esterne.trainnet
consente di specificare le funzioni di perdita con facilità. È possibile scegliere tra le funzioni di perdita integrate o specificare una funzione di perdita personalizzata.trainnet
restituisce un oggettodlnetwork
, che è un tipo di dati unificato che supporta la costruzione di reti, la predizione, l'addestramento integrato, la visualizzazione, la compressione, la verifica e i loop di addestramento personalizzati.trainnet
è generalmente più veloce ditrainNetwork
.
Questa tabella mostra alcuni usi tipici della funzione trainNetwork
con gli oggetti RegressionOutputLayer
e come aggiornare il codice per utilizzare invece la funzione trainnet
.
Non consigliato | Consigliato |
---|---|
net = trainNetwork(X,T,layers,options) , dove layers contiene un oggetto RegressionOutputLayer . | net = trainnet(X,T,layers,"mse",options); layers specifica la stessa rete senza un oggetto RegressionOutputLayer . |
net = trainNetwork(data,layers,options) , dove layers contiene un oggetto RegressionOutputLayer . | net = trainnet(data,layers,"mse",options); layers specifica la stessa rete senza un oggetto RegressionOutputLayer . |
Comando MATLAB
Hai fatto clic su un collegamento che corrisponde a questo comando MATLAB:
Esegui il comando inserendolo nella finestra di comando MATLAB. I browser web non supportano i comandi MATLAB.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)