본문 바로가기
자격증/ADSP

[ADSP] 오답노트: 3-5.데이터마이닝

by kime2 2024. 2. 20.
  1. 데이터 마이닝 개요
  2. 지도학습 - 분류분석 / 의사결정나무
  3. 앙상블기법
  4. 모형평가
  5. 지도학습 - 분류 -인공신경망
  6. 비지도 - 군집분석
  7. 비지도 - 연관성분석

데이터 마이닝 개요

- 데이터마이닝

  • 대용량 데이터 속에서 숨겨진 지식 또는 새로운 규칙을 추출해내는 과정
  • 기업이 보유하고 있는 거래데이터, 고객데이터 등과 기타 외부 데이터를 포함하는 모든 데이터를 기반으로 새로운 규칙 등을 발견하고 이를 실제 비즈니스 의사결정 등에 유용한 정보로 활용하고자 하는 작업
  • 데이터를 구축용 50 / (검정용 30)-생략가능 /시험용 20으로 분리
  • 필요에 따라서 구축과 시험을 번갈아 가며 사용하는 교차확인을 통해 모형을 평가하기도 함

 

- 데이터 마이닝 기능

  • 군집분석 = 각 객체의 유사성을 측정하여 유사성이 높은 대상집단을 분류하고, 군집에 속한 객체들이 유사성과 서로 다른 군집에 속한 객체들의 상이성을 규병하는 분석방법 
  • -> 이질적인 모집단을 세분화
  • 기술 = 데이터마이닝의 목적으로 사람, 상품에 관한 이해를 증진시키기 위해 데이터의 특징 및 의미를 표현 및 설명하는 기능

 

- 분석기법

지도학습 비지도학습
의사결정나무(decision tree) -> 랜덤포레스트
인공신경망(ANN, astificial neural network)
일반화 선형모형(GLM, generalized linear model)
회귀분석(regression analysis)
로지스틱 회귀분석(logistic  regression analysis)
사례기반 추론(case-based reasoning)
최근접 이웃법(KNN)
OLAP(on-line analytical processing)
연관성 규칙 발견
군집분석(K-means clustering)
SOM(self organizing map)

 

- 비지도 분석 사례

고객의 과거 거래 구매 패턴을 분석하고 고객이 구매하지 않은 상품을 추천

상품을 구매할 때 그와 유사한 상품을 구매한 고객들의 구매데이터를 분석하여 쿠폰 발송

 

- 지도 분석(분류)분석사례

우편에 인쇄된 우편번호 판별 분석을 통해 우편물을 자동 분류

동일 차종의 수리 보고서 데이터를 분석하여 차량 수리에 소요되는 시간을 예측

 

- 분류방법-R패키지

rpart

party

margintree


지도학습 - 분류분석 / 의사결정나무

 

- 지도학습, 의사결정나무 

  • 귀납적 추론을 기반으로 실무에서 가장 많이 사용됨
  • 과적합해결 -> 가지치기 방법을 이용하여 트리를 조정
  • 가지치기 = 의사결정나무에서 과적합되어 현실 문제에 적용할 수 있는 적절한 규칙이 나오지 않는 현상을 방지하기 위해 사용되는 기법, 분류 오류를 크게 할 위험이 높거나 부적절한 규칙을 가지고 있는 가지를 제거
  • 불순도의 특정인 엔트로피 개념은 정보이론의 개념을 기반으로 하며, 그 의미는 여러가지 임의의 사건이 모여있는 집합의 순수성 또는 단일성관점의 특성을 정량화하여 표현한 것
  • 핵심적인 공통 개념은 하양식 기법이 사용되며, 각 진행 단계에서는 주어진 데이터 집합을 가장 적합한 기준으로 분할하는 변수값이 저장됨
  •  의사결정나무 평가 -> 이익도표 또는 검정용 자료에 의한 교차타당성 등을 이용해
  • 각 마디에서 최적의 분리규칙은 분리변수의 선택과 분리기준에 의해 결정
  • 분리변수의 P차원 공간에 대한 현재 분할은 이전 분할에 영향을 받는다
  • 사례: 대출신용평가, 환자 증상 유추, 채무 불이행 가능성 예측

*불순도 = 

*엔트로피 = 

*이익도표(lift chart) = 모델의 성능을 판단하기 위해 작성한 표 

*교차타당성

*분리변수(lift)

 

- 의사결정나무 불순도 측정 방법

카이제곱 통계량의 P-value는 그 값이 작을수록 자식 노드 내의 이질성이 크다엔트로피 지수가 가장 작은 변수와 이 때의 최적분리에 의해 분할 수행분산의 감소량을 최대화 하는 기준의 최적분리에 의해 자식마디 형성

지니지수 값이 클수록 이질적이며 순수도가 낮다 -> 작아야함

 

- 지도학습, 의사결정나무의 활용법

비슷한 특성의 그룹으로 분할하여 그룹별 특성 발견

데이터에서 규칙을 찾고 이를 미래 사건 예측에 활용

범주의 변합 및 연속형 변수의 이산화

종속변수의 범주를 몇 개의 등급으로 분류

 

-지도학습,  의사결정나무 특징

모형 분류의 정확도가 높다

분류 경계선 근처의 자료값에 대한 오차가 크다

새로운 자료에 대한 과적합 발생 가능성이 높다

데이터 정규화 및 단위 변환이 필요하지 않다

 

- 불순도의 여러가지 측도

지니지수는 노드의 불순도를 나타냄

지니지수의 값이 클수록 이질적이며 순수도가 낮다(불순도가 높다)

엔트로피 지수는 값이 클수록 순수도가 낮다

카이제곱 통계량의 기대도수 수식 = 열의합계  x 합의합계 / 전체합계

카이제곱 통계량에서 P-value는 그 값이 작을수록 자식노드 내의 이질성이 크다는 것

엔트로피 지수가 가장 작은 변수와 이 때 최적분리에 의해 분할 수행

분산의 감소량을 최대화하는 기준의 최적분리에 의해서 자식마디 형성


- 최근접 이웃 = 훈련용 데이터 집합으로부터 미리 모형을 학습하는 것이 아니라 새로운 자료에 대한 예측 및 분류를 수행할 때 모형을 구성하는 lazy learnong 기법을 사용

 

 

- K-nn(지도/분류,회귀)

작은 K는 모델이 데이터의 노이즈에 민감하게 반응하고 큰 K는 모델의 결정 경계를 더 부드럽게 한다

K-NN은 함수가 오직 지역적으로 근사하고 모든 계싼이 분류될 때까지 연기되는 인스턴스 기반 학습

적절한 K를 선택하는 것이 모델 성능에 중요

데이터 포인트의 근접이웃을 활용하여 분류 또는 회귀문제를 해결하는데 사용된다

 

- 로지스틱 회귀모형

  • 로지스틱 회귀모형 = 독립변수와 종속변수 사이의 관계를 설명하는 모형으로 종속변수가 범주형(0또는 1)값을 갖는 경우 사용
  • ->종속변수Y대신 로짓이라 불리는 상수를 사용하는 ㅓㅅ이 라니라 Y값 범위를 0과 1로 조정하기 위하 로짓한다
  • 설명변수가 한개인 경우 해당 회귀 계수의 부호가 0보다 작을 때 역 S자 모형을 그린다
  • 이러한 데이터에 대해 선형회귀모형을 적용하는 것이 기술적으로 가능하지만, 선형회귀의 문제점은 0이하의 값이나 1이상의 값을 예측값으로 줄 수 있다는 것이며 따라서 이를 활률값으로 직접 해석할 수 없다
  • 클래스가 알려진 데이터에서 설명변수들의 관점에서 각 클래스내의 관측치들에 대한 유사성을 찾는데 사용 가능
  • 오즈(odds)란 클래스 0에 속할 확률(1-p, 실패할 확률)이 클래스 1에 속할 확률(성공할 확률)P의 비로 나타낸다
  • -> odds = p/(1-p)
  • 종속변수의 값의 범위를 0,1로 조절하기 위해 로짓*logit)변환을 사용한다

 

- 베이즈

베이지안 확률은 주관적으로 확률을 해석한다

배이지안 확률은 분석자의 사전지식까지 포함해 분석하는 방법이다

베이즈 정리에서 확률은 주장 혹은 믿음의 신뢰도를 의미

* 빈도확률은 객관적을 확률을 해석하며 사건이 발생한 횟수의 장기적인 비율을 의미

 

 

- 서포터즈 벡터 머신(지도/분류, 회귀)

  • 주로 이미지 분류, 텍스트분류, 손글씨 인식 등에서 효과적으로 활용
  • 분류 및 회귀분석을 통한 지도학습
  • 데이터 포인트의 근접 이웃을 활용하여 분류 또는 회귀 문제를 해결하는 데 사용

- 범주 불균형 문제 = 분류모형을 구성하는 경우 예측실패의 비용이 큰 분류분석의 대상에 대한 관측치가 현저히 부족하여 모형이 제대로 학습되지 않은 문제

 

-lasso 회귀모형

모형에 포함된 회귀계수들의 절대값이 클수록 penalty를 부여하는 방식

자동적으로 변수선택

lambda의 값으로 penalty의 정도를 조정

L1의 규제방식(릿지->2규제)

 

- 판별분석

로지스틱 회귀분석과 비슷하며 프로파일링에 사용되는 분석

고객 그룹을 나누거나 자연과학, 금융, 마케팅 등에 활용

핀별분석에는 선형 분류함수를 적용해야 하며 피셔의 선형 부류함수가 있다

거리를 측정하기위해 유클리드, 마할라노비스 거드 등으 ㄹ활용하며 피어슨상관계수로는 불가능


지도(교사학습법) - 앙상블기법

 

- 앙상블(배깅, 부스팅, 랜덤포레스트 + 스태킹)

  • 데이터마이닝의 방법론
  • 앙상블모형 = 주어진 자료로부터 여러 개의 예측 모형을 만든 후 이러한 예측모형들을 결합하여 하나의 최종 예측모형을 만드는 방법
  • -> 여러 개별 모델을 결합하여 하나의 강력한 모델을 만드는 기법
  • 훈련을 한 뒤 예측을 하는 데 사용하므로 교사학습법(supervised learning) -> 지도학습
  • 단일 모델보다 높은 정확성과 일반화 능력을 제공
  • 결과가 수치형 데이터인 경우 값들의 평균을 통해 예측하고, 범주형인 경우 다수결 발식으로 최종 결과를 예측
  • (장)이상값에 대한 대응력이 높아진다
  • (장)전체적인 분산을 감소시켜 정확도를 높일 수 있다
  • (단)모형의 투명성이 떨어져 원인분석에 적합하지 않다
  • (단)각 모형의 상호 연관성이 높을수록 정확도는 떨어진다

 

- 랜덤포레스트

  • 의사결정나무의 특징인 분산이 크다는 점을 고려하여 배깅보다 더 많은 무작위성을 추가한 방법으로 약한 학습기들을 생성하고 이를 선형 결합하여 최종학습기를 만든다
  • 데이터마이닝 방법론의 앙상블 기법중 하나로, 분류분석 문제를 해결하기 위한 의사결정나우와 같은 방법론
  • 의사결정나무에서 나타나는 과대적합/과소적합의 문제를 해결
  • (장)예측력이 매우 높다
  • (장)정확도 측면에서 좋은 성과
  • (장)의사결정나무의 특징을 받아이상값에 민감하지 않다
  • (단) 해석이 어렵다
  • 예) 보험회사에서 자사 고객의 보혐갱신 여부를 고객의 인구통계학적 특성, 보험가입채널, 상품종류 등의 정보를 사용하여 예측

- 배깅

배깅 = 주어진 자료에서 여러개의 붓스트랩 자료를 생성하고, 각 붓스트랩 자료에 예측모델을 만든 후 결합하여 최종 예측모델을 만드는 방법

bagging() 함수 사용

보팅은 여러개의 모형으로 부터 산출된 결과를 다수결에 의해 최종 선정하는 것모집단의 특성이 잘 반영되고 분산이 작고 좋은 예측력을 보임

반복추출방법을 사용하기 때문에 같은 데이터가 한 표본에 여러 번 추출할 수 있고, 어떤 데이터는 추출되지 않을 수도 있다

배깅에서는 가지치기를 하지 않고 최대로 성장한 의사결정나무를 활용한다

 

- 부스팅

예측력이 약한 모형들을 결합하여 강한 예측모형을 만드는 방법

 


모형평가

 

- 과대적합

  • 과대적합 = 통계나 기계학습에서 모델에서 변수가 너무 많아 모델이 복잡하고 과대하게 학습될 때 발생
  • 학습데이터가 모집단의 특성을 충분히 설명하지 못할 때 발생
  • 변수가 너무 많아 모형이 복잡할 때 발생
  • 생성된 모델이 훈련 데이터에 최적화되어있기 때문에 테스트 데이터의 작은 변화에 민감하게 반응
  • 과대적합이 발생한 것으로 예상되면 학습을 종료하고 업데이트 하는 과정을 반복해 과대적합 방지

 

- 홀드아웃

  • 데이터양이 충분하지 않거나 입력변수에 대한 설명이 충분하지 않을 때 사용
  • 주어진 데이터를 랜덤하게 두개의 데이터로 구분하여 사용하는 방법
  • 데이터를 무작위로 두 집단으로 분이하여 실험데이터와 평가데이터로 설정하고 검정을 실시하는 모형 평가방법

- 이익도표(lift)의 평가도구 %captured response

%captured response = 전체에서 해당 집단을 분리해내는 비율

score에 따라 고객을 10개의 집단으로 구분하고, 집단이 누적된에 따라 전체 재구매 고객 대비 percentile별 누적 구매 고객의 비율

특정 범주의 고객에게 action을 수행할 경우, 실제 반응이 나타난 고객 중 몇 %의 고객을 확보할 수 있는지에 대한 수치

계산 = 해당집단에서 목표변수의 특정범주 빈도/전체 목표변수의 특정범주 빈도 x 100

 

-  ROC 커버

분류분석 모형의 평가를 쉽게 비교할 수 있도록 시각화한 그래프

이진 분류 모형의 성능을 평가하기 위해 사용

AUTROC 값이 크면 클수록 모형의 성능이 좋다고 평가

TTR: true positive rate -> 1인 케이스에 대한 1로 예측한 비율

FPR:false positive rate -> 0인 케이스에 대한 1로 잘못 예측한 비율

 

- 분류모형성과

이익도표는 등급별로 향상도가 급격하게 변동할수록 좋은 모형

이득곡선은 모델의 성능을 판단하기 위해 작성

향상도 곡선은 곡선이 기울어질수록 효과가 크다

향상도 곡선은 큰 값에서 시작 후 급격히 감소할 경우 모젤 또는 전략의 효과가 더 크다고 판단 가능

 

-(오분류표)F2 = 재현율(recall)에 2배만큼 가중치를 부여하여 조화 평균 한다

-> 분류모형의 평가기준 중 정확도와 재현율은 한 지표의 값이 높아지면 다른 지표의 값이 낮아질 가능성이 있기 때문에 보완

 


지도학습 - 분류 -인공신경망

 

- 인공신경망

  • 신경망 모형 = 자신이 가진 데이터로부터 반복적인 학습과정을 거처 패턴을 찾아내고 이를 일반화하는 예측방법
  • -> 피드포워드 신경망은 정보가 전방으로 전될되는 것으로 생물학적 신경계에서 나타나는 형태이며 딥러닝에서 가장 핵심적인 구조 개념
  • -> 신경말은 변수의 수가 많거나 입출력 변수간에 복잡한 비선형 관계가 존재할 때 유용하며, 잡음에 대해서도 민감하게 방응하지 않는다는 장점
  • -> 일반적인 인공신경망은 다층퍼셉트론을 의미, 다층퍼셉트론에서 정보의 흐름은 입력층에서 시작하여 은닉층을 거쳐 출력츨으로 진행
  • 역전파 알고리즘은 연결강도를 갱신하이 위해 예측된 결과의 실제값의 차이인 에러의 역전파를 통해 가중치를 구하는데서 시작
  • -> 역전파 알고리즘은 신경망 모형의 목적함수를 최족화하기 위해 사용된다. 연결강도를 갱신하기 위해서 예측된 결과와 실제값의 차이인 에러를 통해 가중치를 조정하는 방법이다
  • 은닉층의 뉴런개수는 신경망 모형에서 자동으로 설정되지 않으므로 직접 설정 필요
  • 은닉층의 뉴럽수와 개수를 정하는 것은 신경망을 설계하는 사람의 직관과 경험에 의존한다. 뉴런수가 너무 많면 과적합이 발생하고 뉴런수가 너무 적으면 입력 데이터를 충분히 표현하지 못한다
  • 인공신경망의 일반화 가중치 = neuralent()의 사용의 결과
  • -> 각 공변량의 영향을 표현하기 때문에 회귀모델에서 1번째 회귀변수의 유사한 해석을 갖는다
  • 단층신경망(퍼셉트론) = softmax함수를 통해 최종목표값은 활성함수에 의해 결정되는데 다양한 화성함주 중 출력값이 여러개로 주어지고 목표치가 다번주인 경우 각 범주에 사후확률를 제공 
  • *활성함수 = 인공신경망은 노드에 입력되는 값을 다음 노드로 바로 전달하지 않고 비선형함수에 통과시킬 떄 사용하는 함수
  • -> 입력한 값에 따라 출력신호를 내보낼지 여부를 결정하는 요소
  • -> 신경망 모형에서 output을 결정하며, 선형 또는 곡선으로 출력해주는 것
  • *활성함수 = step(0,1반환), sign(-1,1반환), sigmoid(0~1), linear,softmax(출력값이 다범주의 경우 사용)

- 인공신경망

인공신경망에서 입력은 시냅스에 해당하며 개별신호의 강도에 따라 가중된다비선형적인 문제를 분석하는데 유용초기 가중치에 따라 전역해가 아닌 지역해로수렴할 수 있다은닉충의 수와 은닉노드의 수가 너무 많으면 과적합이 발생할 수 있다

인공신경망 계층 구조출력층의 노드수는 출력 범주의 수로 결정된다

은닉노드의 수는 적절히 큰 값을 놓고 가중치를 감소시키며 적용하는 것

단층신경망은 한계점이 있기에 일반적인 인공신경망은 다층신경망을 의미

다층신경망은 입력층과 출력층 사이에 보이지 않는 다수의 은닉충을 가지고 있다

 

 

- 신경망모형

  • 신경망모형 = 자신이 가진 데이터로부터 반복적인 학습과적을 거쳐 패턴을 찾아내고 이를 일반화하는 예측방법
  • 일반적인 인공신경망은 다층 퍼셉트론을 의미, 다층 퍼셉트론에서 정보의 흐름은 입력층에서 은닉층을 거쳐 출력층으로 진행
  • (장점)신경망 모형은 변수의 수가 많거나 입출력 변수 간에 복잡한 비선형관계가 존재할 때 유용
  • (장점)잡음에 대해서도 민감하게 반응하지 않는다
  • 역전파 알고지즘은 연결강도를 갱신하기 위해 예측된 결과와 실제 값의 차이인 에러의 역전파를 통해 가중치를 구함
  • 역전파 알고리즘은 신경망 모형의 목적함수를 최적화하기 위해 사용, 연결강도를 갱신하기 위해서 예측된 결과와 실제값의 차이인 에러를 통해 가중치를 조정하는 방법
  • 은닉층의 뉴런수와 개수는 신경망 모형에서 자동으로 설정되지 않고 직접 설정해야 함
  • -> 은닉층의 뉴런수와 개수를 정하는 것은 신경망을 설계하는 사람의 직관과 경험에 의존
  • 뉴런수가 너무 많으면 과적합이 발생하고 뉴런수가 너무 적으면 입력 데이터를 충분히 표현하지 못한다

- 스그모이드함수 = 임력층이 직접 출력층에 엽결되는 단층신경망에서 활성함수로 사용하면 로지스틱 회귀모형 원리와 비슷하다

 

포화문제 = 인공신경망 모형에서 역전파를 진행함에 따라 각 노드를 연결하는 가중치의 절대값이 커져 조정이 더 이상 이루어 지지 않아 과소적합이 발생하는 문제

 

- 기울기 문제 = 신경망모형에서 은닉충의 개수가 너무 많이 설정하면 역전파 과정에서 앞쪽 은닉층의 가중치 조정이 이루어 지지 않아 신경망의 학습이 제대로 이루어 지지 않는  현상 + 네트워크 일반화가 어렵다

 

- 네트워크가 복잡한 의사결정 경계를 만들기 어렵다 <- 은닉층의 개수가 너무 적어


비지도 - 군집분석

 

- 비지도학습, 군집분석

  • 거리계산을 할때 dist 함수 사용 -> 거리측도에는 유클리디안, 표준화, 마라할노비스, 체비셰프, 캔버라, 민코우스키 거리 등이 있다
  • 덴도르그램 = 계층적 군집분석의 결과를 나내ㅡ타내는 도표로 무슨 군집과 무슨 군집이 서로 묶였는지/ 어떤 순서와 차례로 묶여갔는지/군집거리는 얼마나 되는지 알 수 있는 그래프
  • 와이드연결법 = 계층적 군집분석 수행시 두 군집을 병합하는 방법가운데 병합된 군집의 오차제곱합이 병합이전 군집의 오차제곱합의 합에 비해 증가한 정도가 작아지는 방행으로 군집을 형성하는 방법

- 계층적 군집분석

  • 계층적군집방법 = n개의 군집으로 시작해 점차 군집의 개수를 줄여나가는 방법
  • 덴도르그램  그래프를 통해 시각화
  • 군집의 개수를 미리 정하지 않아도 자동으로 지정됨(지정필수- 비계층적 군집: Kmeans, som, 혼합 등)
  • 거리계산함수 dist -> minkowski, binary, canberra
  • 와드연결법 = 계층적 군집분석 시행시 두 군집을 병합하는 가운데 병합된 군집의 오차제곱합이 병합 이전 군집의 오차제곱합에 비해 증가한 정도가 작아지는 방향으로 형성하는 방법

- 비계층적 군집분석

  • (장)주어진 데이터의 내부 구조에 대한 사전 정보가 없어도 의미있는 결과도출 가능
  • (장)당야한 형태의 데이터에 적용 가능
  • (장)분석방법의 적용 용이
  • (단)사전에 주어진 목적이 없으므로 해석이 어렵다

- K-means clustering

원하는 군집의 수K의 초깃값을 사전에 설정하고 분석

이상값에 영향을 많이 받는다

계층적 군집분석에 비해 많은 양의 데이터를 다룰 수 있다

거리를 측정해야 하므로 데이터의 변수들의 변수형이다

-> 변수의 크기(scale)에 영향을 받기 때문에 정규화 필수

-> min-max = 원 데이터의 분포를 유지하면서 정규화하는 방법 

 

- K평균군집 절차

초기 중심으로 K개의 객체를 임의로 선택한다

-> 각 자료를 가장 가까운 군집 중심에 할당한다

-> 각 군집 내의 자료들을 평균을 계산하여 군집의 중심으로 업데이트 한다

-> 군집 중심의 변화가 거의 없을 때까지 반복한다

 

- 집단내 제곱합 = Kmeans 군집으로 대표되는 비 계층적 군집방법에서는 군집의 개수인 K를 미리 정해주어햐 하기 때문에 군집수를 정하는데 활용할 수 있는 구래프

 

- Kmeans와 계측정 군집분석

K-means 군집분석은 계층적 군집분석과 달리 한 개체가 처음 속한 군집에서 다른 군집으로 이동해 재배치 할 수 있다

K-means 군집분석은 초기값에 다한 의존도가 커서 초기값을 어떻게 하느냐에 다라 군집이 달라딜 수 있다

계층적 군집분석은 동일한 거리계산법을 적용하면 몇번을 시행해도 동일한 결과가 나온다

 

 

 

-SOM(자기조직화지도) 

  • 경쟁학습으로 각각의 뉴런이 입력백터와 얼마나 가까운가를 계산하여 연결강도를 반복적으로 재조정
  • 이과정을 통해 연결강도는 입력패턴과 가장 유사한 경쟁층 뉴런이 승자가 된다

- 군집분석

군집 분석에 이용되는 다변량 자료는 별도의 반응변수가 요구되지 않는다

마케팅에서 고객특성 파악, 금융에서는 산업분석 등에 활용

유사도가 클수록 거리가 작아진다

오로지 객테들간의 유사성에만 기초하여 군집 형성

 

- 밀도기반 군집기법 = 군집화 기법 중 특정 공간에서 가까이 있는 데이터가 많은 지역을 중심으로 클러스터를 구성하며 비교적 비어있는 지역을 경계로 하는 군집기법,

 

- 실루옛 계수 = 군집모형평가 기준 중 하나이며, 군집의 밀집정도를 계산하는 방법으로 군집 내의 거리와 군집간의 거리를 기준으로 군집 분할의 성과 평가하는 지수

 

 


비지도 - 분류 - 연관성분석

- 향상도(lift) = 품목 B를 구매한 고객 대비 품목 A를 구매한 후 B를 구매하는 고객에 대한 확률, 만일 이 지표의 값이 1보다 크면 해당 규칙이 결과를 예측하는데 있으 우수 

- 비지도학습, 연관성분석 

  • 연관분석 = 기업의 데이터베이스에서 상품의 구매, 서비스 등의 일련의 거래 또는 사건들 간의 규칙을 발견하기 위해 적용하는 분석으로 흔히 장바구니 분석 또는 서열분석이라고 함
  • 소매점에서 물건을 배열하거나 카탈로그 및 교차판매 등에 적용

- 오분류표

재현율 = 민감도 = 실제값이 True인 관측치 중 예측치가 맞는 정도 -> 실제 진짜중에 맞은진짜

 

특이도 = 실제 가짜중에 맞은가짜

정밀도 = 예측한 진짜중에 맞은 진짜

F1 = 정확도와 재현율은 한 지표의 값이 높아지면 다른 지표의 값이 낮아질 가능성이 높은 관계를 지니고 있어 이러한 효과를 보정하여 하나의 지료포 만들어 낸 지표 = 2/(1/recall) +(1/precision)

-> 2/ 실제에 맞은 진짜의 역수 + 예측진짜중에 맞은진짜 역수


기타

 

더보기

 

 

 

1. 데이터마이닝

  • 대용량 데이터 속에서 숨겨진 지식 또는 새로운 규칙을 추출해내는 과정
  • 기업이 보유하고 있는 거래데이터, 고객데이터 등과 기타 외부 데이터를 포함하는 모든 데이터를 기반으로 새로운 규칙 등을 발견하고 이를 실제 비즈니스 의사결정 등에 유용한 정보로 활용하고자 하는 작업
  • 데이터를 구축용 50 / (검정용 30)-생략가능 /시험용 20으로 분리
  • 필요에 따라서 구축과 시험을 번갈아 가며 사용하는 교차확인을 통해 모형을 평가하기도 함

 

1-2)  데이터 마이닝 기능

  • 군집분석 = 각 객체의 유사성을 측정하여 유사성이 높은 대상집단을 분류하고, 군집에 속한 객체들이 유사성과 서로 다른 군집에 속한 객체들의 상이성을 규병하는 분석방법 
  • -> 이질적인 모집단을 세분화

 

2. 분석기법

지도학습 비지도학습
의사결정나무(decision tree) -> 랜덤포레스트
인공신경망(ANN, astificial neural network)
일반화 선형모형(GLM, generalized linear model)
회귀분석(regression analysis)
로지스틱 회귀분석(logistic  regression analysis)
사례기반 추론(case-based reasoning)
최근접 이웃법(KNN)
OLAP(on-line analytical processing)
연관성 규칙 발견
군집분석(K-means clustering)
SOM(self organizing map)

 

2-1) 비지도 분석 사례

고객의 과거 거래 구매 패턴을 분석하고 고객이 구매하지 않은 상품을 추천

상품을 구매할 때 그와 유사한 상품을 구매한 고객들의 구매데이터를 분석하여 쿠폰 발송

 

2-2) 지도 분석(분류)분석사례

우편에 인쇄된 우편번호 판별 분석을 통해 우편물을 자동 분류

동일 차종의 수리 보고서 데이터를 분석하여 차량 수리에 소요되는 시간을 예측

 

2-3) 분류방법-R패키지

rpart

party

margintree

 

 

 

 

3. 지도학습, 의사결정나무 

  • 귀납적 추론을 기반으로 실무에서 가장 많이 사용됨
  • 과적합해결 -> 가지치기 방법을 이용하여 트리를 조정
  • 가지치기 = 의사결정나무에서 과적합되어 현실 문제에 적용할 수 있는 적절한 규칙이 나오지 않는 현상을 방지하기 위해 사용되는 기법, 분류 오류를 크게 할 위험이 높거나 부적절한 규칙을 가지고 있는 가지를 제거
  • 불순도의 특정인 엔트로피 개념은 정보이론의 개념을 기반으로 하며, 그 의미는 여러가지 임의의 사건이 모여있는 집합의 순수성 또는 단일성관점의 특성을 정량화하여 표현한 것
  • 핵심적인 공통 개념은 하양식 기법이 사용되며, 각 진행 단계에서는 주어진 데이터 집합을 가장 적합한 기준으로 분할하는 변수값이 저장됨
  •  의사결정나무 평가 -> 이익도표 또는 검정용 자료에 의한 교차타당성 등을 이용해
  • 각 마디에서 최적의 분리규칙은 분리변수의 선택과 분리기준에 의해 결정
  • 분리변수의 P차원 공간에 대한 현재 분할은 이전 분할에 영향을 받는다
  • 사례: 대출신용평가, 환자 증상 유추, 채무 불이행 가능성 예측

*불순도 = 

*엔트로피 = 

*이익도표(lift chart) = 모델의 성능을 판단하기 위해 작성한 표 

*교차타당성

*분리변수(lift)

 

3-2) 지도학습, 의사결정나무의 활용법

비슷한 특성의 그룹으로 분할하여 그룹별 특성 발견

데이터에서 규칙을 찾고 이를 미래 사건 예측에 활용

범주의 변합 및 연속형 변수의 이산화

종속변수의 범주를 몇 개의 등급으로 분류

 

3-3)지도학습,  의사결정나무 특징

모형 분류의 정확도가 높다

분류 경계선 근처의 자료값에 대한 오차가 크다

새로운 자료에 대한 과적합 발생 가능성이 높다

데이터 정규화 및 단위 변환이 필요하지 않다

 

3-4) 불순도의 여러가지 측도

지니지수는 노드의 불순도를 나타냄

지니지수의 값이 클수록 이질적이며 순수도가 낮다

엔트로피 지수는 값이 클수록 순수도가 낮다

카이제곱 통계량의 기대도수 수식 = 열의합계  x 합의합계 / 전체합계

 

4. 인공신경망

  • 신경망 모형 = 자신이 가진 데이터로부터 반복적인 학습과정을 거처 패턴을 찾아내고 이를 일반화하는 예측방법
  • -> 피드포워드 신경망은 정보가 전방으로 전될되는 것으로 생물학적 신경계에서 나타나는 형태이며 딥러닝에서 가장 핵심적인 구조 개념
  • -> 신경말은 변수의 수가 많거나 입출력 변수간에 복잡한 비선형 관계가 존재할 때 유용하며, 잡음에 대해서도 민감하게 방응하지 않는다는 장점
  • -> 일반적인 인공신경망은 다층퍼셉트론을 의미, 다층퍼셉트론에서 정보의 흐름은 입력층에서 시작하여 은닉층을 거쳐 출력츨으로 진행
  • 역전파 알고리즘은 연결강도를 갱신하이 위해 예측된 결과의 실제값의 차이인 에러의 역전파를 통해 가중치를 구하는데서 시작
  • -> 역전파 알고리즘은 신경망 모형의 목적함수를 최족화하기 위해 사용된다. 연결강도를 갱신하기 위해서 예측된 결과와 실제값의 차이인 에러를 통해 가중치를 조정하는 방법이다
  • 은닉층의 뉴런개수는 신경망 모형에서 자동으로 설정되지 않으므로 직접 설정 필요
  • 은닉층의 뉴럽수와 개수를 정하는 것은 신경망을 설계하는 사람의 직관과 경험에 의존한다. 뉴런수가 너무 많면 과적합이 발생하고 뉴런수가 너무 적으면 입력 데이터를 충분히 표현하지 못한다
  • 인공신경망의 일반화 가중치 = neuralent()의 사용의 결과
  • -> 각 공변량의 영향을 표현하기 때문에 회귀모델에서 1번째 회귀변수의 유사한 해석을 갖는다
  • 단층신경망(퍼셉트론) = softmax함수를 통해 최종목표값은 활성함수에 의해 결정되는데 다양한 화성함주 중 출력값이 여러개로 주어지고 목표치가 다번주인 경우 각 범주에 사후확률를 제공 
  • *활성함수 = 인공신경망은 노드에 입력되는 값을 다음 노드로 바로 전달하지 않고 비선형함수에 통과시킬 떄 사용하는 함수
  • -> 입력한 값에 따라 출력신호를 내보낼지 여부를 결정하는 요소
  • *활성함수 = step(0,1반환), sign(-1,1반환), sigmoid(0~1), linear,softmax(출력값이 다범주의 경우 사용)

4-2) 인공신경망

인공신경망에서 입력은 시냅스에 해당하며 개별신호의 강도에 따라 가중된다비선형적인 문제를 분석하는데 유용초기 가중치에 따라 전역해가 아닌 지역해로수렴할 수 있다은닉충의 수와 은닉노드의 수가 너무 많으면 과적합이 발생할 수 있다

 

4-3) 인공신경망 계층 구조출력층의 노드수는 출력 범주의 수로 결정된다은닉노드의 수는 적절히 큰 값을 놓고 가중치를 감소시키며 적용하는 것단층신경망은 한계점이 있기에 일반적인 인공신경망은 다층신경망을 의미다층신경망은 입력층과 출력층 사이에 보이지 않는 다수의 은닉충을 가지고 있다

 

5. 로지스틱 회귀모형

  • 로지스틱 회귀모형 = 독립변수와 종속변수 사이의 관계를 설명하는 모형으로 종속변수가 범주형(0또는 1)값을 갖는 경우 사용
  • 설명변수가 한개인 경우 해당 회귀 계수의 부호가 0보다 작을 때 역 S자 모형을 그린다
  • 이러한 데이터에 대해 선형회귀모형을 적용하는 것이 기술적으로 가능하지만, 선형회귀의 문제점은 0이하의 값이나 1이상의 값을 예측값으로 줄 수 있다는 것이며 따라서 이를 활률값으로 직접 해석할 수 없다
  • 클래스가 알려진 데이터에서 설명변수들의 관점에서 각 클래스내의 관측치들에 대한 유사성을 찾는데 사용 가능
  • 오즈(odds)란 클래스 0에 속할 확률(1-p, 실패할 확률)이 클래스 1에 속할 확률(성공할 확률)P의 비로 나타낸다
  • -> odds = p/(1-p)
  • 종속변수의 값의 범위를 0,1로 조절하기 위해 로짓*logit)변환을 사용한다

 

 

6. 비지도학습, 연관성분석 

  • 연관분석 = 기업의 데이터베이스에서 상품의 구매, 서비스 등의 일련의 거래 또는 사건들 간의 규칙을 발견하기 위해 적용하는 분석으로 흔히 장바구니 분석 또는 서열분석이라고 함
  • 소매점에서 물건을 배열하거나 카탈로그 및 교차판매 등에 적용

 

 

 

 

 

7. 비지도학습, 군집분석

  • 거리계산을 할때 dist 함수 사용 -> 거리측도에는 유클리디안, 표준화, 마라할노비스, 체비셰프, 캔버라, 민코우스키 거리 등이 있다
  • 덴도르그램 = 계층적 군집분석의 결과를 나타내는 도표로 무슨 군집과 무슨 군집이 서로 묶였는지/ 어떤 순서와 차례로 묶여갔는지/군집거리는 얼마나 되는지 알 수 있는 그래프
  • 와이드연결법 = 계층적 군집분석 수행시 두 군집을 병합하는 방법가운데 병합된 군집의 오차제곱합이 병합이전 군집의 오차제곱합의 합에 비해 증가한 정도가 작아지는 방행으로 군집을 형성하는 방법

7-2) 계층적 군집분석

  • 계층적군집방법 = n개의 군집으로 시작해 점차 군집의 개수를 줄여나가는 방법
  • 덴도르그램  그래프를 통해 시각화
  • 거리계산함수 dist -> minkowski, binary, canberra
  • 와드연결법 = 계층적 군집분석 시행시 두 군집을 병합하는 가운데 병합된 군집의 오차제곱합이 병합 이전 군집의 오차제곱합에 비해 증가한 정도가 작아지는 방향으로 형성하는 방법

7-3) 비계층적 군집분석

  • (장)주어진 데이터의 내부 구조에 대한 사전 정보가 없어도 의미있는 결과도출 가능
  • (장)당야한 형태의 데이터에 적용 가능
  • (장)분석방법의 적용 용이
  • (단)사전에 주어진 목적이 없으므로 해석이 어렵다

7-4) K-means clustering

원하는 군집의 수K의 초깃값을 사전에 설정하고 분석

이상값에 영향을 많이 받는다

계층적 군집분석에 비해 많은 양의 데이터를 다룰 수 있다

거리를 측정해야 하므로 데이터의 변수들의 변수형이다

 

7-5) Kmeans와 계측정 군집분석

K-means 군집분석은 계층적 군집분석과 달리 한 개체가 처음 속한 군집에서 다른 군집으로 이동해 재배치 할 수 있다

K-means 군집분석은 초기값에 다한 의존도가 커서 초기값을 어떻게 하느냐에 다라 군집이 달라딜 수 있다

계층적 군집분석은 동일한 거리계산법을 적용하면 몇번을 시행해도 동일한 결과가 나온다

 

 

 

 

 

 

8. 앙상블(배깅, 부스팅, 랜덤포레스트)

  • 데이터마이닝의 방법론
  • 앙상블모형 = 주어진 자료로부터 여러 개의 예측 모형을 만든 후 이러한 예측모형들을 결합하여 하나의 최종 예측모형을 만드는 방법
  • -> 여러 개별 모델을 결합하여 하나의 강력한 모델을 만드는 기법
  • 훈련을 한 뒤 예측을 하는 데 사용하므로 교사학습법(supervised learning)
  • 단일 모델보다 높은 정확성과 일반화 능력을 제공
  • 결과가 수치형 데이터인 경우 값들의 평균을 통해 예측하고, 범주형인 경우 다수결 발식으로 최종 결과를 예측

 

8-2) 랜덤포레스트

  • 의사결정나무의 특징인 분산이 크다는 점을 고려하여 배깅보다 더 많은 무작위성을 추가한 방법으로 약한 학습기들을 생성하고 이를 선형 결합하여 최종학습기를 만든다
  • 데이터마이닝 방법론의 앙상블 기법중 하나로, 분류분석 문제를 해결하기 위한 의사결정나우와 같은 방법론
  • 의사결정나무에서 나타나는 과대적합/과소적합의 문제를 해결
  • (장)예측력이 매우 높다
  • (장)정확도 측면에서 좋은 성과
  • (장)의사결정나무의 특징을 받아이상값에 민감하지 않다
  • (단) 해석이 어렵다
  • 예) 보험회사에서 자사 고객의 보혐갱신 여부를 고객의 인구통계학적 특성, 보험가입채널, 상품종류 등의 정보를 사용하여 예측

8-3) 배깅

배깅 = 주어진 자료에서 여러개의 붓스트랩 자료를 생성하고, 각 붓스트랩 자료에 예측모델을 만든 후 결합하여 최종 예측모델을 만드는 방법

bagging() 함수 사용

보팅은 여러개의 모형으로 부터 산출된 결과를 다수결에 의해 최종 선정하는 것모집단의 특성이 잘 반영되고 분산이 작고 좋은 예측력을 보임

반복추출방법을 사용하기 때문에 같은 데이터가 한 표본에 여러 번 추출할 수 있고, 어떤 데이터는 추출되지 않을 수도 있다

배깅에서는 가지치기를 하지 않고 최대로 성장한 의사결정나무를 활용한다

 

8-4) 부스팅

예측력이 약한 모형들을 결합하여 강한 예측모형을 만드는 방법

 

 

 

 

 

9. 과대적합

  • 과대적합 = 통계나 기계학습에서 모델에서 변수가 너무 많아 모델이 복잡하고 과대하게 학습될 때 발생
  • 학습데이터가 모집단의 특성을 충분히 설명하지 못할 때 발생
  • 변수가 너무 많아 모형이 복잡할 때 발생
  • 생성된 모델이 훈련 데이터에 최적화되어있기 때문에 테스트 데이터의 작은 변화에 민감하게 반응
  • 과대적합이 발생한 것으로 예상되면 학습을 종료하고 업데이트 하는 과정을 반복해 과대적합 방지

 

10. 홀드아웃

  • 데이터양이 충분하지 않거나 입력변수에 대한 설명이 충분하지 않을 때 사용
  • 주어진 데이터를 랜덤하게 두개의 데이터로 구분하여 사용하는 방법
  • 데이터를 무작위로 두 집단으로 분이하여 실험데이터와 평가데이터로 설정하고 검정을 실시하는 모형 평가방법

7. 이익도표(lift)의 평가도구 %captured response

%captured response = 전체에서 해당 집단을 분리해내는 비율

score에 따라 고객을 10개의 집단으로 구분하고, 집단이 누적된에 따라 전체 재구매 고객 대비 percentile별 누적 구매 고객의 비율

특정 범주의 고객에게 action을 수행할 경우, 실제 반응이 나타난 고객 중 몇 %의 고객을 확보할 수 있는지에 대한 수치

계산 = 해당집단에서 목표변수의 특정범주 빈도/전체 목표변수의 특정범주 빈도 x 100

 

8. 오분류표

재현율 = 민감도 = 실제값이 True인 관측치 중 예측치가 맞는 정도 -> 실제 진짜중에 맞은진짜

 

특이도 = 실제 가짜중에 맞은가짜

F1 = 정확도와 재현율은 한 지표의 값이 높아지면 다른 지표의 값이 낮아질 가능성이 높은 관계를 지니고 있어 이러한 효과를 보정하여 하나의 지료포 만들어 낸 지표 = 2/(1/recall) +(1/precision)

-> 2/ 실제에 맞은 진짜의 역수 + 예측진짜중에 맞은진짜 역수

 

 

9. 신경망모형

  • 신경망모형 = 자신이 가진 데이터로부터 반복적인 학습과적을 거쳐 패턴을 찾아내고 이를 일반화하는 예측방법
  • 일반적인 인공신경망은 다층 퍼셉트론을 의미, 다층 퍼셉트론에서 정보의 흐름은 입력층에서 은닉층을 거쳐 출력층으로 진행
  • (장점)신경망 모형은 변수의 수가 많거나 입출력 변수 간에 복잡한 비선형관계가 존재할 때 유용
  • (장점)잡음에 대해서도 민감하게 반응하지 않는다
  • 역전파 알고지즘은 연결강도를 갱신하기 위해 예측된 결과와 실제 값의 차이인 에러의 역전파를 통해 가중치를 구함
  • 역전파 알고리즘은 신경망 모형의 목적함수를 최적화하기 위해 사용, 연결강도를 갱신하기 위해서 예측된 결과와 실제값의 차이인 에러를 통해 가중치를 조정하는 방법
  • 은닉층의 뉴런수와 개수는 신경망 모형에서 자동으로 설정되지 않고 직접 설정해야 함
  • -> 은닉층의 뉴런수와 개수를 정하는 것은 신경망을 설계하는 사람의 직관과 경험에 의존
  • 뉴런수가 너무 많으면 과적합이 발생하고 뉴런수가 너무 적으면 입력 데이터를 충분히 표현하지 못한다

 

10. 베이즈

베이지안 확률은 주관적으로 확률을 해석한다

배이지안 확률은 분석자의 사전지식까지 포함해 분석하는 방법이다

베이즈 정리에서 확률은 주장 혹은 믿음의 신뢰도를 의미

* 빈도확률은 객관적을 확률을 해석하며 사건이 발생한 횟수의 장기적인 비율을 의미

 

11. K-nn(지도/분류,회귀)

작은 K는 모델이 데이터의 노이즈에 민감하게 반응하고 큰 K는 모델의 결정 경계를 더 부드럽게 한다

K-NN은 함수가 오직 지역적으로 근사하고 모든 계싼이 분류될 때까지 연기되는 인스턴스 기반 학습

적절한 K를 선택하는 것이 모델 성능에 중요

데이터 포인트의 근접이웃을 활용하여 분류 또는 회귀문제를 해결하는데 사용된다

 

12.서포터즈 벡터 머신(지도/분류, 회귀)

주로 이미지 분류, 텍스트분류, 손글씨 인식 등에서 효과적으로 활용

분류 및 회귀분석을 통한 지도학습

데이터 포인트의 근접 이웃을 활용하여 분류 또는 회귀 문제를 해결하는 데 사용

 

13. ROC 커버

분류분석 모형의 평가를 쉽게 비교할 수 있도록 시각화한 그래프

이진 분류 모형의 성능을 평가하기 위해 사용

AUTROC 값이 크면 클수록 모형의 성능이 좋다고 평가

TTR: true positive rate -> 1인 케이스에 대한 1로 예측한 비율

FPR:false positive rate -> 0인 케이스에 대한 1로 잘못 예측한 비율

 

15. 분류모형성과

이익도표는 등급별로 향상도가 급격하게 변동할수록 좋은 모형

이득곡선은 모델의 성능을 판단하기 위해 작성

향상도 곡선은 곡선이 기울어질수록 효과가 크다

향상도 곡선은 큰 값에서 시작 후 급격히 감소할 경우 모젤 또는 전략의 효과가 더 크다고 판단 가능

 

16. 군집분석

군집 분석에 이용되는 다변량 자료는 별도의 반응변수가 요구되지 않는다

마케팅에서 고객특성 파악, 금융에서는 산업분석 등에 활용

유사도가 클수록 거리가 작아진다

오로지 객테들간의 유사성에만 기초하여 군집 형성