brunch

뉴럴 탄젠트가 있는 더빠르고 쉬운 무한 와이드 네트워크

2020년 3월 13일(금)-구글 AI 리서치 블로그

by 서진호

자연어 처리, 대화 에이전트커넥토믹스와 같은 다양한 영역에서 딥러닝의 광범위한 성공은 머신러닝의 연구 환경을 변화시켰으며 연구자들에게 다음과 같은 흥미롭고 중요한 공개 질문을 남겼습니다. 오버 파라미터화(overparametered) 되었지만 심층 신경망(DNN)이 일반화되는 이유는 무엇입니까? 딥 네트워크에 대한 아키텍처, 훈련 및 성능 간의 관계는 무엇입니까? 딥러닝 모델에서 두드러진 특징(feature)을 어떻게 추출할 수 있습니까?


최근 몇 년간 발전을 이룰 수 있었던 주요 이론적 통찰력 중 하나는 DNN의 폭이 증가하면 더 규칙적인 행동을 취하고 더 이해하기 쉽게 만든다는 것입니다. 최근의 많은 결과에 따르면 infinite-wide 할 수 있는 DNN은 가우시안 프로세스(Gaussian Process)라고 하는 또 다른 더 단순한 모델 클래스로 수렴합니다. 이 한계에서 복잡한 현상(예: 베이지안 추론 또는 컨볼루션 신경망경사 하강 역학)은 단순한 선형 대수 방정식으로 귀결됩니다. 이러한 무한 와이드 네트워크(infinite-width network)의 통찰력은 종종 유한 복사본에게 전달됩니다. 따라서, 무한 와이드 네트워크는 딥러닝을 연구하는 렌즈로 사용될 수 있을 뿐만 아니라 자체적으로 유용한 모델로도 사용될 수 있습니다.


1_640_50fps_FINAL_VERSION.gif [그림 1]

[그림 1] 상세 설명 - 왼쪽: 심층 신경망이 무한대로 넓어짐에 따라 간단한 입력/출력 맵을 유도하는 방법을 보여주는 개략도. 오른쪽: 신경망의 너비(width)가 증가함에 따라 네트워크의 다른 임의 인스턴스화에 대한 출력 분포가 가우스(정규화)가 됨을 알 수 있습니다.


불행히도, 유한 네트워크의 무한 너비 제한을 얻으려면 상당한 수학적 전문 지식이 필요하며 연구 한 각 아키텍처마다 별도로 해결해야 합니다. 무한 너비 모델이 도출되면 효율적이고 확장 가능한 구현을 위해서는 상당한 엔지니어링 능력이 필요합니다. 유한 너비 모델을 해당 무한 너비 네트워크로 가져오는 과정에는 몇 개월이 걸릴 수 있으며 연구 논문의 주제 일 수도 있습니다.


이 문제를 해결하고 딥러닝의 이론적 진보를 가속화하기 위해 JAX로 작성된 새로운 오픈 소스 소프트웨어 라이브러리인 뉴럴 탄젠트(Neural Tangents)를 소개합니다. 연구원은 유한 신경망만큼 쉽게 무한한 신경망을 구축하고 훈련할 수 있습니다. 뉴럴 탄젠트(Neural Tangents)의 핵심은 유한 및 무한 너비 버전의 신경망을 동시에 구축하는 사용하기 쉬운 신경망 라이브러리를 제공하는 데 있습니다.


신경 탄젠트 유틸리티를 예를 들자면, 일부 데이터에 대해 완전히 연결된 뉴럴 네트워크(fully-connected neural network)를 훈련시키는 것을 상상해 보십시오. 일반적으로 신경망은 무작위로 초기화된 다음 경사 하강을 사용하여 학습됩니다. 이러한 많은 신경망을 초기화하고 훈련하면 앙상블(ensemble)이 됩니다. 종종 연구원과 실무자들은 더 나은 성능을 위해 앙상블의 다른 구성원의 예측을 평균화합니다. 또한 앙상블 멤버 예측의 분산을 사용하여 불확실성을 추정할 수 있습니다. 단점은 네트워크 앙상블을 훈련하는 데 상당한 계산 예산이 필요하기 때문에 종종 회피됩니다. 그러나 신경망이 무한대로 넓어지면 앙상블은 computed throughout training을 통해 계산될 수 있는 평균과 분산을 가지는 가우시안 프로세스에 의해 설명됩니다.


뉴럴 탄젠트(Neural Tangents)를 사용하면 5줄의 코드만 사용하여 이러한 무한 와이드 네트워크의 앙상블을 한 번에 구성하고 훈련할 수 있습니다! 결과 훈련 과정이 아래에 표시되며 이 실험을 진행하는 대화형 공동 작업 노트북은 여기에서 찾을 수 있습니다.

2_50fps_640_lossy.gif [그림 2]

[그림 2] 상세 설명 - 두 도표에서 유한 신경망의 앙상블 훈련과 동일한 아키텍처의 infinite-width 앙상블 훈련을 비교합니다. 유한 앙상블의 경험적 평균과 분산은 두 개의 점선으로 된 검은 선 사이에 검은 점선으로 표시됩니다. 무한 너비 앙상블의 closed-form 평균 및 분산은 채워진 색 영역 안에 단색 선으로 표시됩니다. 두 플롯에서 유한 및 무한 너비 앙상블은 매우 밀접하게 일치하며 구별하기가 어려울 수 있습니다. 왼쪽 : 훈련이 진행됨에 따라 입력 데이터(수평 x 축)에 출력(수직 f 축)을 출력합니다. 오른쪽 : 훈련 과정에서 불확실성으로 손실을 훈련하고 테스트합니다.


infinite-width 앙상블이 단순한 닫힌 형식 표현에 의해 지배된다는 사실에도 불구하고, 그것은 finite-width 앙상블과 현저한 일치를 보입니다. 그리고 infinite-width 앙상블은 가우스 프로세스이므로 자연스럽게 닫힌 형태의 불확실성 추정치(estimates)(위 그림에서 채색된 채색 영역)를 제공합니다. 이러한 불확실성 추정치는 유한 네트워크의 많은 다른 사본(점선)을 훈련할 때 관찰되는 예측의 변화와 밀접하게 일치합니다.


위의 예는 훈련 역학을 포착하는 infinite-width 신경망의 힘을 보여줍니다. 그러나 neural tangents를 사용하여 구축된 네트워크는 일반적인 신경망 네트워크를 적용할 수 있는 모든 문제에 적용될 수 있습니다. 예를 들어, 아래에서는 CIFAR-10 데이터셋을 사용한 이미지 인식에 관한 세 가지 다른 infinite-width 신경망 아키텍처를 비교합니다. 놀랍게도, 우리는 기울기 하강과 fully-Bayesian 추론(finite-width 체제에서 다루기 힘든 과제)에서 닫힌 형태의 wide residual networks와 같은 매우 정교한 모델의 앙상블을 평가할 수 있습니다.

image2.png [그림 3]

우리는 유한 신경망을 모방할 때 infinite-width 네트워크는 콘볼루션(convolutional) 네트워크보다 성능이 좋지 않은 fully-connected 네트워크와 유사한 성능의 계층 구조를 따른다는 것을 알 수 있으며 결과적으로 wide residual 네트워크보다 성능이 저하됩니다. 그러나 정기적인 훈련과 달리 이 모델의 학습 역학은 closed-form로 완전히 다루기 쉬워 전례 없는 그들의 행동에 대한 통찰력을 제공합니다.


뉴럴 탄젠트(Neural Tangents)를 사용하여 infinite-width 버전의 모델을 탐색하고 딥러닝의 블랙박스를 열도록 도와주십시오. 만일 여러분이 이것을 시작하려면 논문, Colab 노트북 자습서Github 저장소를 확인하십시오. 기고, 기능 요청 및 버그 보고서는 매우 환영합니다. 이 작품은 ICLR 2020에서 주목을 받았습니다.


감사의 말

Neural Tangents는 Lechao Xiao, Roman Novak, Jiri Hron, 이재훈, Alex Alemi, Jascha Sohl-Dickstein 및 Samuel S. Schoenholz가 적극적으로 개발하고 있습니다. 또한 야사 만 바리와 그렉 양에게 도서관 개선에 대한 지속적인 기여와 Sergey Ioffe, Ben Adlam, Ravid Ziv, Jeffrey Pennington 그리고 빈번한 토론과 유용한 피드백에 감사드립니다. 마지막으로 첫 번째 그림에서 애니메이션을 만든 Tom Small에게 감사합니다.


원본 제목: 뉴럴 탄젠트가 있는 더 빠르고 쉬운 무한 와이드 네트워크(Fast and Easy Infinitely Wide Networks with Neural Tangents)
게시자 : Samuel S. Schoenholz, 수석 연구 과학자, Roman Novak, Google Research 연구원
원본 링크: https://ai.googleblog.com/2020/03/fast-and-easy-infinitely-wide-networks.html

Deep Neural Networks as Gaussian Processes 논문: https://arxiv.org/abs/1711.00165
Harnessing the Power of Infinitely Wide Deep Nets on Small-data Tasks 논문: https://arxiv.org/abs/1910.01663
Neural Tangent Kernel: Convergence and Generalization in Neural Networks 논문: https://arxiv.org/abs/1806.07572
Wide Neural Networks of Any Depth Evolve as Linear Models Under Gradient Descent 논문: https://arxiv.org/abs/1902.06720
Wide Residual Networks 논문: https://arxiv.org/abs/1605.07146
Neural Tangents: Fast and Easy Infinite Neural Networks in Python 논문: https://arxiv.org/abs/1912.02803
Neural Tangents 오픈소스: https://github.com/google/neural-tangents
JAX(Autograd and XLA) 오픈소스: https://github.com/google/jax
Neural Tangents Cookbook Colab: https://colab.research.google.com/github/google/neural-tangents/blob/master/notebooks/neural_tangents_cookbook.ipynb
이 블로그는 2020년 3월 13일(금), Google AI Research Blog 기사를 영한 번역한 것입니다. 또한 이 번역 글은 정보 공유 목적으로만 작성했으므로 어떠한 상업용으로 사용할 수 없으며, 원본 저작물 모두 구글에게 저작권이 있음을 알려 드립니다. (First Draft Version
keyword
매거진의 이전글픽셀4의 Soli 레이더 기반 인식 및 상호작용