Слой Classification
Слой классификации вычисляет потерю перекрестной энтропии для многоклассовых задач классификации со взаимоисключающими классами.
Создайте слой классификации с помощью classificationLayer
.
Classes
— Классы выходного слоя'auto'
(значение по умолчанию) | категориальный вектор | массив строк | массив ячеек из символьных векторов
Классы выходного слоя в виде категориального вектора, массива строк, массива ячеек из символьных векторов или 'auto'
. Если Classes
'auto'
, затем программное обеспечение автоматически устанавливает классы в учебное время. Если вы задаете массив строк или массив ячеек из символьных векторов str
, затем программное обеспечение устанавливает классы выходного слоя к categorical(str,str)
. Значением по умолчанию является 'auto'
.
Типы данных: char |
categorical
| string
| cell
OutputSize
— Размер выхода'auto'
(значение по умолчанию) | положительное целое числоЭто свойство доступно только для чтения.
Размер выхода в виде положительного целого числа. Это значение является количеством меток в данных. Перед обучением выходной размер установлен в 'auto'
.
LossFunction
— Функция потерь для обучения'crossentropyex'
Это свойство доступно только для чтения.
Функция потерь для обучения в виде 'crossentropyex'
, который выдерживает за Перекрестную Энтропийную Функцию для k Взаимоисключающие Классы.
Name
— Имя слоя''
(значение по умолчанию) | вектор символов | строковый скаляр
Имя слоя в виде вектора символов или строкового скаляра. Чтобы включать слой в график слоев, необходимо задать непустое уникальное имя слоя. Если вы обучаете серийную сеть со слоем и Name
установлен в ''
, затем программное обеспечение автоматически присваивает имя к слою в учебное время.
Типы данных: char |
string
NumInputs
— Количество входных параметровКоличество входных параметров слоя. Этот слой принимает один вход только.
Типы данных: double
InputNames
— Введите имена{'in'}
(значение по умолчанию)Введите имена слоя. Этот слой принимает один вход только.
Типы данных: cell
NumOutputs
— Количество выходных параметровКоличество выходных параметров слоя. Слой не имеет никаких выходных параметров.
Типы данных: double
OutputNames
— Выведите имена{}
(значение по умолчанию)Выведите имена слоя. Слой не имеет никаких выходных параметров.
Типы данных: cell
Создайте слой классификации с именем 'output'
.
layer = classificationLayer('Name','output')
layer = ClassificationOutputLayer with properties: Name: 'output' Classes: 'auto' OutputSize: 'auto' Hyperparameters LossFunction: 'crossentropyex'
Включайте классификацию выходной слой в Layer
массив.
layers = [ ... imageInputLayer([28 28 1]) convolution2dLayer(5,20) reluLayer maxPooling2dLayer(2,'Stride',2) fullyConnectedLayer(10) softmaxLayer classificationLayer]
layers = 7x1 Layer array with layers: 1 '' Image Input 28x28x1 images with 'zerocenter' normalization 2 '' Convolution 20 5x5 convolutions with stride [1 1] and padding [0 0 0 0] 3 '' ReLU ReLU 4 '' Max Pooling 2x2 max pooling with stride [2 2] and padding [0 0 0 0] 5 '' Fully Connected 10 fully connected layer 6 '' Softmax softmax 7 '' Classification Output crossentropyex
Слой классификации вычисляет потерю перекрестной энтропии для многоклассовых задач классификации со взаимоисключающими классами.
Для типичных сетей классификации слой классификации должен следовать за softmax слоем. В слое классификации, trainNetwork
принимает значения от функции softmax и присваивает каждый вход одному из K взаимоисключающие классы с помощью перекрестной энтропийной функции в 1 из K кодирование схемы [1]:
где N является количеством выборок, K является количеством классов, индикатор, что i th выборка принадлежит j th класс, и выход для демонстрационного i для класса j, который в этом случае, значение от функции softmax. Таким образом, это - вероятность, что сеть сопоставляет i th вход с классом j.
ClassNames
свойство будет удаленоНе рекомендуемый запуск в R2018b
ClassNames
будет удален. Используйте Classes
вместо этого. Чтобы обновить ваш код, замените все экземпляры ClassNames
с Classes
. Существуют некоторые различия между свойствами, которые требуют дополнительных обновлений вашего кода.
ClassNames
свойство выходного слоя является массивом ячеек из символьных векторов. Classes
свойство является категориальным массивом. Использовать значение Classes
с функциями, которые требуют входа массива ячеек, преобразуйте классы с помощью cellstr
функция.
[1] Епископ, C. M. Распознавание образов и машинное обучение. Спрингер, Нью-Йорк, Нью-Йорк, 2006.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.