Databricks Runtime 5.2 ML

Databricks publicó esta imagen en enero de 2019.

Databricks Runtime 5.2 ML proporciona un entorno ya preparado de aprendizaje automático y ciencia de datos, basado en Databricks Runtime 5.2 (sin soporte técnico). Databricks Runtime for ML contiene muchas bibliotecas de aprendizaje automático populares, incluidas TensorFlow, PyTorch, Keras y XGBoost. También admite el entrenamiento distribuido de TensorFlow mediante Horovod.

Para más información, incluidas las instrucciones para crear un clúster de Databricks Runtime ML, consulte IA y Machine Learning en Databricks.

Nuevas características

Databricks Runtime 5.2 ML se basa en Databricks Runtime 5.2. Para información sobre las novedades de Databricks Runtime 5.2, consulte las notas de la versión de Databricks Runtime 5.2 (sin soporte técnico). Además de las actualizaciones de la biblioteca, Databricks Runtime 5.2 ML presenta las siguientes características nuevas:

  • GraphFrames ahora admite la API de Pregel (Python) con las optimizaciones de rendimiento de Databricks.
  • HorovodRunner agrega:
    • En un clúster de GPU, los procesos de entrenamiento se asignan a GPU en lugar de a nodos de trabajo para simplificar el soporte de tipos de instancia de varias GPU. Esta compatibilidad integrada permite distribuir a todas las GPU en una máquina con varias GPU sin código personalizado.
    • HorovodRunner.run() ahora devuelve el valor devuelto del primer proceso de entrenamiento.

Nota:

Las versiones de Databricks Runtime ML recogen todas las actualizaciones de mantenimiento de la versión base de Databricks Runtime. Para obtener una lista de todas las actualizaciones de mantenimiento, consulte Actualizaciones de mantenimiento de Databricks Runtime (archivado).

Entorno del sistema

El entorno del sistema de Databricks Runtime 5.2 ML se diferencia del de Databricks Runtime 5.2 en lo siguiente:

  • Python: 2.7.15 para clústeres de Python 2 y 3.6.5 para clústeres de Python 3.
  • DBUtils: Databricks Runtime 5.2 ML no contiene la Utilidad de biblioteca (dbutils.library) (heredada).
  • En el caso de los clústeres de GPU, las bibliotecas de GPU de NVIDIA siguientes:
    • Controlador Tesla 396.44
    • CUDA 9.2
    • CUDNN 7.2.1

Bibliotecas

En las secciones siguientes se enumeran las bibliotecas incluidas en Databricks Runtime 5.2 ML, que difieren de las incluidas en Databricks Runtime 5.2.

Bibliotecas de Python

Databricks Runtime 5.2 ML usa Conda para la administración de paquetes de Python. Como resultado, hay diferencias importantes en las bibliotecas de Python preinstaladas en comparación con Databricks Runtime. A continuación se muestra una lista completa de los paquetes de Python proporcionados y las versiones instaladas mediante el administrador de paquetes de Conda.

Biblioteca Versión Biblioteca Versión Biblioteca Versión
absl-py 0.6.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.5 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
criptografía 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 futuros 3.2.0
gast 0.2.0 grpcio 1.12.1 h5py 2.8.0
horovod 0.15.2 html5lib 1.0.1 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.3
jsonschema 2.6.0 jupyter-client 5.2.3 jupyter-core 4.4.0
Keras 2.2.4 Keras-Applications 1.0.6 keras-preprocessing 1.0.5
kiwisolver 1.0.1 linecache2 1.0.0 llvmlite 0.23.1
lxml 4.2.1 Markdown 3.0.1 MarkupSafe 1,0
matplotlib 2.2.2 mistune 0.8.3 mleap 0.8.1
mock 2.0.0 msgpack 0.5.6 nbconvert 5.3.1
nbformat 4.4.0 nariz 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.1 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.6.1 psycopg2 2.7.5
ptyprocess 0.5.2 pyarrow 0.8.0 pyasn1 0.4.4
pycparser 2,18 Pygments 2.2.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 3,12 pyzmq 17.0.0 Solicitudes 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 six (seis) 1.11.0
statsmodels 0.9.0 subprocess32 3.5.3 tensorboard 1.12.2
tensorboardX 1.4 tensorflow 1.12.0 termcolor 1.1.0
testpath 0.3.1 torch 0.4.1 torchvision 0.2.1
tornado 5.0.2 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

Además, los paquetes de Spark siguientes incluyen módulos de Python:

Paquete de Spark Módulo de Python Versión
graphframes graphframes 0.7.0-db1-spark2.4
spark-deep-learning sparkdl 1.5.0-db1-spark2.4
tensorframes tensorframes 0.6.0-s_2.11

Bibliotecas de R

Las bibliotecas de R son idénticas a las bibliotecas de R de Databricks Runtime 5.2.

Bibliotecas de Java y Scala (clúster de Scala 2.11)

Además de las bibliotecas de Java y Scala de Databricks Runtime 5.2, Databricks Runtime 5.2 ML contiene los siguientes archivos JAR:

Identificador de grupo Identificador de artefacto Versión
com.databricks spark-deep-learning 1.5.0-db1-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