Machine Learning

From Adam Colton
Jump to navigation Jump to search

Week 1 - Intro

What is Machine Learning

  • Checkers playing computer (Arthur Samuel)

Supervised Learning

Right answer is provided. Types of problems

  • Regression
  • Classification

Unsupervised Learning

The data has no "correct answer"

Cocktail party algorithm

Week 1 - Linear Regression with One variable

Model Representation

Working with housing prices in Portland as our dataset.

Symbols used

  • m - number of training examples
  • x - input variables
  • y - output variable
  • h - hypothesis (function h(x) = y)

Univariate linear regression

Cost Function

hΘ(x) = Θ0 + Θ1x

sum of square error as our cost function. He's using 1/2m rather than 1/m, I'm not sure why.

Cost Function - Intuition : 1

Demo of technique.

Cost Function - Intuition : 2

Contour plots.

Gradient Descent

Θj = Θj - α (d/dΘj) * J(Θ0, Θ1)

Gradient Descent Intuition

Explaining gradient descent.

Gradient Descent for Linear Regression

  • Θ0 = Θ0 - α(1/m) Σm (hΘ(xi) - yi)
  • Θ1 = Θ1 - α(1/m) Σm (hΘ(xi) - yi) * xi

Linear Regression with Multiple Variables - Week 2

Multiple Features

Gradient Descent for Multiple Variables

  • Parameters: Θ0,Θ1,...,Θn
  • Cost Function: J( Θ0,Θ1,...,Θn ) or simply J(Θ)

Much like before, gradient descent is calculated for all Θs before being applied. To make the formula more uniform we set x0,i = 1 for all i then the formula becomes

 Θj = Θj - (α/m) * Σi=1m (h(Θ, xi) - yi) * xi,j

Note: I may have my notation for rows and columns mixed up in the formula - double check before using.

Gradient Descent in Practice 1 - Feature Scaling

Try to make features on a similar scale. In the house example, if our features are size 0-2000ft2 and bedrooms (1-5), it will take a long time to converge, because the first feature is three orders of magnitude larger. Either scale bedrooms up or the ft2 down. A simple way to do this is scale all features filling the range (-1, 1). If future data lies outside this range, it is not a problem. If future data falls way outside this range, you'll have bigger problems.

Try and set the mean to 0. This is "mean normalization".

Of course, none of this applies to x0 = 1.

Gradient Descent in Practice 2 - Learning Rate

Features and Polynomial Regression

Normal Equation

Normal Equation Noninvertibility