Skip to content

A comprehensive reference for all topics related to Natural Language Processing

License

Notifications You must be signed in to change notification settings

MedSao/The-NLP-Pandect

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The-NLP-Pandect

This pandect (πανδέκτης is Ancient Greek for encyclopedia) was created to help you find almost anything related to Natural Language Processing that is available online.

The-NLP-Resources

Compendiums and awesome lists on the topic of NLP:

NLP Conferences, Paper Summaries and Paper Compendiums:

Papers and Paper Summaries
Conferences

NLP Progress and NLP Tasks:

NLP Datasets:

Word and Sentence embeddings:

Notebooks, Scripts and Repositories

Non-English resources and compendiums

Pre-trained NLP models

NLP Year in Review

2020

The-NLP-Podcasts

NLP-only podcasts

Many NLP episodes

Some NLP episodes

The-NLP-Newsletter

The-NLP-Meetups

The-NLP-Youtube

The-NLP-Benchmarks

General NLU

  • GLUE - General Language Understanding Evaluation (GLUE) benchmark
  • SuperGLUE - benchmark styled after GLUE with a new set of more difficult language understanding tasks
  • decaNLP - The Natural Language Decathlon (decaNLP) for studying general NLP models
  • RACE - ReAding Comprehension dataset collected from English Examinations
  • dialoglue - DialoGLUE: A Natural Language Understanding Benchmark for Task-Oriented Dialogue
  • DynaBench - Dynabench is a research platform for dynamic data collection and benchmarking

Summarization

  • WikiAsp - WikiAsp: Multi-document aspect-based summarization Dataset

Question Answering

  • SQuAD - Stanford Question Answering Dataset (SQuAD)
  • XQuad - XQuAD (Cross-lingual Question Answering Dataset) for cross-lingual question answering
  • GrailQA - Strongly Generalizable Question Answering (GrailQA)
  • CSQA - Complex Sequential Question Answering

Multilingual and Non-English Benchmarks

  • XTREME - Massively Multilingual Multi-task Benchmark
  • GLUECoS - A benchmark for code-switched NLP
  • IndoNLU Benchmark - collection of resources for training, evaluating, and analyzing NLP for Bahasa Indonesia
  • IndicGLUE - Natural Language Understanding Benchmark for Indic Languages
  • LinCE - Linguistic Code-Switching Evaluation Benchmark

Bio, Law, and other scientific domains

  • BLURB - Biomedical Language Understanding and Reasoning Benchmark
  • BLUE - Biomedical Language Understanding Evaluation benchmark

Transformer Efficiency

Other

  • CodeXGLUE - A benchmark dataset for code intelligence
  • CrossNER - CrossNER: Evaluating Cross-Domain Named Entity Recognition
  • MultiNLI - Multi-Genre Natural Language Inference corpus

The-NLP-Research

General

Embeddings

Repositories

Blogs

Cross-lingual Word Embeddings

  • vecmap - VecMap (cross-lingual word embedding mappings) [GitHub, 515 stars]

Byte Pair Encoding

  • bpemb - Pre-trained subword embeddings in 275 languages, based on Byte-Pair Encoding (BPE) [GitHub, 862 stars]
  • subword-nmt - Unsupervised Word Segmentation for Neural Machine Translation and Text Generation [GitHub, 1592 stars]
  • python-bpe - Byte Pair Encoding for Python [GitHub, 136 stars]

Transformer-based Architectures

General

Transformer

BERT

Other Transformer Variants

T5
BigBird
Reformer / Linformer / Longformer / Performers
Switch Transformer

GPT-family

General
GPT-3
Learning Resources
Applications
  • Aweseome GPT-3 - list of all resources related to GPT-3 [GitHub, 2723 stars]
  • GPT-3 Projects - a map of all GPT-3 start-ups and commercial projects
  • OpenAI API - API Demo to use GPT-3 for commercial applications
Open-source Efforts
  • GPT-Neo - in-progress GPT-3 open source replication

Other

Distillation, Pruning and Quantization

Automated Summarization

Rule-based NLP

  • LemmInflect - A python module for English lemmatization and inflection

The-NLP-Industry

Best Practices for NLP

Transformer-based Architectures

Embeddings as a Service

NLP Recipes Industrial Applications:

NLP Applications in Bio, Finance, Legal and other industries

Model and Data testing

  • WildNLP - Corrupt an input text to test NLP models' robustness [GitHub, 63 stars]
  • Great Expectations - Write tests for your data [GitHub, 3297 stars]
  • CheckList - Beyond Accuracy: Behavioral Testing of NLP models [GitHub, 1146 stars]
  • TextAttack - framework for adversarial attacks, data augmentation, and model training in NLP [GitHub, 1154 stars]

The-NLP-Speech

General Speech Recognition

  • wav2letter - Automatic Speech Recognition Toolkit [GitHub, 5577 stars]
  • DeepSpeech - Baidu's DeepSpeech architecture [GitHub, 16157 stars]
  • Acoustic Word Embeddings by Maria Obedkova [Blog, 2020]
  • kaldi - Kaldi is a toolkit for speech recognition [GitHub, 9913 stars]
  • awesome-kaldi - resources for using Kaldi [GitHub, 351 stars]

Text to Speech

  • FastSpeech - The Implementation of FastSpeech based on pytorch [GitHub, 561 stars]

The-NLP-Topics

Blogs

Frameworks for Topic Modeling

  • gensim - framework for topic modeling [GitHub, 11534 stars]
  • Spark NLP [GitHub, 1776 stars]

Repositories

Keyword-Extraction

Text Rank

  • PyTextRank - PyTextRank is a Python implementation of TextRank as a spaCy pipeline extension [GitHub, 1376 stars]
  • textrank - TextRank implementation for Python 3 [GitHub, 964 stars]

RAKE - Rapid Automatic Keyword Extraction

  • rake-nltk - Rapid Automatic Keyword Extraction algorithm using NLTK [GitHub, 783 stars]
  • yake - Single-document unsupervised keyword extraction [GitHub, 529 stars]
  • RAKE-tutorial - A python implementation of the Rapid Automatic Keyword Extraction [GitHub, 340 stars]
  • rake-nltk - Rapid Automatic Keyword Extraction algorithm using NLTK [GitHub, 783 stars]

Other

  • flashtext - Extract Keywords from sentence or Replace keywords in sentences [GitHub, 4592 stars]
  • BERT-Keyword-Extractor - Deep Keyphrase Extraction using BERT [GitHub, 150 stars]
  • NLP Profiler - A simple NLP library allows profiling datasets with text columns [GitHub, 170 stars]
  • keyBERT - Minimal keyword extraction with BERT [GitHub, 268 stars]

Responsible-NLP

NLP and ML Interpretability

  • Language Interpretability Tool (LIT) [GitHub, 2296 stars]
  • WhatLies - Toolkit to help visualise - what lies in word embeddings [GitHub, 208 stars]
  • Interpret-Text - Interpretability techniques and visualization dashboards for NLP models [GitHub, 191 stars]
  • InterpretML - Fit interpretable models. Explain blackbox machine learning [GitHub, 3348 stars]
  • ecco - Tools to visuals and explore NLP language models [GitHub, 77 stars]

Ethics, Bias, and Equality in NLP

Adversarial Attacks for NLP

The-NLP-Frameworks

General Purpose

  • spaCy by Explosion AI [GitHub, 17910 stars]
  • flair by Zalando [GitHub, 9733 stars]
  • AllenNLP by AI2 [GitHub, 9524 stars]
  • stanza (former Stanford NLP) [GitHub, 4999 stars]
  • spaCy stanza [GitHub, 484 stars]
  • nltk [GitHub, 9512 stars]
  • gensim - framework for topic modeling [GitHub, 11534 stars]
  • NLP Architect - A Deep Learning NLP/NLU library by Intel® AI Lab [GitHub, 2563 stars]
  • polyglot - Multi-lingual NLP Framework [GitHub, 1737 stars]
  • FARM [GitHub, 1057 stars]
  • gobbli by RTI International [GitHub, 249 stars]
  • headliner - training and deployment of seq2seq models [GitHub, 218 stars]
  • SyferText - A privacy preserving NLP framework [GitHub, 143 stars]
  • DeText - Text Understanding Framework for Ranking and Classification Tasks [GitHub, 976 stars]
  • TextHero - Text preprocessing, representation and visualization [GitHub, 2017 stars]
  • textblob - TextBlob: Simplified Text Processing [GitHub, 7466 stars]
  • AdaptNLP - A high level framework and library for NLP [GitHub, 242 stars]
  • textacy - NLP, before and after spaCy [GitHub, 1578 stars]

Data Augmentation

  • WildNLP Text manipulation library to test NLP models [GitHub, 63 stars]
  • snorkel Framework to generate training data [GitHub, 4368 stars]
  • NLPAug Data augmentation for NLP [GitHub, 1495 stars]
  • SentAugment Data augmentation by retrieving similar sentences from larger datasets [GitHub, 250 stars]
  • faker - Python package that generates fake data for you [GitHub, 11837 stars]

Adversarial NLP Attacks

  • TextAttack - framework for adversarial attacks, data augmentation, and model training in NLP [GitHub, 1154 stars]
  • CleverHans - adversarial example library for constructing NLP attacks and building defenses [GitHub, 4868 stars]

Non-English oriented

  • textblob-de - TextBlob: Simplified Text Processing for German [GitHub, 79 stars]
  • Kashgari Transfer Learning with focus on Chinese [GitHub, 1979 stars]
  • Underthesea - Vietnamese NLP Toolkit [GitHub, 793 stars]

Transformer-oriented

  • transformers by HuggingFace [GitHub, 38665 stars]
  • Adapter Hub and its documentation - Adapter modules for Transformers [GitHub, 287 stars]
  • haystack - Transformers at scale for question answering & neural search. [GitHub, 1206 stars]

Dialog Systems and Speech

  • DeepPavlov by MIPT [GitHub, 4911 stars]
  • ParlAI by FAIR [GitHub, 6866 stars]
  • rasa - Framework for Conversational Agents [GitHub, 10419 stars]
  • wav2letter - Automatic Speech Recognition Toolkit [GitHub, 5577 stars]

Distributed NLP

Machine Translation

  • COMET -A Neural Framework for MT Evaluation [GitHub, 49 stars]

Entity and String Matching

  • PolyFuzz - Fuzzy string matching, grouping, and evaluation [GitHub, 264 stars]

Discourse Analysis

  • ConvoKit - Cornell Conversational Analysis Toolkit [GitHub, 229 stars]

The-NLP-Learning

General

Books

Courses

Tutorials

The-NLP-Communities

Other-NLP-Topics

General

Tokenization

  • tokenizers - Fast State-of-the-Art Tokenizers optimized for Research and Production [GitHub, 4113 stars]
  • SentencePiece - Unsupervised text tokenizer for Neural Network-based text generation [GitHub, 4673 stars]
  • SoMaJo - A tokenizer and sentence splitter for German and English web and social media texts [GitHub, 82 stars]

Data Augmentation and Weak Supervision

Libraries and Frameworks
  • WildNLP Text manipulation library to test NLP models [GitHub, 63 stars]
  • snorkel Framework to generate training data [GitHub, 4368 stars]
  • NLPAug Data augmentation for NLP [GitHub, 1495 stars]
  • SentAugment Data augmentation by retrieving similar sentences from larger datasets [GitHub, 250 stars]
  • TextAttack - framework for adversarial attacks, data augmentation, and model training in NLP [GitHub, 1154 stars]
Blogs and Tutorials

Named Entity Recognition (NER)

Relation Extraction

  • tacred-relation TACRED: position-aware attention model for relation extraction [GitHub, 262 stars]
  • tacrev TACRED Revisited: A Thorough Evaluation of the TACRED Relation Extraction Task [GitHub, 33 stars]
  • tac-self-attention Relation extraction with position-aware self-attention [GitHub, 55 stars]

Domain Adaptation

Low Resource NLP

Spell Correction

  • NeuSpell - A Neural Spelling Correction Toolkit [GitHub, 62 stars]
  • SymSpellPy - Python port of SymSpell [GitHub, 395 stars]

Reinforcement Learning for NLP

  • nlp-gym - NLPGym - A toolkit to develop RL agents to solve NLP tasks [GitHub, 68 stars]

AutoML

  • TPOT - Python Automated Machine Learning tool [GitHub, 7716 stars]
  • Auto-PyTorch - Automatic architecture search and hyperparameter optimization for PyTorch [GitHub, 1101 stars]
  • HungaBunga - Brute-Force all sklearn models with all parameters using .fit .predict [GitHub, 606 stars]
  • AutoML Natural Language - Google's paid AutoML NLP service

License CC0

Attributions

Resources

  • All linked resources belong to original authors

Icons

Fonts

About

A comprehensive reference for all topics related to Natural Language Processing

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%