2026년 상식닷컴 선정 식당 & 카페 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요

머신러닝알고리즘: 데이터의 스케일링(scaling) 방법에는 어떤 것이 있나요?

_____
Q1. 데이터 스케일링(Feature Scaling)이란 무엇인가요?
A1. 머신러닝에서 입력 변수(피처)들의 값 범위가 서로 크게 다르면 학습이 비효율적이거나 특정 알고리즘이 수렴하지 않을 수 있습니다. 데이터 스케일링은 모든 피처를 일정한 범위나 분포로 변환해 학습 안정성과 성능을 높이는 전처리 기법입니다.

Q2. 왜 데이터 스케일링이 중요한가요?
A2.
- 거리 기반 알고리즘(k-NN, SVM, K-Means 등)은 피처 간 거리를 계산하므로 스케일이 다르면 특정 피처에 치우친 결과가 나옵니다.
- 경사하강법을 사용하는 모델(선형회귀, 로지스틱회귀, 신경망)은 각 변수의 스케일 차이로 학습률 조정이 까다로워져 수렴 속도가 느려지거나 발산할 수 있습니다.
- 규제화(Regularization)를 적용할 때도 벌점이 스케일 차이에 민감하므로 표준화가 필요합니다.

Q3. Min-Max 스케일링(정규화)은 어떻게 하나요?
A3.
- 방법: x_scaled = (x – x_min) / (x_max – x_min)
- 변환 결과를 일반적으로 [0,1] 또는 지정한 [a,b] 범위로 옮김
- 장점: 해석이 직관적, 결과가 한정된 범위에 있음
- 단점: 이상치에 민감. x_min·x_max가 극단치면 대부분 샘플이 좁은 구간에 몰림

Q4. Z-점수 표준화(Standardization)는 무엇인가요?
A4.
- 방법: x_scaled = (x – μ) / σ, 여기서 μ는 평균, σ는 표준편차
- 평균이 0, 분산이 1인 정규 분포 형태로 변환
- 장점: 이상치의 영향을 Min-Max보다 덜 받음. 경사하강법 수렴에 유리
- 단점: 실험적 분포(비정규 분포)의 왜곡 가능성

Q5. Robust Scaling(중앙값·IQR 스케일링)이란?
A5.
- 방법: x_scaled = (x – median) / IQR, IQR = 75백분위수 – 25백분위수
- 중앙값 및 사분위 범위를 이용해 이상치 영향을 크게 줄임
- 장점: 극단치가 많은 데이터에 적합
- 단점: IQR 계산에 드는 추가 비용, 분포 정보 일부 손실

Q6. MaxAbs 스케일링이란 무엇인가요?
A6.
- 방법: x_scaled = x / max(|x|)
- 각 특성의 절댓값 최대치로 나눠 범위를 [–1,1]로 변환
- 장점: 희소행렬(sparse data) 구조 유지
- 단점: 극단치가 크면 대다수 값이 0 근처에 몰릴 수 있음

Q7. 단위 벡터 정규화(Normalization, L1·L2 노름)는 언제 쓰이나요?
A7.
- 방법: x_scaled = x / ||x||, 보통 L2 노름(유클리드 거리) 사용
- 주로 문서 분류나 추천 시스템의 텍스트 피처(TF-IDF, word embedding)에 이용
- 각 샘플의 전체 크기를 1로 맞추어 방향 정보만 남김

Q8. 파워 변환(Power Transformation)은 무엇이고 언제 쓰나요?
A8.
- 대표적 기법: Box-Cox(양수 데이터 전용), Yeo-Johnson(음수 포함 가능)
- 목적: 데이터 분포를 정규분포에 가깝게 만들어 선형 모델 성능을 높임
- 방법: x_scaled = ((x^λ – 1)/λ) 또는 로그 변환(λ→0)
- 장점: 비대칭 분포 교정, 이상치 영향 감소
- 단점: 분포 가정 실패 시 과도 조정 위험

Q9. Quantile Transformer(분위수 변환)는 어떤가요?
A9.
- 방법: 각 값의 누적분포함수(CDF) 기반 분위수 위치로 매핑 → 균등 또는 정규 분포로 변환
- 장점: 비모수적, 극단치에 둔감
- 단점: 매핑할 분포 지정 필요, 미세 패턴 손실 우려

Q10. 어떤 스케일링 방법을 선택해야 하나요?
A10.
- 이상치 적고 모델이 거리 기반·규제 민감 → Standardization
- 값이 [0,1]로 한정되어야 함 → Min-Max
- 이상치 많음 → Robust Scaler
- 희소 데이터 유지 필요 → MaxAbs
- 분포 왜곡 심함, 정규분포 가정 모델 → Power 또는 Quantile Transformer
- 텍스트·추천 시스템 → 단위 벡터 정규화

Q11. 스케일링 적용 시 주의사항은?
A11.
- 학습용(train) 데이터로만 fit(평균·분산 계산)하고 테스트(test)/검증(validation) 데이터는 transform만 수행
- 파이프라인(Pipeline) 활용해 데이터 누수 방지
- 범주형 변수는 스케일링 대상이 아님(원-핫 인코딩 후 스케일링해도 무방하나 해석 주의)
- 스케일링 전후 모델 성능·분포 변화를 반드시 검증할 것
머신러닝에서 서로 다른 단위를 가지거나 분포 특성이 다른 특성(feature)들로 이루어진 데이터를 한꺼번에 다룰 때, 스케일링(정규화·표준화)은 매우 중요한 전처리 과정입니다.

대표적인 스케일링 방법들을 하나씩 살펴보겠습니다.

1. Min–Max Scaling (최소–최대 정규화) 이 방법은 각 특성값을 0과 1 사이(또는 원하는 범위 a와 b 사이)로 압축합니다.

• 변환식: x_scaled = (x – x_min) / (x_max – x_min) • 장점 – 계산이 단순하고 직관적이며, 변환 후 값이 지정된 범위를 벗어나지 않음 – 신경망이나 거리 기반 알고리즘(KNN, K-means)에서 자주 사용 • 단점 – 이상치(outlier)에 민감하여, x_min 또는 x_max가 극단값이면 다른 정상값들이 좁게 분포

2. Standardization (Z-score 정규화) 평균을 0, 분산을 1로 맞추어 표준 정규분포 형태로 변환합니다.

• 변환식: x_scaled = (x – μ) / σ (μ: 특성의 평균, σ: 표준편차) • 장점 – 이상치의 영향이 Min–Max보다 덜하며, 정규분포를 가정하는 모델에 적합 – 선형 회귀, 로지스틱 회귀, SVM, PCA 등에서 흔히 사용 • 단점 – 특성이 정규분포에 가깝지 않을 경우 왜곡이 발생할 수 있음

3. Robust Scaling (중앙값·IQR 기반 정규화) 중앙값(median)과 IQR(inter-quartile range, 1사분위와 3사분위 차이)을 이용해 스케일링합니다.

• 변환식: x_scaled = (x – median) / IQR • 장점 – 이상치에 매우 강건(robust) – 중앙값·사분위수를 사용하므로 데이터 분포가 치우쳐 있거나 극단치를 포함할 때 유용 • 단점 – 사분위 범위 밖의 값들에 대한 세밀한 구분력이 떨어질 수 있음

4. Max-Abs Scaling 각 특성값을 절대값 최댓값(abs(maximum))으로 나누어 –1과 1 사이로 압축합니다.

• 변환식: x_scaled = x / |x_max| • 장점 – 희소 행렬(sparse matrix)을 그대로 유지하면서 스케일링 가능 – 특성의 부호(sign)를 보존 • 단점 – 이상치가 최댓값을 왜곡하면 전체 스케일이 잘못될 수 있음

5. Unit Vector Normalization (벡터 정규화) 샘플(행) 하나를 하나의 벡터로 보고, 그 길이(norm)를 1로 맞춥니다.

주로 텍스트 처리에서 TF-IDF 벡터에 사용됩니다.

• 변환식 (L2 노름 기준): x_scaled = x / ||x||₂ • 장점 – 피처 간 상대적 비율을 유지하면서 벡터 크기를 통일 – 코사인 유사도 계산 시 유용 • 단점 – 개별 특성의 스케일 조정이 아님 (샘플 단위 정규화)

6. Log Transformation (로그 변환) 양수 값을 갖는 특성에 대해 로그를 취해 분포를 덜 치우치게 만듭니다.

• 변환식: x_scaled = log(x + ε) (ε: 0일 때 –∞ 방지용 작은 값) • 장점 – 양의 비율 변화를 강조하고, 긴 꼬리를 가진 분포를 압축 – 지수적 성장 패턴을 완만하게 조정 • 단점 – 0 또는 음수 값 처리 시 추가 조치 필요

7. Power Transformation (거듭제곱 변환) 데이터가 정규분포에 가깝도록 만드는 변환 계수(λ)를 찾아서 적용합니다.

대표적으로 Box-Cox(양수 전용)와 Yeo–Johnson(음수 포함 허용) 방법이 있습니다.

• Box-Cox 변환식 (x>0): x_scaled = (x^λ – 1) / λ (λ ≠ 0) x_scaled = log(x) (λ = 0) • Yeo–Johnson 변환식 (x∈ℝ 가능) – x ≥ 0: ( (x+1)^λ – 1 ) / λ – x < 0: –( (–x+1)^(2–λ) – 1 ) / (2–λ) • 장점 – 분포를 정규화하려는 목적에 최적화된 λ를 자동 추정 – 선형 모델, ANOVA, PCA 전처리에 도움 • 단점 – 변환 후 해석이 다소 복잡할 수 있음 – 계산 비용이 다른 기법보다 큼

8. Quantile Transformation (분위수 변환) 데이터의 분위수(quantile)에 대응하는 값으로 변환하여 지정된 분포(예: 균등분포, 정규분포)에 맵핑합니다.

• 과정 1) 각 샘플의 분위수(rank)를 계산

2) 목표 분포의 누적분포함수(CDF)에 대응시켜 값 할당 • 장점 – 분포 왜곡을 최대한 제거하며, 이상치 영향 최소화 – 균등 분포나 표준 정규분포로의 매핑 가능 • 단점 – 데이터마다 순위 기반 변환이므로 상관관계 구조가 일부 훼손될 수 있음 – 변환된 값 사이에 동일 분위수인 경우 동점(tie) 처리 고려

9. Winsorization (윈저화) 극단값을 상·하위 특정 분위수(예: 1%, 99%) 값으로 대체하여 스케일링 전 이상치 제거 효과를 줍니다.

• 장점 – 이상치가 극단적으로 큰 경우에도 분포 왜곡을 줄여줌 • 단점 – 극단값 자체의 의미를 일부 손실

10. 특징별 조합 사용 실제 프로젝트에서는 위 방법들을 단일로 사용하기보다, 특성의 분포나 이상치 여부, 모델 요구사항에 따라 적절히 조합해 사용합니다.

예를 들어 – 숫자형 특성 중 일부는 Min–Max, 일부는 Robust Scaling – 로그 변환 후에 Standardization – 희소성이 중요한 텍스트 데이터는 Max-Abs 또는 Unit Vector 정규화 각 스케일링 방법은 데이터 분포, 모델 특성, 이상치 유무, 해석 용이성 등을 고려해 선택해야 합니다.

실험(experiment)과 교차검증(cross-validation)을 통해 가장 성능이 좋은 전처리 조합을 찾아내는 것이 핵심입니다.

작성자: 최재훈 [비회원] | 작성일자: 10개월 전 2025-07-22 08:22:23
조회수: 189 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
내용이 부정확하다면 싫어요를 클릭해주세요.