
훈련 데이터셋(Training Dataset):
검증 데이터셋(Validation Dataset):
테스트 데이터셋(Test Dataset):
기계 학습에서 모델이 훈련 데이터에만 과도하게 적합되어 새로운 데이터에 대한 성능이 저하되는 현상
발생하는 이유
1. 모델이 너무 복잡한 경우
2. 훈련 데이터가 적은 경우
3. 모델이 학습 데이터에서 반복적으로 훈련되는 경우
import tensorflow as tf
# 훈련 데이터, 검증 데이터 준비
train_data = ...
val_data = ...
# 모델 정의 및 초기화
model = ...
# optimizer, loss, metrics 설정
# 조기 종료 콜백 함수 정의
early_stop_callback = tf.keras.callbacks.EarlyStopping(monitor='val_loss', patience=5)
# 모델 훈련
history = model.fit(train_data,
epochs=100,
validation_data=val_data,
callbacks=[early_stop_callback])