머신러닝 알고리즘 비교를 위한 통계적 유의성 테스트

머신러닝 방법을 비교하고 최종 모델을 선택하는 것은 적용된 머신러닝의 일반적인 작업입니다.

모델은 일반적으로 평균 기술 점수를 직접 계산하고 비교하는 k-fold 교차 검증과 같은 리샘플링 방법을 사용하여 평가됩니다. 이 접근 방식은 간단하지만 평균 기술 점수 간의 차이가 실제인지 통계적 우연의 결과인지 알기 어렵기 때문에 오해의 소지가 있습니다.

통계적 유의성 검정은 이 문제를 해결하고 동일한 분포에서 추출되었다는 가정을 고려하여 기술 점수 표본이 관찰될 가능성을 정량화 하도록 설계되었습니다. 이 가정 또는 귀무 가설이 기각되면 기술 점수의 차이가 통계적으로 유의하다는 것을 나타냅니다.

완벽하지는 않지만 통계적 가설 테스트는 해석에 대한 확신과 모델 선택 중 결과 표현 모두를 향상시킬 수 있습니다.

이 자습서에서는 머신러닝 모델을 비교하기 위한 통계적 가설 검정을 선택하는 것의 중요성과 과제를 알아봅니다.

이 자습서를 완료하면 다음을 알 수 있습니다.

  • 통계적 가설 테스트는 머신러닝 모델을 비교하고 최종 모델을 선택하는 데 도움이 될 수 있습니다.
  • 통계적 가설 테스트의 순진한 적용은 오해의 소지가 있는 결과로 이어질 수 있습니다.
  • 통계 검정의 올바른 사용은 어려운 일이며, 수정된 쌍체 학생 t-검정을 사용한 McNemar의 검정 또는 5×2 교차 검증을 사용하는 것에 대한 합의가 있습니다.

튜토리얼 개요

이 튜토리얼은 다음과 같이 다섯 부분으로 나뉩니다.

  1. 모델 선택의 문제
  2. 통계적 가설 검정
  3. 가설 검정 선택의 문제
  4. 일부 결과 요약
  5. 권장 사항

모델 선택의 문제

응용 머신러닝의 큰 부분은 모델 선택입니다.

우리는 이것을 가장 간단한 형태로 설명 할 수 있습니다.

데이터 세트에 대한 두 가지 머신러닝 방법의 평가가 주어지면 어떤 모델을 선택하시겠습니까?

최고의 기술을 가진 모델을 선택합니다.

즉, 보이지 않는 데이터에 대한 예측을 할 때 추정 된 기술이 가장 좋은 모델입니다. 이는 각각 분류 및 회귀 문제의 경우 최대 정확도 또는 최소 오차일 수 있습니다.

최고의 기술을 가진 모델을 선택할 때의 과제는 각 모델의 예상 기술을 얼마나 신뢰할 수 있는지 결정하는 것입니다. 보다 일반적으로 :

두 머신러닝 모델 간의 기술 차이가 실제입니까, 아니면 통계적 기회 때문입니까?

이 질문을 해결하기 위해 통계적 가설 테스트를 사용할 수 있습니다.


통계적 가설 검정

일반적으로 표본 비교를 위한 통계적 가설 검정은 표본의 분포가 동일하다는 가정하에 두 데이터 표본을 관찰할 가능성을 정량화합니다.

통계적 검정의 가정을 귀무 가설이라고 하며 귀무 가설을 수락할지 기각할지 결정하기 위해 통계적 측정값을 계산하고 해석할 수 있습니다.

추정된 기술을 기반으로 모델을 선택하는 경우 두 모델 간에 실제 또는 통계적으로 유의한 차이가 있는지 알고 싶습니다.

  • 검정 결과가 귀무 가설을 기각할 증거가 충분하지 않다는 것을 시사하는 경우, 관측된 모형 기술 차이는 통계적 우연으로 인한 것일 수 있습니다.
  • 검정 결과가 귀무 가설을 기각할 충분한 증거가 있음을 시사하는 경우 관측된 모형 기술 차이는 모형의 차이로 인한 것일 수 있습니다.

테스트 결과는 확률론적이므로 결과를 올바르게 해석하고 유형 I 또는 유형 II 오류로 결과가 잘못 될 수 있습니다. 간단히 말해서, 거짓 긍정 또는 거짓 부정 결과.

통계적 유의성 테스트를 통해 머신러닝 모델을 비교하면 사용할 수 있는 통계 테스트 유형에 영향을 미칠 것이라는 몇 가지 기대가 있습니다. 예를 들어:

  • 기술 추정. 모델 기술의 구체적인 척도를 선택해야합니다. 이는 분류 정확도(비율) 또는 평균 절대 오차(요약 통계)일 수 있으며, 이는 사용할 수 있는 테스트 유형을 제한합니다.
  • 반복 견적. 통계를 계산하려면 기술 점수 샘플이 필요합니다. 동일하거나 다른 데이터에 대해 지정된 모델을 반복적으로 학습하고 테스트하면 사용할 수 있는 테스트 유형에 영향을 줍니다.
  • 추정치의 분포. 기술 점수 추정치의 표본에는 가우스 또는 그렇지 않은 분포가 있습니다. 이렇게 하면 모수 또는 비모수 검정을 사용할 수 있는지 여부가 결정됩니다.
  • 중앙 경향. 모델 기술은 종종 기술 점수의 분포에 따라 평균 또는 중앙값과 같은 요약 통계를 사용하여 설명되고 비교됩니다. 테스트는 이를 직접 고려할 수도 있고 고려하지 않을 수도 있습니다.

통계 검정의 결과는 종종 검정 통계량과 p-값이며, 둘 다 모델 간의 차이에 대한 신뢰 수준 또는 유의성을 정량화하기 위해 결과 표시에 해석되고 사용될 수 있습니다. 이를 통해 통계적 가설 테스트를 사용하지 않는 것보다 모델 선택의 일부로 더 강력한 주장을 할 수 있습니다.

모델 선택의 일부로 통계적 가설 테스트를 사용하는 것이 바람직해 보이는 상황에서 특정 사용 사례에 적합한 테스트를 어떻게 선택합니까?


가설 검정 선택의 문제

균형 이진 분류 문제에 대한 분류자를 평가하고 비교하는 일반적인 예를 살펴보겠습니다.

분류 정확도를 사용하여 분류 방법을 평가하고, 10배 교차 검증을 사용하여 각 모델을 평가하고, 10개의 모델 기술 추정치의 표본에 대한 가우스 분포를 가정하고, 표본의 평균을 모델 기술의 요약으로 사용하는 것이 일반적입니다.

이 절차를 사용하여 평가된 각 분류자는 10겹 교차 유효성 검사를 통해 데이터 세트의 정확히 동일한 분할에서 평가되도록 요구할 수 있습니다. 이렇게 하면 두 분류기 간에 일치하는 쌍을 이루는 측정값의 샘플이 제공되며, 각 분류기가 동일한 10개의 테스트 세트에서 평가되었기 때문에 일치합니다.

그런 다음 쌍체 스튜던트 t-검정을 선택하고 사용하여 두 모델 간의 평균 정확도 차이가 통계적으로 유의한지 확인할 수 있습니다(예: 두 표본의 분포가 동일하다고 가정하는 귀무 가설 기각).

사실, 이것은 분류기를 이 방법론을 사용하여 아마도 수백 개의 출판된 논문과 비교하는 일반적인 방법입니다.

문제는 쌍을 이룬 스튜던트 t-검정의 핵심 가정이 위반되었다는 것입니다.

즉, 각 표본의 관측치가 독립적이지 않습니다. k-fold 교차 검증 절차의 일부로 지정된 관측치가 훈련 데이터 세트(k-1)에 사용됩니다. 이는 추정된 기술 점수가 독립적이지 않고 종속적이며, 결과적으로 검정에서 t-통계량의 계산이 통계량 및 p-값의 해석과 함께 오해의 소지가 있을 정도로 잘못된다는 것을 의미합니다.

이 관측을 위해서는 사용된 리샘플링 방법(이 경우 k-폴드 교차 검증)과 선택한 가설 검정(이 경우 쌍체 스튜던트 t-검정)의 기대치를 모두 주의 깊게 이해해야 합니다. 이러한 배경이 없으면 테스트가 적절하게 나타나고 결과가 계산되고 해석되며 모든 것이 잘 보입니다.

불행히도 응용 머신러닝에서 모델 선택을 위한 적절한 통계적 가설 테스트를 선택하는 것은 처음 나타나는 것보다 더 어렵습니다. 다행히도 나이브한 접근 방식의 결함을 지적하고 수정 및 대체 방법을 제안하는 데 도움이되는 연구가 증가하고 있습니다.


일부 결과 요약

이 섹션에서는 머신러닝에서 모델 선택을 위한 적절한 통계적 유의성 테스트 선택에 대한 몇 가지 연구를 살펴보겠습니다. 

McNemar의 검정 또는 5×2 교차 검증 사용

아마도이 주제에 대한 중요한 작업은 Thomas Dietterich의 “감독 분류 학습 알고리즘 비교를 위한 대략적인 통계 테스트“라는 제목의 1998 년 논문 일 것입니다.

주제에 대한 훌륭한 논문이며 권장되는 읽을거리입니다. 먼저 통계적 가설 테스트가 필요할 수 있는 머신러닝 프로젝트 중 요점에 대해 생각할 수 있는 훌륭한 프레임워크를 다루고, 분류자 머신러닝 방법 비교와 관련된 통계 테스트의 일반적인 위반에 대한 기대치를 논의하고, 결과를 확인하는 방법에 대한 경험적 평가로 마무리합니다.

이 기사에서는 특정 학습 작업에서 한 학습 알고리즘이 다른 학습 알고리즘보다 성능이 좋은지 여부를 확인하기 위한 5가지 대략적인 통계 테스트를 검토합니다.

논문에서 통계적 가설 테스트의 선택 및 경험적 평가의 초점은 유형 I 오류 또는 오 탐지의 교정입니다. 즉, 그러한 차이가 존재하지 않을 때 유의한 차이를 제안하는 경우를 최소화하는 검정을 선택한다.

이 논문에는 여러 가지 중요한 결과가 있습니다.

첫 번째 발견은 훈련 데이터 세트의 무작위 재표본을 통해 추정된 기술 결과에 대해 쌍을 이루는 스튜던트 t-검정을 사용해서는 안 된다는 것입니다.

… 리샘플링된 t 검정을 절대 사용해서는 안 된다는 결론을 자신 있게 내릴 수 있습니다.

쌍체 t-검정의 가정은 무작위 리샘플링의 경우와 k-폴드 교차 검증의 경우(위에서 언급한 대로) 위반됩니다. 그럼에도 불구하고 k-폴드 교차 검증의 경우 t-검정은 낙관적이어서 유형 I 오차는 더 높지만 유형 II 오차는 미미합니다. 즉, 유형 II 오류를 피하는 것이 유형 I 오류에 굴복하는 것보다 더 중요한 경우에 이 조합을 사용할 수 있습니다.

교차 검증된 10배 t 검정에는 유형 I 오차가 높습니다. 그러나 그것은 또한 높은 전력을 가지고 있으므로 유형 II 오류 (알고리즘 간의 실제 차이를 감지하지 못함)가 더 중요한 경우에 권장 할 수 있습니다.

Dietterich는 제한된 양의 데이터가 있고 각 알고리즘을 한 번만 평가할 수 있는 경우 McNemar의 통계적 가설 검정을 권장합니다.

McNemar의 검정은 카이-제곱 검정과 같으며, 이 경우 알고리즘의 분할표에서 관측된 비율의 차이가 기대 비율과 유의하게 다른지 여부를 확인하는 데 사용됩니다. 이는 훈련하는 데 며칠 또는 몇 주가 걸릴 수 있는 대규모 딥 러닝 신경망의 경우에 유용한 결과입니다.

우리의 실험은 우리가 추천하도록 이끕니다 […] 학습 알고리즘을 한 번만 실행할 수 있는 상황에 대한 McNemar의 테스트입니다.

Dietterich는 또한 2 배 교차 검증을 5 회 반복하는 5×2 교차검증이라는 자체 리샘플링 방법을 권장합니다.

각 관측치가 모델 기술의 단일 추정치에 대한 학습 또는 테스트 데이터 세트에만 표시되도록 두 겹이 선택됩니다. 쌍을 이루는 스튜던트 t-검정이 결과에 사용되며, 추정된 스킬 점수 간의 종속성을 고려할 때 제한된 자유도를 더 잘 반영하도록 업데이트됩니다.

우리의 실험은 우리가 […] 5 x 2cv t 테스트, 학습 알고리즘이 10 번 실행하기에 충분히 효율적인 상황에 대해


5×2 교차 검증에 대한 개선

McNemar의 테스트 또는 5×2 교차 검증의 사용은 논문이 출판된 이후 20년 동안 주요 권장 사항이 되었습니다.

그럼에도 불구하고 반복되는 k-겹 교차 검증으로 인한 독립성 가정 위반에 대해 쌍체 스튜던트 t-검정을 더 잘 수정하기 위해 추가 개선이 이루어졌습니다.

많은 논문 중 두 가지 중요한 논문은 다음과 같습니다.

Claude Nadeau와 Yoshua Bengio는 2003 년 논문 “일반화 오류에 대한 추론“에서 추가 수정을 제안합니다. 

이 분석을 통해 훈련 세트의 선택과 테스트 예제의 선택으로 인한 변동성을 모두 고려한 두 가지 분산 추정치를 구성할 수 있었습니다. 제안 된 추정기 중 하나는 cv 방법 (Dietterich, 1998)과 유사하며 보수적 추론을 산출하기 위해 분산을 과대 평가하도록 특별히 설계되었습니다.

Remco Bouckaert와 Eibe Frank는 2004 년 “학습 알고리즘 비교를 위한 유의성 테스트의 재현 가능성 평가“라는 제목의 논문에서 다른 관점을 취하고 결과를 복제하는 능력이 유형 I 또는 유형 II 오류보다 더 중요하다고 생각합니다.

이 논문에서 우리는 테스트의 복제 가능성도 중요하다고 주장합니다. 테스트가 수행되는 데 사용되는 데이터의 특정 임의 분할에 크게 의존하는 경우 테스트 재현성이 낮다고 말합니다.

놀랍게도 그들은 좋은 복제성을 달성하기 위해 쌍을 이루는 Student-t 테스트에 대한 Nadeau 및 Bengio 수정과 함께 100번의 무작위 리샘플링 실행 또는 10×10배 교차 검증을 사용할 것을 권장합니다.

후자의 접근 방식은 Ian Witten과 Eibe Frank의 책과 오픈 소스 데이터 마이닝 플랫폼 Weka에서 Nadeau 및 Bengio 보정을 “수정 된 재 샘플링 된 t- 테스트“라고 언급하면서 권장됩니다.

이 문제를 피하기 위해 표준 t-검정의 다양한 수정이 제안되었으며, 모두 휴리스틱하고 건전한 이론적 타당성이 부족합니다. 실제로 잘 작동하는 것으로 보이는 것은 수정된 리샘플링된 t-검정입니다. […] 동일한 수정된 통계를 반복적인 교차 검증에 사용할 수 있으며, 이는 하나의 교차 검증에 대한 개별 테스트 세트가 겹치지 않는 반복적인 홀드아웃의 특별한 경우일 뿐입니다.

— 페이지 159, 5장, 신뢰성: 학습한 내용 평가, 데이터 마이닝: 실용적인 머신러닝 도구 및 기술, 제3판, 2011.


권장 사항

응용 머신러닝에서 모델 선택을 위한 통계적 유의성 테스트를 선택할 때 만병통치약은 없습니다.

머신러닝 프로젝트에서 분류자를 비교하는 데 사용할 수 있는 5가지 방법을 살펴보겠습니다.

1. 독립 데이터 샘플

거의 무제한에 가까운 데이터가 있는 경우 k개의 개별 학습 및 테스트 데이터 세트를 수집하여 각 방법에 대해 10개의 진정한 독립 기술 점수를 계산합니다.

그런 다음 페어링된 스튜던트 t-검정을 올바르게 적용할 수 있습니다. 이것은 우리가 종종 작은 데이터 샘플로 작업하기 때문에 가능성이 거의 없습니다.

… 적절한 크기의 여러 독립 데이터 세트를 사용할 수 있도록 본질적으로 무제한 데이터가 있다고 가정합니다. 실제로는 일반적으로 제한된 크기의 단일 데이터 세트 만 있습니다. 무엇을 할 수 있습니까?

— 페이지 158, 5장, 신뢰성: 학습된 내용 평가, 데이터 마이닝: 실용적인 머신러닝 도구 및 기술, 제3판, 2011.


2. 10 배 CV의 문제를 받아들이십시오.

순진한 10겹 교차 검증은 수정되지 않은 쌍체 학생 t-검정과 함께 사용할 수 있습니다.

다른 방법에 비해 반복성이 좋고 유형 II 오류는 적지 만 유형 I 오류가 높은 것으로 알려져 있습니다.

실험은 또한 10배 교차 검증된 t 검정의 결과를 해석할 때 주의를 시사합니다. 이 검정은 유형 I 오류 확률이 높지만(목표 수준의 두 배까지) 리샘플링된 t 검정의 문제만큼 심각하지는 않습니다.

지도 분류 학습 알고리즘 비교를 위한 대략적인 통계 테스트, 1998.

옵션이지만 매우 약하게 권장됩니다.

3. 맥네마르 테스트 또는 5×2 CV 사용

단일 실행 분류 정확도 결과에 대한 McNemar의 테스트와 수정된 쌍을 이루는 스튜던트 t-테스트를 사용한 5×2배 교차 검증에 대한 20년 간의 권장 사항은 일반적인 스탠드입니다.

또한, Nadeau 및 Bengio 검정 통계량에 대한 추가 보정은 Weka의 개발자에 의해 권장된 대로 5×2배 교차 검증 또는 10×10배 교차 검증과 함께 사용될 수 있다.

수정 된 t- 통계를 사용할 때의 과제는 기성 구현 (예 : SciPy)이 없기 때문에 타사 코드를 사용해야하며 이로 인해 수반되는 위험이 있다는 것입니다. 직접 구현해야 할 수도 있습니다.

Gitte Vanwinckelen과 Hendrik Blockeel은 2012 년 “반복적 인 교차 검증을 통한 모델 정확도 추정“이라는 제목의 논문에서 선택한 통계 방법의 가용성과 복잡성을 중요하게 생각합니다.

이러한 방법은 신중하게 설계되었으며 여러 가지 방법으로 이전 방법을 개선하는 것으로 나타났지만 이전 방법과 동일한 위험, 즉 방법이 복잡할수록 연구자가 잘못 사용하거나 결과를 잘못 해석 할 위험이 높아집니다.

여기에 McNemar의 테스트를 사용하는 예가 있습니다.


4. 비모수 쌍체 검정 사용

기술 점수의 분포가 가우스라고 가정하지 않는 것과 같이 더 적은 가정을 하는 비모수 검정을 사용할 수 있습니다.

한 가지 예는 쌍체 스튜던트 t-검정의 비모수 버전인 Wilcoxon 부호 순위 검정입니다. 이 검정은 쌍체 t-검정보다 통계적검정력이 낮지만, 독립성과 같이 t-검정의 기대치를 위반할 때 검정력이 더 높습니다.

이 통계적 가설 테스트는 Janez Demsar가 2006 년 논문 “여러 데이터 세트에 대한 분류자의 통계적 비교”에서 알고리즘 다른 데이터 세트를 비교하는 데 권장됩니다.

따라서 t-검정 가정이 충족되지 않는 한, 데이터 집합이 많거나 데이터 집합 전체의 성능 측정값이 정상적으로 분포되어 있다고 믿을 만한 이유가 있기 때문에 Wilcoxon 검정을 사용하는 것이 좋습니다.

검정은 비모수적이지만 여전히 각 표본 내의 관측치가 독립적이라고 가정하고(예: iid) k-폴드 교차 검증을 사용하면 종속 표본이 생성되고 이 가정을 위반하게 됩니다.


5. 대신 추정 통계 사용

통계적 가설 검정 대신, 신뢰 구간과 같은 추정 통계를 계산할 수 있습니다. 이들은 모델이 평가되는 재 샘플링 방법을 고려할 때 독립성 가정이 위반되는 유사한 문제를 겪을 것입니다.

Tom Mitchell은 1997 년 저서에서 통계적 가설 테스트의 결과를 휴리스틱 추정치로 취하고 모델 기술 추정치에 대한 신뢰 구간을 찾을 것을 제안합니다.

요약하자면, 제한된 데이터를 기반으로 학습 방법을 비교하는 단일 절차는 우리가 원하는 모든 제약 조건을 충족시키지 못합니다. 통계 모델은 사용 가능한 데이터가 제한적일 때 학습 알고리즘을 테스트할 때 실질적인 제약 조건에 완벽하게 맞는 경우가 거의 없다는 점을 명심하는 것이 좋습니다. 그럼에도 불구하고 학습 방법의 실험적 비교를 해석하는 데 큰 도움이 될 수 있는 대략적인 신뢰 구간을 제공합니다.

— 페이지 150, 5장, 가설 평가, 머신러닝, 1997.

부트스트랩과 같은 통계적 방법을 사용하여 결과를 제시하고 분류자를 비교하는 데 사용할 수 있는 방어 가능한 비모수 신뢰 구간을 계산할 수 있습니다. 이것은 항상 의지할 수 있는 간단하고 효과적인 접근 방식이며 일반적으로 권장합니다.

실제로 신뢰 구간은 부트 스트랩 영역의 모든 주제에 대해 가장 이론적 인 연구를 받았습니다.

— 페이지 321, 부트스트랩 소개, 1994.


확장

이 섹션에는 탐색할 수 있는 자습서를 확장하기 위한 몇 가지 아이디어가 나열되어 있습니다.

  • 머신러닝 모델을 비교하고 선택하기 위해 수정되지 않은 쌍을 이루는 스튜던트 t-검정을 잘못 사용하는 세 개의 연구 논문을 찾아 나열합니다.
  • Thomas Dietterich의 1998 년 논문에 제시된 머신러닝 프로젝트에서 통계적 가설 테스트를 사용하기위한 프레임 워크를 요약합니다.
  • 비교를 위해 McNemar의 테스트 또는 5×2 교차 검증을 올바르게 사용하는 세 개의 연구 논문을 찾아 나열하고 머신러닝 모델을 선택합니다.

이러한 확장 기능을 탐색하면 알고 싶습니다.

추가 정보

이 섹션에서는 더 자세히 알아보려는 경우 주제에 대한 더 많은 리소스를 제공합니다.


논문

기사

토론


요약

이 자습서에서는 머신러닝 모델을 비교하기 위한 통계적 가설 검정을 선택하는 것의 중요성과 과제를 발견했습니다.

특히 다음 내용을 배웠습니다.

  • 통계적 가설 테스트는 머신러닝 모델을 비교하고 최종 모델을 선택하는 데 도움이 될 수 있습니다.
  • 통계적 가설 테스트의 순진한 적용은 오해의 소지가 있는 결과로 이어질 수 있습니다.
  • 통계 검정의 올바른 사용은 어려운 일이며, 수정된 쌍체 학생 t-검정을 사용한 McNemar의 검정 또는 5×2 교차 검증을 사용하는 것에 대한 합의가 있습니다.
네피리티
No Comments

Sorry, the comment form is closed at this time.