Perceptron

A perceptron is an artificial neural network. A perceptron consists of a distributed input representation, which performs a simple, simultaneous process to compute a function.

Goal

Why are you learning?

The goal of a perception is to classify inputs into two groups: evokes action potential (FIRE) or does not (NO FIRE). Normally, what’s really important here is why we are classifying something into two groups. Let’s design a perceptron to classify whether an object is ferromagnetic or not.

Model

Input

What information is your model considering?

The model requires a vector of real valued inputs, we denote as

\[ X_N = [x_0, x_1, x_2, x_3, ... x_n] \]
.

For our example, we should make some data. Let’s take 5 objects as reference objects. To make a data point for our model, we will measure the distance between a new object and our reference objects when they’re finished moving after being placed exactly 2 cm away from each other. Here, are the distances for one object o1:

Reference Object 1 2.0 cm
Reference Object 2 2.3 cm
Reference Object 3 1.9 cm
Reference Object 4 2.0 cm
Reference Object 5 1.9 cm

We will represent this input as

\[ X_{o1} = [2.0, 2.3, 1.9, 2.0, 1.9] . \]

Output

What responses are allowed?

In a perceptron, there are only two responses allowed: fire or not fire.

For our example, we will say that perceptron fires only when the input is ferromagnetic!

Hypothesis Space

What mappings between input and output are possible?

A perceptron only considers linear mappings between classes.

Inductive Bias

How does the model behave when there’s no data?

A perceptron’s model parameters, or weights, are normally randomly initialized. In this case, we expect the perceptron to have a random classification boundary. However, we expect this classification boundary to still be linear because a perceptron can only entertain linear hypotheses.

Update Rules

How does the model change as you observe more data?

The perceptron uses the delta rule to update its weights. Every time the perceptron misclassifies an input, it rotates its linear decision boundary in the direction that allows it to correctly classify the input. If the data are linearly separable, then the perceptron will eventually stop updating, having converged on an acceptable hypothesis.

Environment

What constrains the data?

Is the training environment comparable to the environment you hope to achieve your goal in?

Try thinking about these questions in relation to our magnetism example.

On the next page, we will walk through the perceptron learning rule for our example.