LoslegenKostenlos starten

Erstellen einer benutzerdefinierten Python-Klasse

MLflow bietet die Möglichkeit, benutzerdefinierte Modelle zu erstellen, um eine große Bandbreite an Anwendungsfällen zu unterstützen. Für benutzerdefinierte Modelle können Nutzerinnen und Nutzer eine Python-Klasse erstellen, die von der Klasse mlflow.pyfunc.PythonModel erbt. Die Klasse PythonModel erlaubt Anpassungen, indem sie Methoden für benutzerdefinierte Inferenzlogik und Artefakt-Abhängigkeiten bereitstellt.

In dieser Übung erstellst du eine neue Python-Klasse für ein benutzerdefiniertes Modell, das ein bestimmtes Modell lädt und nach der Inferenz Labels dekodiert. Das Modul mlflow wird importiert.

Diese Übung ist Teil des Kurses

<Kurs>Einführung in MLflow</Kurs>
Kurs ansehen

Übungsanweisungen

  • Erstelle eine Python-Klasse mit dem Namen CustomPredict.
  • Definiere die Methode load_context() zum Laden von Artefakten innerhalb einer benutzerdefinierten Klasse.
  • Definiere die Methode predict() für benutzerdefinierte Inferenz.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# 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
Code bearbeiten und ausführen