다음을 통해 공유


Model Builder Azure 학습 리소스

다음은 모델 작성기를 사용하여 Azure에서 모델을 학습하는 데 사용되는 리소스에 대해 자세히 알아보는 데 도움이 되는 가이드입니다.

Azure Machine Learning 실험이란?

Azure Machine Learning 실험은 Azure에서 Model Builder 교육을 실행하기 전에 만들어야 하는 리소스입니다.

실험은 하나 이상의 기계 학습 학습 실행에 대한 구성 및 결과를 캡슐화합니다. 실험은 특정 작업 영역에 속합니다. 실험을 처음 만들면 해당 이름이 작업 영역에 등록됩니다. 동일한 실험 이름을 사용하는 경우 후속 실행은 동일한 실험의 일부로 기록됩니다. 그렇지 않으면 새 실험이 만들어집니다.

Azure Machine Learning 작업 영역이란?

작업 영역은 학습 실행의 일부로 만든 모든 Azure Machine Learning 리소스 및 아티팩트를 위한 중앙 위치를 제공하는 Azure Machine Learning 리소스입니다.

Azure Machine Learning 작업 영역을 만들려면 다음이 필요합니다.

  • 이름: 3~33자 사이의 작업 영역 이름입니다. 이름은 영숫자 문자와 하이픈만 포함할 수 있습니다.
  • 지역: 작업 영역 및 리소스가 배포되는 데이터 센터의 지리적 위치입니다. 사용자 또는 고객의 위치와 가까운 위치를 선택하는 것이 좋습니다.
  • 리소스 그룹: Azure 솔루션에 대한 모든 관련 리소스를 포함하는 컨테이너입니다.

Azure Machine Learning 컴퓨팅이란?

Azure Machine Learning 컴퓨팅은 학습에 사용되는 클라우드 기반 Linux VM입니다.

Azure Machine Learning 컴퓨팅을 만들려면 다음 값이 필요합니다.

  • 이름: 2-16자 사이의 컴퓨팅 이름입니다. 이름은 영숫자 문자와 하이픈만 포함할 수 있습니다.

  • 컴퓨팅 크기입니다.

    모델 작성기에서는 다음 GPU 최적화 컴퓨팅 유형 중 하나를 사용할 수 있습니다.

    크기 vCPU 메모리: GiB 임시 스토리지(SSD) GiB GPU GPU 메모리: GiB 최대 데이터 디스크 최대 NIC
    Standard_NC12 12 112 680 2 24 48 2
    Standard_NC24 24 224 1440 4 48 64 4

    GPU 최적화 컴퓨팅 유형에 대한 자세한 내용은 NC 시리즈 Linux VM 설명서 참조하세요.

  • 컴퓨팅 우선 순위입니다.

    • 낮은 우선 순위: 실행 시간이 짧은 작업에 적합합니다. 작업은 중단 및 가용성 부족으로 인해 영향을 받을 수 있습니다. 이 옵션은 일반적으로 Azure의 잉여 용량을 활용하기 때문에 비용이 적게 듭니다.
    • 전용: 모든 기간의 작업, 특히 장기 실행 작업에 적합합니다. 작업은 중단 또는 가용성 부족으로 영향을 받지 않습니다. 이 옵션은 일반적으로 작업에 대한 Azure의 전용 컴퓨팅 리소스 집합을 예약하기 때문에 더 많은 비용이 듭니다.

훈련

Azure에 대한 교육은 모델 작성기 이미지 분류 시나리오에만 사용할 수 있습니다. 이러한 모델을 학습시키는 데 사용되는 알고리즘은 ResNet50 아키텍처를 기반으로 하는 심층 신경망입니다. 학습 프로세스에는 다소 시간이 걸리며 선택한 컴퓨팅 크기와 데이터 양에 따라 시간이 달라질 수 있습니다. Visual Studio에서 "Azure Portal에서 현재 실행 모니터링" 링크를 선택하여 실행 진행률을 추적할 수 있습니다.

결과

학습이 완료되면 다음 접미사를 사용하여 두 개의 프로젝트가 솔루션에 추가됩니다.

  • ConsoleApp: 예측 파이프라인을 빌드하고 예측을 만드는 시작 코드를 제공하는 C# 콘솔 앱입니다.

  • 모델: 입력 및 출력 모델 데이터의 스키마와 다음 자산을 정의하는 데이터 모델을 포함하는 C# .NET Standard 앱입니다.

    • bestModel.onnx: ONNX(Open Neural Network Exchange) 형식의 직렬화된 모델 버전입니다. ONNX는 ML.NET, PyTorch 및 TensorFlow와 같은 프레임워크 간의 상호 운용성을 지원하는 AI 모델의 오픈 소스 형식입니다.
    • bestModelMap.json: 모델 출력을 텍스트 범주에 매핑하기 위해 예측을 수행할 때 사용되는 범주 목록입니다.
    • MLModel.zip: bestModel.onnx 직렬화된 버전의 모델을 사용하여 예측하고 파일을 사용하여 출력을 매핑하는 ML.NET 예측 파이프라인의 직렬화된 버전입니다.

기계 학습 모델 사용

Model 프로젝트의 ModelInputModelOutput 클래스는 모델의 예상 입력 및 출력 스키마를 각각 정의합니다.

이미지 분류 시나리오에서 ModelInput 두 개의 열을 포함합니다.

  • ImageSource: 이미지 위치의 문자열 경로입니다.
  • Label: 이미지가 속한 실제 범주입니다. Label 학습할 때만 입력으로 사용되며 예측을 할 때 제공할 필요가 없습니다.

ModelOutput 다음 두 개의 열을 포함합니다.

  • Prediction: 이미지의 예측 범주입니다.
  • Score: 모든 범주에 대한 확률 목록입니다(가장 높은 항목은 Prediction속).

문제 해결

컴퓨팅을 만들 수 없음

Azure Machine Learning 컴퓨팅을 만드는 동안 오류가 발생하면 컴퓨팅 리소스가 여전히 오류 상태일 수 있습니다. 동일한 이름으로 컴퓨팅 리소스를 다시 만들려고 하면 작업이 실패합니다. 이 오류를 해결하려면 다음 중 하나를 수행합니다.

  • 다른 이름으로 새 컴퓨팅 만들기
  • Azure Portal로 이동하여 원래 컴퓨팅 리소스를 제거합니다.