Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

regressionLayer

Crear una capa de salida de regresión

Descripción

Una capa de regresión calcula la pérdida del error cuadrático medio dividido de las tareas de regresión.

layer = regressionLayer devuelve una capa de salida de regresión de una red neuronal como un objeto RegressionOutputLayer.

Puede predecir las respuestas de una red de regresión entrenada usando predict. Normalizar las respuestas suele ayudar a estabilizar y agilizar el entrenamiento de las redes neuronales para la regresión. Para obtener más información, consulte Train Convolutional Neural Network for Regression.

ejemplo

layer = regressionLayer(Name,Value) establece las propiedades opcionales Name y ResponseNames usando pares nombre-valor. Por ejemplo, regressionLayer('Name','output') crea una capa de regresión con el nombre 'output'. Encierre el nombre de cada propiedad entre comillas simples.

Ejemplos

contraer todo

Cree una capa de salida de regresión con el nombre 'routput'.

layer = regressionLayer('Name','routput')
layer = 
  RegressionOutputLayer with properties:

             Name: 'routput'
    ResponseNames: {}

   Hyperparameters
     LossFunction: 'mean-squared-error'

La función de pérdida predeterminada de la regresión es el error cuadrático medio.

Incluya una capa de salida de regresión en un arreglo de capas.

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   ''   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

Argumentos de entrada

contraer todo

Argumentos de par nombre-valor

Especifique pares de argumentos opcionales como Name1=Value1,...,NameN=ValueN, donde Name es el nombre del argumento y Value es el valor correspondiente. Los argumentos de nombre-valor deben aparecer después de otros argumentos. Sin embargo, el orden de los pares no importa.

En las versiones anteriores a la R2021a, use comas para separar cada nombre y valor, y encierre Name entre comillas.

Ejemplo: regressionLayer('Name','output') crea una capa de regresión con el nombre 'output'

Nombre de la capa, especificado como un vector de caracteres o un escalar de cadena. En la entrada del arreglo Layer, las funciones trainNetwork, assembleNetwork, layerGraph y dlnetwork asignan automáticamente el nombre '' a las capas.

Tipos de datos: char | string

Nombres de las respuestas, especificados como un arreglo de celdas de vectores de caracteres o como un arreglo de cadena. En el momento del entrenamiento, el software establece automáticamente los nombres de respuestas de acuerdo con los datos del entrenamiento. El valor predeterminado es {}.

Tipos de datos: cell

Argumentos de salida

contraer todo

Capa de salida de regresión, devuelta como un objeto RegressionOutputLayer.

Más acerca de

contraer todo

Capa de salida de regresión

Una capa de regresión calcula la pérdida del error cuadrático medio dividido de las tareas de regresión. En problemas típicos de regresión, la capa de regresión debe ir detrás de la capa totalmente conectada final.

Para una sola observación, el error cuadrático medio se proporciona de esta manera:

MSE=i=1R(tiyi)2R,

donde R es el número de respuestas, ti corresponde a la salida objetivo y yi es la predicción de la red de la respuesta i.

En las redes de regresión de imagen y secuencia a uno, la función de pérdida de la capa de regresión es el error cuadrático medio dividido de las respuestas de la predicción, sin que R aplique la normalización:

loss=12i=1R(tiyi)2.

En las redes de regresión de imagen a imagen, la función de pérdida de la capa de regresión es el error cuadrático medio dividido de las respuestas de la predicción de cada píxel, sin que R aplique la normalización:

loss=12p=1HWC(tpyp)2,

donde H, W y C determinan la altura, anchura y el número de canales de la salida (respectivamente), y p indexa en cada elemento (píxel) de t e y de forma lineal.

En las redes de regresión de secuencia a secuencia, la función de pérdida de la capa de regresión es el error cuadrático medio dividido de las respuestas de la predicción de cada unidad de tiempo, sin que R aplique la normalización:

loss=12Si=1Sj=1R(tijyij)2,

donde S corresponde a la longitud de la secuencia.

Durante el entrenamiento, el software calcula la pérdida media a lo largo de las observaciones del minilote.

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Generación de código de GPU
Genere código CUDA® para GPU NVIDIA® mediante GPU Coder™.

Historial de versiones

Introducido en R2017a