適用於 ML 的 Databricks Runtime 8.0 (不支援)
Databricks 於 2021 年 3 月發行了這一映射。
Databricks Runtime 8.0 for 機器學習 會根據 Databricks Runtime 8.0 (不支援)提供機器學習和數據科學的現成環境。 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 (不支援) 版本資訊。
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 (不支援)。 如需已安裝 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 套件
- 大猩猩
- backports
系統環境
Databricks Runtime 8.0 ML 中的系統環境與 Databricks Runtime 8.0 不同,如下所示:
- DBUtils:D atabricks Runtime ML 不包含 連結庫公用程式 (dbutils.library) (legacy)。
請改用
%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 |