Improving Language Understanding by Generative Pre-Training
📚 GPT의 탄생 배경을 만든 논문
오늘날의 GPT 계열 모델과 현대 LLM 아키텍처가 어떻게 시작되었는지, 그 출발점이 된 논문 'Improving Language Understanding by Generative Pre-Training'을 리뷰합니다.
이 논문은 ChatGPT의 근간이 되는 "사전학습 + 미세조정" 패러다임, 즉 Pretrain Finetune 전략을 공식화하며 대규모 unlabeled 데이터를 활용한 언어 이해 성능 향상의 가능성을 처음으로 입증했습니다.
논문 요약
비싼 라벨 없이도 강력한 언어 이해 능력을 만들 수 있다는 걸 처음 증명한 GPT의 시작점이 된 논문이다.
핵심만 정리하면
- 기존 지도 학습 중심 언어 모델은 대규모 수작업 라벨링 데이터에 대한 높은 의존성이라는 구조적 한계를 갖고 있었다.
- 이 논문은 라벨이 없는 대규모 텍스트 데이터를 활용한 비지도 사전 학습이 강력한 언어 이해 능력을 형성할 수 있음을 처음으로 입증했다.
- 사전 학습된 언어 모델을 기반으로 한 Pretrain Finetune 두 단계 학습 전략은 적은 수정만으로 다양한 작업에 전이 가능한 보편적 표현을 가능하게 했다.
- Transformer 기반 언어 모델과 보조 언어 모델링 목적 함수는 일반화 성능과 학습 안정성을 함께 향상시켰다.
- 이 논문은 새로운 구조를 제안한 것이 아니라 LLM 시대의 표준 학습 패러다임을 처음 완성한 출발점으로서 GPT 계열 모델의 근간이 되었다.
기존 모델의 한계 및 문제 정의
Motivation
가장 큰 동기는 기존 모델들이 대규모의 수작업 라벨링 데이터에 크게 의존하는 지도 학습 구조를 전제로 하고 있다는 점이다. 저자는 이에 대한 대안으로 라벨링 되지 않은 데이터의 가능성을 강조한다. 라벨이 없는 데이터는 훨씬 풍부하게 존재하며 수작업으로 주석을 수집하는 것에 비해 비용 부담도 현저히 낮기 때문이다.
또한 설령 라벨링 된 데이터가 충분히 존재하더라도 비지도 사전 학습(Unsupervised pre-training)은 모델의 성능을 의미 있게 끌어올릴 수 있다고 주장한다. 이는 사전 학습된 단어 임베딩들이 실제 다양한 태스크에서 성능 향상을 이끌어낸 사례를 통해 그 가능성이 이미 입증되었다는 점에서 더욱 설득력을 갖는다.
한계
-
레이블링 된 데이터의 부족
대부분의 deep learning model은 수동으로 레이블링 된 방대한 양의 데이터를 필요로 하지만 많은 분야에서 이러한 레이블 된 데이터가 부족하여 모델의 적용 범위가 제한된다. -
단어 수준 정보 전달의 한계
기존에는 사전 훈련된 word-embeddings을 활용해 성능을 높였으나 이는 주로 단어 수준의 정보만을 전달하며 문장 수준 이상의 고차원적인 의미를 포착하는 데는 한계가 있다. -
최적화 목표의 불확실성
단어 수준 이상의 텍스트 표현을 배우기 위해 어떤 최적화 목표 (예: 언어 모델링, 기계 번역, 담화 일관성 등)가 전이 학습 (Transfer learning)에 가장 효과적인지 명확하지 않다. -
전이 방법의 표준 부재
학습된 표현을 대상 작업으로 전이하는 가장 효과적인 방법에 대해 합의된 방식이 없다. 기존 기술들은 모델 구조를 대폭 수정하거나 복잡한 학습 체계 및 보조 학습 목표를 추가해야 하는 어려움이 있다.
제안한 해결 방법
Two-stage training procedure = semi-supervised = 비지도 사전 학습 + 지도 미세 조정
- semi-supervised:
이 방식의 목표는 대규모 미분류 말뭉치를 활용해 다양한 작업에 적은 수정만으로 전이될 수 있는 보편적인 표현 (universal representation)을 학습하는 것이다.
비지도 사전 학습 (Unsupervised pre-training)
목표
레이블이 없는 대규모 텍스트 데이터 ()로부터 언어의 구조와 지식을 스스로 학습하여 좋은 초기 파라미터를 찾는 것.
방식
'언어 모델링' 목적 함수를 사용하여 문맥상 다음 토큰이 무엇인지 예측하도록 모델을 훈련한다.
모델 구조
장기 의존성 (long-term dependencies)을 처리하는데 유리한 Transformer decoder를 사용하여 기존의 LSTM 기반 모델보다 더 구조화된 메모리 능력을 갖추도록 한다.
Supervised Fine-tuning
목적
사전 학습을 통해 얻은 파라미터를 바탕으로 실제 해결하려는 특정 작업 (예: 질문 답변, 감성 분석 등)의 레이블링 된 데이터 에 맞춰 모델을 최적화하는 단계이다.
방식
입력 시퀀스를 사전 학습된 모델에 통과시킨 뒤, 마지막 블록의 활성 값 ()을 새롭게 추가된 선형 출력 층 () 에 입력하여 레이블 ()을 예측한다.
보조 목적 학습
fine-tuning 시 언어 모델링 목적 함수를 보조적으로 함께 사용하면 지도 학습 모델의 일반화 능력을 높이고 수렴 속도를 앞당길 수 있다.
전이를 위한 입력 변환 (Task-specific Input Transformations)
모델 구조의 변경을 최소화하기 위해 순회 방식 (traversal-style approach) 을 제안한다.
예를 들어, 문장 쌍을 다루는 작업 (문장 함의나 유사도 측정)의 경우 두 문장 사이에 구분자 (delimiter)를 넣어 하나의 연속된 토큰 시퀀스로 변환하여 모델이 처리하게 한다.
비유
이 반지도 학습 과정을 교양 교육 후 전문 자격증 시험 대비 과정에 비유를 한다면,
- 비지도 사전 학습: 학생이 전공을 정하기 전 수만 권의 다양한 책 (미분류 말뭉치)을 읽으며 언어의 기본 원리, 상식, 문맥을 파악하는 능력을 기르는 단계이다. (기초 지능 형성)
- 지도 미세 조정: 이제 문해력이 갖춰진 학생이 특정 시험의 기출문제집 (레이블링 된 데이터)을 짧게 공부하며 해당 문제의 정답을 맞히는 요령을 익히는 단계이다. (전문성 확보)
이러한 방식 덕분에 모델은 처음부터 특정 문제만 푼 학생 (지도 학습만 수행한 모델)보다 훨씬 더 깊은 이해력을 바탕으로 다양한 문제를 능숙하게 해결하게 된다.
보조 언어 모델링 (Auxiliary Language Modeling) 목적 함수
Fine-tuning 단계에서 보조 언어 모델링 목적 함수를 추가하는 것은 모델의 학습 효율과 성능을 극대화하기 위한 전략적인 장치이다.
주요 역할 및 효과
-
일반화 성능 향상 (Improving Generalization)
- 지도 학습 과정에서 모델이 특정 작업의 데이터에만 지나치게 최적화되어 편향되는 것을 방지
- 사전 학습에서 얻은 보편적인 언어 이해 능력을 유지함으로써 모델의 일반화 성능을 개선
-
학습 수렴 가속화 (Accelerating Convergence)
보조 목적 함수를 함께 사용하면 모델이 최적의 파라미터 상태에 도달하는 학습 수렴 속도를 앞당기는 효과
기술적 구현
Fine-tuning 단계에서 모델은 단순히 특정 작업의 손실 함수()만 계산하는 것이 아니라 사전 학습에서 사용했던 언어 모델링 손실 함수()를 일정 비율()로 섞어서 최적화한다.
이 과정에서 추가되는 파라미터는 선형 출력 층 ()과 구분자 토큰을 위한 임베딩뿐이므로 모델 구조의 큰 변경 없이도 이러한 이점을 누릴 수 있다.
데이터 규모에 따른 차이 (절제 연구 결과)
절제 연구 (Ablation studies)에 따르면, 이 보조 목적 함수의 효과는 데이터 셋의 크기에 따라 다르게 나타난다.
- 대규모 데이터 셋: NLI (자연어 추론) 과제나 QQP와 같이 데이터 양이 많은 경우 보조 목적 함수를 추가했을 때 성능 향상이 뚜렷하게 관찰된다.
- 소규모 데이터 셋: 상대적으로 크기가 작은 데이터 셋에서는 보조 목적 함수가 성능 향상에 큰 기여를 하지 못한다.
예를 들어, fine-tuning 중 보조 언어 모델링을 사용하는 것은 "전공 서적을 공부하면서도 틈틈이 신문을 읽어 기초 문해력을 유지하는 것"과 같다.
- 전공 공부 (지도 학습): 특정 시험 (특정 작업)의 정답을 맞히기 위한 집중 훈련
- 신문 읽기 (보조 언어 모델링): 전공에만 매몰되지 않고 언어 전반에 대한 감각 (일반화 성능)을 유지하게 해주며 결과적으로 전공 내용을 더 빠르고 정확하게 이해 (학습 수렴)하도록 돕는 기초 체력이 된다.
실험
실험 설정
-
사전 데이터 학습: BookCorpus 데이터 셋 사용
- 해당 데이터 셋에는 모험, 판타지, 로맨스 등 다양한 장르의 미출판 도서 7,000권 이상 포함
- 모델이 장거리 정보 (long-range information)를 학습할 수 있도록 연속적인 긴 텍스트를 제공
-
모델 사양: 12층의 트랜스포머 디코더 (decoder-only Transformer) 구조를 사용
- 768 차원의 상태 벡터와 12개의 attention head
- 활성화 함수로 GELU 사용
- Adam 최적화 알고리즘, 과적합 방지를 위한 dropouts(0.1), modified L2 regulation () 사용
-
미세 조정 세부 사항
- 3 epochs의 학습만으로 대부분 작업에서 충분했다.
- 학습률:
- batch size: 32
주요 실험 결과
12개의 작업에서 모델을 평가했고 그중 9개 작업에서 SOTA 경신했다.
-
자연어 추론 (NLI)
- MNLI, SciTail, QNLI, SNLI 등 5개 데이터 셋 중 4개에서 기존 모델을 능가했다.
- 특히 QNLI에서 5.8%, SciTail에서 5%의 절대적 성능 향상을 보였다.
- 다만 데이터 셋 규모가 작은 RTE에서는 기존 모델보다 낮은 성적을 보였다.
-
질문 답변 및 상식 추론
- 중고등학교 시험 문제인 RACE 데이터 셋에서 5.7%, story cloze 테스트에서 8.9%의 큰 폭의 성능 향상을 기록했다.
-> 장거리 문맥 처리 능력을 입증했다.
- 중고등학교 시험 문제인 RACE 데이터 셋에서 5.7%, story cloze 테스트에서 8.9%의 큰 폭의 성능 향상을 기록했다.
-
의미 유사도 및 분류
- 문법적 적합성을 판단하는 CoLA 점수가 기존 35.0에서 45.4로 크게 올랐다.
- GLUE 벤치마크 전체 점수에서도 72.8점을 기록해 기존 최고치인 68.9를 넘었다.
BPE 토큰화
BPE로 처리된 토큰들은 이 모델 구조를 통해 맥락이 파악된다.
이 논문에서 저자는 모델의 어휘 집합을 구축하기 위해 40,000회의 병합을 거친 BPE를 사용했다.
BPE는 희귀 단어 문제를 해결하기 위해 단어를 더 작은 하위 단위 (subword unit)로 나누어 처리하는 방식이다. 이는 모델이 다양한 단어 형태를 효율적으로 학습하도록 돕는다.
BPE는 방대한 양의 연속된 텍스트 데이터를 Transformer 모델이 소화할 수 있는 효율적인 단위로 쪼개 주는 필터이다.
GELU
- 비선형성 및 네트워크 구조에서의 역할
-
활성화 함수 채택: 모델의 비선형성을 구현하기 위해 GELU를 사용
-> Transformer 블록 내부의 position-wise feed-forward networks에서 데이터의 복잡한 패턴을 학습하는데 기여 -
Transformer 아키텍처와의 결합
- GELU는 12층의 Transformer decoder 구조 (768 차원 상태 벡터, 12개의 attention head) 내에서 작동
- 3072 차원의 내부 상태를 가진 feed-forward 층과 결합되어 모델의 표현력을 높임
- Model Specifications
GELU는 독립적으로 작동하는 것이 아니라 최적의 학습 성능을 내기 위해 설계된 다른 사양들과 조화를 이룬다.
- 정규화 및 초기화: 모델 전반에 걸쳐 레이어 정규화 (layernorm)가 광범위하게 사용되었기 때문에 의 단순한 가중치 초기화만으로도 충분
- 최적화 알고리즘: 최대 학습률 를 가진 Adam 최적화 기법과 코사인 스케줄 (cosine schedule)에 따른 학습률 감소가 적용됨
- 규제 (Regularization): 과적합을 방지하기 위해 dropouts(0.1)과 가중치 부패 (weight decay)가 적용된 변형된 L2 정규화가 함께 사용
- 입력 처리: 40,000회의 병합을 거친 BPE 어휘집과 학습된 position embeddings을 통해 512개의 연속된 토큰 시퀀스를 처리하는 구조를 갖추고 있음
분석 및 절제 연구
제안된 프레임워크의 각 구성 요소가 성능에 어떤 기여를 하는지 파악하고 모델의 내부 동작 원리를 이해한다.
전이되는 층의 수에 따른 영향 (Impact of number of layers transferred)
비지도 사전 학습된 모델에서 지도 학습으로 전이하는 층의 개수가 성능에 미치는 영향을 분석한다.
- 임베딩만 전이하는 것보다 층을 추가할수록 성능이 향상되었고, MultiNLI 작업의 경우 모든 층을 전이했을 때 최대 9%의 성능이 향상된다.
=> 사전 학습된 모델의 각 층이 타깃 작업을 해결하는 데 필요한 유용한 언어적 기능들을 개별적으로 포함하고 있음을 시사한다.
예를 들어 "기초 지식만 있는 것보다 심화 개념까지 모두 이해했을 때 성적이 더 잘 나오는가?"를 확인하는 과정인 것이다.
Zero-shot Behaviors
모델이 명시적인 fine-tuning 없이도 작업을 수행할 수 있는지를 확인한다.
- 원리: 사전 학습된 생성 모델이 언어 모델링 능력을 개선하는 과정에서 다양한 작업을 수행하는 법을 스스로 학습한다는 가설을 세운다.
- 측정 방법: 감성 분석 (SST-2) 경우 입력 끝에 "very"를 붙여 모델이 "positive"와 "negative" 중 어떤 단어에 더 높은 확률을 주는지 확인하는 등의 휴리스틱 방식을 사용했다.
- 결과: 사전 학습 업데이트 획수가 늘어남에 따라 이러한 제로샷 성능이 꾸준히 향상되었다.
=> 사전 학습이 다양한 작업 관련 기능을 학습하도록 돕는다는 것을 증명했다.
예를 들어 "본격적인 시험공부를 하기 전에 상식만으로 문제를 얼마나 풀 수 있는가?"를 측정하여 기초 체력을 확인하는 과정이다.
절제 연구 (Ablation Studies)
모델의 핵심 요소들을 하나씩 제거하며 그 효과를 검증한다.
-
보조 언어 모델링 (Auxiliary LM) 목적 함수
fine-tuning 시 언어 모델링을 보조 목표로 사용하는 것은 NLI 작업과 QQP 같은 대규모 데이터 셋에서는 효과적이다. 하지만 규모가 작은 데이터 셋에서는 큰 도움이 되지 않았다. -
Transformer vs. LSTM
동일한 프레임워크에서 Transformer를 대신 LSTM을 사용했을 때 평균 5.6점의 성능이 하락했다.
=> Transformer의 구조적 이점이 전이 학습에 더 유리하다. -
사전 학습 유무: 사전 학습 없이 바로 지도 학습을 진행했을 때 성능이 14.8%나 감소했다.
=> 비지도 사전 학습이 성능 향상의 핵심적인 기여 요인
결론
이 논문은 새로운 구조를 만든 논문이 아니다. 하지만 **기존 구조 (Transfomer)**에 Pre-Training + Fine-Tuning이라는 학습 전략을 더해 LLM 시대의 첫 퍼즐을 완성했다.
GPT 시리즈의 모든 시도는 이 한 문장에서 시작됐다.
"We demonstrate that language modeling can serve as a powerful pretraining objective."
지금 우리가 보는 GPT-4, GPT-5는 이 논문이 만든 '지도 없이 배우고, 필요할 때 미세 조정한다'는 전략 위에 존재한다.
Epiloge
이 논문은 성능 경쟁의 결과물이 아니라, 언어 모델을 바라보는 관점을 바꾼 출발점이었다.
"라벨 없이도 언어를 이해할 수 있을까?"
이 단순한 질문이 이후 모든 GPT 계열 모델의 방향을 결정했다.
namdarine은 이렇게 AI의 성능이 아니라 사고방식과 구조를 바꾼 순간들을 계속해서 기록한다.
📌 namdarine's AI Review는 누구나 AI의 핵심 기술을 이해할 수 있도록 논문, 알고리즘, 구조를 쉽게 풀어주는 시리즈입니다.
Let's build it like it's already happened.
→ 다음 리뷰에서 만나요!