ต้นขั้ว YOLOv7: อัลกอริทึมการตรวจจับวัตถุที่ล้ำหน้าที่สุด? - Unite.AI
เชื่อมต่อกับเรา

ปัญญาประดิษฐ์

YOLOv7: อัลกอริทึมการตรวจจับวัตถุที่ล้ำหน้าที่สุด?

mm

การตีพิมพ์

 on

วันที่ 6 กรกฎาคม 2022 จะถูกทำเครื่องหมายให้เป็นจุดสังเกตในประวัติศาสตร์ AI เนื่องจากเป็นวันนี้ที่ YOLOv7 เปิดตัว นับตั้งแต่เปิดตัว YOLOv7 ก็เป็นหัวข้อที่ร้อนแรงที่สุดในชุมชนนักพัฒนา Computer Vision และด้วยเหตุผลที่ถูกต้อง YOLOv7 ได้รับการยกย่องว่าเป็นก้าวสำคัญในอุตสาหกรรมการตรวจจับวัตถุแล้ว 

หลังจากนั้นไม่นาน เผยแพร่กระดาษ YOLOv7 กลายเป็นแบบจำลองการตรวจจับการคัดค้านตามเวลาจริงที่เร็วและแม่นยำที่สุด แต่ YOLOv7 เหนือกว่ารุ่นก่อนอย่างไร อะไรทำให้ YOLOv7 มีประสิทธิภาพมากในการปฏิบัติงานด้านคอมพิวเตอร์วิทัศน์ 

ในบทความนี้เราจะพยายามวิเคราะห์โมเดล YOLOv7 และพยายามค้นหาคำตอบว่าเหตุใด YOLOv7 จึงกลายเป็นมาตรฐานอุตสาหกรรม แต่ก่อนที่เราจะตอบได้ เราต้องดูประวัติโดยย่อของการตรวจจับวัตถุเสียก่อน 

การตรวจจับวัตถุคืออะไร?

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

แบบจำลองการตรวจจับวัตถุสามารถแบ่งออกเป็นสองประเภทที่แตกต่างกัน เครื่องตรวจจับแบบนัดเดียว, และ เครื่องตรวจจับหลายนัด 

การตรวจจับวัตถุตามเวลาจริง

เพื่อให้เข้าใจถึงวิธีการทำงานของ YOLOv7 อย่างแท้จริง จำเป็นอย่างยิ่งที่เราจะต้องเข้าใจวัตถุประสงค์หลักของ YOLOv7 “การตรวจจับวัตถุตามเวลาจริง”. การตรวจจับวัตถุตามเวลาจริงเป็นองค์ประกอบสำคัญของการมองเห็นด้วยคอมพิวเตอร์สมัยใหม่ แบบจำลองการตรวจจับวัตถุแบบเรียลไทม์พยายามระบุและค้นหาวัตถุที่สนใจแบบเรียลไทม์ แบบจำลองการตรวจจับวัตถุตามเวลาจริงทำให้นักพัฒนาสามารถติดตามวัตถุที่สนใจในเฟรมที่เคลื่อนไหวได้ เช่น วิดีโอ หรืออินพุตกล้องวงจรปิดแบบสดได้อย่างมีประสิทธิภาพ 

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

ด้วยเหตุนี้ โมเดลการตรวจจับวัตถุตามเวลาจริงจึงมีประสิทธิภาพอย่างมากสำหรับการวิเคราะห์วิดีโอ ยานพาหนะอัตโนมัติ การนับวัตถุ การติดตามหลายวัตถุ และอื่นๆ อีกมากมาย 

YOLO คืออะไร?

โยโล หรือ “คุณมองเพียงครั้งเดียว” เป็นตระกูลของแบบจำลองการตรวจจับวัตถุตามเวลาจริง แนวคิด YOLO เปิดตัวครั้งแรกในปี 2016 โดย Joseph Redmon และเป็นที่กล่าวขวัญกันแทบจะทันทีเพราะมันเร็วกว่าและแม่นยำกว่าอัลกอริทึมการตรวจจับวัตถุที่มีอยู่มาก ไม่นานก่อนที่อัลกอริทึม YOLO จะกลายเป็นมาตรฐานในอุตสาหกรรมการมองเห็นด้วยคอมพิวเตอร์ 

แนวคิดพื้นฐานที่อัลกอริทึม YOLO เสนอคือการใช้โครงข่ายประสาทแบบ end-to-end โดยใช้ bounding box & class probibility เพื่อคาดการณ์แบบเรียลไทม์ YOLO แตกต่างจากโมเดลการตรวจจับวัตถุก่อนหน้านี้ในแง่ที่ว่าได้เสนอแนวทางที่แตกต่างเพื่อดำเนินการตรวจจับวัตถุโดยการนำตัวแยกประเภทกลับมาใช้ใหม่ 

การเปลี่ยนแปลงวิธีการทำงานในขณะที่ YOLO กลายเป็นมาตรฐานอุตสาหกรรมในไม่ช้า เนื่องจากช่องว่างด้านประสิทธิภาพระหว่างตัวมันเอง และอัลกอริธึมการตรวจจับวัตถุแบบเรียลไทม์อื่นๆ มีความสำคัญ แต่อะไรคือสาเหตุที่ YOLO มีประสิทธิภาพมาก 

เมื่อเปรียบเทียบกับ YOLO อัลกอริทึมการตรวจจับวัตถุในตอนนั้นใช้เครือข่ายข้อเสนอภูมิภาคเพื่อตรวจจับภูมิภาคที่น่าสนใจ กระบวนการรับรู้ได้ดำเนินการในแต่ละภูมิภาคแยกกัน ด้วยเหตุนี้ โมเดลเหล่านี้จึงมักดำเนินการซ้ำหลายครั้งในภาพเดียวกัน จึงทำให้ขาดความแม่นยำและใช้เวลาในการดำเนินการสูงขึ้น ในทางกลับกัน อัลกอริทึม YOLO ใช้เลเยอร์เดียวที่เชื่อมต่ออย่างสมบูรณ์เพื่อทำการทำนายในครั้งเดียว 

YOLO ทำงานอย่างไร

มีสามขั้นตอนที่อธิบายวิธีการทำงานของอัลกอริทึม YOLO 

ปรับโครงสร้างการตรวจจับวัตถุให้เป็นปัญหาการถดถอยเดี่ยว

พื้นที่ อัลกอริทึม YOLO พยายามปรับการตรวจจับวัตถุให้เป็นปัญหาการถดถอยเดียวรวมถึงพิกเซลรูปภาพ ความน่าจะเป็นของคลาส และพิกัดของกล่องขอบเขต ดังนั้นอัลกอริทึมจึงต้องดูภาพเพียงครั้งเดียวเพื่อทำนายและค้นหาวัตถุเป้าหมายในภาพ 

เหตุผลของภาพทั่วโลก

นอกจากนี้ เมื่ออัลกอริทึม YOLO ทำการคาดการณ์ มันจะให้เหตุผลกับภาพทั่วโลก. ซึ่งแตกต่างจากเทคนิคการเลื่อนตามข้อเสนอระดับภูมิภาค เนื่องจากอัลกอริทึม YOLO มองเห็นภาพที่สมบูรณ์ระหว่างการฝึกอบรมและการทดสอบชุดข้อมูล และสามารถเข้ารหัสข้อมูลเชิงบริบทเกี่ยวกับชั้นเรียนและลักษณะที่ปรากฏ 

ก่อน YOLO Fast R-CNN เป็นหนึ่งในอัลกอริธึมการตรวจจับวัตถุที่ได้รับความนิยมมากที่สุด ซึ่งไม่สามารถมองเห็นบริบทที่ใหญ่กว่าในภาพได้ เนื่องจากเคยแก้ไขข้อผิดพลาดในแพตช์พื้นหลังในรูปภาพสำหรับวัตถุ เมื่อเปรียบเทียบกับอัลกอริทึม Fast R-CNN แล้ว YOLO มีความแม่นยำมากกว่า 50% เมื่อมันมาถึงข้อผิดพลาดพื้นหลัง 

สรุปการนำเสนอของวัตถุ

สุดท้ายนี้ อัลกอริทึม YOLO ยังมีเป้าหมายที่การเป็นตัวแทนของวัตถุในภาพ ด้วยเหตุนี้ เมื่อเรียกใช้อัลกอริทึม YOLO บนชุดข้อมูลที่มีรูปภาพธรรมชาติ และทดสอบผลลัพธ์ YOLO มีประสิทธิภาพดีกว่าโมเดล R-CNN ที่มีอยู่ในระยะขอบที่กว้าง เป็นเพราะ YOLO สามารถสรุปได้ทั่วไป โอกาสที่ YOLO จะพังเมื่อใช้งานกับอินพุตที่ไม่คาดคิดหรือโดเมนใหม่จึงมีน้อย 

YOLOv7: มีอะไรใหม่?

ตอนนี้เรามีความเข้าใจพื้นฐานว่าโมเดลการตรวจจับวัตถุตามเวลาจริงคืออะไร และอัลกอริทึม YOLO คืออะไร ก็ถึงเวลาหารือเกี่ยวกับอัลกอริทึม YOLOv7 

เพิ่มประสิทธิภาพกระบวนการฝึกอบรม

อัลกอริทึม YOLOv7 ไม่เพียงแต่พยายามปรับสถาปัตยกรรมโมเดลให้เหมาะสมเท่านั้น แต่ยังมีเป้าหมายเพื่อเพิ่มประสิทธิภาพกระบวนการฝึกอบรมด้วย มีจุดมุ่งหมายเพื่อใช้โมดูลและวิธีการเพิ่มประสิทธิภาพเพื่อปรับปรุงความแม่นยำของการตรวจจับวัตถุ เพิ่มต้นทุนสำหรับการฝึกอบรม ขณะที่รักษาต้นทุนการรบกวน โมดูลการปรับให้เหมาะสมเหล่านี้สามารถอ้างถึงเป็น กระเป๋าฝึกสอนของฟรี 

การกำหนดป้ายแนะนำตะกั่วแบบหยาบถึงละเอียด

อัลกอริทึม YOLOv7 วางแผนที่จะใช้การมอบหมายฉลากคำแนะนำแบบหยาบถึงละเอียดแบบใหม่แทนแบบเดิม การกำหนดฉลากแบบไดนามิก เป็นเช่นนั้นเพราะด้วยการกำหนดป้ายกำกับไดนามิก การฝึกโมเดลที่มีเลเยอร์เอาต์พุตหลายเลเยอร์ทำให้เกิดปัญหาบางอย่าง ปัญหาที่พบบ่อยที่สุดคือวิธีกำหนดเป้าหมายไดนามิกสำหรับสาขาและเอาต์พุตที่แตกต่างกัน 

การกำหนดพารามิเตอร์ซ้ำของโมเดล

การปรับพารามิเตอร์โมเดลใหม่เป็นแนวคิดสำคัญในการตรวจจับวัตถุ และโดยทั่วไปแล้วการใช้งานจะตามมาด้วยปัญหาบางอย่างในระหว่างการฝึกอบรม อัลกอริทึม YOLOv7 วางแผนที่จะใช้แนวคิดของ เส้นทางการเผยแพร่ไล่ระดับสีเพื่อวิเคราะห์นโยบายการกำหนดพารามิเตอร์ซ้ำของแบบจำลอง ใช้ได้กับเลเยอร์ต่างๆ ในเครือข่าย 

การขยายและการปรับขนาดแบบผสม

อัลกอริทึม YOLOv7 ยังแนะนำ วิธีการปรับขนาดแบบขยายและแบบผสม เพื่อใช้ประโยชน์และใช้พารามิเตอร์และการคำนวณอย่างมีประสิทธิภาพสำหรับการตรวจจับวัตถุตามเวลาจริง 

YOLOv7 : งานที่เกี่ยวข้อง

การตรวจจับวัตถุตามเวลาจริง

ปัจจุบัน YOLO เป็นมาตรฐานอุตสาหกรรม และเครื่องตรวจจับวัตถุตามเวลาจริงส่วนใหญ่ใช้อัลกอริทึม YOLO และ FCOS (การตรวจจับวัตถุขั้นตอนเดียวแบบครบวงจร) เครื่องตรวจจับวัตถุแบบเรียลไทม์ที่ทันสมัยมักจะมีลักษณะดังต่อไปนี้

  • สถาปัตยกรรมเครือข่ายที่แข็งแกร่งและเร็วขึ้น 
  • วิธีการรวมคุณสมบัติที่มีประสิทธิภาพ 
  • วิธีการตรวจจับวัตถุที่แม่นยำ 
  • ฟังก์ชันการสูญเสียที่แข็งแกร่ง 
  • วิธีการกำหนดฉลากที่มีประสิทธิภาพ 
  • วิธีการฝึกอบรมที่มีประสิทธิภาพ 

อัลกอริทึม YOLOv7 ไม่ใช้วิธีการเรียนรู้และการกลั่นแบบดูแลตนเองซึ่งมักจะต้องใช้ข้อมูลจำนวนมาก ในทางกลับกัน อัลกอริทึม YOLOv7 ใช้วิธีกระเป๋าของฟรีที่ฝึกได้ 

การกำหนดพารามิเตอร์ซ้ำของโมเดล

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

ตอนนี้ เพื่อให้ได้แบบจำลองสัญญาณรบกวนขั้นสุดท้าย เทคนิคการเปลี่ยนพารามิเตอร์ระดับแบบจำลองใช้แนวทางปฏิบัติสองแบบ แบบฝึกแรกใช้ข้อมูลการฝึกที่แตกต่างกันเพื่อฝึกโมเดลที่เหมือนกันจำนวนมาก จากนั้นจึงเฉลี่ยน้ำหนักของโมเดลที่ฝึก อีกทางหนึ่ง แนวทางปฏิบัติอื่น ๆ จะเฉลี่ยน้ำหนักของแบบจำลองระหว่างการวนซ้ำที่แตกต่างกัน 

การกำหนดพารามิเตอร์ใหม่ในระดับโมดูลกำลังได้รับความนิยมอย่างมากเมื่อเร็วๆ นี้ เนื่องจากการแบ่งโมดูลออกเป็นสาขาโมดูลต่างๆ หรือสาขาที่เหมือนกันที่แตกต่างกันในระหว่างขั้นตอนการฝึกอบรม จากนั้นจึงดำเนินการรวมสาขาต่างๆ 

อย่างไรก็ตาม เทคนิคการกำหนดพารามิเตอร์ใหม่ไม่สามารถใช้ได้กับสถาปัตยกรรมทุกประเภท จึงเป็นเหตุผลว่าทำไม อัลกอริทึม YOLOv7 ใช้เทคนิคการกำหนดพารามิเตอร์ใหม่เพื่อออกแบบกลยุทธ์ที่เกี่ยวข้อง เหมาะสำหรับสถาปัตยกรรมที่แตกต่างกัน 

การปรับขนาดโมเดล

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

หนึ่งในวิธีการปรับขนาดที่ใช้บ่อยที่สุดคือ ค้นหา NAS หรือสถาปัตยกรรมเครือข่าย ที่ค้นหาปัจจัยการปรับขนาดที่เหมาะสมโดยอัตโนมัติจากเครื่องมือค้นหาโดยไม่มีกฎที่ซับซ้อน ข้อเสียที่สำคัญของการใช้ NAS คือเป็นวิธีที่มีราคาแพงสำหรับการค้นหาปัจจัยการปรับสเกลที่เหมาะสม 

โมเดลการปรับพารามิเตอร์ใหม่เกือบทุกโมเดลจะวิเคราะห์ปัจจัยการปรับสเกลแต่ละรายการและเฉพาะตัวโดยอิสระ และยิ่งกว่านั้น ยังปรับปัจจัยเหล่านี้ให้เหมาะสมโดยอิสระ เป็นเพราะสถาปัตยกรรม NAS ทำงานร่วมกับปัจจัยการปรับขนาดที่ไม่สัมพันธ์กัน 

เป็นที่น่าสังเกตว่าโมเดลที่ใช้การต่อข้อมูลเช่น โววีเน็ต or เดนเซ่เน็ต เปลี่ยนความกว้างอินพุตสองสามเลเยอร์เมื่อปรับขนาดความลึกของโมเดล YOLOv7 ทำงานบนสถาปัตยกรรมที่อิงตามการเรียงต่อกัน และด้วยเหตุนี้จึงใช้วิธีการปรับขนาดแบบผสม

ตัวเลขดังกล่าวข้างต้นเปรียบเทียบ ขยายเครือข่ายการรวมเลเยอร์ที่มีประสิทธิภาพ (อี-อีแลน) ของรุ่นต่างๆ วิธีการ E-ELAN ที่นำเสนอจะรักษาเส้นทางการส่งข้อมูลแบบไล่ระดับของสถาปัตยกรรมดั้งเดิม แต่มีจุดมุ่งหมายเพื่อเพิ่มความสำคัญให้กับคุณสมบัติที่เพิ่มเข้ามาโดยใช้การบิดกลุ่ม กระบวนการนี้สามารถปรับปรุงคุณสมบัติที่เรียนรู้จากแผนที่ต่างๆ และสามารถทำให้การใช้การคำนวณและพารามิเตอร์มีประสิทธิภาพมากขึ้น 

สถาปัตยกรรม YOLOv7

โมเดล YOLOv7 ใช้โมเดล YOLOv4, YOLO-R และ Scaled YOLOv4 เป็นฐาน YOLOv7 เป็นผลมาจากการทดลองที่ดำเนินการกับโมเดลเหล่านี้เพื่อปรับปรุงผลลัพธ์ และทำให้โมเดลมีความแม่นยำมากขึ้น 

Extended Efficient Layer Aggregation Network หรือ E-ELAN

E-ELAN เป็นหน่วยการสร้างพื้นฐานของโมเดล YOLOv7 และมาจากโมเดลที่มีอยู่แล้วในด้านประสิทธิภาพเครือข่าย โดยส่วนใหญ่ อีแลน. 

ข้อพิจารณาหลักในการออกแบบสถาปัตยกรรมที่มีประสิทธิภาพคือจำนวนของพารามิเตอร์ ความหนาแน่นของการคำนวณ และปริมาณของการคำนวณ รุ่นอื่นๆ ยังพิจารณาปัจจัยต่างๆ เช่น อิทธิพลของอัตราส่วนช่องสัญญาณอินพุต/เอาต์พุต สาขาในเครือข่ายสถาปัตยกรรม ความเร็วในการรบกวนเครือข่าย จำนวนองค์ประกอบในเทนเซอร์ของเครือข่ายแบบหมุน และอื่นๆ 

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

ELAN ได้มาถึงขั้นตอนที่เสถียรแล้ว โดยไม่คำนึงถึงจำนวนบล็อกการคำนวณที่ซ้อนกัน และความยาวของเส้นทางการไล่ระดับสี สถานะเสถียรอาจถูกทำลายหากบล็อกการคำนวณซ้อนกันไม่จำกัด และอัตราการใช้พารามิเตอร์จะลดลง เดอะ สถาปัตยกรรม E-ELAN ที่นำเสนอสามารถแก้ปัญหาได้เนื่องจากใช้การขยาย การสับเปลี่ยน และการผสานจำนวนสมาชิก เพื่อเพิ่มความสามารถในการเรียนรู้ของเครือข่ายอย่างต่อเนื่องในขณะที่ยังคงรักษาเส้นทางการไล่ระดับสีเดิมไว้ 

นอกจากนี้ เมื่อเปรียบเทียบสถาปัตยกรรมของ E-ELAN กับ ELAN ข้อแตกต่างเพียงอย่างเดียวคือในบล็อกการคำนวณ ในขณะที่สถาปัตยกรรมของทรานซิชันเลเยอร์ไม่เปลี่ยนแปลง 

E-ELAN เสนอให้ขยายจำนวนสมาชิกของบล็อคการคำนวณ และขยายช่องทางโดยใช้ การบิดกลุ่ม. จากนั้น แผนผังคุณลักษณะจะถูกคำนวณ และสับเปลี่ยนเป็นกลุ่มตามพารามิเตอร์กลุ่ม จากนั้นจะเชื่อมต่อเข้าด้วยกัน จำนวนช่องสัญญาณในแต่ละกลุ่มจะยังคงเท่าเดิมในสถาปัตยกรรมดั้งเดิม สุดท้าย กลุ่มของแผนที่คุณลักษณะจะถูกเพิ่มเพื่อดำเนินการตามความสำคัญ 

การปรับขนาดโมเดลสำหรับโมเดลที่อิงตามการต่อข้อมูล

การปรับขนาดโมเดลช่วยในการ การปรับแอตทริบิวต์ของโมเดล ที่ช่วยในการสร้างแบบจำลองตามความต้องการและขนาดที่แตกต่างกันเพื่อตอบสนองความเร็วสัญญาณรบกวนที่แตกต่างกัน 

รูปนี้พูดถึงการปรับขนาดโมเดลสำหรับโมเดลที่อิงตามการต่อข้อมูลต่างๆ ดังที่คุณทำได้ในรูปที่ (a) และ (b) ความกว้างเอาต์พุตของบล็อกการคำนวณจะเพิ่มขึ้นตามการเพิ่มขนาดความลึกของโมเดล เป็นผลให้ความกว้างอินพุตของเลเยอร์การส่งข้อมูลเพิ่มขึ้น หากนำวิธีการเหล่านี้ไปใช้บนสถาปัตยกรรมแบบเรียงต่อกัน กระบวนการปรับขนาดจะดำเนินการในเชิงลึก และจะแสดงในรูป (c) 

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

กระเป๋า Freebies ที่ฝึกได้ 

กระเป๋าของแจกฟรีเป็นคำที่นักพัฒนาใช้เพื่ออธิบาย ชุดของวิธีการหรือเทคนิคที่สามารถเปลี่ยนแปลงกลยุทธ์การฝึกอบรมหรือต้นทุน ในความพยายามที่จะเพิ่มความแม่นยำของแบบจำลอง กระเป๋าฟรีที่สามารถฝึกได้ใน YOLOv7 คืออะไร? มาดูกัน 

การวางแผน Re-Parameterized Convolution

อัลกอริทึม YOLOv7 ใช้เส้นทางการเผยแพร่การไหลของการไล่ระดับสีเพื่อกำหนด วิธีการรวมเครือข่ายเข้ากับการแปลงพารามิเตอร์ใหม่. วิธีการนี้โดย YOlov7 เป็นความพยายามที่จะตอบโต้ อัลกอริทึม RepConv แม้ว่าจะทำงานอย่างสงบในโมเดล VGG แต่ก็ทำงานได้ไม่ดีเมื่อใช้กับโมเดล DenseNet และ ResNet โดยตรง 

ในการระบุการเชื่อมต่อในเลเยอร์ convolutional อัลกอริทึม RepConv รวมการบิด 3 × 3 และการบิด 1 × 1. หากเราวิเคราะห์อัลกอริทึม ประสิทธิภาพ และสถาปัตยกรรม เราจะสังเกตเห็นว่า RepConv ทำลาย การต่อข้อมูลใน DenseNet และส่วนที่เหลือใน ResNet

ภาพด้านบนแสดงโมเดลที่กำหนดพารามิเตอร์ใหม่ตามที่วางแผนไว้ จะเห็นได้ว่าอัลกอริทึม YOLov7 พบว่าเลเยอร์ในเครือข่ายที่มีการต่อข้อมูลหรือการเชื่อมต่อที่เหลือไม่ควรมีการเชื่อมต่อข้อมูลประจำตัวในอัลกอริทึม RepConv เป็นที่ยอมรับได้ในการสลับกับ RepConvN โดยไม่มีการเชื่อมต่อข้อมูลประจำตัว 

หยาบสำหรับเสริมและละเอียดสำหรับการสูญเสียตะกั่ว

การกำกับดูแลเชิงลึก เป็นสาขาหนึ่งในวิทยาการคอมพิวเตอร์ที่มักจะนำไปใช้ในกระบวนการฝึกอบรมเครือข่ายเชิงลึก หลักการพื้นฐานของการกำกับดูแลเชิงลึกก็คือ เพิ่มหัวเสริมเพิ่มเติมในชั้นกลางของเครือข่าย พร้อมกับน้ำหนักของเครือข่ายตื้นที่มีการสูญเสียผู้ช่วยเป็นแนวทาง อัลกอริทึม YOLOv7 อ้างอิงถึงส่วนหัวที่รับผิดชอบผลลัพธ์สุดท้ายในฐานะหัวนำ และหัวเสริมคือหัวที่ช่วยในการฝึก 

YOLOv7 ใช้วิธีการอื่นในการกำหนดฉลาก ตามธรรมเนียมแล้ว การกำหนดฉลากถูกใช้เพื่อสร้างฉลากโดยอ้างอิงโดยตรงกับความจริงพื้นฐาน และบนพื้นฐานของชุดกฎที่กำหนด อย่างไรก็ตาม ในช่วงไม่กี่ปีที่ผ่านมา การกระจายและคุณภาพของอินพุตการคาดคะเนมีบทบาทสำคัญในการสร้างฉลากที่เชื่อถือได้ YOLOv7 สร้างซอฟต์เลเบลของวัตถุ โดยใช้การคาดคะเนของกรอบขอบเขตและความจริงพื้นๆ 

นอกจากนี้ วิธีการกำหนดฉลากแบบใหม่ของอัลกอริทึม YOLOv7 ยังใช้การคาดคะเนของลีดเฮดเพื่อนำทางทั้งลีดและเฮดเสริม วิธีการกำหนดฉลากมีสองกลยุทธ์ที่เสนอ 

ผู้มอบหมายป้ายแนะนำหัวหน้าผู้นำ

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

กลยุทธ์ทำงานบนสมมติฐานที่ว่าเนื่องจากหัวหน้านำมีความสามารถในการเรียนรู้ที่มากกว่า ป้ายชื่อที่สร้างขึ้นควรเป็นตัวแทนมากกว่า และสัมพันธ์กันระหว่างแหล่งที่มาและเป้าหมาย 

ตัวกำหนดฉลากที่มีคำแนะนำสำหรับหัวตะกั่วแบบหยาบถึงละเอียด

กลยุทธ์นี้ยังทำการคำนวณบนพื้นฐานของผลการคาดคะเนของหัวหน้าเป้าหมายและความจริงพื้นฐาน จากนั้นจึงใช้การปรับให้เหมาะสมเพื่อสร้างฉลากแบบอ่อน อย่างไรก็ตาม มีความแตกต่างที่สำคัญ ในกลยุทธ์นี้ มีซอฟต์เลเบลสองชุด ระดับหยาบ และ ฉลากที่ดี 

ฉลากหยาบถูกสร้างขึ้นโดยการผ่อนคลายข้อจำกัดของตัวอย่างที่เป็นบวก

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

รูปด้านบนอธิบายการใช้กระเป๋าของแจกฟรีในอัลกอริทึม YOLOv7 แสดงภาพหยาบสำหรับหัวเสริม และละเอียดสำหรับหัวตะกั่ว เมื่อเราเปรียบเทียบ Model ที่มี Auxiliary Head(b) กับ Normal Model (a) เราจะสังเกตเห็นว่า Schema ใน (b) มี Head เสริม ในขณะที่ไม่มีใน (a) 

รูปที่ (c) แสดงถึงผู้กำหนดฉลากอิสระทั่วไป ในขณะที่รูป (d) & รูปที่ (e) ตามลำดับแสดงถึง Lead Guided Assigner และ Coarse-toFine Lead Guided Assigner ที่ใช้โดย YOLOv7  

กระเป๋า Freebies ที่ฝึกได้อื่น ๆ

นอกเหนือจากที่กล่าวมาข้างต้นแล้ว อัลกอริทึม YOLOv7 ยังใช้กระเป๋าของสมนาคุณเพิ่มเติม แม้ว่าในตอนแรกพวกเขาจะไม่ได้เสนอก็ตาม พวกเขาคือ

  • การทำให้เป็นมาตรฐานแบบกลุ่มในเทคโนโลยีการเปิดใช้งาน Conv-Bn: กลยุทธ์นี้ใช้เพื่อเชื่อมต่อชั้น Convolutional กับชั้น Normalization แบบแบทช์โดยตรง 
  • ความรู้โดยนัยใน YOLOR: YOLOv7 รวมกลยุทธ์เข้ากับแผนที่คุณลักษณะ Convolutional 
  • รุ่นแม่: แบบจำลอง EMA ถูกใช้เป็นแบบจำลองอ้างอิงขั้นสุดท้ายใน YOLOv7 แม้ว่าการใช้งานหลักจะใช้ในวิธีการของผู้สอนเฉลี่ย 

YOLOv7 : การทดลอง

การตั้งค่าการทดลอง

อัลกอริทึม YOLOv7 ใช้ ชุดข้อมูล Microsoft COCO สำหรับการฝึกอบรมและการตรวจสอบความถูกต้อง แบบจำลองการตรวจจับวัตถุ และไม่ใช่การทดลองทั้งหมดที่ใช้แบบจำลองที่ฝึกไว้ล่วงหน้า นักพัฒนาใช้ชุดข้อมูลรถไฟปี 2017 สำหรับการฝึกอบรม และใช้ชุดข้อมูลการตรวจสอบความถูกต้องปี 2017 สำหรับการเลือกไฮเปอร์พารามิเตอร์ สุดท้าย ประสิทธิภาพของผลลัพธ์การตรวจจับวัตถุ YOLOv7 จะถูกนำไปเปรียบเทียบกับอัลกอริธึมที่ทันสมัยสำหรับการตรวจจับวัตถุ 

นักพัฒนาออกแบบโมเดลพื้นฐานสำหรับ edge GPU (YOLOv7-จิ๋ว), GPU ปกติ (YOLOv7) และ cloud GPU (YOLOv7-W6). นอกจากนี้ อัลกอริทึม YOLOv7 ยังใช้โมเดลพื้นฐานสำหรับการปรับขนาดโมเดลตามความต้องการบริการที่แตกต่างกัน และรับโมเดลที่แตกต่างกัน สำหรับอัลกอริทึม YOLOv7 การสเกลสแต็กจะทำที่ส่วนคอ และสารประกอบที่เสนอจะใช้เพื่อเพิ่มสเกลความลึกและความกว้างของโมเดล 

พื้นฐาน

อัลกอริทึม YOLOv7 ใช้โมเดล YOLO ก่อนหน้า และอัลกอริทึมการตรวจจับวัตถุ YOLOR เป็นพื้นฐาน

รูปด้านบนนี้เปรียบเทียบพื้นฐานของโมเดล YOLOv7 กับโมเดลการตรวจจับวัตถุอื่นๆ และผลลัพธ์ก็ค่อนข้างชัดเจน เมื่อเปรียบเทียบกับ อัลกอริทึม YOLOv4, YOLOv7 ไม่เพียงแต่ใช้พารามิเตอร์น้อยลง 75% เท่านั้น แต่ยังใช้การคำนวณน้อยลง 15% และมีความแม่นยำสูงขึ้น 0.4% 

เปรียบเทียบกับรุ่นเครื่องตรวจจับวัตถุที่ทันสมัย

รูปด้านบนแสดงผลลัพธ์เมื่อเปรียบเทียบ YOLOv7 กับโมเดลการตรวจจับวัตถุที่ทันสมัยสำหรับ GPU มือถือและทั่วไป สังเกตได้ว่าวิธีการที่เสนอโดยอัลกอริทึม YOLOv7 มีคะแนนการแลกเปลี่ยนความถูกต้องของความเร็วที่ดีที่สุด 

การศึกษาการระเหย: วิธีการปรับขนาดแบบผสมที่เสนอ

รูปภาพที่แสดงด้านบนเปรียบเทียบผลลัพธ์ของการใช้กลยุทธ์ต่างๆ เพื่อปรับขนาดโมเดล กลยุทธ์การปรับขนาดในโมเดล YOLOv7 จะขยายความลึกของบล็อกการคำนวณขึ้น 1.5 เท่า และปรับขนาดความกว้างขึ้น 1.25 เท่า 

เมื่อเปรียบเทียบกับรุ่นที่ปรับขนาดความลึกเท่านั้น รุ่น YOLOv7 ทำงานได้ดีขึ้น 0.5% โดยใช้พารามิเตอร์และพลังการคำนวณน้อยลง ในทางกลับกัน เมื่อเทียบกับรุ่นที่ขยายเฉพาะความลึก ความแม่นยำของ YOLOv7 ดีขึ้น 0.2% แต่จำนวนพารามิเตอร์จำเป็นต้องปรับขนาด 2.9% และการคำนวณ 1.2% 

แบบจำลองการกำหนดพารามิเตอร์ใหม่ตามแผนที่เสนอ

ในการตรวจสอบความถูกต้องทั่วไปของโมเดลที่กำหนดพารามิเตอร์ใหม่ที่เสนอ อัลกอริทึม YOLOv7 ใช้กับแบบจำลองที่เหลือและการต่อข้อมูลสำหรับการตรวจสอบ. สำหรับกระบวนการตรวจสอบจะใช้อัลกอริทึม YOLOv7 ELAN 3 สแต็ก สำหรับโมเดลตามการต่อข้อมูล และ CSPDarknet สำหรับโมเดลที่เหลือ 

สำหรับโมเดลที่อิงตามการต่อข้อมูล อัลกอริทึมจะแทนที่เลเยอร์ Convolutional ขนาด 3×3 ใน ELAN แบบ 3 สแต็กด้วย RepConv รูปภาพด้านล่างแสดงการกำหนดค่าโดยละเอียดของ Planned RepConv และ ELAN แบบ 3 สแต็ก 

นอกจากนี้ เมื่อต้องจัดการกับแบบจำลองที่เหลือ อัลกอริทึม YOLOv7 จะใช้บล็อกมืดที่ย้อนกลับ เนื่องจากบล็อกมืดดั้งเดิมไม่มีบล็อกการหมุนวน 3 × 3 รูปด้านล่างแสดงสถาปัตยกรรมของ Reversed CSPDarknet ที่กลับตำแหน่งของเลเยอร์ 3×3 และ 1×1 convolutional 

การสูญเสียผู้ช่วยที่เสนอสำหรับหัวหน้าผู้ช่วย

สำหรับการสูญเสียผู้ช่วยสำหรับหัวเสริม รุ่น YOLOv7 เปรียบเทียบการกำหนดฉลากอิสระสำหรับวิธีหัวเสริมและหัวตะกั่ว 

รูปด้านบนมีผลการศึกษาเกี่ยวกับหัวเสริมที่เสนอ จะเห็นได้ว่าประสิทธิภาพโดยรวมของโมเดลเพิ่มขึ้นเมื่อสูญเสียผู้ช่วยเพิ่มขึ้น นอกจากนี้ การกำหนดฉลากแนะนำลีดที่เสนอโดยโมเดล YOLOv7 ทำงานได้ดีกว่ากลยุทธ์การมอบหมายลีดแบบอิสระ 

ผลลัพธ์ YOLOv7

จากการทดลองข้างต้น นี่คือผลลัพธ์ของประสิทธิภาพของ YOLov7 เมื่อเปรียบเทียบกับอัลกอริทึมการตรวจจับวัตถุอื่นๆ 

รูปด้านบนเปรียบเทียบโมเดล YOLOv7 กับอัลกอริทึมการตรวจจับวัตถุอื่นๆ และสังเกตได้อย่างชัดเจนว่า YOLOv7 เหนือกว่าโมเดลการตรวจจับการคัดค้านอื่นๆ ในแง่ของ ความแม่นยำเฉลี่ย (AP) v/s การรบกวนเป็นชุด

นอกจากนี้ รูปด้านล่างยังเปรียบเทียบประสิทธิภาพของอัลกอริทึมการตรวจจับการคัดค้านตามเวลาจริงอื่นๆ ของ YOLOv7 v/s เป็นอีกครั้งที่ YOLOv7 ประสบความสำเร็จกับรุ่นอื่นๆ ในแง่ของประสิทธิภาพโดยรวม ความแม่นยำ และประสิทธิภาพ 

นี่คือข้อสังเกตเพิ่มเติมจากผลลัพธ์และการแสดงของ YOLOv7 

  1. YOLOv7-Tiny เป็นรุ่นที่เล็กที่สุดในตระกูล YOLO โดยมีพารามิเตอร์มากกว่า 6 ล้านพารามิเตอร์ YOLOv7-Tiny มีความแม่นยำเฉลี่ย 35.2% และมีประสิทธิภาพดีกว่ารุ่น YOLOv4-Tiny ด้วยพารามิเตอร์ที่เทียบเคียงได้ 
  2. โมเดล YOLOv7 มีพารามิเตอร์มากกว่า 37 ล้านพารามิเตอร์ และมีประสิทธิภาพดีกว่าโมเดลที่มีพารามิเตอร์สูงกว่า เช่น YOLov4 
  3. รุ่น YOLOv7 มีอัตรา mAP และ FPS สูงสุดในช่วง 5 ถึง 160 FPS 

สรุป

YOLO หรือ You Look Once คือรูปแบบการตรวจจับวัตถุที่ทันสมัยในการมองเห็นคอมพิวเตอร์สมัยใหม่ อัลกอริทึม YOLO เป็นที่รู้จักในด้านความแม่นยำและประสิทธิภาพที่สูง และเป็นผลให้พบการใช้งานอย่างกว้างขวางในอุตสาหกรรมการตรวจจับวัตถุแบบเรียลไทม์ นับตั้งแต่เปิดตัวอัลกอริทึม YOLO ครั้งแรกในปี 2016 การทดลองทำให้นักพัฒนาสามารถปรับปรุงโมเดลได้อย่างต่อเนื่อง 

รุ่น YOLOv7 เป็นส่วนเสริมล่าสุดในตระกูล YOLO และเป็นอัลกอริธึม YOLo ที่ทรงพลังที่สุดจนถึงปัจจุบัน ในบทความนี้ เราได้พูดคุยเกี่ยวกับพื้นฐานของ YOLOv7 และพยายามอธิบายว่าอะไรทำให้ YOLOv7 มีประสิทธิภาพมาก 

"อาชีพวิศวกร นักเขียนด้วยหัวใจ". Kunal เป็นนักเขียนด้านเทคนิคที่มีความรักและความเข้าใจอย่างลึกซึ้งเกี่ยวกับ AI และ ML โดยอุทิศตนเพื่อทำให้แนวคิดที่ซับซ้อนในสาขาเหล่านี้ง่ายขึ้นผ่านเอกสารประกอบที่ให้ข้อมูลที่น่าสนใจ