NextGen Cyber-Threats & GANs
CSCI 3800: Next-Generation Cyber-Threats: Generative Adversarial Networks
Department of Computer Science and Engineering - College of Engineering, Design and Computing - University of Colorado Denver
Term: Spring 2020
Location: PCLab - Lawrence St. Center 8th. floor.
Course Overview:
Machine Leaning and Deep Learning provide with many useful tools when it comes to cybersecurity, allowing for advanced detection and protection mechanisms for securing our data. However, the same tools used to protect our date can be used to exploit security issues. In the last years, Deep-fake and Generative Adversarial Networks (GAN) positioned an important security risk by allowing a person to generate videos with the image of someone else. Recently, researchers have demonstrated the versatility of these networks by creating the first AI-generated painting. With all these tools available, are we sure we can trust our eyes? Are we sure that we are buying an original piece of art and not an AI-generated counterfeit? Are we sure that our contacts in social media are who they say they are?
This course introduces Generative Adversarial Networks and navigate deeper in the uses of these networks with a strong focus on cybersecurity applications. We will learn how to create and apply these networks by means Python libraries like TensorFlow, Theano and PyTorch and developing applications capable of leveraging GPU-based environments.
Prerequisites:
CSCI2312: Object Oriented Programming
CSCI2421: Data Structures & Program Design
MATH1401: Calculus I
Expected Knowledge at the Start of the Course: We expect that the student has strong programming skills in any programming language. Previous machine learning and Python experience is not required.
Expected Knowledge Gained at the end of the Course: Students are expected to understand
Concepts of Machine and Deep Learning.
A strong understanding of Generative Adversarial Networks.
Use of Deep Learning frameworks such as Tensorflow, Keras, PyTorch and Theano.
Topics:
Introduction to Machine Learning & Deep Learning
Discriminative vs. Generative Models
AutoEncoders and Variational AutoEncoders
Generative Adversarial Networks: Deep Convolutional GAN, Semi-Supervised GAN, Conditional GAN and Cycle GAN
Applications and Ethics.
Textbook:
GANs in Action. Deep learning with Generative Adversarial Networks. J. Langr. V. Bok. Manning Publications. ISBN: 978-1617295560. Required
Other reference books, for deepening knowledge, are recommended:
Introduction To Deep Learning. E. Charniak. MIT Press. ISBN: 978-0-262-03951-2
Intro to Python for computer science and data science. 1st Edition. P. Deitel and H. Deitel. Pearson. ISBN: 978-0-13-540467-6
Course Schedule
W1: Course Presentation. Python Crash Course
W2: Intro to ML
W3: Intro to DL: ANN - Loss Function - SGD.
W4: Intro to DL:CNN
W5: Generative Models.
W6: AutoEncoders (AE) & Variational AE (VAE)
W7: First GAN - Gen. Handwritten Digits
W8: Deep Convolutional GAN (DCGAN)
W9: Training Challenges. Mid-Term
W10: Spring Break
W11: Progressing w/GANs. Semi-Supervised GAN
W12: Conditional GAN (CGAN)
W13: Cycle GAN (CyGAN)
W14: Applications: DeepFakes / PassGAN / SSGAN
W15: Ethics and Looking Ahead
W16: Project Presentations
Finals Week: Final Exam
Readings
Other readings such as research papers will be posted.