Skip to content

Introduction to Machine Learning Course

Free Course

Pattern Recognition for Fun and Profit

Related Nanodegree Program

Introduction to Programming

About this course

Machine Learning is a first-class ticket to the most exciting careers in data analysis today. As data sources proliferate along with the computing power to process them, going straight to the data is one of the most straightforward ways to quickly gain insights and make predictions.

Machine learning brings together computer science and statistics to harness that predictive power. It’s a must-have skill for all aspiring data analysts and data scientists, or anyone else who wants to wrestle all that raw data into refined trends and predictions.

This is a class that will teach you the end-to-end process of investigating data through a machine learning lens. It will teach you how to extract and identify useful features that best represent your data, a few of the most important machine learning algorithms, and how to evaluate the performance of your machine learning algorithms.

This course is also a part of our Data Analyst Nanodegree.

What you will learn

  1. Welcome to Machine Learning
    • Learn what Machine Learning is and meet Sebastian Thrun!
    • Find out where Machine Learning is applied in Technology and Science.
  2. Naive Bayes
    • Use Naive Bayes with scikit learn in python.
    • Splitting data between training sets and testing sets with scikit learn.
    • Calculate the posterior probability and the prior probability of simple distributions.
  3. Support Vector Machines
    • Learn the simple intuition behind Support Vector Machines.
    • Implement an SVM classifier in SKLearn/scikit-learn.
    • Identify how to choose the right kernel for your SVM and learn about RBF and Linear Kernels.
  4. Decision Trees
    • Code your own decision tree in python.
    • Learn the formulas for entropy and information gain and how to calculate them.
    • Implement a mini project where you identify the authors in a body of emails using a decision tree in Python.
  5. Choose your own Algorithm
    • Decide how to pick the right Machine Learning Algorithm among K-Means, Adaboost, and Decision Trees.
  6. Datasets and Questions
    • Apply your Machine Learning knowledge by looking for patterns in the Enron Email Dataset.
    • You'll be investigating one of the biggest frauds in American history!
  7. Regressions
    • Understand how continuous supervised learning is different from discrete learning.
    • Code a Linear Regression in Python with scikit-learn.
    • Understand different error metrics such as SSE, and R Squared in the context of Linear Regressions.
  8. Outliers
    • Remove outliers to improve the quality of your linear regression predictions.
    • Apply your learning in a mini project where you remove the residuals on a real dataset and reimplement your regressor.
    • Apply your same understanding of outliers and residuals on the Enron Email Corpus.
  9. Clustering
    • Identify the difference between Unsupervised Learning and Supervised Learning.
    • Implement K-Means in Python and Scikit Learn to find the center of clusters.
    • Apply your knowledge on the Enron Finance Data to find clusters in a real dataset.
  10. Feature Scaling
    • Understand how to preprocess data with feature scaling to improve your algorithms.
    • Use a min mx scaler in sklearn.

Prerequisites and requirements

To succeed in this course, you must be proficient at programming in Python and basic statistics. If you need a refresher on any of these topics, you can check out these courses:

One additional course that would be nice to have is Intro to Data Science, as this will get you familiar with scientific problem-solving. However, completion of that class isn't required for success. We will also use a tiny bit of git, which you can also learn about on Udacity.

One thing that we don’t require is previous exposure to machine learning. If you’re a machine learning beginner, you’re in the right place.

See the Technology Requirements for using Udacity.

Why take this course?

In this course, you’ll learn by doing! We’ll bring machine learning to life by showing you fascinating use cases and tackling interesting real-world problems like self-driving cars. For your final project you’ll mine the email inboxes and financial data of Enron to identify persons of interest in one of the greatest corporate fraud cases in American history.

When you finish this introductory course, you’ll be able to analyze data using machine learning techniques, and you’ll also be prepared to take our Data Analyst Nanodegree. We’ll get you started on your machine learning journey by teaching you how to use helpful tools, such as pre-written algorithms and libraries, to answer interesting questions.

Learn with the best.

  • Katie Malone
    Katie Malone


  • Sebastian Thrun
    Sebastian Thrun