dataforge.ai.kr
‹ 가이드 홈
dataforge.ai.kr/prep/normalize

정규화·표준화 사용법 — 스케일이 다른 변수를 같은 눈금으로

같은 데이터에 Min-Max·Z-Score·Robust 세 방법을 동시에 적용해, 스케일링이 값을 어떻게 바꾸는지 눈으로 비교하는 도구입니다.

탭: 📊 시뮬레이터 · 📂 CSV 변환 · 저장

어떤 상황에서 쓰는 도구인가요

키는 150~190(cm), 연봉은 3,000만~8,000만(원). 이 두 변수를 그대로 한 모델에 넣으면 어떻게 될까요? KNN이나 K-Means처럼 거리를 계산하는 모델은 두 점 사이의 차이를 숫자 크기 그대로 더합니다. 키가 20cm 차이 나도 거리에 보태지는 값은 20이지만, 연봉이 1,000만 원 차이 나면 10,000,000이 보태집니다. 결과적으로 모델은 사실상 연봉만 보고 판단하게 됩니다 — 키라는 변수는 있으나 마나가 되는 것이지요.

이 왜곡은 코드 오류가 아니라서 에러 메시지도 없습니다. 모델은 조용히 이상한 답을 내놓을 뿐입니다. 그래서 거리 기반 모델이나 경사하강법으로 학습하는 모델에 데이터를 넣기 전에는, 단위가 다른 변수들을 같은 눈금으로 맞추는 스케일링이 필요합니다. 이 시뮬레이터는 그 스케일링 방법들이 실제로 값을 어떻게 바꾸는지 직접 넣어보며 확인하는 도구입니다.

이 도구는 무엇을 하나요

숫자 데이터를 입력하면 원본 · Min-Max 정규화 · Z-Score 표준화 · Robust 표준화 네 개의 패널이 나란히 그려집니다. 같은 데이터가 방법에 따라 어떻게 다른 값으로 바뀌는지 막대 차트와 통계로 비교하고, 이상치(999) 추가 버튼으로 극단값 하나가 각 방법을 얼마나 흔드는지도 실험할 수 있습니다. 📂 CSV 변환·저장 탭에서는 내 CSV/XLSX 파일의 숫자형 열에 같은 변환을 적용해 새 파일로 저장합니다.

도구가 제공하는 세 가지 방법은 다음과 같습니다.

단계별 사용법

  1. 데이터 넣기 — 프리셋(📊 기본 · 📉 치우친 분포 · ↕ 음수 포함 · ↔ 넓은 범위 · 🌡 센서 데이터) 중 하나를 누르거나, 입력창에 쉼표로 구분한 숫자를 직접 입력하고 변환 ▶ 버튼을 누릅니다.
  2. 네 패널 비교하기 — 원본과 세 가지 변환 결과가 나란히 그려집니다. 막대 높이가 변환된 값입니다. Min-Max는 [0, 1] 범위로, Z-Score는 평균 0 · 표준편차 1로, Robust는 중앙값 0 · IQR 1로 바뀌는 것을 각 패널의 통계 수치로 확인하세요. 모양(패턴)은 유지되고 눈금만 바뀐다는 점이 핵심입니다.
  3. 이상치 실험⚠ 이상치(999) 추가 토글을 켜면 극단값 하나가 데이터에 들어갑니다. 아래 'Min-Max vs Robust 전/후 비교' 차트에서, Min-Max는 나머지 값이 전부 0 근처로 눌리는 반면 Robust는 거의 흔들리지 않는 것을 비교할 수 있습니다.
  4. 변환값 상세 비교 표 읽기 — 데이터 포인트별로 원본·Min-Max·Z-Score·Robust 값이 한 표에 나란히 표시됩니다. 특정 값 하나가 각 방법에서 어떤 숫자로 바뀌었는지 정확히 추적할 때 씁니다.
  5. 방법 가이드 확인 — 화면 하단 '언제 어떤 방법을 쓸까?' 카드에 방법별 공식·적합한 상황·주의점이 정리되어 있습니다. 어떤 모델에 어떤 방법이 어울리는지 여기서 확인하세요.
  6. 내 파일에 적용하기 — 📂 CSV 변환·저장 탭에서 CSV 또는 XLSX 파일을 업로드(UTF-8/EUC-KR 지원, 최대 10MB)하고, 변환할 숫자형 열을 클릭해 선택한 뒤 방법을 고르고 변환 적용 ▶을 누릅니다. 미리보기를 확인하고 CSV 저장 ↓ 또는 XLSX 저장 ↓으로 내려받으면 됩니다. 선택하지 않은 열은 원본 그대로 유지됩니다.
💡 주소 뒤에 #csv를 붙이면 CSV 변환·저장 탭이 바로 열립니다. 실습 자료에서 파일 변환 단계로 곧장 안내할 때 유용합니다.

어떤 때 어떤 방법을 고르나요

Min-Max 정규화는 결과 범위가 항상 [0, 1]로 보장되기 때문에, 이미지 픽셀값(0~255)처럼 변수의 범위가 명확히 정해진 데이터나 신경망 입력층 전처리에 잘 맞습니다. 대신 최솟값·최댓값에 직접 의존하므로 이상치에 매우 민감합니다 — 극단값 하나가 전체 눈금을 왜곡합니다.

Z-Score 표준화는 평균과 표준편차 기준이라 정규분포에 가까운 데이터에서 효과적이고, 선형회귀·SVM·PCA처럼 거리나 분산을 다루는 모델의 기본 선택지입니다. 분포가 크게 치우쳐 있으면 효과가 줄어듭니다.

Robust 표준화는 평균 대신 중앙값, 표준편차 대신 IQR을 쓰기 때문에 이상치가 많거나 분포가 치우친 데이터(센서 오류, 로그 데이터 등)에 가장 강건합니다. 다만 결과 범위가 [0, 1]처럼 보장되지는 않습니다. 정리하면 — 범위가 확실하면 Min-Max, 일반적인 경우 Z-Score, 이상치가 의심되면 Robust부터 시도해 보세요.

🤔 생각해볼 점 — 이상치(999) 토글을 켰을 때 Min-Max 패널의 나머지 막대들은 어디로 몰리나요? 그리고 스케일러의 min·max·평균은 학습 데이터에서만 구해야 할까요, 전체 데이터에서 구해도 될까요? 후자가 왜 위험한지는 데이터 누수 가이드에서 이어집니다.
📊 시뮬레이터 열기 →

함께 보면 좋은 가이드