НачатьНачать бесплатно

Создание пользовательского класса Python

MLflow позволяет создавать пользовательские модели для поддержки самых разных сценариев использования. Для этого MLflow даёт возможность определить класс Python, который наследует класс mlflow.pyfunc.PythonModel. Класс PythonModel обеспечивает гибкость за счёт методов для пользовательской логики вывода и управления зависимостями от артефактов.

В этом упражнении вы создадите новый класс Python для пользовательской модели, которая загружает конкретную модель и декодирует метки после выполнения вывода. Модуль mlflow уже импортирован.

Это упражнение является частью курса

Введение в MLflow

Посмотреть курс

Инструкции к упражнению

  • Создайте класс Python с именем CustomPredict.
  • Определите метод 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
Редактировать и запускать код