내 레이블로 학습한 모델로 하는 모델 지원 레이블링
내 어노테이션으로 학습한 모델의 사전 레이블이 시간을 아끼는 때, 사전 레이블이 어노테이터를 고착시키는 방식, 홀드아웃 그룹으로 그 효과를 측정하는 방법을 설명합니다.
모델 지원 레이블링은 어노테이터가 이미 단 레이블로 모델을 학습시키고, 새 항목에 대한 모델의 예측을 확인하거나 고칠 사전 레이블로 보여 주어 어노테이션을 빠르게 합니다. 사전 레이블은 어노테이터를 모델의 답 쪽으로 끌어당기기도 하므로, 사전 레이블을 쓰는 연구는 어노테이터 일부를 홀드아웃하고 답이 얼마나 움직이는지 측정해야 합니다.
v2.14.0의 새 기능
사전 레이블은 사람이 항목에 레이블을 달기 전에 모델이 그 항목에 제안한 레이블 하나입니다. 모델 지원 레이블링은 사전 레이블링이라고도 하며, 어노테이터가 그 사전 레이블을 수락하고, 고치고, 거부하며, 수락되거나 수정된 레이블이 데이터셋이 되는 휴먼 인 더 루프 워크플로입니다. 이 가이드는 모델을 프로젝트 자체의 어노테이션으로 학습시키고 어노테이션이 더 들어올 때마다 재학습하는 경우를 다룹니다. 프롬프트를 준 범용 모델의 사전 레이블은 LLM 및 비전 사전 어노테이션 가이드가, 다음에 레이블을 달 항목을 고르는 방법은 능동 학습 가이드가 다룹니다.
내 레이블로 학습한 모델과 LLM 사전 어노테이션의 차이
LLM이나 사전 학습된 비전 모델은 프롬프트와 몇 개의 예시만 있으면 첫 항목부터 사전 레이블을 달 수 있습니다. 내 레이블로 학습한 모델은 아무것도 없이 시작하며, 먼저 레이블이 달린 항목의 시드 세트가 필요합니다. Potato의 sklearn-text 트레이너는 학습 분할에 항목이 10개 미만이면 학습을 거부하고, Hugging Face 텍스트, 토큰, 이미지 분류기는 20개 미만이면 거부합니다. 그 대가로 학습된 모델은 어노테이터가 내 항목에서 실제로 긋는 레이블 경계를 배웁니다. 각 실행은 학습에서 제외한 항목으로 점수가 매겨지며, 그 점수는 어떤 어노테이터가 사전 레이블을 보기 전에 Training 페이지에 나옵니다. 작은 분류기는 항목당 비용 없이 내 컴퓨터에서 실행되기도 합니다.
시드 세트가 커지는 동안은 LLM의 제안이 연구 초반을 맡고, 학습된 모델의 홀드아웃 점수가 같은 레이블에 대한 LLM의 일치도를 넘으면 학습된 모델이 이어받을 수 있습니다. 능동 학습은 항목의 순서를 정하고 사전 레이블링은 각 항목에서 하는 일을 바꾸므로, 능동 학습은 둘 모두와 결합됩니다.
사전 레이블이 시간을 아끼는 때
사전 레이블링은 레이블을 읽고 확인하는 것이 레이블을 만드는 것보다 빠를 때 시간을 아낍니다. 어노테이터 두 명이 참여한 품사 태깅 실험에서 Fort and Sagot (2010)은 한 어노테이터가 사전 어노테이션 없이는 문장 10개에 약 7.5분, 태거의 출력을 고칠 때는 약 2.5분이 걸린다고 측정했습니다. 문장 50개로만 학습한 태거는 정확도 81.6%에 이르렀고, 그 태거의 사전 어노테이션이 아낀 시간은 문장 37,990개로 학습해 정확도 96.4%인 태거가 아낀 시간과 유의하게 다르지 않았습니다. 문장 10개로 학습한 태거만 다른 태거보다 어노테이션을 유의하게 느리게 했으며, 그 태거의 정확도는 66.5%였습니다. Lingren et al. (2014)는 임상 개체명 어노테이션에서 개체당 13.85%에서 21.5%의 시간 절감을 발견했고 일치도나 어노테이터 성능에는 유의한 변화가 없었습니다. Mikulová et al. (2022)는 정확한 파서의 사전 어노테이션이 의존 어노테이션을 더 빠르고 일관되게 만든다고 발견했습니다.
프로젝트 자체의 레이블로 학습한 모델에 대해서는, Fort and Sagot의 결과가 처음 몇십 개의 레이블 항목으로 학습한 모델도 이미 시간을 아낄 수 있음을 시사합니다. 아직 우연 수준에 가까운 모델은 시간을 더 쓰게 하므로, 첫 사전 레이블은 홀드아웃 점수가 우연 수준을 한참 넘을 때까지 기다려야 합니다.
사전 레이블이 해가 되는 때
사전 레이블은 속도뿐 아니라 답도 바꿉니다. *앵커링*은 제시된 답이 이후의 판단을 끌어당기는 현상이고, 무심코 승인은 제안을 읽지 않고 받아들이는 것으로 자동화 편향의 한 형태입니다. Fort and Sagot의 실험에서 더 정확한 어노테이터의 정확도는 81.6% 태거의 사전 어노테이션과 함께일 때 98.1%에서 95.8%로 떨어졌고, 가장 좋은 태거와 함께일 때는 같은 어노테이터가 태거 자신의 오류와 일치하는 체계적 오류(과거분사 대신 형용사)를 냈습니다. 주관적 과제에 대한 LLM 제안의 사전 등록 연구에서 Schroeder et al. (2025)는 어노테이터가 더 빨라지지 않았고, 레이블 분포를 바꿀 만큼 자주 제안을 받아들였다고 발견했습니다. 지원받은 레이블을 평가 기준으로 썼을 때 LLM의 측정된 정확도도 올랐습니다.
수락된 사전 레이블로 재학습하면 피드백 루프가 더해집니다. 어노테이터가 바꾸지 않고 저장한 사전 레이블은 그 어노테이터의 답이 되고, 다음 학습 실행은 그 답을 다른 레이블과 똑같이 학습합니다. 따라서 어노테이터가 받아들인 오류는 학습 데이터로 돌아오고, 다음 모델은 새 항목에서 그 오류를 되풀이할 수 있습니다. 같은 사전 레이블을 받아들인 어노테이터들은 구조상 일치하므로 일치도 지표로는 이 루프를 잡을 수 없습니다. 검토와 무심코 승인을 구분하는 방법은 읽지 않고 받아들이는 어노테이터를 위한 시간 신호를 설명하고, LLM 제안이 어노테이터를 고착시키는 정도 측정하기는 읽으면서도 끌려가는 어노테이터를 위한 블라인드 항목을 설명합니다.
설계 선택
네 가지 설정이 사전 레이블이 특정 연구에 도움이 되는지를 정합니다. 최소 신뢰도, 사전 레이블이 붙는 항목, 홀드아웃하는 어노테이터의 비율, 모델이 재학습하는 빈도입니다.
신뢰도 임계값
최소 신뢰도에 못 미치는 예측은 숨겨지며 어노테이터는 그 항목에 처음부터 레이블을 답니다. 최소 신뢰도가 높을수록 사전 레이블은 적게 보이고 그중 맞는 비율은 커집니다. 최소 신뢰도는 모델의 신뢰도가 보정되어 있을 때만 의미가 있습니다. 보정된 모델이 신뢰도 0.8로 낸 예측은 홀드아웃 항목에서 약 80%가 맞습니다. Potato의 sklearn-text는 실행에 학습 항목이 50개 이상이면 기본적으로 분류기의 신뢰도를 보정하며, 1,000개 미만에서는 Platt 스케일링을, 그 이후에는 isotonic 회귀를 씁니다. 최소 신뢰도는 홀드아웃 항목을 보고, 모델이 충분히 자주 맞아서 사전 레이블을 확인하는 것이 항목에 레이블을 다는 것보다 빨라지는 신뢰도로 정하십시오.
사전 레이블이 붙는 항목
Potato는 모델 자신의 학습 항목에는 사전 레이블을 붙이지 않습니다. 모델은 새 데이터에 대해 아무것도 알려 주지 않는 이유로 학습 데이터에 자신감을 보이기 때문입니다. 이 규칙 외에도 어노테이터 간 일치도를 측정하는 데 쓰는 항목과 정답 항목에는 사전 레이블을 붙이지 마십시오. 공유된 사전 레이블이 있는 항목의 일치도는 사전 레이블을 측정하고, 사전 레이블이 화면에 있는 채로 답한 정답 항목은 어노테이터만큼 모델도 측정합니다. 나머지 항목 중에서는 신뢰도가 낮은 것부터 정렬한 검토 대기열이 어노테이터를 모델이 틀릴 만한 곳에 배치합니다. 모든 항목을 신뢰도가 낮은 것부터 내보내는 대기열은 모든 항목에 아직 사람의 레이블이 필요한 연구에 맞습니다.
어노테이터를 홀드아웃해 효과 측정하기
앵커링은 같은 어노테이터가 같은 종류의 항목에서 사전 레이블이 있을 때 준 답과 없을 때 준 답을 비교해 측정합니다. Potato의 ai_support.holdout은 어노테이터-항목 쌍의 무작위 일부에서 모든 형태의 지원을 막으며, 학습 사전 레이블도 막는 형태에 속합니다. Potato는 항목별이 아니라 쌍별로 추첨하므로, 대부분의 항목에는 지원을 받은 어노테이터와 홀드아웃된 어노테이터가 섞입니다. 솔트가 있는 해시는 재시작 뒤에도 각 쌍을 같은 그룹에 둡니다. radio, multiselect, likert, select 스키마에서 관리자 대시보드의 AI influence 탭은 두 그룹을 답이 모델과 일치하는 빈도, 답이 정답과 일치하는 빈도, 각 그룹 안의 일치도로 비교합니다. 이 탭은 모델의 답이 있는 항목에서 각 그룹에 답이 10개씩 생기면 모델 일치도의 차이를 95% 부트스트랩 구간과 함께 보고합니다. 연구 도중에 비율이나 솔트를 바꾸면 그룹이 다시 섞이므로 둘은 어노테이션이 시작되기 전에 설정하십시오. AI 영향 측정하기는 홀드아웃이 막는 모든 지원 화면을 나열합니다.
재학습 빈도
자주 재학습하면 사전 레이블이 최신 가이드라인 결정과 수정을 반영하지만, 재학습할 때마다 어노테이터가 보는 사전 레이블도 바뀝니다. Potato의 auto_retrain은 새 어노테이션이 update_frequency개 들어오고(기본값 25) 마지막 실행이 끝난 뒤 min_interval_s초가 지나면(기본값 600) 실행을 시작합니다. update_frequency가 크면 연산을 아끼고 더 긴 작업 구간 동안 사전 레이블이 안정적으로 유지됩니다. 연구 내내 split_seed를 고정하십시오. 시드를 바꾸면 홀드아웃 항목이 학습으로 옮겨져 한 실행의 홀드아웃 점수를 다음 실행과 비교할 수 없게 되기 때문입니다. Potato는 검토자가 수정한 모든 항목도 이후 모든 실행의 학습 분할에 넣습니다. 그러면 수정은 다음 모델을 가르치며 모델의 점수를 매기는 데는 쓰이지 않습니다.
Potato의 모델 지원 레이블링
Potato의 모델 학습은 관리자 Training 페이지에서 연구 자체의 어노테이션으로 모델을 학습시키고, 홀드아웃 항목으로 모델에 점수를 매기고, 모델의 예측을 사전 레이블로 항목에 되씁니다. 되쓰기는 어노테이션 페이지에 모델의 답을 미리 선택해 둔 채로 보여 줍니다. 사전 레이블은 어노테이터가 사전 레이블을 고치거나 다음으로 넘어갈 때에만 어노테이터의 답이 됩니다. 그때까지 항목은 완료로 계산되지 않습니다. 아래 블록은 sentiment라는 radio 스키마가 있는 설정에 자동 재학습과 20% 홀드아웃이 있는 모델 지원 레이블링을 추가합니다.
model_training:
enabled: true
auto_retrain:
enabled: true
trainer: sklearn-text
schemas: [sentiment]
update_frequency: 50
min_interval_s: 600
writeback:
schemas: [sentiment]
include_unlabeled: true
min_confidence: 0.8
ai_support:
holdout:
fraction: 0.2
salt: reviews-2026writeback.schemas는 예측을 어노테이터에게 보여 줄 스키마를 지정합니다. 이 목록은 기본적으로 비어 있으며, 목록에 스키마를 지정하기 전에는 어노테이터에게 예측이 보이지 않습니다. include_unlabeled: true는 아직 아무도 레이블을 달지 않은 항목도 예측하며, 사전 레이블이 시간을 아끼는 곳이 그 항목들입니다. 이 설정이 없으면 실행은 홀드아웃된 항목만 예측합니다. min_confidence 미만의 예측은 저장되지만 보이지 않습니다. 홀드아웃 블록은 ai_support.enabled가 꺼져 있어도 동작합니다.
assignment_strategy: model_review는 사전 레이블이 있는 항목을 신뢰도가 낮은 것부터 검토용으로 내보내고, assignment_strategy: llm_confidence는 모든 항목을 그 순서로 내보냅니다. 검토자는 각 사전 레이블에 accept, correct, reject 판정을 기록합니다. 거부된 사전 레이블은 항목에서 빠지며 다시 보이지 않습니다. DELETE /admin/training/api/runs/<run_id>/predictions는 실행이 쓴 모든 사전 레이블을 철회합니다. 루프 안의 모델은 되쓰기, 검토 대기열, 획득 순서, auto_retrain을 단계별로 안내하며, 업스트림 되쓰기 레퍼런스는 어노테이터가 예측을 보기 전에 예측이 통과하는 모든 검사를 나열합니다.
더 읽어보기
- 모델 학습 개요, Training 페이지와 학습 루프
- 첫 모델 학습하기,
sklearn-text와 GPU 없이 하는 튜토리얼 - 어노테이션 데이터에서 학습된 모델까지
- LLM 및 비전 사전 어노테이션
- 어노테이션을 위한 능동 학습
- 검토와 무심코 승인을 구분하는 방법
- LLM 제안이 어노테이터를 고착시키는 정도 측정하기
참고문헌
- Fort, K., and Sagot, B. (2010). Influence of Pre-annotation on POS-tagged Corpus Development. Proceedings of the Fourth Linguistic Annotation Workshop, 56-63. https://aclanthology.org/W10-1807/
- Lingren, T., Deleger, L., Molnar, K., Zhai, H., Meinzen-Derr, J., Kaiser, M., Stoutenborough, L., Li, Q., and Solti, I. (2014). Evaluating the impact of pre-annotation on annotation speed and potential bias: natural language processing gold standard development for clinical named entity recognition in clinical trial announcements. Journal of the American Medical Informatics Association, 21(3), 406-413. https://doi.org/10.1136/amiajnl-2013-001837
- Mikulová, M., Straka, M., Štěpánek, J., Štěpánková, B., and Hajič, J. (2022). Quality and Efficiency of Manual Annotation: Pre-annotation Bias. Proceedings of the Thirteenth Language Resources and Evaluation Conference, 2909-2918. https://aclanthology.org/2022.lrec-1.312/
- Schroeder, H., Roy, D., and Kabbara, J. (2025). Just Put a Human in the Loop? Investigating LLM-Assisted Annotation for Subjective Tasks. Findings of the Association for Computational Linguistics: ACL 2025, 25771-25795. https://doi.org/10.18653/v1/2025.findings-acl.1323