통계/파이썬을 이용한 통계 기초

[파이썬을 활용한 통계 개념 기초] 07. 표준화와 정규화(Standardization and Normalization)

ourkofe's story 2024. 10. 5. 09:30

표준화와 정규화는 스케일링 (Scaling) 기법으로, 데이터의 스케일을 조정하여 모델이 특정 변수에 의존하거나 왜곡된 결과를 내는 것을 방지하고, 더 정확한 예측과 분석을 할 수 있게 돕습니다. 특히 머신러닝딥러닝에서 자주 사용됩니다.


표준화와 정규화


표준화 (Standardization)

  • 정의 : 데이터의 평균을 0, 표준편차를 1로 변환하는 기법.
  • 목적 : 다양한 변수의 분포와 단위가 다를 때, 동일한 기준으로 변환하여 상대적 비교를 용이하게 합니다.
  • 수식 :

  • 특징 :
    • 평균이 0, 표준편차가 1로 맞춰짐.
    • 데이터 분포의 모양은 유지하되, 중심을 0으로 맞추고 스케일을 조정하여, 모든 변수들이 동일한 표준편차를 갖게 함.
    • 이상치(Outliers)가 있는 데이터에도 강한 내성을 가질 수 있습니다. (평균 중심의 변환이므로 이상치가 큰 영향을 미치지 않음)
    • 데이터가 정규분포에 가까울수록 효과적이며, 주로 회귀분석, SVM, K-NN 등 모델에 사용.
  • 사용 사례 :
    • 통계 분석에서 주로 사용되며, 각 데이터의 상대적 위치가 중요한 상황에서 많이 활용됩니다.
    • 특히 정규분포를 가정하는 모델에 적합하며, PCA(주성분 분석)와 같은 차원 축소 기법에서도 필수적입니다.

정규화 (Normalization)

  • 정의 : 데이터의 최소값을 0, 최대값을 1로 변환하는 기법.
  • 목적 : 데이터 값의 범위를 제한하여, 비율 기반 비교다양한 데이터 간의 동일한 스케일링이 필요할 때 사용합니다.
  • 수식 :

  • 특징 :
    • 데이터의 값이 0에서 1 사이에 위치하게 되어, 모든 값들이 같은 범위 안에 있게 됩니다.
    • 데이터의 분포는 유지되나, 최소값과 최대값에 상대적으로 맞춰 조정.
    • 이상치(Outliers)에 민감할 수 있습니다. 이상치가 데이터의 최소값이나 최대값에 영향을 크게 줄 수 있기 때문입니다.
    • 비율이 중요한 상황에서 유용하며, 딥러닝 모델에서 많이 사용됩니다.
  • 사용 사례 :
    • 주로 신경망(NN)과 같은 비선형 모델에서 데이터의 범위 조정이 필수적일 때 유리합니다.
    • 예를 들어, 각기 다른 범위를 가진 피처들이 있을 때, 이들의 영향력을 균등하게 하기 위해 정규화를 활용합니다.
    • 이미지 처리, 텍스트 처리와 같은 경우에도 정규화가 자주 사용됩니다.

표준화와 정규화의 비교

구분 표준화 (Standardization) 정규화 (Normalization)
목적 평균 0, 표준편차 1로 맞춰 상대적 분포를 조정 데이터 값을 0~1 범위로 맞춰 스케일을 조정
사용 범위 통계 분석, 머신러닝 모델 딥러닝, 비선형 모델, 비교 분석
변환 방식 평균과 표준편차를 기준으로 변환 최소값과 최대값을 기준으로 변환
이상치 대응 이상치에 강한 내성 이상치에 민감
특징 값의 분포는 유지하면서 평균을 0으로, 표준편차를 1로 맞춤 데이터의 최소값이 0, 최대값이 1이 되도록 변환
사용 모델 회귀, SVM, K-NN, PCA 등 신경망, 비선형 모델, 이미지/텍스트 처리
  • 이상치 처리:
    • 표준화는 평균을 중심으로 데이터의 스케일을 조정하기 때문에 이상치에 덜 민감합니다.
    • 정규화는 데이터의 최소값과 최대값에 민감하므로, 이상치가 있으면 큰 영향을 받을 수 있습니다. 이상치가 있는 데이터라면 정규화를 적용하기 전에 먼저 이상치를 처리하는 것이 좋습니다.
  • 사용 상황:
    • 표준화는 변수가 서로 다른 단위를 가지고 있거나 데이터의 정규분포에 가까울 때 유리합니다. 또한 PCA와 같은 차원 축소 기법을 사용할 때 필수적입니다.
    • 정규화는 데이터가 비교적 균일한 범위 내에서 이루어져야 할 때, 특히 신경망과 같은 모델에서 많이 사용됩니다. 신경망의 활성화 함수가 특정 범위의 입력값에 민감하게 반응하는 특성 때문에, 데이터를 동일한 범위로 맞추는 것이 중요합니다.

요약 및 정리

  • 표준화는 변수의 분포가 중요하고, 정규분포에 가까운 데이터에서 자주 사용됩니다. 회귀 분석, PCA, 머신러닝 모델에 적합합니다.
  • 정규화는 비율 비교가 중요하거나, 데이터가 0과 1 사이에 있어야 하는 경우에 유용합니다. 딥러닝과 같이 비선형 모델에서 효과적입니다.
  • 이상치가 존재하는 경우라면 표준화가 더 적합할 수 있으며, 정규화를 적용하기 전에 이상치 처리를 하는 것이 중요합니다.
  • 최종적으로는 데이터의 특성과 분석 목적에 따라 적절한 방법을 선택하는 것이 중요합니다.

 

728x90