맞춤형 Python 클래스 만들기
MLflow는 다양한 활용 사례를 지원할 수 있도록 커스텀 모델을 만드는 방법을 제공합니다. 커스텀 모델을 만들기 위해, MLflow는 사용자가 mlflow.pyfunc.PythonModel 클래스를 상속하는 Python 클래스를 정의할 수 있게 해요. PythonModel 클래스는 사용자 정의 추론 로직과 아티팩트 의존성을 위한 메서드를 제공하여 커스터마이징을 지원합니다.
이 연습 문제에서는 특정 모델을 로드한 뒤, 추론 결과의 레이블을 디코딩하는 커스텀 모델용 새 Python 클래스를 만들게 됩니다. mlflow 모듈은 임포트되어 있어요.
이 연습은 강의의 일부입니다
MLflow 소개
연습 안내
CustomPredict라는 이름의 Python 클래스를 만드세요.- 커스텀 클래스에서 아티팩트를 로드하는 데 사용하는
load_context()메서드를 정의하세요. - 사용자 정의 추론을 구현할
predict()메서드를 정의하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Create Python Class
class ____(mlflow.pyfunc.PythonModel):
# Set method for loading model
def ____(self, context):
self.model = mlflow.sklearn.load_model("./lr_model/")
# Set method for custom inference
def ____(self, context, model_input):
predictions = self.model.predict(model_input)
decoded_predictions = []
for prediction in predictions:
if prediction == 0:
decoded_predictions.append("female")
else:
decoded_predictions.append("male")
return decoded_predictions