ข้ามไปเนื้อหาหลัก

เจาะลึกออกแบบระบบแนะนำวิดีโอ สัมภาษณ์ ML System Design

ถอดบทเรียนการออกแบบระบบแนะนำวิดีโอจากแคตตาล็อกนับร้อยล้านรายการภายใส่งบเวลา 100 มิลลิวินาที สัมภาษณ์เชิงระบบ ML ที่ต้องใช้ทั้ง Retrieval และ Ranking

เรียบเรียงโดย AI
Inewgen
15 Oct 2026ที่มา: Dev.to3 นาทีอ่าน (0 ครั้ง)
แชร์
เจาะลึกออกแบบระบบแนะนำวิดีโอ สัมภาษณ์ ML System Design

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

ขนาดตัวอักษร
  • ระบบแนะนำวิดีโอขนาดใหญ่ไม่สามารถใช้โมเดลเดียวสโคร์ไอเทมทุกชิ้นได้ทันในงบเวลา 100 มิลลิวินาที
  • โครงสร้างหลักคือ Retrieval-then-Ranking แยกการดึงแคตตาล็อกออกเป็นสองขั้นตอนเพื่อประสิทธิภาพ
  • การทำงานแบ่งเป็นระบบออนไลน์ความหน่วงต่ำและระบบออฟไลน์สำหรับการเทรนโมเดลด้วย Logged Events
  • การประเมินผลแบ่งเป็น 4 มิติ ได้แก่ การแก้ปัญหา, การสื่อสาร, การปฏิบัติทางเทคนิค และการบริหารเวลา 60 นาที

โจทย์การออกแบบระบบแนะนำวิดีโอนั้นดูผิวเผินเหมือนเป็นประโยคเดียวสั้นๆ คือการแสดงวิดีโอที่ผู้ใช้จะชอบ แต่ประโยคเดียวนั้นกลับซ่อนความซับซ้อนของการสัมภาษณ์ไว้ทั้งหมด หากทำกับแคตตาล็อกขนาดเล็ก ระบบสามารถให้คะแนนทุกไอเทมสำหรับผู้ใช้ทุกคนได้ แต่หากเป็นแคตตาล็อกที่มีจำนวนนับร้อยล้านรายการ ภายใส่งบเวลาเพียง 100 มิลลิวินาที พร้อมทั้งต้องเรียนรู้จากทุกการคลิกและรองรับผู้ใช้ใหม่ที่ไม่มีประวัติ ปัญหาจะกลายเป็นเรื่องของ Retrieval, Ranking และ Data Pipeline ทันที

machine learning algorithm data flow diagram

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

การสัมภาษณ์รอบนี้ใช้เวลาประมาณ 60 นาทีบนไวท์บอร์ดที่แชร์ร่วมกัน โดยคุณต้องวาดกล่องและลูกศรพร้อมกับอธิบายเหตุผลไปพร้อมกัน ผู้สัมภาษณ์ชื่นชอบโจทย์นี้เพราะมันเปิดประตูไปสู่ความลึกและผสานทักษะสองด้านที่มักถูกฝึกแยกกัน ได้แก่ สถาปัตยกรรมระดับสูง (High-level Design) และการสร้างโมเดลแมชชีนเลิร์นนิง (Machine Learning)

100msงบเวลาต่อหนึ่ง Request
100Mจำนวนรายการในแคตตาล็อก

หัวใจสำคัญที่จะทำให้ผู้สมัครได้คะแนนคือความเข้าใจว่าความยากไม่ได้อยู่ที่การเลือกโมเดล แต่เป็นการเสิร์ฟรายการที่จัดอันดับแล้วภายในเวลาประมาณ 100 มิลลิวินาที จากแคตตาล็อกที่มีขนาดใหญ่เกินกว่าจะให้คะแนนทุกชิ้นต่อหนึ่งคำขอ ดังนั้น หัวใจหลักจึงเป็นไปป์ไลน์แบบสองขั้นตอน ได้แก่ การดึงข้อมูล (Retrieval) และการจัดอันดับ (Ranking) ซึ่งขับเคลื่อนด้วยลูปการเทรนแบบออฟไลน์

ไม่อยากพลาดข่าวใหม่?

สมัครรับสรุปข่าวสารใหม่ทางอีเมล ไม่บ่อยจนรำคาญ

โฆษณา

"The hard part isn't choosing a model, it's serving a good ranked list in ~100 ms over a catalogue too large to score per request -- so the core of the design is a two-stage retrieve-then-rank pipeline fed by an offline training loop, not a single model."

บทสัมภาษณ์เชิงระบบ Machine Learning Design

การทำความเข้าใจสถาปัตยกรรมแบบ Two-stage Pipeline (Retrieval แล้วตามด้วย Ranking) เปรียบเสมือนการคัดกรองพนักงานในบริษัทใหญ่ ขั้นตอน Retrieval ทำหน้าที่เหมือนฝ่ายทรัพยากรบุคคลที่คัดเรซูเม่นับหมื่นแผ่นให้เหลือเพียงกลุ่มสั้นๆ ที่น่าสนใจอย่างรวดเร็ว ส่วน Ranking เปรียบเสมือนผู้บริหารแผนกที่สัมภาษณ์เชิงลึกเฉพาะผู้สมัครกลุ่มสั้นนั้นอย่างพิถีพิถัน แนวคิดนี้ช่วยประหยัดทรัพยากรการประมวลผลมหาศาลและรักษาความเร็วในการตอบสนองผู้ใช้ได้ตามเป้าหมาย

ในการประมาณการและการออกแบบ API ระบบภายนอกจะถูกออกแบบให้เรียบง่ายผ่านการเรียกใช้งานเพียงครั้งเดียวเพื่อรับรายการที่จัดอันดับแล้ว โดยมีระบบภายในสองขั้นตอนรองรับอยู่เบื้องหลัง พร้อมด้วยโมเดลข้อมูลที่เก็บสถานะทั้งสองระยะและถูกเขียนโดยไปป์ไลน์ออฟไลน์

ที่มา: Dev.to

ความคิดเห็น

แสดงความคิดเห็น
0/2000

พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้