들어가기 전에
트랜스포머(Transformer)에 대해서 많은 것을 알았습니다! 그러면 이제부터는 Transformer를 기반으로 다양한 사전학습 태스크들을 알아봅시다. 그리고 파인 튜닝(fine-tuning)을 통해 만들어진 거대 언어모델이라고 불리고 있는 대표적인 모델들에 대해서 어떤 태스크들을 사용했는지도 알아보아요!
학습 목표
GPT-1가 어떤 방법으로 사전학습을 진행했는지 이해하고 설명할 수 있습니다.
핵심 단어
- Self-Attention 블록
- GPT-1
- Text Prediction
- Task Classifier
강의 듣기
최근 동향
자연어 처리 분야 뿐만 아니라 인코더-디코더 구조로 이루어진 트랜스포머는 다양한 분야에서 뛰어난 성능을 발휘하고 있습니다. 추천시스템, 신약 개발, 컴퓨터 비전 등등 완전히 다른 분야에서도 말이지요! 또한 트랜스포머 구조를 활용한 모델들도 많이 개발이 되어왔습니다.
거대 언어모델이라는 말처럼 트랜스포머 같은 경우에는 Self-Attention 블록을 6개 정도만 쌓아서 사용을 했지만, 이후 등장하는 모델들은 훨씬 많은 블록을 쌓아 성능을 높였습니다. 하지만, 자연어 생성 분야에서 한 토큰을 시작으로 하나씩 하나씩 토큰을 생성해 나아가는 Greedy decoding이라는 한계를 탈피하지 못하고 있습니다.
GPT-1
Open-AI에서 공개한 거대 언어모델의 시초격이라고 할수 있는 모델입니다. 자연어 생성 분야에서 놀라운 성능을 보여주었었지요. 또한 주요한 특징으로는 하나의 구조로 다양한 태스크를 수행할 수 있도록 개발되었다는 것이 있습니다.
GPT-1은 어떤학습을 했을까요? "Text Prediction"과 "Task Classifier"를 활용해 사전학습을 했습니다.
- Text Prediction: 다음 단어를 예측하는 태스크
- Task Classifier: 그림과 같이 다양한 태스크를 활용해 동시에 학습을 진행
따라서, 아래 그림과 같이 입력의 형태를 변경해 원하는 태스크를 수행할 수 있었습니다.
다양한 태스크들을 구분해 주기 위해서 Extract, Delim과 같은 것들을 사용했습니다.

GPT-1의 성능은 어떻했을까요?
공개 당시 ELMo와 CAFE와 같이 주목받던 언어 모델들 보다도 좋은 성능을 보여주었습니다!

생각해보기
1) GPT-1은 모든 자연어 처리 문제를 해결하였을까요?
2) ELMo와 GPT-1의 차이는 무엇일까요?
참고자료
comment