Databricks Runtime 9.1 LTS für Machine Learning

Databricks hat dieses Image veröffentlicht und im September 2021 als Long Term Support (LTS) deklariert.

Databricks Runtime 9.1 LTS für Machine Learning bietet eine sofort einsatzbereite Umgebung für maschinelles Lernen und Data Science basierend auf Databricks Runtime 9.1 LTS. Databricks Runtime ML enthält viele beliebte Machine Learning-Bibliotheken, einschließlich TensorFlow, PyTorch und XGBoost. Databricks Runtime ML enthält AutoML, ein Tool zum automatischen Trainieren von Machine Learning-Pipelines. Databricks Runtime ML unterstützt auch verteiltes Deep Learning-Training mit Horovod.

Hinweis

LTS bedeutet, dass diese Version langfristig unterstützt wird. Weitere Informationen finden Sie unter Databricks Runtime LTS-Versionslebenszyklus.

Weitere Informationen, einschließlich Anweisungen zum Erstellen eines Databricks Runtime ML-Clusters, finden Sie unter KI und Machine Learning in Databricks.

Neue Features und Verbesserungen

AutoML

Die folgenden Verbesserungen sind in Databricks Runtime 9.1 LTS ML und höher verfügbar.

AutoML unterstützt durch Sampling größere Datasets

AutoML nutzt nun Sampling für Datasets, die Speicherbeschränkungen überschreiten könnten, was die Ausführung mit größeren Datasets bei geringerem Risiko für Arbeitsspeicherfehler ermöglicht. Ausführliche Informationen finden Sie unter Stichprobenentnahme großer Datasets.

AutoML verarbeitet Spalten vorab dem semantischen Typ entsprechend.

AutoML erkennt bestimmte Spalten mit einem semantischen Typ, der sich von ihrem Spark- oder Pandas-Datentyp unterscheidet. AutoML konvertiert dann Datenvorverarbeitungsschritte und wendet sie dem erkannten semantischen Typ entsprechend an. AutoML führt hierbei die folgenden Konvertierungen aus:

  • Zeichenfolgen- und Integer-Spalten, die Datums- oder Zeitstempeldaten darstellen, werden in einen Zeitstempeltyp konvertiert.
  • Zeichenfolgenspalten, die numerische Daten darstellen, werden in einen numerischen Typ konvertiert.

Verbesserungen an von autoML generierten Notebooks

Die Vorverarbeitungsschritte für Datums- und Zeitstempelspalten sind jetzt in das databricks-automl-runtime-Paket integriert, was die durch AutoML-Training generierten Notebooks vereinfacht. databricks-automl-runtime ist in Databricks Runtime 9.1 LTS ML und höher enthalten und auch auf PyPl verfügbar.

Featurespeicher

Die folgenden Verbesserungen sind in Databricks Runtime 9.1 LTS ML und höher verfügbar.

  • Wenn Sie ein TrainingSet erstellen, können Sie jetzt label=None so festlegen, dass nicht überwachte Lernanwendungen unterstützt werden.
  • Sie können jetzt mehr als ein Feature in einem einzelnen FeatureLookup angeben.
  • Sie können jetzt einen benutzerdefinierten Pfad für Featuretabellen angeben. Verwenden Sie den path-Parameter in create_feature_table(). Der Standardwert ist der Speicherort der Datenbank.
  • Neue unterstützte PySpark-Datentypen: ArrayType und ShortType.

Mlflow

Die folgenden Verbesserungen sind ab Mlflow, Version 1.20.2, verfügbar, die in Databricks Runtime 9.1 LTS ML enthalten ist.

  • Die automatische Protokollierung für scikit-learn zeichnet jetzt nach dem Training Metriken auf, wenn eine scikit-learn-Auswertungs-API wie beispielsweise sklearn.metrics.mean_squared_error aufgerufen wird.
  • Die automatische Protokollierung für PySpark ML zeichnet jetzt nach dem Training Metriken, wenn eine Modellauswertungs-API wie beispielsweise Evaluator.evaluate() aufgerufen wird.
  • mlflow.*.log_model und mlflow.*.save_model verfügen nun über pip_requirements- und extra_pip_requirements-Argumente, sodass Sie die pip-Anforderungen des Modells für Protokollierung und Speicherung direkt angeben können.
  • mlflow.*.log_model und mlflow.*.save_model leiten jetzt automatisch die pip-Anforderungen des Modells ab, um entsprechend der aktuellen Softwareumgebung zu protokollieren oder zu speichern.
  • stdMetrics-Einträge werden jetzt während automatischem PySpark CrossValidator-Autologging als Trainingsmetriken aufgezeichnet.
  • PyTorch Lightning-Autologging unterstützt jetzt die verteilte Ausführung.

Automatische Databricks-Protokollierung (Public Preview)

Das Public Preview für die automatische Databricks-Protokollierung wurde auf neue Regionen ausgeweitet. Die automatische Databricks-Protokollierung ist eine Lösung ohne Programmieraufwand, die eine automatische Nachverfolgung von Experimenten für Machine Learning-Trainingssitzungen in Azure Databricks ermöglicht. Mithilfe der automatischen Databricks-Protokollierung werden Modellparameter, Metriken, Dateien und Informationen zur Herkunft automatisch erfasst, wenn Sie Modelle anhand einer Vielzahl beliebter Machine Learning-Bibliotheken trainieren. Trainingssitzungen werden als MLflow-Nachverfolgungsausführungen aufgezeichnet. Modelldateien werden auch nachverfolgt, sodass Sie sie problemlos in der MLflow-Modellregistrierung protokollieren und für die Bewertung in Echtzeit mithilfe der MLflow-Modellbereitstellung bereitstellen können.

Weitere Informationen zur automatischen Datenverarbeitung in Databricks finden Sie unter Automatische Databricks-Datenverarbeitung.

Wichtige Änderungen an der Databricks Runtime ML Python-Umgebung

Python-Pakete, die ein Upgrade erhalten haben

  • 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

Hinzugefügte Python-Pakete

  • databricks-automl-runtime 0.1.0

Systemumgebung

Die Systemumgebung in Databricks Runtime 9.1 LTS ML unterscheidet sich wie folgt von Databricks Runtime 9.1 LTS:

Bibliotheken

In den folgenden Abschnitten sind die Bibliotheken aufgelistet, die in Databricks Runtime 9.1 LTS ML enthalten sind und sich von den in Databricks Runtime 9.1 LTS enthaltenen Bibliotheken unterscheiden.

Inhalt dieses Abschnitts:

Bibliotheken der obersten Ebene

Databricks Runtime 9.1 LTS ML enthält die folgenden Bibliotheken der obersten Ebene:

Python-Bibliotheken

Databricks Runtime 9.1 LTS ML verwendet Virtualenv zur Verwaltung von Python-Paketen und enthält viele beliebte ML-Pakete.

Zusätzlich zu den Paketen, die in den folgenden Abschnitten aufgeführt sind, umfasst Databricks Runtime 9.1 LTS ML auch die folgenden Pakete:

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

Python-Bibliotheken in CPU-Clustern

Bibliothek Version Bibliothek Version Bibliothek Version
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 Klicken 7.1.2 cloudpickle 1.6.0
cmdstanpy 0.9.68 configparser 5.0.1 convertdate 2.3.2
cryptography 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
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
Notebook 6.3.0 numba 0.54.0 numpy 1.19.2
oauthlib 3.1.0 opt-einsum 3.3.0 Packen 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 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
seaborn 0.11.1 Send2Trash 1.5.0 setuptools 52.0.0
setuptools-git 1.2 shap 0.39.0 simplejson 3.17.2
sechs 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 Visionen 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-Bibliotheken für GPU-Cluster

Bibliothek Version Bibliothek Version Bibliothek Version
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 Klicken 7.1.2 cloudpickle 1.6.0
cmdstanpy 0.9.68 configparser 5.0.1 convertdate 2.3.2
cryptography 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
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
Notebook 6.3.0 numba 0.54.0 numpy 1.19.2
oauthlib 3.1.0 opt-einsum 3.3.0 Packen 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 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 seaborn 0.11.1
Send2Trash 1.5.0 setuptools 52.0.0 setuptools-git 1.2
shap 0.39.0 simplejson 3.17.2 sechs 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 Visionen 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-Pakete mit Python-Modulen

Spark-Paket Python-Modul Version
graphframes graphframes 0.8.1-db3-spark3.1

R-Bibliotheken

Die R-Bibliotheken sind mit den R-Bibliotheken in Databricks Runtime 9.1 LTS identisch.

Java- und Scala-Bibliotheken (Scala 2.12-Cluster)

Zusätzlich zu Java- und Scala-Bibliotheken in Databricks Runtime 9.1 LTS enthält Databricks Runtime 9.1 LTS ML die folgenden JAR-Dateien:

CPU-Cluster

Gruppen-ID Artefakt-ID Version
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-Cluster

Gruppen-ID Artefakt-ID Version
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