El módulo tensorflow.nn
brinda soporte para muchas operaciones básicas de redes neuronales.
Una de las muchas funciones de activación es la función sigmoide, que se define como ,
La función sigmoide genera un rango (0, 1), lo que la hace ideal para Tareas de clasificación binaria donde necesitamos encontrar la probabilidad de que los datos pertenezcan a una determinada clase. La función sigmoidea es diferenciable en cada punto, y su derivada resulta ser Dado que la expresión incluye una función sigmoidea, su valor se puede reutilizar para acelerar la retropropagación.
La función sigmoidea sufre el problema de los "gradientes que se desvanecen", ya que se aplana en ambos extremos, lo que resulta en cambios de peso muy pequeños cuando se propaga hacia atrás. Esto puede hacer que la red neuronal se niegue a aprender y se atasque. Por este motivo, el uso de la función sigmoidea se sustituye por otras funciones no lineales, como la unidad lineal rectificada (ReLU).
tf.nn.sigmoid()
[alias tf.sigmoid
] proporciona compatibilidad con la función sigmoide en Tensorflow.
Sintaxis : tf.nn.sigmoid (x, nombre = Ninguno ) o tf.sigmoid (x, nombre = Ninguno)
Parámetros :
x : Un tensor de cualquiera de los siguientes tipos: float16 , float32, float64, complex64 o complex128.
nombre (opcional): el nombre de la operación.Tipo de valor devuelto : un tensor con el mismo tipo que el de x.
Código # 1:
# Importar biblioteca de Tensorflow
import
tensorflow as tf
# Vector constante de tamaño 6
tf.float32 )
# Usando la función sigmoide y
# Iniciando una sesión de Tensorflow
con tf.Session() como sesión:
, b)
imprimir
Salida:
Tipo de entrada: Tensor ("Const_1: 0", forma = ( 6,), dtype = float32) Entrada: [1. -0.5 3.4000001 - 2.0999999 0. -6.5] Tipo de retorno: Tensor ("sigmoid: 0", forma = (6,), dtype = float32) Salida: [0.7310586 0.37754068 0.96770459 0.10909683 0.5 0.00150118]
Código # 2: Representación
# Importar biblioteca de Tensorflow
# Importando la biblioteca NumPy
import
numpy as np
# Importar función matplotlib.pylot
importar
matplotlib.pyplot as plt
# Vector tamaño 15 con valores ‚Äã‚Äã de -5 a 5
a
= < /código>
# Aplicando la función sigmoidea y
# guarda el resultado en & #39; segundo '
print
(
`Entrada:`
"tensorflow.nn.sigmoid"
)
plt.show()
Salida:
Entrada: Entrada: [-cinco. -4,28571429 -3,57142857 -2,85714286 -2,14285714 -1,42857143 -0,71428571 0. 0,71428571 1,42857143 2,14285714 2,85714286 3,57142857 4,28571429 5.] Salida: [0,01357692 0,02734679 0,05431327 0,00669285 0,10500059 0,19332137 0,32865255 0,67134745 0,80667863 0,89499941 0,5 0,94568673 0,97265321 0,98642308 0,99330715]
< figure class = aligncenter amp-wp-inline-e407ac51e00eb7ad9e758d070160c9d8>