Crearea unei clase Python personalizate
MLflow oferă posibilitatea de a crea modele personalizate, pentru a suporta o gamă largă de cazuri de utilizare. În acest scop, MLflow permite crearea unei clase Python care moștenește clasa mlflow.pyfunc.PythonModel. Clasa PythonModel oferă flexibilitate prin metode dedicate logicii personalizate de inferență și dependențelor de artefacte.
În acest exercițiu, vei crea o nouă clasă Python pentru un model personalizat care încarcă un model specific și decodează etichetele după inferență. Modulul mlflow va fi deja importat.
Acest exercițiu face parte din cursul
Introducere în MLflow
Instrucțiuni pentru exercițiu
- Creează o clasă Python cu numele
CustomPredict. - Definește metoda
load_context(), utilizată pentru încărcarea artefactelor în cadrul clasei personalizate. - Definește metoda
predict()pentru a specifica logica personalizată de inferență.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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