Функция activations.sigmoid
Функция activations.sigmoid применяет сигмоидальную функцию активации к переданному тензору.
Первым параметром функция принимает входной тензор.
Сигмоида вычисляется по формуле 1 / (1 + exp(-x)) и возвращает значения в диапазоне от 0 до 1.
Чаще всего используется в задачах бинарной классификации и в выходных слоях нейронных сетей.
Синтаксис
tf.keras.activations.sigmoid(x)
Пример
Давайте применим сигмоиду к тензору из списка чисел:
import tensorflow as tf
t = tf.constant([1, 2, 3, 4, 5], dtype=tf.float32)
res = tf.keras.activations.sigmoid(t)
print(res)
Результат выполнения кода:
tf.Tensor([0.7310586 0.8807971 0.95257413 0.98201376 0.9933072 ], shape=(5,), dtype=float32)
Пример
Давайте применим сигмоиду к отрицательным числам и нулю:
import tensorflow as tf
t = tf.constant([-3, -1, 0, 1, 3], dtype=tf.float32)
res = tf.keras.activations.sigmoid(t)
print(res)
Результат выполнения кода:
tf.Tensor([0.04742587 0.26894143 0.5 0.7310586 0.95257413], shape=(5,), dtype=float32)
Пример
Давайте применим сигмоиду к двумерному тензору:
import tensorflow as tf
t = tf.constant([[1, 2, 3], [4, 5, 6]], dtype=tf.float32)
res = tf.keras.activations.sigmoid(t)
print(res)
Результат выполнения кода:
tf.Tensor(
[[0.7310586 0.8807971 0.95257413]
[0.98201376 0.9933072 0.99752736]], shape=(2, 3), dtype=float32)
Пример
Давайте используем сигмоиду в качестве функции активации слоя:
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(3, activation=tf.keras.activations.sigmoid)
])
t = tf.constant([[1, 2, 3]], dtype=tf.float32)
res = model(t)
print(res)
Результат выполнения кода:
tf.Tensor([[0.42315763 0.6700733 0.5362547 ]], shape=(1, 3), dtype=float32)
Смотрите также
-
функцию
relu,
которая применяет активацию ReLU -
функцию
softmax,
которая применяет активацию softmax -
функцию
tanh,
которая применяет гиперболический тангенс -
функцию
BinaryCrossentropy,
которая вычисляет бинарную кросс-энтропию