테스트 오류의 CV 추정치가 실제 테스트 오류를 ​​과소 평가하는 이유는 무엇입니까?


10

테스트 오류의 k- 폴드 교차 검증 추정치가 일반적으로 실제 테스트 오류를 ​​과소 평가한다는 것을 이해합니다. 이것이 왜 그런지 혼란 스럽습니다. 학습 오류가 일반적으로 테스트 오류보다 낮은 이유를 알 수 있습니다. 오류를 추정하는 것과 동일한 데이터로 모델을 학습하기 때문입니다! 그러나 교차 검증의 경우에는 해당되지 않습니다. 오류를 측정하는 부분은 훈련 과정에서 제외됩니다.

또한 테스트 오류의 교차 검증 추정치가 하향 편향되어 있다고 말하는 것이 맞습니까?


1
이 내용이 어디에 표시되어 있습니까? 당신은 몇 가지 참조를 줄 수 있습니까?
horaceT

1
(+1) 나는 같은 진술을 보았고 그것이 옳다고 생각하지만 그 논리도 이해하지 못한다
KevinKim

답변:


9

예를 들어, 원래 여러 모델이있는 경우 (각각 특정 CV 오류 및 오류 분산이있는 경우) 모델의 CV 오류 만보고하면 문제가되며이 오류를 사용 하여 애플리케이션에 가장 적합한 모델 을 선택 하십시오. 이것은 각 모델마다 여전히 운이 좋거나 운이 좋지 않을 가능성이 높으며 (더 나은 / 나쁜 결과를 얻음) 모델을 선택함으로써 더 운이 좋은 모델을 선택했을 가능성이 있기 때문에 문제가됩니다. 따라서 최종 오류 추정치로이 오류를보고하는 것은 지나치게 낙관적 인 경향이 있습니다.

자세한 내용을 자세히 알아 보려면 이 답변이이 문제에 대한 읽기 쉬운 문서로 연결됩니다. 교차 유효성 검사 오용 (최고 하이퍼 파라미터 값에 대한 성능보고)

@cbeleites가 지적한 것처럼 : 이것은 얻은 k- 폴드 CV 오차를 사용하여 a) 예를 들어 a) 예를 들어 훈련 과정의 일부인 다른 하이퍼 파라미터를 사용하여 여러 모델 중에서 가장 좋은 모델을 선택하고 b) 별도의 보류 테스트 세트를 사용하는 대신 테스트 오류 와 동일한 오류 를 보고 합니다 . 대신 모델을 선택하기 위해 순수 CV 오류 자체를 요청하려는 경우 @cbeleites의 답변 이 검색 가능성이 높습니다.


다시 말하지만, 여기서 문제는 교차 검증, 홀드 아웃 등을 통해이 오류가 계산되었는지 여부에 관계없이 일반화 오류에 대한 교육 오류 (이러한 교육 :이 최종 모델을 얻는 과정에서 사용됨) 의 교육 오류를 보고합니다 . 다른 에러 추정 방법.
SX에 불만족 cbeleites 8:26에

1
@cbeleites 다시 말하지만, 사실-CV 결과는 어떻게 든 모델 선택에 사용된다고 가정합니다 (일부는 CV를 사용하는 이유입니다). 그에 따라 답변을 업데이트했습니다.
geekoverdose

9

케이

제대로 수행 한다는 것은 교차 검증 내에서 테스트 및 교육 세트로 분할하면 실제로 모델과 독립적 인 테스트 사례로 이어진다는 의미입니다.

그러나이 독립성을 손상시키는 여러 가지 함정이 있습니다. 테스트 데이터가 얼마나 심각하게 손상되고 모델이 과적 합되는지에 따라, 이러한 독립성 부족은 교차 검증 오류가 실제로 학습 오류가된다는 것을 의미합니다. 즉, 전체적으로 심각한 낙관적 편향으로 이어질 수 있습니다 (실제 일반화 오류를 과소 평가).
IMHO 이러한 함정의 대부분은 교차 유효성 검사에 고유하지 않지만 기차 및 테스트 세트로 잘못 분할하는 것이 더 좋습니다 . 유지 또는 독립과 같은 다른 유효성 검사 체계와 동일하게 발생할 수 있습니다. 실제로는 생각만큼 독립적이지 않은 테스트 세트.

다음은 내가 볼 때 가장 일반적인 실수의 예입니다.

  • @geekoverdose의 답변 은 테스트 오류로 내부 훈련 (!) 오류 추정치를 솔직하게 사용하는 예를 보여줍니다 .
    보다 일반적으로, 데이터 중심 모델 최적화에 사용되는 모든 종류의 오차 추정치는 이 오차 추정을 사용하여 진행되는 훈련이 여전히 있기 때문에 훈련 오차 입니다.
  • 분열을 고려하지 않은 혼란스러운 변수.
    데이터 매트릭스의 한 행이 반드시 독립적 인 경우를 구성하지는 않습니다. 예 :
    • "독립적"과 동일한 사례 / 대상 / 환자에 대한 반복 측정 처리
    • 일반적으로 데이터에서 강력한 클러스터링을 간과하고 무시
    • 데이터 생성 과정에서의 진행되는 표류를 알지 못함 (미래의 사례와 미지의 사례)


0

먼저 이해하는대로 질문에 사용 된 용어를 명확하게 설명하겠습니다. 우리는 일반적으로 하나의 학습 데이터 세트로 시작하고 k- 폴드 교차 검증을 사용하여 다른 모델 (또는 하이퍼 파라미터 세트)을 테스트하고 CV 오류가 가장 낮은 최상의 모델을 선택합니다. 따라서 '테스트 오류의 교차 검증 추정'은 랜덤 모델의 CV 오류 (cbeleites에 의해 논의 된 경우가 아니라 일반적으로하는 것이 아님)가 아닌 가장 낮은 CV 오류를 테스트 오류로 사용하는 것을 의미합니다. 문제의 '실제 테스트 오류'는 무한한 테스트 데이터 세트에 최상의 CV 모델을 적용 할 때 얻을 수있는 오류입니다. CV 오류는 우리가 보유한 특정 데이터 세트에 따라 달라지며 실제 테스트 오류는 선택한 최고의 CV 모델에 따라 달라지며, 이는 훈련 데이터 세트에 따라 다릅니다. 따라서 CV 오류와 테스트 오류의 차이는 다른 학습 데이터 세트에 따라 다릅니다. 그렇다면 우리가 다른 훈련 데이터 세트로 위의 과정을 여러 번 반복하고 두 오류를 각각 평균화하면 질문은 왜 평균 CV 오류가 평균 테스트 오류보다 낮습니까? 즉, CV 오류가 아래로 바이어스됩니까? 그러나 그 전에는 항상 이런 일이 발생합니까?

일반적으로 무한한 행을 포함하는 많은 훈련 데이터 세트와 테스트 데이터 세트를 얻는 것은 불가능합니다. 그러나 시뮬레이션으로 생성 된 데이터를 사용하여 그렇게 할 수 있습니다. Trevor Hastie 등의 "Statistical Learning의 요소"책의 "제 7 장 모델 평가 및 선택"에서 여기에는 그러한 시뮬레이션 실험이 포함됩니다.

결론은 CV 또는 부트 스트랩을 사용하여 "... 특정 훈련 세트에 대한 테스트 오류 추정은 일반적으로 동일한 훈련 세트의 데이터 만 고려하면 쉽지 않다"는 것입니다. '쉽지 않다'는 말은 CV 오류가 다른 학습 데이터 세트에 따라 실제 테스트 오류를 ​​과소 평가하거나 과대 평가할 수 있음을 의미합니다. 즉, 다른 학습 데이터 세트로 인한 편차가 상당히 큽니다. 편견은 어떻습니까? 테스트 한 kNN 및 선형 모델은 거의 편향되지 않았습니다. CV 오류는 실제 테스트 오류를 ​​0-4 %로 과대 평가하지만 "트리, 교차 유효성 검사 및 부트 스트랩과 같은 일부 모델은 실제 오류를 10 % 정도 과소 평가할 수 있습니다. 최상의 트리 검색은 유효성 검사 세트의 영향을 많이받습니다 ".

요약하면, 특정 학습 데이터 세트의 경우 CV 오류는 실제 테스트 오류보다 높거나 낮을 수 있습니다. 바이어스의 경우, 평균 CV 오류는 모델링 방법에 따라 평균 실제 테스트 오류보다 약간 높을 수 있습니다.

과소 평가의 이유는 위에서 언급 한 것처럼 최상의 모델을위한 하이퍼 파라미터의 선택은 궁극적으로 우리가 얻는 특정 훈련 데이터 세트에 의존하기 때문입니다. 조금만 자세히 살펴보면,이 특정 교육 데이터 세트에서 최고의 하이퍼 파라미터가 M1이되게하십시오. 그러나 M1은 다른 교육 데이터 세트에서 최고의 하이퍼 파라미터가 될 수 없습니다. 즉, 최소 CV 오류는 M1의 CV 오류보다 작습니다. 따라서 훈련 과정에서 얻은 예상 CV 오류는 M1의 예상 CV 오류보다 훨씬 적습니다. 특정 교육 데이터 세트의 최소 CV 오류가 바이어스되지 않는 유일한 시간은 최상의 모델이 항상 교육 데이터 세트와 무관 한 경우입니다. 다른 한편으로, CV 오류는 또한 cbeleites가 논의한 것처럼 실제 테스트 오류를 ​​약간 과대 평가할 수 있습니다. 이는 kfold CV 오차가 훈련 데이터를 조금 덜 사용하여 모델을 훈련함으로써 얻어지기 때문에 (10 배 cv의 경우 90 % 데이터 사용) 실제 오차에 대해 상향 편향되지만 그다지 크지 않습니다. 서로 다른 방향으로 나아가는 두 가지 편견이 있습니다. 모델링 방법의 경우 5 배 대 10 배와 같이 덜 폴드 CV를 사용하여 과적 합하는 경향이있어 편향이 줄어 듭니다.

실제로, 그것은 실제로 많은 도움이되지 않습니다 : 우리는 일반적으로 하나의 '특별한'데이터 세트 만 얻습니다. 테스트 데이터로 15 % ~ 30 %를 유지하고 나머지를 교육 데이터로 이력서에 의해 최상의 모델을 선택하면 CV 오류가 예상 테스트 오류와 다르기 때문에 테스트 오류와 다를 수 있습니다. CV 오류가 테스트 오류보다 훨씬 낮은 경우 의심 스러울 수 있지만 실제 테스트 오류에 가까운 오류는 알 수 없습니다. 가장 좋은 방법은 두 측정 항목을 모두 제시하는 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.