전체 글
-
Transformer 계열의 훈련 Tricks카테고리 없음 2021. 11. 8. 13:20
훈련 Tricks 어떤 모델을 훈련시킬 때 무조건적으로 훈련 데이터에 초점을 두고 맞춰서는 안되고, 특이한 값들의 경우는 어느 정도의 조정을 해서 실제 데이터에 적용했을 때 큰 영향을 미치지 않도록 해야 하는 경우가 있다. 그럴 때 쓰는 방법들을 훈련 Trick이라 하기도 한다. 이번 포스팅에서는 그러한 방법들 중 자주 쓰이는 Gradient Clipping, Learning Rate Scheduling, Weight Decay 에 대해 설명하고자 한다. Gradient Clipping 모델은 종종 학습 도중에 gradient explosion을 일으킨다. gradient explosion이란 기울기가 점차 커지다보니 여러 층이 비정상적으로 큰 가중치를 갱신하게 되어 발산하게 되는 현상이다. Gradie..
-
GPT (Generative Pre-Training)카테고리 없음 2021. 11. 8. 09:23
GPT의 개념 GPT(Generative Pre-Training)는 OpenAI에서 Transformer를 기반으로 하여 구현한 모델이다. GPT는 BERT와 달리 Transformer의 Encoder 부분을 사용하지 않고, Decoder 부분을 변형한 구조이다. 하지만 BERT와 동일하게 Pre-training 및 Fine-tuning 과정을 통하여 성능을 높였다. GPT의 구조 왼쪽 그림은 GPT 1의 구조를 나타낸 것이다. GPT에는 Encoder 부분이 사용되지 않기 때문에 Transformer 구조 그림에서 보았던 "Multi-Head Attention" 부분이 존재하지 않음을 확인할 수 있다. (이전 포스팅 참고) 왼쪽 그림은 GPT 2의 구조를 나타낸 것이다. GPT 1과의 차이점은 "Lay..
-
BERT (Bidirectional Encoder Representations from Transformer)카테고리 없음 2021. 11. 8. 08:53
BERT의 개념 BERT(Bidirectional Encoder Representations from Transformer)는 Google에서 Transformer를 기반으로 하여 구현한 모델이다. BERT는 Transformer의 Encoder 부분을 쌓아올린 구조이다. 이는 레이블이 없는 (정해진 형식 없는) 데이터들을 attention을 이용하여 Pre-training 시킨다. 또한 Fine-tuning 이라는 추가 훈련 과정을 추가하여 성능을 높였다. Pre-training Pre-training은 사전에 모델을 학습시키는 것을 의미하는데 이는 hidden layer를 효과적으로 학습시킬 수 있다는 점에서 의미가 있다. BERT의 경우 크게 2가지의 Pre-training을 볼 수 있는데 각각을 ..
-
Transformer카테고리 없음 2021. 11. 8. 06:06
Transformer의 개념 Transformer는 Google에서 발표한 "Attention is All You Need"라는 논문에서 나온 모델이다. 기존의 seq2seq 모델과 동일하게 Encoder와 Decoder로 이루어져있으면서도 RNN이 아닌 Attention Mechanism만이 사용되었다는 것이 특징이다. 그럼에도 불구하고 이는 기존 RNN 기반 모델보다도 우수한 성능을 자랑한다. [참고] Attention is All You Need Transformer의 기본 아이디어 Attention을 사용하는 이유는 입력 시퀀스의 정보 손실을 막기 위해서 였음을 이전 포스팅에서 공부했다. 즉, 기존 seq2seq 모델에서 Attention이 보조적으로 사용되었다면, Transformer의 기본 아..
-
Attention Mechanism카테고리 없음 2021. 11. 7. 12:09
seq2seq 모델 seq2seq는 번역기에 주로 사용되는 모델이다. 이는 크게 보면 Encoder와 Decoder로 구성된다. Encoder와 Decoder는 모두 RNN 아키텍처이며, Encoder는 단어들을 차례대로 입력받아 하나의 벡터로 압축한 후, 이를 Decoder로 전송하는 역할을 하고, Decoder는 전송된 벡터로부터 번역된 단어를 하나씩 출력하는 역할을 한다. 이 때, 압축된 벡터를 Context Vector 라고 한다. Attention Mechanism의 등장 배경 RNN 기반의 seq2seq 모델은 크게 2가지 문제점을 가진다. 1. 고정된 크기의 벡터에 모든 정보를 압축하려고 하다 보니 정보의 손실이 발생한다. 2. RNN의 특성인 Vanishing Gradient 문제가 발생한..