데이터 스케일링:표준화와 정규화

Oni·2023년 5월 13일
0

데이터 전처리 방법 중에는 크게 결측값 처리, 이상치 처리, 스케일링 등이 있다. 이번 포스팅에서는 스케일링에 대해서 알아보자!

스케일링은 언제 하는가?

  • 독립변수들의 단위가 서로 다를 때
  • 독립변수 값의 편차가 심할 때

스케일링의 종류

  • 표준화(standardization)
    • 데이터를 정규분포로 만듦

      Z=xμσZ = \frac{x-\mu}{\sigma}
  • 정규화(normalization)
    • 보통 MinMaxScaler를 의미함

      xscaled=xxminxmaxxminx_{scaled} = \frac{x-x_{min}}{x_{max}-x_{min}}
  • robust
    • 기본 표준화, 정규화 방식이 이상치에 민감한 단점 보완
      • 평균값이 아닌 중앙값을 사용하기 때문
    • Q2(중앙값)을 0, IQR(Q1~Q3의 차이)이 1이 되도록 스케일링

Standardization vs Normalization

standardization(MinMaxScaler)normalization
값의 의미평균이 0최솟값이 0, 최댓값이 1
특징서로 다른 변수 간 값의 크기를 직관적으로 비교 가능특정 값이 평균으로부터 얼만큼 떨어져 있는지 직관적으로 이해하기 어려움

필요성

  • knn, SVM과 같은 거리를 활용한 군집분석에서 필수적
    • 관측치간의 거리를 통해 군집을 나누기 때문에 거리의 기준을 통일해야 함

실전 포인트

  • 스케일링은 학습데이터를 대상으로만 진행
  • 보통 y에 대한 스케일링은 x
  • RobustScaler를 통해 이상치의 영향을 덜 받도록 진행할 수는 있지만, 이상치임이 확실한 경우에는 제거해주는 것이 효과적이다.

참고자료

https://junklee.tistory.com/18

profile
데이터 분석/엔지니어링/ML에 관한 기록

0개의 댓글