ÎncepețiÎncepe gratuit

Model scikit-learn personalizat

În acest exercițiu vei crea un model personalizat folosind varianta pyfunc din MLflow. Folosind setul de date insurance_charges, etichetele trebuie schimbate din female în 0 și din male în 1 pentru clasificare în timpul antrenării. Când modelul este utilizat, în loc de 0 sau 1 trebuie returnate șirurile female sau male.

Modelul personalizat este un model de clasificare bazat pe LogisticRegression și va folosi o clasă numită CustomPredict. Clasa CustomPredict adaugă un pas suplimentar în metoda predict, care convertește etichetele 0 și 1 înapoi în female și male atunci când modelul primește date de intrare. Vei folosi varianta pyfunc pentru înregistrarea și încărcarea modelului.

Setul de date insurance_charges va fi preprocesат, iar modelul va fi antrenat folosind:

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

Modulul MLflow va fi importat.

Acest exercițiu face parte din cursul

Introducere în MLflow

Vezi cursul

Instrucțiuni pentru exercițiu

  • Folosește varianta pyfunc din MLflow pentru a înregistra modelul personalizat.
  • Setează argumentul python_model al lui pyfunc pentru a utiliza clasa personalizată CustomPredict().
  • Încarcă modelul personalizat folosind pyfunc.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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")
Editează și rulează codul