Databricks Runtime 5.2 ML
O Databricks lançou essa versão em janeiro de 2019.
O Databricks Runtime 5.2 ML fornece um ambiente pronto para uso em aprendizado de máquina e ciência de dados com base no Databricks Runtime 5.2 (EoS). O Databricks Runtime para ML contém muitas bibliotecas populares para aprendizado de máquina, inclusive TensorFlow, PyTorch, Keras e XGBoost. Também dá suporte ao treinamento distribuído do TensorFlow por meio do Horovod.
Para obter mais informações, incluindo instruções para criar um cluster de ML do Databricks Runtime, confira IA e Machine Learning no Databricks.
Novos recursos
O Databricks Runtime 5.2 ML foi criado com base no Databricks Runtime 5.2. Para obter informações sobre as novidades do Databricks Runtime 5.2, consulte as notas da versão do Databricks Runtime 5.2 (EoS). Além das atualizações de bibliotecas, o Databricks Runtime 5.2 ML apresenta os seguintes novos recursos:
- O GraphFrames agora oferece suporte à API do Pregel (Python) com otimizações de desempenho do Databricks.
- Adições feitas ao HorovodRunner:
- Em um cluster de GPU, os processos de treinamento são mapeados para GPUs em vez de nós de trabalho, para simplificar o suporte a tipos de instância de várias GPUs. Esse suporte interno permite distribuir para todas as GPUs em um computador com várias GPUs sem código personalizado.
HorovodRunner.run()
agora apresenta o valor retornado do primeiro processo de treinamento.
Observação
As versões do Databricks Runtime ML reúnem todas as atualizações de manutenção na versão base do Databricks Runtime. Para obter uma lista de todas as atualizações de manutenção, confira Atualizações de manutenção para o Databricks Runtime (arquivado).
Ambiente do sistema
O ambiente do sistema no Databricks Runtime 5.2 ML difere do Databricks Runtime 5.2 nestes pontos:
- Python: 2.7.15 para os clusters do Python 2 e 3.6.5 para os clusters do Python 3.
- DBUtils: Databricks Runtime 5.2 ML não contém utilitário de biblioteca (dbutils.library) (herdado).
- Para clusters de GPU, as seguintes bibliotecas de GPU NVIDIA:
- Driver Tesla 396.44
- CUDA 9.2
- CUDNN 7.2.1
Bibliotecas
As seções a seguir listam as bibliotecas incluídas no Databricks Runtime 5.2 ML que diferem daquelas incluídas no Databricks Runtime 5.2.
Bibliotecas do Python
O Databricks Runtime 5.2 ML usa Conda para o gerenciamento de pacotes do Python. Como resultado, há grandes diferenças em bibliotecas Python pré-instaladas em comparação com o Databricks Runtime. Veja a seguir uma lista completa de pacotes do Python fornecidos e as versões instaladas usando o gerenciador de pacotes do Conda.
Biblioteca | Versão | Biblioteca | Versão | Biblioteca | Versão |
---|---|---|---|---|---|
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 |
cryptography | 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 | futures | 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 | 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.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 | solicitações | 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 | 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 |
Além disso, os seguintes pacotes do Spark incluem módulos do Python:
Pacote do Spark | Módulo do Python | Versão |
---|---|---|
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 do R
As bibliotecas do R são idênticas às Bibliotecas do R existentes no Databricks Runtime 5.2.
Bibliotecas do Java e do Scala (cluster do Scala 2.11)
Além das bibliotecas do Java e do Scala no Databricks Runtime 5.2, o Databricks Runtime 5.2 ML contém os seguintes JARs:
ID do Grupo | Artifact ID | Versão |
---|---|---|
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 |