저작자표시-비영리-변경금지 2.0 대한민국 이용자는 아래의 조건을 따르는 경우에 한하여 자유롭게
l 이 저작물을 복제, 배포, 전송, 전시, 공연 및 방송할 수 있습니다. 다음과 같은 조건을 따라야 합니다:
l 귀하는, 이 저작물의 재이용이나 배포의 경우, 이 저작물에 적용된 이용허락조건 을 명확하게 나타내어야 합니다.
l 저작권자로부터 별도의 허가를 받으면 이러한 조건들은 적용되지 않습니다.
저작권법에 따른 이용자의 권리는 위의 내용에 의하여 영향을 받지 않습니다. 이것은 이용허락규약(Legal Code)을 이해하기 쉽게 요약한 것입니다.
Disclaimer
저작자표시. 귀하는 원저작자를 표시하여야 합니다.
비영리. 귀하는 이 저작물을 영리 목적으로 이용할 수 없습니다.
변경금지. 귀하는 이 저작물을 개작, 변형 또는 가공할 수 없습니다.
이학석사학위논문
Excel VBA를 이용한 다변량분석도구 개발
Application Frame for Multivariate Analysis with Excel VBA
2014년 2월
서울대학교 대학원 통 계 학 과
이 기 원
Excel VBA를 이용한 다변량분석도구 개발
지도교수 조 신 섭
이 논문을 이학석사학위논문으로 제출함
2014년 2월
서울대학교 대학원 통 계 학 과
이 기 원
이기원의 이학석사 학위논문을 인준함 2014년 2월
위 원 장 오희석 (인) 부 위 원 장 조신섭 (인) 위 원 임요한 (인)
Application Frame for Multivariate Analysis with Excel VBA
by
Gi-won Lee
A thesis submitted in partial fulfillment of the requirement for the degree of Master of Science
in the Department of Statistics Seoul National University
February, 2014
국 문 초 록
통계자료 분석을 위해서는 이에 적합한 통계분석틀(package)을 사용하는 것이 필수적이다. 국내에서 주로 사용되는 통계 분석틀로는 SAS, SPSS, R 등을 들 수 있다. 그러나 이들 분석틀들은 대부분 외국에서 개발이 되어 고 가의 사용료를 지급해야 하며, 사용법이 영문으로 되어 있거나 고유의 언어 를 이용하여 프로그래밍을 해야 한다는 점이 일반 사용자들이 사용하기에는 부담이 되고 있다.
서울대학교 통계학과에서는 이러한 어려움을 극복하기 위해 일반 사용자 들이 쉽게 다룰 수 있는 통계 분석을 위한 분석틀인 KESS를 개발하고 새로 운 분석 방법들을 지속적으로 추가하고 있다. 본 논문에서는 다변량분석 기 법 중 인자분석, 의사결정나무에 적합한 분석틀들을 개발하여 추가하였다.
KESS는 일반인들이 보다 편리하고 쉽게 통계 자료 분석을 할 수 있도록 입 출력의 용이성 및 사용의 보편성을 갖춘 엑셀(EXCEL)을 개발의 기본도구 로 삼고 있다.
주요어 : 통계 분석틀, 엑셀, 다변량분석, 인자분석(Factor analysis), 의사 결정나무(Decision tree)
학번: 2012-20226
차 례
1. 서론
2. 다변량분석 기법 2.1 주성분분석 2.2 인자분석 2.3 의사결정나무
3. KESS의 다변량분석과 패키지별 비교 4. KESS에서 다변량분석 실행 및 출력
4.1 인자분석 4.2 의사결정나무 5. 맺음말 및 추후과제
참고문헌
Abstract
1
1. 서 론
다변량분석은 많은 변수들 사이의 관계를 알아보는 통계적 방법이다. 이 분 석 방법들은 20세기 초부터 생물학 분야와 계량심리학등의 분야에 선구적으 로 도입되었고, 현재는 공정 해석, 시장분석, 품질해석, 재무분석, 계량진단, 약효검정 등의 분야에서도 널리 쓰인다. 다변량분석의 기법에는 회귀분석, 판별분석, 주성분분석, 인자분석, 군집분석, 정준상관분석, 의사결정나무 등 이 있다. 이중 인자분석과 주성분분석은 차원축소 및 변수간의 관계설명이나 새로운 지표탐색을 위한 기법이고, 의사결정나무는 분류기법 중의 하나이다.
다변량분석에 가장 많이 사용되고 있는 통계 패키지로는 SAS, R과 SPSS 등을 들 수 있다. 위 통계패키지들은 다변량분석에 필요한 여러 가지 기능들 을 다양하게 제공하고 있으나 대부분 사용이 어렵거나, 영문으로 되어 있어 일반인들이 사용하기에는 어려움이 있으며 고가의 사용료를 들여서 구입해 야 한다는 부담이 있다.
서울대학교에서는 일반인들이 보다 편리하고 쉽게 통계 자료 분석을 할 수 있도록 Excel에서 구동되는 교육용 한글 통계 소프트웨어인 KESS(2013)를 개발하여 제공하고 있다. 본 논문에서는 다변량분석 기법 중에서 기존에 제공되던 인자분석 기법을 개선하고 의사결정나무에 기초한 분류 기법을 Excel VBA를 통해 구현하였고, 이를 KESS에 부메뉴로 추가 하였다.
본 논문은 총 5장으로 구성되어 있다. 먼저 연구의 배경 및 목적을 제시하 였고, 다변량분석에 대한 설명, KESS의 다변량분석과 다른 패키지별 비교, 마지막으로 KESS에서의 실행 방법과 연구의 결론 및 향후 전망에 대해 기
2
술하였다.
2. 다변량분석 기법
2.1 주성분분석(Principal component analysis)
주성분분석은 변수의 차원축소 기법중의 하나로서 자료 전체의 변동의 대 부분을 설명할 수 있는 주성분을 찾는 것이 주된 목적이다. 주성분분석의 이 론적 배경은 스펙트럴분해(spectral decomposition)이다
= (X1, … , ) 를 p차원 랜덤벡터라고 하자. 의 주성분(principal component)은 다음과 같이 정의한다.
첫째 주성분, ≝ = + + ⋯ + ≝ { ′ , ‖ ‖ = 1}
…
r 번째주성분, ≝ = + + ⋯ + (r<p)
= ′ , ‖ ‖ = 1 단, , = 0 ( = 1, … , − 1)
랜덤백터 = (X1, … , ) 의 공분산 행렬을 , 상관계수 행렬을 R이라고 하자. 의 고유값을 λ ≥ ≥ ≥ ⋯ ≥ , 대응되는 고유벡터를 , , … , 라고 할 때, r번째 주성분은 코시-슈바르츠 부등식과, 대각화 정리에 의해서 로주어진다 , (r<p). 실제 분석에서는 공분산행렬과, 상관행렬대신 표본공분산행렬과 표본상관행렬을 사용한다. 주성분분석 모형의 성질은 다음과 같다.
3
① = 이므로, Var( ) = , Cov , = 0 ( ≠ )
② 총변동(total variance) tr( ) = ∑ 의 일정비율이 ∑ 일 때,
, … , 은 전체정보의 일정비율에 대한 정보를 가진다고
해석한다. 예를 들어, 0.9= ∑
Σ 면 전체정보의 90%를 , … , 이 가진다.
③ 공분산행렬을 사용할 경우와, 상관행렬을 사용할 경우 PCA분석 결과가 다르게 나타난다. 상관행렬은 표준화된 변수의 공분산행렬과 동일하므로 보통은 상관행렬을 이용한 PCA를 사용한다.
2.2 인자분석(Factor Analysis)
인자분석의 목적은 변수들 사이의 공분산 관계를 몇 개의 관측할 수 없는 변수로 설명하는 것이다. 인자를 구하는 방법으로는 주성분방법과 최대가능 도 방법이 있는데, 주성분방법이 해석이 쉽고 직관적이어서 더 널리 사용된 다. 인자분석은 보통 표준화된 변수에 대해서 행해진다. 이 경우 공분산행렬 은 상관계수행렬과 동일하다.
(1) 직교인자모형
관측 가능한 p차원 랜덤벡터 X=( , … , )′ 의 평균을 분산을 라고 하자. 이때, m개의 공통인자(common factor)를 갖는 직교인자모형은 아래와 같이 표현된다. 이때, F와 은 관측되지 않는 변수이다.
− = + μ = ( ) : p x 1 벡터,
= ( ) : p x 1 벡터
4
= ( ) : 관측 가능하지 않은 m x 1 벡터 = : p x m 행렬
와 은 서로 독립. 즉, E( ) = 0 , Cov( ) = E ′ =
E( ) = 0, Cov( ) = =
⎣⎢
⎢⎢
⎢⎡Ψ 0
0 Ψ
⋯0 0 0
⋮ ⋮ ⋱ ⋮
0 0 ⋯ Ψ ⎦⎥⎥⎥⎥⎤
(2) 직교인자모형의 성질
직교인자모형은 다음과 같은 성질을 만족한다.
① Cov( ) = = +
② Cov( , ) =
③ Var(X ) = = + + ⋯ +
+ Ψ
communality(공통성부분)은 m개의 인자(Factor)에 의해 설명되는 부분이고 나머지 부분을 specific variance라고 한다.
④ 임의의 직교행렬(Orthogonal matrix) (m x m matrix)에 대해서 − = + 는 ∗ = , ∗ = 라고 하면 − = ∗ ∗+ 또한 직교인자모형의 가정을 만족한다. 즉, 직교인자모형은 회전에 대해서 유일하지 않다.
(3) 직교인자모형의 추정
직교인자모형에서 인자를 추정하기 위한 주성분방법은 다음과 같다. 랜덤백 터 =(X , … , ) 의 공분산 행렬을 , 상관계수 행렬을 R, 그리고 의 추 정량인 표본 공분산행렬을 S라고 하자. 또한, S의 고유값을 ≥ ≥ ⋯ ≥ 라고 하고, 해당하는 고유벡터를 , , … , 라고 하자.
5
주성분 방법은, 임의로 정한 m에 대해서 = , … , √ ≝ [ ] 라고 하고 = diag[ − ] 라고 하는 것이다. m을 정하는 방법으로는 1보다 큰 고유값을 갖는 고유벡터만 이용하는 Kaiser의 방법과, Total sample variance의 일정 부분을 설명할 수 있는 개수를 선택하는 방법이 있다. KESS에서는 이 두 가지 방법 모두를 제공하고 있으며, Total sample variance의 일정부분을 설명하는 인자의 개수를 찾는데 필요한 스크리 산점도(scree plot)도 제공한다.
스크리 산점도는 보유할 주성분의 개수를 정하는데 도움이 되는 그림으로 고유값을 크기 순으로 나열한 후에 (i, λ) 를 그린 산점도이다. 만약 j번째부터 감소하는 추세가 완만해지면 j-1개의 주성분을 보유한다.
(4) 인자 회전(Factor rotation)
변수와 인자들 간의 관계를 해석하기 어려운 경우가 많이 있는데 이럴 경우 인자회전(factor rotation)을 이용하면 해석이 용이할 수 있다. 인자 회전 방법으로는 직교회전(orthogonal rotation)과 사각회전(oblique rotation)이 있다. 직교회전은 인자들의 직교관계를 유지하는 회전이고, 사각회전은 인자들이 직교관계를 유지하지 않는 회전이다. 인자간에
스크리 산점도
0.0 0.5 1.0 1.5 2.0 2.5
1 2 3 4
주성분 개수 고
유 값
6
상관관계가 있다고 가정한다면 사각회전을 사용할 수도 있으나, 직교인자모형과는 다른 모형이 된다.
인자회전 방법으로는 Varimax 방법이 많이 사용되는데 ∑ [∑ ∗ −
∑ ∗
] 를 최대로 하는 직교행렬 T를 찾는 방법이다(단, L∗= LT ).
∗ 의 분산을 최대로 하는 방식이라고 해서 Varimax라는 이름을 가지고 있고, 가장 보편적으로 쓰이는 방법이다. KESS에서는 Kaiser의 알고리즘을 통하여 구현했다(Kaiser 1959). Quartimax는 ∑ [∑ ∗ − ∑ ∗ ]를 최대화 하는 직교행렬 T를 찾는 방법이다.
(5) 인자점수 (Factor score)
− = + 에서 F의 추정치 f를 인자점수(factor score)라고 한다.
인자점수는 모형의 타당성 진단을 위해서 사용되거나, 새로운 분석을 위한 설명변수로 쓰인다. 가정이 맞는다면, 인자점수는 평균이 0이고 분산이 1이어야 한다.
인자점수를 계산하는 방법에는 Weighted Least square 방법과 Regression 방법이 있는데, KESS에서는 Regression 방법을 통해서 인자점 수를 계산하여 제공하고 있다. Regression방법에서 인자점수 = = ( − ) 이다. , , 를 모두 안다고 하면, (F, )은 다변량정규분포를 따른다. 그리고 이 경우, 최소제곱 추정량은 조건부 기대값과 일치한다.
( | ) = ( + ) ( − ) 이므로 ( + )를 X의 표본분산인 S로 추 정하고, 를 로 추정하면 = ( − )를 얻는다.
2.3 의사결정나무
의사결정나무라는 이름은 그 결과를 나무형태의 그래프로 표현할 수 잇다
7
는 사실에 기인한다. 의사결정나무는 반응변수의 종류가 범주형인 경우, 분 류나무라고 하고, 반응변수의 종류가 연속형인경우에는 회귀나무라고 한다.
즉, 예측결과가 연속형이면 회귀나무, 범주형이면 분류나무라고 한다.
의사결정나무는 지도학습 기법으로서 각 입력변수의 영역을 반복적으로 분할하여 전체 입력변수의 영역에서의 규칙을 생성한다. 의사결정나무의 예 측력은 상대적으로 다른 지도학습 기법에 비해 떨어지지만 해석이 쉬운 장 점을 지닌다.
의사결정나무의 맨 위쪽에 위치하는 마디를 가리켜서 뿌리마디 (root node)라고 부르는데 분류대상이 되는 모든 개체집단을 의미하게 된다. 하나 의 마디가 하부마디로 분화가 될 때 특정마디 위쪽에 존재하는 마디를 부모 마디 (parent node)라고 부르고 특정마디 아래쪽에 존재하는 마디를 자식마 디 (child node)라 부르며 더 이상 마디가 분화되지 않는 최종마디를 끝마 디 (terminal node)라고 부른다.
분류나무의 경우, 끝마디의 최빈 범주를 예측 값으로 제시하고, 회귀나무 의 경우에는 끝마디의 평균을 예측 값으로 제시한다.
(1) 의사결정나무의 알고리즘
의사결정나무를 구하기 위한 알고리즘으로는 CART, C4.5와 C5.0 및 CHAID 가 많이 사용된다.
CART(classification and regression trees)
1984년에 개발된 불순도의 측도로 지니지수, 분산을 이용하여 이진분리를 한다. 개별 입력변수뿐만 아니라 입력변수들의 선형 결합들 중에서 최적의 분리를 찾을 수도 있다.( Stone, C.J. 1984)
8
C4.5 와 C5.0
1993년에 개발된 ID 3의 개량형. 다지분리 가능, 분순도의 측도로는 엔트 로피지수를 사용한다. (Quinlan, 1993.)
CHAID
1975년 AID의 후신으로 가지치기를 하지 않고, 적당한 크기에서 나무 모 형의 성장 중지, 입력변수가 반드시 범주형 변수이어야 한다. 불순도로는 카 이제곱 통계량을 사용한다. 카이제곱은 큰 것을 선택한다. (Han J, 2006 )
(2) 모형의 장·단점
장점
1) 설명력이 높다.
결과가 나오게 된 과정에 대한 이유를 명확하게 알려주기 때문에 현업 실 무자가 이해하기 쉽고 적용하기가 용이하다.
2) 빠르다.
신경망모형에 비해 매우 빠르기 때문에 많은 변수들을 대상으로도 분석이 가능하다
3) 어떠한 변수들이 분류에 중요한 영향을 미치는지 알 수 있다.
의사결정 나무는 가장 설명력이 있는 변수에 대하여 최초로 분리가 일어 나는 특징을 가진다. 그래서 자료전체에서는 관련되지는 않으나 자료의 어느 부분 그룹(부모노드와 자식노드 사이의 관계)에서는 유용한 특성들로 사용 할 수 있다. 따라서 의사결정나무 모형은 일반적인 데이터마이닝 모형화 단 계에서 변수선택(variable selection) 전략에도 사용될 수 있다.
4) 비모수적 모형이다.
9
일반적으로 통계적 모형들이 중요하게 고려하는 정규성이나 등분산성 등 의 가정을 필요로 하지 않는다. 실제 대부분의 데이터마이닝 데이터는 이러 한 통계적 가정을 만족하지 못하기 때문에 의사결정 나무 모형은 이러한 경 우에 유용하게 사용될 수 있다.
단점
1) 출력변수가 연속형인 회귀모형에서는 그 예측력이 떨어진다.
연속 변수를 분류하는 과정에서 정보의 손실이 발생한다. 즉 분리의 경계 점 근방에서 예측 오류가 발생할 가능성이 있다. 따라서 신경망 모형 등에 비해서 예측력이 감소할 수 있다. 추정된 모형은 불연속적이고 매끄럽지 못 한 평면들로 구성된다. 예측 값들은 다른 모형들과는 달리 입력변수 공간상 에서 매끄럽게 변하지 못한다
2) 표본의 크기에 민감하게 반응한다.
정확한 모형을 만들기 위해서는 모든 변수가 가질 수 있는 경우를 모두 표현할 수 있는 충분한 표본 수가 있어야 한다. 하지만 대부분의 데이터 마 이닝 작업에서 충분한 크기의 데이터베이스가 존재하기 때문에 이 문제는 크게 고려할 필요는 없다. 모형추정용 자료 내의 정보가 조금이라도 부정확 할 경우 이 자료를 토대로 만들어 질 의사결정나무의 형태는 큰 영향을 받 는다. 이러한 영향은 나무의 하위부분으로 내려 갈수록 또한 표본의 크기가 작아질수록 증가한다. 즉, 복잡한 나무모형은 예측력이 저하되고 해석 또한 어려워진다. 또한 약간의 변화가 있는 경우에는 전혀 다른 결과를 줄 수도 있는 불안정한 방법이다.
3) 일률적인 사후확률을 갖게 된다.
나무의 노드에 해당하는 자료들은 모두 일률적으로 같은 사후 확률을 가 지기 때문에 같은 노드에 있는 자료 간의 정밀한 이득(profit) 구별이 없어
10
서 개개의 점수화(scoring) 산출이 어렵다.
(3) 분류결과에 대한 타당성 평가 및 가지치기
타당성평가
훈련자료(training data)를 바탕으로 얻은 모형으로 예측한 결과와 시험자 료(test data)를 비교해서 교차타당성입증(cross validation)을 사용할 수도 있다. 이익도표(gains chart)나 위험도표(risk chart)를 이용해서 의사결정나 무를 평가한다.
가지치기
분류된 관측치의비율 또는 MSE (mean squared error)등을 고려하여 적 절한 수준의 가지치기 규칙을 제공하여야 한다. CHAID(CHi-square Automatic Interaction Detection) 알고리즘(Kass, 1980) 에서는 모형의 복잡도를 결정하기 위해 전진정지규칙(일명 사전 가지치기)을 사용한다. 마 디들은 카이제곱 기준에 의한 (조정된)P값이 미리 선정된 수준을 넘지 않을 때까지만 분리된다. 또한, 나무의 확장은 각 마디에 속한 사례의 수가 미리 정한 한계 값 미만이 되면 중지될 수도 있다. 이 방식은 다음과 같은 두 가 지의 단점을 지니고 있다.
1) 효과가 낮은 분리 후에 발생할 수 있는 중요한 분리가 간과될 수 있다.
2) 정지 규칙은 오직 모형추정용 자료에 의해 정해진다.
반면, CART(Classification And Regression Tree) 알고리즘 (Breiman et al. 1984)에서는 사후 가지치기 방식을 사용한다. 즉, 나무를 확장함으로써 서로 다른 크기의 나무들을 만들고 그 중 모형확인용 자료(혹은 교차확인법)
11
를 가장 잘 분류하는 나무를 택한다. 이러한 방식의 나무 가지치기는 CHAID에 의한 두 가지 단점을 보완할 수 있다.
(4) CART
Breiman et al.(1984)에 의해 개발된 CART(Classification and Regression Trees)는 지니 지수(범주형 목표변수인 경우 적용) 또는 분산 의 감소량(연속형 목표변수인 경우 적용)을 이용하여 이지분리(,binary split) 를 수행하는 알고리즘이다(Quinlan, 1993).
지니 지수(Gini Index)는 불순도(impurity)를 측정하는 하나의 지수이다.
지니지수는 n개의 원소 중에서 임의로 2개의 원소를 복원 추출하였을 때 추 출 된 2개가 서로 다른 그룹에 속해있을 확률을 의미하며 Simpson의 다양 도 지수 (diversity index)로도 불린다. CART 알고리즘은 아래식의 자식마 디에서의 지니지수의 가중 합인
P(L)G + ( ) = +
을 최소화하는 분리를 한다. 이는 지니지수의 감소량인
ΔG = G − −
을 최대화 하는 것과 동일하다. 반응변수가 연속형인 경우에는, 합동 분산인 ( ) + ( )을 최소로 하는 분리를 한다. 지니 지수와 분산이 크다 는 이야기는, 노드의 다양도가 크다는 이야기로 분류가 덜되었다고 해석할 수 있다. 그러므로 지니지수와 분산을 최소로 하는 분리를 한다는 말은, 같 은 노드에 속한 자료들이 동일한 방향으로 분리를 한다는 것과 동일한 이야 기다.
<알고리즘>
12
A 1.1. 각 연속형 예측변수에 대하여는, 모든 X ≤ c형태의 분리기준에 대한 불순도를 계산한다. (변수 당 n-1가지 단, n은 훈련자료개수)
A 1.2. 각 범주형 예측변수에 대하여는, 모든 X ∈ A ( A는 X 범주의 부분집 합)형태의 분리기준에 대한 불순도를 계산한다.(2 − 1 가지 단, k는 범주형 예측범주의 범주 수)
A 2. 불순도 측도를 최소로 하는 분리기준을 선택한다. 이 때 분리기준은 연 속형 예측변수의 경우에는 변수의 종류와 경계 값이 되고, 범주형 예측변수 의 경우에는 변수의 종류와 부분집합이 된다.
A 3. 각각의 가지에 대해서 A 1.1~A 2을 반복한다.
(5) 불순도의 종류
아래의 표로 다양한 불순도의 종류를 정리한다.
범주형종속변수 연속형종속변수
불순도
카이제곱통계량 지니 지수 엔트로피 지수
F 통계량 분 산
3. KESS의 다변량분석과 패키지별 비교
통계 자료 분석 도구가 갖추어야 할 중요한 요건 중의 하나는 사용자에게 편리한 인터페이스 환경을 제공해야 한다는 것이다. 또한 다양한 종류의 자 료파일을 불러오거나 자료를 직접 입력할 수 있어야 하고, 분석 결과를 효과
13
적으로 보고서화 할 수 있어야 한다. Excel은 이러한 측면에서 매우 우수한 스프레드시트 프로그램이며, 자료의 관리 및 계산, 그래프의 작성 등을 손쉽 게 할 수 있다는 점에서 일반인들에게 가장 널리 사용되고 있는 프로그램이 다.
위와 같은 점에 착안하여 KESS (2013)는 Excel VBA를 개발 도구로 이 용하였다. 따라서 KESS에서는 Excel에서 제공되는 모든 기능들을 그대로 이용할 수 있으며, 일반인들이 편리하게 통계분석을 할 수 있도록 한다는 점 에서 통계 분석 도구로써 상당한 장점을 갖고 있다. 기초적인 통계 분석은 Excel의 데이터 분석 도구를 통해서도 가능하다. 그러나 KESS에서는 SAS, SPSS 등의 통계 패키지에서와 같이 통계분석 도구를 메뉴 형식으로 제공함 으로써, Excel의 데이터 분석 도구와는 차별화된 보다 통합적이고 체계화된 형태의 통계 분석 프로그램을 제공하고 있다. 특히 보고서 형식으로 출력되 는 결과와 사용하기 쉬운 메뉴형식의 인터페이스가 장점이다.
이전의 KESS는 의사결정나무와, 인자분석을 지원하지 않았으며, 본 논문 에서는 의사결정나무와 인자분석을 구현하였다. 데이터 입출력 방식의 경우 Excel의 [데이터 분석] 도구와 동일한 형태를 취하였다. 또한 본 논문에서 는 인자분석과 의사결정나무 분석 도구를 독립적으로 제공하는 것에 그치는 것이 아니라 KESS에 부메뉴로 다변량자료분석 도구에 의사결정나무와 인자 분석을 포함시킴으로써 다른 분석들과의 연계가 가능하도록 한 측면에서 본 논문의 개발의 의의를 찾을 수 있다.
(1) 개발에 사용된 툴과 프로그램의 구성
개발에 사용된 툴로는 Microsoft Excel VBA(Visual Basic for Application)를 이용하였다. VBA는 Visual Basic 편집기라는 통합 프로그래
14
밍 환경과 Basic 프로그래밍 언어를 조합한 것이다.
(2) 개발 알고리즘 및 출력물의 구성
인자분석의 경우, 주성분분석방법을 이용하여 직교인자 모형을 구현하였고, 회전방식으로는 직교회전인 Varimax와 Quartimax를 Kaiser의 방법을 이용 하여 구현하였다. 출력결과로는 인자의 로딩과 스크리 산점도, 그리고 회전 후의 인자적재 산점도를 제공한다. 인자의 개수가 3개 이상인 경우 사용자가 선택적으로 인자적재산점도를 추가로 그릴 수 있도록 하였다.
의사결정나무의 경우 CART방식을 기본 토대로 하였고, 정지기준은 사전 에 사용자가 지정할 수 있도록 하였다. 이는 사전가지치기를 하는 CHAID의 방식과 비슷하다고 할 수 있다. 재귀함수를 통해 불순도를 최소화 하는 분리 를 정지기준에 미칠 때까지 반복하도록 하여서 의사결정나무 모형을 구현하 였고, 불순도가 동일할 경우, 왼쪽의 분리개수가 적도록 분리하는 방식으로 알고리즘을 구현하였다. 출력형태는 의사결정나무 그림과 추가정보로 구성된 다. 추가정보에서는 각 노드의 정보를 제공한다. 또한 분류나무의 경우에는 분류표를, 회귀나무의 경우에는 SSE와 SST를 이용한 적합도를 제공함으로 써 사용자가 모형의 적합도를 파악할 수 있도록 하였다.
(3) 패키지별 출력 가능한 결과들의 비교
SAS, 한글 SPSS, R 및 본 논문에서 개발한 KESS의 패키지별 인자분석 과 의사결정나무의 비교표는 아래 <표 1>, <표 2>과 같다.
15
SPSS SAS R KESS
인자적재 산점도 * * *
인자적재 * * * *
인자회전 * * * *
스크리-플롯 * * *
인자점수출력 *
<표 1> 패키지별 인자분석 내용 비교
KESS에서는 주성분방식을 통한 인자분석기능을 제공하고 인자회전으로는 직교회전 방식인 Varimax와 Quartimax를 제공한다. 타 패키지에 비해 KESS의 장점은 선택적 정보를 제공하는 점이라고 할 수 있다. R의 경우 그래픽을 보기 위해선 추가적인 코드입력이 필요하고, SAS나 SPSS의 경우에는 사용자가 사용하지 않는 그래픽까지 제공한다. KESS에선 메뉴를 통해 쉽게 스크리 산점도와 인자적재 산점도의 출력여부를 결정할 수 있고, 주요한 인자 2~3개의 인자적재를 선택적으로 출력함으로써 사용자의 혼란을 막을 수 있다. KESS에서 인자점수는 회귀분석방식으로 추정되어 제공된다.
SPSS
SAS R KESS
16
의사결정나무그림 * * *
적합도 * * * *
분류/예측 결과출력 * * *
사전정지규칙 * * * *
메뉴사용 편의성 * *
세부정보 접근성 * * *
기본탑재여부 * *
사후가지치기 * * *
<표 2> 패키지별 의사결정나무 내용 비교
KESS의 의사결정나무 그래픽은 R의 단순한 모양을 모델로 삼아 개발되 었으나 추후에 하이퍼링크를 통해 노드의 세부정보를 제공함으로써 사용자 의 편의성을 극대화 하였다. R의 경우 노드의 주소를 숫자로 배치하여 사용 자가 파악하기 힘들었다. KESS에선 주소를 r(오른쪽)과 l(왼쪽)을 이용하여 구성하여 사용자가 파악하기 쉽도록 개선하였다.
SAS의 경우나 R의 경우에는 라이브러리나 E-miner라는 패키지의 추가 설치를 통해서만 의사결정나무 분석이 가능한 불편함이 있다. KESS에선 기 본메뉴인 ‘통계분석-다변량분석-의사결정나무’에 해당기능을 제공하면서 사 용자의 편의를 도모하였다.
17
4. KESS에서 다변량분석 실행 및 출력결과
4.1. 인자분석
인자분석을 실행하기 위한 대화상자는 다음 그림과 같다.
이번 예제에서는 3개 이상의 인자를 가질 때, 추가적인 인자적재 산점도를 그릴 수 있는 옵션을 설명하기 위하여 다음과 같이 사용자 지정에서 인자를 3개 선택하도록 하였다.
왼쪽에 보이는 것이 인자분석의 기본 설정이다. 별다른 설정이 없 다면 Kaiser방법에 따라서 구한 인자개수를 바탕으로, Varimax회 전 결과를 출력한다. 사용자가 원 한다면 인자점수나 기초통계를 출력할 수 있고, 회전방식을 바꿔 서 인자적재 산점도를 출력할 수 있다.
18
확인을 눌러서 실행하면 다음과 같은 대화상자가 생긴다.
현재 선택된 인자수가 3개 이므로, 추가적으로 인자 1과 3에 대해서 인자산 점도를 그려볼 수 있다. 확인을 클릭하면 다음과 같이 인자분석결과가 출력 된다.
19
고유값이 내림차순으로 정렬되고, 누적비율이 출력된다. 그리고 ‘인자 적 재’항목에서는 사용자가 지정한 방법에 따라 선택된 개수의 인자가 출력된 다. 인자적재에 출력된 항목은 − = + 의 (p x m matrix) 에 해당한 다. 이 예제에서는 3개의 인자가 출력되었고, 인자가 총 변동의 87.7%를 설 명한다.
20
‘회전 후 인자’에 출력된 항목은 − = ∗ ∗+ 의 ∗(p x m matrix) 에 해당한다. 단, ∗= , ∗= , where = =
‘ 공통성 ’ 항목에서는 각 변수가 인자에 의해서 설명되는 정도인 공통성 (communality)을 확인 할 수 있다.
Var(X ) = = + + ⋯ +
+ Ψ
.
21
‘ 그래프 ’ 에선 ‘ 고유값 ’ 출력결과를 도시한 스크리 산점도와, 인자적재 산점도를 확인 할 수 있다. 인자적재 산점도를 통해서 인자에 이름을 붙이고 해석을 할 수 있다.
22
‘추가 그래프’는 인자개수가 3개 이상인 경우 ‘인자적재 산점도 추가’
대화상자를 이용해 그린 인자적재 산점도를 보여준다.
인자분석 대화상자에서 ‘인자점수 저장’을 선택한 경우, 다음과 같이 데 이터 시트에 인자점수가 출력된다.
23
4.2 의사결정나무
의사결정나무를 실행하기 위한 대화상자는 다음과 같다.
다음은 여러 가지 옵션을 선택하기 위한 대화상자이다.
확인을 선택하면 다음과 같은 의사결정나무그림이 출력된다.
지니지수: 반응변수가 명목형 변수일 때 분리가 일어나는 최소의 지니지수 으로 8%가 초기 값이다.
분산: 반응변수가 연속형 변수일 때 분리가 일어나는 최소의 분산으로 8이 초기 값이다. 분리가 일어날 수 있는 최소데이터 숫자는 초기 값이 10이다.
위의 세 가지 값을 키우면 좀 더 간단 한 나무가 만들어 진다. 사전 가지치 기를 설정하는 화면이라고 보면 된다.
반응변수에는 하나의 변수만 들어가야 한다. 그리고 반응변수의 종류를 골라 주면, 지니지수 또는, 분산을 최소화하 는 이진분리를 시행한다. 설명변수의 경우에는 연속형 설명변수만 지원하므 로, 연속형 설명변수만 선택하여서 확 인버튼을 누르면 나무그림이 그려진 화 면이 나온다. 분류결과 표시를 선택하 면 분류결과가 자료시트에 출력된다.
24 의사결정나무그림
제일 위의 상자에는 반응변수의 이름이 표시된다. 그리고 그 아래에는 분 류의 기준이 되는 변수와 변수의 값이 표시된다. 그 값보다 작으면 왼쪽, 크 면 오른쪽으로 분리되는 것을 그림으로 나타낸 것이다. 그리고 각 노드에는, 반응변수가 연속형 변수인 경우에는 평균으로, 명목형 변수인 경우에는 최빈 값으로 예측 값을 표시해 놓았다. 의사결정나무 그림의 박스를 클릭할 경우, 하이퍼링크를 통해 세부 결과를 볼 수 있다.
25
분류나무의 추가 정보
분류나무의 경우 아래와 같이 그림 아래에 세부정보가 표시된다. 처음 박 스는 원 자료의 비율을 나타낸 것이고, 그 아래는 해당 위치에서 분리된 왼 쪽가지와 오른쪽가지의 정보를 표시한 것이다.
26
마지막으로 분류표를 제시하여 분류나무의 적합도를 확인할 수 있다.
회귀나무의 경우에는 적합도가 아래와 같은 형식으로 출력된다.
회귀나무의 추가 정보
아래의 그림은 회귀나무의 세부정보의 일부를 표시한 것이다. 회귀나무의 경우 대표값인 평균이 분류결과로 제시된다. 그리고 추가정보로 최소값, 중앙값, 최대값을 제시한다.
27
일반적인 회귀분석과 비슷한 적합도를 제시하여 사용자의 이해를 도왔다.
(R 의 개념)
28
5. 맺음말 및 추후과제
다변량분석은 여러 통계 패키지에서 제공하고 있으나, 통계 비전공자들이 쉽게 활용할 수 있도록 Excel에서 구동되는 분석 도구의 일환으로 제공하고 자 하였다. 본 논문에서는 Excel에서 구동하는 의사결정나무, 인자분석을 개 발하되, 사용자 입장에서 사용자의 요구를 만족시키고, 보다 편리하게 사용 할 수 있도록 한다는 부분에 개발의 주안점을 두었다. 특히 주목할만한 점으 로는 하이퍼링크를 이용하여 의사결정나무의 간결함을 유지하면서 사용자가 편리하게 세부정보를 확인할 수 있게 한 것으로 이는 R이나 SAS에 비해 사 용자 친화적인 방식이다.
또한 본 논문에서는 의사결정나무, 인자분석, 주성분분석을 KESS에 부메 뉴로 추가시킴으로써 보다 넓은 차원에서 다양한 분야의 통계분석이 가능하 도록 하여 KESS의 활용도를 높이는데 의의를 두었다.
하지만 본 논문에서는 인자분석에서 MLE기반 추정법과 사각회전을 지원 하지 않는 점, 의사결정나무에서는 CART기반의 방식만 구현한다는 데에서 그 한계가 있으며 추후에 이 부분을 개선한다면 KESS가 다변량분석의 도구 로써 보다 높은 완성도를 가질 수 있을 것이다.
29
참 고 문 헌
Johnson, R.A. and Wichern, D.W. (2007) Applied multivariate statistical analysis. 6th ed., Pearson
Stone, C.J. (1984) Classification and regression trees, Chapman and Hall Kaiser, H.F. (1959) Computer program for Varimax Rotation in Factor
Analysis, Educational and Psychological Measurement
Quinlan, J. R. (1993) C4.5: Programs for Machine Learning, Morgan Kaufmann Publishers,
Han J, (2006 )Data mining: concepts and techniques, Elsevier
30
Abstract
Gi-won Lee Statistics, Time Series The Graduate School Seoul National University
Statistical packages such as SAS, SPSS, R have been widely used for data analysis. Since most of them are developed in English, it is difficult to be used by general public. And they put some burden of cost on users.
In the thesis we summarize the fundamental concepts necessary for the development of statistical packages and develop a multivariate analysis package including ‘ Factor analysis ’ and ‘ Decision tree ’ based on these concepts. Since most of the windows menu and results are provided in Korean, the package is more user-friendly. EXCEL is used as a basis tool for the development since it is the most widely used package and is easy to use for the input and output of the data.
Keywords : Application Frame, Excel, Factor analysis, Principal component analysis(PCA), Decision tree
Student number : 2012-20226