KalelPark's LAB

[Meta Learning] Neural Turing Machines이란? 본문

Data Science/Meta Learning

[Meta Learning] Neural Turing Machines이란?

kalelpark 2022. 12. 28. 22:50

NTM(Neural Turing Machines)

       * Meta Learning의 MANN(Memory-Augmented Neural Networks)와 SNAIL(Neural Attentive Meta-Learner)
          두 알고리즘에 대해서 이해하기 위해 공부해야 하는 선수조건입니다.

 

       - 이름 그대로, Neural Networks를 이용해, Turing Machine을 구현하는 것이다.
          (Turing Machine : 현대 컴퓨터 구조의 토대가 된 가상의 기계로, 수치 연산, 메모리 읽기, 메모리 쓰기의 기능을 가지고 있다.)

 

       - 이전의 Memory 형태로 저장되는 RNN과 LSTM은 Implicit Memory를 가지고 있었지만, 외부의 메모리를 가질 수 없었습니다.
          NTM은 Neural Networks 외부에 명시적인 메모리 구조를 만들고, 현대 컴퓨터 구조처럼 연산을 수행하는 구조입니다.

Neural Turing Machines(NTM) Architecture

       - 위 그림에서 볼 수 있듯이 기존의 순환 신경망은 Externel Input이 들어오면 연산을 처리하고, Externel Output을 출력하였습니다.

          기존의 Networks와 차이점은 Controller가 외부의 Memory Matrix에 접근해서, 읽고(Read), 쓰는(Write) 것이 가능합니다.

 

* 각각의 특징들에 대해서 세부적으로 파악해보도록 하겠습니다.

Externel Memory

       - NTM(Neural Turing Machine)의 외부 메모리는 N*M 행렬의 형태로 저장되며, 각 열이 하나의 메모리 위치를 나타낸다.

          즉 N은 외부 메모리의 용량을 나타내고, M은 각 메모리 위치의 차원을 나타냅니다.        

 

       - 외부 메모리는 컨트롤러의 헤드들에 의해 새로운 입력이 들어올 때마다 조금씩 변환됩니다.
          그러므로, 메모리를 표기할 때는, 시간을 가리키는 t와 함께 표기해야 합니다.

Read Memory

       - Read Head의 역할은 Externel Memory를 이용해서, Read Vector를 만드는 것이다.
          Read Vector는 외부 메모ㅛ리들의 열들의 가중 산술 평균이다.

Calculate Weight

       - 메모리 읽기와 쓰기에 사용되는 가중치 계산은 NTM에서 가장 복잡한 부분이다.
          * 가중치 계산은 총 네 단계로 구성되어 있습니다.

                   - 가중치 계산

                   - 보간 단계

                   - 순환 이동 단계

                   - 선명화 단계

Reference

http://slazebni.cs.illinois.edu/spring17/lec27_memory.pdf

https://arxiv.org/abs/1410.5401

 

Neural Turing Machines

We extend the capabilities of neural networks by coupling them to external memory resources, which they can interact with by attentional processes. The combined system is analogous to a Turing Machine or Von Neumann architecture but is differentiable end-t

arxiv.org

http://solarisailab.com/archives/2162

 

논문 리뷰 4 – Neural Turing Machines | 솔라리스의 인공지능 연구실

이번 시간에 살펴볼 논문은 구글 딥마인드(Google Deepmind)에서 2014년에 발표한 Neural Turing Machines라는 논문이다.[1] Neural Turing Machines라는 논문의 목표는 제목 그대로 Neural Networks를 이용해 Turing Machine

solarisailab.com

 

 

Comments