Udostępnij przez


Databricks Runtime 7.0 ML (EoS)

Uwaga

Obsługa tej wersji środowiska Databricks Runtime została zakończona. Aby uzyskać datę zakończenia pomocy technicznej, zobacz Historia zakończenia pomocy technicznej. Wszystkie obsługiwane wersje środowiska Databricks Runtime można znaleźć w temacie Databricks Runtime release notes versions and compatibility (Wersje i zgodność środowiska Databricks Runtime).

Usługa Databricks wydała tę wersję w czerwcu 2020 r.

Środowisko Databricks Runtime 7.0 for Machine Learning zapewnia gotowe do użycia środowisko do uczenia maszynowego i nauki o danych oparte na środowisku Databricks Runtime 7.0 (EoS). Ś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 za pomocą Horovod.

Aby uzyskać więcej informacji, w tym instrukcje dotyczące tworzenia klastra uczenia maszynowego usługi Databricks Runtime, zobacz Sztuczna inteligencja i uczenie maszynowe w usłudze Databricks.

Nowe funkcje i istotne zmiany

Środowisko Databricks Runtime 7.0 ML jest oparte na środowisku Databricks Runtime 7.0. Aby uzyskać informacje o nowościach w Databricks Runtime 7.0, w tym Apache Spark MLlib i SparkR, zobacz uwagi do wydania Databricks Runtime 7.0 (EoS).

Planowanie uwzględniające procesor GPU

Środowisko Databricks Runtime 7.0 ML obsługuje planowanie z obsługą GPU wprowadzone w Apache Spark 3.0. Usługa Azure Databricks automatycznie ją konfiguruje. Zobacz Planowanie GPU.

Istotne zmiany w środowisku języka Python uczenia maszynowego

W tej sekcji opisano główne zmiany w wstępnie zainstalowanym środowisku uczenia maszynowego w języku Python w porównaniu do środowiska Databricks Runtime 6.6 ML (EoS). Należy również przejrzeć główne zmiany w podstawowym środowisku języka Python w środowisku Databricks Runtime 7.0 (EoS). Aby uzyskać pełną listę zainstalowanych pakietów języka Python i ich wersji, zobacz Biblioteki języka Python.

Uaktualnione pakiety języka Python

  • tensorflow 1.15.0 -> 2.2.0
  • tensorboard 1.15.0 —> 2.2.2
  • pytorch 1.4.0 -> 1.5.0
  • xgboost 0.90 -> 1.1.1
  • sparkdl 1.6.0-db1 —> 2.1.0-db1
  • hyperopt 0.2.2.db1 —> 0.2.4.db1

Dodane pakiety języka Python

  • lightgbm: 2.3.0
  • nltk: 3.4.5
  • petastorm: 0.9.2
  • wykres: 4.5.2

Usunięte pakiety języka Python

  • argparse (biblioteka do analizy argumentów w Pythonie)
  • boto (użyj boto3 zamiast tego)
  • colorama
  • przestarzały
  • et-xmlfile
  • fusepy
  • html5lib
  • jdcal
  • keras (użyj tensorflow.keras zamiast tego)
  • keras-applications (użyj tensorflow.keras.applications zamiast tego)
  • llvmlite
  • lxml jest biblioteką do analizy XML i HTML.
  • nos
  • wyklucz nos
  • numba
  • openpyxl
  • pathlib2
  • warstwa
  • pymongo
  • singledispatch (pojedyncze wywołanie)
  • tensorboardX (użyj torch.utils.tensorboard zamiast tego)
  • virtualenv
  • kodowania webowe

Istotne zmiany w środowisku uczenia maszynowego w języku R

Środowisko Databricks Runtime 7.0 ML zawiera niezmodyfikowaną wersję oprogramowania RStudio Server Open Source w wersji 1.2.5033, dla której kod źródłowy można znaleźć w usłudze GitHub. Przeczytaj więcej na temat programu RStudio Server w usłudze Azure Databricks.

Zmiany w pakietach ML Spark, bibliotekach Java i Scala

Następujące pakiety są uaktualniane. Niektóre są uaktualniane do SNAPSHOT wersji zgodnych z platformą Apache Spark 3.0:

  • GraphFrames: 0.7.0-db1-spark2.4 -> 0.8.0-db2-spark3.0
  • spark-tensorflow-connector: 1.15.0 (Scala 2.11) —> 1.15.0 (Scala 2.12)
  • xgboost4j i xgboost4j-spark: 0.90 –> 1.0.0
  • mleap-databricks-runtime: 0.17.0-4882dc3 (SNAPSHOT)

Następujące pakiety są usuwane:

  • TensorFlow (Java)
  • TensorFrames
  • Potoki uczenia głębokiego dla platformy Apache Spark (narzędzie HorovodRunner jest dostępne w języku Python)

Dodano polecenia conda i pip do obsługi bibliotek Pythona w zakresie notesu (wersja publiczna - podgląd).

Począwszy od środowiska Databricks Runtime 7.0 ML, można użyć poleceń %pip i %conda do zarządzania bibliotekami języka Python zainstalowanymi w sesji notebooka. Możesz również użyć tych poleceń, aby utworzyć środowisko niestandardowe dla notatnika i odtworzyć to środowisko pomiędzy notatnikami. Aby aktywować tę funkcję, ustaw konfigurację Spark w ustawieniach klastra. Aby uzyskać więcej informacji, zobacz Biblioteki Pythona o zakresie notatnika.

Funkcje wycofane i nieobsługiwane

Środowisko Databricks Runtime 7.0 ML nie obsługuje kontroli dostępu do tabel. Jeśli potrzebujesz kontroli dostępu do tabel, zalecamy użycie środowiska Databricks Runtime 7.0.

Znane problemy

  • Jeśli rejestrujesz model MLlib w formacie mleap, gdy argument sample_input jest przekazywany do mlflow.spark.log_model, kończy się niepowodzeniem z błędem atrybutu AttributeError. Ten problem jest spowodowany zmianą interfejsu API na mleap. Aby obejść ten problem, przeprowadź uaktualnienie do wersji MLflow 1.9.0. MLflow 1.9.0 można zainstalować przy użyciu bibliotek Pythona specyficznych dla notesu.

Środowisko systemu

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

Biblioteki

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

W tej sekcji:

Biblioteki najwyższego poziomu

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

Biblioteki języka Python

Środowisko Databricks Runtime 7.0 ML używa narzędzia Conda do zarządzania pakietami języka Python i zawiera wiele popularnych pakietów uczenia maszynowego. W poniższej sekcji opisano środowisko Conda dla środowiska Databricks Runtime 7.0 ML.

Python na klastrach CPU

name: databricks-ml
channels:
  - pytorch
  - defaults
dependencies:
  - _libgcc_mutex=0.1=main
  - absl-py=0.9.0=py37_0
  - asn1crypto=1.3.0=py37_0
  - astor=0.8.0=py37_0
  - backcall=0.1.0=py37_0
  - backports=1.0=py_2
  - bcrypt=3.1.7=py37h7b6447c_1
  - blas=1.0=mkl
  - blinker=1.4=py37_0
  - boto3=1.12.0=py_0
  - botocore=1.15.0=py_0
  - c-ares=1.15.0=h7b6447c_1001
  - ca-certificates=2020.1.1=0
  - cachetools=4.1.0=py_1
  - certifi=2020.4.5.1=py37_0
  - cffi=1.14.0=py37h2e261b9_0
  - chardet=3.0.4=py37_1003
  - click=7.0=py37_0
  - cloudpickle=1.3.0=py_0
  - configparser=3.7.4=py37_0
  - cpuonly=1.0=0
  - cryptography=2.8=py37h1ba5d50_0
  - cycler=0.10.0=py37_0
  - cython=0.29.15=py37he6710b0_0
  - decorator=4.4.1=py_0
  - dill=0.3.1.1=py37_1
  - docutils=0.15.2=py37_0
  - entrypoints=0.3=py37_0
  - flask=1.1.1=py_1
  - freetype=2.9.1=h8a8886c_1
  - future=0.18.2=py37_1
  - gast=0.3.3=py_0
  - gitdb2=2.0.6=py_0
  - gitpython=3.0.5=py_0
  - google-auth=1.11.2=py_0
  - google-auth-oauthlib=0.4.1=py_2
  - google-pasta=0.2.0=py_0
  - grpcio=1.27.2=py37hf8bcb03_0
  - gunicorn=20.0.4=py37_0
  - h5py=2.10.0=py37h7918eee_0
  - hdf5=1.10.4=hb1b8bf9_0
  - icu=58.2=he6710b0_3
  - idna=2.8=py37_0
  - intel-openmp=2020.0=166
  - ipykernel=5.1.4=py37h39e3cac_0
  - ipython=7.12.0=py37h5ca1d4c_0
  - ipython_genutils=0.2.0=py37_0
  - itsdangerous=1.1.0=py37_0
  - jedi=0.14.1=py37_0
  - jinja2=2.11.1=py_0
  - jmespath=0.9.4=py_0
  - joblib=0.14.1=py_0
  - jpeg=9b=h024ee3a_2
  - jupyter_client=5.3.4=py37_0
  - jupyter_core=4.6.1=py37_0
  - kiwisolver=1.1.0=py37he6710b0_0
  - krb5=1.16.4=h173b8e3_0
  - ld_impl_linux-64=2.33.1=h53a641e_7
  - libedit=3.1.20181209=hc058e9b_0
  - libffi=3.2.1=hd88cf55_4
  - libgcc-ng=9.1.0=hdf63c60_0
  - libgfortran-ng=7.3.0=hdf63c60_0
  - libpng=1.6.37=hbc83047_0
  - libpq=11.2=h20c2e04_0
  - libprotobuf=3.11.4=hd408876_0
  - libsodium=1.0.16=h1bed415_0
  - libstdcxx-ng=9.1.0=hdf63c60_0
  - libtiff=4.1.0=h2733197_0
  - lightgbm=2.3.0=py37he6710b0_0
  - lz4-c=1.8.1.2=h14c3975_0
  - mako=1.1.2=py_0
  - markdown=3.1.1=py37_0
  - markupsafe=1.1.1=py37h7b6447c_0
  - matplotlib-base=3.1.3=py37hef1b27d_0
  - mkl=2020.0=166
  - mkl-service=2.3.0=py37he904b0f_0
  - mkl_fft=1.0.15=py37ha843d7b_0
  - mkl_random=1.1.0=py37hd6b4f25_0
  - ncurses=6.2=he6710b0_1
  - networkx=2.4=py_0
  - ninja=1.9.0=py37hfd86e86_0
  - nltk=3.4.5=py37_0
  - numpy=1.18.1=py37h4f9e942_0
  - numpy-base=1.18.1=py37hde5b4d6_1
  - oauthlib=3.1.0=py_0
  - olefile=0.46=py37_0
  - openssl=1.1.1g=h7b6447c_0
  - packaging=20.1=py_0
  - pandas=1.0.1=py37h0573a6f_0
  - paramiko=2.7.1=py_0
  - parso=0.5.2=py_0
  - patsy=0.5.1=py37_0
  - pexpect=4.8.0=py37_0
  - pickleshare=0.7.5=py37_0
  - pillow=7.0.0=py37hb39fc2d_0
  - pip=20.0.2=py37_3
  - plotly=4.5.2=py_0
  - prompt_toolkit=3.0.3=py_0
  - protobuf=3.11.4=py37he6710b0_0
  - psutil=5.6.7=py37h7b6447c_0
  - psycopg2=2.8.4=py37h1ba5d50_0
  - ptyprocess=0.6.0=py37_0
  - pyasn1=0.4.8=py_0
  - pyasn1-modules=0.2.7=py_0
  - pycparser=2.19=py37_0
  - pygments=2.5.2=py_0
  - pyjwt=1.7.1=py37_0
  - pynacl=1.3.0=py37h7b6447c_0
  - pyodbc=4.0.30=py37he6710b0_0
  - pyopenssl=19.1.0=py37_0
  - pyparsing=2.4.6=py_0
  - pysocks=1.7.1=py37_0
  - python=3.7.6=h0371630_2
  - python-dateutil=2.8.1=py_0
  - python-editor=1.0.4=py_0
  - pytorch=1.5.0=py3.7_cpu_0
  - pytz=2019.3=py_0
  - pyzmq=18.1.1=py37he6710b0_0
  - readline=7.0=h7b6447c_5
  - requests=2.22.0=py37_1
  - requests-oauthlib=1.3.0=py_0
  - retrying=1.3.3=py37_2
  - rsa=4.0=py_0
  - s3transfer=0.3.3=py37_0
  - scikit-learn=0.22.1=py37hd81dba3_0
  - scipy=1.4.1=py37h0b6359f_0
  - setuptools=45.2.0=py37_0
  - simplejson=3.17.0=py37h7b6447c_0
  - six=1.14.0=py37_0
  - smmap2=2.0.5=py37_0
  - sqlite=3.31.1=h62c20be_1
  - sqlparse=0.3.0=py_0
  - statsmodels=0.11.0=py37h7b6447c_0
  - tabulate=0.8.3=py37_0
  - tk=8.6.8=hbc83047_0
  - torchvision=0.6.0=py37_cpu
  - tornado=6.0.3=py37h7b6447c_3
  - tqdm=4.42.1=py_0
  - traitlets=4.3.3=py37_0
  - unixodbc=2.3.7=h14c3975_0
  - urllib3=1.25.8=py37_0
  - wcwidth=0.1.8=py_0
  - websocket-client=0.56.0=py37_0
  - werkzeug=1.0.0=py_0
  - wheel=0.34.2=py37_0
  - wrapt=1.11.2=py37h7b6447c_0
  - xz=5.2.4=h14c3975_4
  - zeromq=4.3.1=he6710b0_3
  - zlib=1.2.11=h7b6447c_3
  - zstd=1.3.7=h0b5b093_0
  - pip:
      - astunparse==1.6.3
      - databricks-cli==0.11.0
      - diskcache==4.1.0
      - docker==4.2.1
      - gorilla==0.3.0
      - horovod==0.19.1
      - hyperopt==0.2.4.db1
      - keras-preprocessing==1.1.2
      - mleap==0.16.0
      - mlflow==1.8.0
      - opt-einsum==3.2.1
      - petastorm==0.9.2
      - pyarrow==0.15.1
      - pyyaml==5.3.1
      - querystring-parser==1.2.4
      - seaborn==0.10.0
      - sparkdl==2.1.0-db1
      - tensorboard==2.2.2
      - tensorboard-plugin-wit==1.6.0.post3
      - tensorflow-cpu==2.2.0
      - tensorflow-estimator==2.2.0
      - termcolor==1.1.0
      - xgboost==1.1.1
prefix: /databricks/conda/envs/databricks-ml

Język Python w klastrach GPU

name: databricks-ml-gpu
channels:
  - pytorch
  - defaults
dependencies:
  - _libgcc_mutex=0.1=main
  - absl-py=0.9.0=py37_0
  - asn1crypto=1.3.0=py37_0
  - astor=0.8.0=py37_0
  - backcall=0.1.0=py37_0
  - backports=1.0=py_2
  - bcrypt=3.1.7=py37h7b6447c_1
  - blas=1.0=mkl
  - blinker=1.4=py37_0
  - boto3=1.12.0=py_0
  - botocore=1.15.0=py_0
  - c-ares=1.15.0=h7b6447c_1001
  - ca-certificates=2020.1.1=0
  - cachetools=4.1.0=py_1
  - certifi=2020.4.5.2=py37_0
  - cffi=1.14.0=py37h2e261b9_0
  - chardet=3.0.4=py37_1003
  - click=7.0=py37_0
  - cloudpickle=1.3.0=py_0
  - configparser=3.7.4=py37_0
  - cryptography=2.8=py37h1ba5d50_0
  - cudatoolkit=10.1.243=h6bb024c_0
  - cycler=0.10.0=py37_0
  - cython=0.29.15=py37he6710b0_0
  - decorator=4.4.1=py_0
  - dill=0.3.1.1=py37_1
  - docutils=0.15.2=py37_0
  - entrypoints=0.3=py37_0
  - flask=1.1.1=py_1
  - freetype=2.9.1=h8a8886c_1
  - future=0.18.2=py37_1
  - gast=0.3.3=py_0
  - gitdb2=2.0.6=py_0
  - gitpython=3.0.5=py_0
  - google-auth=1.11.2=py_0
  - google-auth-oauthlib=0.4.1=py_2
  - google-pasta=0.2.0=py_0
  - grpcio=1.27.2=py37hf8bcb03_0
  - gunicorn=20.0.4=py37_0
  - h5py=2.10.0=py37h7918eee_0
  - hdf5=1.10.4=hb1b8bf9_0
  - icu=58.2=he6710b0_3
  - idna=2.8=py37_0
  - intel-openmp=2020.0=166
  - ipykernel=5.1.4=py37h39e3cac_0
  - ipython=7.12.0=py37h5ca1d4c_0
  - ipython_genutils=0.2.0=py37_0
  - itsdangerous=1.1.0=py37_0
  - jedi=0.14.1=py37_0
  - jinja2=2.11.1=py_0
  - jmespath=0.9.4=py_0
  - joblib=0.14.1=py_0
  - jpeg=9b=h024ee3a_2
  - jupyter_client=5.3.4=py37_0
  - jupyter_core=4.6.1=py37_0
  - kiwisolver=1.1.0=py37he6710b0_0
  - krb5=1.16.4=h173b8e3_0
  - ld_impl_linux-64=2.33.1=h53a641e_7
  - libedit=3.1.20181209=hc058e9b_0
  - libffi=3.2.1=hd88cf55_4
  - libgcc-ng=9.1.0=hdf63c60_0
  - libgfortran-ng=7.3.0=hdf63c60_0
  - libpng=1.6.37=hbc83047_0
  - libpq=11.2=h20c2e04_0
  - libprotobuf=3.11.4=hd408876_0
  - libsodium=1.0.16=h1bed415_0
  - libstdcxx-ng=9.1.0=hdf63c60_0
  - libtiff=4.1.0=h2733197_0
  - lightgbm=2.3.0=py37he6710b0_0
  - lz4-c=1.8.1.2=h14c3975_0
  - mako=1.1.2=py_0
  - markdown=3.1.1=py37_0
  - markupsafe=1.1.1=py37h7b6447c_0
  - matplotlib-base=3.1.3=py37hef1b27d_0
  - mkl=2020.0=166
  - mkl-service=2.3.0=py37he904b0f_0
  - mkl_fft=1.0.15=py37ha843d7b_0
  - mkl_random=1.1.0=py37hd6b4f25_0
  - ncurses=6.2=he6710b0_1
  - networkx=2.4=py_0
  - ninja=1.9.0=py37hfd86e86_0
  - nltk=3.4.5=py37_0
  - numpy=1.18.1=py37h4f9e942_0
  - numpy-base=1.18.1=py37hde5b4d6_1
  - oauthlib=3.1.0=py_0
  - olefile=0.46=py37_0
  - openssl=1.1.1g=h7b6447c_0
  - packaging=20.1=py_0
  - pandas=1.0.1=py37h0573a6f_0
  - paramiko=2.7.1=py_0
  - parso=0.5.2=py_0
  - patsy=0.5.1=py37_0
  - pexpect=4.8.0=py37_0
  - pickleshare=0.7.5=py37_0
  - pillow=7.0.0=py37hb39fc2d_0
  - pip=20.0.2=py37_3
  - plotly=4.5.2=py_0
  - prompt_toolkit=3.0.3=py_0
  - protobuf=3.11.4=py37he6710b0_0
  - psutil=5.6.7=py37h7b6447c_0
  - psycopg2=2.8.4=py37h1ba5d50_0
  - ptyprocess=0.6.0=py37_0
  - pyasn1=0.4.8=py_0
  - pyasn1-modules=0.2.7=py_0
  - pycparser=2.19=py37_0
  - pygments=2.5.2=py_0
  - pyjwt=1.7.1=py37_0
  - pynacl=1.3.0=py37h7b6447c_0
  - pyodbc=4.0.30=py37he6710b0_0
  - pyopenssl=19.1.0=py37_0
  - pyparsing=2.4.6=py_0
  - pysocks=1.7.1=py37_0
  - python=3.7.6=h0371630_2
  - python-dateutil=2.8.1=py_0
  - python-editor=1.0.4=py_0
  - pytorch=1.5.0=py3.7_cuda10.1.243_cudnn7.6.3_0
  - pytz=2019.3=py_0
  - pyzmq=18.1.1=py37he6710b0_0
  - readline=7.0=h7b6447c_5
  - requests=2.22.0=py37_1
  - requests-oauthlib=1.3.0=py_0
  - retrying=1.3.3=py37_2
  - rsa=4.0=py_0
  - s3transfer=0.3.3=py37_0
  - scikit-learn=0.22.1=py37hd81dba3_0
  - scipy=1.4.1=py37h0b6359f_0
  - setuptools=45.2.0=py37_0
  - simplejson=3.17.0=py37h7b6447c_0
  - six=1.14.0=py37_0
  - smmap2=2.0.5=py37_0
  - sqlite=3.31.1=h62c20be_1
  - sqlparse=0.3.0=py_0
  - statsmodels=0.11.0=py37h7b6447c_0
  - tabulate=0.8.3=py37_0
  - tk=8.6.8=hbc83047_0
  - torchvision=0.6.0=py37_cu101
  - tornado=6.0.3=py37h7b6447c_3
  - tqdm=4.42.1=py_0
  - traitlets=4.3.3=py37_0
  - unixodbc=2.3.7=h14c3975_0
  - urllib3=1.25.8=py37_0
  - wcwidth=0.1.8=py_0
  - websocket-client=0.56.0=py37_0
  - werkzeug=1.0.0=py_0
  - wheel=0.34.2=py37_0
  - wrapt=1.11.2=py37h7b6447c_0
  - xz=5.2.4=h14c3975_4
  - zeromq=4.3.1=he6710b0_3
  - zlib=1.2.11=h7b6447c_3
  - zstd=1.3.7=h0b5b093_0
  - pip:
      - astunparse==1.6.3
      - databricks-cli==0.11.0
      - diskcache==4.1.0
      - docker==4.2.1
      - gorilla==0.3.0
      - horovod==0.19.1
      - hyperopt==0.2.4.db1
      - keras-preprocessing==1.1.2
      - mleap==0.16.0
      - mlflow==1.8.0
      - opt-einsum==3.2.1
      - petastorm==0.9.2
      - pyarrow==0.15.1
      - pyyaml==5.3.1
      - querystring-parser==1.2.4
      - seaborn==0.10.0
      - sparkdl==2.1.0-db1
      - tensorboard==2.2.2
      - tensorboard-plugin-wit==1.6.0.post3
      - tensorflow-estimator==2.2.0
      - tensorflow-gpu==2.2.0
      - termcolor==1.1.0
      - xgboost==1.1.1
prefix: /databricks/conda/envs/databricks-ml-gpu

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

Pakiet Spark Moduł języka Python Wersja
GraphFrames GraphFrames 0.8.0-db2-spark3.0

Biblioteki R

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

Biblioteki Java i Scala (klaster Scala 2.12)

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

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.0.0
ml.dmlc xgboost4j_2.12 1.0.0
org.mlflow mlflow-client 1.8.0
org.scala-lang.modules scala-java8-compat_2.12 0.8.0
org.tensorflow spark-tensorflow-connector_2.12 1.15.0