Couches de pooling (AveragePooling3D)
Fonctions :
-
AveragePooling3D()
AveragePooling3D est une couche de pooling qui applique un pooling moyen sur une fenêtre glissante 3D. Elle est utilisée pour réduire la dimension spatiale (profondeur, hauteur, largeur) de données volumétriques ou séquences spatiales en calculant la moyenne dans chaque fenêtre, ce qui permet de réduire la taille des représentations tout en conservant l’information moyenne locale.
Importation :
from tensorflow.keras.models import Sequential from tensorflow.keras.layers import AveragePooling3D, Flatten, Dense import numpy as np
Attributs :
Paramètre Type Description Valeur par défaut pool_size
int ou tuple de 3 entiers Taille de la fenêtre de pooling (profondeur, hauteur, largeur). (2, 2, 2)
strides
int ou tuple de 3 entiers Pas de déplacement de la fenêtre de pooling. None
(équivalent àpool_size
)padding
str 'valid'
(sans remplissage) ou'same'
(conserve la taille).'valid'
data_format
str 'channels_last'
(profondeur, hauteur, largeur, canaux) ou'channels_first'
(canaux, profondeur, hauteur, largeur).'channels_last'
Exemple de code :
from tensorflow.keras.models import Sequential from tensorflow.keras.layers import AveragePooling3D, Flatten, Dense import numpy as np # Données simulées : 10 volumes 8x8x8 avec 1 canal X = np.random.rand(10, 8, 8, 8, 1) y = np.random.randint(0, 2, size=(10,)) # Modèle simple avec AveragePooling3D model = Sequential() model.add(AveragePooling3D(pool_size=(2, 2, 2), input_shape=(8, 8, 8, 1))) model.add(Flatten()) model.add(Dense(1, activation='sigmoid')) model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy']) model.summary()
Explication du code :
Importation des bibliothèques
On importe les couches nécessaires de TensorFlow Keras : `AveragePooling3D`, `Flatten` et `Dense`.Création des données
Les données simulées représentent 10 volumes 3D de taille 8×8×8 avec un canal unique (ex. images médicales, volumes). Les labels sont binaires.Définition du modèle
La couche `AveragePooling3D` réduit la dimension spatiale en calculant la moyenne dans des fenêtres 3D de taille 2×2×2 glissantes. `Flatten` transforme ensuite la sortie en vecteur pour la couche dense finale.Compilation
Le modèle est compilé pour un problème de classification binaire avec l’optimiseur Adam.