분류 성능을 평가하기위한 교차 검증 또는 부트 스트랩?


24

특정 데이터 세트에서 분류기의 성능을 평가하고이를 다른 분류기와 비교하는 가장 적합한 샘플링 방법은 무엇입니까? 교차 검증은 표준 관행 인 것처럼 보이지만 .632 부트 스트랩과 같은 방법이 더 나은 선택임을 읽었습니다.

후속 조치 : 성능 지표 선택이 답변에 영향을 미칩니 까 (정확성 대신 AUC를 사용하는 경우)?

나의 궁극적 인 목표는 한 머신 러닝 방법이 특정 데이터 셋에 대해 다른 머신 러닝 방법보다 우수하다는 확신을 가지고 말할 수있는 것입니다.


1
예를 들어 (반복) k- 폴드 교차 검증 대신 부트 스트랩 (교체 포함)을 훈련 데이터 세트에 사용할 수 있습니다. 예측 오차 추정을위한 교차 검증과 부트 스트랩의 차이점 , 검증 및 모델 선택을위한 부트 스트랩 이해를 참조하십시오 .
chl

답변:


42

일반적인 교차 검증 및 부트 아웃 스트랩 방법이 적용되는 일반적인 방식의 한 가지 중요한 차이점은 대부분의 사람들이 교차 검증을 한 번만 적용하는 것입니다 (즉, 각 사례는 정확히 한 번만 테스트 됨). 반복 / 반복. 이러한 상황에서 모델 간 불안정성으로 인해 교차 유효성 검사에 차이가 생길 수 있습니다. 그러나, 예를 들어 반복 / 반복 된 폴드 교차 검증 을 사용함으로써이를 피할 수있다 . 그것이 완료되면, 적어도 내가 작업 한 분광 데이터 세트에 대해 두 리샘플링 체계의 총 오차는 실제로 동일한 것으로 보입니다.k

모델 불안정성 유형 분산을 줄일 가능성이없고, 비관적 편견이 큰 분류기 및 문제가 있기 때문에 일대일 교차 검증은 권장하지 않습니다.

.632 부트 스트랩은 혼합 된 리샘플링 오류가 너무 낙관적으로 바이어스되지 않는 한 합리적인 작업을 수행합니다. (예를 들어 내가 다루는 데이터, 많은 변이를 가진 매우 넓은 행렬의 경우 모델이 심각하게 과적 합되기 쉽기 때문에 잘 작동하지 않습니다). 이것은 또한 다양한 복잡성의 모델을 비교하기 위해 .632 부트 스트랩을 사용하지 않는 것을 의미 합니다. .632+ 부트 스트랩을 사용하면 경험이 없습니다. 과적 합이 발생하고 올바르게 감지되면 원래의 부트 아웃 스트랩 추정치와 동일하므로 데이터에 대한 일반 OBO 또는 반복 / 반복 교차 유효성 검사를 고수합니다.

문학:

  • Kohavi, R : 정확도 평가 및 모델 선택 인공 지능 논문집 제 14 회 국제 공동 회의, 20에 대한 교차 검증 및 부트 스트랩의 연구 - 25 년 8 월 1995, 몬트리올, 퀘벡, 캐나다, 1995, 1137 - 1145
    (고전 )

Dougherty와 Braga-Neto에는 다음 과 같은 주제에 관한 많은 간행물이 있습니다.

측정 항목 선택 :

나의 궁극적 인 목표는 한 머신 러닝 방법이 특정 데이터 셋에 대해 다른 머신 러닝 방법보다 우수하다는 확신을 가지고 말할 수있는 것입니다.

  • 페어링 된 테스트를 사용하여이를 평가하십시오. 비율을 비교하려면 McNemar의 검정을 살펴보십시오.

  • 이에 대한 답은 측정 항목 선택에 영향을받습니다. 회귀 형 오차 척도는 임계 값으로 결정을 내리는 "경화"단계가 없기 때문에 종종 분류 대응보다 분산이 적습니다. 기본적으로 비율이다 정확성과 같은 메트릭이 필요합니다 거대한 또 다른 이상 한 분류의 우수성을 확립하는 테스트 케이스의 수를.

Fleiss : "요율 및 비율에 대한 통계적 방법"은 비율의 이루지 않은 비교를 위한 예 (및 표)를 제공합니다 . "거대한 표본 크기"의 의미에 대한 인상을주기 위해이 다른 질문에 대한 답변 에서 이미지를 살펴보십시오 . McNemar와 같은 짝 지어진 테스트는 더 적은 테스트 사례가 필요하지만 IIRC는 여전히 짝이없는 테스트에 필요한 샘플 크기의 절반 (?)에 가장 좋습니다.

  • 분류기의 성능 (강화)을 특성화하려면 일반적으로 ROC (감도 대 특이성) 등과 같은 두 가지 값 의 작업 곡선이 필요합니다 .
    애플리케이션에 일반적으로 감도가 특이성보다 중요하거나 이러한 측정의 특정 범위를 충족해야한다는 제한이 있기 때문에 전체 정확도 또는 AUC를 거의 사용하지 않습니다. "단일 숫자"합계 특성으로 가려면보고있는 모델의 작업 점이 실제로 적절한 범위에 있는지 확인하십시오.

  • 참조 레이블에 따라 여러 클래스의 성능을 요약하는 정확성 및 기타 성능 측정을 위해서는 응용 프로그램에서 발생할 수있는 클래스의 상대적 빈도를 고려해야합니다. 훈련 또는 시험 데이터.

  • Provost, F. et al. : 기계 학습에 관한 제 15 차 국제 회의 진행시 유도 알고리즘 비교를위한 정확도 추정에 대한 사례


편집 : 여러 분류기 비교

나는이 문제에 대해 잠시 생각했지만 해결책에 아직 도달하지 못했습니다 (해결책을 가진 사람을 만나지 않았습니다).

내가 지금까지 얻은 것입니다 :

현재로서는 "최적화가 모든 악의 근원"이라고 결심하고 대신 매우 다른 접근법을 택했습니다
. 문제에 대한 전문가의 지식으로 가능한 한 많이 결정합니다. 실제로 모델의 범위를 좁힐 수 있으므로 모델 비교를 피할 수 있습니다. 모델을 비교해야 할 때 성능 예측의 불확실성을 사람들에게 상기시켜주고 특히 다중 모델 비교가 여전히 AFAIK라는 미해결 문제라는 것을 사람들에게 상기 시키려고 노력합니다.


편집 2 : 짝 테스트

n12(n2n)테스트 중은 모든 모델이 정확히 동일한 테스트 사례로 테스트됨에 따라 케이스를 "손쉬운"사례와 "어려운"사례로 나눌 수 있으며 모든 모델이 올바른 (또는 잘못된) 예측. 모델을 구별하는 데 도움이되지 않습니다. 반면에, 일부 모델에서는 정확하게 예측할 수 있지만 다른 모델에서는 그렇지 않은 "관심있는"사례가 있습니다. 이 "흥미로운"사례 만 우월성을 판단하기 위해 고려 될 필요가 있으며, "쉬운"사례 나 "어려운"사례가 도움이되지 않습니다. (이것은 내가 McNemar의 테스트 뒤에 아이디어를 이해하는 방법입니다).

nn


자세한 답변 감사합니다! " 한 쌍의 테스트를 사용하여이를 평가하십시오. 비율을 비교하려면 McNemar의 테스트를 살펴보십시오. "내 질문을 약간 바꿔야합니다 . 여러 기계를 비교하고 싶습니다. 한 번에 학습 방법을 배우지 않아도됩니다. 페어링 된 테스트가 어떻게이를 달성 할 수 있는지는 분명하지 않습니다.
kelvin_11

3
(+6) 좋은 반응입니다.
chl

@cbeleites이 의견에 대해 당신을 사랑합니다. 다중 모형 비교의 의의-분산 분석 (ANOVA) 방법은 어떻습니까? Kruskal–Wallis 와 같은 ?
Serendipity

1
@Serendipity : 나는 Kruskal-Wallis에 대해 여기서 당신에게 답을 줄만큼 충분히 모른다. 그러나 분산 분석법과 같은 방법은 여기에서 원하는 것이 아니라고 생각합니다. (1) 데이터의 특성을 사용하지 않고 (2) 귀무 가설이 "모든 모델"이기 때문에 다중 비교에 비해 검정력을 얻습니다. 동일하게 수행 "-거부 된 경우 여전히 어떤 알고리즘이 다르게 수행 되는지 알 수 없습니다 . 따라서 부정적인 결과를 강조하는 데만 사용할 수 있습니다 (선택한 알고리즘은 중요하지 않음). ANOVA가 모든 모델을 설명하지는 않는 넓은 영역이 있다고 의심합니다.
cbeleites는 Monica

... 동일하지만 더 나은 모델을 식별하는 데 필요한 다중 비교가 가능하도록 충분한 정보가 없습니다.
cbeleites 지원 Monica

6

원래 연구에서 불연속적인 부적절한 점수 규칙 (비율이 올바르게 분류 됨)을 사용했기 때문에 부트 스트랩 (.632, .632+) 만 수정해야합니다. 다른 정확도 점수의 경우 일반적인 낙관주의 부트 스트랩이 잘 작동하는 경향이 있습니다. 자세한 정보는 http://biostat.mc.vanderbilt.edu/RmS#Studies_of_Methods_Used_in_the_T를 참조하십시오.

부적절한 점수 규칙은 기능 및 가중치 선택에 대해 오도합니다. 다시 말해서, 잘못 될 수있는 모든 것이 잘못 될 것입니다.


4

에서 '응용 예측 모델링., 쿤. 존슨 . p.78

"리샘플링 방법은 다른 것보다 균일하게 우수하지 않습니다. 몇 가지 요소를 고려하면서 선택해야합니다. 샘플 크기가 작은 경우 몇 가지 이유로 반복 10 배 교차 검증을 사용하는 것이 좋습니다. 바이어스 및 분산 특성이 양호하며, 표본 크기, 계산 비용이 크지 않음 목표가 최상의 성능 지표를 얻는 것과 대조적으로 모델 중에서 선택하는 것이라면 분산이 매우 낮기 때문에 부트 스트랩 절차 중 하나를 사용하는 경우가 강력합니다. 큰 표본 크기의 경우 리샘플링 방법 간의 차이가 덜 두드러지고 계산 효율이 향상됩니다. " 피. 78

또한 두 가지 유사한 결과를 선택하면 일반적으로 해석이 더 잘되는 모델이 선호됩니다. 예를 들어 (동일한 텍스트에서) 10 배 CV를 사용하는 SVM 분류기는 66 %에서 82 % 사이의 리샘플링 결과로 75 %의 정확도 추정치를 가졌습니다. 로지스틱 회귀 분류기에서 동일한 매개 변수를 74.9 %의 정확도와 동일한 재 샘플링 범위로 사용했습니다. 결과를 더 쉽게 해석 할 수 있으므로 더 간단한 로지스틱 회귀 모델이 선호 될 수 있습니다.


4
많은 수의 부트 스트랩 / 교차 유효성 검사 반복 / 반복을 실행하여 줄일 수있는 분산 은 서로 게이트 모델의 불안정성에서 비롯된 분산의 일부일뿐입니다. 각 실행 동안 각 샘플을 정확히 한 번만 테스트하므로 교차 검증을 통해 총 분산에 큰 영향을 미치는지 여부를 측정 할 수 있으므로 유한 샘플 크기로 인한 분산은 전체 교차 검증 실행의 평균을 비교할 때 나타나지 않습니다. . "하드"분류의 경우 이항 분포에서 유한 표본 크기로 인한 분산을 계산할 수 있습니다.
cbeleites는

@cbeleites : "각 실행 동안 각 샘플을 정확히 한 번 테스트하므로 유한 샘플 크기로 인한 편차는 전체 교차 검증 실행의 평균을 비교할 때 나타나지 않습니다." (참조도 괜찮습니다!) (+1 분명히)
usεr11852는 Reinstate Monic

@ usεr11852 : 각 사례는 교차 검증 실행마다 정확히 한 번 테스트됩니다. n_sample xr CV 실행 결과 표를 상상해보십시오. 우리가있는 경우 안정적인 예측을, 같은 경우에 대한 모든 연구 예측은 동일합니다. 즉, 행을 따라 분산이 없습니다. 그러나 (예를 들어 100 % 정확도를 갖지 않는 한) 다른 경우에는 다른 예측을 얻을 수 있습니다 : 우리는 열에 따라 차이가 있습니다. 이제 반복 / 반복 교차 검증의 표준 평가는 열 평균을 비교하는 것입니다. 안정적인 모델의 경우,이 우리가 비록 정확히 동일 사건 사이, 즉 열을 따라 분산을 보유하고 있습니다.
cbeleites는 Monica

(모델 / 예측이 불안정한 경우, 서로 다른 대리 모델에 따라 다른 예측을 얻을 수 있으며 행을 따라 분산도 볼 수 있습니다. k- 폴드 CV의 각 열이 k 개의 서로 다른 대리 모델을 포함하므로 열을 따라 약간의 추가 분산이 발생합니다. ) 따라서 모델 / 예측 (in) 안정성을 측정하기 위해 행을 따라 분산, 즉 동일한 경우에 대한 서로 다른 대리 모델 예측의 분산에 대해 직접 이동하는 것이 더 직접적 일 수 있습니다 .
cbeleites는 Monica

1
@cbeleites : 설명을 해주셔서 감사합니다. 나는 지금 당신이 더 많이 만들고있는 점에 감사 할 수 있습니다.
usεr11852는 Reinstate Monic
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.