RegressionOutputLayer
Couche de sortie de régression
L’utilisation de regressionLayer
est déconseillée. Utilisez la fonction trainnet
et définissez la fonction de perte à "mse"
à la place. Pour plus d’informations, veuillez consulter Historique des versions.
Description
Une couche de régression calcule la perte de demi-erreur quadratique moyenne des tâches de régression.
Création
Créez une couche de sortie de régression avec regressionLayer
.
Propriétés
Sortie de régression
Noms des réponses, définis par un cell array de vecteurs de caractères ou un tableau de chaînes de caractères. Au moment de l’apprentissage, le software définit automatiquement les noms des réponses selon les données d’apprentissage. La valeur par défaut est {}
.
Types de données : cell
Fonction de perte utilisée par le logiciel pour l’apprentissage, définie par 'mean-squared-error'
.
Couche
Nom de la couche, défini par un vecteur de caractères ou un string scalar. Pour le tableau de Layer
en entrée, la fonction trainNetwork
attribue automatiquement des noms aux couches avec le nom ""
.
L’objet RegressionOutputLayer
stocke cette propriété comme un vecteur de caractères.
Types de données : char
| string
Nombre d’entrées de la couche, renvoyé comme étant 1
. Cette couche accepte seulement une entrée unique.
Types de données : double
Noms des entrées, renvoyés comme étant {'in'}
. Cette couche accepte seulement une entrée unique.
Types de données : cell
Nombre de sorties de la couche, renvoyé en tant que 0
. Cette couche n’a pas de sortie.
Types de données : double
Noms des sorties de la couche, renvoyés en tant que {}
. Cette couche n’a pas de sortie.
Types de données : cell
Exemples
Créez une couche de sortie de régression.
Créez une couche de sortie de régression avec le nom 'routput'
.
layer = regressionLayer('Name','routput')
layer = RegressionOutputLayer with properties: Name: 'routput' ResponseNames: {} Hyperparameters LossFunction: 'mean-squared-error'
La fonction de perte par défaut pour la régression est l’erreur quadratique moyenne.
Ajoutez une couche de sortie de régression dans le tableau de couches.
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
En savoir plus
Une couche de régression calcule la perte de demi-erreur quadratique moyenne des tâches de régression. Pour des problèmes de régression typiques, une couche de régression doit suivre la couche entièrement connectée finale.
Pour une observation unique, l’erreur quadratique moyenne est donnée par :
où R est le nombre de réponses, ti est la sortie cible et yi est la prédiction du réseau pour la réponse i.
Pour des réseaux de régression d’images et de sequence-to-one, la fonction de perte de la couche de régression est la demi-erreur quadratique moyenne des réponses prédites, non normalisée par R :
Pour des réseaux de régression image-à-image, la fonction de perte de la couche de régression est la demi-erreur quadratique moyenne des réponses prédites pour chaque pixel, non normalisée par R :
où H, W et C désignent respectivement la hauteur, la largeur et le nombre de canaux de la sortie, et p indexe chaque élément (pixel) de t et y linéairement.
Pour des réseaux de régression sequence-to-sequence, la fonction de perte de la couche de régression est la demi-erreur quadratique moyenne des réponses prédites pour chaque pas de temps, non normalisée par R :
où S est la longueur de la séquence.
Lors de l’apprentissage, le software calcule la perte moyenne sur les observations dans le mini-batch.
Historique des versions
Introduit dans R2017aÀ partir de R2024a, l’utilisation des objets RegressionOutputLayer
est déconseillée. Utilisez trainnet
et définissez la fonction de perte à "mse"
à la place.
Il n’est pas prévu de supprimer le support des objets RegressionOutputLayer
. Cependant, la fonction trainnet
présente les avantages suivants et son utilisation est recommandée à la place de ces objets :
trainnet
supporte les objetsdlnetwork
qui supportent un plus large éventail d’architectures de réseau que vous pouvez créer ou importer à partir de plateformes externes.trainnet
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.trainnet
génère en sortie un objetdlnetwork
qui est un type de données unifié supportant 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.trainnet
est généralement plus rapide quetrainNetwork
.
Le tableau suivant indique quelques utilisations courantes de la fonction trainNetwork
avec des objets RegressionOutputLayer
et comment mettre à jour votre code pour qu’il utilise la fonction trainnet
à la place.
Déconseillé | Recommandé |
---|---|
net = trainNetwork(X,T,layers,options) , où layers contient un objet RegressionOutputLayer . | net = trainnet(X,T,layers,"mse",options); layers spécifie le même réseau sans objet RegressionOutputLayer . |
net = trainNetwork(data,layers,options) , où layers contient un objet RegressionOutputLayer . | net = trainnet(data,layers,"mse",options); layers spécifie le même réseau sans objet RegressionOutputLayer . |
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Sélectionner un site web
Choisissez un site web pour accéder au contenu traduit dans votre langue (lorsqu'il est disponible) et voir les événements et les offres locales. D’après votre position, nous vous recommandons de sélectionner la région suivante : .
Vous pouvez également sélectionner un site web dans la liste suivante :
Comment optimiser les performances du site
Pour optimiser les performances du site, sélectionnez la région Chine (en chinois ou en anglais). Les sites de MathWorks pour les autres pays ne sont pas optimisés pour les visites provenant de votre région.
Amériques
- 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)