자습서 3: 신용 위험 모델 배포 - Machine Learning 스튜디오(클래식)

적용 대상:이는 이 문서가 Machine Learning 스튜디오(클래식)에 적용됨을 의미하는 확인 표시입니다.Machine Learning 스튜디오(클래식) 이는 이 문서가 Azure Machine Learning에 적용되지 않음을 의미하는 X입니다.Azure Machine Learning

중요

Machine Learning Studio(클래식)에 대한 지원은 2024년 8월 31일에 종료됩니다. 해당 날짜까지 Azure Machine Learning으로 전환하는 것이 좋습니다.

2021년 12월 1일부터 새로운 Machine Learning Studio(클래식) 리소스를 만들 수 없습니다. 2024년 8월 31일까지는 기존 Machine Learning Studio(클래식) 리소스를 계속 사용할 수 있습니다.

ML Studio(클래식) 설명서는 사용 중지되며 나중에 업데이트되지 않을 수 있습니다.

이 자습서에서는 예측 분석 솔루션을 개발하는 프로세스를 자세히 살펴봅니다. Machine Learning Studio(클래식)에서 간단한 모델을 개발합니다. 그런 다음, 모델을 Machine Learning 웹 서비스로 배포합니다. 이 배포된 모델은 새 데이터를 사용하여 예측을 수행할 수 있습니다. 이 자습서는 3부로 구성된 자습서 시리즈 중 제3부입니다.

신용대출 지원 시 애플리케이션에서 제공한 정보를 기반으로 개인의 신용 위험을 예측해야 한다고 가정합니다.

신용 위험 평가는 복잡한 문제이지만, 이 자습서에서는 약간 간소화하여 살펴보겠습니다. 이 신용 위험 평가는 Machine Learning Studio(클래식)를 사용하는 예측 분석 솔루션을 만드는 방법의 예로 사용합니다. 이 솔루션에는 Machine Learning Studio(클래식) 및 Machine Learning 웹 서비스가 사용됩니다.

이 3부로 구성된 자습서에서는 공개적으로 사용 가능한 신용 위험 데이터부터 시작합니다. 그런 다음, 예측 모델을 개발하고 학습합니다. 마지막으로 모델을 웹 서비스로 배포합니다.

이 자습서의 제1부에서는 Machine Learning Studio(클래식) 작업 영역을 만들고, 데이터를 업로드하고, 실험을 만들었습니다.

이 자습서의 제2부에서는 모델을 학습시키고 평가했습니다.

1부 자습서에서 수행하는 작업은 다음과 같습니다.

  • 배포 준비
  • 웹 서비스 배포
  • 웹 서비스 테스트
  • 웹 서비스 관리
  • 웹 서비스 액세스

필수 구성 요소

이 자습서의 제2부를 완료합니다.

배포 준비

여러분이 이 자습서에서 개발한 예측 모델을 다른 사용자가 사용할 수 있도록, 모델을 Azure에 웹 서비스로 배포할 수 있습니다.

지금까지는 모델을 학습하는 실험을 진행했습니다. 하지만 배포된 서비스는 더 이상 학습을 수행하지 않고 모델에 따라 사용자 입력의 점수를 매겨서 새 예측을 생성합니다. 그러므로 몇 가지 예측을 수행하여학습 실험을 예측 실험으로 변환하겠습니다.

배포 준비는 다음과 같은 3단계로 이루어진 프로세스입니다.

  1. 모델 중 하나 제거
  2. 만든 학습 실험예측 실험으로 변환
  3. 예측 실험을 웹 서비스로 배포

모델 중 하나 제거

먼저 이 실험을 약간 줄여야 합니다. 현재 실험에는 두 개의 다른 모델이 있지만, 웹 서비스로 배포할 때는 한 모델만 사용하려고 합니다.

향상된 트리 모델이 SVM 모델보다 우수한 것으로 확인되었다고 가정해 봅시다. 가장 먼저 수행할 작업은 2클래스 Support Vector Machine 모듈과 학습에 사용된 모듈을 제거하는 것입니다. 먼저 실험 캔버스 아래쪽에 있는 다른 이름으로 저장을 클릭하여 실험 복사본을 만들 수 있습니다.

다음 모듈을 삭제해야 합니다.

각 모듈을 선택하고 Delete 키를 누르거나 모듈을 마우스 오른쪽 단추로 클릭하고 삭제를 선택합니다.

지원 벡터 머신 모델을 제거하기 위해 삭제할 모듈 강조 표시

모델은 다음과 같이 표시됩니다.

지원 벡터 머신 모델이 삭제될 때의 결과 실험

이제 2클래스 향상된 의사 결정 트리를 사용하여 이 모듈을 배포할 준비가 되었습니다.

학습 실험에서 예측 실험으로 변환

이 모델을 배포하도록 준비하려면 이 학습 실험을 예측 실험으로 변환해야 합니다. 이는 세 가지 단계를 포함합니다.

  1. 학습한 모델을 저장한 후 학습 모듈 바꾸기
  2. 학습에만 필요한 모듈을 제거하여 실험 축소
  3. 웹 서비스에서 입력을 수락할 위치 및 출력을 생성할 위치 정의

이 작업을 수동으로 수행할 수 있지만, 다행히도 실험 캔버스의 맨 아래에 있는 웹 서비스 설정을 클릭하여 세 단계를 모두 수행할 수 있습니다(및 예측 웹 서비스 옵션 선택).

학습 실험을 예측 실험으로 변환할 때 발생하는 결과를 자세히 알아보려면 Machine Learning 스튜디오(클래식)에서 배포 모델을 준비하는 방법을 참조하세요.

웹 서비스 설정을 클릭하면 다음과 같은 결과가 발생합니다.

  • 학습한 모델이 단일 학습된 모델 모듈로 변환된 후 실험 캔버스 왼쪽의 모듈 팔레트에 저장됩니다(학습된 모델 아래에서 찾을 수 있음).
  • 다음을 비롯하여 학습에 사용된 모듈은 제거됩니다.
  • 저장된 학습된 모델이 실험에 다시 추가됩니다.
  • 웹 서비스 입력웹 서비스 출력 모듈이 추가됩니다(이러한 모듈은 사용자 데이터가 모델에 입력되는 위치, 반환된 데이터, 웹 서비스가 액세스되는 경우를 식별함).

참고

실험이 탭 아래에 두 부분으로 저장되고 실험 캔버스 위쪽에 추가되는 것을 볼 수 있습니다. 원래 학습 실험은 학습 실험 탭 아래에 표시되고, 새로 만든 예측 실험은 예측 실험 아래에 표시됩니다. 예측 실험은 웹 서비스로 배포됩니다.

이 특정 실험과 관련하여 한 가지 추가 단계를 수행해야 합니다. 두 개의 R 스크립트 실행 모듈을 추가하여 데이터에 가중치 기능을 제공했습니다. 이 모듈은 학습 및 테스트에만 필요하므로 최종 모델에서는 삭제할 수 있습니다. Machine Learning Studio(클래식)는 분할 모듈을 제거할 때 R 스크립트 실행 모듈을 하나 제거했습니다. 이제 다른 모듈을 제거하고 메타데이터 편집기채점 모델에 직접 연결할 수 있습니다.

이제 실험은 다음과 같이 표시됩니다.

학습된 모델 점수 매기기

참고

예측 실험에서 UCI 독일어 신용 카드 데이터의 데이터 세트를 남겨둔 이유가 궁금할 것입니다. 서비스에서는 원래 데이터 세트가 아니라 사용자 데이터를 사용하려고 하는데 모델에 원래 데이터 세트로 두는 이유는 무엇인가요?

서비스에 원래 신용 카드 데이터가 필요하지 않은 것은 사실입니다. 하지만 열 수 및 숫자인 열 같은 정보가 포함된 해당 데이터에 대한 스키마는 여전히 필요합니다. 이 스키마 정보는 사용자 데이터를 해석하기 위해 필요합니다. 서비스가 실행 중일 때 채점 모듈에 데이터 세트 스키마가 포함되도록 이러한 구성 요소를 연결된 상태로 유지합니다. 데이터는 사용되지 않고 스키마만 사용됩니다.

한 가지 알아두어야 할 중요한 사실은 원래 데이터 세트에 레이블이 포함되어 있다면 웹 입력의 올바른 스키마도 레이블이 있는 열을 기대하게 됩니다. 이 문제를 해결하는 방법은 레이블과 교육 데이터 세트에 있던 다른 데이터를 제거하는 것이지만, 웹 입력과 교육 데이터 세트를 일반 모듈에 연결하기 전에는 웹 입력에 없을 것입니다.

마지막으로 실험을 한 번 실행합니다(실행 클릭). 모델이 계속 작동 중인지 확인하려면 모델 점수 매기기 모듈의 출력을 클릭하고 결과 보기를 선택합니다. 원래 데이터가 신용 위험 값("점수를 매긴 레이블") 및 점수 매기기 확률 값("점수를 매긴 확률")과 함께 표시됩니다.

웹 서비스 배포

실험을 Azure Resource Manager에 기반하는 기존 웹 서비스 또는 새 웹 서비스로 배포할 수 있습니다.

기존 웹 서비스로 배포

실험에서 파생된 기존 웹 서비스를 배포하려면 캔버스에서 웹 서비스 배포를 클릭하고 웹 서비스 배포[기존] 를 선택합니다. Machine Learning Studio(클래식)에서 실험을 웹 서비스로 배포하고 웹 서비스에 대한 대시보드로 이동합니다. 이 페이지에서 실험으로 돌아가서(스냅샷 보기 또는 최신 항목 보기) 간단한 웹 서비스 테스트를 실행할 수 있습니다(아래 웹 서비스 테스트 참조). 여기에는 웹 서비스에 액세스할 수 있는 애플리케이션 만들기에 관한 정보도 있습니다(자세한 내용은 이 자습서의 다음 단계 참조).

웹 서비스 대시보드

구성 탭을 클릭하여 서비스를 구성할 수 있습니다. 여기서 서비스 이름(기본적으로 실험 이름이 지정됨)을 수정하고 설명을 제공할 수 있습니다. 입력 및 출력 데이터에 대해 더 친숙한 레이블을 제공할 수도 있습니다.

웹 서비스 구성

새 웹 서비스로 배포

참고

새 웹 서비스를 배포하려면 웹 서비스를 배포하는 구독에 충분한 권한이 있어야 합니다. 자세한 내용은 Machine Learning 웹 서비스 포털에서 웹 서비스 관리를 참조하세요.

실험에서 파생된 새 웹 서비스를 배포하려면:

  1. 캔버스 아래에서 웹 서비스 배포를 클릭하고 웹 서비스 배포[신규] 를 선택합니다. Machine Learning 스튜디오(클래식)를 통해 Machine Learning 웹 서비스 배포 실험 페이지로 이동합니다.

  2. 웹 서비스의 이름을 입력합니다.

  3. 가격 책정 계획의 경우 기존 가격 책정 계획을 선택하거나 "새로 만들기"를 선택하고 새 계획 이름을 지정한 후 월별 계획 옵션을 선택할 수 있습니다. 계획 계층이 기본적으로 기본 하위 지역에 대한 계획으로 설정되고 웹 서비스는 해당 하위 지역에 배포됩니다.

  4. 배포을 참조하십시오.

몇 분 후에 웹 서비스에 대한 빠른 시작 페이지가 열립니다.

구성 탭을 클릭하여 서비스를 구성할 수 있습니다. 여기에서 서비스를 수정하고 설명을 지정할 수 있습니다.

웹 서비스를 테스트하려면 테스트 탭을 클릭합니다(아래의 웹 서비스 테스트 참조). 웹 서비스에 액세스할 수 있는 애플리케이션 만들기에 대한 정보를 보려면 사용 탭을 클릭합니다(자세한 내용은 이 자습서의 다음 단계 참조).

웹 서비스를 배포하고 나서 업데이트할 수 있습니다. 예를 들어 모델을 변경하려면 학습 실험을 편집하고, 모델 매개 변수를 조정하고, 웹 서비스 배포를 클릭한 후 웹 서비스 배포[클래식] 또는 웹 서비스 배포[신규] 를 선택합니다. 실험을 다시 배포하면 이 실험이 웹 서비스를 대체하고 이제 업데이트된 모델을 사용합니다.

웹 서비스 테스트

웹 서비스에 액세스될 때 사용자 데이터는 웹 서비스 입력 모듈로 이동됩니다. 여기서 모델 점수 매기기 모듈로 전달되고 점수가 매겨집니다. 예측 실험을 설정했던 방법대로, 모델은 원래 신용 위험 데이터 세트와 동일한 형식의 데이터를 요구합니다. 결과가 웹 서비스로부터 웹 서비스 출력 모듈을 거쳐 사용자에게 반환됩니다.

예측 실험을 구성한 방법대로, 모델 점수 매기기 모듈의 전체 결과가 반환됩니다. 여기에는 모든 입력 데이터와 신용 위험 값 및 점수 매기기 확률이 포함됩니다. 하지만 원하는 경우 다른 것을 반환할 수 있습니다. 예를 들어 신용 위험 값만 반환할 수 있습니다. 이를 수행하려면 모델 점수 매기기웹 서비스 출력 사이에 열 선택 모듈을 삽입하여 웹 서비스에서 반환하지 않으려는 열을 제거합니다.

Machine Learning Studio(클래식) 또는 Azure Machine Learning 웹 서비스 포털에서 기존 웹 서비스를 테스트할 수 있습니다. Machine Learning 웹 서비스 포털에서만 새 웹 서비스를 테스트할 수 있습니다.

Machine Learning 웹 서비스 포털에서 테스트하는 경우 요청-응답 서비스를 테스트하는 데 사용할 수 있는 샘플 데이터가 포털에서 생성되도록 할 수 있습니다. 구성 페이지에서 샘플 데이터 사용 여부에 대해 "예"를 선택합니다. 테스트 페이지에서 요청-응답 탭을 열면 포털은 원래 신용 위험 데이터 세트에서 가져온 샘플 데이터를 채웁니다.

기존 웹 서비스 테스트

Machine Learning Studio(클래식) 또는 Machine Learning 웹 서비스 포털에서 기존 웹 서비스를 테스트할 수 있습니다.

Machine Learning Studio(클래식)에서 테스트

  1. 웹 서비스에 대한 대시보드 페이지에서 기본 엔드포인트테스트 단추를 클릭합니다. 서비스에 대한 입력 데이터를 요청하는 대화 상자가 나타납니다. 이는 원래 신용 위험 데이터 세트에 나타난 열과 같습니다.

  2. 데이터 집합을 입력하고 확인을 클릭합니다.

Machine Learning 웹 서비스 포털에서 테스트

  1. 웹 서비스에 대한 대시보드 페이지에서 기본 엔드포인트 아래의 테스트 미리 보기 링크를 클릭합니다. 웹 서비스 엔드포인트에 대한 Machine Learning 웹 서비스 포털의 테스트 페이지가 열리고 서비스에 사용할 입력 데이터를 요청합니다. 이는 원래 신용 위험 데이터 세트에 나타난 열과 같습니다.

  2. 요청-응답 테스트를 클릭합니다.

새 웹 서비스 테스트

Machine Learning 웹 서비스 포털에서만 새 웹 서비스를 테스트할 수 있습니다.

  1. Machine Learning 웹 서비스 포털에서 페이지의 맨 위에 있는 테스트를 클릭합니다. 테스트 페이지가 열리면 서비스에 대한 데이터를 입력할 수 있습니다. 표시된 입력 필드는 원래 신용 위험 데이터 세트에 나타난 열과 같습니다.

  2. 데이터 집합을 입력하고 요청-응답 테스트를 클릭합니다.

테스트의 결과는 출력 열에 있는 페이지의 오른쪽에 표시됩니다.

웹 서비스 관리

클래식 또는 신규의 웹 서비스를 배포한 후에는 Machine Learning 웹 서비스 포털에서 관리할 수 있습니다.

웹 서비스의 성능을 모니터링하려면 다음을 수행합니다.

  1. Machine Learning 웹 서비스 포털에 로그인합니다.
  2. 웹 서비스를 클릭합니다.
  3. 해당 웹 서비스를 클릭합니다.
  4. 대시보드를 클릭합니다.

웹 서비스 액세스

이 자습서의 이전 단계에서는 신용 위험 예측 모델을 사용하는 웹 서비스를 배포했습니다. 이제 사용자는 서비스에 데이터를 보내고 결과를 받을 수 있습니다.

웹 서비스는 다음 두 방법의 하나로 REST API를 사용하여 데이터를 받고 반환할 수 있는 Azure 웹 서비스입니다.

  • 요청/응답 - 사용자가 HTTP 프로토콜을 사용하여 하나 이상의 신용 데이터 행을 서비스에 보내고 서비스에서는 하나 이상의 결과 집합으로 응답합니다.
  • Batch 실행 - 사용자가 Azure Blob 신용 데이터 행 하나 이상을 저장한 다음 Blob 위치를 서비스에 보냅니다. 서비스에서는 입력 Blob의 모든 데이터 행에 대한 점수를 매기고 결과를 다른 Blob에 저장한 다음 해당 컨테이너의 URL을 반환합니다.

참고

Studio(클래식)의 기능 열 이름은 대/소문자를 구분합니다. 웹 서비스를 호출하기 위한 입력 데이터가 학습 데이터 세트와 동일한 열 이름을 갖는지 확인합니다.

웹 서비스 액세스 및 사용에 대한 자세한 내용은 웹앱 템플릿을 통해 Machine Learning 웹 서비스 사용을 참조하세요.

리소스 정리

이 문서를 사용하여 만든 리소스가 더 이상 필요 없는 경우 요금이 발생하지 않도록 해당 리소스를 삭제하세요. 자세한 방법은 제품 내 사용자 데이터 내보내기 및 삭제 문서를 참조하세요.

다음 단계

이 자습서에서는 다음과 같은 단계를 완료했습니다.

  • 배포 준비
  • 웹 서비스 배포
  • 웹 서비스 테스트
  • 웹 서비스 관리
  • 웹 서비스 액세스

또한 R, C# 및 Python 프로그래밍 언어에서 제공하는 시작 코드를 사용하여 웹 서비스에 액세스하는 사용자 지정 애플리케이션을 개발할 수도 있습니다.