AutoML이란?
AutoML은 최상의 알고리즘 및 하이퍼 매개 변수 구성을 자동으로 찾아 데이터 세트에 기계 학습을 적용하는 프로세스를 간소화합니다.
AutoML의 작동 방식
데이터 세트를 제공하고 기계 학습 문제의 유형을 지정한 다음 AutoML에서 다음을 수행합니다.
- 데이터를 정리하고 준비합니다.
- 여러 알고리즘에서 분산 모델 학습 및 하이퍼 매개 변수 튜닝을 오케스트레이션합니다.
- scikit-learn, xgboost, LightGBM, Prophet 및 ARIMA에서 오픈 소스 평가 알고리즘을 사용하여 최상의 모델을 찾습니다.
- 결과를 표시합니다. 또한 AutoML은 각 평가판에 대한 소스 코드 Notebook을 생성하므로 필요에 따라 코드를 검토, 재현 및 수정할 수 있습니다.
회귀를 위해 하위 코드 UI를 통해 AutoML 실험을 시작합니다.분류, 예측 또는 Python API.
요구 사항
Azure Databricks는 AutoML 일반 공급에 Databricks Runtime 10.4 LTS ML 이상을 권장합니다.
AutoML은
databricks-automl-runtime
AutoML 외부에서 유용한 구성 요소를 포함하고 AutoML 학습에서 생성된 Notebook을 간소화하는 데 도움이 되는 패키지에 따라 달라집니다.databricks-automl-runtime
은 PyPI에서 사용할 수 있습니다.Machine Learning용 Databricks Runtime에 미리 설치된 라이브러리 이외의 추가 라이브러리는 클러스터에 설치하면 안 됩니다.
- 기존 라이브러리 버전을 수정(제거, 업그레이드 또는 다운그레이드)하면 비호환성으로 인해 실행이 실패합니다.
작업 영역의 파일에 액세스하려면 AutoML 실험을 위해 네트워크 포트 1017 및 1021이 열려 있어야 합니다. 이러한 포트를 열거나 포트가 열려 있는지 확인하려면 클라우드 VPN 방화벽 구성 및 보안 그룹 규칙을 검토하거나 로컬 클라우드 관리자에게 문의하세요. 작업 영역 구성 및 배포에 대한 자세한 내용은 작업 영역 만들기를 참조하세요.
지원되는 컴퓨팅 액세스 모드에서 컴퓨팅 리소스를 사용합니다. 모든 컴퓨팅 액세스 모드에서 Unity 카탈로그에 액세스할 수 있는 것은 아닙니다.
컴퓨터 액세스 모드 AutoML 지원 Unity 카탈로그 지원 단일 사용자 지원됨(클러스터에 대해 지정된 단일 사용자여야 함) 지원 여부 공유 액세스 모드 지원되지 않음 지원되지 않음 공유된 격리 없음 지원 여부 지원되지 않음
AutoML 알고리즘
AutoML은 다음 표의 알고리즘을 기반으로 모델을 학습하고 평가합니다.
참고 항목
분류 및 회귀 모델의 경우 확률적 그라데이션 하강 알고리즘을 사용하는 의사 결정 트리, 임의 포리스트, 로지스틱 회귀 및 선형 회귀는 scikit-learn을 기반으로 합니다.
분류 모델 | 회귀 모델 | 예측 모델 |
---|---|---|
의사 결정 트리 | 의사 결정 트리 | Prophet |
임의 포리스트 | 임의 포리스트 | Auto-ARIMA(Databricks Runtime 10.3 ML 이상에서 사용 가능) |
로지스틱 회귀 | 확률론적 경사하강법을 사용한 선형 회귀 | |
XGBoost | XGBoost | |
LightGBM | LightGBM |
평가판 Notebook 생성
클래식 컴퓨팅 AutoML은 필요에 따라 코드를 검토, 재현 및 수정할 수 있도록 시험 뒤에 있는 소스 코드의 Notebook을 생성합니다.
실험을 예측하기 위해 AutoML에서 생성된 Notebook은 실험의 모든 평가판에 대해 작업 영역으로 자동으로 가져옵니다.
분류 및 회귀 실험의 경우 데이터 탐색을 위해 AutoML에서 생성된 Notebook과 실험에서 가장 적합한 평가판이 작업 영역으로 자동으로 가져옵니다. 다른 실험 시험용으로 생성된 Notebook은 작업 영역으로 자동 가져오는 대신 DBFS에 MLflow 아티팩트로 저장됩니다. 최상의 평가판 외에 모든 평가판의 경우 TrialInfo
Python API의 notebook_path
및 notebook_url
와 설정되지 않습니다. 이러한 Notebook을 사용해야 하는 경우 AutoML 실험 UI 또는 databricks.automl.import_notebook
Python API를 사용하여 수동으로 작업 영역으로 가져올 수 있습니다.
AutoML에서 생성된 데이터 탐색 Notebook 또는 최상의 평가판 Notebook만 사용하는 경우 AutoML 실험 UI의 원본 열에는 최상의 평가판을 위해 생성된 Notebook에 대한 링크가 포함됩니다.
AutoML 실험 UI에서 생성된 다른 Notebook을 사용하는 경우 작업 영역으로 자동으로 가져오지 않습니다. 각 MLflow 실행을 클릭하여 Notebook을 찾을 수 있습니다. IPython Notebook은 실행 페이지의 아티팩트 섹션에 저장됩니다. 작업 영역 관리자가 아티팩트 다운로드를 사용하도록 설정한 경우 이 Notebook을 다운로드하고 작업 영역으로 가져올 수 있습니다.
모델 설명성에 대한 SHAP(Shapley 값)
참고 항목
MLR 11.1 이하에서 데이터 세트에 datetime
열이 포함된 경우 SHAP 플롯이 생성되지 않습니다.
AutoML 회귀 및 분류 실행에서 생성된 Notebook에는 Shapley 값을 계산하는 코드가 포함됩니다. Shapley 값은 게임 이론을 기반으로 하며 모델 예측에 대한 각 기능의 중요도를 추정합니다.
AutoML Notebook은 SHAP 패키지를 사용하여 Shapley 값을 계산합니다. 이러한 계산은 메모리를 많이 사용하므로 계산이 기본적으로 수행되지 않습니다.
Shapley 값을 계산하고 표시하려면 다음을 수행합니다.
- AutoML에서 생성된 평가판 Notebook의 기능 중요도 섹션으로 이동합니다.
shap_enabled = True
을 설정합니다.- Notebook을 다시 실행합니다.