trainSoftmaxLayer

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

Описание

пример

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,Value аргументы. 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