AWSTools

สร้าง Offline Feature Store ด้วย AWS SageMaker Unified Studio และ Catalog

เขียนโดย

ร่างเนื้อหาด้วย AI ตรวจทานและแก้ไขโดยคน

อ่าน ~8 นาที

สร้าง Offline Feature Store ด้วย AWS SageMaker Unified Studio และ Catalog

ในการพัฒนาโมเดล Machine Learning (ML) ในองค์กรใหญ่ ๆ เรามักเจอปัญหาเยอะแยะไปหมด เช่น การจัดการข้อมูลฟีเจอร์ที่กระจัดกระจาย, คำจำกัดความของข้อมูลไม่ตรงกัน, หรือทีมต่าง ๆ ต้องทำงานซ้ำซ้อนกันเพื่อเตรียมข้อมูล ทำให้เสียเวลาและทรัพยากรไปมาก และที่สำคัญคือ โมเดลอาจถูกเทรนด้วยข้อมูลที่ไม่สอดคล้องกันหรือไม่เป็นปัจจุบัน ซึ่งนำไปสู่ประสิทธิภาพของโมเดลที่ไม่ดีนัก

วันนี้ AWS มีโซลูชันที่น่าสนใจมานำเสนอ นั่นคือการสร้างและจัดการ Offline Feature Store โดยใช้ Amazon SageMaker Unified Studio และ SageMaker Catalog ซึ่งจะช่วยให้การทำงานด้าน ML ของเรามีประสิทธิภาพมากขึ้น ลดความซับซ้อน และเพิ่มความร่วมมือระหว่างทีมได้เป็นอย่างดีเลยล อยากรู้รายละเอียดเพิ่มเติม ลองอ่านบทความต้นฉบับได้ที่ AWS Blog: Offline Feature Store with SageMaker

ปัญหาที่เจอในการพัฒนา ML

ลองนึกภาพว่าคุณมีหลายทีมที่พัฒนา ML โมเดลต่างกันไป แต่ละทีมก็สร้างชุดฟีเจอร์ของตัวเอง เก็บข้อมูลแบบใครแบบมัน ทำให้เกิดปัญหาหลักๆ เช่น:

  • Pipeline ของฟีเจอร์แยกส่วน (fragmented feature pipelines): ไม่มีระบบรวมศูนย์ในการสร้างและจัดการฟีเจอร์
  • คำจำกัดความข้อมูลไม่สอดคล้องกัน (inconsistent data definitions): ฟีเจอร์เดียวกันอาจถูกนิยามต่างกันในแต่ละทีม
  • งานวิศวกรรมข้อมูลซ้ำซ้อน (redundant engineering efforts): ทีมต่าง ๆ ต้องเขียนโค้ดเพื่อเตรียมฟีเจอร์คล้าย ๆ กัน
  • ปัญหาการกำกับดูแลข้อมูล (governance issues): ขาดการควบคุมว่าใครเข้าถึงข้อมูลอะไร และข้อมูลมีความถูกต้องแค่ไหน

ปัญหาเหล่านี้ทำให้การเทรนโมเดลเป็นเรื่องยาก เสี่ยงต่อการใช้ข้อมูลที่ไม่ถูกต้อง และลดความน่าเชื่อถือของโมเดลลงไปมากเลยครับ

SageMaker ช่วยแก้ปัญหาอย่างไร?

AWS ได้นำเสนอวิธีแก้ไขปัญหาเหล่านี้ด้วยการสร้าง Offline Feature Store ที่ปรับขนาดได้ มีการกำกับดูแล และทำงานร่วมกันได้ โดยใช้ Amazon SageMaker Unified Studio และ SageMaker Catalog เป็นเครื่องมือหลัก

โซลูชันนี้ออกแบบมาเพื่อจัดการความท้าทายต่าง ๆ ข้างต้น โดยมีสถาปัตยกรรมที่สำคัญคือ:

  • Amazon S3 Tables with Apache Iceberg: ใช้สำหรับจัดเก็บข้อมูลฟีเจอร์ เพื่อให้มั่นใจได้ถึงความสอดคล้องของข้อมูลแบบ Transactional consistency รวมถึงความสามารถในการย้อนเวลาดูข้อมูลในอดีต (time-travel)
  • AWS Lake Formation: ช่วยในการควบคุมการเข้าถึงข้อมูลแบบละเอียด (fine-grained access control) ว่าใครสามารถดูหรือแก้ไขข้อมูลส่วนไหนได้บ้าง
  • Amazon SageMaker Studio: เป็นสภาพแวดล้อมแบบรวมศูนย์สำหรับการทำ Data Engineering ทั้งแบบ Visual และแบบเขียนโค้ด

หัวใจสำคัญของโซลูชันนี้คือการใช้ รูปแบบ Publish-Subscribe สำหรับการแชร์ตารางฟีเจอร์ที่ได้รับการคัดสรรและมีเวอร์ชัน (curated, versioned feature tables) ทำให้ Data Producers สามารถเผยแพร่ฟีเจอร์ที่เตรียมไว้ ส่วน Data Consumers ก็สามารถค้นหา สมัครรับ และนำฟีเจอร์เหล่านั้นไปใช้ซ้ำได้อย่างปลอดภัยสำหรับการพัฒนาโมเดล ช่วยให้การทำงานร่วมกันราบรื่นขึ้นเยอะเลยครับ

ส่วนประกอบสำคัญ

โซลูชัน Offline Feature Store นี้มีส่วนประกอบหลักๆ ที่ทำงานร่วมกันดังนี้:

  • SageMaker Unified Studio domain: ทำหน้าที่เป็นศูนย์กลางในการกำกับดูแลและทำงานร่วมกัน เป็นชั้นควบคุมหลักสำหรับการจัดการโปรเจกต์, ผู้ใช้งาน และ Assets ต่างๆ ของ ML ช่วยให้การเข้าถึงข้อมูลและการทำงานร่วมกันเป็นไปอย่างปลอดภัยและมีประสิทธิภาพ
  • S3 Tables ในรูปแบบ Apache Iceberg: เป็นฐานสำหรับการจัดเก็บและควบคุมเวอร์ชันของข้อมูลฟีเจอร์ ทำให้ข้อมูลมีความคงทน และสามารถสืบย้อนหลังได้
  • SageMaker Catalog: เปรียบเสมือนสมุดทะเบียนกลางสำหรับเผยแพร่และค้นหาตารางฟีเจอร์ทั่วทั้งองค์กร ทำให้ทีมต่าง ๆ สามารถค้นหาและนำฟีเจอร์ที่มีอยู่ไปใช้ได้อย่างง่ายดาย

ขั้นตอนการทำงานร่วมกัน

Workflow ของการใช้งานโซลูชันนี้จะเกี่ยวข้องกับผู้ใช้งานหลายบทบาท:

  1. Admin (ผู้ดูแลระบบ): มีหน้าที่ตั้งค่าและกำหนดค่าสภาพแวดล้อม รวมถึงการจัดเตรียม SageMaker Unified Studio domain และนำเข้าชุดข้อมูล เช่น airline_delay.csv และตาราง airline_features ไปยัง Project Catalog จากนั้นก็มอบหมายให้ Data Engineer เป็นเจ้าของโปรเจกต์
  2. Data Engineer (วิศวกรข้อมูล): จะเข้ามาในโปรเจกต์ ใช้เครื่องมือ Visual ETL หรือ Data Processing job เพื่อสร้าง Pipeline ของฟีเจอร์ และสร้างฟีเจอร์ลงในตาราง เช่น airline_features ใน Project Catalog หลังจากนั้นก็จะเพิ่ม Metadata เพื่อช่วยให้ค้นหาและกำกับดูแลได้ง่ายขึ้น เมื่อผ่านการตรวจสอบและอนุมัติแล้ว ก็จะเผยแพร่ตารางฟีเจอร์นี้ไปยัง SageMaker Catalog เพื่อให้ทั้งองค์กรเข้าถึงได้
  3. Data Scientist (นักวิทยาศาสตร์ข้อมูล): จะเปิด ML Project ขึ้นมา ใช้ AI powered search เพื่อค้นหาตารางฟีเจอร์ที่ต้องการใน Catalog และเมื่อพบตาราง airlines_features ที่เหมาะสมกับการพัฒนาโมเดลของตน ก็จะส่งคำขอสมัครรับข้อมูล หากไม่ตั้งค่าการอนุมัติอัตโนมัติ ผู้เผยแพร่ข้อมูลจะต้องตรวจสอบและอนุมัติคำขอ หลังจากอนุมัติแล้ว Data Scientist ก็จะเข้าถึงตารางฟีเจอร์ได้ทันทีผ่าน Project Catalog ทั้งจาก Data Explorer และ Jupyter Notebooks สำหรับการเทรนโมเดลและการทดลองต่าง ๆ

กระบวนการทำงานที่เป็นระบบนี้ช่วยให้เกิดการกำกับดูแลฟีเจอร์ที่สอดคล้องกัน ส่งเสริมการทำงานร่วมกัน และลดความซ้ำซ้อนในการทำ Feature Engineering โดยช่วยให้องค์กรนำฟีเจอร์ ML ที่เชื่อถือได้และมีเวอร์ชันไปใช้ซ้ำได้ทั่วทั้งองค์กร

ประโยชน์ที่จับต้องได้

การนำ Offline Feature Store ด้วย SageMaker Unified Studio และ SageMaker Catalog มาใช้งาน จะทำให้องค์กรของคุณได้รับประโยชน์ที่สำคัญหลายอย่าง:

  • การกำกับดูแลฟีเจอร์ที่สอดคล้องกัน: ทุกคนใช้ฟีเจอร์ที่มีมาตรฐานเดียวกัน ลดความผิดพลาด
  • เร่งการทดลอง ML: Data Scientists ไม่ต้องเสียเวลาสร้างฟีเจอร์เองบ่อยๆ สามารถโฟกัสไปที่การทดลองโมเดลได้เร็วขึ้น
  • ลดภาระการดำเนินงาน: ลดงานซ้ำซ้อนและลดความจำเป็นในการบำรุงรักษา Pipeline ฟีเจอร์ที่กระจัดกระจาย
  • การนำฟีเจอร์ ML ที่เชื่อถือได้กลับมาใช้ซ้ำทั่วทั้งองค์กร: ช่วยให้ลงทุนครั้งเดียวแต่ใช้งานได้หลายโปรเจกต์

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

อ่านต่อ: เรียนรู้ขั้นตอนการสร้าง Offline Feature Store อย่างละเอียดได้ที่ AWS Blog: Offline Feature Store with SageMaker

Cursor เปิดตัว Beta Security Review สำหรับ PR และ Codebase

Cursor เปิดตัว Beta Security Review สำหรับ PR และ Codebase

เอเจนต์รักษาความปลอดภัย Beta ใหม่ของ Cursor สแกน Pull Request อัตโนมัติเพื่อหาช่องโหว่ และสแกน codebase ตามกำหนดเพื่อหาความเสี่ยงกับ dependencies ที่ล้าสมัย

อ่านข่าวนี้

อยากให้แจ้งเตือน ตอน Newsletter เปิดตัวมั้ย?

เรากำลังวัดความสนใจก่อนเปิด weekly AI digest จริงๆ ใส่ email ไว้ เราจะ email ไปบอกตอนเปิดตัว — ส่งครั้งเดียว ไม่มี spam

เราใช้ email เฉพาะเพื่อแจ้งเปิดตัว newsletter เท่านั้น ไม่มี spam — อ่าน นโยบายความเป็นส่วนตัว