Databricks Runtime for Machine Learning
Cette page décrit le Databricks Runtime for Machine Learning et fournit des conseils sur la manière de créer une ressource compute classique qui l'utilise.
Quelle est la Databricks Runtime for Machine Learning ?
Databricks Runtime for Machine Learning (Databricks Runtime ML) automatise la création d'une ressource de compute avec une infrastructure de machine learning et de deep learning pré-construite, incluant les bibliothèques ML et DL les plus courantes.
Bibliothèques incluses dans Databricks Runtime ML
Databricks Runtime ML inclut une variété de bibliothèques de ML populaires. Les bibliothèques sont mises à jour à chaque version afin d'inclure de nouvelles fonctionnalités et corrections.
Databricks a désigné un sous-ensemble des bibliothèques prises en charge comme bibliothèques de premier niveau. Pour ces bibliothèques, Databricks offre une cadence de mise à jour plus rapide, en mettant à jour les dernières versions des packages à chaque nouvelle version du runtime (sauf en cas de conflits de dépendances). Databricks offre également un support avancé, des tests et des optimisations intégrées pour les bibliothèques de premier plan. Les bibliothèques de premier niveau ne sont ajoutées ou supprimées qu'avec les versions majeures.
- Pour une liste complète des bibliothèques de premier ordre et autres bibliothèques fournies, veuillez consulter les notes de version de Databricks Runtime ML.
- Pour plus d'informations sur la fréquence de mise à jour des bibliothèques et leur obsolescence, voir politique de maintenance de Databricks Runtime ML.
Vous pouvez installer des bibliothèques supplémentaires pour créer un environnement personnalisé pour votre Notebook ou ressource de compute.
- Pour rendre une bibliothèque disponible pour tous les notebooks exécutés sur une ressource de compute, créez une bibliothèque à l'échelle du compute. Vous pouvez également utiliser un script d'initialisation pour installer des bibliothèques lors de la création du compute.
- Pour installer une bibliothèque qui n'est disponible que pour une session de Notebook spécifique, utilisez les bibliothèques Python à étendue Notebook.
Créez une ressource de compute avec Databricks Runtime for ML
Pour créer une ressource de compute qui utilise Databricks Runtime pour le ML, sélectionnez la case à cocher Machine Learning dans l'interface utilisateur de création de compute. Cela définit automatiquement le mode d'accès sur Dédié avec votre compte comme utilisateur dédié. Vous pouvez affecter manuellement la ressource de compute à un utilisateur ou un groupe différent dans la section Avancé de l'interface utilisateur de création de compute.
Pour le compute basé sur GPU, sélectionnez un type d'instance compatible GPU dans le menu déroulant **Type de Worker**. Pour la liste complète des types de GPU pris en charge, voir Types d'instances pris en charge.
Photon et Databricks Runtime ML
Lorsque vous créez une ressource compute qui exécute Databricks Runtime 15,2 ML ou supérieur, vous pouvez choisir d’activer Photon. Photon améliore les performances des applications utilisant Spark SQL, Spark DataFrames, l'ingénierie des fonctionnalités, GraphFrames et xgboost4j. Il n'est pas censé améliorer les performances sur les applications utilisant les RDD Spark, les UDF Pandas et les langages non-JVM tels que Python. Ainsi, les packages Python tels que XGBoost, PyTorch et TensorFlow ne verront aucune amélioration avec Photon.
Les API Spark RDD et Spark MLlib ont une compatibilité limitée avec Photon. Lorsque vous traitez de grands dataset à l’aide de Spark RDD ou de Spark MLlib, vous pouvez rencontrer des problèmes de mémoire Spark. Voir les problèmes de mémoire Spark.
Databricks Runtime ML sur des instances AWS Graviton
Databricks Runtime 15.4 LTS ML et versions ultérieures prennent en charge les types d'instance Graviton. L'utilisation de types d'instance Graviton peut améliorer les performances pour Spark, Photon, l'ingénierie des fonctionnalités, les bibliothèques de machine learning telles que XGBoost et LightGBM, et les algorithmes Spark MLlib pour le gradient boosting. Les instances Graviton peuvent également offrir un meilleur rapport performance-prix que les autres types d'instance AWS EC2.
Mode d'accès au compute pour Databricks Runtime ML
Pour accéder aux données dans Unity Catalog sur une ressource de compute exécutant Databricks Runtime ML, vous devez définir le mode d’accès sur Dédié. Le mode d’accès est défini automatiquement dans l’interface utilisateur de création de compute lorsque vous sélectionnez la case à cocher Machine Learning .
Lorsqu'une ressource de compute a le mode d'accès Dédié , la ressource peut être attribuée à un seul utilisateur ou à un groupe. Lorsqu'il est attribué à un groupe, les autorisations de l'utilisateur sont automatiquement réduites aux autorisations du groupe, ce qui permet à l'utilisateur de partager en toute sécurité la ressource avec les autres membres du groupe.
Lorsque vous utilisez le mode d'accès dédié, les fonctionnalités suivantes ne sont disponibles que sur Databricks Runtime 15.4 LTS ML et versions ultérieures :
- Contrôle d'accès précis.
- Interroger les tables créées à l'aide de Lakeflow Pipelines, y compris les tables en streaming et les vues matérialisées.
Entraîner des modèles
Les ressources suivantes vous montrent comment entraîner des modèles de machine learning et d’IA.
Databricks Model Training simplifie et unifie le processus de formation et de déploiement de modèles ML traditionnels par le biais de charges de travail AutoML et d'affinement de modèles de fondation.
AutoML
AutoML simplifie le processus d'application du machine learning à vos datasets en trouvant automatiquement le meilleur algorithme et la meilleure configuration d'hyperparamètres. AutoML offre une interface utilisateur sans code ainsi qu'une API Python.
Affinement du modèle de fondation
Affinement de modèles de fondation (désormais intégré à la formation de modèles Databricks) sur Databricks vous permet de personnaliser les grands modèles de langage (LLM) à l'aide de vos propres données. Ce processus implique l'affinement de l'entraînement d'un modèle de fondation préexistant, ce qui réduit considérablement les données, le temps et les ressources de compute nécessaires par rapport à l'entraînement d'un modèle à partir de zéro. Les principales fonctionnalités sont les suivantes :
- Affinement des instructions : adaptez votre modèle à de nouvelles tâches en l’entraînant sur des données de prompt-réponse structurées.
- Pré-entraînement continu : améliorez votre modèle avec des données textuelles supplémentaires pour ajouter de nouvelles connaissances ou vous concentrer sur un domaine spécifique.
- Achèvement de chat : Entraînez votre modèle sur les Logs pour améliorer ses capacités conversationnelles.
Exemples de bibliothèques open source
Consultez des exemples d'entraînement de machine learning à partir d'une grande variété de bibliothèques de machine learning open source, y compris des exemples d'ajustement des hyperparamètres utilisant Optuna et Hyperopt.
Deep learning
Consultez des exemples et des bonnes pratiques pour l'entraînement distribué de deep learning afin de développer et d'affiner des modèles de deep learning sur Databricks.
Recommandations
Découvrez comment entraîner des modèles de recommandation basés sur le Deep Learning sur Databricks. Comparés aux modèles de recommandation traditionnels, les modèles de deep learning peuvent obtenir des résultats de meilleure qualité et monter en charge pour gérer de plus grandes quantités de données.