用于 ML 的 Databricks Runtime 5.4 (EoS)
注意
对此 Databricks Runtime 版本的支持已结束。 有关终止支持日期,请参阅终止支持历史记录。 有关所有受支持的 Databricks Runtime 版本,请参阅 Databricks Runtime 发行说明版本和兼容性。
Databricks 于 2019 年 6 月发布此版本。
用于机器学习的 Databricks Runtime 5.4 基于 Databricks Runtime 5.4 (EoS) 为机器学习和数据科学提供随时可用的环境。 Databricks Runtime ML 包含许多常用的机器学习库,包括 TensorFlow、PyTorch、Keras 和 XGBoost。 它还支持使用 Horovod 进行分布式深度学习训练。
有关详细信息,包括有关如何创建 Databricks Runtime ML 群集的说明,请参阅 Databricks 上的 AI 和机器学习。
新增功能
Databricks Runtime 5.4 ML 是基于 Databricks Runtime 5.4 构建的。 若要了解 Databricks Runtime 5.4 中的新增功能,请参阅 Databricks Runtime 5.4 (EoS) 发行说明。
除了库更新,Databricks Runtime 5.4 ML 还引入了以下新功能:
分布式 Hyperopt + 自动化 MLflow 跟踪
Databricks Runtime 5.4 ML 引入了由 Apache Spark 提供支持的 Hyperopt 的新实现,用于缩放和简化超参数优化。 实现新的 Trials
类 SparkTrials
是为了使用 Apache Spark 在多个计算机和节点之间分发 Hyperopt 试用版运行。 此外,所有优化试验以及优化后的超参数和目标指标会自动记录到 MLflow 运行。 请参阅并行化 Hyperopt 超参数优化。
重要
此功能目前以公共预览版提供。
Apache Spark MLlib + 自动化 MLflow 跟踪
对于使用 PySpark 优化算法 CrossValidator
和 TrainValidationSplit
拟合的模型,Databricks Runtime 5.4 ML 支持自动记录 MLflow 运行。 请参阅 Apache Spark MLlib 和自动化 MLflow 跟踪。 此功能在 Databricks Runtime 5.4 ML 中默认处于启用状态,但在 Databricks Runtime 5.3 ML 中则默认处于关闭状态。
重要
此功能目前以公共预览版提供。
HorovodRunner 改进
从 Horovod 发送到 Spark 驱动程序节点的输出现在显示在笔记本单元中。
XGBoost Python 包更新
已安装 XGBoost Python 包 0.80。
系统环境
Databricks Runtime 5.4 ML 中的系统环境在以下方面不同于 Databricks Runtime 5.4:
- Python:2.7.15 适用于 Python 2 群集,3.6.5 适用于 Python 3 群集。
- DBUtils:Databricks Runtime 5.4 ML 不包含库实用工具 (dbutils.library)(旧版)。
- 对于 GPU 群集,有以下 NVIDIA GPU 库:
- Tesla 驱动程序 396.44
- CUDA 9.2
- CUDNN 7.2.1
库
以下部分列出了 Databricks Runtime 5.4 ML 中包含的库,这些库不同于 Databricks Runtime 5.4 中包含的库。
顶层库
Databricks Runtime 5.4 ML 包含以下顶层库:
Python 库
Databricks Runtime 5.4 ML 使用 Conda 进行 Python 包管理。 因此,已安装的 Python 库相对于 Databricks Runtime 有很大区别。 下面是所提供的 Python 包和使用 Conda 包管理器安装的版本的完整列表。
库 | 版本 | 库 | 版本 | 库 | 版本 |
---|---|---|---|---|---|
absl-py | 0.7.1 | argparse | 1.4.0 | asn1crypto | 0.24.0 |
astor | 0.7.1 | backports-abc | 0.5 | backports.functools-lru-cache | 1.5 |
backports.weakref | 1.0.post1 | bcrypt | 3.1.6 | bleach | 2.1.3 |
boto | 2.48.0 | boto3 | 1.7.62 | botocore | 1.10.62 |
certifi | 2018.04.16 | cffi | 1.11.5 | chardet | 3.0.4 |
cloudpickle | 0.5.3 | colorama | 0.3.9 | configparser | 3.5.0 |
密码系统 | 2.2.2 | cycler | 0.10.0 | Cython | 0.28.2 |
decorator | 4.3.0 | docutils | 0.14 | entrypoints | 0.2.3 |
enum34 | 1.1.6 | et-xmlfile | 1.0.1 | funcsigs | 1.0.2 |
functools32 | 3.2.3-2 | fusepy | 2.0.4 | future | 0.17.1 |
Future | 3.2.0 | gast | 0.2.2 | grpcio | 1.12.1 |
h5py | 2.8.0 | horovod | 0.16.0 | html5lib | 1.0.1 |
hyperopt | 0.1.2.db4 | idna | 2.6 | ipaddress | 1.0.22 |
ipython | 5.7.0 | ipython_genutils | 0.2.0 | jdcal | 1.4 |
Jinja2 | 2.10 | jmespath | 0.9.4 | jsonschema | 2.6.0 |
jupyter-client | 5.2.3 | jupyter-core | 4.4.0 | Keras | 2.2.4 |
Keras-Applications | 1.0.7 | Keras-Preprocessing | 1.0.9 | kiwisolver | 1.1.0 |
linecache2 | 1.0.0 | llvmlite | 0.23.1 | lxml | 4.2.1 |
Markdown | 3.1.1 | MarkupSafe | 1.0 | matplotlib | 2.2.2 |
mistune | 0.8.3 | mkl-fft | 1.0.0 | mkl-random | 1.0.1 |
mleap | 0.8.1 | mock | 2.0.0 | msgpack | 0.5.6 |
nbconvert | 5.3.1 | nbformat | 4.4.0 | networkx | 2.2 |
nose | 1.3.7 | nose-exclude | 0.5.0 | numba | 0.38.0+0.g2a2b772fc.dirty |
numpy | 1.14.3 | olefile | 0.45.1 | openpyxl | 2.5.3 |
pandas | 0.23.0 | pandocfilters | 1.4.2 | paramiko | 2.4.1 |
pathlib2 | 2.3.2 | patsy | 0.5.0 | pbr | 5.1.3 |
pexpect | 4.5.0 | pickleshare | 0.7.4 | Pillow | 5.1.0 |
pip | 10.0.1 | ply | 3.11 | prompt-toolkit | 1.0.15 |
protobuf | 3.7.1 | psutil | 5.6.2 | psycopg2 | 2.7.5 |
ptyprocess | 0.5.2 | pyarrow | 0.12.1 | pyasn1 | 0.4.5 |
pycparser | 2.18 | Pygments | 2.2.0 | pymongo | 3.8.0 |
PyNaCl | 1.3.0 | pyOpenSSL | 18.0.0 | pyparsing | 2.2.0 |
PySocks | 1.6.8 | Python | 2.7.15 | python-dateutil | 2.7.3 |
pytz | 2018.4 | PyYAML | 5.1 | pyzmq | 17.0.0 |
请求 | 2.18.4 | s3transfer | 0.1.13 | scandir | 1.7 |
scikit-learn | 0.19.1 | scipy | 1.1.0 | seaborn | 0.8.1 |
setuptools | 39.1.0 | simplegeneric | 0.8.1 | singledispatch | 3.4.0.3 |
6 | 1.11.0 | statsmodels | 0.9.0 | subprocess32 | 3.5.4 |
tensorboard | 1.12.2 | tensorboardX | 1.6 | tensorflow | 1.12.0 |
termcolor | 1.1.0 | testpath | 0.3.1 | torch | 0.4.1 |
torchvision | 0.2.1 | tornado | 5.0.2 | tqdm | 4.32.1 |
traceback2 | 1.4.0 | traitlets | 4.3.2 | unittest2 | 1.1.0 |
urllib3 | 1.22 | virtualenv | 16.0.0 | wcwidth | 0.1.7 |
webencodings | 0.5.1 | Werkzeug | 0.14.1 | wheel | 0.31.1 |
wrapt | 1.10.11 | wsgiref | 0.1.2 |
此外,以下 Spark 包还包括 Python 模块:
Spark 包 | Python 模块 | 版本 |
---|---|---|
graphframes | graphframes | 0.7.0-db1-spark2.4 |
spark-deep-learning | sparkdl | 1.5.0-db3-spark2.4 |
tensorframes | tensorframes | 0.6.0-s_2.11 |
R 库
R 库与 Databricks Runtime 5.4 中的 R 库完全相同。
Java 库和 Scala 库(Scala 2.11 群集)
除了 Databricks Runtime 5.4 中的 Java 库和 Scala 库之外,Databricks Runtime 5.4 ML 还包含以下 JAR:
组 ID | 项目 ID | 版本 |
---|---|---|
com.databricks | spark-deep-learning | 1.5.0-db3-spark2.4 |
com.typesafe.akka | akka-actor_2.11 | 2.3.11 |
ml.combust.mleap | mleap-databricks-runtime_2.11 | 0.13.0 |
ml.dmlc | xgboost4j | 0.81 |
ml.dmlc | xgboost4j-spark | 0.81 |
org.graphframes | graphframes_2.11 | 0.7.0-db1-spark2.4 |
org.tensorflow | libtensorflow | 1.12.0 |
org.tensorflow | libtensorflow_jni | 1.12.0 |
org.tensorflow | spark-tensorflow-connector_2.11 | 1.12.0 |
org.tensorflow | tensorflow | 1.12.0 |
org.tensorframes | tensorframes | 0.6.0-s_2.11 |