Modèle personnalisé en utilisant une classe Python
Étape 1 : Importer les bibliothèques nécessaires
Tout d’abord, assurez-vous d’importer les bibliothèques nécessaires.
import tensorflow as tffrom tensorflow.keras import layers
Étape 2 : Définir la classe du modèle
Ensuite, vous devez définir une classe qui hérite de tf.keras.Model
. Cette classe doit inclure une méthode __init__
pour initialiser les couches du modèle et une méthode call
pour définir le flux de données à travers le modèle.
class MyModel(tf.keras.Model): def __init__(self): super(MyModel, self).__init__() self.dense1 = layers.Dense(64, activation='relu') self.dense2 = layers.Dense(64, activation='relu') self.dense3 = layers.Dense(10)
def call(self, inputs): x = self.dense1(inputs) x = self.dense2(x) return self.dense3(x)
Étape 3 : Instancier et compiler le modèle
Ensuite, vous pouvez instancier votre modèle et le compiler avec une fonction de perte et un optimiseur.
model = MyModel()
model.compile(optimizer='adam', loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True), metrics=['accuracy'])
Étape 4 : Préparer les données
Préparez vos données d’entraînement et de test. Par exemple, vous pouvez utiliser le jeu de données MNIST.
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()x_train, x_test = x_train / 255.0, x_test / 255.0
Étape 5 : Entraîner le modèle
Entraînez votre modèle avec les données préparées.
model.fit(x_train, y_train, epochs=5)
Étape 6 : Évaluer le modèle
Évaluez votre modèle sur les données de test.
model.evaluate(x_test, y_test)
Code complet
Voici le code complet pour définir, compiler, entraîner et évaluer un modèle personnalisé en utilisant une classe Python qui hérite de tf.keras.Model
.
import tensorflow as tffrom tensorflow.keras import layers
class MyModel(tf.keras.Model): def __init__(self): super(MyModel, self).__init__() self.dense1 = layers.Dense(64, activation='relu') self.dense2 = layers.Dense(64, activation='relu') self.dense3 = layers.Dense(10)
def call(self, inputs): x = self.dense1(inputs) x = self.dense2(x) return self.dense3(x)
# Instancier le modèlemodel = MyModel()
# Compiler le modèlemodel.compile(optimizer='adam', loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True), metrics=['accuracy'])
# Préparer les données(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()x_train, x_test = x_train / 255.0, x_test / 255.0
# Entraîner le modèlemodel.fit(x_train, y_train, epochs=5)
# Évaluer le modèlemodel.evaluate(x_test, y_test)
Ce tutoriel vous montre comment définir un modèle personnalisé en utilisant une classe Python qui hérite de tf.keras.Model
, comment compiler, entraîner et évaluer ce modèle. Vous pouvez adapter ce code pour d’autres types de modèles et de jeux de données selon vos besoins.