Entraîner des modèles avec l'API Estimators

Introduction à TensorFlow en Python

Isaiah Hull

Visiting Associate Professor of Finance, BI Norwegian Business School

Qu'est-ce que l'API Estimators ?

  • Sous-module de haut niveau
  • Moins flexible
  • Implique les meilleures pratiques
  • Déploiement plus rapide
  • Plusieurs modèles prêts à l'emploi

Cette image illustre le schéma de l'API Estimators et son lien avec les API de plus bas niveau.

1 Image tirée de https://www.tensorflow.org/guide/premade_estimators
Introduction à TensorFlow en Python

Spécification du modèle et entraînement

  1. Définir les colonnes de caractéristiques
  2. Charger et transformer les données
  3. Définir un estimateur
  4. Lancer l'entraînement
Introduction à TensorFlow en Python

Définir les colonnes de caractéristiques

# Import tensorflow under its standard alias
import tensorflow as tf

# Define a numeric feature column
size = tf.feature_column.numeric_column("size")
# Define a categorical feature column
rooms = tf.feature_column.categorical_column_with_vocabulary_list("rooms",\
["1", "2", "3", "4", "5"])
Introduction à TensorFlow en Python

Définir les colonnes de caractéristiques

# Create feature column list
features_list = [size, rooms]
# Define a matrix feature column
features_list = [tf.feature_column.numeric_column('image', shape=(784,))]
Introduction à TensorFlow en Python

Charger et transformer les données

# Define input data function
def input_fn():
    # Define feature dictionary
    features = {"size": [1340, 1690, 2720], "rooms": [1, 3, 4]}
    # Define labels
    labels = [221900, 538000, 180000]
    return features, labels
Introduction à TensorFlow en Python

Définir et entraîner un estimateur de régression

# Define a deep neural network regression
model0 = tf.estimator.DNNRegressor(feature_columns=feature_list,\
    hidden_units=[10, 6, 6, 3])

# Train the regression model
model0.train(input_fn, steps=20)
Introduction à TensorFlow en Python

Définir et entraîner un réseau de neurones profond

# Define a deep neural network classifier
model1 = tf.estimator.DNNClassifier(feature_columns=feature_list,\ 
   hidden_units=[32, 16, 8], n_classes=4)

# Train the classifier
model1.train(input_fn, steps=20)
Introduction à TensorFlow en Python

Passons à la pratique !

Introduction à TensorFlow en Python

Preparing Video For Download...