데이터 샘플을 균등하게 분할하지 않는 k 값을 선택하면 한 그룹에 나머지 예제가 포함됩니다. 데이터 샘플을 동일한 수의 샘플로 k 그룹으로 분할하여 모델 기술 점수의 샘플이 모두 동일하도록 하는 것이 좋습니다. 보시다시피 함수는 원본 데이터를 데이터의 다른 하위 집합으로 분할합니다. 다시 말하지만, 아주 간단한 예이지만 개념을 꽤 잘 설명한다고 생각합니다. 예를 들어 데이터 집합을 3겹으로 분할하고 분할 전에 섞은 인스턴스를 만들고 의사 난수 생성기의 값 1을 사용할 수 있습니다. 비디오에는 힌트가 포함되어 있지만 가장 큰 힌트는 이전 예제를 살펴보고 그곳에서 배운 내용을 반복하는 것입니다. 교차 유효성 검사 절차를 구체화하려면 작업된 예제를 살펴보겠습니다. 이 예제에서는 아이리스 데이터 집합을 사용하여 작업하고 있습니다. 1936 년에 수집, 그것은 교육에 사용되는 이유입니다 매우 간단한 데이터 세트입니다. 그것은 Scikit 라이브러리의 일부입니다. 안녕 여러분! 파이썬의 선형 회귀에 대한 마지막 게시물 후, 나는 기차 / 테스트 분할 및 교차 유효성 검사에 대한 게시물을 작성하는 것이 자연스러울 것이라고 생각했습니다.

평소와 같이 주제에 대한 개요를 간결하게 한 다음 파이썬에서 구현하는 예제를 제공합니다. 이들은 데이터 과학 및 데이터 분석에서 다소 중요한 두 가지 개념이며 과적합을 방지 (또는 최소한 최소화)하는 도구로 사용됩니다. 통계 모델(예: 선형 회귀)을 사용할 때 는 일반적으로 학습되지 않은 데이터(일반 데이터)에 대한 근거를 만들기 위해 학습 세트에 모델을 맞춥니다. 오버피팅은 모델에 맞게 된 것이 학습 데이터에 너무 많이 부합한다는 것을 의미합니다. 그것은 모든 곧 이해될 것입니다, 나는 약속! 이번에는 교차 유효성 검사를 사용하여 이전에 사용한 예제를 살펴보겠습니다. cross_val_predict 함수를 사용하여 테스트 조각에 있을 때 각 데이터 포인트에 대한 예측 값을 반환합니다. 위의 예에서, 우리는 우리를 위해 kfold를 만들 Scikit을 요청합니다. 10값은 10개의 샘플을 의미합니다.

Scikit은 우리를 위해 0-9 값을 가진 목록을 만듭니다. 5 개의 접이 있으며 셔플은 데이터를 임의화하는 것을 의미합니다. LOOCV는 하나의 데이터 포인트를 남깁니다. 마찬가지로 각 반복에 대해 유효성 검사 크기 p 집합을 갖도록 p 학습 예제를 남겨둘 수 있습니다. 이를 LPOCV(P Out Cross Validation)라고 하며, 이 배열은 수식 형식으로 종을 포함하는 배열일 뿐입니다. 예를 들어 0은 아이리스 세토사입니다. 분류 문제에서 매우 불균형한 데이터 집합에 적합한 분할 메커니즘의 종류에 대해 누구든지 대답할 수 있습니까? 그것은 K-폴드, 계층화Kfold 또는 셔플 스플릿인가? 총 데이터 집합 수는 3338입니다. 클래스 A 수가 525인 경우 클래스 B는 2134개, 클래스 C는 679개입니다.