[파이썬을 활용한 통계 개념 기초] 07. 표준화와 정규화(Standardization and Normalization)통계/파이썬을 이용한 통계 기초2024. 10. 5. 09:30
Table of Contents
표준화와 정규화는 스케일링 (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
'통계 > 파이썬을 이용한 통계 기초' 카테고리의 다른 글
[파이썬을 활용한 통계 개념 기초] 09. 음이항 분포(Negative binomial distribution) (1) | 2024.10.17 |
---|---|
[파이썬을 활용한 통계 개념 기초] 08. 근사(Approximation) (0) | 2024.10.10 |
[파이썬을 활용한 통계 개념 기초] 06. 포아송 분포(Poisson distribution) (0) | 2024.09.24 |
[파이썬을 활용한 통계 개념 기초] 05. 이항 분포(Binomial distribution) (0) | 2024.09.19 |
[파이썬을 활용한 통계 개념 기초] 04. 정규 분포(Normal distribution) (1) | 2024.09.07 |
@ourkofe's story :: ourkofe
데이터 분석을 공부하고 카페를 열심히 돌아다니는 이야기
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!