Top-p sampling (KO)
Top‑p 샘플링, 핵 샘플링(영어: Nucleus Sampling)이라고도 알려진 이 방법은 자기회귀 언어 모델을 위한 확률론적 디코딩 방법으로, 대형 언어 모델(LLM)을 비롯한 다양한 분야에서 널리 활용되고 있다. 이 방법은 2019년 아리 홀츠만(Ari Holtzman)과 공동 저자들에 의해 제안되었으며(arXiv 사전 공개 — 2019년 4월; ICLR 2020 게재), 고정된 Top‑k 샘플링의 개선된 대안으로서 등장하였다. 핵심 아이디어는 누적 확률 임계값 을 기준으로 각 생성 단계에서 후보 집합을 동적으로 선정하는 것이다.[1]
역사적 배경: 신경망 텍스트 퇴화 문제
Top‑p가 등장하기 이전, 지배적인 디코딩 전략은 탐욕적 탐색(greedy search)과 빔 탐색(beam search)이었으며, 이는 가장 높은 누적 확률을 가진 토큰 시퀀스를 선택하는 가능도 최대화 패러다임에 기반하였다. 탐욕적 탐색은 각 단계에서 국소적으로 가장 높은 확률의 토큰을 선택하며, 빔 탐색은 여러 생성 가설을 병렬로 추적한다.[1]
이러한 방법들은 폐쇄형 과제(기계 번역, 데이터 추출)에서는 효과적이었으나, 개방형 텍스트 생성 과제(이야기 쓰기, 대화 시스템)에서는 종종 신경망 텍스트 퇴화(neural text degeneration) — 출력이 틀에 박히거나 일관성을 잃거나 반복에 빠지는 퇴화 현상 — 을 초래하였다. 이 현상은 홀츠만 등이 The Curious Case of Neural Text Degeneration이라는 논문에서 상세히 기술하였다.[1]
Meister 등은 퇴화 문제의 원인을 인간의 텍스트가 각 다음 토큰의 국소적 확률을 단순히 최대화하는 것이 아니라, 기대 조건부 엔트로피에 가까운 정보량을 유지하려는 경향이 있다는 점과 연결 지어 설명하였다.[2]
대안으로 등장한 것이 순수 확률적 샘플링(sampling without truncation)이었는데, 이는 각 토큰의 확률에 따라 무작위로 토큰을 선택하는 방식이다. 그러나 이 방법은 반대 문제를 야기하였다: Softmax 함수는 어떤 토큰에도 확률을 엄밀히 0으로 부여하지 않기 때문에, 수만 개의 단어로 이루어진 어휘 집합에는 항상 광범위한 노이즈 토큰 영역이 존재한다. 순수 샘플링에서는 신뢰할 수 없는 분포의 꼬리에 빠질 위험이 커지며, 이는 생성 텍스트의 일관성을 저해할 수 있다.[1][3] 확률적 선택의 풍부함과 결정론적 제약의 신뢰성을 동시에 확보해야 한다는 필요성이 분포 절단 방법의 개발로 이어졌으며, 그 선두에 핵 샘플링(Top‑p)이 자리하게 되었다.[1][4]
간단한 설명
Top-p 샘플링은 다음 토큰의 선택을 가장 그럴듯한 후보들로만 제한하되, 후보의 수를 미리 고정하지 않는 방법이다.
텍스트를 생성할 때 언어 모델은 각 단계에서 다양한 가능한 후속어를 평가하고 각각에 특정 확률을 부여한다. 일부 토큰은 매우 높은 확률을 가지고, 일부는 적당한 확률을 가지며, 어휘의 대부분은 이른바 분포의 「꼬리」를 형성한다: 형식적으로는 허용되지만 종종 무작위적이거나 부적절하거나 텍스트의 일관성을 저해하는 매우 낮은 확률의 후보들이다.
Top-p 샘플링은 이 낮은 확률의 꼬리를 고정된 토큰 수가 아닌, 누적 확률을 기준으로 절단한다. 먼저 모든 후보를 가장 높은 확률부터 가장 낮은 확률 순으로 정렬한다. 그런 다음 총 확률이 지정된 임계값 — 예를 들어 0.9 또는 0.95 — 에 도달하는 최소한의 상위 토큰 집합을 선택한다. 이후 다음 토큰은 이 집합에서만 무작위로 선택되고, 나머지 후보는 모두 제외된다.
예를 들어, 모델이 「오늘 거리에는 강한…」이라는 문장을 계속 생성하는 경우, 가장 높은 확률의 후보로 「비」(0.45), 「폭우」(0.25), 「눈」(0.15), 「바람」(0.10)이 있을 수 있다. 임계값이 일 때 알고리즘은 확률을 내림차순으로 합산한다: 0.45 + 0.25 = 0.70 (0.90 미만), 「눈」을 추가하면: 0.70 + 0.15 = 0.85 (여전히 0.90 미만), 「바람」을 추가하면: 0.85 + 0.10 = 0.95 (임계값 초과). 핵은 네 개의 토큰으로 구성된다. 더 드문 후보들은 모두 제거되고, 남은 토큰들의 확률이 정규화된다: 예를 들어, 재정규화 후 「비」 토큰의 확률은 가 되며, 생성기는 이 업데이트된 분포에서 다음 토큰을 선택한다.
Top‑k와의 주요 차이점은 Top‑k가 항상 고정된 수의 상위 단어를(예: 50개) 선택하는 반면, Top‑p는 후보 수를 미리 고정하지 않는다는 것이다: 때로는 3개의 단어가 될 수도 있고, 때로는 20개가 될 수도 있으며 — 모두 해당 단계에서 확률이 어떻게 분포되었는지에 달려 있다. 이를 통해 이 방법은 맥락에 적응하며 낮은 확률의 토큰들로 이루어진 「꼬리」를 잘라내어 텍스트를 더 자연스럽게 만든다.
또 다른 예시. 예를 들어, 모델이 「아침에 그는 뜨거운…」이라는 문장을 계속 생성한다. 가장 높은 확률의 후속어로는 「차」(0.50), 「커피」(0.30), 「초콜릿」(0.08), 「육수」(0.04), 「케피어」(0.03)가 있을 수 있다. 임계값이 로 설정된 경우, 알고리즘은 위에서 아래로 확률을 합산하기 시작한다: 「차」는 0.50, 이후 0.50 + 0.30 = 0.80. 임계값이 이미 도달되었으므로 핵은 두 개의 토큰 「차」와 「커피」로만 구성된다. 다른 모든 후보는 제거된다. 재정규화 후 핵 내에서 「차」의 확률은 이 되고, 「커피」의 확률은 이 된다. 다음 토큰은 이 두 가지 후보 중에서만 선택된다.
다시 말해, 모델은 먼저 낮은 확률의 부적절한 후속어들을 제거하고, 그 후 남은 것들 중에서 선택한다. 이를 통해 더 명확하고 자연스럽게, 불필요한 「노이즈」 없이 글을 쓸 수 있게 된다.
개념
Top‑p의 핵심 아이디어는 각 단계에서 누적 확률이 주어진 임계값 이상인 가장 높은 확률의 토큰들로 이루어진 최소 집합(핵, 영어: nucleus)을 선택하는 것이다.
형식적으로, 를 조건부 확률 의 내림차순으로 정렬된 어휘 의 토큰이라고 하자. 그러면 핵 은 이 정렬된 시퀀스의 가장 짧은 접두사로, 그 누적 질량이 임계값에 도달하는 것으로 정의된다:
즉, 이는 총 확률이 이상인 가장 확률이 높은 토큰들의 포함 관계에서 최소인 집합이다.[1]
핵을 결정한 후, 외부의 토큰 확률은 0으로 설정되고, 핵 내부의 확률은 재정규화된다(실제 누적 질량 으로 나누어져 합이 1이 되도록). 다음 토큰은 이 절단되고 재정규화된 분포에서 샘플링된다.
동적 적응
- 「뾰족한」 분포(모델이 확신하는 경우)에서는 핵이 작다: 소수의 토큰만으로도 이미 질량 ≥ 에 도달하므로 일관성이 높아진다. 극단적인 경우, 가장 높은 확률의 토큰 확률이 이미 을 초과하면(예: 일 때 ), 핵은 단 하나의 토큰으로 좁아지고 Top‑p는 사실상 탐욕적 디코딩(greedy search)으로 전환된다.
- 「평평한」 분포(그럴듯한 후속어가 많은 경우)에서는 핵이 커진다: 선택 폭이 넓어지고 다양성이 증가한다.[1]
다른 디코딩 방법과의 비교
Top‑p vs. Top‑k
- Top‑k는 항상 고정된 수 의 가장 높은 확률의 토큰 중에서 선택한다. 「뾰족한」 분포에서는 수를 채우기 위해 불필요한 낮은 확률의 후보를 추가할 수 있고, 「평평한」 분포에서는 반대로 상위‑에 들지 못한 합리적인 후속어를 제외할 수 있다.
- Top‑p는 해당 단계의 데이터에 따라 후보 집합의 크기를 조정하므로, 다양한 유형의 분포에서 더 유연하고 안정적인 동작을 보인다.[1]
- 실제로 Top‑k와 Top‑p는 동시에 적용될 수 있다. 이 경우 먼저 상위‑ 토큰이 선택되고, 그런 다음 이 제한된 집합 내에서 임계값 를 가진 핵을 탐색한다. 정확한 순서와 동기는 구현에 따라 다르지만, 이러한 조합은 일반적인 기법으로 문서화되어 있다.[5]
쉽게 말하면, Top-k는 미리 몇 개의 후보를 남길지 결정하고, Top-p는 상황을 보면서 해당 맥락에서 필요한 만큼 남긴다. 따라서 Top-p가 일반적으로 더 유연하고, Top-k는 더 단순하고 예측 가능하다.
Top‑p vs. 온도(Temperature)
- 온도(temperature)는 분포의 전체적인 형태를 재조정(더 뾰족하거나 더 평탄하게 만듦)하지만, 토큰을 절단하지는 않는다: 낮은 확률의 후보들도 0이 아닌 확률을 유지한다.[5]
- Top‑p는 분포의 꼬리에 대한 엄격한 절단을 도입한다 — 낮은 확률의 토큰들은 샘플링에서 완전히 제외되어, 명백히 부적절한 후속어를 방지하는 데 도움이 된다.[1]
- 적용 순서. 표준 파이프라인(예: Hugging Face Transformers)에서는 먼저 로짓에 온도가 적용되고(분포의 형태 변경), 그 후 Top‑k가 적용될 수 있으며, 마지막으로 Top‑p(꼬리 절단)가 적용된다. 이것이 「이중 영향」을 제어하기 어려운 이유를 설명한다: 온도를 변경하면 Top‑p가 이후에 작업하는 누적 질량 자체가 변하기 때문이다.[5]
쉽게 말하면, 온도는 모델이 얼마나 자유롭게 단어를 선택하는지를 바꾸고, Top-p는 어떤 후보를 선택할 수 있는지를 결정한다. 따라서 온도는 무작위성의 정도에 영향을 미치고, Top-p는 모델이 덜 확률적인 후속어로 얼마나 깊이 들어갈 수 있는지에 영향을 미친다.
Hugging Face Transformers 구현에서의 연산 순서
샘플링 프로세서의 적용 순서는 특정 라이브러리에 따라 다르다. Hugging Face Transformers(v4.x 이후)에서 논의된 세 가지 매개변수에 대해 로짓 프로세서는 기본적으로 다음 순서로 추가된다:[5][6]
- 온도 로짓 스케일링. 각 토큰의 로짓을 Softmax 함수의 지수화 전에 온도 값으로 나눈다. 온도는 분포의 형태를 수정하여 이후 필터링을 위한 준비를 한다.
- Top‑k 필터(설정된 경우): 어휘를 고정된 수의 후보로 줄인다.
- Top‑p 필터: 이미 줄어든 토큰 풀에 누적 절단이 적용된다.
- 남은 확률의 재정규화 및 확률적 샘플링.
실제로는 적당한 온도(0.7)와 넓은 Top‑p 핵(0.95) 및 Top‑k 제한(50)의 조합이 일반적이다: 온도는 기본적인 다양성을 제공하고, Top‑k는 거친 안전 장치 역할을 하며, Top‑p는 맥락 의존적인 미세 조정을 수행한다.[5]
쉽게 말하면, 모델은 먼저 온도로 선택을 더 또는 덜 「자유롭게」 만들고, 필요한 경우 Top-k로 후보 수를 제한하며, 그 후 Top-p로 너무 약한 후보들을 제거한다. 이러한 순서는 먼저 선택의 전반적인 성격을 조정하고, 이후 불필요한 것들을 제거하는 데 도움이 된다.
권장 사항: 한 번에 하나의 매개변수 조정
모델 공급자들은 생성 스타일을 조정할 때 temperature와 top_p 중 하나만 변경하고 동시에 둘 다 변경하지 않도록 권장한다. 이 권장 사항은 OpenAI, Azure OpenAI, Anthropic의 공식 문서에 포함되어 있다.[7][8][9]
실용적인 근거: 두 매개변수 모두 확률 분포의 형태에 영향을 미치기 때문에(온도는 곡선의 가파름을 변경하고, Top‑p는 절단 지점을 설정함), 동시에 변경하면 진단이 어려워진다 — 어떤 매개변수가 출력의 개선이나 악화를 초래했는지 판별할 수 없다. 또한, 두 매개변수의 극단적으로 낮은 값(예: Temperature ≈ 0 및 Top‑p ≈ 0.01)에서는 핵이 사실상 하나의 토큰으로 좁아져, 샘플링이 탐욕적 탐색으로 전환된다.[7]
일부 reasoning 모델들은 API 수준에서 이러한 매개변수 조정을 추가로 제한하므로, 해당 모델들에서는 이들의 동시 변경 문제가 적용되지 않는다(「라이브러리 및 API 호환성」 섹션 참조).[7]
일반적인 엔지니어링 경험 법칙: 높은 재현성이 요구되는 과제에는 낮은 온도(0에 가깝게)를 사용하고; 창의적 과제에는 온도를 기본 수준(1.0)으로 유지하면서 Top‑p 매개변수로 다양성을 조정하거나, Top‑p를 1.0으로 고정하고 온도를 변화시킨다. 구체적인 권장 사항은 공급자마다 다를 수 있다.[7][9]
사실성과 환각에 미치는 영향
디코딩 전략의 선택은 생성 텍스트의 문체뿐만 아니라 사실적 오류의 빈도와 유형에도 영향을 미칠 수 있다. 환각 현상 — 거짓이거나 맥락에 모순되는 정보를 확신에 차서 생성하는 것 — 은 생성형 AI의 핵심 문제 중 하나이다. 경험적 연구에 따르면 샘플링 전략이 환각에 미치는 영향은 과제, 모델, 매개변수의 구체적인 설정에 따라 다르다.[3][10]
확률적 샘플링에서 오류 발생 메커니즘
Top‑p 값이 높을 때(예: 0.95), 모델은 확률 질량의 95%를 포함하는 핵을 형성한다. 고엔트로피 상태(예: 잘 알려지지 않은 사실에 답변하려 할 때)에서 이 핵은 수백 개의 낮은 확률 토큰을 포함할 수 있다. 이러한 조건에서의 확률적 샘플링은 문법적으로는 올바르지만 사실적 진실과 의미론적으로 연결되지 않은 토큰을 추출할 수 있다. 맥락에 포함된 이러한 토큰은 모델이 오류를 포함한 모든 이전 토큰을 고려하면서 생성을 계속하기 때문에 이후 생성 단계에 영향을 미칠 수 있다.[3][1]
개방형 과제와 폐쇄형 과제의 이분법
대규모 실험을 통해 과제 유형에 따른 생성 품질의 의존성이 드러났다. 에세이 작성이나 대화 시스템 과제에서는 확률적 방법(Top‑p, Temperature)이 선두를 유지하는 반면, 엄격하게 결정론적인 영역에서는 결정론적 접근 방식에 크게 뒤처질 수 있다.[10]
코드 합성 벤치마크(HumanEval, MBPP)와 수학 문제 해결(GSM8K) 벤치마크에서 결정론적 방법(Beam Search, Greedy Decoding)은 Top‑p 기반 접근 방식에 비해 더 나은 결과를 보인다. 2~8단계의 계산을 요구하는 수학 문제 8,500개를 포함하는 GSM8K 데이터셋은 이러한 과제에서 확률적 선택의 취약성을 잘 보여준다: Top‑p의 절단된 분포를 통한 무작위성 주입은 중간 단계 어디에서든 모델의 추론 체인(Chain‑of‑Thought)을 방해할 수 있다. Tan 등은 디코딩 방법의 효과성이 특정 과제에 크게 의존한다(task‑dependent)고 강조한다.[10]
디코딩 수준에서의 환각 방지 방법
확률적 샘플링으로 인한 환각 효과에 대처하기 위해 고급 디코딩 보강 방법들이 개발되었다:
- 대조적 디코딩(Contrastive Decoding, DoLa) — 주 모델과 더 작은 보조 모델 간의 로그 가능도 차이를 최적화하여 신뢰성 필터 역할을 한다.[10]
- SH2(Self‑Highlighted Hesitation) — 낮은 확신도의 토큰을 처리할 때 디코더가 인위적으로 「망설이도록」 만든다.[11]
- 방향성 활성화 투영(SEA) — 벡터 표현 수준에서 환각 신호를 억제한다.[11]
한편, 우수한 정렬(alignment)을 갖춘 현대 모델들은 사실성에 대한 더 깊은 이해를 보유하고 있어, 내부 분포의 엔트로피가 낮아지고 높은 Top‑p 값에서도 사실적 정보의 퇴화에 덜 취약하다.[10][12]
실제 적용 및 권장 사항
Top‑p는 유연성과 제어 가능성의 조합 덕분에 현대 LLM에서 널리 사용된다.
- 일반적인 값의 범위. 실제로는 가 자주 사용된다. 기본값은 공급자마다 다르다: OpenAI는 `top_p` = 1.0(절단이 사실상 비활성화됨), Anthropic은 0.99, 많은 Google Gemini 모델은 0.95이다.[13] Hugging Face Transformers 라이브러리의 프레임워크 기본값도 1.0이지만, 개별 모델은 자신의 `generation_config.json`에서 이를 재정의할 수 있다.[14] 따라서 0.9–0.95는 일반적으로 권장되는 실용적 범위이지만, 범용적인 기본 표준은 아니다.[5][15]
- 1.0에 가까운 값(예: 0.98–0.99)은 다양성을 높인다: 더 많은 토큰이 핵에 포함된다.
- 작은 값(예: 0.80–0.90)은 출력의 결정론적 성격과 「절제됨」을 높인다.
- 일 때 Top‑p에 의한 절단이 사라진다: 전체 어휘에서 선택이 이루어진다(온도 및 기타 디코딩 필터가 활성화된 경우 이를 고려함).[5]
- 라이브러리 및 API 호환성.
- Hugging Face Transformers에서는 `min_tokens_to_keep` 임계값(기본값 1)을 추가로 사용하는 TopPLogitsWarper가 구현되어 있다. 이는 구현상의 보호 세부 사항이다: 표준 값에서는 정의상 빈 핵이 발생하지 않지만, 이 매개변수는 경계 케이스에서 올바른 동작을 보장한다.[16]
- 일부 API에서는 `top_p` 매개변수를 사용할 수 있지만 `top_k`는 없을 수 있다; 매개변수 지원 및 의미론은 특정 모델과 작동 모드에 따라 다르다. Reasoning 모델은 일반적으로 API 수준에서 확률적 설정을 제한한다. 예를 들어, 현재 OpenAI 문서에서 `temperature` 및 `top_p` 매개변수는 `reasoning.effort = none`인 GPT‑5.2에서만 명시적으로 지원된다; 다른 `reasoning` 값을 가진 GPT‑5.2 또는 GPT‑5.1에 대한 요청, 그리고 이 필드를 전달할 때의 이전 GPT‑5 모델(`gpt‑5`, `gpt‑5‑mini`, `gpt‑5‑nano`)은 오류를 발생시킨다. 이전 세대의 Reasoning 모델(o1, o3)도 이들을 제한하거나 고정한다.[7][17][18] Anthropic의 Claude API에서는 확장된 사고(extended thinking)가 활성화된 경우 `temperature` 및 `top_k` 변경이 금지되지만, `top_p`는 0.95–1.0 범위에서 허용된다; 서드파티 플랫폼(예: Amazon Bedrock)에서는 제한이 다를 수 있다.[19] 공급자 제한은 버전마다 자주 변경된다; 최신 문서를 참조하는 것이 권장된다.[8][20]
- 긴 텍스트와 반복성. 일련의 실험에서 nucleus sampling이 greedy/beam 탐색 및 고정된 Top‑k에 비해 특히 긴 시퀀스에서 퇴화(반복, 틀에 박힌 표현) 경향을 줄이는 것으로 나타났다.[1][10]
현대적 대안
2019년 nucleus sampling 발표 이후, Top‑p의 아이디어를 발전시키거나 보완하는 여러 대안적인 확률적 디코딩 방법이 제안되었다:
Min‑p 샘플링
Min‑p 샘플링(Nguyen 등, 2024)은 확률이 이상인 토큰을 남기는 방식으로, 가장 높은 확률의 토큰에 상대적인 임계값을 설정한다. ICLR 2025 구두 발표에 채택되었으며, Hugging Face Transformers[21] 및 vLLM[22]을 포함한 여러 인기 있는 프레임워크에서 구현되었다.[23]
Top‑p와의 핵심 차이점은 임계값의 유형에 있다: Top‑p는 확률의 누적 합을 기반으로 한 절대적 임계값을 사용하는 반면, Min‑p는 가장 높은 확률의 토큰 확률에서 스케일링되는 상대적 임계값을 설정한다.[23]
수학적으로 알고리즘은 다음과 같이 작동한다: 각 단계에서 최대 확률 이 결정되고, 그 후 스케일링된 임계값 이 계산된다. 개별 확률이 이 임계값을 초과하는 토큰만 최종 풀에 포함된다.[24]
이는 적응성을 보장한다: 모델이 다음 단어에 대해 확신하는 경우(), 기본 에서 임계값은 0.09가 되어 노이즈 토큰을 엄격하게 제외한다. 모델이 불확실한 경우(), 임계값은 0.01로 낮아져 핵에 넓은 범위의 후보들이 들어오게 된다.[23]
Top‑p의 알려진 약점은 고온 샘플링()에서 나타난다: 분포가 인위적으로 평탄해지면 Top‑p는 지정된 누적 합에 도달하기 위해 많은 낮은 확률의 토큰을 핵에 포함시켜야 하며, 이로 인해 일관성 저하가 발생할 수 있다.[23] Min‑p는 이러한 조건에서 더 잘 대처한다. Mistral Large 모델과 극단적인 온도 를 사용한 과학적 및 논리적 지식 벤치마크(GPQA) 실험에서 Min‑p 알고리즘은 13.84%의 정확도를 보인 반면, 표준 Top‑p 0.9는 무작위 노이즈 수준인 0.89%를 기록했다.[24]
한편 학계에서는 논쟁이 진행 중이다: 일부 비판적 연구(예: arXiv:2506.13681)는 모든 NLP 지표에 걸친 Min‑p 이점의 보편성에 의문을 제기하며, 추가 연구의 필요성을 지적하고 있다.[25]
쉽게 말하면, Min-p는 모든 후보를 총 확률의 합이 아닌 현재 단계에서 가장 강한 후보와 비교한다. 따라서 모델이 확신하는 경우 더 엄격하게 약한 후속어들을 제거하고, 불확실한 경우에는 더 많은 허용 가능한 후보들을 남긴다. 이를 통해 Min-p는 일관성과 다양성 사이의 균형을 더 잘 유지할 수 있으며, 특히 Top-p가 너무 많은 약한 단어들을 통과시키기 시작하는 경우에 효과적이다.
Locally typical sampling
Locally typical sampling(Meister 등, 2023)은 정보 이론적 전형성 개념에 기반하여, 정보 부하()가 조건부 엔트로피에 가까운 토큰을 선택한다.[2]
최대 확률의 토큰을 선택하여 핵의 크기를 최소화하려는 Top‑p와 달리, Locally Typical Sampling은 정보 거리 지표를 기반으로 최적화 문제를 해결한다. 알고리즘은 각 토큰의 정보 내용()을 계산하고 모델의 조건부 엔트로피 까지의 절대 거리를 측정한다. 토큰들은 원시 확률이 아닌 「정보적 전형성」의 정도 — 맥락의 기대 정보 내용에 대한 근접성 — 에 따라 순위가 매겨진다. 토큰들은 엔트로피까지의 거리가 가까운 순서로 핵에 추가되며, 누적 확률 임계값에 도달할 때까지 계속된다.[2][26]
이 접근 방식의 결과: 고엔트로피 상태에서 알고리즘은 노이즈가 많은 낮은 확률의 꼬리뿐만 아니라, 정보를 너무 적게 전달하여 텍스트를 진부하게 만드는 지나치게 높은 확률의 단어도 의도적으로 제외한다. 이는 퇴화적인 반복의 위험을 줄이고 텍스트 반복성 지표를 인간이 작성한 텍스트의 지표에 가깝게 만든다.[26]
Tail Free Sampling (TFS)
Tail Free Sampling(TFS)은 덜 형식화되어 있지만 실용적으로 흥미로운 접근 방식으로, 확률 공간의 미분 분석을 기반으로 노이즈 꼬리를 식별한다. Top‑p와 Min‑p가 1차 확률(누적 합과 기본 분율)을 다루는 반면, TFS는 정렬된 확률 곡선의 1차 및 2차 도함수를 분석한다. 이 방법은 Trenton Bricken의 블로그에 설명되어 있으며 여러 inference 엔진에서 구현되었지만, 동료 심사를 거친 논문으로 발표되지는 않았다.[27]
TFS의 기본 전제: 샘플링에 단 하나의 노이즈 토큰이 포함되더라도 전체 자기회귀 생성에 기하급수적인 위협을 가져온다. 확률 값의 2차 도함수를 계산함으로써 알고리즘은 「평탄 구간」 — 확률의 하락이 느려지고 긴 완만한 꼬리로 전환되는 곡선의 구간 — 을 찾는다. 이 변곡점이 동적 절단 경계가 된다: 그 이전의 토큰들은 의미론적으로 안전한 것으로 간주되고, 전체 꼬리는 제거된다.[27]
수학적 우아함에도 불구하고 TFS는 실시간으로 도함수를 계산하는 데 더 많은 계산 비용이 필요하기 때문에, 대규모 상업 제품에서는 더 가벼운 알고리즘에 밀리고 있다.[27]
p‑less sampling
‑less sampling — 엔지니어가 절단 하이퍼파라미터를 조정할 필요를 완전히 없애는 방법이다.[28] Top‑k, Top‑p에서 Min‑p에 이르는 모든 이전 방법들의 근본적인 문제는 정적 하이퍼파라미터에 대한 의존성으로, 그 값이 전문가적 조정을 요구하며 하나의 과제(창의적 글쓰기)에는 최적일 수 있지만 다른 과제(프로그래밍)에는 부적합할 수 있다.[29]
정보 이론에 뿌리를 둔 ‑less 알고리즘은 실시간으로 전체 확률 분포의 내부 위상을 분석하여 각 디코딩 단계에서 고유한 절단 임계값을 동적으로 생성한다. 저자들은 온도 변화에 대한 방법의 안정성(temperature robustness)을 보고한다: 온도가 높아지면 기존 방법들이 상당히 저하될 수 있지만, ‑less는 품질의 안정성을 유지한다. 또한 누적 스캔과 대형 핵의 재정규화 논리를 포기함으로써, 저자들에 따르면 이 방법은 추론 단계에서 더 높은 계산 효율성을 제공하며 수학, 논리, 창의적 글쓰기 데이터셋에서 정확도를 잃지 않고 더 간결한 답변을 생성한다.[29][28]
η‑샘플링
η‑샘플링(Hewitt 등, 2022)은 엔트로피 의존적 확률 임계값을 사용하여 Top‑p가 과도하게 절단할 수 있는 저엔트로피 맥락에 적응한다.[30]
참고 문헌
- Holtzman, A., Buys, J., Du, L., Forbes, M., & Choi, Y. (2019; ICLR 2020 게재). The Curious Case of Neural Text Degeneration. arXiv:1904.09751.
- Fan, A., Lewis, M., & Dauphin, Y. (2018). Hierarchical Neural Story Generation. arXiv:1805.04833.
- Meister, C., Pimentel, T., Wiher, G., & Cotterell, R. (2023). Locally Typical Sampling. arXiv:2202.00666.
- Ravfogel, S., Goldberg, Y., & Goldberger, J. (2023). Conformal Nucleus Sampling. ACL Findings 2023.
- Tan, Q. et al. (2024). A Thorough Examination of Decoding Methods in the Era of LLMs. arXiv:2402.06925.
- Finlayson, M. et al. (2024). Closing the Curious Case of Neural Text Degeneration. arXiv:2310.01693.
- Chen, S. J. et al. (2025). Decoding Game: On Minimax Optimality of Heuristic Text Generation Strategies. arXiv:2410.03968.
- Nguyen, M. et al. (2024). Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. arXiv:2407.01082.
- Sen, J. et al. (2025). Advancing Decoding Strategies: Enhancements in Locally Typical Sampling for LLMs. arXiv:2506.05387.
- Bricken, T. Tail Free Sampling. [32].
- p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. arXiv:2509.23234.
주석
- ↑ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 Holtzman, A., Buys, J., Du, L., Forbes, M., & Choi, Y. (2019). The Curious Case of Neural Text Degeneration. arXiv:1904.09751. [1]
- ↑ 2.0 2.1 2.2 Meister, C., Pimentel, T., Wiher, G., & Cotterell, R. (2023). Locally Typical Sampling. TACL, Vol. 11. arXiv:2202.00666. [2]
- ↑ 3.0 3.1 3.2 Large Language Models Hallucination: A Comprehensive Survey. arXiv:2510.06265. [3]
- ↑ Finlayson, M. et al. (2024). Closing the Curious Case of Neural Text Degeneration. arXiv:2310.01693. [4]
- ↑ 5.0 5.1 5.2 5.3 5.4 5.5 5.6 Hugging Face Transformers. Generation strategies (top‑k, top‑p, temperature). [5]
- ↑ Hugging Face Transformers. generation/utils.py (исходный код). [6]
- ↑ 7.0 7.1 7.2 7.3 7.4 OpenAI API Reference. top_p — рекомендация «We generally recommend altering this or temperature but not both». [7]
- ↑ 8.0 8.1 Microsoft Learn (Azure OpenAI). Text/Chat Completions — parameters. [8]
- ↑ 9.0 9.1 Anthropic API Reference. Messages API — top_p. [9]
- ↑ 10.0 10.1 10.2 10.3 10.4 10.5 Tan, Q. et al. (2024). A Thorough Examination of Decoding Methods in the Era of LLMs. arXiv:2402.06925. [10]
- ↑ 11.0 11.1 From Illusion to Insight: A Taxonomic Survey of Hallucination Mitigation Techniques in LLMs. MDPI. [11]
- ↑ Survey and analysis of hallucinations in large language models: attribution to prompting strategies or model behavior. Frontiers in AI. [12]
- ↑ Anthropic. API release notes. [13]
- ↑ Hugging Face. GenerationConfig (top_p default). [14]
- ↑ Google AI / Vertex AI. Content generation parameters (topP/topK). [15] [16]
- ↑ Transformers API. TopPLogitsWarper (параметры и поведение, включая `min_tokens_to_keep`). [17]
- ↑ OpenAI API. Using reasoning models — parameter support. [18]
- ↑ OpenAI API. Using GPT-5.2. [19]
- ↑ Anthropic. Building with extended thinking. [20]
- ↑ Microsoft Learn (Azure AI Foundry). Reasoning models — supported parameters. [21]
- ↑ Hugging Face Transformers. MinPLogitsWarper. [22]
- ↑ vLLM. Sampling Parameters — min_p. [23]
- ↑ 23.0 23.1 23.2 23.3 Nguyen, M. et al. (2024). Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. arXiv:2407.01082. [24]
- ↑ 24.0 24.1 Nguyen, M. et al. Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. [25]
- ↑ Turning Down the Heat: A Critical Analysis of Min-p Sampling in Language Models. arXiv:2506.13681. [26]
- ↑ 26.0 26.1 Locally Typical Sampling. Transactions of the ACL, MIT Press. [27]
- ↑ 27.0 27.1 27.2 Bricken, T. Tail Free Sampling. [28]
- ↑ 28.0 28.1 p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. OpenReview. [29]
- ↑ 29.0 29.1 p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. arXiv:2509.23234. [30]
- ↑ Hewitt, J., Manning, C. D., & Liang, P. (2022). Truncation Sampling as Language Model Desmoothing. Findings of EMNLP 2022. arXiv:2210.15191. [31]
같이 보기
- 온도(Temperature)
- 대형 언어 모델