Machine Learning용 Databricks Runtime 9.1 LTS

Databricks는 이 이미지를 릴리스하고 2021년 9월 LTS(장기 지원)를 선언했습니다.

Machine Learning용 Databricks Runtime 9.1 LTS는 Databricks Runtime 9.1 LTS를 기반으로 하는 Machine Learning 및 데이터 과학을 위한 즉시 사용 가능한 환경을 제공합니다. Databricks Runtime ML에는 TensorFlow, PyTorch 및 XGBoost를 포함하여 널리 사용되는 많은 기계 학습 라이브러리가 포함되어 있습니다. Databricks Runtime ML에는 기계 학습 파이프라인을 자동으로 학습시키는 도구인 AutoML이 포함되어 있습니다. Databricks Runtime ML은 Horovod를 사용한 분산 딥 러닝 학습도 지원합니다.

참고 항목

LTS는 이 버전이 장기적인 지원을 받고 있다는 것을 의미합니다. Databricks Runtime LTS 버전 수명 주기를 참조 하세요.

Databricks 런타임 ML 클러스터를 만들기 위한 지침을 비롯한 자세한 내용은 Databricks의 AI 및 Machine Learning을 참조 하세요.

새로운 기능 및 향상 기능

AutoML

다음 개선 사항은 Databricks Runtime 9.1 LTS ML 이상에서 사용할 수 있습니다.

AutoML은 샘플링을 통해 더 큰 데이터집합을 지원합니다.

AutoML은 이제 메모리 제약 조건을 초과할 수 있는 데이터 세트를 샘플링하여 메모리 부족 오류 위험이 적은 더 큰 데이터 세트에서 실행할 수 있습니다. 자세한 내용은 대규모 데이터 세트 샘플링을 참조하세요.

AutoML은 의미 체계 형식을 기반으로 열을 미리 처리합니다.

AutoML은 Spark 또는 pandas 데이터 형식과 의미 체계 형식이 다른 특정 열을 검색합니다. 그런 다음 AutoML은 검색된 의미 체계 형식을 기반으로 데이터 미리 처리 단계를 변환하고 적용합니다. 특히 AutoML은 다음 변환을 수행합니다.

  • 날짜 또는 타임스탬프 데이터를 나타내는 문자열 및 정수 열은 타임스탬프 형식으로 변환됩니다.
  • 숫자 데이터를 나타내는 문자열 열은 숫자 형식으로 변환됩니다.

AutoML 생성 Notebooks 개선

날짜 및 타임스탬프 열에 대한 미리 처리 단계가 이제 databricks-automl-runtime 패키지에 통합되어 AutoML 학습으로 생성된 Notebooks를 단순화합니다. databricks-automl-runtime은 Databricks Runtime 9.1 LTS ML 이상에 포함되어 있으며 PyPI에서도 사용할 수 있습니다.

기능 저장소

다음 개선 사항은 Databricks Runtime 9.1 LTS ML 이상에서 사용할 수 있습니다.

  • TrainingSet을 만들 때 이제 label=None을 설정하여 감독되지 않은 학습 애플리케이션을 지원할 수 있습니다.
  • 이제 단일 FeatureLookup에 둘 이상의 기능을 지정할 수 있습니다.
  • 이제 피처 테이블에 대한 사용자 지정 경로를 지정할 수 있습니다. create_feature_table()에서 path 매개 변수를 사용합니다. 기본값은 데이터베이스 위치입니다.
  • 새로 지원되는 PySpark 데이터 형식: ArrayType 및 ShortType입니다.

MLflow

다음 개선 사항은 Databricks Runtime 9.1 LTS ML에 포함된 Mlflow 버전 1.20.2부터 사용할 수 있습니다.

  • scikit-learn에 대한 자동 로깅은 이제 sklearn.metrics.mean_squared_error와 같은 scikit-learn 평가 API가 호출될 때마다 학습 후 메트릭을 기록합니다.
  • PySpark ML용 자동 로깅은 이제 Evaluator.evaluate()과 같은 모델 평가 API가 호출될 때마다 학습 후 메트릭을 기록합니다.
  • mlflow.*.log_modelmlflow.*.save_model에는 이제 pip_requirementsextra_pip_requirements 인수가 있으므로 기록하거나 저장할 모델의 pip 요구 사항을 직접 지정할 수 있습니다.
  • 이제 mlflow.*.log_modelmlflow.*.save_model은 현재 소프트웨어 환경을 기반으로 로깅하거나 저장할 모델의 pip 요구 사항을 자동으로 유추합니다.
  • 이제 stdMetrics 항목이 PySpark CrossValidator 자동 로깅 중에 학습 메트릭으로 기록됩니다.
  • 이제 PyTorch Lightning 자동 로깅이 분산 실행을 지원합니다.

Databricks 자동 로깅(공개 미리 보기)

Databricks 자동 로깅 공개 미리 보기가 새 지역으로 확장되었습니다. Databricks 자동 로깅은 Azure Databricks에서 기계 학습 교육 세션에 대한 자동 실험 추적을 제공하는 코드 없는 솔루션입니다. Databricks 자동 로깅을 사용하면 널리 사용되는 다양한 기계 학습 라이브러리에서 모델을 학습할 때 모델 매개 변수, 메트릭, 파일 및 계보 정보가 자동으로 캡처됩니다. 학습 세션은 MLflow 추적 실행으로 기록됩니다. 모델 파일도 추적되므로 MLflow 모델 레지스트리에 쉽게 로그하고 MLflow 모델 서비스로 실시간 채점을 위해 배포할 수 있습니다.

Databricks 자동 로깅에 대한 자세한 내용은 Databricks 자동 로깅을 참조하세요.

Databricks Runtime ML Python 환경의 주요 변경 내용

업그레이드된 Python 패키지

  • automl 1.1.1 => 1.2.1
  • feature_store 0.3.3 => 0.3.4.1
  • holidays 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

추가된 Python 패키지

  • databricks-automl-runtime 0.1.0

시스템 환경

Databricks Runtime 9.1 LTS ML의 시스템 환경은 다음과 같이 Databricks Runtime 9.1 LTS와 다릅니다.

  • DBUtils: Databricks Runtime ML에는 라이브러리 유틸리티(dbutils.library)(레거시)가 포함되지 않습니다. 대신 %pip 명령을 사용합니다. Notebook 범위의 Python 라이브러리를 참조하세요.
  • GPU 클러스터의 경우 Databricks Runtime ML에는 다음 NVIDIA GPU 라이브러리가 포함됩니다.
    • CUDA 11.0
    • cuDNN 8.1.0.77
    • NCCL 2.10.3
    • TensorRT 7.2.2

라이브러리

다음 섹션에서는 Databricks Runtime 9.1 LTS에 포함된 라이브러리와 다른 Databricks Runtime 9.1 LTS ML에 포함된 라이브러리를 나열합니다.

이 섹션의 내용:

최상위 계층 라이브러리

Databricks Runtime 9.1 LTS ML에는 다음과 같은 최상위 라이브러리가 포함되어 있습니다.

Python 라이브러리

Databricks Runtime 9.1 LTS ML은 Python 패키지 관리에 Virtualenv를 사용하며 많은 자주 사용되는 ML 패키지를 포함합니다.

다음 섹션에 지정된 패키지 외에도 Databricks Runtime 9.1 LTS ML에는 다음 패키지도 포함됩니다.

  • hyperopt 0.2.5.db2
  • sparkdl 2.2.0_db3
  • feature_store 0.3.4.1
  • automl 1.2.1

CPU 클러스터의 Python 라이브러리

라이브러리 버전 라이브러리 버전 라이브러리 버전
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 에서 7.1.2 cloudpickle 1.6.0
cmdstanpy 0.9.68 configparser 5.0.1 convertdate 2.3.2
암호화 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 distro-info 0.23ubuntu1
entrypoints 0.3 ephem 4.0.0.2 facets-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
휴일 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 Keras-Preprocessing 1.1.2
kiwisolver 1.3.1 koalas 1.8.1 korean-lunar-calendar 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 패키징 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
prophet 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 pyrsistent 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
six 1.15.0 slicer 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 torch 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 unattended-upgrades 0.1
urllib3 1.25.11 virtualenv 20.4.1 visions 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

GPU 클러스터의 Python 라이브러리

라이브러리 버전 라이브러리 버전 라이브러리 버전
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 에서 7.1.2 cloudpickle 1.6.0
cmdstanpy 0.9.68 configparser 5.0.1 convertdate 2.3.2
암호화 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 distro-info 0.23ubuntu1
entrypoints 0.3 ephem 4.0.0.2 facets-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
휴일 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 Keras-Preprocessing 1.1.2
kiwisolver 1.3.1 koalas 1.8.1 korean-lunar-calendar 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 패키징 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 prophet 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
pyrsistent 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 six 1.15.0
slicer 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
torch 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 unattended-upgrades 0.1 urllib3 1.25.11
virtualenv 20.4.1 visions 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

Python 모듈이 포함된 Spark 패키지

Spark 패키지 Python 모듈 버전
graphframes graphframes 0.8.1-db3-spark3.1

R 라이브러리

R 라이브러리는 Databricks Runtime 9.1 LTS의 R 라이브러리와 동일합니다.

Java 및 Scala 라이브러리(Scala 2.12 클러스터)

Databricks Runtime 9.1 LTS의 Java 및 Scala 라이브러리 외에도 Databricks Runtime 9.1 LTS ML에는 다음 JAR이 포함되어 있습니다.

CPU 클러스터

그룹 ID 아티팩트 ID 버전
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

GPU 클러스터

그룹 ID 아티팩트 ID 버전
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