데이터 전처리: 스케일링 – 표준화
ㅁ 스케일링
ㅇ 정의:
데이터의 범위나 분포를 조정하여 알고리즘의 학습 효율과 성능을 향상시키는 전처리 기법.
ㅇ 특징:
– 입력 변수들의 단위나 범위 차이를 줄여 모델이 특정 변수에 치우치지 않도록 함.
– 거리 기반 알고리즘(KNN, SVM, PCA 등)에서 성능 향상에 필수적.
– 스케일링 방법에는 표준화, 정규화 등이 있음.
ㅇ 적합한 경우:
– 변수들의 단위가 서로 다른 경우.
– 평균과 분산의 차이가 큰 데이터셋.
– 거리 계산이나 분산 기반 분석이 중요한 경우.
ㅇ 시험 함정:
– 스케일링을 학습 데이터와 테스트 데이터에 동일한 기준으로 적용해야 함(데이터 누수 방지).
– 표준화와 정규화를 혼동하는 경우.
ㅇ 시험 대비 “패턴 보기” 예시:
O: “KNN 알고리즘 적용 전, 변수 간 단위 차이를 줄이기 위해 표준화를 수행한다.”
X: “스케일링은 회귀 분석에서는 필요하지 않다.”
================================
1. 표준화
ㅇ 정의:
데이터의 평균을 0, 표준편차를 1로 변환하여 분포를 표준 정규분포 형태로 맞추는 스케일링 기법.
ㅇ 특징:
– 평균과 표준편차를 사용하여 변환.
– 이상치(outlier)의 영향을 받을 수 있음.
– 데이터가 정규분포를 따를 필요는 없지만, 분포 중심을 0으로 이동시키고 분산을 1로 맞춤.
ㅇ 적합한 경우:
– SVM, 로지스틱 회귀, PCA 등 가우시안 분포 가정이 있는 모델.
– 특성 값의 범위 차이가 클 때.
ㅇ 시험 함정:
– 표준화는 최소값과 최대값을 0~1로 맞추는 정규화와 다름.
– 학습 데이터에서 계산한 평균과 표준편차를 테스트 데이터에도 동일하게 적용해야 함.
ㅇ 시험 대비 “패턴 보기” 예시:
O: “표준화는 평균 0, 표준편차 1로 변환하여 각 변수의 스케일을 맞춘다.”
X: “표준화는 항상 데이터의 분포를 완벽한 정규분포로 만든다.”
ㅁ 추가 학습 내용
표준화와 정규화의 차이를 명확히 구분해야 한다.
표준화(Standardization)는 데이터의 평균을 0, 표준편차를 1로 변환하는 방법으로 평균과 표준편차를 사용한다.
정규화(Normalization, Min-Max Scaling)는 데이터의 최소값과 최대값을 이용하여 값을 0에서 1 사이 범위로 변환한다.
시험에서는 두 용어를 혼동시키는 함정 문장이 자주 출제되므로 주의해야 한다.
추가 스케일링 기법 비교:
– RobustScaler: 중앙값과 IQR(사분위 범위)을 사용하여 이상치의 영향을 줄인다.
– MaxAbsScaler: 절대값 기준 최대값으로 나누어 -1에서 1 사이로 변환하며, 데이터의 희소성(sparsity)을 유지한다.
표준화 과정에서는 이상치가 평균과 표준편차 계산에 영향을 줄 수 있으므로, 이상치 처리 후 표준화를 적용하는 것이 바람직하다.