GPT는 Elmo나 BERT와는 다르게 양방향이 아닌 오른쪽 단어를 예측하는 모델로만 되어있다는 특징이 있다.
GPT는 성능에 따라 여러 모델로 점차 늘어나게 되었는데 먼저 GPT 1에 대해 알아보자
GPT1은 위 그림과 같이 transformer 모델의 디코더에서 두번째 attention이 빠진 형태를 띄고 있다.
비지도 pre-training 과 각 task 별로 supervised한 fine-tuning이 결합되어 있고
이 것을 다양한 unlabeled된 text data에 적용시켜 성능을 얻고자 한다.
GPT2는 fine-tuning이 아닌 zero shot setting개념을 볼 수 있는데
zero-shot은 대용량 데이터로 인해 학습 없이도 task를 알아서 해결할 수 있는 것을 이야기한다.
또한 WebText로 새로운 datasset을 구성하였다는 특징도 있다.
GPT3의 다른 모델과 가장 큰 차이점은 language 모델의 크기를 매우 키웠다는 것이다.
밑의 차트에서 알 수 있듯이 모델의 크기가 증가할 수록 정확도가 향상됨을 알 수 있다.
또한 한가지 더 알 수 있는 점은 few-shot이라는 개념을 활용해서 성능을 향상 시켰다는 것이다.
few-shot은 zero-shot 개념에서 in-context learning의 exemple을 특정 개수만큼 넣어주는 것이다.
(in-context learning이란 fine-tunning이 아닌 제시 된 문맥안에서 파악해 학습하는 것)
이와 같은 논문 예시에서 알 수 있듯이 few-shot 기법을 통해 모델이 해답을 추론할 수 있도록 학습시킨다.
논문에서 설명한 GPT에서의 방법들을 요약해보자면 네 가지로 나눠볼 수 있는데
1) Fine-Tuning : pre-training된 것들을 조금씩 미세하게 수정하는 것을 의미하며 매 task마다 라벨링된 데이터를 통해
gradient update를 취해야 한다.
2) Few-Shot : fine-tuning과 같은 업데이트는 일어나지 않는다. 100개 이하의 예제를 학습하고 문제를 추론하는
방법이다.
3) One-Shot : Few-Shot과 동일하지만 하나의 예제만 학습한다.
4) Zero-Shot : 예제없이 자연어 설명만 주어진다. 그렇기에 굉장히 어렵고 성공만 한다면 높은 성능을 보일 거란 기대가 있다.
GPT 또한 실습을 통해 더 자세히 알아 볼 것이고 오늘 너무 간단하게만 요약한 것 같아
기회가 된다면 GPT 각 기본 논문들을 포함해 최근에 나온 변형 모델을 다루는 논문들도 포스팅 해보고 싶다.
꿑
'자연어처리 > 개념 정리' 카테고리의 다른 글
Text generation(NLP) 간단 개념 정리 (0) | 2022.09.21 |
---|---|
NLP Roadmap 및 평가지표 간단 개념 정리 (0) | 2022.09.20 |
Transformer 간단 개념 정리 (0) | 2022.09.14 |
Attention 간단 개념 정리 2 (0) | 2022.09.13 |
Naive Bayes Classifier 간단 개념 정리 (0) | 2022.09.12 |
댓글