Generalization error는 머신러닝 모델이 보지 못한 데이터(테스트 세트나 실제 데이터)에 대한 예측 성능과 데이터를 생성하는 실제 함수 또는 분포 사이의 차이를 의미해. Generalization error를 직접 계산할 수 없는 이유는 다음과 같아:

  1. Unknown true distribution: 우리가 데이터를 생성하는 실제 분포를 알지 못해. 훈련 데이터를 사용해서 이 분포를 어느 정도 근사할 수는 있지만, 보지 못한 데이터에서 모델의 실제 성능은 모델을 테스트하기 전까지는 알 수 없어.
  2. Limited data: 우리는 실제 분포에서 가져온 제한된 양의 샘플 데이터만 가지고 있어. 이 데이터는 실제 세계에서 발생할 수 있는 모든 변동을 다 포착하지 못해. 그래서 테스트 세트는 generalization error의 대략적인 추정치는 제공할 수 있지만, 정확한 값은 아니야.
  3. Overfitting risks: 훈련 세트에 너무 의존하면 모델이 과적합될 수 있어. 이 경우 훈련 데이터에서의 오류는 실제 데이터에서의 오류를 반영하지 못해서, generalization error에 대한 부정확한 추정치가 나올 수 있어.

실제로는 cross-validation이나 테스트 세트 평가 같은 방법으로 generalization error를 추정하지만, 모든 보지 못한 데이터에 대한 정확한 오류를 알 수는 없어.