더북(TheBook)

다음으로 하이퍼파라미터 설정 및 모델 학습을 진행해보겠습니다.

BATCH_SIZE = 64 # ①
EPOCHS = 120    # ②
SAVE_PATH = 'yolo.h5'   # ③

def lr_schedule(epoch): # ④
    if epoch < 75:
        return 0.001 + 0.009 * (epoch / 75.0) # ⑤
    elif epoch < 105:
        return 0.001    # ⑥
    else:
        return 0.0001   # ⑦

def compile_and_train_model(model, train_data, val_data): # ⑧
    checkpoint_callback = tf.keras.callbacks.ModelCheckpoint(
        SAVE_PATH,
        verbose=1,
        save_best_only=True  # ⑨
    )

    lr_callback = tf.keras.callbacks.LearningRateScheduler(lr_schedule) # ⑩

    optimizer = tf.keras.optimizers.SGD(learning_rate=0.001, momentum=0.9) # ⑪
    model.compile(loss=yolo_multitask_loss, optimizer=optimizer, run_eagerly=True)
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.