Course Outline
Introduction
This module offers a broad overview of when to apply 'machine learning', key considerations, and the underlying concepts, including the advantages and disadvantages. It covers data types (structured/unstructured/static/streamed), data validity and volume, data-driven versus user-driven analytics, statistical models compared to machine learning models, challenges associated with unsupervised learning, the bias-variance trade-off, iteration and evaluation processes, cross-validation techniques, and the distinctions between supervised, unsupervised, and reinforcement learning.
MAJOR TOPICS
1. Comprehending Naive Bayes
- Fundamental concepts of Bayesian methods
- Probability principles
- Joint probability
- Conditional probability via Bayes' theorem
- The Naive Bayes algorithm
- Naive Bayes classification
- The Laplace estimator
- Utilising numeric features with Naive Bayes
2. Comprehending Decision Trees
- Divide and conquer strategies
- The C5.0 decision tree algorithm
- Selecting the optimal split
- Pruning the decision tree
3. Comprehending Neural Networks
- Evolution from biological to artificial neurons
- Activation functions
- Network topology
- Determining the number of layers
- Direction of information flow
- Node count per layer
- Training neural networks using backpropagation
- Deep Learning
4. Comprehending Support Vector Machines
- Classification using hyperplanes
- Identifying the maximum margin
- Handling linearly separable data
- Addressing non-linearly separable data
- Applying kernels for non-linear spaces
5. Comprehending Clustering
- Clustering as a machine learning task
- The k-means algorithm for clustering
- Utilising distance for cluster assignment and updates
- Selecting the appropriate number of clusters
6. Evaluating Classification Performance
- Working with classification prediction data
- Examining confusion matrices in detail
- Using confusion matrices to gauge performance
- Beyond accuracy – alternative performance metrics
- The kappa statistic
- Sensitivity and specificity
- Precision and recall
- The F-measure
- Visualising performance trade-offs
- ROC curves
- Estimating future performance
- The holdout method
- Cross-validation
- Bootstrap sampling
7. Optimising Standard Models for Enhanced Performance
- Using caret for automated parameter tuning
- Creating a simple tuned model
- Customising the tuning process
- Enhancing model performance through meta-learning
- Understanding ensembles
- Bagging
- Boosting
- Random forests
- Training random forests
- Evaluating random forest performance
MINOR TOPICS
8. Comprehending Classification via Nearest Neighbours
- The kNN algorithm
- Calculating distance
- Selecting an appropriate k
- Preparing data for kNN application
- Why the kNN algorithm is considered lazy?
9. Comprehending Classification Rules
- Separate and conquer approach
- The One Rule algorithm
- The RIPPER algorithm
- Deriving rules from decision trees
10. Comprehending Regression
- Simple linear regression
- Ordinary least squares estimation
- Correlations
- Multiple linear regression
11. Comprehending Regression Trees and Model Trees
- Incorporating regression into trees
12. Comprehending 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
Proficiency in 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.