바로가기 메뉴
본문 바로가기
주메뉴 바로가기
신경망 구조 탐색 연구 동향
  • 추형석 역대연구원
날짜2018.06.30
조회수14723
    • 신경망 구조 탐색 연구는 최적의 인공신경망 구조를 도출하기 위한 방법론
    • 신경망 구조 탐색은 학습하는 방법을 학습하는 것으로, 경험적 결과에 기반한 기존의 심층학습 결과에 근접
  • 심층학습(Deep Learning)의 장점과 단점
    • (장점) 심층학습은 현대 인공지능 기술의 핵심으로 대규모 데이터를 학습하여 패턴을 인식하거나 미래를 예측하는 데 활용
    • 구글 딥마인드가 개발한 인공지능 바둑 프로그램 알파고는 13층의 합성곱 신경망*, 40층의 잔차 신경망**을 활용해 바둑 지식을 학습
    • * 합성곱 신경망(Convolutional Neural Network)은 이세돌 9단과 대결한 알파고 버전으로 16만 개의 바둑 기보를 학습한 인공신경망
    • ** ‌ 잔차 신경망(Residual Neural Network)은 인간의 바둑 기보 없이 스스로 대국하여 최정상 바둑실력을 증명한 알파고제로가 활용한 인공신경망 구조
    • 사진 분류 성능을 시험하는 CIFAR-10* 데이터셋 기준 예측 오차율은 2017년 기준 2.56%(DenseNet + CutOut)
    • * Canadian Institute For Advanced Research의 약어로 6만 장의 사진을 10개의 종류로 구분한 이미지 데이터로, 심층학습 분야에서 이미지 분류 성능을 측정하는 기준 데이터로 활용됨
    • 언어 모델을 시험하는 Penn Treebank* 데이터셋 기준 혼잡도(Perplexity)는 2018년 기준 56.0을 기록(Long Short-Term Memory(LSTM) 활용)1
    • * Penn Treebank는 문장을 형태소 별로 구분한 말뭉치 데이터셋으로 언어 모델의 성능(주어진 문장의 다음에 올 단어 예측)을 측정하는 데 활용
    • (단점) 심층학습은 성공적인 학습을 위해 방대한 양의 데이터가 필요하고, 높은 예측 성능에 대한 설명이 거의 불가능하며, 이로 인해 실험을 통한 경험적 결과에 의존
    • 심층학습에서는 데이터의 절대량이 예측 성능과 직결될 가능성이 높으며, 상대적으로 빈도가 낮은 경우*를 성공적으로 예측하기 위해서는 더욱 많은 데이터를 필요로 함
    • * 자연재해, 보험 사기, 비정상적인 금융 거래 등 현상 자체가 빈번하게 일어나지 않는 분야를 예측하는 경우
    • 심층학습으로 현상을 예측하는 인공신경망 모델이 왜 예측을 잘 하는지에 대한 설명 가능성*이 낮음
    • * 이 부분을 극복하기 위해 현재 미국의 방위고등연구계획국(DARPA)에서는 막대한 예산을 투입하여 설명 가능한 인공지능(Explainable AI) 연구를 진행 중
    • 심층학습의 결과물인 인공신경망 모델은 그 구조가 경험적으로 얻어진 것이 일반적으로, 보다 많은 경우의 수를 상정하여 시도한 최적의 결과
    • 신경망 구조 탐색(Neural Architecture Search, NAS) 기술은 앞서 기술한 심층학습의 세 번째 단점인 인공신경망 구조를 찾는 과정을 다시 심층학습으로 찾아내는 과정으로, 학습하는 방법을 학습하는 방법론으로 부상
  • 신경망 구조 탐색 기술과 그 성능
    • 신경망 구조 탐색은 <그림 1>과 같이 순환 신경망(Recurrent Neural Network)을 통해 파생되는 신경망을 학습하여 최적의 인공신경망 구조를 탐색
    • 인공신경망을 일종의 다변 문자열(variable-length string)으로 구체화하여 <그림 1>의 Controller는 일정 확률 p로 인공신경망 문자열(child network)을 생성
    • Child network는 학습 데이터로 학습되고, 검증 데이터로 정확도 R을 생성한 뒤 생성 확률인 p와 함께 Controller를 갱신
    • Controller는 높은 정확도를 갖는 child network에 더 높은 p 값을 부여하여 가장 예측을 잘 하는 인공신경망을 탐색
    • 그림 1 신경망 구조 탐색의 개념
      그림 1 신경망 구조 탐색의 개념
      ※ 출처 : Neural architecture search with reinforcement learning에서 재구성
    • 신경망 구조 탐색은 인공신경망의 구조적인 모수(architectural hyperparameter)를 탐색하는 것으로 앞먹임(feedfoward) 방식의 합성곱신경망의 모수는 <그림 2>와 같이 표현할 수 있음
    • 그림 2 합성곱신경망의 모수를 찾기 위한 Controller의 순환신경망 구조
      그림 2 합성곱신경망의 모수를 찾기 위한 Controller의 순환신경망 구조
      ※ 출처 : Zoph, Barret, and Quoc V. Le. “Neural architecture search with reinforcement learning.” arXiv preprint arXiv:1611.01578(2016).
    • 신경망 구조 탐색 역시 많은 시도로 결과를 도출하는 접근방법이기 때문에 계산의 효율을 높이기 위해서 다수의 child network를 동시에 생성하고 비동기식 병렬처리를 통해 Controller를 갱신
    • 신경망 구조 탐색의 성능
    • 신경망 구조 탐색의 성능은 수백 장의 고성능 GPU를 활용해 도출한 결과이나, 최근 한 장의 GPU를 활용해 효율을 극대화한 연구(Efficient Neural Architecture Search, ENAS)가 진행2
    • 앞서 소개한 데이터셋 CIFAR-10과 Penn Treebank에 대한 성능은 다음 [표 1]과 같음
    • 표 1 신경망 구조 탐색의 성능
      <표 1> 신경망 구조 탐색의 성능
      CIFAR-10 Penn Treebank
      방법론 파라메터 수(백 만) 오차율(%) 방법론 파라메터 수(백 만) 혼잡도
      경험적인 방법(DenseNet) 26.2 2.56 경험적인 방법(LSTM) 22 56.0
      NAS 3.3 2.65 NAS 54 62.4
      ENAS 4.6 2.89 ENAS 24 55.8
    • ※ 출처 : Pham, Hieu, et al. “Efficient Neural Architecture Search via Parameter Sharing.” arXiv preprint arXiv:1802.03268(2018).
  • 결론
    • 신경망 구조 탐색은 경험적인 지식에 의존하는 심층학습 구조를 인공지능을 통해 학습하여 도출한다는 개념으로, 그 성능은 전통적인 방법론에 육박할 정도로 높음
    • 그간의 연구결과는 수백 대의 고성능 컴퓨팅 자원이 필요로 한 반면, 최근 컴퓨터 한 대 수준에서의 신경망 구조 탐색 기법을 구현하여 성능을 증명함으로써, 앞으로의 심층학습 분야의 발전 가능성을 시사
    • 1 Pham, Hieu, et al. “Efficient Neural Architecture Search via Parameter Sharing.” arXiv preprint arXiv:1802.03268(2018).
    • 2 Pham, Hieu, et al. “Efficient Neural Architecture Search via Parameter Sharing.” arXiv preprint arXiv:1802.03268(2018).