์ง๊ธ๋ถํฐ yolo9000์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค.
Better
Object Detection dataset๋ค์ Classification, tagging ๋ฑ dataset๊ณผ ๋น๊ตํด์ ๋๋ฌด ์ ํ์ ์
๋๋ค. ์ผ๋ฐ์ ์ผ๋ก detection์ ์ํ dataset์ ์์ญ ~ ์๋ฐฑ๊ฐ์ ํด๋์ค๋ฅผ ํฌํจํ ์์ฒ~์์ญ๋ง๊ฐ์ ์ด๋ฏธ์ง๋ฅผ ํฌํจํ๊ณ ์๋๋ฐ, Classification์ ์ํ ๋ฐ์ดํฐ์
์ ์์ญ๋ง๊ฐ์ ํด๋์ค๋ฅผ ํฌํจํ ์ด๋ฏธ์ง๊ฐ ์๋ฐฑ๋ง๊ฐ๊ฐ ์์ต๋๋ค.
์ด๋ฒ YOLO 9000๋ชจ๋ธ์์๋ ์ ๋ง์ Classification ๋ฐ์ดํฐ๋ฅผ ํจ๊ป ์ด์ฉํด์ ํ์ฌ detection ์์คํ
์ ์ ์ฉํด๋ณด๋ ๋ฐฉ๋ฒ์ธ hierarchical view of object classification์ ์ ์ํ๊ณ , detection๊ณผ classification data ๋ชจ๋๋ฅผ ์ด์ฉํ์ฌ object detector๋ฅผ ํ์ต์ํค๋ joint training algorithm์ ์ ์ํ์ต๋๋ค.
2.1 batch normalization
๊ธฐ์กด YOLO v1๋ชจ๋ธ์ Fast R-CNN์ ๋น๊ตํ์ ๋ ๋ ๋์ localization error๋ฅผ ๋ฐ์์์ผฐ์ต๋๋ค. ๋ region proposal์ ๊ธฐ๋ฐ์ผ๋กํ detection ๋ฐฉ๋ฒ๋ค๊ณผ ๋น๊ตํ์ ๋, ์๋์ ์ผ๋ก ๋ฎ์ recall๊ฐ์ ๋ณด์์ต๋๋ค. YOLO9000์์๋ localization error์ recall์ ๋ํด์ ๊ฐ์ ํ๋ฉด์ classification accuracy๋ฅผ ์ ์งํ๋๋ฐ ์ด์ ์ ๋์์ต๋๋ค.
Batch Normalization์ ํตํด YOLO model์์ ๋ค๋ฅธ ํํ์ regularization์ ํ์ง ์์๋ ํ์ต์ด ์๋ ดํ๋๋ฐ ํฐ ํจ๊ณผ๋ฅผ ์ฃผ์๋ค๊ณ ํฉ๋๋ค. batch normalization์ ํ์ต ๊ณผ์ ์์ ๊ฐ batch ๋จ์ ๋ณ๋ก ๋ฐ์ดํฐ๊ฐ ๋ค์ํ ๋ถํฌ๋ฅผ ๊ฐ์ง๋๋ผ๋ ๊ฐ batch ๋ณ๋ก ํ๊ท ๊ณผ ๋ถ์ฐ์ ์ด์ฉํด normalizeํ๋ ๊ฒ์ ๋ปํฉ๋๋ค. ์ ๊ทธ๋ฆผ์ ๋ณด๋ฉด batch ๋จ์๋ layer์ ๋ฐ๋ผ์ ์
๋ ฅ ๊ฐ์ ๋ถํฌ๊ฐ ๋ชจ๋ ๋ค๋ฅด์ง๋ง ์ ๊ทํ๋ฅผ ํตํ์ฌ ๋ถํฌ๋ฅผ zero mean gaussian ํํ๋ก ๋ง๋ญ๋๋ค. ๊ทธ๋ฌ๋ฉด ํ๊ท ์ 0, ํ์ค ํธ์ฐจ๋ 1๋ก ๋ฐ์ดํฐ์ ๋ถํฌ๋ฅผ ์กฐ์ ํ ์ ์์ต๋๋ค.
YOLO์ ๋ชจ๋ convolutional layers์ Batch Normalization์ ์ถ๊ฐํ๋ ๊ฒ์ ํตํด mAP๊ฐ 2% ์ด์ ์์น๋๋ ๊ฒ์ ํ์ธ์ต๋๋ค. ๋ํ regularizeํจ๊ณผ๊ฐ ์๊ธฐ ๋๋ฌธ์ ๊ธฐ์กด ๋ชจ๋ธ์์ ์ฌ์ฉํ๋ Dropout layer๋ฅผ ์ ๊ฑฐํ๋ค๊ณ ํฉ๋๋ค. ๊ทธ๋ฐ๋ฐ ์ฌ์ค Batch Normalization์ด๋ DropOut์ ๊ฐ์ด ์ฐ๋ฉด ๋ ์ ๊ทํ ํจ๊ณผ๊ฐ ์ข์์ง๋ค๋ ๊ฒฐ๊ณผ๋ ์๋ค๊ณ ํฉ๋๋ค.
2.2 High resolution classifier
๋๋ถ๋ถ์ state-of-the-art detection ๋ฐฉ๋ฒ๋ค์ ImageNet ๋ฐ์ดํฐ์์ ํ์ต์ํจ pre-trained classifier๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๊ธฐ์กด YOLO model์ darknet์ 244 x 244๋ก classifier๋ฅผ pre-trainํ๊ณ ์ ๋ ฅ ์ฌ์ด์ฆ๋ฅผ 448 x 448๋ก ์ฆ๊ฐ์์ผ์ object detection model์ ํ์ต์์ผฐ์ต๋๋ค. ํ์ง๋ง YOLO v2์ ๊ฒฝ์ฐ์๋ ์ฒ์๋ถํฐ ์ ๋ ฅ ์ฌ์ด์ฆ๋ฅผ 448x448๋ก ์ฆ๊ฐ์ํค๊ณ ImageNet์์ 10 epoch๋์ ํ์ตํ๊ณ ๋์, detectionํ์ต์ ์งํํ๋ค๊ณ ํฉ๋๋ค. ์ด๋ฅผ ํตํด mAP๊ฐ 4% ํฅ์ํ๋ค๊ณ ํฉ๋๋ค.
2.3 Convolutional with Anchor Box
YOLO v1์ ๊ฐ grid cell์ bounding box์ ์ขํ๊ฐ 0~1 ์ฌ์ด์ ๊ฐ์ ๊ฐ์ง๋๋ก ๋๋ค์ผ๋ก ์ค์ ํ ๋ค ํ์ต์ ํตํด ์ต์ ์ ๊ฐ์ ์ฐพ์๊ฐ๋ ๊ณผ์ ์ ๊ฑฐ์ณค์ต๋๋ค. ํ์ง๋ง Anchor Box๋ฅผ ์ฌ์ฉํด์ box์ offset๋ง ์์ธกํ๋ฉด ๋จ์ํ๊ธฐ๋๋ฌธ์ network๋ฅผ ํ์ตํ๊ธฐ ์ฝ๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค.
๊ทธ๋์ fully connected layer๋ฅผ ์ ๊ฑฐํ๊ณ anchor boxes๋ฅผ ์ฌ์ฉํ์ฌ bounding box๋ฅผ ์์ธกํ๊ฒ ํ์ต๋๋ค. ๋จผ์ convolution layer์ output์ด ๋ ๋์ resolution์ ๊ฐ์ง๋๋ก pooling layer๋ฅผ ์ ๊ฑฐํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ธฐ์กด์ 448x448 ์
๋ ฅ ํฌ๊ธฐ๋ฅผ 416x416๋ก ๋ณ๊ฒฝํ๋ฉด์ ์ต์ข
output feature map์์ width ๋ฐ height๊ฐ ํ์๊ฐ ๋์, ๊ฐ์ด๋ฐ single center cell์ด ์กด์ฌํ ์ ์๊ฒ ๋ฉ๋๋ค. ์ด๋ ๊ฒ ๋ง๋ ์ด์ ๋ object๊ฐ ํฐ ๊ฒฝ์ฐ์๋ ์ ๊ฐ์ด๋ฐ cell์ ์ฐจ์งํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์๋ฐ, feature map์ด ์ง์์ผ ๊ฒฝ์ฐ์๋ center cell์ด ์๊ธฐ๋๋ฌธ์ ์ฃผ๋ณ cell 4๊ฐ๊ฐ ์ด๋ฌํ ํฐ object๋ฅผ ์์ธกํ๊ฒ ๋ฉ๋๋ค. ํ์ง๋ง feature map์ single center cell์ด ์๊ธธ ๊ฒฝ์ฐ object๋ฅผ ๋ ์ ์ฐพ์ ์ ์๊ธฐ ๋๋ฌธ์ ์ฑ๋ฅ์ด ๋ ์ข์์ง๋ค๊ณ ํฉ๋๋ค.
YOLOv2๋ 416x416ํฌ๊ธฐ์ ์
๋ ฅ์ ๋ฃ์ผ๋ฉด downsample factor๊ฐ 32์ด๊ณ , 13x13ํฌ๊ธฐ์ feature map์ ์ป๊ฒ ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ Anchor box์ ๊ฐฏ์๋งํผ class์ object๊ฐ ์๋์ง์ ๋ํ ์ฌ๋ถ๋ฅผ ์์ธกํ๋ค๊ณ ํฉ๋๋ค.
ex) Anchor๊ฐ 3๊ฐ๋ผ๋ฉด ์ถ๋ ฅ ๋ฒกํฐ๊ฐ [{objectness, x_offset, y_offset, w_offset, h_offset, C1 ... Cn}, {objectness, x_offset, y_offset, w_offset, h_offset, C1 ... Cn}, {objectness, x_offset, y_offset, w_offset, h_offset, C1 ... Cn}] ํํ
๊ธฐ์กด์ YOLO๊ฐ ์
๋ ฅ ์ด๋ฏธ์ง ๋น 98๊ฐ box๋ฅผ ์์ธกํ์ต๋๋ค. Anchor Box๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ accuracy๊ฐ ์ด์ง ๋จ์ด์ง์ง๋ง 1000๊ฐ ์ด์์ bounding box๋ฅผ ์์ธกํ ์ ์์ต๋๋ค. Anchor Box๋ฅผ ์ ์ฉํ์ง ์์ ๊ฒฝ์ฐ mAP๊ฐ 69.5์ 81%์ recall์ ๊ธฐ๋กํ์ง๋ง, Anchor Box ์ ์ฉ ํ์๋ mAP๊ฐ 69.2%, 88%์ recall์ ์ป์ ์ ์์์ต๋๋ค. mAP๊ฐ ๊ฐ์ํ์ง๋ง recall์ด ์ฆ๊ฐํ์ผ๋ฏ๋ก ๋ชจ๋ธ์ด ๋ ํฅ์๋ ์ฌ์ง๊ฐ ์๋ค๊ณ ํ๋จํ์ต๋๋ค.
Recall์ ์ ์ฒด ๋ฌผ์ฒด ๊ฐฏ์๋ถ์ ์ ๊ฒ์ถํ ๋ฌผ์ฒด ๊ฐฏ์๋ก true detection๋ง ๊ณ ๋ คํ๋ ์งํ์
๋๋ค. ๋ฐ๋ผ์ recall ๊ฐ์ด ๋๋ค๋ ๊ฒ์ model์ด ์ค์ object์ ์์น๋ฅผ ์์ธกํ ๋น์จ์ด ๋์์ ์๋ฏธํฉ๋๋ค. YOLO v1์ด recall ๊ฐ์ด ๋ฎ์ ์ด์ ๋ region proposal ๊ธฐ๋ฐ์ model์ ๋นํด ์ด๋ฏธ์ง ๋น ์๋์ ์ผ๋ก ์ ์ ์์ bounding box๋ฅผ ์์ธกํ๊ธฐ ๋๋ฌธ์
๋๋ค. ํ์ง๋ง YOLO v2์์ anchor box๋ฅผ ํตํด ๋ ๋ง์ ์์ bounding box๋ฅผ ์์ธกํ๋ฉด์ ์ค์ object์ ์์น๋ฅผ ๋ณด๋ค ์ ํฌ์ฐฉํ๊ฒ ๋์ด์ recall ๊ฐ์ด ์์นํ๊ฒ ๋ฉ๋๋ค.
2.4 Dimension Clusters
YOLO์ Anchor Box๋ฅผ ๋์
ํ๋ฉด์ 2๊ฐ์ง์ ๋ฌธ์ ์ ์ด ์๊ฒผ๋๋ฐ, ๊ทธ ์ค ํ๋๋ bounding box์ dimension๋ค์ hand-pick ๋๋ค๋ ๊ฒ๋๋ค. ์ด๋ฅผ network๊ฐ ํ์ตํ๊ฒ ํ ์ ์์ง๋ง, ์ฌ์ ์ ์ข์ anchor box๋ฅผ ์ ํํด์ค๋ค๋ฉด network๊ฐ ํ์ตํ๋๋ฐ ๋ ์ฌ์ธ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ์ต๋๋ค. YOLO 9000์์๋ k-mean๋ฅผ ํตํด์ ํ์ต ๋ฐ์ดํฐ์์ ๊ฐ์ฅ ์ข์ anchor box์ ํ๋ณด๊ตฐ์ ์ฐพ๊ฒ๋ฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก k-means๋ Euclidean distance๋ฅผ ์ฌ์ฉํ์ฌ centroid์ sample๊ฐ ๊ฑฐ๋ฆฌ๋ฅผ ๊ณ์ฐํฉ๋๋ค. ํ์ง๋ง euclidean distance๋ฅผ ์ฌ์ฉํ๋ฉด ํฐ bounding box์ ๊ฒฝ์ฐ์๋ ์์ bounding box์ ๋น๊ตํ์ ๋ ๋ ํฐ error๊ฐ์ ๋ฐ์ํ๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
bounding box์ ํฌ๊ธฐ์ ๋ฌด๊ดํ๊ฒ ์ ํํ prior์ด ์ข์ IoU ๊ฐ์ ๊ฐ์ง๋๋ก ํ๊ธฐ ์ํด์ ์๋ก์ด distance metric์ ์ฌ์ฉํฉ๋๋ค. ์ดdistance๊ฐ์ bounding box์ centroid์ IoU๊ฐ์ด ํด์๋ก ๊ฒน์น๋ ์์ญ์ด ํฌ๊ธฐ ๋๋ฌธ์ 1์์ ๋นผ๋ฉด ๊ฐ์ด ์์์ง๊ธฐ ๋๋ฌธ์ ๊ฑฐ๋ฆฌ๊ฐ ๊ฐ๊น๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
๋
ผ๋ฌธ์์๋ ๋ค์ํ k์ผ๋ก k-means clustering์ ์งํํ์๊ณ , k=5์ผ ๋ ๋ชจ๋ธ์ ๋ณต์ก๋์ recall ๊ฐ์ด ์ ์ ํ trade-off๋ฅผ ๋ณด์ฌ์ฃผ์์ต๋๋ค.
ํ๋ฅผ ๋ณด๋ฉด clustering๋ฐฉ๋ฒ์ผ๋ก ์ต์ ์ prior๋ฅผ ์ ํํ๋ฉด network๊ฐ detection task๋ฅผ ๋ณด๋ค ์ฝ๊ฒ ํ์ตํจ์ ์๋ฏธํฉ๋๋ค.
2.5 Direct location prediction
YOLO์ anchor box๋ฅผ ํจ๊ป ์ฌ์ฉํ์ ๋์ ๋ ๋ค๋ฅธ ๋ฌธ์ ์ ์ ์ด๊ธฐ iteration์ model์ด ๋ถ์์ ํ๋ค๋ ๊ฒ์ ๋๋ค. ๋๋ถ๋ถ์ ๋ถ์์ ์ฑ์ box์ (x,y) ์ขํ์์น๋ฅผ ์์ธกํ๋๋ฐ์ ์ผ์ด๋๋๋ฐ, region proposal ๊ณ์ด์ ๋คํธ์ํฌ๋ค์ tx, ty๊ฐ์ ๊ณ์ ๊ฐ๋ค์ ์ด์ฉํด์ ์ด ๊ฐ๋ค์ ์ฌ๊ธฐ ์์ฒ๋ผ ๊ณ์ฐํ๊ฒ ๋ฉ๋๋ค.
๊ณ์ ๊ฐ์ด ์์๋ผ๋ฉด Box๋ฅผ ์ค๋ฅธ์ชฝ์ผ๋ก, ์์๋ผ๋ฉด ๋ฐ์ค๋ฅผ ์ผ์ชฝ์ผ๋ก ์์ง์ด๊ฒ ํฉ๋๋ค. ์์ ์์ ์ด๋ ๊ฒ ์ ํ์ด ์๊ธฐ ๋๋ฌธ์ box๊ฐ ์ด๋์ชฝ์ผ๋ก๋ ์ด๋์ด ๊ฐ๋ฅํด์ง๊ฒ ๋๊ณ ์์ ์ ์ธ offset๊ฐ์ ํ์ตํ๋๋ฐ ๋ง์ ์๊ฐ์ด ๊ฑธ๋ฆฝ๋๋ค. ๊ทธ๋์ YOLO 9000์์๋ YOLO์ ๋ฐฉ์์ ์ฌ์ฉํ์ฌ grid cell์ ์๋์ ์ธ ์์น ์ขํ๋ฅผ ์์ธกํ๋ ๋ฐฉ๋ฒ์ ์ ํํ์ฌ offset์ ๊ฐ์ 0, 1์ฌ์ด ๋ฒ์์์ ์ ํํด ์ฃผ๊ณ , ์ด๋ ๊ฒ ์ป์ tx,ty๊ฐ์ logistic activation์ ์ ์ฉํด์ ํด๊ฒฐํฉ๋๋ค.
๋คํธ์ํฌ๋ ๊ฐ cell๋ง๋ค tx,ty,tw,th,to ์ด๋ ๊ฒ ์ด 5๊ฐ์ bounding box ์์๊ฐ์ ์์ธกํฉ๋๋ค.
์ต์ข
objectness์ box์ ๋ํ ์์๋ ์๋ ์์ผ๋ก ๊ตฌํ ์ ์์ต๋๋ค. ์ฌ๊ธฐ์ cx,cy๋ ํด๋น grid cell์ ์ผ์ชฝ ์๋จ ์ขํ๋ฅผ ์ด์ผ๊ธฐํ๊ณ , pw,ph๊ฐ์ anchor box์ ์ฌ์ width, height๊ฐ์ ์๋ฏธํฉ๋๋ค.
์์ธกํ๋ ์์น์ ๋ฒ์๊ฐ ์ ํด์ง์ผ๋ก์จ network๋ ์์ ์ ์ผ๋ก ํ์ต์ ์งํํ๋ ๊ฒ์ด ๊ฐ๋ฅํด์ง๋๋ค. Dimension clustering์ ํตํด ์ต์ ์ prior๋ฅผ ์ ํํ๊ณ bounding box ์ค์ฌ๋ถ ์ขํ๋ฅผ ์ง์ ์์ธกํ์ ๋ recall๊ฐ์ด 5% ์ ๋ ํฅ์๋๋ค๊ณ ํฉ๋๋ค.
2.6 Fine-Grained Features
YOLO v2๋ ์ต์ข
์ ์ผ๋ก 13x13 ํฌ๊ธฐ์ feature map ์ถ๋ ฅํฉ๋๋ค. feature map์ ํฌ๊ธฐ๊ฐ ์์ ๊ฒฝ์ฐ ํฐ ๊ฐ์ฒด๋ฅผ ์์ธกํ๊ธฐ ์ฉ์ดํ ๋ฐ๋ฉด ์์ ๊ฐ์ฒด๋ ์์ธกํ๊ธฐ ์ด๋ ต๋ค๋ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ง์ง๋ง pooling์ ์ํํ๊ธฐ ์ ์ feature map์ ์ถ์ถํ์ฌ 26x26(x512) ํฌ๊ธฐ์ feature map์ ์ป์ต๋๋ค. ๊ทธ ๋ค์ channel์ ์ ์งํ๋ฉด์ 4๊ฐ๋ก ๋ถํ ํ ํ concatํ์ฌ 13x13(x2048)ํฌ๊ธฐ์ feature map์ ์ป์ต๋๋ค. ์ด feature map์ ์์ ๊ฐ์ฒด์ ๋ํ ์ ๋ณด๋ฅผ ํจ์ถํ๊ณ ์๋ค๊ณ ํฉ๋๋ค. ์ด feature map์ original feature map์ธ 13x13(x1024) feature map์ ์ถ๊ฐํ์ฌ 13x13(x3072) ํฌ๊ธฐ์ feature map์ ์ป์ต๋๋ค.
์ต์ข
์ ์ผ๋ก 3x3 conv์ 1x1 conv๋ฅผ ์ ์ฉํ์ฌ 13x13(x125) ํฌ๊ธฐ์ feature map์ ์ป์ต๋๋ค. ์ฌ๊ธฐ์ channel ์๊ฐ 125์ธ ์ด์ ๋ ๊ฐ grid cell๋ณ๋ก 5๊ฐ์ bounding box๋ง๋ค 20๊ฐ์ class score์ (confidence, x, y, w, h)๋ฅผ ์์ธกํ๊ธฐ ๋๋ฌธ์
๋๋ค(=5๊ฐ์ bounding box x [20๊ฐ์ class score + (conf, x, y, w, h)]). ์ด๋ ๊ฒ fine-grained feature๋ฅผ ์ฌ์ฉํจ์ผ๋ก์จ 1% ์ ๋์ ์ฑ๋ฅ์ ํฅ์์์ผฐ๋ค๊ณ ํฉ๋๋ค.
2.7 Multi-scale Training
๊ธฐ์กด YOLO์์ ์ฌ์ฉํ๋ ์
๋ ฅํฌ๊ธฐ๋ฅผ 448x448๋ฅผ 416x416์ผ๋ก ๋ณ๊ฒฝํ๊ณ Anchor Box๋ ๋์
ํ์ง๋ง, YOLO๊ฐ convolutional๊ณผ Pooling layer๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ feature map์ ์ ๋ณด๋ค์ด layer๋ฅผ ์ง๋ ์๋ก ์์์ง๊ฒ ๋ฉ๋๋ค. ๋
ผ๋ฌธ์์๋ YOLO๋ฅผ ๊ฐ์ธํ๊ฒ ๋ง๋ค๊ณ ์ถ์ด์ ๋ชจ๋ธ ํ์ต์ 10 epochs๋ง๋ค Input Size๋ฅผ randomํ๊ฒ ๋ณ๊ฒฝํด์ฃผ๋ฉด์ ํ์ตํด์ค๋๋ค. ๋ชจ๋ธ์ ์ด๋ฏธ์ง๋ฅผ 1/32๋ฐฐ๋ก downsampling์ํค๊ธฐ ๋๋ฌธ์ ์
๋ ฅ ์ด๋ฏธ์ง ํฌ๊ธฐ๋ฅผ 32๋ฐฐ์ {320, 352, ..., 608} ์ค์์ ์ ํํ๋๋ก ํ์ต๋๋ค. 320x320 ํฌ๊ธฐ์ ์ด๋ฏธ์ง๊ฐ ๊ฐ์ฅ ์์ ์
๋ ฅ ์ด๋ฏธ์ง์ด๊ณ 608x608 ํฌ๊ธฐ์ ์ด๋ฏธ์ง๊ฐ ์
๋ ฅ๋ ์ ์๋ ๊ฐ์ฅ ํฐ ์ด๋ฏธ์ง์
๋๋ค.
์ด ๋ฐฉ๋ฒ์ ํตํด network๋ ๋ค์ํ ํฌ๊ธฐ์ ์ด๋ฏธ์ง๋ฅผ ์
๋ ฅ๋ฐ์ ์ ์๊ณ , ์๋์ ์ ํ๋ ์ฌ์ด์ trade-off๋ฅผ ์ ๊ณตํฉ๋๋ค. ์์ ํฌ๊ธฐ์ ์
๋ ฅ์ด๋ฉด ๋์ FPS๋ฅผ ๊ฐ์ง๊ณ ํฐ ํฌ๊ธฐ์ ์
๋ ฅ์ด๋ฉด ๋์ mAP๋ฅผ ๊ฐ์ง๊ฒ ๋ฉ๋๋ค.
2.8 Further Experiments
PASSCAL VOC 2012์ COCO dataset์ ๋ํ ๊ฒฐ๊ณผ๋ ์์ต๋๋ค.
Faster
3.1 Darknet-19
YOLO v2์์๋ Darknet-19๋ผ๋ ์๋ก์ด Classification Model์ ์ ์ํฉ๋๋ค. VGG๋ชจ๋ธ๊ณผ ๋น์ทํ๊ฒ 3x3 kernel filter๋ฅผ ์ฌ์ฉํ๊ณ ๋ชจ๋ pooling step ์ดํ์ channel์๋ฅผ 2๋ฐฐ๋ก ํด์ค๋๋ค. YOLO v1 ๋ชจ๋ธ์ ๋คํธ์ํฌ ๋ง์ง๋ง์ fc layer๋ฅผ ํตํด ์์ธก์ ์ํํ์ต๋๋ค. ํ์ง๋ง fc layer๋ก ์ธํด parameter ์๊ฐ ์ฆ๊ฐํ๊ณ detection ์๋๊ฐ ๋๋ ค์ง๋ค๋ ๋จ์ ์ด ์์ด์, YOLO v2์ Darknet-19๋ ๋ง์ง๋ง layer์ global average pooling์ ์ฌ์ฉํ์ฌ fc layer๋ฅผ ์ ๊ฑฐํ์ฌ parameter ์๋ฅผ ๊ฐ์์ํค๊ณ , detection ์๋๋ฅผ ํฅ์์์ผฐ์ต๋๋ค.
global average pooling์ด๋ Max(Average) Pooling ๋ณด๋ค ๋ ๊ธ๊ฒฉํ๊ฒ feature์ ์๋ฅผ ์ค์ด๋ ๊ฒ์
๋๋ค. ๊ฐ์ channel์ feature๋ค์ ๋ชจ๋ ํ๊ท ์ ๋ธ ๋ค์, channel ๊ฐฏ์๋งํผ์ ์์๋ฅผ ๊ฐ์ง๋ ๋ฒกํฐ๋ก ๋ง๋ญ๋๋ค. global average pooling์ ๋ชฉ์ ์ Max Pooling๊ณผ๋ ๋ค๋ฅด๊ฒ feature๋ฅผ 1์ฐจ์ ๋ฒกํฐ๋ก ๋ง๋ค๊ธฐ ์ํจ์
๋๋ค.
๊ทธ๋ฆฌ๊ณ 1x1 filter๋ฅผ ์ฌ์ฉํด์ 3x3 convolution feature map์ ์์ถํ๋ ๋ฐฉ์์ ์ฌ์ฉํ๊ณ , batch normalization์ ์ฌ์ฉํด์ regularization์ ํ์ต๋๋ค.
3.2 Training for classification/detection
Darknet-19๋ class์ ์๊ฐ 1000๊ฐ์ธ ImageNet ๋ฐ์ดํฐ์
์ ํตํด 160 epochs๋์ SGD๋ฅผ ์ฌ์ฉํ๊ณ learning rate๋ 0.1๋ก ํ์ต์ํต๋๋ค. ์์ Darknet-19 ๋คํธ์ํฌ์์ ๋ง์ง๋ง์ global average pooling ํ ouput์ ์๊ฐ 1000๊ฐ์ธ ์ด์ ๊ฐ ์ด๊ฒ ๋๋ฌธ์
๋๋ค. ํ์ตํ ๊ฒฐ๊ณผ๋ก top-1 ์ ํ๋๋ 76.5%, top-5 ์ ํ๋๋ 93.3%์ ์ฑ๋ฅ์ ๋ณด์์ต๋๋ค.
Darknet-19๋ฅผ detection์ ์ํ network๋ก ์ฌ์ฉํ๊ธฐ ์ํด ๋ง์ง๋ง convolutional layer๋ฅผ ์ ๊ฑฐํ๊ณ 3x3x1024 convolutional layer๋ก ๋์ฒดํ๊ณ , ์ดํ 1x1 conv layer๋ฅผ ์ถ๊ฐํฉ๋๋ค. 1x1 convolutional layer์ channel ์๋ ์์ธกํ ๋ ํ์ํ ์๋ก, ๊ฐ grid cell๋ง๋ค 5๊ฐ์ bounding box ๊ฐ๊ฐ ๋ง๋ค 5๊ฐ์ ๊ฐ(confidence score, x, y, w, h)๊ณผ, PASCAL VOC ๋ฐ์ดํฐ์
์ ์ฌ์ฉํ์ฌ ํ์ตํ๊ธฐ ๋๋ฌธ์ 20๊ฐ์ class score๋ฅผ ์์ธกํฉ๋๋ค. ๋ฐ๋ผ์ 1x1 conv layer์์ channel ์๋ฅผ 5x(5+20) = 125๊ฐ๋ก ์ง์ ํฉ๋๋ค.
Stronger
4.1 Hierarchical Classification
YOLO v2๋ classification data์ detection data๋ฅผ ํจ๊ป ์ฌ์ฉํ์ฌ ํ์ต์ํด์ผ๋ก์จ ๋ง์ class๋ฅผ ์์ธกํ ์ ์์ต๋๋ค. ํ์ง๋ง detection dataset์ ์ผ๋ฐ์ ์ด๊ณ ๋ฒ์ฉ์ ์ธ object์ ๋ํ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ ๋ฐ๋ฉด, classification dataset์ ์ธ๋ถ์ ์ธ object์ ๋ํ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด detection dataset์ ๋ชจ๋ ๊ฐ ์ด๋ฏธ์ง๋ฅผ "๊ฐ"๋ผ๋ ํ๋์ class๋ก ๋ถ๋ฅํ๋ ๋ฐ๋ฉด, classification ๋ฐ์ดํฐ์
์ "์ํฌ์
ํ
๋ฆฌ์ด"์ฒ๋ผ ์ข
๋ฅ๋ณ๋ก ์ธ๋ถ์ ์ธ class๋ก ๋ถ๋ฅํฉ๋๋ค. ์ด๋ ๊ฒ ๋ data๋ฅผ ์์ด ํ์ต์ํฌ ๊ฒฝ์ฐ ๋ชจ๋ธ์ด "๊ฐ"์ "์ํฌ์
ํ
๋ฆฌ์ด"๋ฅผ ๋ณ๊ฐ์ class๋ก ๋ถ๋ฅํ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค.
Classification์์๋ softmax layer๋ฅผ ์ฐ๋๋ฐ, ์ด๋ ๊ฐ class๋ค์ด ๋ฒ ํ์ (mutually exclusive)์ด๋ผ๋ ๊ฐ์ ํ์ ์งํํ๋ ๋ฐฉ์์
๋๋ค. ํ์ง๋ง dataset์ ํฉ์น๊ฒ ๋๋ฉด "๊ฐ"์ "์ํฌ์
ํ
๋ฆฌ์ด"๋ฅผ mutually exclusiveํ๊ฒ ์๊ฐํ๊ธฐ ๋๋ฌธ์ softmax layer๋ฅผ ์ฌ์ฉํ๋๊ฑด ์กฐ๊ธ ๋ฌด๋ฆฌ๊ฐ ์๊ธฐ๋๋ฌธ์ dataset๋ค์ด ์๋ก ๋ฒ ํ์ (mutually exclusive)์ด์ง ์๋ค๋ ๊ฐ์ ํ์ multi-label model์ ์ฌ์ฉํ๊ฒ๋ฉ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ImageNet label๋ก๋ถํฐ ๊ณ์ธต์ ์ธ ํธ๋ฆฌ(Hierarchical tree)์ธ WordTree๋ฅผ ๊ตฌ์ฑํฉ๋๋ค. ์ด๋ softmax๋ฅผ ์์ ์์ฐ๋๊ฒ ์๋๋ผ, ์ด๋์ ๋ ๋
๋ฆฝ์ ์ธ ๋ถ๋ถ์ ๋ํด์๋ softmax๋ฅผ ์ฌ์ฉํด์ softmax๋ฅผ ์ฌ๋ฌ๊ฐ๋ฅผ ์ฌ์ฉํ๊ฒ๋ฉ๋๋ค. WordTree์์ ๊ฐ node๋ categories๋ฅผ ์๋ฏธํ๊ณ ํ์ category๋ ์์ node๊ฐ ๋๋ ๊ตฌ์กฐ์
๋๋ค. ๋จผ์ ๋ฌผ๋ฆฌ์ ๊ฐ์ฒด(physical object)๋ฅผ root node๋ก ๋๊ณ , ํ์ category๋ ์์ node๊ฐ ๋์ด ์ ์ฐจ ๋ป์ด๋๊ฐ๋๋ค. ImageNet ๋ฐ์ดํฐ์
์ ํตํด WordTree๋ฅผ ๊ตฌ์ฑํ ๊ฒฝ์ฐ, ์ต์์ node๋ถํฐ ์ตํ์ node๊น์ง ์ด 1369๊ฐ์ categories๊ฐ ์กด์ฌํฉ๋๋ค.
WordTree์์ ํน์ category์ ์ํ ํ๋ฅ ์ root node๋ก๋ถํฐ ํด๋น category์ node๊น์ง์ ์กฐ๊ฑด๋ถ ํ๋ฅ ์ ๊ณฑ์ผ๋ก ํํํ ์ ์์ต๋๋ค. ๋ง์ฝ ์
๋ ฅ์ผ๋ก ๋ค์ด์จ ์ด๋ฏธ์ง๊ฐ ์ํฌ์
ํ
๋ฆฌ์ด๋ผ๋ฉด, ํ๋ฅ ์ ์๋ ์์ผ๋ก ๊ณ์ฐํ ์ ์์ต๋๋ค.
๋ง์ฝ label์ด ์ฃผ์ด์ก๋ค๊ณ ํ๋ฉด, ์์์ ๋ง๋ tree๋ฅผ ์ญ์ถ์ ํด์ ๋๋ถ๋ฅ category๋ฅผ ์ ์ ์๊ธฐ ๋๋ฌธ์ ์ด๋ฅผ ์ด์ฉํด multi-label์ ํ์ต์ํฌ ์ ์์ต๋๋ค.
4.2 Dataset combination with WordTree
์ฌ์ง๊ณผ ๊ฐ์ ๋ฐฉ๋ฒ์ ํตํด ImageNet data์ COCO data๋ฅผ ํฉ์ณ WordTree๋ฅผ ๊ตฌ์ฑํ ์ ์์ต๋๋ค.
4.3 Joint classification and Detection
COCO dataset๊ณผ ImageNet dataset์ ํฉ์ณ 9418๊ฐ์ classes๋ฅผ ๊ฐ์ง๋ WordTree๋ฅผ ํ์ต์ํต๋๋ค. ์ด ๋ ImageNet๊ณผ COCO dataset์ ๋น์จ์ด 4:1์ด ๋๋๋ก ์กฐ์ ํฉ๋๋ค. YOLO v2์์๋ grid cell๋ณ๋ก 5๊ฐ๊ฐ ์๋ 3๊ฐ์ anchor box๋ฅผ ์ฌ์ฉํ์ฌ ํ์ต์ํต๋๋ค.
Classification Dataset๊ณผ detection dataset์ ๊ฐ์ง๊ณ 9000๊ฐ์ class๋ฅผ ์์ธกํ๊ธฐ์ํ Detector๋ฅผ ํ์ต์ํฌ ๋, Detection label์ ๋ํด์๋ ๊ทธ๋ฅ ๊ธฐ์กด ๋ฐฉ์์ผ๋ก ํ์ต์ ์งํํ๋ฉด ๋ฉ๋๋ค. ํ์ง๋ง classification label์ด "dog"๋ผ๊ณ ์ฃผ์ด์ง๋ฉด tree์ ์์ node๋ ์ ์ ์์ง๋ง ๊ทธ ํ์ node์ ๋ํ ์ ๋ณด๊ฐ ์์ด์ ์์ node์ ๋ํด์๋ง ํ์ต์ ์งํํ๊ธฐ ๋๋ฌธ์, ํ์ node๋ ๋ชจ๋ ํ๋ ธ๋ค๋ error๊ฐ์ ์ฃผ๊ฒ ๋ฉ๋๋ค.
๋ง์ฝ network๊ฐ classification dataset์ ์ด๋ฏธ์ง๋ฅผ ๋ณด๋ฉด classification loss์ ๋ํด์๋ง backward pass๋ฅผ ์ํํฉ๋๋ค. ์ด ๋ ground truth box์ IoU ๊ฐ์ด 0.3 ์ด์์ธ ๊ฒฝ์ฐ์๋ง backpropagate๋ฅผ ์ํํฉ๋๋ค.
Joint training ๋ฐฉ์์ ํตํด YOLO 9000๋ COCO dataset์ ํ์ฉํ์ฌ image ๋ด์์ object๋ฅผ ์ฐพ๋ detection task์ ImageNet dataset์ ํตํด ๋ณด๋ค ๋์ ๋ฒ์ฃผ์ object๋ฅผ classifyํ ์ ์์ต๋๋ค.
YOLO 9000 model์ ImageNet์์ ์ฑ๋ฅ์ ์ธก์ ํ์ ๋, ์๋ก์ด ์ข
์ด๋ ๋๋ฌผ์ ์ ํ์ตํ์ง๋ง, clothing์ด๋ equipment๋ค์ ์ด๋ ค์์ ๊ฒช์์ต๋๋ค. COCO dataset์์ ๋๋ฌผ data๊ฐ ๋ง๊ธฐ๋๋ฌธ์ ์ ์ผ๋ฐํ๋์ด ํ์ต๋์์ง๋ง, clothing๊ฐ์ label์ ์๊ธฐ๋๋ฌธ์ ํ์ตํ์ง ๋ชปํ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
https://herbwood.tistory.com/17
์ด ๋ถ ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ๊ณ ํ์ต๋๋ค.
'AI > ๋ ผ๋ฌธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[object detection] SSD(Single Shot MultiBox Detector) (1) | 2022.10.09 |
---|---|
[Object Detection] YOLO V4 : Optimal Speed and Accuracy of Object Detection (0) | 2022.08.26 |
[Object Detection] YOLO V3 code review - detection_demo.py (0) | 2022.08.05 |
[Object Detection] YOLO V3 : An Incremental Improvement (0) | 2022.08.02 |
[Object Detection] YOLO(You Only Look Once) V1 (0) | 2022.07.17 |