| Neural Networks are an interesting field of computer
science that are useful for pattern recognition including 2D and 3D object
recognition, fuzzy logic, and solving problems that are difficult to solve
procedurally. Rather than have a tutorial of my own, I have compiled an
extensive list of resources that I found invaluable online in building my
own Neural Network. Neural Networks are a collection of layers of
artificial neurons which are interconnected in various patterns.
Neural Networks are a black box in that they arrange themselves and rely
on brute force trial and error. One idea that I found fascinating
was the possibility of time-dependent Neural Networks, which would allow
for looping amongst the neuron layers. Such loops could simulate
memory via finite state machines!
There are many methods to calculating the error in a Neural Network.
While most sites rely on the use of a simple two-layer arrangement,
Colin
Fahey's site allows for multiple layers. One approach which I found
fascinating was on the AI-Junkie's tutorial, involving a Genetic Algorithm
to compute the weights and bias changes, rather than the popular back
propagation of nearly every other website.
For assistance in building your own Neural Networks, please see my many
examples listed at the bottom of the page. Each site has tutorials
which I have read and were absolutely essential in my success at creating
my own Neural Networks.
Perhaps one of the most famous neural network examples is training the
network to do the Boolean operation XOR. Below is the Excel graph of
my trained Neural Network's output.

Download the program's binary
here. The
Excel data is also available here. |