오늘은 피쳐 스케일링에 대해서 알아보겠습니다.
1. 피쳐 스케일링은 무엇일까?
데이터의 크기,단위,범위가 다양한 변수를 일정 구간 안의 값으로 변환 시키거나 일정 평균과 분산을 갖도록 값을 변환하는 것을 말한다.
2. 왜 우리는 피쳐 스케일링을 해야 할까?
거리에 대한 연산을 수행할때 "실제 변수값"을 대입하는 알고리즘을 사용할 때, 큰 크기를 가진 데이터가 큰 영향력을 끼치고 모델을 훈련하는데에 있어서 더 결정적인 역할을 수행하게 됩니다.
3. 어떻게 큰 영향을 끼치는지 자세히 알고 싶다!
키와 몸무게를 이용해서 선형회귀를 한다고 가정했을때, mse를 loss function으로 사용한다고 하면 predict value를 구하는데에 실제 피쳐가 그대로 반영됨.
따라서 대부분 키가 몸무게보다 큰 값을 가지고 있기떄문에 키 피쳐가 더 지배적인 영향력을 끼치는 결과를 낳는다.
4. 스케일링을 해야하는 알고리즘의 예시는 어떤 것이 있을까?
1) mae,mse 같은 거리기반 손실함수를 사용한 선형회귀 모델
2) KNN, K-Means 같은 거리를 기준으로 범주화, 분류를 수행하는 모델
3) 공분산행렬을 이용해서 차원축소를 수행하는 PCA
5. 스케일링을 하지 않아야 하는 알고리즘의 예시는 어떤 것이 있을까?
1) 트리기반의 회귀, 분류 모델
2) Naive Bayes 같은 확률 기반 모델
2) LDA 차원축소
0 comments:
댓글 쓰기