Databricks Runtime 9.0 para ML (EoS)
Nota:
El soporte técnico con esta versión de Databricks Runtime ha finalizado. Para obtener la fecha de finalización del soporte técnico, consulte Historial de finalización del soporte técnico. Para ver todas las versiones de Databricks Runtime con soporte técnico, consulte las notas de la versión de Databricks Runtime versiones y compatibilidad.
Databricks publicó esta versión en agosto de 2021.
Databricks Runtime 9.0 para Machine Learning proporciona un entorno listo para usar de aprendizaje automático y ciencia de datos basado en Databricks Runtime 9.0 (EoS). Databricks Runtime ML contiene muchas bibliotecas populares de aprendizaje automático, incluidas TensorFlow, PyTorch y XGBoost. También admite entrenamiento de aprendizaje profundo distribuido mediante Horovod.
Para más información, incluidas las instrucciones para crear un clúster de Databricks Runtime ML, consulte IA y aprendizaje automático en Databricks.
Corrección
En una versión anterior de estas notas de la versión se indicaba que la compatibilidad con la supervisión de métricas de GPU del clúster con Ganglia estaba deshabilitada en Databricks Runtime 9.0 ML GPU. Esto era así en Databricks Runtime 9.0 ML Beta, pero el problema se corrigió en Databricks Runtime 9.0 ML GA. La afirmación se ha quitado.
Nuevas características y mejoras
Databricks Runtime 9.0 ML se basa en Databricks Runtime 9.0. Para obtener información sobre las novedades de Databricks Runtime 9.0, incluidas las notas de la versión de Apache Spark MLlib y SparkR, consulte las notas de la versión de Databricks Runtime 9.0 (EoS).
Registro automático de Databricks (versión preliminar pública)
El registro automático de Databricks ya está disponible en Databricks Runtime 9.0 for Machine Learning en regiones seleccionadas. El registro automático de Databricks es una solución sin código que proporciona seguimiento automático de experimentos para sesiones de entrenamiento de aprendizaje automático en Azure Databricks. Con el Registro automático de Databricks, los parámetros del modelo, las métricas, los archivos y la información del linaje se capturan automáticamente, al entrenar modelos a partir de una serie de bibliotecas populares de aprendizaje automático. Las sesiones de entrenamiento se registran como ejecuciones de seguimiento de MLflow. También se realiza un seguimiento de los archivos del modelo, para poder registrarlos fácilmente en el registro de modelos de MLflow e implementarlos para realizar una puntuación en tiempo real, con el Servicio de modelo de MLflow.
Para más información sobre el registro automático de Databricks, vea Registro automático de Databricks.
Mejoras en el Almacén de características de Databricks
Se ha mejorado el rendimiento al crear un conjunto de entrenamiento gracias a la minimización del número de combinaciones entre tablas de características de origen.
La integración de XGBoost con PySpark ahora admite el entrenamiento distribuido y los clústeres de GPU.
Para más información, consulte Uso de XGBoost en Azure Databricks.
Cambios importantes en el entorno de Python de Databricks Runtime ML
Se han quitado los entornos de Conda, además del comando %conda. Databricks Runtime 9.0 ML está integrado en pip
y virtualenv
.
Las imágenes personalizadas que usan entornos basados en Conda con servicios de contenedor de Databricks siguen siendo compatibles, pero no tienen capacidades de biblioteca con ámbito de cuaderno. Databricks recomienda usar entornos basados en virtualenv con servicios de contenedor de Databricks y %pip
, y para todas las bibliotecas con ámbito de cuaderno.
Consulte Databricks Runtime 9.0 (EoS) para conocer los cambios importantes en el entorno de Python de Databricks Runtime. Para obtener una lista completa de los paquetes de Python instalados y sus versiones, consulte Bibliotecas de Python.
Paquetes de Python actualizados
- mlflow 1.18.0 -> 1.19.0
- nltk 3.5 -> 3.6.1
Paquetes de Python agregados
- prophet 1.0.1
Paquetes de Python quitados
- MKL
- azure-core
- azure-storage-blob
- msrest
- docker
- querystring-parser
- intel-openmp
Desusos y características no admitidas
- En Databricks Runtime 9.0 ML, HorovodRunner no admite el valor
np=0
, dondenp
es el número de procesos paralelos que se van a usar en el trabajo de Horovod. - Databricks Runtime 9.0 ML incluye r-base 4.1.0 con el motor de gráficos de R versión 14. Este no es compatible con RStudio Server versión 1.2.x.
nvprof
se ha quitado en Databricks Runtime 9.0 ML GPU.
Entorno del sistema
El entorno del sistema de Databricks Runtime 9.0 ML se diferencia del de Databricks Runtime 9.0 en lo siguiente:
- DBUtils: Databricks Runtime ML no incluye la utilidad de biblioteca de (dbutils.library) (heredada).
Use comandos
%pip
en su lugar. Consulte Bibliotecas de Python cuyo ámbito es Notebook. - En los clústeres de GPU, Databricks Runtime ML incluye las siguientes bibliotecas de GPU de NVIDIA:
- CUDA 11.0
- cuDNN 8.1.0.77
- NCCL 2.10.3
- TensorRT 7.2.2
Bibliotecas
En las secciones siguientes se indican las bibliotecas incluidas en Databricks Runtime 9.0 ML que difieren de las incluidas en Databricks Runtime 9.0.
En esta sección:
- Bibliotecas de nivel superior
- Bibliotecas de Python
- Bibliotecas de R
- Bibliotecas de Java y Scala (clúster de Scala 2.12)
Bibliotecas de nivel superior
Databricks Runtime 9.0 ML incluye las siguientes bibliotecas de nivel superior:
- GraphFrames
- Horovod y HorovodRunner
- MLflow
- PyTorch
- spark-tensorflow-connector
- TensorFlow
- TensorBoard
Bibliotecas de Python
Databricks Runtime 9.0 ML usa Virtualenv para la administración de paquetes de Python e incluye muchos paquetes de ML populares.
Además de los paquetes especificados en las secciones siguientes, Databricks Runtime 9.0 ML también incluye los paquetes siguientes:
- hyperopt 0.2.5.db2
- sparkdl 2.2.0_db1
- feature_store 0.3.3
- automl 1.1.1
Bibliotecas de Python en clústeres de CPU
Biblioteca | Versión | Biblioteca | Versión | Biblioteca | Versión |
---|---|---|---|---|---|
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 | criptografía | 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 | vacaciones | 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 | empaquetado | 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 | Solicitudes | 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 (seis) | 1.15.0 | segmentación | 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 |
Bibliotecas de Python en clústeres de GPU
Biblioteca | Versión | Biblioteca | Versión | Biblioteca | Versión |
---|---|---|---|---|---|
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 | criptografía | 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 | vacaciones | 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 | empaquetado | 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 | Solicitudes | 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 (seis) | 1.15.0 | segmentación | 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 |
Paquetes de Spark que contienen módulos de Python
Paquete de Spark | Módulo de Python | Versión |
---|---|---|
graphframes | graphframes | 0.8.1-db3-spark3.1 |
Bibliotecas de R
Las bibliotecas de R son idénticas a las bibliotecas de R de Databricks Runtime 9.0.
Bibliotecas de Java y Scala (clúster de Scala 2.12)
Además de las bibliotecas de Java y Scala de Databricks Runtime 9.0, Databricks Runtime 9.0 ML contiene los siguientes archivos JAR:
Clústeres de CPU
Identificador de grupo | Identificador de artefacto | Versión |
---|---|---|
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 |
Clústeres de GPU
Identificador de grupo | Identificador de artefacto | Versión |
---|---|---|
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 |