Preprocessing the input vectors
Instead of trying to predict the answer directly from the
raw inputs we could start by extracting  a layer of
“features”.
Sensible if we already know that certain combinations
of input values would be useful (e.g. edges or corners
in an image).
Instead of learning the features we could design them by
hand.
The hand-coded features are equivalent to a layer of
non-linear neurons that do not need to be learned.
So far as the learning algorithm is concerned, the
activities of the hand-coded features are the input
vector.