36
설설설설 설설 Watanabe yusuke 설설 설설설 Meta-Learning with Memory- Augmented Neural Networks 설설설설 : Adam Santoro, Sergey Bartunov, Matthew Botvinick, Daan Wierstra, Timothy Lillicrap Google DeepMind

Meta-Learning with Memory Augmented Neural Networks

  • Upload
    -

  • View
    539

  • Download
    4

Embed Size (px)

Citation preview

Page 1: Meta-Learning with Memory Augmented Neural Networks

설명자료 작성Watanabe yusuke

번역김홍배

Meta-Learning with Mem-ory- Augmented Neural Networks논문저자 :

Adam Santoro, Sergey Bartunov, Matthew Botvinick, Daan Wierstra, Timothy Lillicrap Google DeepMind

Page 2: Meta-Learning with Memory Augmented Neural Networks

논문을 한마디로 정리하면

2

Neural Turing Machine 을One-Shot Learning 에 응용해 봄

Page 3: Meta-Learning with Memory Augmented Neural Networks

Neural Turing Machine (NTM) 란 [Graves+2014]

• NTM 이란、외부기억장치 ( 메모리 ) 와 읽기 / 쓰기 기능을 갖춘 Neural Network• 복사 및 분류등과 같은 알고리즘을 학습하는 것이 가능• Neural Network 이므로 Back Propagation 으로 학습 가능

Con-troller

Mem-ory

Read Head

Write Head

in-put

3

out-put

NTM

메모리와 읽기 / 쓰기 기능도 포함하여 전체가 Neural Network !

Page 4: Meta-Learning with Memory Augmented Neural Networks

예 : NTM 으로 계열 2 배 복사 작업의 학습입력계열 출력계열0100 NTM 01000100011 011011110111 11011111011110010 1001010010

학습시

4

입력계열을 2 배로 복사한 계열로 만듬

입력계열과 출력계열을 학습 데이터로 NTM 을 학습시키는 것이 가능

Page 5: Meta-Learning with Memory Augmented Neural Networks

NTM

입력계열 출력계열010111000 010111000010111000controller

NTM 은 들어온 계열을 차례로 메모리에 써 넣 고 그 것 을 2 회 에 걸 쳐 차 례 로 읽어낸다 .

010111000010111000

5

테스트 시

010111000

010111000

예 : NTM 으로 계열 2 배 복사 작업의 학습

Page 6: Meta-Learning with Memory Augmented Neural Networks

One-Shot Learning 란 ?

일반적인 NN 의 학습

1 개 ( 또는 소수 ) 의 예를 보여준 것만으로도 인식할 수 있도록 하도 싶다One-Shot Learn-ing

한번만 봐도 기억 ( 인간처럼 !!)

6

...많은 학습 데이터가 필요

Page 7: Meta-Learning with Memory Augmented Neural Networks

One-Shot Learning 방법 : NN algorithm

학습 시 테스트 시トリナクリ ア

토리나쿠리아 !

학습 데이터의 이미지 전체를 기억한다 . 기억 중에서 가장 가까운 이미지를 답한다 .

이 접근법의 과제• 이미지의 유사도는 어떻게 측정하면 좋을까 ?• Nearest-Neighbor 알고리즘은 최적일까 ?

⇒ NTM 을 사용하여、 Nearest-Neighbor 알고리즘 ( 보다 좋은 알고리즘 ) 을 공부해보자 !

ピザ 弥勒菩薩

7

Page 8: Meta-Learning with Memory Augmented Neural Networks

논문개요 • Neural Turing Machine (NTM) 을 개조한 Memory- Augmented Neural Network (MANN) 을 제안• One-Shot Learning 을 MANN 으로 수행• Omniglot 데이터셋으로 평가 시 고성능을 달성

8

Page 9: Meta-Learning with Memory Augmented Neural Networks

Ominglot 데이터 셋이란 • 다양한 문자종류로 이루어진 이미지 데이터 셋

• 문자는 1623 종류 , 각 문자 이미지는 20 개

• 우선 학습용과 테스트용으로 문자종류를 나눈다 .• 1200 문자종류를 학습으로 , 423 문자종류를 테스트로 사용

9

Page 10: Meta-Learning with Memory Augmented Neural Networks

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . •

빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

10

기억

Page 11: Meta-Learning with Memory Augmented Neural Networks

11

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 12: Meta-Learning with Memory Augmented Neural Networks

•••

12

1

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 13: Meta-Learning with Memory Augmented Neural Networks

1 2오답 !

•••

13

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 14: Meta-Learning with Memory Augmented Neural Networks

1 2오답 !2

•••

14

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 15: Meta-Learning with Memory Augmented Neural Networks

2

•••

15

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 16: Meta-Learning with Memory Augmented Neural Networks

2

•••

16

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 17: Meta-Learning with Memory Augmented Neural Networks

•••

17

3

2

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 18: Meta-Learning with Memory Augmented Neural Networks

3 1오답 !2

•••

18

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 19: Meta-Learning with Memory Augmented Neural Networks

3 1오답 !2 1

•••

19

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 20: Meta-Learning with Memory Augmented Neural Networks

2 1

•••

20

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 21: Meta-Learning with Memory Augmented Neural Networks

2 1

•••

21

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 22: Meta-Learning with Memory Augmented Neural Networks

2 1

•••

22

2

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 23: Meta-Learning with Memory Augmented Neural Networks

2 2정답 !2 1

•••

23

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 24: Meta-Learning with Memory Augmented Neural Networks

2 2정답 !2 1

•••

24

이하 50 회 계속 ...

작업설정“ 소수의 문제예를 본 것만으로 바로 인식이 가능”하도록 학습시키자 !!

•••

이런 일련의 프로세스를 에피소드라 부른다 .에피소드의 전반에서는 번호 ( 답 ) 를 랜덤하게 추정하지만 ,에피소드의 후반으로 갈 수록 정답률이 올라간다 . 빠르게 정답률이 올라간다 = One-Shot Learning 이 잘 된다 .

기억

Page 25: Meta-Learning with Memory Augmented Neural Networks

엔피소드 작성법1. 문자종류를 5 개 선택하여、 1 ~ 5 까지 랜덤하게 섞는다 . 2. 각 문자종류로부터 10 개의 이미지를 선택한다 .3. 이러한 50 개의 이미지를 랜덤하게 섞는다 :

1 episode

작업 : 이미지 𝑥𝑡 를 보여주고、그 번호 (1 ~ 5) 를 답하게 한다 .

직후에 정답번호 𝑦𝑡 를 보여준다 .

25

...

Page 26: Meta-Learning with Memory Augmented Neural Networks

학습과 테스트의 흐름학습 시

테스트용 에피소드는 학습에 사용하지 않은 것으로

테스트 시

대량의 에피소드로 학습( 문자를 분류하는 방법을 학습 )

アいアいうアうえおお ... アお ああはイイういははあ ...イう らむ ららももあむよよ ... よも

에피소드 길이 =50

26

ฆ ญฆ ฆช ฆ ...ค กข…

1 에피소드 중에 급격하게 정답률이 상승하면 ,One-Shot Learning 이 잘할 수 있게 되는 것

Page 27: Meta-Learning with Memory Augmented Neural Networks

실험결과

MANN( 제안된 방법 )

LSTM( 기준 )

40000 에피소드 정도 학습하면、2 번째에서 80% 정도 정답률

27

• 학습방법은 MANN 과 동일• LSTM 에서는 정답률이 좋지않음 . 원인으로는

LSTM 셀은 과거의 데이터를 확실하게 기억할 수 없기 때문이라고 생각된다

n-th instance = 각 라벨 문자 이미지를 n 번째 볼때의 정답률

Page 28: Meta-Learning with Memory Augmented Neural Networks

실험결과 ( 수치 )

• Human: 인간이 이작업에 도전할 때의 성능• Feedforward: 정답률은 1/5

28

Page 29: Meta-Learning with Memory Augmented Neural Networks

실험결과 : 다른 방법과 비교

• Nearest-Neighbor 알고리즘보다도 MANN 쪽이 고성능• 콘트롤러가 Feedforward 인 MANN 의 경우、 메모리는 기억을 저장할 수 있다 .

• LRUA( 후술 ) 이 없는 MANN (NTM) 은 성능이 낮다 .

29

Page 30: Meta-Learning with Memory Augmented Neural Networks

MANN 의 구조 : 개념도( ,(000100))

Memory

RReeaad-dHHeeaa

dd

Write Head

Con-trollerLSTM

cell_size=200

(write weight 의 계산방법은 후술 )

𝒊i 는 메모리 번지 30

Read Head

Page 31: Meta-Learning with Memory Augmented Neural Networks

MANN 의 구조 : 수식

• 읽기kt 로부터 메모리에서 읽어내는 부분을 결정 (read weight)

i 는 메모리 번지를 표시

• 쓰기 : 라벨과 이미지 쌍을 메모리에 저장한다 .write weight 계산값 at 를 write weight 에 따라 메모리에 쓰기

least used weight 최근에 사용되지 않은 메모리 영역을 나타내는 가중치 ( 후술 )

31

Page 32: Meta-Learning with Memory Augmented Neural Networks

MANN 의 구조와 NTM 과의 차이• MANN 은 Least Recently Used Access (LRUA) 의 기능이 있다 !!!

• MANN 은 location-based addressing 을 사용하지 않음 .

used weight 의 계산

※ 정확히는 used weight 이 작은 상위 m 개에서 값을 1 로 한다

32

새로운 이미지의 정보는 아직 사용하지 않는 메모리 번지에 쓰고 싶다 .LRUA 가 그것을 가능하게 하고있다 . (LRUA 가 없다면 안됀다 )

Page 33: Meta-Learning with Memory Augmented Neural Networks

관련논문 소개 : One-Shot Learning

• Matching Network [Vinyals2016]• 본논문 ” Meta-Learning with Memory-Augmented Neural Network” 의 후속• Omniglot 데이터셋 One-Shot Learning 에서 MANN 보다도 좋은 성능을 냄 .

[Lake2012]

33

• Hierarchical Bayesian Program Learn-ing• 필기문자모델을 디자인하고 베이지안으로 학습

Page 34: Meta-Learning with Memory Augmented Neural Networks

관련논문 소개 : Memory 를 갖춘 Neural Net-work

34

Memory = 정보를 유지하여 나중에 꺼내는 일이 가능한 장치

Memory 를 가진 장점 • 나중에 필요로 하는 정보를 안정적으로 보존가능

•••

LSTM 의 내부상태는 장기 보존용에 적합하지않음 복사작업 등 : [Ivo2016] 강화학습에서의 예 : [Junhyuk2016]

• 조합하고 싶은 정보를 “탁자 위에 배열하는” 것이 가능하다 .• QA 작업 : [Sukhbaatar2016]

Page 35: Meta-Learning with Memory Augmented Neural Networks

관련 논문 소개 : Memory 를 가진 Neural Net-work

••

메모리에서 읽어들이는 방법과 메모리에 기록하는 방법을 모두 학습 메모리의 읽기 / 쓰기 attention 은、 Hard or Soft [Caglar2016]

• Memory Network [Weston2015, Sukhbaatar2016,Felix2016]

•••

입력문을 메모리에 저장하여 , 질문에 답하는데 필요한 부분을 추출入力 메모리에서 읽기는 attention ( 가중치 ) 를 사용 (Hard or Soft) 메모리에 쓸 내용 (embedding vector) 는 학습• 쓰는 방법은 학습하지않음• Neural Turing Machine 계

입력문입력문

질문 응답 질문

응답

メモリ部分

35

Page 36: Meta-Learning with Memory Augmented Neural Networks

정리

36

• NTM 를 응용하여、 One-Shot Learning 이 가능하다• One-Shot Learning 으로서 성능은 우수하나 최고는 아니다 . • 이번에는 One-Shot Learning (Nearest-Neighbor 적인 알고리즘 ) 을 NTM 으로 학습하였지만 , 다른 작업에서도 유사한 아이디어를 사용하면

• 예로 active learning 등 ...• 작업에 따라 、 LRUA 와 같은 기능을 생각할 필요가 있는 과제