Couches récurrentes (Bidirectional)
Fonctions :
-
Bidirectional()
La couche Bidirectional enveloppe une couche récurrente (comme LSTM, GRU ou SimpleRNN) afin d'appliquer un traitement dans les deux sens (avant et arrière) sur une séquence. Cela permet au modèle d'accéder à l'information passée et future dans la séquence, améliorant souvent la performance sur les tâches séquentielles.
Importation :
from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Bidirectional, LSTM, Dense import numpy as np
Attributs :
Paramètre Type Description Valeur par défaut layer
Layer Keras Couche récurrente à appliquer bidirectionnellement (ex: LSTM, GRU). — merge_mode
str Mode de fusion des sorties avant et arrière. Options : 'concat'
,'sum'
,'mul'
,'ave'
.'concat'
backward_layer
Layer Keras Couche utilisée pour le sens arrière. Par défaut même que layer
.None
input_shape
tuple Forme des données d'entrée (passé à la couche enveloppée). — Exemple de code :
from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Bidirectional, LSTM, Dense import numpy as np # Données simulées : 100 séquences, chaque séquence de longueur 10, avec 8 features par pas de temps X = np.random.rand(100, 10, 8) y = np.random.randint(0, 2, size=(100, 1)) # Modèle avec couche Bidirectional LSTM model = Sequential() model.add(Bidirectional(LSTM(16), input_shape=(10, 8))) model.add(Dense(1, activation='sigmoid')) model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy']) model.summary()
Explication du code :
Importation des bibliothèques
Les classes `Bidirectional`, `LSTM`, `Dense` et `Sequential` sont importées depuis Keras pour construire un modèle séquentiel.Création des données
Les données sont des séquences aléatoires : 100 exemples, chacun avec 10 pas de temps et 8 caractéristiques par pas.Définition du modèle
La couche `Bidirectional` applique un LSTM dans les deux sens (avant et arrière) sur chaque séquence. La sortie est ensuite connectée à une couche dense avec activation sigmoïde pour une classification binaire.Compilation
Le modèle est compilé avec l’optimiseur Adam et la fonction de perte binaire.