개발일지/# 머신러닝
# 전처리 pre-processing
lution88
2022. 1. 10. 09:42
- 전처리가 필요한 이유?
각각의 특성들이 단위도 다르고 값의 범위도 차이가 클 경우 직접적으로 비교가 불가능하기 때문에
이러한 문제들을 해결하기 위해 정규화 또는 표준화를 사용한다.
어떠한 방법이 더 좋은지는 데이터셋에 따라 다르기 때문에, 다른 방법의 전처리와 학습을 반복하면서
노가다를 해야한다.
- 정규화 Normalization
데이터를 0 에서 1 사이의 범위를 가지도록 만들어서 비교가 가능하게 만드는 작업이다.
- 표준화 Standardization
데이터의 분포를 정규분포로 바꿔준다.
즉, 데이터 평균이 0이되게 하고 표준편차가 1이 되도록 하는 방법이다.
원래 데이터에 평균을 0으로 맞춰주면 데이터 중심이 0인 zero-centered 상태가 되고
이걸 다시 표준편차로 나누어 주면 한눈에 보기 좋은 그래프가 나타난다.
- 정규화와 표준화를 하는 이유?
데이터가 정규화나 표준화를 거치게 되면 최저점으로 수렴하는 속도가 빠르다.
즉, 머신러닝이 cost function이 최소값이 되는 지점을 계속 구해가면서 학습을 하게 되는데
정규화나 표준화를 하면 결과적으로 최저점으로 수렴하는 속도가 빠르기 때문에 학습속도가 빠르고,
local minimum의 굴곡이 작아지게 되어 local minimum에 빠질 확률이 줄어들게 된다.
- 정규화와 표준화 비교