주어진 task에 가장 최적인 네트워크 구조를 편리하고 빠르게 탐색하는 방법론
Search space(탐색 범위)
Search space는 알고리즘이 탐색을 수행하는 공간.
이 탐색공간에는 candidate operation (convolution, fully-connected, pooling, etc.)의 집합과 그 operation들이 어떻게 연결 되는지, 그리고 총 몇개의 operation이 모여 네트워크를 구성하는지가 정의된다. 그렇기 때문에 이 공간의 모든 원소는 각각 하나의 유효한 네트워크 구조 (valid network configuration)를 나타낸다고 할 수 있겠다
Search Strategy는 Search space에 있는 요소들로부터 후보 아키텍처를 선정함
Search Strategy(탐색 전략)
Search strategy는 탐색방법을 의미
탐색공간상의 많은 configuration들 중에서 어떤것이 가장 좋은 configuration인지를 빠르고 효율적으로 찾아낼 수 있는 알고리즘이 좋은 알고리즘이라고 할 수 있다.
탐색방법은 탐색공간을 어떻게 정의하느냐, 목표가 무엇이냐에 따라 random search, reinforcement learning, evolutionary strategy, gradient descent, bayesian optimization 등 여러가지 방법이 있다. 그리고 Search strategy를 디자인 할때는 그것이 주어진 탐색공간의 작은 부분만 탐색하지 않고 대부분을 커버하면서 (exploration) 동시에 탐색공간의 좋은 부분을 빠르게 찾아낼 수 있도록 해야 한다 (exploitation). 보통 이 둘증 하나에 집중하면 다른 하나가 그만큼 외면되는 경향이 있데, 이러한 현상은 exploration-exploitation trade-off라고 하여 탐색 알고리즘을 디자인할때에 잘 고려해야 하는 현상이다. 그렇기 때문에 좋은 search strategy는 exploration과 exploitation을 둘 다 잘 수행할 수 있어야한다.
Performance Estimation Strategy(모델 성능 추정 전략)
Figure 1 에서 볼 수 있듯이, 보통 NAS는 search strategy가 하나, 혹은 여러개의 후보 configuration을 추출하면 performance estimation strategy를 통해 그것들의 성능을 예측하고, 그 예측치들을 바탕으로 search strategy가 더 좋을 것이라고 생각되는 새로운 configuration들을 추출하는 과정을 최적의 configuration으로 수렴될때까지 반복수행하는 방식으로 이루어진다. 여기서 performance evaluation이 아닌 estimation인 이유는 모든 configuration을 일일히 끝까지 학습시켜 evaluate하면 너무 많은 시간이 소요되기때문이다. 그렇기 때문에 후보 configuration들의 성능을 완전히 학습시키지 않고도 성능을 잘 예측할 수 있는 performance estimation strategy를 개발하는 것이 효율적 NAS 알고리즘을 만드는 중요한 요소라고 할 수 있다.
1. NAS with RL(Reinforcement Learning, 강화학습)
- 강화학습(RL)을 이용하여 NAS를 수행하는 연구가 진행됨
- 신경망 구조를 가변 길이 문자열로 정의함→아래 그림에서 RNN의 출력 하나하나가 아키텍처의 하이퍼 파라미터
- RNN 컨트롤러(RL Agent)는 Validation Accuracy(RL reward)를 최대화하는 문자열을 탐색
2. AmoebaNet
-
- 랜덤하게 네트워크를 샘플링하고 개별 네트워크를 학습
- 낮은 점수의 네트워크는 버리고 높은 점수의 네트워크는 복제하여 변이
- 변이는 은닉층 연결을 변경하거나 Operation을 변경진화하는 방식을 취하는 Evolutionary Strategy를 이용
3. DARTS
- Gradient Descent 방식을 도입
- 셀 기반 Search Space를 사용
- Node를 연결하는 edge를 Operation 후보의 조합으로 간주
- Weight가 가장 큰 Operation을 선택
'ML & DL > Computer vision' 카테고리의 다른 글
YOLO: You Only Look Once (0) | 2023.10.26 |
---|---|
SSD(Single Shot MultiBox Detector) (0) | 2023.10.26 |
R-CNN, Fast R-CNN, Faster R-CNN (0) | 2023.10.26 |
ResNet (0) | 2023.10.26 |
Object detection(= Classification+Localization) (0) | 2023.10.26 |