callback이란: 내가 만든 함수를 프레임워크가 실행시켜 주는 것
EarlyStopping
- 인공지능 학습시 더 이상 에포크를 반복해도 성능 향상이 없을 경우, 학습을 조기 종료 시킨다.
- tf.keras.callbacks.EarlyStopping(monitor= 'val_loss', patience= N)
- monitor='val_loss' : 'val_loss'의 성능향상을 모니터링 하겠다.
- patience= N : N번의 epoch 동안
- 즉 N번의 epoch 횟수동안 val_loss의 값을 모니터링하여 loss가 줄어들지 않을 경우 학습을 조기 종료
# 10번(patience)의 에포크 동안 성능향상(val_loss)이 없으면 학습을 멈추라는 뜻
early_stop = tf.keras.callbacks.EarlyStopping(monitor='val_loss', patience=10)
# 내가 만든 콜백을 callbacks 파라미터에 넣어준다.
epoch_history = model.fit(X_train, y_train, epochs=1000000, validation_split=0.2, callbacks=[early_stop])
'Machine Learning > Deep Learning' 카테고리의 다른 글
Tensorflow - ANN 분류 모델 activation, loss 함수 설정 방법 (0) | 2022.12.29 |
---|---|
Tensorflow - 3개 이상 분류 문제의 인공신경망(ANN) (0) | 2022.12.29 |
Tensorflow - Validation(검증)을 사용하는 방법 (0) | 2022.12.29 |
Tensorflow - Learning rate(학습률)을 설정하는 방법 (0) | 2022.12.29 |
Tensorflow - regression(수치예측) 문제의 인공신경망(ANN) (0) | 2022.12.28 |