머신러닝 모델 성능 비교, seed 5번 돌린 결과로 t-test 해도 되나요?

소규모 데이터셋에서 KoBERT랑 baseline 2개 비교 중. seed 5개씩 돌려서 F1 mean이랑 std 냈는데 리뷰어가 significance 물어볼 것 같음. 5개로 paired t-test 돌려도 되는지, 다른 검정이 맞는지 궁금해요.

GPT-6.1 Sol의 답변

seed 5개의 paired t-test는 조건부로 가능하지만, 검정력이 낮고 새 데이터에 대한 성능 차이까지 입증하지는 못합니다.

1. t-test를 해도 되나요?

같은 데이터 분할에서 대응되게 수행한 실험이라면 가능합니다. 각 실행에서 KoBERT F1 − baseline F1을 구하고, 이 차이 5개에 paired t-test(대응표본 t검정)를 적용합니다.

다만 다음을 확인해야 합니다.

  • seed 번호가 같다고 자동으로 대응표본은 아닙니다. 데이터 분할·학습 조건 등을 어떻게 맞췄는지 설명해야 합니다.
  • 실행 간 차이가 독립이고, 차이의 분포가 대략 정규분포라는 가정이 필요합니다. 5개로는 정규성을 판단하기 어렵고, 이상치 하나에도 결과가 민감합니다.
  • 검정력이 낮으므로 유의하지 않음은 두 모델이 동등하다는 뜻이 아닙니다.

2. 무엇의 불확실성을 검정하나요?

고정된 train/test에서 seed만 바꿨다면, 주로 그 데이터에 조건부인 학습 무작위성을 평가합니다. 작은 테스트셋의 표본 불확실성이나 새 데이터에서의 차이는 충분히 반영하지 못합니다.

후자가 관심이라면 테스트 예측을 이용한 paired bootstrap도 고려할 수 있습니다. 동일한 테스트 항목을 두 모델에서 함께 재표집하고 매번 F1 차이를 계산하는 방법입니다. 문서·환자 단위로 관측치가 묶여 있다면 그 단위로 재표집해야 합니다. 다만 고정된 예측에 대한 bootstrap만으로 학습 변동성까지 반영되지는 않습니다.

3. 실무적으로는

  • 가능하면 독립 seed 실행을 늘리고, 평균 차이·95% 신뢰구간·실행별 결과를 함께 제시하세요.
  • KoBERT와 baseline 두 개를 각각 검정한다면 Holm 보정 등 다중비교 보정을 고려하세요.
  • Wilcoxon 검정도 5개에서는 만능이 아닙니다. 동점·0 차이가 없는 5쌍의 정확 양측 검정은 최소 p값이 0.0625입니다.

현재 결과로 검정은 가능하되, “고정된 데이터 분할에서 5회 실행한 탐색적 비교”라는 한계를 명시하는 것이 안전합니다.

Gemini 3.8 Flash의 답변

표본 수(N=5)가 너무 적어 t-검정의 기본 가정(정규성)을 만족하기 어려우므로 권장되지 않으며, 비모수 검정이나 부트스트랩을 활용하는 것이 바람직합니다.

1. 5개 시드로 paired t-test를 권장하지 않는 이유

수학적으로는 5개의 쌍(pair)으로도 t-test(t-검정: 두 집단의 평균 차이가 유의미한지 확인하는 모수 검정) 계산식을 돌릴 수 있습니다. 하지만 학술적으로는 두 가지 큰 문제가 있습니다.

  1. 정규성 가정 위배: t-test는 두 모델의 성능 차이가 정규분포를 따른다는 가정을 전제로 합니다. 표본 크기가 5개에 불과하면 Shapiro-Wilk 등의 정규성 검정 자체가 무의미하며, 중심극한정리도 적용되지 않습니다.
  2. 독립성 및 분산 과소추정: 동일한 데이터셋에서 랜덤 시드(가중치 초기화 및 데이터 셔플링)만 바꾼 경우, 결과 간에 강한 의존성이 생깁니다. 이는 분산을 실제보다 작게 추정하여 제1종 오류(실제로는 차이가 없는데 유의미하다고 판단)를 유발하기 쉽습니다.

2. 리뷰어를 설득하기 위한 대안 검정법

데이터가 소규모이고 추가 실험이 부담스러운 상황이라면 다음 대안을 권장합니다.

  1. 부트스트랩 검정(Bootstrap Test):
    • 예측 결과(테스트셋 샘플별 정답/오답)를 복원 추출하여 성능 차이의 신뢰구간(95% CI)을 구하는 방식입니다.
    • NLP 모델 비교에서 널리 쓰이며, 정규성 가정을 요구하지 않아 소규모 평가셋에서도 유용합니다.
  2. Wilcoxon signed-rank test (윌콕슨 부호 순위 검정):
    • t-test의 대표적인 비모수(Non-parametric) 대안입니다.
    • 주의점: $N=5$일 경우, 한 모델이 5번 모두 이기더라도 p-값의 최솟값이 약 0.0625($2^{-4}$)가 되어 통상적인 유의수준 0.05를 넘지 못합니다. 이 검정을 쓰려면 시드를 최소 6~10개로 늘려야 합니다.
  3. Repeated k-fold CV 기반 Corrected Resampled t-test:
    • 단순히 고정된 분할에서 시드만 바꾸기보다, $5 imes 2$ 교차 검증(Cross-Validation)을 수행한 뒤 Nadeau와 Bengio가 제안한 보정된 t-test를 적용하는 것이 머신러닝 분야의 교과서적인 방법입니다.

3. 현실적인 논문 작성 팁

시간적 제약으로 추가 실험(시드 추가 등)이 어렵다면 다음과 같이 대응하는 것이 현실적입니다.

  • 관행적 표기 + 한계 명시: NLP 학회(ACL 계열 등)에서는 $N=5$ 수준의 paired t-test를 관행적으로 기재하기도 합니다. 다만 리뷰어의 지적을 방어하기 위해 "표본 크기가 작아 통계적 검정력(Power)에 한계가 있음"을 각주나 논의(Discussion) 섹션에 솔직히 밝히는 것이 안전합니다.
  • 분포 시각화 추가: F1의 평균과 표준편차 외에 5회 시드의 개별 결과를 Box plot이나 Strip plot으로 보여주어, KoBERT가 baseline보다 일관되게 높은 성능을 낸다는 정성적 근거를 함께 제시하십시오.

Claude Sonnet 5.5의 답변

seed 5개 paired t-test는 가능하지만 검정력과 가정이 약하니, seed를 늘리고 테스트셋 변동까지 반영한 부트스트랩이나 반복 교차검증을 함께 쓰세요.

가능하긴 하지만 해석이 제한됩니다

1. 무엇에 대한 검정인가 seed만 바꾼 t-test는 "학습의 무작위성(초기화, 데이터 순서)" 변동만 반영합니다. 소규모 데이터에서는 테스트셋 표본 자체의 변동이 훨씬 큰 경우가 많아, 이 검정은 유의성을 과대평가하기 쉽습니다.

2. paired가 맞는 조건 같은 seed가 같은 데이터 분할이나 순서를 의미할 때만 짝(pair)이 성립합니다. 단순히 seed 번호만 같다면 짝짓기에 근거가 없으므로 Welch t-test가 더 안전합니다.

3. n=5의 한계

  • 정규성을 검증할 수 없습니다.
  • Wilcoxon signed-rank test는 n=5일 때 양측 p-value 최솟값이 0.0625라서 0.05 아래로 내려갈 수 없습니다.
  • 검정력이 낮아, 실제 차이가 있어도 못 잡을 수 있습니다.

권장 방법

  • seed 늘리기: 10~30개 정도면 훨씬 안정적입니다. 비용이 가능하면 가장 간단한 개선입니다.
  • Paired bootstrap 또는 permutation test: 테스트 예제를 재표집해 F1 차이의 신뢰구간을 구합니다. 테스트셋 변동을 반영하고 분포 가정이 약합니다. NLP에서 널리 쓰입니다(Dror et al., 2018, ACL).
  • 반복 k-fold 교차검증 + corrected resampled t-test (Nadeau & Bengio, 2003): 소규모 데이터에 적합합니다. 폴드 간 학습셋이 겹쳐 생기는 독립성 위반을 보정합니다.
  • McNemar test: 같은 테스트셋에서 두 모델의 예측 불일치를 비교합니다. 다만 F1이 아니라 정오답 기준이고, seed마다 따로 수행해야 합니다.

보고 방식

p-value만 쓰기보다 평균 차이, 95% 신뢰구간, 효과 크기를 함께 제시하세요. 여러 검정이나 데이터셋을 쓴다면 다중비교 보정(Holm 등)도 필요합니다.

리뷰어 대응용으로는 "seed 10개 이상 + paired bootstrap 신뢰구간"이 가장 방어하기 쉬운 조합입니다. 다만 분야나 학회마다 관행이 달라서, 투고처의 기존 논문을 확인해 보시길 권합니다.

비슷한 질문