Databricks Runtime 9.1 LTS per Machine Learning
Databricks ha rilasciato questa immagine e l'ha dichiarata Long Term Support (LTS) nel settembre 2021.
Databricks Runtime 9.1 LTS per Machine Learning offre un ambiente pronto per l'apprendimento automatico e l'analisi scientifica dei dati basato su Databricks Runtime 9.1 LTS. Databricks Runtime ML contiene molte librerie di Machine Learning più diffuse, tra cui TensorFlow, PyTorch e XGBoost. Databricks Runtime ML include AutoML, uno strumento per eseguire automaticamente il training delle pipeline di Machine Learning. Databricks Runtime ML supporta anche il training di Deep Learning distribuito usando Horovod.
Nota
LTS indica che questa versione è supportata a lungo termine. Vedere Ciclo di vita della versione LTS di Databricks Runtime.
Per altre informazioni, incluse le istruzioni per la creazione di un cluster Databricks Runtime ML, vedere Intelligenza artificiale e Machine Learning in Databricks.
Miglioramenti e nuove funzionalità
AutoML
I miglioramenti seguenti sono disponibili in Databricks Runtime 9.1 LTS ML e versioni successive.
AutoML supporta set di dati di dimensioni maggiori eseguendo il campionamento
AutoML ora esempi di set di dati che potrebbero superare i vincoli di memoria, consentendo l'esecuzione su set di dati di dimensioni maggiori con un minor rischio di errori di memoria insufficiente. Per informazioni dettagliate, vedere Campionamento di set di dati di grandi dimensioni.
AutoML pre-elabora le colonne in base al tipo semantico
AutoML rileva determinate colonne con un tipo semantico diverso dal tipo di dati Spark o pandas. AutoML converte e applica quindi i passaggi di pre-elaborazione dei dati in base al tipo semantico rilevato. In particolare, AutoML esegue le conversioni seguenti:
- Le colonne stringa e integer che rappresentano i dati di data o timestamp vengono convertite in un tipo timestamp.
- Le colonne stringa che rappresentano dati numerici vengono convertite in un tipo numerico.
Miglioramenti ai notebook generati da AutoML
I passaggi di pre-elaborazione per le colonne di data e timestamp sono ora incorporati nel databricks-automl-runtime
pacchetto, semplificando i notebook generati dal training AutoML. databricks-automl-runtime
è incluso in Databricks Runtime 9.1 LTS ML e versioni successive ed è disponibile anche in PyPI.
Archivio funzionalità
I miglioramenti seguenti sono disponibili in Databricks Runtime 9.1 LTS ML e versioni successive.
- Quando si crea un oggetto TrainingSet, è ora possibile impostare
label=None
per supportare applicazioni di apprendimento non supervisionate. - È ora possibile specificare più di una funzionalità in un singolo
FeatureLookup
oggetto . - È ora possibile specificare un percorso personalizzato per le tabelle delle funzionalità. Usare il
path
parametro increate_feature_table()
. Il valore predefinito è il percorso del database. - Nuovi tipi di dati PySpark supportati: ArrayType e ShortType.
Mlflow
I miglioramenti seguenti sono disponibili a partire da Mlflow versione 1.20.2, inclusa in Databricks Runtime 9.1 LTS ML.
- L'assegnazione automatica per scikit-learn registra ora le metriche post-training ogni volta che viene chiamata un'API di valutazione scikit-learn, ad esempio
sklearn.metrics.mean_squared_error
, . - L'assegnazione automatica per PySpark ML registra ora le metriche post-training ogni volta che viene chiamata un'API di valutazione del modello, ad esempio
Evaluator.evaluate()
, . mlflow.*.log_model
emlflow.*.save_model
ora hannopip_requirements
argomenti eextra_pip_requirements
in modo che sia possibile specificare direttamente i requisiti pip del modello per registrare o salvare.mlflow.*.log_model
emlflow.*.save_model
ora dedurre automaticamente i requisiti pip del modello per registrare o salvare in base all'ambiente software corrente.stdMetrics
Le voci vengono ora registrate come metriche di training durante l'assegnazione automatica di Tag CrossValidator di PySpark.- PyTorch Lightning supporta ora l'esecuzione distribuita.
Assegnazione automatica di Databricks (anteprima pubblica)
Databricks Autologging Public Preview è stato espanso in nuove aree. Databricks Autologging è una soluzione senza codice che fornisce il rilevamento automatico degli esperimenti per le sessioni di training di Machine Learning in Azure Databricks. Con l'assegnazione automatica di Databricks, i parametri del modello, le metriche, i file e le informazioni di derivazione vengono acquisiti automaticamente quando si esegue il training dei modelli da un'ampia gamma di librerie di Machine Learning più diffuse. Le sessioni di training vengono registrate come esecuzioni di rilevamento MLflow. I file di modello vengono inoltre rilevati in modo da poterli registrare facilmente nel Registro modelli MLflow e distribuirli per l'assegnazione dei punteggi in tempo reale con MLflow Model Serving.
Per altre informazioni sull'assegnazione automatica di Databricks, vedere Databricks Autologging.For more information about Databricks Autologging, see Databricks Autologging.
Modifiche principali all'ambiente Python di Databricks Runtime
Pacchetti Python aggiornati
- automl 1.1.1 => 1.2.1
- feature_store 0.3.3 => 0.3.4.1
- festività 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
Pacchetti Python aggiunti
- databricks-automl-runtime 0.1.0
Ambiente di sistema
L'ambiente di sistema in Databricks Runtime 9.1 LTS ML differisce da Databricks Runtime 9.1 LTS come indicato di seguito:
- DBUtils: Databricks Runtime ML non include l'utilità libreria (dbutils.library) (legacy)..
Usare
%pip
invece i comandi. Vedere Librerie Python con ambito notebook. - Per i cluster GPU, Databricks Runtime ML include le librerie GPU NVIDIA seguenti:
- CUDA 11.0
- cuDNN 8.1.0.77
- NCCL 2.10.3
- TensorRT 7.2.2
Librerie
Le sezioni seguenti elencano le librerie incluse in Databricks Runtime 9.1 LTS ML che differiscono da quelle incluse in Databricks Runtime 9.1 LTS.
Contenuto della sezione:
Librerie di livello superiore
Databricks Runtime 9.1 LTS ML include le librerie di livello superiore seguenti:
- AutoML
- GraphFrames
- Horovod e HorovodRunner
- MLflow
- PyTorch
- spark-tensorflow-connector
- TensorFlow
- TensorBoard
Librerie Python
Databricks Runtime 9.1 LTS ML usa Virtualenv per la gestione dei pacchetti Python e include molti pacchetti di Machine Learning più diffusi.
Oltre ai pacchetti specificati nelle sezioni seguenti, Databricks Runtime 9.1 LTS ML include anche i pacchetti seguenti:
- hyperopt 0.2.5.db2
- 2.2.0_db3 sparkdl
- feature_store 0.3.4.1
- automl 1.2.1
Librerie Python nei cluster CPU
Libreria | Versione | Libreria | Versione | Libreria | Versione |
---|---|---|---|---|---|
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 | Clic | 7.1.2 | cloudpickle | 1.6.0 |
cmdstanpy | 0.9.68 | configparser | 5.0.1 | convertdate | 2.3.2 |
Crittografia | 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 | informazioni sulla distribuzione | 0.23ubuntu1 |
entrypoints | 0,3 | ephem | 4.0.0.2 | facet-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 |
festività | 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 | Pre-elaborazione keras | 1.1.2 |
kiwisolver | 1.3.1 | koalas | 1.8.1 | coreano-lunare-calendario | 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 | creazione del pacchetto | 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 |
Profeta | 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 | pirsistente | 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 |
sei | 1.15.0 | filtro dei dati | 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 | Torcia | 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 | aggiornamenti automatici | 0,1 |
urllib3 | 1.25.11 | virtualenv | 20.4.1 | Visioni | 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 |
Librerie Python nei cluster GPU
Libreria | Versione | Libreria | Versione | Libreria | Versione |
---|---|---|---|---|---|
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 | Clic | 7.1.2 | cloudpickle | 1.6.0 |
cmdstanpy | 0.9.68 | configparser | 5.0.1 | convertdate | 2.3.2 |
Crittografia | 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 | informazioni sulla distribuzione | 0.23ubuntu1 |
entrypoints | 0,3 | ephem | 4.0.0.2 | facet-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 |
festività | 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 | Pre-elaborazione keras | 1.1.2 |
kiwisolver | 1.3.1 | koalas | 1.8.1 | coreano-lunare-calendario | 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 | creazione del pacchetto | 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 | Profeta | 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 |
pirsistente | 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 | sei | 1.15.0 |
filtro dei dati | 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 |
Torcia | 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 | aggiornamenti automatici | 0,1 | urllib3 | 1.25.11 |
virtualenv | 20.4.1 | Visioni | 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 |
Pacchetti Spark contenenti moduli Python
Pacchetto Spark | Modulo Python | Versione |
---|---|---|
grafici | grafici | 0.8.1-db3-spark3.1 |
Librerie R
Le librerie R sono identiche alle librerie R in Databricks Runtime 9.1 LTS.
Librerie Java e Scala (cluster Scala 2.12)
Oltre alle librerie Java e Scala in Databricks Runtime 9.1 LTS, Databricks Runtime 9.1 LTS ML contiene i file JAR seguenti:
Cluster CPU
ID gruppo | ID artefatto | Versione |
---|---|---|
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 |
Cluster GPU
ID gruppo | ID artefatto | Versione |
---|---|---|
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 |