Databricks Runtime 10.1 dla uczenia maszynowego (nieobsługiwane)

Środowisko Databricks Runtime 10.1 for Machine Edukacja zapewnia gotowe do użycia środowisko do uczenia maszynowego i nauki o danych oparte na środowisku Databricks Runtime 10.1 (nieobsługiwane). Środowisko Databricks Runtime ML zawiera wiele popularnych bibliotek uczenia maszynowego, w tym TensorFlow, PyTorch i XGBoost. Obsługuje również trenowanie rozproszonego uczenia głębokiego przy użyciu struktury Horovod.

Aby uzyskać więcej informacji, w tym instrukcje dotyczące tworzenia klastra uczenia maszynowego usługi Databricks, zobacz AI and Machine Edukacja on Databricks (Sztuczna inteligencja i maszyna Edukacja w usłudze Databricks).

Nowe funkcje i ulepszenia

Środowisko Databricks Runtime 10.1 ML jest oparte na środowisku Databricks Runtime 10.1. Aby uzyskać informacje na temat nowości w środowisku Databricks Runtime 10.1, w tym apache Spark MLlib i SparkR, zobacz informacje o wersji środowiska Databricks Runtime 10.1 (nieobsługiwane).

Ulepszenia rozwiązania AutoML usługi Databricks

W środowisku Databricks Runtime 10.1 rozwiązanie Databricks AutoML obejmuje ulepszone wykrywanie typów semantycznych, nowe alerty dotyczące potencjalnych problemów z danymi podczas trenowania, nowe możliwości zapobiegania nadmiernemu dopasowaniu modeli oraz możliwość dzielenia wejściowego zestawu danych na zestawy trenowania, walidacji i testowania chronologicznie.

Dodatkowe wykrycia typów semantycznych

Rozwiązanie AutoML obsługuje teraz dodatkowe wykrywanie typów semantycznych:

  • Kolumny liczbowe zawierające etykiety kategorii są traktowane jako typ kategorii.
  • Kolumny ciągów zawierające tekst w języku angielskim są traktowane jako funkcja tekstowa.

Teraz możesz również dodać adnotacje, aby określić typ danych kolumny. Aby uzyskać szczegółowe informacje, zobacz Wykrywanie typu semantycznego.

Alerty podczas trenowania potencjalnych problemów z danymi

Rozwiązanie AutoML wykrywa teraz i generuje alerty dotyczące potencjalnych problemów z zestawem danych. Przykładowe alerty obejmują nieobsługiwane typy kolumn i kolumny o wysokiej kardynalności. Te alerty są wyświetlane na stronie eksperymentu na nowej karcie Alerty . Dodatkowe informacje o alertach znajdują się w notesie eksploracji danych. Aby uzyskać więcej informacji, zobacz Uruchamianie eksperymentu i monitorowanie wyników.

Zmniejszenie nadmiernego dopasowania modelu

Dwie nowe możliwości zmniejszają prawdopodobieństwo nadmiernego dopasowania modelu podczas korzystania z rozwiązania AutoML:

  • Rozwiązanie AutoML raportuje teraz metryki testowe w dodatkowych metrykach weryfikacji i trenowania.
  • Rozwiązanie AutoML używa teraz wczesnego zatrzymywania. Zatrzymuje trenowanie i dostrajanie modeli, jeśli metryka walidacji nie jest już ulepszana.

Podziel zestaw danych na zestawy trenowania/walidacji/testowania chronologicznie

W przypadku problemów klasyfikacji i regresji można podzielić zestaw danych na zestawy trenowania, walidacji i testowania chronologicznie. Aby uzyskać szczegółowe informacje, zobacz Dzielenie danych na zestawy train/validation/test.

Ulepszenia magazynu funkcji usługi Databricks

Magazyn funkcji usługi Databricks obsługuje teraz dodatkowe typy danych dla tabel funkcji: BinaryType, DecimalTypei MapType.

Przepływ uczenia maszynowego

Poniższe ulepszenia są dostępne od wersji 1.21.0 mlflow, która jest zawarta w środowisku Databricks Runtime 10.1 ML.

  • [Modele] Uaktualnij wariant modelu, fastai aby obsługiwać wersję fastai w wersji 2 (2.4.1 lub nowszej).
  • [Modele] Wprowadzenie do modelu mlflow.prophet dla modeli szeregów czasowych Proroka.
  • [Ocenianie] Napraw błąd wymuszania schematu, który niepoprawnie rzutuje ciągi podobne do daty/godziny do obiektów datetime.

Hyperopt

SparkTrials teraz obsługuje parametr dla parametru early_stopping_fnfmin. Za pomocą funkcji wczesnego zatrzymywania można określić warunki, gdy funkcja Hyperopt powinna zatrzymać dostrajanie hiperparametrów przed osiągnięciem maksymalnej liczby ocen. Na przykład można użyć tego parametru, aby zakończyć dostrajanie, jeśli funkcja celu nie będzie już maleć. Aby uzyskać szczegółowe informacje, zobacz fmin().

Istotne zmiany w środowisku języka Python środowiska Databricks Runtime ML

Uaktualnione pakiety języka Python

  • automl 1.3.1 => 1.4.1
  • feature_store 0.3.4 => 0.3.5
  • dni wolne 0.11.2 => 0.11.3.1
  • horovod 0.22.1 => 0.23.0
  • hyperopt 0.2.5.db2 => 0.2.5.db4
  • niezrównoważony-learn 0.8.0 => 0.8.1
  • lightgbm 3.1.1 => 3.3.0
  • mlflow 1.20.2 => 1.21.0
  • petastorm 0.11.2 => 0.11.3
  • plotly 5.1.0 => 5.3.0
  • pytorch 1.9.0 => 1.9.1
  • spacy 3.1.2 => 3.1.3
  • sparkdl 2.2.0_db3 => 2.2.0_db4
  • torchvision 0.10.0 => 0.10.1
  • transformatory 4.9.2 => 4.11.3

Dodane pakiety języka Python

  • fasttext => 0.9.2
  • tensorboard-plugin-profile => 2.5.0

Przestarzałe elementy

Zautomatyzowane śledzenie MLflow MLlib jest przestarzałe w klastrach z uruchomionym środowiskiem Databricks Runtime 10.1 ML lub nowszym. Zamiast tego użyj automatycznego rejestrowania uczenia maszynowego MLflow PySpark, wywołując metodę mlflow.pyspark.ml.autolog(). Automatyczne rejestrowanie jest domyślnie włączone w usłudze Databricks Autologging.

Środowisko systemu

Środowisko systemowe w środowisku Databricks Runtime 10.1 ML różni się od środowiska Databricks Runtime 10.1 w następujący sposób:

Biblioteki

W poniższych sekcjach wymieniono biblioteki zawarte w środowisku Databricks Runtime 10.1 ML, które różnią się od bibliotek zawartych w środowisku Databricks Runtime 10.1.

W tej sekcji:

Biblioteki najwyższego poziomu

Środowisko Databricks Runtime 10.1 ML obejmuje następujące biblioteki najwyższego poziomu:

Biblioteki języka Python

Środowisko Databricks Runtime 10.1 ML używa usługi Virtualenv do zarządzania pakietami języka Python i zawiera wiele popularnych pakietów uczenia maszynowego.

Oprócz pakietów określonych w poniższych sekcjach środowisko Databricks Runtime 10.1 ML zawiera również następujące pakiety:

  • hyperopt 0.2.5.db4
  • sparkdl 2.2.0-db4
  • feature_store 0.3.5
  • automl 1.4.0

Uwaga

Środowisko Databricks Runtime 10.1 ML zawiera bibliotekę scikit-learn w wersji 0.24 zamiast wersji 1.0 z powodu problemów z niezgodnością. Pakiet scikit-learn współdziała z wieloma innymi pakietami w środowisku Databricks Runtime 10.1 ML.

Możesz przeprowadzić uaktualnienie do biblioteki scikit-learn w wersji 1.0; jednak usługa Databricks nie obsługuje tej wersji.

Aby uaktualnić, użyj bibliotek o zakresie notesu. W notesie uruchom polecenie %pip install --upgrade "scikit-learn>=1.0,<1.1".

Alternatywą jest użycie tego skryptu inicjowania klastra:

#!/bin/bash

set -e

pip install --upgrade "scikit-learn>=1.0,<1.1"

Biblioteki języka Python w klastrach procesora CPU

Biblioteka Wersja Biblioteka Wersja Biblioteka Wersja
absl-py 0.11.0 Antergos Linux 2015.10 (rolling 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 blis 0.7.4
boto3 1.16.7 botocore 1.19.7 cachetools 4.2.4
Katalog 2.0.6 certifi 2020.12.5 cffi 1.14.5
chardet 4.0.0 Clang 5,0 kliknięcie 7.1.2
cloudpickle 1.6.0 cmdstanpy 0.9.68 configparser 5.0.1
konwertuj 2.3.2 Kryptografii 3.4.7 Cycler 0.10.0
cymem 2.0.5 Cython 0.29.23 databricks-automl-runtime 0.2.3
databricks-cli 0.14.3 dbus-python 1.2.16 Dekorator 5.0.6
defusedxml 0.7.1 Koperek 0.3.2 diskcache 5.2.1
distlib 0.3.3 dystrybucja informacji 0.23ubuntu1 punkty wejścia 0.3
efem 4.1 aspekty — omówienie 1.0.0 fasttext 0.9.2
filelock 3.0.12 Flask 1.1.2 flatbuffers 1.12
fsspec 0.9.0 Przyszłości 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 makaron google 0.2.0 grpcio 1.39.0
gunicorn 20.0.4 gviz-api 1.10.0 h5py 3.1.0
konwerter hidżri 2.2.2 Wakacje 0.11.3.1 horovod 0.23.0
htmlmin 0.1.12 przytulanieface-hub 0.0.19 Idna 2.10
ImageHash 4.2.1 niezrównoważona nauka 0.8.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 jegodangerous 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 Przetwarzanie wstępne protokołu Keras 1.1.2
kiwisolver 1.3.1 Koale 1.8.2 koreański kalendarz księżycowy 0.2.1
lightgbm 3.3.0 llvmlite 0.37.0 KsiężycowyCalendar 0.0.9
Mako 1.1.3 Znaczniki języka Markdown 3.3.3 Znaczniki Sejf 2.0.1
matplotlib 3.4.2 missingno 0.5.0 mistune 0.8.4
mleap 0.18.1 mlflow-skinny 1.21.0 multimethod 1.6
szmurhash 1.0.5 nbclient 0.5.3 nbconvert 6.0.7
nbformat 5.1.3 nest-asyncio 1.5.1 networkx 2,5
nltk 3.6.1 notes 6.3.0 numba 0.54.1
Numpy 1.19.2 oauthlib 3.1.0 opt-einsum 3.3.0
Opakowania 20.9 Pandas 1.2.4 Profilowanie biblioteki pandas 3.1.0
pandocfilters 1.4.3 paramiko 2.7.2 parso 0.7.0
pathy 0.6.0 Patsy 0.5.1 petastorm 0.11.3
pexpect 4.8.0 phik 0.12.0 pickleshare 0.7.5
Poduszkę 8.2.0 Pip 21.0.1 kreślenie 5.3.0
preshed 3.0.5 prometheus-client 0.10.1 prompt-toolkit 3.0.17
Proroka 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 pybind11 2.8.0
pycparser 2,20 pydantic 1.8.2 Pygments 2.8.1
PyGObject 3.36.0 PyMeeus 0.5.11 PyNaCl 1.4.0
pyodbc 4.0.30 pyparsing 2.4.7 pirstent 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
żądania 2.25.1 requests-oauthlib 1.3.0 requests-unixsocket 0.2.0
rsa 4.7.2 s3transfer 0.3.7 sacremoses 0.0.46
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 Sześć 1.15.0
Fragmentatora 0.0.7 smart-open 5.2.0 smmap 3.0.5
spacy 3.1.3 spacy-legacy 3.0.8 spark-tensorflow-distributor 1.0.0
sqlparse 0.4.1 srsly 2.4.1 ssh-import-id 5.10
statsmodels 0.12.2 tabulacji 0.8.7 splątane-up-in-unicode 0.1.0
Wytrzymałość 6.2.0 tablica tensorboard 2.6.0 tensorboard-data-server 0.6.1
tensorboard-plugin-profile 2.5.0 tensorboard-plugin-wit 1.8.0 tensorflow-cpu 2.6.0
tensorflow-estimator 2.6.0 termcolor 1.1.0 terminado 0.9.4
ścieżka testowa 0.4.4 cienki 8.0.9 threadpoolctl 2.1.0
tokenizatory 0.10.3 Palnika 1.9.1+ procesor torchvision 0.10.1+procesor
Tornado 6.1 tqdm 4.59.0 traitlety 5.0.5
Transformatory 4.11.3 typer 0.3.2 wpisywanie rozszerzeń 3.7.4.3
ujson 4.0.2 nienadzorowane uaktualnienia 0.1 urllib3 1.25.11
Virtualenv 20.4.1 Wizje 0.7.4 Wasabi 0.8.2
wcwidth 0.2.5 webencodings 0.5.1 websocket-client 0.57.0
Werkzeug 1.0.1 Koła 0.36.2 widgetsnbextension 3.5.1
zawijanie 1.12.1 xgboost 1.4.2 zipp 3.4.1

Biblioteki języka Python w klastrach gpu

Biblioteka Wersja Biblioteka Wersja Biblioteka Wersja
absl-py 0.11.0 Antergos Linux 2015.10 (rolling 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 blis 0.7.4
boto3 1.16.7 botocore 1.19.7 cachetools 4.2.4
Katalog 2.0.6 certifi 2020.12.5 cffi 1.14.5
chardet 4.0.0 Clang 5,0 kliknięcie 7.1.2
cloudpickle 1.6.0 cmdstanpy 0.9.68 configparser 5.0.1
konwertuj 2.3.2 Kryptografii 3.4.7 Cycler 0.10.0
cymem 2.0.5 Cython 0.29.23 databricks-automl-runtime 0.2.3
databricks-cli 0.14.3 dbus-python 1.2.16 Dekorator 5.0.6
defusedxml 0.7.1 Koperek 0.3.2 diskcache 5.2.1
distlib 0.3.3 dystrybucja informacji 0.23ubuntu1 punkty wejścia 0.3
efem 4.1 aspekty — omówienie 1.0.0 fasttext 0.9.2
filelock 3.0.12 Flask 1.1.2 flatbuffers 1.12
fsspec 0.9.0 Przyszłości 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 makaron google 0.2.0 grpcio 1.39.0
gunicorn 20.0.4 gviz-api 1.10.0 h5py 3.1.0
konwerter hidżri 2.2.2 Wakacje 0.11.3.1 horovod 0.23.0
htmlmin 0.1.12 przytulanieface-hub 0.0.19 Idna 2.10
ImageHash 4.2.1 niezrównoważona nauka 0.8.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 jegodangerous 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 Przetwarzanie wstępne protokołu Keras 1.1.2
kiwisolver 1.3.1 Koale 1.8.2 koreański kalendarz księżycowy 0.2.1
lightgbm 3.3.0 llvmlite 0.37.0 KsiężycowyCalendar 0.0.9
Mako 1.1.3 Znaczniki języka Markdown 3.3.3 Znaczniki Sejf 2.0.1
matplotlib 3.4.2 missingno 0.5.0 mistune 0.8.4
mleap 0.18.1 mlflow-skinny 1.21.0 multimethod 1.6
szmurhash 1.0.5 nbclient 0.5.3 nbconvert 6.0.7
nbformat 5.1.3 nest-asyncio 1.5.1 networkx 2,5
nltk 3.6.1 notes 6.3.0 numba 0.54.1
Numpy 1.19.2 oauthlib 3.1.0 opt-einsum 3.3.0
Opakowania 20.9 Pandas 1.2.4 Profilowanie biblioteki pandas 3.1.0
pandocfilters 1.4.3 paramiko 2.7.2 parso 0.7.0
pathy 0.6.0 Patsy 0.5.1 petastorm 0.11.3
pexpect 4.8.0 phik 0.12.0 pickleshare 0.7.5
Poduszkę 8.2.0 Pip 21.0.1 kreślenie 5.3.0
preshed 3.0.5 prompt-toolkit 3.0.17 Proroka 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 pybind11 2.8.1 pycparser 2,20
pydantic 1.8.2 Pygments 2.8.1 PyGObject 3.36.0
PyMeeus 0.5.11 PyNaCl 1.4.0 pyodbc 4.0.30
pyparsing 2.4.7 pirstent 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 żądania 2.25.1
requests-oauthlib 1.3.0 requests-unixsocket 0.2.0 rsa 4.7.2
s3transfer 0.3.7 sacremoses 0.0.46 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 Sześć 1.15.0 Fragmentatora 0.0.7
smart-open 5.2.0 smmap 3.0.5 spacy 3.1.3
spacy-legacy 3.0.8 spark-tensorflow-distributor 1.0.0 sqlparse 0.4.1
srsly 2.4.1 ssh-import-id 5.10 statsmodels 0.12.2
tabulacji 0.8.7 splątane-up-in-unicode 0.1.0 Wytrzymałość 6.2.0
tablica tensorboard 2.6.0 tensorboard-data-server 0.6.1 tensorboard-plugin-profile 2.5.0
tensorboard-plugin-wit 1.8.0 tensorflow 2.6.0 tensorflow-estimator 2.6.0
termcolor 1.1.0 terminado 0.9.4 ścieżka testowa 0.4.4
cienki 8.0.9 threadpoolctl 2.1.0 tokenizatory 0.10.3
Palnika 1.9.1+cu111 torchvision 0.10.1+cu111 Tornado 6.1
tqdm 4.59.0 traitlety 5.0.5 Transformatory 4.11.3
typer 0.3.2 wpisywanie rozszerzeń 3.7.4.3 ujson 4.0.2
nienadzorowane uaktualnienia 0.1 urllib3 1.25.11 Virtualenv 20.4.1
Wizje 0.7.4 Wasabi 0.8.2 wcwidth 0.2.5
webencodings 0.5.1 websocket-client 0.57.0 Werkzeug 1.0.1
Koła 0.36.2 widgetsnbextension 3.5.1 zawijanie 1.12.1
xgboost 1.4.2 zipp 3.4.1

Pakiety platformy Spark zawierające moduły języka Python

Pakiet Platformy Spark Moduł języka Python Wersja
ramki grafu ramki grafu 0.8.2-db1-spark3.2

Biblioteki języka R

Biblioteki języka R są identyczne z bibliotekami języka R w środowisku Databricks Runtime 10.1.

Biblioteki Java i Scala (klaster Scala 2.12)

Oprócz bibliotek Java i Scala w środowisku Databricks Runtime 10.1 środowisko Databricks Runtime 10.1 ML zawiera następujące dane JAR:

Klastry procesora CPU

Identyfikator grupy Identyfikator artefaktu Wersja
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-db6-spark3.2
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

Klastry procesora GPU

Identyfikator grupy Identyfikator artefaktu Wersja
com.typesafe.akka akka-actor_2.12 2.5.23
ml.combust.mleap mleap-databricks-runtime_2.12 0.18.1-23eb1ef
ml.dmlc xgboost4j-gpu_2.12 1.4.1
ml.dmlc xgboost4j-spark-gpu_2.12 1.4.1-spark3.2
org.graphframes graphframes_2.12 0.8.2-db1-spark3.2
org.mlflow mlflow-client 1.21.0
org.mlflow mlflow-spark 1.21.0
org.scala-lang.modules scala-java8-compat_2.12 0.8.0
org.tensorflow spark-tensorflow-connector_2.12 1.15.0