Recommended Posts
- Get link
- X
- Other Apps
Transformer는 2017년 발표된 "Attention is All You Need" 논문에서 소개된 딥러닝 아키텍처로, 자연어 처리 분야에 혁신을 가져왔습니다. Transformer의 핵심은 Attention Mechanism을 사용하여 입력 데이터의 모든 부분을 동시에 고려하고 각 부분 간의 관계를 파악하는 것입니다. Transformer는 크게 Encoder와 Decoder로 구성되며, 각 구성 요소는 여러 개의 레이어로 쌓여 있습니다.
1. Encoder (인코더):
Encoder는 입력 시퀀스를 받아 내부 표현(contextualized embedding)으로 변환하는 역할을 합니다. 여러 개의 Encoder Layer로 구성되어 있으며, 각 Layer는 다음과 같은 하위 구성 요소로 이루어져 있습니다.
Multi-Head Self-Attention: 입력 시퀀스 내의 각 단어 간의 관계를 파악합니다. 여러 개의 Attention Head를 사용하여 다양한 관점에서 관계를 파악하고, 이를 결합하여 더욱 풍부한 정보를 얻습니다.
Add & Norm (Add & Layer Normalization): Residual Connection과 Layer Normalization을 적용하여 학습 안정성을 높이고, 기울기 소실 문제를 완화합니다.
Feed Forward Network (FFN): 각 위치의 정보를 독립적으로 처리하는 Fully Connected Neural Network입니다.
Position-wise Feed Forward Network: 각 위치의 정보를 독립적으로 처리하는 Feed Forward Network입니다.
2. Decoder (디코더):
Decoder는 Encoder에서 생성된 내부 표현을 기반으로 출력 시퀀스를 생성하는 역할을 합니다. 여러 개의 Decoder Layer로 구성되어 있으며, 각 Layer는 다음과 같은 하위 구성 요소로 이루어져 있습니다.
Masked Multi-Head Self-Attention: Decoder는 출력 시퀀스를 순차적으로 생성하기 때문에, 현재 시점 이후의 정보를 참조할 수 없도록 Masking을 적용합니다.
Multi-Head Encoder-Decoder Attention: Encoder의 출력과 Decoder의 입력을 연결하여, Decoder가 Encoder의 어떤 부분에 집중해야 하는지를 결정합니다.
Add & Norm (Add & Layer Normalization): Residual Connection과 Layer Normalization을 적용하여 학습 안정성을 높이고, 기울기 소실 문제를 완화합니다.
Feed Forward Network (FFN): 각 위치의 정보를 독립적으로 처리하는 Fully Connected Neural Network입니다.
Position-wise Feed Forward Network: 각 위치의 정보를 독립적으로 처리하는 Feed Forward Network입니다.
3. Attention Mechanism (어텐션 메커니즘):
Transformer의 핵심 구성 요소인 Attention Mechanism은 입력 데이터의 각 부분 간의 관계를 파악하여 중요한 정보에 집중하도록 합니다.
Scaled Dot-Product Attention: Query, Key, Value를 사용하여 Attention Score를 계산합니다.
Query (Q): 현재 단어의 정보를 나타냅니다.
Key (K): 입력 시퀀스의 각 단어의 정보를 나타냅니다.
Value (V): 입력 시퀀스의 각 단어의 정보를 나타냅니다.
Attention Score는 Query와 Key의 유사도를 측정하며, Value에 가중치를 곱하여 Attention Output을 생성합니다.
Multi-Head Attention: 여러 개의 Attention Head를 사용하여 다양한 관점에서 관계를 파악하고, 이를 결합하여 더욱 풍부한 정보를 얻습니다.
4. Positional Encoding (위치 인코딩):
Transformer는 순환 신경망과 달리 입력 시퀀스의 순서 정보를 직접적으로 처리하지 않습니다. 따라서, Positional Encoding을 사용하여 각 단어의 위치 정보를 모델에 전달합니다.
Sinusoidal Positional Encoding: 사인 함수와 코사인 함수를 사용하여 위치 정보를 인코딩합니다.
5. Layer Normalization (레이어 정규화):
각 레이어의 출력을 정규화하여 학습 안정성을 높이고, 기울기 소실 문제를 완화합니다.
6. Residual Connection (잔차 연결):
각 레이어의 입력과 출력을 더하여 기울기 소실 문제를 완화하고, 학습 속도를 향상시킵니다.
결론적으로, Transformer는 Attention Mechanism, Encoder, Decoder, Positional Encoding, Layer Normalization, Residual Connection 등 다양한 구성 요소들이 유기적으로 결합되어 만들어진 강력한 딥러닝 아키텍처입니다. 이러한 구성 요소들의 상호 작용을 통해 Transformer는 자연어 처리 분야에서 뛰어난 성능을 보여주고 있으며, 현재 대부분의 최첨단 언어 모델의 기반이 되고 있습니다.
Comments
Post a Comment