การบันทึกอัตโนมัติในวิทยาศาสตร์ข้อมูล

บทความนี้อธิบายเกี่ยวกับการบันทึกอัตโนมัติใน Data Science

เมื่อใช้การบันทึกอัตโนมัติ คุณจะต้องใช้โค้ดน้อยลงอย่างมากในการบันทึกพารามิเตอร์ เมตริก และรายการของโมเดลแมชชีนเลิร์นนิงโดยอัตโนมัติในระหว่างการฝึกอบรม

การบันทึกอัตโนมัติช่วยขยายความสามารถในการ ติดตาม MLflow และถูกผสานเข้ากับงานวิทยาศาสตร์ข้อมูลอย่างลึกซึ้ง

การบันทึกอัตโนมัติสามารถบันทึกตัวชี้วัด รวมถึงความแม่นยํา การสูญเสีย คะแนน F1 และตัวชี้วัดแบบกําหนดเองที่คุณกําหนด นักพัฒนาซอฟต์แวร์และนักวิทยาศาสตร์ข้อมูลสามารถติดตามและเปรียบเทียบประสิทธิภาพของแบบจําลองและการทดลองที่แตกต่างกันได้อย่างง่ายดายโดยไม่ต้องติดตามด้วยตนเอง

เฟรมเวิร์กที่รองรับ

การบันทึกอัตโนมัติรองรับเฟรมเวิร์กแมชชีนเลิร์นนิงที่หลากหลาย รวมถึง TensorFlow, PyTorch, scikit-learn และ XGBoost หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับคุณสมบัติเฉพาะของเฟรมเวิร์กที่บันทึกโดยอัตโนมัติ โปรดดูเอกสารประกอบ MLflow

โน้ต

ด้วยการรองรับ MLflow 3 ใน Fabric การบันทึกอัตโนมัติยังบันทึก GenAI traces ตามค่าเริ่มต้น (log_traces=True) สําหรับข้อมูลเพิ่มเติมเกี่ยวกับ LoggedModel และการติดตาม โปรดดู MLflow 3 ใน Fabric Data Science

การกําหนดค่า

การบันทึกอัตโนมัติทํางานระหว่างการฝึกอบรมเพื่อบันทึกค่าของพารามิเตอร์อินพุต เมตริกเอาต์พุต และรายการเอาต์พุตของโมเดลแมชชีนเลิร์นนิงโดยอัตโนมัติ ข้อมูลนี้จะถูกบันทึกลงในพื้นที่ทํางาน Microsoft Fabric ของคุณ ซึ่งคุณสามารถเข้าถึงและแสดงภาพได้โดยใช้ MLflow API หรือการทดลองและรายการแบบจําลองที่เกี่ยวข้องในพื้นที่ทํางาน Microsoft Fabric ของคุณ

เมื่อคุณเปิดสมุดโน้ต Data Science Microsoft Fabric จะเรียกใช้mlflow.autolog()เพื่อเปิดใช้งานการติดตามทันทีและโหลด dependencies ที่เกี่ยวข้อง ในขณะที่คุณฝึกโมเดลในโน้ตบุ๊ก MLflow จะติดตามข้อมูลโมเดลโดยอัตโนมัติ

การกําหนดค่าจะเกิดขึ้นโดยอัตโนมัติเมื่อคุณเรียกใช้import mlflow การกําหนดค่าเริ่มต้นสําหรับสมุดบันทึก mlflow.autolog() hook คือ:


mlflow.autolog(
    log_input_examples=False,
    log_model_signatures=True,
    log_models=True,
    log_datasets=True,
    log_traces=True,
    disable=False,
    exclusive=True,
    disable_for_unsupported_versions=True,
    silent=True,
    extra_tags=None,
    exclude_flavors=None
)

กำหนด เอง

หากต้องการกําหนดลักษณะการบันทึกเอง ให้ใช้ mlflow.autolog() การกําหนดค่า การกําหนดค่านี้มีพารามิเตอร์เพื่อเปิดใช้งานการบันทึกแบบจําลอง รวบรวมตัวอย่างการป้อนข้อมูล กําหนดค่าคําเตือน หรือเปิดใช้งานการบันทึกสําหรับเนื้อหาที่เพิ่มที่คุณระบุ

ติดตามเมตริก พารามิเตอร์ และคุณสมบัติเพิ่มเติม

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

  1. อัปเดตการโทรเป็นmlflow.autolog()exclusive=False

        mlflow.autolog(
        log_input_examples=False,
        log_model_signatures=True,
        log_models=True,
        log_datasets=True,
        log_traces=True,
        disable=False,
        exclusive=False, # Update this property to enable custom logging
        disable_for_unsupported_versions=True,
        silent=True,
        extra_tags=None,
        exclude_flavors=None
    )
    
  2. ใช้ API การติดตาม MLflow เพื่อบันทึก พารามิเตอร์ และ เมตริกเพิ่มเติม โค้ดตัวอย่างต่อไปนี้แสดงวิธีบันทึกเมตริกและพารามิเตอร์ที่กําหนดเองควบคู่ไปกับคุณสมบัติเพิ่มเติม

    import mlflow
    mlflow.autolog(exclusive=False)
    
    with mlflow.start_run():
    mlflow.log_param("parameter name", "example value")
    # <add model training code here>
    mlflow.log_metric("metric name", 20)
    

ปิดใช้งานการบันทึกอัตโนมัติของ Microsoft Fabric

คุณสามารถปิดใช้งานการบันทึกอัตโนมัติของ Microsoft Fabric สําหรับเซสชันสมุดบันทึกเฉพาะได้ คุณยังสามารถปิดใช้งานการล็อกอัตโนมัติในสมุดบันทึกทั้งหมดได้โดยใช้การตั้งค่าพื้นที่ทํางาน

โน้ต

หากปิดใช้งานการล็อกอัตโนมัติ คุณต้องบันทึกพารามิเตอร์ ของคุณ และเมตริก ด้วยตนเองโดยใช้ API ของ MLflow

ปิดใช้งานการล็อกอัตโนมัติสําหรับเซสชันสมุดบันทึก

เมื่อต้องการปิดใช้งานการบันทึกอัตโนมัติ Microsoft Fabric สําหรับเซสชันสมุดบันทึกเฉพาะ ให้เรียก mlflow.autolog() และตั้งค่า disable=True

import mlflow
mlflow.autolog(disable=True)

ปิดใช้งานการล็อกอัตโนมัติสําหรับสมุดบันทึกและเซสชันทั้งหมด

ผู้ดูแลระบบพื้นที่ทํางานสามารถเปิดหรือปิดใช้งานการบันทึกอัตโนมัติของ Microsoft Fabric สําหรับสมุดบันทึกและเซสชันทั้งหมดในพื้นที่ทํางานของตนได้โดยใช้การตั้งค่าพื้นที่ทํางาน

วิธีเปิดหรือปิดการบันทึกอัตโนมัติทางวิทยาศาสตร์ข้อมูล:

  1. ในพื้นที่ทํางานของคุณ ให้เลือก การตั้งค่าพื้นที่ทํางาน

    สกรีนช็อตที่แสดงพื้นที่ทํางานที่มีการตั้งค่าพื้นที่ทํางานถูกเน้น

  2. ในการตั้งค่าพื้นที่ทํางาน ให้ขยาย วิศวกรรมข้อมูล/วิทยาศาสตร์ บนเมนูด้านซ้าย แล้วเลือก การตั้งค่า Spark

  3. ใน การตั้งค่า Sparkเลือกแท็บ บันทึกอัตโนมัติ

  4. ตั้งค่า ติดตามการทดลองและแบบจําลองการเรียนรู้ของเครื่องโดยอัตโนมัติ ไปยัง On หรือ Off

  5. เลือก บันทึก

    สกรีนช็อตที่แสดงการตั้งค่าพื้นที่ทํางานสําหรับการบันทึกอัตโนมัติ