Skip to main content
QUICK REVIEW

[논문 리뷰] Neural Programmer-Interpreters

Scott Reed, Nando de Freitas|arXiv (Cornell University)|2016. 01. 01.
Advanced Neural Network Applications인용 수 148
한 줄 요약

Neural Programmer-Interpreter(NPI)는 작업에 종속되지 않는 순환 핵심, 지속적인 키-값 프로그램 메모리, 도메인 특화 인코더를 사용하여 프로그램을 표현하고 실행하는 순환적이고 구성적인 신경망이다. 하위 프로그램을 조합함으로써 샘플 복잡도를 감소시키고 일반화 능력을 향상시키며, 풍부한 완전한 지도 학습 실행 추적을 소량으로 제공받아 덧셈, 정렬, 3D 모델 표준화 작업을 포함한 21개의 하위프로그램을 학습하고 실행할 수 있다.

ABSTRACT

Abstract: We propose the neural programmer-interpreter (NPI): a recurrent and compositional neural network that learns to represent and execute programs. NPI has three learnable components: a task-agnostic recurrent core, a persistent key-value program memory, and domain-specific encoders that enable a single NPI to operate in multiple perceptually diverse environments with distinct affordances. By learning to compose lower-level programs to express higher-level programs, NPI reduces sample complexity and increases generalization ability compared to sequence-to-sequence LSTMs. The program memory allows efficient learning of additional tasks by building on existing programs. NPI can also harness the environment (e.g. a scratch pad with read-write pointers) to cache intermediate results of computation, lessening the long-term memory burden on recurrent hidden units. In this work we train the NPI with fully-supervised execution traces; each program has example sequences of calls to the immediate subprograms conditioned on the input. Rather than training on a huge number of relatively weak labels, NPI learns from a small number of rich examples. We demonstrate the capability of our model to learn several types of compositional programs: addition, sorting, and canonicalizing 3D models. Furthermore, a single NPI learns to execute these programs and all 21 associated subprograms.

연구 동기 및 목표

  • 구성적이고 일반화 가능한 방식으로 프로그램을 표현하고 실행할 수 있는 신경 모델을 개발하는 것.
  • 약한 지도 학습 대신 풍부한 완전한 지도 학습 실행 추적을 활용하여 프로그램 학습의 샘플 복잡도를 감소시키는 것.
  • 지속적인 키-값 메모리를 통해 기존 프로그램을 기반으로 하여 새로운 작업을 효율적으로 학습할 수 있도록 하는 것.
  • 중간 계산 결과를 외부 환경(예: 읽기/쓰기 포인터가 있는 메모지)에 위임하여 순환 단위의 장기 계산 부담을 줄이는 것.
  • 단일 통합 모델 아키텍처를 통해 시각적으로 다양하게 표현된 환경 간의 일반화를 보여주는 것.

제안 방법

  • NPI는 입력 시퀀스를 처리하고 프로그램 실행 전반에 걸쳐 은닉 상태를 유지하기 위해 작업에 종속되지 않는 순환 핵심을 사용한다.
  • 지속적인 키-값 프로그램 메모리는 중간 프로그램 상태와 하위 프로그램을 저장하고 검색하는 데 사용된다.
  • 도메인 특화 인코더는 시각적으로 다를 수 있는 환경에 조건을 줘서 다양한 기능 간의 전이를 가능하게 한다.
  • 입력 조건에 따라 하위 프로그램 호출이 이루어지는 지도 학습 실행 추적을 통해 하위 프로그램을 고수준 프로그램으로 조합하는 방식으로 학습한다.
  • 중간 계산 결과는 외부 환경(예: 읽기/쓰기 포인터가 있는 메모지)에 캐시되어 순환 은닉 단위의 부담을 줄인다.
  • 모든 프로그램이 하위 프로그램 호출의 예시 시퀀스와 연결된 완전한 지도 학습 실행 추적을 사용하여 훈련이 수행된다.

실험 결과

연구 질문

  • RQ1단일 신경 모델이 다양한 시각적 환경에서 다양한 종류의 구성 프로그램을 조합하고 실행할 수 있는가?
  • RQ2풍부한 완전한 지도 학습 실행 추적을 사용할 경우 약한 지도 학습에 비해 샘플 복잡도가 감소하는가?
  • RQ3지속적인 프로그램 메모리는 기존 하위 프로그램을 재사용함으로써 새로운 작업의 효율적 학습을 가능하게 하는가?
  • RQ4외부 환경에 중간 계산을 위탁함으로써 모델 성능과 일반화 능력이 얼마나 향상되는가?
  • RQ5통합 모델 아키텍처가 덧셈, 정렬, 3D 모델 표준화와 같은 다양한 작업 간의 일반화를 달성할 수 있는가?

주요 결과

  • 단일 NPI 모델은 덧셈, 정렬, 3D 모델 표준화를 포함한 21개의 별도 하위 프로그램과 그에 상응하는 고수준 프로그램을 성공적으로 학습하고 실행한다.
  • 풍부한 완전한 지도 학습 실행 추적을 소량으로 제공받아 샘플 복잡도를 감소시키고 일반화 능력을 향상시킨다.
  • 지속적인 키-값 프로그램 메모리는 기존 하위 프로그램을 조합함으로써 새로운 작업을 효율적으로 학습할 수 있도록 허용하는 전이 학습을 가능하게 한다.
  • 외부 환경(예: 메모지)에 중간 계산을 위탁함으로써 순환 은닉 단위의 장기 기억 부담을 줄일 수 있다.
  • 도메인 특화 인코더 덕분에 핵심 모델을 재학습하지 않고도 입력 표현을 적응시켜 다양한 시각적 환경 간의 일반화가 가능하다.
  • 구성 아키텍처 덕분에 더 단순하고 재사용 가능한 하위 프로그램을 조합함으로써 복잡한 프로그램을 학습할 수 있다.

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

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

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

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