ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [분석/통계] 데이터 전처리와 스케일 조정 방법
    Study/Statistics 2019. 5. 28. 15:45

    데이터 분석을 시작하기 전에 데이터를 전처리하거나 데이터의 스케일을 일정하게 조정한다면 지도학습에서의 정확도가 상승하기도 하여 분석전에 중요하게 해야하는 작업입니다.

    특히 svm이나 인공신경망은 사용하기 전에 꼭 해주어야하는 작업입니다.

     

    아래와 같은 데이터셋을 각각의 조정법으로 변환하면 어떻게 될지 확인해보겠습니다.

    StandardScaler

    각 특성의 평균을 0, 분산을 1로 변경하여 모든 특성이 같은 크기를 갖게함

    특성의 최솟값과 최대값의 크기를 제한하지 않음

    인공신경망 중 MLPClassifier사용시 해야하는 작업

    RobustScaler

    특성들이 같은 스케일을 갖게 된다는 점은 StandardScaler과 비슷

    중앙값과 사분위값을 사용

    이상치에 영향을 받지 않음

    MinMaxScaler

    모든 특성이 정확하게 0과 1사이에 위치하도록 데이터 변경

    svm 이용시 해야하는 작업

    Normalizer

     특성 벡터의 유클리디안 길이가 1이 되도록 데이터 포인트를 조정

    이 방법은 특성 벡터의 길이는 상관 없고 데이터의 방향(또는 각도)만이 중요할 때 많이 사용

     

    변환을 할 때 주의해야하는 점이 있습니다.

     

    테스트 데이터와 훈련 데이터의 스케일을 같은 방법으로 조정

     

    훈련 데이터의 스케일 조정 : 훈련 데이터만 가지고 조정

    테스트 데이터의 스케일 조정 : 훈련 데이터만 가지고 조정

     

    데이터 전체를 기준이 아닌 훈련 데이터 기준인 이유는 훈련시킬 때 몰라야하는 테스트 정보가 들어가지기 때문

     

    * 만약 훈련 데이터의 조정값이 범위를 벗어나는 경우

    - 벗어난 조정값 그대로 사용

    - 조정된 범위의 최소, 최대 값으로 변환

    댓글

Designed by Tistory.