Skip to content

Latest commit

 

History

21 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dravidian LM Research

Research repository for Dravidian language model pretraining, tokenization, and benchmarking across architectures.

This repo is organized as a research artifact rather than a one-off training folder. It is intended to support paper-grade experiments on Dravidian languages with a reproducible pipeline for data preparation, tokenizer training, model training, and result tracking.

Topics

dravidian-languages, language-modeling, pretraining, nlp, transformers, huggingface, gpt2, tokenization, low-resource-languages, computational-linguistics

Research Scope

Current focus:

  • monolingual language modeling for Telugu, Kannada, Tamil, and Malayalam
  • corpus collection from CC100, Wikipedia, Samanantar, and TinyStories
  • SentencePiece tokenizer training
  • GPT-2 pretraining as the first implemented architecture
  • result logging for cross-language and cross-run comparison

Planned direction:

  • additional architectures beyond GPT-2
  • broader evaluation and benchmarking
  • config-driven experiment execution

Repository Layout

.
|-- README.md
|-- requirements.txt
|-- configs/
|-- docs/
|-- notebooks/
|-- results/
|   `-- raw/
|-- scripts/
`-- src/
    `-- dravidian_lm/
        |-- analysis/
        |-- data/
        |-- models/
        `-- tokenization/

Key Paths

Current Models

Current Results

Tracked raw outputs:

Sample metrics:

Language Run Eval Loss Perplexity
Telugu seed2 3.7635 43.10
Kannada seed1 3.9794 53.49

Reproducibility

Set up the environment:

pip install -r requirements.txt
export PYTHONPATH=src
export DRAVIDIAN_LM_BASE=$PWD

Run the pipeline:

python -m dravidian_lm.data.download --lang te
python -m dravidian_lm.data.clean --lang te
python -m dravidian_lm.data.split --lang te
python -m dravidian_lm.tokenization.train_tokenizer --lang te
python -m dravidian_lm.models.gpt2.train --language telugu --tokenizer_name te
python -m dravidian_lm.analysis.summarize_results

More detail is in docs/reproducibility.md.

Notes

  • large corpora, tokenizers, checkpoints, and split artifacts are intentionally git-ignored
  • experiment outputs are separated from source code
  • notebooks are kept outside the core pipeline
  • config templates are present now; wiring the runners directly to YAML is the next step

Releases

Packages

Contributors

Languages