Interaction(상호작용 비율) 지표가 포함된 모델에서 K-Means 클러스터링을 수행하기 전에 적용하면 좋습니다.
- MinMaxScaler
- 모든 피처(Feature)값을 0과 1사이로 압축하는 기법입니다.
X(sclaed) = ( X - X(min) ) / ( X(max) - X(min) )
최솟값 (x min) 은 0이 되고 최댓값(x max)는 1이 됩니다.
데이터의 상대적 분포는 유지하면서 오직 단위(Scale)만 통일합니다.
- 모든 피처(Feature)값을 0과 1사이로 압축하는 기법입니다.
- K-means에서 스케일링을 해야하는 이유
- K-Means는 데이터 포인트 사이의 유클리드 거리를 계산하여 군집을 나눕니다.(평균값)
- 만약 매출은 수천만원인데 비율은 0~1 사이라면 매출을 더 중요한 변수로 착각하기 때문에 문제가 생깁니다. MinMaxSclaer를 통해 모든 변수를 0~1사이로 맞춰 모든 지표가 군집 형성에 동등한 영향력을 갖게 됩니다.
- MinMaxScaler에는 치명적인 약점이 하나 있습니다. 바로 이상치(Outlier)에 취약하다는 점입니다.
- 만약 99명의 고객이 100달러를 썼는데, 1명의 VIP가 1,000,000달러를 썼다면?
- MinMax 적용 시 99명의 데이터는 0.0001 근처에 다닥다닥 붙게 되고, 군집이 제대로 나뉘지 않습니다.
- 주의사항: "로그 변환"이 선행되어야 하는 이유
- Log 변환 후 Scaling 순서가 중요합니다.
- Log 변환: 1,000,000처럼 거대한 숫자를 작게 쪼개서 이상치의 영향력을 줄입니다.
- MinMaxScaler: 로그로 다듬어진 데이터의 범위를 0~1로 맞춥니다.
- Log 변환 후 Scaling 순서가 중요합니다.
- 이는 K-Means 만이 해당되는 것이아닌 K-medoids를 쓸 때도 마찬가지입니다.
- 다만 Outler를 방어하는데 K-medoids (중앙값)가 더 안정적입니다.
K-Medoids를 쓸 때의 추천 전략
만약 K-Medoids를 선택하신다면, 아래의 흐름을 추천합니다.
- Log 변환: 여전히 필요합니다. 데이터의 분포 자체를 예쁘게 만들어주기 때문입니다.
- MinMaxScaler: 반드시 해야 합니다. 변수 간 단위 차이를 없애기 위함입니다.
- Manhattan 거리 사용: K-Medoids는 보통 유클리드 거리보다 맨해튼(Manhattan) 거리를 많이 씁니다. 맨해튼 거리는 이상치의 영향을 한 번 더 억제해 주는 효과가 있어, 이커머스 데이터 분석 시 궁합이 아주 좋습니다.
| 기준 | K-Means | K-Medoids |
| 데이터 크기 | 대용량 데이터에 유리(빠름) | 소-중규모 데이터에 적합 (느림) |
| 이상치 대응 | 매우 취약, 평균이 이상치에 끌려만 | 매우 강함, 실제 데이터 포인트만 중심이 됨 |
| 데이터 분포 | 구형(Spherical)분포일 때 베스트 | 분포의 모향에 덜 민감함 |
| 언제 쓰나? | 전체적인 흐름은 빠르게 파악할때 | 이상치가 많고 데이터의 무결성이 중요할 때 |
반응형
'통계' 카테고리의 다른 글
| HHI(HerfindahI-Hirschmana Index) (1) | 2026.01.01 |
|---|---|
| 비즈니스 의사결정에 사용하는 수학적 원리 (0) | 2025.12.23 |
| 가설검정에 사용하는 분포 선택 및 통계적 검정법 (1) | 2024.11.06 |