비선형분류모델링 의사결정나무 Decision Tree
교사학습패러다임 Plant 관측 계측 FDC + 계측치
교사학습패러다임 Plant 관측 계측 FDC + 계측치 학습 모델 ƒ Data (x, y)
교사학습패러다임 Plant 관측 계측 FDC χ FDC + 계측치 학습 모델 ƒ Data (x, y) 계측치 ; ˆy 예측
교사학습패러다임 Plant Data 관측 계측 FDC χ FDC + 계측치 학습 모델 ƒ Data (x, y) 검증 계측치 ; ˆy 예측
모델의현업배치, 모니터링및재학습 모델 χ ƒ ŷ
모델의현업배치, 모니터링및재학습 χ 모델 ƒ ŷ ŷ y =? 모니터링 ( 사후평가 )
모델의현업배치, 모니터링및재학습 yes χ 모델 ƒ ŷ ŷ y =? 모니터링 ( 사후평가 ) No 재학습 New Data
분류 일종의회귀분석 y 값이연속이아닌범주 0/1, 불량 / 정상, 이탈 / 잔류 y 값을 확률 또는 스코어 로바꾸면?
Prediction = Classification 종속변수 (y) 를독립변수 (x) 들의함수 (f) 로적합, 즉데이터 {(x,y)} 로부터 y = f ( x ) 의 f 를찾는다 회귀분석, 신경회로망, 사례기반추론, 의사결정나무 예 : y 무엇을예측할수있는가? 소비자가마케팅켐페인에반응할확률 => 반응여부 휴대폰고객이향후 6 개월내에이탈할확률 => 이탈여부 와인의품질 => 품질등급 반도체웨이퍼의수율 => 수율등급 선박건조기간 => 기간등급
Prediction Y 가결정이된후에는 무엇으로 y 를예측하려고하는가? 즉, x??? X 는독립변수또는 예측변수 predictive variable X 선택기준 Y 와의정확한함수관계를알고있다. Y 와의정확한함수관계는모르지만, 영향을준다는걸 100% 확실 Y 와의정확한함수관계는모르지만, 영향을줄수있는가능성이있다.
Predictive Analytics A new fancy name of Supervised data mining, or Regression and Classification Find a mapping/function f such that y = f(x) given data set D = {(x,y)} Regression when y is continuous Classification when y is categorical/binary
Predictive Analytics Regression Multiple Linear Regression k-nn Decision Tree Regression Neural Networks Classification Logistic Linear Regression, Discriminant Analysis k-nn, Naïve Bayese Decision Tree Classifier Neural Networks SVM
의사결정나무 Decision Tree
15
앞세가지 tree 의차이는? 데이트코스 ; 전문가의 지식 을바탕으로구축 구매여부 : 데이터로부터자동으로구축 생산기간 : 데이터로부터자동으로구축
의사결정나무 ( 의사결정이론 )
Trees and Rules Goal: Classify or predict an outcome based on a set of predictors The output is a set of rules Example: Goal: classify a record as will accept credit card offer or will not accept Rule might be IF (Income > 92.5) AND (Education < 1.5) AND (Family <= 2.5) THEN Class = 0 (nonacceptor) Also called CART, Decision Trees, or just Trees Rules are represented by tree diagrams
핵심아이디어 재귀적분할 : 반복적으로레코드를두개의파트로나눔. 따라서최대의동질성을얻음 가지치기 : 과적합을피하기위해지엽적가치를침으로써나무를간결화
재귀적분할
재귀적분할단계 예측변수중하나, x i 선택 x i 의값, 말하자면 s i 를선택, 학습데이터를두개의부분으로나눔 ( 반드시같은필요는없음 ) 그결과로나온부분들이각각얼마나 순수 한가또는동질적인가축정 순수 = 대개하나의클래스레코드들을포함 알고리즘은최초분할에서순수성을최대화하기위해 x i 와 s i 의다양한값들을시도 최대순수성 분할을얻은후에, 2 번째분할과정반복등등
예 : 승차식잔디깎기 목표 : 승차식잔디깎기를소유하거나소유하지않은 24 개의가정분류 예측변수 = 수입, 주택대지크기
Income Lot_Size Ownership 60.0 18.4 owner 85.5 16.8 owner 64.8 21.6 owner 61.5 20.8 owner 87.0 23.6 owner 110.1 19.2 owner 108.0 17.6 owner 82.8 22.4 owner 69.0 20.0 owner 93.0 20.8 owner 51.0 22.0 owner 81.0 20.0 owner 75.0 19.6 non-owner 52.8 20.8 non-owner 64.8 17.2 non-owner 43.2 20.4 non-owner 84.0 17.6 non-owner 49.2 17.6 non-owner 59.4 16.0 non-owner 66.0 18.4 non-owner 47.4 16.4 non-owner 33.0 18.8 non-owner 51.0 14.0 non-owner 63.0 14.8 non-owner
어떻게분할하나 하나의변수, 말하자면주택대지크기에따라레코드정렬 연속적값사이의중심점찾기 E.g. 첫중심점은 14.4 (14.0 과 14.8 사이의가운데 ) 레코드를 lotsize > 14.4 과 lotsize < 14.4 으로분할 분할평가후다음것시도, 즉 15.4 (14.8 과 16.0 사이의가운데 )
Note: 범주적변수 범주가분할될수있는모든가능한방법조사 E.g., 범주 A, B, C 는 3 가지방식으로분할될수있음 {A} and {B, C} {B} and {A, C} {C} and {A, B} 많은범주에서, 분할수는거대해짐 XLMiner는오직이항범주형변수만제공
첫번째분할 : Lot Size = 19,000
두번째분할 : Income = $84,000
모든분할후
불순도측정
데이터 집합 X 에두종류의원소가있다. 이집합의불순도는얼마인가? 예 : 바둑알흰색과검정색 X = {B, B, B, B, W, W, W, W} 불순도가높은가? Y = {B, B, W, W, W, W, W, W} 불순도가높은가? Z = {W, W, W, W, W, W, W, W} 불순도가높은가? Z = {B, B, B, B, B, B, B, B} 불순도가높은가? X = {B, W} 불순도가높은가? 불순도를측정하는방법?
지니지수 M 개의레코드를지닌직사각형 A 에대한지니지수 I(A) = 1 - p = 클래스 k 에속하는직사각형 A 에서의케이스비율 I(A) = 0 모든케이스가같은클래스에속할때 모든클래스가똑같이표현될때최댓값 (= 0.50, 이항케이스에서 ) Note: XLMiner uses a variant called delta splitting rule
엔트로피 p = 클래스 k 에속하는직사각형 A 에서 (m 으로부터나오는 ) 케이스비율 엔트로피는 0( 가장순수 ) 과 log 2 (m) ( 클래스가똑같이표현 ) 사이에분포
불순도와재귀적분할 전반적불순도측도의얻는다 ( 개개직사각형의가중평균 ). 각각의연속적단계에서, 이측도를전체변수에서모든가능한분할을가로질러비교한다. 불순도가가장축소하는분할을고른다. 고른분할점은나무의노드가된다.
첫번째분할 나무
세번째분할후나무
나무구조 분할점은나무에서노드가된다 ( 중앙에분할값을갖는원 ) 직사각형은 잎 을나타낸다 ( 종료점, 더이상분할없음, 측정된분류값 ) 노드사이의선의개수는케이스의수를지시한다. 규칙을파생하는나무를읽는다. E.g., If lot size < 19, and if income > 84.75, then class = owner
잎노드라벨결정 각각의잎노드라벨은그안의레코드들의 투표, 그리고기준값에의해결정된다. 각각의잎노드내의레코드들은학습데이터에서온다. 기본기준값 =0.5 은잎노드의라벨이다수클래스라는것을의미한다. 기준값 = 0.75: 대다수 75% 또는 1 노드로라벨붙이는잎에서 1 레코드이상을요구한다.
모든분할후나무
과적합문제
나무의성장을멈춤 과정의자연적종결은각각의잎에서 100% 순수성이다. 이것은데이터를과적합하는데, 이는데이터에서소음의적합으로끝난다. 과적합은새로운데이터의예측정확성을낮춘다. 어떤지점을지나, 검증데이터의오분류율이증가하기시작한다.
완전성장한나무의오분류율
CHAID CART 보다오래된 CHAID 는나무의성장을제한하는카이제곱통계법을사용한다. 분할은순도의증가가통계적으로유의미하지않을때멈춘다.
가지치기 CART 은나무의성장을최대한까지이르게한다, 그러고난후에는가지치기를한다. 아이디어는검증오류가나타나기시작하는지점을찾는것이다. 잎을가지치기함으로써연속적으로더작은나무들을생성한다. 각가지치기단계에서, 다중나무가가능하다. 그단계에서최적의나무를고르기위해비용복잡성을이용한다.
비용복잡성 CC(T) = Err(T) + α L(T) CC(T) = 나무의비용복잡성 Err(T) = 오분류된레코드의비율 α = 나무사이즈에부착된벌점요인 ( 사용자책정 ) 주어진크기의나무중에서비용복잡성이가장낮은것을고른다. 각각의나무사이즈에대해이를행한다.
가지치기에검증오류사용 가지치기과정은일련의다양한크기의나무와그에관련된오분류율을산출한다. 관련된두개의나무 :. 최소오류나무 검증데이터에서가장낮은오분류율을갖는다 최적의가지치기된나무최소오차의표준오차내에서가장작은나무간결성 / 간명성을더한다.
가지치기된나무의오분류율
UP Sell 적용사례
우량고객 30 만가운데 4,887 명플래티넘카드사용자 나머지 295,123 명비사용자가운데누구를타켓팅할것인가?
기존플래티넘사용자와유사한구매행태를보이는고객이가능성이높을것 Upselling 을위한타겟마케팅 HOW? 의사결정나무 IF THEN rule
특급호텔 11 만원이상 & 항공사이용 787 명 (Platinum 93.1%) 골프장 48 만원이상 & 일식 10 만원이상 & 항공사이용안함 151 명 (Platinum 92.7%) 골프장 7 만원이상 & 일식 24 만원미만 & 특급호텔 11 만원미만 & 항공사이용 90 명 (Platinum 93.3%)
Sales bidding 적용사례
호선의생산기간예측
호선의생산기간예측 - 선박영업단계에서는주문선박 Spec 이자세히결정되지않으나, 대략적인생산기간예측이필요함 - 생산기간을결정하는예측요인에대한규명이필요함 호선별생산기간은감소추세이나 2008 년이후전반적인생산기간증가추세임 특정선종의경우제작이후생산기간이꾸준히감소하는경향이있음 ( L 선종 ) 56
호선의생산기간예측 57
회귀나무
예측을위한회귀나무 연속적결과변수를사용 절차는분류나무와유사 분할이많이시도됨, 불손도를최소화하는것을선택
CT 와의차이 예측은직사각형에서수치형타깃변수의평균으로계산된 (CT 에서는다수결투표 ) 불순도는잎평균의제곱편차의합으로측정된다. 성능은 RMSE ( 근의평균제곱오류 ) 로측정된다.
나무의장점 사용하고이해하기에용이 해석하고시행하기에쉬운규칙생성 변수선택과축소가자동 통계적모델가정을요구하지않음 실측데이터를광범위하게다루지않고도작업가능
단점 수평적또는수직적분할에의해잘포착되지않는데이터에서의구조가있을때잘작동하지않음 한번에하나의변수를다루기때문에변수들사이의상관관계를포착할방법이없음
요약 분류나무와회귀나무는새로운레코드를예측하거나분류하는쉽고투명한방법이다. 나무는일련의규칙의그래프적표현이다. 나무는학습데이터의과적합을피하기위해가지치기를해야만한다. 나무가데이터구조에대한어떠한가정도갖지않기때문에, 보통다량의샘플이필요하다.