데이터 전처리: 정규화 및 표준화
ㅁ 정규화 및 표준화
ㅇ 정의:
데이터의 범위나 분포를 조정하여 알고리즘 학습 성능을 향상시키는 전처리 기법.
ㅇ 특징:
– 서로 다른 단위나 범위를 가진 데이터를 동일 기준으로 맞춤.
– 거리 기반 알고리즘(KNN, SVM, K-means 등)에서 중요.
ㅇ 적합한 경우:
– 피처 스케일 차이가 모델 성능에 영향을 주는 경우.
ㅇ 시험 함정:
– 정규화와 표준화를 혼동.
– 학습 데이터와 테스트 데이터에 동일한 변환 파라미터를 적용하지 않는 실수.
ㅇ 시험 대비 “패턴 보기” 예시:
O: “KNN에서 피처 스케일 차이를 줄이기 위해 Min-Max 정규화를 적용할 수 있다.”
X: “Standardization은 데이터 범위를 0~1로 변환한다.”
================================
1. Min-Max 정규화
ㅇ 정의:
최소값과 최대값을 이용해 데이터를 0~1 범위로 선형 변환하는 기법.
ㅇ 특징:
– (x – min) / (max – min) 공식 사용.
– 이상치에 민감.
ㅇ 적합한 경우:
– 데이터 범위가 정해져 있고, 이상치가 거의 없는 경우.
ㅇ 시험 함정:
– 이상치 존재 시 변환 범위 왜곡.
– 표준화와 혼동.
ㅇ 시험 대비 “패턴 보기” 예시:
O: “Min-Max 정규화는 데이터 범위를 0과 1 사이로 조정한다.”
X: “Min-Max 정규화는 평균과 표준편차를 이용한다.”
================================
2. Standardization
ㅇ 정의:
평균을 0, 표준편차를 1로 변환하는 스케일링 기법.
ㅇ 특징:
– (x – mean) / std 공식 사용.
– 이상치 영향이 상대적으로 적음.
ㅇ 적합한 경우:
– 데이터가 정규분포를 따른다고 가정하는 알고리즘.
ㅇ 시험 함정:
– 정규화와 혼동.
– 데이터 분포가 비정규분포인 경우 효과 제한.
ㅇ 시험 대비 “패턴 보기” 예시:
O: “Standardization은 평균 0, 표준편차 1로 변환한다.”
X: “Standardization은 데이터 범위를 0~1로 맞춘다.”
================================
3. 이상치 영향
ㅇ 정의:
데이터 내 극단값이 스케일링 결과에 미치는 영향.
ㅇ 특징:
– Min-Max 정규화에서 이상치에 매우 민감.
– RobustScaler 등 대안 기법 존재.
ㅇ 적합한 경우:
– 이상치 영향이 중요한 분석.
ㅇ 시험 함정:
– 이상치 처리 없이 Min-Max 적용.
ㅇ 시험 대비 “패턴 보기” 예시:
O: “Min-Max 정규화는 이상치에 민감하다.”
X: “Standardization은 이상치에 전혀 영향을 받지 않는다.”
================================
4. 데이터 스케일링
ㅇ 정의:
데이터의 값 범위나 분포를 조정하는 전처리 작업 전반.
ㅇ 특징:
– 정규화, 표준화, 로버스트 스케일링 등 포함.
– 모델 학습 속도 및 성능에 영향.
ㅇ 적합한 경우:
– 거리 기반, 경사하강법 기반 모델.
ㅇ 시험 함정:
– 스케일링을 모든 알고리즘에 무조건 적용하는 오해.
ㅇ 시험 대비 “패턴 보기” 예시:
O: “K-means는 데이터 스케일링이 필요하다.”
X: “트리 기반 모델은 데이터 스케일링이 필수이다.”
ㅁ 추가 학습 내용
RobustScaler는 중앙값과 IQR(사분위 범위)을 사용하여 데이터의 스케일을 조정하는 방법으로, 이상치의 영향을 줄일 수 있는 특징이 있다. MaxAbsScaler는 각 특성의 최대 절대값을 1로 맞추는 방식으로, 데이터가 이미 0을 중심으로 분포하고 있을 때 유용하다. QuantileTransformer는 데이터의 분포를 균등분포나 정규분포로 변환하는 방법으로, 비선형적인 스케일 변환이 가능하다.
스케일링을 적용할 때는 반드시 학습 데이터로 fit한 변환기를 테스트 데이터에도 동일하게 적용해야 한다. 이는 데이터 누수를 방지하고, 모델이 실제 환경에서 성능을 유지할 수 있도록 하기 위함이다. 이를 위해 파이프라인(Pipeline)을 사용하면 전처리와 모델 학습 과정을 하나로 묶어 테스트 데이터에 잘못된 정보가 흘러 들어가는 것을 방지할 수 있다.
시험에서는 ‘정규화’라는 용어를 통계에서 사용하는 정규분포와 혼동시키는 함정이 자주 등장하므로 주의해야 한다. 또한 PCA, 신경망, 로지스틱 회귀와 같은 알고리즘에서 스케일링이 필요한 이유를 묻는 응용형 문제가 자주 출제된다. 예를 들어, PCA는 분산을 기준으로 주성분을 찾기 때문에 각 특성의 스케일이 다르면 결과가 왜곡될 수 있으며, 신경망과 로지스틱 회귀는 경사하강법 기반 최적화를 사용하므로 스케일이 맞지 않으면 학습 속도와 성능에 영향을 줄 수 있다.