In recent years, deep neural networks have emerged as the modeling techniques of choice in various domains such as natural language processing (NLP) and computer vision.

This course gives an overview of recent advances in the use of deep neural networks for NLP problems. Textual data presents several challenges for deep networks. First, we need to represent the discrete inputs (i.e. words) as distributed representations that are amenable to neural networks. Second, often the predicted outputs are not simple categorical labels, but can be structured (e.g., sequences, trees, or graphs), and we seek to construct such outputs using neural computation graphs that are necessarily directed and acyclic.

In this course, we will focus on these challenges inherent in designing neural models for converting textual inputs into various kinds of outputs: categorical labels, sequences or graphs. To this end, we will use several example NLP tasks to study modeling strategies, network architectures and learning paradigms.

See course information for details about course mechanics and policies.

Meetings & Staff

Lectures: Mon & Wed, 11:50AM – 01:10PM at GC 4020

Instructor: Vivek Srikumar

Office 3126 MEB
Email svivek at cs dot utah dot edu
Office hours Wed 2:00 PM, 3126 MEB, or by appointment

Please prefix any emails to the instructor with the course number CS 6956.

Discussion forum: We will be using Canvas. Please use the discussion forum as the preferred medium for interacting with the instructor and the teaching assistants rather than emailing directly.

Course objectives, or: What can I expect to learn?

This course will consist of a mix of lectures and student presentations, with the latter occupying the last third of the semester. At the end of the course, you should be able to:

  1. Define deep neural networks for new NLP problems,

  2. Implement and train such models using off-the-shelf libraries, and

  3. Be able to critically read, evaluate and perhaps replicate current literature in the field.