Fine-Tuned MarianMT: English ↔ Hindi
Model Description
This is a fine-tuned version of Helsinki-NLP/opus-mt-en-hi trained on the IIT Bombay English–Hindi Parallel Corpus.
It demonstrates English ↔ Hindi translation with improved performance on a small subset for demonstration purposes.
- Base Model: Helsinki-NLP/opus-mt-en-hi
- Languages: English, Hindi
- Pipeline Tag: translation
- Library: 🤗 Transformers
Use Case
- Academic bilingual communication
- General English ↔ Hindi translation
- Demonstration of fine-tuning workflow for machine translation
Dataset
- Name: IIT Bombay English–Hindi Parallel Corpus (
cfilt/iitb-english-hindi) - Subset Used: 500 training samples, 200 validation samples
- Reason: Clean, aligned bilingual pairs widely used in MT research
Training Setup
- Frameworks: PyTorch + Hugging Face Transformers + Datasets
- Epochs: 1
- Batch Size: 8
- Max Length: 64 tokens
- Execution: CPU-only
Evaluation
- Metrics: BLEU score, validation loss
- Results:
- BLEU score: 6.09
- Validation loss: 4.4919
How to Use
from transformers import MarianMTModel, MarianTokenizer
model = MarianMTModel.from_pretrained("sag-9755/Fine_Tune_MarianMT_English_to_Hindi")
tokenizer = MarianTokenizer.from_pretrained("sag-9755/Fine_Tune_MarianMT_English_to_Hindi")
text = "Hello, how are you?"
inputs = tokenizer(text, return_tensors="pt", padding=True, truncation=True, max_length=64)
outputs = model.generate(**inputs, num_beams=4, max_length=64)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))