APS360: Applied Deep Learning was a core course for my Certificate in Artificial Intelligence (AECERAIEN) during my B.A.Sc. at University of Toronto. The course covered the theory and implementation of the latest concepts in supervised and unsupervised learning, including how they can be used for generative AI.
Architectures covered: Transformers, Graph Neural Networks, GANs, Variational Autoencoders, RNNs, CNNs, ANNs, etc
Course labs have been overviewed below and attached in the repository.
Lab 1: Manipulating images and classifying MNIST handwritten digits using Aritificial Neural Networks
- Performed fundamental NumPy operations.
- Loaded and manipulated images using Matplotlib.
- Loaded and mainpulated tensor data in Pytorch.
- Configured and trained Artificial Neural Networks (ANN) using PyTorch.
- Evaluated different ANN configuations.
- Implemented the training loop for a machine learning model.
- Understood the distinction between training, validation, and test data, along with the concepts of overfitting and underfitting.
- Investigated how different hyperparameters, such as learning rate and batch size, affected the success of training.
- Compared an ANN (aka Multi-Layer Perceptron) with a CNN.
- Cleaned and processed continuous and categorical data for machine learning.
- Implemented an autoencoder that takes continuous and categorical (one-hot) inputs.
- Tuned the hyperparameters of an autoencoder.
- Used baseline models to help interpret model performance.
- Cleaned and processed text data for machine learning.
- Implemented a character-level recurrent neural network.
- Used torchtext to build recurrent neural network models.
- Used torchtext to implement batching for a recurrent neural network.