자습서: Azure Machine Learning 스튜디오에서 코드가 없는 AutoML을 사용하여 분류 모델 학습

Azure Machine Learning 스튜디오에서 Azure Machine Learning 자동화된 ML을 사용하여 코드 없는 AutoML을 통해 분류 모델을 학습하는 방법에 대해 알아봅니다. 이 분류 모델은 클라이언트가 금융 기관의 정기 예금을 구독할지 예측합니다.

자동화된 ML을 사용하면 시간이 많이 걸리는 작업을 자동화할 수 있습니다. 자동화된 기계 학습은 사용자가 선택한 성공 메트릭을 기반으로 최상의 모델을 발견할 수 있도록 알고리즘과 하이퍼 매개 변수의 여러 조합을 빠르게 반복합니다.

이 자습서에서는 코드를 작성하지 않고 스튜디오 인터페이스를 사용하여 학습을 수행합니다. 다음 작업을 수행하는 방법을 알아봅니다.

  • Azure Machine Learning 작업 영역을 만듭니다.
  • 자동화된 기계 학습 실험을 실행합니다.
  • 모델 세부 정보를 살펴봅니다.
  • 권장된 모델을 배포합니다.

또한 다음과 같은 다른 모델 유형에 대해 자동화된 기계 학습을 시도해 보세요.

필수 조건

  • Azure 구독 Azure 구독이 아직 없는 경우 체험 계정을 만듭니다.

  • bankmarketing_train.csv 데이터 파일을 다운로드합니다. y 열은 고객이 정기 예금에 가입했는지 여부를 나타내며, 뒷부분에서 이 자습서의 예측에 대한 대상 열로 식별됩니다.

작업 영역 만들기

Azure Machine Learning 작업 영역은 기계 학습 모델을 실험하고, 학습시키고, 배포하는 데 사용하는 클라우드의 기본 리소스입니다. Azure 구독 및 리소스 그룹을 서비스에서 사용하기 쉬운 개체에 연결합니다.

작업 영역을 만드는 방법에는 여러 가지가 있습니다. 이 자습서에서는 Azure 리소스를 관리하기 위한 웹 기반 콘솔인 Azure Portal을 통해 작업 영역을 만듭니다.

  1. Azure 구독에 대한 자격 증명을 사용하여 Azure Portal에 로그인합니다.

  2. Azure Portal의 왼쪽 위 모서리에서 새 개의 막대를 선택한 다음, + 리소스 만들기를 선택합니다.

    Screenshot showing + Create a resource.

  3. 검색 창을 사용하여 Machine Learning을 찾습니다.

  4. Machine Learning을 선택합니다.

    Screenshot shows search results to select Machine Learning.

  5. Machine Learning 창에서 만들기를 선택하여 시작합니다.

  6. 새 작업 영역을 구성하려면 다음 정보를 제공하세요.

    필드 설명
    작업 영역 이름 작업 영역을 식별하는 고유한 이름을 입력합니다. 이 예제에서는 docs-ws를 사용합니다. 이름은 리소스 그룹 전체에서 고유해야 합니다. 다른 사용자가 만든 작업 영역과 구별되고 기억하기 쉬운 이름을 사용하세요.
    Subscription 사용할 Azure 구독을 선택합니다.
    Resource group 구독에서 기존 리소스 그룹을 사용하거나 이름을 입력하여 새 리소스 그룹을 만듭니다. 리소스 그룹은 Azure 솔루션에 관련된 리소스를 보유합니다. 이 예에서는 docs-aml을 사용합니다.
    위치 사용자 및 데이터 리소스와 가장 가까운 위치를 선택하여 작업 영역을 만듭니다.
  7. 작업 영역 구성을 마쳤으면 검토 + 만들기를 선택합니다.

  8. 만들기를 선택하여 작업 영역을 만듭니다.

    경고

    클라우드에서 작업 영역을 만드는 데 몇 분 정도 걸릴 수 있습니다.

    프로세스가 완료되면 배포 성공 메시지가 표시됩니다.

  9. 새 작업 영역을 보려면 리소스로 이동을 선택합니다.

  10. 작업 영역의 포털 보기에서 스튜디오 시작을 선택하여 Azure Machine Learning 스튜디오로 이동합니다.

중요

작업 영역구독을 적어 둡니다. 올바른 작업 영역에 실험을 만들려면 이 정보가 필요합니다.

스튜디오에 로그인

모든 https://ml.azure.com 기술 수준의 데이터 과학 전문가를 위한 데이터 과학 시나리오를 수행하는 기계 학습 도구를 포함하는 통합 웹 인터페이스인 의 Azure Machine Learning Studio를 통해 다음 실험 설정 및 실행 단계를 완료합니다. 이 Studio는 Internet Explorer 브라우저에서 지원되지 않습니다.

  1. Azure Machine Learning Studio에 로그인합니다.

  2. 해당 구독과 직접 만든 작업 영역을 선택합니다.

  3. 시작을 선택합니다.

  4. 왼쪽 창의 작성 섹션에서 자동화된 ML을 선택합니다.

    이는 자동화된 ML의 첫 번째 실험이므로 빈 목록과 설명서에 대한 링크가 표시됩니다.

    Get started page

  5. +새 자동화된 ML 실행을 선택합니다.

데이터 세트 생성 및 로드

실험을 구성하기 전에 데이터 파일을 Azure Machine Learning 데이터 세트 형식으로 작업 영역에 업로드합니다. 이렇게 하면 데이터의 형식이 실험에 맞게 적절히 지정되도록 할 수 있습니다.

  1. +데이터 세트 만들기 드롭다운에서 로컬 파일에서를 선택하여 새 데이터 세트를 만듭니다.

    1. 기본 정보 양식에서 데이터 세트에 이름을 지정하고 선택적 설명을 입력합니다. 자동화된 ML 인터페이스는 현재 테이블 형식 데이터 세트만 지원하므로 데이터 세트 형식은 기본적으로 테이블 형식이어야 합니다.

    2. 왼쪽 아래에서 다음을 선택합니다.

    3. 데이터 저장소 및 파일 선택 양식에서 작업 영역을 만드는 동안 자동으로 설정된 기본 데이터 저장소 workspaceblobstore(Azure Blob Storage) 를 선택합니다. 여기서 데이터 파일을 업로드하여 작업 영역에서 사용할 수 있도록 합니다.

    4. 찾아보기를 선택합니다.

    5. 로컬 컴퓨터에 있는 bankmarketing_train.csv 파일을 선택합니다. 이는 구성 요소로 다운로드한 파일입니다.

    6. 데이터 세트에 고유 이름을 지정하고 선택적 설명을 입력합니다.

    7. 왼쪽 아래에서 다음을 선택하여 작업 영역을 만드는 동안 자동으로 설정된 기본 컨테이너에 업로드합니다.

      업로드가 완료되면, 설정 및 미리 보기 양식이 파일 형식에 따라 미리 채워집니다.

    8. 설정 및 미리 보기 양식이 다음과 같이 채워졌는지 확인하고 다음을 선택합니다.

      필드 Description 자습서에서 사용하는 값
      파일 형식 파일에 저장된 데이터의 레이아웃 및 유형을 정의합니다. 구분됨
      구분 기호 일반 텍스트 또는 다른 데이터 스트림에서 별도의 독립적인 지역 간의 경계를 지정하기 위한 하나 이상의 문자입니다. 쉼표
      Encoding 데이터 세트를 읽는 데 사용할 문자 스키마 테이블을 식별합니다. UTF-8
      열 머리글 데이터 세트의 헤더(있는 경우)가 처리되는 방법을 나타냅니다. 모든 파일의 머리글이 동일함
      행 건너뛰기 데이터 세트에서 건너뛴 행(있는 경우)의 수를 나타냅니다. None
    9. 스키마 폼을 사용하여 이 실험을 위해 데이터를 추가로 구성할 수 있습니다. 이 예제에서는 day_of_week의 토글 스위치를 포함하지 않도록 선택합니다. 다음을 선택합니다. Schema form

    10. 확인 세부 정보 양식에서 이전에 기본 정보, 데이터 저장소, 파일 선택설정 및 미리 보기 폼에 입력 한 정보와 일치 하는지 확인 합니다.

    11. 만들기를 선택하여 데이터 세트 만들기를 완료합니다.

    12. 데이터 세트가 목록에 표시되면 선택합니다.

    13. 데이터 미리 보기 를 검토 하 여 day_of_week 포함 되지 않았는지 확인 하 고 닫기를 선택 합니다.

    14. 다음을 선택합니다.

실행 구성

데이터를 로드하고 구성한 후 실험을 설정할 수 있습니다. 이 설정에는 컴퓨팅 환경의 크기를 선택하고 예측할 열을 지정하는 등의 실험 디자인 작업이 포함되어 있습니다.

  1. 새로 만들기 라디오 단추를 선택합니다.

  2. 다음과 같이 실행 구성 양식을 채웁니다.

    1. 이 실험 이름 my-1st-automl-experiment를 입력합니다.

    2. 예측하려는 항목인 대상 열로 y를 선택합니다. 이 열은 클라이언트가 정기 예금에 가입했는지 여부를 나타냅니다.

    3. 컴퓨팅 유형으로 컴퓨팅 클러스터를 선택합니다.

    4. +새로 만들기: 컴퓨팅 대상을 구성합니다. 컴퓨팅 대상은 학습 스크립트를 실행하거나 서비스 배포를 호스트하는 데 사용되는 로컬 또는 클라우드 기반 리소스 환경입니다. 이 실험에서는 클라우드 기반 컴퓨팅을 사용합니다.

      1. 가상 머신 선택 양식을 채워 컴퓨팅을 설정합니다.

        필드 Description 자습서에서 사용하는 값
        가상 머신 우선 순위 실험의 우선 순위를 선택합니다. 전용
        가상 머신 유형 컴퓨팅에 사용할 가상 머신 유형을 선택합니다. CPU(중앙 처리 장치)
        가상 머신 크기 컴퓨팅에 사용할 가상 머신 크기를 선택합니다. 데이터 및 실험 유형에 따라 권장 크기 목록이 제공됩니다. Standard_DS12_V2
      2. 다음을 선택하여 설정 구성 양식을 채웁니다.

        필드 Description 자습서에서 사용하는 값
        컴퓨팅 이름 컴퓨팅 컨텍스트를 식별하는 고유한 이름입니다. automl-compute
        최소 / 최대 노드 데이터를 프로파일링하려면 하나 이상의 노드를 지정해야 합니다. 최소 노드: 1
        최대 노드: 6
        규모 축소 전 유휴 시간(초) 클러스터가 최소 노드 수까지 자동으로 축소 되기 전의 유휴 시간입니다. 120(기본값)
        고급 설정 실험에 사용할 가상 네트워크를 구성하고 권한을 부여하는 설정입니다. None
      3. 만들기를 선택하여 컴퓨팅 대상을 만듭니다.

        이 작업은 완료하는 데 몇 분이 소요됩니다.

        Settings page

      4. 만들기가 완료되면 드롭다운 목록에서 새 컴퓨팅 대상을 선택합니다.

    5. 다음을 선택합니다.

  3. 작업 및 설정 선택 양식에서 기계 학습 작업 유형 및 구성 설정을 지정하여 자동화된 ML 실험의 설정을 완료합니다.

    1. 기계 학습 작업 유형으로 분류를 선택합니다.

    2. 추가 구성 설정 보기를 선택하고 다음과 같이 필드를 채웁니다. 이러한 설정은 학습 작업을 더 효율적으로 제어하기 위한 것입니다. 그렇지 않으면 실험 선택 및 데이터를 기반으로 기본값이 적용됩니다.

      추가 구성 Description 자습서에서 사용하는 값
      기본 메트릭 기계 학습 알고리즘을 측정할 평가 메트릭입니다. AUC_weighted
      최상의 모델에 대한 설명 자동화된 ML에서 만든 최상의 모델에 대한 설명 가능성을 자동으로 표시합니다. 사용
      차단된 알고리즘 학습 작업에서 제외할 알고리즘 None
      종료 기준 조건을 충족하는 경우 학습 작업이 중지됩니다. 학습 작업 시간 (시간): 1
      메트릭 점수 임계값: 없음
      유효성 검사 교차 유효성 검사 유형 및 테스트 수를 선택합니다. 유효성 검사 유형:
       k-fold 교차 유효성 검사

      유효성 검사 수: 2
      동시성 반복당 실행되는 최대 병렬 반복 수 최대 동시 반복 횟수: 5

      저장을 선택합니다.

  4. 마침을 선택하여 실험을 실행합니다. 실험 준비가 시작 됨에 따라 위쪽에 실행 상태가 포함 된 실행 세부 정보 화면이 열립니다. 이 상태는 실험이 진행되면서 업데이트됩니다. 실험 상태를 알려주는 알림이 스튜디오의 오른쪽 위 모서리에도 표시됩니다.

중요

실험 실행을 준비하기 위한 준비는 10-15분이 걸립니다. 실행이 시작되면 각 반복에 대해 2-3분 더 소요됩니다.

프로덕션 환경에서는 시간이 더 걸릴 수 있습니다. 그러나 이 자습서에서는 다른 사용자가 실행하는 동안 실행이 완료되면 모델 탭에서 테스트된 알고리즘을 살펴보는 것이 좋습니다.

모델 살펴보기

모델 탭으로 이동하여 테스트한 알고리즘(모델)을 확인합니다. 기본적으로 모델은 완료되면 메트릭 점수를 기준으로 정렬됩니다. 이 자습서의 경우 선택한 AUC_weighted 메트릭에 따라 가장 높은 점수를 획득한 모델이 목록 맨 위에 표시됩니다.

모든 실험 모델이 완료될 때까지 기다리는 동안 완료된 모델의 알고리즘 이름을 선택하여 성능 세부 정보를 살펴봅니다.

다음에서는 세부 정보메트릭 탭으로 이동하여 선택한 모델의 속성, 메트릭 및 성능 차트를 확인합니다.

Run iteration detail

모델 설명

모델이 완료되기를 기다리는 동안 모델 설명을 살펴보고 특정 모델의 예측에 영향을 주는 데이터 기능(원시 또는 엔지니어링)을 확인할 수도 있습니다.

이러한 모델 설명은 요청 시 생성 될 수 있으며, 설명 (미리 보기) 탭의 일부인 모델 설명 대시보드에 요약 되어 있습니다.

모델 설명 생성

  1. 상단의 실행 1을 선택하여 모델 화면으로 이동합니다.

  2. 모델 탭을 선택합니다.

  3. 이 자습서에서는 첫 번째 MaxAbsScaler, LightGBM 모델을 선택합니다.

  4. 상단에 있는 모델 설명 단추를 선택합니다. 오른쪽에 모델 설명 창이 표시됩니다.

  5. 이전에 만든 automl-compute를 선택합니다. 이 컴퓨팅 클러스터는 모델 설명을 생성하기 위해 자식 실행을 시작합니다.

  6. 하단에서 만들기를 선택합니다. 화면 상단에 녹색 성공 메시지가 표시됩니다.

    참고

    설명 가능성 실행을 완료하는 데 약 2~5분이 소요됩니다.

  7. 설명(미리 보기) 단추를 선택합니다. 이 탭은 설명 가능성 실행이 완료되면 입력됩니다.

  8. 왼쪽에서 창을 확장하고 기능에서 원시가 표시된 행을 선택합니다.

  9. 오른쪽의 집계 기능 중요도 탭을 선택합니다. 이 차트에서는 선택한 모델의 예측에 영향을 미치는 데이터 기능을 보여줍니다.

    이 예시에서 기간이 이 모델의 예측에 가장 큰 영향을 미치는 듯합니다.

    Model explanation dashboard

최적의 모델 배포

자동화된 기계 학습 인터페이스를 사용하면 몇 단계 안에 최적 모델을 웹 서비스로 배포할 수 있습니다. 배포는 모델 통합이므로 새 데이터를 예측하고 잠재적인 기회 영역을 식별할 수 있습니다.

이 실험에서 웹 서비스에 배포한다는 것은 이제 금융 기관이 잠재적 정기 예금 고객을 식별할 수 있는 반복적이고 확장 가능한 솔루션을 확보했다는 것을 의미합니다.

실험 실행이 완료되었는지 확인합니다. 이렇게 하려면 화면 위쪽에서 실행 1 을 선택 하 여 부모 실행 페이지로 다시 이동 합니다. 완료 상태가 화면 왼쪽 위에 표시됩니다.

실험 실행이 완료되면 세부 정보 페이지가 최상의 모델 요약 섹션으로 채워집니다. AUC_weighted 메트릭에 따라 이 실험에서 가장 적합한 모델은 VotingEnsemble입니다.

이 모델을 배포할 것이며, 배포 시간이 약 20분 정도 걸립니다. 배포 프로세스에는 모델 등록, 리소스 생성, 웹 서비스에 대한 구성을 포함한 몇 가지 단계가 수반됩니다.

  1. VotingEnsemble을 선택하여 모델별 페이지를 엽니다.

  2. 왼쪽 위에서 배포 단추를 선택합니다.

  3. 다음과 같이 모델 배포 창을 채웁니다.

    필드
    배포 이름 my-automl-deploy
    배포 설명 첫 번째 자동화된 기계 학습 실험 배포
    컴퓨팅 형식 ACI(Azure Compute Instance) 선택
    인증 사용 사용 안 함
    사용자 지정 배포 사용 사용 안 함 기본 드라이버 파일(점수 매기기 스크립트) 및 환경 파일을 자동으로 생성할 수 있습니다.

    이 예제에서는 고급 메뉴에 제공된 기본값을 사용합니다.

  4. 배포를 선택합니다.

    녹색 성공 메시지가 실행 화면의 맨 위에 표시되고 모델 요약 창에는 상태 메시지가 배포 상태아래에 나타납니다. 주기적으로 새로 고침을 선택하여 배포 상태를 확인합니다.

이제 예측을 생성하는 운영 웹 서비스가 생겼습니다.

다음 단계로 이동하여 새 웹 서비스를 사용하는 방법을 자세히 알아보고 Power BI의 기본 제공 Azure Machine Learning 지원을 사용하여 예측을 테스트합니다.

리소스 정리

배포 파일은 데이터 및 실험 파일보다 크기 때문에 더 많은 저장 비용이 발생합니다. 작업 영역 및 실험 파일을 유지하려는 경우에는 배포 파일만 삭제하여 계정 비용을 최소화할 수 있습니다. 또는 어떤 파일도 사용할 계획이 없으면 전체 리소스 그룹을 삭제합니다.

배포 인스턴스 삭제

https://ml.azure.com/다른 자습서 및 탐색을 위해 리소스 그룹 및 작업 영역을 유지 하려는 경우에는 Azure Machine Learning에서 배포 인스턴스만 삭제 합니다.

  1. Azure Machine Learning으로 이동합니다. 작업 영역으로 이동 하 고 자산 창 아래의 왼쪽에서 끝점을 선택 합니다.

  2. 삭제하려는 배포를 선택하고 삭제를 선택합니다.

  3. 계속을 선택합니다.

리소스 그룹 삭제

중요

사용자가 만든 리소스는 다른 Azure Machine Learning 자습서 및 방법 문서의 필수 구성 요소로 사용할 수 있습니다.

사용자가 만든 리소스를 사용하지 않으려면 요금이 발생하지 않도록 해당 리소스를 삭제합니다.

  1. Azure Portal의 맨 왼쪽에서 리소스 그룹을 선택합니다.

  2. 목록에서 만든 리소스 그룹을 선택합니다.

  3. 리소스 그룹 삭제를 선택합니다.

    Screenshot of the selections to delete a resource group in the Azure portal.

  4. 리소스 그룹 이름을 입력합니다. 그런 다음, 삭제를 선택합니다.

다음 단계

이 자동화된 기계 학습 자습서에서는 Azure Machine Learning의 자동화된 ML 인터페이스를 사용하여 분류 모델을 만들고 배포했습니다. 자세한 내용과 다음 단계는 아래 문서를 참조하세요.

참고

이 은행 마케팅 데이터 세트는 Creative Commons(CCO: Public Domain) 라이선스에서 사용이 허가됩니다. 데이터베이스의 개별 콘텐츠에 대한 모든 권한은 데이터베이스 콘텐츠 라이선스를 따르며 Kaggle에서 사용할 수 있습니다. 이 데이터 세트는 원래 UCI Machine Learning 데이터베이스 내에 제공됩니다.

[Moro 외, 2014] S. Moro, P. Cortez 및 P. Rita. A Data-Driven Approach to Predict the Success of Bank Telemarketing. Decision Support Systems, Elsevier, 62:22-31, 2014년 6월.