1. 학습
  2. /
  3. 강의
  4. /
  5. Keras로 배우는 언어 모델링을 위한 순환 신경망(RNN)

Connected

연습 문제

Exploding gradient 문제

영상 연습 문제에서 RNN 모델을 다룰 때 발생할 수 있는 두 가지 문제, 즉 vanishing gradient와 exploding gradient에 대해 배웠습니다.

이번 연습에서는 exploding gradient 문제를 살펴보며, 함수의 미분값이 지수적으로 커질 수 있음을 확인하고 간단한 기법으로 이를 해결하는 방법을 알아봅니다.

데이터는 이미 X_train, X_test, y_train, y_test로 환경에 로드되어 있습니다.

옵티마이저로는 Stochastic Gradient Descent(SGD)를, 손실 함수로는 Mean Squared Error(MSE)를 사용합니다.

1단계에서는 학습/테스트 세트에서 MSE를 계산해 그래디언트가 폭주하는 현상을 관찰합니다. 2단계에서는 문제를 해결하기 위해 clipvalue 매개변수를 사용하여 옵티마이저를 변경합니다.

Keras에서 Stochastic Gradient Descent는 SGD로 불러옵니다.

지침 1/2

undefined XP
    1
    2
  • 옵티마이저로 SGD()를 사용하고 검증 데이터로 (X_test, y_test)를 지정하세요.
  • 학습 성능을 평가하고 모든 MSE 값을 출력하세요.