Computer-Science

CNN (Convolutional Neural Network)

Basic Operations in CNN

Fully-Connected (FC) Layer

Convolutional Layer

์—ญํ•  : Rawdata๋ฅผ ์‘์ถ•์‹œ์ผœ์„œ ๋งŽ์€ ์ •๋ณด๋ฅผ ๋‹ด๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•œ ๋ชฉ์ 

Padding & Stride

Output Size of Convolutional Layer

Output Size of Zero Padding

Examples (1)

Result :

Examples (2)

Result :

1x1 Convolution์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 

Pooling Layer

Max Pooling

overlapping ๋˜์ง€ ์•Š๊ธฐ ์œ„ํ•ด, ๋ณดํ†ต filter ํฌ๊ธฐ์™€ stride๋ฅผ ๊ฐ™๋„๋ก ํ•ด์ค€๋‹ค.

Global Average Pooling (GAP)

AlexNet

VGGNet

Small filters, Deeper networks & Fewer parameters

What is the effective receptive field of three 3x3 conv (stride 1) layers?


VGGNet์ด 3x3 ํฌ๊ธฐ์˜ ์ž‘์€ ํ•„ํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  (Why use smaller filters?)

  1. 7x7 ํ•„ํ„ฐ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค 3x3 ํ•„ํ„ฐ๋ฅผ ์„ธ ๋ฒˆ ์‚ฌ์šฉํ•˜๋ฉด activation function์„ ์—ฌ๋Ÿฌ๋ฒˆ ๊ฑฐ์ณ์ง€๋ฉด์„œ ๋” non-linear ํ•ด์ง„๋‹ค.
  2. ํŒŒ๋ผ๋ฏธํ„ฐ ์ˆ˜๋ฅผ ์ค„์ด๊ณ  Layer๋ฅผ ๋‹ค์ธต ์Œ“์•„์„œ ๋ชจ๋ธ์˜ ์ „์ฒด Depth๋ฅผ ๊นŠ๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ์ด๋‹ค.

GoogLeNet (Inception module)

Deeper networks, with computational efficiency

Inception Module

ResNet

Very deep networks using residual connections

References

  1. ์ธ๊ณต์ง€๋Šฅ ์‘์šฉ (ICE4104), ์ธํ•˜๋Œ€ํ•™๊ต ์ •๋ณดํ†ต์‹ ๊ณตํ•™๊ณผ ํ™์„ฑ์€ ๊ต์ˆ˜๋‹˜
  2. [[DL] 1x1 convolution์€ ๋ฌด์—‡์ด๊ณ  ์™œ ์‚ฌ์šฉํ• ๊นŒ? Sociological Imagination](https://euneestella.github.io/research/2021-10-14-why-we-use-1x1-convolution-at-deep-learning/)
  3. ํ•ฉ์„ฑ๊ณฑ ์‹ ๊ฒฝ๋ง ๊ธฐ์ดˆ 5(VGGNet, Very Deep Convolutional Network)
  4. Global Average Pooling ์ด๋ž€ - gaussian37
  5. GAP (Global Average Pooling) : ์ „์—ญ ํ‰๊ท  ํ’€๋ง
  6. [๋”ฅ๋Ÿฌ๋‹] GAP(Global Average Pooling)