1장 1. 데이터 처리
- 대기업은 데이터웨어하우스와 데이터마트를 통해 분석 데이터를 가져와서 사용한다.
- 신규시스템이나 DW에 포함되지 못한 자료의 경우, 기존 운영시스템이나 스테이징 영역, ODS에서 데이터를 가져와서 전처리 후 결합하여 활용한다.
-운영시스템에 직접 접근해 데이터를 활용하는 것은 매우 거의 이루어지지 않으며, 가급적이면 클렌징 영역인 ODS에서 데이터의 전처리를 해서 DW나 DM과 결합하여 활용한다.
1장 3. EDA
- EDA의 4가지 주제 : 저항성의 강조 / 잔차 계산 / 자료 변수의 재표현 / 그래프를 통한 현시성
1장 6. 데이터 마이닝
모델링 성능을 평가함에 있어서
- 데이터 마이닝에서는 정확도, 정밀도, 디텍트레이트, 리프트 등의 값으로 판단
- 시뮬레이션에서는 Throughput, Average Waiting Time, Average Queue Length, Time in System 등의 지표
3장 1. 데이터 마트
- 데이터 마트 : 데이터 웨어하우스와 사용자 사이의 중간층에 위치한 것으로, 하나의 주제 또는 하나의 부서 중심의 데이터 웨어하우스
- 요약 변수 : 수집된 정보를 분석에 맞게 종합한 변수
- 파생변수 : 특정 조건을 만족하거나 특정 함수에 의해 값을 만들어 의미를 부여
* reshape 패키지 : melt() , cast() 를 이용하여 데이터를 재구성
* sqldf 패키지 : R에서 표준 SQL명령을 실행하고 결과를 가져올 수 있다.
* plyr패키지 : apply 함수 기반해 데이터와 출력변수를 동시에 배열로 치환하여 처리하는 패키지
- MULTI-CORE를 사용하여 반복문을 사용하지 않고도 매우 간단하고 빠르게 처리할 수 있는 데이터 처리 함수(raply)
-apply(배열), daply(데이터프레임), laply(리스트), raply(반복), maply(함수 선언)
- 데이터를 분할하고 분할된 결과에 함수를 적용한 뒤 결과를 재조합하는 함수를 포함한다.
* data.table 패키지 : 큰 데이터를 탐색, 연산, 병합하는데 아주 유용
5장 1절. 데이터마이닝의 개요
* 데이터마이닝
- 데이터마이닝은 대용량 데이터에서 의미있는 패턴을 파악하거나 예측하여 의사결정에 활용하는 방법이다.
* 데이터마이닝의 종류
1) 정보를 찾는 방법론에 따른 종류
- 인공지능(Artificial Intelligence), 의사결정나무(Decision Tree), K-평균군집합(K-means Clustering), 연관분석(Association Rule), 회귀분석(Regression), 로짓분석(Logit Analysis), 최근접이웃(Nearest Neighborhood)
2) 분석대상, 활용목적, 표현방법에 따른 분류
- 시각화분석(Visualization Analysis), 분류(Classification), 군집화(Clustering), 포케스팅(Forecasting)
* 데이터마이닝 분석 방법
1) 지도학습(Supervised Data Prediction)
- 의사결정나무(Decision Tree), 인공신경망(ANN, Artificial Neural Network), 일반화 선형 모형(GLM, Generalized Linear Model), 회귀분석(Regression Analysis), 로지스틱 회귀분석(Logistic Regression Analysis), 사례기반 추론(Case-Based Reasoning), 최근접 이웃법(KNN, K-Nearest Neighbor)
2) 비지도학습(Unsupervised Data Prediction)
- OLAP(On-Line Analytical Processing),
-연관성 규칙발견(Association Rule Discovery, Market Basket),
- 군집분석(K-Means Clustering),
- SOM(Self Organizing Map)
* 분석 목적에 따른 작업 유형과 기법
1) 예측(Predictive Modeling)
- 분류 규칙(Classification) : 가장 많이 사용되는 작업으로 과거의 데이터로부터 고객특성을 찾아내어 분류모형을 만들어 이를 토대로 새로운 레코드의 결과값을 예측하는 것으로 목표 마케팅 및 고객 신용평가 모형에 활용됨
사용 기법) 회귀분석, 판별분석, 신경망, 의사결정나무
2) 설명(Descriptive Modeling)
- 연관 규칙(Association) : 데이터 안에 존재하는 항목간의 종속관계를 찾아내는 작업으로, 제품이나 서비스의 교차판매(Cross Selling), 매장진열(Display), 첨부우편(Attached Mailings), 사기적발(Fraud Detection) 등의 다양한 분야에 활용됨
사용 기법) 동시 발생 매트릭스
- 연속 규칙(Sequence) : 연관 규칙에 시간관련 정보가 포함된 형태로, 고객의 구매이력(History) 속성이 반드시 필요하며, 목표 마케팅(Target Marketing) 이나 일대일 마케팅(One to One Marketing)에 활용됨
사용 기법) 동시 발생 매트릭스
- 데이터 군집화(Clustering) : 고객 레코드들을 유사한 특성을 지난 몇 개의 소 그룹으로 분할하는 작업으로 작업의 특성이 분류규칙(Classification)과 유사하나 분석대상 데이터에 결과 값이 없으며, 판촉활동이나 이벤트 대상을 선정하는데 활용됨
사용 기법) 군집분석
*데이터마이닝 추진단계
1. 목적 설정 -> 2. 데이터 준비 -> 3. 가공(모델링 목적에 따라 목적 변수를 정의한다.& 필요한 데이터를 데이터마이닝 소프트 웨어에 적용할 수 있는 형식으로 가공한다) -> 4. 기법 적용 -> 5. 검증
*데이터마이닝을 위한 데이터 분할
- 데이터 양이 충분하지 않거나 입력 변수에 대한 설명이 충분한 경우
1) 홀드아웃(hold-out) 방법 : 주어진 데이터를 랜덤하게 두 개의 데이터로 구분하여 사용하는 방법으로 주로 학습용 / 시험용 으로 분리하여 사용
2) 교차확인(cross-validation) 방법 : 주어진 데이터를 k개의 하부 집단으로 구분하여, k-1개의 집단을 학습용, 나머지는 검증용으로 설정. 주로 10-fold 교차분석을 많이한다.
* 성과분석 오분류에 대한 추정치
- 정분류율(Accuracy), 오분류율(Error Rate), 특이도(Specificity), 민감도(Sensitivity), 정확도(Precision), 재현율(Recall)= 민감도와 같음, F1 Score 의 수식
- 민감도 : true를 true로 판정하는 정도
- 특이도 : false를 false로 판정하는 정도
* ROC Curve(Receiver Operating Characteristic Curve)
- ROC Curve란 가로축을 FPR(False Positive Rate=1-특이도)값으로 두고, 세로축을 TPR(Ture Positive Rate, 민감도)값으로 두어 시각화한 그래프이다.
- x축을 (1-특이도) , y축을 민감도로 두어 시각화
- 2진 분류(Binary Classfication)에서 모형의 성능을 평가하기 위해 많이 사용되는 척도이다.
- 그래프가 왼쪽 상단에 가깝게 그려질수록 올바르게 예측한 비율은 높고, 잘못 예측한 비율은 낮음을 의미한다. 따라서 ROC곡선 아래의 면적을 의미하는 AUROC(Area Under ROC) 값이 크면 클수록(1에 가까울수록) 모형의 성능이 좋다고 평가한다.
- TPR(Ture Positive Rate, 민감도) : 1인 케이스에 대한 1로 예측한 비율
- FPR(False Positive Rate, 1-특이도) : 0인 케이스에 대한 1로 잘못 예측한 비율
* 이익도표
- 이익도표는 분류모형의 성능을 평가하기 위한 척도로, 분류된 관측치에 대해 얼마나 예측이 잘 이루어졌는지를 나타내기 위해 임의로 나눈 각 등급별로 반응검출율, 반응률, 리프트 등의 정보를 산출하여 나타내는 도표이다.
- 이익도표의 각 등급은 예측확률에 따라 매겨진 순위이기 때문에, 상위 등급에서는 더 높은 반응률을 보이는 것이 좋은 모형이라고 평가할 수 있다.
- %captured response : 반응검출율 = 해당 등급의 실제 구매자 / 전체 구매자
- %response : 반응률 = 해당 등급의 실제 구매자 / 200명
- lift: 향상도 = 반응률 / 기본향상도
5장. 2절 분류 분석
* 분류분석
- 데이터가 어떤 그룹에 속하는지 예측하는데 사용되는 기법이다.
- 클러스터링과 유사하지만, 분류분석은 각 그룹이 정의되어 있다.
- 교사학습(supervised learning)에 해당하는 예측기법이다.
* 예측분석
- 시계열분석처럼 시간에 따른 값 두 개만을 이용해 앞으로의 매출 또는 온도 등을 예측하는 것
- 모델링을 하는 입력 데이터가 어떤 것인지에 따라 특성이 다르다.
- 여러 개의 다양한 설명변수(독립변수)가 아닌, 한 개의 설명변수로 생각하면 된다.
* 분류 모델링
- 신용평가모형 (우량, 불량)
- 사기방지모형 (사기, 정상)
- 이탈모형 (이탈, 유지)
- 고객세분화 (VVIP, VIP, GOLD, SILVER, BRONZE)
* 분류 기법
- 회귀분석, 로지스틱 회귀분석 (Logistic Regression)
- 의사결정나무 (Decision Tree), CART(Classification and Regression Tree), C5.0
- 베이지안 분류 (Bayesian Classification), Naive Bayesian
- 인공신경망 (ANN, Artificial Neural Network)
- 지지도벡터기계 (SVN, Support Vector Machine)
- K 최근접 이웃 (KNN, K-Nearest Neighborhood)
- 규칙기반의 분류와 사례기반추론(Case-Based Reasoning)
*로지스틱 회귀분석
: 그래프의 형태는 설명변수가 한 개 인 경우, 해당 회귀계수의 b베타의 부호에 따라 S자 모양(>0), 또는 역 S자 모양(<0) 을 가진다.
- exp(b베타)의 의미는 나머지 변수가 주어질 때, x1이 한 단위 증가할 때마다 성공(Y=1)의 오즈가 몇 배 증가하는지를 나타냄
- 오즈 : 성공할 확률이 실패할 확률의 몇 배인지
- 종속 변수 : (0,1)
-계수 추정법 : MLE(최대우도추정법)
- 카이제곱 검정
* 의사결정나무
- 계산결과가 의사결정나무에 직접 나타나기 때문에 해석이 간편하다.
- 의사결정나무는 주어진 입력 값에 대하여 출력 값을 예측하는 모형으로 분류나무와 회귀나무 모형이 있다.
- 하향식 기법이 사용되며, 각 진행단계에서는 주어진 데이터 집합을 가장 적합한 기준으로 분할하는 변수값이 선택
* 의사결정나무의 예측력과 해석력
- 기대 집단의 사람들 중 가장 많은 반응을 보일 고객의 유치방안을 예측하고자 하는 경우에는 예측력에 치중한다.
- 신용평가에서는 심사 결과 부적격 판정이 나온 경우 고객에게 부적격 이유를 설명해야하므로 해석력에 치중한다.
* 의사결정나무의 활용
1) 세분화 : 데이터를 비슷한 특성을 갖는 몇 개의 그룹으로 분할해 그룹별 특성을 발견하는 것이다.
2) 분류 : 여러 예측변수들에 근거해 관측개체의 목표변수 범주를 몇 개의 등급으로 분류하고자 하는 경우에 사용하는 기법이다.
3) 예측 : 자료에서 규칙을 찾아내고 이를 이용해 미래의 사건을 예측하고자 하는 경우이다.
4) 차원축소 및 변수선택 : 매우 많은 수의 예측변수 중에서 목표변수에 큰 영향을 미치는 변수들을 골라내고자 하는 경우에 사용하는 기법이다.
5) 교호작용효과의 파악
- 여러 개의 예측변수들을 결합해 목표변수에 작용하는 규칙을 파악하고자 하는 경우이다.
- 범주의 병합 또는 연속형 변수의 이산화 : 범주형 목표변수의 범주를 소수의 몇 개로 병합하거나 연속형 목표변수를 몇 개의 등급으로 이산화 하고자 하는 경우이다.
* 의사결정나무의 특징
장점
- 결과를 누구에게나 설명하기 용이하다.
- 모형을 만드는 방법이 계산적으로 복잡하지 않다.
- 대용량 데이터에서도 빠르게 만들 수 있다.
- 비정상 잡음 데이터에 대해서도 민감함이 없이 분류할 수 있다.
- 한 변수와 상관성이 높은 다른 불필요한 변수가 있어도 크게 영향을 받지 않는다.
- 설명변수나 목표변수에 수치형변수와 범주형변수를 모두 사용 가능하다.
- 모형 분류 정확도가 높다.
단점
- 새로운 자료에 대한 과대적합이 발생할 가능성이 높다.
- 분류 경계선 부근의 자료값에 대해서 오차가 크다.
- 설명변수 간의 중요도를 판단하기 쉽지 않다.
* 의사결정나무의 분석 과정
- 의사결정나무의 형성과정은 크게 성장(growing), 가지치기(pruning), 타당성 평가, 해석 및 예측으로 이루어진다.
1) 성장 단계 : 각 마디에서 적절한 최적의 분리규칙(splitting rule)을 찾아서 나무를 성장시키는 과정으로 적절한 정지규칙(stopping rule)을 만족하면 중단한다.
2) 가지치기 단계 : 오차를 크게 할 위험이 높거나 부적절한 추론규칙을 가지고 있는 가지 또는 불필요한 가지를 제거하는 단계이다.
+) 과대적합되어 현실문제에 적으할 수 있는 적절한 규칙이 나오지 않는 현상을 방지하기 위함.
3) 타당성 평가 단계 : 이익도표(gain chart), 위험도표(risk chart), 혹은 시험자료를 이용하여 의사결정나무를 평가하는 단계이다.
4) 해석 및 예측 단계 : 구축된 나무모형을 해석하고 예측모형을 설정한 후 예측에 적용하는 단계이다.
* 분리 규칙 : 최적 분리 결정은 불순도가 가장 적을 때 (= 불순도 감소량이 가장 클 때)
-뿌리마디에서 아래로 내려갈 수록 각마디에서의 불순도는 점차 감소한다.
* 분리 기준
-범주형 목표 변수 : 카이제곱 통계량 P값 / 지니지수 / 엔트로피 지수
-연속형 목표 변수 : 분산분석에서 F통계량 / 분산의 감소량
*정지규칙 : 의사결정나무의 깊이(depth)를 지정, 끝마디의 레코드 수의 최소 개수를 지정
* 나무의 가지치기(Pruning)
- 너무 큰 나무모형은 자료를 과대적합하고 너무 작은 나무모형은 과소적합할 위험이 있다.
- 나무의 크기를 모형의 복잡도로 볼 수 있으며 최적의 나무 크기는 자료로부터 추정하게 된다. 일반적으로 사용되는 방법은 마디에 속하는 자료가 일정 수(가령 5)이하일 때 분할을 정지하고 비용-복잡도 가지치기(cost complexity pruning)를 이용하여 성장시킨 나무를 가지치기하게 된다.
* 의사결정나무 알고리즘
1) CART (Classification and Regression Tree)
- 앞에서 설명한 방식의 가장 많이 활용되는 의사결정나무 알고리즘으로 불순도의 측도로 출력(목적) 변수가 범주형일 경우 지니지수를 이용, 연속형인 경우 분산을 이용한 이진분리(binary split)를 사용한다.
- 개별 입력변수 뿐만 아니라 입력변수들의 선형결합들 중에서 최적의 분리를 찾을 수 있다.
2) C4.5와 C5.0
- CART와는 다르게 각 마디에서 다지분리(multiple split)가 가능하며 범주형 입력변수에 대해서는 범주의 수만큼 분리가 일어난다.
- 불순도의 측도로는 엔트로피지수를 사용한다.
3) CHAID (CHI-squared Automatic Interaction Detection)
- 가지치기를 하지 않고 적당한 크기에서 나무모형의 성장을 중지하며 입력변수가 반드시 범주형 범수이어야 한다.
- 불순도의 측도로는 카이제곱 통계량을 사용한다.
5장 3절. 앙상블 분석
* 앙상블 기법의 종류
1) 배깅
- 배깅은 주어진 자료에서 여러 개의 붓스트랩(bootstrap) 자료를 생성하고 각 붓스트랩 자료에 예측모형을 만든 후 결합하여 최종 예측모형을 만드는 방법이다.
- 붓스트랩(bootsrap)은 주어진 자료에서 동일한 크기의 표본을 랜덤 복원추출로 뽑은 자료를 의미한다.
+) 붓스트랩을 통해 샘플을 추출하더라도 샘플에 한 번도 선택되지 않는 원데이터가 36.8% 존재한다.
- 보팅(voting)은 여러 개의 모형으로부터 산출된 결과를 다수결에 의해서 최종 결과를 선정하는 과정이다.
- 최적의 의사결정나무를 구축할 때 가장 어려운 부분이 가지치기(pruning)이지만 배깅에서는 가지치기를 하지 않고 최대로 성장한 의사결정나무들을 활용한다.
2) 부스팅
- 예측력이 약한 모형(weak learner)들을 결합하여 강한 예측모형을 만드는 방법이다.
- Adaboost는 이진분류 문제에서 랜덤 분류기보다 조금 더 좋은 분류기 n개에 각각 가중치를 설정하고 n개의 분류기를 결합하여 최종 분류기를 만드는 방법을 제안하였다. (단, 가중치의 합은 1)
- 훈련오차를 빨리 그리고 쉽게 줄일 수 있다.
- 배깅에 비해 많은 경우 예측오차가 향상되어 Adaboost의 성능이 배깅보다 뛰어난 경우가 많다.
3) 랜덤 포레스트(random forest)
- 랜덤 포레스트는 의사결정나무의 특징인 분산이 크다는 점을 고려하여 배깅과 부스팅보다 더 많은 무작위성을 주어 약한 학습기들을 생성한 후 이를 선형 결합하여 최종 학습기를 만드는 방법이다.
- 수천 개의 변수를 통해 변수제거 없이 실행되므로 정확도 측면에서 좋은 성과를 보인다.
- 이른적 설명이나 최종 결과에 대한 해석이 어렵다는 단점이 있지만 예측력이 매우 높은 것으로 알려져 있다. 특히 입력변수가 많은 경우, 배깅과 부스팅과 비슷하거나 좋은 예측력을 보인다.
5장 4절. 인공신경망분석
* 인공신경망이란?
- 인간 뇌를 기반으로 한 추론 모델이다.
- 뉴런은 기본적인 정보처리 단위이다.
- 신경세포(뉴런) 사이의 연결강도(weight)를 조정하여 학습규칙을 개발했다.
- 퍼셉트론(Perceptron)이라는 인공세포를 개발했다.
- 역전파알고리즘(Backpropagation)을 활용하여 비선형성을 극복한 다계층 퍼셉트론으로 새로운 인공신경망 모형이 등장했다.
* 인간의 뇌를 형상화한 인공신경망
1) 인간 뇌의 특징
- 100억개의 뉴런과 6조 개의 시냅스의 결합체이다.
- 뉴런은 가중치가 있는 링크들로 연결되어 있다.
- 뉴런은 여러 입력 신호를 받지만 출력 신호는 오직 하나만 생성한다.
* 인공 신경망의 학습
- 신경망은 가중치를 반복적으로 조정하며 학습한다.
- 뉴런은 링크(link)로 연결되어 있고, 각 링크에는 수치적인 가중치가 있다.
- 인공 신경망은 신경망의 가중치를 초기화하고 훈련 데이터를 통해 가중치를 갱신하여 신경망의 구조를 선택하고, 활용할 학습 알고리즘을 결정한 후 신경망을 훈련시킨다.
- 신경망 모형은 변수의 수가 많거나 입출력 변수간에 복잡한 비선형관계가 존재할 때, 유용. 잡음 민감x
*역전파 알고리즘
- 역전파 알고리즘은 연결강도를 갱신하기 위해 예측된 경과와 실제값의 차이인 에러의 역전파를 통해 가중치를 구하는데서 시작되었다.
- 신경망 모형의 목적함수를 최적화하기 위해 사용
* 인공신경망의 특징
1) 구조
- 입력 링크에서 여러 신호를 받아서 새로운 활성화 수준을 계산하고, 출력 링크로 출력 신호를 보낸다.
- 입력신호는 미가공 데이터 또는 다른 뉴런의 출력이 될 수 있다.
- 출력신호는 문제의 최종적인 해(solution)가 되거나 다른 뉴런에 입력 될 수 있다.
2) 뉴런의 계산
- 뉴런은 전이함수, 즉 활성화 함수(activation function)를 사용한다.
- 활성화 함수를 이용해 출력을 결정하며 입력신호의 가중치 합을 계산하여 임계값과 비교한다.
- 가중치 합이 임계값보다 작으면 뉴런의 출력은 -1, 같거나 크면 +1을 출력한다.
- x1 입력값 -> 가중치 값 -> 활성화함수(전이함수) -> y1출력값
3) 뉴런의 활성화 함수
- 계단 함수, 부호 함수, 시그모이드 함수, 선형 함수
- 시그모이드 함수 : 로지스틱 회귀분석과 유사하며, 0~1의 확률값을 가진다.
- softmax 함수 : 표준화지수 함수로도 불리며, 출력값이 여러개로 주어지고 목표치가 다범주인 경우 각 범주에 속할 사후확률을 제공하는 함수
- Relu 함수 : 입력값이 0이하는 0, 0이상은 x값을 가지는 함수이며, 최근 딥러닝에서 많이 활용하는 활성화 함수이다.
4) 단일 뉴런의 학습(단층 퍼셉트론)
- 퍼셉트론은 선형 결합기와 하드 리미터로 구성된다.
- 초평명(hyperplane)은 n차원 공간을 두개의 영역으로 나눈다.
- 초평면을 선형 분리 함수로 정의한다.
- 일반적으로 인공신경망은 다층퍼셉트론을 의미한다. 다층퍼셉트론에서 정보의 흐름은 입력층에서 시장하여 은닉층을 거쳐 출력층으로 진행
* 딥러닝(Deep Learning) : 머신 러닝(Machine Learning)의 한 분야로서 인공신경망의 한계를 극복하기 위해 제안된 심화신경망(Deep Neural Network)를 활용한 방법이다.
* 딥러닝 소프트웨어 : 딥러닝 구동을 위한 SW에는 Tensorflow, caffe, Theano, MXnet 등이 있다.
* 딥러닝은 최근 음성과 이미지인식, 자연어처리, 헬스케어 등의 전반적이 분야에 활용되고 있다.
*인공신경망의 학습 결과 도출되는 일반화 가중치 : 로지스틱 모형에서의 회귀 계수와 유사하게 해석
* 신경망 모형 구축시 고려사항
- 역전파 알고리즘은 초기 값에 따라 결과가 많이 달라지므로 초기값의 선택은 매우 중요하다.
- 가중치가 0이면 시그모이드 함수는 선형, 신경망 모형은 근사적 선형모형
*학습모드
- 온라인 학습 모드 : 관측값을 순차적으로 하나씩 투입
- 확률적 학습 모드 : 관측값의 순서가 랜덤하게 투입
- 배치 학습 모드 : 전체 훈련자료를 동시에 투입
* 은닉층과 은닉 노드의 수
-은닉 층의 뉴런 수와 개수는 직접 설정해야한다.
- 은닉층은 가능한 하나로 선정한다.
- 은닉노드의 수는 적절히 큰 값으로 놓고 가중치를 감소시키는 것이 좋다.
5장 5절. 군집분석
* 군집분석
- 각 개체(대상)의 유사성을 측정하여 유사성이 높은 대상 집단을 분류하고, 군집에 속한 객체들의 유사성과 서로 다른 군집에 속한 개체간의 상이성을 규명하는 분석 방법이다.
- 특성에 따라 고객을 여러 개의 배타적인 집단으로 나누는 것이다.
- 결과는 구체적인 군집분석 방법에 따라 차이가 나타날 수 있다.
- 군집의 개수나 구조에 대한 가정 없이 데이터들의 사이의 거리를 기준으로 군집화를 유도한다.
- 실루엣 지표 : 군집내 응집도, 군지반 분리도를 계산하여 군집 내의 데이터의 거리가 짧을 수록, 군집 간 거리가 멀수록 커지며 완벽한 부리일 경우 1의 값을 가진다.
* 요인분석의 차이점
- 요인분석은 유사한 변수를 함께 묶어주는 것이 목적이다.
* 판별분석과의 차이점
- 판별분석은 사전에 집단이 나누어져 있는 자료를 통해 새로운 데이터를 기존의 집단에 할당하는 것이 목적이다.
* 거리
군집분석에서는 관측 데이터 간 유사성이나 근접성을 측정해 어느 군집으로 묶을 수 있는지 판단해야 한다.
1) 연속형 변수의 경우
유클리디안(Euclidean) 거리 : 데이터간의 유사성을 측정할 때 많이 사용하는 거리, 통계적 개념이 내포되어 있지 않아 변수들의 산포 정도가 전혀 감안되어 있지 않다.
표준화(statistical) 거리 : 해당변수의 표준편차로 척도 변환한 후 유클리드안 거리를 계산하는 방법이다. 표준화하게 되면 척도의 차이, 분산의 차이로 인한 왜곡을 피할 수 있다.
마할라노비스(Mahalanobis) 거리 : 통계적 개념이 포함된 거리이며 변수들의 산포를 고려하여 이를 표준화한 거리(standardized distance)이다. 두 벡터 사이의 거리를 산포를 의미하는 표본공분산으로 나눠주어야 하며, 그룹에 대한 사전 지식 없이는 표본공분산 S를 계산할 수 없으므로 사용하기 곤란하다.
+) 변수의 표준화와 변수 간의 상관성을 동시에 고려한 통계적 거리
체비셰프(Chebychev) 거리
맨하탄(Manhattan) 거리 : 유클리디안 거리와 함께 가장 많이 사용되는 거리로 맨하탄 도시에서 건물에서 건물을 가기 위한 최단 거리를 구하기 위해 고안된 거리이다. 절댓값 사용(각 방향 직각의 이동 거리 합)
캔버라(Canberra) 거리
민코우스키(Minkowski) 거리 : 맨하탄 거리와 유클리디안 거리를 한번에 표현한 공식으로 L1 거리(맨하탄거리), L2 거리(유클리디안 거리)라 불리고 있다.
2) 범주형 변수의 경우
- 자카드 거리 : boolean 속성으로 이루어진 두 객체 간의 유사도 측정
- 자카드 계수
- 코사인 거리 : 문서를 유사도를 기준으로 분류 혹은 그룹핑 할 때 유용하게 사용한다.
- 코사인 유사도 : 두 개체의 백터 내적의 코사인 값을 이용하여 측정된 백터간의 유사한 정도이다.
* 계층적 군집분석
- 계층적 군집방법은 n개의 군집으로 시작해 점차 군집의 개수를 줄여 나가는 방법이다.
- 계층적 군집을 형성하는 방법에는 합병형 방법(agglomerative:bottom-up)과 분리형 방법(Divisive:top-down)이 있다.
* 최단연결법(single linkage, nearest neighbor)
- n*n 거리행렬에서 거리가 가장 가까운 데이터를 묶어서 군집을 형성한다.
- 군집과 군집 또는 데이터와의 거리를 계산 시 최단거리(min)를 거리로 계산하여 거리행렬 수정을 진행한다.
- 수정된 거리행렬에서 거리가 가까운 데이터 또는 군집을 새로운 군집으로 형성한다.
* 최장연결법(complete linkage, farthest neighbor)
- 군집과 군집 또는 데이터와의 거리를 계산할 때 최장거리(max)를 거리로 계산하여 거리행렬을 수정하는 방법이다.
* 평균연결법(average linkage)
- 군집과 군집 또는 데이터와의 거리르 계산할 때 평균(mean)을 거리로 계산하여 거리행렬을 수정하는 방법이다.
* 와드연결법(ward linkage)
- 병합된 군집의 오차제곱합이 병합 이전 군집의 오차제곱합의 합에 비해 증가한 정도가 작아지는 방향으로 군집 형성
- 군집내 편차들의 제곱합을 고려한 방법이다.
- 군집 간 정보의 손실을 최소화하기 위해 군집화를 진행한다.
* 군집화
- 거리행렬을 통해 가장 가까운 거리의 객체들간의 관계를 규명하고 덴드로그램을 그린다.
- 덴드로그램을 보고 군집의 개수를 변화해 가면서 적절한 군집 수를 선정한다.
- 군집의 수는 분석 목적에 따라 선정할 수 있지만 대부분 5개 이상의 군집은 잘 활용하지 않는다.
- 군집화 단계
1) 거리행렬을 기준으로 덴드로그램을 그린다.
2) 덴드로그램의 최상단부터 세로축의 개수에 따라 가로선을 그어 군집의 개수를 선택한다.
3) 각 객체들의 구성을 고려해서 적절한 군집수를 선정한다.
* 비계층적 군집분석
- n개의 개체를 g개의 군집으로 나눌 수 있는 모든 가능한 방법을 점검해 최적화한 군집을 형성하는 것이다.
* K-평균 군집분석(k-means clustering)의 개념
- 주어진 데이터를 k개의 클러스터로 묶는 알고리즘으로, 각 클러스터와 거리 차이의 분산을 최소화하는 방식으로 동작한다.
- 군집의 개수인 k를 미리 정한다 => 집단 내 제곱합 그래프 활용
* K-평균 군집분석(k-means clustering) 과정
- 원하는 군집의 개수와 초기 값(seed)들을 정해 seed 중심으로 군집을 형성한다.
- 각 데이터를 거리가 가장 가까운 seed가 있는 군집으로 분류한다.
- 각 군집의 seed 값을 다시 계산한다.
- 모든 개체가 군집으로 할당될 때까지 위 과정들을 반복한다.
* K-평균 군집분석의 특징
- 거리 계산을 통해 군집화가 이루어지므로 연속형 변수에 활용이 가능하다.
- K개의 초기 중심값은 임의로 선택이 가능하며 가급적이면 멀리 떨어지는 것이 바람직하다.
- 초기 중심값을 임의로 선택할 때 일렬(위아래, 좌우)로 선택하면은 군집 혼합되지 않고 층으로 나누어질 수 있어 주의하여야 한다. 초기 중심값의 선정에 따라 결과가 달라질 수 있다.
- 초기 중심으로부터의 오차 제곱합을 최소화하는 방향으로 군집이 형성되는 탐욕적(greedy) 알고리즘이므로 안정된 군집은 보장하나 최적이라는 보장은 없다.
장점
- 알고리즘이 단순하며, 빠르게 수행되어 분석 방법 적용이 용이하다.
- 계층적 군집분석에 비해 많은 양의 데이터를 다룰 수 있다.
- 내부 구조에 대한 사전정보가 없어도 의미있는 자료구조를 찾을 수 있다.
- 다양한 형태의 데이터에 적용이 가능하다.
단점
- 군집의 수, 가중치와 거리 정의가 어렵다.
- 사전에 주어진 목적이 없으므로 결과 해석이 어렵다.
- 잡음이나 이상값의 영향을 많이 받는다.
- 볼록한 형태가 아닌(non-convex) 군집이(예를 들어 U형태의 군집) 존재할 경우에는 성능이 떨어진다.
- 초기 군집수 결정에 어려움이 있다.
=> k-means 단점 극복 => PAM(Partitioning Around Mediods) , median 사용
- 한번 군집이 형성되면 군집 내 객체들은 다른 군집으로 이동할 수 없아(x) 이동할 수 있다!(o)
* 혼합 분포 군집 (mixture distribution clustering)
- 모형 기반(model-based)의 군집 방법이며, 데이터가 k개의 모수적 모형(흔히 정규분포 또는 다변량 정규분포를 가정함)의 가중합으로 표현된느 모집단 모형으로부터 나왔다는 가정하에서 모수와 함께 가중치를 자료로부터 추정하는 방법을 사용한다.
- K개의 각 모형은 군집을 의미하며, 각 데이터는 추정된 k개의 모형 중 어느 모형으로부터 나왔을 확률이 높은지에 따라 군집의 분류가 이루어진다.
- 흔히 혼합모형에서의 모수와 가중치의 추정(최대가능도추정)에는 EM 알고리즘이 사용된다.
- EM 알고리즘 : 관측변수 X와 잠재변수 Z를 포함하는 (X,Z)에 대한 로그-가능도함수에 Z대신 Z의 조건부 기댓값을 대입하면 로그-가능도 함수를 최대로 하는 모수를 쉽게 찾을 수 있다. (E단계 ㅣ 잠재변수 Z의 기대치 계산 / M단계 | 잠재변수 Z의 기대치를 이용하여 파라미터 추정)
* SOM(Self Organizing Map)
- SOM은 비지도 신경망으로 고차원의 데이터를 이해하기 쉬운 1차원의 뉴런으로 정렬하여 지도의 형태로 형상화한다.
-이러한 형상화는 입력 변수의 위치 관계를 그대로 보존한다는 특징이 있다.
-다시 말해 실제 공간의 입력 변수가 가까이 있으면, 지도상에도 가까운 위치에 있게 된다.
- 인공신경망의 역전파 알고리즘 사용(x), 단 하나의 전방패스 사용(o). 실시간 처리(o)
*SOM 구성
1) 입력층 : 입력 변수의 개수와 동일하게 뉴런 수 존재
입력층의 자료는 학습을 통하여 경쟁층에 정렬 -> 각각의 뉴런들과 연결
2) 경쟁층 : 입력 벡터의 특성에 따라 벡터가 한 점으로 클러스터링 되는 층
-SOM은 경쟁 학습으로 각각의 뉴런이 입력 벡터와 얼마나 가까운가를 계산하여 연결 강도를 반복적으로 재조정. 그 결과 연결강도는 입력 패텬과 가장 유사한 경쟁층 뉴런이 승자가 된다.
-입력층의 표본 벡터에 가장 가까운 프로토타입 벡터를 (BMU)를 선정.
* SOM과 신경망 모형의 차이점
구분
|
신경망 모형
|
SOM
|
학습 방법
|
오차역전파법
|
경쟁학습방법
|
구성
|
입력층, 은닉층, 출력층
|
입력층, 2차원 격자(grid) 형태의 경쟁층
|
기계 학습 방법의 분류
|
지도학습(Superviesd Learning)
|
비지도 학습(Unsupervised Learning)
|
5장 6절. 연관분석
* 연관규칙분석(Association Analysis)
- 연관성 분석은 흔히 장바구니분석(Market Basket Analysis) 또는 서열분석(squence Anlysis)이라고 불린다.
- 기업의 데이터베이스에서 상품의 구매, 서비스 등 일련의 거래 또는 사건들 간의 규칙을 발견하기 위해 적용한다.
- 장바구니 분석 : ‘장바구니에 무엇이 같이 들어 있는지에 대한 분석’
- 서열분석 : ‘A를 산 다음에 B를 산다’
* 연관규칙의 측도
- 산업의 특성에 따라 지지도, 신뢰도, 향상도 값을 잘 보고 규칙을 선택해야 한다.
1) 지지도(support) : 전체 거래 중 항목 A와 항목 B를 동시에 포함하는 거래의 비율로 정의한다.
2) 신뢰도(confidence) : 항목 A를 포함한 거래 중에서 항목 A와 항목 B가 같이 포함될 확률이다. 연관성의 정도를 파악할 수 있다.
3) 향상도(Lift) : A가 구매되지 않았을 때 품목 B의 구매확률에 비해 A가 구매됐을 때 품목 B의 구매확률의 증가 비이다. 연관규칙 A->B는 품목 A와 품목 B의 구매가 서로 관련이 없는 경우에 향상도가 1이 된다.
* 연관규칙의 장점과 단점
장점
- 탐색적인 기법으로 조건 반응으로 표현되는 연관성 분석의 결과를 쉽게 이해할 수 있다.
- 강력한 비목적성 분석기법으로 분석 방향이나 목적이 특별히 없는 경우 목적변수가 없으므로 유용하게 활용 된다.
- 사용이 편리한 분석 데이터의 형태로 거래 내용에 대한 데이터를 변환 없이 그 자체로 이용할 수 있는 간단한 자료 구조를 갖는다.
- 분석을 위한 계산이 간단하다.
단점(개선방안)
- 품목수가 증가하면 분석에 필요한 계산은 기하급수적으로 늘어난다.
-> 이를 개선하기 위해 유사한 품목을 한 범주로 일반화한다.
-> 연관 규칙의 신뢰도 하한을 새롭게 정의해 실제 드물게 관찰되는 의미가 적은 연관규칙은 제외한다.
- 너무 세분화한 품목을 갖고 연관성 규칙을 찾으면 의미없는 분석이 될 수도 있다.
-> 적절히 구분되는 큰 범주로 구분해 전체 분석에 포함시킨 후 그 결과 중에서 세부적으로 연관규칙을 찾는 작업을 수행할 수 있다.
- 거래량이 적은 품목은 당연히 포함된 거래수가 적을 것이고, 규칙 발견 시 제외하기가 쉽다
-> 이런 경우, 그 품목이 관련성을 살펴보고자 하는 중요한 품목이라면 유사한 품목들과 함께 범주로 구성하는 방법 등을 통해 연관성 규칙의 과정에 포함 시킬 수 있다.
*최근 동향
- 순차 패턴 : 연관성 분석에 시간 개념을 포함시켜 구매 시점에 대한 정보로 구매 가능성이 큰 상품군 발견
-Apriori 알고리즘 : 최소 지지도보다 큰 지지도 값을 갖는 품목의 집합을 빈발 항목 집합이라고 한다.
빈발 항목 집합을 찾은 후, 그것들에 대해서만 연관규칙을 계산.
-FP-Growth : 후보 빈발항목집합을 생성하지 않고, FP-Tree를 만든 후, 더 빨리 분석
* 추가 *
1번) 빅데이터의 특성에 대한 설명 중 틀린 것은?
--> 데이터 양이 많을수록 더 많은 분석을 필요로 한다.
2번) 데이터의 크기를 작은 것부터 큰 것 순서대로 배열한 것?
--> 페타(PB)-엑사(EB)-제타(ZB)-요타(YB)
3번) 책임 원칙 훼손과 관련된 것은?
--> 범죄예측 프로그램에 의해 범행 전 체포
사생활 침해 -> 익명화 기술 발전, 동의에서 책임으로
책임 원칙 훼손 : 범죄예측프로그램에 의해 범행 전 체포, 부당하게 대출 거절 -> 결과 기반 책임 원칙 고수
데이터 오용 -> 알고르즘 접근 허용
5번) 전사차원에서 데이터를 DBMS에 모아서 관리하는 것?
--> 데이터 웨어하우스
7번) 복잡한 데이터 구조를 표현 및 관리하는 DBMS?
--> 객체지향 DBMS
8번) 분석 기획 고려사항 중 장애요소에 대한 설명으로 부적절한 것?
--> 이해도 높은 모형보다는 복잡하고 정교한 모형
25번) 다중공선성 문제로 옳지 않은 것? 해결하기 위해 pca 이용
28번) 주성분분석 결과 중 틀린 것은?
--> 공분산행렬을 사용하여 주성분분석을 시행한 것이다
33번) 의사결정나무 모형에서 과대적합되어 규칙이 나오지 않는 것을 방지하기 위한 방법?
--> 가지치기
15번) 빅데이터의 7v로 옳은 것은?
--> 5V(Volume, Variety, Velocity, Value, Veracity-정확성) + Validity (유효성), Volatility (휘발성)
28번) 군집의 밀집정도를 계산하는 방법?
--> 실루엣 계수(Silhouette Coefficient)
40번) K-Nearest-Neighbor의 단점 중 옳지 않은 것?
--> 분류 기준이 명확하지 않으면 사용하기 어렵다.
+) 위험 대응 방법 : avoid 회피 / transfer 전이 / mitigate 완화 / accept 수용
+) 마스터 플랜을 수립할 때 우선순위 고려요소 : 전략적 중요도, 실행 용이성, 비즈니스 성과/ROI
+) K-means 군집 수 정하는 그래프 : 집단 내 제곱합
단2) 성숙도 판단 모델: 능력 성숙도 통합 모델(CMMI, Capability Maturity Model Integration)
단 6번) 계절요인
단 8번) 정지규칙 : 더 이상 분기가 되지 않고 현재 마디가 끝마디가 되도록
단 10번) 비모수적 모형 : 부호검정, 윌콕슨의 순위합검증, 만-위트니의 u검정, 런 검정, 스피어만의 순위상관계수, 관측값의 절대적 크기에 의존 X
단2) ISP(Information Strategy Planning) : 기업 및 공공기관에서는 시스템의 중장기 로드랩을 정의
단) 향상도 : 연관규칙의 측정지표 중 도출된 규칙 우수성을 평가하는 기준으로, 두 품목의 상관관계를 기준으로 도출된 규칙의 예측력을 평가.
단) 향상도 곡선 : 분류분석의 모형을 평가하는 방법으로 랜덤모델과 비교하여 해당 모델의 성과가 얼마나 향상되었는지를 등급별로 파악하는 그래프
단) ESD : 이상값 탐색 기법 중 하나로 평균으로부터 3표준편차만큼 떨어져있는 값들을 이상치로
단) 분석과제 관리 프로세스는 크게 과제 발굴/과제 수행으로 나누어진다. 조직이나 개인이 도출한 분석아이디어를 발굴하고 이를 과제화하여 분석 과제 풀로 관리하면서 분석과제가 확정되면 팀구성, 분석과제 실행, 분석과제 진행관리, 분석과제 결과 공유/개선의 분석과제 관리 프로세스를 수행하게 된다.
단) 정상성 : 시계열의 수준과 분산에 체계적인 변화가 없고 주기적 변동이 없다는 뜻
단) 데이터 표준화는 데이터표준 용어 설정, 명명 규칙 수립, 메타데이터 구축, 데이터 사전 구축 등의 업무
데이터 표준 용어는 표준 단어 사전, 표준 도메인 사전, 표준 코드 등으로 구성
단) 와드연결법 : 계층적 군집 분석 시 군집 병합하는 방법 가운데 병합된 군집의 오차제곱합이 병합 이전 군집의 오차제곱합의 합에 비해 증가한 정도가 작아지는 방향으로 군집 형성
'대외활동 > 자격증' 카테고리의 다른 글
[ADsP] 과목 2 - 2장 정리 (1) | 2023.03.22 |
---|---|
[ADsP] 과목 2 - 1장 정리 (0) | 2023.03.22 |