Description
This one-week bootcamp will teach participants to devise machine learning solutions for visual data problems using deep neural networks. It will provide an introductory overview of the game-changing findings in the literature and how they led artificial intelligence to play an increasingly important role in our daily lives.
Preparatory Material
- Basic concepts of machine learning: [LINK #1]
- Creating plots using Matplotlib: [LINK #1]
- Manipulating images using Matplotlib: [LINK #1]
- Manipulating images using NumPy: [LINK #1]
- Manipulating images using OpenCV: [LINK #1] [LINK #2]
- Manipulating videos using OpenCV: [LINK #1]
- Useful NumPy functions: [LINK #1] [LINK #2]
Bootcamp outline
- Day #1: Introduction to neural networks
- Linear layers
- Activation functions
- Loss functions
- Backpropagation & stochastic gradient descent
- Regularization (keep weights small)
- Training & testing best practices
- Day #2: Autoencoders
- Input reconstruction
- Dimensionality reduction
- Unsupervised learning
- Neural network initialization
- Day #3: Deep convolutional neural networks
- Convolutional layers
- Pooling layers
- Applications in classification
- Going deeper (more layers) with residual learning
- Pre-trained architectures & transfer learning
- Day #4: Deepfake generation
- Face preprocessing (detection and normalization)
- Face autoencoder
- The one-encoder, two-decoders trick
- Ethics behind deepfakes
- Day #5: Deepfake detection
- Real vs. fake classification
- Adversarial training and the vicious circularity