เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

Custom scikit-learn model

ในแบบฝึกหัดนี้ คุณจะสร้างโมเดลแบบกำหนดเองโดยใช้ pyfunc flavor ของ MLflow โดยใช้ชุดข้อมูล insurance_charges ซึ่งต้องแปลงป้ายกำกับจาก female เป็น 0 และ male เป็น 1 สำหรับการจำแนกประเภทระหว่างการฝึกโมเดล แต่เมื่อนำโมเดลไปใช้งาน ต้องแสดงผลเป็น female หรือ male แทน 0 หรือ 1

โมเดลแบบกำหนดเองนี้เป็นโมเดลการจำแนกประเภทที่อิงจาก LogisticRegression และใช้ Class ชื่อ CustomPredict โดย CustomPredict จะเพิ่มขั้นตอนเสริมในเมธอด predict เพื่อแปลงป้ายกำกับ 0 และ 1 กลับเป็น female และ male เมื่อโมเดลรับข้อมูลเข้า และจะใช้ pyfunc flavor สำหรับการบันทึกและโหลดโมเดล

ชุดข้อมูล insurance_charges จะถูกประมวลผลล่วงหน้า และโมเดลจะถูกฝึกด้วย:

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

โมดูล MLflow จะถูก import ให้แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

MLflow เบื้องต้น

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ใช้ pyfunc flavor ของ MLflow เพื่อบันทึกโมเดลแบบกำหนดเอง
  • กำหนดอาร์กิวเมนต์ python_model ของ pyfunc ให้ใช้งาน Custom Class CustomPredict()
  • โหลดโมเดลแบบกำหนดเองโดยใช้ pyfunc

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# 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")
แก้ไขและรันโค้ด