본문 바로가기

IT Data 분석

[ADSP] 3과목 데이터분석 - 데이터분석 개요

728x90

1. 데이터 마이닝 

  • 뜻: 대표적인 고급분석, 데이터에 있는 패턴을 파악해 예측하는 분석, 데이터가 크고 정보가 다양할 수록 활용하기 유리한 분석
  • 통계분석과 데이터 마이닝의 차이점 : 
    • 통계분석 : 가설, 가정에 따른 분석/검증
    • 데이터 마이닝 : 다양한 수리 알고리즘을 이용-> DB로부터 의미있는 정보 발견
  • 데이터 마이닝 모델링 :
    • 통계적 모델링이 아니므로 지나치게 통계적 가설이나 유의성에 집착하지 말아야한다. 
    • 분석 데이터를 학습 및 테스트 데이터로 6:4,7:3,8:2 비율로 상황에 맞게 실시
    • 성능에 집착하면 분석 모델링의 주목적인 실무 적용에 반해 시간을 낭비할 수 있으므로 훈련 및 테스트 성능에 큰 편차가 없고 예상 성능을 만족하면 중단한다. 
  • 데이터 마이닝의 종류
    • 정보를 찾는 방법론에 따라 : AI, 의사결정나무, K평균군집화, 연관분석, 회귀분석, 로짓분석, 최근접이웃
    • 분석대상/활용목적/표현방법에 따라 : 시각화분석, 분류, 군집화, 예측
  • 데이터 마이닝 목적에 따른 작업 유형
    • 예측 : 분류규칙 (회귀분석, 판별분석, 신경망, 의사결정나무)
    • 설명 : 연관규칙(동시발생 매트릭스), 연속규칙(동시발생 매트릭스), 데이터군집화(군집분석)

2. 데이터 마이닝의 평가기준과 시뮬레이션 지표

  • 평가기준 : 정확도 ( Accuracy), 재현율 (Detect Rate, Recall), 리프트(Lift)
  •  Accuracy :
    • 올바르게 예측된 데이터의 수를 전체 데이터의 수로 나눈 값 ((TP+FP)/Total)
    • Negative의 실제 비율이 너무 높아서 희박한 가능성으로 발생활 상황을 제대로 분류하지 못한다. 예를 들어 내일 운석이 떨어질지 여부를 예측한다면 100%에 가까운 정확도를 만들 수 있다. 즉, Negative만 계속 예측하면 Accuracy는 높을 수 박에 없다.
    • 타겟이 편향되어 있을 때는 정확도만으로 모델의 성능을 파악하기 어렵다. 예를 들어, 암인 환자는 모두 맞췄지만, 암이지 않은 환자를 모두 못 맞추는 경우에도 정확도는 높게 나오기 때문이다. 
  • Precision
    • 모델이 True로 예측한 데이터 중 실제로 True인 데이터의 수 
    • Recall과 상충되는 개념. 
  • Detect Rate(=Recall) : 
    • 실제로 True인 데이터를 모델이 True라고 인식한 데이터의 수 
    • True가 발생하는 확률이 적을 때 사용하면 좋다. 내가 만든 모델이 얼마나 진짜를 잘 찾았는지.
  • F1 Score
    • Precision과 Recall의 조화평균, Recall과 Precision 중 하나가 0에 가깝게 낮을 때 지표에 잘 반영되기 위해 조화평균.
    • 2* (Precision*Recall)/(Precision+Recall)
  • 시뮬레이션 지표: Throughout, Average Waiting Time, Average Queue Length, Time in system

3. 데이터 마이닝을 위한 데이터분할 

  • 데이터분할 : 구축용 (Train data, 50%), 검정용(Validation data, 30%), 시험용(Test, data, 20%)
  • 데이터 양이 충분하지 않은 경우
    • 홀드 아웃 : 주어진 데이터를 랜덤하게 두개의 데이터로 구분하여 사용하는 학습 방법으로 train data, test data로만 분리하여 사용한다. 
    • 교차확인 : 고정된 test set으로 성능을 검증, 수정하는 과정을 반복하는 경우 해당 모델은 해당 test set에서만 잘 작동하는 모델, 즉 오버피팅이 되어버리기 때문에 이런 문제를 해결하기 위해 Cross Validation을 한다.
    • train set을 다시 한번 train set+validation set으로 나눠서 학습 중 검증과 수정을 한다.
    • 총 k개의 테스트 결과가 나오며, 이 k개의 평균이 해당 모델의 성능으로 판단된다.  

4. 데이터 처리구조

  • 데이터를 분석에 활용하기 위해 데이터 웨어 하우스와 데이터 마트에서 데이터를 가져온다.
  • 신규 시스템이나 스테이지 영역의 데이터는 정제되지 않았기 때문에 정제하고 DW나 DM과 결합해야한다.
  • ODS는 운영데이터 저장소로 기존 운영시스템의 데이터가 정제된 데이터이므로 DW나 DM과 결합하여 분석에 활용
  • 운영 시스템에 직접 접근해 데이터를 활용하는 것은 위험하므로 거의 이뤄지지 않고 있으며 스테이징 영역의 데이터는 운영 시스템에서 임시로 저장된 데이터이기 때문에 가급적이면 클린징 영역인 ODS에서 데이터의 전처리를 해서 DW나 DM과 결합하여 사용한다. 

5. 시각화

  • 가장 낮은 수준의 분석이지만 효율적이고, EDA, 빅데이터 분석에서 시각화는 필수다.
  • SNA할 때 자주 활용

6. 공간분석 (GIS)

  • 공간적 차원과 관련된 속성을 시각화
  • 지도위에 속성을 생성하고 크기, 모양, 선 굵기 등으로 구분해 인사이트를 얻음

7. EDA

  • 탐색적 분석 : 데이터 이해단계 (변수의 분포와 특성파악), 변수 생성 단계 (분석목적에 맞는 주요한 요약 및 파생변수 생성), 변수 선택 단계 (목적변수에 의미있는 후보 변수 선택)에서 활용되고 있다. 
  • 저항성의 강조, 잔차 계산, 자료변수의 재표현, 그래프를 통한 현시성 
  • 저항성의 강조 : 자료의 일부가 파손되었을 때, 영향을 적게 받는 성질.
    • (즉, 저항성이 있으면 자료의 변동에 민감하지 않다. 평균은 영향을 크게 받으므로 저항값이 없고, 중앙값은 영향을 적게 받으므로 중앙값이 저항성이 있다.)
  • 잔차 계산 : 주 경향으로부터 얼마나 벗어났나?
  • 자료변수의 재표현 : 원래 변수를 적당한 척도로 바꾸면 어떤가?
    • (로그 변환을 통해 데이터가 분포의 대칭성, 선형성, 분산 안정성 등을  쉽게 파악)
  •  그래프를 통한 현시성 : 시각화를 통해 구조를 효율적으로 파악하기 
    • (히스토그램, 박스 플랏, 산점도 등)