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

Connected

연습 문제

기울기 소실 문제

또 다른 기울기 문제는 기울기가 소실되어 0에 가까워지는 경우예요. 이 문제는 감지하기가 쉽지 않아 더 해결하기 어렵습니다. 손실 함수가 매 스텝마다 개선되지 않는다면, 기울기가 0이 되어 가중치가 업데이트되지 않아서일까요? 아니면 모델 자체가 학습을 잘 못해서일까요?

이 문제는 긴 메모리가 필요한 경우(긴 문장) RNN 모델에서 더 자주 발생합니다.

이번 연습에서는 더 긴 문장을 선택한 IMDB 데이터에서 이 문제를 관찰해 볼 거예요. 데이터는 X와 y 변수에 로드되어 있으며, Sequential, SimpleRNN, Dense 클래스와 matplotlib.pyplot의 별칭 plt도 준비되어 있습니다. 모델은 100 epoch으로 사전 학습되었고, 가중치와 학습 이력은 파일 model_weights.h5와 변수 history에 저장되어 있어요.

지침

100 XP
  • 모델에 SimpleRNN 레이어를 추가하세요.
  • .load_weights() 메서드를 사용해 사전 학습된 가중치를 모델에 불러오세요.
  • 학습 데이터의 정확도('acc' 속성에 있음)를 플롯에 추가하세요.
  • .show() 메서드를 사용해 플롯을 화면에 표시하세요.