3과목
데이터 마이닝
-
모든 사용가능한 원천 데이터를 기반으로 감춰진 지식, 기대하지 못했던 경향 또는 새로운 규칙 등을 발견하고 이를 실제 비즈니스 의사결정 등에 유용한 정보로 활용
-
단계
목적 정의 -> 데이터준비 -> 데이터가공 -> 데이터마이닝 기법 적용
기법
- 분류
: 새롭게 나타난 현상을 검토하여 기존의 분류, 정의된 집합에 배정
특성에 따른 분류
- 추정
: 주어진 입력데이터를 사용하여 알려지지 않은 결과의 값을 추정
- 연관분석 **
: 같이 팔리는 물건 같이 아이템의 연관성을 파악
ex) 카탈로그 배열 및 교차 판매, 공격적 판촉행사 등의 마케팅 계획
- 예측
: 미래에 대한 예측 추정을 제외하면 분류나 추정과 동일한 의미
- 군집
: 미리 정의된 기준이나 예시에 의해서 가 아닌 레코드 자체가 다른 레코드와 유사성에 의해 그룹화되고 이질성에 의해 세분화 됨
- 기술
: 데이터가 가진 특징 및 의미를 단순하게 설명하는 것
분류 분석
방법
분석용 데이터 준비 -> 탐색적 분석, 데이터 전처리 -> 모델링 -> 모델평가 및 검증 -> 모델적응 운영 방안 수립
Classification은 값이 있는것
Clustering은 값이 없는 것
분류 분석의 종류
- 로지스틱 회귀
- 의사결정 나무
- 앙상블
- 신경망 모형
- KNN, 베이즈분류 모형, SVM(서포트벡터기계), 유전자 알고리즘
로지스틱 회귀분석
- 독립변수 : 연속형, 종속변수 : 범주형 => 결과가 범주형으로 나옴
- odds : 성공률/실패률
- log odds : 값의 범위를 전체 실수범위로 확장하기 위해서
- sigmoid : 연속형 0~1 사이의 값으로 바꾸는 함수
의사결정 나무
- 특징
- 새로운 데이터를 분류하거나 값을 예측
- 이전 분할에 영향을 받음
- 자식 마디로 갈수록 순수도가 증가하도록 분류나무를 형성
- 이산형, 범주형 변수 모두 사용 가능
- 가지치기 규칙
- 사용이유 : 최종 노드가 많으면 Overfitting 가능성이 커짐
- 불순도 측정 지표
- 지니 지수 : 값이 작을수록 순수도가 높음(분류 잘 됨)
- 엔트로피 지수 : 불순도 측정 지표, 가장 작은 값을 갖는 방법 선택
- 카이제곱 통계량의 유의 확률
앙상블 모형
- 특징
- 여러 개의 분류 모형에 의한 결과를 종합하여 분류의 정확도를 높이는 방법
- 약하게 학습 된 여러 모델들을 결합하여 사용
- 성능을 분산시키기 때문에 과적합 감소 효과가 있음
- Voting
- Bagging **
- 서로 다른 훈련 데이터 샘플로 훈련, 서로 같은 알고리즘 분류기 결함
- 여러 모델이 병렬로 학습, 그 결과를 집계하는 방식
- 중복을 허용하는 크기가 같은 표본을 여러 번 단순 임의 복원 추출
- 추출되지 않을 수도 있음
- Boosting **
- 여러 모델이 순차적으로 학습
- 분류가 잘못된 데이터에 더 가중을 주어 표본을 추출하는 분석 기법
- 랜덤 포레스트
- 배깅에 랜덤과정을 추가한 방법
- 설명변수의 일부분만 고려하여 성능을 높임
- 여러 개 의사결정 나무를 사용, 하나의 나무를 사용할 때보다 과적합 문제를 피할 수 있음
- K-NN
- 거리 기반으로 이웃을 뽑기 때문에 스케일링이 중요
- 분류와 회귀 목적으로 사용 가능
- 새로운 데이터가 들어오면 그때부터 계산을 시작, 지도 학습
- 인공 신경망
- 인렵층, 은닉층, 출력층으로 구성
- = 퍼셉트론
- 경사하강법
- 함수 기울기를 낮은 쪽으로 계속 이동시켜 극값에 이를 때 까지 반복시키는 것
- 기울기의 최소값을 찾아내는 머신러닝 알고리즘
- 장점
- 이상치 잡음에 대해서도 민감하게 반응X
- 연속형, 이산형 모두에 적용 가능
- 단점
- 결과에 대한 해석이 쉽지 않음
- 훈련 과정에 시간이 오래 걸림
- sigmoid 함수
- softmax 함수
- 여러 개의 다 범주일 때 각 범주에 속할 사후 확률을 제공
- 신경망 은닉 층, 은닉 노드
- 너무 적을 시
- 많을 시
- 일반화가 어렵다
- Overfitting 문제 발생
- 레이어가 많아지면 기울기 소실 문제가 발생
- 역전파
- 기울기 소실 문제
- 다층신경망에서 은닉층이 많아 역전파 알고리즘으로 학습시켜할 때 문제 발생
모형 평가
홀드아웃
- 원천 데이터를 랜덤하게 두 분류로 분리하여 교차검정을 실시하는 방법
- 과적합 발생 여부를 확인하기 위해 주어진 데이터의 일정 부분을 모델을 만드는 훈련( 훈련용 자료, 검증용 자료)
교차검증
- 데이터가 충분하지 않을 경우 해결책
- 클래스 불균형 데이터에는 적합 X
- 반복적으로 성과를 측정하여 그 결과를 평균하는 것
붓스트랩
- 교차검증과 유사하지만 훈련용 자료를 재선정
- 관측치를 한 번 이상 훈련용 자료로 사용
데이터 불균형 시
- under sampling : 적은 class의 수에 맞추는 것
- over sampling : 많은 class의 수에 맞추는 것
- 정밀도
- 예측값이 True인 것에 대해 실제값이 True인 지표
- 재현율, 민감도
- 실제 값이 True인 것에 대해 예측값이 True인 지표
- ROC **
- X축 : False positive rate(1 - Specificity)
- y축 : True positive rate(Sensitivity)
- 제일 좋은 위치는 x = 0, y = 1인 경우
- AUC : ROC 그래프의 밑부분의 면적, 넓으수록 좋은 모형
군집
계층적 군집 분석의 특징
- 가장 유사한 개체를 묶어 나가는 과정을 반복, 원하는 개수의 군집을 형성
- 두 개체 간의 거리에 기반 -> 거리 측정에 대한 정의가 필요함
- 이상치에 민감함
- 사전에 군집 수 k를 설정할 필요가 없는 탐색적 모형
- 한 번 군집이 형성되면 군집에 속한 개체는 다른 군집으로 이동X
비계층적 군집
- k-means
- 사전의 군집의 수 k를 정해 주어야 함
- 잡음이나 이상값에 영향을 받기 쉬움
- 평균 대신 중앙값을 사용하는 k-medoids 군집을 사용할 수 있음
- 순서
- 초기 군집의 중심으로 k개의 객체를 임의로 선택
- 각 자료를 가장 가까운 군집의 중심에 할당
- 각 군집 내의 자료들의 평균을 계산하여 군집의 중심을 갱신
- 군집 중심의 변화가 거의 없을 때까지 2,3을 반복
- DBSCAN
- 밀도 기반 클러스팅을 사용
- k값을 정할 필요 X
- 이상치의 성능 하락 X
- 혼합분포군집
- EM 알고리즘
- E step : k개의 모형 군집에 대해 모수를 사용하여 군집에 속할 사후 확률을 구함
- M step 사후확률을 이용해 최대 우도 추정으로 모수를 다시 추정하고 이를 반복
군집합 평가지수
- 실루엣 계수
- 1에 가까울 수록 군집화가 잘 되었다고 판단
- 클러스터 안의 데이터들이 다른 클러스터와 비교해 얼마나 비슷한가를 나타낸다
SOM
- 인공신경망의 한 종류, 차원축소와 군집화를 동시에 수행
- 비지도 학습의 한 가지 방법
- 고차원으로 표현된 데이터를 저차원으로 변환
- 경쟁층과 입력층으로 구성
SOM vs 신경망 모형
- 신경망 모형은 연속적인 layer로 구성, SOM은 2차원 그리드(격자)로 구성
- 신경망 모형은 에러 수정을 학습, SOM은 경쟁학습 실시
- 신경망 모형은 역전파 알고리즘, SOM은 전방패스를 사용(속도가 빠름)
향상도 해석
- 1일 때 품목 사이에 상호관계 X
- 1보다 작은 경우 두 품목이 서로 음의 상관관계
- 1보다 클 경우 두 품목이 서로 양의 상관관계, 연관성이 높다고 판단