본문 바로가기
카테고리 없음

06. 데이터 전처리 방법

by 망고 ෆ 2024. 7. 19.

🎀 데이터 전처리

1. Encoding

   1) Label Encoding : 범주형 데이터를 정수값으로 변환

 

   2) OneHot Encoding : 행당 범주에 해당하면 1, 나머지는 0으로 인코딩

 

 

 

2. 결측치 처리

   1) 대치 : 특정 값으로 채움 (0/평균값)

 

   2) KNN : 가장 가까운 K개의 이웃의 평균 이용

  • 유클리디언 Distance : 두 점 간의 직선 거리 계산

$$ Euclidean Distance=\sqrt{(p_{2}-p_{1})^2 + (q_{2}-q_{1})^2} $$

$$ Euclidean Distance=\sqrt{\sum_{i=1}^{n}(p_{i}-q_{i})^2} $$

  • 마할라노비스 Distance
    • 데이터 분포를 고려하여 두 점 간의 거리 계산
    • 변수들 간의 상관관계를 반영하여 거리 측정
    • 공분산이 단위벡터이면, 유클리디언 distance와 같아짐

$$ Mahalanobis Distance=\sqrt{(p−q)^TS^{−1}(p−q)} $$

 

 

3. 이상치 제거

   1) IQR (4분위)

      : 보통 IQR의 1.5배 초과하는 값을 이상치로

  • IQR = Q3(0.75) -Q1(0.25)
  • 하한 : Q1-1.5 x IQR
  • 상한 : Q3 +1.5 x IQR
  • 하한보다 작거나 상한보다 큰 값이 이상치

   2) Z-score

  • 각 데이터 포인트가 평균에서 얼마나 떨어져 있는지 표준편차 단위로 측정
  • 0~1로 만듦
  • μ : 평균, σ : 표준편차

$$ Z = \frac{X - \mu}{\sigma} $$

 

   3) Boxplot 사용

 

   4) LOF : 밀도 기반 이상치 탐지 기법

 

 

4. resampling

   1) 교차 검증 : 모델 성능 평가를 위해 데이터를 여러번 나누어 학습

 

   2) Upsampling & Downsampling

  • Upsampling : 소수 클래스의 샘플 수를 늘리기 위해 소수 클래스 샘플을 중복하여 추가

       ex) SMOTE

  • Downsampling : 다수 클래스의 샘플 수를 줄이기 위해 일부 샘플을 무작위로 제거

 

   3) Bootstrapping : 데이터 샘플을 복원 추출 → 여러번 샘플링

 

 

 

5. 정규화/표준화

  • MinMax 정규화

댓글