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:
- Understand the fundamental concepts and principles of machine learning and deep learning.
- Apply machine learning algorithms and deep learning techniques to real-world problems.
- Gain hands-on experience with popular deep learning libraries and frameworks.
- Learn data preprocessing, feature engineering, and model training techniques.
- Explore deep learning applications in NLP, CV, Code Generation, Time Series.
- Understand ethical considerations and responsible AI practices in machine learning.
- Acquire knowledge of model deployment, monitoring, and MLOps methodologies.
Course features 3 major blocks:
Designing ML-based systems and MLOps
Evolution of Deep Learning Architectures
Applications of Deep Learning in NLP and CV
Course Outline:
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
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
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
- Primary Instructor: Владимир Иванов