AWS Thai Blog

Amazon SageMaker JumpStart ช่วยลดความซับซ้อนในการเข้าถึง Pre-built Models และ Machine Learning Solutions

Amazon SageMaker JumpStart เป็นความสามารถของ Amazon SageMaker ที่จะช่วยเพิ่มความเร็วของ machine learning workflow ด้วยการเข้าถึง Model Collection (หรือที่เรียกอีกอย่างว่า “Model Zoos”) ภายในคลิกเดียว รวมถึง end-to-end solutions ที่ใช้แก้ปัญหาในงานทั่วไปด้วย

ปัจจุบัน Machine Learning (ML) ได้รับการพิสูจน์แล้วว่าเป็นเทคนิคที่มีประโยชน์ต่อการปรับปรุงและ automate กระบวนการทางธุรกิจเป็นอย่างมาก เพราะว่า Model ที่นำข้อมูล historical (ข้อมูลที่มีในอดีต) มา train จะได้ผลลัพธ์ที่แม่นยำสูง ซึ่ง Models เหล่านี้ สามารถใช้ได้ในหลายๆอุตสาหกรรม เช่น การบริการทางการเงิน, การค้าปลีก, การผลิต, telecom, วิทยาศาสตร์ชีวภาพ และอื่นๆ แต่อย่างไรก็ตาม การจะใช้งาน Model เหล่านี้ จำเป็นต้องพึ่งพาทักษะและประสบการณ์ของ Data science และนักพัฒนาในหลายๆ ด้าน ทั้งในการเตรียมชุดข้อมูล, การเลือกอัลกอริทึม, การฝึกอบรมแบบจำลอง, การเพิ่มประสิทธิภาพความแม่นยำ, วิธีการผลิต และการตรวจสอบประสิทธิภาพหลังจากการทำงาน

เพื่อลดความซับซ้อนของกระบวนการสร้าง model ทาง ML community จึงได้สร้าง Model Zoos ขึ้นมา เป็นการรวม model ที่ถูกสร้างขึ้นด้วย open source library และ pretrain ใช้ Dataset ที่มีอยู่ ยกตัวอย่าง เช่น TensorFlow Hub และ PyTorch Hub ที่ปัจจุบันมีให้ดาวน์โหลดแล้ว ระบบนี้ช่วยให้นักพัฒนามี Model มากมายที่นำมาใช้ในระบบ Computer Vision, Natural Language Processing และอื่นๆ

อย่างไรก็ตาม การดาวน์โหลดโมเดลเป็นเพียงแค่ส่วนหนึ่งเท่านั้น นักพัฒนายังจำเป็นต้อง deploy เพื่อทดสอบ ผ่านการใช้ tool ต่างๆ เช่น TensorFlow Serving และ TorchServe หรือวิธีอื่นๆ และเมื่อโมเดลเริ่มทำงาน ก็ถึงเวลาที่เหล่านักพัฒนาต้องมาค้นหา format incoming data ให้ถูกต้อง ซึ่งเป็นปัญหาที่ไม่รู้จักจบ

แอปพลิเคชันแบบ Full-ML มี data ที่ต้อง transfer จากหลายส่วนมาก ทั้งการ preprocess ข้อมูลที่มีอยู่และข้อมูลอื่นๆที่ดึงมาจาก backend ก่อนจะนำเข้าสู่โมเดล พอคำนวณผลลัพธ์แล้วจะถูกจัดเก็บไว้ใช้ในการวิเคราะห์และสร้าง Visualization Model zoos นี้จะช่วยแค่ในส่วนของ modeling เท่านั้น ซึ่งหมายความว่า เหล่านักพัฒนาทั้งหลายยังต้องทำงานอีกมากเพื่อประกอบ ML solution ให้สมบูรณ์

ด้วยเหตุผลที่กล่าวมาทั้งหมด เลยเป็นที่มาที่ผู้เชี่ยวชาญด้าน ML ส่วนใหญ่มักจะมีงานล้นมือตลอด ในขณะเดียวกัน ผู้ใช้ที่มีประสบการณ์น้อยอาจต้องเจอกับความยากในการเริ่มต้น ดังนั้นทางผู้ใช้หลายคนจึงเรียกร้องให้แก้ปัญหานี้

แนะนำ Amazon SageMaker JumpStart

Amazon SageMaker JumpStart รวมอยู่ใน Amazon SageMaker Studio ซึ่งเป็น Integrated Development Environment (IDE) สำหรับ ML ทำให้การค้นหา Model, Solution และอื่นๆ สามารถทำได้ง่ายขึ้น ซึ่ง SageMaker JumpStart จะประกอบด้วย

  • มี Solution แบบ end-to-end สำหรับการใช้งาน ML มากกว่า 15 แบบ เช่น Fraud Detection (ตรวจจับการหลอกลวง), Predictive Maintainence (การคาดการณ์อัตราการเสื่อม) และอื่นๆ
  • มี machine learning โมเดล ทั้งจาก TensorFlow Hub และ PyTorch Hub รวมกันมากกว่า 150+ โมเดล ทั้ง Computer Vision (เช่น Image Classification และ Object Detection การจัดหมวดหมู่ของภาพกับการตรวจหาวัตถุ) และทำให้ระบบเข้าใจภาษามนุษย์มากขึ้น (เช่น จำแนกประโยค กับการตอบคำถาม)
  • มี Notebook ตัวอย่าง สำหรับ built-in algorithms ที่มีอยู่ใน Amazon SageMaker

SageMaker JumpStart ยังมีตัวอย่าง notebook, บล็อกโพสต์ และวิดีโอสอนการใช้งาน ที่ออกแบบมาเพื่อช่วยให้ผู้ใช้เรียนรู้และลดข้อจำกัดต่างๆ ซึ่งสามารถเข้าชมได้ใน Amazon SageMaker Studio สามารถช่วยให้เข้าถึงเนื้อหาได้ง่ายขึ้น และช่วยให้คุณใช้งาน ML ได้เร็วขึ้น

เพียงแค่กด Deploy ก็ได้ Solution กับ Model แล้ว Infrastructure ทั้งหมดจะได้รับการจัดการอัตโนมัติ หลังจากนั้นผู้ใช้สามารถเริ่มทดสอบได้ด้วย Notebook และ Sample Prediction Code ที่พร้อมใช้งานใน Amazon SageMaker Studio และสามารถปรับเปลี่ยนเพื่อใช้ข้อมูลของตนเองได้

SageMaker JumpStart ช่วยให้ผู้ใช้ที่มีประสบการณ์และผู้เริ่มต้นใช้งาน สามารถ Deploy  และ evaluate Model กับ Solution ได้อย่างรวดเร็ว สามารถลดเวลาทำงานไปได้เป็นหลายวัน และย่นระยะเวลาจากการทดลองไปสู่ขั้นตอน deploy บน Production environment ซึ่ง SageMaker JumpStart จะช่วยก่อให้เกิด ML-powered innovation ได้ โดยเฉพาะสำหรับองค์กรที่เพิ่งเริ่มต้นใช้ ML

ตอนนี้ผมจะแสดงให้คุณเห็นว่า SageMaker JumpStart มีการทำงานยังไง

การ Deploy Solutions ด้วย Amazon SageMaker JumpStart

เปิด SageMaker Studio กดคลิกไอคอน “JumpStart” ทางด้านซ้าย แท็บใหม่ที่เปิดขึ้นมาจะแสดงให้เห็นเนื้อหาที่มีอยู่ทั้งหมด (solutions, models และอื่นๆ)

สมมติว่า คุณสนใจที่จะใช้ Computer Vision เพื่อตรวจหา product defect detection หรือ ข้อบกพร่องในผลิตภัณฑ์ที่ทางบริษัทผลิต เรามาดูกันว่า ML จะช่วยได้หรือไม่?

เมื่อกดดูรายการ Solutions ทั้งหมดที่มีอยู่ เราจะสังเกตเห็นว่ามีอยู่หนึ่งรายการที่ตรวจเจอข้อบกพร่องของผลิตภัณฑ์

เราสามารถเรียนรู้เพิ่มเติมเกี่ยวกับประเภทของปัญหา, Dataset ตัวอย่างที่ใช้ train ไปจนถึงการservice ของ AWS ที่เกี่ยวข้องและอื่นๆ อีกมากมายได้ด้วยการเปิดเข้าไปดู

เพียงคลิกเดียวก็สามารถปรับใช้ Solution นี้ได้ ตัว AWS CloudFormation นั้นจะใช้ template เพื่อจัดเตรียม AWS resources ที่เหมาะสมกับหมวดหมู่ทั้งหมด

ไม่กี่นาทีต่อมา Solution ก็ deploy เสร็จ และเราก็จะเปิด notebook ขึ้นมาได้

Notebook จะเปิดขึ้นทันทีโดยอัตโนมัติบน SageMaker Studio เราได้ทำการรัน demo และเห็นว่า ML สามารถช่วยตรวจหาข้อบกพร่องของผลิตภัณฑ์ได้อย่างไร นี่ถือว่าเป็นการเริ่มต้นที่ดีสำหรับการทำโปรเจ็กต์ เพราะมันง่ายมากในการที่จะปรับเปลี่ยนแล้วเอา dataset ของตนเองมาใช้ (คลิกที่ภาพด้านล่างเพื่อขยายดูรูป)

เมื่อใช้ Solution นี้เสร็จแล้ว เราสามารถลบ resources ทั้งหมดได้ภายในคลิกเดียว ทำให้ AWS CloudFormation ล้างข้อมูลโดยไม่ต้องกังวลว่าจะทิ้ง resources AWS ที่ไม่ได้ใช้งานไว้เลย

มาดูกันที่โมเดลบ้าง

การ Deploy โมเดลด้วย Amazon SageMaker JumpStart

SageMaker JumpStart มี collection model ใน TensorFlow Hub และ PyTorch Hub มากมาย โมเดลเหล่านี้ถูก pre-trained ด้วย reference dataset สามารถใช้ model เหล่านี้เพื่อช่วยทำงาน Computer Vision และ Natural language processing ได้เลย นอกจากนี้ ผู้ใช้ยังสามารถปรับแต่งได้ด้วย dataset ของตนเองเพื่อเพิ่มความแม่นยำ ซึ่งเป็นเทคนิคที่เรียกว่า Transfer Learning

เมื่อเลือก BERT โมเดลที่มีการ train มาแล้ว เพื่อแก้ปัญหาทางด้านธุรกิจ เราจะสามารถ deploy หรือนำมา Fine-tune (เพิ่ม data ตนเอง) ได้ เพื่อการทดลองเราจะคลิกที่ปุ่ม “Deploy”

ไม่กี่นาทีต่อมา โมเดลได้ deployไปที่ real-time endpoint โดย infrastructure หลังบ้านสร้างเสร็จเรียบร้อย

ได้เวลาทดสอบแล้ว! คลิกที่ “Open Notebook” เพื่อเปิดตัวอย่าง Notebook และทดสอบโมเดลโดยไม่ต้องเปลี่ยนแปลงโค้ด (สามารถคลิกที่ภาพด้านล่างเพื่อขยายดูรูป) มาลองดูกันว่า ถ้าเราตั้งคำถามสองข้อนี้ (What is Southern California often abbreviated as?” and “Who directed Spectre?“  “แคลิฟอร์เนียตอนใต้เรียกกันว่าอะไร” และ“ ใครเป็นผู้กำกับภาพยนตร์เรื่อง Spectre?”) เห็นได้ว่า Model BERT จะให้คำตอบที่ถูกต้องตามลำดับคำถามคือ “Socal” และ “Sam Mendes”

เมื่อทำการทดสอบเสร็จสิ้นแล้ว เราสามารถลบ Endpoint ได้ในคลิกเดียวและ Infrastructure ทุกอย่างจะปิดลงและหยุดการคิดเงินทันที

เริ่มใช้งาน

แม้ว่าผู้ใช้จะมีทักษะการใช้ ML เพียงเล็กน้อย แต่การ deploy Model และ Solution ด้วย SageMaker JumpStart ก็ทำได้ง่ายมาก ผู้ใช้สามารถเริ่มใช้งานได้แล้วในทุก Region ที่มี SageMaker Studio โดยไม่มีค่าใช้จ่ายเพิ่มเติมทั้งสิ้น

ทดลองใช้งานดูและส่งข้อเสนอแนะให้ AWS รู้ด้วยว่าคุณคิดยังไง

ทาง AWS หวังว่าจะได้รับข้อเสนอแนะจากผู้ใช้ทุกคน โดยคุณสามารถส่งมาทางฝ่าย AWS support ที่ติดต่อเป็นประจำหรือ AWS Forum สำหรับ SageMaker ได้ทั้งสองทาง