trainSoftmaxLayer

Обучите softmax слой классификации

Синтаксис

net = trainSoftmaxLayer(X,T)
net = trainSoftmaxLayer(X,T,Name,Value)

Описание

пример

net = trainSoftmaxLayer(X,T) обучает softmax слой, net, на входных данных X и цели T.

net = trainSoftmaxLayer(X,T,Name,Value) обучает softmax слой, net, с дополнительными опциями, заданными одним или несколькими аргументов пары Name,Value.

Например, можно задать функцию потерь.

Примеры

свернуть все

Загрузите выборочные данные.

[X,T] = iris_dataset;

X 4x150 матрица четырех атрибутов ирисовых цветов: длина Чашелистика, ширина чашелистика, лепестковая длина, лепестковая ширина.

T 3x150 матрица связанного определения векторов класса, которому из этих трех классов присвоен каждый вход. Каждая строка соответствует фиктивной переменной, представляющей одну из ирисовых разновидностей (классы). В каждом столбце 1 в одной из этих трех строк представляет класс, которому принадлежит конкретная выборка (наблюдение или пример). Существует нуль в строках для других классов, которым не принадлежит наблюдение.

Обучите softmax слой с помощью выборочных данных.

net = trainSoftmaxLayer(X,T);

Классифицируйте наблюдения в один из этих трех классов с помощью обученного softmax слоя.

Y = net(X);

Постройте матрицу беспорядка использование целей и классификаций, полученных из softmax слоя.

plotconfusion(T,Y);

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

свернуть все

Данные тренировки, заданные как m-by-n матрица, где m является количеством переменных в данных тренировки и n, являются количеством наблюдений (примеры). Следовательно, каждый столбец X представляет выборку.

Типы данных: single | double

Целевые данные, заданные как k-by-n матрица, где k является количеством классов и n, являются количеством наблюдений. Каждая строка является фиктивной переменной, представляющей конкретный класс. Другими словами, каждый столбец представляет выборку, и все записи столбца являются нулем за исключением одного подряд. Этот однократный въезд указывает на класс для той выборки.

Типы данных: single | double

Аргументы в виде пар имя-значение

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

Пример: 'MaxEpochs',400,'ShowProgressWindow',false задает максимальное количество итераций как 400 и скрывает учебное окно.

Максимальное количество учебных итераций, заданных как пара, разделенная запятой, состоящая из 'MaxEpochs' и положительного целочисленного значения.

Пример: 'MaxEpochs',500

Типы данных: single | double

Функция потерь для softmax слоя, заданного как пара, разделенная запятой, состоящая из 'LossFunction' и или 'crossentropy' или 'mse'.

mse обозначает функцию среднеквадратической ошибки, которой дают:

E=1nj=1ni=1k(tijyij)2,

где n является количеством учебных примеров, и k является количеством классов. tij ij th запись целевой матрицы, T, и yij i th вывод от автоэнкодера, когда входным вектором является x j.

Перекрестной энтропийной функцией дают:

E=1nj=1ni=1ktijlnyij+(1tij)ln(1yij).

Пример: 'LossFunction','mse'

Индикатор, чтобы отобразить учебное окно во время обучения, заданного как пара, разделенная запятой, состоящая из 'ShowProgressWindow' и или true или false.

Пример: 'ShowProgressWindow',false

Типы данных: логический

Учебный алгоритм раньше обучал softmax слой, заданный как пара, разделенная запятой, состоящая из 'TrainingAlgorithm' и 'trainscg', который обозначает масштабированный метод сопряженных градиентов.

Пример: 'TrainingAlgorithm','trainscg'

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

свернуть все

Слой Softmax для классификации, возвращенной как объект network. softmax слой, net, одного размера как целевой T.

Смотрите также

|

Введенный в R2015b