ADSP_데이터마이닝
데이터마이닝은
- 기초통계와는 다르게 가정/가설 검정을 하지 않는다.
- 예측가능한 분석에 초점을 두고, 의미 있는 정보를 찾아내는 방법이다.
1.예측 :: 미리 알아맞춤
1.-1. 분류분석 =classification
https://jungmoonga.tistory.com/20?category=887338
- 목적이 있다(지도학습=이산형/범주형 속성의 y와 x의 관계인 f(x)에 대해 모델링하는 것)
- 각 그룹이 이미 정의되어 있다. 범주형 속성을 맞추는 것이다.
분류분석 평가기준
a. 오분류표
정분유율 = 양성, 음성이라고 판단되는 값(TP+TN)/실제 양성과 음성의 값(TP+FN+FP+TN)
오분유율 = 1-정분유율
민감도 = recall = 양성이라고 판단되는 값(TP)/실제 양성의 값(TP+FN)
특이도 = 음성이라고 판단되는 값(TN)/실제 음성의 값(FP+TN)
정확도 =precision = 양성이라고 판단되는 값(TP)/TEST가 양성의 값(TP+FP)
F1 = 2*((precision*recall)/(precision+recall))
= 2*( 1 / (1/precision)+(1/recall))
b. ROC curve : 이진분류 binary classification 에서 사용
AUROC (=Area Under ROC) : 넓을수록 모형 성능 좋음.
x축은 1-특이도, y축을 recall=민감도로 가지며, 우상향의 그래프가 y 축에 붙어있을 수록 모형 선능 좋음.
c. lift chart 이익도표 이용해서 그린 lift curve 향상도 곡선
: lift가 빠른 속도로 감소하면 좋은 모델
: captured response% = 해당 구간의 실구매자/실구매자 합계(아래 예제에서 950명)
: response% = 해당 구간의 실구매자 /n*10%(아래 예제에서 500명)
: lift=response%/baseline lift
*** baseline lift = 실구매자합계 / n
- 로지스틱 회귀분석 (범주형 속성)
- 0 또는 1로 나뉘기 때문에 분류분석에도 쓰임
- (-)부호가 붙을 경우, 역 S자 모양의 그래프가 됨
- odds 승산비 = 성공확률/실패확률
- 의사결정나무 (귀납적 추론 기반)
- 이지분할인 CART 의 분리기준 : 범주형 목표변수일 때 지니지수(불순도측정), 연속형일 때는 이진분리법,분산감소량
- 다지분할인 C4.5,C5.0의 분리기준 : 이산형 목표변수일 때 엔트로피지수 (를 최소화하는 가지치기)
- 다지분할인 CHAID의 분리기준 : 이산형 목표변수일 때 카이제곱통계량, 연속형일때 ANOVA,F-통계량
- 연속형 목표변수의 분리기준으로는 F통계량값(P가 작을수록) 또는 분산감소량(최대화)
- 구조 단순해서 해석 쉽다.
- 과대적합 해결 : 가지치기
- 끝마디 레코드 수의 최소개수 지정하는 것 : 정지규칙
*** 지니지수 = 1-∑Pi^2
*** 엔트로피지수 = E-∑(Pi*logi)
*** 카이제곱통계량 = ∑(실제-기대)/기대
- 인공신경망 (범주형 속성)
- 역전파할 때 가중치를 더 줌
- newralnet() 함수의 실행결과로 generalized weight이 도출되는데, 로지스틱 회귀계수와 유사하다
- 뉴런활성화 함수로는
- 시그모이드 (로지스틱과 유사) 0에서1사이
- 계단함수 0 또는 1
- 부호함수 -1 또는 +1
- relu함수 x가 0 이하면 y가 계속 0, x가 0이상이면 y도 0이상의 값
- softmax함수 = 표준화지수 함수. 출력값이 여러개로 주어지고, 목표치가 다범주에 속할 사후확률을 제공함.
- (나이브) 베이지안 분류
- 베이지안 정리와 특징에 대한 조건부 독립을 가설로 둠.
- SVM (Support Vector Machine)
- KNN (K- nearest neighborhood) 연속형 속성, 최근접 이웃법
- Case Based Reasoning 연속형 속성, 사례기반 추론
- 홀드아웃 : test, train 으로 나누는 것.
- d번 반복 복원 추출(bootstrap)할 때, d가 무한대로 가면 train이 선정되지 않는다. test사용비율은 36.8% 다.
- 교차검증 cross validation
- 범주 불규형 문제: 예측실패의 비용이 큰 대상의 관측치가 부족한 문제
- ** 과소적합 : 모델이 너무 단순한 경우 발생. 주가 예측.
1. 예측 :: 미리 알아맞춤
1.-2. 예측분석 =연속형 속성값 맞추기 (점수,매출액 등)
- 배깅동일한 크기의 표본을 랜덤 복원 추출(bootstrap)하여 각 표본에 예측모형을 생성한 후 다수결 최종결함
- 부스팅동일한 크기의 표본을 랜덤 복원 추출(bootstrap) 할 때, 잘못된 데이터(=예측력 약한 모형)에 더 큰 가중치 두어 최종결합
- 랜덤포레스트의사결정나무가 분산이 큰 문제가 있어, 배깅/부스팅보다 더 큰 무작위성을 두어 약한 학습기들 선형결합
2.설명, 기술(description) :: 사람,상품에 대한 이해를 돕기 위해 데이터 특징을 나타냄
2.-1. 군집분석 =clustering
- 비지도학습이다. x와y의 관계를 구하는 것은 아니다.
- 거리 유사도에 따라 군집을 형성한다.
- 거리 계산 방법
- 범주형
- 자카드거리 = 동일하면 1, 다르면 0. 불린속성의 두 개체 사이 거리 계산. 1-자카드계수
- 자카드계수
- 코사인거리
- 코사인계수
- 연속형
- 유클리디안 거리 = 대간선 길이 계산. 점수 매긴 항목, 통계적 개념 내포하지 않음. 산포정도 반영 안됨.
- 표준화 거리 = 표준편차를 이용해 유클리디안 거리 계산
- 마할라노비스 = 변수의 산포 고려하여 표준편차로 계산 (포준화 + 변수의 상관성 고려)
- 체비셰프 = max(x-y)
- 맨하탄 = 뉴욕직선거리 ∑(x-y)
- 캔버라 = ∑(x-y)/(x+y)
- 민코우스키 = 맨하탄 + 유클리디안
- 종류
- K-means clustering (cl<-means(x,3개))
- 군집의 개수를 미리 설정한다. 그래서 비계층적이다
- 분할적이다.
- 프로토타입 based의 군집분석 방법이다.
- 군집 형성 후 다른 군집으로 이동 가능하다. 100%가 seed 할당될 때까지 이동한다.
- 정규화 과정이 필수다.
- min-max 이용한 정규화 과정[0,1]은 이상치 문제가 있다.
- z-score 이용한 정규화 과정은 이상치 문제는 없지만, 정확히 동일한 척도는 아니다.
- 이상값에 민감해서 경계 설정에 어려움이 있다. 중앙값 사용하는 k-median clustering으로 극복하거나, partioning around medoids(PAM)으로 극복한다.
- 초기 중심으로부터 오차제곱합을 최소화하는 방향으로 형성한다. 집단 내 제곱합 그래프.
- 초기 군집의 중심은 임의로 선택한다.
- SOM (Self Organization Map)
- 각각 뉴런 얼마나 가까운지 전방패스 (역전파 아니다=이건 인공신경망)
- 지도로 위치관계가 보존된다
- 프로토타입 vector로 BMU (Best Matching Unit) 생성
- Single Linkage 최단 연결법
- 군집의 개수를 나중에 설정한다. 그래서 계층적이다.
- 평균연결법보다 계산량 적다.
- 사슬모양의 군집이 발생할 수 있다.
- Ward Linkage 와드 연결법
- 군집의 개수를 나중에 설정한다. 그래서 계층적이다.
- 거리 측정 시 오차제곱합을 사용한다.
- 혼합 분포 군집 (EM, Expectation Maximize)
- 확률분포를 도입한 EM 알고리즘을 사용한다.
- 이상치에 민감하다
- 모형 기반의 군집방법이다. 데이터가 k개의 모수적 모형(군집)의 가중합으로 표현되는 모집단 모형으로 나왔다는 가정으로 분석한다.
- 밀도기반 군집 함수
- 어느 점을 기준으로 주어진 반경 내에 최소 개수만큼의 데이터를 가질 수 있게 한다.
- 특정 밀도 함수 혹은 밀도에 의해 군집을 형성해나가는 기법이다.
- DBSCAN, OPTICS, DENCLUE 등 임의적인 모양의 군집탐색이 있다.
- 군집분석 품질평가
- 실루엣 평가 (실루엣 계수)
- 군집분석의 품질을 정량적으로 평가하는 대표적인 지표다.
- 군집 내의 데이터 응집도와 군집간 분리도를 계산해서, 군집 내의 데이터의 거리가 짧을수록, 군집간 거리가 멀수록 값이 커진다. 완벽한 분리일 경우 1의 값을 가지는 지표다.
2.설명, 기술(description) :: 사람,상품에 대한 이해를 돕기 위해 데이터 특징을 나타냄
2.-2. 연관성분석
- 방법1) apriori함수 : (data,param: ____) 최소 지지도 이상의 부분 집합으로만
- 방법2) FP-growth : SKU 줄여서 Frequent parameter tree 생성
- 방법3) FPV
- 장바구니분석
- 비지도, 목적 없음.
- 순차분석
- 서열분석, 연속 규칙.
- 연관분석 평가
- 지지도 = (A∩B)/전체
- 신뢰도 = (A∩B)/A
- 향상도 Lift = (A∩B)/A*B =실제/랜덤 = ((A∩B)/A) / B = 신뢰도/B = 상관이 없으면 1이다.