โมเดล YOLO Object Detection Architecture

YOLO (You Only Look Once) มีความแตกต่างจากการตรวจจับวัตถุแบบเดิมอย่างชัดเจนในด้านของกระบวนการทำงานและความเร็ว โดยสามารถสรุปความแตกต่างที่สำคัญได้ดังนี้ครับ:

  • การมองภาพเพียงครั้งเดียว (Single Pass): ตามชื่อของมัน YOLO จะประมวลผลภาพทั้งภาพผ่านเครือข่ายประสาทเทียมเพียง**ครั้งเดียว (Single Forward Pass)
  • ** เพื่อทำนายทั้งตำแหน่งของกรอบ (Bounding Box) และประเภทของวัตถุไปพร้อมกัน ในขณะที่อัลกอริทึมแบบเดิม เช่น R-CNN หรือ Faster R-CNN จะเป็นแบบ Two-stage detector ซึ่งต้องมองภาพหลายครั้ง โดยขั้นตอนแรกจะค้นหาพื้นที่ที่น่าจะมีวัตถุ (Region Proposals) ประมาณ 300-2,000 จุด แล้วจึงนำแต่ละจุดมาตรวจสอบแยกกันในขั้นตอนที่สอง*
  • ความเร็วในการประมวลผลระดับ Real-time: เนื่องจาก YOLO ทำงานแบบขั้นตอนเดียว จึงมีความเร็วสูงมากจนสามารถใช้งานแบบ Real-time ได้ (ประมาณ 24 ถึง 155 เฟรมต่อวินาที) ในขณะที่โมเดลตระกูล R-CNN รุ่นเก่ามักจะทำงานได้ช้ากว่ามาก เช่น เพียง 0.5 ถึง 7 เฟรมต่อวินาทีเท่านั้น
  • การแบ่งภาพเป็นตาราง (Grid System): YOLO จะแบ่งภาพออกเป็นตาราง (เช่น 7x7 กริต) และให้แต่ละช่องในตารางรับผิดชอบในการทำนายวัตถุที่มีจุดศูนย์กลางอยู่ในช่องนั้น วิธีนี้ทำให้การประมวลผลมีความเรียบง่ายและเป็นระบบมากกว่าการใช้เทคนิค Sliding Window แบบเดิมที่ต้องเลื่อนฟิลเตอร์ไปทั่วทั้งภาพเพื่อหาวัตถุ
  • การมองภาพในระดับ Global: YOLO จะเห็นภาพทั้งภาพในคราวเดียว ทำให้มันเข้าใจบริบทของภาพได้ดีกว่าโมเดลที่เน้นตรวจจับเฉพาะส่วน อย่างไรก็ตาม ข้อเสียเปรียบเมื่อเทียบกับแบบเดิมคือ YOLO อาจมีความแม่นยำน้อยกว่า เล็กน้อยในการตรวจจับวัตถุขนาดเล็ก หรือวัตถุที่อยู่รวมกันเป็นกลุ่มหนาแน่น
  • การปรับเปลี่ยนปัญหาให้เป็น Regression: YOLO เปลี่ยนปัญหาการตรวจจับวัตถุให้กลายเป็นปัญหาการถดถอย (Regression Problem) เพียงหนึ่งเดียว ซึ่งรวมการทำนายพิกัดกรอบ (x, y, width, height), ความมั่นใจ (Confidence Score) และความน่าจะเป็นของคลาสเข้าด้วยกันในเอาต์พุตเดียว