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.