SlideShare ist ein Scribd-Unternehmen logo
1 von 15
NetAdapt: Platform-Aware Neural Network
Adaptation for Mobile Applications
Google Inc
Tien-Ju Yang, Andrew Howard, Bo Chen, Xiao Zhang, Alec Go, Mark Sandler, Vivienne Sze, Hartwig Adam
(Submitted on 9 Apr 2018 (v1), last revised 28 Sep 2018 (this version, v2))
[참조] 뉴럴 네트워크 자동 최적화 논문 리뷰: NetAdapt (Google, 2018)|작성자
Donghyun
Abstract
This work proposes an algorithm, called NetAdapt, that automatically adapts a
pre-trained deep neural network to a mobile platform given a resource budget.
이 알고리즘은 사전에 훈련 된 심층 신경망을 자원 예산이 주어진 모바일 플랫폼에
자동으로 적응시키는 NetAdapt라는 알고리즘을 제안합니다.
Overview(자동으로 최적화!)
Input: Pretrained Network, Budget (constraints)
Output: Platform-optimized network
실용적인 Latency / Energy consumption 과 같은
"Direct Metric"을 기준으로 최적화
Problem Formulation
네트워크의 정확도를 최대한 떨어트리지 않으면서, 주어진 Budget을 만족하는 결과를 얻는 것
Net: Net is a simplified network from the initial pretrained network
Acc (·): computes the accuracy
Resj (·): evaluates the direct metric for resource consumption of the j th resource
j : direct metric 제한 조건을 명시
자원은 대기 시간, 에너지, 메모리 일 수 있습니다. 발자국 등 또는 이러한 측정 항목의 조합입니다.
하지만 이를 만족하는 네트워크를 한 번에 찾기란 쉽지 않다.
Problem Formulation
이 문제를 여러 개의 Sub-problem으로 나누어, 주어진 Budget 조건을 여러 개로 쪼개어, 한 번에 일정 만큼
만 Budget 조건을 더 타이트하게 만들고,
논문에서는 the constraints gradually become tighter 란 표현을 썼다.
이에 최적화 된 네트워크를 찾는다. 이 네트워크가 다음 단계의 input으로 들어가는 방식!
각 iteration을 표현하는 i가 추가되었다
Problem Formulation
Line 3: Output network가 주어진 Budget 조건을 만족 할 때까지 반복
Line 4: Constraints 자원 소비를 조금씩 줄여 타이트하게 만든다.
Line 5-8: Network의 K개 레이어에 대해 각각 다음을 수행
Line 6: 몇 개의 필터를 제거해야 하는지 선택
Line 7: 어떤 필터를 제거할 지 선택
Line 8: Short-term finetuning 진행
Line 9: K개의 레이어를 각각 수정하여 얻은 네트워크 중, Line 8에서 얻은
Accuracy가 가장 높은 네트워크 선택, 이 네트워크는 다음 단계의 Input이
된다.
Line 11: 최종적으로 나온 주어진 Budget을 만족시키는 네트워크에 Long-
term finetuning 을 진행하여 최종 결과물을 얻는다.
Problem Formulation
Algorithm Details
Choose # of Filters: Empirical experiments
이 단계는 경험적 측정에 따라 특정 레이어들을 얼마나 많이 보존할 것인가를 결정
하는 단계이다.
대상 계층의 필터 수를 점차적으로 줄이고 단순화 된 각 네트워크의 자원 소비를 측
정합니다.
변수들 (커널 정보, 채널 수, Input dimension 등)
의 값이 정해지면 해당 레이어의 처리 속도 역시
특정될 수 있다. 이러한 점을 이용해 사전에 실험
을 통해(Empirical Experiments) Layer-wise
Look-up table을 생성해 두고(레이어의 Spatial
정보는 변하지 않으므로!), 주어진 Budget에 따
라 해당 레이어의 필터 수를 조절할 수 있도록 하 - 테이블의 각 정보는 Tensorflow Lite + Pixel Phone 1 을 이용한 실험을 통해 진행되
었다.
역시 구글, 구글은 이런 제약을 "실험을 통해서" 해결해 버렸
다.
Algorithm Details
Choose Which Filters
어떤 필터를 제거해야 할 까? 이는 분명 어려운 문제이다.
하지만 이 논문에서는 간단하게 L2-norm magnitude가 작은 순서로 제거하였다.
- Norm은 벡터의 길이 혹은 크기를 측정하는 방법(함수)입니다.
- Norm이 측정한 벡터의 크기는 원점에서 벡터 좌표까지의 거리 혹은 Magnitude라고 합니다.
Algorithm Details
Short-/Long-Term Fine-Tune
K개의 레이어에 대해, 모두 Finetuning을 진행하고 결과를 비교하는 것은 시간 소모
의 측면으로 보았을 때 쉽지 않은 일이다.
NetAdapt는 이 문제를 Short- /Long- Term Fine-tune을 구분하는 것으로 해결했다.
- 네트워크 형태를 변형시키는 단계에서의 Fine-tuning은 짧게!
Algorithm Details
Short-/Long-Term Fine-Tune
Fig. 8.The accuracy of different short-term fine-tuning
iterations when adapt-ing the small MobileNetV1
(without long-term fine-tuning) on a mobile CPU
ofGoogle Pixel 1. Zero iterations means noshort-term
fine-tuning.
이와 같은 그래프를 보여주며 short-term training iteration
은 40k가 적당하다고 이야기했다.
Fig. 9.The comparison between beforeand after long-
term fine-tuning whenadapting the small MobileNetV1
on a mo-bile CPU of Google Pixel 1. Although
theshort-term fine-tuning preserves the accu-racy well,
the long-term fine-tuning givesthe extra 3.4% on
average (from 1.8% to4.5%)
Experiment Results
– Multipliers Two commonly used multipliers are the width multiplier and the
resolution multiplier; they can also be used together. Width multiplier scales: the
number of filters by a percentage across.
We use the notation “50% MobileNetV1 (128)” to denote applying a width
multiplier of 50% on MobileNetV1 with the input image resolution of 128.
– MorphNet is an automatic network simplification algorithm based on sparsifying
regularization.
– ADC(Automated Deep Compression) is an automatic network simplification
algorithm based on reinforcement learning.
Experiment Results
Fig. 5. The figure compares NetAdapt (adapting the small MobileNetV1) with the
multipliers and MorphNet on a mobile CPU of Google Pixel 1.
50% MobileNetV1 (128)
Experiment Results
100% MobileNetV1 (224)
Fig. 6. The figure compares NetAdapt (adapting the large MobileNetV1) with the
multipliers [9] and ADC [8] on a mobile CPU of Google Pixel 1. Moreover, the
accuracy of the adapted networks can be further increased by up to 1.3% through
using a better training configuration (simply adding dropout and label smoothing).
100% MobileNetV1 (224)
(simply adding dropout and label smoothing)
Conclusion
NetAdapt는 대기 시간 및 에너지와 같은 직접 메트릭을 최적화에 통합하여 플랫폼
의 특성에 따라 적응 성능을 최대화 할 수 있습니다. 경험적 측정을 사용하면 원하
는 메트릭을 측정 할 수있는 한 NetAdapt를 모든 플랫폼에 적용 할 수 있습니다.
이 연구에서는 효율적인 네트워크 최적화에 직접 메트릭을 사용하는 것의 중요성
을 강조했습니다.

Weitere ähnliche Inhalte

Was ist angesagt?

IOT DATA MANAGEMENT AND COMPUTE STACK.pptx
IOT DATA MANAGEMENT AND COMPUTE STACK.pptxIOT DATA MANAGEMENT AND COMPUTE STACK.pptx
IOT DATA MANAGEMENT AND COMPUTE STACK.pptxMeghaShree665225
 
Automation testing
Automation testingAutomation testing
Automation testingTomy Rhymond
 
4. Internet of Things - Reference Model and Architecture
4. Internet of Things - Reference Model and Architecture4. Internet of Things - Reference Model and Architecture
4. Internet of Things - Reference Model and ArchitectureJitendra Tomar
 
Artificial Intelligence with Python | Edureka
Artificial Intelligence with Python | EdurekaArtificial Intelligence with Python | Edureka
Artificial Intelligence with Python | EdurekaEdureka!
 
IoT Enabling Technologies
IoT Enabling TechnologiesIoT Enabling Technologies
IoT Enabling TechnologiesPrakash Honnur
 
The role of NLP & ML in Cognitive System by Sunantha Krishnan
The role of NLP & ML in Cognitive System by Sunantha KrishnanThe role of NLP & ML in Cognitive System by Sunantha Krishnan
The role of NLP & ML in Cognitive System by Sunantha Krishnansunanthakrishnan
 
Analysis of optimization algorithms
Analysis of optimization algorithmsAnalysis of optimization algorithms
Analysis of optimization algorithmsGem WeBlog
 
DISEASE PREDICTION BY MACHINE LEARNING OVER BIG DATA FROM HEALTHCARE COMMUNI...
 DISEASE PREDICTION BY MACHINE LEARNING OVER BIG DATA FROM HEALTHCARE COMMUNI... DISEASE PREDICTION BY MACHINE LEARNING OVER BIG DATA FROM HEALTHCARE COMMUNI...
DISEASE PREDICTION BY MACHINE LEARNING OVER BIG DATA FROM HEALTHCARE COMMUNI...Nexgen Technology
 
Speech emotion recognition from audio converted
Speech emotion recognition from audio convertedSpeech emotion recognition from audio converted
Speech emotion recognition from audio converteddataalcott
 
IOT PROTOCOLS.pptx
IOT PROTOCOLS.pptxIOT PROTOCOLS.pptx
IOT PROTOCOLS.pptxDRREC
 
Issues in mobile communication
Issues in mobile communicationIssues in mobile communication
Issues in mobile communicationhina firdaus
 
Cloud Platform for IoT
Cloud Platform for IoTCloud Platform for IoT
Cloud Platform for IoTNaoto Umemori
 
IoT Devices
IoT DevicesIoT Devices
IoT Devicessilaah
 
Optimization and particle swarm optimization (O & PSO)
Optimization and particle swarm optimization (O & PSO) Optimization and particle swarm optimization (O & PSO)
Optimization and particle swarm optimization (O & PSO) Engr Nosheen Memon
 

Was ist angesagt? (20)

Zigbee Presentation
Zigbee PresentationZigbee Presentation
Zigbee Presentation
 
IOT DATA MANAGEMENT AND COMPUTE STACK.pptx
IOT DATA MANAGEMENT AND COMPUTE STACK.pptxIOT DATA MANAGEMENT AND COMPUTE STACK.pptx
IOT DATA MANAGEMENT AND COMPUTE STACK.pptx
 
Automation testing
Automation testingAutomation testing
Automation testing
 
4. Internet of Things - Reference Model and Architecture
4. Internet of Things - Reference Model and Architecture4. Internet of Things - Reference Model and Architecture
4. Internet of Things - Reference Model and Architecture
 
Artificial Intelligence with Python | Edureka
Artificial Intelligence with Python | EdurekaArtificial Intelligence with Python | Edureka
Artificial Intelligence with Python | Edureka
 
Membrane computing
Membrane computingMembrane computing
Membrane computing
 
IoT Enabling Technologies
IoT Enabling TechnologiesIoT Enabling Technologies
IoT Enabling Technologies
 
TestCraft
TestCraftTestCraft
TestCraft
 
The role of NLP & ML in Cognitive System by Sunantha Krishnan
The role of NLP & ML in Cognitive System by Sunantha KrishnanThe role of NLP & ML in Cognitive System by Sunantha Krishnan
The role of NLP & ML in Cognitive System by Sunantha Krishnan
 
Ppt 11 - netopeer
Ppt   11 - netopeerPpt   11 - netopeer
Ppt 11 - netopeer
 
Analysis of optimization algorithms
Analysis of optimization algorithmsAnalysis of optimization algorithms
Analysis of optimization algorithms
 
DISEASE PREDICTION BY MACHINE LEARNING OVER BIG DATA FROM HEALTHCARE COMMUNI...
 DISEASE PREDICTION BY MACHINE LEARNING OVER BIG DATA FROM HEALTHCARE COMMUNI... DISEASE PREDICTION BY MACHINE LEARNING OVER BIG DATA FROM HEALTHCARE COMMUNI...
DISEASE PREDICTION BY MACHINE LEARNING OVER BIG DATA FROM HEALTHCARE COMMUNI...
 
Support vector machines
Support vector machinesSupport vector machines
Support vector machines
 
Speech emotion recognition from audio converted
Speech emotion recognition from audio convertedSpeech emotion recognition from audio converted
Speech emotion recognition from audio converted
 
IOT PROTOCOLS.pptx
IOT PROTOCOLS.pptxIOT PROTOCOLS.pptx
IOT PROTOCOLS.pptx
 
Issues in mobile communication
Issues in mobile communicationIssues in mobile communication
Issues in mobile communication
 
Cloud Platform for IoT
Cloud Platform for IoTCloud Platform for IoT
Cloud Platform for IoT
 
IoT Devices
IoT DevicesIoT Devices
IoT Devices
 
Optimization and particle swarm optimization (O & PSO)
Optimization and particle swarm optimization (O & PSO) Optimization and particle swarm optimization (O & PSO)
Optimization and particle swarm optimization (O & PSO)
 
fitness function
fitness functionfitness function
fitness function
 

Ähnlich wie Net adapt

네트워크 경량화 이모저모 @ 2020 DLD
네트워크 경량화 이모저모 @ 2020 DLD네트워크 경량화 이모저모 @ 2020 DLD
네트워크 경량화 이모저모 @ 2020 DLDKim Junghoon
 
딥러닝 논문읽기 efficient netv2 논문리뷰
딥러닝 논문읽기 efficient netv2  논문리뷰딥러닝 논문읽기 efficient netv2  논문리뷰
딥러닝 논문읽기 efficient netv2 논문리뷰taeseon ryu
 
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작DACON AI 데이콘
 
X idea contest (ANNamp)
X idea contest (ANNamp)X idea contest (ANNamp)
X idea contest (ANNamp)KIM sumi
 
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링OpenStack Korea Community
 
스마트폰 위의 딥러닝
스마트폰 위의 딥러닝스마트폰 위의 딥러닝
스마트폰 위의 딥러닝NAVER Engineering
 
Exploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMsExploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMsTae Young Lee
 
K ems 20060428
K ems 20060428K ems 20060428
K ems 20060428상진 정
 
[Paper] shuffle net an extremely efficient convolutional neural network for ...
[Paper] shuffle net  an extremely efficient convolutional neural network for ...[Paper] shuffle net  an extremely efficient convolutional neural network for ...
[Paper] shuffle net an extremely efficient convolutional neural network for ...Susang Kim
 
[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance TuningJi-Woong Choi
 
[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Others
 [컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Others [컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Others
[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Othersjdo
 
웹기반원격감시제어 2010 CPD
웹기반원격감시제어 2010 CPD웹기반원격감시제어 2010 CPD
웹기반원격감시제어 2010 CPD활 김
 
I3D and Kinetics datasets (Action Recognition)
I3D and Kinetics datasets (Action Recognition)I3D and Kinetics datasets (Action Recognition)
I3D and Kinetics datasets (Action Recognition)Susang Kim
 
Versatile tensor accelerator (vta) introduction and usage
Versatile tensor accelerator (vta) introduction and usage Versatile tensor accelerator (vta) introduction and usage
Versatile tensor accelerator (vta) introduction and usage jemin lee
 
5G 기술과 활용 (5G technology and services) - 2019.05.11
5G 기술과 활용 (5G technology and services) - 2019.05.115G 기술과 활용 (5G technology and services) - 2019.05.11
5G 기술과 활용 (5G technology and services) - 2019.05.11Hakyong Kim
 

Ähnlich wie Net adapt (20)

네트워크 경량화 이모저모 @ 2020 DLD
네트워크 경량화 이모저모 @ 2020 DLD네트워크 경량화 이모저모 @ 2020 DLD
네트워크 경량화 이모저모 @ 2020 DLD
 
Son 기술 소개
Son 기술 소개Son 기술 소개
Son 기술 소개
 
LeNet & GoogLeNet
LeNet & GoogLeNetLeNet & GoogLeNet
LeNet & GoogLeNet
 
딥러닝 논문읽기 efficient netv2 논문리뷰
딥러닝 논문읽기 efficient netv2  논문리뷰딥러닝 논문읽기 efficient netv2  논문리뷰
딥러닝 논문읽기 efficient netv2 논문리뷰
 
AUTOML
AUTOMLAUTOML
AUTOML
 
Automl
AutomlAutoml
Automl
 
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작
위성관측 데이터 활용 강수량 산출 AI 경진대회 1위 수상작
 
X idea contest (ANNamp)
X idea contest (ANNamp)X idea contest (ANNamp)
X idea contest (ANNamp)
 
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
 
HistoryOfCNN
HistoryOfCNNHistoryOfCNN
HistoryOfCNN
 
스마트폰 위의 딥러닝
스마트폰 위의 딥러닝스마트폰 위의 딥러닝
스마트폰 위의 딥러닝
 
Exploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMsExploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMs
 
K ems 20060428
K ems 20060428K ems 20060428
K ems 20060428
 
[Paper] shuffle net an extremely efficient convolutional neural network for ...
[Paper] shuffle net  an extremely efficient convolutional neural network for ...[Paper] shuffle net  an extremely efficient convolutional neural network for ...
[Paper] shuffle net an extremely efficient convolutional neural network for ...
 
[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning
 
[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Others
 [컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Others [컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Others
[컴퓨터비전과 인공지능] 8. 합성곱 신경망 아키텍처 5 - Others
 
웹기반원격감시제어 2010 CPD
웹기반원격감시제어 2010 CPD웹기반원격감시제어 2010 CPD
웹기반원격감시제어 2010 CPD
 
I3D and Kinetics datasets (Action Recognition)
I3D and Kinetics datasets (Action Recognition)I3D and Kinetics datasets (Action Recognition)
I3D and Kinetics datasets (Action Recognition)
 
Versatile tensor accelerator (vta) introduction and usage
Versatile tensor accelerator (vta) introduction and usage Versatile tensor accelerator (vta) introduction and usage
Versatile tensor accelerator (vta) introduction and usage
 
5G 기술과 활용 (5G technology and services) - 2019.05.11
5G 기술과 활용 (5G technology and services) - 2019.05.115G 기술과 활용 (5G technology and services) - 2019.05.11
5G 기술과 활용 (5G technology and services) - 2019.05.11
 

Kürzlich hochgeladen

캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Kim Daeun
 
Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Wonjun Hwang
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionKim Daeun
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Wonjun Hwang
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)Tae Young Lee
 

Kürzlich hochgeladen (6)

캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
 
Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)
 

Net adapt

  • 1. NetAdapt: Platform-Aware Neural Network Adaptation for Mobile Applications Google Inc Tien-Ju Yang, Andrew Howard, Bo Chen, Xiao Zhang, Alec Go, Mark Sandler, Vivienne Sze, Hartwig Adam (Submitted on 9 Apr 2018 (v1), last revised 28 Sep 2018 (this version, v2)) [참조] 뉴럴 네트워크 자동 최적화 논문 리뷰: NetAdapt (Google, 2018)|작성자 Donghyun
  • 2. Abstract This work proposes an algorithm, called NetAdapt, that automatically adapts a pre-trained deep neural network to a mobile platform given a resource budget. 이 알고리즘은 사전에 훈련 된 심층 신경망을 자원 예산이 주어진 모바일 플랫폼에 자동으로 적응시키는 NetAdapt라는 알고리즘을 제안합니다.
  • 3. Overview(자동으로 최적화!) Input: Pretrained Network, Budget (constraints) Output: Platform-optimized network 실용적인 Latency / Energy consumption 과 같은 "Direct Metric"을 기준으로 최적화
  • 4. Problem Formulation 네트워크의 정확도를 최대한 떨어트리지 않으면서, 주어진 Budget을 만족하는 결과를 얻는 것 Net: Net is a simplified network from the initial pretrained network Acc (·): computes the accuracy Resj (·): evaluates the direct metric for resource consumption of the j th resource j : direct metric 제한 조건을 명시 자원은 대기 시간, 에너지, 메모리 일 수 있습니다. 발자국 등 또는 이러한 측정 항목의 조합입니다. 하지만 이를 만족하는 네트워크를 한 번에 찾기란 쉽지 않다.
  • 5. Problem Formulation 이 문제를 여러 개의 Sub-problem으로 나누어, 주어진 Budget 조건을 여러 개로 쪼개어, 한 번에 일정 만큼 만 Budget 조건을 더 타이트하게 만들고, 논문에서는 the constraints gradually become tighter 란 표현을 썼다. 이에 최적화 된 네트워크를 찾는다. 이 네트워크가 다음 단계의 input으로 들어가는 방식! 각 iteration을 표현하는 i가 추가되었다
  • 6. Problem Formulation Line 3: Output network가 주어진 Budget 조건을 만족 할 때까지 반복 Line 4: Constraints 자원 소비를 조금씩 줄여 타이트하게 만든다. Line 5-8: Network의 K개 레이어에 대해 각각 다음을 수행 Line 6: 몇 개의 필터를 제거해야 하는지 선택 Line 7: 어떤 필터를 제거할 지 선택 Line 8: Short-term finetuning 진행 Line 9: K개의 레이어를 각각 수정하여 얻은 네트워크 중, Line 8에서 얻은 Accuracy가 가장 높은 네트워크 선택, 이 네트워크는 다음 단계의 Input이 된다. Line 11: 최종적으로 나온 주어진 Budget을 만족시키는 네트워크에 Long- term finetuning 을 진행하여 최종 결과물을 얻는다.
  • 8. Algorithm Details Choose # of Filters: Empirical experiments 이 단계는 경험적 측정에 따라 특정 레이어들을 얼마나 많이 보존할 것인가를 결정 하는 단계이다. 대상 계층의 필터 수를 점차적으로 줄이고 단순화 된 각 네트워크의 자원 소비를 측 정합니다. 변수들 (커널 정보, 채널 수, Input dimension 등) 의 값이 정해지면 해당 레이어의 처리 속도 역시 특정될 수 있다. 이러한 점을 이용해 사전에 실험 을 통해(Empirical Experiments) Layer-wise Look-up table을 생성해 두고(레이어의 Spatial 정보는 변하지 않으므로!), 주어진 Budget에 따 라 해당 레이어의 필터 수를 조절할 수 있도록 하 - 테이블의 각 정보는 Tensorflow Lite + Pixel Phone 1 을 이용한 실험을 통해 진행되 었다. 역시 구글, 구글은 이런 제약을 "실험을 통해서" 해결해 버렸 다.
  • 9. Algorithm Details Choose Which Filters 어떤 필터를 제거해야 할 까? 이는 분명 어려운 문제이다. 하지만 이 논문에서는 간단하게 L2-norm magnitude가 작은 순서로 제거하였다. - Norm은 벡터의 길이 혹은 크기를 측정하는 방법(함수)입니다. - Norm이 측정한 벡터의 크기는 원점에서 벡터 좌표까지의 거리 혹은 Magnitude라고 합니다.
  • 10. Algorithm Details Short-/Long-Term Fine-Tune K개의 레이어에 대해, 모두 Finetuning을 진행하고 결과를 비교하는 것은 시간 소모 의 측면으로 보았을 때 쉽지 않은 일이다. NetAdapt는 이 문제를 Short- /Long- Term Fine-tune을 구분하는 것으로 해결했다. - 네트워크 형태를 변형시키는 단계에서의 Fine-tuning은 짧게!
  • 11. Algorithm Details Short-/Long-Term Fine-Tune Fig. 8.The accuracy of different short-term fine-tuning iterations when adapt-ing the small MobileNetV1 (without long-term fine-tuning) on a mobile CPU ofGoogle Pixel 1. Zero iterations means noshort-term fine-tuning. 이와 같은 그래프를 보여주며 short-term training iteration 은 40k가 적당하다고 이야기했다. Fig. 9.The comparison between beforeand after long- term fine-tuning whenadapting the small MobileNetV1 on a mo-bile CPU of Google Pixel 1. Although theshort-term fine-tuning preserves the accu-racy well, the long-term fine-tuning givesthe extra 3.4% on average (from 1.8% to4.5%)
  • 12. Experiment Results – Multipliers Two commonly used multipliers are the width multiplier and the resolution multiplier; they can also be used together. Width multiplier scales: the number of filters by a percentage across. We use the notation “50% MobileNetV1 (128)” to denote applying a width multiplier of 50% on MobileNetV1 with the input image resolution of 128. – MorphNet is an automatic network simplification algorithm based on sparsifying regularization. – ADC(Automated Deep Compression) is an automatic network simplification algorithm based on reinforcement learning.
  • 13. Experiment Results Fig. 5. The figure compares NetAdapt (adapting the small MobileNetV1) with the multipliers and MorphNet on a mobile CPU of Google Pixel 1. 50% MobileNetV1 (128)
  • 14. Experiment Results 100% MobileNetV1 (224) Fig. 6. The figure compares NetAdapt (adapting the large MobileNetV1) with the multipliers [9] and ADC [8] on a mobile CPU of Google Pixel 1. Moreover, the accuracy of the adapted networks can be further increased by up to 1.3% through using a better training configuration (simply adding dropout and label smoothing). 100% MobileNetV1 (224) (simply adding dropout and label smoothing)
  • 15. Conclusion NetAdapt는 대기 시간 및 에너지와 같은 직접 메트릭을 최적화에 통합하여 플랫폼 의 특성에 따라 적응 성능을 최대화 할 수 있습니다. 경험적 측정을 사용하면 원하 는 메트릭을 측정 할 수있는 한 NetAdapt를 모든 플랫폼에 적용 할 수 있습니다. 이 연구에서는 효율적인 네트워크 최적화에 직접 메트릭을 사용하는 것의 중요성 을 강조했습니다.