선형예측모델링 회귀분석 Multiple Linear Regression
보르도와인 1 년 6 개월 Robert Parker 6 개월
와인의품질은? Prof Orley Ashenfelter Bordeaux farmer 와인의품질 = 포도의품질 = 온도, 햇빛, 강수량
와인의품질예측가능? Prediction 으로품질예측시도 X: 1952~1980 사이의 30 년간의보르도지방기후데이터 ( 월별온도, 햇빛, 강수량 ) vs Y: 당해보르도와인평균가격 ( 품질 ) 혹시, Y = f (X) 인 f 를찾을수있을까? 찾을수있다면, x 로 y 예측가능!!!
와인의품질예측가능!!! 품질 = 12.145 + 0.00117 * 전년도겨울강수량 + 0.06140 * 당해년도평균기온 - 0.00386 * 수확기강수량 품질및가격예측가능 또한, 예측시점이매년가을수확직후로전문가테이스팅 6 개월전으로앞당겨짐 ( 와인선물 )
반도체공정품질관리
반도체공정품질관리 한 Lot 에포함된 25 개의웨이퍼들중하나의웨이퍼에대해서만계측정보를추출하기때문에계측정보의활용도가떨어짐. 모든웨이퍼에대한계측정보수집은비효율적이며고비용발생. 7 DataMining Laboratory, SNU
교사학습 Supervised Learning Plant Condition Result x vs y Training Data (x, y)
교사학습패러다임 Plant Condition Result x vs y Learn Model ƒ Training Data (x, y)
교사학습패러다임 Plant Condition Result x x vs y Learn Model ƒ Inference Training Data (x, y) y*
교사학습패러다임 Plant Condition Result Validation Data (x,y) x x vs y Learn Model ƒ Inference Training Data (x, y) Check if y* = y y*
모델의현업배치, 모니터링및재학습 모델 χ ƒ ŷ
모델의현업배치, 모니터링및재학습 χ 모델 ƒ ŷ ŷ y =? 모니터링 ( 사후평가 )
모델의현업배치, 모니터링및재학습 yes χ 모델 ƒ ŷ ŷ y =? 모니터링 ( 사후평가 ) No 재학습 New Data
Prediction 종속변수 (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
Topics Explanatory vs. predictive modeling with regression Example: prices of Toyota Corollas Fitting a predictive model Assessing predictive accuracy Selecting a subset of predictors
선형 회귀분석 vs 비선형 y = f(x) 에서 f 는계수들의선형식 예 : 품질 = 12.145 + 0.00117 * 전년도겨울강수량 + 0.06140 * 당해년도평균기온 - 0.00386 * 수확기강수량 Q) x 대신 x^2, x^3, log x 등사용가능? Q) 선형식이아닌다른 f 는? 비선형?
데이터로부터모델의계수추정 수식 f 의계수값을데이터세트 D = { ( 기후변수값들, 품질값 )} 이용하여찾는과정 12.145, 0.00117, 0.0614, -0.00386 품질 = 12.145 + 0.00117 * 전년도겨울강수량 + 0.06140 * 당해년도평균기온 - 0.00386 * 수확기강수량 어떻게찾아내는가? Ordinary Least square => matrix inversion
설명모델 목표 : 예측변수들 ( 설명적변수들 ) 과타깃사이의관계설명 데이터분석에서회귀분석을사용하는데많이쓰임 모델목표 : 데이터를잘적합하고모델에대한설명적변수들의기여를이해 적합도검증 : R 2, 잔차분석, p-values
예측모델 목표 : 예측변수값은있지만, 타깃값은없는경우다른데이터에서타깃값을예측 전통적데이터마이닝맥락 모델목표 : 예측정확성최적화 학습데이터에서학습모델 검증 ( 홀드아웃 ) 데이터에서성능평가 예측변수의설명역할을주요한목적이아님 ( 유용하긴함 )
예 : 도요타코롤라중고차가격 ToyotaCorolla.xls 목표 : 사양에따라도요타코롤라중고차의가격예측 데이터 : 사양정보에따른, 도요타코롤라중고차 1,442 대의가격
데이터샘플 ( 분석에사용되는변수만나옴 ) Price Age KM Fuel_Type HP Metallic Automatic cc Doors Quarterly_Tax Weight 13500 23 46986 Diesel 90 1 0 2000 3 210 1165 13750 23 72937 Diesel 90 1 0 2000 3 210 1165 13950 24 41711 Diesel 90 1 0 2000 3 210 1165 14950 26 48000 Diesel 90 0 0 2000 3 210 1165 13750 30 38500 Diesel 90 0 0 2000 3 210 1170 12950 32 61000 Diesel 90 0 0 2000 3 210 1170 16900 27 94612 Diesel 90 1 0 2000 3 210 1245 18600 30 75889 Diesel 90 1 0 2000 3 210 1245 21500 27 19700 Petrol 192 0 0 1800 3 100 1185 12950 23 71138 Diesel 69 0 0 1900 3 185 1105 20950 25 31461 Petrol 192 0 0 1800 3 100 1185
사용된변수들 판매가격 (Euros) 내용연수 (2004년 8월현재 ) 연비 (kilometers) 연료유형 (diesel, petrol, CNG) 마력 (horsepower) 금속색상 (1=yes, 0=no) 자동변속 (1=yes, 0=no) 실린더부피 (cylinder volume) 자동차문의개수분기별도로사용세 (road tax) 무게 (kg)
전처리 연료유형은범주형, 반드시이항변수로전환되어야함 Diesel (1=yes, 0=no) CNG (1=yes, 0=no) None needed for Petrol (reference category)
학습분할을위해선택된레코드들의하위집합 ( 제한된변수의수만보임 ) Id Model Price Age_08_04 Mfg_Month Mfg_Year KM Fuel_Type_Di Fuel_Type_Pe esel trol 1ERRA 2/3-Doors 13500 23 10 2002 46986 1 0 4ERRA 2/3-Doors 14950 26 7 2002 48000 1 0 5 SOL 2/3-Doors 13750 30 3 2002 38500 1 0 6 SOL 2/3-Doors 12950 32 1 2002 61000 1 0 9VVT I 2/3-Doors 21500 27 6 2002 19700 0 1 10ERRA 2/3-Doors 12950 23 10 2002 71138 1 0 12 BNS 2/3-Doors 19950 22 11 2002 43610 0 1 17PORT 2/3-Doors 22750 30 3 2002 34000 0 1 60% 학습데이터 / 40% 검증데이터
적합된회귀분석모델 Input variables Constant term Age_08_04 KM Fuel_Type_Diesel Fuel_Type_Petrol HP Met_Color Automatic cc Doors Quarterly_Tax Weight Coefficient Std. Error p-value SS -3608.418457 1458.620728 0.0137 97276410000-123.8319168 3.367589 0 8033339000-0.017482 0.00175105 0 251574500 210.9862518 474.9978333 0.6571036 6212673 2522.066895 463.6594238 0.00000008 4594.9375 20.71352959 4.67398977 0.00001152 330138600-50.48505402 97.85591125 0.60614568 596053.75 178.1519013 212.0528565 0.40124047 19223190 0.01385481 0.09319961 0.88188446 1272449 20.02487946 51.0899086 0.69526076 39265060 16.7742424 2.09381151 0 160667200 15.41666317 1.40446579 0 214696000
예측성능평가
예측오류측정 적합도검증 과같지않음 모델이얼마나잘새로운데이터를예측하는가를알고자함. 그것이훈련되는데이터에얼마나잘맞는가를알고자함이아님 대부분척도의핵심성분은실제 y 와예측 y ( 오류 ) 사이의차이
몇몇오류척도들 MAE or MAD: 평균절대오류 ( 편차 ) 오류의크기를제공 평균오류예측을넘기는지미달되는지를표시 MAPE: 평균절대백분율오류 y-y /y * 100 y 는실제값, y 는모델예측값 정답대비몇 % 나틀리는가? RMSE ( 근의평균제곱오류 ): 오류를제곱, 평균을찾은후, 제곱근 총 SSE: 제곱오류의총합
다른에러측정치 (y 실제값, y 예측값 ) 의 plot y = y 선상에존재하는데이터는잔차 = 0 이고, 그선과멀리존재하는데이터는잔차값이큼 시각적으로이해하기용이함
예측오류를위한향상차트 분류를위한향상차트와유사, 다만 Y 축은, 응답 의누적도수대신, 수치형타깃변수 (e.g., 수익 ) 의누적값
향상차트예 지출
오류보고 Training Data scoring - Summary Report Total sum of squared errors RMS Error Average Error 1514553377 1325.527246-0.000426154 Validation Data scoring - Summary Report Total sum of squared errors RMS Error Average Error 1021587500 1334.079894 116.3728779
예측값 예측가격은회귀분석계수를사용해계산 Predicted Value Actual Value Residual 15863.86944 13750-2113.869439 16285.93045 13950-2335.930454 16222.95248 16900 677.047525 16178.77221 18600 2421.227789 19276.03039 20950 1673.969611 19263.30349 19600 336.6965066 18630.46904 21500 2869.530964 18312.04498 22500 4187.955022 19126.94064 22000 2873.059357 16808.77828 16950 141.2217206 15885.80362 16950 1064.196384 15873.97887 16250 376.0211263 15601.22471 15750 148.7752903 15476.63164 15950 473.3683568 15544.83584 14950-594.835836 15562.25552 14750-812.2555172 15222.12869 16750 1527.871313 17782.33234 19000 1217.667664 잔차 = 실제가격과예측가격사이의차이
잔차의분포 대칭분포 몇몇이상치
예측변수의부분집합선택 목표 : 간명한모델찾기 ( 충분히잘작동할가장간단한모델 ) 좀더탄탄 예측정확성이높음
예측변수의부분집합선택 William of Ockham (c. 1285 1349), an influential nominalism philosopher monk, said It is futile to do with more things that which can be done with fewer. Occam s Razor: a principle that generally recommends selecting the competing hypothesis that makes the fewest new assumptions, when they both sufficiently explain available data.
예측변수의부분집합선택 전역탐색 Computationally expensive, 비현실적 부분탐색알고리즘 전방선택 후방제거 단계적선택
전역탐색 예측변수들의모든가능한하위집합평가 ( 하나, 쌍, 삼중항등 ) 계산적으로집중됨 adjusted R 2 로판단 2 R adj = 1 n n 1 (1 p 1 R 2 ) 예측변수의수에대한벌점
전방선택 Forward Selection 예측변수없이시작 예측변수를하나씩추가 ( 가장크게기여하는변수추가 ) 추가가통계적으로무의미해질때중단
후방제거 Backward Elimination 모든예측변수로시작 가장무용한예측변수를하나씩연속적으로제거 남아있는모든예측변수들이통계적으로중요한기여를할때중단
단계적 Stepwise 전방선택과같음 다만각단계에서중요하지않은예측변수들을버리는것도고려
후방제거 ( 마지막 7 개모델만보임 ) 1 2 3 4 5 6 7 8 Constant Age_08_04 * * * * * * Constant Age_08_04 Weight * * * * * Constant Age_08_04 KM Weight * * * * Constant Age_08_04 KMuel_Type_Petrol Weight * * * Constant Age_08_04 KMuel_Type_Petrol Quarterly_Tax Weight * * Constant Age_08_04 KMuel_Type_Petrol HP Quarterly_Tax Weight * Constant Age_08_04 KMuel_Type_Petrol HP Automatic Quarterly_Tax Weight 맨위모델은하나의예측변수를가짐 (Age_08_04) 두번째모델은두개의예측변수를가짐등등
12 개모델전부
12 개모델을위한진단 좋은모델은다음을갖는다 : 높은 adj-r 2, Cp = # 예측변수
Mallow s C_p (P=# of variables)
다음단계 부분집합선택방법은후보모델들에게 좋은모델 이될기회를준다. 최고의 모델이정말가장좋다는것을보증하지는않는다. 또한, 최고의 모델은여전히불충분한예측정확성을가질수있다. 반드시후보들을실행하고예측정확성을평가해야한다 ( choose subset 클릭 ).
6 개의예측변수만을가진모델 The Regression Model Input variables Constant term Age_08_04 KM Fuel_Type_Petrol HP Quarterly_Tax Weight Coefficient Std. Error p-value SS -3874.492188 1415.003052 0.00640071 97276411904-123.4366303 3.33806777 0 8033339392-0.01749926 0.00173714 0 251574528 2409.154297 319.5795288 0 5049567 19.70204735 4.22180223 0.00000394 291336576 16.88731384 2.08484554 0 192390864 15.91809368 1.26474357 0 281026176 Training Data scoring - Summary Report 모델적합 Total sum of squared errors RMS Error Average Error 1516825972 1326.521353-0.000143957 예측성능 (12 개의예측모델을비교하라!) Validation Data scoring - Summary Report Total sum of squared errors RMS Error Average Error 1021510219 1334.029433 118.4483556
Danger of Fitting
Anscomb s Quartet I II III IV x y x y x y x y 10.0 8.04 10.0 9.14 10.0 7.46 8.0 6.58 8.0 6.95 8.0 8.14 8.0 6.77 8.0 5.76 13.0 7.58 13.0 8.74 13.0 12.74 8.0 7.71 9.0 8.81 9.0 8.77 9.0 7.11 8.0 8.84 11.0 8.33 11.0 9.26 11.0 7.81 8.0 8.47 14.0 9.96 14.0 8.10 14.0 8.84 8.0 7.04 6.0 7.24 6.0 6.13 6.0 6.08 8.0 5.25 4.0 4.26 4.0 3.10 4.0 5.39 19.0 12.50 12.0 10.84 12.0 9.13 12.0 8.15 8.0 5.56 7.0 4.82 7.0 7.26 7.0 6.42 8.0 7.91 5.0 5.68 5.0 4.74 5.0 5.73 8.0 6.89
Anscomb s Quartet Mean of x : 9 Variance of x : 10 Mean of y: 7.5 Variance of y : 3.75 Correlation between x and y : 0.816 Linear Regression line: y = 3.0 + 0.5 x
Anscomb s Quartet
Anscomb s Quartet okay
Anscomb s Quartet clearly quadratic, 0.816 meaningless
Anscomb s Quartet a clear linear relation but with a slightly different slope. But an outlier incorrects it.
Anscomb s Quartet clearly no linear relation, but one outlier makes it
요약 선형회귀분석모델은설명모델뿐만아니라예측모델에서도매우유명한도구다. 좋은예측모델은높은예측정확도를갖는다 ( 실용적수준에유용 ) 예측모델은학습데이터세트를사용하고별개의검증데이터세트에서평가하도록만들어졌다. 여분의예측변수를제거하는것은예측정확도와튼튼함을얻는데핵심적이다. 하위집합선택방법은 좋은 후보모델을찾도록돕는다. 이것들은반드시실행및평가되어야한다.