Machine Learning Studio(클래식)에서 첫 번째 데이터 과학 실험 만들기
적용 대상: Machine Learning Studio(클래식) Azure Machine Learning
Important
Machine Learning Studio(클래식)에 대한 지원은 2024년 8월 31일에 종료됩니다. 해당 날짜까지 Azure Machine Learning으로 전환하는 것이 좋습니다.
2021년 12월 1일부터 새로운 Machine Learning Studio(클래식) 리소스를 만들 수 없습니다. 2024년 8월 31일까지는 기존 Machine Learning Studio(클래식) 리소스를 계속 사용할 수 있습니다.
- ML Studio(클래식)에서 Azure Machine Learning으로 기계 학습 프로젝트 이동에 대한 정보를 참조하세요.
- Azure Machine Learning에 대해 자세히 알아보세요.
ML Studio(클래식) 설명서는 사용 중지되며 나중에 업데이트되지 않을 수 있습니다.
이 문서에서는 기계 학습 스튜디오(클래식)에서 제작 및 기술 사양과 같은 다양한 변수를 기반으로 자동차 가격을 예측하는 기계 학습 실험을 만듭니다.
기계 학습을 새롭게 접하는 경우 초보자를 위한 비디오 시리즈 데이터 과학 일상적인 언어와 개념을 사용하는 기계 학습에 대한 훌륭한 소개입니다.
이 빠른 시작은 실험의 기본 워크플로를 따릅니다.
- 모델 만들기
- 모델 학습
- 모델 점수 매기기 및 테스트
데이터 가져오기
기계 학습에서 가장 먼저 필요한 것은 데이터입니다. 사용할 수 있는 Studio(클래식)에 포함된 몇 가지 샘플 데이터 세트가 있거나 여러 원본에서 데이터를 가져올 수 있습니다. 이 예제에서는 작업 영역에 포함되어 있는 샘플 데이터 세트, 즉 자동차 가격 데이터(원시)를 사용합니다. 이 데이터 세트에는 제조업체, 모델, 기술 사양 및 가격과 같은 정보를 포함하여 다양한 개별 자동차에 대한 항목이 포함됩니다.
팁
Azure AI 갤러리에서 다음 실험의 작업 복사본을 찾을 수 있습니다. 첫 번째 데이터 과학 실험 - 자동차 가격 예측으로 이동하고 Studio에서 열기를 클릭하여 실험의 복사본을 Machine Learning Studio(클래식) 작업 영역에 다운로드합니다.
데이터 세트를 실험에 가져오는 방법은 다음과 같습니다.
Machine Learning Studio(클래식) 창 아래쪽에서 +NEW를 클릭하여 새 실험을 만듭니다. 실험>빈 실험을 차례로 선택합니다.
실험에는 캔버스 맨 위에서 볼 수 있는 기본 이름이 지정됩니다. 이 텍스트를 선택하고 자동차 가격 예측과 같이 의미 있는 텍스트로 이름을 바꿉니다. 이름은 고유할 필요가 없습니다.
실험 캔버스의 왼쪽에는 데이터 세트 및 모듈의 색상표가 있습니다. 이 팔레트의 맨 위에 있는 검색 상자에 자동차를 입력하여 자동차 가격 데이터(원시)라는 레이블이 지정된 데이터 세트를 찾습니다. 이 데이터 세트를 실험 캔버스로 끕니다.
이 데이터의 모양을 확인하려면 자동차 데이터 세트 아래쪽의 출력 포트를 클릭한 다음 시각화를 선택합니다.
팁
데이터 세트 및 모듈에는 작은 원으로 표현되는 입력 및 출력 포트(위쪽의 입력 포트, 아래쪽의 출력 포트)가 있습니다. 실험을 통해 데이터 흐름을 만들려면 한 모듈의 출력 포트를 다른 모듈의 입력 포트에 연결합니다. 언제든지 데이터 세트 또는 모듈의 출력 포트를 클릭하여 데이터 흐름의 해당 지점에서 데이터가 어떻게 표시되는지 확인할 수 있습니다.
이 데이터 세트에서 각 행은 자동차를 나타내며 각 자동차와 연결된 변수는 열로 표시됩니다. 특정 자동차에 대한 변수를 사용하여 맨 오른쪽 열(열 26, "가격")의 가격을 예측합니다.
오른쪽 위 모서리에 있는 "x"를 클릭하여 시각화 창을 닫습니다.
데이터 준비
데이터 세트는 일반적으로 전처리를 거쳐야 분석할 수 있습니다. 여러 행의 열에 누락된 값이 있는 것을 볼 수 있습니다. 모델이 데이터를 올바르게 분석할 수 있도록 이러한 누락된 값을 정리해야 합니다. 누락된 값이 있는 모든 행이 제거됩니다. 또한 정규화된 손실 열에는 누락 값의 비율이 크므로 모델에서 해당 열을 모두 제외합니다.
팁
입력 데이터에서 누락된 값을 정리하는 것은 대부분의 모듈을 사용하기 위한 필수 구성 요소입니다.
먼저 정규화된 손실 열을 완전히 제거하는 모듈을 추가합니다. 그런 다음 누락된 데이터가 있는 행을 제거하는 다른 모듈을 추가합니다.
모듈 팔레트의 맨 위에 있는 검색 상자에 선택 열을 입력하여 데이터 세트 모듈에서 열 선택을 찾습니다. 그런 다음, 실험 캔버스로 끌어서 놓습니다. 이 모듈을 사용하면 모델에서 포함하거나 제외할 데이터 열을 선택할 수 있습니다.
자동차 가격 데이터(원시) 데이터 세트의 출력 포트를 데이터 세트의 열 선택 입력 포트에 연결합니다.
데이터 세트 모듈에서 열 선택 모듈을 클릭하고 속성 창에서 열 선택기 시작을 클릭합니다.
왼쪽에서 [규칙 사용]을 클릭합니다 .
[시작]에서 [모든 열]을 클릭합니다. 이러한 규칙은 데이터 세트의 열 선택을 통해 모든 열을 전달하도록 지시합니다(제외하려는 열을 제외).
드롭다운에서 제외 및 열 이름을 선택한 다음 텍스트 상자 내부를 클릭합니다. 열 목록이 표시됩니다. normalized-losses를 선택하면 텍스트 상자에 추가됩니다.
확인 표시(OK) 단추(오른쪽 아래)를 클릭하여 열 선택기를 닫습니다.
이제 데이터 세트에서 열 선택의 속성 창은 nomalized-losses를 제외한 데이터 세트의 모든 열을 통과한다는 것을 나타냅니다.
팁
모듈을 두 번 클릭하고 텍스트를 입력하여 모듈에 주석을 추가할 수 있습니다. 이렇게 하면 모듈이 실험에서 수행하는 작업을 한눈에 볼 수 있습니다. 이 경우 데이터 세트에서 열 선택 모듈을 두 번 클릭하고 "정규화된 손실 제외"라는 주석을 입력합니다.
누락 데이터 정리 모듈을 실험 캔버스로 끌어 놓고 데이터 세트에서 열 선택 모듈과 연결합니다. [속성] 창에서 [정리] 모드에서 [전체 행 제거]를 선택합니다. 이러한 옵션은 누락된 값이 있는 행을 제거하여 누락된 데이터 정리를 지시합니다. 모듈을 두 번 클릭하고 "누락된 값 행 제거"라는 주석을 입력합니다.
페이지 아래쪽의 실행을 클릭하여 실험을 실행합니다.
실험 실행이 완료되면 모든 모듈에 성공적으로 완료되었음을 나타내는 녹색 확인 표시가 있습니다. 오른쪽 위 모서리에서 완료된 실행 상태도 확인합니다.
팁
왜 지금 실험을 실행했나요? 실험을 실행하면 데이터에 대한 열 정의가 데이터 세트, 데이터 세트의 열 선택 모듈 및 누락된 데이터 정리 모듈을 통해 전달됩니다. 즉, 누락된 데이터 정리에 연결하는 모든 모듈에도 동일한 정보가 있습니다.
이제 깨끗한 데이터가 있습니다. 정리된 데이터 세트를 보려면 누락된 데이터 정리 모듈의 왼쪽 출력 포트를 클릭하고 시각화를 선택합니다. normalized-losses 열이 더 이상 포함되지 않으며, 누락된 값이 없습니다.
이제 데이터가 정리되었으므로 예측 모델에서 사용할 기능을 지정할 준비가 되었습니다.
기능 정의
기계 학습에서 기능은 관심 있는 항목에 대한 측정 가능한 개별 속성입니다. 여기서는 데이터 세트의 각 행이 하나의 자동차를 나타내고 각 열은 해당 자동차의 기능입니다.
예측 모델을 만들기 위한 좋은 기능 집합을 찾으려면 해결하려는 문제에 대한 실험과 지식이 필요합니다. 일부 기능은 다른 기능에 비해 대상 예측에 더 유용합니다. 일부 기능은 다른 기능과 강력한 상관 관계가 있으며 제거할 수 있습니다. 예를 들어 city-mpg 및 highway-mpg는 밀접하게 관련되어 있으므로 예측에 큰 영향을 주지 않고 하나를 유지하고 다른 mpg를 제거할 수 있습니다.
데이터 세트의 기능 하위 집합을 사용하는 모델을 빌드해 보겠습니다. 나중에 돌아와서 다른 기능을 선택하고, 실험을 다시 실행하고, 더 나은 결과를 얻을 수 있는지 확인할 수 있습니다. 하지만 시작하려면 다음 기능을 시도해 보겠습니다.
만들기, 본문 스타일, 휠 기반, 엔진 크기, 마력, 최대 rpm, 고속도로-mpg, 가격
다른 데이터 세트에서 열 선택 모듈을 실험 캔버스에 끌어 놓습니다. 데이터 세트 모듈에서 열 선택 모듈의 입력에 누락된 데이터 정리 모듈의 왼쪽 출력 포트를 연결합니다.
모듈을 두 번 클릭하고 "예측을 위한 기능 선택"을 입력합니다.
속성 창에서 열 시작 선택기를 클릭합니다.
규칙을 클릭합니다.
[시작]에서 [열 없음]을 클릭합니다. 필터 행에서 포함 및 열 이름을 선택하고 텍스트 상자에서 열 이름 목록을 선택합니다. 이 필터는 지정한 열을 제외한 모든 열(기능)을 통과하지 않도록 모듈에 지시합니다.
확인 표시(확인) 단추를 클릭합니다.
이 모듈은 다음 단계에서 사용할 학습 알고리즘에 전달하려는 기능만 포함하도록 필터링된 데이터 세트를 생성합니다. 나중에 다른 기능 선택으로 돌아가서 다시 시도할 수 있습니다.
알고리즘 선택 및 적용
이제 데이터가 준비되었으므로 예측 모델 생성은 학습 및 테스트로 구성됩니다. 데이터를 사용하여 모델을 학습한 다음, 모델을 테스트하여 가격을 얼마나 가깝게 예측할 수 있는지 확인합니다.
분류 및 회귀 는 감독되는 기계 학습 알고리즘의 두 가지 유형입니다. 분류는 색(빨강, 파랑 또는 녹색)과 같은 정의된 범주 집합에서 답변을 예측합니다. 회귀는 숫자를 예측하는 데 사용됩니다.
숫자인 가격을 예측하려고 하므로 회귀 알고리즘을 사용합니다. 이 예제에서는 선형 회귀 모델을 사용합니다.
가격을 포함하는 데이터 집합을 제공하여 모델을 학습합니다. 이 모델은 데이터를 검색하고 자동차의 기능과 해당 가격 간의 상관 관계를 찾습니다. 그런 다음 모델 테스트합니다. 익숙한 자동차 기능 집합을 제공하고 모델이 얼마나 근접하게 알려진 가격을 예측하는지 확인합니다.
데이터를 별도의 학습 및 테스트 데이터 세트로 분할하여 모델을 학습시키고 테스트하는 데 모두 데이터를 사용합니다.
데이터 분할 모듈을 클릭하여 선택합니다. 첫 번째 출력 데이터 세트(캔버스 오른쪽의 속성 창)에서 행의 분수를 찾아 0.75로 설정합니다. 이렇게 하면 데이터의 75%를 사용하여 모델을 학습시키고 테스트를 위해 25%를 유지합니다.
팁
임의 시드 매개 변수를 변경하여 학습 및 테스트를 위한 다양한 무작위 샘플을 생성할 수 있습니다. 이 매개 변수는 난수 발생기의 시드를 제어합니다.
실행 합니다. 실험이 실행 되면 데이터 세트 의 열 선택 및 데이터 분할 모듈은 다음에 추가할 모듈에 열 정의를 전달합니다.
학습 알고리즘을 선택하려면 모듈 팔레트에서 캔버스 왼쪽에 있는 Machine Learning 범주를 확장한 다음 모델 초기화를 확장합니다. 기계 학습 알고리즘을 초기화하는 데 사용할 수 있는 여러 범주의 모듈이 표시됩니다. 이 예제의 경우 회귀 범주 아래 선형 회귀 모듈을 선택하고 실험 캔버스로 끌어 놓습니다. (색상표 검색 상자에 "선형 회귀"를 입력하여 모듈을 찾을 수도 있습니다.)
모델 학습 모듈을 찾아 실험 캔버스로 끌어옵니다. 선형 회귀 모듈의 출력을 모델 학습 모듈의 왼쪽 입력에 연결하고 데이터 분할 모듈의 학습 데이터 출력(왼쪽 포트)을 모델 학습 모듈의 오른쪽 입력에 연결합니다.
모델 학습 모듈을 선택하고 속성 창에서 열 선택기 시작을 클릭한 다음 가격 열을 선택합니다. 가격은 모델이 예측할 값입니다.
사용 가능한 열 목록에서 선택한 열 목록으로 이동하여 열 선택기에서 가격 열을 선택합니다.
실행 합니다.
이제 가격 예측을 위해 새 자동차 데이터의 점수를 매기는 데 사용할 수 있는 학습된 회귀 모델이 있습니다.
새 자동차 가격 예측
이제 데이터의 75%를 사용하여 모델을 학습했으므로 이 모델을 사용하여 데이터의 나머지 25%를 채점하여 모델이 얼마나 잘 작동하는지 확인할 수 있습니다.
모델 점수 매기기 모듈을 찾아 실험 캔버스로 끌어 놓습니다. 모델 학습 모듈의 출력을 모델 점수 매기기의 왼쪽 입력 포트에 연결합니다. 데이터 분할 모듈의 테스트 데이터 출력(오른쪽 포트)을 모델 점수 매기기의 오른쪽 입력 포트에 연결합니다.
모델 점수 매기기의 출력 포트를 클릭하여 실험을 실행하고 모델 점수 매기기 모듈의 출력을 보고 시각화를 선택합니다. 출력은 가격에 대해 예측된 값과 테스트 데이터의 알려진 값을 보여줍니다.
마지막으로 결과의 품질을 테스트합니다. 모델 평가 모듈을 선택하고 실험 캔버스로 끌어서 모델 점수 매기기 모듈의 출력을 모델 평가의 왼쪽 입력에 연결합니다. 최종 실험은 다음과 같이 표시됩니다.
실행 합니다.
모델 평가 모듈의 출력을 보려면 출력 포트를 클릭한 다음, 시각화를 선택합니다.
모델에 대한 다음 통계가 표시됩니다.
- Mean Absolute Error ): 절대 평균 오차입니다( error 는 예측 값과 실제 값 사이의 차이).
- RMSE(제곱 평균 오차): 테스트 데이터 세트에 대해 예측한 평균 제곱 오차의 제곱근입니다.
- Relative Absolute Error: 실제 값과 모든 실제 값 평균 사이의 절대값 차에 대해 상대적인 절대 오차의 평균입니다.
- Relative Squared Error: 실제 값과 모든 실제 값 평균 사이의 제곱 차에 대해 상대적인 평균 제곱 오차입니다.
- 결정 계수: R 제곱 값이라고도 하는 이 메트릭은 모델이 데이터에 얼마나 잘 맞는지 나타내는 통계 메트릭입니다.
각 오차 통계는 작을수록 좋습니다. 값이 작을수록 예측이 실제 값과 더 근접하게 일치함을 나타냅니다. 결정 계수의 경우 값이 1(1.0)에 가까울수록 예측이 향상됩니다.
리소스 정리
이 문서를 사용하여 만든 리소스가 더 이상 필요하지 않은 경우 요금이 발생하지 않도록 삭제합니다. 문서에서 제품 내 사용자 데이터 내보내기 및 삭제 방법을 알아봅니다.
다음 단계
이 빠른 시작에서는 샘플 데이터 세트를 사용하여 간단한 실험을 만들었습니다. 모델을 만들고 배포하는 프로세스를 자세히 살펴보려면 예측 솔루션 자습서를 계속 진행하세요.