BlockDrop [Kor]

Wu et al. / BlockDrop - Dynamic Inference Paths in Residual Networks / CVPR 2018

1. Problem definition

졜근 λ”₯λŸ¬λ‹ λͺ¨λΈλ“€μ€ 정확도가 크게 ν–₯μƒλ˜λ©° λ‹€μ–‘ν•œ datasetμ—μ„œ 큰 μ„±κ³Όλ₯Ό μ΄λ£¨μ—ˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μ΄λŸ¬ν•œ λͺ¨λΈλ“€μ€ 자율 μ£Όν–‰, λͺ¨λ°”일 μ‹€μ‹œκ°„ μƒν˜Έμž‘μš©κ³Ό 같은 μ‹€μ œ ν™˜κ²½μ—μ„œ μ μš©λ˜κΈ°κ°€ νž˜λ“€λ‹€λŠ” λ¬Έμ œμ μ„ κ°€μ§€κ³  μžˆμ—ˆμŠ΅λ‹ˆλ‹€. κ·Έ μ΄μœ λŠ” 높은 정확도λ₯Ό μœ„ν•΄μ„œλŠ” 더 깊고 λ³΅μž‘ν•œ λ„€νŠΈμ›Œν¬ ꡬ쑰λ₯Ό μœ μ§€ν•΄μ•Ό ν•˜λŠ”λ°, λ„€νŠΈμ›Œν¬λ₯Ό λ³΅μž‘ν•˜κ²Œ μœ μ§€ν•˜λ©΄μ„œ μ‹€μ‹œκ°„ μ •λ„μ˜ λΉ λ₯Έ 속도λ₯Ό μœ μ§€ν•˜λŠ” 것이 쉽지 μ•ŠκΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. 이에 따라 μ—¬λŸ¬ λͺ¨λΈ κ²½λŸ‰ν™” 기법듀이 μ œμ•ˆλ˜μ—ˆμœΌλ‚˜, ν•΄λ‹Ή λ…Όλ¬Έμ—μ„œλŠ” μ΄λŸ¬ν•œ λ„€νŠΈμ›Œν¬μ˜ ꡬ쑰가 one-size-fits-all λ„€νŠΈμ›Œν¬ κ΅¬μ‘°λΌλŠ” 점을 문제점으둜 μ§€μ ν•˜μ˜€μŠ΅λ‹ˆλ‹€. (One size fits all)

2. Motivation

μΈκ°„μ˜ 인식 μ‹œμŠ€ν…œμ€ 사물 인식을 ν•˜λ‚˜μ˜ κΈ°μ€€λŒ€λ‘œ ν•˜λŠ” 것이 μ•„λ‹ˆλΌ, μ‚¬λ¬Όμ˜ μ’…λ₯˜λ‚˜ μ£Όλ³€μ˜ 배경에 따라 μ‹œκ°„κ³Ό μ€‘μš”λ„λ₯Ό λ‹€λ₯΄κ²Œ λ°°μ •ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, λ³΅μž‘ν•œ 상황과 물체λ₯Ό 인식해야 ν•  κ²½μš°μ—λŠ” ν‰μ†Œλ³΄λ‹€ λ§Žμ€ μ‹œκ°„κ³Ό 관심을 λ¬΄μ˜μ‹μ€‘μ— 더 크게 ν• μ• ν•˜κ³ , κ°„λ‹¨ν•œ μŠ€μΊ”μœΌλ‘œ ν•΄κ²°ν•  수 μžˆλŠ” κ²½μš°μ—λŠ” 큰 μ‹œκ°„κ³Ό 관심을 두지 μ•ŠμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ λ§₯λ½μ—μ„œ, λ³Έ 논문은 인풋 μ΄λ―Έμ§€μ˜ λΆ„λ₯˜ λ‚œμ΄λ„μ— 따라 λ„€νŠΈμ›Œν¬μ˜ λ ˆμ΄μ–΄λ₯Ό μ„ νƒμ μœΌλ‘œ μ œκ±°ν•˜λŠ” BlockDrop [1] 기법을 μ œμ•ˆν•©λ‹ˆλ‹€.

ResNet은 두 개 μ΄μƒμ˜ μ»¨λ³Όλ£¨μ…˜ λ ˆμ΄μ–΄λ‘œ κ΅¬μ„±λœ 리사이μ₯¬μ–Ό 블둝과, 두 블둝 μ‚¬μ΄μ˜ 직접 경둜λ₯Ό κ°€λŠ₯ν•˜κ²Œ ν•˜λŠ” Skip-connection으둜 κ΅¬μ„±λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ Skip-connection은, ResNet이 λ™μž‘ν•  λ•Œ μƒλŒ€μ μœΌλ‘œ 얕은 λ„€νŠΈμ›Œν¬μ˜ μ•™μƒλΈ”μ²˜λŸΌ μž‘λ™ν•˜λ„λ‘ ν•˜μ—¬ ResNet의 νŠΉμ • 리사이μ₯¬μ–Ό 블둝이 μ œκ±°λ˜λŠ” κ²½μš°μ—λ„ 일반적으둜 전체 μ„±λŠ₯에 μ•½κ°„μ˜ 뢀정적인 영ν–₯만 κ°€μ Έμ˜¬ 수 μžˆλ„λ‘ ν•©λ‹ˆλ‹€.

ν•œνŽΈ, Residual Network의 λ ˆμ΄μ–΄λ₯Ό 제거 (drop) ν•˜λŠ” 것은 일반적으둜 Dropout [2] κ³Ό DropConnect [3] 와 같이 λͺ¨λΈμ„ ν•™μŠ΅ν•˜λŠ” κ³Όμ •μ—μ„œ μ΄λ£¨μ–΄μ§‘λ‹ˆλ‹€. μ΄λŸ¬ν•œ 방법듀은 λͺ¨λ‘ 인퍼런슀 κ³Όμ •μ—μ„œλŠ” λ ˆμ΄μ–΄λ₯Ό dropν•˜μ§€ μ•Šκ³  κ³ μ •μ‹œν‚¨ μ±„λ‘œ μ‹€ν—˜μ„ μ§„ν–‰ν•©λ‹ˆλ‹€. λ§Œμ•½ 인퍼런슀 κ³Όμ •μ—μ„œ λ ˆμ΄μ–΄λ₯Ό 효율적으둜 dropν•œλ‹€λ©΄ μ„±λŠ₯은 거의 μœ μ§€ν•œ μ±„λ‘œ 인퍼런슀 κ³Όμ •μ—μ„œ Speed up을 κΈ°λŒ€ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ³Έ λ…Όλ¬Έμ—μ„œλŠ” 속도 κ°œμ„ μ„ λͺ©ν‘œλ‘œ λ ˆμ΄μ–΄λ₯Ό 인풋 이미지에 따라 효율적으둜 λ“œλžν•˜λŠ” 연ꡬλ₯Ό μ§„ν–‰ν•©λ‹ˆλ‹€.

Concept Figure

Residual Networks Behave Like Ensembles of Relatively Shallow Networks [4]

μœ„ λ…Όλ¬Έμ—μ„œλŠ” ResNet이 ν…ŒμŠ€νŠΈ κ³Όμ •μ—μ„œ layer dropping에 resilientν•˜λ‹€λŠ” 것을 λ³΄μ˜€μŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μ„±λŠ₯ μ €ν•˜λŠ” μ΅œμ†Œν™”ν•˜λ©΄μ„œ λ ˆμ΄μ–΄λ₯Ό μ œκ±°ν•  수 μžˆλŠ” dynamicν•œ 방법은 λ…Όλ¬Έμ—μ„œ ꡬ체적으둜 μ œμ‹œλ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. 반면, Data-Driven Sparse Structure Selection for Deep Neural Networks [5] λ…Όλ¬Έμ—μ„œλŠ” Sparsity constraintλ₯Ό ν™œμš©ν•˜μ—¬ μ–΄λ–€ 리사이μ₯¬μ–Ό 블둝을 μ œκ±°ν•  것인지 κ²°μ •ν•˜λŠ” 방법을 μ œμ•ˆν•˜μ˜€μŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μ£Όμ–΄μ§„ 인풋 이미지에 dependentν•˜κ²Œ, 즉 instance-specificν•˜κ²Œ μ–΄λ–€ 블둝을 μ œκ±°ν•  것인지 κ²°μ •ν•˜λŠ” 방법을 μ œμ•ˆν•˜μ§€λŠ” λͺ»ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

Idea

졜적의 block dropping ꡬ쑰λ₯Ό μ°ΎκΈ° μœ„ν•΄ ν•΄λ‹Ή 논문은 reinforcement learning을 ν™œμš©ν•©λ‹ˆλ‹€. κ°•ν™”ν•™μŠ΅μ„ 톡해 μ£Όμ–΄μ§„ 이미지에 μ μ ˆν•œ 블둝 ꡬ성을 μ°Ύμ•„λ‚΄μ£ΌλŠ” binary vectorλ₯Ό μƒμ„±ν•˜κ³ , 이λ₯Ό 톡해 ν•΄λ‹Ή 논문은 인퍼런슀 κ³Όμ •μ—μ„œ μ„±λŠ₯ μ €ν•˜κ°€ 거의 μ—†λŠ” μƒνƒœλ‘œ speed up을 μ΄λ€„λƒ…λ‹ˆλ‹€.

3. Method

μž…λ ₯ 이미지가 μ£Όμ–΄μ‘Œμ„ λ•Œ 졜적의 block dropping μ „λž΅μ„ μ°ΎκΈ° μœ„ν•΄μ„œ ν•΄λ‹Ή 논문은 binary policy vectorλ₯Ό 좜λ ₯ν•˜λŠ” policy networkλ₯Ό κ΅¬μ„±ν•©λ‹ˆλ‹€. ν•™μŠ΅ κ³Όμ •μ—μ„œ λ¦¬μ›Œλ“œλŠ” block usage와 예츑 정확도λ₯Ό λͺ¨λ‘ κ³ λ €ν•˜μ—¬ κ²°μ •λ©λ‹ˆλ‹€.

Policy Network

일반적인 κ°•ν™”ν•™μŠ΅κ³ΌλŠ” λ‹€λ₯΄κ²Œ, ν•΄λ‹Ή 논문은 all actions at once λ°©μ‹μœΌλ‘œ 정책을 ν•™μŠ΅ν•©λ‹ˆλ‹€. μž…λ ₯ 이미지 x와 K개의 블둝을 κ°€μ§€λŠ” ResNet이 μžˆμ„ λ•Œ, block dropping 정책은 λ‹€μŒκ³Ό 같이 Kμ°¨μ›μ˜ λ² λ₯΄λˆ„이 λΆ„ν¬λ‘œ μ •μ˜λ©λ‹ˆλ‹€.

Bernoulli Distribution

μœ„ μ‹μ—μ„œ fλŠ” policy network에 ν•΄λ‹Ήν•˜κ³ , 이에 λ”°λ₯Έ sλŠ” νŠΉμ • 블둝이 drop될 likelihoodλ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€. 이 κ²½μš°μ— uλŠ” 0 λ˜λŠ” 1의 값을 κ°€μ§€λŠ” drop μ—¬λΆ€λ₯Ό λ”°μ§€λŠ” action을 μ˜λ―Έν•©λ‹ˆλ‹€. 효율적인 block usage와 λ™μ‹œμ— 정확도λ₯Ό 높이기 μœ„ν•΄μ„œ μ•„λž˜μ™€ 같은 reward function을 μ„€μ •ν•©λ‹ˆλ‹€.

Reward

λ¦¬μ›Œλ“œ μˆ˜μ‹μ˜ 첫째쀄은 전체 블둝 μ€‘μ—μ„œ λ“œλžλœ λΈ”λ‘μ˜ λΉ„μœ¨μ„ μ˜λ―Έν•©λ‹ˆλ‹€. μ΄λ•Œ, μœ„μ™€ 같은 ν˜•νƒœλ‘œ 적은 μ–‘μ˜ 블둝을 μ‚¬μš©ν•˜λŠ” 정책에 큰 λ¦¬μ›Œλ“œλ₯Ό μ£Όμ–΄μ„œ block dropping을 ꢌμž₯ν•˜λŠ” λ°©ν–₯으둜 ν•™μŠ΅μ΄ μ§„ν–‰λ©λ‹ˆλ‹€. λ˜ν•œ, λ¦¬μ›Œλ“œ μˆ˜μ‹μ˜ λ‘˜μ§Έμ€„μ€ ν‹€λ¦° μ˜ˆμΈ‘μ— ν•΄λ‹Ήν•˜λŠ” 경우λ₯Ό μ˜λ―Έν•˜λŠ”λ°, μ΄λ•Œ ν‹€λ¦° μ˜ˆμΈ‘μ— λŒ€ν•΄ 감마의 νŽ˜λ„ν‹°λ₯Ό μ£Όμ–΄μ„œ 정확도λ₯Ό λ†’μ΄λŠ” λ°©ν–₯으둜 ν•™μŠ΅μ΄ μ§„ν–‰λ˜κ²Œ ν•©λ‹ˆλ‹€.

4. Experiment & Result

Experimental Setup

CIFAR-10, CIFAR-100의 경우 pretrained resnet은 resnet-32와 resnet-110으둜 μ‹€ν—˜μ΄ μ§„ν–‰λ˜μ—ˆμœΌλ©°, ImageNet의 경우 pretrained resnet은 resnet-101으둜 μ‹€ν—˜μ΄ μ§„ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€. Policy Network의 경우 CIFAR에 λŒ€ν•΄μ„œλŠ” resnet-8을 μ‚¬μš©ν•˜μ˜€κ³  ImageNet에 λŒ€ν•΄μ„œλŠ” resnet-10을 μ‚¬μš©ν•˜μ˜€λŠ”λ°, ImageNetμ—μ„œλŠ” input imageλ₯Ό 112x112둜 downsamplingν•˜μ—¬ policy network에 μ „λ‹¬ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

Result

ν•΄λ‹Ή 논문은 μž„μ˜λ‘œ residual block을 dropμ‹œν‚¨ random 방법과 μˆœμ„œμƒ μ•žμ— μžˆλŠ” residual block을 drop μ‹œν‚¨ first 방법 등을 baseline으둜 ν•˜κ³  λ³Έ λ…Όλ¬Έμ—μ„œ μ œμ•ˆν•˜λŠ” BlockDrop λ°©λ²•κ³Όμ˜ μ„±λŠ₯을 λΉ„κ΅ν•˜μ˜€μŠ΅λ‹ˆλ‹€. CIFAR-10μ—μ„œ ResNet-32λ₯Ό pretrained backbone으둜 ν•˜λŠ” 경우 Full ResNet의 μ„±λŠ₯(accuracy)이 92.3μ΄μ—ˆλ‹€λ©΄ FirstKλŠ” 16.6의 μ„±λŠ₯을 λ³΄μ˜€κ³  RandomKλŠ” 20.5의 μ„±λŠ₯을 λ³΄μ˜€μœΌλ©° BlockDrop은 88.6의 μ„±λŠ₯을 λ³΄μ˜€μŠ΅λ‹ˆλ‹€.

Policy vs. Heuristic

인퍼런슀 κ³Όμ •μ—μ„œμ˜ 속도 κ°œμ„ μ— λŒ€ν•œ μ‹€ν—˜ κ²°κ³ΌλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€. λͺ¨λΈ κ²½λŸ‰ν™” 기법 μ€‘μ—μ„œ ACT, SACT, PFEC, LCCL을 baseline λͺ¨λΈλ‘œ ν•˜μ—¬ FLOPs-accuracy 컀브λ₯Ό λΉ„κ΅ν•˜μ˜€μœΌλ©°, SACT와 동일 μˆ˜μ€€μ˜ 정확도λ₯Ό μœ μ§€ν•˜κΈ° μœ„ν•΄μ„œ 50%의 FLOPsλ§Œμ„ ν•„μš”λ‘œ ν•˜λŠ” 것을 ν™•μΈν•˜μ˜€μŠ΅λ‹ˆλ‹€.

Policy vs. SOTA

5. Conclusion

λ³Έ 논문은 ResNet을 ν™œμš©ν•  λ•Œ 더 λΉ λ₯Έ μ†λ„λ‘œ inferenceν•  수 μžˆλ„λ‘ Residual Block을 instance specificν•˜κ²Œ dropν•˜λŠ” BlockDrop을 μ œμ•ˆν•˜μ˜€κ³  CIFAR 및 ImageNet에 λŒ€ν•œ κ΄‘λ²”μœ„ν•œ μ‹€ν—˜μ„ μˆ˜ν–‰ν•˜μ—¬ efficiency-accuracy trade-offμ—μ„œ μƒλ‹Ήν•œ 이점이 μžˆμŒμ„ κ΄€μ°°ν•˜μ˜€μŠ΅λ‹ˆλ‹€. λ˜ν•œ μ•„λž˜μ˜ κ²°κ³Όλ₯Ό 톡해 BlockDrop의 policyκ°€ μ΄λ―Έμ§€μ˜ semanticν•œ information을 μ„±κ³΅μ μœΌλ‘œ μΈμ½”λ”©ν•œλ‹€λŠ” 것을 ν™•μΈν•˜μ˜€μŠ΅λ‹ˆλ‹€.

Qualitative Result

Take home message (였늘의 κ΅ν›ˆ)

이 논문은 inference 속도 ν–₯상을 μœ„ν•΄ instance specificν•˜κ²Œ residual block을 dropν•˜λŠ” 방법을 RL 기반으둜 ν™œμš©ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

Author / Reviewer information

Author

μ΄ν˜„μˆ˜ (Hyunsu Rhee)

  • KAIST AI

  • ryanrhee@kaist.ac.kr

Reviewer

  1. Korean name (English name): Affiliation / Contact information

  2. Korean name (English name): Affiliation / Contact information

  3. …

Reference & Additional materials

Last updated

Was this helpful?