Uzbek-English Neural Machine Translation (Seq2Seq with Attention)

This repository contains an implementation of a sequence-to-sequence (Seq2Seq) model with attention, designed for translating sentences between Uzbek and English (in both directions).

The architecture is inspired by the 2015 paper: πŸ“„ Effective Approaches to Attention-based Neural Machine Translation by Luong et al.


πŸš€ Features

  • Encoder-decoder model with LSTM layers
  • Luong-style attention mechanism (global attention)
  • Vocabulary size: 50,000
  • Embedding dimension: 1000
  • Hidden state dimension: 1000
  • Trained on 50,000 Uzbek-English parallel sentences
  • Word-level tokenization
  • Built with PyTorch
  • Achieved BLEU score ~22 for both Uzbekβ†’English and Englishβ†’Uzbek translation tasks

πŸ“š Dataset

We use the bilingual dataset: πŸ”— SlimOrca-Dedup-English-Uzbek

Each entry in the dataset is a sentence pair with translations between English and Uzbek.


🧠 Model Architecture

  • Encoder: LSTM that encodes the source sentence
  • Decoder: LSTM with attention and input-feeding
  • Attention Layer: Dot-product attention (Luong-style global attention)
  • Output Layer: Concatenated decoder + context β†’ Linear β†’ Softmax

πŸ‹οΈ Training

  • Optimizer: Adam
  • Loss function: CrossEntropyLoss with masking for padded tokens
  • Batch size: configurable
  • Training data size: ~50,000 samples
  • Token <eos> used for padding

πŸ“Š Evaluation

  • Evaluation metric: BLEU score
  • Average BLEU on validation set (~64 samples per direction):
    • Uzbek β†’ English: ~22
    • English β†’ Uzbek: ~22

🌌 GUI

Gradio web app

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support