ส่วนที่ 1: กำหนดโมเดลแบบครบวงจร
ในแบบฝึกหัดนี้ จะได้ implement เลเยอร์สุดท้ายของโมเดล encoder-decoder โดยใช้เลเยอร์ Dense และ TimeDistributed เพื่อให้ได้ผลการทำนายขั้นสุดท้าย (กล่าวคือ ค่าความน่าจะเป็นของคำภาษาฝรั่งเศสที่โมเดลทำนาย)
มีการเตรียม encoder และ decoder (ไม่รวมส่วนบนสุด) ที่ implement ไว้ก่อนหน้านี้ให้แล้ว รวมถึง output de_out ของเลเยอร์ GRU ของ decoder ด้วย โดยใช้คำนำหน้า en (เช่น en_gru) สำหรับส่วนที่เกี่ยวข้องกับ encoder และ de สำหรับส่วนที่เกี่ยวข้องกับ decoder (เช่น de_gru)
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Machine Translation ด้วย Keras
คำแนะนำการฝึกหัด
- Import เลเยอร์
DenseและTimeDistributedจาก Keras - กำหนดเลเยอร์
Denseที่ใช้softmaxactivation และมี output จำนวนfr_vocabหน่วย - ครอบเลเยอร์
Denseด้วยเลเยอร์TimeDistributed - ดึงผลลัพธ์สุดท้ายของโมเดลโดยส่ง
de_outเข้าไปยังเลเยอร์de_dense_time
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import Dense and TimeDistributed layers
from tensorflow.keras.____ import ____, ____
# Define a softmax dense layer that has fr_vocab outputs
de_dense = ____(____, ____)
# Wrap the dense layer in a TimeDistributed layer
de_dense_time = ____(de_dense)
# Get the final prediction of the model
de_pred = ____(de_out)
print("Prediction shape: ", de_pred.shape)