You are on page 1of 2

Proceedings of KIIS Autumn Conference 2017 Vol. 27, No. 2.

미분가능 뉴럴 컴퓨터의 이해와 활용을 위한


보조 패키지 연구
Studies on Auxiliary Package for Understanding and Utilizing
Differentiable Neural Computers
박정호1․김재인2․박주영1,3
Jeongho Park, Jaein Kim and Jooyoung Park
1고려대학교 제어계측공학과
Department of Control and Instrumentation Engineering, Korea University
2고려대학교 수학과
Department of Mathematics, Korea University
3고려대학교 전자기계융합공학과
Department of Electro-Mechanical Systems Engineering, Korea University
요 약
최근 들어 구글 딥 마인드에 의해 발표된 각종 머신러닝 기술들은 여러 분야에서 우수한 성능을 보이며 인공지능 시스템을
위한 주요 첨단 도구로써 많은 관심을 받으며 다양한 분야에 활용이 모색 되고 있다. 본 논문에서는 2016년 말에 딥마인드
에 의해 네이처 저널에 뱔표 된 미분 가능 뉴럴 컴퓨터 기술의 이해와 활용을 위한 보조 패키지를 다룬다. 미분가능 뉴럴 컴
퓨터는 신경망, 메모리, 인터페이스 등이 복합적으로 결합된 시스템이므로, 본 논문이 다루는 보조 패키지는 학습 과정이나
적용 과정에 대한 이해를 도울 수 있도록 함으로써 시스템의 작동 원리에 대한 이해를 수월하게 할 뿐만 아니라, 그 활용 역
량을 개선시키는 효과를 거둘 수 있을 것으로 기대한다.
키워드: 미분 가능 뉴럴 컴퓨터, 순환형 신경망, 딥 러닝, 보조 패키지, 머신러닝 교육 자료

1. 서 론 (back-propagation)를 통하여 변화시키는 방식으로 학습


을 실행하는데, 이러한 방식은 응용 분야에 따라서 충분히
최근 들어 머신 러닝은 다양한 공학 분야에서 이론 및 좋은 성과를 거두기는 곤란한 기술적 한계를 가질 수 있
적용 가능성 등의 측면에서 큰 가능성을 보여주고 있다. 다. 구글 딥 마인드는 미분가능 뉴럴 컴퓨터[1]를 통하여,
특히, 구글 딥 마인드에 의해 발표된 미분가능 뉴럴 컴퓨 기존 신경망 기반 딥 러닝 기술의 한계를 극복하기 위해
터 관련 기술[1,2], DQN 기술[3], 알파고 관련 기술[4,5] 신경망의 입출력 기능을 수행하는 제어기(controller)와
등은 인공지능 시스템을 위한 선도적 기술로써 많은 관심 학습 결과를 효과적으로 저장할 수 있는 외부 메모리
을 받으며 다양한 분야에 활용이 모색 되고 있다. 본 논문 (external memory)로 분리하는 구조를 제안하였다[1]. 보
에서는 2016년 말에 구글 딥 마인드 사에 의해 네이처 저 다 구체적으로, 미분가능 뉴럴 컴퓨터는 제어기
널에 발표된 미분가능 뉴럴 컴퓨터(differentiable neural (controller), 읽기/쓰기 헤드(read/write heads), 외부
computer, DNC)[1] 기술의 이해와 활용을 위한 보조 패 메모리(external memory), 시간적 링크 행렬(temporal
키지를 다룬다. 미분가능 뉴럴 컴퓨터는 신경망, 메모리, link matrix), 메모리 사용 가중치 벡터(memory usage
인터페이스 등이 복합적으로 결합된 시스템이므로, 학습 weighting) 등으로 구성된다. 제어기는 입력과 외부 메모
과정이나 적용 과정에 대한 이해를 도울 수 있는 보조 패 리로부터의 정보를 받아 LSTM이나 MLP 등의 신경망 모
키지가 마련되는 경우 시스템의 작동 원리에 대한 이해가 델을 통해 결과를 출력하는 구조를 갖는다. 읽기/쓰기 헤
수월해질 뿐만 아니라, 그 활용 역량이 개선되는 효과를 드는 쓰기 벡터(write vector), 지우기 벡터(erase
거둘 수 있다. vector), 읽기 벡터(read vector), 쓰기 키(write key),
본 논문의 구성은 다음과 같다. 1장에서는 서론을 제시 읽기 키(read key), 읽기 모드 벡터(read mode vector)
하고, 2장에서는 미분가능 뉴럴 컴퓨터 시스템을 간단히 등으로 구성된 인터페이스 부분이다. 이 부분에서는 제어
소개한 후 이 시스템의 이해와 활용을 돕기 위한 보조 패 기로부터 출력된 값을 외부 메모리의 어디에 쓸 것인가,
키지의 의의와 내용을 간단히 소개한다. 그리고 3장에서 제어기가 제공하는 입출력 키의 정보와 외부 메모리의 정
는 결론 및 향후 과제 등을 제시한다. 보 중에 비슷한 데이터는 무엇인가 등을 확인하여 제어기
와 외부 메모리 간에 주요 필요 정보를 중계하는 역할을
2. 본 론 수행한다. 다음으로 외부 메모리는 제어기에서 학습된 정
구글 딥 마인드는 2016년 10월에 미분가능 뉴럴 컴퓨 보에 대해 저장하고, 필요시에 해당 메모리 정보를 제공하
터 기술[1]을 발표하였다. 미분가능 뉴럴 컴퓨터 [1]는 구 는 역할을 한다. 마지막으로 외부 메모리의 사용량 정보를
글 딥 마인드가 그 이전에 발표했던 NTM(neural Turing 제공하는 메모리 사용 가중치 벡터(usage weighting)와
machine)[2]의 연장선 상에서 개발된 기술로써, DQN[3] 각 데이터 간의 순서 정보를 제공하는 링크 행렬(link
과 알파고[4]에 이어 세 번째로 구글 딥마인드에 의해 네 matrix)로 구성된다. 이러한 구조들을 통해 입력 데이터
이처 저널에 발표한 머신러닝 기술이다. 널리 알려진 바와 가 주어졌을 때, 이에 대응하는 주요 정보가 외부 메모리
같이 신경망(neural networks)은 일반적으로 정해진 전 에 존재할 경우에 이를 이용하여 결과 값을 출력할 수 있
형적인 신경망 구조의 노드 사이의 연결강도를 기울기 강 도록 한다. 입력 데이터에 대응하는 정보가 외부 메모리
하 (gradient descent)를 위한 역전파 상에 존재하지 않을 경우에는, 해당 입력 데이터 관련 정
보를 외부 메모리에 기록하여 추후에 비슷한 데이터의 입
56
Proceedings of KIIS Autumn Conference 2017 Vol. 27, No. 2.
력이 있을 때 사용할 수 있다.
미분가능 뉴럴 컴퓨터의 기본 구조를 대략적으로 표현
하면 [그림 1]과 같다([1] 참조). 그림 1에서는 편의상 제
어기가 LSTM(long short term memory)을 기반으로 하
는 경우를 도시하였으며, MLP(multi-layer Perceptron)
기반 제어기를 사용하는 경우에는 “LSTM-based
controller*”라고 표현된 블록이 “MLP-based
controller”로 바뀌게 되고, 해당 블록에 점선으로 표현된
피드백 경로는 없어지게 된다. 본 논문에서는, [그림 1]의
미분가능 뉴럴 컴퓨터의 학습 과정과 적용 과정에 대한
이해를 도울 수 있는 보조 패키지의 개발을 고려하였다.
지면의 제약으로 말미암아, 개발 중인 패키지에 대한 상세
한 기술은 나중으로 미루기로 하고 이에 관한 핵심적인
내용만 간단히 요약하여 소개하면 다음과 같다:
- 보조 패키지의 의의: 미분가능 뉴럴 컴퓨터는 신경망,
메모리, 인터페이스 등이 복합적으로 결합된 시스템이므 [그림 3] 보조 패키지
로, 학습 과정이나 적용 과정에 대한 이해를 도울 수 있는 출력의 예: 메모리 행렬,
보조 패키지의 마련을 통하여 전체 시스템의 작동 원리에 읽기/쓰기 헤드 등의 내용
변화 관찰용 매트릭스.
대한 이해가 수월해질 뿐만 아니라, 그 활용 역량이 개선
되는 효과를 거둘 수 있다.
- 학습 과정과 적용 과정의 분리: 미분가능 뉴럴 컴퓨터
를 설명하는 자료들은 곧잘 학습 과정과 적용 과정을 혼 3. 결 론
용하여 학습 성능을 논하곤 한다. 본 패키지에서는 이 과 본 논문에서는, 구글 딥 마인드에 의해 최근에 발표된
정들을 분리하고, 상태 전이(state transition) 개념을 명 미분가능 뉴럴 컴퓨터(differentiable neural computer)
시적으로 활용하여 그 작동 원리를 관찰한다. 이러한 관찰 기술의 이해와 활용을 위한 보조 패키지에 관한 문제를
에는 [그림 2]의 개념도[6]가 중요한 역할을 하며, 메모리 고려하였다. 이러한 보조 패키지 개발의 진행 과정에서,
행렬  와 함께, LSTM의 내용 정보  , 사용 가중치 벡 미분가능 뉴럴 컴퓨터 분야는 장차 보다 강력한 학습과
터(usage weighting)  , 선행 가중치 벡터  추론을 가능하게 함으로써 머신러닝의 응용 범위를 확대
 

(precedence weighting) 및 링크 행렬(link matrix)  하고 역량을 심화하여 궁극적으로 머신 러닝을 한 단계


 

등이 주요 상태변수가 된다.

더 높은 수준으로 도약할 수 있도록 해주는 미래 지향적
- 주요 특징 별 관찰 모듈 작성: 미분가능 뉴럴 컴퓨터는 핵심 기술로 발전할 것이라는 기대를 느낄 수 있었다. 관
신경망, 메모리, 인터페이스 등이 복합적으로 결합된 시스 련하여 수행할 향후 과제로는, 좀 더 폭넓은 측면을 다룰
템이므로, 그 학습 및 작동 상황을 전체적으로 조망할 수 수 있도록 패키지를 확대하는 작업, 보다 다양한 종류의
있기 위해서는 특징별로 주요 요소를 분리하여 관찰하는 응용을 고려하는 작업 및 미분가능 뉴럴 컴퓨터의 성질에
것이 필요하다. 이러한 필요성을 충족하기 위하여 주요 특 대한 이론적 고찰 등을 들 수 있다.
징별 관찰 모듈을 활용한다. 예를 들어, 보조 패키지 중,
메모리 행렬, 읽기/쓰기 헤드 등의 내용 변화 관찰용 매 감사의 글 : 본 연구는 산업통상자원부의 산업융합핵심
트릭스의 모양은 [그림 3]과 같다. 기술개발사업 (10063172, 환경변화에 강인한 실내외 통
합 자율주행을 위한 학습형 로봇이동지능기술 개발)의
지원으로 수행되었음.
참 고 문 헌
[1] Graves, A., Wayne, G., Reynolds, M., Harley, T.,
Danihelka, I., Grabska-Barwińska, A., ... &Badia, A.
P. (2016). Hybrid computing using a neural network
with dynamic external memory. Nature, 538(7626),
471-476.
[2] Graves, A., Wayne, G., &Danihelka, I. (2014).
Neural turing machines. arXiv preprint
arXiv:1410.5401.
[3] Mnih, V., Kavukcuoglu, K., Silver, D., Rusu, A.
[그림 1] 미분 가능 뉴럴 컴퓨터의 기본 구조 [1]. A., Veness, J., Bellemare, M. G., ... &Petersen, S.
(2015). Human-level control through deep
reinforcement learning. Nature, 518(7540), 529-533.
[4] Silver, D., Huang, A., Maddison, C. J., Guez, A.,
Sifre, L., Van Den Driessche, G., ... & Dieleman, S.
(2016). Mastering the game of Go with deep neural
networks and tree search. Nature, 529(7587),
484-489.
[5] Silver, D., Schrittwieser, J., Simonyan, K.,
Antonoglou, I., Huang, A., Guez, A., ... &Chen, Y.
(2017). Mastering the game of Go without human
knowledge. Nature, 550(7676), 354-359.
[그림 2] 미분 가능 뉴럴 컴퓨터 개념도[6]. [6] 박주영외 4인, (2017) 머신러닝 방법론의 이해 (출
판 예정).

57

You might also like