Positive-Influence-Data

[ML] 데이터 분포 정규화 본문

ML

[ML] 데이터 분포 정규화

DS쟁이 2025. 2. 24. 11:09

❗ 본 포스팅은 AI-Tech Interview의 질문을 바탕으로 공부한 내용을 정리한 것입니다.

 

 

Q. 정규화를 왜 해야 할까요? 정규화의 방법은 무엇이 있나요?

 

▷ 정규화(Nomalization)

   각 변수를 동일하게 스케일링하는 것을 의미한다.

 

□ Min-Max Scaling

   대표적인 방법으로 최대, 최소를 기준으로 0~1 사이로 값을 고정하는 방법(Min-Max Scaling)이 있다.

   데이터의 분포는 바뀌지 않고 스케일만 0~1로 바뀌기 때문에 이상치가 있다면 그것의 영향을 받게 된다.

오른쪽이 원본 데이터, 왼쪽이 Mn-Max Scaling 된 데이터

 

    위를 보면 분포는 같은데 X축의 스케일만 달라진 것을 확인 할 수 있다.

 

Robust Scaling
   이상치의 영향을 덜 받는 Robust Scaling이 있다. 이것은 4분 위수 IQR로 나누는 방식으로 이상치의 영향을 덜 받는다.

 

정규화(Nomalization) 예시

   이미지 데이터를 픽셀 딘위 데이터로 학습시킬 때 정규화(Nomalization)를 하지 않으면 학습하는데 불안전하고 수렴이 잘 안 될

   수 있다. 

   그래서 대부분은 이미지 픽셀 데이터를 0~1로 Min-Max Scaling 하고 Input 데이터로 사용한다.

 

▷ 표준화(Standardization)

   표준화(Standardization)라는 개념이 있는데 정규화와 비슷하지만 다르다.

   정규화와 같이 스케일을 조정하는 방법이지만 표준화는 평균을 0으로 표준편차를 1로 하는 방법이다.

   고등학교 통계학 책에 보면 정규분포를 표준화하는 방법을 배울 것이다. 그 개념이랑 같다고 보면 된다.

 

 

▷ 정규화 또는 표준화를 해서 얻는 효과

  • 거리 기반 알고리즘(KNN, K-Mean, PCA 등)과 같은 알고리즘을 사용 할 때 동일한 스케일 안에서 알고리즘이 잘 작용함.
  • 딥러닝을 사용할 때 수렴속도가 빨라지고 스케일이 다름으로 생기는 문제(기울기 소실, 기울기 폭주)의 영향을 받는걸 최소화한다.
    이는 추후 포스팅 하도록 하겠다.

 

▷ 정리

  방법   정의   특징   대표 알고리즘
  정규화(Nomalization)   0~1 범위로 값 변환   이상치에 민감   KNN, K-means, 신경망
  표준화(Standardization)   평균=0, 표준편차=1로 변환   이상치에 영향이 적음   선형 모델, PCA
  Robust Scaling   중앙값, 사분위수(IQR) 사용   이상치에 영향이 적음   이상치가 있는 데이터

'ML' 카테고리의 다른 글

[ML]Netron(딥러닝 모델 시각화 도구)  (0) 2025.02.17
[Ray] Ray를 활용한 데이터 프레임 Concat  (0) 2024.02.28
[ML] 회귀 평가방법  (0) 2022.11.27
Comments