<---google adsense---> <---/google adsense---> 데이터 전처리 - 빅데이터 탐색 Chapter 1 :: noti note
반응형

본 포스팅은 제가 공부한 것을 정리한 내용입니다.

1. 데이터 정제

1) 데이터 정제

(1) 데이터 전처리의 중요성

  • 데이터 분석 과정에서 데이터 전처리는 반드시 거쳐야 하는 과정
  • 전처리 결과가 분석 결과에 직접적인 형향을 주고 있어서 전처리는 반복 수행해야함
  • 데이터 분석의 단계 중 가장 많은 시간이 소요되는 단계는 데이터 수집/전처리 단계 (분석가는 업무 시간의 80% 를 이에 사용)
  • 데이터 전처리는
    • 데이터 정제
    • 결측값 처리
    • 이상값 처리
    • 분석 변수 처리 로 진행한다.

 

(2) 데이터 정제 개념

  • 결측값을 채우거나 이상값을 제거하는 과정을 통해 데이터의 신뢰도를 높이는 작업

 

(3) 데이터 정제 절차

  • 데이터 오류 원인 분석
    • 결측값, 노이즈, 이상값
  • 데이터 정제 대상 선정
    • 모든 데이터를 대상으로 정제 활동 진행
    • 특별히 데이터 품질 저하의 위협이 있는 데이터에 대해서는 더 많은 정제 활동 수행
    • 내부 데이터보다 외부 데이터가 품질 저하 위협에 많이 노출 되어 있음.
    • 정형보단 비정형/반정형이 품질 저하 위협에 있음
  • 데이터 정제 방법 결정
    • 삭제, 대체, 예측값 삽입

 

(4) 데이터 정제 기술

  • 데이터 일관성 유지를 위한 정제 기법
    • 다른 시스템으로부터 들어온 데이터에 대한 일관성을 부여하기 위해 수행
    • 변환 - 다양한 형태로 표현된 갑을 일관된 형태로 변환
    • 파싱 - 정제 규칙을 적용하기 위해서 유의미한 최소 단위로 분할하는 작업
    • 보강 - 변환, 파싱, 수정, 표준화 등을 통한 추가 정보를 반영하는 작업
  • 데이터 정제 기술
    • 분산 처리 시스템을 기반으로 데이터를 정제하고 성능을 보장하기 위해 인 메모리 기반 컴퓨팅 기술 사용
    • 정제된 데이터는 데이터 변경(분석)에 활용
      • ETL - 데이터 웨어하우스/데이터 마트에 저장하는 기술
      • 맵리듀스 - 구글에서 대용량 데이터 세트를 분산/병력 컴퓨팅에서 처리, 생성하기 위한 목적으로 만들어진 software framwork
      • 스파크/스톰 - 인 메모리 기반 데이터 처리 방식, 스파크는 맵리듀스를 기반으로 성능 개선
      • CEP - 실시간으로 발생하는 이벤트 처리에 대한 결괏값을 수집하고 처리하는 기술
      • 피그 - 하둡을 이용하여 맵리듀스를 사용하기 위한 피그 라틴 스크립트 언어 제공
      • 플럼 - 로그 데이터 수집/처리 하는 기법, 실시간에 근접하게 데이터를 전처리 및 수집하는 기술

 

(5) 데이터 세분화

  • 데이터를 기준에 따라 나누고, 선택한 매개변수를 기반으로 유사한 데이터를 그룹화하여 효율적으로 사용할 수 있는 프로세스
  • 군집화
    • 계층적 방법
      • 응집분석법, 분할분석법
    • 비 계층적 방법
      • 인공신경망 모델, K-평균

 

2) 데이터 결측값 처리

(1) 데이터 결측값(Data Missing Value) 개념

  • 입력이 누락된 값을 의미(NA, Null, 99999, -99999)

 

(2) 데이터 결측값 종류

  • 완전 무작위 결측(Missing Completely At Random)
    • 결측값이 다른 변수와 아무 상관이 없음
  • 무작위 결측(Missing At Random)
    • 결측값이 특정 변수와 관련되어 일어남. 그러나 그 변수의 결과와는 관계가 없다. 누락이 전체 정보가 있는 변수로 설명이 될 수 있다.(누락이 완전히 설명가능할 경우)
  • 비 무작위 결측(Missing Not At Random)
    • 누락된 값이 다른 변수와 연관이 있다.

 

(3) 데이터 결측값 처리 절차

  • 결측값 식별
  • 결측값 부호화
  • 결측값 대체

 

(4) 데이터 결측값 처리 방법

  • 단순 대치법
    • 완전 분석법 - 완전하게 관측된 자료만 사용하여 분석, 부분적으로 관측된 자료가 무시되어 효율성이 상실되고 통계적 추론 타당성 문제 발생
    • 평균 대치법 - 관측/실험에서 얻어진 자료의 평균값으로 대치해서 완전한 자료로 만듬
      • 비 조건부 평균 대치법(그냥 있는 데이터 평균), 조건부 평균 대치법(회귀 분석을 활용하여 대치)
    • 단순 확률 대치법 - 평균 대치법에서 관측된 자료를 토대로 추정된 통계량으로 결측값을 대치할 때 적절한 확률값을 부여한 후 대치
      • 핫-덱 대체 - 무응답을 비슷한 성향을 지닌 응답자의 자료로 대체 (표본조사에서 활용)
      • 콜드덱 대체 - 핫덱과 비슷하나 대체할 자료를 현재 진행 중인 연구에서 가져오지 않고 외부 출처 or 이전의 비슷한 연구에서 가져오는 방법
      • 혼합 방법 - 몇 가지 다른 방법 혼합 (회귀 대체를 하고 핫덱방법을 이용하여 잔차를 얻어 두 값을 더하는 경우)
  • 다중 대치법
    • 개념 - 단순 대치법을 한번만 하지 않고 m번 대츠를 통해 m개의 가상적 완전한 자료를 만들어서 분석
      • 대치 $\rightarrow$ 분석 $\rightarrow$ 결합
      • 대치 - 사후분포에서 추출된 값으로 대치, 베이지안 방법 사용
      • 분석 - $D$개의 대치표본으로부터 원하는 분석 각각 수행
      • 모수 $\theta$의 점 추정과 표준 오차의 추정치를 D개 구한 후 이들을 결합하여 하나의 결과 제시
    • 적용방식
      • 원 표본의 결측값을 한번 이상 대치하여 여러 개$(D>1)$의 대치된 표본을 구하는 방법
      • $D$개의 대치된 표본을 만들어야 하므로 항상 같은 값으로 결측 자료를 대치할 수 없음

 

3) 데이터 이상값 처리

(1) 데이터 이상값 개념

  • 관측된 데이터의 번위에서 많이 벗어난 아주 작은 값이나 아주 큰 값을 말함
    • 데이터 입력 오류 - 수집할 때 발생하는 에러

 

(2) 데이터 이상값 발생 원인

  • 측정 오류 - 측정하다가 발생하는 에러
  • 실험 오류 - 실험조건이 동일하지 않을 때
  • 고의적인 이상값 - 자기 보고식 측정에서 나타남, 정확하게 기입하였으나 이상할 수도 있음
  • 표본추출 에러 - 샘플링을 잘못했을 경우 발생

 

(3) 데이터 이상값 검출 방법

  • 개별 데이터 관찰 - 무작위 표본 추출 후 관찰
  • 통계값 - 통계량 활용
  • 시각화 - 시각화
  • 머신 러닝 기법 - 군집화 사용하여 검출
  • 마할라노비스 거리 - 데이터의 분포를 고려한 거리 측도, 관측치가 평균으로부터 벗어난 정도를 측정
  • LOF - 관측치 주변의 밀도와 근접한 관측치 주변 밀도의 상대적인 비교를 통해 이상값 탐색
  • iForest - Decision Tree를 이용하여 탐지
  • 처리 방법 예시
    • Extreme Studentized Deviation
    • 기하 평균
    • 사분위 수
    • Z-Score
    • 딕슨의 Q검정
    • 그럽스 T검정
    • 카이제곱 검정
    • 히스토그램
    • 시계열 차트
    • K평균

 

(4) 데이터 이상값 처리

  • 이상값을 반드시 제거할 필요는 없음, 분석의 목적에 따라 판단
    • 삭제 - trimming
    • 대체법 - 평균이나 중앙값으로 대체
    • 변환 - log transformation
    • 박스 플롯 해석을 통한 이상값 제거

boxtplot 출처 : https://m.blog.naver.com/PostView.nhn?blogId=running_p&logNo=90178707051&proxyReferer=https:%2F%2Fwww.google.com%2F

  •  
    • 분류하여 처리 - 통계적인 분석을 시행하여 처리 (이상값이 하나의 그룹을 형성)

 

2. 분석 변수 처리

1) 변수 선택

(1) 변수 개념

  • 데이터 모델에서 사용하는 예측을 수행하는 데 사용되는 입력변수
  • 알려진 값 - 변수, 속성, 예측변수, 차원, 관측치, 독립변수
  • 예측 값 - 라벨, 클래스, 목표값, 반응, 종속변수

 

(2) 변수 유형

  • 인과 관계
    • 독립변수, 종속변수
  • 변수 속성
    • 범주형
      • 명목형(스마트폰 브랜드, 현역 구분, 성별 구분)
      • 순서형(병원 수준, 화장실 상태, 순서에 의미가 있음)
    • 수치형
      • 이산형
      • 연속형

 

(3) 변수 선택

  • 개념 - 데이터의 독립변수 중 종속변수에 가장 관련성이 높은 변수만을 선정하는 방법
  • 특징
    • 사용자가 해석하기 쉽게 모델을 단순화해주고 훈련 시간 축소, 차원의 저주 방지, 과적합을 줄여준다
    • 모델의 정확도 향상 및 성능 향상을 기대할 수 있다.
  • 기법
    • 필터 기법 - 모델링 기법에 의존하지 않고 데이터의 통계적 특성으로부터 변수를 선택
      • 순서 
        1. 특징 변수의 전체 집합
        2. 가장 적합한 하위 집합 선택
        3. 알고리즘 학습
        4. 성능 평가
      • 특징
        • 계산 속도가 빠르다. 변수 간 상관관계를 알아내는 데 적합
      • 사례
        • 정보 소득
        • 카이제곱 검정
        • 피셔 스코어
        • 상관계수
    • 래퍼 기법 - 변수의 일부분을 모델에 사용하고 그 결과를 확인하는 작업을 반복하면서 변수 택함
      • 예측 정확도 측면에서 가장 좋은 성능을 보이는 하위 집합 선택
      • 그리디 알고리즘 성격
      • 시간이 오래걸리고 부분집합의 수가 기하급수적으로 늘어나 과적합의 위험이 존재
      • 변수 선택을 위한 알고리즘과 선택기준 결정
      • 유형
        • 전진 선택법 - 변수를 하나씩 추가
        • 후진 제거법 - 모두 포함된 상태에서 하나씩 제거
        • 단계적 방법 - 전진 선택/후진 제거 모두 사용
      • 상세
        • Recursive Feature Elimination - SVM을 사용하여 재귀적으로 제거, 전진 선택/후진 제거/단계적 방법사용
        • Sequential Feature Selection - 그리디 알고리즘으로 빈 부분 집합에서 특성 변수를 하나씩 추가하는 방법
        • 유전 알고리즘 - 자연 세계의진화과정에 기초한 계산 모델
        • 단변량 선택 - 하나의 변수선택법으로 각 피처를 개별적으로 결정
        • Minimm Redundancy Maximum Relevance - 특정 변수의 중복성을 최소화하는 방법
    • 임베디드 기법 - 모델 자체에 변수 선택이 포함
      • 라쏘
      • 릿지
      • 엘라스틱 넷
      • SelectFromModel

 

2) 차원축소

(1) 차원 축소 (Dimensionality Reduction) 개념

  • 분석 대상이 되는 여러 변수의 정보를 최대한 유지하면서 데이터 세트 변수의 개수를 줄이는 탐색적 분석기법임
  • 원래의 데이터를 최대한 효과적으로 축약하기 위해서 목표변수는 사용하지 않고 특성 변수만 사용하기 때문에 비지도 학습이다.

 

(2) 차원축소 특징

(3) 차원축소 기법

(4) 차원축소 기법 주요 활용 분야

3) 파생변수 생성

4) 변수 변환 (Variable Transformation)

(1) 단순 기능 변환

(2) 비닝(Binning)

(3) 변수 변환 사례

5) 불균형 데이터 처리

(1) 언더 샘플링(Under-Sampling)

(2) 오버 샘플링(Over-Sampling)

(3) 임곗값 이동(Threshold-Moving)

(4) 앙상블 기법(Ensemble Technique)

 

 

 

 

 

핵심

  1. 데이터 오류의 원인으로는 결측값, 노이즈, 이상값이 있다.
  2. 오류 원인 분석 -> 정제 대상 선정 -> 정제 방법 결정
  3. 파싱은 데이터를 정제 규칙을 적용하기 위한 유의미한 최소 단위로 분할하는 작업
  4. 데이터 일관성을 유지하기 위한 기법ㅇ로 변환, 파싱, 보강이다.
  5. ETL - Extract, transform, load 추출/변환/저장 하는 기술
  6. CEP - 실시간으로 발생하는 이벤트 처리에 대한 결과값을 수집하고 처리
  7. Map Reduce는 많은 데이터를 처리할 대 느리다.
  8. Strom은 실시간 처리에 특화
  9. 결측값은 시각화에서 안나옴
  10. 완전 무작위 결측 - 다른 변수들과 아예 상관 없음
  11. 무작위 결측 - 특정 변수와 관련되어 일어나지만 그 변수의 결과는 관계가 없음
  12. 비 무작위 결측 - 누락된 값이 다른 변수와 연관이 있음
  13. 결측값 처리 - 식별 -> 부호화 -> 대체
  14. ESD는 이상값을 측정하기 위한 기법이다.
  15. 다중 대치법은 대치 -> 분석 -> 결합
  16. ESD = 3sigma
  17. 비 조건부 평균 대체는 평균 대치법이다.
  18. 평균이 $\mu$ 이고 표준편차가 $\sigma$인 경우에는 $Z-score$ 로 이상값 검출을 한다.
  19. 그럽스 T-검정은 정규분포를 만족하는 단변량 자료에서 이상값을 검정하는 방법
  20. LOF는 관측치 주변의 밀도와 근접한 관측치 주변의 밀도의 상대적인 비교를 통해 이상값을 검출
  21. 파생변수 - 특정한 의미를 갖는 작위적 정의에 의한 변수로, 사용자가 특정 조건을 만족하거나 특정 함수에 의해 값을 만들어 의미를 부여한 변수
  22. 필터 기법 - 계산 속도가 빠르고 통계적 특성으로부터 변수를 선택 / 상관관계
  23. information gain, Fisher score는 필터기법
  24. 차원축소기법에는 PCA, SVD, Factor Analysis, ICA(독립성분분석), MDS
  25. ICA는 다변량의 신호를 통계적으로 독랍적인 하부 성분으로 분리하여 차원을 축소하는 기법
  26. Factor analysis - 해당 요인을 도출하고 데이터 안의 구조를 해석하는 기법 (latent variable) 가 존재한다고 가정
  27. MDS - 위상관계 순서관계 그룹관게 파악하는 다변량 시각화 기법
  28. SVD - $m X n$ 차원의 행렬데이터에서 특이값을 추출하고 이를 통해 주어진 데이터 세트를 효과적으로 축약
  29. 불균형 데이터 처리 방법 - 언더/오버 샘플링, 앙상블, 임곗값 이동
  30. 언더샘플링 방법 - ENN, 토멕 링크 방법, CNN, OSS
  31. 오버샘플링 방법 - SMOTE, Borderline-SMOTE, ADASYN
  32.  

 

 

 

 

 

 

 

 

 

 

 

 

반응형

+ Recent posts