A neuron-like artificial molecule

This is a neuron-like artificial molecule, simulated in chemlambda.

neuron

It has been described in the older post

How to put a Y combinator into a neuron and lock it with a quine

Made with quiner.sh and the file neuron.mol as input.
If you want to make your own, then follow the instructions from here:

https://github.com/chorasimilarity/chemlambda-gui/blob/gh-pages/dynamic/README.md

It is on the list of demos: http://chorasimilarity.github.io/chemlambda-gui/dynamic/neuron.html

__________
Needs explanations, because this is not exactly the image used for a neuron in a neural network.

_________
1. In neural networks a neuron is a black box with some inputs and some outputs, which computes and sends (the same) signal at the outputs as a function of the signals from the inputs. A connection between an output of one neuron and an an input of another has a weight.

The interpretation is that outputs represent the axon of a neuron, which is like a tree with the root in the neuron’s soma. The inputs of the neuron represents the dendrites. For a neuron in a neural network, a connection between an input (leaf of a dendrite) and an output (leaf of an axon) has a weight because it models an average of many contact points (synapses) between dendrites and axons.

The signals sent represent electrical activity in the neural network.

2. Here, the image is different.

Each neuron is seen as a bag of chemicals. The electrical signals are only a (more easy to measure) aspect of the cascades of chemical reactions which happen inside the neuron’s some, in the dendrites, axon and synapses.

Therefore a neuron in this image is the chemical reactions which happen.

From here we go a bit abstract.

3. B-type unorganised machines. In his fundamental research “Intelligent Machinery” Turing introduced his  B-type neural networks
http://www.alanturing.net/turing_archive/pages/Reference%20Articles/connectionism/Turing%27s%20neural%20networks.html
or B-type unorganised machine, which is made by more or less identical neurons (they compute a boolean function) which are connected via a connection-modifier box.

A connection modifier box has an input and an output, which are part of the connection between two neurons. But it has also some training connections, which can modify the function  computed by the connection modifier.

What is great is that Turing explains that the connection modifier can me made by neurons
http://www.alanturing.net/turing_archive/archive/l/l32/L32-007.html
so that actually a B-type unorganised machine is an A-type unorganised machine (same machine without connection modifiers), where we see the connection modifiers as certain, well chosen patterns of neurons.

OK, the B-type machines compute by signals sent and received by neurons nevertheless. They compute boolean values.

4. What would happen  if we pass from Turing to Church?

Let’s imagine the same thing, but in lambda calculus: neurons which reduce lambda terms, in networks which have some recurring patterns which are themselves made by neurons.

Further: replace the signals (which are now lambda terms) by their chemical equivalent — chemlambda molecules — and replace the connection between them by chemical bonds. This is what you see in the animation.

Connected to the magenta dot (which is the output of the axon) is a pair of nodes which is related to the Y combinator, as seen as a molecule in chemlambda. ( Y combinator in chemlambda explained in this article http://arxiv.org/abs/1403.8046 )

The soma of this neuron is a single node (green), it represents an application node.

There are two dendrites (strings of red nodes) which have each 3 inputs (yellow dots). Then there are two small molecules at the end of the dendrites which are chemical signals that the computation stops there.

Now, what happens: the neuron uses the Y combinator to build a tree of application nodes with the leaves being the input nodes of the dendrites.

When there is no more work to do the molecules which signal these interact with the soma and the axon and transform all into a chemlambda quine (i.e. an artificial bug of the sort I explained previously) which is short living, so it dies after expelling some “bubbles”  (closed strings of white nodes).

5. Is that all? You can take “neurons” which have the soma any syntactic tree of a lambda term, for example. You can take neurons which have other axons than the Y-combinator. You can take networks of such neurons which build and then reduce any chemlambda molecule you wish.
__________________________________________

3 thoughts on “A neuron-like artificial molecule”

  1. Saw your comment over at Wolfram blog Marius, I’m sure you have ideas about how you might employ these networks towards image recognition. Despite claims of a ‘threshold’, I felt that his enthusiasm is more to do with his investment rather than any particular ‘breakthrough’? I presume from my reading, that he’s using conventional neural networks… perhaps with some cellular automata processing on top, not truly distributed computing such as entailed in your chemlambda?

    1. I don’t know what’s inside. Therefore I can’t have any motivated opinion. As concerns self-promotion, why not? He has built Mathematica, he uses it for validation. I bet he would do less self-promotion if his work would have been received better from a social point of view. The only thing which bothers me is the same as with Bruce Dell’s Euclideon: it is not open. So the validation can’t be complete.

  2. Ok, thx. Hadn’t really considered the proprietary aspect… we’ll leave the ‘Elon Musk of math’ to his private perceptron then? Nice post b.t.w, haven’t anything to add, in-part, because I haven’t found the time to get engaged with the demo’s, as yet.

Leave a comment