Выходной слой регрессии
Регрессионный слой вычисляет полусреднюю потерю в квадратичной невязке для задач регрессии.
Создайте регрессионный выходной слой с помощью regressionLayer
.
ResponseNames
- Имена ответов{}
(по умолчанию) | массив ячеек из векторов символов | строковых массивовИмена ответов, заданные массив ячеек из векторов символов или строковые массивы. Во время обучения программное обеспечение автоматически устанавливает имена ответов согласно обучающим данным. Значение по умолчанию является {}
.
Типы данных: cell
LossFunction
- Функция потерь для обучения'mean-squared-error'
Функция потерь, используемая программным обеспечением для обучения, задается как 'mean-squared-error'
.
Name
- Имя слоя''
(по умолчанию) | символьный вектор | строковый скаляр
Имя слоя, заданное как вектор символов или строковый скаляр. Чтобы включить слой в график слоев, необходимо задать непустое уникальное имя слоя. Если вы обучаете последовательную сеть с слоем и Name
установлено в ''
затем программа автоматически присваивает слою имя во время обучения.
Типы данных: char
| string
NumInputs
- Количество входовКоличество входов слоя. Этот слой принимает только один вход.
Типы данных: double
InputNames
- Входные имена{'in'}
(по умолчанию)Входные имена слоя. Этот слой принимает только один вход.
Типы данных: cell
NumOutputs
- Количество выходовКоличество выходов слоя. Слой не имеет выходов.
Типы данных: double
OutputNames
- Выходные имена{}
(по умолчанию)Выходные имена слоя. Слой не имеет выходов.
Типы данных: cell
Создайте регрессионный выходной слой с именем '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
Регрессионный слой вычисляет полусреднюю потерю в квадратичной невязке для задач регрессии. Для типичных задач регрессии слой регрессии должен следовать за конечным полносвязным слоем.
Для одного наблюдения средняя квадратная ошибка задается:
где R - количество откликов, ti - целевой выход, а yi - предсказание сети для i отклика.
Для регрессионных сетей изображение и последовательность-к-одному, функция потерь регрессионого слоя является квадратичной невязкой предсказанных реакций, не нормализованной по R:
Для сетей регрессии изображение-изображение функцией потерь регрессионого слоя является квадратичная невязка предсказанных откликов для каждого пикселя, не нормализованная R:
где H, W и C обозначают высоту, ширину и количество каналов выхода соответственно и p индексы в каждый элемент (пиксель) t и y линейно.
Для регрессионных сетей «последовательность-последовательность» функцией потерь регрессионого слоя является квадратичная невязка предсказанных ответов для каждого временного шага, не нормализованная R:
где S - длина последовательности.
При обучении программное обеспечение вычисляет среднюю потерю по сравнению с наблюдениями в мини-пакете.
classificationLayer
| fullyConnectedLayer
| regressionLayer
| trainNetwork
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
Вы щелкнули по ссылке, которая соответствует команде MATLAB:
Выполните эту команду, введя её в командном окне MATLAB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.