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

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

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.

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

.
Введенный в R2019b