IT/금융
삼성전자 주가 예측: LSTM 신경망을 활용한 접근 (확장판)
chn1002
2024. 4. 26. 10:11

모델 재사용성: 기존 모델 불러오기와 새 모델 훈련
금융 시장의 빠른 변화에 효과적으로 대응하기 위해서는 머신 러닝 모델의 효율적인 관리와 재사용이 중요합니다. 이미 훈련된 모델을 저장하고 재사용하는 기능은 불필요한 자원 소모를 줄이고, 더 빠르게 예측 결과를 도출할 수 있게 합니다.
모델 불러오기
만약 samsung_stock_model.h5 파일이 존재하면, load_model 함수를 사용하여 저장된 모델을 불러옵니다. 이 접근 방법은 계산 비용을 크게 절감하며, 일관된 예측 결과를 제공합니다. 이미 검증된 모델을 재사용함으로써, 새로운 데이터에 대한 신속한 예측이 가능해집니다.
if os.path.exists(model_path):
print("Loading existing model...")
model = load_model(model_path)
새 모델 훈련
저장된 모델이 없는 경우, 새로운 LSTM 모델을 구축하고 데이터에 맞게 훈련시킵니다. 이 과정은 build_model 함수와 train_and_save_model 함수를 통해 수행됩니다. 모델이 성공적으로 훈련된 후에는 지정된 경로에 저장하여 추후 재사용할 수 있습니다.
else:
print("Training new model...")
model = build_model((X_train.shape[1], 1))
model = train_and_save_model(model, X_train, y_train, model_path)
예측 및 결과 시각화
모델이 준비되면, 테스트 데이터셋을 사용하여 주가 예측을 수행하고, 이를 실제 값과 비교하여 모델의 정확성을 평가합니다. 또한, 미래 주가에 대한 예측도 수행하여, 투자자들에게 유용한 통찰을 제공합니다. 이 결과들은 그래프로 시각화되어 직관적으로 이해할 수 있도록 합니다.