5 ms·
EDIT: Before you read my comment below, please see https://news.ycombinator.com/item?id=26702815 https://news.ycombinator.com/item?id=26702815 and https://openr
by cs702 6y ago
EDIT: Before you read my comment below, please see https://news.ycombinator.com/item?id=26702815 https://news.ycombinator.com/item?id=26702815 and https://openreview.net/forum?id=PdauS7wZBfC https://openreview.net/forum?id=PdauS7wZBfC for a different view.
--
If the results hold, they seem significant enough to me that I'd go as far as saying the authors of the paper would end up getting an important award at some point, not just for unifying the fields of biological and artificial intelligence, but also for making it trivial to train models in a fully distributed manner, with all learning done locally -- if the results hold.
Here's the paper: "Predictive Coding Approximates Backprop along Arbitrary Computation Graphs"
https://arxiv.org/abs/2006.04182 https://arxiv.org/abs/2006.04182
I'm making my way through it right now.
- JackFr 6y agoMy background is as an interested amateur, but > also for making it trivial to train models in a fully distributed manner, with all learning done locally seems like a really huge development. At the same time I remain pretty skeptical of claims of unifying the fields of biological and artificial intelligence. I think the recent tremendous successes in AI & ML lead to an unjustified over confidence that we are close to understanding the way biological systems must work.
- himinlomax 6y agoIndeed, it's worth mentioning we still have absolutely no idea how memory works.
- andyxor 6y agowe know a lot about memory, but most AI researchers are simply ignorant in neuroscience or cognitive psychology and stick with their comfort zone. Saying "we have no idea" is just being lazy.
- TaupeRanger 6y agoNo. We really have no idea what is going on. We only know some basic psychology about it (holding 7 things in short term, etc.) If we knew something about implementation, we could implement human-like memory.
- andyxor 6y agoI suggest starting with the works by Howard Eichenbaum on memory and Edvard & May-Britt Moser (and John O'Keefe and Lynn Nadel) on place & grid cells. For the latest and greatest see https://twitter.com/doellerlab https://twitter.com/doellerlab https://twitter.com/KordingLab https://twitter.com/KordingLab https://twitter.com/preston_lab https://twitter.com/preston_lab https://twitter.com/memorylab https://twitter.com/memorylab https://twitter.com/ptoncompmemlab https://twitter.com/ptoncompmemlab https://twitter.com/MillerLabMIT https://twitter.com/MillerLabMIT https://twitter.com/hugospiers https://twitter.com/hugospiers Once you start pulling that thread you'd be surprised how much we do know.
- p1esk 6y agoUnless you know of working implementations of memory algorithms I tend to agree that we have no clue how memory works.
- deleted 6y ago[deleted]
- andyxor 6y agothat's called being lazy
- TaupeRanger 6y agoLiterally nothing you posted surprises me in the least, and literally none of this work shows that we know anything at all about how memory is implemented. Perhaps read some of the many takedowns of so called "grid cells" which show that it is completely unsurprising and not at all interesting or noteworthy that activity in some parts of the brain correlates with location information. The important questions always remain unanswered.
- eutropia 6y agoHere's a more recent paper (March, 2021) which cites the above paper: https://arxiv.org/abs/2103.04689 https://arxiv.org/abs/2103.04689 "Predictive Coding Can Do Exact Backpropagation on Any Neural Network"
- cs702 6y agoYup. I'd expect to see many more citations going forward. In particular, I'd be excited to see how this ends up getting used in practice, e.g., training and running very large models running on distributed, masively parallel "neuromorphic" hardware.
- andyxor 6y agothe thing is about every week there is a paper published with groundbreaking claims, with this question in particular being very popular, trying to unify neuroscience and deep learning in some way, in search for computational foundations of AI. Mostly this is driven by success of DL in certain industrial applications. Unfortunately most of these papers are heavy on theory but light on empirical evidence. If we follow the path of natural sciences, theory has to agree with evidence. Otherwise it's just another theory unconstrained by reality, or worse, pseudo-science.
- autopoiesis 6y agoThe paper (arxiv:2103.04689) linked by eutropia above has some empirical evidence on the ML side, showing that performance of predictive coding is not so far off backprop. And there is no shortage of suggestions for how neural circuits might work around the strict requirements of backprop-like algorithms. cs702's original comment above is excessively hyperbolic: the compositional structure of Bayesian inversion is well known and is known to coincide structurally with the backward/forward structure of automatic differentiation. And there have been many papers before this one showing how predictive coding approximates backprop in other cases, so it is no surprise that it can do so on graphs, too. I agree with the ICLR reviewers that this paper is borderline and not in itself a major contribution. But that does not mean that this whole endeavour, of trying to find explicit mathematical connections between biological and artificial learning, is ill motivated.
- eli_gottlieb 6y ago>the compositional structure of Bayesian inversion is well known /u/tsmithe's results on that are well known, now? I can scarcely find anyone to collaborate with who understands them!
- TaupeRanger 6y agoNot only light on evidence, but essential practicality-free. There's no "there" there. Literally nothing useful will come from this.
- abraxas 6y agoI’m going to personally flog any researcher who titles their next paper “Predictive Coding Is All You Need”. You’ve been warned.
- cs702 6y agoThere are already 60+ of those, and counting, all but one of them since Vaswani et al's transformer paper: https://arxiv.org/search/?query=is+all+you+need&searchtype=all&source=header https://arxiv.org/search/?query=is+all+you+need&searchtype=a...
- klmadfejno 6y agoI'm trying to imagine how that works. Imagine you've got a nueral net. One node identifies the number of feet. One node identifies that number of wings. One node identifies color. This feeds into a layer that tries to predict what animal it is. With backprop, you can sort of assume that given enough scale your algo will identify these important features. With local learning, wouldn't you get a tendency to identify the easily identifiable features many times? Is there a need for a sort of middleman like a one arm bandit kind of thing that makes a decision to spawn and despawn child nodes to explore the space more?
- TheRealPomax 6y agoThe fallacy there is the idea that "one node" does anything useful, rather than optimizing itself in a way that you have _no idea_ what it actually codes for, but at the emergent level, you see it contribute to coding for wing detection, or color detection, or more likely actually seventeen different things that are supposedly unrelated, it just happens to be generating values that somehow contribute to a result for the features the various constellations detect. (meaning it might also actually cause one or more constellations to perform worse than if it wasn't contributing, and realistically, you'll never know)
- klmadfejno 6y agoThat's, at best, pedantically true. You can determine the function of individual components of a network, and they will correspond to concrete thing. It's just that the utility of doing this is low in the scheme of things and the function of individual components is going to be fuzzier than nice constructs that humans like to think in. If you wanted to take painstaking steps to align the functionality of nodes to identify specific features per the example, you could do this and the network would work just fine. It's an appropriate way to simplify an explanation of how the model works.
- TheRealPomax 6y agoThat's literally what we cannot do in a neural net. It's why they're so problematic: you can determine the propagation functions of individual nodes perfectly, and that knowledge tells you exactly nothing about all of the many things it's values contribute to. There is no "concrete thing" at the node level: a single node fundamentally can't see a wing, or a color, or anything else, that's only emergent behaviour of node constellations, and one node can contribute to many constellations simultaneously. Heck, there often isn't even a "concrete thing" at the many of the constellation levels, concrete things don't start to emerge until you're looking at the full state of all end nodes.
- YeGoblynQueenne 6y agoNote that the paper was rejected for publication in ICLR 2021: https://openreview.net/forum?id=PdauS7wZBfC https://openreview.net/forum?id=PdauS7wZBfC
- AndrewKemendo 6y agoThat is an awesome site, thanks for posting I had no idea there was a place with that much transparent review (shows how much I've been publishing).
- cs702 6y agoYes, I linked to that same page at the top of my comment :-)
- YeGoblynQueenne 6y agoOops, sorry- I noticed the link but I thought it was a HN url, like the one before... and I wondered why it was greyed-out (visited). But still I didn't check it out. My very bad.
- cs702 6y agoNo worries :-)
- babel_ 6y agoInteresting follow up reading: "Relaxing the Constraints on Predictive Coding Models" (https://arxiv.org/abs/2010.01047 https://arxiv.org/abs/2010.01047), from the same authors. Looks at ways to remove neurological implausibility from PCM and achieve comparable results. Sadly they only do MNIST in this one, and are not as ambitious in testing on multiple architectures and problems/datasets, but the results are still very interesting and it covers some of the important theoretical and biological concerns. "Predictive Coding Can Do Exact Backpropagation on Convolutional and Recurrent Neural Networks" (https://arxiv.org/abs/2103.03725 https://arxiv.org/abs/2103.03725), from different authors. Uses an alternative formulation that means it always converges to the backprop result within a fixed number of iterations, rather than approximately converges "in practice" within 100-200 iterations. Not only is this a stronger guarantee, it means they achieve inference speeds within spitting distance of backprop, levelling the playing field. (Edit: also noted by eutropia) It'd be interesting to see what a combination of these two could do, and at this point I feel like a logical next step would be to provide some setting in popular ML libraries such that backprop can be switched for PCM. Being able to verify this research just be adding a single extra line for the PCM version, and perhaps replicating state-of-the-art architectures, would be quite valuable.
- nl 6y agoI don’t think anyone familiar with the field is in anyway surprised by this results. The breakthrough seems really limited to showing it holds for graphs. We already knew this was practically true though anyway.
- cs702 6y agoAgree, no one is surprised. But the authors successfully show how to train CNNs, RNNs, and LSTM RNNs without backpropagation, i.e., every layer learning only via local rules, without having to wait for gradients to be backpropagated to all layers before the entire model can move on to the next sample. As I understand it, this work has paved a path for training very large networks in massively parallel, fully distributed hardware -- in the not too distant future.
- nl 6y ago> But the authors successfully show how to train CNNs, RNNs, and LSTM RNNs without backpropagation, i.e., every layer learning only via local rules The basic version of this was shown in [1], as mentioned by the ICLR review: "Specifically, the original paper by Whittington & Bogacz (2017) demonstrated that for MLPs, predictive coding converges to backpropagation using local learning rules." That Whittington & Bogacz didn't extend to complex ANN architectures, but it would have been very surprising if what they showed didn't extend to other ANNs. OTOH, while local-only updates are great it doesn't help much if the overall algorithm needs vastly more iterations. Again, from the ICLR review: "The increase in computational cost (of 100x) is mentioned quite late and seems to be glossed over a bit." [1] https://pubmed.ncbi.nlm.nih.gov/28333583/ https://pubmed.ncbi.nlm.nih.gov/28333583/
- cs702 6y agoIn my view, there's a big difference between successfully training, say, LSTM RNNs, versus successfully training "vanilla" MLPs. This work opens the door for using new kinds of massively parallel "neuromorphic" hardware to implement orders of magnitude more layers and units, without requiring greater communications bandwidth between layers, because the model no longer needs to wait until gradients have back-propagated from the last to the first layer before moving on to the next sample. Scaling backpropagation to GPT-3 levels and beyond (think trillions of dense connections) is very hard -- it requires a lot of complicated plumbing and bookkeeping. Wouldn't you want to be able to throw 100x, 1000x, or even 1Mx more fully distributed computing power at problems? This work has paved a path pointing in that direction :-)