인공지능 머신 러닝 - 데이터셋 데이터 분리하기(train_test_split)

반응형

# train_test_split

  • 데이터들을 학습용(Training)과 테스트용(Test)으로 분리
  • 배열 또는 행렬의 임의의 기차(학습) 및 테스트(결과) 하위 집합으로 분할
  • X_train, X_test, y_train, y_test = train_test_split( 데이터X, 데이터y, test_size= 0~1 , random_state= n )
    • 데이터 X : 학습시킬 데이터
    • 데이터 y : 학습시킬 데이터와 연관되있는 결과 값
    • test_size : 테스트에 사용될 자원. 0.0부터 1.0사이여야하며 기본 값은 0.25(25%)
    • train_size = 학습에 사용될 자원, test_size를 지정해주면 남는 자원을 학습에 사용
    • random_state : 분할을 적용하기 전에 데이터에 적용되는 임의의 수를 제어. (seed와 동일)

 

# 라이브러리 호출

from sklearn.model_selection import train_test_split # 인공지능 학습을 위한 라이브러리
from sklearn.preprocessing import StandardScaler, MinMaxScaler # 전처리(피처 스케일링)을 위한 라이브러리

 

# 데이터셋 데이터 분리 순서

1. 학습 할 데이터셋 준비

 

2. NaN 처리

 

3. 학습시킬 데이터 지정

  • X = 학습시킬 데이터 값
  • y = 학습시킬 데이터와 연관있는 결과 값

 

4. y값이 문자열일 경우, 컴퓨터가 처리 할 수 있도록 카테고리컬 인코딩(레이블/원핫)

 

5. X의 값을 동일한 수치들로 변경하기 위해 전처리(피처 스케일링) (평준화/정규화)

  • 원핫 인코딩 된 데이터의 값 피처 스케일링
  • 예시에서는 정규화 사용(MinMax)

 

6. 인공지능 학습

반응형