Couches de régularisation (Dropout)
Fonctions :
-
Dropout()
La couche Dropout est une technique de régularisation utilisée dans les réseaux de neurones pour réduire le surapprentissage (overfitting). Pendant l'entraînement, elle "éteint" aléatoirement un pourcentage de neurones, ce qui force le réseau à ne pas dépendre trop fortement de certains neurones.
Importation :
from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, DropoutAttributs :
Paramètre Type Description Valeur par défaut ratefloat Fraction des neurones à désactiver (entre 0 et 1). Obligatoire noise_shapetuple ou None Forme du masque de dropout à appliquer. Permet de désactiver des neurones suivant une forme spécifique. Noneseedint ou None Graine pour la génération aléatoire du dropout (pour reproductibilité). NoneExemple de code :
from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, Dropout model = Sequential() model.add(Dense(64, activation='relu', input_shape=(20,))) model.add(Dropout(rate=0.3)) # Désactive 30% des neurones pendant l'entraînement model.add(Dense(10, activation='softmax')) model.summary()
Explication du code :
importe les modules nécessaires de Keras pour construire un modèle et ajouter des couches Dense et Dropout.
Création du modèle
`model = Sequential()` initialise un modèle séquentiel.Ajout d'une couche Dense
`model.add(Dense(64, activation='relu', input_shape=(20,)))` ajoute une couche entièrement connectée avec 64 neurones et fonction d'activation ReLU.Ajout d'une couche Dropout
`model.add(Dropout(rate=0.3))` ajoute une couche Dropout qui désactive aléatoirement 30 % des neurones de la couche précédente pendant l'entraînement, ce qui aide à prévenir le surapprentissage.Ajout de la couche de sortie
`model.add(Dense(10, activation='softmax'))` ajoute une couche de sortie pour classification avec 10 classes.Résumé
`model.summary()` affiche la structure du réseau et le nombre de paramètres.