Table of Contents
Cross-validation은 감독 학습 모델의 성능을 평가하는 데 사용되는 기술입니다. 이 모델은 교육 및 테스트에 대한 여러 하위 세트로 데이터셋을 분할하여 데이터를 흔하게 분류하는 것을 돕습니다. 크로스 유효성을 구현하는 것은 모델 평가의 신뢰성을 향상시킬 수 있습니다.
Cross-Validation에 대한 이해
크로스 유효성 검사는 몇몇 부속으로 dataset를 분할하고, 또는 접힙니다. 모형은 이 접기의 subset에 훈련되고 나머지 접기에 시험됩니다. 이 과정은 각 시간을 시험하기 위하여 사용된 다른 접과 더불어 다수 시간 반복됩니다. 결과는 그 때 전반적인 성과 미터를 제공하는 평균적으로 입니다.
크로스-발명의 종류
가장 일반적인 유형은 다음과 같습니다.
- k-Fold Cross-Validation: k 동등 부품으로 데이터를 분할, k-1 부품에 대한 훈련 및 나머지 부분에 테스트.
- Stratified k-Fold: 각 접은 전체 데이터셋의 클래스 배포를 유지합니다.
- Leave-One-Out (LOO): 테스트 및 훈련을 위한 단일 데이터 포인트를 사용하며, 각 데이터 포인트에 반복됩니다.
연습에 있는 Cross-Validation 구현
대부분의 기계 학습 라이브러리는 크로스 유효성에 대한 내장 기능을 제공합니다. 예를 들어, Python의 scikit-learn에서, ] 함수는 프로세스를 단순화합니다. 모델, 데이터 세트 및 접점 수를 지정해야합니다.
코드 스니펫 예:
sklearn.model selection import cross val score에서
score = cross val score(모델, X, y, cv=5)]
이 코드는 5 배의 크로스 유효성을 수행하고 각 접점의 점수를 반환합니다.