用于 ML 的 Databricks Runtime 9.0 (EoS)
注意
对此 Databricks Runtime 版本的支持已结束。 有关终止支持日期,请参阅终止支持历史记录。 有关所有受支持的 Databricks Runtime 版本,请参阅 Databricks Runtime 发行说明版本和兼容性。
Databricks 于 2021 年 8 月发布了此映像。
用于机器学习的 Databricks Runtime 9.0 基于 Databricks Runtime 9.0 (EoS),为机器学习和数据科学提供了随时可用的环境。 Databricks Runtime ML 包含许多常用的机器学习库,包括 TensorFlow、PyTorch 和 XGBoost。 它还支持使用 Horovod 进行分布式深度学习训练。
有关详细信息,包括有关如何创建 Databricks Runtime ML 群集的说明,请参阅 Databricks 上的 AI 和机器学习。
更正
这些发行说明的先前版本指出,Databricks Runtime 9.0 ML GPU 不支持使用 Ganglia 监视群集 GPU 指标。 这在 Databricks Runtime 9.0 ML Beta 中确实如此,但该问题已在 Databricks Runtime 9.0 ML GA 中得以解决。 该声明已删除。
新增功能和改进
Databricks Runtime 9.0 ML 基于 Databricks Runtime 9.0 构建。 若要了解 Databricks Runtime 9.0 中的新增功能,包括 Apache Spark MLlib 和 SparkR,请参阅 Databricks Runtime 9.0 (EoS) 发行说明。
Databricks 自动日志记录(公共预览版)
现在在特定区域,用于机器学习的 Databricks Runtime 9.0 可使用 Databricks 自动日志记录。 Databricks 自动日志记录是一种无代码解决方案,它为 Azure Databricks 上的机器学习训练会话提供自动试验跟踪。 使用 Databricks 自动日志记录,在通过各种热门机器学习库训练模型时可自动捕获模型参数、指标、文件和世系信息。 训练会话记录为 MLflow 跟踪运行。 还会跟踪模型文件,从而可以轻松地将这些文件记录到 MLflow 模型注册表,并通过 MLflow 模型服务部署它们进行实时评分。
有关 Databricks 自动日志记录的详细信息,请参阅 Databricks 自动日志记录。
对 Databricks 特征存储的改进
通过最大程度地减少跨源特征表的联接数,提高了创建训练集时的性能。
与 PySpark 的 XGBoost 集成现在支持分布式训练和 GPU 群集
有关详细信息,请参阅在 Azure Databricks 上使用 XGBoost。
Databricks Runtime ML Python 环境的主要更改
删除了 Conda 环境和 %conda 命令。 Databricks Runtime 9.0 ML 是通过 pip
和 virtualenv
生成的。
结合使用基于 Conda 的环境和 Databricks 容器服务的自定义映像仍将受支持,但不会具有笔记本范围的库功能。 Databricks 建议将基于 virtualenv 的环境与 Databricks 容器服务和 %pip
一起用于所有笔记本范围的库。
请参阅 Databricks Runtime 9.0 (EoS) 以了解 Databricks Runtime Python 环境的主要更改。 如需查看已安装的 Python 包及其版本的完整列表,请参阅 Python 库。
升级的 Python 包
- mlflow 1.18.0 -> 1.19.0
- nltk 3.5 -> 3.6.1
添加的 Python 包
- prophet 1.0.1
删除的 Python 包
- MKL
- azure-core
- azure-storage-blob
- msrest
- docker
- querystring-parser
- intel-openmp
弃用功能和不支持的功能
- 在 Databricks Runtime 9.0 ML 中,HorovodRunner 不支持设置
np=0
,其中np
是用于 Horovod 作业的并行进程数。 - Databricks Runtime 9.0 ML 包含 R-base 4.1.0 以及 R 图形引擎版本 14。 RStudio Server 版本 1.2. x 不支持此内容。
- Databricks Runtime 9.0 ML GPU 中删除了
nvprof
。
系统环境
Databricks Runtime 9.0 ML 中的系统环境在以下方面不同于 Databricks Runtime 9.0:
- DBUtils:Databricks Runtime ML 不包含库实用工具 (dbutils.library)(旧版)。
请改用
%pip
命令。 请参阅作用域为笔记本的 Python 库。 - 对于 GPU 群集,Databricks Runtime ML 包含以下 NVIDIA GPU 库:
- CUDA 11.0
- cuDNN 8.1.0.77
- NCCL 2.10.3
- TensorRT 7.2.2
库
以下部分列出了 Databricks Runtime 9.0 ML 中包含的库,这些库不同于 Databricks Runtime 9.0 中包含的库。
本节内容:
顶层库
Databricks Runtime 9.0 ML 包含以下顶层库:
- GraphFrames
- Horovod 和 HorovodRunner
- MLflow
- PyTorch
- spark-tensorflow-connector
- TensorFlow
- TensorBoard
Python 库
Databricks Runtime 9.0 ML 使用 Virtualenv 进行 Python 包管理,并且包含许多常用的 ML 包。
除了在以下部分中指定的包,Databricks Runtime 9.0 ML 还包含以下包:
- hyperopt 0.2.5.db2
- sparkdl 2.2.0_db1
- feature_store 0.3.3
- automl 1.1.1
CPU 群集上的 Python 库
库 | 版本 | 库 | 版本 | 库 | 版本 |
---|---|---|---|---|---|
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 |
单击 | 7.1.2 | cloudpickle | 1.6.0 | cmdstanpy | 0.9.68 |
configparser | 5.0.1 | convertdate | 2.3.2 | 密码系统 | 3.4.7 |
cycler | 0.10.0 | Cython | 0.29.23 | databricks-cli | 0.14.3 |
dbu-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 |
笔记本 | 6.3.0 | numba | 0.53.1 | numpy | 1.19.2 |
oauthlib | 3.1.0 | opt-einsum | 3.3.0 | 打包 | 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 | 请求 | 2.25.1 |
requests-oauthlib | 1.3.0 | requests-unixsocket | 0.2.0 | 正在重试 | 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 | 6 | 1.15.0 | slicer | 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 |
GPU 群集上的 Python 库
库 | 版本 | 库 | 版本 | 库 | 版本 |
---|---|---|---|---|---|
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 |
单击 | 7.1.2 | cloudpickle | 1.6.0 | cmdstanpy | 0.9.68 |
configparser | 5.0.1 | convertdate | 2.3.2 | 密码系统 | 3.4.7 |
cycler | 0.10.0 | Cython | 0.29.23 | databricks-cli | 0.14.3 |
dbu-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 |
笔记本 | 6.3.0 | numba | 0.53.1 | numpy | 1.19.2 |
oauthlib | 3.1.0 | opt-einsum | 3.3.0 | 打包 | 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 | 请求 | 2.25.1 |
requests-oauthlib | 1.3.0 | requests-unixsocket | 0.2.0 | 正在重试 | 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 | 6 | 1.15.0 | slicer | 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 |
包含 Python 模块的 Spark 包
Spark 包 | Python 模块 | 版本 |
---|---|---|
graphframes | graphframes | 0.8.1-db3-spark3.1 |
R 库
R 库与 Databricks Runtime 9.0 中的 R 库完全相同。
Java 库和 Scala 库(Scala 2.12 群集)
除了 Databricks Runtime 9.0 中的 Java 库和 Scala 库,Databricks Runtime 9.0 ML 还包含以下 JAR:
CPU 群集
组 ID | 项目 ID | 版本 |
---|---|---|
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 |
GPU 群集
组 ID | 项目 ID | 版本 |
---|---|---|
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 |