레플리
글 수 283

다이나믹 메모리 네트워크 정리

조회 수 1135 추천 수 0 2018.09.29 20:37:14


K-001.jpg

 

 

 

지난번에 페이스북에서 만든 Memory Networks(MemNN)와 End-to-End Memory Networks(MemN2N)에 대해서 아래와 같이 소개를 하였습니다.

 

http://aidev.co.kr/chatbotdeeplearning/5925

 

 

 

이번에는 이를 발전시킨 Dynamic Memory Networks(DMN)에 대해서 간략하게 살펴보겠습니다. 이 알고리즘은 실리콘밸리의 인공지능 스타트업인 MetaMind에서 발표하였는데, CEO인 Rechard Socher가 스탠포드의 유명한 자연어처리 강좌인 CS224n의 담당 교수이기도 합니다.

 

MemNN, MemN2N은 feedforward 신경망으로 구성되어 있고 질의응답 문제에만 특화되어 있습니다. 하지만 DMN는 RNN의 한 방법인 GRU를 기반으로 하고 있으며 질의응답만 아니라 텍스트 분류, POS 태깅 등 다양한 자연어처리 작업도 하나의 모델로 적용할 수 있습니다.

 

RNN은 문장이 길어지면 멀리 떨어진 정보 사이의 관계를 학습하기가 어렵습니다. 이를 보완하기 위해 LSTM이나 GRU가 사용되었는데 최근 어텐션 기법으로 성능이 더욱 향상되었습니다. 보통 seq2seq 모델에서 인코더와 디코더 사이를 어텐션 신경망으로 연결하여, 각 출력 단어를 생성할때 입력의 어느 부분에 집중할지 알려줍니다. DMN은 여기에 GRU로 된 메모리 모듈을 하나 더 추가한 것이 가장 큰 특징입니다.

 

 

 

K-003.jpg

 

하지만 DMN의 단점은 MemNN와 마찬가지로 학습시 supporting factor로 입력 문장들 중 어떤 것이 질문과 관련이 있는지 명시적으로 알려주어야 한다는 것입니다. 그래서 DMN+를 새로 발표했는데 MemN2N처럼 supporting factor가 필요없으며 MemN2N보다 더 높은 성능을 보여줍니다. 또한 이미지를 입력으로 하고 문장으로 질문과 대답을 할 수도 있습니다.

 

 

 

K-002.jpg

 

DMN이 입력 모듈에서 하나의 GRU만으로 구성된 것에 비해 DMN+는 이를 Sentence Reader와 Input fusion layer로 분리하였습니다. 또한 bi-directional GRU를 사용하여 입력 문장들의 정보를 보다 유연하게 처리할 수 있습니다. 두번째로 어텐션 부분이 차이가 있는데 기존 GRU를 Attention based GRU로 변경하였습니다.

 

스탠포드 강의에서 Rechard Socher가 여러가지 자연어처리 방법을 하나의 모델로 통합할 필요가 있다고 강조하기도 했습니다. DMN이 그 가능성을 보여주고 있는 것 같습니다. 앞으로 텐서플로에서 LSTM이나 GRU처럼 DMN도 명령어 하나로 간편하게 사용하게 될지도 모르겠습니다.

 

 

 

< 논문 >
https://arxiv.org/pdf/1506.07285.pdf
https://arxiv.org/pdf/1603.01417.pdf

 

List of Articles
제목 글쓴이 날짜sort 조회 수
워드 임베딩에 대한 아주 쉬운 설명 - The Illustrated Word2vec 깊은바다 2019-04-09 703
BERT로 토익 문제를 푸는 프로젝트 file 깊은바다 2019-04-30 2281
Jay Alammar의 트랜스포머 한글 번역글 깊은바다 2019-05-09 1063
인간의 언어를 이해하는 기계, NLU 깊은바다 2019-05-17 850
GPT2를 Colab에서 테스트할 수 있는 코드 깊은바다 2019-05-21 1782
가짜뉴스를 생성 또는 판별하는 딥러닝 모델 - Grover 깊은바다 2019-06-01 969
딥러닝을 사용하여 의도 및 엔티티를 파악하는 챗봇 소스코드 file 깊은바다 2019-06-25 2328
딥러닝 자연어처리 강의 - Natural Language Processing with PyTorch 깊은바다 2019-07-06 687
케라스로 만든 한글 Seq2Seq 챗봇 소스코드 깊은바다 2019-07-13 3091
페이스북이 발표한 사전훈련 언어모델 RoBERTa file 깊은바다 2019-07-30 1429
위키에서 질문의 답을 찾는 딥러닝 모델, 페이스북의 DrQA file 깊은바다 2019-08-03 902
딥러닝을 사용하여 심심이의 나쁜말 필터링 기능 구현 깊은바다 2019-08-14 902
새로운 자연어처리 벤치마크 - SuperGLUE 깊은바다 2019-08-15 703
100억건의 카카오톡 데이터로 
똑똑한 일상대화 인공지능 만들기 - 핑퐁 멀티턴 file 깊은바다 2019-08-20 1732
딥러닝을 활용한 뉴스 메타 태깅 깊은바다 2019-08-26 379