Databricks Runtime 9.0 pour ML (EoS)
Remarque
La prise en charge de cette version databricks Runtime a pris fin. Pour connaître la date de fin de support, consultez l’historique de fin de support. Pour toutes les versions prises en charge de Databricks Runtime, consultez Notes de publication sur les versions et la compatibilité de Databricks Runtime.
Databricks a publié cette version en août 2021.
Databricks Runtime 9.0 for Machine Learning fournit un environnement prêt à l’emploi pour l’apprentissage automatique et la science des données basé sur Databricks Runtime 9.0 (EoS). Databricks Runtime ML contient de nombreuses bibliothèques populaires de Machine Learning, notamment TensorFlow, PyTorch et XGBoost. Il prend également en charge la formation de Deep Learning distribué avec Horovod.
Pour plus d’informations, y compris les instructions relatives à la création d’un cluster Databricks Runtime ML, consultez IA et machine learning sur Databricks.
Correction
Une version précédente de ces notes de publication indiquait que la prise en charge du monitoring des métriques GPU des clusters avec Ganglia était désactivée dans Databricks Runtime 9.0 ML GPU. Cela était vrai pour Databricks Runtime 9.0 ML version bêta, mais le problème a été corrigé avec Databricks Runtime 9.0 ML GA. La déclaration a été supprimée.
Améliorations et nouvelles fonctionnalités
Databricks Runtime 9.0 ML s’appuie sur Databricks Runtime 9.0. Pour plus d’informations sur les nouveautés de Databricks Runtime 9.0, notamment Apache Spark MLlib et SparkR, consultez les notes de publication de Databricks Runtime 9.0 (EoS).
Databricks Autologging (Préversion publique)
Databricks Autologging est désormais disponible pour Databricks Runtime 9.0 pour le Machine Learning dans certaines régions. Databricks Autologging est une solution sans code qui assure le suivi automatique des expériences pour les sessions de formation d'apprentissage automatique sur Azure Databricks. Avec Databricks Autologging, les paramètres des modèles, les métriques, les fichiers et les informations de lignage sont automatiquement capturés lorsque vous formez des modèles à partir d'une variété de bibliothèques d'apprentissage automatique populaires. Les sessions de formation sont enregistrées en tant qu’exécutions de suivi MLflow. Les fichiers de modèle sont également suivis afin que vous puissiez facilement les enregistrer dans le registre de modèles MLflow et les déployer pour un scoring en temps réel avec MLflow Model Serving.
Pour plus d’informations sur Databricks Autologging, consultez Databricks Autologging.
Améliorations apportées au magasin de caractéristiques Databricks
Les performances lors de la création d’un jeu de formation ont été améliorées en réduisant le nombre de jointures entre les tables de fonctionnalités sources.
L’intégration de XGBoost à PySpark prend désormais en charge la formation distribuée et les clusters GPU
Pour plus d’informations, consultez Utiliser XGBoost sur Azure Databricks.
Changements importants apportés à l’environnement Python de Databricks Runtime ML
Les environnements Conda, ainsi que la commande %conda, sont supprimés. Databricks Runtime 9.0 ML est construit avec pip
et virtualenv
.
Les images personnalisées utilisant des environnements Conda avec Databricks Container Services seront toujours prises en charge, mais ne disposeront pas des capacités de la bibliothèque étendue au notebook. Databricks recommande d’utiliser des environnements basés sur virtualenv avec Databricks Container Services et %pip
pour toutes les bibliothèques étendues au notebook.
Consultez Databricks Runtime 9.0 (EoS) pour connaître les modifications majeures apportées à l’environnement Python de Databricks Runtime. Pour obtenir la liste complète des packages Python installés et leurs versions, consultez Bibliothèques Python.
Mise à niveau des packages Python
- mlflow 1.18.0 -> 1.19.0
- nltk 3.5 -> 3.6.1
Ajout de packages Python
- prophet 1.0.1
Packages Python supprimés
- MKL
- azure-core
- azure-storage-blob
- msrest
- docker
- querystring-parser
- intel-openmp
Dépréciations et fonctionnalités non prises en charge
- Dans Databricks Runtime 9.0 ML, HorovodRunner ne prend pas en charge le paramètre
np=0
, oùnp
correspond au nombre de processus parallèles à utiliser pour le travail Horovod. - Databricks Runtime 9.0 ML inclut r-base 4.1.0 avec le moteur graphique R version 14. Cela n’est pas pris en charge par la version 1.2.x de RStudio Server.
nvprof
est supprimé dans Databricks Runtime 9.0 ML GPU.
Environnement du système
L’environnement système de Databricks Runtime 9.0 ML diffère de celui de Databricks Runtime 9.0 comme suit :
- DBUtils : Databricks Runtime ML n’inclut pas L’Utilitaire de bibliothèque (dbutils.library) (hérité).
Utilisez les commandes
%pip
à la place. Consultez Bibliothèques Python délimitées à un notebook. - Pour les clusters GPU, Databricks Runtime ML inclut les bibliothèques GPU NVIDIA suivantes :
- CUDA 11.0
- cuDNN 8.1.0.77
- NCCL 2.10.3
- TensorRT 7.2.2
Bibliothèques
Les sections suivantes répertorient les bibliothèques incluses dans Databricks Runtime 9.0 ML qui diffèrent de celles incluses dans Databricks Runtime 9.0.
Dans cette section :
- Bibliothèques de niveau supérieur
- Bibliothèques Python
- Bibliothèques R
- Bibliothèques Java et Scala (cluster Scala 2.12)
Bibliothèques de niveau supérieur
Databricks Runtime 9.0 ML comprend les bibliothèques de niveau supérieur suivantes :
- GraphFrames
- Horovod et HorovodRunner
- MLflow
- PyTorch
- spark-tensorflow-connector
- TensorFlow
- TensorBoard
Bibliothèques Python
Databricks Runtime 9.0 ML utilise Virtualenv pour la gestion des packages Python et comprend de nombreux packages ML populaires.
En plus des packages spécifiés dans les sections suivantes, Databricks Runtime 9.0 ML comprend également les packages suivants :
- hyperopt 0.2.5.db2
- sparkdl 2.2.0_db1
- feature_store 0.3.3
- automl 1.1.1
Bibliothèques Python sur les clusters UC
Bibliothèque | Version | Bibliothèque | Version | Bibliothèque | Version |
---|---|---|---|---|---|
absl-py | 0.11.0 | Antergos Linux | 2015.10 (ISO-Rolling) | appdirs | 1.4.4 |
argon2-cffi | 20.1.0 | astor | 0.8.1 | astunparse | 1.6.3 |
async-generator | 1,10 | attrs | 20.3.0 | backcall | 0.2.0 |
bcrypt | 3.2.0 | bleach | 3.3.0 | boto3 | 1.16.7 |
botocore | 1.19.7 | Bottleneck | 1.3.2 | cachetools | 4.2.2 |
certifi | 2020.12.5 | cffi | 1.14.5 | chardet | 4.0.0 |
click | 7.1.2 | cloudpickle | 1.6.0 | cmdstanpy | 0.9.68 |
configparser | 5.0.1 | convertdate | 2.3.2 | chiffrement | 3.4.7 |
cycler | 0.10.0 | Cython | 0.29.23 | databricks-cli | 0.14.3 |
dbus-python | 1.2.16 | decorator | 5.0.6 | defusedxml | 0.7.1 |
dill | 0.3.2 | diskcache | 5.2.1 | distlib | 0.3.2 |
distro-info | 0.23ubuntu1 | entrypoints | 0.3 | ephem | 4.0.0.2 |
facets-overview | 1.0.0 | filelock | 3.0.12 | Flask | 1.1.2 |
flatbuffers | 1.12 | fsspec | 0.9.0 | future | 0.18.2 |
gast | 0.4.0 | gitdb | 4.0.7 | GitPython | 3.1.12 |
google-auth | 1.22.1 | google-auth-oauthlib | 0.4.2 | google-pasta | 0.2.0 |
grpcio | 1.34.1 | gunicorn | 20.0.4 | h5py | 3.1.0 |
hijri-converter | 2.1.3 | holidays | 0.10.5.2 | horovod | 0.22.1 |
htmlmin | 0.1.12 | idna | 2.10 | ImageHash | 4.2.1 |
ipykernel | 5.3.4 | ipython | 7.22.0 | ipython-genutils | 0.2.0 |
ipywidgets | 7.6.4 | isodate | 0.6.0 | itsdangerous | 1.1.0 |
jedi | 0.17.2 | Jinja2 | 2.11.3 | jmespath | 0.10.0 |
joblib | 1.0.1 | joblibspark | 0.3.0 | jsonschema | 3.2.0 |
jupyter-client | 6.1.12 | jupyter-core | 4.7.1 | jupyterlab-pygments | 0.1.2 |
jupyterlab-widgets | 1.0.1 | keras-nightly | 2.5.0.dev2021032900 | Keras-Preprocessing | 1.1.2 |
kiwisolver | 1.3.1 | koalas | 1.8.1 | korean-lunar-calendar | 0.2.1 |
lightgbm | 3.1.1 | llvmlite | 0.36.0 | LunarCalendar | 0.0.9 |
Mako | 1.1.3 | Markdown | 3.3.3 | MarkupSafe | 1.1.1 |
matplotlib | 3.4.2 | missingno | 0.5.0 | mistune | 0.8.4 |
mleap | 0.17.0 | mlflow-skinny | 1.19.0 | multimethod | 1.4 |
nbclient | 0.5.3 | nbconvert | 6.0.7 | nbformat | 5.1.3 |
nest-asyncio | 1.5.1 | networkx | 2.5 | nltk | 3.6.1 |
notebook | 6.3.0 | numba | 0.53.1 | numpy | 1.19.2 |
oauthlib | 3.1.0 | opt-einsum | 3.3.0 | empaquetage | 20.9 |
pandas | 1.2.4 | pandas-profiling | 3.0.0 | pandocfilters | 1.4.3 |
paramiko | 2.7.2 | parso | 0.7.0 | patsy | 0.5.1 |
petastorm | 0.11.1 | pexpect | 4.8.0 | phik | 0.12.0 |
pickleshare | 0.7.5 | Pillow | 8.2.0 | pip | 21.0.1 |
plotly | 4.14.3 | prometheus-client | 0.10.1 | prompt-toolkit | 3.0.17 |
prophet | 1.0.1 | protobuf | 3.17.2 | psutil | 5.8.0 |
psycopg2 | 2.8.5 | ptyprocess | 0.7.0 | pyarrow | 4.0.0 |
pyasn1 | 0.4.8 | pyasn1-modules | 0.2.8 | pycparser | 2.20 |
pydantic | 1.8.2 | Pygments | 2.8.1 | PyGObject | 3.36.0 |
PyMeeus | 0.5.11 | PyNaCl | 1.3.0 | pyodbc | 4.0.30 |
pyparsing | 2.4.7 | pyrsistent | 0.17.3 | pystan | 2.19.1.1 |
python-apt | 2.0.0+ubuntu0.20.4.6 | python-dateutil | 2.8.1 | python-editor | 1.0.4 |
pytz | 2020.5 | PyWavelets | 1.1.1 | PyYAML | 5.4.1 |
pyzmq | 20.0.0 | regex | 2021.4.4 | requêtes | 2.25.1 |
requests-oauthlib | 1.3.0 | requests-unixsocket | 0.2.0 | retrying | 1.3.3 |
rsa | 4.7.2 | s3transfer | 0.3.7 | scikit-learn | 0.24.1 |
scipy | 1.6.2 | seaborn | 0.11.1 | Send2Trash | 1.5.0 |
setuptools | 52.0.0 | setuptools-git | 1.2 | shap | 0.39.0 |
simplejson | 3.17.2 | six | 1.15.0 | segment | 0.0.7 |
smmap | 3.0.5 | spark-tensorflow-distributor | 0.1.0 | sqlparse | 0.4.1 |
ssh-import-id | 5.10 | statsmodels | 0.12.2 | tabulate | 0.8.7 |
tangled-up-in-unicode | 0.1.0 | tensorboard | 2.5.0 | tensorboard-data-server | 0.6.1 |
tensorboard-plugin-wit | 1.8.0 | tensorflow-cpu | 2.5.0 | tensorflow-estimator | 2.5.0 |
termcolor | 1.1.0 | terminado | 0.9.4 | testpath | 0.4.4 |
threadpoolctl | 2.1.0 | torch | 1.9.0+cpu | torchvision | 0.10.0+cpu |
tornado | 6.1 | tqdm | 4.59.0 | traitlets | 5.0.5 |
typing-extensions | 3.7.4.3 | ujson | 4.0.2 | unattended-upgrades | 0.1 |
urllib3 | 1.25.11 | virtualenv | 20.4.1 | visions | 0.7.1 |
wcwidth | 0.2.5 | webencodings | 0.5.1 | websocket-client | 0.57.0 |
Werkzeug | 1.0.1 | wheel | 0.36.2 | widgetsnbextension | 3.5.1 |
wrapt | 1.12.1 | xgboost | 1.4.2 |
Bibliothèques Python sur les clusters GPU
Bibliothèque | Version | Bibliothèque | Version | Bibliothèque | Version |
---|---|---|---|---|---|
absl-py | 0.11.0 | Antergos Linux | 2015.10 (ISO-Rolling) | appdirs | 1.4.4 |
argon2-cffi | 20.1.0 | astor | 0.8.1 | astunparse | 1.6.3 |
async-generator | 1,10 | attrs | 20.3.0 | backcall | 0.2.0 |
bcrypt | 3.2.0 | bleach | 3.3.0 | boto3 | 1.16.7 |
botocore | 1.19.7 | Bottleneck | 1.3.2 | cachetools | 4.2.2 |
certifi | 2020.12.5 | cffi | 1.14.5 | chardet | 4.0.0 |
click | 7.1.2 | cloudpickle | 1.6.0 | cmdstanpy | 0.9.68 |
configparser | 5.0.1 | convertdate | 2.3.2 | chiffrement | 3.4.7 |
cycler | 0.10.0 | Cython | 0.29.23 | databricks-cli | 0.14.3 |
dbus-python | 1.2.16 | decorator | 5.0.6 | defusedxml | 0.7.1 |
dill | 0.3.2 | diskcache | 5.2.1 | distlib | 0.3.2 |
distro-info | 0.23ubuntu1 | entrypoints | 0.3 | ephem | 4.0.0.2 |
facets-overview | 1.0.0 | filelock | 3.0.12 | Flask | 1.1.2 |
flatbuffers | 1.12 | fsspec | 0.9.0 | future | 0.18.2 |
gast | 0.4.0 | gitdb | 4.0.7 | GitPython | 3.1.12 |
google-auth | 1.22.1 | google-auth-oauthlib | 0.4.2 | google-pasta | 0.2.0 |
grpcio | 1.34.1 | gunicorn | 20.0.4 | h5py | 3.1.0 |
hijri-converter | 2.1.3 | holidays | 0.10.5.2 | horovod | 0.22.1 |
htmlmin | 0.1.12 | idna | 2.10 | ImageHash | 4.2.1 |
ipykernel | 5.3.4 | ipython | 7.22.0 | ipython-genutils | 0.2.0 |
ipywidgets | 7.6.4 | isodate | 0.6.0 | itsdangerous | 1.1.0 |
jedi | 0.17.2 | Jinja2 | 2.11.3 | jmespath | 0.10.0 |
joblib | 1.0.1 | joblibspark | 0.3.0 | jsonschema | 3.2.0 |
jupyter-client | 6.1.12 | jupyter-core | 4.7.1 | jupyterlab-pygments | 0.1.2 |
jupyterlab-widgets | 1.0.1 | keras-nightly | 2.5.0.dev2021032900 | Keras-Preprocessing | 1.1.2 |
kiwisolver | 1.3.1 | koalas | 1.8.1 | korean-lunar-calendar | 0.2.1 |
lightgbm | 3.1.1 | llvmlite | 0.36.0 | LunarCalendar | 0.0.9 |
Mako | 1.1.3 | Markdown | 3.3.3 | MarkupSafe | 1.1.1 |
matplotlib | 3.4.2 | missingno | 0.5.0 | mistune | 0.8.4 |
mleap | 0.17.0 | mlflow-skinny | 1.19.0 | multimethod | 1.4 |
nbclient | 0.5.3 | nbconvert | 6.0.7 | nbformat | 5.1.3 |
nest-asyncio | 1.5.1 | networkx | 2.5 | nltk | 3.6.1 |
notebook | 6.3.0 | numba | 0.53.1 | numpy | 1.19.2 |
oauthlib | 3.1.0 | opt-einsum | 3.3.0 | empaquetage | 20.9 |
pandas | 1.2.4 | pandas-profiling | 3.0.0 | pandocfilters | 1.4.3 |
paramiko | 2.7.2 | parso | 0.7.0 | patsy | 0.5.1 |
petastorm | 0.11.1 | pexpect | 4.8.0 | phik | 0.12.0 |
pickleshare | 0.7.5 | Pillow | 8.2.0 | pip | 21.0.1 |
plotly | 4.14.3 | prometheus-client | 0.11.0 | prompt-toolkit | 3.0.17 |
prophet | 1.0.1 | protobuf | 3.17.2 | psutil | 5.8.0 |
psycopg2 | 2.8.5 | ptyprocess | 0.7.0 | pyarrow | 4.0.0 |
pyasn1 | 0.4.8 | pyasn1-modules | 0.2.8 | pycparser | 2.20 |
pydantic | 1.8.2 | Pygments | 2.8.1 | PyGObject | 3.36.0 |
PyMeeus | 0.5.11 | PyNaCl | 1.3.0 | pyodbc | 4.0.30 |
pyparsing | 2.4.7 | pyrsistent | 0.17.3 | pystan | 2.19.1.1 |
python-apt | 2.0.0+ubuntu0.20.4.6 | python-dateutil | 2.8.1 | python-editor | 1.0.4 |
pytz | 2020.5 | PyWavelets | 1.1.1 | PyYAML | 5.4.1 |
pyzmq | 20.0.0 | regex | 2021.4.4 | requêtes | 2.25.1 |
requests-oauthlib | 1.3.0 | requests-unixsocket | 0.2.0 | retrying | 1.3.3 |
rsa | 4.7.2 | s3transfer | 0.3.7 | scikit-learn | 0.24.1 |
scipy | 1.6.2 | seaborn | 0.11.1 | Send2Trash | 1.5.0 |
setuptools | 52.0.0 | setuptools-git | 1.2 | shap | 0.39.0 |
simplejson | 3.17.2 | six | 1.15.0 | segment | 0.0.7 |
smmap | 3.0.5 | spark-tensorflow-distributor | 0.1.0 | sqlparse | 0.4.1 |
ssh-import-id | 5.10 | statsmodels | 0.12.2 | tabulate | 0.8.7 |
tangled-up-in-unicode | 0.1.0 | tensorboard | 2.5.0 | tensorboard-data-server | 0.6.1 |
tensorboard-plugin-wit | 1.8.0 | tensorflow | 2.5.0 | tensorflow-estimator | 2.5.0 |
termcolor | 1.1.0 | terminado | 0.9.4 | testpath | 0.4.4 |
threadpoolctl | 2.1.0 | torch | 1.9.0+cu111 | torchvision | 0.10.0+cu111 |
tornado | 6.1 | tqdm | 4.59.0 | traitlets | 5.0.5 |
typing-extensions | 3.7.4.3 | ujson | 4.0.2 | unattended-upgrades | 0.1 |
urllib3 | 1.25.11 | virtualenv | 20.4.1 | visions | 0.7.1 |
wcwidth | 0.2.5 | webencodings | 0.5.1 | websocket-client | 0.57.0 |
Werkzeug | 1.0.1 | wheel | 0.36.2 | widgetsnbextension | 3.5.1 |
wrapt | 1.12.1 | xgboost | 1.4.2 |
Packages Spark contenant des modules Python
Package Spark | Module Python | Version |
---|---|---|
graphframes | graphframes | 0.8.1-db3-spark3.1 |
Bibliothèques R
Les bibliothèques R sont identiques aux bibliothèques R de Databricks Runtime 9.0.
Bibliothèques Java et Scala (cluster Scala 2.12)
En plus des bibliothèques Java et Scala de Databricks Runtime 9.0, Databricks Runtime 9.0 ML contient les fichiers JAR suivants :
Clusters UC
ID de groupe | ID d’artefact | Version |
---|---|---|
com.typesafe.akka | akka-actor_2.12 | 2.5.23 |
ml.combust.mleap | mleap-databricks-runtime_2.12 | 0.17.0-4882dc3 |
ml.dmlc | xgboost4j-spark_2.12 | 1.4.1 |
ml.dmlc | xgboost4j_2.12 | 1.4.1 |
org.graphframes | graphframes_2.12 | 0.8.1-db2-spark3.1 |
org.mlflow | mlflow-client | 1.19.0 |
org.mlflow | mlflow-spark | 1.19.0 |
org.scala-lang.modules | scala-java8-compat_2.12 | 0.8.0 |
org.tensorflow | spark-tensorflow-connector_2.12 | 1.15.0 |
Clusters GPU
ID de groupe | ID d’artefact | Version |
---|---|---|
com.typesafe.akka | akka-actor_2.12 | 2.5.23 |
ml.combust.mleap | mleap-databricks-runtime_2.12 | 0.17.0-4882dc3 |
ml.dmlc | xgboost4j-gpu_2.12 | 1.4.1 |
ml.dmlc | xgboost4j-spark-gpu_2.12 | 1.4.1 |
org.graphframes | graphframes_2.12 | 0.8.1-db2-spark3.1 |
org.mlflow | mlflow-client | 1.19.0 |
org.mlflow | mlflow-spark | 1.19.0 |
org.scala-lang.modules | scala-java8-compat_2.12 | 0.8.0 |
org.tensorflow | spark-tensorflow-connector_2.12 | 1.15.0 |