Что делает tensorflow.nn.softmax?Python

Программы на Python
Anonymous
Что делает tensorflow.nn.softmax?

Сообщение Anonymous »


Я прохожу курс тензорного потока Coursera и не могу понять приведенный ниже код. Можете ли вы объяснить его на простом английском языке?

вот код

model = tf.keras.models.Sequential([tf.keras.layers.Flatten(), tf.keras.layers.Dense(128, активация=tf.nn.relu), tf.keras.layers.Dense(10, активация=tf.nn.softmax)]) Я хочу знать, что имеет tf.nn.softmax в описании курса ниже описания, но мне это не ясно.

Последовательный: определяет ПОСЛЕДОВАТЕЛЬНОСТЬ слоев в нейронной сети.

Сведение: помните, где наши изображения были квадратными, когда вы их распечатывали? Flatten просто берет этот квадрат и превращает его в одномерный набор.

Плотный: добавляет слой нейронов

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

Relu фактически означает «Если X>0 вернуть X, иначе вернуть 0» – поэтому он передает только значения 0 или больше на следующий уровень в сети.
>
Softmax принимает набор значений и фактически выбирает самое большое из них, например, если выходные данные последнего слоя выглядят как [0,1, 0,1, 0,05, 0,1, 9,5, 0,1, 0,05, 0,05 , 0.05], он избавляет вас от необходимости искать наибольшее значение и превращает его в [0,0,0,0,1,0,0,0,0] -- Цель состоит в том, чтобы сэкономить много кода!

Вернуться в «Python»