# Normalizer

ML 04. 로지스틱 회귀
키워드 훈련/검증/테스트(train/validate/test) 데이터를 분리하는 이유 분류(classification) 문제와 회귀문제의 차이점 로지스틱회귀(Logistic regression) 그렇다면 데이터를 훈련/테스트 세트로 나누는 것에 더해 왜 검증세트가 필요한 것일까요? 왜냐하면 훈련세트로 모델을 한 번에 완전하게 학습시키기가 어렵기 때문입니다. 훈련세트로 다르게 튜닝된 여러 모델들을 학습한 후 어떤 모델이 학습이 잘 되었는지 검증하고 선택하는 과정이 필요합니다. 이렇게 훈련/검증세트로 좋은 모델을 만들어 낸 후 최종적으로 테스트세트에는 단 한번의 예측테스트를 진행합니다. 최종테스트 결과가 마음에 들지 않는다고 모델을 또 수정하여 테스트 세트를 더 잘 예측하는 모델을 만든다면 그 모델은 테스트세트에 과적합하여 일반화 성능이 떨어지게 될 수 있습니다. train set: 학습을 위한
Preprocessing - Data Scaling
Scaling 1. Definition numerical data들은 서로 scale 차이가 너무 많이 나면 모델의 학습이 원활하게 되지 않는 경우가 있다. 예를 들어 KNN의 경우 Eucliean distance를 사용할 때 $$ \sqrt{(10-9)^2 + (100000-29900)^2 \cdots} $$ 이런 식으로 되어 버리면 두번째 column의 영향력이 너무 강해져서 첫번째 column은 무시될 수 있다. 그러므로 column별로 scaling을 해줘야 한다. 대표적으로 Standardization(표준화)과 Normalization(정규화)이 있다. 보통 categorical variables에는 사용하지 않는다. 2. Techniques 1. StandardScaler() feature들의 mean을 0, variance를 1로 scailing하는 방법이다. outlier에 매우 민감하다. regression보다 cl
[인사이드 머신러닝] 데이터 스케일링
보통 학습에 사용될 데이터들은 각 특성마다 데이터가 가질 수 있는 값의 범위가 다르다. 그리고 대부분의 학습 알고리즘은 특성 간 데이터 범위가 다를 경우 잘 동작하지 않는다. 그 이유는 간단한다. 예를 들어, 나이와 재산이라는 특성이 있을 때, 재산의 값이 나이보다 훨씬 크기 때문에 재산에 치중한 학습을 하게 된다. 따라서 학습을 진행하기에 앞서 데이터 스케일링은 필수적이다. 참고로 decision tree 계열의 알고리즘들은 스케일링이 필수는 아니다. Min-Max Scaling Normalization(정규화)이라는 용어도 많이 쓰임. 아래 식과 같은 변환을 통해 값의 범위를 0~1로 제한 (=좁은 범위로 압축) $$ x{scaled} = \frac{x-x{min}}{x{max}-x{min}} $$ Outlier에 매우 민감 Standardization 우리말로 표준화라고 부르며, Z-score라고도 함. (통계학 용어, 둘 다 많