Applied Machine Learning

Foundation Upper

Lectures

4 hrs/wk

Lab

0 hrs/wk

Language

English

Delivery

In person

Self-study

75.5 hrs

PREREQUISITES

-

Course Content

- Introduction to Applied Machine Learning. Definitions. Supervised, unsupervised and self-supervised learning. Overview of PyTorch and the deep learning ecosystem. - Data preparation and the ML pipeline. Datasets, data loaders, normalization, train/val/test splits. Tensors and autograd in PyTorch. - From linear models to neural networks. Perceptron, activation functions, multi-layer perceptrons (MLPs). Classification and regression with MLPs in PyTorch. - Training neural networks. Loss functions, gradient descent, backpropagation. Stochastic gradient descent and modern optimizers (Adam, AdamW). - Regularization and generalization. Overfitting, dropout, L1/L2 regularization, batch normalization, early stopping. - Convolutional Neural Networks (CNNs) for image data. Convolution operation, pooling, receptive fields, feature maps. - CNN architectures and transfer learning. AlexNet, VGG, ResNet, EfficientNet. Fine-tuning pre-trained models on custom datasets. - Sequential data and Recurrent Neural Networks. Vanishing gradients problem. LSTM and GRU cells. Time-series regression and classification. - Applications of recurrent models. Sequence-to-sequence tasks. Word embeddings. Text classification with RNNs. - Attention mechanisms and the Transformer architecture. Self-attention, multi-head attention, positional encoding. - Transformer-based language models. Pre-training and fine-tuning paradigm. Overview of BERT, GPT and modern large language models (LLMs). - Advanced computer vision I: Object detection. Anchor-based and anchor-free detectors. Overview of YOLO and Faster R-CNN. - Advanced computer vision II: Image segmentation. Semantic vs. instance segmentation. U-Net and Mask R-CNN overview.

Learning Outcomes

Upon successful completion of this course, students will be able to: - Understand the fundamental concepts of applied machine learning and deep learning, including supervised, unsupervised, and self-supervised learning paradigms. - Implement and train neural networks using PyTorch, including multi-layer perceptrons (MLPs), convolutional neural networks (CNNs), and recurrent neural networks (RNNs), for real-world classification and regression tasks. - Apply best practices in data preparation, normalization, train/val/test splitting, regularization (dropout, L1/L2, batch normalization), and early stopping within the ML development pipeline. - Design and fine-tune CNN architectures (AlexNet, VGG, ResNet, EfficientNet) for image recognition tasks using transfer learning from pre-trained models. - Build and apply recurrent architectures (LSTM, GRU) for sequential and time-series data analysis, including text classification. - Understand the Transformer architecture, self-attention mechanisms, and the pre-training/fine-tuning paradigm underlying modern large language models such as BERT and GPT. - Identify and apply state-of-the-art methods for advanced computer vision tasks, including object detection (YOLO, Faster R-CNN) and image segmentation (U-Net, Mask R-CNN). - Develop, evaluate, and present applied ML solutions using Python, Jupyter notebooks, and the PyTorch ecosystem.