CS4321 Deep Learning

Core and advanced deep learning methods including end-to-end production development in support of naval mission objectives.  The course covers both Deterministic and Bayesian Deep Learning with in-depth review of the core concepts (math, architectures (e.g. MLP, CNN, Sequences etc..), optimization for deep learning, training methodology and DL project organization). This course builds on the core fundamentals to develop complex concepts such as Bayesian Deep Learning, Generative Adversarial Networks (GAN), dense predictions (e.g. U-Nets), Active Learning, Self-Supervised Learning and Continuous Learning algorithms with neural networks.  The course will utilize contemporary popular Python frameworks (e.g. Tensorflow/PyTorch).

Prerequisite

CS3021 and CS3315; or consent of instructor.

Lecture Hours

3

Lab Hours

2

Course Learning Outcomes

At the end of this course the student should be able to:

  • Describe both Deterministic and Bayesian Deep Learning algorithms and architectures.
  • Describe advantages and issues in utilizing common and advanced applications of DL models.
  • Demonstrate ability to implement and train deep learning models using modern DL framework – final project has to utilize distributed (multi-GPU and multi-cpu) training on Hamming-like SLURM environment.
  • Replicate a state-of-the-art algorithm from the DL/AI literature.
  • Develop reproducible research by producing appropriate NPS GitLab repo with source code (utilizing requirements files and object-oriented concepts) that will run on the class cluster resources and an ACM conference style five page report describing their project outcomes.
  • This course emphasizes practical implementation through object-oriented programing in Python, version control, efficient data structures for deep learning and scalability of training and inference through parallel strategies for both model computation and data preprocessing. This approach makes it a unique offering on campus given that it will build the necessary skillset required to execute on research in this field for student thesis work or operational environment in their future posts.