2023. 10. 9. 12:40ใArtificialIntelligence/2023GoogleMLBootcamp
Object Localization
ํ๋์ ๊ฐ์ฒด๋ง detect vs ์ฌ๋ฌ ๊ฐ์ฒด detect (multiple)
bounding box์ ๋ํ ๊ฐ์ classifier์ ์ถ๊ฐ
์ค์ฌ point ์์น + ๋์ด + ๋๋น -> 4๊ฐ์ parameter
Pc -> object๊ฐ ์กด์ฌํ๋๊ฐ?
์๋ค๋ฉด bounding box ์ ๋ณด + ๋ค๋ฅธ class๋ค์ด ์๋์ง์ ๋ํ C ๊ฐ๋ค
์๋ค๋ฉด (Pc๊ฐ 0์ด๋ผ๋ฉด)
๋ค๋ฅธ ๋ ์ด๋ธ๋ค์ ๋ค ์๊ด X (Don't cares)
y1์ด 1์ด๋ผ๋ฉด
MSE์ฒ๋ผ ์๋ฌ (loss) ๊ฐ ๊ณ์ฐ
y1์ด 0์ด๋ผ๋ฉด (์๋ค๋ฉด)
don't care
+ classification + localization๊น์ง ํ ์ ์๋๋ก
-> by bounding box ์ ๋ณด๋ ์ถ๊ฐ
Landmark Detection
๋์ ์์น๋ฅผ ๋๋๋งํฌ๋ก ์ก๊ณ ํํํ ๋,
ํ์ํ point๋ค์ ๋ ธ๋๋ก ์ก์ ์ ์๋ค
๊ฐ๊ฐ์ ๋ ์ด๋ธ์ ์ ๋ณด๋ก ๋ค์ด๊ฐ
์ฌ๋์ ํฌ์ฆ๋ฅผ ๊ตฌ์กฐํํ ๋,
๋๋๋งํฌ๋ฅผ ๋ช ํฌ์ธํธ๋ก ์ก์์ ํํ ๊ฐ๋ฅํ๋ค
ex) 32๊ฐ์ ํฌ์ธํธ (๋๋๋งํฌ)๋ก ํํ
Object Detection
์ ์ฐจ ์๋์ฐ ํฌ๊ธฐ๋ฅผ ๋๋ ค๊ฐ๋ฉด์ sliding
car๋ฅผ ํฌํจํ๋์ง ์๋์ง ํ๋จํด๊ฐ๋ฉฐ, ํค์๊ฐ๋ค
stride๋ฅผ ๋๋ฌด ์๊ฒ ์ก์ผ๋ฉด, sliding ๋งค์ฐ ๋ง์ด ํด์ผํ๋ค -> cost ํผ
Convolutional Implementation of Sliding Windows
Fully Connected layer ๋์ convolution layer๋ฅผ ํ์ฉํ ์ ์๋ค (๋๋ถ๋ถ์์)
sliding window -> ์ ์ฐจ ์ฐฝ์ ํฌ๊ธฐ๊ฐ ๋์ด์ง๋ค
14 -> 16์ผ๋ก ์ปค์ง ์ด์ !
+ FC๋ผ๊ณ ํ๊ธฐ๋ ๋ถ๋ถ์ FC๊ฐ ์๋๋ผ, FC ๋์ฒดํ๋ Conv๋ก ์ดํดํ๋ฉด ๋๋ค
bounding box์ ์ ํ๋๊ฐ ๋จ์ด์ง ์ ์๋ค -> ๊ฐ์ ๋ฒ ๋ค์ ๋น๋์ค์์ . . .
Bounding Box Predictions
์ ํด์ง delta๋งํผ์ sliding window๋ก๋ ์ฐจ๋ฅผ ์ ํํ ๋ด๋ bounding box๋ฅผ ์ป์ ์ ์๋ค
๋ณด๋ผ์ ์์ญ์ ๊ฒฝ์ฐ, ๊ฐ์ด๋ฐ์ ์กํ๋ target์ด ์๋ค.
๋ฐ๋ผ์ Pc๊ฐ 0์ด๊ณ , ๋๋จธ์ง๋ don't care -> ๋ค ?๊ฐ ๋ค์ด๊ฐ
์ฐ๋์๊ณผ ๋ ธ๋์์ center์ ๊ฐ์ฒด๊ฐ ์กํ ๊ฒ
C1 C2 C3 -> ๋ณดํ์ / ์ฐจ / ์คํ ๋ฐ์ด
4๊ฐ์ b -> ๋ฐ์ด๋ฉ ๋ฐ์ค์ ์ขํ, ๋๋น ๋์ด ์๋ฏธ
๋ฐ๋ผ์ ์ฐ๋ฆฌ์ target output์
grid (3 * 3) * 8 (ํ ๊ทธ๋ฆฌ๋ ์นธ ๋น y, label ๋ฒกํฐ) -> 72
input dim = 100 * 100 * 3 (pixel)
train์ดํ, test ๋จ๊ณ์์, output y์ ๋ํ์ฌ
์ฐ์ ์ฒซ๋ฒ์งธ Pc๊ฐ 1์ธ ๊ฒ๋ง ๊ณจ๋ผ์, (๊ฐ์ฒด๊ฐ ์๋ค๋ ๋ป)
bx by bh bw๋ฅผ ๊ฐ์ ธ์ค๋ฉด bounding box๊ฐ ๋๋ค!
object์ mid point๊ฐ ์๋ grid์ ๊ทธ ๊ฐ์ฒด๊ฐ ์๋ค๊ณ ํ ๋น
๊ทธ๋ฆฌ๋์ ์ฐจ์์ด 3 -> 19๋ก ๋์ด๋๋ค๋ฉด
ํ๋์ ๊ทธ๋ฆฌ๋์ ๋ ๊ฐ์ฒด๊ฐ ๋ค์ด๊ฐ, ๊ฒน์น ํ๋ฅ ์ด ์ค์ด๋ ๋ค (๋น์ฐํจ)
๋ชจ๋ ํ๋์ grid์ ๋ํ ์๋์ ์ธ ์์น, ๊ฐ์ผ๋ก ํํ๋๋ค
์ด๋, center์ ์๋์ ์ธ ์์น๋ฅผ ๋ํ๋ด๋ bx, by๋ 1๋ณด๋ค ์์ ๊ฐ์ด์ด์ผ ํ์ง๋ง,
box์ bh, bw์ ๊ฒฝ์ฐ 1์ ๋์ ์๋ ์๋ค (ํ๋์ grid๋ฅผ ํ์ด๋๊ฐ ์๋ ์์ผ๋๊น)
Intersection Over Union
IoU -> Intersection over union
๊ฒน์น๋ ์์ญ / ๋์ ํฉํ ์์ญ์ ๋น์จ
1์ ๊ฐ๊น์ธ์๋ก ๋ชจ๋ ๊ฒน์น๋ ๊ฒ์ด๋ ๋ ์ ํํ ๊ฒ
์ผ๋ฐ์ ์ผ๋ก 0.5๋ณด๋ค ๋์ผ๋ฉด correct (๊ทธ๋ฅ ์ฌ๋์ด ์ ํ ๊ฒ, ๋ ์๊ฒฉํ๊ฒ ํด๋ 0.6,7 ๊ด์ฐฎ๋ค)
Non-max Suppression
์ฐจ์ center๊ฐ ํฌํจ๋ ๊ทธ๋ฆฌ๋๋ ํฌ๋ฐํ์ง๋ง,
๊ฐ์ฒด๊ฐ ํฌํจ๋ ๊ทธ๋ฆฌ๋๋ ๋ ๋ง๋ค
Pc -> ๊ฐ์ฒด๊ฐ ํ์ง๋ ํ๋ฅ
IoU๊ฐ ๊ฐ์ฅ ๋์ ๊ฒ์ ์ ํํ๊ฒ ๋จ (์ค๋ฅธ์ชฝ ์ฐจ์ ๊ฒฝ์ฐ 0.9)
Pc๊ฐ 0.6๋ณด๋ค ๋ฎ์ ๋ฐ์ค๋ค์ ๋ค ๋ฒ๋ฆฌ๊ณ
๊ฐ์ฅ ํฐ Pc๋ฅผ ๊ฐ์ง ๋ฐ์ค๋ฅผ ์์ธก์ผ๋ก ๊ณ ๋ฅธ๋ค
Anchor Boxes
๋ anchor box์ ๋ํ ์ ๋ณด๋ฅผ ํ๋๋ก ํฉ์ณ์ y๊ฐ 2๋ฐฐ ๊ธธ์ด์ง
์ฌ๋ ์ฐจ ๋ ๋ค ์์ ๋ / ์ฐจ ๋ง (์ฌ๋ ๋์ผ์ด)
๋ง์ฝ ์ต์ปค๋ฐ์ค๋ 2๊ฐ, ๊ฐ์ฒด๋ 3๊ฐ๋ผ๋ฉด? -> ์ ๋ชป ๋ค๋ฃฐ๊ฒ
YOLO Algorithm
์ฐ์ ๊ฐ ๊ทธ๋ฆฌ๋๋ง๋ค 2๊ฐ์ฉ ๋ฐ์ด๋ฉ ๋ฐ์ค๋ฅผ ์์ฑ
๋ฎ์ ํ๋ฅ ์ ์ง๋ ์์ธก๋ค์ ์ง์ด๋ค
non-max surppression -> ์ต์ข ์์ธก ์ ํ
Region Proposals (Optional)
Region CNN
segmentation์ ๋ค๋ฃจ๋ R-CNN
์๊ฐ์ด ๋ง์ด ์์๋์ด(slow), ์ค์ด๋ ๊ฒ์ด ์ค์ํ๋ค (fast)
์๋๋ฅผ ํฅ์์ํค๊ธฐ ์ํ ๋ฐ์ ๋ค
Semantic Segmentation with U-Net
๋ชจ๋ ํฝ์ ์ ๋ํด
์๋ฃ ๋ฐ์ดํฐ์ ๋ง์ด ํ์ฉ๋๋ค
์ฐจ๋ผ๋ฉด 1 ์๋๋ฉด 0
๋ชจ๋ ํฝ์ ์ ๋ ์ด๋ธ๋ง
์์ธกํ ๊ฒ์ด ๋งค์ฐ ๋ง์์ง ๊ฒ
์๊ฒ ์ค์ธ ์ด๋ฏธ์ง (ํผ์ฒ๋งต) -> ๋ค์ ํฌ๊ธฐ๋ฅผ ํค์ด๋ค!
Transpose conv๋ฅผ ํตํด ์ด๋ฅผ ๊ตฌํํ ์ ์๋ค :)
Transpose Convolutions
ํฝ์ ์ ์ค์ฌ๋๊ฐ๋ conv์ ๋ฌ๋ฆฌ
์ญ์ผ๋ก ํฝ์ ์๋ฅผ ๋๋ฆฌ๋ transpose conv
์ด๋ป๊ฒ 4* 4๋ฅผ ์ฑ์ธ ์ ์์๊น?
์ญ์ผ๋ก ํฐ conv๋ก ๊ณฑํด์ ํค์ด๋ค
๋น๊ธ ์น ํจ๋ฉ ์ง์ญ์ ๋ฌด์ํ๊ณ , ํฐ ๊ณณ์๋ง ๊ฐ์ ์ฑ์ด๋ค
stride๋ฅผ 2๋ก ์ฃผ์ด์ ์ฎ๊ฒผ๋ค
๊ฒน์น๋ ์นธ์ ๊ฐ์ ๋ํด์ค๋ค
hmm
๊ทผ๋ฐ ์ padding์ ์ผ์ชฝ ์๋ก๋ง ์ค์น๊ฒ ๋๋๊ฑธ๊น?
์ฐ์ธก ํ๋จ์ ํ์ ํจ๋ฉ ํ์์๋ ๊ฒ ์๋๊ฐ?
U-Net Architecture Intuition
U Net ๊ตฌ์กฐ์์ skip connection
1. ์ด์ layer๋ฅผ ํตํ (์ถ์ํ๋, ๋ฎ์ ํด์๋์) ๊ฐ์ฒด ์์น ์ ๋ณด๋ฅผ ์ป๋๋ค.
low level feature information / high level - spatial info
2. ์ด๊ธฐ layer (input๊ณผ ๊ฐ๊น์ด)๋ฅผ ํตํด ๋ํ ์ผํ, ๋์ ํด์๋์ ์ด๋ฏธ์ง ์ ๋ณด๋ฅผ ์ป๋๋ค
U-Net Architecture
h, w๊ฐ ์ค์ด๋ค๋ฉด์, ์ฑ๋ ๋ฐฉํฅ์ ๋์ด๋ ์ํฉ
์ผ๋ฐ์ ์ธ conv์ ๊ตฌ์กฐ
์ดํ transpose conv์ skip connection์ ํตํด
์ฌ๋ฌ info -> h์ w๋ฅผ ๋๋ ค๋๊ฐ๋ฉฐ -> ๋ง์ง๋ง์ 1 * 1 conv ํต๊ณผ
์ต์ข ์ ์ผ๋ก h * w * n_classes ์ฐจ์์ prediction์ ์ป๊ฒ๋๋ค.
๊ฐ ํฝ์ ๋ณ + class ์ ๋ณด๋ฅผ ๋ด์ segmentation
'ArtificialIntelligence > 2023GoogleMLBootcamp' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[GoogleML] Neural Style Transfer (2) | 2023.10.11 |
---|---|
[GoogleML] Face Recognition (0) | 2023.10.09 |
[GoogleML] Convolutional Neural Networks Case Studies (1) | 2023.10.06 |
[GoogleML] Convolutional Neural Networks (1) | 2023.10.04 |
[GoogleML] Structuring Machine Learning Projects ์๋ฃ (0) | 2023.10.01 |