Premiers pas avec TensorFlow : kit

La figure ci-dessous représente la hiérarchie actuelle des kits de TensorFlow :

Hiérarchie des kits de TensorFlow. L'API Estimators est au sommet.

Figure 1 : Hiérarchie des kits de TensorFlow

L'objectif des différentes couches est décrit dans le tableau ci-dessous :

Kit(s) Description
Estimator (tf.estimator) API orientée objet de haut niveau.
tf.layers/tf.losses/tf.metrics Bibliothèques pour les composants de modèle communs.
TensorFlow API de niveau inférieur.

Le kit de TensorFlow se compose des deux composants suivants :

Ces deux composants sont analogues au compilateur Java et à la machine virtuelle Java (JVM). À l'instar de la JVM, le kit de TensorFlow est mis en œuvre sur plusieurs plates-formes matérielles : processeurs et GPU.

Quelle(s) API utiliser ? Vous devez utiliser le plus haut niveau d'abstraction qui résout le problème. Si les niveaux d'abstraction plus élevés sont plus faciles à utiliser, ils sont également les moins flexibles (par conception). Il est conseillé de commencer par l'API de niveau supérieur et de vous assurer que tout fonctionne correctement. Si vous souhaitez bénéficier d'une plus grande souplesse pour satisfaire des besoins spécifiques en matière de modélisation, optez pour un niveau inférieur. Notez que chaque niveau est construit en utilisant les API de niveaux inférieurs. Ce type de progression vers le bas devrait donc s'avérer relativement aisé.

API tf.estimator

L'API tf.estimator sera utilisée pour la majorité des exercices du cours d'initiation au Machine Learning. Toutes les tâches effectuées dans le cadre des exercices peuvent être réalisées dans une couche TensorFlow (brute) de niveau inférieur, mais l'utilisation de tf.estimator réduit sensiblement le nombre de lignes de code.

L'API tf.estimator est compatible avec l'API scikit-learn, une bibliothèque de ML Open Source très utilisée dans Python, qui compte plus de 100 000 utilisateurs, dont de nombreux Googleurs.

De manière très générale, voici le format d'un programme de régression linéaire mis en œuvre dans tf.estimator :

import tensorflow as tf

# Set up a linear classifier.
classifier = tf.estimator.LinearClassifier()

# Train the model on some example data.
classifier.train(input_fn=train_input_fn, steps=2000)

# Use it to predict.
predictions = classifier.predict(input_fn=predict_input_fn)

Envoyer des commentaires concernant…

Cours d'initiation au machine learning