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

การสร้าง Python Class แบบกำหนดเอง

MLflow มีวิธีสร้างโมเดลแบบกำหนดเองเพื่อรองรับกรณีการใช้งานที่หลากหลาย โดย MLflow อนุญาตให้สร้าง Python Class ที่สืบทอดจาก mlflow.pyfunc.PythonModel Class ซึ่ง PythonModel Class ช่วยให้ปรับแต่งได้โดยมีเมธอดสำหรับ inference logic แบบกำหนดเองและการจัดการ artifact dependencies

ในแบบฝึกหัดนี้ จะสร้าง Python Class ใหม่สำหรับโมเดลแบบกำหนดเองที่โหลดโมเดลที่ระบุ แล้วถอดรหัส label หลังจาก inference โดยจะมีการ import โมดูล mlflow ไว้ให้แล้ว

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

MLflow เบื้องต้น

ดูคอร์ส

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

  • สร้าง Python Class ชื่อ CustomPredict
  • กำหนดเมธอด load_context() ที่ใช้สำหรับโหลด artifact ภายใน Class แบบกำหนดเอง
  • กำหนดเมธอด predict() สำหรับกำหนด inference แบบกำหนดเอง

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

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

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