exponenta event banner

softmax

Применить активацию softmax к размеру канала

Описание

Операция активации softmax применяет функцию softmax к размерности канала входных данных.

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

Примечание

Эта функция применяет операцию softmax к dlarray данные. Если вы хотите применить softmax в layerGraph объект или Layer используйте следующий слой:

пример

dlY = softmax(dlX) вычисляет программную активацию входа dlX путем применения функции переноса softmax к размерности канала входных данных. Все значения в dlY находятся между 0 и 1, и сумма к 1. Вход dlX является отформатированным dlarray с метками размеров. Продукция dlY является отформатированным dlarray с теми же метками размеров, что и dlX.

dlY = softmax(dlX,'DataFormat',FMT) также задает формат размера FMT когда dlX не является отформатированным dlarray. Продукция dlY является неформатированным dlarray с тем же порядком размеров, что и dlX.

Примеры

свернуть все

Используйте softmax для установки всех значений во входных данных в значения между 0 и 1 эта сумма к 1 по всем каналам.

Создайте входные данные классификации как два наблюдения случайных величин. Данные могут относиться к любой из 10 категорий.

numCategories = 10;
observations = 2;

X = rand(numCategories,observations);
dlX = dlarray(X,'CB');

Вычислите softmax активация.

dlY = softmax(dlX);
totalProb = sum(dlY,1)
dlY =

  10(C) x 2(B) dlarray

    0.1151    0.0578
    0.1261    0.1303
    0.0579    0.1285
    0.1270    0.0802
    0.0959    0.1099
    0.0562    0.0569
    0.0673    0.0753
    0.0880    0.1233
    0.1328    0.1090
    0.1337    0.1288
totalProb =

  1(C) x 2(B) dlarray

    1.0000    1.0000

Все значения в dlY диапазон между 0 и 1. Значения по всем каналам суммируются с 1 для каждого наблюдения.

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

свернуть все

Входные данные, указанные как dlarray с метками размеров или без них. Когда dlX не является отформатированным dlarray, необходимо указать формат метки размера с помощью 'DataFormat',FMT.

dlX должен содержать 'C' размер канала.

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

Размерный порядок неформатированных входных данных, указанный как разделенная запятыми пара, состоящая из 'DataFormat' и символьный массив или строку FMT с меткой для каждого измерения данных. Каждый символ в FMT должен быть одним из следующих:

  • 'S' - Пространственный

  • 'C' - Канал

  • 'B' - Партия (например, пробы и наблюдения)

  • 'T' - Время (например, последовательности)

  • 'U' - Не указано

Можно указать несколько размеров с метками 'S' или 'U'. Можно использовать метки 'C', 'B', и 'T' максимум один раз.

Необходимо указать 'DataFormat',FMT когда входные данные dlX не является отформатированным dlarray.

Пример: 'DataFormat','SSCB'

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

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

свернуть все

Активации Softmax, возвращенные как dlarray. Все значения в dlY находятся между 0 и 1. Продукция dlY имеет тот же базовый тип данных, что и входной dlX.

Если входные данные dlX является отформатированным dlarray, dlY имеет те же метки размеров, что и dlX. Если входные данные не являются форматированными dlarray, dlY является неформатированным dlarray с тем же порядком размеров, что и входные данные.

Подробнее

свернуть все

Активация Softmax

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

Расширенные возможности

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.

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

.
Представлен в R2019b