AI 개발 공부 공간

AI, 머신러닝, 딥러닝, Python & PyTorch, 실전 프로젝트

머신러닝/머신러닝: 입문 개념

데이터 분할

qordnswnd123 2024. 12. 6. 09:55

1. 학습 데이터와 테스트 데이터

 

 

  • 학습(train) 데이터셋: '정답' 또는 'target'이라는 답을 포함합니다. 모델은 이 데이터를 통해 문제와 답 사이의 관계를 배웁니다.
  • 테스트(test) 데이터셋: 새로운 문제들로 구성되어 있고, 답이 포함되어 있지 않습니다. 이를 통해 학습된 모델이 얼마나 잘 적용하는지 평가할 수 있습니다.

2. 데이터 분할

 

모델 학습을 시작하기 전, 학습데이터를 학습데이터셋과 검증데이터셋으로 나누는 작업이 필요합니다.

학습 데이터셋만으로 모델을 계속 학습시키면 모델이 학습 데이터에만 과적합될 수 있습니다.

따라서 검증데이터셋을 생성하여 모델의 성능을 평가함으로써 모델이 학습데이터셋에만 지나치게 최적화되는 것을 방지하고, 모델이 다양한 데이터에 잘 적용될 수 있는지 확인합니다.

  • 학습 데이터셋(Training Dataset): 모델이 학습하는데 사용되는 데이터입니다. 이 데이터셋을 통해 모델은 패턴을 학습합니다.
  • 검증 데이터셋(Validation Dataset): 학습 과정 중 모델의 성능을 평가하기 위해 사용되는 데이터입니다.
  • 테스트 데이터셋(Test Dataset): 학습된 모델의 성능을 평가하기 위해 사용되는 데이터입니다.

3. 데이터 분할 예시

 

3.1 데이터 불러오기

import pandas as pd

train = pd.read_csv('train.csv') 
test = pd.read_csv('test.csv')
display(train.head())
display(test.head())

 

3.2 독립 변수와 종속 변수로 분할

X = train.drop('Calories_Burned', axis=1)  
y = train['Calories_Burned']

 

3.3 독립 변수(X)와 종속 변수(y)를 훈련 세트(train)와 검증 세트(valid)로 분할

from sklearn.model_selection import train_test_split 

X_train, X_valid, y_train, y_valid = train_test_split(X, y, test_size=0.2, random_state=42, shuffle=False)

# 분할된 데이터셋의 크기 확인
print(X_train.shape, X_valid.shape, y_train.shape, y_valid.shape)
(6000, 10) (1500, 10) (6000,) (1500,)

 

3.4 분할된 훈련 세트와 검증 세트 확인

display(X_train)
display(X_valid)

 

 

'머신러닝 > 머신러닝: 입문 개념' 카테고리의 다른 글

회귀 모델 예측 전체 프로세스  (0) 2024.12.09
회귀 모델 성능 측정  (0) 2024.12.08
로그 변환(Log transform)  (0) 2024.12.05
데이터 표준화(StandardScaler)  (1) 2024.12.04
모델 성능 검증  (1) 2024.12.02