Azure Machine Learning 디자이너를 사용하여 모델 학습

Azure Machine Learning 디자이너는 워크플로를 정의할 수 있는 끌어서 놓기 인터페이스를 제공합니다. 모델을 학습하고 여러 알고리즘을 쉽게 테스트 및 비교하는 워크플로를 만들 수 있습니다.

이 연습에서는 디자이너를 사용하여 두 가지 분류 알고리즘을 신속하게 학습하고 비교합니다.

시작하기 전에

관리 수준 액세스 권한이 있는 Azure 구독이 필요합니다.

Azure Machine Learning 작업 영역 프로비저닝

Azure Machine Learning 작업 영역은 모델을 학습하고 관리하는 데 필요한 모든 리소스 및 자산을 관리하기 위한 중심지를 제공합니다.** 스튜디오, Python SDK, Azure CLI를 통해 Azure Machine Learning 작업 영역과 상호 작용할 수 있습니다.

Azure CLI를 사용하여 작업 영역과 필요한 리소스를 프로비전하는 셸 스크립트를 사용합니다. 다음으로 Azure Machine Learning 스튜디오의 디자이너를 사용하여 모델을 학습하고 비교합니다.

작업 영역 및 컴퓨팅 클러스터 만들기

Azure Machine Learning 작업 영역과 컴퓨팅 클러스터를 만들려면 Azure CLI를 사용합니다. 필요한 모든 명령은 실행할 수 있도록 셸 스크립트로 그룹화됩니다.

  1. 브라우저에서 https://portal.azure.com/에서 Azure Portal을 열고 Microsoft 계정으로 로그인합니다.
  2. 검색 상자 오른쪽 페이지 맨 위에 있는 [>_](Cloud Shell) 단추를 선택합니다. 그러면 포털 아래쪽에 Cloud Shell 창이 열립니다.
  3. 메시지가 표시되면 Bash를 선택합니다. Cloud Shell을 처음 열면 사용할 셸 유형(Bash 또는 PowerShell)을 선택하라는 메시지가 표시됩니다.**
  4. 올바른 구독이 지정되어 있고 필요한 스토리지 계정이 선택되어 있지 않은지 확인합니다. 적용을 선택합니다.
  5. 터미널에서 다음 명령을 입력하여 이 리포지토리를 복제합니다.

     rm -r azure-ml-labs -f
     git clone https://github.com/MicrosoftLearning/mslearn-azure-ml.git azure-ml-labs
    

    SHIFT + INSERT를 사용하여 복사한 코드를 Cloud Shell에 붙여넣습니다.

  6. 리포지토리가 복제된 후에는 다음 명령을 입력하여 이 랩의 폴더로 변경하고 포함된 setup.sh 스크립트를 실행합니다.

     cd azure-ml-labs/Labs/05
     ./setup.sh
    

    확장 기능이 설치되지 않았다는 오류 메시지는 무시합니다.

  7. 스크립트가 완료될 때까지 기다리세요. 일반적으로 약 5~10분이 걸립니다.

새 파이프라인 구성

작업 영역과 필요한 컴퓨팅 클러스터를 만든 경우 Azure Machine Learning 스튜디오를 열고 디자이너를 사용하여 학습 파이프라인을 만들 수 있습니다.

  1. Azure Portal에서 mlw-dp100-… 이라는 Azure Machine Learning 작업 영역으로 이동합니다.
  2. Azure Machine Learning 작업 영역을 선택하고 개요 페이지에서 스튜디오 시작을 선택합니다. Azure Machine Learning 스튜디오를 열 수 있는 또 다른 탭이 브라우저에 열립니다.
  3. 스튜디오에 나타나는 팝업을 모두 닫으세요.
  4. Azure Machine Learning 스튜디오 내에서 컴퓨팅 페이지로 이동하여 이전 섹션에서 만든 컴퓨팅 클러스터가 있는지 확인합니다. 클러스터는 유휴 상태여야 하며 실행 중인 노드가 0개 있어야 합니다.
  5. 디자이너 페이지로 이동합니다.
  6. 페이지 상단에서 사용자 지정 탭을 선택합니다.
  7. 사용자 지정 구성 요소를 사용하여 새로운 빈 파이프라인을 만듭니다.
  8. 오른쪽에 있는 연필 아이콘을 선택하여 기본 파이프라인 이름(Pipeline-Created-on-* date*)을 Train-Diabetes-Classifier로 변경합니다.

새 파이프라인 만들기

모델을 학습하려면 데이터가 필요합니다. 데이터 저장소에 저장된 모든 데이터를 사용하거나 공개적으로 액세스 가능한 URL을 사용할 수 있습니다.

  1. 왼쪽 메뉴에서 데이터 탭을 선택합니다.
  2. diabetes-folder 구성 요소를 캔버스에 끌어서 놓습니다.

    이제 데이터가 있으므로 작업 영역 내에 이미 존재하는 사용자 지정 구성 요소(설정 중에 만들어짐)를 통해 파이프라인을 만들어 계속할 수 있습니다.

  3. 왼쪽 메뉴에서 구성 요소 탭을 선택합니다.
  4. 빈 행 제거 구성 요소를 캔버스의 diabetes-folder 아래로 끌어서 놓습니다.
  5. 데이터의 출력을 새 구성 요소의 입력에 연결합니다.
  6. 숫자 열 정규화 구성 요소를 캔버스의 빈 행 제거 아래로 끌어서 놓습니다.
  7. 이전 구성 요소의 출력을 새 구성 요소의 입력에 연결합니다.
  8. 의사 결정 트리 분류자 모델 학습 구성 요소를 캔버스의 숫자 열 정규화 아래로 끌어서 놓습니다.
  9. 이전 구성 요소의 출력을 새 구성 요소의 입력에 연결합니다.
  10. 구성 및 제출을 선택하고 파이프라인 작업 설정 페이지에서 새 실험을 만들고 이름을 diabetes-designer-pipeline으로 지정한 후 다음을 선택합니다.
  11. 입력 및 출력에서 변경하지 않고 다음을 선택합니다.
  12. 런타임 설정에서 컴퓨팅 클러스터를 선택하고 Azure ML 컴퓨팅 클러스터 선택에서 aml-cluster를 선택합니다.
  13. 검토 + 제출을 선택한 다음 제출을 선택하여 파이프라인 실행을 시작합니다.
  14. 파이프라인 페이지로 이동하여 Train-Diabetes-Classifier 파이프라인을 선택하여 실행 상태를 확인할 수 있습니다.
  15. 모든 구성 요소가 성공적으로 완료될 때까지 기다립니다.

    작업을 제출하면 컴퓨팅 클러스터가 초기화됩니다. 지금까지 컴퓨팅 클러스터가 유휴 상태였으므로 클러스터 크기를 0개 이상의 노드로 조정하는 데 다소 시간이 걸릴 수 있습니다. 클러스터 크기가 조정되면 자동으로 파이프라인 실행이 시작됩니다.

각 구성 요소의 실행을 추적할 수 있습니다. 파이프라인이 실패하면 어떤 구성 요소가 실패했고 왜 실패했는지 탐색할 수 있습니다. 작업 개요의 출력 + 로그 탭에 오류 메시지가 표시됩니다.

비교할 두 번째 모델 학습

알고리즘을 비교하고 어느 것이 더 나은지 평가하기 위해 하나의 파이프라인 내에서 두 모델을 학습하고 비교할 수 있습니다.

  1. 디자이너로 돌아가서 Train-Diabetes-Classifier 파이프라인 초안을 선택합니다.
  2. 캔버스의 다른 학습 구성 요소 옆에 로지스틱 회귀 분류 모델 학습 구성 요소를 추가합니다.
  3. 숫자 열 정규화 구성 요소의 출력을 새 학습 구성 요소의 입력에 연결합니다.
  4. 상단에서 구성 및 제출을 선택합니다.
  5. 기본 사항 페이지에서 designer-compare-classification이라는 새 실험을 만들고 실행합니다.
  6. 검토 + 제출을 선택한 다음 제출을 선택하여 파이프라인 실행을 시작합니다.
  7. 파이프라인 페이지로 이동하고 designer-compare-classification 실험을 통해 Train-Diabetes-Classifier 파이프라인을 선택하여 실행 상태를 확인할 수 있습니다.
  8. 모든 구성 요소가 성공적으로 완료될 때까지 기다립니다.
  9. 작업 개요를 선택한 다음 메트릭 탭을 선택하여 두 학습 구성 요소에 대한 결과를 검토합니다.
  10. 어떤 모델이 더 나은 성능을 발휘하는지 시험해보고 결정해 보세요.

Azure 리소스 삭제

Azure Machine Learning 탐색을 마치면 지금까지 만든 리소스를 삭제하여 불필요한 Azure 비용을 방지해야 합니다.

  1. Azure Machine Learning 스튜디오 탭을 닫고 Azure Portal로 돌아갑니다.
  2. Azure Portal의 페이지에서 리소스 그룹을 선택합니다.
  3. rg-dp100-… 리소스 그룹을 선택합니다.
  4. 리소스 그룹의 개요 페이지에서 리소스 그룹 삭제를 선택합니다.
  5. 리소스 그룹 이름을 입력하여 삭제 의사를 확인한 다음 삭제를 선택합니다.