본문 바로가기
Deep Learning

Normalization, Standardization

by arirang_ 2024. 12. 21.

Normalization, Standardization은 feature scaling의 방법들이다.

 

📌 Feature Scaling이란?

머신러닝과 딥러닝에서 데이터를 전처리하는 기법으로, feauture 값을 유사한 스케일로 변환하여 모든 feature가 모델에 동등하게 기여하도록 하는 기술이다. 서로 다른 feature 값들을 동일한 척도로 변환시킨다. 데이터의 값이 서로 다른 범위에 있다면, 모델이 특정 특징에 지나치게 민감하거나, 무시할 가능성이 있기 때문이다.

 

📌 Feature Scaling이 필요한 알고리즘


경사 하강법 알고리즘 (Gradient Descent Based Algorithms)

 

  • 선형 회귀(Linear Regression)
  • 로지스틱 회귀(Logistic Regression)
  • 신경망(Neural Networks)

특징(feature)의 범위가 서로 다르면 경사 하강법의 스텝 크기(step size)가 달라져서 학습이 불안정하고 최적화 속도가 느려질 수 있다. 

Feature Scaling을 통해 데이터의 범위를 조정하면, 경사하강법이 모든 특징에 대해 동일한 비율로 업데이트 되면서 원할하게 최적점에 수렴할 수 있다. 데이터 스케일이 서로 다르면 학습이 비효율적이므로 데이터 전처리 단계에서 스케일링을 수행해야 한다.

 

 거리 기반 알고리즘 (Gradient Descent Based Algorithms)

 

  • K-Nearest Neighbors (KNN)
  • K-Means Clustering
  • Support Vector Machines (SVM) (특히 RBF 커널 사용 시)

거리 기반 알고리즘은 데이터 간의 거리를 기준으로 유사성을 판단하기 때문에 특징(feature)의 스케일에 큰 영향을 받는다.

서로 다른 범위를 가진 특징이 있으면, 값이 더 큰 범위를 가진 특징에 더 가중치를 갖게 된다. 이렇게 되면 알고리즘이 특정 특징에 편향될 수 있다. 따라서 Feature scaling을 수행하여 모든 특징이 결과에 동등하게 기여하도록 만들어야 한다.

 

PCA(Principa Component Analysis)

  • 고차원 데이터를 주성분으로 변환할 때 각 특징의 스케일에 민감

위의 알고리즘은 데이터 스케일링이 필요하다. 

 

☑️ 트리 기반 알고리즘 (Tree-Based Algorithms)

의사 결정 트리와 같은 트리기반 알고리즘은 특징의 스케일 값이 민감하지 않다. 노드를 나눌 때 특징에 대해 분할을 수행하며, 이때 노드의 동질성을 높이는 특징이 선택된다. 이때 다른 특징의 스케일은 이 분할에 영향을 미치지 않는다. 따라서 트리 기반 알고리즘은 특징 스케일의 영향을 받지 않으므로 Feature Scaling이 필요하지 않다.

📌 Normalization이란?

학습 전에 특징값(feature)를 0과 1 사이의 범위로 조정하는 스케일링 기법이다. Normalization은 feature들의 분포를 조절하여 균일하게 만들어 scale(범위)가 큰 feature의 영향이 비대해지는 것을 방지한다.

 

Feature가 범위 차이(scale)가 심할 때 큰 범위를 가지는 가격이 작은 범위를 가지는 가격보더 더 강하게 모델에 반영될 수 있기 때문에 Normalization으로 feature scaling을 진행하는 것이 필요하다. 

 

이를 통해 feature들은 동일한 정도의 중요도로 모델에 반영된다. 

 

✅ 장점 

  • 데이터의 스케일 차이가 줄어드므로 데이터가 한쪽으로 덜 치우쳐 성능이 향상된다.
    (모든 특징이 동일한 중요도를 가지도록 조정하여 모델 성능을 개선.)
  • 학습 속도가 개선된다.
  • 노이즈가 작아지므로 오버피팅을 억제시킨다.

 

📌 Standardization이란?

특징값을(feature) 평균이 0, 표준편차가 1이 되도록 변환하는 기법이다. 데이터를 평균 중심으로 이동시키고 표준편차를 1로 조정하여 모든 특징들이 동일한 스케일을 갖도록 한다.

 

 

📌 정리

Normalization Standardization
학습 전 특징값을 0~1 사이의 값으로 조정 특징값의 평균을 0, 표준편차를 1로 조정
특징값(데이터)의 범위를 재조정한다. (feature scaling 재조정)

 

 

 

 


https://github.com/boost-devs/ai-tech-interview/blob/main/answers/3-deep-learning.md#1

 

ai-tech-interview/answers/3-deep-learning.md at main · boost-devs/ai-tech-interview

👩‍💻👨‍💻 AI 엔지니어 기술 면접 스터디 (⭐️ 1k+). Contribute to boost-devs/ai-tech-interview development by creating an account on GitHub.

github.com

https://www.analyticsvidhya.com/blog/2020/04/feature-scaling-machine-learning-normalization-standardization/

 

Feature Scaling: Engineering, Normalization, and Standardization (Updated 2025)

Learn how feature scaling, normalization, & standardization work in machine learning. Understand the uses & differences between these methods.

www.analyticsvidhya.com

https://woochan-autobiography.tistory.com/887#1.1.1.%20Min-Max%20scaling%20:%200~1%20%EC%82%AC%EC%9D%B4%20%EA%B0%92%EC%9C%BC%EB%A1%9C%20%EB%B3%80%ED%99%98

 

CNN - Batch Normalization

목차 Feature Scaling Scaling 기법 Min-Max scaling : 0~1 사이 값으로 변환 Z score 정규화 : 평균이 0, 표준편차가 1 인 데이터셋으로 변환 Scaling 적용 유무에 따른 Loss함수의 Gradient Descent 변화 Batch Normalization B

woochan-autobiography.tistory.com