정의
톱 p 샘플링(Nucleus Sampling, Top‑p Sampling)은 자연어 처리(NLP) 및 생성 모델에서 텍스트를 생성할 때 사용되는 확률 기반 샘플링 기법이다. 모델이 출력하는 각 토큰에 대한 확률 분포에서 상위 누적 확률 p (0 < p ≤ 1) 를 초과하지 않는 최소한의 토큰 집합(‘핵’이라 불리는)만을 선택하고, 그 집합 내에서 확률에 비례해 무작위로 토큰을 샘플링한다. 이를 통해 높은 확률의 토큰은 유지하면서도, 낮은 확률의 토큰이 과도하게 선택되는 것을 방지한다.
원리
-
확률 정렬
- 모델이 예측한 모든 후보 토큰을 확률 순으로 내림차순 정렬한다.
-
누적 확률 계산
- 정렬된 토큰 리스트를 위에서 아래로 순회하며 누적 확률을 계산한다.
-
핵(Nucleus) 설정
- 누적 확률이 사전에 지정한 임계값 p 를 처음 초과하는 시점까지 토큰을 포함시킨다.
- 이때 포함된 토큰 집합을 “핵”이라 부른다.
-
재정규화 및 샘플링
- 핵 내 토큰들의 원래 확률을 합산하여 1이 되도록 재정규화한다.
- 재정규화된 확률 분포에서 무작위로 하나의 토큰을 선택한다.
역사·배경
톱 p 샘플링은 2019년 OpenAI의 논문 “Better Language Models and Their Implications” 와 그 후속 연구에서 소개되었다. 기존의 톱‑k 샘플링(Top‑k Sampling) 은 고정된 개수 k 만큼의 상위 토큰만을 고려했지만, 톱 p 샘플링은 확률 누적값을 기준으로 동적으로 토큰 수를 결정함으로써 텍스트의 다양성과 품질 사이의 균형을 더욱 유연하게 맞출 수 있다.
적용 분야
- 대화형 AI(ChatGPT, 대화형 챗봇)
- 창의적 글쓰기(스토리 생성, 시 생성)
- 코드 자동완성(프로그래밍 언어 모델)
- 음악·이미지 캡션 등 텍스트 기반 생성 전반
장점
| 장점 | 설명 |
|---|---|
| 다양성 유지 | 낮은 확률 토큰을 완전히 배제하지 않아 보다 창의적인 출력을 가능하게 함 |
| 품질 제어 | p값을 조절함으로써 출력의 일관성과 무작위성을 정밀하게 조정 가능 |
| 동적 토큰 수 | 확률 분포에 따라 토큰 집합 크기가 변하므로, 복잡한 문맥에서도 적절한 선택이 이루어짐 |
단점 및 한계
- p값 선택의 주관성: 최적의 p값은 모델, 데이터, 태스크에 따라 달라지며 실험적인 튜닝이 필요함.
- 계산 비용: 전체 토큰을 확률 순으로 정렬하고 누적 확률을 계산해야 하므로, 특히 대규모 어휘(수십만 토큰)에서는 연산 비용이 증가한다.
- 극단적 확률 분포: 확률이 극단적으로 한 토큰에 집중되는 경우, 핵이 매우 작아져서 실제로는 톱‑k 샘플링과 유사한 효과를 보일 수 있다.
관련 개념
- 톱‑k 샘플링(Top‑k Sampling): 확률 상위 k 개의 토큰만을 대상으로 샘플링하는 방식.
- 온도 스케일링(Temperature Scaling): 확률 분포를 평탄화하거나 뾰족하게 만드는 매개변수; 톱 p 샘플링과 함께 사용 가능.
- 빔 서치(Beam Search): 확률이 높은 후보 시퀀스를 다중으로 유지하며 탐색하는 결정적 방법; 톱 p 샘플링은 확률적 대안으로 활용됨.
참고문헌
- Holtzman, A., et al. “The Curious Case of Neural Text Degeneration.” Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, 2020.
- OpenAI. “GPT-2: Language Models are Unsupervised Multitask Learners.” 2019.
- Brown, T. B., et al. “Language Models are Few-Shot Learners.” Advances in Neural Information Processing Systems, 2020.
본 항목은 최신 연구와 일반적인 실무 적용 사례를 기반으로 작성되었으며, 지속적인 학술적·기술적 발전에 따라 내용이 업데이트될 수 있다.