Criando uma Classe Python personalizada
O MLflow oferece uma forma de criar modelos personalizados para atender a uma grande variedade de casos de uso. Para criar modelos personalizados, o MLflow permite que você crie uma Classe Python que herda da Classe mlflow.pyfunc.PythonModel. A Classe PythonModel oferece personalização ao disponibilizar métodos para lógica de inferência personalizada e dependências de artefatos.
Neste exercício, você vai criar uma nova Classe Python para um modelo personalizado que carrega um modelo específico e depois decodifica os rótulos após a inferência. O módulo mlflow será importado.
Este exercício faz parte do curso
Introdução ao MLflow
Instruções do exercício
- Crie uma Classe Python com o nome
CustomPredict. - Defina o método
load_context()usado para carregar artefatos dentro de uma Classe personalizada. - Defina o método
predict()para implementar a inferência personalizada.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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