ComeçarComece gratuitamente

Modelo personalizado do scikit-learn

Neste exercício, você criará um modelo personalizado usando a variante pyfunc do fluxo ML. Usando o conjunto de dados insurance_charges, os rótulos devem ser alterados de female para 0 e de male para 1 para classificação durante o treinamento. Ao usar o modelo, as cadeias de caracteres de female ou male devem ser retornadas em vez de 0 ou 1.

O modelo personalizado é um modelo de classificação baseado em LogisticRegression e usará uma classe chamada CustomPredict. O CustomPredict adiciona uma etapa adicional no método predict que define os rótulos de 0 e 1 de volta para female e male quando o modelo recebe entrada. Você usará a variante pyfunc para registrar e carregar o modelo.

Nosso conjunto de dados insurance_charges será pré-processado e o modelo será treinado usando:

lr_model = LogisticRegression().fit(X_train, y_train)

O módulo de fluxo MLserá importado.

Este exercício faz parte do curso

Introdução ao fluxo ML

Ver Curso

Instruções de exercício

  • Use a variante pyfunc do fluxo MLpara registrar o modelo personalizado.
  • Defina o argumento pyfunc python_model para usar a classe personalizada CustomPredict().
  • Carregue o modelo personalizado usando pyfunc.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# Log the pyfunc model 
____.____.____(
	artifact_path="lr_pyfunc", 
    # Set model to use CustomPredict Class
	python_model=____, 
	artifacts={"lr_model": "lr_model"}
)

run = mlflow.last_active_run()
run_id = run.info.run_id

# Load the model in python_function format
loaded_model = ____.____.____(f"runs:/{run_id}/lr_pyfunc")
Editar e executar código