2 분 소요

키워드🔑
이상값, 이상값 검출, 통계 기법, ESD, 기하평균, 사분위 수, 표준화 점수, 딕슨의 Q검정, 그럽스 T-검정, 카이제곱 검정,
시각화, 머신러닝 기법, 마할라노비스 거리, LOF, iForest,
이상값 처리, 삭제, 대체법, 변환, 박스플롯 해석, 분류하여 처리

01. 데이터 전처리

1. 데이터 정제

3) 데이터 이상값 처리


(1) 데이터 이상값 개념

  • 데이터 이상값(Data Outlier)
    • 관측된 데이터의 범위에서 많이 벗어난 아주 작은 값 or 아주 큰 값
    • 입력 오류, 데이터 처리 오류 등의 이유로 특정 범위에서 벗어난 데이터 값


(2) 데이터 이상값 발생원인
📌 입력 오류 / 측정 오류 / 실험 오류 / 고의적인 이상값 / 표본추출 에러

  • 입력 오류: 전체 데이터 분포에서 쉽게 발견 가능
  • 실험 오류: 실험 조건이 동일하지 않은 경우
  • 고의적인 이상값: 자기 보고식 측정(Self reported Measures)에서 나타나는 에러
  • 표본 추출 에러: 샘플링을 잘못한 경우


(3) 데이터 이상값 검출 방법
📌 개별 데이터 관찰 / 통계 기법 / 시각화 / 머신러닝 기법 / 마할라노비스 거리 / LOF / iForest

  • 개별 데이터 관찰: 전체 데이터 추이, 특이사항, 무작위 추출하여 관찰
  • 통계 기법: ESD, 기하평균, 사분위 수, 표준화 점수, 딕슨의 Q검정, 그럽스 T-검정, 카이제곱 검정
    • ESD(Extreme Studentized Deviation): 평균에서 3표준편차 떨어진 값은 이상값 ⇒ μ - 3σ < data < μ + 3σ
    • 기하평균 활용: 기하평균에서 2.5표준편차 떨어진 값은 이상값 ⇒ 기하평균 - 2.5σ < data < 기하평균 + 2.5σ
    • 사분위 수 활용: Q₁ - 1.5(Q₃ - Q₁) < data < Q₃ + 1.5(Q₃ - Q₁)
    • 표준화 점수(Z-score) 활용: 정규분포를 따르는 관측치들이 평균에서 얼마나 떨어져 있는지 나타내어 이상값 검출
    • 딕슨의 Q 검정: 오름차순 정렬 → 범위에 대한 관측치 간의 차이의 비율을 활용(데이터 30개 미만인 경우 적절함)
    • 그럽스 T-검정: 정규분포를 만족하는 단변량 자료에서 이상값 검정
    • 카이제곱 검정: 정규분포를 만족하나, 자료 수가 적은 경우
  • 시각화: 확률밀도함수, 히스토그램, 시계열 차트
  • 머신러닝 기법: K-평균 군집화
    • 주어진 데이터를 K개의 클러스터로 묶는 알고리즘
    • 각 클러스터와 거리 차이의 분산을 최소화하는 방식
  • 마할라노비스 거리(Mahalanobis Distance)
    • 데이터의 분포를 고려한 거리 측도
    • 관측치가 평균으로부터 벗어난 정도를 측정
    • 모든 변수 간 선형관계 만족 & 각 변수들이 정규분포를 따르는 경우에 적용할 수 있음
  • LOF(Local Outlier Factor): 관측치 주변 밀도와 근접한 관측치 주변 밀도의 상대적인 비교를 통해 이상값 탐색
    • 각 관측치에서 k번째 근접이웃까지의 거리 산출 → 해당 거리 안에 포함되는 관측치 개수로 나눈 역수 값으로 산출
  • iForest(Isolation Forest): 관측치 사이의 거리나 밀도가 아닌, 의사결정나무를 이용하여 이상값 탐색
    • 분류모형을 생성하여 모든 관측치를 고립시켜나가면서 분할 횟수로 이상값 탐색
    • 적은 횟수로 잎 노드(Leaf Node)에 도달하는 관측치일수록 이상값일 가능성이 크다


(4) 데이터 이상값 처리
📌 삭제 / 대체법 / 변환 / 박스플롯 해석 / 분류하여 처리

  • 삭제(Deleting Observations): 이상값은 제외하고 분석
    • 추정치의 분산이 작아짐
    • 과소/과대 추정되어 편의 발생할 수 있음
    • 양극단의 값을 절단(Trimming)하기도 함: 기하평균, 상하단 %를 이용한 제거
    • 절단보다, 극단값 조정 방법을 활용 → 데이터 손실률 ↓ 설명력 ↑
  • 대체법(Imputation)
    • 하한값보다 작으면 하한값 대체
    • 상한값보다 크면 상한값 대체
  • 변환(Transformation)
    • 자연로그를 취해 데이터 값 감소 → 실제값 변형
    • 오른쪽으로 길게 기울어진 분포 → 평균 중심 대칭 형태로 변환
  • 박스플롯 해석(Box-Plot): 수염 밖에 있는 값을 이상값으로 판단
    • 수염(Whiskers): Q₁, Q₃로부터 IQR의 1.5배 내에 있는 가장 멀리 떨어진 데이터까지 이어진 선
    • IQR = Q₃ - Q₁
  • 분류하여 처리: 이상값이 많을 경우 사용하는 방법
    • 서로 다른 그룹으로 묶음 → 각 그룹에 대해 통계적인 모형 생성 → 결과 결함

댓글남기기