Course Outline
Introduction
This module offers a comprehensive overview of when to apply 'machine learning,' key considerations, and fundamental concepts, including advantages and limitations. Topics include data types (structured, unstructured, static, or streamed), data validity and volume, data-driven versus user-driven analytics, statistical models compared to machine learning models, challenges in unsupervised learning, the bias-variance tradeoff, iterative evaluation methods, cross-validation techniques, and distinctions between supervised, unsupervised, and reinforcement learning.
MAJOR TOPICS
1. Understanding naive Bayes
- Core concepts of Bayesian methods
- Probability fundamentals
- Joint probability
- Conditional probability via Bayes' theorem
- The naive Bayes algorithm
- Naive Bayes classification
- The Laplace estimator
- Applying numeric features with naive Bayes
2. Understanding decision trees
- Divide and conquer strategy
- The C5.0 decision tree algorithm
- Selecting the optimal split
- Pruning the decision tree
3. Understanding neural networks
- From biological to artificial neurons
- Activation functions
- Network topology
- 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
- Finding the maximum margin
- Handling linearly separable data
- Handling non-linearly separable data
- Utilizing kernels for non-linear spaces
5. Understanding clustering
- Clustering as a machine learning task
- The k-means algorithm for clustering
- Using distance metrics for cluster assignment and updates
- Selecting the appropriate number of clusters
6. Measuring performance for classification
- Working with classification prediction data
- Examining confusion matrices
- Using confusion matrices to assess performance
- Beyond accuracy – other performance metrics
- The kappa statistic
- Sensitivity and specificity
- Precision and recall
- The F-measure
- Visualizing performance tradeoffs
- ROC curves
- Estimating future performance
- The holdout method
- Cross-validation
- Bootstrap sampling
7. Tuning stock models for better performance
- Using caret for automated parameter tuning
- Creating a simple tuned model
- Customizing the tuning process
- Improving model performance with meta-learning
- Understanding ensembles
- Bagging
- Boosting
- Random forests
- Training random forests
- Evaluating random forest performance
MINOR TOPICS
8. Understanding classification using the nearest neighbors
- The kNN algorithm
- Calculating distance
- Choosing an appropriate k
- Preparing data for use with kNN
- Why is the kNN algorithm lazy?
9. Understanding classification rules
- Separate and conquer approach
- The One Rule algorithm
- The RIPPER algorithm
- Rules derived 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
- Building a set of rules with 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.