0Pricing
Learn AI with Python · บทเรียน

การติดตามการทดลองด้วย MLflow

mlflow.start_run(), log_param(), log_metric(), log_artifact() และการดูส่วนติดต่อผู้ใช้ของ MLflow

การติดตามการทดลองด้วย MLflow เป็นบทเรียน Learn AI with Python ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Learn AI with Python และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Learn AI with Python มีบทเรียนทั้งหมด 4 บทเรียน

เหตุใดจึงต้องติดตามการทดลอง

งาน ML ประกอบด้วยรอบการทำงานหลายสิบรอบที่ใช้พารามิเตอร์และข้อมูลแตกต่างกัน หากไม่ติดตามข้อมูล คุณจะไม่รู้ว่าการตั้งค่าใดทำให้ได้โมเดลที่ดีที่สุด MLflow จะบันทึกพารามิเตอร์ ตัวชี้วัด และอาร์ติแฟกต์ของทุกรอบการทำงาน เพื่อให้สร้างผลลัพธ์ซ้ำและเปรียบเทียบกันได้

การติดตั้งและการนำเข้า

MLflow ติดตั้งและนำเข้าได้ด้วยคำสั่ง pip เพียงครั้งเดียว

# pip install mlflow
import mlflow
import mlflow.sklearn

บริบท start_run

mlflow.start_run() เปิดรอบการทำงานในฐานะตัวจัดการบริบท ทุกสิ่งที่บันทึกภายในบล็อก with จะเป็นของรอบการทำงานนั้น และรอบการทำงานจะปิดโดยอัตโนมัติเมื่อออกจากบล็อก

with mlflow.start_run():
    # log params, metrics, model here
    pass

การบันทึกพารามิเตอร์

log_param บันทึกไฮเปอร์พารามิเตอร์หนึ่งรายการ (ข้อมูลเข้าที่คุณเลือก) ให้บันทึกทุกสิ่งที่กำหนดรอบการทำงาน เพื่อให้สร้างรอบนั้นซ้ำได้ในภายหลัง

with mlflow.start_run():
    mlflow.log_param("n_estimators", 200)
    mlflow.log_param("max_depth", 8)

การบันทึกตัวชี้วัด

log_metric บันทึกผลลัพธ์เชิงตัวเลข เช่น ความแม่นยำหรือค่าความสูญเสีย (ข้อมูลออก) คุณสามารถบันทึกตัวชี้วัดซ้ำหลายครั้งโดยใช้ step เพื่อติดตามเส้นโค้งการฝึกสอน

mlflow.log_metric("accuracy", 0.93)
mlflow.log_metric("val_loss", 0.21, step=epoch)

พารามิเตอร์กับตัวชี้วัด

  • พารามิเตอร์: ข้อมูลเข้าที่คุณกำหนด (อัตราการเรียนรู้ ความลึก) บันทึกเพียงครั้งเดียว
  • ตัวชี้วัด: ข้อมูลออกที่คุณวัด (ความแม่นยำ RMSE) สามารถเปลี่ยนแปลงไปตามขั้นตอนได้

การแยกข้อมูลทั้งสองประเภทออกจากกันช่วยให้ MLflow เปรียบเทียบรอบการทำงานในตารางและแผนภูมิได้

การบันทึกอาร์ติแฟกต์

log_artifact จัดเก็บไฟล์ใด ๆ ไว้กับรอบการทำงาน เช่น แผนภาพ เมทริกซ์ความสับสน ตัวอย่างข้อมูล และไฟล์การกำหนดค่า อาร์ติแฟกต์เป็นวิธีแนบหลักฐานประกอบเข้ากับรอบการทำงาน

mlflow.log_artifact("confusion_matrix.png")
mlflow.log_artifact("feature_importance.csv")

การบันทึกโมเดล

mlflow.sklearn.log_model จัดเก็บโมเดล scikit-learn ที่ฝึกสอนแล้วในรูปแบบอนุกรมเป็นอาร์ติแฟกต์ พร้อมแพ็กเกจการพึ่งพาที่จำเป็น เพื่อให้โหลดกลับมาใช้หรือปรับใช้ได้ในภายหลัง แต่ละกรอบงานมีรูปแบบเฉพาะของตนเอง (mlflow.keras, mlflow.pytorch)

mlflow.sklearn.log_model(model, artifact_path="model")

รหัสรอบการทำงาน

ทุกรอบการทำงานจะได้รับรหัสรอบการทำงานที่ไม่ซ้ำกัน คุณใช้รหัสนี้เพื่ออ้างอิง โหลดกลับมา หรือเปรียบเทียบรอบการทำงานเฉพาะรายการผ่านโปรแกรม

with mlflow.start_run() as run:
    mlflow.log_metric("accuracy", 0.93)
    print("Run ID:", run.info.run_id)

รอบการทำงานที่สมบูรณ์

เมื่อนำทุกอย่างมารวมกัน: เปิดรอบการทำงาน บันทึกพารามิเตอร์ ฝึกสอน บันทึกตัวชี้วัด และบันทึกโมเดลทั้งหมดไว้ในบล็อกเดียว

with mlflow.start_run():
    mlflow.log_param("max_depth", 8)
    model.fit(X_train, y_train)
    acc = model.score(X_test, y_test)
    mlflow.log_metric("accuracy", acc)
    mlflow.sklearn.log_model(model, "model")

การดูการทดลอง

เรียกใช้ mlflow ui ในเทอร์มินัลเพื่อเปิดแดชบอร์ดเว็บภายในเครื่อง (ค่าเริ่มต้นคือ http://localhost:5000) ซึ่งคุณสามารถเรียกดูรอบการทำงาน เรียงตามตัวชี้วัด และเปรียบเทียบพารามิเตอร์แบบเคียงข้างกันได้

# terminal
mlflow ui

ตรวจสอบความเข้าใจ

ทดสอบความรู้เกี่ยวกับการติดตามด้วย MLflow ของคุณ

สรุปทบทวน

คุณติดตามการทดลองด้วย MLflow: start_run() เปิดรอบการทำงาน log_param/log_metric บันทึกข้อมูลเข้าและข้อมูลออก log_artifact จัดเก็บไฟล์ และ mlflow.sklearn.log_model บันทึกโมเดล แต่ละรอบการทำงานมีรหัสรอบการทำงาน และ mlflow ui แสดงข้อมูลทั้งหมด บทถัดไป: ทะเบียนโมเดลและการกำหนดเวอร์ชัน

คำถามที่พบบ่อย

บทเรียน “การติดตามการทดลองด้วย MLflow” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การติดตามการทดลองด้วย MLflow” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Learn AI with Python ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Learn AI with Python มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การติดตามการทดลองด้วย MLflow”

mlflow.start_run(), log_param(), log_metric(), log_artifact() และการดูส่วนติดต่อผู้ใช้ของ MLflow คุณปฏิบัติ Learn AI with Python ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Learn AI with Python หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Learn AI with Python บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “การติดตามการทดลองด้วย MLflow” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Learn AI with Python นี้ได้ไหม

ได้ บทเรียน Learn AI with Python ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การติดตามการทดลองด้วย MLflow
  2. การลงทะเบียนและการกำหนดเวอร์ชันแบบจำลอง
  3. การสร้างไปป์ไลน์แมชชีนเลิร์นนิงที่ทำซ้ำได้
  4. การตรวจสอบประสิทธิภาพแบบจำลองในระบบจริง
← กลับไปที่ Learn AI with Python