Natural Language Processing with Deep Learning


Stanford School of Engineering


Investigate the fundamental concepts and ideas in natural language processing (NLP), and get up to speed with current research. Students will develop an in-depth understanding of both the algorithms available for processing linguistic information and the underlying computational properties of natural languages. The focus is on deep learning approaches: implementing, training, debugging, and extending neural network models for a variety of language understanding tasks. The course progresses from word-level and syntactic processing to question answering and machine translation. For their final project students will apply a complex neural network model to a large-scale NLP problem.


  • Calculus and linear algebra
  • CS124, or CS121/CS221

Topics include

  • Computational properties of natural languages
  • Coreference, question answering, and machine translation
  • Processing linguistic information
  • Syntactic and semantic processing
  • Modern quantitative techniques in NLP
  • Neural network models for language understanding tasks

Course Availability

The course schedule is displayed for planning purposes – courses can be modified, changed, or cancelled. Course availability will be considered finalized on the first day of open enrollment. For quarterly enrollment dates, please refer to our graduate education section.

Thank you for your interest. The course you have selected is not open for enrollment. Please click the button below to receive an email when the course becomes available again.

Request Information