about
Cellular Automata as Convolutional Neural Networks (arxiv.org)
87 points by benibraz on Aug 12, 2020 | hide | past | pdf | 14 comments on HN

In plain words: A cellular automaton is a grid where each cell updates by a fixed rule from its neighbors; any such rule can be written as a convolutional network that learns it from video. Simple rule tables gave networks layered, specialized structure; complex rules gave shallower ones.

Abstract · Cellular automata as convolutional neural networks

Deep learning techniques have recently demonstrated broad success in predicting complex dynamical systems ranging from turbulence to human speech, motivating broader questions about how neural networks encode and represent dynamical rules. We explore this problem in the context of cellular automata (CA), simple dynamical systems that are intrinsically discrete and thus difficult to analyze using standard tools from dynamical systems theory. We show that any CA may readily be represented using a convolutional neural network with a network-in-network architecture. This motivates our development of a general convolutional multilayer perceptron architecture, which we find can learn the dynamical rules for arbitrary CA when given videos of the CA as training data. In the limit of large network widths, we find that training dynamics are nearly identical across replicates, and that common patterns emerge in the structure of networks trained on different CA rulesets. We train ensembles of networks on randomly-sampled CA, and we probe how the trained networks internally represent the CA rules using an information-theoretic technique based on distributions of layer activation patterns. We find that CA with simpler rule tables produce trained networks with hierarchical structure and layer specialization, while more complex CA produce shallower representations---illustrating how the underlying complexity of the CA's rules influences the specificity of these internal representations. Our results suggest how the entropy of a physical process can affect its representation when learned by neural networks.

William Gilpin
arXiv:1809.02942 · nlin.CG, cond-mat.dis-nn, cs.NE, physics.comp-ph · submitted Sep 9, 2018 · updated Jan 16, 2020
abstract · pdf · html · 8 pages, 4 figures (+Appendix)

add comment on HN
Also discussed: Sep 2018 (83 points, 6 comments)

See also: "learning" Conway's Game of Life configurations by gradient descent.

https://hardmath123.github.io/conways-gradient.html

I wonder if it is because using backpropagation all non-linear functions are chained together when the weights are learnt? Is it naive to think by that formulation the results will be quite similar since the final model equations are close?
Excellent write up. I've coincidentally been experimenting with the same thing. Any idea whether this approach could be used to speed up a search for exact solutions?
Not sure I understand the importance of this...
Indeed, CA can be represented by simple combinations of boolean functions, obviously by NN also, which is a combination of similar nonlinear functions.
A wide enough NN can represent any arbitrary binary function, but it's not obvious that one can learn it.
Yet the best NNs are deep, not wide.
What do you mean by 'the best'? Deeper architectures are popular because they quiet easy to train. They do work well in practice on many tasks (especially vision) but they have their limits.

Infinite wide networks are a newly active field and has recently shown some promising results, theoretically [1, 2] and empirically [3].

[1] https://arxiv.org/abs/2001.06931 [3] https://arxiv.org/abs/1806.07572 [2] https://ai.googleblog.com/2020/03/fast-and-easy-infinitely-w...

> We show that any CA may readily be represented using a convolutional neural network with a network-in-network architecture.
I take it this is not a bidirectional mapping?
I was hoping to see some mention of rule 110
kind of obvious
Can you please tell us how is it obvious? I am interested in the network in network part