Tanh (Tangente Hyperbolique)
La fonction Tanh (Tangente Hyperbolique) est une fonction d’activation utilisée dans les réseaux neuronaux, similaire à la fonction Sigmoid, mais elle est centrée autour de zéro. Elle transforme les entrées en une plage de valeurs comprises entre -1 et 1. La fonction Tanh est souvent utilisée pour les réseaux neuronaux récurrents (RNN) et autres modèles, car elle offre une meilleure performance par rapport à la Sigmoid, en particulier pour les tâches qui nécessitent des valeurs positives et négatives.
La fonction Tanh est définie par la formule suivante :
Fonctions :
-
Tanh()
La fonction tangente hyperbolique (tanh) est une fonction d’activation qui transforme une valeur réelle en une plage entre -1 et 1. Elle est centrée sur zéro, ce qui facilite l'entraînement de certains réseaux de neurones profonds.
Importation :
from tensorflow.keras.layers import Activation import tensorflow as tf
Attributs :
Paramètre Type Description Valeur par défaut La couche Tanh() ne possède pas de paramètre configurable — elle est entièrement déterministe. Exemple de code :
from tensorflow.keras.layers import Activation import tensorflow as tf # Données d'entrée inputs = tf.constant([[-3.0, 0.0, 2.0, 5.0]]) # Couche Tanh tanh = Activation('tanh') # Application outputs = tanh(inputs) print(outputs.numpy()) # [[-0.995 0. 0.964 0.9999]]
Explication du code :
Importation de la fonction
La couche `Activation('tanh')` permet d’appliquer la fonction tangente hyperbolique à chaque entrée.Transformation des données
Chaque valeur est transformée selon la formule : \[ \tanh(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}} \] Les valeurs proches de 0 restent proches de 0, les très grandes tendent vers 1, les très petites vers -1.Utilisation typique
- Dans les couches cachées des réseaux neuronaux récurrents (`SimpleRNN`, `LSTM`, `GRU`) - Quand on souhaite une activation **centrée** autour de zéro (meilleure convergence que `sigmoid` dans certains cas)