๐Ÿง‘๐Ÿป‍๐Ÿ’ป์šฉ์–ด ์ •๋ฆฌ
 
CNN

 

CNN

  • ์ด๋ฏธ์ง€ ๋ฟ ์•„๋‹ˆ๋ผ ์ด๋Ÿฌํ•œ ๊ตฌ์กฐ ์ž์ฒด๋ฅผ ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ์— ์ ์šฉํ–ˆ์„ ๋•Œ๋„ ๊ต‰์žฅํžˆ ์ข‹์€ ํšจ๊ณผ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • feature๋ฅผ ์Šค์Šค๋กœ ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์„ ๊ฐ–์ถ˜ ์‹ฌ์ธต ์‹ ๊ฒฝ๋ง ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค.
    • Classification
    • Classification + Localization
    • Object Detection
    • Instance Segmentation
  • ์œ„์™€ ๊ฐ™์€ ์ˆ˜ํ–‰์ด ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค.
  • ์ด๋ฏธ์ง€๋Š” 3์ฐจ์›์˜ tensor๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค.
    • ๋ชจ๋“  pixel ํ•˜๋‚˜์˜ ์ž…๋ ฅ ๋…ธ๋“œ๋กœ ๊ฐ„์ฃผํ•˜๊ณ  ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐ€์ค‘์น˜๋กœ ์—ฐ๊ฒฐํ•˜๋ฉด input layer์™€ first hidden layer ์‚ฌ์ด ๋งŽ์€ weights๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ํ•™์Šต๋Ÿ‰์ด ๊ธฐํ•˜๊ธ‰์ˆ˜์ ์œผ๋กœ ์ฆ๊ฐ€ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
    • ๊ทธ๋ž˜์„œ ์›๋ž˜ ํ•˜๋˜ ๋Œ€๋กœ vector data๋ฅผ ํ‘œํ˜„ํ•˜๋˜ ๋ฐฉ์‹๋Œ€๋กœ ์ด๋ฏธ์ง€ data๋ฅผ neural network์—๋Š” ์ง‘์–ด ๋„ฃ์–ด์„œ ์—ฐ์‚ฐ์„ ํ•  ์ˆ˜๊ฐ€ ์—†๋Š” ์ƒํ™ฉ์ž…๋‹ˆ๋‹ค.
    • ๊ทธ๋ž˜์„œ Convolution ์—ฐ์‚ฐ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
    • image convolution
      • ํŠน์ • ์†์„ฑ์„ ํƒ์ง€ํ•˜๋Š”๋ฐ ์‚ฌ์šฉํ•˜๋Š” matrix
        • edge detection
        • ์ด๋ฏธ์ง€์˜ ํŠน์„ฑ์„ ํ™œ์šฉํ•˜๋Š” filter
    • CNN์€ filter๋ฅผ data๋ฅผ ํ†ตํ•ด ์Šค์Šค๋กœ ํ•™์Šต ์‹œํ‚ค๋Š” ๋Šฅ๋ ฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
      • end-to-end ํ•™์Šต
    • ์ธ์ ‘ pixel ๊ฐ„์—๋Š” ์ƒ๋‹นํžˆ ๋†’์€ ์ƒ๊ด€์„ฑ์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค.
    • ๊ทธ๋Ÿฌ๋‚˜ ์ด๋ฏธ์ง€๊ฐ€ ์–ด๋””์„œ ๋‚˜ํƒ€๋‚ ์ง€๋Š” ๋ชจ๋ฅด๋Š” ๊ฒƒ์ด  feature invariance์ž…๋‹ˆ๋‹ค. CNN์—์„œ ์ด ํŠน์„ฑ์„ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค.
    • sparse connection์€ ์ธ์ ‘ํ•œ ์˜์—ญ๋งŒ์„ ์ด์šฉํ•˜์—ฌ feature๋ฅผ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค.
    • localํ•˜๊ฒŒ correlation์ด ๋†’์€ ์˜์—ญ๋งŒ ๋ณด์•„์„œ invariant feature๋ฅผ ์ถ”์ถœํ•œ๋‹ค. ์ด๋ฅผ ์ˆ˜ํ–‰ ์‹œ shared weight๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
      • ์œ„์น˜๊ฐ€ ๋‹ฌ๋ผ๋„ ๋™์ผํ•œ ๊ฐ€์ค‘์น˜๋ฅผ ๊ณ„์†ํ•ด์„œ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

 

CNN ์—ฐ์‚ฐ

Convolution ์—ฐ์‚ฐ

  • ํŠน์ • ์˜์—ญ์„ ์ถ”์ถœํ•˜๊ธฐ ์œ„ํ•œ filter๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • input์— ๋Œ€ํ•ด ์ด filter๋ฅผ ์–‘,์˜† ์ƒํ•˜์ขŒ์šฐ ๋‹ค๋‹ˆ๋ฉด์„œ ์—ฐ์‚ฐ์„ ํ†ตํ•ด ์–ด๋–ค ๊ฒฐ๊ณผ ๊ฐ’์„ ๋„์ถœํ•˜๋Š” ๊ฒŒ ๋ฐ”๋กœ Convolution ์—ฐ์‚ฐ์ž…๋‹ˆ๋‹ค.
  • ์ด๋ฏธ์ง€ data๋Š” 3์ฐจ์›์˜ tensor์ด๊ธฐ ๋•Œ๋ฌธ์— filter๋„ ์—ญ์‹œ 3์ฐจ์›์ž…๋‹ˆ๋‹ค.
  • 3 by 3์˜ filter๋ฅผ ๊ฑธ์—ˆ๋‹ค๋ฉด, depth๊ฐ€ ๋Œ€์ƒ์ด ๋˜๋Š” ๊ฐ์ฒด์™€ ๋™์ผํ•œ depth๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.
  • filter๊ฐ€ ๋ช‡ ๊ฐœ๊ฐ€ ํ•„์š”ํ•œ์ง€ ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. detection ํ•ด์•ผํ•˜๋Š” ๋Œ€์ƒ์ด ๋งŽ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
  • ์ด filter์˜ ์ˆ˜๋ฅผ hyper parameter๋กœ์„œ ์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
  • input์˜ ๊ฐœ์ˆ˜์™€ D in์€ ๋™์ผํ•˜๊ณ  filter์˜ ๊ฐœ์ˆ˜๋Š” D out๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.
  • ๊ทธ๋ž˜์„œ filter์˜ ๊ฐœ์ˆ˜์™€ ๋™์ผํ•˜๊ฒŒ D out๊ฐœ์˜ ๊ฒฐ๊ณผ๋ฌผ์ด ๋‚˜์˜ต๋‹ˆ๋‹ค.
  • pixel ํ•˜๋‚˜์”ฉ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ๋Ÿฌ ์นธ์„ ํ•œ ๋ฒˆ์— ์˜ฎ๊ฒจ๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ด๋ฅผ strideํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.
      • ํ•œ ์นธ์”ฉ ์›€์ง์ด๋ฉด stride 1, ๋‘ ์นธ์”ฉ ์›€์ง์ด๋ฉด stride 2์ž…๋‹ˆ๋‹ค.
    • ๊ฐ€์šด๋ฐ ์žˆ๋Š” ๊ฒƒ๋“ค์€ filter์˜ ์˜ํ–ฅ์„ ๊ฐ€์žฅ์ž๋ฆฌ ๋ณด๋‹ค ์ƒ๋Œ€์ ์œผ๋กœ ๋งŽ์ด ๋ฐ›์Šต๋‹ˆ๋‹ค.
      • ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด padding์„ ํ•ฉ๋‹ˆ๋‹ค.
      • ์›๋ณธ data์˜ ํ…Œ๋‘๋ฆฌ์— pixel์„ ํ•œ ์นธ์”ฉ ๋‘˜๋Ÿฌ์„œ ์ „๋ถ€ 0์˜ ๊ฐ’์„ ์ค๋‹ˆ๋‹ค.
      • ๊ทธ๋ž˜์„œ ๋‚˜๋ฆ„ filter๋ฅผ ๋” ์—ฌ๋Ÿฌ ๋ฒˆ ์ ์šฉ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
    • stride์™€ padding์„ ์–ผ๋งˆ๋‚˜ ์ฃผ๋ƒ์— ๋”ฐ๋ผ Output size๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.
  • activation ์—ฐ์‚ฐ
    • ๋ณต์žกํ•œ ์„ ํ˜•์กฐํ•ฉ์„ ๋น„์„ ํ˜• ๋ณ€ํ™˜์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
    • ReLU
      • 0๋ณด๋‹ค ํฐ ๊ฐ’์€ ์ž๊ธฐ์ž์‹ , 0๋ณด๋‹ค ์ž‘์€ ๊ฐ’์€ 0์œผ๋กœ returnํ•ฉ๋‹ˆ๋‹ค.
      • ์‚ฌ๋žŒ์˜ ๊ท€๋Š” ๋ชจ๋‘ ์–‘์ˆ˜๋กœ ๋“ค์–ด์˜ค๋Š” ์ •๋ณด๋ฅผ ์ฑ„ํƒํ•ฉ๋‹ˆ๋‹ค. ์Œ์ˆ˜๋Š” ์—†๊ธฐ ๋•Œ๋ฌธ์— 0์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
    • Pooling
      • ํฐ data๊ฐ€ ์ƒ์„ฑ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๊ณ ์ฐจ์›์˜ tensor๋ฅผ ๋ณด๋‹ค compactํ•˜๊ฒŒ ์ถ•์•ฝํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
      • ์ผ์ • ์˜์—ญ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋Œ€ํ‘ฏ๊ฐ’์„ ์ด์šฉํ•ด์„œ ๊ฐ€์ง€๊ณ  ์˜ต๋‹ˆ๋‹ค.
      • max pooling
        • ์ตœ๋Œ“๊ฐ’์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.
        • ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
      • average pooling
        • ์ „๋ถ€ ํ‰๊ท  ๋‚ด์–ด ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.
        • strided convolution์˜ ํŠน์ˆ˜ํ•œ ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค.
        • ์ผ์ • ํšŸ์ˆ˜ ์ด์ƒ ์ง€๋‚˜๋ฉด tensor ํ˜•ํƒœ๋กœ ๊ตฌ์„ฑ๋œ data๋ฅผ ์ผ์ฐจ์›์œผ๋กœ ํŽผ์ณ flattenํ•˜๋Š” ๊ณผ์ •์„ ๊ฑฐ์นฉ๋‹ˆ๋‹ค.
          • pooling์„ ํ•ด๋„ ๊ตฌ์กฐ๋Š” 3์ฐจ์› tensor ํ˜•ํƒœ๊ฐ€ ๋˜๋Š”๋ฐ, ์ด๋ฅผ 1์ฐจ์›์˜ vector๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค.
          • ํŒ๋ณ„์„ ์œ„ํ•ด์„œ๋Š” vector ํ˜•ํƒœ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • AlexNet
    • ์—ฐ์‚ฐ๋Ÿ‰ ๋ถ€์กฑ์œผ๋กœ ์ธํ•œ resize ํ•„์š”.
    • 224 x 224 ํฌ๊ธฐ์˜ ์ด๋ฏธ์ง€ input์œผ๋กœ ์‚ฌ์šฉ
    • ์ดˆ๊ธฐ ๋‹จ๊ณ„์— ํฐ ํ•„ํ„ฐ์™€ ์‚ฌ์ด์ฆˆ์™€ stride ์‚ฌ์šฉ
    • ์ƒ์œ„ Layer๋กœ ๊ฐˆ์ˆ˜๋ก ์ž‘์€ ํ•„ํ„ฐ ์‚ฌ์ด์ฆˆ์™€ stride ์‚ฌ์šฉ
    • 2๊ฐœ์˜ fully connected layer ์กด์žฌ
    • ํŒŒ๋ผ๋ฏธํ„ฐ ์ด์ˆ˜ : 60 million

 

 

 

  • VGGNet
    • AlexNet์— ๋น„ํ•ด ๋‹จ์ˆœํ•˜์ง€๋งŒ ๊นŠ์€ ๊ตฌ์กฐ
    • 3 by 3 convolution with stride๋ฅผ ๊ธฐ๋ณธ ์—ฐ์‚ฐ์œผ๋กœ ํ•˜๋ฉฐ ์ค‘๊ฐ„ ์ค‘๊ฐ„ 2 by 2 max pooling ์ˆ˜ํ–‰
    • ํŒŒ๋ผ๋ฏธํ„ฐ ์ด ์ˆ˜ 138 million

 

 

Time-Series Data ๊ณผ์ • for CNN

 

  • ๋ชจ๋“  ๋ณ€์ˆ˜๋Š” ๋™์ผํ•œ ์ฃผ๊ธฐ๋กœ ์ˆ˜์ง‘๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
    • Classification
      • ํŠน์ • ๊ธฐ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ํ•˜๊ณ  ํŠน์ • ๋ฒ”์ฃผ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ถ„๋ฅ˜ ๋ชจ๋ธ (์ œํ’ˆ ๊ฐ€๊ณต)
    • Regression
      • ํŠน์ • ๊ธฐ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ํ•˜๊ณ   ํŠน์ • ์ˆ˜์น˜๋ฅผ ์ถœ๋ ฅ์œผ๋กœ ํ•˜๋Š” ํšŒ๊ท€ ๋ชจ๋ธ (ํ’ˆ์งˆ ์ง€ํ‘œ)
      • ์ผ๋ถ€ ๊ธฐ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ํ•˜์—ฌ ์ดํ›„ ๊ธฐ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์˜ˆ์ธก
    • Anomaly Detection
      • ์ผ๋ถ€ ๊ธฐ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ํ•˜์—ฌ ํ•ด๋‹น ์ƒํ™ฉ์˜ ์ •์ƒ/๋น„์ •์ƒ ์—ฌ๋ถ€๋ฅผ ํƒ์ง€
  • ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋Š” ์ด๋ฏธ์ง€ ํ…Œ์ดํ„ฐ์™€๋Š” ๋‹ฌ๋ฆฌ ๋ณ€์ˆ˜๋“ค ์‚ฌ์ด์˜ Spatial Correlation์ด ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ์‹œ๊ฐ„์ถ•์œผ๋กœ ์›€์ง์ด๋Š” Convolution์€ ์˜๋ฏธ๊ฐ€ ์žˆ์œผ๋‚˜, ๋ณ€์ˆ˜์ถ•์œผ๋กœ ์›€์ง์ด๋Š” Convolution์€ ์˜๋ฏธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
  • 2-D Convolution์€ ์‹œ๊ฐ„๊ณผ ๋ณ€์ˆ˜ ๋‘ ์ถ•์„ ๋ชจ๋‘ Convolution ์—ฐ์‚ฐ์„ ํ†ตํ•ด ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.
    • 1-D Convolution vs. 2-D Convolution

 

 

 

  • Dilated Convolution
    • ๋ณด๋‹ค ๊ธด ๊ธธ์ด์˜ ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.
      • standard convolution์€ ํ•ญ์ƒ ์ธ์ ‘ํ•œ ์—ฐ์†๋œ ์‹œ์ ์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ํ•ฉ์„ฑ๊ณฑ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
    • ํ•ฉ์„ฑ๊ณฑ์—ฐ์‚ฐ์„ ๋„์—„๋„์—„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

 

 

  • ํ•ฉ์„ฑ๊ณฑ ์‹ ๊ฒฝ๋ง์„ ํ™œ์šฉํ•œ ์‹œ๊ณ„์—ด ํšŒ๊ท€
    • ํ•ฉ์„ฑ๊ณฑ ์—ฐ์‚ฐ์€ Feature Invariance์™€ Spatial Correlation์„ ๋ฐ˜์˜ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ์—ฐ์‚ฐ์ž…๋‹ˆ๋‹ค.
    • ์ด๋ฏธ์ง€๋ฅผ ์ฒ˜๋ฆฌํ•  ๋•Œ๋Š” ์ •๋ฐฉํ˜•์˜ ํ•„ํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€๋กœ ~ ์„ธ๋กœ ๋‘ ๋ฐฉํ–ฅ์œผ๋กœ ์›€์ง์ด๋Š” 2d ํ•ฉ์„ฑ๊ณฑ ์—ฐ์‚ฐ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
    • ๋ฐ˜๋ฉด, ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ๋ณ€์ˆ˜์ถ•์œผ๋กœ ํ•„ํ„ฐ๊ฐ€ ์ด๋™ํ•˜๋Š” ๊ฒƒ์€ ์˜๋ฏธ๊ฐ€ ์—†์œผ๋ฏ€๋กœ ํ•„ํ„ฐ์˜ ํ•œ ์ชฝ ํฌ๊ธฐ๋Š” ๋ณ€์ˆ˜์˜ ๊ฐœ์ˆ˜์™€ ๊ฐ™๊ฒŒ ์ •์˜ํ•œ ๋’ค ์‹œ๊ฐ„ ์ถ•์œผ๋กœ๋งŒ ์›€์ง์ด๋Š” 1d ํ•ฉ์„ฑ๊ณฑ ์—ฐ์‚ฐ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
    • ํ•ฉ์„ฑ๊ณฑ์—ฐ์‚ฐ์€ ํ•œ ๋ ˆ์ด์–ด์—์„œ๋งŒ ์ ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋ฐ˜๋ณต์ ์œผ๋กœ ์Œ“์•„์˜ฌ๋ ค์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ๋ณด๋‹ค ๊ธด ๊ธธ์ด์˜ ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ๋ฒˆ์— ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Standard Convolution ๋ณด๋‹ค๋Š” ์ค‘๊ฐ„ ์ง€์ ์„ ์ƒ๋žตํ•˜๋Š” Dilated Convolution์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ณด๋‹ค ํšจ์œจ์ ์ธ ์ •๋ณด์˜ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค.

 

BELATED ARTICLES

more