Building an Encoder-Decoder RNN in PyTorch for English-Italian Translation
Overview
Learn to implement an English-to-Italian translation system using PyTorch in this hands-on tutorial video that demonstrates building an encoder/decoder Recurrent Neural Network (RNN) based on Ilya Sutskever's influential 2014 paper. Follow along with practical code examples showing how to load and prepare translation datasets, create PyTorch Dataset and DataLoader objects, and construct LSTM-based encoder-decoder architectures. Master key concepts including teacher forcing during training, inference for translation tasks, and implementing bi-directional RNNs to improve translation quality. Work through the complete machine learning pipeline from data preparation to model evaluation, with access to a companion Colab notebook for hands-on practice. Compare the implemented model's performance against the original paper's results while gaining practical experience with sequence-to-sequence learning and neural machine translation.
Syllabus
- Sutskever's Paper on Language Translation with RNNs
- Loading the Dataset, Tokenizer and Vocabulary
- PyTorch Dataset and DataLoader Objects
- Encoder / Decoder RNN in PyTorch
- Inference / Forward Pass for Translation
- Training Loop, Teacher Forcing
- Using/Evaluating the Trained Model
- Bi-Directional RNN for the Encoder
- Using/Evaluating the Trained Bi-Directional RNN
- Comparing our model to Sutskever's Paper
Taught by
Donato Capitella