แอปพลิเคชันแมชชีนเลิร์นนิง (ML) มีความซับซ้อนในการปรับใช้ และมักต้องการความสามารถในการขยายขนาดมากเกินไป และมีข้อกำหนดด้านเวลาแฝงต่ำเป็นพิเศษและงบประมาณด้านต้นทุนที่เข้มงวด กรณีการใช้งาน เช่น การตรวจจับการฉ้อโกง คำแนะนำผลิตภัณฑ์ และการคาดการณ์ทราฟฟิกเป็นตัวอย่างที่มิลลิวินาทีมีความสำคัญและมีความสำคัญต่อความสำเร็จของธุรกิจ ต้องปฏิบัติตามข้อตกลงระดับการให้บริการ (SLA) ที่เข้มงวด และคำขอทั่วไปอาจต้องใช้หลายขั้นตอน เช่น การประมวลผลล่วงหน้า การแปลงข้อมูล วิศวกรรมฟีเจอร์ ตรรกะการเลือกโมเดล การรวมโมเดล และการประมวลผลภายหลัง
การปรับใช้โมเดล ML ในปริมาณที่เหมาะสมด้วยต้นทุนที่เหมาะสมและประสิทธิภาพการประมวลผลอาจเป็นงานที่น่ากลัวและยุ่งยาก แต่ละรุ่นมีข้อดีและการพึ่งพาของตัวเองโดยอิงจากแหล่งข้อมูลภายนอก ตลอดจนสภาพแวดล้อมรันไทม์ เช่น พลัง CPU/GPU ของทรัพยากรการประมวลผลพื้นฐาน แอปพลิเคชันอาจต้องการ ML หลายรุ่นเพื่อให้บริการคำขอการอนุมานเดียว ในบางสถานการณ์ คำขออาจไหลผ่านหลายรุ่น ไม่มีวิธีการใดที่เหมาะกับทุกวิธี และเป็นสิ่งสำคัญสำหรับผู้ปฏิบัติงานด้าน ML ในการมองหาวิธีการที่ได้รับการทดลองและพิสูจน์แล้วเพื่อจัดการกับความท้าทายในการโฮสต์ ML ที่เกิดซ้ำ สิ่งนี้นำไปสู่วิวัฒนาการของรูปแบบการออกแบบสำหรับการโฮสต์โมเดล ML
ในโพสต์นี้ เราจะสำรวจรูปแบบการออกแบบทั่วไปสำหรับการสร้างแอปพลิเคชัน ML อเมซอน SageMaker.
รูปแบบการออกแบบสำหรับการสร้างแอปพลิเคชัน ML
มาดูรูปแบบการออกแบบต่อไปนี้เพื่อใช้สำหรับการโฮสต์แอปพลิเคชัน ML
แอปพลิเคชัน ML ที่ใช้โมเดลเดียว
นี่เป็นตัวเลือกที่ยอดเยี่ยมเมื่อกรณีการใช้งาน ML ของคุณต้องการโมเดลเดียวเพื่อตอบสนองคำขอ แบบจำลองถูกปรับใช้บนโครงสร้างพื้นฐานการประมวลผลเฉพาะที่มีความสามารถในการปรับขนาดตามทราฟฟิกอินพุต ตัวเลือกนี้ยังเหมาะอย่างยิ่งเมื่อแอปพลิเคชันไคลเอ็นต์มีความต้องการการอนุมานเวลาแฝงต่ำ (ตามลำดับมิลลิวินาทีหรือวินาที)
แอปพลิเคชัน ML ที่ใช้หลายรุ่น
เพื่อให้การโฮสต์มีความคุ้มค่ามากขึ้น รูปแบบการออกแบบนี้ช่วยให้คุณโฮสต์ได้หลายรุ่นบนโครงสร้างพื้นฐานของผู้เช่ารายเดียวกัน โมเดล ML หลายรุ่นสามารถใช้ทรัพยากรโฮสต์หรือคอนเทนเนอร์ร่วมกันได้ รวมถึงการแคชโมเดล ML ที่ใช้บ่อยที่สุดในหน่วยความจำ ส่งผลให้ใช้หน่วยความจำและทรัพยากรการประมวลผลได้ดียิ่งขึ้น ขึ้นอยู่กับประเภทของโมเดลที่คุณเลือกปรับใช้ การโฮสต์ร่วมของโมเดลอาจใช้วิธีการต่อไปนี้:
- โฮสติ้งหลายรุ่น – ตัวเลือกนี้อนุญาตให้คุณโฮสต์หลายโมเดลโดยใช้คอนเทนเนอร์ที่ให้บริการร่วมกันบนจุดสิ้นสุดเดียว คุณลักษณะนี้เหมาะอย่างยิ่งเมื่อคุณมีโมเดลที่คล้ายกันจำนวนมากซึ่งคุณสามารถให้บริการผ่านคอนเทนเนอร์ที่ให้บริการร่วมกัน และไม่จำเป็นต้องเข้าถึงโมเดลทั้งหมดพร้อมกัน
- โฮสติ้งหลายคอนเทนเนอร์ – ตัวเลือกนี้เหมาะอย่างยิ่งเมื่อคุณมีโมเดลหลายตัวที่ทำงานบนสแต็กการให้บริการที่แตกต่างกันซึ่งมีความต้องการทรัพยากรที่คล้ายคลึงกัน และเมื่อแต่ละโมเดลมีปริมาณการใช้งานไม่เพียงพอที่จะใช้งานอินสแตนซ์ปลายทางได้เต็มประสิทธิภาพ การโฮสต์หลายคอนเทนเนอร์ช่วยให้คุณสามารถปรับใช้หลายคอนเทนเนอร์ที่ใช้โมเดลหรือเฟรมเวิร์กที่แตกต่างกันบนจุดสิ้นสุดเดียว แบบจำลองสามารถแตกต่างกันได้อย่างสมบูรณ์โดยมีสแต็คการให้บริการที่เป็นอิสระ
- วงดนตรีรุ่น – ในกรณีการใช้งานการผลิตจำนวนมาก มักจะมีโมเดลอัปสตรีมจำนวนมากป้อนอินพุตไปยังโมเดลดาวน์สตรีมที่กำหนด นี่คือสิ่งที่วงดนตรีมีประโยชน์ รูปแบบทั้งมวลเกี่ยวข้องกับการผสมเอาต์พุตจากโมเดลพื้นฐานตั้งแต่หนึ่งโมเดลขึ้นไปเพื่อลด ข้อผิดพลาดทั่วไป ของการทำนาย. โมเดลพื้นฐานสามารถมีความหลากหลายและได้รับการฝึกฝนโดยอัลกอริธึมที่แตกต่างกัน ชุดโมเดลสามารถแสดงได้ดีกว่าโมเดลเดี่ยวเนื่องจากข้อผิดพลาดในการทำนายของโมเดลจะลดลงเมื่อใช้วิธีทั้งมวล
ต่อไปนี้เป็นกรณีการใช้งานทั่วไปของรูปแบบทั้งมวลและไดอะแกรมรูปแบบการออกแบบที่สอดคล้องกัน:
- กระจายรวบรวม – ในรูปแบบ Scatter-Gather คำขอสำหรับการอนุมานจะถูกส่งไปยังโมเดลจำนวนหนึ่ง จากนั้นจะใช้ตัวรวบรวมเพื่อรวบรวมคำตอบและกลั่นให้เป็นคำตอบแบบอนุมานเดียว ตัวอย่างเช่น กรณีการใช้งานการจัดประเภทรูปภาพอาจใช้โมเดลที่แตกต่างกันสามแบบในการดำเนินการ รูปแบบการรวบรวมกระจายช่วยให้คุณสามารถรวมผลลัพธ์จากการอนุมานที่ทำงานบนแบบจำลองที่แตกต่างกันสามแบบ และเลือกแบบจำลองการจัดประเภทที่เป็นไปได้มากที่สุด
- รวมรุ่น – ในรูปแบบการรวม เอาต์พุตจากหลายรุ่นจะถูกเฉลี่ย สำหรับแบบจำลองการจำแนกประเภท การคาดคะเนของแบบจำลองหลายรายการจะได้รับการประเมินเพื่อกำหนดชั้นเรียนที่ได้รับการโหวตมากที่สุดและถือเป็นผลลัพธ์สุดท้ายของวงดนตรี ตัวอย่างเช่น ในปัญหาการจำแนกประเภทสองชั้นเพื่อจำแนกชุดของผลไม้เป็นส้มหรือแอปเปิ้ล ถ้ารุ่นสองรุ่นโหวตให้ส้มและรุ่นหนึ่งโหวตให้แอปเปิ้ล ผลรวมที่ได้จะเป็นส้ม การรวมช่วยต่อสู้กับความไม่แม่นยำในแต่ละรุ่น และทำให้ผลลัพธ์แม่นยำยิ่งขึ้น
- การเลือกแบบไดนามิก – อีกรูปแบบหนึ่งสำหรับโมเดลทั้งมวลคือการเลือกโมเดลแบบไดนามิกสำหรับแอตทริบิวต์อินพุตที่กำหนด ตัวอย่างเช่น ในการป้อนรูปภาพผลไม้ที่กำหนด หากอินพุตมีส้ม ระบบจะใช้โมเดล A เนื่องจากเป็นโมเดลสำหรับส้มโดยเฉพาะ หากอินพุตมีแอปเปิ้ล รุ่น B จะถูกใช้เพราะเป็นแอปเปิ้ลโดยเฉพาะ
- แอปพลิเคชัน ML การอนุมานแบบอนุกรม – ด้วยรูปแบบการอนุมานแบบอนุกรม หรือที่เรียกว่าไปป์ไลน์การอนุมาน กรณีการใช้งานมีข้อกำหนดในการประมวลผลข้อมูลขาเข้าล่วงหน้าก่อนที่จะเรียกใช้โมเดล ML ที่ผ่านการฝึกอบรมล่วงหน้าสำหรับการสร้างการอนุมาน นอกจากนี้ ในบางกรณี การอนุมานที่สร้างขึ้นอาจต้องได้รับการประมวลผลเพิ่มเติม เพื่อให้สามารถใช้งานได้ง่ายโดยแอปพลิเคชันดาวน์สตรีม ไปป์ไลน์การอนุมานช่วยให้คุณนำโค้ดการประมวลผลล่วงหน้าเดิมที่ใช้ระหว่างการฝึกโมเดลมาใช้ซ้ำเพื่อประมวลผลข้อมูลคำขอการอนุมานที่ใช้สำหรับการคาดคะเน
- ตรรกะทางธุรกิจ – Productionizing ML เกี่ยวข้องกับตรรกะทางธุรกิจเสมอ รูปแบบตรรกะทางธุรกิจเกี่ยวข้องกับทุกสิ่งที่จำเป็นในการทำงาน ML ที่ไม่ใช่การอนุมานแบบจำลอง ML ซึ่งรวมถึงการโหลดโมเดลจาก บริการจัดเก็บข้อมูลอย่างง่ายของ Amazon (Amazon S3) ตัวอย่างเช่น การค้นหาฐานข้อมูลเพื่อตรวจสอบอินพุต รับคุณสมบัติที่คำนวณล่วงหน้าจากที่เก็บคุณสมบัติ และอื่นๆ หลังจากขั้นตอนตรรกะทางธุรกิจเหล่านี้เสร็จสมบูรณ์ อินพุตจะถูกส่งผ่านไปยังโมเดล ML
ตัวเลือกการอนุมาน ML
สำหรับการปรับใช้แบบจำลอง การทำงานย้อนหลังจากกรณีการใช้งานของคุณเป็นสิ่งสำคัญ ความถี่ของการทำนายคืออะไร? คุณคาดหวังว่าจะมีทราฟฟิกสดไปยังแอปพลิเคชันของคุณและการตอบสนองแบบเรียลไทม์ต่อลูกค้าของคุณหรือไม่? คุณมีโมเดลจำนวนมากที่ได้รับการฝึกฝนสำหรับชุดย่อยของข้อมูลที่แตกต่างกันสำหรับกรณีการใช้งานเดียวกันหรือไม่? การเข้าชมการคาดการณ์มีความผันผวนหรือไม่ ความล่าช้าของการอนุมานเป็นปัญหาหรือไม่? ตามรายละเอียดเหล่านี้ รูปแบบการออกแบบก่อนหน้านี้ทั้งหมดสามารถนำไปใช้ได้โดยใช้ตัวเลือกการปรับใช้ต่อไปนี้:
- การอนุมานตามเวลาจริง – การอนุมานแบบเรียลไทม์เหมาะอย่างยิ่งสำหรับการอนุมานปริมาณงานที่คุณมีความต้องการแบบเรียลไทม์ แบบโต้ตอบ และมีเวลาแฝงต่ำ ปริมาณงานการอนุมาน ML ตามเวลาจริงอาจรวมถึงแอปพลิเคชัน ML ที่ใช้โมเดลเดียว โดยที่แอปพลิเคชันต้องการโมเดล ML เพียงรุ่นเดียวเพื่อให้บริการคำขอเดียว หรือแอปพลิเคชัน ML ที่ใช้หลายโมเดล ซึ่งแอปพลิเคชันต้องการโมเดล ML หลายรุ่นเพื่อให้บริการเดียว ขอ.
- การอนุมานแบบใกล้เรียลไทม์ (อะซิงโครนัส) – ด้วยการอนุมานแบบเกือบเรียลไทม์ คุณสามารถจัดคิวคำขอที่เข้ามาได้ สามารถใช้สำหรับการอนุมานบนอินพุตที่มีขนาดหลายร้อย MB ทำงานในแบบเกือบเรียลไทม์และอนุญาตให้ผู้ใช้ใช้อินพุตสำหรับการอนุมาน และอ่านเอาต์พุตจากจุดสิ้นสุดจากบัคเก็ต S3 โดยเฉพาะอย่างยิ่งในกรณีของ NLP และคอมพิวเตอร์วิทัศน์ซึ่งมีเพย์โหลดจำนวนมากที่ต้องใช้เวลาประมวลผลล่วงหน้านานขึ้น
- การอนุมานแบบกลุ่ม – การอนุมานแบบกลุ่มสามารถใช้สำหรับการรันการอนุมานแบบออฟไลน์บนชุดข้อมูลขนาดใหญ่ เนื่องจากทำงานแบบออฟไลน์ การอนุมานแบบกลุ่มจึงไม่ได้ให้เวลาแฝงที่ต่ำที่สุด ที่นี่ คำขอการอนุมานได้รับการประมวลผลด้วยทริกเกอร์ตามกำหนดการหรือตามเหตุการณ์ของงานการอนุมานเป็นชุด
- การอนุมานแบบไร้เซิร์ฟเวอร์ – การอนุมานแบบไร้เซิร์ฟเวอร์เหมาะอย่างยิ่งสำหรับปริมาณงานที่มีช่วงว่างระหว่างปริมาณการใช้ข้อมูลที่เพิ่มขึ้น และสามารถทนต่อเวลาแฝงเพิ่มเติมไม่กี่วินาที (การเริ่มเย็น) สำหรับการเรียกใช้ครั้งแรกหลังจากช่วงไม่ได้ใช้งาน ตัวอย่างเช่น บริการแชทบอทหรือแอปพลิเคชันสำหรับประมวลผลแบบฟอร์มหรือวิเคราะห์ข้อมูลจากเอกสาร ในกรณีนี้ คุณอาจต้องการตัวเลือกการอนุมานออนไลน์ที่สามารถจัดเตรียมและปรับขนาดความจุในการคำนวณโดยอัตโนมัติตามปริมาณคำขอการอนุมาน และในช่วงเวลาที่ไม่ได้ใช้งาน ควรจะสามารถปิดความสามารถในการคำนวณได้ทั้งหมด เพื่อไม่ให้คุณถูกเรียกเก็บเงิน การอนุมานแบบไร้เซิร์ฟเวอร์ทำให้การเลือกและการจัดการเซิร์ฟเวอร์หนักขึ้นโดยไม่ได้แยกแยะ โดยการเปิดใช้ทรัพยากรการประมวลผลโดยอัตโนมัติและปรับขนาดเข้าและออกตามการรับส่งข้อมูล
ใช้ฟังก์ชันฟิตเนสเพื่อเลือกตัวเลือกการอนุมาน ML ที่เหมาะสม
การตัดสินใจเลือกตัวเลือกการโฮสต์ที่เหมาะสมนั้นมีความสำคัญ เนื่องจากจะส่งผลต่อผู้ใช้ปลายทางที่แอปพลิเคชันของคุณแสดงผล เพื่อจุดประสงค์นี้ เรากำลังยืมแนวคิดของ ฟังก์ชั่นออกกำลังกายซึ่งสร้างสรรค์โดย Neal Ford และเพื่อนร่วมงานของเขาจาก AWS Partner ThoughtWorks ในงานของพวกเขา การสร้างสถาปัตยกรรมวิวัฒนาการ. ฟังก์ชันฟิตเนสให้การประเมินตัวเลือกการโฮสต์ต่างๆ ตามวัตถุประสงค์ของลูกค้า ฟังก์ชันฟิตเนสช่วยให้คุณได้รับข้อมูลที่จำเป็นเพื่อให้มีวิวัฒนาการตามแผนของสถาปัตยกรรมของคุณ พวกเขาตั้งค่าที่วัดได้เพื่อประเมินว่าโซลูชันของคุณเข้าใกล้เป้าหมายที่ตั้งไว้เพียงใด ฟังก์ชั่นการออกกำลังกายสามารถและควรปรับเปลี่ยนตามสถาปัตยกรรมที่พัฒนาขึ้นเพื่อเป็นแนวทางในกระบวนการเปลี่ยนแปลงที่ต้องการ สิ่งนี้ทำให้สถาปนิกมีเครื่องมือในการแนะนำทีมในขณะที่รักษาความเป็นอิสระของทีม
มีฟังก์ชันฟิตเนสหลัก XNUMX ฟังก์ชันที่ลูกค้าให้ความสำคัญเมื่อต้องเลือกตัวเลือกการอนุมาน ML ที่เหมาะสมสำหรับการโฮสต์โมเดล ML และแอปพลิเคชันของตน
ฟังก์ชั่นฟิตเนส | รายละเอียด |
ราคา |
ในการปรับใช้และบำรุงรักษาโมเดล ML และแอปพลิเคชัน ML บนเฟรมเวิร์กที่ปรับขนาดได้นั้นเป็นกระบวนการทางธุรกิจที่สำคัญ และค่าใช้จ่ายอาจแตกต่างกันไปมากขึ้นอยู่กับตัวเลือกที่ทำเกี่ยวกับโครงสร้างพื้นฐานการโฮสต์โมเดล ตัวเลือกการโฮสต์ เฟรมเวิร์ก ML คุณลักษณะของโมเดล ML การเพิ่มประสิทธิภาพ นโยบายการปรับขนาด และอื่น ๆ. ปริมาณงานต้องใช้โครงสร้างพื้นฐานของฮาร์ดแวร์อย่างเหมาะสมเพื่อให้แน่ใจว่าต้นทุนยังคงอยู่ในการตรวจสอบ ฟังก์ชันฟิตเนสนี้หมายถึงต้นทุนโครงสร้างพื้นฐานโดยเฉพาะ ซึ่งเป็นส่วนหนึ่งของต้นทุนรวมในการเป็นเจ้าของ (TCO) ต้นทุนโครงสร้างพื้นฐานเป็นต้นทุนรวมสำหรับการจัดเก็บ เครือข่าย และการประมวลผล สิ่งสำคัญคือต้องเข้าใจองค์ประกอบอื่นๆ ของ TCO รวมถึงต้นทุนการดำเนินงานและต้นทุนด้านความปลอดภัยและการปฏิบัติตามข้อกำหนด ต้นทุนการดำเนินงานคือต้นทุนรวมของการดำเนินงาน การตรวจสอบ และการบำรุงรักษาโครงสร้างพื้นฐาน ML ต้นทุนการดำเนินงานจะคำนวณเป็นจำนวนวิศวกรที่ต้องการตามแต่ละสถานการณ์และเงินเดือนประจำปีของวิศวกร ซึ่งรวมในช่วงเวลาที่กำหนด ลูกค้าที่ใช้โซลูชัน ML ที่จัดการด้วยตนเองบน อเมซอน อีลาสติก คอมพิวท์ คลาวด์ (อเมซอน อีซี2), บริการ Amazon Elastic Container (อเมซอน อีซีเอส) และ บริการ Amazon Elastic Kubernetes (Amazon EKS) จำเป็นต้องสร้างเครื่องมือในการปฏิบัติงานด้วยตนเอง ลูกค้าที่ใช้ SageMaker มี TCO น้อยกว่ามาก การอนุมานของ SageMaker เป็นบริการที่มีการจัดการเต็มรูปแบบและมีความสามารถนอกกรอบสำหรับการปรับใช้โมเดล ML สำหรับการอนุมาน คุณไม่จำเป็นต้องจัดเตรียมอินสแตนซ์ ตรวจสอบความสมบูรณ์ของอินสแตนซ์ จัดการการอัปเดตความปลอดภัยหรือแพตช์ ปล่อยเมตริกการดำเนินงาน หรือสร้างการตรวจสอบสำหรับเวิร์กโหลดการอนุมาน ML ของคุณ มีความสามารถในตัวเพื่อให้แน่ใจว่ามีความพร้อมใช้งานและความยืดหยุ่นสูง SageMaker รองรับการรักษาความปลอดภัยด้วยการเข้ารหัสแบบ end-to-end ทั้งในขณะพักและอยู่ระหว่างการส่ง รวมถึงการเข้ารหัสของวอลุ่มรูทและ ร้านค้า Amazon Elastic Block (Amazon EBS) ปริมาณ คลาวด์ส่วนตัวเสมือนของ Amazon (Amazon VPC) สนับสนุน AWS PrivateLink, คีย์ที่จัดการโดยลูกค้า, AWS Identity และการจัดการการเข้าถึง (IAM) การควบคุมการเข้าถึงแบบละเอียด AWS CloudTrail การตรวจสอบ การเข้ารหัสอินเตอร์โหนดสำหรับการฝึกอบรม การควบคุมการเข้าถึงโดยใช้แท็ก การแยกเครือข่าย และ Interactive Application Proxy คุณลักษณะด้านความปลอดภัยทั้งหมดนี้มีให้ตั้งแต่แกะกล่องใน SageMaker และสามารถช่วยธุรกิจในการพัฒนาด้านวิศวกรรมได้หลายสิบเดือนในระยะเวลา 3 ปี SageMaker เป็นบริการที่เข้าเกณฑ์ HIPAA และได้รับการรับรองภายใต้ PCI, SOC, GDPR และ ISO SageMaker ยังรองรับตำแหน่งข้อมูล FIPS สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ TCO โปรดดูที่ ต้นทุนรวมในการเป็นเจ้าของ Amazon SageMaker. |
แฝงการอนุมาน | โมเดลและแอปพลิเคชัน ML จำนวนมากมีความสำคัญต่อเวลาแฝง ซึ่งเวลาแฝงในการอนุมานต้องอยู่ภายในขอบเขตที่ระบุโดยวัตถุประสงค์ระดับบริการ เวลาแฝงของการอนุมานขึ้นอยู่กับปัจจัยหลายประการ รวมถึงขนาดและความซับซ้อนของโมเดล แพลตฟอร์มฮาร์ดแวร์ สภาพแวดล้อมของซอฟต์แวร์ และสถาปัตยกรรมเครือข่าย ตัวอย่างเช่น โมเดลที่ใหญ่กว่าและซับซ้อนกว่าอาจใช้เวลานานกว่าในการเรียกใช้การอนุมาน |
ปริมาณงาน (ธุรกรรมต่อวินาที) | สำหรับการอนุมานแบบจำลอง การปรับปริมาณงานให้เหมาะสมเป็นสิ่งสำคัญสำหรับการปรับแต่งประสิทธิภาพและการบรรลุวัตถุประสงค์ทางธุรกิจของแอปพลิเคชัน ML ในขณะที่เรายังคงก้าวหน้าอย่างรวดเร็วในทุกด้านของ ML รวมถึงการใช้งานการดำเนินการทางคณิตศาสตร์ในระดับต่ำในการออกแบบชิป ไลบรารีเฉพาะของฮาร์ดแวร์จึงมีบทบาทมากขึ้นในการเพิ่มประสิทธิภาพ ปัจจัยต่างๆ เช่น ขนาดเพย์โหลด การกระโดดเครือข่าย ลักษณะของการกระโดด คุณลักษณะกราฟแบบจำลอง ตัวดำเนินการในแบบจำลอง และโปรไฟล์ CPU, GPU และหน่วยความจำของอินสแตนซ์การโฮสต์แบบจำลองจะส่งผลต่อทรูพุตของแบบจำลอง ML |
ความซับซ้อนของการกำหนดค่าการปรับสเกล | จำเป็นอย่างยิ่งที่โมเดลหรือแอปพลิเคชัน ML จะต้องทำงานบนเฟรมเวิร์กที่ปรับขนาดได้ซึ่งสามารถรองรับความต้องการของทราฟฟิกที่แตกต่างกันได้ นอกจากนี้ยังช่วยให้สามารถใช้ทรัพยากร CPU และ GPU ได้สูงสุด และป้องกันการจัดสรรทรัพยากรการประมวลผลมากเกินไป |
รูปแบบการจราจรที่คาดไว้ | โมเดลหรือแอปพลิเคชัน ML สามารถมีรูปแบบการรับส่งข้อมูลที่แตกต่างกัน ตั้งแต่การรับส่งข้อมูลตามเวลาจริงอย่างต่อเนื่องไปจนถึงคำขอสูงสุดเป็นพันครั้งต่อวินาทีเป็นระยะ และจากรูปแบบคำขอที่ไม่บ่อยและคาดเดาไม่ได้ ไปจนถึงคำขอแบบออฟไลน์ในชุดข้อมูลขนาดใหญ่ ขอแนะนำให้ทำงานย้อนหลังจากรูปแบบการรับส่งข้อมูลที่คาดไว้ เพื่อเลือกตัวเลือกการโฮสต์ที่เหมาะสมสำหรับโมเดล ML ของคุณ |
การปรับใช้โมเดลด้วย SageMaker
SageMaker เป็นบริการ AWS ที่มีการจัดการเต็มรูปแบบซึ่งช่วยให้นักพัฒนาและนักวิทยาศาสตร์ข้อมูลทุกคนสามารถสร้าง ฝึกฝน และปรับใช้โมเดล ML ตามขนาดได้อย่างรวดเร็ว ด้วยการอนุมานของ SageMaker คุณสามารถปรับใช้โมเดล ML ของคุณบนปลายทางที่เป็นโฮสต์และรับผลการอนุมาน SageMaker มีฮาร์ดแวร์และฟีเจอร์ให้เลือกมากมายเพื่อตอบสนองความต้องการปริมาณงานของคุณ ทำให้คุณสามารถเลือกประเภทอินสแตนซ์ได้มากกว่า 70 ประเภทพร้อมการเร่งด้วยฮาร์ดแวร์ SageMaker ยังสามารถให้คำแนะนำประเภทอินสแตนซ์การอนุมานได้โดยใช้คุณลักษณะใหม่ที่เรียกว่า SageMaker Inference Recommender ในกรณีที่คุณไม่แน่ใจว่าแบบใดจะเหมาะสมที่สุดสำหรับปริมาณงานของคุณ
คุณสามารถเลือกตัวเลือกการปรับใช้ให้ตรงกับกรณีการใช้งานของคุณมากที่สุด เช่น การอนุมานตามเวลาจริง อะซิงโครนัส ชุด และแม้แต่ปลายทางแบบไร้เซิร์ฟเวอร์ นอกจากนี้ SageMaker ยังมีกลยุทธ์การปรับใช้ต่างๆ เช่น canary ฟ้าเขียว, เงาและการทดสอบ A/B สำหรับการปรับใช้โมเดล พร้อมด้วยการปรับใช้ที่คุ้มค่ากับหลายโมเดล จุดสิ้นสุดหลายคอนเทนเนอร์ และการปรับขนาดที่ยืดหยุ่น ด้วยการอนุมานของ SageMaker คุณสามารถดูเมตริกประสิทธิภาพสำหรับจุดสิ้นสุดของคุณได้ใน อเมซอน คลาวด์วอตช์, ปรับขนาดจุดสิ้นสุดโดยอัตโนมัติ ตามทราฟฟิก และอัปเดตโมเดลของคุณในการผลิตโดยไม่สูญเสียความพร้อมใช้งานใดๆ
SageMaker มีตัวเลือกสี่ตัวเลือกในการปรับใช้โมเดลของคุณ เพื่อให้คุณสามารถเริ่มคาดการณ์ได้:
- การอนุมานตามเวลาจริง – เหมาะสำหรับเวิร์กโหลดที่ต้องการเวลาแฝงระดับมิลลิวินาที ขนาดเพย์โหลดสูงสุด 6 MB และเวลาประมวลผลสูงสุด 60 วินาที
- การแปลงแบทช์ – เหมาะอย่างยิ่งสำหรับการคาดคะเนแบบออฟไลน์สำหรับชุดข้อมูลจำนวนมากที่พร้อมใช้งานล่วงหน้า
- การอนุมานแบบอะซิงโครนัส – สิ่งนี้ออกแบบมาสำหรับปริมาณงานที่ไม่มีข้อกำหนดเวลาแฝงต่ำกว่าวินาที ขนาดเพย์โหลดสูงสุด 1 GB และเวลาประมวลผลสูงสุด 15 นาที
- การอนุมานแบบไร้เซิร์ฟเวอร์ – ด้วยการอนุมานแบบไร้เซิร์ฟเวอร์ คุณสามารถปรับใช้โมเดล ML สำหรับการอนุมานได้อย่างรวดเร็ว โดยไม่ต้องกำหนดค่าหรือจัดการโครงสร้างพื้นฐาน นอกจากนี้ คุณจ่ายเฉพาะความจุการประมวลผลที่ใช้ในการประมวลผลคำขอการอนุมาน ซึ่งเหมาะสำหรับปริมาณงานที่ไม่ต่อเนื่อง
แผนภาพต่อไปนี้สามารถช่วยให้คุณเข้าใจตัวเลือกการปรับใช้แบบจำลองการโฮสต์ SageMaker พร้อมกับการประเมินฟังก์ชันฟิตเนสที่เกี่ยวข้อง
มาสำรวจตัวเลือกการปรับใช้แต่ละรายการโดยละเอียด
การอนุมานตามเวลาจริงใน SageMaker
ขอแนะนำให้ใช้การอนุมานตามเวลาจริงของ SageMaker หากคุณมีปริมาณการใช้งานที่ต่อเนื่องและต้องการเวลาแฝงที่ต่ำและสม่ำเสมอสำหรับคำขอของคุณด้วยขนาดเพย์โหลดสูงสุด 6 MB และเวลาในการประมวลผลสูงสุด 60 วินาที คุณปรับใช้โมเดลของคุณกับบริการโฮสติ้งของ SageMaker และรับตำแหน่งข้อมูลที่สามารถใช้ในการอนุมานได้ ตำแหน่งข้อมูลเหล่านี้ได้รับการจัดการอย่างสมบูรณ์และรองรับการปรับขนาดอัตโนมัติ การอนุมานแบบเรียลไทม์เป็นที่นิยมสำหรับกรณีการใช้งานที่คุณคาดหวังการตอบสนองแบบซิงโครนัสที่มีเวลาแฝงต่ำพร้อมรูปแบบการรับส่งข้อมูลที่คาดการณ์ได้ เช่น คำแนะนำส่วนบุคคลสำหรับผลิตภัณฑ์และบริการ หรือกรณีการใช้งานการตรวจจับการฉ้อโกงทางธุรกรรม
โดยทั่วไป แอปพลิเคชันไคลเอนต์จะส่งคำขอไปยังจุดสิ้นสุด SageMaker HTTPS เพื่อรับการอนุมานจากโมเดลที่ปรับใช้ คุณสามารถปรับใช้รูปแบบที่หลากหลายกับจุดสิ้นสุด SageMaker HTTPS เดียวกันได้ สิ่งนี้มีประโยชน์สำหรับการทดสอบความผันแปรของแบบจำลองในการผลิต การปรับขนาดอัตโนมัติช่วยให้คุณปรับจำนวนอินสแตนซ์ที่จัดเตรียมสำหรับโมเดลแบบไดนามิกเพื่อตอบสนองต่อการเปลี่ยนแปลงในปริมาณงานของคุณ
ตารางต่อไปนี้ให้คำแนะนำในการประเมินการอนุมานตามเวลาจริงของ SageMaker ตามฟังก์ชันฟิตเนส
ฟังก์ชั่นฟิตเนส | รายละเอียด |
ราคา |
จุดสิ้นสุดตามเวลาจริงให้การตอบสนองแบบซิงโครนัสต่อคำขอการอนุมาน เนื่องจากจุดสิ้นสุดทำงานอยู่เสมอและพร้อมตอบสนองการอนุมานแบบซิงโครนัสแบบเรียลไทม์ คุณจึงต้องจ่ายสำหรับการใช้อินสแตนซ์ ค่าใช้จ่ายอาจเพิ่มขึ้นอย่างรวดเร็วเมื่อคุณปรับใช้อุปกรณ์ปลายทางหลายตัว โดยเฉพาะอย่างยิ่งหากอุปกรณ์ปลายทางไม่ได้ใช้อินสแตนซ์พื้นฐานอย่างเต็มที่ การเลือกอินสแตนซ์ที่เหมาะสมสำหรับโมเดลของคุณจะช่วยให้แน่ใจว่าคุณมีอินสแตนซ์ที่มีประสิทธิภาพสูงสุดด้วยต้นทุนที่ต่ำที่สุดสำหรับโมเดลของคุณ แนะนำให้ใช้การปรับขนาดอัตโนมัติเพื่อปรับความจุแบบไดนามิกโดยขึ้นอยู่กับทราฟฟิกเพื่อรักษาประสิทธิภาพที่คงที่และคาดการณ์ได้ด้วยต้นทุนที่ต่ำที่สุด SageMaker ขยายการเข้าถึงกลุ่มอินสแตนซ์ ML ที่ใช้ Graviton2 และ Graviton3 AWS กราวิตอน โปรเซสเซอร์สร้างขึ้นเองโดย Amazon Web Services โดยใช้แกน Arm Neoverse 64 บิตเพื่อมอบประสิทธิภาพราคาที่ดีที่สุดสำหรับปริมาณงานบนคลาวด์ของคุณที่ทำงานบน Amazon EC2 ด้วยอินสแตนซ์ที่ใช้ Graviton คุณมีตัวเลือกเพิ่มเติมสำหรับการปรับต้นทุนและประสิทธิภาพให้เหมาะสมเมื่อปรับใช้โมเดล ML ของคุณบน SageMaker SageMaker ยังรองรับ อินสแตนซ์ Inf1ให้การอนุมาน ML ที่มีประสิทธิภาพสูงและคุ้มค่า ด้วย 1–16 ชิป AWS Inferentia ต่ออินสแตนซ์ อินสแตนซ์ Inf1 สามารถปรับขนาดประสิทธิภาพและมอบปริมาณงานที่สูงขึ้นถึงสามเท่า และต้นทุนต่อการอนุมานที่ต่ำกว่าถึง 50% เมื่อเทียบกับอินสแตนซ์ที่ใช้ GPU ของ AWS หากต้องการใช้อินสแตนซ์ Inf1 ใน SageMaker คุณสามารถรวบรวมโมเดลที่ผ่านการฝึกอบรมโดยใช้ Amazon SageMaker นีโอ และเลือกอินสแตนซ์ Inf1 เพื่อปรับใช้โมเดลที่คอมไพล์บน SageMaker นอกจากนี้คุณยังสามารถสำรวจ แผนการออมสำหรับ SageMaker ได้รับประโยชน์จากการประหยัดต้นทุนได้ถึง 64% เมื่อเทียบกับราคาตามความต้องการ เมื่อคุณสร้างจุดสิ้นสุด SageMaker จะแนบไดรฟ์ข้อมูลพื้นที่จัดเก็บ EBS เข้ากับอินสแตนซ์การประมวลผล ML แต่ละรายการที่โฮสต์จุดสิ้นสุด ขนาดของไดรฟ์ข้อมูลพื้นที่จัดเก็บขึ้นอยู่กับประเภทอินสแตนซ์ ค่าใช้จ่ายเพิ่มเติมสำหรับอุปกรณ์ปลายทางแบบเรียลไทม์รวมถึงค่าใช้จ่ายของพื้นที่จัดเก็บที่จัดเตรียม GB ต่อเดือน บวกกับข้อมูล GB ที่ประมวลผลและข้อมูล GB ที่ประมวลผลจากอินสแตนซ์ปลายทาง |
แฝงการอนุมาน | การอนุมานตามเวลาจริงเหมาะอย่างยิ่งเมื่อคุณต้องการจุดสิ้นสุดถาวรที่มีข้อกำหนดเวลาแฝงระดับมิลลิวินาที รองรับขนาดเพย์โหลดสูงสุด 6 MB และเวลาในการประมวลผลสูงสุด 60 วินาที |
ทางเข้า |
ค่าทรูพุตอนุมานในอุดมคติจะขึ้นอยู่กับปัจจัยต่างๆ เช่น โมเดล ขนาดอินพุตโมเดล ขนาดแบทช์ และประเภทอินสแตนซ์ปลายทาง ตามแนวทางปฏิบัติที่ดีที่สุด ให้ตรวจสอบตัววัด CloudWatch สำหรับคำขออินพุตและการใช้ทรัพยากร และเลือกประเภทอินสแตนซ์ที่เหมาะสมเพื่อให้ได้ปริมาณงานที่เหมาะสมที่สุด แอปพลิเคชันธุรกิจสามารถเพิ่มประสิทธิภาพปริมาณงานหรือเพิ่มประสิทธิภาพเวลาแฝง ตัวอย่างเช่น การแบทช์แบบไดนามิกสามารถช่วยเพิ่มปริมาณงานสำหรับแอปที่ไวต่อความหน่วงโดยใช้การอนุมานตามเวลาจริง อย่างไรก็ตาม มีขีดจำกัดสำหรับขนาดแบทช์ โดยที่เวลาแฝงในการอนุมานอาจได้รับผลกระทบ เวลาแฝงในการอนุมานจะเพิ่มขึ้นเมื่อคุณเพิ่มขนาดแบทช์เพื่อปรับปรุงปริมาณงาน ดังนั้น การอนุมานตามเวลาจริงจึงเป็นตัวเลือกที่เหมาะสำหรับแอปพลิเคชันที่ไวต่อเวลาแฝง SageMaker มีตัวเลือกสำหรับการอนุมานแบบอะซิงโครนัสและการแปลงเป็นชุด ซึ่งได้รับการปรับให้เหมาะสมเพื่อให้ได้ปริมาณงานที่สูงขึ้นเมื่อเทียบกับการอนุมานแบบเรียลไทม์ หากแอปพลิเคชันทางธุรกิจสามารถทนต่อเวลาแฝงที่สูงขึ้นเล็กน้อยได้ |
ความซับซ้อนของการกำหนดค่าการปรับสเกล |
รองรับอุปกรณ์ปลายทางตามเวลาจริงของ SageMaker ปรับขนาดอัตโนมัติ ออกจากกล่อง. เมื่อปริมาณงานเพิ่มขึ้น การปรับขนาดอัตโนมัติจะทำให้อินสแตนซ์ออนไลน์มากขึ้น เมื่อปริมาณงานลดลง การปรับขนาดอัตโนมัติจะลบอินสแตนซ์ที่ไม่จำเป็นออก ซึ่งช่วยลดค่าใช้จ่ายในการประมวลผลของคุณ หากไม่มีการปรับขนาดอัตโนมัติ คุณต้องจัดเตรียมสำหรับการรับส่งข้อมูลสูงสุดหรือโมเดลความเสี่ยงไม่พร้อมใช้งาน เว้นแต่การรับส่งข้อมูลไปยังโมเดลของคุณจะคงที่ตลอดทั้งวัน จะมีความจุส่วนเกินที่ไม่ได้ใช้ สิ่งนี้นำไปสู่การใช้ประโยชน์ต่ำและทรัพยากรที่สูญเปล่า ด้วย SageMaker คุณสามารถกำหนดค่าตัวเลือกการปรับขนาดต่างๆ ตามรูปแบบการรับส่งข้อมูลที่คาดไว้ การปรับขนาดอย่างง่ายหรือการปรับขนาดการติดตามเป้าหมายเหมาะอย่างยิ่งเมื่อคุณต้องการปรับขนาดตามเมตริก CloudWatch เฉพาะ คุณสามารถทำได้โดยเลือกเมตริกเฉพาะและตั้งค่าเกณฑ์ เมตริกที่แนะนำสำหรับตัวเลือกนี้เป็นค่าเฉลี่ย หากคุณต้องการการกำหนดค่าขั้นสูง คุณสามารถตั้งค่านโยบายการปรับขนาดขั้นตอนเพื่อปรับจำนวนอินสแตนซ์แบบไดนามิกเพื่อปรับขนาดตามขนาดของการละเมิดการแจ้งเตือน สิ่งนี้ช่วยให้คุณกำหนดค่าการตอบสนองเชิงรุกได้มากขึ้นเมื่อความต้องการถึงระดับหนึ่ง คุณสามารถใช้ตัวเลือกการปรับมาตราส่วนตามกำหนดการเมื่อคุณทราบว่าความต้องการเป็นไปตามกำหนดการเฉพาะในวัน สัปดาห์ เดือน หรือปี ซึ่งช่วยให้คุณระบุกำหนดการแบบครั้งเดียวหรือกำหนดการที่เกิดซ้ำหรือนิพจน์ cron พร้อมกับเวลาเริ่มต้นและสิ้นสุด ซึ่งเป็นขอบเขตของเวลาที่การดำเนินการปรับขนาดอัตโนมัติเริ่มต้นและหยุด ดูรายละเอียดเพิ่มเติมได้ที่ การกำหนดค่าปลายทางการอนุมานการปรับขนาดอัตโนมัติใน Amazon SageMaker และ โหลดการทดสอบและเพิ่มประสิทธิภาพตำแหน่งข้อมูล Amazon SageMaker โดยใช้การปรับขนาดอัตโนมัติ. |
รูปแบบการจราจร | การอนุมานตามเวลาจริงเหมาะสำหรับปริมาณงานที่มีรูปแบบการรับส่งข้อมูลอย่างต่อเนื่องหรือสม่ำเสมอ |
การอนุมานแบบอะซิงโครนัสใน SageMaker
การอนุมานแบบอะซิงโครนัสของ SageMaker เป็นความสามารถใหม่ใน SageMaker ที่จัดคิวคำขอที่เข้ามาและประมวลผลแบบอะซิงโครนัส ตัวเลือกนี้เหมาะสำหรับคำขอที่มีขนาดเพย์โหลดขนาดใหญ่ (สูงสุด 1 GB) เวลาในการประมวลผลที่ยาวนาน (สูงสุด 15 นาที) และความต้องการเวลาแฝงที่ใกล้เคียงเรียลไทม์ ตัวอย่างปริมาณงานสำหรับการอนุมานแบบอะซิงโครนัส ได้แก่ บริษัทด้านการดูแลสุขภาพที่ประมวลผลภาพหรือวิดีโอทางชีวการแพทย์ที่มีความละเอียดสูง เช่น echocardiograms เพื่อตรวจหาความผิดปกติ แอปพลิเคชันเหล่านี้ได้รับทราฟฟิกที่เข้ามาในช่วงเวลาต่างๆ ของวัน และต้องการการประมวลผลที่ใกล้เคียงเรียลไทม์ด้วยต้นทุนที่ต่ำ เวลาในการดำเนินการสำหรับคำขอเหล่านี้สามารถเรียงตามลำดับนาที ทำให้ไม่จำเป็นต้องเรียกใช้การอนุมานตามเวลาจริง แต่เพย์โหลดอินพุตสามารถประมวลผลแบบอะซิงโครนัสจากที่เก็บออบเจกต์เช่น Amazon S3 ด้วยการเข้าคิวอัตโนมัติและเกณฑ์การทำงานพร้อมกันที่กำหนดไว้ล่วงหน้า เมื่อประมวลผล SageMaker จะวางการตอบสนองโดยอนุมานในตำแหน่ง Amazon S3 ที่ส่งคืนก่อนหน้านี้ คุณสามารถเลือกรับการแจ้งเตือนสำเร็จหรือข้อผิดพลาดได้ทาง บริการแจ้งเตือนแบบง่ายของ Amazon (อเมซอน SNS).
ตารางต่อไปนี้ให้คำแนะนำในการประเมินการอนุมานแบบอะซิงโครนัสของ SageMaker ตามฟังก์ชันความเหมาะสม
ฟังก์ชั่นฟิตเนส | รายละเอียด |
ราคา | การอนุมานแบบอะซิงโครนัสเป็นทางเลือกที่ยอดเยี่ยมสำหรับเวิร์กโหลดที่คำนึงถึงต้นทุนด้วยเพย์โหลดขนาดใหญ่และทราฟฟิกแบบต่อเนื่อง การอนุมานแบบอะซิงโครนัสช่วยให้คุณประหยัดค่าใช้จ่ายโดยการปรับขนาดจำนวนอินสแตนซ์ให้เป็นศูนย์โดยอัตโนมัติเมื่อไม่มีคำขอให้ดำเนินการ ดังนั้นคุณจะจ่ายเมื่อปลายทางของคุณกำลังประมวลผลคำขอเท่านั้น คำขอที่ได้รับเมื่อมีอินสแตนซ์เป็นศูนย์จะถูกจัดคิวสำหรับการประมวลผลหลังจากที่จุดสิ้นสุดขยายขนาด |
แฝงการอนุมาน | การอนุมานแบบอะซิงโครนัสเหมาะอย่างยิ่งสำหรับความต้องการเวลาแฝงที่ใกล้เคียงเรียลไทม์ คำขอจะอยู่ในคิวและประมวลผลทันทีที่คอมพิวเตอร์พร้อมใช้งาน ซึ่งโดยทั่วไปจะส่งผลให้มีเวลาแฝงหลายสิบมิลลิวินาที |
ทางเข้า | การอนุมานแบบอะซิงโครนัสเหมาะอย่างยิ่งสำหรับกรณีการใช้งานที่ละเอียดอ่อนซึ่งไม่มีความหน่วงแฝง เนื่องจากแอปพลิเคชันไม่จำเป็นต้องประนีประนอมกับปริมาณงาน คำขอจะไม่ถูกทิ้งในช่วงที่ทราฟฟิกพุ่งสูง เนื่องจากจุดสิ้นสุดการอนุมานแบบอะซิงโครนัสจะจัดคิวคำขอแทนที่จะปล่อยทิ้ง |
ความซับซ้อนของการกำหนดค่าการปรับสเกล |
SageMaker รองรับ ปรับขนาดอัตโนมัติ สำหรับจุดสิ้นสุดแบบอะซิงโครนัส จุดสิ้นสุดการอนุมานแบบอะซิงโครนัสไม่เหมือนกับจุดสิ้นสุดที่โฮสต์ตามเวลาจริง สนับสนุนการลดขนาดอินสแตนซ์ให้เป็นศูนย์โดยการตั้งค่าความจุขั้นต่ำเป็นศูนย์ สำหรับตำแหน่งข้อมูลแบบอะซิงโครนัส SageMaker ขอแนะนำอย่างยิ่งให้คุณสร้างการกำหนดค่านโยบายสำหรับการปรับขนาดการติดตามเป้าหมายสำหรับโมเดลที่ปรับใช้ (ตัวแปร) สำหรับกรณีการใช้งานที่สามารถทนต่อค่าปรับ Cold start ไม่กี่นาที คุณสามารถเลือกลดจำนวนอินสแตนซ์ปลายทางเป็นศูนย์เมื่อไม่มีคำขอที่ค้างอยู่และขยายขนาดสำรองเมื่อมีคำขอใหม่มาถึง เพื่อให้คุณชำระเงินเฉพาะในช่วงเวลาที่ ปลายทางกำลังดำเนินการตามคำขอ |
รูปแบบการจราจร | ปลายทางแบบอะซิงโครนัสจัดคิวคำขอขาเข้าและประมวลผลแบบอะซิงโครนัส เป็นตัวเลือกที่ดีสำหรับรูปแบบการรับส่งข้อมูลที่ไม่สม่ำเสมอหรือไม่บ่อยนัก |
การอนุมานเป็นชุดใน SageMaker
การแปลงเป็นชุดของ SageMaker เหมาะอย่างยิ่งสำหรับการคาดคะเนแบบออฟไลน์สำหรับชุดข้อมูลจำนวนมากที่พร้อมใช้งานล่วงหน้า คุณลักษณะการแปลงเป็นชุดเป็นวิธีที่มีประสิทธิภาพสูงและปริมาณงานสูงสำหรับการแปลงข้อมูลและสร้างการอนุมาน เหมาะอย่างยิ่งสำหรับสถานการณ์ที่คุณกำลังจัดการกับชุดข้อมูลจำนวนมาก ไม่ต้องการเวลาแฝงรองวินาที หรือจำเป็นต้องทั้งประมวลผลล่วงหน้าและแปลงข้อมูลการฝึกอบรม ลูกค้าในบางโดเมน เช่น การโฆษณาและการตลาด หรือการดูแลสุขภาพ มักจะต้องทำการคาดการณ์แบบออฟไลน์บนชุดข้อมูลแบบไฮเปอร์สเกล โดยที่ทรูพุตสูงมักจะเป็นวัตถุประสงค์ของกรณีการใช้งาน และเวลาแฝงก็ไม่ใช่เรื่องที่ต้องกังวล
เมื่องานการแปลงเป็นชุดเริ่มต้น SageMaker จะเริ่มต้นอินสแตนซ์การประมวลผลและกระจายภาระงานการอนุมานระหว่างกัน โดยจะปล่อยทรัพยากรเมื่องานเสร็จสิ้น ดังนั้นคุณจึงจ่ายเฉพาะส่วนที่ใช้ระหว่างการรันงานของคุณเท่านั้น เมื่องานเสร็จสิ้น SageMaker จะบันทึกผลการคาดคะเนในบัคเก็ต S3 ที่คุณระบุ งานการอนุมานแบบกลุ่มมักเป็นตัวเลือกที่ดีสำหรับการปรับขนาดแนวนอน ผู้ปฏิบัติงานแต่ละคนภายในคลัสเตอร์สามารถทำงานบนชุดย่อยของข้อมูลที่แตกต่างกัน โดยไม่จำเป็นต้องแลกเปลี่ยนข้อมูลกับผู้ปฏิบัติงานคนอื่นๆ AWS นำเสนอตัวเลือกพื้นที่จัดเก็บและการประมวลผลมากมายที่เปิดใช้งานการปรับขนาดแนวนอน ตัวอย่างปริมาณงานสำหรับการแปลงเป็นชุดของ SageMaker รวมถึงแอปพลิเคชันออฟไลน์ เช่น แอปพลิเคชันธนาคารสำหรับคาดการณ์การเปลี่ยนใจของลูกค้า ซึ่งสามารถกำหนดเวลาให้งานออฟไลน์ทำงานเป็นระยะๆ ได้
ตารางต่อไปนี้ให้คำแนะนำในการประเมินการแปลงเป็นชุดของ SageMaker ตามฟังก์ชันความเหมาะสม
ฟังก์ชั่นฟิตเนส | รายละเอียด |
ราคา | การแปลงเป็นชุดของ SageMaker ช่วยให้คุณสามารถเรียกใช้การคาดการณ์ในชุดข้อมูลขนาดใหญ่หรือขนาดเล็กได้ คุณจะถูกเรียกเก็บเงินสำหรับประเภทอินสแตนซ์ที่คุณเลือก โดยขึ้นอยู่กับระยะเวลาการใช้งาน SageMaker จัดการการจัดเตรียมทรัพยากรเมื่อเริ่มงานและเผยแพร่เมื่องานเสร็จสิ้น ไม่มีค่าใช้จ่ายในการประมวลผลข้อมูลเพิ่มเติม |
แฝงการอนุมาน | คุณสามารถใช้การเรียกตามเหตุการณ์หรือตามกำหนดเวลา เวลาแฝงอาจแตกต่างกันไปขึ้นอยู่กับขนาดของข้อมูลอนุมาน การทำงานพร้อมกันของงาน ความซับซ้อนของโมเดล และความสามารถของอินสแตนซ์การประมวลผล |
ทางเข้า |
งานการแปลงเป็นชุดสามารถทำได้ในชุดข้อมูลหลายชุด ตั้งแต่ข้อมูลระดับเพตะไบต์ไปจนถึงชุดข้อมูลขนาดเล็กมาก ไม่จำเป็นต้องปรับขนาดชุดข้อมูลที่ใหญ่ขึ้นให้เป็นชิ้นข้อมูลเล็กๆ คุณสามารถเร่งงานการแปลงเป็นชุดได้โดยใช้ค่าที่เหมาะสมที่สุดสำหรับพารามิเตอร์ เช่น MaxPayloadInMB, MaxConcurrentTransforms,หรือ กลยุทธ์แบทช์. ค่าที่เหมาะสำหรับ การประมวลผลเป็นชุดสามารถเพิ่มปริมาณงานและเพิ่มประสิทธิภาพทรัพยากรของคุณได้ เนื่องจากช่วยให้การอนุมานจำนวนมากขึ้นในระยะเวลาหนึ่งโดยเสียค่าใช้จ่ายจากเวลาแฝง เพื่อเพิ่มประสิทธิภาพการปรับใช้แบบจำลองเพื่อให้ได้ปริมาณงานที่สูงขึ้น แนวทางทั่วไปคือการเพิ่มขนาดแบทช์จนกว่าปริมาณงานจะลดลง |
ความซับซ้อนของการกำหนดค่าการปรับสเกล | การแปลงเป็นชุดของ SageMaker ใช้สำหรับการอนุมานแบบออฟไลน์ที่ไม่ไวต่อเวลาแฝง |
รูปแบบการจราจร | สำหรับการอนุมานแบบออฟไลน์ งานการแปลงเป็นชุดจะถูกกำหนดเวลาหรือเริ่มต้นโดยใช้ทริกเกอร์ตามเหตุการณ์ |
การอนุมานแบบไร้เซิร์ฟเวอร์ใน SageMaker
การอนุมานแบบไร้เซิร์ฟเวอร์ของ SageMaker ช่วยให้คุณสามารถปรับใช้โมเดล ML สำหรับการอนุมานโดยไม่ต้องกำหนดค่าหรือจัดการโครงสร้างพื้นฐาน ตามปริมาณการอนุมานที่โมเดลของคุณได้รับ การอนุมานแบบไร้เซิร์ฟเวอร์ของ SageMaker จะจัดเตรียม ปรับขนาด และปิดความสามารถในการคำนวณโดยอัตโนมัติ ด้วยเหตุนี้ คุณจึงจ่ายเฉพาะเวลาในการประมวลผลเพื่อเรียกใช้โค้ดอนุมานและจำนวนข้อมูลที่ประมวลผล ไม่ใช่สำหรับเวลาว่าง คุณสามารถใช้อัลกอริทึมในตัวของ SageMaker และคอนเทนเนอร์ที่ให้บริการเฟรมเวิร์ก ML เพื่อปรับใช้โมเดลของคุณกับจุดสิ้นสุดการอนุมานแบบไร้เซิร์ฟเวอร์ หรือเลือกที่จะนำคอนเทนเนอร์มาเอง หากทราฟฟิกคาดการณ์ได้และเสถียร คุณสามารถอัปเดตจากจุดสิ้นสุดการอนุมานแบบไร้เซิร์ฟเวอร์ไปยังจุดสิ้นสุดแบบเรียลไทม์ของ SageMaker ได้อย่างง่ายดาย โดยไม่จำเป็นต้องทำการเปลี่ยนแปลงอิมเมจคอนเทนเนอร์ของคุณ ด้วยการอนุมานแบบไร้เซิร์ฟเวอร์ คุณยังได้รับประโยชน์จากคุณสมบัติอื่นๆ ของ SageMaker รวมถึงเมตริกในตัว เช่น จำนวนการเรียกใช้ ข้อบกพร่อง เวลาแฝง เมตริกโฮสต์ และข้อผิดพลาดใน CloudWatch
ตารางต่อไปนี้ให้คำแนะนำในการประเมินการอนุมานแบบไร้เซิร์ฟเวอร์ของ SageMaker ตามฟังก์ชันความเหมาะสม
ฟังก์ชั่นฟิตเนส | รายละเอียด |
ราคา | ด้วยรูปแบบการจ่ายตามการใช้งาน การอนุมานแบบไร้เซิร์ฟเวอร์จึงเป็นตัวเลือกที่คุ้มค่าหากคุณมีรูปแบบทราฟฟิกไม่บ่อยหรือไม่ต่อเนื่อง คุณจ่ายเฉพาะระยะเวลาที่ปลายทางประมวลผลคำขอเท่านั้น ดังนั้นจึงสามารถประหยัดค่าใช้จ่ายได้หากรูปแบบการรับส่งข้อมูลไม่สม่ำเสมอ |
แฝงการอนุมาน |
จุดสิ้นสุดแบบไร้เซิร์ฟเวอร์ให้เวลาแฝงในการอนุมานต่ำ (ตามลำดับมิลลิวินาทีถึงวินาที) พร้อมความสามารถในการปรับขนาดทันทีจากการอนุมานนับหมื่นเป็นพันภายในไม่กี่วินาทีตามรูปแบบการใช้งาน ทำให้เหมาะสำหรับแอปพลิเคชัน ML ที่มีทราฟฟิกไม่สม่ำเสมอหรือคาดเดาไม่ได้ เนื่องจากอุปกรณ์ปลายทางแบบไร้เซิร์ฟเวอร์จัดเตรียมทรัพยากรตามความต้องการ อุปกรณ์ปลายทางของคุณอาจพบกับเวลาแฝงเพิ่มขึ้นสองสามวินาที (การเริ่มเย็น) สำหรับการเรียกใช้ครั้งแรกหลังจากช่วงเวลาที่ไม่ได้ใช้งาน เวลาเริ่มต้นเย็นขึ้นอยู่กับขนาดโมเดลของคุณ ระยะเวลาที่ใช้ในการดาวน์โหลดโมเดลของคุณ และเวลาเริ่มต้นของคอนเทนเนอร์ของคุณ |
ทางเข้า | เมื่อกำหนดค่าปลายทางแบบไร้เซิร์ฟเวอร์ คุณสามารถระบุขนาดหน่วยความจำและจำนวนสูงสุดของการเรียกใช้พร้อมกันได้ การอนุมานแบบไร้เซิร์ฟเวอร์ของ SageMaker จะกำหนดทรัพยากรการประมวลผลโดยอัตโนมัติตามสัดส่วนของหน่วยความจำที่คุณเลือก หากคุณเลือกขนาดหน่วยความจำที่ใหญ่กว่า คอนเทนเนอร์ของคุณจะสามารถเข้าถึง vCPU ได้มากขึ้น ตามกฎทั่วไป ขนาดหน่วยความจำควรใหญ่เท่ากับขนาดโมเดลของคุณเป็นอย่างน้อย ขนาดหน่วยความจำที่คุณสามารถเลือกได้คือ 1024 MB, 2048 MB, 3072 MB, 4096 MB, 5120 MB และ 6144 MB ไม่ว่าคุณจะเลือกขนาดหน่วยความจำเท่าใด อุปกรณ์ปลายทางแบบไร้เซิร์ฟเวอร์จะมีพื้นที่เก็บข้อมูลดิสก์ชั่วคราว 5 GB |
ความซับซ้อนของการกำหนดค่าการปรับสเกล | ตำแหน่งข้อมูลแบบไร้เซิร์ฟเวอร์เปิดใช้ทรัพยากรการประมวลผลโดยอัตโนมัติและปรับขนาดเข้าและออกโดยขึ้นอยู่กับทราฟฟิก ทำให้ไม่จำเป็นต้องเลือกประเภทอินสแตนซ์หรือจัดการนโยบายการปรับขนาด สิ่งนี้จะช่วยขจัดความยุ่งยากในการเลือกและจัดการเซิร์ฟเวอร์ที่ไม่แตกต่างออกไป |
รูปแบบการจราจร | การอนุมานแบบไร้เซิร์ฟเวอร์เหมาะอย่างยิ่งสำหรับปริมาณงานที่มีรูปแบบทราฟฟิกไม่บ่อยหรือไม่ต่อเนื่อง |
จำลองรูปแบบการออกแบบโฮสติ้งใน SageMaker
จุดสิ้นสุดการอนุมานของ SageMaker ใช้คอนเทนเนอร์ Docker สำหรับการโฮสต์โมเดล ML คอนเทนเนอร์ช่วยให้คุณจัดแพ็คเกจซอฟต์แวร์เป็นหน่วยมาตรฐานที่ทำงานอย่างสม่ำเสมอบนแพลตฟอร์มใดๆ ที่รองรับ Docker สิ่งนี้ทำให้มั่นใจได้ถึงความสามารถในการพกพาข้ามแพลตฟอร์ม การปรับใช้โครงสร้างพื้นฐานที่ไม่เปลี่ยนรูป และการจัดการการเปลี่ยนแปลงที่ง่ายขึ้นและการใช้งาน CI/CD SageMaker นำเสนอคอนเทนเนอร์ที่มีการจัดการที่สร้างไว้ล่วงหน้าสำหรับเฟรมเวิร์กยอดนิยม เช่น Apache MXNet, TensorFlow, PyTorch, Sklearn และ Hugging Face สำหรับรายการอิมเมจคอนเทนเนอร์ SageMaker ทั้งหมด โปรดดูที่ รูปภาพคอนเทนเนอร์การเรียนรู้เชิงลึกที่มีอยู่. ในกรณีที่ SageMaker ไม่มีคอนเทนเนอร์ที่รองรับ คุณสามารถสร้างคอนเทนเนอร์ของคุณเอง (BYOC) และส่งอิมเมจที่คุณกำหนดเอง ติดตั้งการขึ้นต่อกันที่จำเป็นสำหรับโมเดลของคุณ
ในการปรับใช้โมเดลบน SageMaker คุณต้องมีคอนเทนเนอร์ (คอนเทนเนอร์เฟรมเวิร์กที่มีการจัดการของ SageMaker หรือ BYOC) และอินสแตนซ์การประมวลผลเพื่อโฮสต์คอนเทนเนอร์ SageMaker รองรับตัวเลือกขั้นสูงหลายตัวเลือกสำหรับรูปแบบการออกแบบการโฮสต์โมเดล ML ทั่วไป โดยโมเดลสามารถโฮสต์บนคอนเทนเนอร์เดียวหรือโฮสต์ร่วมบนคอนเทนเนอร์ที่ใช้ร่วมกัน
แอปพลิเคชัน ML แบบเรียลไทม์อาจใช้โมเดลเดียวหรือหลายโมเดลเพื่อตอบสนองคำขอการคาดคะเนเดียว แผนภาพต่อไปนี้แสดงสถานการณ์การอนุมานต่างๆ สำหรับแอปพลิเคชัน ML
มาสำรวจตัวเลือกการโฮสต์ SageMaker ที่เหมาะสมสำหรับแต่ละสถานการณ์การอนุมานก่อนหน้านี้ คุณสามารถดูฟังก์ชันฟิตเนสเพื่อประเมินว่าเป็นตัวเลือกที่เหมาะสมสำหรับกรณีการใช้งานที่กำหนดหรือไม่
การโฮสต์แอปพลิเคชัน ML ที่ใช้โมเดลเดียว
มีหลายตัวเลือกในการโฮสต์แอปพลิเคชัน ML ที่ใช้โมเดลเดียวโดยใช้บริการโฮสต์ของ SageMaker ขึ้นอยู่กับสถานการณ์การปรับใช้
ปลายทางรุ่นเดียว
จุดสิ้นสุดโมเดลเดียวของ SageMaker ช่วยให้คุณสามารถโฮสต์โมเดลหนึ่งโมเดลบนคอนเทนเนอร์ที่โฮสต์บนอินสแตนซ์เฉพาะสำหรับเวลาแฝงต่ำและปริมาณงานสูง ตำแหน่งข้อมูลเหล่านี้ได้รับการจัดการอย่างสมบูรณ์และรองรับการปรับขนาดอัตโนมัติ คุณสามารถกำหนดค่าจุดสิ้นสุดรุ่นเดียวเป็นจุดสิ้นสุดที่เตรียมใช้งานโดยที่คุณส่งผ่านการกำหนดค่าโครงสร้างพื้นฐานของจุดสิ้นสุด เช่น ประเภทและจำนวนอินสแตนซ์ หรือจุดสิ้นสุดแบบไร้เซิร์ฟเวอร์ที่ SageMaker เรียกใช้ทรัพยากรการประมวลผลโดยอัตโนมัติและปรับขนาดเข้าและออกโดยขึ้นอยู่กับทราฟฟิก ขจัดความจำเป็น เพื่อเลือกประเภทอินสแตนซ์หรือจัดการนโยบายการปรับขนาด จุดสิ้นสุดแบบไร้เซิร์ฟเวอร์มีไว้สำหรับแอปพลิเคชันที่มีทราฟฟิกไม่สม่ำเสมอหรือคาดเดาไม่ได้
แผนภาพต่อไปนี้แสดงสถานการณ์การอนุมานจุดสิ้นสุดแบบโมเดลเดียว
ตารางต่อไปนี้ให้คำแนะนำในการประเมินฟังก์ชันฟิตเนสสำหรับตำแหน่งข้อมูลรุ่นเดียวที่จัดเตรียมไว้ สำหรับการประเมินฟังก์ชันความสมบูรณ์ของปลายทางแบบไร้เซิร์ฟเวอร์ โปรดดูส่วนปลายทางแบบไร้เซิร์ฟเวอร์ในโพสต์นี้
ฟังก์ชั่นฟิตเนส | รายละเอียด |
ราคา | คุณจะถูกเรียกเก็บเงินสำหรับการใช้งานประเภทอินสแตนซ์ที่คุณเลือก เนื่องจากเอ็นด์พอยท์ทำงานและพร้อมใช้งานตลอดเวลา ค่าใช้จ่ายจึงเพิ่มขึ้นอย่างรวดเร็ว การเลือกอินสแตนซ์ที่เหมาะสมสำหรับโมเดลของคุณจะช่วยให้แน่ใจว่าคุณมีอินสแตนซ์ที่มีประสิทธิภาพสูงสุดด้วยต้นทุนที่ต่ำที่สุดสำหรับโมเดลของคุณ แนะนำให้ใช้การปรับขนาดอัตโนมัติเพื่อปรับความจุแบบไดนามิกโดยขึ้นอยู่กับทราฟฟิกเพื่อรักษาประสิทธิภาพที่คงที่และคาดการณ์ได้ด้วยต้นทุนที่ต่ำที่สุด |
แฝงการอนุมาน | จุดสิ้นสุดแบบโมเดลเดียวให้การอนุมานแบบซิงโครนัสแบบโต้ตอบแบบเรียลไทม์พร้อมความต้องการเวลาแฝงมิลลิวินาที |
ทางเข้า | ปริมาณงานอาจได้รับผลกระทบจากปัจจัยต่างๆ เช่น ขนาดอินพุตโมเดล ขนาดแบทช์ ประเภทอินสแตนซ์ปลายทาง และอื่นๆ ขอแนะนำให้ตรวจสอบตัววัด CloudWatch สำหรับคำขออินพุตและการใช้ทรัพยากร และเลือกประเภทอินสแตนซ์ที่เหมาะสมเพื่อให้ได้ทรูพุตที่เหมาะสมที่สุด SageMaker มีคุณสมบัติในการจัดการทรัพยากรและเพิ่มประสิทธิภาพการอนุมานเมื่อปรับใช้โมเดล ML คุณสามารถ เพิ่มประสิทธิภาพโมเดลโดยใช้ Neoหรือใช้อินสแตนซ์ Inf1 เพื่อทรูพุตที่ดีขึ้นของโมเดลที่โฮสต์โดย SageMaker โดยใช้อินสแตนซ์ GPU สำหรับตำแหน่งข้อมูลของคุณ |
ความซับซ้อนของการกำหนดค่าการปรับสเกล | รองรับการปรับขนาดอัตโนมัติตั้งแต่แกะกล่อง SageMaker แนะนำให้เลือกที่เหมาะสม การกำหนดค่าการปรับขนาด โดยการแสดง โหลดการทดสอบ. |
รูปแบบการจราจร | จุดสิ้นสุดแบบโมเดลเดียวเหมาะสำหรับปริมาณงานที่มีรูปแบบการรับส่งข้อมูลที่คาดการณ์ได้ |
ร่วมเป็นเจ้าภาพหลายรุ่น
เมื่อคุณจัดการกับโมเดลจำนวนมาก การปรับใช้แต่ละโมเดลบนจุดสิ้นสุดแต่ละรายการด้วยคอนเทนเนอร์และอินสแตนซ์เฉพาะอาจส่งผลให้ต้นทุนเพิ่มขึ้นอย่างมาก นอกจากนี้ ยังกลายเป็นเรื่องยากที่จะจัดการโมเดลจำนวนมากในการผลิต โดยเฉพาะอย่างยิ่งเมื่อคุณไม่จำเป็นต้องเรียกใช้โมเดลทั้งหมดพร้อมกัน แต่ยังต้องการให้พร้อมใช้งานตลอดเวลา การโฮสต์หลายรุ่นร่วมกันบนทรัพยากรการประมวลผลพื้นฐานเดียวกันทำให้ง่ายต่อการจัดการการปรับใช้ ML ตามขนาด และลดต้นทุนการโฮสต์ของคุณผ่านการใช้งานที่เพิ่มขึ้นของจุดสิ้นสุดและทรัพยากรการประมวลผลพื้นฐาน SageMaker รองรับตัวเลือกการโฮสต์ร่วมของโมเดลขั้นสูง เช่น จุดสิ้นสุดหลายโมเดล (MME) สำหรับโมเดลที่เป็นเนื้อเดียวกัน และตำแหน่งข้อมูลหลายคอนเทนเนอร์ (MCE) สำหรับโมเดลต่างกัน โมเดลที่เป็นเนื้อเดียวกันใช้เฟรมเวิร์ก ML เดียวกันบนคอนเทนเนอร์บริการที่ใช้ร่วมกัน ในขณะที่โมเดลต่างกันทำให้คุณสามารถปรับใช้คอนเทนเนอร์ที่ให้บริการหลายตัวที่ใช้โมเดลหรือเฟรมเวิร์กที่แตกต่างกันบนจุดสิ้นสุดเดียว
แผนภาพต่อไปนี้แสดงตัวเลือกการโฮสต์ร่วมของโมเดลโดยใช้ SageMaker
จุดปลายหลายรุ่นของ SageMaker
SageMaker MME อนุญาตให้คุณโฮสต์หลายโมเดลโดยใช้คอนเทนเนอร์ที่ให้บริการร่วมกันบนจุดสิ้นสุดเดียว นี่เป็นโซลูชันที่ปรับขนาดได้และประหยัดต้นทุนในการปรับใช้โมเดลจำนวนมากที่ตอบสนองกรณีการใช้งาน เฟรมเวิร์ก หรือตรรกะการอนุมานเดียวกัน MME สามารถให้บริการคำขอแบบไดนามิกตามรูปแบบที่เรียกใช้โดยผู้โทร นอกจากนี้ยังลดค่าใช้จ่ายในการปรับใช้เนื่องจาก SageMaker จัดการการโหลดโมเดลในหน่วยความจำและปรับขนาดตามรูปแบบการรับส่งข้อมูล คุณลักษณะนี้เหมาะอย่างยิ่งเมื่อคุณมีโมเดลที่คล้ายกันจำนวนมากซึ่งคุณสามารถให้บริการผ่านคอนเทนเนอร์ที่ให้บริการร่วมกัน และไม่จำเป็นต้องเข้าถึงโมเดลทั้งหมดพร้อมกัน จุดสิ้นสุดหลายรุ่นยังเปิดใช้งานการแบ่งปันเวลาของทรัพยากรหน่วยความจำในรุ่นของคุณ วิธีนี้จะทำงานได้ดีที่สุดเมื่อโมเดลมีขนาดและเวลาแฝงในการเรียกใช้ที่ใกล้เคียงกัน ทำให้ MME สามารถใช้อินสแตนซ์กับโมเดลทั้งหมดได้อย่างมีประสิทธิภาพ SageMaker MME รองรับการโฮสต์ทั้งรุ่นที่สนับสนุน CPU และ GPU เมื่อใช้โมเดลที่สนับสนุน GPU คุณสามารถลดต้นทุนการปรับใช้โมเดลผ่านการใช้งานเอ็นด์พอยต์ที่เพิ่มขึ้นและอินสแตนซ์การประมวลผลแบบเร่งความเร็วพื้นฐาน สำหรับกรณีการใช้งานจริงของ MME โปรดดูที่ วิธีปรับขนาดการอนุมานการเรียนรู้ของเครื่องสำหรับกรณีการใช้งาน SaaS แบบหลายผู้เช่า.
ตารางต่อไปนี้ให้คำแนะนำในการประเมินฟังก์ชันฟิตเนสสำหรับ MME
ฟังก์ชั่นฟิตเนส | รายละเอียด |
ราคา |
MME ช่วยให้ใช้คอนเทนเนอร์ที่ให้บริการร่วมกันเพื่อโฮสต์โมเดลหลายพันรายการบนจุดสิ้นสุดเดียว สิ่งนี้ช่วยลดต้นทุนการโฮสต์ได้อย่างมากโดยการปรับปรุงการใช้งานอุปกรณ์ปลายทางเมื่อเทียบกับการใช้อุปกรณ์ปลายทางรุ่นเดียว ตัวอย่างเช่น หากคุณมี 10 โมเดลที่จะปรับใช้โดยใช้อินสแตนซ์ ml.c5.large โดยอ้างอิงจาก ราคา SageMakerค่าใช้จ่ายในการมีจุดสิ้นสุดถาวรแบบโมเดลเดียว 10 จุดคือ: 10 * 0.102 USD = 1.02 USD ต่อชั่วโมง ในขณะที่ MME หนึ่งเครื่องโฮสต์โมเดล 10 รุ่น เราประหยัดค่าใช้จ่ายได้ 10 เท่า: 1 * 0.102 USD = 0.102 USD ต่อชั่วโมง |
แฝงการอนุมาน |
ตามค่าเริ่มต้น แคช MME มักจะใช้แบบจำลองในหน่วยความจำและบนดิสก์เพื่อให้การอนุมานเวลาแฝงต่ำ โมเดลที่แคชไว้จะถูกยกเลิกการโหลดหรือลบออกจากดิสก์ก็ต่อเมื่อคอนเทนเนอร์มีหน่วยความจำหรือพื้นที่ดิสก์ไม่เพียงพอเพื่อรองรับโมเดลเป้าหมายใหม่เท่านั้น MME อนุญาตให้โหลดโมเดลแบบ Lazy Loading ซึ่งหมายความว่าโมเดลจะถูกโหลดลงในหน่วยความจำเมื่อเรียกใช้เป็นครั้งแรก สิ่งนี้จะเพิ่มประสิทธิภาพการใช้หน่วยความจำ อย่างไรก็ตาม ทำให้เวลาตอบสนองเพิ่มขึ้นอย่างรวดเร็วในการโหลดครั้งแรก ส่งผลให้เกิดปัญหาการเริ่มเย็น ดังนั้น MME ยังเหมาะกับสถานการณ์ที่สามารถทนต่อการลงโทษที่เกี่ยวข้องกับเวลาแฝงที่เกี่ยวข้องกับการเริ่มเย็นซึ่งเกิดขึ้นเมื่อเรียกใช้โมเดลที่ใช้งานไม่บ่อย เพื่อให้บรรลุเป้าหมายด้านเวลาแฝงและปริมาณงานของแอปพลิเคชัน ML อินสแตนซ์ GPU จึงเป็นที่นิยมมากกว่าอินสแตนซ์ CPU (เมื่อพิจารณาจาก GPU พลังการคำนวณ) ด้วยการรองรับ MME สำหรับ GPU คุณสามารถปรับใช้โมเดลการเรียนรู้เชิงลึกนับพันหลังตำแหน่งข้อมูล SageMaker เพียงจุดเดียว MME สามารถเรียกใช้หลายรุ่นบนคอร์ GPU แชร์อินสแตนซ์ GPU หลังจุดสิ้นสุดในหลายๆ รุ่น และโหลดและยกเลิกการโหลดโมเดลแบบไดนามิกตามทราฟฟิกที่เข้ามา ด้วยวิธีนี้ คุณจะประหยัดค่าใช้จ่ายได้อย่างมากและได้ประสิทธิภาพด้านราคาที่ดีที่สุด หากกรณีการใช้งานของคุณต้องการธุรกรรมต่อวินาที (TPS) หรือข้อกำหนดด้านเวลาแฝงที่สูงขึ้นอย่างมาก เราขอแนะนำให้โฮสต์โมเดลบนจุดสิ้นสุดเฉพาะ |
ทางเข้า |
ค่าในอุดมคติของปริมาณงานการอนุมาน MME ขึ้นอยู่กับปัจจัยต่างๆ เช่น รุ่น ขนาดเพย์โหลด และประเภทอินสแตนซ์ปลายทาง จำนวนหน่วยความจำอินสแตนซ์ที่สูงขึ้นทำให้คุณสามารถโหลดโมเดลได้มากขึ้นและพร้อมให้บริการคำขอการอนุมาน คุณไม่จำเป็นต้องเสียเวลาในการโหลดโมเดล จำนวน vCPU ที่สูงขึ้นทำให้คุณสามารถเรียกใช้โมเดลเฉพาะได้มากขึ้นพร้อมกัน MME โหลดและยกเลิกการโหลดโมเดลเข้าและออกจากหน่วยความจำอินสแตนซ์แบบไดนามิก ซึ่งอาจส่งผลต่อประสิทธิภาพการทำงานของ I/O SageMaker MME กับ GPU ทำงานโดยใช้ เซิร์ฟเวอร์การอนุมาน NVIDIA Tritonซึ่งเป็นซอฟต์แวร์ที่ให้บริการการอนุมานแบบโอเพ่นซอร์สซึ่งช่วยลดความซับซ้อนของกระบวนการให้บริการการอนุมานและให้ประสิทธิภาพการอนุมานสูง SageMaker โหลดโมเดลไปยังหน่วยความจำของคอนเทนเนอร์ NVIDIA Triton บนอินสแตนซ์ที่เร่งด้วย GPU และให้บริการคำขอการอนุมาน แกน GPU ถูกแชร์โดยทุกรุ่นในอินสแตนซ์ หากโหลดโมเดลในหน่วยความจำคอนเทนเนอร์แล้ว คำขอที่ตามมาจะได้รับบริการเร็วขึ้น เนื่องจาก SageMaker ไม่จำเป็นต้องดาวน์โหลดและโหลดอีกครั้ง แนะนำให้ใช้การทดสอบและวิเคราะห์ประสิทธิภาพที่เหมาะสมในการปรับใช้การผลิตที่ประสบความสำเร็จ SageMaker นำเสนอเมตริก CloudWatch สำหรับอุปกรณ์ปลายทางหลายรุ่น คุณจึงสามารถกำหนดการใช้งานอุปกรณ์ปลายทางและอัตราการเข้าชมแคชเพื่อช่วยเพิ่มประสิทธิภาพอุปกรณ์ปลายทางของคุณ |
ความซับซ้อนของการกำหนดค่าการปรับสเกล | ตำแหน่งข้อมูลหลายโมเดลของ SageMaker รองรับการปรับขนาดอัตโนมัติอย่างสมบูรณ์ ซึ่งจะจัดการแบบจำลองของโมเดลเพื่อให้แน่ใจว่าโมเดลจะปรับขนาดตามรูปแบบการรับส่งข้อมูล อย่างไรก็ตาม ขอแนะนำให้ทำการทดสอบโหลดที่เหมาะสมเพื่อกำหนดขนาดที่เหมาะสมที่สุดของอินสแตนซ์สำหรับการปรับขนาดปลายทางอัตโนมัติ การปรับขนาดฟลีต MME ให้ถูกต้องเป็นสิ่งสำคัญเพื่อหลีกเลี่ยงการขนถ่ายโมเดลจำนวนมากเกินไป การโหลดโมเดลหลายร้อยโมเดลในอินสแตนซ์ขนาดใหญ่ไม่กี่ตัวอาจนำไปสู่การควบคุมปริมาณในบางกรณี และควรใช้อินสแตนซ์จำนวนมากขึ้นและเล็กลง หากต้องการใช้ประโยชน์จากการปรับขนาดโมเดลอัตโนมัติใน SageMaker ตรวจสอบให้แน่ใจว่าคุณมี ตั้งค่าการปรับขนาดอัตโนมัติของอินสแตนซ์ เพื่อจัดเตรียมความจุอินสแตนซ์เพิ่มเติม ตั้งค่านโยบายการปรับสเกลระดับปลายทางของคุณด้วยพารามิเตอร์ที่กำหนดเองหรือการเรียกใช้ต่อนาที (แนะนำ) เพื่อเพิ่มอินสแตนซ์ให้กับฟลีตปลายทาง อัตราการเรียกที่ใช้เพื่อทริกเกอร์เหตุการณ์สเกลอัตโนมัติจะขึ้นอยู่กับชุดรวมของการคาดคะเนในชุดโมเดลทั้งหมดที่ให้บริการโดยจุดสิ้นสุด |
รูปแบบการจราจร | MME เหมาะอย่างยิ่งเมื่อคุณมีโมเดลที่มีขนาดใกล้เคียงกันจำนวนมาก ซึ่งคุณสามารถให้บริการผ่านคอนเทนเนอร์ที่ให้บริการร่วมกันได้ และไม่จำเป็นต้องเข้าถึงโมเดลทั้งหมดพร้อมกัน |
จุดสิ้นสุดแบบหลายคอนเทนเนอร์ของ SageMaker
SageMaker MCE รองรับการปรับใช้คอนเทนเนอร์สูงสุด 15 รายการที่ใช้โมเดลหรือเฟรมเวิร์กที่แตกต่างกันบนจุดสิ้นสุดเดียว และเรียกใช้งานอย่างอิสระหรือตามลำดับเพื่อการอนุมานที่มีเวลาแฝงต่ำและประหยัดค่าใช้จ่าย แบบจำลองสามารถแตกต่างกันได้อย่างสมบูรณ์โดยมีสแต็คการให้บริการที่เป็นอิสระ การโฮสต์หลายโมเดลอย่างปลอดภัยจากเฟรมเวิร์กที่แตกต่างกันในอินสแตนซ์เดียวช่วยให้คุณประหยัดค่าใช้จ่ายได้มากถึง 90%
รูปแบบการเรียกใช้ MCE มีดังนี้:
- ไปป์ไลน์การอนุมาน – คอนเทนเนอร์ใน MME สามารถเรียกใช้ในลำดับเชิงเส้น หรือที่เรียกว่า ไปป์ไลน์การอนุมานแบบอนุกรม. โดยทั่วไปจะใช้เพื่อแยกการประมวลผลล่วงหน้า การอนุมานแบบจำลอง และการประมวลผลภายหลังออกเป็นคอนเทนเนอร์อิสระ เอาต์พุตจากคอนเทนเนอร์ปัจจุบันจะถูกส่งผ่านเป็นอินพุตไปยังคอนเทนเนอร์ถัดไป ซึ่งแสดงเป็นโมเดลไปป์ไลน์เดียวใน SageMaker ไปป์ไลน์การอนุมานสามารถปรับใช้เป็น MME โดยที่หนึ่งในคอนเทนเนอร์ในไปป์ไลน์สามารถให้บริการคำขอแบบไดนามิกตามโมเดลที่เรียกใช้
- การวิงวอนโดยตรง - ด้วย การวิงวอนโดยตรงสามารถส่งคำขอไปยังคอนเทนเนอร์การอนุมานเฉพาะที่โฮสต์บน MCE
ตารางต่อไปนี้ให้คำแนะนำในการประเมินฟังก์ชันฟิตเนสสำหรับ MCE
ฟังก์ชั่นฟิตเนส | รายละเอียด |
ราคา | MCE ช่วยให้คุณสามารถเรียกใช้คอนเทนเนอร์ ML ที่แตกต่างกันได้ถึง 15 รายการบนจุดสิ้นสุดเดียวและเรียกใช้โดยอิสระ จึงช่วยประหยัดค่าใช้จ่าย ตัวเลือกนี้เหมาะอย่างยิ่งเมื่อคุณมีโมเดลหลายตัวที่ทำงานบนสแต็กการให้บริการที่แตกต่างกันซึ่งมีความต้องการทรัพยากรที่คล้ายคลึงกัน และเมื่อแต่ละโมเดลมีปริมาณการใช้งานไม่เพียงพอที่จะใช้งานอินสแตนซ์ปลายทางได้เต็มประสิทธิภาพ ดังนั้น MCE จึงคุ้มค่ากว่าอุปกรณ์ปลายทางรุ่นเดียว MCEs ให้การตอบสนองการอนุมานแบบซิงโครนัส ซึ่งหมายความว่าจุดสิ้นสุดจะพร้อมใช้งานเสมอ และคุณต้องจ่ายสำหรับเวลาทำงานของอินสแตนซ์ ค่าใช้จ่ายอาจเพิ่มขึ้นตามจำนวนและประเภทของอินสแตนซ์ |
แฝงการอนุมาน | MCE เหมาะอย่างยิ่งสำหรับการเรียกใช้แอป ML ที่มีเฟรมเวิร์กและอัลกอริทึม ML ที่แตกต่างกันสำหรับแต่ละรุ่นที่มีการเข้าถึงไม่บ่อยนัก แต่ยังต้องการการอนุมานที่มีเวลาแฝงต่ำ โมเดลพร้อมใช้งานสำหรับการอนุมานเวลาแฝงต่ำเสมอ และไม่มีปัญหาการสตาร์ทเย็น |
ทางเข้า | MCEs ถูกจำกัดไว้ที่ 15 คอนเทนเนอร์บนปลายทางหลายคอนเทนเนอร์ และไม่รองรับการอนุมาน GPU เนื่องจากการช่วงชิงทรัพยากร สำหรับตำแหน่งข้อมูลหลายคอนเทนเนอร์ที่ใช้โหมดการเรียกใช้โดยตรง SageMaker ไม่เพียงแต่ให้เมตริกระดับอินสแตนซ์เหมือนกับที่ทำกับตำแหน่งข้อมูลทั่วไปอื่นๆ เท่านั้น แต่ยังสนับสนุนเมตริกต่อคอนเทนเนอร์อีกด้วย ตามแนวทางปฏิบัติที่ดีที่สุด ให้ตรวจสอบตัววัด CloudWatch สำหรับคำขออินพุตและการใช้ทรัพยากร และเลือกประเภทอินสแตนซ์ที่เหมาะสมเพื่อให้ได้ปริมาณงานที่เหมาะสมที่สุด |
ความซับซ้อนของการกำหนดค่าการปรับสเกล | MCE รองรับการปรับขนาดอัตโนมัติ อย่างไรก็ตาม ในการกำหนดค่าการปรับขนาดอัตโนมัติ ขอแนะนำให้โมเดลในแต่ละคอนเทนเนอร์แสดงการใช้งาน CPU ที่คล้ายกันและเวลาแฝงในแต่ละคำขอการอนุมาน ขอแนะนำเนื่องจากหากทราฟฟิกไปยังปลายทางแบบหลายคอนเทนเนอร์เปลี่ยนจากรูปแบบการใช้งาน CPU ต่ำไปเป็นรูปแบบการใช้งาน CPU สูง แต่ปริมาณการโทรโดยรวมยังคงเท่าเดิม จุดสิ้นสุดจะไม่ปรับขนาดออก และอาจมีอินสแตนซ์ไม่เพียงพอ เพื่อจัดการคำขอทั้งหมดไปยังรูปแบบการใช้งาน CPU สูง |
รูปแบบการจราจร | MCE เหมาะอย่างยิ่งสำหรับปริมาณงานที่มีรูปแบบการรับส่งข้อมูลที่ต่อเนื่องหรือสม่ำเสมอ สำหรับการโฮสต์โมเดลในเฟรมเวิร์กต่างๆ (เช่น TensorFlow, PyTorch หรือ Sklearn) ซึ่งอาจมีปริมาณการรับส่งข้อมูลไม่เพียงพอที่จะทำให้อินสแตนซ์ปลายทางเต็มความจุ |
การโฮสต์แอปพลิเคชัน ML แบบหลายรุ่น
แอปพลิเคชันทางธุรกิจจำนวนมากจำเป็นต้องใช้โมเดล ML หลายตัวเพื่อตอบสนองคำขอการคาดคะเนเดียวแก่ผู้บริโภค ตัวอย่างเช่น บริษัทค้าปลีกที่ต้องการให้คำแนะนำแก่ผู้ใช้ แอปพลิเคชัน ML ในกรณีการใช้งานนี้อาจต้องการใช้โมเดลแบบกำหนดเองที่แตกต่างกันเพื่อแนะนำผลิตภัณฑ์ประเภทต่างๆ หากบริษัทต้องการเพิ่มการปรับเปลี่ยนในแบบของคุณให้กับคำแนะนำโดยใช้ข้อมูลผู้ใช้แต่ละราย จำนวนโมเดลที่กำหนดเองจะเพิ่มขึ้นอีก การโฮสต์โมเดลแบบกำหนดเองแต่ละโมเดลบนอินสแตนซ์การประมวลผลที่แตกต่างกันไม่เพียงทำให้มีค่าใช้จ่ายสูง แต่ยังนำไปสู่การใช้ทรัพยากรการโฮสต์ต่ำกว่าความเป็นจริงหากไม่ได้ใช้โมเดลทั้งหมดบ่อยๆ SageMaker นำเสนอตัวเลือกการโฮสต์ที่มีประสิทธิภาพสำหรับแอปพลิเคชัน ML แบบหลายรุ่น
แผนภาพต่อไปนี้แสดงตัวเลือกการโฮสต์หลายรุ่นสำหรับจุดสิ้นสุดเดียวโดยใช้ SageMaker
ไปป์ไลน์การอนุมานแบบอนุกรม
ไปป์ไลน์การอนุมานเป็นโมเดล SageMaker ที่ประกอบด้วยลำดับเชิงเส้นของคอนเทนเนอร์ 2–15 รายการที่ประมวลผลคำขอสำหรับการอนุมานข้อมูล คุณใช้ไปป์ไลน์การอนุมานเพื่อกำหนดและปรับใช้ชุดค่าผสมของอัลกอริทึมในตัวของ SageMaker ที่ฝึกไว้ล่วงหน้าและอัลกอริทึมที่คุณกำหนดเองที่บรรจุในคอนเทนเนอร์ Docker คุณสามารถใช้ไปป์ไลน์การอนุมานเพื่อรวมการประมวลผลล่วงหน้า การคาดการณ์ และหลังการประมวลผลงานด้านวิทยาศาสตร์ข้อมูล เอาต์พุตจากคอนเทนเนอร์หนึ่งจะถูกส่งผ่านเป็นอินพุตไปยังคอนเทนเนอร์ถัดไป เมื่อกำหนดคอนเทนเนอร์สำหรับโมเดลไปป์ไลน์ คุณยังระบุลำดับในการเรียกใช้คอนเทนเนอร์ด้วย ซึ่งแสดงเป็นโมเดลไปป์ไลน์เดียวใน SageMaker ไปป์ไลน์การอนุมานสามารถปรับใช้เป็น MME โดยที่หนึ่งในคอนเทนเนอร์ในไปป์ไลน์สามารถให้บริการคำขอแบบไดนามิกตามโมเดลที่ถูกเรียกใช้ คุณยังสามารถเรียกใช้ การแปลงแบทช์ งานที่มีไปป์ไลน์การอนุมาน ไปป์ไลน์การอนุมานได้รับการจัดการอย่างสมบูรณ์
ตารางต่อไปนี้ให้คำแนะนำในการประเมินฟังก์ชันความเหมาะสมสำหรับการโฮสต์โมเดล ML โดยใช้ไปป์ไลน์การอนุมานแบบอนุกรม
ฟังก์ชั่นฟิตเนส | รายละเอียด |
ราคา | ไปป์ไลน์การอนุมานแบบอนุกรมทำให้คุณสามารถเรียกใช้คอนเทนเนอร์ ML ที่แตกต่างกันได้สูงสุด 15 รายการบนจุดสิ้นสุดเดียว ซึ่งนำไปสู่การประหยัดต้นทุนของการโฮสต์คอนเทนเนอร์การอนุมาน ไม่มีค่าใช้จ่ายเพิ่มเติมสำหรับการใช้คุณลักษณะนี้ คุณจ่ายเฉพาะอินสแตนซ์ที่ทำงานบนจุดสิ้นสุด ค่าใช้จ่ายอาจเพิ่มขึ้นตามจำนวนและประเภทของอินสแตนซ์ |
แฝงการอนุมาน | เมื่อปรับใช้แอปพลิเคชัน ML เป็นไปป์ไลน์การอนุมาน ข้อมูลระหว่างรุ่นต่างๆ จะไม่ออกจากพื้นที่คอนเทนเนอร์ การประมวลผลคุณลักษณะและการอนุมานทำงานด้วยความหน่วงต่ำเนื่องจากคอนเทนเนอร์อยู่ในตำแหน่งเดียวกันบนอินสแตนซ์ EC2 เดียวกัน |
ทางเข้า | ภายในโมเดลไปป์ไลน์การอนุมาน SageMaker จัดการการร้องขอเป็นลำดับของคำขอ HTTP คอนเทนเนอร์แรกในไปป์ไลน์จัดการคำขอเริ่มต้น จากนั้นการตอบสนองระหว่างกลางจะถูกส่งเป็นคำขอไปยังคอนเทนเนอร์ที่สอง และอื่น ๆ สำหรับแต่ละคอนเทนเนอร์ในไปป์ไลน์ SageMaker ส่งคืนคำตอบสุดท้ายให้กับลูกค้า ทรูพุตขึ้นอยู่กับปัจจัยต่างๆ เช่น โมเดล ขนาดอินพุทของโมเดล ขนาดแบทช์ และประเภทอินสแตนซ์ปลายทาง ตามแนวทางปฏิบัติที่ดีที่สุด ให้ตรวจสอบตัววัด CloudWatch สำหรับคำขออินพุตและการใช้ทรัพยากร และเลือกประเภทอินสแตนซ์ที่เหมาะสมเพื่อให้ได้ปริมาณงานที่เหมาะสมที่สุด |
ความซับซ้อนของการกำหนดค่าการปรับสเกล | ไปป์ไลน์การอนุมานแบบอนุกรมรองรับการปรับขนาดอัตโนมัติ อย่างไรก็ตาม ในการกำหนดค่าการปรับขนาดอัตโนมัติ ขอแนะนำให้โมเดลในแต่ละคอนเทนเนอร์แสดงการใช้งาน CPU ที่คล้ายกันและเวลาแฝงในแต่ละคำขอการอนุมาน ขอแนะนำเนื่องจากหากทราฟฟิกไปยังปลายทางแบบหลายคอนเทนเนอร์เปลี่ยนจากรูปแบบการใช้งาน CPU ต่ำไปเป็นรูปแบบการใช้งาน CPU สูง แต่ปริมาณการโทรโดยรวมยังคงเท่าเดิม จุดสิ้นสุดจะไม่ปรับขนาดออกและอาจมีอินสแตนซ์ไม่เพียงพอ จัดการคำขอทั้งหมดไปยังรูปแบบการใช้งาน CPU สูง |
รูปแบบการจราจร |
ไปป์ไลน์การอนุมานแบบอนุกรมเหมาะอย่างยิ่งสำหรับรูปแบบการรับส่งข้อมูลที่คาดการณ์ได้ด้วยโมเดลที่ทำงานตามลำดับบนจุดสิ้นสุดเดียวกัน |
การปรับใช้ชุดโมเดล (Triton DAG):
SageMaker นำเสนอการทำงานร่วมกับ เซิร์ฟเวอร์การอนุมาน NVIDIA Triton ตลอด คอนเทนเนอร์เซิร์ฟเวอร์ Triton Inference. คอนเทนเนอร์เหล่านี้ประกอบด้วย NVIDIA Triton Inference Server, รองรับเฟรมเวิร์ก ML ทั่วไป และตัวแปรสภาพแวดล้อมที่มีประโยชน์ซึ่งช่วยให้คุณปรับประสิทธิภาพสูงสุดบน SageMaker ด้วยอิมเมจคอนเทนเนอร์ NVIDIA Triton คุณสามารถให้บริการโมเดล ML ได้อย่างง่ายดายและรับประโยชน์จากการเพิ่มประสิทธิภาพ การจัดชุดแบบไดนามิก และการสนับสนุนหลายเฟรมเวิร์กจาก NVIDIA Triton Triton ช่วยเพิ่มการใช้งาน GPU และ CPU ให้เกิดประโยชน์สูงสุด ลดต้นทุนการอนุมานลงอีก
ในกรณีการใช้งานทางธุรกิจที่แอปพลิเคชัน ML ใช้โมเดลหลายตัวในการตอบสนองคำขอการคาดการณ์ หากแต่ละโมเดลใช้เฟรมเวิร์กที่แตกต่างกันหรือโฮสต์บนอินสแตนซ์แยกต่างหาก อาจทำให้ภาระงานและค่าใช้จ่ายเพิ่มขึ้น รวมถึงเวลาแฝงโดยรวมที่เพิ่มขึ้น SageMaker NVIDIA Triton Inference Server รองรับการปรับใช้โมเดลจากเฟรมเวิร์กหลักทั้งหมด เช่น รูปแบบโมเดล TensorFlow GraphDef, TensorFlow SavedModel, ONNX, PyTorch TorchScript, TensorRT และ Python/C++ และอื่นๆ Triton model ensemble แสดงถึงไปป์ไลน์ของโมเดลตั้งแต่หนึ่งโมเดลขึ้นไป หรือตรรกะการประมวลผลล่วงหน้าและการประมวลผลภายหลัง และการเชื่อมต่อของเทนเซอร์อินพุตและเอาต์พุตระหว่างทั้งสองโมเดล คำขออนุมานเดียวที่ส่งไปยังทั้งมวลจะเรียกการทำงานของไปป์ไลน์ทั้งหมด Triton ยังมีอัลกอริธึมการตั้งเวลาและแบทช์ในตัวหลายตัวที่รวมคำขอการอนุมานแต่ละรายการเพื่อปรับปรุงปริมาณการอนุมาน การตัดสินใจเกี่ยวกับการจัดกำหนดการและแบทช์เหล่านี้มีความโปร่งใสสำหรับลูกค้าที่ร้องขอการอนุมาน โมเดลสามารถรันบน CPU หรือ GPU เพื่อความยืดหยุ่นสูงสุดและรองรับข้อกำหนดด้านการประมวลผลที่แตกต่างกัน
รองรับการโฮสต์โมเดลที่สนับสนุน GPU หลายรุ่นบนเอ็นด์พอยต์หลายรุ่นผ่าน เซิร์ฟเวอร์การอนุมาน SageMaker Triton. เซิร์ฟเวอร์การอนุมาน NVIDIA Triton ได้รับการขยายเพื่อใช้งาน สัญญา MME APIเพื่อรวมเข้ากับ MME คุณสามารถใช้ NVIDIA Triton Inference Server ซึ่งสร้างการกำหนดค่าที่เก็บโมเดลสำหรับแบ็กเอนด์เฟรมเวิร์กต่างๆ เพื่อปรับใช้ MME ด้วยการปรับขนาดอัตโนมัติ คุณสมบัตินี้ช่วยให้คุณปรับขนาดแบบจำลองที่ปรับให้เหมาะกับแต่ละบุคคลได้หลายร้อยแบบ ซึ่งได้รับการปรับแต่งอย่างละเอียดเพื่อตอบสนองประสบการณ์ของผู้ใช้ปลายทางที่ไม่เหมือนใครในแอปพลิเคชัน AI คุณยังสามารถใช้คุณสมบัตินี้เพื่อให้ได้ประสิทธิภาพตามราคาที่จำเป็นสำหรับแอปพลิเคชันการอนุมานของคุณโดยใช้ GPU แบบเศษส่วน หากต้องการเรียนรู้เพิ่มเติม โปรดดูที่ เรียกใช้โมเดลการเรียนรู้เชิงลึกหลายรายการบน GPU ด้วยตำแหน่งข้อมูลหลายรุ่นของ Amazon SageMaker.
ตารางต่อไปนี้ให้คำแนะนำในการประเมินฟังก์ชันความเหมาะสมสำหรับการโฮสต์โมเดล ML โดยใช้ MME ที่รองรับ GPU บนคอนเทนเนอร์การอนุมาน Triton สำหรับเอ็นด์พอยต์รุ่นเดียวและการประเมินฟังก์ชันความสมบูรณ์ของเอ็นพอยต์แบบไร้เซิร์ฟเวอร์ โปรดดูส่วนก่อนหน้าในโพสต์นี้
ฟังก์ชั่นฟิตเนส | รายละเอียด |
ราคา | SageMaker MME พร้อมการรองรับ GPU โดยใช้ Triton Inference Server มอบวิธีการที่ปรับขนาดได้และประหยัดต้นทุนในการปรับใช้โมเดลการเรียนรู้เชิงลึกจำนวนมากหลังจุดสิ้นสุด SageMaker เพียงจุดเดียว เมื่อใช้ MME หลายๆ รุ่นจะแชร์อินสแตนซ์ GPU หลังจุดสิ้นสุด สิ่งนี้ทำให้คุณสามารถลดต้นทุนที่เพิ่มขึ้นเชิงเส้นของการโฮสต์หลายรุ่นและนำโครงสร้างพื้นฐานกลับมาใช้ซ้ำได้ในทุกโมเดล คุณจ่ายค่าเวลาทำงานของอินสแตนซ์ |
แฝงการอนุมาน |
SageMaker ที่มี Triton Inference Server สร้างขึ้นโดยมีจุดประสงค์เพื่อเพิ่มทรูพุตและการใช้งานฮาร์ดแวร์ให้สูงสุดโดยมีเวลาแฝงในการอนุมานต่ำมาก (มิลลิวินาทีหลักเดียว) มีเฟรมเวิร์ก ML ที่รองรับมากมาย (รวมถึง TensorFlow, PyTorch, ONNX, XGBoost และ NVIDIA TensorRT) และแบ็คเอนด์โครงสร้างพื้นฐาน รวมถึง NVIDIA GPUs, CPUs และ การอนุมาน AWS. ด้วยการรองรับ MME สำหรับ GPU โดยใช้ SageMaker Triton Inference Server คุณสามารถปรับใช้โมเดลการเรียนรู้เชิงลึกนับพันหลังตำแหน่งข้อมูล SageMaker เพียงจุดเดียว SageMaker โหลดโมเดลไปยังหน่วยความจำของคอนเทนเนอร์ NVIDIA Triton บนอินสแตนซ์ที่เร่งด้วย GPU และให้บริการคำขอการอนุมาน แกน GPU ถูกแชร์โดยทุกรุ่นในอินสแตนซ์ หากโหลดโมเดลในหน่วยความจำคอนเทนเนอร์แล้ว คำขอที่ตามมาจะได้รับบริการเร็วขึ้น เนื่องจาก SageMaker ไม่จำเป็นต้องดาวน์โหลดและโหลดอีกครั้ง |
ทางเข้า |
MME นำเสนอความสามารถในการเรียกใช้การเรียนรู้เชิงลึกหรือโมเดล ML หลายรายการบน GPU พร้อมกันกับ Triton Inference Server ซึ่งช่วยให้คุณใช้การอนุมานแบบหลายเฟรมเวิร์กของ NVIDIA Triton ประสิทธิภาพสูงพร้อมกับการปรับใช้โมเดลที่มีการจัดการเต็มรูปแบบของ SageMaker ได้อย่างง่ายดาย Triton รองรับการอนุมานตาม NVIDIA GPU-, x86-, Arm® CPU- และ AWS Inferentia ทั้งหมด มีการแบทช์แบบไดนามิก รันพร้อมกัน การกำหนดค่าโมเดลที่เหมาะสมที่สุด ชุดโมเดล และอินพุตเสียงและวิดีโอแบบสตรีมเพื่อเพิ่มปริมาณงานและการใช้งานให้เกิดประโยชน์สูงสุด ปัจจัยอื่นๆ เช่น เครือข่ายและขนาดของเพย์โหลดอาจมีบทบาทน้อยที่สุดในโอเวอร์เฮดที่เกี่ยวข้องกับการอนุมาน |
ความซับซ้อนของการกำหนดค่าการปรับสเกล |
MME สามารถปรับขนาดในแนวนอนโดยใช้นโยบายการปรับขนาดอัตโนมัติ และจัดเตรียมอินสแตนซ์การประมวลผล GPU เพิ่มเติมตามเมตริกต่างๆ เช่น ด้วยเซิร์ฟเวอร์การอนุมาน Triton คุณสามารถสร้างคอนเทนเนอร์แบบกำหนดเองที่มีโมเดลของคุณด้วย Triton และนำไปยัง SageMaker ได้อย่างง่ายดาย การอนุมานของ SageMaker จะจัดการคำขอและปรับขนาดคอนเทนเนอร์โดยอัตโนมัติเมื่อการใช้งานเพิ่มขึ้น ทำให้การปรับใช้โมเดลกับ Triton บน AWS ง่ายขึ้น |
รูปแบบการจราจร |
MME เหมาะอย่างยิ่งสำหรับรูปแบบการรับส่งข้อมูลที่คาดการณ์ได้ด้วยโมเดลที่ทำงานเป็น DAG บนปลายทางเดียวกัน SageMaker ดูแลการกำหนดรูปแบบการรับส่งข้อมูลไปยังปลายทาง MME และรักษาสำเนาแบบจำลองที่เหมาะสมที่สุดบนอินสแตนซ์ GPU เพื่อประสิทธิภาพราคาดีที่สุด มันยังคงกำหนดเส้นทางการรับส่งข้อมูลไปยังอินสแตนซ์ที่มีการโหลดโมเดล หากทรัพยากรอินสแตนซ์ถึงความจุเนื่องจากมีการใช้ประโยชน์สูง SageMaker จะยกเลิกการโหลดโมเดลที่ใช้น้อยที่สุดจากคอนเทนเนอร์เพื่อเพิ่มทรัพยากรเพื่อโหลดโมเดลที่ใช้บ่อยขึ้น |
ปฏิบัติที่ดีที่สุด
พิจารณาแนวทางปฏิบัติที่ดีที่สุดต่อไปนี้:
- การทำงานร่วมกันสูงและการมีเพศสัมพันธ์ระหว่างรุ่นต่ำ – โฮสต์โมเดลในคอนเทนเนอร์เดียวกันที่มีการทำงานร่วมกันสูง (ขับเคลื่อนฟังก์ชันการทำงานแบบธุรกิจเดียว) และรวมเข้าด้วยกันเพื่อความสะดวกในการอัปเกรดและการจัดการ ในขณะเดียวกัน ให้แยกโมเดลเหล่านั้นออกจากกัน (โฮสต์โมเดลเหล่านั้นในคอนเทนเนอร์ที่แตกต่างกัน) เพื่อให้คุณสามารถอัปเกรดโมเดลหนึ่งได้อย่างง่ายดายโดยไม่กระทบกับโมเดลอื่นๆ โฮสต์หลายโมเดลที่ใช้คอนเทนเนอร์ที่แตกต่างกันหลังจุดสิ้นสุดหนึ่งจุด แล้วเรียกใช้งานอย่างอิสระ หรือเพิ่มตรรกะการประมวลผลล่วงหน้าและหลังการประมวลผลโมเดลเป็นไปป์ไลน์การอนุมานแบบอนุกรม
- แฝงการอนุมาน – จัดกลุ่มโมเดลที่ขับเคลื่อนด้วยฟังก์ชันการทำงานแบบธุรกิจเดียวและโฮสต์โมเดลเหล่านั้นไว้ในคอนเทนเนอร์เดียวเพื่อลดจำนวนการกระโดด และลดเวลาแฝงโดยรวมให้เหลือน้อยที่สุด มีข้อแม้อื่นๆ เช่น หากโมเดลที่จัดกลุ่มใช้หลายเฟรมเวิร์ก คุณยังอาจเลือกโฮสต์ในหลายๆ คอนเทนเนอร์ แต่เรียกใช้บนโฮสต์เดียวกันเพื่อลดเวลาแฝงและลดต้นทุน
- จัดกลุ่มโมเดล ML ที่มีความสอดคล้องกันสูงอย่างมีเหตุผล – กลุ่มโลจิคัลอาจประกอบด้วยโมเดลที่เป็นเนื้อเดียวกัน (เช่น โมเดล XGBoost ทั้งหมด) หรือต่างกัน (เช่น XGBoost สองสามตัวและ BERT สองสามตัว) อาจประกอบด้วยแบบจำลองที่ใช้ร่วมกันในฟังก์ชันทางธุรกิจต่างๆ หรืออาจเฉพาะเจาะจงเพื่อตอบสนองฟังก์ชันทางธุรกิจเพียงฟังก์ชันเดียว
- โมเดลที่ใช้ร่วมกัน – หากกลุ่มโลจิคัลประกอบด้วยโมเดลที่ใช้ร่วมกัน ความง่ายในการอัปเกรดโมเดลและเวลาแฝงจะมีบทบาทสำคัญในการสร้างสถาปัตยกรรมปลายทางของ SageMaker ตัวอย่างเช่น หากเวลาแฝงมีความสำคัญ จะเป็นการดีกว่าที่จะวางโมเดลทั้งหมดไว้ในคอนเทนเนอร์เดียวหลังตำแหน่งข้อมูล SageMaker เดียวเพื่อหลีกเลี่ยงการกระโดดหลายครั้ง ข้อเสียคือหากจำเป็นต้องอัปเกรดโมเดลใดๆ จะส่งผลให้มีการอัปเกรดตำแหน่งข้อมูล SageMaker ที่เกี่ยวข้องทั้งหมดที่โฮสต์โมเดลนี้
- โมเดลที่ไม่แชร์ – หากกลุ่มเชิงตรรกะประกอบด้วยเฉพาะรุ่นเฉพาะของฟีเจอร์ธุรกิจและไม่ได้แชร์กับกลุ่มอื่น ความซับซ้อนของบรรจุภัณฑ์และมิติเวลาแฝงจะกลายเป็นกุญแจสำคัญในการบรรลุผล ขอแนะนำให้โฮสต์โมเดลเหล่านี้ในคอนเทนเนอร์เดียวหลังตำแหน่งข้อมูล SageMaker เดียว
- การใช้ฮาร์ดแวร์อย่างมีประสิทธิภาพ (CPU, GPU) – จัดกลุ่มโมเดลที่ใช้ CPU เข้าด้วยกันและโฮสต์บนโฮสต์เดียวกันเพื่อให้คุณใช้ CPU ได้อย่างมีประสิทธิภาพ ในทำนองเดียวกัน จัดกลุ่มโมเดลที่ใช้ GPU เข้าด้วยกันเพื่อให้คุณใช้และปรับขนาดได้อย่างมีประสิทธิภาพ มีปริมาณงานแบบไฮบริดที่ต้องใช้ทั้ง CPU และ GPU บนโฮสต์เดียวกัน การโฮสต์รุ่น CPU-only และ GPU-only บนโฮสต์เดียวกันควรขับเคลื่อนด้วยความต้องการการทำงานร่วมกันสูงและเวลาแฝงของแอปพลิเคชัน นอกจากนี้ ต้นทุน ความสามารถในการปรับขนาด และรัศมีการระเบิดของผลกระทบในกรณีที่เกิดความล้มเหลวเป็นมิติหลักที่ต้องพิจารณา
- ฟังก์ชั่นฟิตเนส – ใช้ฟังก์ชันฟิตเนสเป็นแนวทางในการเลือกตัวเลือกการโฮสต์ ML
สรุป
เมื่อพูดถึงการโฮสต์ ML ไม่มีวิธีใดที่เหมาะกับทุกขนาด ผู้ปฏิบัติงาน ML จำเป็นต้องเลือกรูปแบบการออกแบบที่เหมาะสมเพื่อรับมือกับความท้าทายในการโฮสต์ ML การประเมินฟังก์ชันฟิตเนสจะให้คำแนะนำโดยละเอียดเกี่ยวกับการเลือกตัวเลือกการโฮสต์ ML ที่เหมาะสม
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับตัวเลือกการโฮสต์แต่ละรายการ โปรดดูโพสต์ต่อไปนี้ในชุดนี้:
เกี่ยวกับผู้แต่ง
ดาวัล พาเทล เป็นหัวหน้าสถาปนิก Machine Learning ที่ AWS เขาได้ทำงานร่วมกับองค์กรต่างๆ ตั้งแต่องค์กรขนาดใหญ่ไปจนถึงสตาร์ทอัพขนาดกลางในปัญหาที่เกี่ยวข้องกับการคำนวณแบบกระจายและปัญญาประดิษฐ์ เขามุ่งเน้นไปที่การเรียนรู้อย่างลึกซึ้งรวมถึงโดเมน NLP และ Computer Vision เขาช่วยให้ลูกค้าบรรลุการอนุมานแบบจำลองประสิทธิภาพสูงบน SageMaker
ทีปาลี ราจาเล เป็นผู้จัดการบัญชีทางเทคนิคผู้เชี่ยวชาญ AI/ML ที่ Amazon Web Services เธอทำงานร่วมกับลูกค้าระดับองค์กรโดยให้คำแนะนำด้านเทคนิคเกี่ยวกับการนำโซลูชันแมชชีนเลิร์นนิงไปใช้พร้อมแนวทางปฏิบัติที่ดีที่สุด ในเวลาว่าง เธอชอบไปปีนเขา ดูภาพยนตร์ และออกไปเที่ยวกับครอบครัวและเพื่อนๆ
ซอราภ ตรีกันเด เป็นผู้จัดการผลิตภัณฑ์อาวุโสสำหรับการอนุมานของ Amazon SageMaker เขาหลงใหลในการทำงานกับลูกค้าและมีแรงจูงใจโดยเป้าหมายของการทำให้แมชชีนเลิร์นนิงเป็นประชาธิปไตย เขามุ่งเน้นไปที่ความท้าทายหลักที่เกี่ยวข้องกับการปรับใช้งานแอปพลิเคชัน ML ที่ซับซ้อน โมเดล ML แบบหลายผู้เช่า การเพิ่มประสิทธิภาพต้นทุน และทำให้การปรับใช้โมเดลการเรียนรู้เชิงลึกสามารถเข้าถึงได้มากขึ้น ในเวลาว่าง Saurabh สนุกกับการเดินป่า เรียนรู้เกี่ยวกับเทคโนโลยีที่เป็นนวัตกรรม ติดตาม TechCrunch และใช้เวลากับครอบครัวของเขา
- เนื้อหาที่ขับเคลื่อนด้วย SEO และการเผยแพร่ประชาสัมพันธ์ รับการขยายวันนี้
- เพลโตบล็อคเชน Web3 Metaverse ข่าวกรอง ขยายความรู้. เข้าถึงได้ที่นี่.
- ที่มา: https://aws.amazon.com/blogs/machine-learning/model-hosting-patterns-in-amazon-sagemaker-part-1-common-design-patterns-for-building-ml-applications-on-amazon-sagemaker/
- 1
- 10
- 100
- 11
- 39
- 7
- 70
- a
- ความสามารถ
- สามารถ
- เกี่ยวกับเรา
- เร่ง
- เข้า
- Accessed
- สามารถเข้าถึงได้
- อำนวยความสะดวก
- ลงชื่อเข้าใช้
- ถูกต้อง
- บรรลุ
- การบรรลุ
- ข้าม
- การกระทำ
- อย่างกระตือรือร้น
- นอกจากนี้
- เพิ่มเติม
- นอกจากนี้
- ที่อยู่
- ความก้าวหน้า
- สูง
- ความได้เปรียบ
- การโฆษณา
- มีผลต่อ
- หลังจาก
- การรวมตัว
- รวบรวม
- ก้าวร้าว
- ข้อตกลง
- AI
- AI / ML
- ปลุก
- อัลกอริทึม
- ทั้งหมด
- การอนุญาต
- ช่วยให้
- แล้ว
- เสมอ
- อเมซอน
- Amazon EC2
- อเมซอน SageMaker
- Amazon Web Services
- จำนวน
- การวิเคราะห์
- วิเคราะห์
- และ
- และโครงสร้างพื้นฐาน
- ประจำปี
- อื่น
- อาปาเช่
- API
- Apple
- การใช้งาน
- การใช้งาน
- เข้าใกล้
- เหมาะสม
- ปพลิเคชัน
- สถาปัตยกรรม
- ARM
- เทียม
- ปัญญาประดิษฐ์
- ด้าน
- การประเมินผล
- ที่เกี่ยวข้อง
- แอตทริบิวต์
- เสียง
- การตรวจสอบ
- รถยนต์
- อัตโนมัติ
- อัตโนมัติ
- อัตโนมัติ
- ความพร้อมใช้งาน
- ใช้ได้
- เฉลี่ย
- AWS
- กลับ
- ถอย
- การธนาคาร
- ฐาน
- ตาม
- เพราะ
- กลายเป็น
- จะกลายเป็น
- ก่อน
- หลัง
- กำลัง
- ประโยชน์
- ที่ดีที่สุด
- ปฏิบัติที่ดีที่สุด
- ดีกว่า
- ระหว่าง
- ชีวการแพทย์
- ปิดกั้น
- การยืม
- เขตแดน
- กล่อง
- ช่องโหว่
- ทำลาย
- นำมาซึ่ง
- นำ
- งบประมาณ
- สร้าง
- การก่อสร้าง
- สร้าง
- built-in
- ธุรกิจ
- การประยุกต์ทางธุรกิจ
- กระบวนการทางธุรกิจ
- ธุรกิจ
- แคช
- คำนวณ
- โทรศัพท์
- ที่เรียกว่า
- ผู้เรียก
- ผู้สมัคร
- ความสามารถในการ
- ความจุ
- ซึ่ง
- กรณี
- กรณี
- หมวดหมู่
- สาเหตุที่
- บาง
- มีมาตรฐาน
- ความท้าทาย
- เปลี่ยนแปลง
- การเปลี่ยนแปลง
- ลักษณะ
- การเรียกเก็บเงิน
- chatbot
- ตรวจสอบ
- ชิป
- ทางเลือก
- ทางเลือก
- Choose
- เลือก
- ชั้น
- การจัดหมวดหมู่
- แยกประเภท
- ไคลเอนต์
- ลูกค้า
- ปิดหน้านี้
- เมฆ
- Cluster
- รหัส
- ประกาศเกียรติคุณ
- เพื่อนร่วมงาน
- รวบรวม
- การต่อสู้
- การผสมผสาน
- รวมกัน
- รวม
- ร่วมกัน
- บริษัท
- บริษัท
- เมื่อเทียบกับ
- สมบูรณ์
- อย่างสมบูรณ์
- ซับซ้อน
- ความซับซ้อน
- การปฏิบัติตาม
- ส่วนประกอบ
- สงบ
- การประนีประนอม
- พลังการคำนวณ
- คำนวณ
- คอมพิวเตอร์
- วิสัยทัศน์คอมพิวเตอร์
- การคำนวณ
- แนวคิด
- กังวล
- พร้อมกัน
- องค์ประกอบ
- การเชื่อมต่อ
- คงเส้นคงวา
- ถูกใช้
- ผู้บริโภค
- ภาชนะ
- ภาชนะบรรจุ
- มี
- ต่อ
- อย่างต่อเนื่อง
- ต่อเนื่องกัน
- ควบคุม
- แกน
- ตรงกัน
- ราคา
- ประหยัดค่าใช้จ่าย
- ค่าใช้จ่ายที่มีประสิทธิภาพ
- ค่าใช้จ่าย
- ได้
- สร้าง
- สร้าง
- วิกฤติ
- สำคัญมาก
- ปัจจุบัน
- ประเพณี
- ลูกค้า
- ลูกค้า
- DAG
- ข้อมูล
- การประมวลผล
- วิทยาศาสตร์ข้อมูล
- นักวิทยาศาสตร์ข้อมูล
- ฐานข้อมูล
- ชุดข้อมูล
- วัน
- การซื้อขาย
- การตัดสินใจ
- ทุ่มเท
- ลึก
- การเรียนรู้ลึก ๆ
- ค่าเริ่มต้น
- การกำหนด
- ส่งมอบ
- ความต้องการ
- ความต้องการ
- democratizing
- ทั้งนี้ขึ้นอยู่กับ
- ขึ้นอยู่กับ
- ปรับใช้
- นำไปใช้
- ปรับใช้
- การใช้งาน
- การใช้งาน
- ออกแบบ
- รูปแบบการออกแบบ
- ได้รับการออกแบบ
- รายละเอียด
- รายละเอียด
- การตรวจพบ
- กำหนด
- ผู้พัฒนา
- พัฒนาการ
- แผนภาพ
- ต่าง
- ยาก
- มิติ
- โดยตรง
- แตกต่าง
- กระจาย
- คอมพิวเตอร์แบบกระจาย
- หลาย
- นักเทียบท่า
- เอกสาร
- ไม่
- โดเมน
- Dont
- ลง
- ดาวน์โหลด
- ข้อเสีย
- ขับเคลื่อน
- ปรับตัวลดลง
- ลดลง
- ในระหว่าง
- พลวัต
- แต่ละ
- ก่อน
- ง่ายดาย
- อย่างง่ายดาย
- มีประสิทธิภาพ
- มีประสิทธิภาพ
- ประสิทธิผล
- ประสิทธิภาพ
- ที่มีประสิทธิภาพ
- อย่างมีประสิทธิภาพ
- ความพยายาม
- ทั้ง
- การกำจัด
- ทำให้สามารถ
- ช่วยให้
- การเข้ารหัสลับ
- จบสิ้น
- ปลายทาง
- ชั้นเยี่ยม
- วิศวกร
- พอ
- ทำให้มั่นใจ
- เพื่อให้แน่ใจ
- Enterprise
- ผู้ประกอบการ
- ทั้งหมด
- สิ่งแวดล้อม
- ความผิดพลาด
- ข้อผิดพลาด
- โดยเฉพาะอย่างยิ่ง
- ประเมิน
- การประเมินผล
- แม้
- เหตุการณ์
- ทุกอย่าง
- วิวัฒนาการ
- ตัวอย่าง
- ตัวอย่าง
- ตลาดแลกเปลี่ยน
- การจัดแสดงนิทรรศการ
- คาดหวัง
- ที่คาดหวัง
- ประสบการณ์
- ประสบการณ์
- สำรวจ
- การแสดงออก
- ภายนอก
- พิเศษ
- ใบหน้า
- ปัจจัย
- ความล้มเหลว
- อย่างเป็นธรรม
- ครอบครัว
- ครอบครัว
- เร็วขึ้น
- ลักษณะ
- คุณสมบัติ
- การกินอาหาร
- สองสาม
- สุดท้าย
- ชื่อจริง
- ครั้งแรก
- ออกกำลังกาย
- FLEET
- ความยืดหยุ่น
- ไหล
- ขึ้น ๆ ลง ๆ
- มุ่งเน้นไปที่
- ดังต่อไปนี้
- ดังต่อไปนี้
- ลุย
- ฟอร์ม
- รูปแบบ
- เป็นเศษส่วน
- กรอบ
- กรอบ
- การหลอกลวง
- การตรวจจับการฉ้อโกง
- ฟรี
- เวลา
- มัก
- เพื่อน
- ราคาเริ่มต้นที่
- ผลไม้
- เต็ม
- อย่างเต็มที่
- ฟังก์ชัน
- ฟังก์ชันการทำงาน
- ฟังก์ชั่น
- ฟังก์ชั่น
- ต่อไป
- GDPR
- General
- สร้าง
- การสร้าง
- ได้รับ
- ให้
- กำหนด
- เป้าหมาย
- เป้าหมาย
- ดี
- GPU
- GPUs
- กราฟ
- ยิ่งใหญ่
- มากขึ้น
- อย่างมาก
- บัญชีกลุ่ม
- กลุ่ม
- ขึ้น
- ให้คำแนะนำ
- จัดการ
- จัดการ
- มีประโยชน์
- ฮาร์ดแวร์
- มี
- สุขภาพ
- การดูแลสุขภาพ
- ช่วย
- การช่วยเหลือ
- จะช่วยให้
- โปรดคลิกที่นี่เพื่ออ่านรายละเอียดเพิ่มเติม
- จุดสูง
- ประสิทธิภาพสูง
- ความละเอียดสูง
- สูงกว่า
- ตี
- ตามแนวนอน
- เจ้าภาพ
- เป็นเจ้าภาพ
- โฮสติ้ง
- ค่าใช้จ่ายในการโฮสต์
- บริการโฮสติ้ง
- สรุป ความน่าเชื่อถือของ Olymp Trade?
- อย่างไรก็ตาม
- HTML
- HTTPS
- ร้อย
- เป็นลูกผสม
- ในอุดมคติ
- เอกลักษณ์
- Idle
- ภาพ
- การจำแนกรูปภาพ
- ภาพ
- ไม่เปลี่ยนรูป
- ส่งผลกระทบ
- ที่กระทบ
- ผลกระทบ
- การดำเนินการ
- การดำเนินการ
- การดำเนินการ
- สำคัญ
- ปรับปรุง
- การปรับปรุง
- in
- ประกอบด้วย
- รวมถึง
- รวมทั้ง
- ขาเข้า
- เพิ่ม
- เพิ่มขึ้น
- เพิ่มขึ้น
- ที่เพิ่มขึ้น
- อิสระ
- อิสระ
- เป็นรายบุคคล
- ข้อมูล
- โครงสร้างพื้นฐาน
- แรกเริ่ม
- นวัตกรรม
- เทคโนโลยีที่เป็นนวัตกรรม
- อินพุต
- การติดตั้ง
- ตัวอย่าง
- แทน
- รวบรวม
- บูรณาการ
- Intelligence
- การโต้ตอบ
- รวมถึง
- มาตรฐาน ISO
- ความเหงา
- IT
- การสัมภาษณ์
- งาน
- คีย์
- กุญแจ
- ทราบ
- ที่รู้จักกัน
- ใหญ่
- ที่มีขนาดใหญ่
- ความแอบแฝง
- เปิดตัว
- การเปิดตัว
- การเปิดตัว
- นำ
- ชั้นนำ
- นำไปสู่
- เรียนรู้
- การเรียนรู้
- ทิ้ง
- นำ
- ชั้น
- ห้องสมุด
- facelift
- ถูก จำกัด
- ขีด จำกัด
- รายการ
- สด
- โหลด
- โหลด
- โหลด
- ที่ตั้ง
- นาน
- อีกต่อไป
- ดู
- แพ้
- Lot
- ต่ำ
- เครื่อง
- เรียนรู้เครื่อง
- ทำ
- หลัก
- เก็บรักษา
- รักษา
- สำคัญ
- ทำ
- ทำให้
- การทำ
- จัดการ
- การจัดการ
- การจัดการ
- ผู้จัดการ
- จัดการ
- การจัดการ
- หลาย
- การตลาด
- คณิตศาสตร์
- เรื่อง
- เพิ่ม
- สูงสุด
- วิธี
- พบ
- หน่วยความจำ
- วิธี
- วิธีการ
- เมตริก
- ตัวชี้วัด
- อาจ
- ต่ำสุด
- ขั้นต่ำ
- นาที
- การผสม
- ML
- โหมด
- แบบ
- โมเดล
- การตรวจสอบ
- การตรวจสอบ
- เดือน
- เดือน
- ข้อมูลเพิ่มเติม
- มากที่สุด
- แรงบันดาลใจ
- Movies
- ปลายทางหลายรุ่น
- หลาย
- ฝูง
- ธรรมชาติ
- จำเป็น
- จำเป็นต้อง
- ความต้องการ
- เครือข่าย
- ใหม่
- ถัดไป
- NLP
- การประกาศ
- การแจ้งเตือน
- จำนวน
- Nvidia
- วัตถุ
- วัตถุประสงค์
- วัตถุประสงค์
- การได้รับ
- เป็นครั้งคราว
- เสนอ
- เสนอ
- ออฟไลน์
- ONE
- ออนไลน์
- โอเพนซอร์ส
- ทำงาน
- ดำเนินการ
- การดำเนินงาน
- การดำเนินงาน
- การดำเนินการ
- ผู้ประกอบการ
- ดีที่สุด
- การเพิ่มประสิทธิภาพ
- เพิ่มประสิทธิภาพ
- การปรับให้เหมาะสม
- เพิ่มประสิทธิภาพ
- การเพิ่มประสิทธิภาพ
- ตัวเลือกเสริม (Option)
- Options
- ส้ม
- ใบสั่ง
- องค์กร
- อื่นๆ
- โดดเด่น
- ทั้งหมด
- ของตนเอง
- การเป็นเจ้าของ
- แพ็คเกจ
- บรรจุภัณฑ์
- พารามิเตอร์
- ส่วนหนึ่ง
- ในสิ่งที่สนใจ
- หุ้นส่วน
- ผ่าน
- หลงใหล
- แพทช์
- แบบแผน
- รูปแบบ
- ชำระ
- จุดสูงสุด
- ดำเนินการ
- การปฏิบัติ
- ที่มีประสิทธิภาพ
- ระยะเวลา
- เป็นระยะ
- งวด
- ส่วนบุคคล
- ส่วนบุคคล
- เลือก
- ท่อ
- สถานที่
- สถานที่
- การวางแผน
- แผน
- เวที
- แพลตฟอร์ม
- เพลโต
- เพลโตดาต้าอินเทลลิเจนซ์
- เพลโตดาต้า
- เล่น
- บวก
- นโยบาย
- นโยบาย
- ยอดนิยม
- เป็นไปได้
- โพสต์
- โพสต์
- อำนาจ
- การปฏิบัติ
- การปฏิบัติ
- ทายได้
- ทำนาย
- คำทำนาย
- การคาดการณ์
- ที่ต้องการ
- ก่อนหน้านี้
- ราคา
- หลัก
- ลำดับความสำคัญ
- ส่วนตัว
- ปัญหา
- ปัญหาที่เกิดขึ้น
- กระบวนการ
- แปรรูปแล้ว
- กระบวนการ
- การประมวลผล
- โปรเซสเซอร์
- ผลิตภัณฑ์
- ผู้จัดการผลิตภัณฑ์
- การผลิต
- ผลิตภัณฑ์
- โปรไฟล์
- เหมาะสม
- ให้
- ให้
- ให้
- การให้
- บทบัญญัติ
- หนังสือมอบฉันทะ
- วัตถุประสงค์
- ผลัก
- ไฟฉาย
- อย่างรวดเร็ว
- พิสัย
- ตั้งแต่
- อย่างรวดเร็ว
- คะแนน
- ราคา
- มาถึง
- ต้นน้ำ
- อ่าน
- พร้อม
- จริง
- โลกแห่งความจริง
- เรียลไทม์
- รับ
- ที่ได้รับ
- ที่ได้รับ
- แนะนำ
- แนะนำ
- แนะนำ
- แนะนำ
- แนะนำ
- แนะนำ
- ที่เกิดขึ้น
- ลด
- ลด
- หมายถึง
- ไม่คำนึงถึง
- ปกติ
- ที่เกี่ยวข้อง
- สัมพันธ์
- ตรงประเด็น
- ซากศพ
- กรุ
- เป็นตัวแทนของ
- แสดงให้เห็นถึง
- ขอ
- การร้องขอ
- ต้องการ
- จำเป็นต้องใช้
- ความต้องการ
- ความต้องการ
- ต้อง
- ทรัพยากร
- แหล่งข้อมูล
- คำตอบ
- REST
- ผล
- ส่งผลให้
- ผลสอบ
- ค้าปลีก
- รับคืน
- ทบทวน
- ความเสี่ยง
- บทบาท
- ราก
- เส้นทาง
- กฎ
- วิ่ง
- วิ่ง
- SaaS
- sagemaker
- การอนุมาน SageMaker
- เงินเดือน
- เดียวกัน
- ลด
- ประหยัด
- เงินออม
- ที่ปรับขนาดได้
- ขนาด
- ตาชั่ง
- ปรับ
- สถานการณ์
- กำหนด
- ที่กำหนดไว้
- วิทยาศาสตร์
- นักวิทยาศาสตร์
- ที่สอง
- วินาที
- Section
- ส่วน
- อย่างปลอดภัย
- ความปลอดภัย
- การเลือก
- การเลือก
- ระดับอาวุโส
- มีความละเอียดอ่อน
- ลำดับ
- อนุกรม
- ชุด
- ให้บริการ
- serverless
- เซิร์ฟเวอร์
- ให้บริการอาหาร
- บริการ
- บริการ
- การให้บริการ
- ชุด
- การตั้งค่า
- หลาย
- การสร้าง
- Share
- ที่ใช้ร่วมกัน
- กะ
- น่า
- แสดงให้เห็นว่า
- สำคัญ
- อย่างมีความหมาย
- คล้ายคลึงกัน
- เหมือนกับ
- ง่าย
- เดียว
- ขนาด
- ขนาด
- เล็ก
- มีขนาดเล็กกว่า
- So
- ซอฟต์แวร์
- ทางออก
- โซลูชัน
- บาง
- แหล่งที่มา
- ช่องว่าง
- ผู้เชี่ยวชาญ
- เฉพาะ
- โดยเฉพาะ
- เฉพาะ
- ที่ระบุไว้
- ความเร็ว
- การใช้จ่าย
- แหลม
- มั่นคง
- กอง
- สแต็ค
- เริ่มต้น
- ข้อความที่เริ่ม
- เริ่มต้น
- การเริ่มต้น
- startups
- คงที่
- ขั้นตอน
- ขั้นตอน
- ยังคง
- หยุด
- การเก็บรักษา
- จัดเก็บ
- กลยุทธ์
- ที่พริ้ว
- เข้มงวด
- เสถียร
- ภายหลัง
- ความสำเร็จ
- ที่ประสบความสำเร็จ
- อย่างเช่น
- เพียงพอ
- เหมาะสม
- สนับสนุน
- ที่สนับสนุน
- รองรับ
- พรั่ง
- ตาราง
- เอา
- ใช้เวลา
- เป้า
- เป้าหมาย
- งาน
- งาน
- ทีม
- ทีม
- TechCrunch
- วิชาการ
- เทคโนโลยี
- ผู้เช่า
- tensorflow
- ทดสอบ
- การทดสอบ
- พื้นที่
- ของพวกเขา
- ตัวเอง
- ดังนั้น
- ดังนั้น
- พัน
- สาม
- ธรณีประตู
- ตลอด
- ตลอด
- ปริมาณงาน
- เวลา
- ครั้ง
- ไปยัง
- ร่วมกัน
- เกินไป
- เครื่องมือ
- รวม
- TPS
- การติดตาม
- การจราจร
- รถไฟ
- ผ่านการฝึกอบรม
- การฝึกอบรม
- ธุรกรรม
- การทำธุรกรรม
- แปลง
- การแปลง
- การเปลี่ยนแปลง
- การขนส่ง
- โปร่งใส
- เรียก
- ไทรทัน
- กลับ
- ชนิด
- ตามแบบฉบับ
- เป็นปกติ
- ภายใต้
- พื้นฐาน
- เข้าใจ
- เป็นเอกลักษณ์
- หน่วย
- ทายไม่ถูก
- ไม่ได้ใช้
- บันทึก
- การปรับปรุง
- อัพเกรด
- อัพเกรด
- uptime
- การใช้
- ใช้
- ใช้กรณี
- ผู้ใช้งาน
- ผู้ใช้
- มักจะ
- นำไปใช้
- ใช้
- ตรวจสอบความถูกต้อง
- ความคุ้มค่า
- ความคุ้มค่า
- ตัวแปร
- ต่างๆ
- ผ่านทาง
- วีดีโอ
- วิดีโอ
- รายละเอียด
- เสมือน
- วิสัยทัศน์
- ปริมาณ
- โหวต
- คะแนนโหวต
- เสีย
- เว็บ
- บริการเว็บ
- สัปดาห์
- อะไร
- ความหมายของ
- ที่
- ในขณะที่
- กว้าง
- ช่วงกว้าง
- จะ
- ภายใน
- ไม่มี
- งาน
- ทำงาน
- ผู้ปฏิบัติงาน
- แรงงาน
- การทำงาน
- โรงงาน
- โลก
- จะ
- XGBoost
- ปี
- คุณ
- ของคุณ
- ลมทะเล
- เป็นศูนย์