Home

Awesome

NLP for Marathi

This repository contains State of the Art Language models and Classifier for Marathi, which is spoken predominantly by Marathi people of Maharashtra, India.

The models trained here have been used in Natural Language Toolkit for Indic Languages (iNLTK)

Dataset

Created as part of this project

  1. Marathi Wikipedia Articles

  2. Marathi News Dataset

Open Source Datasets

  1. iNLTK Headlines Corpus - Marathi : Uses the Marathi News Dataset prepared above.

Results

Language Model Perplexity (on validation set)

Architecture/DatasetMarathi Wikipedia Articles
ULMFiT18
TransformerXL17.42

Classification Metrics

ULMFiT
DatasetAccuracyMCCNotebook to Reproduce results
iNLTK Headlines Corpus - Marathi92.4085.23Link

Visualizations

Word Embeddings
ArchitectureVisualization
ULMFiTEmbeddings projection
TransformerXLEmbeddings projection
Sentence Embeddings
ArchitectureVisualization
ULMFiTEncodings projection

Results of using Transfer Learning + Data Augmentation from iNLTK

On using complete training set (with Transfer learning)
DatasetDataset size (train, valid, test)AccuracyMCCNotebook to Reproduce results
iNLTK Headlines Corpus - Marathi(9672, 1210, 1210)92.4085.23Link
On using 5% of training set (with Transfer learning)
DatasetDataset size (train, valid, test)AccuracyMCCNotebook to Reproduce results
iNLTK Headlines Corpus - Marathi(483, 1210, 1210)84.1368.59Link
On using 5% of training set (with Transfer learning + Data Augmentation)
DatasetDataset size (train, valid, test)AccuracyMCCNotebook to Reproduce results
iNLTK Headlines Corpus - Marathi(483, 1210, 1210)84.5569.11Link

Pretrained Models

Language Models

Download pretrained Language Model from here

Tokenizer

Trained tokenizer using Google's sentencepiece

Download the trained model and vocabulary from here