블라인드 사람 표본으로 LLM 레이블 인증하기
블라인드 무작위 사람 표본에서 오류율이 목표보다 낮다고 확인된 경우에만 LLM의 레이블을 유지하고, 출현율은 모델 오류를 보정한 구간과 함께 보고합니다.
LLM 레이블을 하나하나 확인하지 않고 어떤 것을 유지할지 정하려면, 사람에게 블라인드 무작위 표본에 레이블을 달게 하고, 그 표본의 절반으로 신뢰도 임계값을 고른 뒤, 나머지 절반으로 임계값을 넘는 레이블의 오류율이 목표보다 낮은지 검정하세요. 출현율 수치는 같은 표본에서 드러난 모델의 오류로 모델의 추정치를 보정하세요. 그러면 모델이 얼마나 좋든 유효한 구간을 얻습니다.
LLM 레이블을 확인하는 흔한 방법은 출력을 수십 개 읽어 보고, 괜찮아 보이면 "LLM이 데이터에 레이블을 달았고 우리가 표본 점검을 했다" 같은 문장을 붙여 데이터셋을 내보내는 것입니다. 그 문장은 레이블이 얼마나 자주 틀리는지 말해 주지 않으며, 검토자는 그 점검이 15%의 오류율을 잡아냈을지 판단할 수 없습니다. 수치를 뒷받침하는 점검은 세 가지 질문에 답합니다. 어떤 기계 레이블을 유지할지, 기계 레이블로 계산한 비율이 얼마나 빗나가 있는지, 그리고 모델이 사람을 대신할 수 있는지입니다.
표본 점검과 검토된 사전 레이블의 편향
기계 레이블을 실제보다 좋아 보이게 만드는 습관이 두 가지 있습니다. 첫째는 모델이 가장 확신하지 못한 항목을 점검하는 것입니다. 그런 항목을 점검하면 오류를 빨리 찾지만, 점검한 항목은 데이터셋의 표본이 아니므로 그 항목들의 오류율은 나머지에 대해 아무것도 추정해 주지 않습니다. 둘째는 모델의 답이 화면에 떠 있는 동안 사람들이 단 레이블로 일치도를 측정하는 것입니다. 제안은 답을 그쪽으로 끌어당기므로, 검토된 사전 레이블로 측정한 일치도는 블라인드로 측정한 일치도보다 높게 나옵니다. 이런 자동화 편향은 LLM 사전 주석에서 더 자세히 다룹니다.
따라서 수치를 뒷받침하는 점검에는 세 가지 성질이 필요합니다. 점검할 항목은 포함 확률을 아는 상태에서 무작위로 뽑습니다. 그 항목에 레이블을 다는 사람은 모델의 답을 볼 수 없습니다. 규칙을 고르는 레이블과 그 규칙을 검정하는 레이블은 서로 다릅니다.
선택적 예측과 선택적 위험
선택적 예측이란 모델이 신뢰도가 임계값을 넘는 항목에만 레이블을 달고 나머지는 기권해 사람에게 넘기는 방식입니다. 통제해야 할 양은 선택적 위험, 즉 모델이 유지하는 레이블 중 틀린 것의 비율입니다. 예를 들어 항목의 70%를 4% 오류율로 유지하는 임계값은 모든 항목에 12% 오류율로 레이블을 다는 모델보다 더 쓸모 있을 수 있습니다.
같은 레이블로 임계값을 고르고 검정하면 성능이 과대평가되므로, 사람 표본을 나눕니다. 절반인 dev 분할로 임계값을 고릅니다. 나머지 절반인 cert 분할로는 수락된 레이블의 오류가 목표보다 높다는 주장을 단측 이항 검정으로 검정합니다. 그 주장이 기각되면 임계값은 명시된 신뢰도로 인증됩니다. Learn-then-Test(Angelopoulos 외, 2025)는 임계값 선택을 다중 검정 문제로 다룹니다. 그중 한 절차는 후보 임계값을 정해진 순서대로 검정하다가 처음 실패하는 곳에서 멈추며, 이 덕분에 보장을 잃지 않고 여러 임계값을 시도할 수 있습니다.
이런 검정에는 대부분의 표본 점검보다 큰 표본이 필요합니다. 목표가 신뢰도 90%로 최대 10% 오류이고, 클래스별 분할 없이 모델 하나를 처음 검정하는 경우라고 해 봅시다. Potato는 이 검정을 약 0.06 수준에서 실행합니다(이유는 다음 절에서 설명합니다). cert 분할에 수락된 레이블이 100개 있으면, 틀린 것이 최대 5개일 때만 검정을 통과합니다. 5% 목표라면 100개 중 틀린 것이 최대 1개, 또는 200개 중 최대 4개여야 합니다. 실제 오류율이 7%인 모델은 수락된 cert 레이블이 100개일 때 이 첫 검정을 약 29%의 확률로, 300개일 때 약 56%의 확률로 통과합니다.
반복 검정과 오류 예산
사람들은 첫 검정 뒤에도 계속 레이블을 달고, 통과할 때까지 검정을 다시 돌리면 잘못된 인증서가 나올 10%의 확률이 훨씬 커집니다. 해결책 하나는 각 검정에 갈수록 줄어드는 오류 예산 몫을 주는 것입니다. Potato는 k번째 검정에 허용 오류의 6 / (pi^2 k^2)만큼을 줍니다. 그래서 첫 검정은 61%, 두 번째는 15%를 받고, 가능한 모든 검정에 걸친 몫을 합하면 전체 예산이 됩니다. 새 프롬프트나 새 모델을 시도하는 것도 새 검정으로 셉니다. 운으로 통과할 기회가 한 번 더 생기기 때문입니다.
예측 기반 추론으로 구하는 출현율
많은 연구에는 데이터셋보다 비율이 필요합니다. 예를 들어 유해한 게시물의 비율이나 성공한 에이전트 실행의 비율입니다. 모델의 오류가 한쪽으로 치우쳐 있으면 기계 레이블을 세어 얻은 비율은 편향됩니다. 사람 표본만 세면 편향되지 않은 비율을 얻지만 구간이 넓습니다.
예측 기반 추론(prediction-powered inference)(Angelopoulos 외, 2023)은 둘을 결합합니다. 모든 항목의 기계 레이블로 비율을 계산한 다음, 사람이 레이블을 단 표본에서 나타난 모델의 평균 오류로 그 비율을 보정합니다. 이 구간은 모델의 품질과 상관없이 유효합니다. PPI++는 기계 레이블에 줄 가중치를 조정하므로, 좋은 모델은 사람만으로 얻을 수 있는 것보다 구간을 좁히고, 나쁜 모델은 구간을 넓히지 않습니다. 사람 표본을 서로 다른 확률로 뽑았다면 Horvitz-Thompson 차분 추정량이 같은 역할을 합니다.
Potato에 포함된 에이전트 트레이스 예제에서, LLM 판정자는 예제용으로 작성되어 각각 참조 결과가 있는 합성 에이전트 트레이스 288개를 평가했고, 76%가 성공했다고 판단했습니다. 같은 판정자와 사람 표본으로 구한 예측 기반 구간은 0.66 [0.57, 0.76]이었고, 데이터의 참조 비율은 0.60이었습니다. 판정자는 개별 트레이스의 80%를 맞혔는데도 비율을 16%포인트 과대평가했습니다. 오류가 "성공" 쪽으로 치우쳐 있었기 때문입니다.
대안 주석자 검정
사람들끼리 의견이 갈릴 때는 고정된 정확도 목표가 잘못된 질문일 수 있습니다. 신중한 주석자 두 명이 항목의 85%에서 일치한다면, 어떤 레이블러도 95% "맞다"고 보여 줄 수 없습니다. 기준 자체도 잡음을 품고 있기 때문입니다. 대안 주석자 검정(alternative annotator test)(Calderon 외, 2025)은 대신 상대적인 질문을 던집니다. 한 사람씩 차례로 빼 가며, 모델이 나머지 사람들과 일치하는 빈도가 빠진 사람이 일치하는 빈도와 적어도 같은지를 허용 범위 안에서 검정합니다. 이 검정에는 여러 사람이 레이블을 단 항목이 필요하며, Potato의 구현은 각각 항목 30개 이상에 레이블을 단 주석자가 최소 세 명이 될 때까지 기다립니다. 이 비교의 kappa 기반 버전과 판정자의 보정을 확인하는 방법은 LLM 판정자 일치도에서 다룹니다.
Potato 레이블링 엔진의 계약
버전 2.11부터 Potato의 레이블링 엔진은 이런 검정을 계약으로 실행합니다. 엔진은 블라인드 무작위 표본을 뽑아 모든 기계의 답을 숨긴 채 주석자에게 제공하고, dev와 cert로 나누며, 레이블이 들어오는 대로 인증합니다. 다음 설정은 틀린 것이 최대 10%, 신뢰도 90%인 경우에 LLM의 감성 레이블을 유지하고, 각 레이블의 출현율을 90% 구간과 함께 보고합니다.
assignment_strategy: engine
labeling_engine:
enabled: true
sources:
- id: llm
kind: llm
endpoint_type: vllm
model: google/gemma-4-12B-it-qat-w4a16-ct
base_url: http://localhost:8001/v1
confidence: {method: logprob}
contracts:
- id: accuracy
kind: selective_risk
schema: sentiment
error: 0.1
confidence: 0.9
- id: prevalence
kind: ppi
schema: sentiment
confidence: 0.9
budgets:
human_labels: 400confidence 0.9는 모든 계약에서 Potato의 기본값입니다. 이 소스가 토큰 로그 확률에서 신뢰도를 읽는 이유는, 임계값에는 맞는 답과 틀린 답을 가르는 신뢰도가 필요하고, 모델이 말로 밝힌 신뢰도는 Potato가 제공하는 방식 중 가장 믿기 어렵기 때문입니다. Potato의 텍스트 예제는 리뷰 481개를 Laya를 첫 단계로, 이 LLM을 마지막 단계로 두고 처리합니다. 그 실행에서 10% 계약은 사람 레이블 165개로 충족되었고, 엔진은 기계 레이블 316개를 수락했습니다. 모두 LLM의 레이블이었는데, Laya의 임계값이 끝내 정해지지 않았기 때문입니다. 참조 레이블 기준으로 측정한 이 레이블들의 오류율은 7.6%였습니다. potato label certificate config.yaml은 무엇을, 몇 개의 레이블로, 어떤 모델 및 프롬프트 버전으로 검정했는지 출력합니다.
블라인드 표본 인증의 한계
이 보장들은 모두 표본에 레이블을 단 사람들과의 일치에 관한 것입니다. 그 사람들이 부주의하거나 훈련이 부족하면, 충족된 계약은 부주의한 사람들과의 일치를 인증합니다. 따라서 인증서를 믿기 전에 중복 레이블링과 품질 관리로 주석자를 확인하세요.
전혀 변하지 않는 신뢰도로는 임계값이 아무것도 가를 수 없습니다. 에이전트 트레이스 예제의 판정자는 모든 트레이스에 신뢰도 1.0을 매겼으므로 어떤 임계값도 통과할 수 없었고, Potato는 그런 계약을 모두 수락하는 대신 infeasible로 표시합니다. 같은 데이터에서 출현율 구간은 여전히 작동했습니다. 구간은 신뢰도에 의존하지 않기 때문입니다.
사람들이 데이터에 담겨야 할 이유로 의견이 갈리는 주관적 작업에서는 항목마다 하나의 정답이 없을 수 있습니다. 그럴 때는 모델의 레이블 분포를 사람들의 의견 분포와 비교하세요. Potato의 distributional 계약이 반분(split-half) 잡음 상한을 기준으로 이를 보고합니다. 첫 실행 뒤 potato label status config.yaml을 실행하면 각 계약이 통과하기까지 사람 레이블이 몇 개 더 필요한지 볼 수 있습니다.
더 읽어보기
- 모든 계약의 옵션과 실패 양상을 담은 레이블링 엔진 계약
- LLM 판정자 일치도와 LLM 사전 주석
- 사람 레이블 자체의 불확실성을 다루는 오차 막대가 붙은 라벨
- 주석 도구 여섯 개가 기계 레이블에 관해 무엇을 보고하는지 다루는 AI 자동 레이블링 비교
참고 문헌
- Angelopoulos, A. N., Bates, S., Candès, E. J., et al. (2025). Learn then test: Calibrating predictive algorithms to achieve risk control. The Annals of Applied Statistics. https://doi.org/10.1214/24-AOAS1998
- Angelopoulos, A. N., Bates, S., Fannjiang, C., et al. (2023). Prediction-powered inference. Science, 382(6671). https://doi.org/10.1126/science.adi6000
- Angelopoulos, A. N., Duchi, J. C., and Zrnic, T. (2023). PPI++: Efficient prediction-powered inference. arXiv. https://arxiv.org/abs/2311.01453
- Calderon, N., Reichart, R., and Dror, R. (2025). The alternative annotator test for LLM-as-a-judge: How to statistically justify replacing human annotators with LLMs. Proceedings of ACL 2025. https://aclanthology.org/2025.acl-long.782/