Keras 학습률 스케줄 API — 스케줄러 객체 정의

Keras 학습률 스케줄 API — 스케줄러 객체 정의

Keras 는 학습률을 시간에 따라 바꾸는 LearningRateSchedule 은 클래스 계열을 공식 API로 제공해요.

제공 스케줄

  • ExponentialDecay: 매 스텝마다 감쇠율로 학습률을 줄인다.
  • PiecewiseConstantDecay: 경계 지점마다 특정 상수 학습률로 바꾼다.
  • PolynomialDecay(옵션): 다항식 꼴로 최소 학습률까지 감소시킨다(워밍업과 조합 가능).

사용

optimizer = keras.optimizers.SGD(
    learning_rate=keras.optimizers.schedules.ExponentialDecay(
        initial_learning_rate=0.1,
        decay_steps=1000,
        decay_rate=0.96,
        staircase=True,
    )
)

학습률에 LearningRateSchedule 인스턴스를 바로 넘기면 옵티마이저가 매 스텝마다 현재 학습률을 계산해요. 컴파일·학습 루프에 자연스럽게 흡수돼요.

더 알아보기