IniziaInizia gratis

Creare una classe Python personalizzata

MLflow offre la possibilità di creare modelli personalizzati per supportare un'ampia varietà di casi d'uso. Per creare modelli personalizzati, MLflow consente agli utenti di creare una classe Python che eredita la classe mlflow.pyfunc.PythonModel. La classe PythonModel offre la possibilità di personalizzare la logica di inferenza e le dipendenze degli artefatti.

In questo esercizio creerai una nuova classe Python per un modello personalizzato che carica un modello specifico e poi decodifica le etichette dopo l'inferenza. Il modulo mlflow verrà importato.

Questo esercizio fa parte del corso

Introduzione a MLflow

Visualizza il corso

Istruzioni dell'esercizio

  • Crea una classe Python con il nome CustomPredict.
  • Definisce il metodo load_context() utilizzato per caricare gli artefatti all'interno di una classe personalizzata.
  • Definisce il metodo predict() per definire l'inferenza personalizzata.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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
Modifica ed esegui il codice