Skip to main content
QUICK REVIEW

[논문 리뷰] SplitNet: Divide and Co-training.

Shuai Zhao, Liguang Zhou|arXiv (Cornell University)|2020. 11. 30.
Advanced Neural Network Applications참고 문헌 41인용 수 5
한 줄 요약

SplitNet은 동일한 데이터의 서로 다른 뷰에서 공동 학습하는 여러 개의 더 작은, 더 얕은 네트워크로 하나의 큰 신경망을 분할함으로써, 파rameter 수나 FLOPs를 늘리지 않고도 원래의 큰 네트워크보다 더 높은 성능을 달성할 수 있도록 한다. 이는 서로 보완적인 지식을 학습할 수 있게 하며, 깊이, 너비, 해상도 외에 네트워크 수를 늘리는 것이 모델 스케일링의 새로운 효과적인 차원임을 보여준다.

ABSTRACT

The width of a neural network matters since increasing the width will necessarily increase the model capacity. However, the performance of a network does not improve linearly with the width and soon gets saturated. To tackle this problem, we propose to increase the number of networks rather than purely scaling up the width. To prove it, one large network is divided into several small ones, and each of these small networks has a fraction of the original one's parameters. We then train these small networks together and make them see various views of the same data to learn different and complementary knowledge. During this co-training process, networks can also learn from each other. As a result, small networks can achieve better ensemble performance than the large one with few or no extra parameters or FLOPs. \emph{This reveals that the number of networks is a new dimension of effective model scaling, besides depth/width/resolution}. Small networks can also achieve faster inference speed than the large one by concurrent running on different devices. We validate the idea -- increasing the number of networks is a new dimension of effective model scaling -- with different network architectures on common benchmarks through extensive experiments. The code is available at \url{this https URL}.

연구 동기 및 목표

  • 신경망 너비를 늘릴수록 성능 향상의 수익 감소 현상이 발생함에 따라, 늘어난 용량에도 불구하고 포화 상태에 도달하는 문제를 해결하기 위해.
  • 너비를 늘리는 대신 더 작은 네트워크의 수를 늘림으로써 더 높은 모델 성능을 달성할 수 있는지 탐색하기 위해.
  • 동일한 샘플의 서로 다른 데이터 뷰에서 여러 개의 좁은 네트워크를 공동 학습시켜 보다 보완적인 지식을 학습하고 일반화 성능을 향상시킬 수 있는지 조사하기 위해.
  • 네트워크 수가 깊이, 너비, 해상도와 동등한 수준의 효과적인 모델 스케일링 차원이 될 수 있음을 검증하기 위해.
  • 다양한 장치에서 병렬 실행되는 더 작은 네트워크를 통해 더 빠른 추론을 가능하게 하기 위해.

제안 방법

  • 원래 모델의 파rameter 수의 일부만을 가지는 여러 개의 더 작은, 더 얕은 네트워크로 하나의 큰 신경망을 분할한다.
  • 각 네트워크가 동일한 입력 데이터의 서로 다른 증강된 뷰를 처리하는 방식으로 공동 학습 설정에서 훈련한다.
  • 학습 중에 지식 정복과 상호 학습을 가능하게 하여 네트워크 간에 함께 향상되도록 한다.
  • 다양한 뷰를 생성하기 위해 데이터 증강을 사용하여, 각 네트워크가 데이터 분포의 서로 다른 측면을 학습하도록 보장한다.
  • 추론 시 모든 작은 네트워크의 예측을 결합하여 더 높은 정확도를 가진 앙상블 모델을 형성한다.
  • 원래 큰 네트워크와 동일한 총 FLOPs와 파rameter 수를 유지하여 추가적인 계산 비용이 발생하지 않도록 한다.

실험 결과

연구 질문

  • RQ1동일한 용량을 가진 단일 넓은 네트워크를 훈련시키는 것보다, 큰 네트워크를 여러 개의 더 작은 네트워크로 나누고 서로 다른 데이터 뷰에서 공동 학습시키는 것이 더 높은 성능을 낼 수 있는가?
  • RQ2네트워크 수가 깊이, 너비, 해상도와 독립적으로 새로운 효과적인 모델 스케일링 차원이 될 수 있는가?
  • RQ3더 작은 네트워크 간의 공동 학습이 보완적인 표현을 학습하고 일반화 성능을 향상시킬 수 있는가?
  • RQ4다양한 장치에서 병렬로 실행될 때, 더 작은 네트워크의 앙상블이 단일 큰 네트워크보다 더 빠른 추론 속도를 달성할 수 있는가?
  • RQ5제안된 방법은 FLOPs와 파rameter 수를 그대로 유지하면서도 정확도를 유지하거나 향상시킬 수 있는가?

주요 결과

  • SplitNet은 동일한 파rameter 수와 FLOPs를 사용함에도 불구하고, 일반적인 벤치마크에서 원래의 큰 네트워크보다 더 높은 성능을 달성한다.
  • 작은 네트워크의 앙상블은 단일 큰 네트워크를 초월하여 성능을 높이며, 네트워크 수를 늘림으로써 모델 용량을 효과적으로 증가시킬 수 있음을 보여준다.
  • 여러 뷰에서의 공동 학습은 작은 네트워크가 보완적인 지식을 학습하고 일반화 및 강건성을 향상시킬 수 있도록 한다.
  • 다양한 장치에서 병렬 실행이 가능하기 때문에 추론 속도가 큰 네트워크보다 빠르다.
  • 이 방법은 다양한 네트워크 아키텍처와 벤치마크에서 효과적이며, 새로운 스케일링 패러다임으로서의 일반화 가능성을 입증한다.
  • 계산 비용을 증가시키지 않으면서도 성능 향상을 달성함으로써, 네트워크 수가 실용적이고 효과적인 스케일링 차원임을 확인한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.