ປັນຍາປະດິດ
YOLOv9: ກ້າວກະໂດດໃນການກວດຫາວັດຖຸໃນເວລາຈິງ
ກວດຫາວັດຖຸ ໄດ້ເຫັນຄວາມກ້າວຫນ້າຢ່າງໄວວາໃນຊຸມປີມໍ່ໆມານີ້ຍ້ອນ ການຮຽນຮູ້ລຶກລັບ ສູດການຄິດໄລ່ເຊັ່ນ YOLO (ເຈົ້າເບິ່ງຄັ້ງດຽວ). ການທົດສອບຫລ້າສຸດ, YOLOv9, ເອົາການປັບປຸງທີ່ສໍາຄັນໃນຄວາມຖືກຕ້ອງ, ປະສິດທິພາບແລະການນໍາໃຊ້ຫຼາຍກວ່າສະບັບທີ່ຜ່ານມາ. ໃນບົດຂຽນນີ້, ພວກເຮົາຈະເຂົ້າໄປໃນນະວັດຕະກໍາທີ່ເຮັດໃຫ້ YOLOv9 ມີຄວາມທັນສະໄຫມໃຫມ່ສໍາລັບການກວດສອບວັດຖຸໃນເວລາຈິງ.
ເປັນ primer ດ່ວນກ່ຽວກັບການຊອກຄົ້ນຫາວັດຖຸ
ກ່ອນທີ່ຈະເຂົ້າໄປໃນສິ່ງໃຫມ່ກັບ YOLOv9, ໃຫ້ພວກເຮົາທົບທວນຄືນສັ້ນໆວ່າວິທີການກວດພົບວັດຖຸເຮັດວຽກແນວໃດ. ເປົ້າໝາຍຂອງການກວດຫາວັດຖຸແມ່ນເພື່ອລະບຸ ແລະຊອກຫາວັດຖຸພາຍໃນຮູບພາບ ເຊັ່ນ: ລົດ, ຄົນ ຫຼື ສັດ. ມັນເປັນຄວາມສາມາດທີ່ສໍາຄັນສໍາລັບຄໍາຮ້ອງສະຫມັກເຊັ່ນ: ລົດຂັບດ້ວຍຕົນເອງ, ລະບົບການເຝົ້າລະວັງ, ແລະການຊອກຫາຮູບພາບ.
ເຄື່ອງກວດຈັບເອົາຮູບພາບເປັນ input ແລະ outputs ກ່ອງຜູກມັດອ້ອມຮອບວັດຖຸທີ່ກວດພົບ, ແຕ່ລະມີປ້າຍປະເພດທີ່ກ່ຽວຂ້ອງ. ຊຸດຂໍ້ມູນຍອດນິຍົມເຊັ່ນ MS COCO ສະໜອງຮູບພາບທີ່ມີປ້າຍກຳກັບຫຼາຍພັນຮູບເພື່ອຝຶກອົບຮົມ ແລະປະເມີນຮູບແບບເຫຼົ່ານີ້.
ມີສອງວິທີການຕົ້ນຕໍໃນການຊອກຄົ້ນຫາວັດຖຸ:
- ເຄື່ອງກວດຈັບສອງຂັ້ນຕອນ ຄືກັບ Faster R-CNN ທໍາອິດສ້າງບົດສະເຫນີພາກພື້ນ, ຫຼັງຈາກນັ້ນຈັດປະເພດແລະປັບປຸງຂອບເຂດຂອງແຕ່ລະພາກພື້ນ. ພວກເຂົາເຈົ້າມີແນວໂນ້ມທີ່ຈະຖືກຕ້ອງຫຼາຍແຕ່ຊ້າກວ່າ.
- ເຄື່ອງກວດຈັບໄລຍະດຽວ ຄືກັບ YOLO ໃຊ້ຕົວແບບໂດຍກົງໃສ່ຮູບໃນໃບດຽວ. ພວກເຂົາເຈົ້າແລກປ່ຽນຄວາມຖືກຕ້ອງບາງຢ່າງສໍາລັບເວລາ inference ໄວຫຼາຍ.
YOLO ໄດ້ບຸກເບີກວິທີການຂັ້ນຕອນດຽວ. ຂໍໃຫ້ເບິ່ງວິທີການທີ່ມັນໄດ້ພັດທະນາໃນໄລຍະຫຼາຍສະບັບເພື່ອປັບປຸງຄວາມຖືກຕ້ອງແລະປະສິດທິພາບ.
ການທົບທວນຄືນຂອງ YOLO ສະບັບທີ່ຜ່ານມາ
ແບບຈໍາລອງຂອງຄອບຄົວ YOLO (You Only Look Once) ຢູ່ໃນແຖວໜ້າຂອງການກວດຫາວັດຖຸໄດ້ໄວນັບຕັ້ງແຕ່ສະບັບຕົ້ນສະບັບຖືກພິມເຜີຍແຜ່ໃນປີ 2016. ນີ້ແມ່ນການສະຫຼຸບຫຍໍ້ກ່ຽວກັບວິທີທີ່ YOLO ມີຄວາມຄືບໜ້າໃນໄລຍະຫຼາຍໆຄັ້ງ:
- YOLOv1 ສະເໜີຮູບແບບທີ່ເປັນເອກະພາບເພື່ອຄາດຄະເນກ່ອງຜູກມັດ ແລະ ຄວາມເປັນໄປໄດ້ຂອງຊັ້ນຮຽນໂດຍກົງຈາກຮູບເຕັມໃນໃບດຽວ. ນີ້ເຮັດໃຫ້ມັນໄວທີ່ສຸດເມື່ອທຽບກັບຕົວແບບສອງຂັ້ນຕອນກ່ອນຫນ້ານີ້.
- YOLOv2 ປັບປຸງຕາມຕົ້ນສະບັບໂດຍການນໍາໃຊ້ການປົກກະຕິ batch ສໍາລັບຄວາມຫມັ້ນຄົງທີ່ດີກວ່າ, ກ່ອງຍຶດຢູ່ໃນຂະຫນາດຕ່າງໆແລະອັດຕາສ່ວນລັກສະນະຕ່າງໆເພື່ອກວດຫາຂະຫນາດຫຼາຍ, ແລະການເພີ່ມປະສິດທິພາບອື່ນໆ.
- YOLOv3 ເພີ່ມຕົວສະກັດຄຸນສົມບັດໃຫມ່ທີ່ເອີ້ນວ່າ Darknet-53 ທີ່ມີຊັ້ນຕ່າງໆແລະທາງລັດລະຫວ່າງພວກມັນ, ປັບປຸງຄວາມຖືກຕ້ອງຕື່ມອີກ.
- YOLOv4 ແນວຄວາມຄິດລວມຈາກເຄື່ອງກວດຈັບວັດຖຸອື່ນໆແລະຮູບແບບການແບ່ງສ່ວນເພື່ອຊຸກຍູ້ຄວາມຖືກຕ້ອງສູງກວ່າໃນຂະນະທີ່ຍັງຮັກສາການສະຫຼຸບໄວ.
- YOLOv5 ຂຽນຄືນໃຫມ່ YOLOv4 ໃນ PyTorch ແລະເພີ່ມກະດູກສັນຫຼັງການສະກັດຄຸນສົມບັດໃຫມ່ທີ່ເອີ້ນວ່າ CSPDarknet ພ້ອມກັບການປັບປຸງອື່ນໆຈໍານວນຫນຶ່ງ.
- YOLOv6 ສືບຕໍ່ປັບປຸງຂະບວນການສະຖາປັດຕະຍະກຳ ແລະ ການຝຶກອົບຮົມໃຫ້ເໝາະສົມ, ດ້ວຍຕົວແບບທີ່ໄດ້ຝຶກອົບຮົມໄວ້ລ່ວງໜ້າໃນຊຸດຂໍ້ມູນພາຍນອກຂະໜາດໃຫຍ່ ເພື່ອເພີ່ມປະສິດຕິພາບຕື່ມອີກ.
ດັ່ງນັ້ນ, ສະຫຼຸບແລ້ວ, ຮຸ່ນ YOLO ທີ່ຜ່ານມາໄດ້ບັນລຸຄວາມຖືກຕ້ອງທີ່ສູງຂຶ້ນໂດຍຜ່ານການປັບປຸງສະຖາປັດຕະຍະກໍາ, ເຕັກນິກການຝຶກອົບຮົມ, ແລະການຝຶກອົບຮົມກ່ອນ. ແຕ່ເມື່ອຕົວແບບໃຫຍ່ຂຶ້ນແລະສັບສົນຫຼາຍ, ຄວາມໄວແລະປະສິດທິພາບເລີ່ມທົນທຸກ.
ຄວາມຕ້ອງການປະສິດທິພາບທີ່ດີກວ່າ
ແອັບພລິເຄຊັນຫຼາຍອັນຕ້ອງການການກວດຫາວັດຖຸເພື່ອເຮັດວຽກໃນເວລາຈິງໃນອຸປະກອນທີ່ມີຊັບພະຍາກອນຄອມພິວເຕີຈຳກັດ. ເມື່ອຕົວແບບມີຂະໜາດໃຫຍ່ຂຶ້ນ ແລະ ມີຄວາມເຂັ້ມຂຸ້ນໃນການຄິດໄລ່ຫຼາຍຂື້ນ, ພວກມັນກາຍເປັນຕົວແບບທີ່ບໍ່ສາມາດນຳໃຊ້ໄດ້.
ຕົວຢ່າງ, ລົດທີ່ຂັບລົດດ້ວຍຕົນເອງຕ້ອງກວດພົບວັດຖຸໃນອັດຕາເຟຣມສູງໂດຍໃຊ້ໂປເຊດເຊີພາຍໃນລົດ. ກ້ອງຖ່າຍຮູບຄວາມປອດໄພຕ້ອງດໍາເນີນການກວດຫາວັດຖຸຢູ່ໃນຟີດວິດີໂອຂອງມັນຢູ່ໃນຮາດແວຝັງຕົວຂອງມັນເອງ. ໂທລະສັບ ແລະອຸປະກອນບໍລິໂພກອື່ນໆມີຂໍ້ຈຳກັດດ້ານພະລັງງານ ແລະຄວາມຮ້ອນທີ່ເຄັ່ງຄັດຫຼາຍ.
ຮຸ່ນ YOLO ທີ່ຜ່ານມາໄດ້ຮັບຄວາມຖືກຕ້ອງສູງດ້ວຍຕົວກໍານົດການຈໍານວນຫລາຍແລະການດໍາເນີນງານການເພີ່ມຄູນ (FLOPs). ແຕ່ນີ້ມາຢູ່ໃນຄ່າໃຊ້ຈ່າຍຂອງຄວາມໄວ, ຂະຫນາດແລະປະສິດທິພາບພະລັງງານ.
ຕົວຢ່າງ, YOLOv5-L ຕ້ອງການຫຼາຍກວ່າ 100 ຕື້ FLOPs ເພື່ອປະມວນຜົນຮູບດຽວ 1280×1280. ນີ້ແມ່ນຊ້າເກີນໄປສໍາລັບກໍລະນີການນໍາໃຊ້ທີ່ແທ້ຈິງຈໍານວນຫຼາຍ. ທ່າອ່ຽງຂອງຕົວແບບທີ່ເຄີຍໃຫຍ່ຂຶ້ນຍັງເພີ່ມຄວາມສ່ຽງຕໍ່ການໃສ່ຕົວເກີນ ແລະເຮັດໃຫ້ມັນຍາກທີ່ຈະເຮັດໃຫ້ທົ່ວໄປໄດ້.
ດັ່ງນັ້ນ, ເພື່ອຂະຫຍາຍການໃຊ້ງານຂອງການກວດຫາວັດຖຸ, ພວກເຮົາຕ້ອງການວິທີການປັບປຸງປະສິດທິພາບ – ໄດ້ຮັບຄວາມຖືກຕ້ອງທີ່ດີກວ່າດ້ວຍຕົວກໍານົດການແລະການຄິດໄລ່ຫນ້ອຍ. ຂໍໃຫ້ເບິ່ງເຕັກນິກທີ່ໃຊ້ໃນ YOLOv9 ເພື່ອຮັບມືກັບສິ່ງທ້າທາຍນີ້.
YOLOv9 – ຄວາມຖືກຕ້ອງດີກວ່າດ້ວຍຊັບພະຍາກອນໜ້ອຍ
ນັກຄົ້ນຄວ້າທີ່ຢູ່ເບື້ອງຫຼັງ YOLOv9 ໄດ້ສຸມໃສ່ການປັບປຸງປະສິດທິພາບເພື່ອບັນລຸການປະຕິບັດໃນເວລາທີ່ແທ້ຈິງໃນທົ່ວອຸປະກອນທີ່ກວ້າງຂວາງ. ພວກເຂົາເຈົ້າໄດ້ນໍາສະເຫນີສອງປະດິດສ້າງທີ່ສໍາຄັນ:
- ສະຖາປັດຕະຍະກໍາແບບໃຫມ່ທີ່ເອີ້ນວ່າ ເຄືອຂ່າຍການລວມຊັ້ນທີ່ມີປະສິດທິພາບທົ່ວໄປ (GELAN) ທີ່ເຮັດໃຫ້ຄວາມຖືກຕ້ອງສູງສຸດໃນຂະນະທີ່ຫຼຸດພາລາມິເຕີ ແລະ FLOPs.
- ເຕັກນິກການຝຶກອົບຮົມທີ່ເອີ້ນວ່າ ຂໍ້ມູນ Gradient Programmable (PGI) ທີ່ສະຫນອງການຮຽນຮູ້ gradients ທີ່ເຊື່ອຖືໄດ້ຫຼາຍ, ໂດຍສະເພາະສໍາລັບຕົວແບບຂະຫນາດນ້ອຍ.
ຂໍໃຫ້ເບິ່ງວ່າແຕ່ລະຄວາມກ້າວຫນ້າເຫຼົ່ານີ້ຊ່ວຍປັບປຸງປະສິດທິພາບໄດ້ແນວໃດ.
ສະຖາປັດຕະຍະກໍາທີ່ມີປະສິດທິພາບຫຼາຍຂຶ້ນກັບ GELAN
ສະຖາປັດຕະຍະກໍາຕົວແບບຕົວມັນເອງແມ່ນສໍາຄັນສໍາລັບການດຸ່ນດ່ຽງຄວາມຖືກຕ້ອງຕໍ່ກັບຄວາມໄວແລະການນໍາໃຊ້ຊັບພະຍາກອນໃນລະຫວ່າງການສະຫຼຸບ. ເຄືອຂ່າຍ neural ຕ້ອງການຄວາມເລິກແລະຄວາມກວ້າງພຽງພໍເພື່ອເກັບກໍາລັກສະນະທີ່ກ່ຽວຂ້ອງຈາກຮູບພາບການປ້ອນຂໍ້ມູນ. ແຕ່ຊັ້ນຫຼືຕົວກອງຫຼາຍເກີນໄປນໍາໄປສູ່ຕົວແບບຊ້າແລະ bloated.
ຜູ້ຂຽນໄດ້ອອກແບບ GELAN ໂດຍສະເພາະເພື່ອບີບຄວາມຖືກຕ້ອງສູງສຸດອອກຈາກສະຖາປັດຕະຍະກໍາທີ່ນ້ອຍທີ່ສຸດເທົ່າທີ່ເປັນໄປໄດ້.
GELAN ໃຊ້ສອງຕຶກອາຄານຫຼັກຊ້ອນກັນ:
- ບລັອກການລວບລວມຊັ້ນທີ່ມີປະສິດທິພາບ – ການຫັນເປັນລວມເຫຼົ່ານີ້ໃນທົ່ວສາຂາເຄືອຂ່າຍຫຼາຍເພື່ອເກັບກໍາຄຸນສົມບັດຫຼາຍຂະຫນາດປະສິດທິພາບ.
- ບລັອກການຄິດໄລ່ – ຕັນ CSPNet ຊ່ວຍເຜີຍແຜ່ຂໍ້ມູນທົ່ວຊັ້ນຕ່າງໆ. ບລັອກໃດນຶ່ງສາມາດຖືກແທນທີ່ໂດຍອີງໃສ່ຂໍ້ຈໍາກັດຂອງຄອມພິວເຕີ້.
ໂດຍການດຸ່ນດ່ຽງຢ່າງລະມັດລະວັງແລະການລວມບລັອກເຫຼົ່ານີ້, GELAN ເຂົ້າໄປໃນຈຸດທີ່ຫວານລະຫວ່າງການປະຕິບັດ, ຕົວກໍານົດການ, ແລະຄວາມໄວ. ສະຖາປັດຕະຍະກໍາແບບໂມດູນດຽວກັນສາມາດປັບຂະຫນາດຂຶ້ນຫຼືຫຼຸດລົງໃນທົ່ວຂະຫນາດທີ່ແຕກຕ່າງກັນຂອງແບບຈໍາລອງແລະຮາດແວ.
ການທົດລອງໄດ້ສະແດງໃຫ້ເຫັນວ່າ GELAN ເຫມາະກັບປະສິດທິພາບຫຼາຍເປັນຮູບແບບຂະຫນາດນ້ອຍກວ່າເມື່ອທຽບກັບສະຖາປັດຕະຍະກໍາ YOLO ກ່ອນ. ຕົວຢ່າງ, GELAN-Small ທີ່ມີພາລາມິເຕີ 7M ດີກວ່າພາລາມິເຕີ 11M YOLOv7-Nano. ແລະ GELAN-Medium ທີ່ມີພາລາມິເຕີ 20M ປະຕິບັດເທົ່າກັບ YOLOv7 ແບບຂະຫນາດກາງທີ່ຕ້ອງການພາລາມິເຕີ 35-40M.
ດັ່ງນັ້ນ, ໂດຍການອອກແບບສະຖາປັດຕະຍະກໍາ parameterized ໂດຍສະເພາະສໍາລັບການເພີ່ມປະສິດທິພາບ, GELAN ອະນຸຍາດໃຫ້ຕົວແບບຕ່າງໆດໍາເນີນການໄດ້ໄວຂຶ້ນແລະໃນອຸປະກອນທີ່ຈໍາກັດຊັບພະຍາກອນຫຼາຍ. ຕໍ່ໄປພວກເຮົາຈະເບິ່ງວິທີການ PGI ຊ່ວຍໃຫ້ພວກເຂົາຝຶກອົບຮົມດີຂຶ້ນ.
ການຝຶກອົບຮົມທີ່ດີກວ່າດ້ວຍຂໍ້ມູນ Gradient Programmable (PGI)
ການຝຶກອົບຮົມແບບຈໍາລອງແມ່ນມີຄວາມສໍາຄັນເຊັ່ນດຽວກັນເພື່ອເພີ່ມປະສິດທິພາບຄວາມຖືກຕ້ອງດ້ວຍຊັບພະຍາກອນທີ່ຈໍາກັດ. ຜູ້ຂຽນ YOLOv9 ໄດ້ກໍານົດບັນຫາການຝຶກອົບຮົມແບບຈໍາລອງຂະຫນາດນ້ອຍທີ່ເກີດຈາກຂໍ້ມູນ gradient ທີ່ບໍ່ຫນ້າເຊື່ອຖື.
ໄລ່ສີ ກຳນົດວ່ານ້ຳໜັກຂອງຕົວແບບໃດນຶ່ງຖືກປັບປຸງໃນລະຫວ່າງການຝຶກອົບຮົມ. gradients ທີ່ບໍ່ມີສຽງ ຫຼືເຮັດໃຫ້ເຂົ້າໃຈຜິດເຮັດໃຫ້ການເຂົ້າກັນບໍ່ດີ. ບັນຫານີ້ຈະກາຍເປັນທີ່ຊັດເຈນຫຼາຍສໍາລັບເຄືອຂ່າຍຂະຫນາດນ້ອຍ.
ເຕັກນິກຂອງ ການຊີ້ນໍາເລິກ ແກ້ໄຂນີ້ໂດຍການແນະນໍາສາຂາຂ້າງຄຽງເພີ່ມເຕີມທີ່ມີການສູນເສຍເພື່ອຂະຫຍາຍສັນຍານ gradient ທີ່ດີກວ່າຜ່ານເຄືອຂ່າຍ. ແຕ່ມັນມີແນວໂນ້ມທີ່ຈະທໍາລາຍແລະເຮັດໃຫ້ເກີດຄວາມແຕກຕ່າງສໍາລັບຕົວແບບທີ່ມີນ້ໍາຫນັກເບົາຂະຫນາດນ້ອຍກວ່າ.
ເພື່ອເອົາຊະນະຂໍ້ຈໍາກັດນີ້, YOLOv9 ແນະນໍາ ຂໍ້ມູນ Gradient Programmable (PGI). PGI ມີສອງອົງປະກອບຕົ້ນຕໍ:
- ສາຂາທີ່ປີ້ນກັບຕົວຊ່ວຍ – ເຫຼົ່ານີ້ສະຫນອງ gradients ສະອາດໂດຍການຮັກສາການເຊື່ອມຕໍ່ປີ້ນກັບກັນກັບວັດສະດຸປ້ອນໂດຍໃຊ້ຕັນເຊັ່ນ RevCols.
- ການເຊື່ອມໂຍງ gradient ຫຼາຍລະດັບ – ອັນນີ້ຫຼີກລ່ຽງຄວາມແຕກແຍກຈາກຕ່າງຝ່າຍຕ່າງແຊກແຊງ. ມັນສົມທົບການ gradients ຈາກສາຂາທັງຫມົດກ່ອນທີ່ຈະໃຫ້ອາຫານກັບຄືນໄປບ່ອນຮູບແບບຕົ້ນຕໍ.
ໂດຍການສ້າງ gradients ທີ່ເຊື່ອຖືໄດ້ຫຼາຍ, PGI ຊ່ວຍໃຫ້ຕົວແບບຂະຫນາດນ້ອຍຝຶກອົບຮົມຢ່າງມີປະສິດທິພາບເທົ່າກັບຕົວແບບໃຫຍ່ກວ່າ:
ການທົດລອງສະແດງໃຫ້ເຫັນ PGI ປັບປຸງຄວາມຖືກຕ້ອງໃນທົ່ວຂະຫນາດຂອງຕົວແບບ, ໂດຍສະເພາະແມ່ນການຕັ້ງຄ່າຂະຫນາດນ້ອຍກວ່າ. ຕົວຢ່າງ, ມັນໄດ້ເພີ່ມຄະແນນ AP ຂອງ YOLOv9-Small ໂດຍ 0.1-0.4% ໃນໄລຍະພື້ນຖານ GELAN-Small. ຜົນປະໂຫຍດແມ່ນມີຄວາມສໍາຄັນຫຼາຍສໍາລັບຕົວແບບທີ່ເລິກເຊິ່ງເຊັ່ນ YOLOv9-E ທີ່ 55.6% mAP.
ດັ່ງນັ້ນ PGI ຊ່ວຍໃຫ້ຕົວແບບຂະຫນາດນ້ອຍກວ່າ, ມີປະສິດທິພາບໃນການຝຶກອົບຮົມໃນລະດັບຄວາມຖືກຕ້ອງທີ່ສູງຂຶ້ນໃນເມື່ອກ່ອນພຽງແຕ່ສາມາດບັນລຸໄດ້ໂດຍແບບຈໍາລອງເກີນຕົວກໍານົດການ.
YOLOv9 ກໍານົດຄວາມທັນສະໄຫມໃຫມ່ສໍາລັບປະສິດທິພາບ
ໂດຍການລວມເອົາຄວາມກ້າວຫນ້າທາງດ້ານສະຖາປັດຕະຍະກໍາຂອງ GELAN ກັບການປັບປຸງການຝຶກອົບຮົມຈາກ PGI, YOLOv9 ບັນລຸປະສິດທິພາບແລະປະສິດທິພາບທີ່ບໍ່ເຄີຍມີມາກ່ອນ:
- ເມື່ອປຽບທຽບກັບ YOLO ລຸ້ນກ່ອນ, YOLOv9 ໄດ້ຮັບ ຄວາມຖືກຕ້ອງທີ່ດີກວ່າທີ່ມີ 10-15% ຕົວກໍານົດການຫນ້ອຍແລະ 25% ການຄິດໄລ່ຫນ້ອຍ. ນີ້ນໍາເອົາການປັບປຸງທີ່ສໍາຄັນໃນຄວາມໄວແລະຄວາມສາມາດໃນທົ່ວຂະຫນາດຂອງຕົວແບບ.
- YOLOv9 ລື່ນກາຍເຄື່ອງກວດຈັບເວລາຈິງອື່ນໆເຊັ່ນ YOLO-MS ແລະ RT-DETR ໃນແງ່ຂອງ ປະສິດທິພາບພາລາມິເຕີແລະ FLOPs. ມັນຕ້ອງການຊັບພະຍາກອນໜ້ອຍກວ່າເພື່ອບັນລຸລະດັບການປະຕິບັດທີ່ກຳນົດໄວ້.
- ຮຸ່ນ YOLOv9 ຂະຫນາດນ້ອຍກວ່າແມ່ນຍັງຕີຕົວແບບກ່ອນການຝຶກອົບຮົມຂະຫນາດໃຫຍ່ເຊັ່ນ RT-DETR-X. ເຖິງວ່າຈະມີການນໍາໃຊ້ 36% ຕົວກໍານົດການຫນ້ອຍ, YOLOv9-E ບັນລຸໄດ້ ດີກວ່າ 55.6% AP ຜ່ານສະຖາປັດຕະຍະກໍາທີ່ມີປະສິດທິພາບຫຼາຍຂຶ້ນ.
ດັ່ງນັ້ນ, ໂດຍການແກ້ໄຂປະສິດທິພາບໃນລະດັບສະຖາປັດຕະຍະກໍາແລະການຝຶກອົບຮົມ, YOLOv9 ກໍານົດຄວາມທັນສະໄຫມໃຫມ່ສໍາລັບການເພີ່ມປະສິດທິພາບສູງສຸດພາຍໃນຊັບພະຍາກອນຈໍາກັດ.
GELAN – ສະຖາປັດຕະຍະກຳທີ່ເໝາະສົມສຳລັບປະສິດທິພາບ
YOLOv9 ແນະນຳສະຖາປັດຕະຍະກຳໃໝ່ທີ່ເອີ້ນວ່າ General Efficient Layer Aggregation Network (GELAN) ເຊິ່ງເຮັດໃຫ້ຄວາມຖືກຕ້ອງສູງສຸດພາຍໃນງົບປະມານພາລາມິເຕີຂັ້ນຕ່ຳ. ມັນສ້າງຢູ່ເທິງສຸດຂອງແບບ YOLO ກ່ອນຫນ້ານີ້ແຕ່ເພີ່ມປະສິດທິພາບອົງປະກອບຕ່າງໆໂດຍສະເພາະສໍາລັບປະສິດທິພາບ.
ຄວາມເປັນມາຂອງ CSPNet ແລະ ELAN
ຮຸ່ນ YOLO ທີ່ຜ່ານມານັບຕັ້ງແຕ່ v5 ໄດ້ນໍາໃຊ້ກະດູກສັນຫຼັງໂດຍອີງໃສ່ເຄືອຂ່າຍສ່ວນຂ້າມຂັ້ນຕອນ (CSPNet) ສໍາລັບການປັບປຸງປະສິດທິພາບ. CSPNet ອະນຸຍາດໃຫ້ແຜນທີ່ຄຸນສົມບັດທີ່ຈະໄດ້ຮັບການສະສົມໃນທົ່ວສາຂາເຄືອຂ່າຍຂະຫນານຂະຫນານໃນຂະນະທີ່ເພີ່ມ overhead ຫນ້ອຍ:
ນີ້ແມ່ນປະສິດທິພາບຫຼາຍກ່ວາພຽງແຕ່ stacking layers serially, ເຊິ່ງມັກຈະເຮັດໃຫ້ການຄິດໄລ່ຊ້ໍາຊ້ອນແລະການ over-parameterization.
YOLOv7 ໄດ້ອັບເກຣດ CSPNet ເປັນເຄືອຂ່າຍການລວມຊັ້ນທີ່ມີປະສິດທິພາບ (ELAN), ເຊິ່ງເຮັດໃຫ້ໂຄງສ້າງຂອງບລ໋ອກງ່າຍຂຶ້ນ:
ELAN ຖອນການເຊື່ອມຕໍ່ທາງລັດລະຫວ່າງຊັ້ນຕ່າງໆໃນເງື່ອນໄຂຂອງໂຫນດການລວບລວມຢູ່ທີ່ຜົນຜະລິດ. ນີ້ປັບປຸງຕົວກໍານົດການເພີ່ມເຕີມແລະປະສິດທິພາບ FLOPs.
ການສ້າງ ELAN ທົ່ວໄປເພື່ອປະສິດທິພາບທີ່ຍືດຫຍຸ່ນ
ຜູ້ຂຽນໄດ້ໂດຍທົ່ວໄປ ELAN ຕື່ມອີກເພື່ອສ້າງ GELAN, ກະດູກສັນຫຼັງທີ່ໃຊ້ໃນ YOLOv9. GELAN ໄດ້ເຮັດການດັດແກ້ທີ່ສໍາຄັນເພື່ອປັບປຸງຄວາມຍືດຫຍຸ່ນແລະປະສິດທິພາບ:
- ຕັນການຄິດໄລ່ທີ່ປ່ຽນແປງໄດ້ - ELAN ທີ່ຜ່ານມາໄດ້ແກ້ໄຂຊັ້ນ convolutional. GELAN ອະນຸຍາດໃຫ້ປ່ຽນຕົວບລັອກຄອມພິວເຕີເຊັ່ນ ResNets ຫຼື CSPNet, ໃຫ້ທາງເລືອກສະຖາປັດຕະຍະກໍາຫຼາຍຂຶ້ນ.
- ການກໍານົດຕົວກໍານົດຄວາມເລິກທີ່ສະຫລາດ - ຄວາມເລິກຂອງບລັອກແຍກຕ່າງຫາກສໍາລັບສາຂາຕົ້ນຕໍທຽບກັບສາຂາການລວບລວມເຮັດໃຫ້ການນໍາໃຊ້ຊັບພະຍາກອນທີ່ປັບລະອຽດງ່າຍ.
- ການປະຕິບັດທີ່ຫມັ້ນຄົງໃນທົ່ວການຕັ້ງຄ່າ - GELAN ຮັກສາຄວາມຖືກຕ້ອງດ້ວຍປະເພດບລັອກແລະຄວາມເລິກທີ່ແຕກຕ່າງກັນ, ຊ່ວຍໃຫ້ການປັບຂະຫນາດທີ່ມີຄວາມຍືດຫຍຸ່ນ.
ການປ່ຽນແປງເຫຼົ່ານີ້ເຮັດໃຫ້ GELAN ເປັນກະດູກສັນຫຼັງທີ່ເຂັ້ມແຂງແຕ່ສາມາດຕັ້ງຄ່າໄດ້ສໍາລັບການເພີ່ມປະສິດທິພາບສູງສຸດ:
ໃນການທົດລອງ, ແບບຈໍາລອງ GELAN ປະຕິບັດໄດ້ດີກວ່າສະຖາປັດຕະຍະກໍາ YOLO ກ່ອນຫນ້ານີ້ໃນຄວາມຖືກຕ້ອງຕໍ່ພາລາມິເຕີ:
- GELAN-Small ທີ່ມີພາລາມິເຕີ 7M ຕີພາຣາມິເຕີ 7M ຂອງ YOLOv11-Nano
- GELAN-Medium ຈັບຄູ່ແບບຂະໜາດກາງ YOLOv7 ທີ່ໜັກກວ່າ
ດັ່ງນັ້ນ GELAN ສະຫນອງກະດູກສັນຫຼັງທີ່ດີທີ່ສຸດເພື່ອຂະຫນາດ YOLO ໃນທົ່ວເປົ້າຫມາຍປະສິດທິພາບທີ່ແຕກຕ່າງກັນ. ຕໍ່ໄປພວກເຮົາຈະເບິ່ງວິທີການ PGI ຊ່ວຍໃຫ້ພວກເຂົາຝຶກອົບຮົມດີຂຶ້ນ.
PGI - ການປັບປຸງການຝຶກອົບຮົມສໍາລັບຂະຫນາດຕົວແບບທັງຫມົດ
ໃນຂະນະທີ່ການເລືອກສະຖາປັດຕະຍະກໍາມີຜົນກະທົບປະສິດທິພາບໃນເວລາທີ່ inference, ຂະບວນການຝຶກອົບຮົມຍັງມີຜົນກະທົບການນໍາໃຊ້ຊັບພະຍາກອນຕົວແບບ. YOLOv9 ໃຊ້ເຕັກນິກໃໝ່ທີ່ເອີ້ນວ່າ Programmable Gradient Information (PGI) ເພື່ອປັບປຸງການຝຶກອົບຮົມໃນທົ່ວຂະໜາດຕົວແບບ ແລະຄວາມສັບສົນ.
ບັນຫາຂອງ Gradients ທີ່ບໍ່ຫນ້າເຊື່ອຖື
ໃນລະຫວ່າງການຝຶກອົບຮົມ, ຟັງຊັນການສູນເສຍຈະປຽບທຽບຜົນໄດ້ຮັບຂອງຕົວແບບກັບປ້າຍຊື່ຄວາມຈິງ ແລະຄຳນວນການເລື່ອນຂັ້ນຄວາມຜິດພາດເພື່ອປັບປຸງພາລາມິເຕີ. gradients ບໍ່ມີສຽງ ຫຼືເຮັດໃຫ້ເຂົ້າໃຈຜິດ ນໍາໄປສູ່ການລວມກັນທີ່ບໍ່ດີແລະປະສິດທິພາບ.
ເຄືອຂ່າຍເລິກຫຼາຍ exacerbates ນີ້ໂດຍຜ່ານການ ຂໍ້ມູນຄໍຂອດ – gradients ຈາກຊັ້ນເລິກຖືກເສຍຫາຍໂດຍສູນເສຍຫຼືການບີບອັດສັນຍານ.
ການຊີ້ນຳຢ່າງເລິກເຊິ່ງ ຊ່ວຍໂດຍການແນະນໍາສາຂາຂ້າງຄຽງທີ່ມີການສູນເສຍເພື່ອໃຫ້ gradients ສະອາດ. ແຕ່ມັນເລື້ອຍໆ ແບ່ງອອກສໍາລັບຕົວແບບຂະຫນາດນ້ອຍກວ່າ, ເຮັດໃຫ້ເກີດການແຊກແຊງແລະຄວາມແຕກຕ່າງກັນລະຫວ່າງສາຂາທີ່ແຕກຕ່າງກັນ.
ດັ່ງນັ້ນພວກເຮົາຕ້ອງການວິທີການສະຫນອງ gradients ທີ່ເຊື່ອຖືໄດ້ທີ່ເຮັດວຽກໃນທົ່ວຂະຫນາດຂອງຕົວແບບ, ໂດຍສະເພາະຂະຫນາດນ້ອຍກວ່າ.
ແນະນຳຂໍ້ມູນ Gradient Programmable (PGI)
ເພື່ອແກ້ໄຂ gradients ທີ່ບໍ່ຫນ້າເຊື່ອຖື, YOLOv9 ສະເຫນີຂໍ້ມູນ Gradient Programmable (PGI). PGI ມີສອງອົງປະກອບຕົ້ນຕໍທີ່ອອກແບບມາເພື່ອປັບປຸງຄຸນນະພາບ gradient:
1. Auxiliary reversible ສາຂາ
ສາຂາເພີ່ມເຕີມໃຫ້ ການເຊື່ອມຕໍ່ປີ້ນກັບກັນ ກັບໄປທີ່ການປ້ອນຂໍ້ມູນໂດຍໃຊ້ບລັອກເຊັ່ນ RevCols. ນີ້ຮັກສາ gradients ສະອາດເພື່ອຫຼີກເວັ້ນການເປັນຂວດຂໍ້ມູນ.
2. ການເຊື່ອມໂຍງ gradient ຫຼາຍລະດັບ
A fusion block ລວມ gradients ຈາກສາຂາທັງຫມົດກ່ອນທີ່ຈະໃຫ້ອາຫານກັບຄືນໄປບ່ອນຮູບແບບຕົ້ນຕໍ. ນີ້ປ້ອງກັນບໍ່ໃຫ້ຄວາມແຕກຕ່າງກັນໃນທົ່ວສາຂາ.
ໂດຍການສ້າງ gradients ທີ່ເຊື່ອຖືໄດ້ຫຼາຍຂຶ້ນ, PGI ປັບປຸງການເຂົ້າກັນຂອງການຝຶກອົບຮົມ ແລະປະສິດທິພາບໃນທົ່ວຂະຫນາດຕົວແບບທັງຫມົດ:
- ຮຸ່ນທີ່ມີນ້ໍາຫນັກເບົາ ໄດ້ຮັບຜົນປະໂຫຍດຈາກການເບິ່ງແຍງຢ່າງເລິກເຊິ່ງທີ່ພວກເຂົາບໍ່ສາມາດໃຊ້ກ່ອນ
- ຮູບແບບຂະຫນາດໃຫຍ່ ໄດ້ຮັບການ gradients ສະອາດເຮັດໃຫ້ທົ່ວໄປທີ່ດີກວ່າ
ການທົດລອງໄດ້ສະແດງໃຫ້ເຫັນວ່າ PGI ໄດ້ເພີ່ມຄວາມຖືກຕ້ອງສໍາລັບການຕັ້ງຄ່າ YOLOv9 ຂະຫນາດນ້ອຍແລະຂະຫນາດໃຫຍ່ໃນໄລຍະພື້ນຖານ GELAN:
- +0.1-0.4% AP ສໍາລັບ YOLOv9-Small
- +0.5-0.6% AP ສໍາລັບຮຸ່ນ YOLOv9 ທີ່ໃຫຍ່ກວ່າ
ດັ່ງນັ້ນ gradients ທີ່ສາມາດວາງແຜນໄດ້ຂອງ PGI ເຮັດໃຫ້ຕົວແບບໃຫຍ່ແລະຂະຫນາດນ້ອຍເພື່ອຝຶກອົບຮົມປະສິດທິພາບຫຼາຍ.
YOLOv9 ກໍານົດຄວາມຖືກຕ້ອງທີ່ທັນສະໄຫມຂອງສິນລະປະ
ໂດຍການລວມເອົາການປັບປຸງສະຖາປັດຕະຍະກໍາຈາກ GELAN ແລະການປັບປຸງການຝຶກອົບຮົມຈາກ PGI, YOLOv9 ບັນລຸຜົນໄດ້ຮັບທີ່ທັນສະໄຫມສໍາລັບການຊອກຄົ້ນຫາວັດຖຸໃນເວລາທີ່ແທ້ຈິງ.
ການທົດລອງກ່ຽວກັບຊຸດຂໍ້ມູນ COCO ສະແດງໃຫ້ເຫັນວ່າ YOLOv9 ລື່ນກາຍ YOLO ລຸ້ນກ່ອນ, ເຊັ່ນດຽວກັນກັບເຄື່ອງກວດຈັບເວລາຈິງອື່ນໆເຊັ່ນ YOLO-MS, ໃນຄວາມຖືກຕ້ອງ ແລະປະສິດທິພາບ:
ບາງຈຸດເດັ່ນຫຼັກ:
- YOLOv9-Small ເກີນ YOLO-MS-Small ດ້ວຍພາຣາມິເຕີ ແລະການຄິດໄລ່ໜ້ອຍລົງ 10%
- YOLOv9-Medium ກົງກັບແບບ YOLOv7 ທີ່ໜັກກວ່າໂດຍໃຊ້ຊັບພະຍາກອນໜ້ອຍກວ່າເຄິ່ງໜຶ່ງ
- YOLOv9-Large ເຮັດວຽກໄດ້ດີກວ່າ YOLOv8-X ໂດຍມີພາຣາມິເຕີໜ້ອຍລົງ 15% ແລະ FLOP ໜ້ອຍລົງ 25%
ຂໍ້ສັງເກດ, ຮູບແບບ YOLOv9 ຂະຫນາດນ້ອຍກວ່າແມ່ນເກີນກວ່າແບບທີ່ຫນັກກວ່າຈາກເຄື່ອງກວດຈັບອື່ນໆທີ່ໃຊ້ການຝຶກອົບຮົມກ່ອນເຊັ່ນ RT-DETR-X. ເຖິງວ່າຈະມີຕົວກໍານົດການຫນ້ອຍລົງ 4x, YOLOv9-E ດີກວ່າ RT-DETR-X ໃນຄວາມຖືກຕ້ອງ.
ຜົນໄດ້ຮັບເຫຼົ່ານີ້ສະແດງໃຫ້ເຫັນເຖິງປະສິດທິພາບທີ່ດີກວ່າຂອງ YOLOv9. ການປັບປຸງເຮັດໃຫ້ສາມາດກວດຫາວັດຖຸທີ່ມີຄວາມຖືກຕ້ອງສູງໃນກໍລະນີການນໍາໃຊ້ຕົວຈິງຫຼາຍຂຶ້ນ.
Key Takeaways ກ່ຽວກັບການອັບເກຣດ YOLOv9
ຂໍໃຫ້ສະຫຼຸບການຍົກລະດັບ ແລະນະວັດຕະກໍາທີ່ສຳຄັນບາງຢ່າງທີ່ເປີດໃຫ້ປະສິດທິພາບອັນໃໝ່ຂອງ YOLOv9:
- GELAN ສະຖາປັດຕະຍະກໍາທີ່ດີທີ່ສຸດ - ປັບປຸງປະສິດທິພາບພາລາມິເຕີໂດຍຜ່ານຕັນການລວບລວມທີ່ມີຄວາມຍືດຫຍຸ່ນ. ອະນຸຍາດໃຫ້ຂະຫຍາຍຮູບແບບສໍາລັບເປົ້າຫມາຍທີ່ແຕກຕ່າງກັນ.
- ຂໍ້ມູນ gradient ທີ່ສາມາດວາງແຜນໄດ້ - ສະຫນອງການ gradients ທີ່ເຊື່ອຖືໄດ້ໂດຍຜ່ານການເຊື່ອມຕໍ່ປີ້ນກັບກັນແລະ fusion. ປັບປຸງການຝຶກອົບຮົມໃນທົ່ວຂະຫນາດຕົວແບບ.
- ຄວາມຖືກຕ້ອງຫຼາຍຂຶ້ນກັບຊັບພະຍາກອນຫນ້ອຍ - ຫຼຸດຜ່ອນພາລາມິເຕີແລະການຄິດໄລ່ 10-15% ຫຼາຍກວ່າ YOLOv8 ດ້ວຍຄວາມຖືກຕ້ອງທີ່ດີກວ່າ. ເປີດໃຊ້ການອະນຸມານທີ່ມີປະສິດທິພາບກວ່າ.
- ຜົນໄດ້ຮັບທີ່ດີເລີດໃນທົ່ວຂະຫນາດຂອງຕົວແບບ - ກຳນົດຄ່າຕົວແບບໃໝ່ທີ່ມີນ້ຳໜັກເບົາ, ຂະໜາດກາງ, ແລະຂະໜາດໃຫຍ່. ປະຕິບັດໄດ້ດີກວ່າແບບຈໍາລອງທາງສ່ວນຫນ້າຂອງການຝຶກອົບຮົມຢ່າງຫຼວງຫຼາຍ.
- ຂະຫຍາຍການນຳໃຊ້ - ປະສິດທິພາບສູງເຮັດໃຫ້ກໍລະນີການນຳໃຊ້ທີ່ສາມາດໃຊ້ໄດ້, ເຊັ່ນ: ການກວດຫາແບບສົດໆໃນອຸປະກອນຂອບ.
ໂດຍການແກ້ໄຂຄວາມຖືກຕ້ອງ, ປະສິດທິພາບ, ແລະການນໍາໃຊ້ໂດຍກົງ, YOLOv9 ຍ້າຍການຊອກຄົ້ນຫາວັດຖຸໄປຂ້າງຫນ້າເພື່ອຕອບສະຫນອງຄວາມຕ້ອງການຂອງໂລກທີ່ແທ້ຈິງທີ່ຫຼາກຫຼາຍ. ການຍົກລະດັບໃຫ້ພື້ນຖານທີ່ເຂັ້ມແຂງສໍາລັບການປະດິດສ້າງໃນອະນາຄົດໃນຄວາມສາມາດວິໄສທັດຄອມພິວເຕີທີ່ສໍາຄັນນີ້.