Couches de convolution (Conv3D)
Fonctions :
-
Conv3D()
Conv3D est une couche de convolution pour les entrées en trois dimensions, typiquement utilisée pour des données volumétriques ou des séquences d'images (comme des vidéos). Elle applique des filtres convolutifs en 3D pour extraire des caractéristiques spatiales et/ou temporelles.
Importation :
from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Conv3D, Flatten, Dense import numpy as npAttributs :
Paramètre Type Description Valeur par défaut filtersint Nombre de filtres de convolution (profondeur de sortie). Obligatoire kernel_sizeint ou tuple Taille du noyau (profondeur, hauteur, largeur). Obligatoire stridesint ou tuple Pas de déplacement du noyau sur chaque axe. (1, 1, 1)paddingstr 'valid'(pas de remplissage) ou'same'(remplissage automatique).'valid'activationstr ou fonction Fonction d’activation non-linéaire. Noneinput_shapetuple Forme de l’entrée (profondeur, hauteur, largeur, canaux). Doit être précisé dans la première couche Exemple de code :
from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Conv3D, Flatten, Dense import numpy as np # Données simulées : 10 volumes 3D de 10x28x28 pixels avec 1 canal X = np.random.rand(10, 10, 28, 28, 1) # (samples, depth, height, width, channels) y = np.random.randint(0, 2, size=(10,)) # Création du modèle model = Sequential() model.add(Conv3D(filters=8, kernel_size=(3, 3, 3), activation='relu', input_shape=(10, 28, 28, 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 utilise Keras (TensorFlow) pour créer un modèle avec une couche de convolution en 3D. NumPy génère des données d'entrée artificielles.Création des données
Les données d'entrée représentent 10 volumes (ou vidéos) de taille 10×28×28 pixels avec un seul canal. Les étiquettes sont binaires pour une tâche de classification.Définition du modèle
La couche `Conv3D` applique 8 filtres 3×3×3 sur les volumes d'entrée. La sortie est aplatie puis transmise à une couche `Dense` avec activation `sigmoid`.Compilation
Le modèle est compilé avec l’optimiseur Adam et une fonction de perte adaptée à la classification binaire.