Course Description: This course provides practical knowledge and skills in machine learning and deep learning. Through lectures, hands-on projects, labs, and case studies, students explore various deep learning architectures, tools, and methodologies. Topics include natural language processing (NLP), computer vision (CV), generative models, ethical considerations, and model deployment. By the end, students will have the expertise to build and deploy machine learning models effectively.

Course Objectives:

  1. Understand the fundamental concepts and principles of machine learning and deep learning.
  2. Apply machine learning algorithms and deep learning techniques to real-world problems.
  3. Gain hands-on experience with popular deep learning libraries and frameworks.
  4. Learn data preprocessing, feature engineering, and model training techniques.
  5. Explore deep learning applications in NLP, CV, Code Generation, Time Series.
  6. Understand ethical considerations and responsible AI practices in machine learning.
  7. Acquire knowledge of model deployment, monitoring, and MLOps methodologies.

Course features 3 major blocks:

  1. Designing ML-based systems and MLOps

  2. Evolution of Deep Learning Architectures

  3. Applications of Deep Learning in NLP and CV

Course Outline:

Block 1: Designing ML-based systems and MLOps

Week 1: Course Review and Introduction

  • Practical methodologies and workflows in ML projects
  • Machine Leaning Design Patterns
  • Data preprocessing

Week 2: Tools and Processes for Machine Learning and Data Analysis

  • CRISP-DM, CRISP-ML.
  • Essential tools and libraries for machine learning
  • Monitoring and logging in machine learning workflows

Week 3: MLOps and Practical Methodologies

  • Overview of MLOps (Machine Learning Operations)
  • Federated learning and distributed machine learning
  • Best practices for model deployment and serving

Block 2: Evolution of Deep Learning Architectures

Week 4: Deep Learning Basics

  • Review of deep learning fundamentals
  • Foundation models
  • Training deep neural networks
  • Computational graph and backpropagation

Week 5: Representation Learning and Autoencoders

  • Autoencoders for representation learning
  • Variational autoencoders (VAEs)
  • Unsupervised learning with autoencoders
  • Contrastive learning

Week 6: RNNs for sequential data processing

  • Sequence-to-sequence models
  • Attention

Week 7: Self-Attention and Transformers

  • Self-attention mechanisms and transformers
  • Transformer-based models (BERT, GPT)
  • Large language models

Week 8: CNNs for Image Processing

  • Convolutional layers
  • CNN-based architectures
  • Introduction to transformers for CV

Week 9: Diffusion Models

  • Introduction to generative models
  • Diffusion Models

Week 10: Deep Learning for Structured Data: Graph Neural Networks (GNNs)

  • Introduction to GNNs
  • Graph convolutional networks (GCNs)
  • Deep learning on graph-structured data

Block 3: Applications of Deep Learning in NLP, CV and beyond

Week 11: Applications in Computer Vision (CV)

  • Transformers for CV
  • Diffsion models in CV, Video generation
  • StyleGANs and image generation applications

Week 12: Applications in NLP. Large Language Models

  • Introduction to LLMs. Few-shot learning
  • Fine-tuning pre-trained language models. PEFT
  • Language generation and transfer learning
  • RLHF
  • Applications in Source Code Analysis/Generation

Week 13: Multimodal Machine Learning

Week 14: Applications in Time Series Analysis

Weeks 15: Project presentations and Flipped Classes

  • Topics chosen by students from the proposed list or self-generated

    • Ethical considerations in machine learning (Ex.)
    • Bias, fairness, and accountability in AI (Ex.)
    • Responsible AI practices and privacy concerns (Ex.)
    • Adversarial machine learning and robustness
    • Explainable AI and interpretability techniques

Week 16: Final Exam Week