Выпуск Databricks Runtime 9.1 LTS для машинного обучения

Этот образ с предоставлением долгосрочной поддержки (LTS) был выпущен в сентябре 2021 года.

Databricks Runtime 9.1 LTS для машинного обучения — это готовая среда для машинного обучения, обработки и анализа данных на основе Databricks Runtime 9.1 LTS. Databricks Runtime ML содержит множество популярных библиотек машинного обучения, включая TensorFlow, PyTorch и XGBoost. Databricks Runtime ML включает AutoML – средство для автоматического обучения конвейеров машинного обучения. Databricks Runtime ML также поддерживает распределенное углубленное обучение с использованием Horovod.

Примечание.

LTS означает, что эта версия находится в долгосрочной поддержке. См. жизненный цикл версии LTS среды выполнения Databricks.

Дополнительные сведения, включая инструкции по созданию кластера Databricks Runtime ML, см. в статье ИИ и Машинное обучение в Databricks.

Новые функции и внесенные улучшения

AutoML

В Databricks Runtime 9.1 LTS ML и более поздних версий доступны следующие улучшения.

AutoML поддерживает большие наборы данных для выполнения выборки

AutoML теперь выбирает наборы данных, которые могут превысить ограничения памяти, что позволяет обрабатывать большие наборы данных с меньшей вероятностью ошибок нехватки памяти. Дополнительные сведения см. в статье Выборка больших наборов данных.

AutoML предварительно обрабатывает столбцы на основе семантического типа

AutoML обнаруживает определенные столбцы, имеющие семантический тип, отличающийся от типа данных Spark или pandas. Затем AutoML выполняет преобразование данных и начинает их предварительную обработку данных в зависимости от обнаруженного семантического типа. В частности, AutoML выполняет следующие преобразования:

  • Строковые и целочисленные столбцы, представляющие данные даты или меток времени, преобразуются в метки времени.
  • Строковые столбцы, представляющие числовые данные, преобразуются в числовой тип.

Улучшения в созданных записных книжках AutoML

Частичная предварительная обработка для столбцов даты и меток времени теперь включена в пакет databricks-automl-runtime, что упрощает создание записных книжек для обучения AutoML. databricks-automl-runtime входит в состав Databricks Runtime 9.1 LTS ML и более поздних версий, а также доступна в PyPI.

Хранилище компонентов

В Databricks Runtime 9.1 LTS ML и более поздних версий доступны следующие улучшения.

  • При создании TrainingSet теперь можно настроить поддержку неконтролируемых учебных приложений для label=None.
  • Теперь можно указать более одной функции в одном FeatureLookup.
  • Теперь можно указать пользовательский путь для таблиц функций. Используйте параметр path в create_feature_table(). По умолчанию используется расположение базы данных.
  • Новые поддерживаемые типы данных PySpark: ArrayType и ShortType.

Mlflow

Следующие улучшения доступны в Mlflow, начиная с версии 1.20.2, которая включена в Databricks Runtime 9.1 LTS ML.

  • Функция автоматического ведения журнала для scikit-learn теперь записывает метрики при каждом вызове API-интерфейса оценки scikit-learn, например sklearn.metrics.mean_squared_error.
  • Функция автоматического ведения журнала для PySpark ML теперь записывает метрики по результатам обучения при каждом вызове API-интерфейса оценки модели, например Evaluator.evaluate().
  • mlflow.*.log_model и mlflow.*.save_model теперь включают аргументы pip_requirements и extra_pip_requirements, что позволяет напрямую указывать требования к PIP модели для ведения журнала или сохранения.
  • mlflow.*.log_model и mlflow.*.save_model теперь автоматически определяют требования к PIP модели для ведения журнала или сохранения на основе текущей программной среды.
  • во время автоматического ведения журнала PySpark CrossValidator записи stdMetrics теперь записываются как метрики обучения.
  • Автоматическое ведение журнала PyTorch Lightning теперь поддерживает распределенное выполнение.

Автоматическое ведение журнала в Databricks (общедоступная предварительная версия)

Общедоступная предварительная версия ведения журнала Databricks стала доступна для новых регионов. Автоматическое ведение журнала в Databricks – это решение без кода, которое обеспечивает автоматическое отслеживание экспериментов для обучающих сеансов по машинному обучению в Azure Databricks. Благодаря Databricks Autologging параметры модели, метрики, файлы и сведения о происхождении автоматически регистрируются при обучении моделей с помощью разных популярных библиотек машинного обучения. Обучающие сеансы записываются как Запуски отслеживания MLflow. Файлы моделей также отслеживаются, чтобы можно было легко регистрировать их в реестре моделей MLflow и развертывать их для оценки в режиме реального времени с помощью службы моделей MLflow.

Для получения дополнительной информации об автоматическом ведении журнала в Databricks см. Автоматическое ведение журнала в Databricks.

Основные изменения в среде Python для Databricks Runtime ML

Обновлены пакеты Python

  • 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

Добавленные пакеты Python

  • databricks-automl-runtime 0.1.0

Системная среда

Ниже описаны отличия системной среды в Databricks Runtime 9.1 LTS ML и в Databricks Runtime 9.1 LTS:

Библиотеки

В следующих разделах перечислены библиотеки, входящие в состав Databricks Runtime 9.1 LTS ML и отличающиеся от тех, что входят в состав Databricks Runtime 9.1 LTS.

В этом разделе рассматриваются следующие вопросы.

Библиотеки верхнего уровня

Databricks Runtime 9.1 LTS ML включает следующие библиотеки верхнего уровня:

Библиотеки Python

Databricks Runtime 9.1 LTS ML использует Virtualenv для управления пакетами Python и включает множество популярных пакетов ML.

Помимо пакетов, указанных в следующих разделах, Databricks Runtime 9.1 LTS ML также включает следующие пакеты:

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

Библиотеки Python в кластерах CPU

Библиотека Версия Библиотека Версия Библиотека Версия
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
clang 5,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-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 будущее 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
holidays 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
записная книжка 6.3.0 numba 0.54.0 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.2 pexpect 4.8.0 phik 0.12.0
pickleshare 0.7.5 Pillow 8.2.0 pip 21.0.1
график 5.1.0 prometheus-client 0.10.1 prompt-toolkit 3.0.17
Пророк 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 requests 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
Сиборн 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 Среза 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

Библиотеки Python в кластерах GPU

Библиотека Версия Библиотека Версия Библиотека Версия
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
clang 5,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-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 будущее 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
holidays 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
записная книжка 6.3.0 numba 0.54.0 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.2 pexpect 4.8.0 phik 0.12.0
pickleshare 0.7.5 Pillow 8.2.0 pip 21.0.1
график 5.1.0 prompt-toolkit 3.0.17 Пророк 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 requests 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 Сиборн 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
Среза 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

Пакеты Spark, содержащие модули Python

Пакет Spark Модуль Python Версия
graphframes graphframes 0.8.1-db3-spark3.1

Библиотеки R

Библиотеки R идентичны библиотекам R в Databricks Runtime 9.1 LTS.

Библиотеки Java и Scala (кластер Scala 2.12)

Помимо библиотек Java и Scala в Databricks Runtime 9.1 LTS, среда Databricks Runtime 9.1 LTS ML также включает следующие пакеты JAR:

Кластеры ЦП

ИД группы Идентификатор артефакта Версия
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

Кластеры GPU

ИД группы Идентификатор артефакта Версия
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