tf.keras.activations.softmax
| Просмотреть исходный код на GitHub |
Softmax преобразует вектор значений в распределение вероятностей.
tf.keras.activations.softmax(
x, axis=-1
)
Элементы выходного вектора находятся в диапазоне (0, 1) и суммируются до 1.
Каждый вектор обрабатывается независимо. Аргумент axis задаёт ось входных данных, по которой применяется функция.
Softmax часто используется в качестве активации для последнего слоя классификационной сети, так как результат можно интерпретировать как распределение вероятностей.
Softmax каждого вектора x вычисляется как exp(x) / tf.reduce_sum(exp(x)).
Входные значения являются логарифмическими вероятностями получаемых вероятностей.
| Аргументы | |
|---|---|
x | Входной тензор. |
axis | Целое число, ось, по которой применяется нормализация softmax. |
| Возвращаемые значения | |
|---|---|
| Тензор, результат преобразования softmax (все значения неотрицательны и суммируются до 1). |
Примеры:
Пример 1: самостоятельное использование
inputs = tf.random.normal(shape=(32, 10)) outputs = tf.keras.activations.softmax(inputs) tf.reduce_sum(outputs[0, :]) # Each sample in the batch now sums to 1 <tf.Tensor: shape=(), dtype=float32, numpy=1.0000001>
Пример 2: использование в слое Dense
layer = tf.keras.layers.Dense(32, activation=tf.keras.activations.softmax)
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/keras/activations/softmax