훈련/테스트 데이터 분리

40 P
QUESTION 17 #370
전체 데이터를 훈련용(앞 3개)과 테스트용(뒤 2개)으로 나누는 코드를 완성하세요.
main.py
X = [[20, 70], [25, 80], [30, 85], [28, 75], [22, 65]]
y = [50, 80, 110, 90, 55]

# 앞 3개는 훈련용
X_train = X[:]
y_train = y[:]

# 뒤 2개는 테스트용
X_test = X[3:]
y_test = y[3:]

print(f"훈련 데이터: {len(X_train)}개")
print(f"테스트 데이터: {len(X_test)}개")
실행 결과 예시
훈련 데이터: 3개
테스트 데이터: 2개
INTERACTIVE SHELL Shift + Enter 로 즉시 실행

📂 훈련/테스트 분리의 중요성

시험 공부를 할 때 문제집으로 공부하고 모의고사로 실력을 확인하는 것과 같습니다.

  • 훈련 데이터(Train): 모델이 패턴을 학습하는 데 사용합니다.
  • 테스트 데이터(Test): 학습에 사용하지 않은 새로운 데이터로 성능을 평가합니다.

만약 같은 데이터로 학습하고 평가하면, 문제를 외운 것과 같아서 실제 성능을 알 수 없습니다. 이를 과적합(Overfitting)이라고 합니다.

실무에서는 sklearntrain_test_split() 함수를 사용하여 자동으로 분리합니다.