[논문 리뷰] RSO: A Gradient Free Sampling Based Approach For Training Deep Neural Networks
RSO (Random Search Optimization)는 경사하강법을 사용하지 않고 샘플링 기반으로 딥 네ural 네트워크를 훈련시키는 방법으로, 반복적으로 네트워크 가중치에 대한 변형을 시험하고, 미니배치에서 손실가 감소하는 경우에만 가중치를 갱신한다. 이 방법은 MNIST에서 99.1%의 정확도와 CIFAR-10에서 81.8%의 정확도를 달성하며, SGD보다 훨씬 적은 가중치 갱신 횟수로도 성능을 내며, 백프로파게이션 또는 학습률 튜닝 없이도 초기값 주변에서의 무작위 탐색이 매우 효과적일 수 있음을 보여준다.
We propose RSO (random search optimization), a gradient free Markov Chain Monte Carlo search based approach for training deep neural networks. To this end, RSO adds a perturbation to a weight in a deep neural network and tests if it reduces the loss on a mini-batch. If this reduces the loss, the weight is updated, otherwise the existing weight is retained. Surprisingly, we find that repeating this process a few times for each weight is sufficient to train a deep neural network. The number of weight updates for RSO is an order of magnitude lesser when compared to backpropagation with SGD. RSO can make aggressive weight updates in each step as there is no concept of learning rate. The weight update step for individual layers is also not coupled with the magnitude of the loss. RSO is evaluated on classification tasks on MNIST and CIFAR-10 datasets with deep neural networks of 6 to 10 layers where it achieves an accuracy of 99.1% and 81.8% respectively. We also find that after updating the weights just 5 times, the algorithm obtains a classification accuracy of 98% on MNIST.
연구 동기 및 목표
- 경사하강법 없이 무작위 샘플링을 통한 경사하강법 비례 최적화가 딥 네럴 네트워크 훈련에 효과적으로 적용될 수 있는지 탐색하기.
- 무작위 초기화된 가중치 주변에서의 무작위 탐색이 표준 백프로파게이션과 경쟁 가능한 성능을 낼 수 있는지 평가하기.
- 샘플링 기반 방법을 사용할 경우, 딥 네트워크 훈련 시 가중치 갱신 횟수를 극적으로 줄일 수 있는지 조사하기.
- 과다 매개변수화된 딥 네트워크에서 백프로파게이션을 더 단순하고 미분 불가능한 최적화 전략으로 대체할 수 있는지 가능성 평가하기.
제안 방법
- RSO는 마르코프 체인 몬테카를로 방식의 탐색을 수행하며, 개별 가중치를 변형하고, 미니배치에서 손실가 감소하는지 테스트한다.
- 가중치 갱신은 오직 변형된 가중치가 손실을 감소시키는 경우에만 이루어지며, 다음 규칙을 사용한다: $ w_{i+1} = \begin{cases} w_i, & f(x,w_i) \leq f(x,w_i + \Delta w_i) \\ w_i + \Delta w_i, & f(x,w_i) > f(x,w_i + \Delta w_i) \end{cases} $
- 알고리즘은 각 가중치에 대해 순차적으로 갱신하며, 한 번에 하나의 변형을 테스트하고 성능이 더 좋은 가중치를 유지한다.
- 중간 계층 활성화 값을 캐시하여 최적화 과정에서 더 깊은 계층을 다룰 때 전방전파 결과를 재사용함으로써 계산 비용을 절감한다.
- 학습률 초모델 파rameter를 사용하지 않으며, 갱신에 있어 기울기 크기나 방향성에 의존하지 않는다.
- 이 방법은 MNIST와 CIFAR-10에서 이미지 분류를 위한 6-10층의 CNN에 대해 평가되었으며, 훈련에 오직 RSO만을 사용하고 추가 최적화 기법은 적용하지 않았다.
실험 결과
연구 질문
- RQ1백프로파게이션 없이도 효과적으로 딥 네럴 네트워크를 훈련시킬 수 있는가? 경사하강법 비례 샘플링 방법인 RSO가 가능할까?
- RQ2RSO의 가중치 갱신 횟수는 표준 SGD 기반 훈련과 비교해 수렴 속도와 최종 정확도 측면에서 어떻게 다를까?
- RQ3과다 매개변수화된 딥 네트워크에서 무작위 초기화 주변의 무작위 탐색만으로도 좋은 최소값을 찾을 수 있을까?
- RQ4학습률 튜닝이나 기울기 계산 없이도 RSO가 MNIST와 CIFAR-10과 같은 표준 벤치마크에서 경쟁 가능한 성능을 낼 수 있을까?
주요 결과
- RSO는 6-10층의 CNN을 사용해 MNIST에서 99.1%의 테스트 정확도를 달성했으며, 표준 백프로파게이션 방법과 유사한 성능을 보였다.
- CIFAR-10에서는 동일한 아키텍처로 81.8%의 정확도를 달성하여 더 복잡한 데이터셋에서도 효과적임을 입증했다.
- 레이어당 단지 5회의 가중치 갱신 후에도 RSO는 MNIST에서 98%의 정확도를 달성했으며, 이는 초기 수렴 속도가 매우 빠름을 시사한다.
- RSO는 경쟁 가능한 성능에 도달하기 위해 SGD보다 약 10배 정도 적은 가중치 갱신 횟수가 필요하지만, 갱신당 계산 비용은 더 높다.
- 순차적 가중치 갱신 전략은 특히 CIFAR-10에서 병렬 전략보다 수렴 속도가 빠르며, 더 긴 스케줄을 적용하면 병렬화로도 성능 격차를 줄일 수 있다.
- 중간 활성화 값을 캐시함으로써 MNIST에서는 FLOPs를 3.0배, 더 깊은 네트워크에서는 3.5배 감소시켜 훈련 효율성을 크게 향상시켰다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.