개수 변환 작성

여러 데이터 집합에 변환을 적용할 수 있도록 개수 테이블을 기능으로 전환 하는 변환을 만듭니다.

범주: 개수로 학습

참고

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

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

모듈 개요

이 문서에서는 Azure Machine Learning Studio (클래식)에서 개수 변환 작성 모듈을 사용 하 여 학습 데이터를 분석 하는 방법을 설명 합니다. 이 데이터에서 모듈은 예측 모델에 사용할 수 있는 개수 기반 기능 집합 뿐만 아니라 개수 테이블 을 작성 합니다.

개수 테이블에는 지정 된 레이블 열이 지정 된 경우 모든 기능 열의 접합 분포가 포함 됩니다. 이러한 통계는 대부분의 정보 값이 있는 열을 결정 하는 데 유용 합니다. 개수 기반 기능화 은 이러한 기능이 원래 학습 데이터 보다 더 간결 하지만 가장 유용한 정보를 모두 캡처하기 때문에 유용 합니다. 모듈 매개 변수를 사용 하 여 개수가 개수 기반 기능의 새 집합으로 변환 되는 방식을 사용자 지정할 수 있습니다.

개수를 생성 하 고 기능으로 변환한 후에는 관련 데이터에 대해 다시 사용 하기 위한 변환으로 프로세스를 저장할 수 있습니다. 새 개수 집합을 생성 하지 않고도 기능 집합을 수정 하거나 개수와 기능을 다른 개수 및 기능 집합과 병합할 수도 있습니다.

개수 기반 기능을 다시 사용 하 고 다시 적용 하는 기능은 다음과 같은 시나리오에서 유용 합니다.

  • 새 데이터를 사용 하 여 데이터 집합의 범위를 향상 시킬 수 있습니다.
  • 원래 개수와 기능은 다시 처리 하지 않으려는 매우 큰 데이터 집합을 기반으로 합니다. 개수를 병합 하면 새 데이터로 업데이트할 수 있습니다.
  • 실험에서 사용 하는 모든 데이터 집합에 동일한 수 기반 기능 집합이 적용 되도록 하려고 합니다.

빌드 계산 변환을 구성 하는 방법

데이터 집합에서 직접 카운트 기반 기능 변환을 만들고 실험을 실행할 때마다 다시 실행할 수 있습니다. 또는 개수 집합을 생성 한 다음 새 데이터와 병합 하 여 업데이트 된 개수 테이블을 만들 수 있습니다.

  • 데이터 집합에서 개수 기반 기능 만들기

    이전에 개수를 만들지 않은 경우 여기에서 시작 합니다. 계산 테이블 작성 모듈을 사용 하 여 개수 테이블을 만들고 기능 집합을 자동으로 생성 합니다.

    이 프로세스는 변환 적용 모듈을 사용 하 여 데이터 집합에 적용할 수 있는 기능 변환을 만듭니다.

  • 여러 데이터 집합의 개수 및 기능 병합

    이전 데이터 집합에서 개수 테이블을 이미 생성 한 경우 새 데이터에만 개수를 생성 하거나 이전 버전의 Azure Machine Learning에서 만든 기존 개수 테이블을 가져옵니다. 그런 다음 두 개의 count 테이블 집합을 병합 합니다.

    이 프로세스는 변환 적용 모듈을 사용 하 여 데이터 집합에 적용할 수 있는 새 기능 변환을 만듭니다.

데이터 집합에서 개수 기반 기능 만들기

  1. Azure Machine Learning Studio (클래식)에서 실험에 빌드 계산 변환 모듈을 추가 합니다. 데이터 변환 아래에서 개수를 사용한 범주 학습 에서 모듈을 찾을 수 있습니다.

  2. 개수 기반 기능의 기반으로 사용할 데이터 집합을 연결 합니다.

  3. 클래스 수 옵션을 사용 하 여 레이블 열의 값 수를 지정 합니다.

    • 이진 분류 문제에 대해를 입력 2 합니다.
    • 가능한 출력이 3개 이상인 분류 문제의 경우에는 계산할 정확한 클래스 수를 사전에 지정해야 합니다. 실제 클래스 수보다 작은 숫자를 입력 하는 경우 모듈에서 오류를 반환 합니다.
    • 데이터 집합에 여러 클래스 값이 포함 되어 있고 클래스 레이블 값이 비순차적 이면 메타 데이터 편집 을 사용 하 여 열에 범주 값이 포함 되도록 지정 해야 합니다.
  4. 옵션의 경우 해시 함수의 비트는 값을 해시할 때 사용할 비트 수를 표시 합니다.

    개수를 계산할 값이 많고 비트 수가 더 높을 수 있음을 알고 있지 않으면 일반적으로 기본값을 그대로 사용할 수 있습니다.

  5. 해시 함수의 초기값 에서 해시 함수 초기값으로 사용할 값을 선택적으로 지정할 수 있습니다. 시드를 수동으로 설정 하는 것은 일반적으로 동일한 실험의 실행 간에 해시 결과가 결정적 인지 확인 하려는 경우에 수행 됩니다.

  6. 모듈 유형 옵션을 사용 하 여 저장소 모드에 따라 계산할 데이터 유형을 지정 합니다.

    • 데이터 집합: Azure Machine Learning Studio (클래식)에서 데이터 집합으로 저장 된 데이터를 계산 하는 경우이 옵션을 선택 합니다.

    • Blob: 개수를 작성 하는 데 사용 되는 원본 데이터가 microsoft Azure 저장소에 블록 Blob으로 저장 되는 경우이 옵션을 선택 합니다.

    • MapReduce: 맵/감소 함수를 호출 하 여 데이터를 처리 하려면이 옵션을 선택 합니다.

      이 옵션을 사용 하려면 Windows Azure 저장소에서 새 데이터를 blob으로 제공 해야 하며, 배포 된 HDInsight 클러스터에 대 한 액세스 권한이 있어야 합니다. 실험을 실행 하면 계산을 수행 하기 위해 클러스터에서 Map/줄임 작업이 시작 됩니다.

      매우 큰 데이터 집합의 경우 가능한 경우이 옵션을 사용 하는 것이 좋습니다. HDInsight 서비스 사용에 추가 비용이 발생할 수 있지만 큰 데이터 집합에 대한 계산은 HDInsight에서 더욱 빠를 수 있습니다.

      자세한 내용은 https://azure.microsoft.com/services/hdinsight/을(를) 참조하세요.

  7. 데이터 저장소 모드를 지정한 후에는 필요한 데이터에 대 한 추가 연결 정보를 제공 합니다.

    • Hadoop 또는 blob storage의 데이터를 사용 하는 경우 클러스터 위치 및 자격 증명을 제공 합니다.
    • 이전에 실험에서 데이터 가져오기 모듈을 사용 하 여 데이터에 액세스 한 경우 계정 이름 및 자격 증명을 다시 입력 해야 합니다. 빌드 계산 변환 모듈은 데이터를 읽고 필요한 테이블을 빌드하기 위해 데이터 저장소에 개별적으로 액세스 합니다.
  8. 레이블 열 또는 인덱스 의 경우 열 하나를 레이블 열로 선택 합니다.

    레이블 열이 필요 합니다. 열이 이미 레이블로 표시 되어 있어야 합니다. 그렇지 않으면 오류가 발생 합니다.

  9. 옵션을 사용 하 여 계산할 열을 선택 하 고 개수를 생성할 열을 선택 합니다.

    일반적으로 가장 적합 한 후보는 해당 열과 상관 관계가 있는 다른 열과 함께 높은 차원 열입니다.

  10. 개수 테이블 형식 옵션을 사용 하 여 개수 테이블을 저장 하는 데 사용 되는 형식을 지정할 수 있습니다.

    • 사전: 사전 개수 테이블을 만듭니다. 선택한 열의 모든 열 값은 문자열로 취급되고 크기가 최대 31비트인 비트 배열을 사용하여 해시됩니다. 따라서 모든 열 값은 음수가 아닌 32비트 정수도 표시됩니다.

      일반적으로 작은 데이터 집합 (1gb 미만)에이 옵션을 사용 하 고 큰 데이터 집합에 Cmsketch 옵션을 사용 해야 합니다.

      이 옵션을 선택한 후 해시 함수에서 사용 하는 비트 수를 구성 하 고 해시 함수를 초기화 하는 초기값을 설정 합니다.

    • Cmsketch: 개수 최소 스케치 테이블 을 만듭니다. 이 옵션을 사용하면 범위가 작은 독립적인 여러 해시 함수가 메모리 효율성을 높이고 해시 충돌 가능성을 줄이는 데 사용됩니다. 해시 비트 크기 및 해싱 초기값에 대 한 매개 변수는이 옵션에 영향을 주지 않습니다.

  11. 실험을 실행합니다.

    이 모듈은 변환 적용 모듈에 대 한 입력으로 사용할 수 있는 기능화 변환을 만듭니다. 변형 적용 모듈의 출력은 모델을 학습 하는 데 사용할 수 있는 변환 된 데이터 집합입니다.

    필요에 따라 카운트 기반 기능 집합을 다른 개수 기반 기능 집합과 병합 하려면 변환을 저장할 수 있습니다. 자세한 내용은 Merge Count Transform을 참조 하세요.

여러 데이터 집합의 개수 및 기능 병합

  1. Azure Machine Learning Studio (클래식)에서 실험에 빌드 계산 변환 모듈을 추가 하 고 추가 하려는 새 데이터가 포함 된 데이터 집합을 연결 합니다.

  2. 모듈 유형 옵션을 사용 하 여 새 데이터의 원본을 표시 합니다. 서로 다른 원본의 데이터를 병합할 수 있습니다.

    • 데이터 집합: 새 데이터가 Azure Machine Learning Studio (클래식)에서 데이터 집합으로 제공 되는 경우이 옵션을 선택 합니다.

    • Blob: 새 데이터가 microsoft Azure 저장소에 블록 Blob으로 제공 되는 경우이 옵션을 선택 합니다.

    • MapReduce: 맵/감소 함수를 호출 하 여 데이터를 처리 하려면이 옵션을 선택 합니다.

      이 옵션을 사용 하려면 Windows Azure 저장소에서 새 데이터를 blob으로 제공 해야 하며, 배포 된 HDInsight 클러스터에 대 한 액세스 권한이 있어야 합니다. 실험을 실행 하면 계산을 수행 하기 위해 클러스터에서 Map/줄임 작업이 시작 됩니다.

      자세한 내용은 https://azure.microsoft.com/services/hdinsight/를 참조하세요.

  3. 데이터 저장소 모드를 지정한 후 새 데이터에 대 한 추가 연결 정보를 제공 합니다.

    • Hadoop 또는 blob storage의 데이터를 사용 하는 경우 클러스터 위치 및 자격 증명을 제공 합니다.

    • 이전에 실험에서 데이터 가져오기 모듈을 사용 하 여 데이터에 액세스 한 경우 계정 이름 및 자격 증명을 다시 입력 해야 합니다. 그 이유는 빌드 계산 변환 모듈이 데이터를 읽고 필요한 테이블을 빌드하기 위해 데이터 저장소에 별도로 액세스 하기 때문입니다.

  4. 개수를 병합할 때 다음 옵션은 두 개수 테이블에서 정확히 동일 해야 합니다.

    • 클래스 수
    • 해시 함수의 비트 수
    • 해시 함수의 초기값
    • 계산할 열 선택

    레이블 열은 동일한 수의 클래스를 포함 하는 경우 다를 수 있습니다.

  5. 개수 테이블 형식 옵션을 사용 하 여 업데이트 된 개수 테이블의 형식과 대상을 지정할 수 있습니다.

    병합 하려는 두 개수 테이블의 형식은 동일 해야 합니다. 즉, 사전 형식을 사용 하 여 이전 개수 테이블을 저장 한 경우 cmsketch 형식을 사용 하 여 저장 된 개수와 병합할 수 없습니다.

  6. 실험을 실행합니다.

    이 모듈은 변환 적용 모듈에 대 한 입력으로 사용할 수 있는 기능화 변환을 만듭니다. 변형 적용 모듈의 출력은 모델을 학습 하는 데 사용할 수 있는 변환 된 데이터 집합입니다.

  7. 이 개수 집합을 기존 개수 기반 기능 집합과 병합 하려면 병합 개수 변환을 참조 하세요.

예제

다른 방법에 비해 카운트 알고리즘 및 카운트 기반 모델링의 효율성에 대 한 자세한 내용은 다음 문서를 참조 하세요.

Azure AI Gallery 의 다음 실험에서는 개수 기반 학습을 사용 하 여 다양 한 예측 모델을 작성 하는 방법을 보여 줍니다.

모듈 매개 변수

모든 옵션과 함께 사용 되는 매개 변수는 다음과 같습니다.

속성 Type 범위 선택 사항 기본값 설명
클래스 수 정수 >= 2 필수 2 레이블의 클래스 수입니다.
해시 함수의 비트 수 정수 [12, 31] 필수 20 해시 함수 범위의 비트 수입니다.
해시 함수의 초기값 정수 any 필수 1 해시 함수의 초기값입니다.
모듈 유형 필수 데이터 세트 개수 테이블을 생성할 때 사용할 모듈의 형식입니다.
개수 테이블 형식 CountTableType 목록에서 선택 필수 사전 개수 테이블의 형식을 지정 합니다.

다음 옵션은 blob 옵션을 선택할 때 적용 됩니다.

속성 Type 범위 선택 사항 기본값 설명
Blob 이름 String any 필수 입력 blob의 이름입니다. 컨테이너 이름을 포함 하지 마세요.
계정 이름 String any 필수 스토리지 계정 이름입니다.
계정 키 SecureString any 필수 스토리지 계정 키입니다.
컨테이너 이름 String any 필수 입력 blob을 포함 하는 Azure blob 컨테이너입니다.
개수 열 String any 필수 계산을 수행할 열 그룹의 인덱스 (1부터 실행)입니다.
레이블 열 정수 >= 1 필수 1 레이블 열의 인덱스 (1부터 사용)입니다.
Blob 형식 any 필수 CSV Blob 텍스트 파일 형식입니다.

다음 매개 변수는 MapReduce 를 사용 하 여 개수를 생성할 때 적용 됩니다.

속성 Type 범위 선택 사항 기본값 설명
기본 스토리지 계정 이름 String any 필수 없음 입력 blob을 포함 하는 저장소 계정의 이름입니다.
기본 저장소 계정 키 SecureString any 필수 없음 입력 blob을 포함 하는 저장소 계정의 키입니다.
기본 컨테이너 이름 String any 필수 없음 개수 테이블을 쓸 blob 컨테이너의 이름입니다.
클러스터 URI String any 필수 없음 HDInsight Hadoop 클러스터에 대 한 URI입니다.
사용자 이름 String any 필수 없음 HDInsight Hadoop 클러스터에 로그인 할 사용자 이름입니다.

다음 매개 변수는 개수 테이블의 형식을 정의 합니다.

속성 Type 범위 선택 사항 기본값 설명
개수 테이블 형식 CountTableType 목록 필수 사전 개수 테이블의 유형입니다.
레이블 열 인덱스 또는 이름 ColumnSelection Count 테이블이 데이터 집합으로 저장 된 경우 필요 합니다. 없음 레이블 열을 선택 합니다.
계산할 열 선택 ColumnSelection Count 테이블이 데이터 집합으로 저장 된 경우 필요 합니다. 계산할 열을 선택합니다. 이러한 열은 범주 기능으로 간주 됩니다.
CM 스케치 테이블의 깊이 정수 >= 1 개수 테이블에서 CMSketch 형식을 사용 하는 경우 필수 4 해시 함수 수와 일치 하는 CM 스케치 테이블의 깊이입니다.
CM 스케치 테이블의 너비 정수 [1, 31] 개수 테이블에서 CMSketch 형식을 사용 하는 경우 필수 20 CM 스케치 테이블의 너비 (해시 함수 범위의 비트 수)입니다.
열 인덱스 또는 namecolumn 레이블 ColumnSelection Count 테이블이 데이터 집합으로 저장 된 경우 필요 합니다. 레이블 열을 선택 합니다.
계산할 열 선택 ColumnSelection Count 테이블이 데이터 집합으로 저장 된 경우 필요 합니다. 계산할 열을 선택 합니다. 이러한 열은 범주 기능으로 간주 됩니다.
개수 테이블 형식 Count 테이블이 데이터 집합으로 저장 된 경우 필요 합니다. 사전 개수 테이블의 유형을 지정 합니다.
CM 스케치 테이블의 깊이 정수 >= 1 계산 테이블이 CMSketch로 저장 된 경우에 필요 합니다. 4 해시 함수 수와 같은 CM 스케치 테이블의 깊이입니다.
CM 스케치 테이블의 너비 정수 [1, 31] 계산 테이블이 CMSketch로 저장 된 경우에 필요 합니다. 20 CM 스케치 테이블 너비로, 해시 함수 범위의 비트 수입니다.

출력

속성 유형 설명
변환 계산 ITransform 인터페이스 계산 변환입니다.

예외

예외 설명
오류 0003 하나 이상의 입력이 null이거나 비어 있으면 예외가 발생합니다.
오류 0004 매개 변수가 특정 값 이하이면 예외가 발생합니다.
오류 0005 매개 변수가 특정 값보다 작으면 예외가 발생합니다.
오류 0007 매개 변수가 특정 값보다 크면 예외가 발생합니다.
오류 0009 Azure 저장소 계정 이름 또는 컨테이너 이름을 잘못 지정하면 예외가 발생합니다.
오류 0065 Azure Blob 이름을 잘못 지정한 경우 예외가 발생합니다.
오류 0011 전달된 열 집합 인수가 데이트 세트 열에 적용되지 않으면 예외가 발생합니다.
오류 0049 파일을 구문 분석할 수 없는 경우 예외가 발생합니다.
오류 1000 내부 라이브러리 예외입니다.
오류 0059 열 선택기에서 지정한 열 인덱스를 구문 분석할 수 없으면 예외가 발생합니다.
오류 0060 열 선택기에서 범위를 벗어난 열 범위를 지정하면 예외가 발생합니다.
오류 0089 지정한 클래스 수가 개수 계산에 사용되는 데이터 집합의 실제 클래스 수보다 적으면 예외가 발생합니다.

스튜디오 (클래식) 모듈과 관련 된 오류 목록은 Machine Learning 오류 코드를 참조 하세요.

API 예외 목록은 Machine Learning REST API 오류 코드를 참조 하세요.

참고 항목

개수로 학습