O'Reilly logo
live online training icon Live Online training

Deep Learning for NLP

Efficient Processing of Natural Language with Artificial Neural Networks

Jon Krohn

Relatively obscure a few short years ago, Deep Learning is ubiquitous today across data-driven applications as diverse as machine vision, super-human game-playing, and natural language processing (NLP).

This Live Training builds on the fundamentals of Deep Learning to develop a specialization in handling natural language data and building powerful, efficient, broadly-applicable predictive models that have sequences of words as inputs.

To facilitate an intuitive understanding of NLP and neural-network layers particularly well-suited to processing natural language data (e.g., vector-space embeddings, RNNs, GRUs, LSTMs), essential theory will be introduced visually and pragmatically. Theory will immediately be brought to life with interactive demos and hands-on exercises within Jupyter notebooks that feature Python and Keras, the high-level TensorFlow API.

What you'll learn-and how you can apply it

  • Preprocess natural language data and create word vectors for use in machine learning applications
  • Leverage Keras and its TensorFlow backend to make predictions with Deep Learning models trained on natural language
  • Improve Deep Learning model performance by tuning hyperparameters

This training course is for you because...

  • You already have a working understanding of the fundamentals of Deep Learning
  • You want to apply powerful, efficient Deep Learning models to natural language data
  • You want to be able to transform natural language into quantitative representations that can be used as inputs into a broad range of machine learning models

Prerequisites

  • Experience with an object-oriented programming language, e.g., Python (all code demos during the training will be in Python)
  • A working understanding of the fundamentals of Deep Learning would make it a lot easier to follow along with the training

Course Set-up:

  • If you’d like to work along with this Live Training’s Jupyter notebooks interactively, step-by-step instructions for installation are here

  • Alternatively, if you’d simply likely to view the notebooks as we work through them, they’re available online here

Recommended Preparation:

If you’d like to brush up on analyzing data in Python, the topics covered in Pandas Data Analysis with Python Fundamentals LiveLessons will be sufficient for this training

If you’d like to ensure you have a working understanding of the fundamentals of Deep Learning, the author’s Deep Learning with TensorFlow LiveLessons are the perfect prequel to this training

About your instructor

  • Jon Krohn is the Chief Data Scientist at the machine-learning start-up untapt. On evenings and weekends, he leads a flourishing Deep Learning Study Group out of their New York office. Jon holds a doctorate in neuroscience from Oxford University and is the presenter of Deep Learning with TensorFlow LiveLessons, available in Safari.

Schedule

The timeframes are only estimates and may vary according to how the class is progressing

Segment 1: The Power and Elegance of Deep Learning for NLP (45 min)

  • Training Overview (5 minutes)
  • Introduction to Deep Learning for Natural Language Processing (10 minutes)
  • Review of Prerequisite Deep Learning Theory (10 minutes)
  • Vector-Space Embeddings (15 minutes)

Break + Q&A (5 minutes)

Segment 2: Modeling Natural Language Data (90 min)

  • Preprocessing Natural Language for word2vec (40 minutes)
  • Break + Q&A (5 minutes)
  • Document Classification with a Dense Neural Network (30 minutes)
  • Document Classification with a Convolutional Neural Network (10 minutes)

Break + Q&A (5 minutes)

Segment 3: Recurrent and Advanced Neural Networks (45 min)

  • Recurrent Neural Networks (10 minutes)
  • LSTMs (10 minutes)
  • Bi-Directional LSTMs (5 minutes)
  • Stacked LSTMs (5 minutes)
  • Parallel Network Architectures (10 minutes)

Break + Q&A (5 minutes)