[ํ˜ผ๊ณตํ•™์Šต๋‹จ 14๊ธฐ] DenseNet, MobileNet, EfficientNet

2025. 7. 27. 08:03ยท๐Ÿ“šbook

 

๊ธฐ๋ณธ ์ˆ™์ œ


๐Ÿ—œ๏ธDenseNet

Dense Convolutional Network

DenseNet์€ ๋ ˆ์ด์–ด๋งˆ๋‹ค ์ด์ „์˜ ๋ชจ๋“  ์ถœ๋ ฅ(feature map)์„ ๋‹ค์Œ ๋ ˆ์ด์–ด์˜ ์ž…๋ ฅ์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค. ์ฆ‰, ๊ฐ ๋ ˆ์ด์–ด๊ฐ€ ์•ž์„  ๋ชจ๋“  ๋ ˆ์ด์–ด์˜ ์ถœ๋ ฅ์„ concatํ•ด์„œ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›๋Š”๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํŠน์ง•์˜ ์žฌ์‚ฌ์šฉ์ด ์ผ์–ด๋‚˜๊ณ , ๊ธฐ์šธ๊ธฐ ์†Œ์‹ค ๋ฌธ์ œ๋ฅผ ์ค„์ด๋ฉฐ, ๋งค์šฐ ์ ์€ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ๋„ ๋†’์€ ์„ฑ๋Šฅ์„ ๋‚ผ ์ˆ˜ ์žˆ๋‹ค.

 

๊ตฌ์กฐ ํ•ต์‹ฌ

  • Dense Block ๋‚ด๋ถ€์˜ ๋ ˆ์ด์–ด๋“ค์€ ์„œ๋กœ ์ด˜์ด˜ํ•˜๊ฒŒ ์—ฐ๊ฒฐ๋œ๋‹ค(dense connectivity)
  • Transition Layer๋กœ ๋ธ”๋ก ๊ฐ„ ์—ฐ๊ฒฐ, ์ฑ„๋„ ์ˆ˜ ์ค„์ž„(BN -> 1x1 Conv -> 2x2 AvgPool)
  • ๊ฐ ๋ ˆ์ด์–ด๋Š” BatchNorm -> ReLU -> Conv(3x3) ์ˆœ์„œ

DenseNet์€ ํŒŒ๋ผ๋ฏธํ„ฐ ์ˆ˜๊ฐ€ ์ ๊ณ , ํ•™์Šต์ด ๋น ๋ฅด๊ณ  ์•ˆ์ •์ ์ด๋‹ค. ์ •๋ณด ํ๋ฆ„์ด ๊ฐ•ํ™”๋˜์–ด ์ž‘์€ ๋„คํŠธ์›Œํฌ์—์„œ๋„ ๋†’์€ ์ •ํ™•๋„๋ฅผ ๋‚ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.


๐Ÿ“ฑMobileNet

MobileNet์€ ๊ฒฝ๋Ÿ‰ํ™”๋ฅผ ์œ„ํ•ด Depthwise Separable Convolution์„ ์‚ฌ์šฉํ•œ๋‹ค. ์ผ๋ฐ˜์ ์ธ Conv ์—ฐ์‚ฐ์„ ๋‘ ๋‹จ๊ณ„๋กœ ๋ถ„๋ฆฌํ•ด์„œ ํšจ์œจ์„ ๊ทน๋Œ€ํ™”ํ•œ ๊ฒƒ.

 

๊ตฌ์กฐ ํ•ต์‹ฌ

  • Depthwise Conv
    • ์ฑ„๋„๋ณ„๋กœ ๊ฐ๊ฐ 1๊ฐœ์˜ ํ•„ํ„ฐ๋งŒ ์‚ฌ์šฉํ•˜๋Š” ๊ณต๊ฐ„ ํ•„ํ„ฐ๋ง
    • ๊ณ„์‚ฐ๋Ÿ‰์ด 1/N ์ˆ˜์ค€์œผ๋กœ ๊ฐ์†Œ
  • Poinwise Conv(1x1 Conv)
    • ์ฑ„๋„ ๊ฐ„ ์ •๋ณด๋ฅผ ์„ž๊ธฐ ์œ„ํ•œ 1x1 Convolution
    • ํ•„ํ„ฐ ์ˆ˜๋ฅผ ์กฐ์ ˆํ•˜๋ฉฐ ๋„คํŠธ์›Œํฌ์˜ ์ฐจ์›์„ ๋ณ€ํ™”์‹œํ‚ด

์ด ๋‘ ๋‹จ๊ณ„๋ฅผ ๋ฐ˜๋ณตํ•˜๋ฉฐ ํŠน์ง•์„ ์ถ”์ถœํ•œ๋‹ค.

 

MobileNet์€ ์—ฐ์‚ฐ๋Ÿ‰๊ณผ ํŒŒ๋ผ๋ฏธํ„ฐ ์ˆ˜๊ฐ€ ๋Œ€ํญ ๊ฐ์†Œํ•˜์—ฌ, ๋ชจ๋ฐ”์ผ ํ™˜๊ฒฝ์—์„œ๋„ ๋น ๋ฅธ ์ถ”๋ก ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์ •ํ™•๋„๋ฅผ ํฌ๊ฒŒ ์žƒ์ง€ ์•Š์œผ๋ฉด์„œ๋„ ํšจ์œจ์ ์ธ ๋ชจ๋ธ์ด๋‹ค.


โœ…EfficientNet

EfficientNet์€ ๋ชจ๋ธ์„ ๋‹จ์ˆœํžˆ ๊นŠ๊ฒŒ, ๋„“๊ฒŒ, ํฌ๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ, ์„ธ ๊ฐ€์ง€๋ฅผ ๊ท ํ˜• ์žˆ๊ฒŒ ์กฐ์ •(Compound Scailing)ํ•˜๋Š” ๊ตฌ์กฐ์ด๋‹ค.

 

๊ตฌ์กฐ ํ•ต์‹ฌ

  • ๊ธฐ๋ณธ ๋ฒ ์ด์Šค ๋ชจ๋ธ์€ MBConv ๋ธ”๋ก(MobileNet์˜ inverted residual block + SE block)์„ ์‚ฌ์šฉ
  • ์ดํ›„ B1 - B7์€ compound coefficient๋ฅผ ์ ์šฉํ•˜์—ฌ scailing

ํŠน์ง• ๊ตฌ์„ฑ

  • Inverted Residual Block
  • SE(squeeze-and-Excitation) Block
  • Swish Activation

EfficientNet์€ ๋™์ผํ•œ ์ž์›์œผ๋กœ๋„ ๋” ๋†’์€ ์ •ํ™•๋„๋ฅผ ๊ฐ€์ง€๋ฉฐ, ๊ฒฝ๋Ÿ‰์„ฑ๊ณผ ์„ฑ๋Šฅ์„ ๋™์‹œ์— ๋‹ฌ์„ฑํ•œ ๋ชจ๋ธ์ด๋‹ค. Transfer Learning์—๋„ ํƒ์›”ํ•œ ๋ชจ๋ธ

 

Inverted Residual Block (์—ญ์ž”์ฐจ ๋ธ”๋ก)

์›๋ž˜ ResNet์—์„œ๋Š” ์ž…๋ ฅ->์ž‘์€ ์ฐจ์› ->์ฒ˜๋ฆฌ->๋˜๋Œ๋ฆฌ๋Š” ๋ฐฉ์‹์ด์—ˆ์ง€๋งŒ, ์—ญ์ž”์ฐจ ๋ธ”๋ก์€ ๊ทธ ๋ฐ˜๋Œ€๋กœ ์ž‘๋™ํ•œ๋‹ค.

 

๊ตฌ์กฐ ํ•ต์‹ฌ

  • ๋จผ์ € ์ฑ„๋„ ์ˆ˜๋ฅผ ํ™•์žฅํ•˜๊ณ (1x1 Conv)
  • Depthwise Conv๋ฅผ ์ ์šฉ(์ฑ„๋„๋ณ„ ํ•„ํ„ฐ)
  • ๋‹ค์‹œ ์ฑ„๋„ ์ˆ˜ ์ถ•์†Œ(1x1 Conv)
  • ์ž…๋ ฅ๊ณผ ์ถœ๋ ฅ์„ Add(๋‹จ, stride๊ฐ€ 1์ผ ๋•Œ skip ์—ฐ๊ฒฐ)

MobileNetV2๋ถ€ํ„ฐ MobileNetV3, EfficientNet์—์„œ ํ•ต์‹ฌ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ์‚ฌ์šฉ๋œ๋‹ค.

 

SE Block

ํŠน์ง•๋งต์˜ ์–ด๋–ค ์ฑ„๋„์ด ์ค‘์š”ํ•œ๊ฐ€๋ฅผ ํ•™์Šตํ•˜๋Š” ๊ตฌ์กฐ์ด๋‹ค.

 

๋™์ž‘ ์›๋ฆฌ

  • squeeze: global average pooling์œผ๋กœ ์ฑ„๋„๋‹น ํŠน์ง•์„ 1๊ฐœ์˜ ๊ฐ’์œผ๋กœ ์••์ถ•
  • Excitation: ์ž‘์€ FC-layer์„ ๋‘ ๋ฒˆ ํ†ต๊ณผ์‹œํ‚ค๋ฉฐ, ์ค‘์š”๋„๋ฅผ ํ•™์Šต
  • Scale: ์›๋ž˜ ํŠน์ง•๋งต ์ฑ„๋„๋งˆ๋‹ค ์ค‘์š”๋„๋ฅผ ๊ณฑํ•ด์คŒ(์ฑ„๋„-wise attention)

์ค‘์š” ํŠน์ง•์— ์ง‘์ค‘ํ•˜๊ฒŒ ํ•œ๋‹ค. ๊ณ„์‚ฐ๋Ÿ‰์€ ์ ์œผ๋ฉด์„œ๋„ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒํ•  ์ˆ˜ ์žˆ๊ณ , ์—ฌ๋Ÿฌ ๋ชจ๋ธ์— ์‰ฝ๊ฒŒ ๊ฒฐํ•ฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

Swish ํ•จ์ˆ˜

ReLU๋ณด๋‹ค ๋ถ€๋“œ๋Ÿฝ๊ณ , ๋น„์„ ํ˜•์„ฑ์ด ๋” ๋†’๋‹ค.

Swish(x) = x * sigmoid(x)

 

ํŠน์ง•

  • x๊ฐ€ ์ž‘์œผ๋ฉด ์Œ์ˆ˜ ๊ฐ’์„ ํ˜€์šฉํ•˜์—ฌ ์ •๋ณด ์†์‹ค์ด ์ค„์–ด๋“ฆ
  • ๋ฏธ๋ถ„ ๊ฐ€๋Šฅํ•˜๊ณ  gradient ํ๋ฆ„์ด ์ž์—ฐ์Šค๋Ÿฌ์›€
  • ReLU๋ณด๋‹ค ์ผ๋ฐ˜ํ™” ์„ฑ๋Šฅ์ด ๋” ์ข‹๋‹ค๊ณ  ์•Œ๋ ค์ง
  • EfficientNet์˜ ์ฃผ์š” ๊ตฌ์„ฑ ์š”์†Œ

'๐Ÿ“šbook' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Luvit ํ•œ๋‹ฌ ์Šคํ„ฐ๋””] ์ƒˆ๋กœ์šด ์›น ๊ฐœ๋ฐœ์˜ ์‹œ์ž‘ ์Šค๋ฒจํŠธ #4  (4) 2025.07.27
[npm deep dive] ์™„๋… ์ฑŒ๋ฆฐ์ง€-์™„๋… ๋ชปํ•œ ํ›„๊ธฐ  (12) 2025.07.23
[Luvit ํ•œ๋‹ฌ ์Šคํ„ฐ๋””] ์ƒˆ๋กœ์šด ์›น ๊ฐœ๋ฐœ์˜ ์‹œ์ž‘ ์Šค๋ฒจํŠธ #3  (1) 2025.07.20
[ํ˜ผ๊ณตํ•™์Šต๋‹จ 14๊ธฐ] ๊ฐ•์•„์ง€ ๊ณ ์–‘์ด ์‚ฌ์ง„ ๋ถ„๋ฅ˜ ์‹ค์Šต(AlexNet, VGGNet, ResNet)  (6) 2025.07.20
[ํ˜ผ๊ณตํ•™์Šต๋‹จ 14๊ธฐ] LeNet ์‹ค์Šต-Fashoin MNIST ๋ถ„๋ฅ˜ ์‹ค์Šต  (3) 2025.07.13
'๐Ÿ“šbook' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [Luvit ํ•œ๋‹ฌ ์Šคํ„ฐ๋””] ์ƒˆ๋กœ์šด ์›น ๊ฐœ๋ฐœ์˜ ์‹œ์ž‘ ์Šค๋ฒจํŠธ #4
  • [npm deep dive] ์™„๋… ์ฑŒ๋ฆฐ์ง€-์™„๋… ๋ชปํ•œ ํ›„๊ธฐ
  • [Luvit ํ•œ๋‹ฌ ์Šคํ„ฐ๋””] ์ƒˆ๋กœ์šด ์›น ๊ฐœ๋ฐœ์˜ ์‹œ์ž‘ ์Šค๋ฒจํŠธ #3
  • [ํ˜ผ๊ณตํ•™์Šต๋‹จ 14๊ธฐ] ๊ฐ•์•„์ง€ ๊ณ ์–‘์ด ์‚ฌ์ง„ ๋ถ„๋ฅ˜ ์‹ค์Šต(AlexNet, VGGNet, ResNet)
ํ‚ํ‚์ž‰
ํ‚ํ‚์ž‰
๋ฟŒ๋ก ํŠธ ๊ฐœ๋ฐœ์ž(์ง€๋ง์ƒ)์˜ ํ’€์Šคํƒ ๊ฐœ๋ฐœ์ž ๋„์ „๊ธฐ
  • ํ‚ํ‚์ž‰
    monicx.dev
    ํ‚ํ‚์ž‰
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (173)
      • ๐Ÿ–ฅ๏ธdevelop (2)
        • Github (2)
        • Frontend (4)
        • Backend (5)
        • Mobile (0)
        • CS (0)
        • Three.js (0)
        • Docker (2)
      • ๐Ÿ“šbook (9)
        • npm Deep Dive (4)
      • ๐Ÿ“•review (33)
        • ์ฑ… (24)
        • ํ–‰์‚ฌ (1)
        • ํšŒ๊ณ  (2)
      • โญproject (5)
        • petiary (2)
        • ๆšŽ่ฉ  (0)
        • ์ธํ„ด (2)
      • ๐Ÿ˜ถ‍๐ŸŒซ๏ธalgorithm (0)
      • ๐Ÿ’กtips (1)
      • ๐Ÿ˜Ždaily (10)
      • ๐Ÿ•น๏ธgame (0)
      • ๐Ÿ•Š๏ธํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฐ๋ธŒ์ฝ”์Šค (87)
        • TIL (61)
        • ํ”„๋กœ์ ํŠธ (18)
        • ํšŒ๊ณ  (8)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
  • ๋งํฌ

    • ๋ฒจ๋กœ๊ทธ
  • ์ธ๊ธฐ ๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
ํ‚ํ‚์ž‰
[ํ˜ผ๊ณตํ•™์Šต๋‹จ 14๊ธฐ] DenseNet, MobileNet, EfficientNet
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”