텍스트 생성 모델 만들기
이 연습에서는 Keras를 사용해 텍스트 생성 모델을 정의해 보겠습니다.
어휘 크기를 담은 변수 n_vocab과 학습에 사용될 데이터의 형태를 담은 input_shape는 이미 환경에 로드되어 있습니다. 또한, 사전 학습된 모델의 가중치가 model_weights.h5 파일로 제공됩니다. 이 모델은 학습 데이터로 40 epoch 동안 학습되었습니다. Keras에서 모델을 학습하려면 학습 데이터 (X, y)에 대해 .fit() 메서드와 epochs 파라미터를 사용하면 됩니다. 예를 들어:
model.fit(X_train, y_train, epochs=40)
이 연습은 강의의 일부입니다
Keras로 배우는 언어 모델링을 위한 순환 신경망(RNN)
연습 안내
- 시퀀스를 반환하는
LSTM레이어를 하나 추가하세요. - 시퀀스를 반환하지 않는
LSTM레이어를 하나 추가하세요. n_vocab유닛을 가진 출력 레이어를 추가하세요.- 모델 요약 정보를 표시하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Instantiate the model
model = Sequential(name="LSTM model")
# Add two LSTM layers
model.add(____(64, input_shape=input_shape, dropout=0.15, recurrent_dropout=0.15, return_sequences=____, name="Input_layer"))
model.add(____(64, dropout=0.15, recurrent_dropout=0.15, return_sequences=____, name="LSTM_hidden"))
# Add the output layer
model.add(Dense(____, activation='softmax', name="Output_layer"))
# Compile and load weights
model.compile(loss='categorical_crossentropy', optimizer='adam')
model.load_weights('model_weights.h5')
# Summary
model.____