適用於 ML 的 Databricks Runtime 8.0 (EoS)
注意
針對此 Databricks Runtime 版本的支援已結束。 如需了解終止支援日期,請參閱終止支援歷程記錄。 如需所有支援的 Databricks Runtime 版本,請參閱 Databricks Runtime 版本資訊和相容性。
Databricks 於 2021 年 3 月發行此版本。
適用於機器學習的 Databricks Runtime 8.0 提供以 Databricks Runtime 8.0 (EoS) 為基礎的機器學習和資料科學現成環境。 Databricks Runtime ML 含有許多熱門的機器學習程式庫,包括 TensorFlow、PyTorch 以及 XGBoost。 其也支援使用 Horovod 的分散式深度學習訓練。
如需詳細資訊,包括建立 Databricks Runtime ML 叢集的指示,請參閱 Databricks 上的 AI 和機器學習。
新功能和重大變更
Databricks Runtime 8.0 ML 是以 Databricks Runtime 8.0 為基礎而建置。 如需 Databricks Runtime 8.0 新增功能的相關資訊,包括 Apache Spark MLlib 和 SparkR,請參閱 Databricks Runtime 8.0 (EoS) 版本資訊。
Conda 通道組態
2020 年 9 月,Anaconda Inc.更新其 anaconda.org 頻道的服務條款。 根據新的服務條款,如果您依賴 Anaconda 的套件和發行,您可能需要商業授權。 如需詳細資訊,請瀏覽 Anaconda Commercial Edition 常見問題。 由於這項變更,我們已移除 Databricks Runtime ML 8.0 中 Conda 套件管理員的預設通道組態。 若要使用 %conda
命令安裝或更新套件,您必須指定通道。 您使用任何 Anaconda 通道都會受到其服務條款的規範。
Databricks Runtime ML Python 環境的主要變更
如需 Databricks Runtime Python 環境的主要變更,請參閱 Databricks Runtime 8.0 (EoS)。 如需已安裝 Python 套件及其版本的完整清單,請參閱 Python 連結庫。
環境的重大變更
- 已移除預設 Conda 通道。
- 預設系統 Python 版本已從 3.7.6 更新為 3.8.5。
- 不再支援 TensorFlow 1.x。
已升級 Python 套件
- tensorboard 2.3.1 -> 2.4.1
- tensorflow 2.3.1 -> 2.4.0
- matplotlib 3.1.3 -> 3.2.2
- joblib 0.14.1 -> 0.17.0
- petastorm 0.9.7 -> 0.9.8
- cloudpickle 1.4.1 -> 1.6.0
- nltk 3.4.5 -> 3.5
- Anaconda 發行版的套件已從 2020.02 升級至 2020.11
已新增的 Python 套件
- shap: 0.37.0
Python 套件已被移除
- 大猩猩
- 回溯移植
系統環境
如下所示,Databricks Runtime 8.0 ML 中的系統環境與 Databricks Runtime 8.0 有所不同:
-
DBUtils:Databricks Runtime ML 不包括程式庫公用程式 (dbutils.library) (舊版)。
請改為使用
%pip
與%conda
命令。 請參閱適用於筆記本的 Python 程式庫。
圖書館
下列各節列出在 Databricks Runtime 8.0 ML 中包含但與 Databricks Runtime 8.0 中不同的程式庫。
本節內容:
頂層程式庫
Databricks Runtime 8.0 ML 包含下列頂層程式庫:
- GraphFrames
- Horovod 及 HorovodRunner
- MLflow
- PyTorch
- spark-tensorflow-connector
- TensorFlow
- TensorBoard
Python 程式庫
Databricks Runtime 8.0 ML 使用 Conda 進行 Python 套件管理,並包含許多熱門 ML 套件。
除了以下章節在 Conda 環境指定的套件外,Databricks Runtime 8.0 ML 還包括以下套件:
- hyperopt 0.2.5.db1
- sparkdl 2.1.0.db4
CPU 叢集上的 Python 程式庫
name: databricks-ml
channels:
- pytorch
- defaults
dependencies:
- _libgcc_mutex=0.1=main
- absl-py=0.11.0=pyhd3eb1b0_1
- aiohttp=3.6.3=py38h7b6447c_0
- asn1crypto=1.4.0=py_0
- astor=0.8.1=py38_0
- async-timeout=3.0.1=py38_0
- attrs=20.3.0=pyhd3eb1b0_0
- backcall=0.2.0=py_0
- bcrypt=3.2.0=py38h7b6447c_0
- blas=1.0=mkl
- blinker=1.4=py38_0
- boto3=1.16.7=pyhd3eb1b0_0
- botocore=1.19.7=pyhd3eb1b0_0
- brotlipy=0.7.0=py38h27cfd23_1003
- c-ares=1.17.1=h27cfd23_0
- ca-certificates=2021.4.13=h06a4308_1 # (updated from 2021.1.19 in May 26, 2021 maintenance update)
- cachetools=4.2.0=pyhd3eb1b0_0
- certifi=2020.12.5=py38h06a4308_0
- cffi=1.14.3=py38h261ae71_2
- chardet=3.0.4=py38h06a4308_1003
- click=7.1.2=pyhd3eb1b0_0
- cloudpickle=1.6.0=py_0
- configparser=5.0.1=py_0
- cpuonly=1.0=0
- cryptography=3.1.1=py38h1ba5d50_0
- cycler=0.10.0=py38_0
- cython=0.29.21=py38h2531618_0
- decorator=4.4.2=py_0
- dill=0.3.2=py_0
- docutils=0.15.2=py38_0
- entrypoints=0.3=py38_0
- flask=1.1.2=py_0
- freetype=2.10.4=h5ab3b9f_0
- future=0.18.2=py38_1
- gitdb=4.0.5=py_0
- gitpython=3.1.11=pyhd3eb1b0_1
- google-auth=1.22.1=py_0
- google-auth-oauthlib=0.4.2=pyhd3eb1b0_2
- google-pasta=0.2.0=py_0
- gunicorn=20.0.4=py38_0
- h5py=2.10.0=py38h7918eee_0
- hdf5=1.10.4=hb1b8bf9_0
- icu=58.2=he6710b0_3
- idna=2.10=pyhd3eb1b0_0
- importlib-metadata=2.0.0=py_1
- intel-openmp=2019.4=243
- ipykernel=5.3.4=py38h5ca1d4c_0
- ipython=7.19.0=py38hb070fc8_1
- ipython_genutils=0.2.0=pyhd3eb1b0_1
- isodate=0.6.0=py_1
- itsdangerous=1.1.0=py_0
- jedi=0.17.2=py38h06a4308_1
- jinja2=2.11.2=pyhd3eb1b0_0
- jmespath=0.10.0=py_0
- joblib=0.17.0=py_0
- jpeg=9b=h024ee3a_2
- jupyter_client=6.1.7=py_0
- jupyter_core=4.6.3=py38_0
- kiwisolver=1.3.0=py38h2531618_0
- krb5=1.17.1=h173b8e3_0
- lcms2=2.11=h396b838_0
- ld_impl_linux-64=2.33.1=h53a641e_7
- libedit=3.1.20191231=h14c3975_1
- libffi=3.3=he6710b0_2
- libgcc-ng=9.1.0=hdf63c60_0
- libgfortran-ng=7.3.0=hdf63c60_0
- libpng=1.6.37=hbc83047_0
- libpq=12.2=h20c2e04_0
- libprotobuf=3.13.0.1=hd408876_0
- libsodium=1.0.18=h7b6447c_0
- libstdcxx-ng=9.1.0=hdf63c60_0
- libtiff=4.1.0=h2733197_1
- lightgbm=3.1.1=py38h2531618_0
- lz4-c=1.9.2=heb0550a_3
- mako=1.1.3=py_0
- markdown=3.3.2=py38_0
- markupsafe=1.1.1=py38h7b6447c_0
- matplotlib-base=3.2.2=py38hef1b27d_0
- mkl=2019.4=243
- mkl-service=2.3.0=py38he904b0f_0
- mkl_fft=1.2.0=py38h23d657b_0
- mkl_random=1.1.0=py38h962f231_0
- more-itertools=8.6.0=pyhd3eb1b0_0
- multidict=4.7.6=py38h7b6447c_1
- ncurses=6.2=he6710b0_1
- networkx=2.5=py_0
- nltk=3.5=py_0
- numpy=1.19.2=py38h54aff64_0
- numpy-base=1.19.2=py38hfa32c7d_0
- oauthlib=3.1.0=py_0
- olefile=0.46=py_0
- openssl=1.1.1k=h27cfd23_0 # (updated from 1.1.1i in May 26, 2021 maintenance update)
- packaging=20.4=py_0
- pandas=1.1.3=py38he6710b0_0
- paramiko=2.7.2=py_0
- parso=0.7.0=py_0
- patsy=0.5.1=py38_0
- pexpect=4.8.0=pyhd3eb1b0_3
- pickleshare=0.7.5=pyhd3eb1b0_1003
- pillow=8.0.1=py38he98fc37_0
- pip=20.2.4=py38h06a4308_0
- plotly=4.14.2=pyhd3eb1b0_0
- prompt-toolkit=3.0.8=py_0
- prompt_toolkit=3.0.8=0
- protobuf=3.13.0.1=py38he6710b0_1
- psutil=5.7.2=py38h7b6447c_0
- psycopg2=2.8.5=py38h3c74f83_1
- ptyprocess=0.6.0=pyhd3eb1b0_2
- pyasn1=0.4.8=py_0
- pyasn1-modules=0.2.8=py_0
- pycparser=2.20=py_2
- pygments=2.7.2=pyhd3eb1b0_0
- pyjwt=1.7.1=py38_0
- pynacl=1.4.0=py38h7b6447c_1
- pyodbc=4.0.30=py38he6710b0_0
- pyopenssl=19.1.0=pyhd3eb1b0_1
- pyparsing=2.4.7=pyhd3eb1b0_0
- pysocks=1.7.1=py38h06a4308_0
- python=3.8.8=hdb3f193_4 # (updated from 3.8.5 in May 26, 2021 maintenance update)
- python-dateutil=2.8.1=py_0
- python-editor=1.0.4=py_0
- pytz=2020.1=py_0
- pyzmq=19.0.2=py38he6710b0_1
- readline=8.0=h7b6447c_0
- regex=2020.10.15=py38h7b6447c_0
- requests=2.24.0=py_0
- requests-oauthlib=1.3.0=py_0
- retrying=1.3.3=py_2
- rsa=4.7=pyhd3eb1b0_1
- s3transfer=0.3.4=pyhd3eb1b0_0
- scikit-learn=0.23.2=py38h0573a6f_0
- scipy=1.5.2=py38h0b6359f_0
- setuptools=50.3.1=py38h06a4308_1
- simplejson=3.17.2=py38h7b6447c_0
- six=1.15.0=py38h06a4308_0
- smmap=3.0.4=py_0
- sqlite=3.33.0=h62c20be_0
- sqlparse=0.4.1=py_0
- statsmodels=0.12.0=py38h7b6447c_0
- tabulate=0.8.7=py38_0
- threadpoolctl=2.1.0=pyh5ca1d4c_0
- tk=8.6.10=hbc83047_0
- tornado=6.0.4=py38h7b6447c_1
- tqdm=4.50.2=py_0
- traitlets=5.0.5=py_0
- typing_extensions=3.7.4.3=py_0
- unixodbc=2.3.9=h7b6447c_0
- urllib3=1.25.11=py_0
- wcwidth=0.2.5=py_0
- websocket-client=0.57.0=py38_2
- werkzeug=1.0.1=py_0
- wheel=0.35.1=pyhd3eb1b0_0
- wrapt=1.12.1=py38h7b6447c_1
- xz=5.2.5=h7b6447c_0
- yarl=1.6.3=py38h27cfd23_0
- zeromq=4.3.3=he6710b0_3
- zipp=3.4.0=pyhd3eb1b0_0
- zlib=1.2.11=h7b6447c_3
- zstd=1.4.5=h9ceee32_0
- pip:
- astunparse==1.6.3
- azure-core==1.10.0
- azure-storage-blob==12.7.0
- databricks-cli==0.14.1
- diskcache==5.1.0
- docker==4.4.1
- flatbuffers==1.12
- gast==0.3.3
- grpcio==1.32.0
- horovod==0.21.1
- joblibspark==0.3.0
- keras-preprocessing==1.1.2
- koalas==1.5.0
- llvmlite==0.35.0
- mleap==0.16.1
- mlflow==1.13.1
- msrest==0.6.19
- numba==0.52.0
- opt-einsum==3.3.0
- petastorm==0.9.8
- pyarrow==1.0.1
- pyyaml==5.4
- querystring-parser==1.2.4
- seaborn==0.10.0
- shap==0.37.0
- slicer==0.0.3
- spark-tensorflow-distributor==0.1.0
- tensorboard==2.4.1
- tensorboard-plugin-wit==1.8.0
- tensorflow-cpu==2.4.0
- tensorflow-estimator==2.4.0
- termcolor==1.1.0
- torch==1.7.1
- torchvision==0.8.2
- xgboost==1.3.1
prefix: /databricks/conda/envs/databricks-ml
包含 Python 模組的 Spark 套件
Spark 套件 | Python 模組 | 版本 |
---|---|---|
graphframes | graphframes | 0.8.1-db2-spark3.1 |
R 程式庫
R 程式庫與 Databricks Runtime 8.0 中的 R 程式庫相同。
Java 和 Scala 程式庫 (Scala 2.12 叢集)
除了 Databricks Runtime 8.0 中的 Java 和 Scala 程式庫之外,Databricks Runtime 8.0 ML 還包含下列 JAR:
CPU 叢集
群組識別碼 | 成品識別碼 | 版本 |
---|---|---|
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.3.1 |
ml.dmlc | xgboost4j_2.12 | 1.3.1 |
org.graphframes | graphframes_2.12 | 0.8.1-db2-spark3.1 |
org.mlflow | mlflow-client | 1.13.1 |
org.mlflow | mlflow-spark | 1.13.1 |
org.scala-lang.modules | scala-java8-compat_2.12 | 0.8.0 |
org.tensorflow | spark-tensorflow-connector_2.12 | 1.15.0 |