본문 바로가기
public void static main/AI

[Discussion] 테스트 데이터의 모델 성능 토론

by 햄리뮤 2025. 1. 24.
반응형

오늘도 공부를 위해서 토론에 올라온 주제로 공부해본다...!

https://easysell.in/?j=86952105850

Suppose you've run a bunch of models on validation data and you've picked the one that does best.  Then you use test data to estimate how good that model is.
...a. Why is it likely that the goodness estimate from the test data isn't as good as the validation data suggests?
...b. What if you run all of the models on the test data, and a different one looks best; should you switch your decision about which model to use?

1. 왜 테스트 데이터에서의 모델 성능 추정치가 검증 데이터에서의 추정치만큼 좋지 않을 가능성이 높을까?

테스트 데이터에서의 성능 추정치가 검증 데이터의 성능 추정치보다 낮아지는 주요 이유는 모델 과적합(Overfitting)과 데이터 편향(Data Bias) 때문이다.

Overfitting to the validation data

  1. 검증 데이터에 대한 과적합(Overfitting to the validation data)
    • 모델을 여러 번 훈련하고 검증 데이터에서 최적의 성능을 내는 모델을 선택하면, 검증 데이터에 특정하게 맞춰진(overfitted)결과일 가능성이 있다. 이로 인해 새로운 데이터인 테스트 데이터에서는 검증 데이터만큼 좋은 결과를 보이지 않을 수 있다.
  2. 데이터 분포의 차이(Difference in data distribution)
    1. 검증 데이터와 테스트 데이터가 동일한 분포에서 샘플링되었다고 가정하지만, 실제로는 미세한 차이가 있을 수 있다. 이런 미묘한 차이가 모델의 성능에 영향을 줄 수 있다.

Difference in data distribution

2. 모든 모델을 테스트 데이터에서 실행했을 때 다른 모델이 가장 성능이 좋아 보인다면, 모델 선택을 바꾸는 것이 타당할까?

테스트 데이터를 사용하여 다른 모델이 더 좋아 보이더라도, 그 모델로 전황하는 것은 데이터 누수(Data Leakage)와 편향된 성능 평가(Biased Evaluation) 문제를 초래할 수 있다.

https://www.v7labs.com/blog/train-validation-test-set

  1. 테스트 데이터 목적
    • 테스트 데이터는 최종 성능을 평가하기 위해 사용된다. 모델 선택에 테스트 데이터를 활용하면 테스트 데이터도 최적화 과정에 포함되므로 더, 이상 모델 성능의 공정한 추정치(fair estimate)를 제공할 수 없다.
  2. 모델 전환 시 문제점
    • 만약 테스트 데이터에서 성능이 더 좋은 모델로 전환하면, 사실상 테스트 데이터를 "검증 데이터처럼 사용"한 것이 된다. 이는 테스트 데이터에 대한 과적합(overfitting)을 초래하고, 새로운 데이터에 대한 모델의 일반화 성능을 보장하지 못한다.

권장 접근 방식

  1. 재검증 데이터(Split Validation Data)
    • 기존 검증 데이터를 다시 나누어 교차 검증(cross-validation)을 수행하거나, 별도의 추가 검증 데이터를 사용할 것을 권장한다.
  2. 새로운 테스트 데이터 확보(Obtain new test data)
    • 테스트 데이터를 다시 평가하거나, 동일한 분포에서 추가 데이터를 샘플링하여 검증 및 테스트를 반복해야 한다.

결론

테스트 데이터는 최종 성능 평가를 위한 것이고, 이를 최적화 과정에 활용하면 데이터 누수 문제가 발생한다.

따라서 검증 데이터와 테스트 데이터의 역할을 명확히 구분하고, 모델 성능은 교차 검증 등 추가적인 검증 데이터에서 확인해야 한다.

 

 

** 그냥 하루하루 개인 공부한 것을 끄적 거리는 공간입니다.

이곳 저곳에서 구글링한 것과 강의 들은 내용이 정리가 되었습니다.

그림들은 그림밑에 출처표시를 해놓았습니다.

문제가 될시 말씀해주시면 해당 부분은 삭제 하도록하겠습니다. **

반응형

댓글