빠른 시작: Python
MLflow는 엔드투엔드 기계 학습 수명 주기를 관리하기 위한 오픈 소스 플랫폼입니다. MLflow는 메트릭(예: 모델 손실), 매개 변수(예: 학습률) 및 적합 모델을 로깅하기 위한 간단한 API를 제공하므로 학습 결과를 쉽게 분석하거나 나중에 모델을 배포할 수 있습니다.
이 섹션의 내용:
MLflow 설치
Machine Learning용 Databricks Runtime을 사용하는 경우 MLflow가 이미 설치되어 있습니다. 그렇지 않으면 PyPI에서 MLflow 패키지를 설치합니다.
학습 실행을 MLflow에 자동으로 기록
Databricks Runtime 10.4 LTS ML 이상을 사용하면 Databricks 자동 로깅 이 기본적으로 사용하도록 설정되며 인기 있는 다양한 기계 학습 라이브러리에서 모델을 학습할 때 모델 매개 변수, 메트릭, 파일 및 계보 정보를 자동으로 캡처합니다.
Databricks Runtime 9.1 LTS ML을 사용하여 MLflow는 많은 ML 프레임워크에서 작성된 학습 코드를 자동으로 기록하는 API를 제공합니다 mlflow.<framework>.autolog()
. 학습 코드를 실행하기 전에 이 API를 호출하여 모델별 메트릭, 매개 변수 및 모델 아티팩트를 기록할 수 있습니다.
TensorFlow
참고 항목
Keras 모델도 mlflow.tensorflow.autolog()
에서 지원됩니다.
# Also autoinstruments tf.keras
import mlflow.tensorflow
mlflow.tensorflow.autolog()
XGBoost
import mlflow.xgboost
mlflow.xgboost.autolog()
LightGBM
import mlflow.lightgbm
mlflow.lightgbm.autolog()
scikit-learn
import mlflow.sklearn
mlflow.sklearn.autolog()
PySpark
pyspark.ml
로 튜닝을 수행하면 메트릭과 모델이 MLflow에 자동으로 기록됩니다.
Apache Spark MLlib 및 자동화된 MLflow 추적을 참조하세요.
결과 보기
기계 학습 코드를 실행한 후 실험 실행 사이드바를 사용하여 결과를 볼 수 있습니다. 빠른 시작에 사용된 실험, 실행 및 Notebook 수정 버전을 보는 방법은 Notebook 실험 보기를 참조하세요.
추가 메트릭, 매개 변수 및 모델 추적
MLflow Tracking 로깅 API를 직접 호출하여 추가 정보를 로깅할 수 있습니다.
수치 메트릭
import mlflow
mlflow.log_metric("accuracy", 0.9)
학습 매개 변수
import mlflow
mlflow.log_param("learning_rate", 0.001)
모델
scikit-learn
import mlflow.sklearn
mlflow.sklearn.log_model(model, "myModel")
PySpark
import mlflow.spark
mlflow.spark.log_model(model, "myModel")
XGBoost
import mlflow.xgboost
mlflow.xgboost.log_model(model, "myModel")
TensorFlow
import mlflow.tensorflow
mlflow.tensorflow.log_model(model, "myModel")
Keras
import mlflow.keras
mlflow.keras.log_model(model, "myModel")
PyTorch
import mlflow.pytorch
mlflow.pytorch.log_model(model, "myModel")
SpaCy
import mlflow.spacy
mlflow.spacy.log_model(model, "myModel")
기타 아티팩트(파일)
import mlflow
mlflow.log_artifact("/tmp/my-file", "myArtifactPath")
예제 Notebook
참고 항목
Databricks Runtime 10.4 LTS ML 이상을 사용하는 경우 Databricks 자동 로깅 은 기본적으로 사용하도록 설정되며 이러한 예제 Notebook의 코드는 필요하지 않습니다. 이 섹션의 예제 Notebook은 Databricks Runtime 9.1 LTS ML에서 사용하도록 설계되었습니다.
Python에서 MLflow 추적 사용을 시작하는 권장 방법은 MLflow autolog()
API를 사용하는 것입니다. MLflow의 자동 로깅 기능을 사용하면 단일 코드 줄로 결과 모델, 모델 만들기에 사용된 매개 변수 및 모델 점수를 자동으로 기록합니다. 다음 Notebook은 자동 로깅을 사용하여 실행을 설정하는 방법을 보여 줍니다.
MLflow 자동 로깅 빠른 시작 Python Notebook
각 학습 실행에 대해 기록된 메트릭에 대한 더 많은 제어가 필요하거나 테이블 또는 플롯과 같은 추가 아티팩트를 기록하려는 경우 다음 Notebook에 설명된 MLflow 로깅 API 함수를 사용할 수 있습니다.