regressionLayer

Создайте регрессию выходной слой

Описание

Слой регрессии вычисляет половину потери среднеквадратической ошибки для задач регрессии.

layer = regressionLayer возвращает регрессию выходной слой для нейронной сети как RegressionOutputLayer объект.

Предскажите ответы обученного использования сети регрессии predict. Нормализация ответов часто помогает обучению стабилизации и ускорению нейронных сетей для регрессии. Для получения дополнительной информации смотрите, Обучают Сверточную нейронную сеть Регрессии.

пример

layer = regressionLayer(Name,Value) устанавливает дополнительный Name и ResponseNames свойства с помощью пар "имя-значение". Например, regressionLayer('Name','output') создает слой регрессии с именем 'output'. Заключите каждое имя свойства в одинарные кавычки.

Примеры

свернуть все

Создайте регрессию выходной слой с именем 'routput'.

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

             Name: 'routput'
    ResponseNames: {}

   Hyperparameters
     LossFunction: 'mean-squared-error'

Функция потерь по умолчанию для регрессии является среднеквадратической ошибкой.

Включайте регрессию выходной слой в массив Слоя.

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

Входные параметры

свернуть все

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: regressionLayer('Name','output') создает слой регрессии с именем 'output'

Имя слоя в виде вектора символов или строкового скаляра. Для Layer вход массивов, trainNetwork, assembleNetwork, layerGraph, и dlnetwork функции автоматически присваивают имена к слоям с Name установите на ''.

Типы данных: char | string

Имена ответов, заданных массив ячеек из символьных векторов или массив строк. В учебное время программное обеспечение автоматически определяет имена ответа согласно обучающим данным. Значением по умолчанию является {}.

Типы данных: cell

Выходные аргументы

свернуть все

Regression слой выхода, возвращенный как RegressionOutputLayer объект.

Больше о

свернуть все

Регрессия Выходной слой

Слой регрессии вычисляет половину потери среднеквадратической ошибки для задач регрессии. Для типичных проблем регрессии слой регрессии должен следовать за итоговым полносвязным слоем.

Для одного наблюдения среднеквадратической ошибкой дают:

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

где R является количеством ответов, ti является целевой выход, и yi является предсказанием сети для ответа i.

Для изображения и sequence-one сетей регрессии, функция потерь слоя регрессии является половиной среднеквадратической ошибки предсказанных ответов, не нормированных на R:

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

Для сетей регрессии от изображения к изображению функция потерь слоя регрессии является половиной среднеквадратической ошибки предсказанных ответов для каждого пикселя, не нормированного на R:

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

где H, W и C обозначают высоту, ширину, и количество каналов выхода соответственно и индексы p в каждый элемент (пиксель) t и y линейно.

Для сетей регрессии от последовательности к последовательности функция потерь слоя регрессии является половиной среднеквадратической ошибки предсказанных ответов для каждого временного шага, не нормированного на R:

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

где S является длиной последовательности.

Когда обучение, программное обеспечение вычисляет среднюю потерю по наблюдениям в мини-пакете.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Генерация кода графического процессора
Сгенерируйте код CUDA® для NVIDIA® графические процессоры с помощью GPU Coder™.

Введенный в R2017a
Для просмотра документации необходимо авторизоваться на сайте