213. Nonlinear Modeling and Optimization
Use python, scipy, and optimization to choose the best breed of dog for you
In this course, we'll walk through the process of using machine learning to solve the problem of which puppy to adopt. We’ll go all the way from defining a good question to building and testing a program to answer it. Along the way, we’ll get to explore and repair a data set, deep dive into model selection and optimization, create some plots of the results, and build a command line interface for getting answers. The star of the show will be a polynomial regression algorithm that we will write from scratch. When you’re done you’ll know how to create a polynomial regressor of any order--linear, quadratic, cubic, or higher--and how to automatically choose the one that best fits your data set.
What you’ll learn
- Fit polynomial functions to a data set, including linear regression, quadratic regression, and higher order polynomial regression, using scikit-learn's optimize package.
- Build an optimization algorithm from scratch, using Monte Carlo cross validation.
- Choose the best model from among several candidates.
- Choose appropriate cost functions for optimization.
- Clean a dataset, handling missing and corrupted values.
- Perform non-linear operations to transform data into domain-relevant features.
- Create scatterplots and function plots in matplotlib.
- Build a command-line user interface in python.
- Create classes and use object-oriented programming concepts in python.
"it is through his course I learnt how to be an independent data scientist. Vital is asking the right question and then search for the dataset and not the other way. " - S. Mitra
"During the first course (Decision Trees), I was taken back by Brandon’s deep mastery of ML and his ability to communicate his knowledge. After watching his latest course, I’d put him #1 in the world of applied ML teachers! The latest course is incredible. Get ready to make lots of notes (assumptions, blind spots, train/test data with interpolation or extrapolation). And, drinking tea and gradient descent is absolutely spectacular! " - Franco A
"This course describes the very nuances of ML and modelling in terms of asking questions (hypothesis), setting up a cost function and optimizing it and then into building a model. Much different from various other courses that go directly into using models. " - A. Roy
"Brandon has this amazing way to describe the complex of concepts in a highly intuitive analogy. I immensely recommend this course to all the ML / Data Science enthusiast trying to make a mark in this field. " - B. Sharma
I love solving puzzles and building things. Machine learning lets me do both. I got started by studying robotics and human rehabilitation at MIT (MS '99, PhD '02), moved on to machine vision and machine learning at Sandia National Laboratories, then to predictive modeling of agriculture DuPont Pioneer, and cloud data science at Microsoft. At Facebook I worked to get internet and electrical power to those in the world who don't have it, using deep learning and satellite imagery and to do a better job identifying topics reliably in unstructured text. Now at iRobot I work to help robots get better and better at doing their jobs. In my spare time I like to rock climb, write robot learning algorithms, and go on walks with my wife and our dog, Reign of Terror.