Modern Deep Learning Techniques Applied to Natural Language Processing
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
_chapters Split Table 3 into 2 markdown tables Oct 29, 2018
_intro fixed introduction details Oct 24, 2018
_layouts add disqus on page Oct 27, 2018
img fixed introduction details Oct 24, 2018
js changing display of equation Oct 20, 2018
CNAME Update CNAME Oct 21, 2018
Gemfile added instructions to build site locally Oct 27, 2018
LICENSE fixed introduction details Oct 24, 2018 added instructions to build site locally Oct 27, 2018
_config.yml adding introduction Oct 24, 2018

Modern Deep Learning Techniques Applied to Natural Language Processing

This project contains an overview of recent trends in deep learning based natural language processing (NLP). It covers the theoretical descriptions and implementation details behind deep learning models, such as recurrent neural networks (RNNs), convolutional neural networks (CNNs), and reinforcement learning, used to solve various NLP tasks and applications. The overview also contains a summary of state of the art results for NLP tasks such as machine translation, question answering, and dialogue systems. You can find the learning resource at the following address: A snapshot of the website is provided below:

alt txt

About this project

The main motivations for this project are as follows:

  • Maintain an up-to-date learning resource that integrates important information related to NLP research, such as:
    • state of the art results
    • emerging concepts and applications
    • new benchmark datasets
    • code/dataset releases
    • etc.
  • Create a friendly and open resource to help guide researchers and anyone interested to learn about modern techniques applied to NLP
  • A collaborative project where expert researchers can suggest changes (e.g., incorporate SOTA results) based on their recent findings and experimental results

Table of Contents

How to Contribute?

There are various ways to contribute to this project. Refer to the issue section to learn more about how you can help. Or you can make suggestions by submitting a new issue. More detailed instructions coming soon.


Here are a few important suggestions received from the community on Twitter and GitHub:

  • Adding sections on language models such as ELMo, ULMFit, BERT, etc.
  • Add section on text summarization task

Build site locally

If you are planning to change some aspect of the site (e.g., adding section or style) and want to preview it locally on your machine, we suggest you to build and run the site locally using jekyll. Here are the instructions:

  • First, check that Ruby 2.1.0 or higher is installed on your computer. You can check using the ruby --version command. If not, please install it using the instructions provided here.
  • After ensuring that Ruby is installed, install Bundler using gem install bundler.
  • Clone this repo locally: git clone
  • Navigate to the repo folder with cd nlp_overview
  • Install Jekyll: bundle install
  • Run the Jekyll site locally: bundle exec jekyll serve
  • Preview site on the browser at http://localhost:4000


This project is maintained by Elvis Saravia and Soujanya Poria. You can also find me on Twitter if you have any direct comments or questions. A major part of this project have been directly borrowed from the work of Young et al. (2017). We are thankful to the authors.