Original Post
If anyone has any ideas about this, PLEASE post! And please correct me wherever I may be wrong. I've looking into the way biological neural networks function, and I'm starting to think that the current ANN models are not as accurate as they should be. First of all I think the ART (adaptive resonance theory) network is a good representation of memory storage and recall. It maps an input vector to an output vector. In this model, each neuron in the storage layer contains a prototype vector. I personally think a memory is an output vector obtained though the propagation of a set of input signals and the connection weights between neurons (and chemicals also take part in this). I think that the storage of the prototype vectors in the ART is incorrect. Rather than storing a separate vector in each neuron, these vectors should each be represented by sets of neurons. So basically the prototype vector is distributed across multiple neurons rather than being local to a single neuron. Second, I've been thinking about the way neurons are represented. In most models a network of neurons is represented by a graph, and each neuron is just another instantiation of an object. With these models, neurons do not operate simultaneously. The program must loop through each individual neuron, calculating their activation levels one by one. My idea (maybe this has been done before) is to make a threaded neural network, where each neuron is a separate thread. That way, a neuron could process incoming signals and fire WHEN it receives them rather than when the program gets to it. What do you think?