Machine Learning Roadmap¶
- Roadmap: https://roadmap.sh/machine-learning
1. Introduction¶
- 1.1 What is an ML Engineer?
- 1.2 ML Engineer vs AI Engineer
- 1.3 Skills and Responsibilities
2. Mathematical Foundations¶
2.1 Calculus¶
- 2.1.1 Derivatives, Partial Derivatives
- 2.1.2 Chain Rule of Derivation
- 2.1.3 Gradient, Jacobian, Hessian
2.2 Linear Algebra¶
- 2.2.1 Scalars, Vectors, Tensors
- 2.2.2 Matrix & Matrix Operations
- 2.2.3 Determinants, Inverse of Matrix
- 2.2.4 Eigenvalues, Diagonalization
- 2.2.5 Singular Value Decomposition
2.3 Probability¶
- 2.3.1 Basics of Probability
- 2.3.2 Random Variances, PDFs
- 2.3.3 Types of Distribution
- 2.3.4 Bayes Theorem
2.4 Statistics¶
- 2.4.1 Basic Concepts
- 2.4.2 Descriptive Statistics
- 2.4.3 Inferential Statistics
- 2.4.4 Graphs & Charts
2.5 Discrete Mathematics¶
3. Programming Fundamentals¶
3.1 Python¶
- 3.1.1 Basic Syntax
- 3.1.2 Variables and Data Types
- 3.1.3 Data Structures
- 3.1.4 Loops
- 3.1.5 Conditionals
- 3.1.6 Exceptions
- 3.1.7 Functions, Builtin Functions
- 3.1.8 Object Oriented Programming
3.2 Essential Libraries¶
- 3.2.1 Numpy
- 3.2.2 Pandas
- 3.2.3 Matplotlib
- 3.2.4 Seaborn
4. Data Sources¶
4.1 Data Collection¶
- 4.1.1 Databases (SQL, No-SQL)
- 4.1.2 Internet APIs
- 4.1.3 Mobile Apps IoT
4.2 Data Formats¶
- 4.2.1 CSV
- 4.2.2 Excel
- 4.2.3 JSON
- 4.2.4 Parquet
- 4.2.5 Other Data Formats
5. Data Cleaning¶
5.1 Preprocessing Techniques¶
- 5.1.1 Data Cleaning
- 5.1.2 Feature Engineering
- 5.1.3 Feature Scaling & Normalization
- 5.1.4 Dimensionality Reduction
- 5.1.5 Feature Selection
6. Machine Learning¶
6.1 What is Machine Learning?¶
6.2 Types of Machine Learning¶
- 6.2.1 Supervised Learning
- 6.2.2 Unsupervised Learning
- 6.2.3 Semi-supervised Learning
- 6.2.4 Self-supervised Learning
- 6.2.5 Reinforcement Learning
6.3 Scikit-learn¶
- 6.3.1 Data Loading
- 6.3.2 Data Preparation
- 6.3.2.1 Train - Test Data
- 6.3.3 Model Selection
- 6.3.4 Tuning
- 6.3.5 Prediction
6.4 Supervised Learning¶
- 6.4.1 What is Supervised Learning?
6.4.2 Classification¶
- 6.4.2.1 K-Nearest Neighbors (KNN)
- 6.4.2.2 Logistic Regression
- 6.4.2.3 Support Vector Machines
- 6.4.2.4 Decision Trees, Random Forest
- 6.4.2.5 Gradient Boosting Machines
6.4.3 Regression¶
- 6.4.3.1 Linear Regression
- 6.4.3.2 Polynomial Regression
- 6.4.3.3 Lasso
- 6.4.3.4 Ridge
- 6.4.3.5 ElasticNet Regularization
6.5 Unsupervised Learning¶
- 6.5.1 What is Unsupervised Learning?
6.5.2 Dimensionality Reduction¶
- 6.5.2.1 Principal Component Analysis
- 6.5.2.2 Autoencoders
6.5.3 Clustering¶
- 6.5.3.1 Exclusive
- 6.5.3.2 Overlapping
- 6.5.3.3 Hierarchical
- 6.5.3.4 Probabilistic
6.6 Reinforcement Learning¶
- 6.6.1 What is Reinforcement Learning?
- 6.6.2 Deep-Q Networks
- 6.6.3 Policy Gradient
- 6.6.4 Actor-Critic Methods
- 6.6.5 Q-Learning
7. Model Evaluation¶
7.1 What is Model Evaluation?¶
7.2 Why is it Important?¶
7.3 Metrics to Evaluate¶
- 7.3.1 Accuracy
- 7.3.2 Precision
- 7.3.3 F1-Score
- 7.3.4 Recall
- 7.3.5 ROC-AUC
- 7.3.6 Log Loss
- 7.3.7 Confusion Matrix
7.4 Validation Techniques¶
- 7.4.1 K-Fold Cross Validation
- 7.4.2 LOOCV
8. Deep Learning¶
8.1 Neural Network (NN) Basics¶
- 8.1.1 Perceptron, Multi-layer Perceptrons
- 8.1.2 Forward Propagation
- 8.1.3 Back Propagation
- 8.1.4 Activation Functions
- 8.1.5 Loss Functions
8.2 Deep Learning Libraries¶
- 8.2.1 TensorFlow
- 8.2.2 Keras
- 8.2.3 Scikit-learn
- 8.2.4 PyTorch
8.3 Deep Learning Architectures¶
8.3.1 Convolutional Neural Network¶
- 8.3.1.1 Convolution
- 8.3.1.2 Pooling
- 8.3.1.3 Padding
- 8.3.1.4 Strides
8.3.2 Applications of CNNs¶
- 8.3.2.1 Image & Video Recognition
- 8.3.2.2 Image Classification
- 8.3.2.3 Image Segmentation
- 8.3.2.4 Recommendation Systems
8.3.3 Recurrent Neural Networks¶
- 8.3.3.1 RNN
- 8.3.3.2 GRU
- 8.3.3.3 LSTM
8.3.4 Attention Mechanisms¶
- 8.3.4.1 Self-Attention
- 8.3.4.2 Transformers
- 8.3.4.3 Multi-head Attention
8.3.5 Generative Adversarial Networks¶
8.3.6 Autoencoders¶
9. Advanced Concepts in ML¶
9.1 Explainable AI¶
9.2 Natural Language Processing¶
- 9.2.1 Tokenization
- 9.2.2 Lemmatization
- 9.2.3 Stemming
- 9.2.4 Embeddings
- 9.2.5 Attention Models