행 분할을 사용하여 데이터 분할

이 문서에서는 Azure Machine Learning Studio (클래식)의 데이터 분할 모듈에서 행 분할 옵션을 사용 하는 방법을 설명 합니다. 이 옵션은 특히 학습 및 테스트에 사용 되는 데이터 집합을 무작위로 또는 특정 조건에 따라 분할 해야 하는 경우에 유용 합니다.

참고

적용 대상: Machine Learning Studio (클래식)

이 콘텐츠는 Studio (클래식)에만 해당 됩니다. Azure Machine Learning 디자이너에는 비슷한 끌어서 놓기 모듈이 추가 되었습니다. 이 문서에서는 두 가지 버전을 비교 하는방법에 대해 자세히 알아보세요.

행 분할 옵션은 임의 분할과 층 화 분할을 모두 지원 합니다. 예를 들어 70-30 분할을 지정 하거나 대상 변수가 두 데이터 집합에 동일 하 게 표시 되는 10-90 분할할 수 있습니다.

기계 학습 실험의 데이터 분할에 대 한 일반적인 내용은 데이터 분할파티션 및 분할을 참조 하세요.

데이터 분할 모듈의 다른 옵션은 데이터를 나눌 수 있는 다양 한 방법을 지원 합니다.

데이터 집합을 두 그룹으로 분할

  1. Studio (클래식)에서 실험에 데이터 분할 모듈을 추가 하 고 분할 하려는 데이터 집합을 연결 합니다.

  2. 분할 모드 의 경우 행 분할 을 선택 합니다.

  3. 첫 번째 출력 데이터 집합에 있는 행의 비율 입니다. 이 옵션을 사용 하 여 첫 번째 (왼쪽) 출력으로 이동 하는 행 수를 결정할 수 있습니다. 다른 모든 행은 두 번째 (오른쪽) 출력으로 이동 합니다.

    비율은 첫 번째 출력 데이터 집합으로 전송 되는 행의 백분율을 나타내므로 0에서 1 사이의 10 진수를 입력 해야 합니다.

    예를 들어 값으로 0.75를 입력하면 데이터 집합은 75:25 비율을 사용하여 분할되며 행의 75%가 첫 번째 출력 데이터 집합으로, 25%가 두 번째 출력 데이터 집합으로 전송됩니다.

  4. 두 그룹의 데이터 선택 영역을 임의로 선택 하려면 임의 분할 옵션을 선택 합니다. 이 옵션은 학습 및 테스트 데이터 집합을 만들 때 선호 되는 옵션입니다.

  5. 임의 초기값: 사용할 인스턴스의 의사 난수 시퀀스를 초기화 하는 음수가 아닌 정수 값을 입력 합니다. 이 기본 초기값은 난수를 생성하는 모든 모듈에서 사용됩니다.

    초기값을 지정 하면 결과를 일반적으로 재현할 수 있습니다. 분할 작업의 결과를 반복 해야 하는 경우 난수 생성기의 초기값을 지정 해야 합니다. 그렇지 않으면 기본적으로 무작위 초기값이 0으로 설정되므로 시스템 클록에서 최초 초기값을 가져옵니다. 따라서 분할을 수행할 때마다 데이터 분포가 약간씩 달라질 수 있습니다.

  6. 층 화 split:이 옵션을 True 로 설정 하면 두 출력 데이터 집합에 층 열 또는 층 화 key 열의 값에 대 한 대표적인 예제가 포함 됩니다.

    층 화 샘플링을 사용 하면 각 출력 데이터 집합이 각 대상 값의 비율을 대략적으로 차지 하도록 데이터를 구분 합니다. 예를 들어 결과와 관련 하 여 교육 및 테스트 집합이 대략적으로 균형을 유지 하거나 성별과 같은 다른 일부 열을 고려 하는 것이 좋습니다.

  7. 실험을 실행 하거나 모듈을 마우스 오른쪽 단추로 클릭 하 고 선택 된 실행 을 선택 합니다.

예제

다음 예에서는 행 분할 모드를 사용 하 여 간단한 분할을 수행 하는 방법을 보여 줍니다.

두 개의 동일한 부분으로 분할

다른 변경 없이 데이터 집합 뒤에 분할 데이터 모듈을 추가 합니다. 기본적으로 이 모듈은 데이터 집합을 두 개의 균등한 부분으로 분할합니다. 행의 수가 홀수인 데이터의 경우 두 번째 출력에서 나머지를 가져옵니다.

1/3로 분할

데이터 집합을 두 부분으로 분할 하는 것이 좋습니다. 세 번째 데이터는 학습에 사용 되 고 나머지는 테스트 또는 추가 분할에 사용 됩니다.

이렇게 하려면 분할 데이터 모듈을 추가 하 고 첫 번째 출력의 행 비율 을 0.33로 설정 합니다. 두 번째 출력에는 나머지 2/3가 포함됩니다.

두 번째 출력을 동일한 부분으로 나누려면 데이터 분할 모듈의 다른 인스턴스를 추가 하 고 이번에는 50-50 분할에 기본값을 사용 합니다.

기술 정보

이 섹션에는 구현 세부 정보, 팁 및 질문과 대답 (faq)이 포함 되어 있습니다.

구현 세부 정보

  • 이 모듈을 사용 하려면 데이터 집합에 두 개 이상의 행이 있어야 합니다. 그렇지 않으면 오류가 발생 합니다.

  • 원하는 행 수를 지정하는 옵션을 사용하는 경우 지정된 숫자는 양의 정수여야 하며 데이터 집합의 총 행 수보다 작아야 합니다.

  • 모든 백분율 값은 0에서 1 사이 여야 합니다.

  • 숫자 또는 백분율을 1 보다 작은 부동 소수점 숫자로 지정 하 고 백분율 기호 (%)를 사용 하지 않으면 숫자가 비례 값으로 해석 됩니다.

층 화 샘플링에 대 한 추가 요구 사항

  • 층 열에는 명목 또는 범주 데이터만 포함 될 수 있습니다. 열에 연속 숫자 데이터가 포함 된 경우 오류 메시지가 발생 합니다.

  • 고유 값이 너무 많은 열은 층 화에 적합 하지 않습니다. 일부 범주를 축소 하거나 값을 그룹화 하 여 미리 볼 수 있습니다.

참고 항목

파티션 및 샘플 분할 샘플 및 분할