Microsoft 의사결정 트리 알고리즘

Microsoft 의사결정 트리 알고리즘은 불연속 특성 및 연속 특성 모두의 예측 모델링에 사용하기 위해 Microsoft SQL Server 2005 Analysis Services(SSAS)에서 제공하는 분류 및 회귀 알고리즘입니다.

불연속 특성의 경우 알고리즘은 데이터 집합 내 입력 열 간의 관계를 기반으로 예측합니다. 알고리즘은 해당 열의 값 또는 상태를 사용하여 예측 가능으로 지정한 열의 상태를 예측합니다. 특히 알고리즘은 예측 가능한 열과 상관 관계에 있는 입력 열을 식별합니다. 예를 들어 자전거를 구입할 가능성이 높은 고객을 예측하는 시나리오에서 청년층 고객의 경우 10명 중 9명이 자전거를 구입한 반면 중장년층 고객의 경우 10명 중 2명만이 자전거를 구입했다면 알고리즘은 자전거 구입에 있어 연령이 좋은 지표가 될 수 있음을 유추합니다. 의사결정 트리에서는 이러한 경향을 기반으로 특정 결과를 예측합니다.

연속 특성의 경우 알고리즘은 선형 회귀를 사용하여 의사결정 트리의 분할 위치를 결정합니다.

둘 이상의 열을 예측 가능으로 설정한 경우 또는 입력 데이터에 예측 가능으로 설정된 중첩 테이블이 포함된 경우 알고리즘은 각 예측 가능한 열에 대해 별도의 의사결정 트리를 작성합니다.

Adventure Works Cycle사의 마케팅 부서에서 이전 고객이 제품을 또다시 구입할지 여부를 나타낼 수 있는 고객의 특성을 식별하려고 합니다. Adventure Works 데이터베이스에는 이전 고객에 대한 인구 통계 정보가 저장되어 있습니다. Microsoft 의사결정 트리 알고리즘을 사용하여 이러한 정보를 분석하면 마케팅 부서에서는 인구 통계적 패턴 및 과거 구매 패턴과 같이 해당 고객에 대해 알려진 열의 상태를 기반으로 특정 고객의 제품 구매 여부를 예측하는 모델을 작성할 수 있습니다.

알고리즘 작동 방법

Microsoft 의사결정 트리 알고리즘은 트리에 노드라고도 하는 분할 집합을 만들어 데이터 마이닝 모델을 작성합니다. 알고리즘은 예측 가능한 열과 깊은 상관 관계에 있는 입력 열을 발견할 때마다 모델에 노드를 추가합니다. 알고리즘이 분할을 결정하는 방법은 예측하는 열이 연속 열인지, 아니면 불연속 열인지에 따라 달라집니다. Microsoft 의사결정 트리 알고리즘의 예측 가능한 불연속 열 작업 방법에 대한 자세한 내용은 Scalable Classification over SQL DatabasesLearning Bayesian Networks:를 참조하십시오. Microsoft 의사결정 트리 알고리즘의 예측 가능한 연속 열 작업 방법에 대한 자세한 내용은 Autoregressive Tree Models for Time-Series Analysis의 부록을 참조하십시오.

불연속 열 예측

Microsoft 의사결정 트리 알고리즘이 예측 가능한 불연속 열에 대한 트리를 작성하는 방법은 히스토그램을 사용하여 설명할 수 있습니다. 다음 다이어그램에서는 입력 열인 Age에 대해 예측 가능한 열인 Bike Buyer를 표시하는 히스토그램을 보여 줍니다. 이 히스토그램에서는 고객의 연령으로 고객이 자전거를 구입할지 여부를 구분할 수 있음을 보여 줍니다.

Microsoft 의사결정 트리 알고리즘의 히스토그램

다이어그램에 표시된 상관 관계로 인해 Microsoft 의사결정 트리 알고리즘은 모델에 새 노드를 만듭니다.

의사결정 트리 노드

알고리즘이 모델에 새 노드를 추가함에 따라 트리 구조가 형성됩니다. 트리의 최상위 노드는 전체 고객 모집단에 대한 예측 가능한 열의 분석에 대해 설명합니다. 모델이 커짐에 따라 알고리즘은 모든 열을 고려하게 됩니다.

연속 열 예측

Microsoft 의사결정 트리 알고리즘이 예측 가능한 연속 열을 기반으로 트리를 작성하는 경우 각 노드에는 회귀 수식이 포함됩니다. 분할은 회귀 수식의 비선형점에서 발생합니다. 예를 들어 다음 다이어그램을 참조하십시오.

비선형성을 보여 주는 다중 회귀선

이 다이어그램에는 단일선을 사용하거나 두 개의 연결된 선을 사용하여 모델링할 수 있는 데이터가 포함되어 있습니다. 단일선은 데이터를 제대로 나타내지 못하는 반면 두 선을 사용하면 모델에서 데이터를 보다 잘 나타낼 수 있습니다. 두 선이 만나는 점이 비선형점이며 이 점에서 의사결정 트리 모델의 노드가 분할됩니다. 예를 들어 이전 그래프에서 비선형점에 해당하는 노드를 다음 다이어그램으로 나타낼 수 있습니다. 두 수식은 두 선의 회귀 수식을 나타냅니다.

비선형점을 나타내는 수식

알고리즘 사용

의사결정 트리 모델은 하나의 키 열, 여러 개의 입력 열 및 하나의 예측 가능한 열을 포함해야 합니다.

Microsoft 의사결정 트리 알고리즘은 다음 표에 나열된 특정 입력 열 내용 유형, 예측 가능한 열 내용 유형 및 모델링 플래그를 지원합니다.

입력 열 내용 유형

Continuous, Cyclical, Discrete, Discretized, Key, Table 및 Ordered

예측 가능한 열 내용 유형

Continuous, Cyclical, Discrete, Discretized, Table 및 Ordered

모델링 플래그

MODEL_EXISTENCE_ONLY, NOT NULL 및 REGRESSOR

모든 Microsoft 알고리즘은 공통 함수 집합을 지원합니다. 그러나 Microsoft 의사결정 트리 알고리즘은 다음 표에 나열된 함수를 추가로 지원합니다.

IsDescendant

PredictNodeId

IsInNode

PredictProbability

PredictAdjustedProbability

PredictStdev

PredictAssociation

PredictSupport

PredictHistogram

PredictVariance

모든 Microsoft 알고리즘에 공통된 함수 목록은 데이터 마이닝 알고리즘을 참조하십시오. 이러한 함수 사용 방법은 DMX(데이터 마이닝 확장) 함수 참조를 참조하십시오.

Microsoft 의사결정 트리 알고리즘에서는 PMML(Predictive Model Markup Language)을 사용하여 마이닝 모델을 만들 수 있습니다.

Microsoft 의사결정 트리 알고리즘은 결과 마이닝 모델의 성능 및 정확도에 영향을 주는 여러 매개 변수를 지원합니다. 다음 표에서는 각 매개 변수를 설명합니다.

매개 변수 설명

MAXIMUM_INPUT_ATTRIBUTES

기능 선택을 호출하기 전에 알고리즘이 처리할 수 있는 입력 특성 수를 정의합니다. 이 값을 0으로 설정하면 기능 선택이 해제됩니다.

기본값은 255입니다.

MAXIMUM_OUTPUT_ATTRIBUTES

기능 선택을 호출하기 전에 알고리즘이 처리할 수 있는 출력 특성 수를 정의합니다. 이 값을 0으로 설정하면 기능 선택이 해제됩니다.

기본값은 255입니다.

SCORE_METHOD

분할 점수를 계산하는 데 사용되는 메서드를 결정합니다. 사용 가능한 옵션에는 Entropy (1), Bayesian with K2 Prior (2) 또는 Bayesian Dirichlet Equivalent (BDE) Prior (3)이 있습니다.

기본값은 3입니다.

SPLIT_METHOD

노드를 분할하는 데 사용되는 메서드를 결정합니다. 사용 가능한 옵션에는 Binary (1), Complete (2) 또는 Both (3)이 있습니다.

기본값은 3입니다.

MINIMUM_SUPPORT

의사결정 트리에서 분할을 생성하는 데 필요한 최소 리프 사례 수를 결정합니다.

기본값은 10입니다.

COMPLEXITY_PENALTY

의사결정 트리의 증가를 제어합니다. 낮은 값을 지정하면 분할 수가 증가되고 높은 값을 지정하면 분할 수가 감소됩니다. 기본값은 다음 목록에 설명된 것과 같이 특정 모델의 특성 수에 따라 달라집니다.

  • 특성 수가 1에서 9 사이인 경우 기본값은 0.5입니다.
  • 특성 수가 10에서 99 사이인 경우 기본값은 0.9입니다.
  • 특성 수가 100 이상인 경우 기본값은 0.99입니다.

FORCED_REGRESSOR

알고리즘에서 계산한 열의 중요도에 관계없이 알고리즘에서 표시된 열을 회귀자로 사용하도록 합니다. 이 매개 변수는 연속 특성을 예측하는 의사결정 트리에 대해서만 사용됩니다.

참고 항목

개념

데이터 마이닝 알고리즘
데이터 마이닝 마법사
데이터 마이닝에서 기능 선택
Microsoft 트리 뷰어를 사용하여 마이닝 모델 보기

관련 자료

CREATE MINING MODEL(DMX)

도움말 및 정보

SQL Server 2005 지원 받기