[ADsP] 13강 정형 데이터 마이닝(~ 의사결정나무)
03장 정형 데이터 마이닝
01 데이터 마이닝
1. 데이터 마이닝 개요
1) 데이터 마이닝의 이해
(1) 데이터 마이닝이란
- 방대한 양의 데이터 속에서 숨겨진 규칙, 패턴 등을 찾아내어 예측하거나 의사결정에 활용하는 것을 목적
- 머신러닝을 구현하기 위한 바탕
(2) 통계분석과 데이터 마이닝의 차이
- 통계분석 : 표본을 통해 의미있는 자료를 추출하고 이를 통해 의사결정, 요약, 연광성 파악, 예측 등의 결과로 이어지도록 하는 일련의 과정
- '수집 - 정제 - 추정 - 검정'의 과정을 통해 이루어짐
- 데이터마이닝 : 데이터 속의 숨겨진 규칙, 패턴 등을 찾아내어 그 과정에서 얻은 인사이트를 얻어 이를 활용하는데 궁극적인 목표
- '목적 정의 - 데이터 준비 - 데이터 가공 - 데이터 마이닝 기법 적용 - 검증' 순으로 진행
2) 데이터 마이닝의 종류
(1) 데이터 마이닝 방법에 따른 분류 ★★★
- 지도학습 : 정답이 있는 데이터를 활용해 분석 모델을 학습시키는 것
- 비지도학습 : 정답을 알려주지 않고 학습하는 것, 컴퓨터가 학습할 때 입력 데이터만 가지고 그 속에 숨겨진 패턴을 찾아내는 학습 방법
(2) 데이터 마이닝 분석 목적에 따른 분류
- 분류 분석 : 지도학습 중 하나, 데이터가 어느 그룹에 속하는지 판별하는 분석 기법
- 군집 분석 : 비지도학습 중 하나, 이질적인 데이터들 사이의 유사성을 측정하여 유사성이 높은 객체끼리 그룹으로 묶기 위한 방법
- 연관 분석 : 비지도학습 중 하나, 데이터(상품)의 연관성을 파악하는 분석
- 그외 : 추정 분석, 예측 분석, 기술 분석
3) 데이터 마이닝의 프로세스 ★★
(1) 목적 정의
(2) 데이터 준비 - 데이터 수집
(3) 데이터 가공 - 전처리 등 목적에 따른 혁식 변환
(4) 데이터 마이닝 기법 적용 - 준비된 데이터를 활용하여 기법 적용
(5) 검증
2. 데이터 분할
1) 데이터 분할의 이해
(1) 데이터 분할
- 데이터를 훈련용, 검정용, 평가용의 세 가지 데이터로 분할
- 훈련용 : 모델 구축에 활용
- 검정용 : 구축된 모델의 적합여부 검증
- 평가용 : 최종적으로 구축된 모델의 성능을 평가
(2) 과적합(과대적합)과 과소적합 (회귀분석에서도 공부) ★★
- 과적합 : 모델이 학습 데이터를 과하게 학습하는 것을 의미
- 과소적합 : 모델이 너무 단순해서 학습 데이터조차 제대로 예측하지 못하는 경우
2) 데이터 분할을 통한 검증 ★★★
(1) 홀드아웃 ★★
- 가장 보편적인 데이터 분할을 통한 검증 방법
- 전체 데이터를 랜덤하게 추출해 학습 데이터와 테스트 데이터로 분리
(2) K-Fold 교차검증(cross-validation) ★★
- 전체 데이터셋을 k개의 집단으로 구분한 뒤 k-1개를 훈련용 데이터로, 나머지 1개를 평가용 데이터로 사용하여 k개의 모델을 종합하여 최종 모형을 구축하는 방법
- 단점 : 모델 훈련에 많은 시간이 필요
(3) 붓스트랩 ★★
- 표본을 다시 추출하는 방법의 일종, 신뢰도를 높이고 모델의 성능 향상 가능
- 오버샘플링 혹은 언더샘플링과 같은 문제가 있을 때 사용, 과적합 발생 가능성을 낮춤
(4) 계층별 k-겹 교차검증(Stratified k-fold cross validation) ★★
- 불균형 데이터를 분류하는 문제에서 사용
- 작동 방식은 k-폴드 교차검증과 동일
- 다만, 추가적으로 폴드별 계층 형성
(5) 오버샘플링 & 언더샘플링
- 오버샘플링 : 특정 범주가 적은 데이터를 데이터 셋의 크기를 확장시키는 작업
- 언더샘플링 : 특정 범주가 많은 데이터를 다른 범주와 균형을 맞추도록 데이터 셋을 축소시키는 작업
02 분류 분석
1. 로지스틱 회귀분석
1) 로지스틱 회귀분석 개요
(1) 로지스틱 회귀분석
- 회귀분석을 분류에 이용한 방법, 독립변수의 선형 결합을 이용해 사건의 발생 가능성을 예측하는 분석방법
- 종속변수가 범주형 변수일 때 사용 가능
(2) 로지스틱 회귀분석의 변수 ★★★
- 종속변수가 속할 수 있는 집단이 두 개로 이진 분류가 기본
- 다중 로지스틱 회귀분석 : 세 개 이상의 집단으로 분류하는 경우
- 독립변수가 연속형이면서 종속변수가 범주형일 때 가능
- 독립변수가 범주형일 경우에는 그 범주형 독립변수를 더미변수로 변환하면 가능
- 더미변수 : 범주형 값을 수치형 값으로 바꾸는 방법
예) 성별 - 남자, 여자 → 성별 - 0, 1
2) 로지스틱 회귀분석의 알고리즘 ★★★
(1) 오즈(Odds)
- 성공할 확률이 실패할 확률의 몇 배인지를 나타내는 값
- 각 범주(집단)에 분류될 확률 값을 추정
- 독립변수(x)가 주어졌을 때 성공확률은 P, 실패확률 1-P
- 오즈 값은 (P/1-P)
- 한계점 : 음수를 가질 수 없음, 확률값과 오즈의 그래프는 비대칭성
(2) 로짓변환
- 오즈의 한계를 극복하기 위해 오즈에 로그값을 취한 것이 바로 로짓
(3) 시그모이드 함수
- 로지스틱 회귀분석과 인공신경망 분석에서 활성화 함수로 활용되는 대표적인 함수
2. 의사결정나무
1) 의사결정나무 개요
(1) 의사결정나무
- 자료를 학습하여 특정 분리 규칙을 찾고, 그에 따라 몇 개의 소집단으로 분류하는 방법
- 데이터의 어떤 기준을 바탕으로 분류 기준값을 정의하는지가 알고리즘의 성능에 큰 영향
(2) 의사결정나무 구성 요소
- 종속변수가 연속형 → 회귀트리
- 종속변수가 이산형 → 분류트리
- 뿌리마디 - 최상위 마디
- 자식마디 - 하나의 마디로 나온 2개 이상의 하위 마디
- 부모마디 - 자식마디의 바로 상위 마디
- 끝마디 - 자식마디가 없는 최하위 마디
- 중간마디 - 부모와 자식마디를 모두 보유한 마디
- 가지 - 미디를 연결하는 연결선
- 깊이 - 뿌리마디를 제외한 중간마디 수
(3) 의사결정나무의 활용
- 세분화 : 비슷한 특성을 가진 그룹별로 분할
- 분류 : 종속변수의 범주를 몇 개의 등급으로 분류
- 예측 : 데이터들로부터 규칙을 찾아내어 이를 예측에 활용
- 차원 축소 및 변수 선택 : 여러 독립변수들 중 종속변수에 영향을 끼치는 변수를 선택
- 교호작용 : 종속변수에 작용하는 규칙을 파악 / 병합 또는 이산화
(4) 의사결정나무의 특징 ★★★ (표 참고하기!!)
2) 의사결정나무의 분석 과정 ★★★
(1) 성장
- 성장 단계 : 분석 목적과 자료구조에 따라 적절한 분리 기준과 정지 규칙을 설정해 의사결정나무를 성장시키는 단계
- 분리기준 : 데이터 분류 방법으로 불순도를 사용
* 불순도 : 자료들의 범주가 한 그룹 안에 얼마나 섞여 있는지를 나타내는 측도
* 지니 지수 계산법 ★★★ (실제 계산법 숙지 필수!)
- 정지규칙 : 너무 많은 분리 기준을 보유하면 해석상의 어려움 발생, 특정 조건하에 현재의 마디에서 더 이상 분리가 일어나지 않고 현재의 마디가 끝마디가 되도록 정지
(2) 가지치기
- 일부 가지를 적당히 제거하여 과적합과 과소적합을 예방
(3) 타당성 평가
(4) 해석 및 예측
- 예측하고 이를 해석하는 단계