0. Abstract
CNN์ ์ ํ๋๋ฅผ ํฅ์์ํค๋ ๋ค์ํ ๊ธฐ๋ฅ์ด ๋ง์ด ์กด์ฌํฉ๋๋ค. ์ด๋ฌํ ๊ธฐ๋ฅ๋ค์ ์กฐํฉ์ ๋๊ท๋ชจ ๋ฐ์ดํฐ์ ์์ ์ค์ ๋ก ํ ์คํธํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ด๋ก ์ ์ผ๋ก ์ ๋นํํ๋ ๊ฒ์ด ํ์ํฉ๋๋ค. ์ผ๋ถ ๊ธฐ๋ฅ์ ํน์ ๋ชจ๋ธ์ด๋ ๋ฌธ์ ์๋ง ์ ์ฉ๋๊ฑฐ๋ ์๊ท๋ชจ ๋ฐ์ดํฐ์ ์๋ง ์ ์ฉ๋ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋ฐฐ์น ์ ๊ทํ(batch-normalization)์ ์์ฐจ ์ฐ๊ฒฐ(residual-connections)๊ณผ ๊ฐ์ ๊ธฐ๋ฅ์ ๋๋ถ๋ถ์ ๋ชจ๋ธ, ์์ ๋ฐ ๋ฐ์ดํฐ์ ์ ์ ์ฉํ ์ ์์ต๋๋ค. ์ ํฌ๋ ๊ฐ์ค ์์ฐจ ์ฐ๊ฒฐ(Weighted-Residual-Connections, WRC), ํฌ๋ก์ค ์คํ ์ด์ง ๋ถ๋ถ ์ฐ๊ฒฐ(Cross-Stage-Partial-connections, CSP), ํฌ๋ก์ค ๋ฏธ๋ ๋ฐฐ์น ์ ๊ทํ(Cross mini-Batch Normalization, CmBN), ์๊ฐ ์ ๋์ ํ๋ จ(Self-adversarial-training, SAT) ๋ฐ Mish ํ์ฑํ(Mish-activation)์ ๊ฐ์ ๋ฒ์ฉ์ ์ธ ๊ธฐ๋ฅ๋ค์ด ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ์ ํฌ๋ WRC, CSP, CmBN, SAT, Mish ํ์ฑํ, Mosaic ๋ฐ์ดํฐ ์ฆ๊ฐ(Mosaic data augmentation), CmBN, DropBlock ์ ๊ทํ(DropBlock regularization) ๋ฐ CIoU ์์ค(CIoU loss)๊ณผ ๊ฐ์ ์๋ก์ด ๊ธฐ๋ฅ๋ค์ ์ฌ์ฉํ๊ณ ์ด๋ฅผ ์กฐํฉํ์ฌ ์ต์ฒจ๋จ ๊ฒฐ๊ณผ๋ฅผ ๋ฌ์ฑํ์ต๋๋ค. MS COCO ๋ฐ์ดํฐ์ ์์ ์ค์๊ฐ ์๋์ธ ์ฝ 65 FPS์์ 43.5% AP(65.7% AP50)์ ๊ฒฐ๊ณผ๋ฅผ ์ป์์ต๋๋ค. ์์ค ์ฝ๋๋ ์๋์์ ํ์ธํ์ค ์ ์์ต๋๋ค.
1. Introduction
Figure 1: ์ ์๋ YOLOv4์ ๋ค๋ฅธ ์ต์ฒจ๋จ ๊ฐ์ฒด ํ์ง๊ธฐ์ ๋น๊ต. YOLOv4๋ ๋น์ทํ ์ฑ๋ฅ์ ๊ฐ์ง EfficientDet๋ณด๋ค 2๋ฐฐ ๋ ๋น ๋ฅด๊ฒ ์คํ๋ฉ๋๋ค. YOLOv3์ AP์ FPS๋ฅผ ๊ฐ๊ฐ 10%์ 12% ํฅ์์ํต๋๋ค.
์๋ก ๋๋ถ๋ถ์ CNN ๊ธฐ๋ฐ ๊ฐ์ฒด ํ์ง๊ธฐ๋ ์ฃผ๋ก ์ถ์ฒ ์์คํ ์๋ง ์ ์ฉ๋ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๋์ ๋น๋์ค ์นด๋ฉ๋ผ๋ฅผ ํตํด ๋ฌด๋ฃ ์ฃผ์ฐจ ๊ณต๊ฐ์ ํ์ํ๋ ๊ฒฝ์ฐ, ๋๋ฆฌ๊ณ ์ ํํ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ฉฐ, ์๋์ฐจ ์ถฉ๋ ๊ฒฝ๊ณ ๋ ๋น ๋ฅด์ง๋ง ์ ํํ์ง ์์ ๋ชจ๋ธ๊ณผ ๊ด๋ จ์ด ์์ต๋๋ค. ์ค์๊ฐ ๊ฐ์ฒด ํ์ง๊ธฐ์ ์ ํ๋๋ฅผ ํฅ์์ํด์ผ๋ก์จ, ํํธ ์์ฑ ์ถ์ฒ ์์คํ ๋ฟ๋ง ์๋๋ผ ๋ ๋ฆฝ์ ์ธ ํ๋ก์ธ์ค ๊ด๋ฆฌ์ ์ธ๊ฐ์ ์ ๋ ฅ์ ์ค์ผ ์ ์๋ ์ฉ๋๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ธฐ์กด์ ๊ทธ๋ํฝ ์ฒ๋ฆฌ ์ฅ์น(GPU)์์ ์ค์๊ฐ ๊ฐ์ฒด ํ์ง๊ธฐ๋ฅผ ์คํํจ์ผ๋ก์จ, ์ ๋ ดํ ๊ฐ๊ฒฉ์ ๋๊ท๋ชจ ์ฌ์ฉ์ด ๊ฐ๋ฅํด์ง๋๋ค. ๊ฐ์ฅ ์ ํํ ์ต์ ์ ๊ฒฝ๋ง์ ์ค์๊ฐ์ผ๋ก ์๋ํ์ง ์์ผ๋ฉฐ, ๋๊ท๋ชจ ๋ฏธ๋๋ฐฐ์น ํฌ๊ธฐ๋ก ํ์ต์ ์ํด ๋ง์ ์์ GPU๊ฐ ํ์ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๊ธฐ์กด GPU์์ ์ค์๊ฐ์ผ๋ก ์๋ํ๋ CNN์ ์์ฑํ๊ณ , ํ์ต์๋ ๋จ ํ๋์ ๊ธฐ์กด GPU๋ง ํ์ํ ๋ฐฉ์์ผ๋ก ์ด๋ฌํ ๋ฌธ์ ์ ๋์ฒํฉ๋๋ค.
์ด ์์ ์ ์ฃผ์ ๋ชฉํ๋ ์์ฐ ์์คํ ์์ ๊ฐ์ฒด ํ์ง๊ธฐ์ ๋น ๋ฅธ ์ด์ ์๋์ ๋ณ๋ ฌ ๊ณ์ฐ์ ์ํ ์ต์ ํ์ ๋๋ค. ์ด๋ก ์ ์งํ์ธ ๊ณ์ฐ๋ (BFLOP)๋ณด๋ค๋ ๋ฎ์ ๊ณ์ฐ๋์ ๊ฐ๋ ๊ฒ๋ณด๋ค๋, ์ค๊ณ๋ ๊ฐ์ฒด ํ์ง๊ธฐ๊ฐ ์ฝ๊ฒ ํ๋ จ ๋ฐ ์ฌ์ฉ๋ ์ ์๋ ๊ฒ์ ํฌ๋งํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ผ๋ฐ์ ์ธ GPU๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ จ ๋ฐ ํ ์คํธํ๋ ์ฌ์ฉ์๋ Figure 1์ ๋์ ์๋ YOLOv4 ๊ฒฐ๊ณผ์ ๊ฐ์ด ์ค์๊ฐ์ผ๋ก ๊ณ ํ์ง์ด๊ณ ์ค๋๋ ฅ์๋ ๊ฐ์ฒด ํ์ง ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ์ ๊ธฐ์ฌ๋ ๋ค์๊ณผ ๊ฐ์ด ์์ฝ๋ฉ๋๋ค:
- ์ฐ๋ฆฌ๋ ํจ์จ์ ์ด๊ณ ๊ฐ๋ ฅํ ๊ฐ์ฒด ํ์ง ๋ชจ๋ธ์ ๊ฐ๋ฐํ์ต๋๋ค. ์ด ๋ชจ๋ธ์ ๋๊ตฌ๋ 1080 Ti ๋๋ 2080 Ti GPU๋ฅผ ์ฌ์ฉํ์ฌ ๋น ๋ฅด๊ณ ์ ํํ ๊ฐ์ฒด ํ์ง๊ธฐ๋ฅผ ํ๋ จํ ์ ์๊ฒ ํฉ๋๋ค.
- ์ฐ๋ฆฌ๋ ๊ฐ์ฒด ํ์ง๊ธฐ ํ๋ จ ์ค ์ต์ Bag-of-Freebies์ Bag-of-Specials ๊ธฐ๋ฒ์ ์ํฅ์ ํ์ธํ์ต๋๋ค.
- ์ฐ๋ฆฌ๋ ์ต์ ๊ธฐ๋ฒ๋ค์ ์์ ํ์ฌ ๋จ์ผ GPU ํ๋ จ์ ๋ ํจ์จ์ ์ด๊ณ ์ ํฉํ๋๋ก ๋ง๋ค์์ต๋๋ค. ์ด์๋ CBN [89], PAN [49], SAM [85] ๋ฑ์ด ํฌํจ๋ฉ๋๋ค.
2. Related Work
2.1 ๊ฐ์ฒด ํ์ง ๋ชจ๋ธ ํ๋์ ์ธ ๊ฐ์ฒด ํ์ง๊ธฐ๋ ์ผ๋ฐ์ ์ผ๋ก ๋ ๋ถ๋ถ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ํ๋๋ ImageNet์์ ์ฌ์ ํ๋ จ๋ ๋ฐฑ๋ณธ(backbone)์ด๊ณ , ๋ค๋ฅธ ํ๋๋ ๊ฐ์ฒด์ ํด๋์ค์ ๊ฒฝ๊ณ ์์๋ฅผ ์์ธกํ๋ ๋ฐ ์ฌ์ฉ๋๋ ํค๋(head)์ ๋๋ค. GPU ํ๋ซํผ์์ ์คํ๋๋ ๊ฐ์ฒด ํ์ง๊ธฐ์ ๋ฐฑ๋ณธ์ VGG [68], ResNet [26], ResNeXt [86], DenseNet [30] ๋ฑ์ด ๋ ์ ์์ต๋๋ค. CPU ํ๋ซํผ์์ ์คํ๋๋ ๊ฐ์ฒด ํ์ง๊ธฐ์ ๋ฐฑ๋ณธ์ SqueezeNet [31], MobileNet [28, 66, 27, 74], ShuffleNet [97, 53] ๋ฑ์ด ๋ ์ ์์ต๋๋ค.
ํค๋ ๋ถ๋ถ์ ์ผ๋ฐ์ ์ผ๋ก ํ ๋จ๊ณ(object detector)์ ๋ ๋จ๊ณ(object detector)๋ก ๋ถ๋ฅ๋ฉ๋๋ค. ๊ฐ์ฅ ๋ํ์ ์ธ ๋ ๋จ๊ณ ๊ฐ์ฒด ํ์ง๊ธฐ๋ R-CNN [19] ์๋ฆฌ์ฆ๋ก, fast R-CNN [18], faster R-CNN [64], R-FCN [9], Libra R-CNN [58] ๋ฑ์ด ์์ต๋๋ค. ๋ํ, ๋ ๋จ๊ณ ๊ฐ์ฒด ํ์ง๊ธฐ๋ฅผ ์ต์ปค ์๋ ๊ฐ์ฒด ํ์ง๊ธฐ๋ก ๋ง๋ค ์๋ ์์ผ๋ฉฐ, ์ด์๋ RepPoints [87] ๋ฑ์ด ์์ต๋๋ค. ํ ๋จ๊ณ ๊ฐ์ฒด ํ์ง๊ธฐ๋ก๋ YOLO [61, 62, 63], SSD [50], RetinaNet [45] ๋ฑ์ด ๊ฐ์ฅ ๋ํ์ ์ธ ๋ชจ๋ธ์ ๋๋ค. ์ต๊ทผ ๋ช ๋ ๊ฐ ์ต์ปค ์๋ ํ ๋จ๊ณ ๊ฐ์ฒด ํ์ง๊ธฐ๋ ๊ฐ๋ฐ๋์์ต๋๋ค. ์ด๋ฌํ ์ ํ์ ํ์ง๊ธฐ์๋ CenterNet [13], CornerNet [37, 38], FCOS [78] ๋ฑ์ด ์์ต๋๋ค.
์ต๊ทผ ๋ช ๋ ๊ฐ ๊ฐ๋ฐ๋ ๊ฐ์ฒด ํ์ง๊ธฐ๋ ๋ฐฑ๋ณธ๊ณผ ํค๋ ์ฌ์ด์ ๋ช ๊ฐ์ ๋ ์ด์ด๋ฅผ ์ฝ์ ํ๋ฉฐ, ์ด๋ฌํ ๋ ์ด์ด๋ ์ผ๋ฐ์ ์ผ๋ก ๋ค๋ฅธ ๋จ๊ณ์์ ํน์ง ๋งต์ ์์งํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ฅผ ๊ฐ์ฒด ํ์ง๊ธฐ์ "๋ฅ(neck)"์ด๋ผ๊ณ ํ ์ ์์ต๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ๋ฅ์ ์ฌ๋ฌ ๊ฐ์ Bottom-up ๊ฒฝ๋ก์ Top-down ๊ฒฝ๋ก๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์ด๋ฌํ ๋ฉ์ปค๋์ฆ์ ๊ฐ์ถ ๋คํธ์ํฌ์๋ Feature Pyramid Network (FPN) [44], Path Aggregation Network (PAN) [49], BiFPN [77], NAS-FPN [17] ๋ฑ์ด ์์ต๋๋ค.
์์์ ์ธ๊ธ๋ ๋ชจ๋ธ๋ค ์ธ์๋, ์ผ๋ถ ์ฐ๊ตฌ์๋ค์ ๊ฐ์ฒด ํ์ง๋ฅผ ์ํด ์๋ก์ด ๋ฐฑ๋ณธ(DetNet [43], DetNAS [7])์ด๋ ์ ์ฒด ๋ชจ๋ธ(SpineNet [12], HitDetector [20])์ ์ง์ ๊ตฌ์ถํ๋ ๋ฐ ์ค์ ์ ๋๊ณ ์์ต๋๋ค.
์์ฝํ์๋ฉด, ์ผ๋ฐ์ ์ธ ๊ฐ์ฒด ํ์ง๊ธฐ๋ ๋ค์๊ณผ ๊ฐ์ ์ฌ๋ฌ ๊ตฌ์ฑ ์์๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค:
- ๋ฐฑ๋ณธ (Backbone): ๋ฐฑ๋ณธ์ ๊ฐ์ฒด ํ์ง๊ธฐ์ ํน์ง ์ถ์ถ ๊ตฌ์ฑ ์์๋ก, ์ผ๋ฐ์ ์ผ๋ก ImageNet๊ณผ ๊ฐ์ ๋๊ท๋ชจ ์ด๋ฏธ์ง ๋ถ๋ฅ ์์ ์์ ์ฌ์ ํ๋ จ๋ฉ๋๋ค. VGG, ResNet, ResNeXt, DenseNet, SqueezeNet, MobileNet, ShuffleNet ๋ฑ์ ๊ธฐ์กด ๋ฐฑ๋ณธ ๋คํธ์ํฌ์ผ ์๋ ์๊ณ , DetNet์ด๋ SpineNet๊ณผ ๊ฐ์ด ์๋กญ๊ฒ ์ค๊ณ๋ ๋ฐฑ๋ณธ์ผ ์๋ ์์ต๋๋ค.
- ๋ฅ (Neck): ๋ฅ์ ๋ฐฑ๋ณธ๊ณผ ํค๋ ์ฌ์ด์ ์ฝ์ ๋๋ ์ค๊ฐ ๊ณ์ธต์ ๋งํฉ๋๋ค. ์ด ๊ณ์ธต์ ์๋ก ๋ค๋ฅธ ์ค์ผ์ผ์ด๋ ์ถ์ํ ์์ค์์ ์ถ์ถ๋ ํน์ง์ ๊ฒฐํฉํ์ฌ ํ์ง ์ฑ๋ฅ์ ํฅ์์ํต๋๋ค. FPN(Feature Pyramid Network), PAN(Path Aggregation Network), BiFPN, NAS-FPN๊ณผ ๊ฐ์ ๋ฅ ๊ตฌ์กฐ์ ์๊ฐ ์์ต๋๋ค.
- ํค๋ (Head): ํค๋๋ ๊ฐ์ฒด์ ํด๋์ค์ ๊ฒฝ๊ณ ์์๋ฅผ ์์ธกํ๋ ์ญํ ์ ํ๋ ๋ถ๋ถ์ ๋๋ค. ๋ฐฑ๋ณธ์์ ์ถ์ถํ ํน์ง์ ๋ฅ์์ ์ฒ๋ฆฌํ ํ, ํค๋์์ ๋ถ๋ฅ ๋ฐ ํ๊ท ์์ ์ ์ํํฉ๋๋ค. ๊ฐ์ฒด ํ์ง ํค๋์๋ ์ฃผ๋ก ์๋จ๊ณ(detector)์ ์ด๋จ๊ณ(detector)์ ๋ ๊ฐ์ง ์ ํ์ด ์์ต๋๋ค. ์๋จ๊ณ ํ์ง๊ธฐ(YOLO, SSD, RetinaNet)์ ์ด๋จ๊ณ ํ์ง๊ธฐ(R-CNN ์๋ฆฌ์ฆ)๊ฐ ๋ํ์ ์ธ ์์ ๋๋ค. ๊ฐ ์ ํ์ ์์ฒด์ ์ธ ํน์ง๊ณผ ์ฅ๋จ์ ์ ๊ฐ์ง๊ณ ์์ต๋๋ค.
2.2. Bag of freebies
์ ํ๋ ํฅ์์ ์ํ ์ถ๊ฐ ๋ชจ๋ ๊ธฐ๋ฒ ๋ฐ ํ์ฒ๋ฆฌ ๋ฐฉ
์์์ ์ธ๊ธํ ๋ฐ์ดํฐ ์ฆ๊ฐ ๋ฐฉ๋ฒ์ ๋ชจ๋ ํฝ์ ๋จ์์ ์กฐ์ ์ด๋ฉฐ, ์กฐ์ ๋ ์์ญ์์ ์๋์ ํฝ์ ์ ๋ณด๋ฅผ ๋ชจ๋ ๋ณด์กดํฉ๋๋ค.
๋ํ, ์ผ๋ถ ๋ฐ์ดํฐ ์ฆ๊ฐ์ ์ฐ๊ตฌํ๋ ์ฐ๊ตฌ์๋ค์ ๊ฐ์ฒด ๊ฐ๋ฆผ ํ์์ ๋ชจ์ฌํ๋ ๋ฐ ์ค์ ์ ๋๊ณ ์์ต๋๋ค. ๊ทธ๋ค์ ์ด๋ฏธ์ง ๋ถ๋ฅ์ ๊ฐ์ฒด ํ์ง์์ ์ข์ ๊ฒฐ๊ณผ๋ฅผ ์ป์์ต๋๋ค. ์๋ฅผ ๋ค์ด, random erase [100]์ CutOut [11]๋ ์ด๋ฏธ์ง์์ ์ฌ๊ฐํ ์์ญ์ ๋ฌด์์๋ก ์ ํํ๊ณ ๋ฌด์์ ๋๋ ๋ณด์ ๊ฐ์ผ๋ก ์ฑ์ฐ๋ ๊ฒ์ ๋๋ค. hide-and-seek [69]์ grid mask [6]์ ๊ฒฝ์ฐ, ์ด๋ฏธ์ง์์ ๋ฌด์์๋ก ๋๋ ๊ท ์ผํ๊ฒ ์ฌ๋ฌ ๊ฐ์ ์ฌ๊ฐํ ์์ญ์ ์ ํํ๊ณ ์ด๋ฅผ ๋ชจ๋ 0์ผ๋ก ๋์ฒดํฉ๋๋ค. ํน์ง ๋งต์ ์ ์ฌํ ๊ฐ๋ ์ ์ ์ฉํ๋ค๋ฉด DropOut [71], DropConnect [80], DropBlock [16] ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ๋ํ, ์ผ๋ถ ์ฐ๊ตฌ์๋ค์ ์ฌ๋ฌ ์ด๋ฏธ์ง๋ฅผ ํจ๊ป ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ ์ฆ๊ฐ์ ์ํํ๋ ๋ฐฉ๋ฒ์ ์ ์ํ์ต๋๋ค. ์๋ฅผ ๋ค์ด, MixUp [92]๋ ๋ ๊ฐ์ ์ด๋ฏธ์ง๋ฅผ ์๋ก ๋ค๋ฅธ ๊ณ์ ๋น์จ๋ก ๊ณฑํ๊ณ ๊ฒน์ณ์ ์กฐ์ ๋ ๋ ์ด๋ธ์ ์ฌ์ฉํฉ๋๋ค. CutMix [91]๋ ์๋ฆฐ ์ด๋ฏธ์ง๋ฅผ ๋ค๋ฅธ ์ด๋ฏธ์ง์ ์ง์ฌ๊ฐํ ์์ญ์ผ๋ก ๋ฎ์ด์์ฐ๊ณ ํผํฉ ์์ญ์ ํฌ๊ธฐ์ ๋ฐ๋ผ ๋ ์ด๋ธ์ ์กฐ์ ํฉ๋๋ค. ์์์ ์ธ๊ธํ ๋ฐฉ๋ฒ๋ค ์ธ์๋, ์คํ์ผ ์ ์ด GAN [15]๋ ๋ฐ์ดํฐ ์ฆ๊ฐ์ ์ฌ์ฉ๋๋ฉฐ, ์ด๋ฌํ ์ฌ์ฉ๋ฒ์ CNN์ด ํ์ตํ ์ง๊ฐ ํธํฅ์ ํจ๊ณผ์ ์ผ๋ก ์ค์ผ ์ ์์ต๋๋ค.
์์์ ์ ์๋ ๋ค์ํ ๋ฐฉ๋ฒ๊ณผ๋ ๋ค๋ฅด๊ฒ, ๋ค๋ฅธ ์ผ๋ถ bag of freebies ๋ฐฉ๋ฒ๋ค์ ๋ฐ์ดํฐ์ ์ ์๋ฏธ ๋ถํฌ์ ํธํฅ์ด ์์ ์ ์๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ํนํ๋์ด ์์ต๋๋ค. ์๋ฏธ ๋ถํฌ ํธํฅ ๋ฌธ์ ๋ฅผ ๋ค๋ฃฐ ๋ ๋งค์ฐ ์ค์ํ ๋ฌธ์ ๋ ์๋ก ๋ค๋ฅธ ํด๋์ค ๊ฐ์ ๋ฐ์ดํฐ ๋ถ๊ท ํ ๋ฌธ์ ๊ฐ ์๋๋ฐ, ์ด ๋ฌธ์ ๋ ์ผ๋ถ ์ฐ๊ตฌ์๋ค์ ์ํด ํด๊ฒฐ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด, two-stage ๊ฐ์ฒด ํ์ง๊ธฐ์์๋ ์ด๋ ค์ด ๋ถ์ ์์ ๋ง์ด๋ [72]์ด๋ ์จ๋ผ์ธ ์ด๋ ค์ด ์์ ๋ง์ด๋ [67]์ ํตํด ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ฌํ ์์ ๋ง์ด๋ ๋ฐฉ๋ฒ์ one-stage ๊ฐ์ฒด ํ์ง๊ธฐ์๋ ์ ์ฉํ ์ ์์ต๋๋ค. ์๋ํ๋ฉด ์ด๋ฌํ ํ์ง๊ธฐ๋ ๋ฐ์ง ์์ธก ์ํคํ ์ฒ์ ์ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ฐ๋ผ์ Lin et al. [45]์ ๋ค์ํ ํด๋์ค ๊ฐ์ ๋ฐ์ดํฐ ๋ถ๊ท ํ ๋ฌธ์ ๋ฅผ ๋ค๋ฃจ๊ธฐ ์ํด ํฌ์ปฌ ๋ก์ค๋ฅผ ์ ์ํ์ต๋๋ค. ๋ ๋ค๋ฅธ ๋งค์ฐ ์ค์ํ ๋ฌธ์ ๋ ์๋ก ๋ค๋ฅธ ์นดํ ๊ณ ๋ฆฌ ๊ฐ์ ์ฐ๊ด์ฑ ์ ๋๋ฅผ ์-ํซ ํ๋ ํํ์ผ๋ก ํํํ๋ ๊ฒ์ด ์ด๋ ต๋ค๋ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ํํ ์ฒด๊ณ๋ ๋ผ๋ฒจ๋ง์ ์คํํ ๋ ์์ฃผ ์ฌ์ฉ๋ฉ๋๋ค. [73]์์ ์ ์๋ ๋ผ๋ฒจ ์ค๋ฌด๋ฉ์ ํ๋ จ์ ์ํด ํ๋ ๋ผ๋ฒจ์ ์ํํธ ๋ผ๋ฒจ๋ก ๋ณํํ์ฌ ๋ชจ๋ธ์ ๋ ๊ฒฌ๊ณ ํ๊ฒ ๋ง๋๋ ๋ฐฉ๋ฒ์ ๋๋ค. ๋ ์ข์ ์ํํธ ๋ผ๋ฒจ์ ์ป๊ธฐ ์ํด, Islam et al. [33]์ ์ง์ ์ฆ๋ฅ์ ๊ฐ๋ ์ ๋์ ํ์ฌ ๋ผ๋ฒจ ๋ฆฌํ์ธ๋จผํธ ๋คํธ์ํฌ๋ฅผ ์ค๊ณํ์ต๋๋ค.
๋ง์ง๋ง์ผ๋ก ์๊ฐํ bag of freebies๋ ๋ฐ์ด๋ฉ ๋ฐ์ค(BBox) ํ๊ท์ ๋ชฉ์ ํจ์์ ๋๋ค. ์ ํต์ ์ธ ๊ฐ์ฒด ํ์ง๊ธฐ๋ ์ผ๋ฐ์ ์ผ๋ก BBox์ ์ค์ฌ์ ์ขํ์ ๋์ด, ๋๋น, ์ฆ {xcenter, ycenter, w, h} ๋๋ ์ข์๋จ ์ ๊ณผ ์ฐํ๋จ ์ , ์ฆ {xtop lef t, ytop lef t, xbottom right, ybottom right}์ ๋ํด ํ๊ท ์ ๊ณฑ ์ค์ฐจ(Mean Square Error, MSE)๋ฅผ ์ง์ ์ ์ผ๋ก ํ๊ท์ ์ฌ์ฉํฉ๋๋ค. ์ต์ปค ๊ธฐ๋ฐ ๋ฐฉ๋ฒ์ ๊ฒฝ์ฐ, ํด๋น ์คํ์ ์ ์ถ์ ํ๋ ๊ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด, {xcenter of f set, ycenter of f set, wof f set, hof f set} ๋ฐ {xtop lef t of f set, ytop lef t of f set, xbottom right of f set, ybottom right of f set}์ ๋๋ค. ๊ทธ๋ฌ๋ BBox์ ๊ฐ ์ ์ ์ขํ ๊ฐ์ ์ง์ ์ ์ผ๋ก ์ถ์ ํ๋ ๊ฒ์ ์ด๋ฌํ ์ ๋ค์ ๋ ๋ฆฝ ๋ณ์๋ก ์ทจ๊ธํ๋ ๊ฒ์ด๋ฉฐ, ์ฌ์ค ๊ฐ์ฒด ์์ฒด์ ์์ ์ฑ์ ๊ณ ๋ คํ์ง ์์ต๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ๋ ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด ์ต๊ทผ ์ผ๋ถ ์ฐ๊ตฌ์๋ค์ IoU loss [90]๋ฅผ ์ ์ํ์ต๋๋ค. ์ด๋ ์์ธก๋ BBox ์์ญ๊ณผ ์ค์ BBox ์์ญ์ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ๊ณ ๋ คํฉ๋๋ค. IoU loss ๊ณ์ฐ ๊ณผ์ ์์๋ ์์ธก๋ BBox์ ์ค์ ๊ฐ๊ณผ์ IoU๋ฅผ ์คํํ์ฌ BBox์ ๋ค ๊ฐ์ ์ขํ๋ฅผ ๊ณ์ฐํ ๋ค์ ์์ฑ๋ ๊ฒฐ๊ณผ๋ฅผ ์ฐ๊ฒฐํฉ๋๋ค. IoU๋ ์ค์ผ์ผ ๋ถ๋ณ ํํ์ด๋ฏ๋ก ์ ํต์ ์ธ ๋ฐฉ๋ฒ์ด {x, y, w, h}์ l1 ๋๋ l2 ์์ค์ ๊ณ์ฐํ ๋ ์ค์ผ์ผ๊ณผ ํจ๊ป ์์ค์ด ์ฆ๊ฐํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค. ์ต๊ทผ ์ผ๋ถ ์ฐ๊ตฌ์๋ค์ IoU loss๋ฅผ ๊ฐ์ ํ๊ธฐ ์ํด ๊ณ์ ๋ ธ๋ ฅํ๊ณ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, GIoU loss [65]๋ ์ปค๋ฒ๋ฆฌ์ง ์์ญ ์ธ์๋ ๊ฐ์ฒด์ ํํ์ ๋ฐฉํฅ์ ๊ณ ๋ คํฉ๋๋ค. ์์ธก๋ BBox์ ์ค์ BBox๋ฅผ ๋์์ ์ปค๋ฒํ ์ ์๋ ๊ฐ์ฅ ์์ ์์ญ์ BBox๋ฅผ ์ฐพ์ ์ด๋ฅผ ๋ถ๋ชจ๋ก ์ฌ์ฉํ์ฌ ๊ธฐ์กด์ IoU loss์์ ์ฌ์ฉ๋๋ ๋ถ๋ชจ๋ฅผ ๋์ฒดํฉ๋๋ค. DIoU loss [99]๋ ๊ฐ์ฒด์ ์ค์ฌ์ ๊น์ง์ ๊ฑฐ๋ฆฌ๋ฅผ ์ถ๊ฐ๋ก ๊ณ ๋ คํ๋ฉฐ, CIoU loss [99]๋ ๊ฒน์น๋ ์์ญ, ์ค์ฌ์ ์ฌ์ด์ ๊ฑฐ๋ฆฌ, ์ข ํก๋น๋ฅผ ๋์์ ๊ณ ๋ คํฉ๋๋ค. CIoU๋ BBox ํ๊ท ๋ฌธ์ ์์ ๋ ๋์ ์๋ ด ์๋์ ์ ํ๋๋ฅผ ๋ฌ์ฑํ ์ ์์ต๋๋ค.
2.3. ํน์ ๊ธฐ๋ฒ(Bag of specials)
์ ํ๋ ํฅ์์ ์ํ ์ถ๊ฐ ๋ชจ๋ ๊ธฐ๋ฒ ๋ฐ ํ์ฒ๋ฆฌ ๋ฐฉ๋ฒ
์ถ๋ก ๋น์ฉ์ ํฌ๊ฒ ์ฆ๊ฐ์ํค์ง ์์ผ๋ฉด์ ๊ฐ์ฒด ํ์ง์ ์ ํ๋๋ฅผ ํฌ๊ฒ ํฅ์์ํฌ ์ ์๋ ํ๋ฌ๊ทธ์ธ ๋ชจ๋ ๋ฐ ํ์ฒ๋ฆฌ ๋ฐฉ๋ฒ๋ค์ "ํน์ ๊ธฐ๋ฒ(Bag of specials)"์ด๋ผ๊ณ ๋ถ๋ฆ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ด๋ฌํ ํ๋ฌ๊ทธ์ธ ๋ชจ๋์ ๋ชจ๋ธ ๋ด์์ ํน์ ์์ฑ์ ๊ฐํํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ฉฐ, ์ด๋ ์์ฉ ์์ญ ํ์ฅ, ์ดํ ์ ๋ฉ์ปค๋์ฆ ๋์ , ํน์ง ํตํฉ ๋ฅ๋ ฅ ๊ฐํ ๋ฑ์ ํฌํจํ ์ ์์ต๋๋ค. ํ์ฒ๋ฆฌ๋ ๋ชจ๋ธ ์์ธก ๊ฒฐ๊ณผ๋ฅผ ํํฐ๋งํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
๋ฐ์ ์์ญ์ ํฅ์์ํฌ ์ ์๋ ์ผ๋ฐ์ ์ธ ๋ชจ๋๋ก๋ SPP (Spatial Pyramid Pooling) [25], ASPP (Atrous Spatial Pyramid Pooling) [5], ๊ทธ๋ฆฌ๊ณ RFB (Receptive Field Block) [47] ๋ฑ์ด ์์ต๋๋ค.
SPP ๋ชจ๋์ Spatial Pyramid Matching (SPM) [39]์์ ๊ธฐ์ํ ๊ฒ์ผ๋ก, SPM์ ์๋ ๋ฐฉ๋ฒ์ ํน์ฑ ๋งต์ d × d ํฌ๊ธฐ์ ๋์ผํ ๋ธ๋ก์ผ๋ก ๋๋ ๋ค์ ๊ณต๊ฐ ํผ๋ผ๋ฏธ๋๋ฅผ ํ์ฑํ๊ณ ๋จ์ด ๊ฐ๋ฐฉ ํน์ง์ ์ถ์ถํ๋ ๊ฒ์ด์์ต๋๋ค. SPP๋ SPM์ CNN์ ํตํฉํ๊ณ ๋จ์ด ๊ฐ๋ฐฉ ์ฐ์ฐ ๋์ ์ต๋ ํ๋ง ์ฐ์ฐ์ ์ฌ์ฉํฉ๋๋ค. He ๋ฑ์ด ์ ์ํ SPP ๋ชจ๋์ 1์ฐจ์ ํน์ฑ ๋ฒกํฐ๋ฅผ ์ถ๋ ฅํ๋ฏ๋ก Fully Convolutional Network (FCN)์ ์ ์ฉํ๊ธฐ ์ด๋ ต์ต๋๋ค. ๋ฐ๋ผ์ YOLOv3 [63]์ ์ค๊ณ์์ Redmon๊ณผ Farhadi๋ SPP ๋ชจ๋์ ํฅ์์์ผ ์ปค๋ ํฌ๊ธฐ k × k (์ฌ๊ธฐ์ k = {1, 5, 9, 13})์ ์คํธ๋ผ์ด๋ 1์ธ ์ต๋ ํ๋ง ์ถ๋ ฅ์ ์ฐ๊ฒฐ๋ก ๋ณ๊ฒฝํ์ต๋๋ค. ์ด ์ค๊ณ๋ฅผ ํตํด ์๋์ ์ผ๋ก ํฐ k × k ์ต๋ ํ๋ง์ด ๋ฐฑ๋ณธ ํน์ฑ์ ๋ฐ์ ์์ญ์ ํจ๊ณผ์ ์ผ๋ก ์ฆ๊ฐ์ํต๋๋ค. ๊ฐ์ ๋ SPP ๋ชจ๋์ ์ถ๊ฐํ ํ์๋ YOLOv3-608์์ MS COCO ๊ฐ์ฒด ๊ฐ์ง ์์ ์ AP50๊ฐ 0.5% ์ถ๊ฐ ๊ณ์ฐ ๋น์ฉ์ผ๋ก 2.7% ํฅ์๋์์ต๋๋ค.
ASPP ๋ชจ๋ [5]๊ณผ ๊ฐ์ ๋ SPP ๋ชจ๋ ๊ฐ์ ์๋ ์ฐจ์ด๋ ์ฃผ๋ก ์๋์ k × k ์ปค๋ ํฌ๊ธฐ, ์คํธ๋ผ์ด๋ 1์ ์ต๋ ํ๋ง์์ ์ฌ๋ฌ 3 × 3 ์ปค๋ ํฌ๊ธฐ, ํ์ฅ ๋น์จ k, ์คํธ๋ผ์ด๋ 1์ ํ์ฅ ์ปจ๋ณผ๋ฃจ์ ์ฐ์ฐ์ผ๋ก ์ด๋ฃจ์ด์ง๋๋ค. RFB ๋ชจ๋์ ASPP๋ณด๋ค ๋ ํฌ๊ด์ ์ธ ๊ณต๊ฐ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ์ป๊ธฐ ์ํด k × k ์ปค๋์ ์ฌ๋ฌ ํ์ฅ ์ปจ๋ณผ๋ฃจ์ ์ ์ฌ์ฉํฉ๋๋ค. RFB [47]์ MS COCO์์ SSD์ AP50๋ฅผ 5.7% ํฅ์์ํค๊ธฐ ์ํด ์ถ๊ฐ๋ก ์ถ๋ก ์๊ฐ์ด 7%๋ง ์์๋ฉ๋๋ค.
๊ฐ์ฒด ๊ฐ์ง์์ ์์ฃผ ์ฌ์ฉ๋๋ ์ดํ ์ ๋ชจ๋์ ์ฃผ๋ก ์ฑ๋๋ณ ์ดํ ์ (Channel-wise Attention)๊ณผ ์ ๋ณ ์ดํ ์ (Point-wise Attention)์ผ๋ก ๋๋ฉ๋๋ค. ์ด ๋ ์ดํ ์ ๋ชจ๋ธ์ ๋ํ์ ์ธ ์๋ Squeeze-and-Excitation (SE) [29]๊ณผ Spatial Attention Module (SAM) [85]์ ๋๋ค. SE ๋ชจ๋์ ImageNet ์ด๋ฏธ์ง ๋ถ๋ฅ ์์ ์์ ResNet50์ ์ฑ๋ฅ์ ํฅ์์ํฌ ์ ์์ผ๋ฉฐ ๊ณ์ฐ ๋น์ฉ์ 2%๋ง ์ฆ๊ฐ์ํด์ผ๋ก์จ 1% top-1 ์ ํ๋๋ฅผ ์ป์ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ GPU์์๋ ๋ณดํต ์ถ๋ก ์๊ฐ์ด ์ฝ 10% ์ฆ๊ฐํ๋ฏ๋ก ๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ์์ ์ฌ์ฉํ๊ธฐ์ ๋ ์ ํฉํฉ๋๋ค. ๋ฐ๋ฉด, SAM์ ์ถ๊ฐ์ ์ธ ๊ณ์ฐ ๋น์ฉ์ผ๋ก 0.1%๋ง ํ์ํ๋ฉฐ ImageNet ์ด๋ฏธ์ง ๋ถ๋ฅ ์์ ์์ ResNet50-SE์ 0.5% top-1 ์ ํ๋๋ฅผ ํฅ์์ํฌ ์ ์์ต๋๋ค. ๋ฌด์๋ณด๋ค๋, ์ด๋ GPU์์ ์ถ๋ก ์๋์ ์ ํ ์ํฅ์ ๋ฏธ์น์ง ์์ต๋๋ค.
ํน์ฑ ํตํฉ ์ธก๋ฉด์์, ์ด๊ธฐ์ ๋ฐฉ๋ฒ์ ์คํต ์ฐ๊ฒฐ(Skip Connection) [51]์ด๋ ํ์ดํผ-์ปฌ๋ผ(Hyper-column) [22]์ ์ฌ์ฉํ์ฌ ์ ์์ค์ ๋ฌผ๋ฆฌ์ ํน์ฑ์ ๊ณ ์์ค์ ์๋ฏธ๋ก ์ ํน์ฑ์ ํตํฉํ๋ ๊ฒ์ด์์ต๋๋ค. ๊ทธ๋ฌ๋ FPN๊ณผ ๊ฐ์ ๋ค์ค ์ค์ผ์ผ ์์ธก ๋ฐฉ๋ฒ์ด ์ธ๊ธฐ๋ฅผ ์ป์ผ๋ฉด์, ๋ค์ํ ํผ๋ผ๋ฏธ๋ ํน์ฑ์ ํตํฉํ๊ธฐ ์ํ ๊ฐ๋ฒผ์ด ๋ชจ๋๋ค์ด ์ ์๋์์ต๋๋ค. ์ด๋ฌํ ๋ชจ๋๋ค์๋ SFAM [98], ASFF [48], ๊ทธ๋ฆฌ๊ณ BiFPN [77] ๋ฑ์ด ํฌํจ๋ฉ๋๋ค. SFAM์ ์ฃผ์ ์์ด๋์ด๋ SE ๋ชจ๋์ ์ฌ์ฉํ์ฌ ๋ค์ค ์ค์ผ์ผ๋ก ์ฐ๊ฒฐ๋ ํน์ฑ ๋งต์ ์ฑ๋๋ณ ๋ ๋ฒจ ๊ฐ์ค์น๋ฅผ ์ ์ฉํ๋ ๊ฒ์ ๋๋ค. ASFF๋ ์ํํธ๋งฅ์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ ๋ณ ๋ ๋ฒจ ๊ฐ์ค์น๋ฅผ ์ ์ฉํ๊ณ ๋ค๋ฅธ ์ค์ผ์ผ์ ํน์ฑ ๋งต์ ๋ํฉ๋๋ค. BiFPN์ ๋ค์ค ์ ๋ ฅ ๊ฐ์ค ์์ฐจ ์ฐ๊ฒฐ์ ์ ์ํ์ฌ ์ค์ผ์ผ๋ณ ๋ ๋ฒจ ๊ฐ์ค์น๋ฅผ ์ ์ฉํ๊ณ ๋ค๋ฅธ ์ค์ผ์ผ์ ํน์ฑ ๋งต์ ๋ํฉ๋๋ค.
๋ฅ๋ฌ๋ ์ฐ๊ตฌ์์๋ ์ผ๋ถ ์ฐ๊ตฌ์๋ค์ด ์ข์ ํ์ฑํ ํจ์๋ฅผ ํ์ํ๋ ๋ฐ ์ค์ ์ ๋๊ณ ์์ต๋๋ค. ์ข์ ํ์ฑํ ํจ์๋ ๊ธฐ์ธ๊ธฐ๋ฅผ ํจ์จ์ ์ผ๋ก ์ ํํ ์ ์์ผ๋ฉด์๋ ์ถ๊ฐ์ ์ธ ๊ณ์ฐ ๋น์ฉ์ ์ต์ํํด์ผ ํฉ๋๋ค. 2010๋ ์ Nair์ Hinton [56]์ ๊ธฐ์กด์ tanh๋ sigmoid์ ๊ฐ์ ํ์ฑํ ํจ์์์ ์์ฃผ ๋ฐ์ํ๋ ๊ธฐ์ธ๊ธฐ ์์ค ๋ฌธ์ ๋ฅผ ์ค์ง์ ์ผ๋ก ํด๊ฒฐํ๊ธฐ ์ํด ReLU๋ฅผ ์ ์ํ์ต๋๋ค. ์ดํ LReLU [54], PReLU [24], ReLU6 [28], SELU [35], Swish [59], hard-Swish [27], Mish [55] ๋ฑ์ ํ์ฑํ ํจ์๋ค์ด ๊ธฐ์ธ๊ธฐ ์์ค ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ ์๋์์ต๋๋ค.
LReLU์ PReLU๋ ReLU์ ์ถ๋ ฅ์ด ์์์ผ ๋ ๊ธฐ์ธ๊ธฐ๊ฐ 0์ด ๋๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๊ณ ์๋์์ต๋๋ค. ReLU6์ hard-Swish๋ ์์ํ ๋คํธ์ํฌ๋ฅผ ์ํด ํน๋ณํ ์ค๊ณ๋ ํจ์์ ๋๋ค. SELU ํ์ฑํ ํจ์๋ ์ ๊ฒฝ๋ง์ ์๊ธฐ ์ ๊ทํ๋ฅผ ์ํด ์ ์๋์์ต๋๋ค. Swish์ Mish๋ ์ฐ์์ ์ผ๋ก ๋ฏธ๋ถ ๊ฐ๋ฅํ ํ์ฑํ ํจ์์ ๋๋ค.
๋ฅ๋ฌ๋ ๊ธฐ๋ฐ ๊ฐ์ฒด ๊ฒ์ถ์์ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๋ ํ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ NMS(๋น์ต๋ ์ต์ )์ ๋๋ค. NMS๋ ๋์ผํ ๊ฐ์ฒด๋ฅผ ์๋ชป ์์ธกํ๋ BBox๋ฅผ ๊ฑธ๋ฌ๋ด๊ณ ๋์ ์๋ต์ ๊ฐ์ง ํ๋ณด BBox๋ง์ ๋ณด์กดํ๋ ๋ฐ ์ฌ์ฉ๋ ์ ์์ต๋๋ค. NMS๊ฐ ๊ฐ์ ์ ์๋ํ๋ ๋ฐฉ๋ฒ์ ๋ชฉ์ ํจ์๋ฅผ ์ต์ ํํ๋ ๋ฐฉ๋ฒ๊ณผ ์ผ์นํฉ๋๋ค. NMS๊ฐ ์ฒ์ ์ ์ํ ๋ฐฉ๋ฒ์ ๋ฌธ๋งฅ ์ ๋ณด๋ฅผ ๊ณ ๋ คํ์ง ์์์ผ๋ฏ๋ก Girshick ๋ฑ [19]์ R-CNN์ ๋ถ๋ฅ ์ ๋ขฐ ์ ์๋ฅผ ์ฐธ์กฐ๋ก ์ถ๊ฐํ์ฌ ์ ๋ขฐ ์ ์์ ์์์ ๋ฐ๋ผ ๋์ ์ ์๋ถํฐ ๋ฎ์ ์ ์๊น์ง ํ์์ ์ธ NMS๋ฅผ ์ํํ์์ต๋๋ค. Soft NMS [1]์ ๊ฒฝ์ฐ, ๊ฐ์ฒด์ ๊ฐ๋ฆผ ํ์์ด IoU ์ ์๋ฅผ ์ฌ์ฉํ ํ์์ ์ธ NMS์์ ์ ๋ขฐ ์ ์์ ์ ํ๋ฅผ ์ด๋ํ ์ ์๋ ๋ฌธ์ ๋ฅผ ๊ณ ๋ คํฉ๋๋ค. DIoU NMS [99] ๊ฐ๋ฐ์๋ Soft NMS๋ฅผ ๊ธฐ๋ฐ์ผ๋ก BBox ์คํฌ๋ฆฌ๋ ๊ณผ์ ์ ์ค์ฌ์ ๊ฑฐ๋ฆฌ ์ ๋ณด๋ฅผ ์ถ๊ฐํ๋ ๋ฐฉ์์ผ๋ก ๊ฐ์ ํ์์ต๋๋ค. ์ธ๊ธํ ๋งํ ์ ์ ์์ ํ์ฒ๋ฆฌ ๋ฐฉ๋ฒ๋ค์ ์บก์ฒ๋ ์ด๋ฏธ์ง ํน์ฑ์ ์ง์ ์ฐธ์กฐํ์ง ์์ผ๋ฏ๋ก, ํ์์ ์ธ ์ต์ปค-ํ๋ฆฌ(Anchor-Free) ๋ฐฉ๋ฒ์ ๊ฐ๋ฐ์์๋ ํ์ฒ๋ฆฌ๊ฐ ๋ ์ด์ ํ์ํ์ง ์์ต๋๋ค.
3. Methodology
์ ๊ฒฝ๋ง์ ๊ธฐ๋ณธ ๋ชฉํ๋ ์์ฐ ์์คํ ์์์ ๋น ๋ฅธ ์ด์ ์๋์ ๋ณ๋ ฌ ๊ณ์ฐ์ ์ํ ์ต์ ํ์ด๋ฉฐ, ์ด๋ก ์ ์ธ ๊ณ์ฐ๋ (BFLOP)๋ณด๋ค๋ ์ค์ ์ ์ธ ์งํ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์ค์๊ฐ ์ ๊ฒฝ๋ง์ ๋ ๊ฐ์ง ์ต์ ์ ์ ์ํฉ๋๋ค: • GPU๋ฅผ ์ํด ํฉ์ฑ๊ณฑ ๋ ์ด์ด์์ ์์์ ๊ทธ๋ฃน (1-8)์ ์ฌ์ฉํฉ๋๋ค: CSPResNeXt50 / CSPDarknet53 • VPU๋ฅผ ์ํด ๊ทธ๋ฃนํ๋ ํฉ์ฑ๊ณฑ์ ์ฌ์ฉํ์ง๋ง Squeeze-and-Excitation (SE) ๋ธ๋ก์ ์ฌ์ฉํ์ง ์์ต๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก ๋ค์ ๋ชจ๋ธ๋ค์ด ์ด์ ํด๋นํฉ๋๋ค: EfficientNet-lite / MixNet [76] / GhostNet [21] / MobileNetV3
3.1. ์ํคํ ์ฒ ์ ํ ์ฐ๋ฆฌ์ ๋ชฉํ๋ ์ ๋ ฅ ์ ๊ฒฝ๋ง ํด์๋, ํฉ์ฑ๊ณฑ ๋ ์ด์ด ์, ๋งค๊ฐ ๋ณ์ ์ (filter size2 * filters * channel / groups) ๋ฐ ๋ ์ด์ด ์ถ๋ ฅ ์ (filters) ์ฌ์ด์์ ์ต์ ์ ๊ท ํ์ ์ฐพ๋ ๊ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ์ฐ๋ฆฌ์ ๋ค์ํ ์ฐ๊ตฌ ๊ฒฐ๊ณผ๋ ILSVRC2012 (ImageNet) ๋ฐ์ดํฐ์ [10]์์ ๊ฐ์ฒด ๋ถ๋ฅ ์ธก๋ฉด์์ CSPResNext50์ด CSPDarknet53๋ณด๋ค ํจ์ฌ ์ฐ์ํจ์ ๋ณด์ฌ์ค๋๋ค. ๊ทธ๋ฌ๋ ๋ฐ๋๋ก, MS COCO ๋ฐ์ดํฐ์ [46]์์ ๊ฐ์ฒด ๊ฐ์ง ์ธก๋ฉด์์๋ CSPDarknet53์ด CSPResNext50๋ณด๋ค ์ฐ์ํฉ๋๋ค.
๋ค์ ๋ชฉํ๋ ์์ฉ ์์ญ์ ํ์ฅํ๊ธฐ ์ํด ์ถ๊ฐ์ ์ธ ๋ธ๋ก์ ์ ํํ๊ณ , ๋ค๋ฅธ ๋ฐฑ๋ณธ ๋ ๋ฒจ์ ๋งค๊ฐ ๋ณ์ ์ง๊ณ๋ฅผ ์ํ ์ต์์ ๋ฐฉ๋ฒ์ ์ ํํ๋ ๊ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด FPN, PAN, ASFF, BiFPN ๋ฑ์ ๋๋ค.
๋ถ๋ฅ์ ์ต์ ์ธ ์ฐธ์กฐ ๋ชจ๋ธ์ด ํญ์ ๊ฐ์ง์ ์ต์ ์ด์ง๋ ์์ต๋๋ค. ๋ถ๋ฅ๊ธฐ์๋ ๋ฌ๋ฆฌ ๊ฐ์ง๊ธฐ๋ ๋ค์์ ํ์๋ก ํฉ๋๋ค: • ๋ ๋์ ์ ๋ ฅ ๋คํธ์ํฌ ํฌ๊ธฐ (ํด์๋) - ์์ ํฌ๊ธฐ์ ๋ค์ค ๊ฐ์ฒด๋ฅผ ๊ฐ์งํ๊ธฐ ์ํด • ๋ ๋ง์ ๋ ์ด์ด - ์ฆ๊ฐ๋ ์ ๋ ฅ ๋คํธ์ํฌ ํฌ๊ธฐ๋ฅผ ์ปค๋ฒํ๊ธฐ ์ํ ๋ ํฐ ์์ฉ ์์ญ • ๋ ๋ง์ ๋งค๊ฐ ๋ณ์ - ํ๋์ ์ด๋ฏธ์ง์์ ๋ค์ํ ํฌ๊ธฐ์ ์ฌ๋ฌ ๊ฐ์ฒด๋ฅผ ๊ฐ์งํ๊ธฐ ์ํ ๋ชจ๋ธ์ ์ฉ๋ ์ฆ๊ฐ
๊ฐ์ค์ ์ผ๋ก ๋งํ์๋ฉด, ์์ฉ ์์ญ ํฌ๊ธฐ๊ฐ ๋ ํฐ ๋ชจ๋ธ(๋ ๋ง์ 3 × 3 ํฉ์ฑ๊ณฑ ๋ ์ด์ด๋ฅผ ๊ฐ์ง)๊ณผ ๋ ๋ง์ ๋งค๊ฐ ๋ณ์๋ฅผ ๊ฐ์ง ๋ชจ๋ธ์ด ๋ฐฑ๋ณธ์ผ๋ก ์ ํ๋์ด์ผ ํ๋ค๊ณ ๊ฐ์ ํ ์ ์์ต๋๋ค. ํ 1์ CSPResNeXt50, CSPDarknet53 ๋ฐ EfficientNet B3์ ์ ๋ณด๋ฅผ ๋ณด์ฌ์ค๋๋ค. CSPResNext50์ 16๊ฐ์ 3 × 3 ํฉ์ฑ๊ณฑ ๋ ์ด์ด, 425 × 425 ์์ฉ ์์ญ ๋ฐ 20.6M ๋งค๊ฐ ๋ณ์๋ง์ ํฌํจํ๋ฉฐ, CSPDarknet53์ 29๊ฐ์ 3 × 3 ํฉ์ฑ๊ณฑ ๋ ์ด์ด, 725 × 725 ์์ฉ ์์ญ ๋ฐ 27.6M ๋งค๊ฐ ๋ณ์๋ฅผ ํฌํจํฉ๋๋ค. ์ด๋ก ์ ์ธ ๊ทผ๊ฑฐ์ ์ฐ๋ฆฌ์ ๋ค์ํ ์คํ๋ค๊ณผ ํจ๊ป, CSPDarknet53 ์ ๊ฒฝ๋ง์ด ๊ฐ์ง๊ธฐ์ ๋ฐฑ๋ณธ์ผ๋ก์ ๋ ๋ชจ๋ธ ์ค์์ ์ต์ ์ ๋ชจ๋ธ์์ ๋ณด์ฌ์ค๋๋ค.
๋ค์ํ ํฌ๊ธฐ์ ์์ฉ ์์ญ์ ์ํฅ์ ๋ค์๊ณผ ๊ฐ์ด ์์ฝ๋ฉ๋๋ค: • ๊ฐ์ฒด ํฌ๊ธฐ๊น์ง - ์ ์ฒด ๊ฐ์ฒด๋ฅผ ๋ณผ ์ ์๊ฒ ํฉ๋๋ค. • ๋คํธ์ํฌ ํฌ๊ธฐ๊น์ง - ๊ฐ์ฒด ์ฃผ๋ณ์ ์ปจํ ์คํธ๋ฅผ ๋ณผ ์ ์๊ฒ ํฉ๋๋ค. • ๋คํธ์ํฌ ํฌ๊ธฐ๋ฅผ ์ด๊ณผ - ์ด๋ฏธ์ง ์ ๊ณผ ์ต์ข ํ์ฑํ ์ฌ์ด์ ์ฐ๊ฒฐ ์๋ฅผ ์ฆ๊ฐ์ํต๋๋ค.
์ฐ๋ฆฌ๋ CSPDarknet53์ SPP ๋ธ๋ก์ ์ถ๊ฐํฉ๋๋ค. ์ด๋ ์์ฉ ์์ญ์ ํฌ๊ฒ ์ฆ๊ฐ์ํค๊ณ ๊ฐ์ฅ ์ค์ํ ์ปจํ ์คํธ ํน์ง์ ๋ถ๋ฆฌํ์ฌ ๋คํธ์ํฌ ์๋ ์๋๋ฅผ ๊ฑฐ์ ๊ฐ์์ํค์ง ์๋๋ค๋ ์ด์ ์ด ์์ต๋๋ค. ์ฐ๋ฆฌ๋ YOLOv3์์ ์ฌ์ฉ๋ FPN ๋์ ์ ๋ค๋ฅธ ๋ฐฑ๋ณธ ๋ ๋ฒจ๋ก๋ถํฐ์ ๋งค๊ฐ ๋ณ์ ํตํฉ ๋ฐฉ๋ฒ์ธ PANet์ ์ฌ์ฉํฉ๋๋ค.
๋ง์ง๋ง์ผ๋ก, ์ฐ๋ฆฌ๋ YOLOv4์ ์ํคํ ์ฒ๋ก CSPDarknet53 ๋ฐฑ๋ณธ, SPP ์ถ๊ฐ ๋ชจ๋, PANet ๊ฒฝ๋ก ์ง๊ณ ๋ฅ, YOLOv3 (์ต์ปค ๊ธฐ๋ฐ) ํค๋๋ฅผ ์ ํํฉ๋๋ค.
์์ผ๋ก ์ฐ๋ฆฌ๋ ๊ฐ์ง๊ธฐ๋ฅผ ์ํ Bag of Freebies (BoF)์ ๋ด์ฉ์ ํฌ๊ฒ ํ์ฅํ ๊ณํ์ด๋ฉฐ, ์ด๋ก ์ ์ผ๋ก ์ผ๋ถ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ๊ฐ์ง๊ธฐ์ ์ ํ๋๋ฅผ ํฅ์์ํฌ ์ ์๋๋ก ๊ฐ ํน์ง์ ์ํฅ์ ์คํ์ ์ผ๋ก ์์ฐจ์ ์ผ๋ก ํ์ธํ ๊ฒ์ ๋๋ค.
์ฐ๋ฆฌ๋ Cross-GPU Batch Normalization (CGBN ๋๋ SyncBN) ๋๋ ๊ณ ๊ฐ์ ์ ์ฉ ์ฅ์น๋ฅผ ์ฌ์ฉํ์ง ์์ต๋๋ค. ์ด๋ก์จ ๋๊ตฌ๋ ์ผ๋ฐ์ ์ธ ๊ทธ๋ํฝ ํ๋ก์ธ์์ธ GTX 1080Ti ๋๋ RTX 2080Ti์์ ์ฐ๋ฆฌ์ ์ต์ฒจ๋จ ๊ฒฐ๊ณผ๋ฅผ ์ฌํํ ์ ์์ต๋๋ค.
3.2. Selection of BoF and BoS
๊ฐ์ง๊ธฐ ํ์ต์ ๊ฐ์ ํ๊ธฐ ์ํด CNN์ ์ผ๋ฐ์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ ๊ธฐ๋ฒ์ ์ฌ์ฉํฉ๋๋ค:
- ํ์ฑํ ํจ์: ReLU, leaky-ReLU, parametric-ReLU, ReLU6, SELU, Swish, ๋๋ Mish
- Bounding box ํ๊ท ์์ค: MSE, IoU, GIoU, CIoU, DIoU
- ๋ฐ์ดํฐ ์ฆ๊ฐ: CutOut, MixUp, CutMix
- ์ ๊ทํ ๋ฐฉ๋ฒ: DropOut, DropPath, Spatial DropOut, ๋๋ DropBlock
- ๋คํธ์ํฌ ํ์ฑํ ์ ๊ทํ: Batch Normalization (BN), Cross-GPU Batch Normalization (CGBN ๋๋ SyncBN), Filter Response Normalization (FRN), ๋๋ Cross-Iteration Batch Normalization (CBN)
- ์คํต-์ปค๋ฅ์ : ์์ฐจ ์ฐ๊ฒฐ, ๊ฐ์ค ์์ฐจ ์ฐ๊ฒฐ, ๋ค์ค ์ ๋ ฅ ๊ฐ์ค ์์ฐจ ์ฐ๊ฒฐ, ๋๋ Cross stage ๋ถ๋ถ ์ฐ๊ฒฐ (CSP)
ํ์ต ํ์ฑํ ํจ์์ ๊ฒฝ์ฐ, PReLU์ SELU๋ ํ์ต์ด ๋ ์ด๋ ต๊ธฐ ๋๋ฌธ์ ํ๋ณด ๋ชฉ๋ก์์ ์ ์ธํฉ๋๋ค. ๋ํ ReLU6์ ์์ํ ๋คํธ์ํฌ๋ฅผ ์ํด ํน๋ณํ ์ค๊ณ๋ ํจ์์ด๋ฏ๋ก ์ ์ธํฉ๋๋ค. ์ ๊ทํ ๋ฐฉ๋ฒ์ ์ ํ์์๋ DropBlock์ด ๋ค๋ฅธ ๋ฐฉ๋ฒ๋ค๊ณผ ์์ธํ ๋น๊ต๋์๊ณ , ๊ทธ ๋ฐฉ๋ฒ์ด ๋ง์ ์ฑ๊ณผ๋ฅผ ์ป์๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ์ฃผ์ ํ์ง ์๊ณ DropBlock์ ์ ๊ทํ ๋ฐฉ๋ฒ์ผ๋ก ์ ํํฉ๋๋ค. ์ ๊ทํ ๋ฐฉ๋ฒ์ ์ ํ์์๋ ํ๋์ GPU๋ง ์ฌ์ฉํ๋ ํ์ต ์ ๋ต์ ์ด์ ์ ๋ง์ถ๊ณ ์๊ธฐ ๋๋ฌธ์ syncBN์ ๊ณ ๋ ค๋์ง ์์ต๋๋ค.
3.3. Additional improvements
๋จ์ผ GPU์์ ํ์ต์ ๋ ์ ํฉํ ๋์์ธ ๊ฐ์ง๊ธฐ๋ฅผ ๋ง๋ค๊ธฐ ์ํด ๋ค์๊ณผ ๊ฐ์ด ์ถ๊ฐ์ ์ธ ์ค๊ณ์ ๊ฐ์ ์ ์ํํ์ต๋๋ค:
- Mosaic ๋ฐ Self-Adversarial Training (SAT)๊ณผ ๊ฐ์ ์๋ก์ด ๋ฐ์ดํฐ ์ฆ๊ฐ ๋ฐฉ๋ฒ์ ๋์ ํ์ต๋๋ค.
- ์ ์ ์๊ณ ๋ฆฌ์ฆ์ ์ ์ฉํ๋ฉด์ ์ต์ ์ ํ์ดํผํ๋ผ๋ฏธํฐ๋ฅผ ์ ํํ์ต๋๋ค.
- ๊ธฐ์กด์ ์ผ๋ถ ๋ฐฉ๋ฒ์ ์์ ํ์ฌ ํจ์จ์ ์ธ ํ์ต๊ณผ ๊ฐ์ง๋ฅผ ์ํด ์ ํฉํ๋๋ก ๊ฐ์ ํ์ต๋๋ค - ์์ ๋ SAM, ์์ ๋ PAN ๋ฐ Cross mini-Batch Normalization (CmBN).
Mosaic์ 4๊ฐ์ ํ์ต ์ด๋ฏธ์ง๋ฅผ ํผํฉํ๋ ์๋ก์ด ๋ฐ์ดํฐ ์ฆ๊ฐ ๋ฐฉ๋ฒ์ ๋ํ๋ ๋๋ค. ๋ฐ๋ผ์ 4๊ฐ์ ๋ค๋ฅธ ๋ฌธ๋งฅ์ด ํผํฉ๋๋ฉฐ, CutMix๋ ์ ๋ ฅ ์ด๋ฏธ์ง๋ฅผ 2๊ฐ๋ง ํผํฉํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ ์์ ์ธ ๋ฌธ๋งฅ ๋ฐ์ ๊ฐ์ฒด๋ฅผ ๊ฐ์งํ ์ ์์ต๋๋ค. ๋ํ, ๋ฐฐ์น ์ ๊ทํ๋ ๊ฐ ๋ ์ด์ด์์ 4๊ฐ์ ๋ค๋ฅธ ์ด๋ฏธ์ง๋ก๋ถํฐ ํ์ฑํ ํต๊ณ๋ฅผ ๊ณ์ฐํฉ๋๋ค. ์ด๋ ๋์ฉ๋ ๋ฏธ๋๋ฐฐ์น ํฌ๊ธฐ์ ํ์์ฑ์ ํฌ๊ฒ ์ค์ ๋๋ค.
Self-Adversarial Training (SAT)์ ๋ํ 2๋จ๊ณ์ ์ ์ง-ํ์ง ๋จ๊ณ๋ก ์๋ํ๋ ์๋ก์ด ๋ฐ์ดํฐ ์ฆ๊ฐ ๊ธฐ์ ์ ๋ํ๋ ๋๋ค. 1๋จ๊ณ์์ ์ ๊ฒฝ๋ง์ ๋คํธ์ํฌ ๊ฐ์ค์น ๋์ ์๋ณธ ์ด๋ฏธ์ง๋ฅผ ๋ณ๊ฒฝํฉ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ ๊ฒฝ๋ง์ ์์ฒด์ ์ผ๋ก ์ ๋์ ๊ณต๊ฒฉ์ ์ํํ์ฌ ์๋ณธ ์ด๋ฏธ์ง๋ฅผ ๋ณ๊ฒฝํ์ฌ ์ํ๋ ๊ฐ์ฒด๊ฐ ์ด๋ฏธ์ง์ ์๋ ๊ฒ์ฒ๋ผ ์์ผ ์ ์์ต๋๋ค. 2๋จ๊ณ์์๋ ์ ๊ฒฝ๋ง์ด ์์ ๋ ์ด๋ฏธ์ง์์ ์ ์์ ์ธ ๋ฐฉ์์ผ๋ก ๊ฐ์ฒด๋ฅผ ๊ฐ์งํ๋๋ก ํ๋ จ๋ฉ๋๋ค.
CmBN์ Figure 4์ ๋์ ์๋ ๊ฒ์ฒ๋ผ ์์ ๋ CBN(Cross mini-Batch Normalization)์ ๋ฒ์ ์ ๋ํ๋ ๋๋ค. ์ด๋ ๋จ์ผ ๋ฐฐ์น ๋ด์ ๋ฏธ๋ ๋ฐฐ์น ๊ฐ์๋ง ํต๊ณ๋ฅผ ์์งํฉ๋๋ค.
์ฐ๋ฆฌ๋ SAM์ ๊ณต๊ฐ ๋ฐฉ์ ์ฃผ์(Spatial-wise Attention)์์ ์ ๋ณ ๋ฐฉ์ ์ฃผ์(Pointwise Attention)๋ก ์์ ํ๊ณ , PAN์ shortcut ์ฐ๊ฒฐ์ Figure 5์ Figure 6์ ๋์ ์๋ ๊ฒ์ฒ๋ผ ์ฐ๊ฒฐ(concatenation)๋ก ๋์ฒดํฉ๋๋ค.
3.4. YOLOv4
YOLOv4๋ ๋ค์๊ณผ ๊ฐ์ ๊ตฌ์ฑ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค: • Backbone: CSPDarknet53 [81] • Neck: SPP [25], PAN [49] • Head: YOLOv3 [63]
YOLOv4๋ ๋ค์๊ณผ ๊ฐ์ ์์๋ค์ ์ฌ์ฉํฉ๋๋ค: • Backbone์ ๋ํ Bag of Freebies (BoF): CutMix์ Mosaic ๋ฐ์ดํฐ ์ฆ๊ฐ, DropBlock ์ ๊ทํ, ํด๋์ค ๋ผ๋ฒจ ์ค๋ฌด๋ฉ • Backbone์ ๋ํ Bag of Specials (BoS): Mish ํ์ฑํ ํจ์, Cross-stage partial connections (CSP), Multiinput weighted residual connections (MiWRC) • Detector์ ๋ํ Bag of Freebies (BoF): CIoU-loss, CmBN, DropBlock ์ ๊ทํ, Mosaic ๋ฐ์ดํฐ ์ฆ๊ฐ, Self-Adversarial Training, ๊ทธ๋ฆฌ๋ ๋ฏผ๊ฐ๋ ์ ๊ฑฐ, ๋จ์ผ ground truth์ ๋ํ ์ฌ๋ฌ ์ต์ปค ์ฌ์ฉ, ์ฝ์ฌ์ธ ์ค๋๋ง ์ค์ผ์ค๋ฌ [52], ์ต์ ์ ํ์ดํผํ๋ผ๋ฏธํฐ, ๋ฌด์์ ํ๋ จ ํํ • Detector์ ๋ํ Bag of Specials (BoS): Mish ํ์ฑํ ํจ์, SPP-block, SAM-block, PAN path-aggregation block, DIoU-NMS
์ฆ, YOLOv4๋ CSPDarknet53๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ณ , SPP์ PAN์ ์ด์ฉํ ๋ฅ(neck) ๊ตฌ์กฐ, ๊ทธ๋ฆฌ๊ณ YOLOv3๋ฅผ ์ด์ฉํ ํค๋(head)๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. BoF์ BoS๋ฅผ ํตํด backbone๊ณผ detector์ ๋ค์ํ ๊ฐ์ ๊ธฐ๋ฒ๊ณผ ์์๋ค์ ์ ์ฉํ์ฌ ์ฑ๋ฅ์ ํฅ์์ํค๊ณ ์์ต๋๋ค.
4. Experiments
์ฐ๋ฆฌ๋ ๋ค์ํ ํ๋ จ ๊ฐ์ ๊ธฐ์ ์ด ImageNet (ILSVRC 2012 val) ๋ฐ์ดํฐ์ ์์ ๋ถ๋ฅ๊ธฐ์ ์ ํ๋์ ๋ฏธ์น๋ ์ํฅ์ ํ ์คํธํ์์ผ๋ฉฐ, ๊ทธ ๋ค์ MS COCO (test-dev 2017) ๋ฐ์ดํฐ์ ์์ ํ์ง๊ธฐ์ ์ ํ๋์ ๋ฏธ์น๋ ์ํฅ์ ํ ์คํธํ์์ต๋๋ค.
1. Intro
<YOLOv4์์ ์ ์ฉํ ๊ธฐ๋ฒ>
- WRC (Weighted-Residual-Connections)
- CSP (Cross-Stage-Partial-Connections)
- CmBN (Cross mini-Batch Normalizations)
- SAT (Self-Adversarial-Training)
- Mish Activation
- Mosaic Data Agumentation
- Drop Block Regularization
- CIOU Loss
- ์ต์ Neural Networks๋ค์ ๋์ ์ ํ๋๋ฅผ ๊ฐ์ง์ง๋ง, ๋ฎ์ FPS(์ค์๊ฐ X)์ ๋๋ฌด๋ ํฐ mini-batch-size๋ก ์ธํด ํ์ตํ๋๋ฐ ๋ง์ ์์ GPU๋ค์ด ํ์ํ๋ค๋ ๋จ์ ์ด ์กด์ฌ.
- OLO v4๋ EfficientDet๊ณผ ๋น์ทํ AP ์ฑ๋ฅ์ ๋ด๋ฉด์๋ 2๋ฐฐ ๋ ๋น ๋ฅธ FPS๋ฅผ ๋ณด์ .
- YOLO v3์ ๋นํด์ AP๋ 10%, FPS๋ 12% ํฅ์๋จ
2. Related Work
2.1 Object detection models
- ํ๋์ Detector์ ๊ฒฝ์ฐ pre-trained๋ 1. Backbone๊ณผ, class์ bounding box๋ฅผ ์์ธกํ๋ 2. head๋ก ๊ตฌ์ฑ๋จ
- ์ต๊ทผ ๋ช ๋ ๊ฐ ๊ฐ๋ฐ๋ Detector๋ Backbone๊ณผ Head ์ฌ์ด์ ๋ช ๊ฐ์ layer๋ฅผ ์ฝ์ ํจ์ผ๋ก์จ ์ผ๋ฐ์ ์ผ๋ก ๋ค๋ฅธ ๋จ๊ณ์์ feature map์ ์์งํ๋๋ฐ ์ฌ์ฉ๋จ. ์ด๋ฅผ ‘Neck’์ด๋ผ๊ณ ํํ
1. Backbone
- detector๊ฐ GPU or CPU์ ๋ฐ๋ผ backbone์ ๊ตฌ๋ถํจ
1.1 GPU
→ VGG [68], ResNet [26], ResNeXt [86], DenseNet [30]
1.2 CPU
→ SqueezeNet [31], MobileNet [28, 66, 27, 74], ShuffleNet [97, 53]
2. Head
- head ๋ถ๋ถ์ ๊ฒฝ์ฐ One-stage์ Two-stage๋ก ๋๋จ
2.1 Two-stage
- two-stage detector๋ ๋ค์ anchor-based detector์ anchor-free detector๋ก ๋๋์ด์ง
2.1.1 Anchor-based Two-stage detector
→ R-CNN ์๋ฆฌ์ฆ๋ก, fast R-CNN, faster R-CNN, R-FCN, Libra R-CNN ๋ฑ์ด ์กด์ฌ
- Fast R-CNN: ๋จ์ผ ์ด๋ฏธ์ง๋ฅผ CNN์ ์ ๋ ฅํ์ฌ RoI(Region of Interest)๋ฅผ ์ป์ ํ RoI pooling์ ํตํด ๊ณ ์ ๋ ํฌ๊ธฐ์ feature vector๋ฅผ fc layer์ ์ ๋ฌํ์ฌ R-CNN์ ๋นํด ํ์ต ๋ฐ ์ถ๋ก ์๋์ด ํฅ์๋ ๋ชจ๋ธ
- Faster R-CNN: RPN(Region Proposal Network)์ ์ถ๊ฐํ์ฌ ๋ชจ๋ธ์ ๋์ ๊ณผ์ ์์ ๋ฐ์ํ๋ ๋ณ๋ชฉ ํ์์ ์ต์ํํ์ฌ Fast R-CNN์ ๋นํด ํ์ต ๋ฐ ์ถ๋ก ์๋, ์ ํ๋๊ฐ ํฅ์๋ ๋ชจ๋ธ
R-FCN(Region-based fully convolutional network): image์์์ region, ์ด๋ฏธ์ง ๋ด์ object์ ์์น์ ๋ณด์ ๊ธฐ๋ฐํ fully convolutional network
→ RoI๋ผ๋ฆฌ ์ฐ์ฐ์ ๊ณต์ ํ๋ฉฐ ๊ฐ์ฒด์ ์์น ์ ๋ณด๋ฅผ ํฌํจํ๋ Position sensitive score map & RoI pooling์ ๋์ ํ์ฌ Translation invariance dilemma ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๋ชจ๋ธ
Libra R-CNN: classification ๊ณผ regression loss ์ ๋ํ balance ๋ฅผ ์๊ฐํ ๋ชจ๋ธ
- IoU-based sampling, Balanced Feature Pyramid, Balanced L1 loss๋ฅผ ๋์ ํ์ฌ ๊ฐ์ฒด ํ์ง ๋ชจ๋ธ ํ์ต ์ ๋ฐ์ํ๋ imbalance ๋ฌธ์ ๋ฅผ ์ํํ ๋ชจ๋ธ
2.1.2 Anchor-free Two-stage detector
→ RepPoints๊ฐ ๋ํ์ ์
- RepPoints: deformable convolution์ ํ์ฉํ์ฌ ๊ฐ์ฒด์ ๋๋ ์ ์ ์ ์ฐ์ด ์ป์ reppoints๋ฅผ ๊ธฐ๋ฐ์ผ๋ก anchor ์์ด ๊ฐ์ฒด ํ์ง๋ฅผ ์ํํ๋ ๋ชจ๋ธ
2.2 One-stage
2.1.3 Anchor-based One-stage detector
→ YOLO, SSD, RetinaNet๋ฑ์ด ๋ํ์
- YOLO : ํ๋์ ํตํฉ๋ ๋คํธ์ํฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก classification๊ณผ localization์ ๋์์ ์ํํ์ฌ ๋น ๋ฅธ ์ถ๋ก ์๋๋ฅผ ๋ณด์ธ ๋ชจ๋ธ
SSD(Single Shot multibox Detector): multi-scale feature map์ ํ์ฉํ์์ผ๋ฉฐ, ๋ค์ํ scale๊ณผ ๋ค์ํ ratio๋ฅผ ๊ฐ์ง default box๋ฅผ ์ ์ํด์ ๋ค์ํ ํฌ๊ธฐ์ ๋น์จ์ ๊ฐ์ฒด๋ค์ ์ธ์ํจ. ๋์ ์ ํ๋์ ๋น ๋ฅธ ์ถ๋ก ์๋๋ฅผ ๋ณด์ธ ๋ชจ๋ธ
- ๊ธฐ์กด 2-stage ๋ชจ๋ธ์ ์ ํ๋๋ฅผ ์ํด ์๋๋ฅผ ํฌ์ํ๊ณ , 1-stage ๋ชจ๋ธ์ ์๋๋ฅผ ์ํด ์ ํ๋๋ฅผ ํฌ์ํ๋ trade-off๋ฅผ ๊ทผ๋ณธ์ ์ผ๋ก ๊ฐ์ ํ๊ณ ์ ํจ
- Base Network๋ผ ๋ถ๋ฆฌ๋ ์ฌ์ ํ์ต๋ ํฉ์ฑ๊ณฑ ์ ๊ฒฝ๋ง์ ์ถ๊ฐ์ ์ธ ํฉ์ฑ๊ณฑ ๊ณ์ธต๋ค(Extra Feature Layers, Auxiliary Network)๋ฅผ ์ด์ด๋ถ์ฌ ๊ตฌ์ฑ๋จ
- RetinaNet: Focal Loss๋ฅผ ๋์ ํ์ฌ object detection task์์ ๋ฐ์ํ๋ class imbalance ๋ฌธ์ ๋ฅผ ์ํํ ๋ชจ๋ธ
2.1.4 Anchor-free One-stage detector
CornerNet: keypoint ๋ฐฉ์์ผ๋ก ๋๊ฐ์ง ํคํฌ์ธํธ๋ก object detection ์งํ
- CornerNet์ ์ผ์ชฝ ์, ์ค๋ฅธ์ชฝ ์๋, ๋๊ฐ์ ๋ชจ์๋ฆฌ๋ฅผ ์ธ์ํ์ฌ ๊ฒฝ๊ณ๋ฐ์ค๋ฅผ ์ป์ด๋
- object์ ๊ฒฝ๊ณ์ ์ ์ธ์ํ๋๋ฐ ๋ฐ์ด๋์ง๋ง, ์์ ์๋ ๋ฌผ์ฒด์ ์ ์ฒด์ ์ธ ์ ๋ณด๊ฐ ๋ถ์กฑํด, ๊ฒฝ๊ณ์ ์ ์ด๋๊น์ง๊ฐ ์ค๋ธ์ ํธ์ธ์ง ์ธ์์ ์ ๋ชปํ๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํด, ์๋ชป๋ ๊ฒฝ๊ณ๋ฐ์ค๋ฅผ ๋ง๋ค์ด๋ด๊ธฐ๋ ํจ
CenterNet: Center pooling๊ณผ Cascade corner pooling์ ํตํด ์ธ ์์ keypoint๋ฅผ ์ฌ์ฉํ์ฌ CornerNet์ ๋จ์ ์ ๊ฐ์ ํ ๋ชจ๋ธ
- cascade corner pooling์ ๋จผ์ ๋๊ฐ์ด ๊ฒฝ๊ณ์ ์ชฝ์ maximum value๋ฅผ ์ฐพ์๋ค, ์ต๋ ๊ฒฝ๊ณ๊ฐ์ ์์น๋ฅผ ๋ฐ๋ผ ์์ชฝ์ internal maximum value๋ฅผ ์ฐพ์
- maximum value๋ค์ ํฉ์ณ์ corner๋ค์ด ๊ฒฝ๊ณ๋ฐ์ค์, ์์ ์๋ object์ information๊น์ง ๋ค ์ป์ ์ ์์ด์, ์ ํํ ๊ฒฝ๊ณ๋ฐ์ค๋ฅผ ์ถ๋ก ํ ์ ์๋ค๊ณ ํจ
FCOS: anchor๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์ค์ฌ์ ์ผ๋ก๋ถํฐ bbox ๊ฒฝ๊ณ๊น์ง์ ๊ฑฐ๋ฆฌ๋ฅผ ์์ธกํ๋ฉฐ, center-ness๋ฅผ ํตํด ์ค์ฌ์ ๊ฑฐ๋ฆฌ๋ฅผ normalizeํ์ฌ low quality box๋ฅผ ์ ๊ฑฐํ๋ ๋ชจ๋ธ
- bbox ์ค์ฌ์ ๋ํ pixel์ ํธ์ฐจ๋ฅผ ์์ธกํ๋ ๋ฐฉ์์ center-ness๋ผ๊ณ ํจ
- FCN์ผ๋ก ํด๊ฒฐ์ด ๊ฐ๋ฅํ semantic segmentation๊ณผ ๊ฐ์ ๋ค๋ฅธ task๋ค๊ณผ ํฉ์ณ์ ๋ค์ ์ฌ์ฉํ ์ ์์
- anchor, proposal์ ์ฌ์ฉํ์ง ์์ ํ๋ํด์ผ ํ parameter๋ค์ด ์ค์ด๋ค์ด ์ข ๋ ๋จ์ํ๊ฒ ํ์ต์ด ๊ฐ๋ฅ
3. Neck
- ์ผ๋ฐ์ ์ผ๋ก ๋ฅ์ ์ฌ๋ฌ ๊ฐ์ Bottom-up ๊ฒฝ๋ก์ Top-down ๊ฒฝ๋ก๋ก ๊ตฌ์ฑ๋จ
→ Feature Pyramid Network (FPN) , Path Aggregation Network (PAN) , BiFPN , NAS-FPN ๋ฑ์ด ์กด์ฌ
FPN(Feature Pyramid Network)
- low-level feature map๊ณผ high-level feature map์ ํน์ง์ top-down, bottom-up, lateral connection์ ํตํด ์ ์๋ฏธํ๊ฒ ํ์ฉํ์ฌ ๊ฐ์ฒด ํ์ง ์ฑ๋ฅ ํฅ์์ ๊ธฐ์ฌํ ๋คํธ์ํฌ
→ feature map์ nearest neighbor upsamling ๊ธฐ๋ฒ์ ์ ์ฉํ์ฌ ํด์๋๋ฅผ 2๋ฐฐ์ฉ ํค์
→ bottom-up pathway์ feature map์ 1x1 conv๋ฅผ ์ ์ฉํ์ฌ feature map์ channel์ ๊ฐ์์ํจ ๋ค์ ๋จ์ํ top-down pathway feature map์ ๋ํ์ฌ ๊ณ์ฐํ๋ ๋ฐฉ์
PAN(Path Augmented Network) - PANet
- Bottom-up Path Augmentation์ ํตํด low-level feature์ ์ ๋ณด๋ฅผ high-level feature์ ํจ๊ณผ์ ์ผ๋ก ์ ๋ฌํจ์ผ๋ก์จ ๊ฐ์ฒด ํ์ง ์ localization ์ฑ๋ฅ์ ํฅ์์ํจ ๋คํธ์ํฌ
- Mask R-CNN์ ๊ธฐ๋ฐ์ผ๋ก Instance Segmentation์ ์ํ ๋ชจ๋ธ
- Path Augmentation -> Pooling -> Fusion์ ๋จ๊ณ๋ฅผ ๊ฑฐ์นจ
Bottom up Path ์ถ๊ฐ = Bottom up์ ํ๋ฒ ๋ ํด์ค๊ฑฐ๋ก ์ดํดํ๋ฉด ๋จโป Bottom-up Path AugmentationHigh-level, Low-level์ ๋ณด๊ฐ ๊ณจ๊ณ ๋ฃจ ์์ด๋๋ก ํ๋ ์ญํ → ์ดํ์, pooling ํด์ฃผ๊ณ , ROI ์ถ์ถํ๋์ง segmentation ํ๊ณ ์ ํ๋ ๋ฐฉ์์ ๋ฐ๋ผ d or e ๋ฐฉ์์ผ๋ก ์งํํด์ค
- → ๊ธฐ์กด์๋ a์ ๊ฐ์ด ํ๊ฒ ๋ ๊ฒฝ์ฐ, ํ ์ธต๋ง๋ค ResNet-50์ ๋ชจ๋ธ์ ์ง๋๊ฐ๊ธฐ ๋๋ฌธ์ ์ ํํ ์ ๋ณด๋ฅผ ๋ด์ง ๋ชปํ๊ฒ ๋๋ค๋ ๋จ์ ์ด ์กด์ฌ (FPN) → ์ด๋ฅผ ๊ฐ์ ํ๊ธฐ ์ํด ๋จ์ํ N2,3,4,5์ ์ธต์ ๊ตฌ์ฑํด bottom up์ ํ ๋ฒ ๋ ํด์ค
NAS-FPN(Neural Architecture Search-FPN)
- NAS๋ฅผ ํตํด ํจ์จ์ ์ธ Feature Pyramid Network ํ์ํ์ฌ ์ป์ ์ต์ ์ FPN ๊ตฌ์กฐ → AutoML์ Neural Architecture Search๋ฅผ FPN ๊ตฌ์กฐ์ ์ ์ฉํ์ฌ ์ ์ ์ ๋ถ๋ถ์ ์ฌ๋์ด ์ง์ ๊ตฌ์ํ์ง ์๊ณ neuron network๋ฅผ ๋์ ํ์ฌ ์งํ.
- → ํ์ง๋ง nas-fpn์ ์๊ฐ์ด ์ค๋๊ฑธ๋ฆฌ๊ณ ๊ตฌ์กฐ๊ฐ ๋ณต์กํ๋ค๋ ๋จ์ ์ด ์กด์ฌํจ
Fully-connected FPN
- ์๋ก ๋ค๋ฅธ level์ feature map ๊ฐ์ ์ ๋ณด๋ฅผ ์์ ์ฐ๊ฒฐ(fully connect)ํ์ฌ ํตํฉํ๋ ๋ฐฉ์์ Feature Pyramid
BiFPN
- ๊ฐ์ scale์ feature map์ edge๋ฅผ ์ถ๊ฐํ์ฌ ๋ ๋ง์ feature๋ค์ด ์ตํฉํ ์ ์๋๋ก ๊ตฌ์ฑํ FPN ๊ตฌ์กฐ
โป ์ผ๋ถ ์ฐ๊ตฌ์๋ค์ ๊ฐ์ฒด ํ์ง๋ฅผ ์ํด ์๋ก์ด ๋ฐฑ๋ณธ(DetNet [43], DetNAS [7])์ด๋ ์ ์ฒด ๋ชจ๋ธ(SpineNet [12], HitDetector [20])์ ์ง์ ๊ตฌ์ถํ๋ ๋ฐ ํ์ฐ๊ณ ์๋ค๊ณ ํจ
2.2 Bag of freebies
- inference ์๊ฐ์๋ ์ํฅ์ ์ฃผ์ง ์์ผ๋ฉด์ ํ์ต ๋น์ฉ๋ง ์ถ๊ฐ๋๋ ํ์ต ๋ฐฉ๋ฒ์ Bag of Freebies(์ดํ BoF)๋ผ๊ณ ๋ถ๋ฆ
- Data augmentation
- Semantic distribution bias
- Objective function of Bounding box regression
2.2.1 Data augmentation
- Random erase, CutOut
- ์ด๋ฏธ์ง์์ ์ฌ๊ฐํ ์์ญ์ ๋ฌด์์๋ก ์ ํ ํ, ๋ฌด์์ ๋๋ ๋ณด์๊ฐ์ผ๋ก ์ฑ์ฐ๋ ๊ฒ
- Hide-and-seek, Grid mask
- ์ด๋ฏธ์ง์์ ๋ฌด์์๋ก ๋๋ ๊ท ์ผํ๊ฒ ์ฌ๋ฌ ๊ฐ์ ์ฌ๊ฐํ ์์ญ์ ์ ํํ ํ, 0์ผ๋ก ๋์ฒดex) dropout, dropconnect,dropblock ๋ฑ์ด ์กด์ฌ
- MixUp
- ๋ ๊ฐ์ ์ด๋ฏธ์ง๋ฅผ ์๋ก ๋ค๋ฅธ ๊ณ์ ๋น์จ๋ก ๊ณฑํ๊ณ ๊ฒน์ณ์ ์กฐ์ ๋ ๋ ์ด๋ธ์ ์ฌ์ฉํจ
- CutMix
- ์๋ฆฐ ์ด๋ฏธ์ง๋ฅผ ๋ค๋ฅธ ์ด๋ฏธ์ง์ ์ง์ฌ๊ฐํ ์์ญ์ผ๋ก ๋ฎ์ด์์ฐ๊ณ ํผํฉ ์์ญ์ ํฌ๊ธฐ์ ๋ฐ๋ผ ๋ ์ด๋ธ ์กฐ์
- GAN
2.2.2 Semantic distribution bias
- semantic distribution bias๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ
- Two-Stage
- Hard negative example mining: ๋ชจ๋ธ์ด ์๋ชป ํ๋จํ false positive sample์ ํ์ต ๊ณผ์ ์ ์ถ๊ฐํ์ฌ ์ฌํ์ตํจ์ผ๋ก์จ ๋ชจ๋ธ์ ๊ฐ๊ฑดํ๊ฒ ๋ง๋ค๋ฉฐ, false positive๋ผ๊ณ ํ๋จํ๋ ์ค๋ฅ๋ฅผ ๊ฐ์์ํค๋ ๋ฐฉ๋ฒ
- OHEM(Online Hard Example Mining): ๋ชจ๋ RoI๋ฅผ forward passํ ํ loss๋ฅผ ๊ณ์ฐํ์ฌ ๋์ loss๋ฅผ ๊ฐ์ง๋ RoI์ ๋ํด์๋ง backward pass๋ฅผ ์ํํ์ฌ ๋ชจ๋ธ์ ํ์ต ์๋ ๊ฐ์ ๊ณผ ์ฑ๋ฅ ํฅ์์ ์ด๋ค๋ธ bootstrapping ๋ฐฉ๋ฒ
- One-stage
- Focal Loss
- One-hot hard representation
โก๏ธ ์๋ก ๋ค๋ฅธ category ๊ฐ์ ์ด๋ ์ ๋ ๊ด๊ณ๋ฅผ ๊ฐ์ง๋์ง one-hot hard representation ๋ฐฉ์์ ํตํด ํํํ๊ธฐ ์ด๋ ต๋ค๋ ๋ฌธ์ ๊ฐ ์กด์ฌ. ์ด๋ ์ฃผ๋ก labeling ์ ๋ฐ์
- Label smoothing: label์ 0 ๋๋ 1 ์ด ์๋๋ผ smoothํ๊ฒ ๋ถ์ฌํจ์ผ๋ก์จ ๋ชจ๋ธ์ regularization ๋ฐ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ํฅ์์ํค๋ฉฐ recalibration์ ๋์์ ์ฃผ๋ ๋ฐฉ๋ฒ
- Label refinement network: ์๋ก ๋ค๋ฅธ ํด์๋์ ๋ํ์ฌ coarseํ label์ ์์ธกํ ํ ์์ฐจ์ ์ผ๋ก ๋ ์ธ๋ฐํ label์ ์์ธกํ๋๋ก ๊ตฌ์ฑ๋ ๋ชจ๋ธ
2.2.3 Objective function of Bounding box regression
- Anchor-based method
- MSE(Mean Squared Error) : bounding box์ ์ขํ์ ๋ํ regression์ ์ง์ ์ ์ผ๋ก ์ํํ๋ loss function
- IoU-based method
- IoU: ๊ต์งํฉ / ํฉ์งํฉ
- GIoU: ๋ ๋ฐ์ค๋ฅผ ๋ชจ๋ ํฌํจํ๋ ์ต์ ์์ญ์ธ C ๋ฐ์ค ํ์ฉ
- DIoU: IoU์ ์ค์ฌ์ ์ขํ ํจ๊ป ๊ณ ๋ ค
- CIoU: DIoU loss์ ๋ ๊ฐ์ฒด ์ฌ์ด์ aspect ratio๋ฅผ ๊ณ ๋ ค, ๊ฐ์ฒด๊ฐ ๊ฒน์น์ง ์์ ๊ฒฝ์ฐ ๋ ๋น ๋ฅธ ์๋ ด์ ๊ฐ๋ฅํ๋๋ก ํ loss function
2.3 Bag of specials
- ์ ํ๋ ํฅ์์ ์ํ ์ถ๊ฐ ๋ชจ๋ ๊ธฐ๋ฒ ๋ฐ ํ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ์๋ฏธ
- receptive field ์ฆ๊ฐ
- attention ๋งค์ปค๋์ฆ์ ๋์
- feature๋ฅผ ํตํฉํ๋ ๋ฅ๋ ฅ์ ํฅ์์ํค๋ ์ ๊ทผ ๋ฐฉ์
- activation function
- ํ์ฒ๋ฆฌ: ๋ชจ๋ธ์ ์์ธก ๊ฒฐ๊ณผ๋ฅผ ๊ฑธ๋ฌ๋ด๋(screening) ์ ๊ทผ๋ฒ
2.3.1 Enhance receptive field
- backbone network์์ ์ป์ feature map์ ๋ํ receptive field๋ฅผ ํค์ฐ๋ ๋ฐฉ๋ฒ
1. SPP(Spatial Pyramid Pooling) : Additional block์ SPP์ ๋์ผํ์ง๋ง, kernel์ ํฌ๊ธฐ๋ฅผ ๋ค์ํ๊ฒ({1, 5, 9, 13})ํ์ฌ max pooling์ ์ํํ์ฌ feature map์ ๋ํ receptive field๋ฅผ ๋๋ฆฌ๋๋ก ๊ฐ์ ํจ
2. ASPP(Atrous Spatial Pyramid Pooling)
3. RFB(Receptive Field Block) : ASPP์ ๋ฌ๋ฆฌ kernel size๊ฐ ๊ฐ๊ธฐ ๋ค๋ฆ
2.3.2 Attention module
1. Channel-wise Attention
- SE(Squeeze-and-Excitation): ์ ๋ ฅ๋ feature map์ ๋ํ์ฌ Global Average Pooling ์ํ ํ fc layer์ ์ ๋ ฅํ์ฌ channel๋ณ ์ค์๋๋ฅผ ํ์ ํ ํ, ์ด๋ฅผ ์๋ณธ feature map์ ๊ณฑํด channel๋ณ ์ค์๋๋ฅผ ์ฌ๋ณด์ ํ๋ ๋ชจ๋
2. Point-wise Attention
- SAM(Spatial Attention Module):
- channel attention map๊ณผ input feature map์ ๊ณฑํ์ฌ ์์ฑํ F`์์ ์ฑ๋์ ์ถ์ผ๋ก Maxpool๊ณผ Avgpool์ ์ ์ฉํด ์์ฑํ 1xHxW์ F_avg์ F_max ๋ ๊ฐ์ concatenate
- ์ฌ๊ธฐ์ 7x7 conv ์ฐ์ฐ์ ์ ์ฉํ์ฌ spatial attention map์ ์์ฑ
2.3.3 Feature integration
- feature map์ ํตํฉํ๊ธฐ ์ํด FPN๋ณด๋ค ๊ฒฝ๋ํ๋ ๋ฒ์ ์ ๋ฐฉ๋ฒ์ ๋ํ ์ฐ๊ตฌ
- SFAM: SE ๋ชจ๋์ ์ฌ์ฉํ์ฌ ๋ค์ค ์ค์ผ์ผ๋ก ์ฐ๊ฒฐ๋ ํน์ฑ ๋งต์ ์ฑ๋๋ณ ๋ ๋ฒจ ๊ฐ์ค์น๋ฅผ ์ ์ฉ
- ASFF: ์ํํธ๋งฅ์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ ๋ณ ๋ ๋ฒจ ๊ฐ์ค์น๋ฅผ ์ ์ฉํ๊ณ ๋ค๋ฅธ ์ค์ผ์ผ์ ํน์ฑ ๋งต์ ๋ํจ
- BiFPN: ๋ค์ค ์ ๋ ฅ ๊ฐ์ค ์์ฐจ ์ฐ๊ฒฐ์ ์ ์ํ์ฌ ์ค์ผ์ผ๋ณ ๋ ๋ฒจ ๊ฐ์ค์น๋ฅผ ์ ์ฉํ๊ณ ๋ค๋ฅธ ์ค์ผ์ผ์ ํน์ฑ ๋งต์ ๋ํจ
2.3.4 Activation Function
- LReLU(Leaky ReLU)
- PReLU(Parametric ReLU): ๊ธฐ์กด ReLU ํจ์์์ ์์๊ฐ์ ๊ณ์๋ฅผ ํ์ต ๊ฐ๋ฅํ ํ๋ผ๋ฏธํฐ๋ก ์ง์ ํ activation function
- ReLU6: ๊ธฐ์กด ReLU ํจ์์ ์ต๋๊ฐ์ 6์ผ๋ก ์ง์ ํ์ฌ ํจ์จ์ ์ธ ์ต์ ํ๊ฐ ๊ฐ๋ฅํ activation function
- SELU(Scaled Exponential Linear Unit): self-normalizing ํจ๊ณผ๊ฐ ์์ด gradient exploding, vanishing ๋ฌธ์ ๋ฅผ ๋ฐฉ์งํ๋ activation function
- Swish: Sigmoid ํจ์์ ์ ๋ ฅ๊ฐ์ ๊ณฑํด์ค ํํ๋ก, ๊น์ layer๋ฅผ ํ์ต์ํฌ ๋ ์ข์ ์ฑ๋ฅ์ ๋ณด์ด๋ activation function
- hard-Swish: ์๋ฒ ๋๋ ๊ธฐ๊ธฐ์์๋ Swish ํจ์์์ sigmoid์ ๋ํ ์ฐ์ฐ๋์ด ๋๊ธฐ ๋๋ฌธ์ ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ ์ฉํ activation function
- Mish: upper bound๊ฐ ์์ด ์บกํ์ผ๋ก ์ธํ ํฌํ๊ฐ ๋ฐ์ํ์ง ์์ผ๋ฉฐ, ์ฝ๊ฐ์ ์์๋ฅผ ํ์ฉํ์ฌ gradient๊ฐ ์ ํ๋ฅด๋๋ก ์ค๊ณ๋ activation function
2.3.5 Post-processing method
- NMS: ๊ฐ์ ๊ฐ์ฒด๋ฅผ ์์ธกํ๋ ๋ถํ์ํ bounding box๋ฅผ ์ ๊ฑฐ
- Greedy NMS: ๋์ confidence score๋ฅผ ๊ฐ์ง๋ bounding box๋ฅผ ๊ธฐ์ค์ผ๋ก, ์๊ณ์น ์ด์์ IoU ๊ฐ์ ๊ฐ์ง๋ bounding box๋ฅผ ์ ๊ฑฐํ๋ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ NMS ๋ฐฉ๋ฒ
- Soft NMS: confidence score๊ฐ ๋์ bounding box์ ์๊ณ์น ์ด์์ IoU ๊ฐ์ ๊ฐ์ง๋ bounding box์ ๋ํด confidence score๋ฅผ decay(๋ถํจ)์์ผ ํ์ง ์ฑ๋ฅ ํ๋ฝ์ ๋ฐฉ์งํ๋ NMS ๋ฐฉ๋ฒ
- DIoU NMS: ๊ธฐ์กด์ NMS ์๊ณ์น์ DIoU penalty term์ ์ถ๊ฐํ์ฌ ๊ฒน์น ๊ฐ์ฒด์ ๋ํ ํ์ง ์ฑ๋ฅ์ ํฅ์์ํจ NMS ๋ฐฉ๋ฒ
3. Methodology
3.2 Selection of BoF and BoS
- Activation function: ReLU, leaky-ReLU, parametric-ReLU, ReLU6, SELU, Swish, ๋๋ Mish
- Bounding box regression loss: MSE, IoU, GIoU, CIoU, DIoU
- Data augmentation: CutOut, MixUp, CutMix
- Regularization method: DropOut, DropPath, Spatial DropOut, ๋๋ DropBlock
- Normalization of the network activation by their mean and variance: Batch Normalization (BN), Cross-GPU Batch Normalization (CGBN ๋๋ SyncBN), Filter Response Normalization (FRN), ๋๋ Cross-Iteration Batch Normalization (CBN)
- Skip-connections: ์์ฐจ ์ฐ๊ฒฐ, ๊ฐ์ค ์์ฐจ ์ฐ๊ฒฐ, ๋ค์ค ์ ๋ ฅ ๊ฐ์ค ์์ฐจ ์ฐ๊ฒฐ, ๋๋ Cross stage patial connections (CSP)
3.3 Additional improvements
1. Mosaic
- 4๊ฐ์ ํ์ต ์ด๋ฏธ์ง๋ฅผ ํผํฉํ๋ ์๋ก์ด data augmentation ๋ฐฉ๋ฒ
- ๋์ฉ๋ ๋ฏธ๋๋ฐฐ์น ํฌ๊ธฐ์ ํ์์ฑ์ ํฌ๊ฒ ์ค์ (batch size=4๋ฅผ ํ๋์ ์ด๋ฏธ์ง๋ก ๋ณด์ฌ์ฃผ๋ ํจ๊ณผ๋ฅผ ์ง๋)
2. SAT(Self-Adversarial Training)
- foreward, backward ๋ ๋ฒ์ stage๋ฅผ ๊ฑธ์ณ ์ํ๋๋ data augmentation ๋ฐฉ๋ฒ
- ์ฒซ ๋ฒ์งธ stage์๋ ์๋ณธ ์ด๋ฏธ์ง๋ฅผ ๋ณํ์์ผ, ์ด๋ฏธ์ง ๋ด์ ๊ฐ์ฒด๊ฐ ์๋ ๊ฒ์ฒ๋ผ ์์ด๋ adversarial attack์ ๊ฐํจ
- ๋ ๋ฒ์งธ stage์์๋ ๋ณํ๋ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ์ฌ ํ์ต
3. Minor Modifications
- CmBN์ CBN์ ๋ณํ์ํจ ๋ฒ์ ์ผ๋ก, Cross mini-Batch Normalization์ ์๋ฏธํจ
- ํ๋์ batch์์ mini-batch ์ฌ์ด์ batch statistics๋ฅผ ์์งํจ
- ๊ธฐ์กด์ ๋ฐฐ์น์ฌ์ด์ฆ๋ฅผ ๋ ๋๋ ์ ์งํํ ๊ฒ์ ์๋ฏธ
- ๊ธฐ์กด ๋ฐฐ์น์ฌ์ด์ฆ์์ mini batch ๋จ์๋ก ๋๋ ํ, batch normalization์ ์ถ๊ฐ๋ก ๋ ์ํ
4. Modified Existing Methods
- SAM
- point wise ๋จ์๋ก ์ค์ ํด์ ์ฌ์ฉ
- PAN
- ๊ธฐ์กด์๋ ๋ํ๋ค๋ฉด, ์์ ๋ ๋ฐฉ์์ผ๋ก๋ concate์ ์งํํด์ค
3.4 YOLOv4
• Backbone: CSPDarknet53 [81] • Neck: SPP [25], PAN [49] • Head: YOLOv3 [63]
- Bag of Freebies(BoF) for backbone
- CutMix and Mosaic data augmentation
- Dropblock regularization
- Class label smoothing
- Bag of Specials(Bos) for backbone
- Mish activation
- Cross-stage partial connections(CSP)
- Multi-input weighted residual connections(MiWRC)
- Bag of Freebies(BoF) for detector
- CIoU-loss
- CmBN
- DropBlock regularization
- Mosaic data augmentation
- Self-Adversarial Training
- Eliminate grid sensitivity
- Using multiple anchors for a single ground truth
- Cosine annealing scheduler
- Optimal hyperparameters
- Random training shapes
- Bag of Specials(BoS) for detector
- Mish activation
- SPP-block
- SAM-block
- PAN path-aggregation block
- DIoU-NMS
4. Experiments
- Classifier ํ์ต ์ label smoothing, data augmentation์ด ์ฃผ๋ ์ํฅ์ ๋ํ ์คํ
- Detector ํ์ต ์ ์๋ก ๋ค๋ฅธ feature์ ์ํฅ์ ๋ํ ์คํ
- Detector ํ์ต ์ ์๋ก ๋ค๋ฅธ backbone๊ณผ pretrained weight์ ์ํฅ์ ๋ํ ์คํ
- Detector ํ์ต ์ mini-batch ํฌ๊ธฐ์ ๋ฐ๋ฅธ ์ํฅ์ ๋ํ ์คํ
'Deep Learning > [๋ ผ๋ฌธ] Paper Review' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis (1) | 2023.07.13 |
---|---|
XLM: Cross-lingual Language Model Pretraining (0) | 2023.07.09 |
EfficientNet (0) | 2023.07.07 |
cGAN/Pix2Pix (0) | 2023.07.07 |
R-CNN (0) | 2023.07.06 |