The perceptron convergence procedure:
Training binary output neurons as classifiers
• Add an extra component with value 1 to each input vector.
The “bias” weight on this component is minus the
threshold. Now we can forget the threshold.
• Pick training cases using any policy that ensures that
every training case will keep getting picked
– If the output unit is correct, leave its weights alone.
– If the output unit incorrectly outputs a zero, add the
input vector to the weight vector.
– If the output unit incorrectly outputs a 1, subtract the
input vector from the weight  vector.
• This is guaranteed to find a suitable set of weights if any
such set exists.