
Begin with no prior machine learning experience and learn through hands-on coding to train machine learning and deep learning models for classifying flowers, predicting house prices, and recognizing digits.
Create a brand new, self-contained environment in Anaconda Navigator, choose Python 3.7, and install Jupyter Lab and Notebook to support machine learning development.
Launch the Hello world example in JupyterLab to learn Python basics, including code and markdown cells, printing text, and using Python as a calculator.
Explore the iris project and learn to set up the Python data analysis stack in a Jupyter notebook, using NumPy, Pandas, Seaborn, and Matplotlib, while handling module not found error.
Read iris.data into memory with pandas read_csv, handle no-header data, rename columns to sepal length, sepal width, petal length, petal width, and class, then inspect the first rows with head.
Explore seaborn visualizations on the iris dataset, including pair plots, histograms, violin plots, box plots, scatter plots, and matrix plots with KDE insights for distribution and class separation.
Explore exploratory data analysis on the Boston housing dataset by loading a csv file, computing descriptive statistics (mean, median, std, percentiles), and assessing data distribution for feature selection.
Explore correlation analysis and feature selection on the Boston housing dataset using pandas corr and seaborn heatmaps to identify predictive features like RM and LSTAT for regression modeling.
Analyze correlations and perform feature selection for the median value target using exploratory data analysis and a heatmap of features like crim, lstat, and room number.
Use scikit-learn to build a simple linear regression model with one feature, rooms, predicting the Boston housing value; fit, visualize, and discuss data noise and outliers.
Apply the five-step machine learning process for linear regression: choose a model, set hyperparameters, arrange data into features and target, fit, and predict, with scikit-learn guidance.
Explore robust regression to mitigate outlier effects in linear regression, using the RANSAC algorithm to identify inliers and outliers, fit a reliable line, and compare with standard linear regression.
Evaluate regression model performance using train test split, residual analysis, mean squared error, and r square to compare training versus test data.
Explore multiple regression with multiple features and the intercept, comparing it to simple regression. Use the Boston housing data and statsmodels to fit and predict.
Explore how regularized regression improves linear models with outliers by applying ridge, lasso, and elastic net to shrink or select features.
Explore polynomial regression to model non-linear relationships by transforming features with degree two and three terms and fitting linear models using scikit-learn.
Explore feature importance with AdaBoost and random forest on Boston housing data, highlighting Lsat, Rm, Des, and compare it to a decision tree regressor using mean square error and R-squared.
Understand the variance-bias trade-off and its impact on model generalization, then learn how validation and learning curves reveal underfitting, overfitting, and the role of hyperparameters such as alpha and gamma.
Explore learning curves and how training and validation scores converge as data grows, revealing bias and variance trade-offs; adjust model complexity and regularization to improve convergence.
Explore cross-validation to better estimate model generalization by training on multiple folds and testing on held-out data, using holdout and k-fold schemes.
Explore cross-validation concepts and practical workflows in scikit-learn, including train-test split, hold-out test, k-fold and stratified k-fold, with pipelines, scaling, PCA, and SVM regression.
Learn logistic regression as a go-to linear classifier for two-class problems, using the sigmoid function, maximum likelihood learning, and scikit-learn to fit data and make predictions.
Explore classification-based supervised learning, preparing data for a binary yes/no task, and evaluate performance with precision, recall, F1, ROC, and a benchmark model using mnist.
Learn data preparation for MNIST by loading the mnist_784 dataset via fetch_openml, revealing 70,000 samples with 784 pixel features and labels 0–9, then visualize and preprocess before fitting.
Split the 70,000 MNIST digits into 60,000 training and 10,000 test sets, then train a binary classifier with stochastic gradient descent to distinguish zero from nonzero digits.
Demonstrates using cross-validated predictions to build and interpret a confusion matrix for an unbalanced MNIST digit classifier, showing why accuracy can mislead and how true/false positives shape evaluation.
Recall measures the proportion of actual positives detected by the classifier, also called sensitivity, computed as true positives divided by true positives plus false negatives.
The F1 score blends precision and recall as their harmonic mean, rewarding balanced classifiers; scikit-learn's f1_score computes it from true labels and predictions.
Explore how to adjust the precision-recall trade-off by plotting precision against recall and selecting thresholds to favor higher precision or higher recall, with practical examples.
Compare the ROC and PR curves to evaluate classifiers, use scikit-learn to compute area under the curve, and contrast SVM with random forest for precision and recall.
Explore the polynomial kernel with degree three and the kernel trick to transform data for linear separation, and compare its performance to a linear SVM while noting overfitting risks.
Explore how gaussian radial basis function enables non-linear modeling with support vector machines, using scaling, train/test split, cross-validation, and grid search to optimize C and gamma in an rbf kernel.
Explore how support vector regression extends SVM to regression with linear, polynomial, and rbf kernels, and compare mean square error and R square on the Boston housing data.
Train a decision tree with scikit-learn on simple data, fit and predict, then visualize the tree using graphviz and python-graphviz on the iris dataset for binary and multi-class classification.
Visualize the decision boundary of a decision tree on iris data using petal length and width; discuss Gini impurity, ID3/4.5, CART, and potential overfitting.
Explore decision tree regression with scikit-learn, comparing max depth 2 and 5 to illustrate overfitting amid noise and outliers, with regularization via a minimum leaf size 10 for better generalization.
End-to-end modeling using decision trees demonstrates grid search for minimum samples leaf, improving accuracy from 74% to 83%. Learn overfitting avoidance, max depth of three, PCA, move to random forests.
Explore Google Colab to run notebooks in your browser with GPU or TPU acceleration, replacing local Jupyter setups and simplifying data uploads with files.upload.
Explore ensemble learning by combining diverse models, including classifiers and regressors, through bagging, pasting, boosting, and stacking to improve predictions.
Explore bagging as an ensemble method using bootstrap sampling with replacement, combining base trees by voting or averaging, demonstrated on the Titanic dataset.
Learn how AdaBoost, an ensemble method, trains a sequence of weak learners sequentially to form a strong predictor by reweighting misclassified samples and combining them via a weighted majority vote.
Learn gradient boosting machines that add decision trees sequentially to fix residuals in regression and classification, guided by loss functions like mean squared error and logarithmic loss.
Install XGBoost on Windows and Mac using conda, then verify the installation in a Jupyter notebook. Note small data and imbalanced binary targets that affect training versus test data.
Explore extreme gradient boosting (XGBoost), a regularized objective blending training loss and regularization to curb overfitting and boost performance, with Titanic data and 10-fold CV.
Apply machine learning models—decision tree, bagging, RandomForest, AdaBoost, AdaBoost with RandomForest, and XGBoost—to the IBM HR analytics employee attrition dataset from Kaggle, using one hot encoding and train-test split.
Explore ensembles of ensembles and stacking with different classifiers and meta classifiers. Evaluate probability-based meta classifiers on top of decision tree and random forest outputs.
Explore ensembles of ensembles using random forest, AdaBoost, and bagging in Python to build a three-layer classifier system, evaluate ROC and recall, and address unbalanced class challenges.
Explore dimensionality reduction in unsupervised learning with PCA and LDA, learn how principal components capture variance and enable class separation, with notes on scaling and preprocessing in machine learning.
Explore linear principal component analysis, using singular value decomposition to project data into orthogonal principal components that maximize variance, enabling dimensionality reduction, data compression, and visualization.
Apply PCA to the wine dataset with standard scaling to extract principal components and analyze explained variance. Visualize loadings and determine the number of components to cover 80–90% of variance.
Apply Kernel PCA to the iris dataset (versicolor and virginica) and compare logistic regression performance on original versus kernel-transformed features to demonstrate improved separation.
Apply PCA and LDA to Project Abalone to predict abalone age from eight measurements, using preprocessing and standardization, and identify components that explain variability (84% with one, 92.6% with two).
Explore unsupervised learning through clustering, including hierarchical Ward's method and various linkage options. See practical visualization with dendrograms, fclusters, and iris data using mlxtend and ensemble classifiers.
Discover k-means clustering, centroids, and inertia, and learn how to choose the number of clusters with the elbow method, silhouette analysis, and mean shift.
The Complete Machine Learning Course in Python has been FULLY UPDATED for November 2019!
With brand new sections as well as updated and improved content, you get everything you need to master Machine Learning in one course! The machine learning field is constantly evolving, and we want to make sure students have the most up-to-date information and practices available to them:
Brand new sections include:
Foundations of Deep Learning covering topics such as the difference between classical programming and machine learning, differentiate between machine and deep learning, the building blocks of neural networks, descriptions of tensor and tensor operations, categories of machine learning and advanced concepts such as over- and underfitting, regularization, dropout, validation and testing and much more.
Computer Vision in the form of Convolutional Neural Networks covering building the layers, understanding filters / kernels, to advanced topics such as transfer learning, and feature extractions.
And the following sections have all been improved and added to:
All the codes have been updated to work with Python 3.6 and 3.7
The codes have been refactored to work with Google Colab
Deep Learning and NLP
Binary and multi-class classifications with deep learning
Get the most up to date machine learning information possible, and get it in a single course!
* * *
The average salary of a Machine Learning Engineer in the US is $166,000! By the end of this course, you will have a Portfolio of 12 Machine Learning projects that will help you land your dream job or enable you to solve real life problems in your business, job or personal life with Machine Learning algorithms.
Come learn Machine Learning with Python this exciting course with Anthony NG, a Senior Lecturer in Singapore who has followed Rob Percival’s “project based" teaching style to bring you this hands-on course.
With over 18 hours of content and more than fifty 5 star ratings, it's already the longest and best rated Machine Learning course on Udemy!
Build Powerful Machine Learning Models to Solve Any Problem
You'll go from beginner to extremely high-level and your instructor will build each algorithm with you step by step on screen.
By the end of the course, you will have trained machine learning algorithms to classify flowers, predict house price, identify handwritings or digits, identify staff that is most likely to leave prematurely, detect cancer cells and much more!
Inside the course, you'll learn how to:
Gain complete machine learning tool sets to tackle most real world problems
Understand the various regression, classification and other ml algorithms performance metrics such as R-squared, MSE, accuracy, confusion matrix, prevision, recall, etc. and when to use them.
Combine multiple models with by bagging, boosting or stacking
Make use to unsupervised Machine Learning (ML) algorithms such as Hierarchical clustering, k-means clustering etc. to understand your data
Develop in Jupyter (IPython) notebook, Spyder and various IDE
Communicate visually and effectively with Matplotlib and Seaborn
Engineer new features to improve algorithm predictions
Make use of train/test, K-fold and Stratified K-fold cross validation to select correct model and predict model perform with unseen data
Use SVM for handwriting recognition, and classification problems in general
Use decision trees to predict staff attrition
Apply the association rule to retail shopping datasets
And much much more!
No Machine Learning required. Although having some basic Python experience would be helpful, no prior Python knowledge is necessary as all the codes will be provided and the instructor will be going through them line-by-line and you get friendly support in the Q&A area.
Make This Investment in Yourself
If you want to ride the machine learning wave and enjoy the salaries that data scientists make, then this is the course for you!
Take this course and become a machine learning engineer!
This course is eligible for the Codestars Certificate Authority (CCA) certificate. Students can take the official exam via codestarscom, and those who pass the quiz will receive their CCA certificate. (more details in the course!)