การสร้างโมเดล encoder-decoder แบบสมบูรณ์

Machine Translation ด้วย Keras

Thushan Ganegedara

Data Scientist and Author

สิ่งที่ได้สร้างไปแล้ว

  • Encoder รับอินพุตภาษาอังกฤษ (ภาษาต้นทาง)
  • Encoder สร้าง context vector
  • Decoder รับชุด context vector ที่ทำซ้ำ
  • Decoder ส่งออกลำดับผลลัพธ์จาก GRU

โมเดล encoder-decoder แบบ repeat vector

Machine Translation ด้วย Keras

ส่วนบนของ decoder

  • สร้างด้วยเลเยอร์ TimeDistributed และ Dense

Encoder-decoder พร้อม TimeDistributed

Machine Translation ด้วย Keras

การสร้างโมเดลแบบสมบูรณ์

  • Encoder

    en_inputs = Input(shape=(en_len, en_vocab))
    en_gru = GRU(hsize, return_state=True)
    en_out, en_state = en_gru(en_inputs)
    
  • Decoder

    de_inputs = RepeatVector(fr_len)(en_state)
    de_gru = GRU(hsize, return_sequences=True)
    de_out = de_gru(de_inputs, initial_state=en_state)
    
Machine Translation ด้วย Keras

การสร้างโมเดลแบบสมบูรณ์

  • เลเยอร์การพยากรณ์แบบ softmax
de_dense = keras.layers.Dense(fr_vocab, activation='softmax')
de_dense_time = keras.layers.TimeDistributed(de_dense)
de_pred = de_seq_dense(de_out)
Machine Translation ด้วย Keras

การคอมไพล์โมเดล

กำหนดโมเดลแบบสมบูรณ์

nmt = keras.models.Model(inputs=en_inputs, outputs=de_pred)

คอมไพล์โมเดล

nmt.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['acc'])
Machine Translation ด้วย Keras

มาฝึกกันเถอะ!

Machine Translation ด้วย Keras

Preparing Video For Download...