//
대표적인 학습 데이터로 커먼 크롤(Common Crawl)이 있다. 구글은 커먼 크롤의 정제된 부분집합인 C4(Colossal Clean Crawled Corpus)를 제공하지만, 두 데이터셋 모두 가짜 뉴스가 많이 포함된 비신뢰 데이터다. 기업들이 어떤 데이터를 활용했는지 공개를 꺼리는 것도 이 때문이다.
고자원 언어와 저자원 언어의 분포는 극심하게 불균형하다. 영어가 약 45%를 차지하고, 나머지 고자원 언어도 약 5% 수준이다. 영어에서 더 좋은 성능을 보이는 것은 당연한 결과다.
도메인 특화 데이터로 학습한 모델들이 있다.
널리 쓰이는 아키텍처는 "Attention Is All You Need"(2017)에 기반한 트랜스포머다.
기존 seq2seq 아키텍처는 인코더와 디코더에 RNN(순환 신경망)을 사용했는데, 두 가지 문제가 있었다.
트랜스포머는 RNN을 사용하지 않고 병렬 처리를 통해 이 두 문제를 해결했다.
추론은 두 단계로 이루어진다.
이 두 단계의 특성 차이가 9장에서 다루는 추론 최적화의 핵심 배경이 된다.
트랜스포머의 핵심이다. 내부적으로 Key, Value, Query 벡터를 활용한다.
도서관에 비유하면, Query는 "검색어", Key는 "책의 제목/태그", Value는 "책의 실제 내용"이다. 어텐션 점수(Query와 Key의 내적)가 높을수록 해당 Value가 출력에 더 많이 반영된다.
Attention(Q, K, V) = softmax(Q * K^T / sqrt(d_k)) * V
여기서 sqrt(d_k)로 나누는 것은 내적 값이 차원 수에 비례해 커지는 것을 방지하기 위한 스케일링 처리다. 이를 스케일드 닷 프로덕트 어텐션(Scaled Dot-Product Attention)이라 한다.
트랜스포머 아키텍처는 여러 개의 트랜스포머 블록으로 이루어진다. 각 블록은 일반적으로 다음 두 모듈로 구성된다.
주목받는 대안 아키텍처로 RWKV(병렬 학습 가능한 RNN)와 SSM(긴 시퀀스 모델링에 잠재력)이 있다.
모델이 70억 개의 파라미터를 가지고 있고, 각 파라미터가 2바이트를 사용한다면 추론에 필요한 GPU 메모리는 최소 14GB다.
스케일링 법칙에 따르면 모델 성능은 모델 크기와 데이터셋 크기에 좌우되고, 둘 다 커질수록 더 많은 컴퓨팅 자원이 필요하다. 예산 내에서 최고 성능을 달성하는 모델을 컴퓨팅 최적 모델이라 하며, 친칠라 스케일링 법칙이 최적의 모델·데이터셋 크기를 계산하는 대표적인 규칙이다.
한편, 학습 데이터셋의 증가율이 새로 생성되는 데이터의 증가율보다 훨씬 빠르다는 스케일링 병목 현상도 존재한다.
사전 학습된 모델에는 두 가지 문제가 있다.
사후 학습은 이 두 문제를 해결하며, 일반적으로 두 단계로 구성된다.
고품질 지시 데이터로 사전 학습된 모델을 파인튜닝하여, 완성이 아닌 대화에 최적화한다. 직접 사람이 데이터를 만들어야 하므로 비용이 많이 든다.
SFT 데이터의 형태는 보통 (지시, 응답) 쌍이다.
{
"instruction": "다음 텍스트를 3줄로 요약하세요.",
"input": "...(긴 텍스트)...",
"output": "1. ...\n2. ...\n3. ..."
}사람의 선호도에 맞는 응답을 출력하도록 모델을 추가 파인튜닝한다. 대표적인 알고리즘이 RLHF다.
메타는 복잡성을 줄이기 위해 라마 3에서 RLHF 대신 DPO(Direct Preference Optimization)로 전환했다. DPO는 별도의 보상 모델 없이 선호/비선호 쌍 데이터만으로 직접 최적화하기 때문에 파이프라인이 훨씬 단순하다.
보상 모델에서는 개별 점수보다 비교(페어와이즈) 방식이 더 효과적이다. "이 응답은 7점"보다 "응답 A가 응답 B보다 낫다"는 판단이 인간에게 더 자연스럽고 일관성이 높기 때문이다.
모델은 샘플링을 통해 출력을 생성한다. 이때 로짓(logit)에 접근하여 확률 분포를 조정하는 다양한 전략이 있다.
온도를 높이면 흔한 토큰의 확률이 줄어들고 희귀한 토큰의 확률이 증가한다. 온도는 소프트맥스 변환 전에 로짓을 조정하는 상수다.
softmax(logit_i / T) # T = temperature
T → 0 : 가장 높은 확률의 토큰만 선택 (그리디 디코딩과 동일)T = 1 : 원래 확률 분포 그대로 샘플링T > 1 : 확률 분포가 평탄해져 희귀 토큰이 선택될 가능성 증가| 용도 | 권장 Temperature |
|---|---|
| 코드 생성, 사실 기반 QA | 0 ~ 0.3 |
| 일반 대화, 요약 | 0.5 ~ 0.7 |
| 창의적 글쓰기, 브레인스토밍 | 0.7 ~ 1.2 |
상위 K개의 로짓에 대해서만 소프트맥스를 수행하여 계산 비용을 줄인다. 일반적으로 50~500 사이의 값을 사용하며, k가 작을수록 텍스트가 예측 가능하지만 덜 흥미로워진다.
가장 가능성이 높은 토큰의 확률을 내림차순으로 합산하고, 합이 p에 도달하면 중단한다. 일반적으로 0.9~0.95 사이 값을 사용한다. Top-K와 달리 샘플링할 값을 동적으로 선택할 수 있지만, 소프트맥스 계산 부하를 반드시 줄여주지는 않는다.
Best of N 기법이라고도 하며, 좋은 응답이 나올 확률을 높이기 위해 여러 응답을 생성하는 방식이다.
JSON 등 지정된 형식으로 출력하도록 하는 네 가지 방법이 있다.
샘플링 방식이 확률적이기 때문에 두 가지 현상이 발생한다.
환각은 AI 애플리케이션의 가장 큰 리스크 중 하나다. 6장에서 다루는 RAG는 외부 지식을 주입하여 환각을 줄이는 대표적인 접근법이며, 4장의 사실 일관성 평가는 환각을 감지하는 핵심 기법이다.
이 장은 파운데이션 모델 개발 시 핵심적인 설계 결정을 다룬다. 학습 데이터의 출처와 품질, 트랜스포머 아키텍처의 동작 원리, 사후 학습을 통한 모델 개선, 그리고 샘플링 전략까지 폭넓게 살펴보았다. 특히 Temperature, Top-K, Top-P를 로짓과 소프트맥스의 관점에서 이해하면 각 전략의 의미가 한층 명확해진다.