regressionLayer

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

Описание

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

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

Предсказать ответы обученной регрессионой сети используя predict. Нормализация реакций часто помогает стабилизировать и ускорить обучение нейронных сетей регрессии. Для получения дополнительной информации см. «Train сверточной нейронной сети для регрессии».

пример

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 должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

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

Имя слоя, заданное как вектор символов или строковый скаляр. Чтобы включить слой в график слоев, необходимо задать непустое уникальное имя слоя. Если вы обучаете последовательную сеть с слоем и Name установлено в ''затем программа автоматически присваивает слою имя во время обучения.

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

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

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

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

свернуть все

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

Подробнее о

свернуть все

Слой Выхода регрессии

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

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

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

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

Для регрессионных сетей изображение и последовательность-к-одному, функция потерь регрессионого слоя является квадратичной невязкой предсказанных реакций, не нормализованной по 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++ с помощью Coder™ MATLAB ®

.

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

.
Введенный в R2017a