k- 폴드 교차 검증은 훈련 / 검증 / 테스트 세트의 맥락에 어떻게 적합합니까?


14

나의 주요 질문은 k- 폴드 교차 검증이 훈련 / 검증 / 테스트 세트를 갖는 맥락에서 어떻게 맞는지 이해하려고 노력하는 것과 관련이 있습니다 (그러한 맥락에서 전혀 적합하다면).

일반적으로 사람들은 데이터를 훈련, 검증 및 테스트 세트 (앤드류 응 코스 당 60/20/20의 비율)로 분할하여 검증 세트가 모델 훈련을위한 최적의 파라미터를 식별하는 데 사용된다고 말합니다.

그러나 데이터 양이 상대적으로 적을 때보다 대표적인 정확도 측정 값을 얻기 위해 k- 폴드 크로스 밸리데이션을 사용하고자한다면 k- 폴드 크로스 밸리데이션이이 60/20/20 스플릿에서 정확히 수행되는 것은 무엇입니까? 대본?

예를 들어, 실제로 훈련 및 테스트 세트 (데이터의 80 %)를 결합하고 정확도 측정 값을 얻기 위해 k- 폴드 교차 검증을 수행한다는 것을 의미합니까 (명시적인 '테스트 세트'를 갖는 것을 효과적으로 버림)? 그렇다면 어떤 훈련 된 모델을 a) 생산에 사용하고 b) 검증 세트에 대해 사용하고 최적의 훈련 매개 변수를 식별합니까? 예를 들어, a와 b에 대한 한 가지 가능한 대답은 아마도 가장 좋은 모델을 사용하는 것입니다.

답변:


12

교차 유효성 검사는 일반적으로 유효성 검사 세트가 필요하지 않도록합니다.

교육 / 검증 / 테스트 데이터 세트의 기본 아이디어는 다음과 같습니다.

  1. 훈련 : 훈련 데이터 에서 다른 하이퍼 파라미터를 선택하여 다른 유형의 모델을 시험해보십시오 (예 : 기능 선택이 다른 선형 모델, 다른 층 선택을 가진 신경망, 다른 mtry 값을 갖는 임의의 숲).

  2. 검증 : 검증 세트를 기반으로 1 단계에서 모델의 성능을 비교 하고 승자를 선택합니다. 이를 통해 훈련 데이터 세트를 과도하게 맞추면 잘못된 결정을 피할 수 있습니다.

  3. 테스트 : 테스트 데이터 에서 승자 모델을 시험해보고 실제로 성능이 얼마나 좋은지 알 수 있습니다. 이는 2 단계에서 도입 된 과적 합을 해결합니다. 여기서는 더 이상의 결정을 내리지 않을 것입니다. 단순한 정보 일뿐입니다.

이제 유효성 검사 단계를 교차 유효성 검사로 대체하는 경우 데이터에 대한 공격이 거의 동일하게 수행되지만 교육 및 테스트 데이터 세트 만 있습니다. 유효성 검사 데이터 세트가 필요하지 않습니다.

  1. 교육 : 위를 참조하십시오.

  2. 유효성 검사 : 교차 유효성 검사 성능과 관련하여 1 단계의 최상의 모델을 선택하기 위해 교육 데이터에 대해 교차 유효성 검사를 수행합니다 (여기서 원본 교육 데이터는 임시 교육 및 유효성 검사 세트로 반복적으로 분할됩니다). 교차 검증으로 계산 된 모델은 전체 교육 세트에서 모두 계산되는 1 단계의 최상의 모델을 선택하는 데만 사용됩니다.

  3. 테스트 : 위를 참조하십시오.


1
감사! CV 맥락에서 확인하기 위해 80 %의 열차 대 20 %의 시험 분할이있을 수 있습니다. 그런 다음 데이터의 80 %에 대해 모델을 구축하고 20 %에 대해 테스트하여 정확도를 얻을 수 있습니다. 다른 모델 변형을 시도하기 위해 훈련 데이터 세트 (데이터의 80 %)에 대해 10 배 CV를 수행 할 수 있습니다. 총 데이터의 8 %에 대해 효과적으로 훈련하고 각 배에있는 총 데이터의 72 %에 대해 테스트합니다. CV 결과를 기반으로 최적의 하이퍼 파라미터 값을 식별하고이를 사용하여 모든 교육 데이터 (전체 데이터 세트의 80 %)에 대해 훈련 된 새 모델을 구축하고 나머지 20 % 테스트 데이터 세트에 대해 테스트 할 수 있습니다. 옳은?
blu

3
예, 각 CV 실행에서 훈련에 72 %, 검증에 8 %를 사용한다는 점을 제외하고 ;-)
Michael M

멋진 답변 @MichaelM. NCV (Nested Cross-Validation) 에 대해 읽고 있었고 , 사용 해야하는지 결정하거나 CV에 대해 간략히 설명한 것을 결정하는 데 어려움을 겪고 있습니다. NCV는 3 단계에 적용됩니다. 승자 1 점을 얻는 대신 K 승자 점수 (K에 총 실행 횟수를 곱하고 diff 80 % 열차 데이터로 1-2 회 반복 K 횟수)를 얻은 다음 평균을 얻을 수 있습니다. 질문 : 1) 내 이해가 정확합니까? 2) NCV를 사용하는 것이 좋습니다?
Aziz Javed에

당신은 정확히 맞습니다. 중첩 CV는 위에서 설명한 "간단한"접근 방식보다 더 안정적인 추정치를 얻는 데 도움이됩니다. 시간이 허락한다면, 그것은 선택 사항입니다. 중첩 된 CV에서 최종 모델이 계산되는 데이터 세트를 알고 있습니까? 전체에?
Michael M

3

케이

훈련 / 검증 / 테스트로 나누는 것도 샘플링 전략입니다.

케이

케이1

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