TensorFlowOnSpark apporte un apprentissage profond évolutif aux clusters Apache Hadoop et Apache Spark.
En combinant les principales fonctionnalités du framework d'apprentissage profond TensorFlow avec Apache Spark et Apache Hadoop, TensorFlowOnSpark permet un apprentissage profond distribué sur un cluster de serveurs GPU et CPU.
Il permet à la fois la formation TensorFlow distribuée et l'inférence sur les clusters Spark, dans le but de minimiser la quantité de modifications de code nécessaires pour exécuter les programmes TensorFlow existants sur une grille partagée. Son API compatible Spark permet de gérer le cluster TensorFlow avec les étapes suivantes :
TFNode.DataFeed
. Notez que nous exploitons le format d'entrée/sortie Hadoop pour accéder à TFRecords sur HDFS.TensorFlowOnSpark a été développé par Yahoo pour un apprentissage profond distribué à grande échelle sur nos clusters Hadoop dans le cloud privé de Yahoo.
TensorFlowOnSpark offre des avantages importants (voir notre blog) par rapport aux solutions alternatives de deep learning.
TensorFlowOnSpark est fourni sous forme de package pip, qui peut être installé sur des machines uniques via :
# for tensorflow>=2.0.0
pip install tensorflowonspark
# for tensorflow<2.0.0
pip install tensorflowonspark==1.4.4
Pour les clusters distribués, veuillez consulter notre site wiki pour obtenir une documentation détaillée sur des environnements spécifiques, comme nos guides de démarrage pour Spark Standalone à nœud unique, les clusters YARN et AWS EC2. Remarque : le système d'exploitation Windows n'est actuellement pas pris en charge en raison de ce problème.
Pour utiliser TensorFlowOnSpark avec une application TensorFlow existante, vous pouvez suivre notre guide de conversion pour décrire les modifications requises. De plus, notre site wiki contient des pointeurs vers certaines présentations qui donnent un aperçu de la plateforme.
Remarque : étant donné que TensorFlow 2.x rompt la compatibilité de l'API avec TensorFlow 1.x, les exemples ont été mis à jour en conséquence. Si vous utilisez TensorFlow 1.x, vous devrez extraire la balise v1.4.4
pour obtenir des exemples et des instructions compatibles.
La documentation API est automatiquement générée à partir du code.
Veuillez rejoindre le groupe d'utilisateurs TensorFlowOnSpark pour des discussions et des questions. Si vous avez une question, veuillez consulter notre FAQ avant de la publier.
Les contributions sont toujours les bienvenues. Pour plus d’informations, veuillez consulter notre guide pour vous impliquer.
Les conditions d'utilisation et de distribution de ce logiciel sont couvertes par la licence Apache 2.0. Voir le fichier LICENCE pour les termes.