Transformer는 시퀀스 데이터를 순차적으로 처리하는 기존의 RNN 구조를 버리고 내적을 통해 집중해야 하는 정보가 어떤 것인지 스스로 학습할 수 있게 하는 Attention Mechanism을 적극 활용한 모델이다. Positional EncodingTransformer에서는 순차적으로 처리하는 RNN과 달리 Attention을 통해 시퀀스 데이터가 한 번에 처리되기 때문에 순서에 대한 정보가 들어가지 않는다.그래서 Transformer에서는 Positional Encoding 또는 Positional Embedding을 통해 얻은 위치 임베딩 벡터를 단어 임베딩 벡터에 더해 위치 정보를 담는다. Positional Encoding은 다음의 두 공식을 통해 얻은 고정된 벡터를 사용하는 방식이다. ..
Deep Learning/Transformers
Transformer는 자연어 처리 분야에서 소개된 딥러닝 구조로, 기존의 순환 신경망(RNN)이나, 컨볼루션 신경망(CNN)과는 다른 접근 방식을 사용해 효과적인 시퀀스 처리를 가능하게 한다.이런 Transformer를 이해하기 위해서는 먼저 Transformer의 등장배경에 대해 알 필요가 있다.RNNRecurrent Neural Network의 약자로, MLP에 단어들을 순차적으로 넣어보자는 접근으로 구상되었다.이전 단계의 hidden state 값과 현재 단계의 입력값을 사용해 현재 단계의 hidden state에 이전 정보를 담아낸다. 위 사진처럼 RNN은 입력값(x)을 MLP에 통과시켜 hidden state 값(h)과 출력값(y)을 얻는데, 이전 hidden state 값을 입력받아 출력값을..