Artificial Intelligence/Studying

Convolutional Neural Network

geum 2021. 1. 19. 17:43

[๋ถ€์ŠคํŠธ์ฝ”์Šค] ํ…์„œํ”Œ๋กœ์šฐ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋”ฅ๋Ÿฌ๋‹ ๊ธฐ์ดˆ

CNN

- ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜์— ๋งŽ์ด ์‚ฌ์šฉ๋˜๋ฉฐ convolutional layer / pooling layer(์ƒ๋žตํ•˜๊ธฐ๋„ ํ•จ)๋กœ ๊ตฌ์„ฑ

 

Convolutional layer

๐Ÿ“Œ ํ•„ํ„ฐ๋Š” ์ด๋ฏธ์ง€์˜ ํŠน์ง•์„ ์ฐพ์•„๋‚ด๊ธฐ ์œ„ํ•œ ๊ณต์šฉ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ kernel์ด๋ผ๊ณ  ๋ถ€๋ฅด๊ธฐ๋„ ํ•จ 

 

Stride

- ํ•„ํ„ฐ ์ ์šฉ ๊ฐ„๊ฒฉ

ex) stride=1 : 1์นธ์”ฉ ์ด๋™, stride=2 : 2์นธ์”ฉ ์ด๋™

 

Output

- ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ํฌ๊ธฐ, ํ•„ํ„ฐ ํฌ๊ธฐ, stride๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ 1+(์ž…๋ ฅ ํฌ๊ธฐ-ํ•„ํ„ฐ ํฌ๊ธฐ)/stride

- output feature map ์ฑ„๋„ ์ˆ˜ = convolution ํ•„ํ„ฐ ์ˆ˜

 

๐Ÿ“Œ ํ•ฉ์„ฑ๊ณฑ ์—ฐ์‚ฐ ์ˆ˜ํ–‰ ์‹œ ๊ฐ€์ค‘์น˜ ์ •ํ•˜๋Š” ๋ฒ•

โ‘  ๋žœ๋ค ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”

โ‘ก ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋กœ ํ•™์Šต

 

Padding

- ํ•ฉ์„ฑ๊ณฑ ์—ฐ์‚ฐ ์ˆ˜ํ–‰ ์ „ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ์ฃผ๋ณ€์„ ํŠน์ • ๊ฐ’์œผ๋กœ ์ฑ„์šฐ๋Š” ๊ฒƒ์œผ๋กœ, ํ•„ํ„ฐ์™€ stride์˜ ์ ์šฉ์œผ๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์†์‹ค๋˜๊ณ  ์ด๋ฏธ์ง€๊ฐ€ ์ถ•์†Œ๋˜๋Š” ์ผ์„ ๋ฐฉ์ง€

- valid : ํŒจ๋”ฉ ์ ์šฉ X

- same : stride=1 ๊ธฐ์ค€์œผ๋กœ ์ž…์ถœ๋ ฅ ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๋ฅผ ๊ฐ™๊ฒŒ ํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ

 

๐Ÿ“Œ padding์ด ์—†์„ ๊ฒฝ์šฐ ํ•ฉ์„ฑ๊ณฑ์ธต์„ ์ง€๋‚  ๋•Œ๋งˆ๋‹ค ์ด๋ฏธ์ง€๊ฐ€ ์ž‘์•„์ง€๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ๋ฅผ ๊นŠ๊ฒŒ ์Œ“์„ ์ˆ˜ ์—†์Œ

 

Pooling (sub-sampling)

Convolution์„ ๊ฑฐ์นœ ํ›„ ์ถœ๋ ฅ์œผ๋กœ ๋‚˜์˜จ activation map์—์„œ ํŠน์ • ์˜์—ญ์„ ํ˜•์„ฑํ•˜์—ฌ ํ•˜๋‚˜์˜ ๊ฐ’์„ ๋„์ถœํ•˜๋Š” ๊ณผ์ •

 

๐Ÿ“Œ pooling layer์˜ ํŠน์ง•

โ‘  ํ•™์Šต๋Œ€์ƒ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ์—†์Œ

โ‘ก Pooling ๋ ˆ์ด์–ด๋ฅผ ํ†ต๊ณผํ•˜๋ฉด ํ–‰๋ ฌ์˜ ํฌ๊ธฐ ๊ฐ์†Œ

โ‘ข Pooling ๋ ˆ์ด์–ด๋ฅผ ํ†ต๊ณผํ•ด๋„ ์ฑ„๋„ ์ˆ˜ ๋ณ€๊ฒฝ ์—†์Œ

์ฐธ๊ณ  ์‚ฌ์ดํŠธ : taewan.kim/

 

Max pooling

- ์œˆ๋„์šฐ์—์„œ ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ์„ ํƒํ•˜๋Š” ๋ฐฉ์‹

'Artificial Intelligence > Studying' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Hands-on] Ch17-9 (2) GAN ๋ชจ๋ธ  (0) 2021.08.02
[Hands-on] Ch17-9 (1) ์ƒ์„ฑ์  ์ ๋Œ€ ์‹ ๊ฒฝ๋ง  (0) 2021.07.16
Softmax regression  (0) 2021.01.05
Logistic regression  (0) 2020.12.29
Gradient descent  (1) 2020.11.14