<< Chapter < Page Chapter >> Page >

Supervised learning

Let's start by talking about a few examples of supervised learning problems. Suppose we have a dataset giving the living areas and prices of 47 houses fromPortland, Oregon:

Living area (feet 2 ) Price (1000$s)
2104 400
1600 330
2400 369
1416 232
3000 540

We can plot this data:

scale of housing prices. square footage vs price.

Given data like this, how can we learn to predict the prices of other houses in Portland, as a function of the size of their living areas?

To establish notation for future use, we'll use x ( i ) to denote the “input” variables (living area in this example), also called input features , and y ( i ) to denote the “output” or target variable that we are trying to predict (price). A pair ( x ( i ) , y ( i ) ) is called a training example , and the dataset that we'll be using to learn—a list of m training examples { ( x ( i ) , y ( i ) ) ; i = 1 , ... , m } —is called a training set . Note that the superscript “ ( i ) ” in the notation is simply an index into the training set, and has nothing to do with exponentiation. We will also use X denote the space of input values, and Y the space of output values. In this example, X = Y = R .

To describe the supervised learning problem slightly more formally, our goal is, given a training set, to learn a function h : X Y so that h ( x ) is a “good” predictor for the corresponding value of y . For historical reasons, this function h is called a hypothesis . Seen pictorially, the process is thereforelike this:

training set leads to learning algorithm leads to hypothesis. x according to the hypothesis predicts y

When the target variable that we're trying to predict is continuous, such as in our housing example, we call the learning problem a regression problem. When y can take on only a small number of discrete values (such as if, given the living area,we wanted to predict if a dwelling is a house or an apartment, say), we call it a classification problem.

Linear regression

To make our housing example more interesting, let's consider a slightly richer dataset in which we also know the number of bedrooms in each house:

Living area (feet 2 ) #bedrooms Price (1000$s)
2104 3 400
1600 3 330
2400 3 369
1416 2 232
3000 4 540

Here, the x 's are two-dimensional vectors in R 2 . For instance, x 1 ( i ) is the living area of the i -th house in the training set, and x 2 ( i ) is its number of bedrooms. (In general, when designing a learning problem, it will be up to you to decide what features to choose, so if youare out in Portland gathering housing data, you might also decide to include other features such as whether each house has a fireplace, the number ofbathrooms, and so on. We'll say more about feature selection later, but for now let's take the features as given.)

To perform supervised learning, we must decide how we're going to represent functions /hypotheses h in a computer. As an initial choice, let's say we decide to approximate y as a linear function of x :

h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2

Here, the θ i 's are the parameters (also called weights ) parameterizing the spaceof linear functions mapping from X to Y . When there is no risk of confusion, we will drop the θ subscript in h θ ( x ) , and write it more simply as h ( x ) . To simplify our notation, we also introduce the convention of letting x 0 = 1 (this is the intercept term ), so that

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Machine learning. OpenStax CNX. Oct 14, 2013 Download for free at http://cnx.org/content/col11500/1.4
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Machine learning' conversation and receive update notifications?

Ask