Bin으로 데이터 그룹화 구성 요소

이 문서에서는 Azure Machine Learning 디자이너의 Bin으로 데이터 그룹화 구성 요소를 사용하여 숫자를 그룹화하거나 연속 데이터의 배포를 변경하는 방법을 설명합니다.

Bin으로 데이터 그룹화 구성 요소는 데이터를 범주화하기 위한 여러 옵션을 지원합니다. bin 에지가 설정되는 방법과 값이 bin에 할당되는 방법을 사용자 지정할 수 있습니다. 예를 들어, 다음을 수행할 수 있습니다.

  • bin 경계로 사용할 일련의 값을 수동으로 입력합니다.
  • 분위수 또는 백분위수 순위를 사용하여 bin에 값을 할당합니다.
  • 값의 짝수 배포를 bin으로 강제합니다.

범주화 및 그룹화에 대한 자세한 정보

범주화 또는 데이터 그룹화(양자화라고도 함)는 기계 학습을 위해 숫자 데이터를 준비하는 데 중요한 도구이며, 다음과 같은 시나리오에서 유용합니다.

  • 연속 숫자 열의 고유 값이 너무 많아서 효율적으로 모델링할 수 없습니다. 그래서 더 작은 개별 범위 집합을 만들기 위해 자동 또는 수동으로 그룹에 값을 할당합니다.

  • 특정 범위를 나타내는 범주 값으로 숫자 열을 바꾸려고 합니다.

    예를 들어 사용자 인구 통계에 대해 사용자 지정 범위(예: 1-15, 16-22, 23-30 등)를 지정하여 나이 열의 값을 그룹화할 수 있습니다.

  • 데이터 세트는 예상 범위를 크게 벗어난 몇 가지 극단값을 가지며, 이러한 값은 학습된 모델에 큰 영향을 줍니다. 모델에서 바이어스를 완화하기 위해 분위수 메서드를 사용하여 데이터를 균일한 배포로 변형할 수 있습니다.

    이 메서드를 사용하여 Bin으로 데이터 그룹화 구성 요소는 대략 동일한 개수의 샘플이 각 bin에 포함되도록 이상적인 bin 위치 및 bin 너비를 결정합니다. 그런 다음, 선택하는 정규화 방법에 따라 bin의 값이 백분위수로 변환되거나 bin 번호에 매핑됩니다.

범주화 예제

다음 다이어그램에서는 분위수 메서드를 사용하여 범주화 전후에 숫자 값의 배포를 보여 줍니다. 왼쪽에 있는 원시 데이터와 비교했을 때 데이터를 범주화하고 단위-일반 비율로 변환했습니다.

결과 시각화

데이터를 그룹화하는 방법에는 여러 가지가 있으므로 모든 사용자 지정이 가능하므로 다른 메서드 및 값을 사용하여 시험해 보는 것이 좋습니다.

Bin으로 데이터 그룹화를 구성하는 방법

  1. 디자이너의 파이프라인에 Bin으로 데이터 그룹화 구성 요소를 추가합니다. 이 구성 요소는 범주 데이터 변환에서 찾을 수 있습니다.

  2. 숫자 데이터를 포함하는 데이터 세트를 bin에 연결합니다. 양자화는 숫자 데이터를 포함하는 열에만 적용할 수 있습니다.

    데이터 세트에 숫자가 아닌 열이 포함된 경우 데이터 세트에서 열 선택 구성 요소를 사용하여 작업할 열의 하위 집합을 선택합니다.

  3. 범주화 모드를 지정합니다. 범주화 모드는 다른 매개 변수를 결정하므로 먼저 범주화 모드 옵션을 선택해야 합니다. 지원되는 범주화 유형은 다음과 같습니다.

    • 분위수: 분위수 메서드는 백분위수 순위에 따라 bin에 값을 할당합니다. 이 메서드를 같은 높이 범주화라고도 합니다.

    • 같은 너비: 이 옵션을 사용하는 경우 총 bin 수를 지정해야 합니다. 데이터 열의 값은 각 bin에서 시작 값과 끝 값 사이에 동일한 간격을 갖도록 bin에 배치됩니다. 결과적으로 데이터가 특정 지점을 중심으로 모여 있는 경우 일부 bin에 더 많은 값이 있을 수 있습니다.

    • 사용자 지정 에지: 각 bin을 시작하는 값을 지정할 수 있습니다. 에지 값은 항상 bin의 하한입니다.

      예를 들어 값을 두 개의 bin으로 그룹화한다고 가정합니다. 하나는 0보다 큰 값이고 다른 하나는 0보다 작거나 같은 값입니다. 이 경우 bin 에지의 쉼표로 구분된 bin 에지 목록에서 0을 입력합니다. 구성 요소의 출력은 1과 2로, 각 행 값의 bin 인덱스를 나타냅니다. 쉼표로 구분된 값 목록은 1, 3, 5, 7과 같이 오름차순이어야 합니다.

    참고

    엔트로피 MDL 모드는 Studio(클래식)에서 정의되었으며, 디자이너에서 지원하기 위해 활용할 수 있는 해당 오픈 소스 패키지가 없습니다.

  4. 분위수같은 너비 범주화 모드를 사용하는 경우 bin의 수 옵션을 사용하여 만들려는 bin의 수 또는 분위수를 지정합니다.

  5. 범주화할 열에서 열 선택기를 사용하여 범주화할 값이 있는 열을 선택합니다. 열은 숫자 데이터 형식이어야 합니다.

    선택한 모든 해당 열에 동일한 범주화 규칙이 적용됩니다. 다른 메서드를 사용하여 일부 열을 범주화해야 하는 경우 각 열 세트에 Bin으로 데이터 그룹화 구성 요소의 개별 인스턴스를 사용합니다.

    경고

    허용되는 형식이 아닌 열을 선택하면 런타임 오류가 발생합니다. 구성 요소는 허용되지 않는 형식의 열을 찾는 즉시 오류를 반환합니다. 오류가 발생하면 선택한 모든 열을 검토합니다. 오류에 잘못된 열이 모두 나열되지 않습니다.

  6. 출력 모드에서 양자화 값을 출력하는 방법을 지정합니다.

    • 추가: 범주화된 값이 있는 새 열을 만들고 이 열을 입력 테이블에 추가합니다.

    • Inplace: 데이터 세트의 새 값으로 원본 값을 대체합니다.

    • ResultOnly: 결과 열만 반환합니다.

  7. 분위수 범주화 모드를 선택한 경우 분위수 정규화 옵션을 사용하여 분위수로 정렬하기 전에 값을 정규화하는 방법을 결정합니다. 정규화 값은 값을 변환하지만 최종 bin 개수에는 영향을 주지 않습니다.

    지원되는 정규화 형식은 다음과 같습니다.

    • 백분율: 값이 [0,100] 범위 내에서 정규화됩니다.

    • PQuantile: 값이 [0,1] 범위 내에서 정규화됩니다.

    • QuantileIndex: 값이 [1,bin 개수] 범위 내에서 정규화됩니다.

  8. 사용자 지정 에지 옵션을 선택한 경우 쉼표로 구분된 bin 에지 목록 텍스트 상자에 bin 에지로 사용할 숫자의 쉼표로 구분된 목록을 입력합니다.

    값은 bin을 나누는 지점을 표시합니다. 예를 들어 bin 에지 값으로 1을 입력하면 bin 2개가 생성됩니다. bin 에지 값으로 2를 입력하면 bin 3개가 생성됩니다.

    bin이 생성된 순서의 오름차순으로 값을 정렬해야 합니다.

  9. 열을 범주로 태그 지정 옵션을 선택하여 양자화 열을 범주 변수로 처리하도록 지정합니다.

  10. 파이프라인을 제출합니다.

결과

Bin으로 데이터 그룹화 구성 요소는 각 요소가 지정된 모드에 따라 범주화된 데이터 세트를 반환합니다.

‘변환 범주화’도 반환합니다. 동일한 범주화 모드와 매개 변수를 사용하여 새로운 데이터 샘플을 범주화하기 위해 변환 적용 구성 요소에 해당 함수를 전달할 수 있습니다.

학습 데이터에 대해 범주화를 사용하는 경우 테스트 및 예측에 사용하는 데이터에 대해 동일한 범주화 메서드를 사용해야 합니다. 또한 동일한 bin 위치 및 bin 너비를 사용해야 합니다.

항상 동일한 범주화 메서드를 사용하여 데이터가 변환되도록 하려면 유용한 데이터 변환을 저장하는 것이 좋습니다. 그런 다음, 변환 적용 구성 요소를 사용하여 다른 데이터 세트에 적용합니다.

다음 단계

Azure Machine Learning에서 사용 가능한 구성 요소 집합을 참조하세요.