Home

Awesome

NLP for Bengali

This repository contains State of the Art Language models and Classifier for Bengali language, which is primarily spoken by the Bengalis in South Asia.

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

Dataset

Created as part of this project

  1. Bengali Wikipedia Articles

Open Source Datasets

  1. Bengali News Articles (Soham Articles)

Results

Language Model Perplexity (on validation set)

Architecture/DatasetBengali Wikipedia Articles
ULMFiT41.2
TransformerXL39.3

Classification Metrics

ULMFiT
DatasetAccuracyMCCNotebook to Reproduce results
Bengali News Articles (Soham Articles)90.7187.92Link

Visualizations

Word Embeddings
ArchitectureVisualization
ULMFiTEmbeddings projection
TransformerXLEmbeddings 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
Bengali News Articles (Soham Articles)(11284, 1411, 1411)90.7187.92Link
On using 1% of training set (with Transfer learning)
DatasetDataset size (train, valid, test)AccuracyMCCNotebook to Reproduce results
Bengali News Articles (Soham Articles)(112, 1411, 1411)69.8861.56Link
On using 1% of training set (with Transfer learning + Data Augmentation)
DatasetDataset size (train, valid, test)AccuracyMCCNotebook to Reproduce results
Bengali News Articles (Soham Articles)(112, 1411, 1411)74.0665.08Link

Pretrained Models

Language Model

Download pretrained Language Model from here

Tokenizer

Trained tokenizer using Google's sentencepiece

Download the trained model and vocabulary from here