의사 결정 포리스트 회귀
중요
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(클래식) 설명서는 사용 중지되며 나중에 업데이트되지 않을 수 있습니다.
의사 결정 포리스트 알고리즘을 사용하여 회귀 모델 만들기
범주: 모델 초기화 - 회귀
모듈 개요
이 문서에서는 Machine Learning Studio(클래식)에서 의사 결정 포리스트 회귀 모듈을 사용하여 의사 결정 트리의 앙상블을 기반으로 회귀 모델을 만드는 방법을 설명합니다.
모델을 구성한 후에는 레이블이 지정된 데이터 세트와 모델 학습 모듈을 사용하여 모델을 학습시켜야 합니다. 그러면 학습된 모델을 예측에 사용할 수 있습니다. 또는 레이블이 지정된 데이터 집합에 대한 교차 유효성 검사를 위해 학습되지 않은 모델을 교차 유효성 검사 모델에 전달할 수 있습니다.
회귀 작업에서 의사 결정 포리스트가 작동하는 방식
의사 결정 트리는 리프 노드(의사 결정)에 도달할 때까지 이진 트리 데이터 구조를 트래버스하며 각 인스턴스에 대해 일련의 간단한 테스트를 수행하는 비파라메트릭 모델입니다.
의사 결정 트리를 사용하는 경우의 이점은 다음과 같습니다.
학습 및 예측 중에 계산과 메모리 사용량 측면에서 모두 효율적입니다.
비선형 의사 결정 경계를 표시할 수 있습니다.
통합 기능 선택 및 분류를 수행하며 불필요한 데이터가 많은 기능이 있는 경우 복원이 가능합니다.
이 회귀 모델은 의사 결정 트리의 앙상블로 구성되어 있습니다. 의사 결정 포리스트의 각 트리는 예측으로 가우스 분포를 출력합니다. 모델의 모든 트리에 대한 결합 분포에 가장 가까운 가우스 분포를 찾기 위해 트리 앙상블에 대해 집계가 수행됩니다.
이 알고리즘 및 구현에 대한 이론적 프레임워크에 대한 자세한 내용은 다음 문서를 참조하세요. 의사 결정 포리스트: 분류, 회귀, 밀도 예측, 매니폴드 Learning 및 Semi-Supervised Learning
의사 결정 포리스트 회귀 모델을 구성하는 방법
의사 결정 포리스트 회귀 모듈을 실험에 추가합니다. Studio(클래식)의 Machine Learning, 모델 초기화 및 회귀에서 모듈을 찾을 수 있습니다.
모듈 속성을 열고 다시 만들기 방법에 대해 개별 트리를 만드는 데 사용되는 방법을 선택합니다. 모음 만들기 또는 복제 중에서 선택할 수 있습니다.
모음 만들기: 모음 만들기는 부트스트랩 집계라고도 합니다. 의사 결정 포리스트의 각 트리는 예측을 통해 가우스 분포를 출력합니다. 집계는 처음 두 순간이 개별 나무에 의해 반환 된 모든 가우스를 결합하여 주어진 가우스의 혼합물의 순간과 일치하는 가우시안을 찾는 것입니다.
자세한 내용은 부트스트랩 집계에 대한 Wikipedia 항목을 참조하세요.
복제: 복제에서 각 트리는 정확히 동일한 입력 데이터에 대해 학습됩니다. 각 트리 노드에 사용되는 분할 조건자의 결정은 무작위로 유지되며 트리는 다양합니다.
복제 옵션을 사용한 학습 과정에 대한 자세한 내용은 Computer Vision 및 의료 이미지 분석을 위한 의사 결정 포리스트. Criminisi 및 J. Shotton. Springer 2013.을 참조하세요.
트레이너 모드 만들기 옵션을 설정하여 모델을 학습시킬 방법을 지정합니다.
단일 매개 변수입니다.
모델을 어떻게 구성할지 아는 경우 특정 값 집합을 인수로 제공할 수 있습니다. 실험을 통해 이러한 값을 알았거나 지침으로 받았을 수 있습니다.
매개 변수 범위
최상의 매개 변수를 잘 모르는 경우 여러 값을 지정하고 매개 변수 스윕을 사용하여 최적의 구성을 찾아 최적의 매개 변수를 찾을 수 있습니다.
모델 튜닝 하이퍼 매개 변수 는 제공된 설정의 가능한 모든 조합을 반복하고 최적의 결과를 생성하는 설정의 조합을 결정합니다.
의사 결정 트리 수는 앙상블에서 생성할 총 의사 결정 트리 수를 나타냅니다. 추가 의사 결정 트리를 만들면 적용 범위가 확대될 수 있지만 학습 시간이 증가됩니다.
팁
또한 이 값은 학습된 모델을 시각화할 때 표시되는 트리 수를 제어합니다. 단일 트리를 보거나 인쇄하려면 값을 1로 설정할 수 있습니다. 그러나 이는 하나의 트리만 생성되고(초기 매개 변수 집합이 있는 트리) 더 이상 반복이 수행되지 않음을 의미합니다.
의사 결정 트리의 최대 깊이의 경우 모든 의사 결정 트리의 최대 깊이를 제한하는 숫자를 입력합니다. 트리의 수준을 늘리면 정밀도는 높아질 수 있지만 학습 시간이 더 길어지고 과잉 맞춤이 발생할 수 있습니다.
노드당 임의 분할 수에 트리의 각 노드를 작성할 때 사용할 분할 수를 입력합니다. 분할은 트리(노드)의 각 수준에 있는 기능이 무작위로 분할됨을 의미합니다.
리프 노드당 최소 샘플 수는 트리에서 터미널 노드(리프)를 만드는 데 필요한 최소 케이스 수를 나타냅니다.
이 값을 늘려 새 규칙을 작성하기 위한 임계값을 늘립니다. 예를 들어, 기본값이 1이면 단일 사례만으로도 새 규칙을 하나 작성할 수 있습니다. 값을 5로 늘리면 학습 데이터에 동일한 조건을 만족하는 사례가 다섯 개 이상 있어야 합니다.
범주 기능에 대해 알 수 없는 값 허용 옵션을 선택하여 학습 또는 유효성 검사 세트에 알 수 없는 값에 대한 그룹을 만듭니다.
선택을 취소하면 모델에서 학습 데이터에 포함된 값만 수락할 수 있습니다. 이 옵션을 선택한 경우 알려진 값에 대한 모델의 정확도가 떨어질 수 있지만, 새로운(알 수 없는) 값의 예측 정확도를 높일 수 있습니다.
레이블이 지정된 데이터 세트를 커넥트 두 개 이하의 결과를 포함하는 단일 레이블 열을 선택하고 모델 학습 또는 모델 튜닝 하이퍼 매개 변수를 연결합니다.
트레이너 모드 만들기 옵션을 단일 매개 변수로 설정한 경우 모델 학습 모듈을 사용하여 모델을 학습시킵니다.
트레이너 모드 만들기 옵션을 매개 변수 범위로 설정한 경우 모델 하이퍼 매개 변수 조정을 사용하여 모델을 학습시킵니다.
실험을 실행합니다.
결과
학습 완료 후 다음이 수행됩니다.
각 반복에서 만든 트리를 보려면 학습 모듈의 출력을 마우스 오른쪽 단추로 클릭하고 시각화를 선택합니다.
각 노드에 대한 규칙을 보려면 각 트리를 클릭하고 분할로 드릴다운합니다.
학습된 모델의 스냅샷을 저장하려면 학습 모듈의 출력을 마우스 오른쪽 단추 로 클릭하고 학습된 모델로 저장을 선택합니다. 이 모델 복사본은 실험의 연속 실행에서 업데이트되지 않습니다.
예
회귀 모델의 예는 Cortana Intelligence 갤러리에서 다음 샘플 실험을 참조하세요.
회귀 모델 비교 샘플: 여러 종류의 회귀 모델을 대조합니다.
감정 분석 샘플: 여러 가지 회귀 모델을 사용하여 예측 등급을 생성합니다.
기술 정보
이 섹션에는 구현 세부 정보, 팁, 자주 묻는 질문에 대한 답변이 포함되어 있습니다.
모델 학습에 매개 변수 범위를 전달하면 매개 변수 범위 목록의 첫 번째 값만 사용됩니다.
단일 매개 변수 값 집합을 모델 하이퍼 매개 변수 조정 모듈에 전달하는 경우 각 매개 변수에 대한 설정 범위가 예상되는 경우 값을 무시하고 학습자의 기본값을 사용합니다.
매개 변수 범위 옵션을 선택하고 매개 변수에 대해 단일 값을 입력하면 다른 매개 변수가 값 범위에서 변경되더라도 지정한 단일 값이 스윕 전체에서 사용됩니다.
사용 팁
데이터가 제한되거나 모델을 학습시키는 데 소요되는 시간을 최소화하려면 다음 설정을 사용해 보세요.
제한된 학습 집합. 학습 집합의 인스턴스 수가 제한되는 경우 다음을 수행합니다.
더 많은 수의 의사 결정 트리(예: 20개 이상)를 사용하여 의사 결정 포리스트를 만듭니다.
다시 만들기에 모음 만들기 옵션을 사용합니다.
노드당 더 많은 수의 임의 분할(예: 1000개 이상)을 지정합니다.
제한된 학습 시간. 학습 집합에 인스턴스 수가 많으며 학습 시간이 제한되는 경우 다음을 수행합니다.
더 적은 수의 의사 결정 트리(예: 5-10개)를 사용하여 의사 결정 포리스트를 만듭니다.
다시 만들기에 복제 옵션을 사용합니다.
노드당 더 적은 수의 임의 분할(예: 100개)을 지정합니다.
모듈 매개 변수
Name | 범위 | Type | 기본값 | 설명 |
---|---|---|---|---|
다시 만들기 방법 | any | ResamplingMethod | 모음 만들기 | 다시 만들기 방법을 선택합니다. |
의사 결정 트리의 수 | >=1 | 정수 | 8 | 앙상블에서 만들 의사 결정 트리의 수를 지정합니다. |
의사 결정 트리의 최대 수준 | >=1 | 정수 | 32 | 앙상블에서 만들 수 있는 의사 결정 트리의 최대 수준을 지정합니다. |
노드당 임의 분할의 수 | >=1 | 정수 | 128 | 노드당 생성되는 분할의 수를 지정합니다. 이러한 분할에서 최적의 분할이 선택됩니다. |
리프 노드당 최소 샘플 수 | >=1 | 정수 | 1 | 리프 노드를 생성하는 데 필요한 학습 샘플의 최소 수를 지정합니다. |
범주 기능에서 알 수 없는 값 허용 | any | 부울 | true | 기존 범주 기능의 알 수 없는 값을 새 추가 기능에 매핑할 수 있는지 여부를 나타냅니다. |
출력
Name | 유형 | 설명 |
---|---|---|
학습되지 않은 모델 | ILearner 인터페이스 | 학습되지 않은 회귀 모델입니다. |