Share via


Databricks Runtime 9.1 LTS para Machine Learning

O Databricks lançou essa imagem e a declarou LTS (Suporte de Longo Prazo) em setembro de 2021.

O Databricks Runtime 9.1 LTS para Machine Learning fornece um ambiente pronto para uso em aprendizado de máquina e ciência de dados com base no Databricks Runtime 9.1 LTS. O Databricks Runtime ML contém muitas bibliotecas de aprendizado de máquina populares, inclusive TensorFlow, PyTorch e XGBoost. O Databricks Runtime ML inclui o AutoML, uma ferramenta para treinamento automático de pipelines de aprendizado de máquina. O Databricks Runtime ML também oferece suporte ao treinamento de aprendizado profundo distribuído com o uso do Horovod.

Observação

LTS significa que essa versão possui suporte de longo prazo. Consulte Ciclo de vida da versão de LTS do Databricks Runtime.

Para obter mais informações, como instruções para a criação de um cluster do Databricks Runtime ML, confira IA e Machine Learning no Databricks.

Novos recursos e aprimoramentos

AutoML

Os aprimoramentos a seguir estão disponíveis no Databricks Runtime 9.1 LTS para ML e superior.

O AutoML dá suporte a conjuntos de dados maiores por amostragem

O AutoML agora faz amostras de conjuntos de dados que podem exceder restrições de memória, permitindo que ele seja executado em conjuntos de dados maiores com menos risco de erros de falta de memória. Para obter detalhes, confira Amostragem de conjuntos grandes de dados.

O AutoML pré-processa colunas com base no tipo semântico

O AutoML detecta determinadas colunas que têm um tipo semântico diferente do tipo de dados do Spark ou Pandas. O AutoML converte e aplica as etapas de pré-processamento de dados com base no tipo semântico detectado. Especificamente, o AutoML executa as seguintes conversões:

  • Colunas de cadeia de caracteres e inteiros que representam dados de data ou de carimbo de data/hora são convertidas em um tipo de carimbo de data/hora.
  • Colunas de cadeia de caracteres que representam dados numéricos são convertidas em um tipo numérico.

Aprimoramentos nos notebooks gerados por AutoML

As etapas de pré-processamento para colunas de data e carimbo de data/hora agora são incorporadas no pacote databricks-automl-runtime, simplificando os notebooks gerados pelo treinamento de AutoML. databricks-automl-runtime está incluído no Databricks Runtime 9.1 LTS para ML e superior e também está disponível no PyPI.

Repositório de recursos

Os aprimoramentos a seguir estão disponíveis no Databricks Runtime 9.1 LTS para ML e superior.

  • Ao criar um TrainingSet, agora você pode definir label=None para dar suporte a aplicativos de aprendizado não supervisionados.
  • Agora você pode especificar mais de um recurso em um único FeatureLookup.
  • Agora você pode especificar um caminho personalizado para tabelas de recursos. Usar o parâmetro path em create_feature_table(). O padrão é o local do banco de dados.
  • Novos tipos de dados PySpark com suporte: ArrayType e ShortType.

Mlflow

Os aprimoramentos a seguir estão disponíveis a partir da versão 1.20.2 do Mlflow, que está incluída no Databricks Runtime 9.1 LTS para ML.

  • O registro automático em log para scikit-learn agora registra métricas pós-treinamento sempre que uma API de avaliação do scikit-learn, como sklearn.metrics.mean_squared_error, é chamada.
  • O registro automático em log do PySpark para ML agora registra as métricas pós-treinamento sempre que uma API de avaliação de modelo, como Evaluator.evaluate(), é chamada.
  • mlflow.*.log_model e mlflow.*.save_model agora têm argumentos pip_requirements e extra_pip_requirements para que você possa especificar diretamente os requisitos pip do modelo a registrar ou salvar.
  • mlflow.*.log_model e mlflow.*.save_model agora inferem automaticamente os requisitos pip do modelo para registrar ou salvar com base no ambiente de software atual.
  • As entradas stdMetrics agora são registradas como métricas de treinamento durante o registro automático em log do PySpark CrossValidator.
  • O registro automático em log do PyTorch Lightning agora dá suporte à execução distribuída.

Databricks Autologging (Visualização Pública)

A Visualização Pública do Databricks Autologging foi expandida para novas regiões. O Databricks Autologging é uma solução sem código que fornece acompanhamento automático de experimentos para sessões de treinamento em aprendizado de máquina no Azure Databricks. Com o Databricks Autologging, parâmetros de modelos, métricas, arquivos e informações de linhagem são capturados automaticamente quando você treina modelos de várias bibliotecas de aprendizado de máquina populares. As sessões de treinamento são registradas como Execuções de Acompanhamento do MLflow. Os arquivos de modelo também são rastreados para que você possa registrá-los facilmente no Registro de Modelo do MLflow e implantá-los para pontuação em tempo real com o Serviço de Modelo do MLflow.

Para obter mais informações sobre o Databricks Autologging, consulte Databricks Autologging.

Principais alterações no ambiente do Python para o Databricks Runtime ML

Pacotes do Python atualizados

  • automl 1.1.1 => 1.2.1
  • feature_store 0.3.3 => 0.3.4.1
  • holidays 0.10.5.2 => 0.11.2
  • keras 2.5.0 => 2.6.0
  • mlflow 1.19.0 => 1.20.2
  • petastorm 0.11.1 => 0.11.2
  • plotly 4.14.3 => 5.1.0
  • spark-tensorflow-distributor 0.1.0 => 1.0.0
  • sparkdl 2.2.0_db1 => 2.2.0_db3
  • tensorboard 2.5.0 => 2.6.0
  • tensorflow 2.5.0 => 2.6.0

Pacotes do Python adicionados

  • databricks-automl-runtime 0.1.0

Ambiente do sistema

O ambiente do sistema no Databricks Runtime 9.1 LTS para ML difere do Databricks Runtime 9.1 LTS nestes pontos:

Bibliotecas

As seções a seguir listam as bibliotecas incluídas no Databricks Runtime 9.1 LTS para ML que diferem daquelas incluídas no Databricks Runtime 9.1 LTS.

Nesta seção:

Bibliotecas de camada superior

O Databricks Runtime 9.1 LTS para ML inclui as seguintes bibliotecas de camada superior:

Bibliotecas do Python

O Databricks Runtime 9.1 LTS para ML usa o Virtualenv para gerenciamento de pacotes Python e inclui muitos pacotes de ML populares.

Além dos pacotes especificados nas seções a seguir, o Databricks Runtime 9.1 LTS para ML também inclui os seguintes pacotes:

  • hyperopt 0.2.5.db2
  • sparkdl 2.2.0.db3
  • feature_store 0.3.4.1
  • automl 1.2.1

Bibliotecas do Python em clusters de CPU

Biblioteca Versão Biblioteca Versão Biblioteca Versão
absl-py 0.11.0 Antergos Linux 2015.10 (atualização cumulativa de ISO) 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 Gargalo 1.3.2 cachetools 4.2.2
certifi 2020.12.5 cffi 1.14.5 chardet 4.0.0
clang 5.0 clique 7.1.2 cloudpickle 1.6.0
cmdstanpy 0.9.68 configparser 5.0.1 convertdate 2.3.2
criptografia 3.4.7 cycler 0.10.0 Cython 0.29.23
databricks-automl-runtime 0.1.0 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.39.0
gunicorn 20.0.4 h5py 3.1.0 hijri-converter 2.2.1
feriados 0.11.2 horovod 0.22.1 htmlmin 0.1.12
idna 2.10 ImageHash 4.2.1 importlib-metadata 3.10.0
ipykernel 5.3.4 ipython 7.22.0 ipython-genutils 0.2.0
ipywidgets 7.6.3 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.0 keras 2.6.0 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.37.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.20.2 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.54.0 numpy 1.19.2
oauthlib 3.1.0 opt-einsum 3.3.0 empacotando 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.2 pexpect 4.8.0 phik 0.12.0
pickleshare 0.7.5 Pillow 8.2.0 pip 21.0.1
plotly 5.1.0 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 solicitações 2.25.1
requests-oauthlib 1.3.0 requests-unixsocket 0.2.0 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 1.15.0 slicer 0.0.7 smmap 3.0.5
spark-tensorflow-distributor 1.0.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
tenacity 6.2.0 tensorboard 2.6.0 tensorboard-data-server 0.6.1
tensorboard-plugin-wit 1.8.0 tensorflow-cpu 2.6.0 tensorflow-estimator 2.6.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 zipp 3.4.1

Bibliotecas do Python em clusters de GPU

Biblioteca Versão Biblioteca Versão Biblioteca Versão
absl-py 0.11.0 Antergos Linux 2015.10 (atualização cumulativa de ISO) 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 Gargalo 1.3.2 cachetools 4.2.2
certifi 2020.12.5 cffi 1.14.5 chardet 4.0.0
clang 5.0 clique 7.1.2 cloudpickle 1.6.0
cmdstanpy 0.9.68 configparser 5.0.1 convertdate 2.3.2
criptografia 3.4.7 cycler 0.10.0 Cython 0.29.23
databricks-automl-runtime 0.1.0 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.39.0
gunicorn 20.0.4 h5py 3.1.0 hijri-converter 2.2.1
feriados 0.11.2 horovod 0.22.1 htmlmin 0.1.12
idna 2.10 ImageHash 4.2.1 importlib-metadata 3.10.0
ipykernel 5.3.4 ipython 7.22.0 ipython-genutils 0.2.0
ipywidgets 7.6.3 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.0 keras 2.6.0 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.37.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.20.2 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.54.0 numpy 1.19.2
oauthlib 3.1.0 opt-einsum 3.3.0 empacotando 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.2 pexpect 4.8.0 phik 0.12.0
pickleshare 0.7.5 Pillow 8.2.0 pip 21.0.1
plotly 5.1.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 solicitações 2.25.1 requests-oauthlib 1.3.0
requests-unixsocket 0.2.0 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 1.15.0
slicer 0.0.7 smmap 3.0.5 spark-tensorflow-distributor 1.0.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 tenacity 6.2.0
tensorboard 2.6.0 tensorboard-data-server 0.6.1 tensorboard-plugin-wit 1.8.0
tensorflow 2.6.0 tensorflow-estimator 2.6.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 zipp 3.4.1

Pacotes do Spark que contêm módulos do Python

Pacote do Spark Módulo do Python Versão
graphframes graphframes 0.8.1-db3-spark3.1

Bibliotecas do R

As bibliotecas do R são idênticas às Bibliotecas do R existentes no Databricks Runtime 9.1 LTS.

Bibliotecas do Java e do Scala (cluster do Scala 2.12)

Além das bibliotecas do Java e do Scala no Databricks Runtime 9.1 LTS, o Databricks Runtime 9.1 LTS para ML contém os seguintes JARs:

Clusters de CPU

ID do Grupo Artifact ID Versão
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.20.2
org.mlflow mlflow-spark 1.20.2
org.scala-lang.modules scala-java8-compat_2.12 0.8.0
org.tensorflow spark-tensorflow-connector_2.12 1.15.0

Clusters de GPU

ID do Grupo Artifact ID Versão
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.20.2
org.mlflow mlflow-spark 1.20.2
org.scala-lang.modules scala-java8-compat_2.12 0.8.0
org.tensorflow spark-tensorflow-connector_2.12 1.15.0