레플리
글 수 283

구글의 Transformer 신경망 모델

조회 수 3022 추천 수 0 2018.10.13 19:40:13


https://jalammar.github.io/illustrated-transformer/

 

 

 

Transformer(영화제목이 아닙니다^^;)는 작년에 구글이 발표한 신경망 모델로 Seq2Seq 모델과 비슷하게 인코더와 디코더로 이루어져 있습니다. 보통 어텐션은 인코더의 히든 스테이트 중 어떤 것에 집중할지 softmax로 처리하여 디코더 계산에 같이 사용합니다. 하지만 Transformer는 셀프 어텐션 방식으로 인코더와 디코더를 연결하지 않고 내부에서만 어텐션을 사용합니다. 또한 LSTM이나 GRU 같은 RNN이 아니라 어텐션 신경망으로만 이루어져 있다는 것이 가장 큰 특징입니다.

 

예를 들어, "The animal didn't cross the street because it was too tired."라는 문장이 있을때 Seq2Seq는 각 단어가 분리되어 반복적으로 인코더에 입력됩니다. 그리고 디코더에서 'it'을 해석할때 어텐션으로 인코더의 'animal' 위치의 히든 스테이트 정보를 같이 참조합니다.

 

 

 

하지만 Transformer에서는 단어가 아니라 문장 전체를 한번에 입력으로 받습니다. 그리고 인코더에서 디코더로 어텐션을 주지 않고 인코더 자체에서 어텐션을 수행합니다. 'animal' 단어가 'it' 단어 위치에 Scaled Dot-Product 방법으로(이것 역시 softmax입니다) 가중치를 부여합니다. 디코더는 Seq2Seq와 비슷하게 단어별로 하나씩 출력을 합니다.

 

논문에서는 설명이 너무 어려웠는데 이 블로그에서는 그림으로 동작 방식이 자세히 묘사되어 있어 쉽게 이해할 수 있었습니다. 최근들어 많이 주목받고 있는 모델인 만큼 한번쯤 읽어보시길 추천드립니다.

엮인글 :

NeuroWhAI

2018.10.13 20:20:32
*.64.194.131

자료 감사합니다!~

깊은바다

2018.10.13 20:49:58
*.203.215.247

공부해야될게 너무 많아요 ㅠㅠ

List of Articles
제목 글쓴이 날짜sort 조회 수
글쓰는 법을 배우는 신경망 깊은바다 2016-03-25 1539
구글의 딥러닝 대화 알고리즘 깊은바다 2016-03-25 3356
딥러닝으로 챗봇 만들기 깊은바다 2017-05-03 3173
단어를 벡터로 변환하는 Word2Vec 깊은바다 2017-05-04 1039
추론이 가능한 딥러닝인 Relational Networks [2] 깊은바다 2017-06-11 2740
딥러닝 RNN으로 구현한 챗봇 깊은바다 2017-08-01 8135
End-To-End Memory Networks - 자연어 질문에 대답하는 모델 [2] 깊은바다 2017-08-21 962
Python과 Tensorflow를 활용한 AI Chatbot 개발 및 실무 적용 깊은바다 2017-08-25 2582
문장을 학습하는 딥러닝 RNN의 Seq2Seq 모델 설명 file 깊은바다 2017-09-15 7327
딥러닝 기반 자연어처리 기법의 최근 연구 동향 [2] 깊은바다 2017-12-17 1020
쉽게 씌어진 Word2Vec [2] 깊은바다 2017-12-25 1178
구글 딥러닝 자연어 처리 오픈소스 SyntaxNet file 깊은바다 2017-12-28 2784
딥러닝을 사용한 챗봇 개발방법 정리 file 깊은바다 2018-02-03 25442
한국어 자연어처리를 위한 딥러닝 깊은바다 2018-02-14 3651
딥러닝을 사용한 감성분석기 개발 깊은바다 2018-02-22 1658