2. Contents
• Deep Learning Image Classification Guidebook
• 최신 연구 동향 소개
• PyTorch CNN Architecture Open Source 소개
3. Deep Learning Image Classification Guidebook
AlexNet, VGG, Inception, ResNet, DenseNet 까지는 많이 들어봤는데…
DPN? MobileNet V1, V2, V3 ? Inception은 왜 또 버전이 4개야; 하…
논문이 너무 많은데 어떤 순서로 읽어야 되지? 영어 싫어ㅠ
4. Deep Learning Image Classification Guidebook
• Deep Learning Image Classification Guidebook
5. Deep Learning Image Classification Guidebook
• Deep Learning Image Classification Guidebook [1] 1998 ~ 2015년
• LeNet, AlexNet, ZFNet, VGG, GoogLeNet, ResNet
#아무 CNN 이나 일단 틀어~ #강의자료 들에서 많이 보던 애들
6. Deep Learning Image Classification Guidebook
• Deep Learning Image Classification Guidebook [2] 2016년
• PreActResNet, Inception-v2, Inception-v3, Inception-v4, Inception-ResNet, Stochastic Depth
ResNet, WRN
#Inception 시리즈 #ResNet 전성시대
9. Deep Learning Image Classification Guidebook
• Deep Learning Image Classification Guidebook [2] 2016년
• PreActResNet, Inception-v2, Inception-v3, Inception-v4, Inception-ResNet, Stochastic Depth
ResNet, WRN
균일하고 단순화 된 Architecture
10. Deep Learning Image Classification Guidebook
• Deep Learning Image Classification Guidebook [2] 2016년
• PreActResNet, Inception-v2, Inception-v3, Inception-v4, Inception-ResNet, Stochastic Depth
ResNet, WRN
확률적으로 Bypass 시켜버림. Regularization 효과, 더 많은 Layer 쌓게 해 줌.
11. Deep Learning Image Classification Guidebook
• Deep Learning Image Classification Guidebook [2] 2016년
• PreActResNet, Inception-v2, Inception-v3, Inception-v4, Inception-ResNet, Stochastic Depth
ResNet, WRN
Layer만 늘리지 말고 Filter 개수도 늘리는 건 어때?
12. Deep Learning Image Classification Guidebook
• Deep Learning Image Classification Guidebook [3] 2017년
• SqueezeNet, Xception, MobileNet, ResNext, PolyNet, PyramidNet, Residual Attention
Network, DenseNet, Dual Path Network (DPN)
#경량화 연구의 시작 #ResNet? DenseNet? 둘 다 써 ^^
13. Deep Learning Image Classification Guidebook
• Deep Learning Image Classification Guidebook [4] 2018년
• Squeeze-and-Excitation Network (SENet), ShuffleNet, CondenseNet, MobileNetV2,
ShuffleNetV2, NASNet, AmoebaNet, PNASNet, MnasNet
# 치열한 경량화 대결 # AutoML, NAS의 시대
14. 최신 연구 동향 소개
• 2019년 모두를 놀라게 한 구글의 2편의 논문
• 2019 ICML “EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks”
• 2019 arXiv “Self-training with Noisy Student improves ImageNet classification”
15. 최신 연구 동향 소개
• 2019년 모두를 놀라게 한 구글의 2편의 논문
• hoya012 블로그에 친절한 리뷰가 되어있답니다^^
#조회수 혜자 (블로그 내 1위!) #데이터 많으면 장땡이여~
16. 최신 연구 동향 소개
• “EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks” 2019 ICML
17. MnasNet
최신 연구 동향 소개
• “EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks” 2019 ICML
• 핵심: 괜찮은 작은 모델 만들어서 잘 키워서 쓰자!
AutoML(NAS) for mobile device
Compound
Scaling
width + depth + resolution을 동시에!
18. 최신 연구 동향 소개
• “Self-training with Noisy Student improves ImageNet classification” 2019 arXiv
19. EfficientNet
최신 연구 동향 소개
• “Self-training with Noisy Student improves ImageNet classification” 2019 arXiv
• 핵심: 무수히 많은 Unlabeled 데이터를 적절히 사용하면 좋지 않을까? 빅데이타?!
Semi
Supervised
Learning
3억장의 Unlabeled 데이터를 활용!
20. 최신 연구 동향 소개
• 2012 ~ 2019년 까지의 CNN Architecture 연구 흐름 정리
• 2012년 ~ 2016년: AlexNet, VGG, GoogLeNet, ResNet, DenseNet, SENet 등 사람이 이런저런 시도를 하
면서 그럴싸한 네트워크를 디자인
• 2016년 말 ~ 2018년: AutoML을 이용한 Neural Architecture Search(NAS)를 이용해서 최적의 구조를
찾고, 탐색에 필요한 시간을 획기적으로 줄이고 줄인 만큼 큰 구조를 만들어내는데 집중
• 2018년 ~ 2019년 초 중반: AutoML에서 찾은 구조를 기반으로 사람이 튜닝을 하며 성능 향상
• 2019년 초 중반: 수십 억장의 web-scale extra labeled images 등 무수히 많은 데이터를 잘 활용하여
ResNeXt로도 SOTA를 달성
• 2019년 말: labeled web-scale extra images 대신 web-scale extra unlabeled images을 써서 Self-Training
을 활용하여 SOTA 달성
21. 최신 연구 동향 소개
• “Designing Network Design Spaces” 리뷰
• 2020 CVPR에 발표된 FAIR의 논문
#RegNet #AnyNet #Design Space를 Design하는 것을 Design하는…
22. 최신 연구 동향 소개
• “Designing Network Design Spaces” 리뷰
• 최근 NAS 연구는 많은 관심을 받았고 실제로 우수한 성능들을 달성하였음
• 그러나 search의 결과는 하나의 셋팅에 최적화된(오버피팅된) 하나의 network임.
• 찾은 network가 새로운 셋팅에선 잘 동작하지 않는 경우가 대다수
어떤 셋팅에서도 대체로 다 잘되는 방법이 없을까?
좋은 Network를 설계하는 규칙 자체를 찾을 순 없을까?
23. 최신 연구 동향 소개
• “Designing Network Design Spaces” 리뷰
• 개별 network를 design하는 것 말고, network의 population들을 parameterize하는 design space를
design 해보자!
• stage, width, depth 등을 통해 design space를 만들어서 model 생성
• 해당 model에 대한 성능 평가 → design space 수정
• 2019 ICCV 선행 연구에서 사용한 design space 평가 방식 차용
• Design space 관련 자세한 내용은 아래 논문 참고!
Empirical Distribution Function(EDF)
→ 쉽게 말해 디자인 룰을 디자인 해보자!
24. 최신 연구 동향 소개
• “Designing Network Design Spaces” 리뷰
• AnyNet design space: Network(Stem + Body + Head) → Stage → Block
→ Standard residual bottleneck block with group conv 사용: AnyNetX
• block 개수 𝑑𝑖, block width 𝑤𝑖, bottleneck ratio, group width 등 degrees of freedom이 엄청 큼
• 𝑑𝑖 ≤ 16, 𝑤𝑖 ≤ 1024 𝑑𝑖𝑣𝑖𝑠𝑖𝑏𝑙𝑒 8, 𝑏𝑖 ∈ 1,2,4 , 𝑔𝑖 ∈ 1,2, … , 32 = (16 ∗ 128 ∗ 3 ∗ 6)4
≈ 1018
AnyNet AnyNetX
25. 최신 연구 동향 소개
• “Designing Network Design Spaces” 리뷰
26. 최신 연구 동향 소개
• “Designing Network Design Spaces” 리뷰
• AnyNetX 𝐵 : shared bottleneck ratio 𝑏𝑖 = 𝑏 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑠𝑡𝑎𝑔𝑒 𝑖 → b is not important
• AnyNetX 𝐶 : shared group width 𝑔𝑖 = 𝑔 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑠𝑡𝑎𝑔𝑒 𝑖 → 𝑔 > 1 is best
• AnyNetX 𝐷 : design principle of 𝑤𝑖+1 ≥ 𝑤𝑖→ good network have increasing widths
• AnyNetX 𝐸 : design principle of 𝑑𝑖+1 ≥ 𝑑𝑖→ good network have increasing depths
• OK, 좋은 경향을 찾았군.. 좀 더 줄여볼 순 없을까..? → RegNet
27. 최신 연구 동향 소개
• “Designing Network Design Spaces” 리뷰
• AnyNetX → RegNetX: introduce a linear parameterization for block widths
• To quantize 𝑢𝑗, introduce an additional parameter 𝑤 𝑚, 𝑠𝑗 and compute per-block widths 𝑤𝑗
Notation이 너무 많아서 헷갈린다.. ㅠ
→ 요약하면 width를 depth에 linear하게 증가시키도록 제한함!
→ AnyNet 𝑬 보다 잘 됨. 아무튼 잘 됨.
28. 최신 연구 동향 소개
• “Designing Network Design Spaces” 리뷰
• Optimal depth = 20 blocks (60 layers) → contrast to the common practice of using deeper models
• Optimal bottleneck ratio = 1 → no bottleneck is better… (bottleneck is commonly used in practice)
• Optimal width multiplier is around 2.5 → similar to the popular recipe of doubling widths across stages
• The remaining parameters: more FLOPS, higher value!
29. 최신 연구 동향 소개
• “Designing Network Design Spaces” 리뷰
• Alternate design choices
• Inverted bottleneck proposed in MobileNetV2
• Depthwise conv proposed in Xception
• Scaling input image resolution proposed in EfficientNet
• Squeeze-and-Excitation(SE) proposed in SENet
→ RegNetX + SE = RegNetY
30. 최신 연구 동향 소개
• “Designing Network Design Spaces” 리뷰
• Better than efficient-CNNs, ResNe(X)t, EfficientNet with similar FLOPS setting
31. PyTorch CNN Architecture Open Source 소개
• ImageNet Pretrained CNN 들을 쓰기 좋게 모아둔 Repo
• 현재 45가지의 CNN 제공, 그냥 가져와서 적절히 수정해서 사용 가능!
• 마지막 업데이트가 2년 전..
32. PyTorch CNN Architecture Open Source 소개
• “Designing Network Design Spaces” 논문에서 사용한 Code base (3월 중순 공개됨)
• 제공되는 CNN 종류는 많지 않음. 다만 전반적인 학습 파이프라인 제공
• RegNet-X, RegNet-Y, ResNet, ResNext, EfficientNet 의 FLOPS에 따른 ImageNet Pretrained Model
제공
33. PyTorch CNN Architecture Open Source 소개
• 요즘 제일 활발하게 업데이트 되는 Classification Model Zoo
• 사용하기 매우 편함!
• 핫한 연구들도 빠르게 포팅!
• 모델 뿐만 아니라 학습 기법들도
다양하게 다루고 있음!