In this program you will master Supervised, Unsupervised, Reinforcement, and Deep Learning fundamentals. You will also complete a capstone project in your chosen domain.
In this program, you’ll master valuable machine learning skills that are in demand across countless industries. Investment levels in this space continue to rise, thousands of highly-valued startups have entered the field, and demand for machine learning talent shows no signs of leveling. Program graduates emerge uniquely prepared to excel in machine learning roles.
Intermediate Python programming knowledge, of the sort gained through the Introduction to Programming Nanodegree, other introductory programming courses or programs, or additional real-world software development experience. Including:
Intermediate statistical knowledge, of the sort gained through any of Udacity’s introductory statistics courses (listed in our FAQ at the bottom of this page). Including:
Intermediate calculus and linear algebra mastery, addressed in the Linear Algebra Refresher Course, including:
Looking to refresh your skills or prepare now? Please refer to the list of helpful resources in our FAQ.
In this project, you will create decision functions that attempt to predict survival outcomes from the 1912 Titanic disaster based on each passenger’s features, such as sex and age. You will start with a simple algorithm and increase its complexity until you are able to accurately predict the outcomes for at least 80% of the passengers in the provided data. This project will introduce you to some of the concepts of machine learning as you start the Nanodegree program.
The Boston housing market is highly competitive, and you want to be the best real estate agent in the area. To compete with your peers, you decide to leverage a few basic machine learning concepts to assist you and a client with finding the best selling price for their home. Luckily, you’ve come across the Boston Housing dataset which contains aggregated data on various features for houses in Greater Boston communities, including the median value of homes for each of those areas. Your task is to build an optimal model based on a statistical analysis with the tools available. This model will then used to estimate the best selling price for your client’s home.
As education has grown to rely more and more on technology, more and more data is available for examination and prediction. Logs of student activities, grades, interactions with teachers and fellow students, and more are now available in real time. Educators are after new ways to predict success and failure early enough to stage effective interventions, as well as to identify the effectiveness of different interventions. Toward that end, your goal is to model the factors that predict how likely a student is to pass their high school final exam.
Most of the data one collects doesn’t necessarily fit into nice, labeled categories. Many times not only is data not labeled, but categories are unknown! In this project we will take unstructured data, and then attempt to understand the patterns and natural categories that the data fits into. First you’ll learn about methods that are useful for dealing with data without labels, then you’ll apply this to a dataset of your choice, learning what natural categories sit inside it.
A smartcab is a self-driving car from the not-so-distant future that ferries people from one arbitrary location to another. In this project, you will use reinforcement learning to train a smartcab how to drive.
In this capstone project, you will leverage what you’ve learned throughout the Nanodegree program to solve a problem of your choice by applying machine learning algorithms and techniques. You will first define the problem you want to solve and investigate potential solutions and performance metrics. Next, you will analyze the problem through visualizations and data exploration to have a better understanding of what algorithms and features are appropriate for solving it. You will then implement your algorithms and metrics of choice, documenting the preprocessing, refinement, and postprocessing steps along the way. Afterwards, you will collect results about the performance of the models used, visualize significant quantities, and validate/justify these values. Finally, you will construct conclusions about your results, and discuss whether your implementation adequately solves the problem.