시작하기무료로 시작하기

학습/테스트용 특성 만들기

선형 모델을 적합하기 전에, 절편을 포함하기 위해 특성에 상수를 추가하겠습니다.

또한 학습용과 테스트용 특성을 만들어야 합니다. 이렇게 하면 학습 데이터셋에 모델을 학습시키고, 테스트 데이터셋에서 성능을 평가할 수 있습니다. 모델이 보지 못한 데이터에서 성능을 꼭 확인해 과적합(훈련 데이터의 패턴을 지나치게 외워버리는 현상)을 방지해야 합니다.

이와 같은 시계열에서는 보통 가장 오래된 데이터를 학습용으로, 가장 최신 데이터를 테스트용으로 사용합니다. 이렇게 해야 가장 최근 데이터에서의 모델 성능을 평가할 수 있어, 아직 보지 못한 데이터에 대한 예측을 더 현실적으로 모의할 수 있습니다.

이 연습은 강의의 일부입니다

Python으로 배우는 금융 분야 Machine Learning

강의 보기

연습 안내

  • statsmodels.api 라이브러리를 별칭 sm으로 임포트하세요.
  • statsmodels의 .add_constant() 함수를 사용해 features 변수에 상수를 추가하세요.
  • features 또는 targets.shape[0] 속성을 사용해 전체 데이터 포인트(행)의 85%를 train_size로 설정하세요.
  • train_size와 Python 인덱싱(예: [start:stop])을 사용해 linear_featurestargets를 학습/테스트 세트로 분할하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Import the statsmodels.api library with the alias sm
___

# Add a constant to the features
linear_features = sm.____(features)

# Create a size for the training set that is 85% of the total number of samples
train_size = int(0.85 * ____)
train_features = linear_features[:train_size]
train_targets = targets[____]
test_features = linear_features[train_size:]
test_targets = targets[train_size:]
print(linear_features.shape, train_features.shape, test_features.shape)
코드 편집 및 실행