Course Outline
Introduction
This section offers a general overview of when to apply machine learning, key considerations, and the underlying principles, including advantages and disadvantages. Topics include data types (structured/unstructured/static/streamed), data validity and volume, data-driven versus user-driven analytics, statistical models versus machine learning models, challenges associated with unsupervised learning, the bias-variance trade-off, iteration and evaluation, cross-validation approaches, and distinctions between supervised, unsupervised, and reinforcement learning.
MAJOR TOPICS
1. Understanding Naive Bayes
- Basic concepts of Bayesian methods
- Probability
- Joint probability
- Conditional probability with Bayes' theorem
- The Naive Bayes algorithm
- Naive Bayes classification
- The Laplace estimator
- Utilising numeric features with Naive Bayes
2. Understanding Decision Trees
- Divide and conquer approach
- The C5.0 decision tree algorithm
- Selecting the optimal split
- Pruning the decision tree
3. Understanding Neural Networks
- Evolution from biological to artificial neurons
- Activation functions
- Network topology
- Determining the number of layers
- Direction of information flow
- Number of nodes per layer
- Training neural networks via backpropagation
- Deep Learning
4. Understanding Support Vector Machines
- Classification using hyperplanes
- Identifying the maximum margin
- Scenarios with linearly separable data
- Scenarios with non-linearly separable data
- Utilising kernels for non-linear spaces
5. Understanding Clustering
- Clustering as a machine learning task
- The k-means algorithm for clustering
- Using distance to assign and update clusters
- Selecting the appropriate number of clusters
6. Measuring Performance for Classification
- Working with classification prediction data
- An in-depth look at confusion matrices
- Utilising confusion matrices to gauge performance
- Beyond accuracy – other performance measures
- The kappa statistic
- Sensitivity and specificity
- Precision and recall
- The F-measure
- Visualizing performance trade-offs
- ROC curves
- Estimating future performance
- The holdout method
- Cross-validation
- Bootstrap sampling
7. Tuning Standard Models for Improved Performance
- Using caret for automated parameter tuning
- Creating a simple tuned model
- Customising the tuning process
- Enhancing model performance with meta-learning
- Understanding ensembles
- Bagging
- Boosting
- Random forests
- Training random forests
- Evaluating random forest performance
MINOR TOPICS
8. Understanding Classification Using Nearest Neighbors
- The kNN algorithm
- Calculating distance
- Selecting an appropriate value for k
- Preparing data for kNN application
- Why is the kNN algorithm considered lazy?
9. Understanding Classification Rules
- Separate and conquer approach
- The One Rule algorithm
- The RIPPER algorithm
- Deriving rules from decision trees
10. Understanding Regression
- Simple linear regression
- Ordinary least squares estimation
- Correlations
- Multiple linear regression
11. Understanding Regression Trees and Model Trees
- Incorporating regression into trees
12. Understanding Association Rules
- The Apriori algorithm for association rule learning
- Measuring rule interest – support and confidence
- Constructing a set of rules using the Apriori principle
Extras
- Spark/PySpark/MLlib and Multi-armed bandits
Requirements
Knowledge of Python
Testimonials (7)
I thoroughly enjoyed the training and appreciated the deeper dive into the subject of Machine Learning. I appreciated the balance between theory and practical applications, especially the hands-on coding sessions. The trainer provided engaging examples and well-designed exercises that enhanced the learning experience. The course covered a wide range of topics, and Abhi demonstrated excellent expertise by answering all questions with clarity and ease.
Valentina
Course - Machine Learning
I appriciated the exercise that help me to undersand the theory and apply it step by step . as well the way the trainer explained everything in a simple and clear manner. It was easy to follow even though I'm not very experienced with Python, still, I didn't want to miss the opportunity to learn something that relly interests me. I also appreciated the variety of information provided and the trainer’s availability to explain and support us in understanding the concepts. After this course, machine learning concepts are much clear to me, and now I feel like I have a direction and a better undersantind of the topic.
Cristina
Course - Machine Learning
At the end of the training, I could see the real-life use-case of the subjects presented.
Daniel
Course - Machine Learning
I liked the pace, I liked the balance between theory and practice, the main topics covered and the way the trainer was able to put everything into balance. I also really like your training infrastructure, very practical to work with VMs
Andrei
Course - Machine Learning
Keeping it short and simple. Creating intuition and visual models around the concepts (decision tree graph, linear equations, calculating y_pred manually to prove how the model works).
Nicolae - DB Global Technology
Course - Machine Learning
It helped me achieve my goal of understanding ML. Much respect for Pablo for giving a proper introduction in this topic, since it becomes obvious after 3 days of training how vast this topic is. I have also enjoyed A LOT the idea of virtual machines you have provided, which had very good latency! It allowed every coursant to do experiments at their own pace.
Silviu - DB Global Technology
Course - Machine Learning
The way practical part, seeing the theory materializing into something practical is great.