III - 2. 데이터 마이닝
1. 데이터마이닝
1) 데이터마이닝 개요
- 정의: 대용량 데이터에서 의미있는 패턴 파악, 예측으로 의사결정에 활용하는 방법
- 활용: 시각화분석, 분류, 예측, 군집화, 포캐스팅
2) 작업 유형
- 예측 목적
분류규칙: 분류모형을 만들어 레코드의 결과값 예측(회귀분석, 판별분석, 신경망, 의사결정나무)
- 설명 목적
연관규칙: 데이터간 관계 발견(동시 발생 매트릭스)
연속규칙: 연관규칙에 시간관련 정보 포함(동시발생 매트릭스)
데이터 군집화: 특성에따라 그룹화, 결과값 없음(K-Means Clustering)
3) 학습법
- 교사학습: 목적변수가 존재하는 분석
의사결정나무, 인공신경망, 일반화 선형 모형(회귀 분석, 로지스틱 회귀 분석), 사례기반 추론, k-Nearest Neighbor
- 비교사학습: 목적변수 없이 설명을 위한 분석
OLAP, 연관성 규칙발견, 군집분석, SOM
4) 추진단계
- 목적 설정: 명확한 목적 설정
- 데이터 준비: 다양한 데이터 준비, 정제를 통해 품질 보장
- 데이터 가공: 목적변수 정의, 모델링을 위한 데이터 형식으로 가공
- 기법 적용: 데이터 마이닝 기법 적용으로 정보 추출
- 검증: 추출 결과 검증 -> 업무 적용 -> 투자대비 성과(ROI) 등 전파
5) 데이터 분할
- 구축용: 50% 데이터를 모델링 훈련용으로 활용
- 검정용: 30% 데이터를 구축된 모형의 과대/과소 추정의 판정 목적 활용
- 시험용: 20% 데이터를 테스트or과거 데이터를 활용해서 모델 성능 평가에 활용
2. 의사결정나무 분석
1) 분류분석 VS 예측분석
- 공통점: 레코드의 특정 속성의 값 예측
- 차이점
분류분석: 레코드의 범주형 속성 예측
예측분석: 레코드의 연속형 속성 예측
- 분류 모델링: 신용평가모형, 사기방지모형, 이탈모형, 고객세분화
- 분류기법: 회귀분석, 로지스틱 회귀분석, 의사결정나무, CART, C5.0, 베이지안 분류, naive Bayesian, 인공신경망, 지지도벡터기계, k 최근접 이웃, 규칙기반의 분류와 사례기반추론
2) 특징
- 분류함수를 의사결정 규칙으로 이루어진 나무 모양으로 그리는 방법
- 의사결정 문제를 시각화 -> 의사결정 시점, 성과 파악
- 계산 결과가 직접 나타나서 분석이 간편함
- 분류 정확도 높음
- 쉬운 계산으로 대용량 데이터에서도 빠른 작성
- 비정상 잡음 데이터에 민감함 없이 분류 가능
- 한 변수와 상관성 높은 불필요 변수가 있어도 영향 없음
3) 활용
- 세분화: 특성에 따른 그룹화를 통해 그룹별 특성 발견
- 분류: 예측변수들에 근거해서 목표변수의 범주를 등급별 분류
- 예측: 자료간의 규칙을 발견해서 미래의 사건을 예측
- 차원축소 및 변수선택: 목표변수에 영향이 큰 예측변수 도출
- 교호작용효과의 파악: 예측 변수들의 결합으로 목표 변수에 작용하는 규칙 파악
- 범주의 병합, 연속형 변수의 이산화: 범주형 목표변수의 범주 병합, 연속형 목표변수 이산화
4) 의사결정나무 분석
- 분석단계
성장: 각 마디에서 최적의 분리규칙을 발견해서 나무를 성장, 정지규칙 만족 시 중단
가지치기: 오차에 대한 위험도가 높거나 부적절한 추론규칙을 가진 가지와 불필요 가지 제거
타당성 평가: 이익도표, 위험도표, 시험자료를 이용해서 평가
해석 및 예측: 구축된 나무 모형 해석해서 예측모형 설정 후 적용
- 대형모형: 과대적합 위험 // 소형모형: 과소적합 위험
마디에 속한 자료가 일정 수 이하일 때 분할을 정지하고 가지치기 실시해서 해결
- 불순도에 따른 분할 측도: 카이제곱 통계랑, 지니지수, 엔트로피 지수
5) 의사결정나무 분석의 종류
- CART: 연속형 목표변수를 예측하는 의사결정 나무
불순도의 측도가 범주형 목적변수일 경우에는 지니지수, 연속형 목적변수일 경우엔 분산을 이용한 이진분리를 사용
- C4.5 & C5.0: CART와는 다르게 다지분리 가능, 범주 수 만큼 분리가 일어남, 불순도의 측도로 엔트로피 지수를 사용
- CHAID: 가지치기 없이 적당한 크기까지 성장 후 중지, 범주형 변수를 입력변수로 사용, 불순도의 측도로 카이제곱 통계량 사용
3. 앙상블 분석
1) 앙상블 기법
- 여러개의 예측 모형 조합해서 최종 예측모형 생성
- 종류: 다중 모델조합 방법, classifier combination 방법
- 학습방법의 불안정성 해결 목적(의사결정나무: 불안정성 높음 / 1-Nearest Neighbor: 낮음)
2) 배깅
- 주어진 자료에서 여러개의 부트스트랩 자료 생성 후 각 예측모형 생성, 결합 모형 생성
- 훈련자료를 모집단으로 사용해서 평균 예측 모형 생성(분산을 줄이고 예측력은 향상 가능)
3) 부스팅
- 예측력이 약한 모형 결합해서 강한 예측 모형 생성
- 훈련 오차를 쉽고 빠르게 줄일 수 있다.
- 경우 예측오차가 향상되어 배깅에 비해 성능이 뛰어난 경우가 많음
3) 랜덤 포레스트
- 배깅, 부스팅에 비해 많은 무작위성을 주어 약한 학습기 생성 후 선형 결합하는 방법
- 단점: 이론적인 설명이나 결과에 대한 해석이 어려움
- 장점: 예측력이 매우 높음(입력 변수가 많을수록 예측력이 높아짐)
4) 스태킹
- 다양한 학습 모델을 통해 구성
4. 인공신경망 분석
1) 인공신경망
- 인간의 뇌를 기반으로 한 추론 모델
- 세포체: 뉴런 / 수상돌기: 입력 / 축색돌기: 출력 / 시냅스: 가중치
2) 인공신경망 연구
- 1943년 매컬럭과 피츠가 인간의 뇌를 디지털 네트워크 모형으로 간주하고 신경세포의 신호처리 과정을 모형화해서 단순 패턴분류 모형개발
- 헵: 신경세포 사이의 연결강도 조정해서 학습규칙 개발
- 로젠블럿: 퍼셉트론 인공세포를 개발했으나 비선형성 한계점 발생 -> XOR 문제
- 홉필드, 러멜하트, 맥클랜드: 역전파 알고리즘을 활용해서 비선형성을 극복한 다계층 퍼셉트론 개발
3) 뉴런
- 기본적인 정보처리 단위
- 입력 링크에서 가중치가 있는 여러 신호를 받아 활성화 수준 계산 후 하나의 출력신호 출력
- 전이함수(활성함수) 사용: 입력 가중치합 계산 -> 임계값 비교(가중치 합<임계값 ? -1 : 1)
4) 신경망모형 구축시 고려사항
- 입력변수: 복잡성으로 인해 입력자료 선택에 매우 민감
범주형 변수: 모든 범주에서 일정 빈도 이상의 값을 가지고 범주의 빈도가 일정 -> 가변수화 적용
연속형 변수: 입력변수 값들의 범위가 큰 차이가 없을 때-> 평균 기준 비대칭 분포시 안좋은 결과 도출, 변환 및 범주화 활용
- 가중치 초기값: 역전파 알고리즘의 경우 초기값 선택이 매우 중요
가중치 0이면 시그모이드 함수는 선형, 신경망 모형은 선형 모형이 됨
일반적으로 초기값은 0 근처의 랜덤값 선정, 선형모형은 가중치 증가에 따라 비선형으로 변화
- 학습모드
온라인 학습모드: 각 관측값을 순차적으로 신경망에 투입(가중치 추정값 매번 바뀜)
확률적 학습모드: 온라인 학습 모드와 같으나 신경망에 투입되는 관측값 순서가 랜덤
배치 학습 모드: 전체 훈련자료를 동시 투입
- 학습률: 상수값 사용 / 처음에는 큰값->반복->해가 가까울 수록 0에 수렴
- 은닉층, 은닉노드의 수: 많으면 가중치 많아져서 과대적합 / 적으면 과소적합 문제 발생
은닉층 수 결정: 은닉층이 하나인 신경망은 범용근사자가 되므로 가급적 1개로 설정
은닉노드 수 결정: 적절한 큰값으로 결정 -> 가중치 감소시키며 모수에 대한 벌점화 적용
- 과대적합 문제: 많은 가중치를 추정해야하므로 과대적합 문제 빈번
조기종료: 모형 적합 과정에서 검증 오차 증가하면 반복 중지
(선형모형의 능형회귀와 유사한)가중치 감소 벌점화 기법
- 신경망 모형은 비용함수, R은 비볼록 함수 / 여러개의 국소 최소값을 가짐
오차가 작은 것 or 평균을 구해서 최종 예측값 선정 / 배깅 적용으로 최종 예측치 선정
5) 로지스틱 회귀분석
- 반응변수가 범주형인 경우 적용되는 회귀분석모형
- 새로운 설명변수 or 예측변수 적용 시 반응변수의 각 범주에 속할 확률 추정(예측 모형)하여 추정 확률을 기준치로 분류하는 목적(분류모형)으로 활용
- 사후확률: 모형의 적합을 통해 추정된 확률
- glm(): 로지스틱 회귀분석 실행
- 표현: glm(종속변수~독립변수1+...+독립변수k, family=binomial, data=데이터셋명)
5. 군집분석
- 객체의 유사성 측정 -> 유사성 높은 대상집단 분류 -> 유사성과 상이성 규명
- 특성에 따라 여러개의 배타적인 집단으로 나누는 것
- 군집의 개수, 구조에 대한 가정 없이 데이터로부터 거리를 기준으로 군집화 유도
1) 군집분석의 특징
- 비교사학습법 -> 목표변수(종속변수) 정의 없이 학습 가능
- 목적에 따라 분석자가 군집 정의 가능
- 요인분석과의 차이: 유사한 변수가 아닌 객체를 묶어줌
- 판별분석과의 차이: 집단이 없는 상태에서 집단 구분
2) 군집분석의 거리측정
- 연속형 데이터: 유클리드 거리, 표준화 거리, 마할라노비스 거리, 체비셔프 거리, 맨하탄 거리, 캔버라 거리, 민코우스키 거리 등 활용
- 범주형 데이터: 자카드 거리 활용
3) 계층적 군집분석: 군집을 점차 줄여나가는 방법
- 최단 연결법: n*n 거리행렬에서 가장 가까운 데이터를 묶어서 군집 형성
군집, 데이터간 최단거리 계산 후 거리행렬 수정 -> 새로운 군집 형성
- 최장 연결법: 군집, 데이터간 최장거리를 계산 후 거리행렬 수정
- 평균 연결법: 군집, 데이터간 평균거리를 계산 후 거리행렬 수정
- 와드 연결법: 군집 내 편차의 제곱합 고려, 군집화를 통해 정보의 손실 최소화
4) 비계층적 군집분석: 모든 가능한 방법으로 최적화된 군집 형성
- K-평균 군집분석
군집의 수, 초기값을 정해 값(seed) 중심으로 군집 형성 -> 각 데이터를 가장 가까운 see 군집으로 분류 -> 군집의 seed값 재 계산 -> seed값 없고 모든 개체 할당될 때 까지 반복
- K평균 군집분석의 특징: 연속형 변수 활용 가능, 초기 중심값 임의 선택 가능, 가급적 가까이 선택, 일렬 선택하지 않는게 좋음, 초기중심의 오차 제곱합 최소화 방향으로 군집이 형성되는 탐욕적 알고리즘-> 안정된 군집 보장하지만 최적이라는 보장 없음
- 장점: 단순한 알고리즘, 빠른 수행, 분석 방법 적용 용이, 계층적 대비 많은 데이터 활용 가능
- 단점: 군집 수, 가중치와의 거리 정의 어려움, 목적이 없으므로 결과 해석 어려움, 잡음 혹은 이상값 영향 큼, 볼록한 형태가 아닌 군집이 존재할 경우 성능이 떨어짐
5) 혼합 분포 군집
- 모형 기반 군집 방법, 가중치를 자료로부터 추정하는 방법
- 추정된 k개의 모형 중 출신 모형 추정에 따라 군집 분류
- EM 알고리즘을 사용해 혼합 모형에서의 모수와 가중치를 추정
- 군집의 크기가 작으면 추정이 어려움
- K-평균군집처럼 자료에 민감
6) SOM
- SOM 알고리즘(코호넨 맵): 코호넨에 의해 개발
- 비지도 신경망: 고차원 데이터->저차원 뉴런 정렬->지도로 형상화(입력변수의 위치관계 보존)
- 특징: 쉬운 시각적 이해, 패턴 발견이나 이미지 분석 용이, 단 하나의 전방패스 사용으로 빠름
6. 연관 분석
1) 연관성 분석
- 기업 DB에서 사건들 간의 규칙을 발견하기 위한 분석
- 장바구니 분석: 장바구니에 함께 들어있는 객체 분석
- 순차 분석: 구매 후 추가 구매 품목 분석
2) 연관성분석의 측도
- 산업 특성에 따라 지지도, 신뢰도, 향상도 값을 고려해서 규칙 선택
- 지지도: 전체 거래 중 항목 A와 B를 동시에 포함하는 거래의 비율
- 신뢰도: 항목 A를 포함한 거래 중 B가 포함될 확률
- 향상도: B 단독구매 -> A+B 동시구매시 B 구매 확률 증가 비율
3) 연관분석 특징
- 절차: 최소지지도 선정(-5%시작) -> 최소 지지도 넘는 품목 분류 -> 2가지 품목 집합 생성 -> 반복 수행으로 빈발품목 집합 선정
- 장점
탐색적 기법: 연관성 분석(조건 반응으로 표현) 결과의 쉬운 이해 가능
비목적성 분석기법: 방향, 목적이 없을 경우 목적변수가 없으므로 유용하게 활용
데이터 형태의 용이성: 데이터 변환 없이 이용
계산의 용이성: 간단한 계산
- 단점: 많은 계산 과정, 적절한 품목 결정, 품목의 비율 차이
- 두 항목의 높은 지지도, 신뢰도가 높은 연관이 없을 수도 있음(향상도 함께 고려)
4) Apriori
- 연관 규칙 알고리즘 중 우선시되는 알고리즘
- 원리: 항목집합이 빈발 -> 모든 부분집합도 빈발
- 지지도의 anti-monotone 성질: 어떤 항목집합의 지지도는 그 부분집합들의 지지도 이하
'자격증 > ADsP 요약 정리' 카테고리의 다른 글
[ADsP 요약 정리] 3-1. 데이터 분석 (0) | 2019.02.10 |
---|---|
[ADsP 요약 정리] 2. 데이터 분석 기획 (0) | 2019.02.10 |
[ADsP 요약 정리] 1. 데이터 이해 (0) | 2019.02.10 |