Description
Learn the fundamentals of machine learning algorithms, beginning with data cleaning and supervised models. Then, investigate deep and unsupervised learning. At each stage, gain hands-on experience by applying your knowledge to coding exercises and projects.
Syllabus:
Course 1: Supervised Learning
Regression
- Learn the difference between Regression and Classification
- Train a Linear Regression model to predict values
- Learn to predict states using Logistic Regression
Perceptron Algorithms
- Learn the definition of a perceptron as a building block for neural networks, and the perceptron algorithm for classification.
Decision Trees
- Train Decision Trees to predict states
- Use Entropy to build decision trees, recursively
Naive Bayes’
- Learn Bayes’ rule, and apply it to predict cases of spam messages using the Naive Bayes algorithm.
- Train models using Bayesian Learning
- Complete an exercise that uses Bayesian Learning for natural language processing
Support Vector Machines
- Learn to train a Support Vector Machines to separate data, linearly
- Use Kernel Methods in order to train SVMs on data that is not linearly separable
Ensemble of Learners
- Build data visualizations for quantitative and categorical data.
- Create pie, bar, line, scatter, histogram, and boxplot charts.
- Build professional presentations.
Evaluation Metrics
- Learn about different metrics to measure model success.
- Calculate accuracy, precision, and recall to measure the performance of your models.
Training and Tuning Models
- Train and test models with Scikit-learn.
- Choose the best model using evaluation techniques like cross-validation and grid search.
Project: Find Donors for CharityML
CharityML is a fictitious charity organisation based in the heart of Silicon Valley that was founded to provide financial assistance to people interested in learning machine learning. CharityML has decided to send letters to residents of California, but only to those who are most likely to donate to the charity, in order to broaden their potential donor base. Your objective will be to evaluate and optimise several different supervised learning algorithms in order to determine which algorithm will provide the highest donation yield while adhering to some marketing constraints.
- Supervised learning
- Model evaluation and comparison
- Model tuning in response to constraints
Course 2: Neural Networks
Introduction to Neural Networks
- Learn the foundations of deep learning and neural networks.
- Implement gradient descent and backpropagation in Python.
Implementing Gradient Descent
- Implement gradient descent using NumPy matrix multiplication.
Training Neural Networks
- Learn several techniques to effectively train a neural network.
- Prevent overfitting of training data and learn best practices for minimizing the error of a network.
Deep Learning with PyTorch
- Learn how to use PyTorch for building deep learning models.
Project: Create Your Own Image Classifier
As a machine learning engineer at a fictitious self-driving car startup, you've been asked to help decide whether to build or buy an object detection algorithm for roadside objects. Detectocorp claims an accuracy rate of 80% on the CIFAR-10 dataset, a benchmark used to evaluate the state of the art for computer vision systems.
You will experiment with training a neural network to recognise objects in images and compare the model's performance to that of Detectocorp.
Course 3: Unsupervised Learning
Clustering
- Learn the basics of clustering data
- Cluster data with the K-means algorithm
Hierarchical and Density-Based Clustering
- Cluster data with Single Linkage Clustering.
- Cluster data with DBSCAN, a clustering method that captures the insight that clusters are dense group of points
Gaussian Mixture Models
- Cluster data with Gaussian Mixture Models
- Optimize Gaussian Mixture Models with and Expectation Maximization
Dimensionality Reduction
- Reduce the dimensionality of the data using Principal
- Component Analysis and Independent Component Analysis
Project: Creating Customer Segments
In this project, you will use unsupervised learning techniques to identify customer segments hidden in product spending data collected for customers of a wholesale distributor in Lisbon, Portugal. You will first investigate and pre-process the data by scaling each product category and then identifying (and removing) undesirable outliers. You will apply PCA transformations to the cleaned customer spending data and implement clustering algorithms to segment the transformed customer data. Finally, you will compare the segmentation discovered with additional labelling and consider how this information can help the wholesale distributor with future service changes.
Key Competencies Demonstrated:
- Data cleaning
- PCA dimension reduction
- Unsupervised clustering