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 Runtime ML 클러스터 만들기 지침을 포함한 자세한 내용은 Databricks의 AI 및 기계 학습을 참조하세요.
팁
지원 종료(EoS)에 도달한 Databricks Runtime 버전에 대한 릴리스 정보를 확인하려면 지원 종료 Databricks Runtime 릴리스 정보를 참조하세요. EoS Databricks Runtime 버전은 폐기되었으며 업데이트되지 않을 수 있습니다.
새로운 기능 및 향상 기능
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_model
및mlflow.*.save_model
에는 이제pip_requirements
및extra_pip_requirements
인수가 있으므로 기록하거나 저장할 모델의 pip 요구 사항을 직접 지정할 수 있습니다.- 이제
mlflow.*.log_model
및mlflow.*.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에는 다음과 같은 최상위 라이브러리가 포함되어 있습니다.
- AutoML
- GraphFrames
- Horovod 및 HorovodRunner
- MLflow
- PyTorch
- spark-tensorflow-connector
- Tensorflow
- TensorBoard
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 |
6 | 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 | 6 | 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 |