This course is a hands-on introduction to modern neural network ("deep learning") tools and methods. The course will cover the fundamentals of neural networks, and introduce standard and new architectures: from simple feed forward networks to recurrent neural networks. We will cover stochastic gradient descent and backpropagation, along with related fitting techniques.
The course will have a particular emphasis on using these technologies in practice, via modern toolkits. We will specifically be introducing (1) Keras (together with TensorFlow) and (2) PyTorch, which are illustrative of static and dynamic network implementations, respectively. Applications of these models to various types of data will be reviewed, including images and text. This iteration will have a bit of a bias toward the latter, reflecting instructor biases.
Prior exposure to machine learning is recommended, and enforced through a co-req with ML. Working knowledge of Python required (or you must be willing to pick up rapidly as we go). Familiarity with linear algebra, (basic) calculus and probability will be assumed throughout.
Homeworks will consist of both written and programming components. The latter will be completed in Python, using the Keras/TensorFlow and PyTorch frameworks.
The mid-term will be given in class, and will be testing for understanding of the core material presented in the course regarding the fundamentals of neural networks, including backpropagation, as well as differences between and applicability of the architectures introduced.
A big component of this course will be your project, which will involve picking a particular dataset on which to implement, train and evaluate neural models. Collaboration is allowed (team sizes should be <= 3, however). This project will be broken down into several graded deliverables, and culminate in a report and final presentation in class to your peers.
A commitment to the principles of academic integrity is essential to the mission of Northeastern University. The promotion of independent and original scholarship ensures that students derive the most from their educational experience and their pursuit of knowledge. Academic dishonesty violates the most fundamental values of an intellectual community and undermines the achievements of the entire University. For more information, please refer to the Academic Integrity Web page.
|1/7||Course aims, expectations, logistics; Review of supervised learning / Perceptron; intro to colab.|
|1/10||Logistic Regression and Estimation via SGD|
|1/14||Beyond Linear Models: The Multi-Layer Perceptron|
|1/17||Layers, activations, and loss functions||HW 1 Due!|
|1/21||No class (MLK day)|
|1/31||Learning continuous representations of discrete things: Embeddings|
|2/4||Convolutional Neural Networks (CNNs) I||HW 2 Due!|
|2/7||Convolutional Neural Networks (CNNs) II|
|2/11||Recurrent Neural Networks (RNNs) I|
|2/14||Recurrent Neural Networks (RNNs) II|
|2/18||No class (President's day)||HW 3 Due!|
|2/21||Optimizer matters: training neural networks in practice|
|2/25||Neural Sequence Tagging|
|3/11||Sequence-to-Sequence Models I|
|3/14||Sequence-to-Sequence Models II|
|3/18||Summarization Models||HW 4 Due!|
|3/21||Variational Auto-Encoders (VAEs)|
|3/25||Generative Adversarial Networks (GANs)|
|3/28||Deep Reinforcement Learning I||HW 5 Due!|
|4/1||Deep Reinforcement Learning II|
|4/4||Advanced Topics (TBD)/built-in slack|
|4/8||Final project presentations/discussion I|
|4/11||Final project presentations/discussion II|