Hacker News new | past | comments | ask | show | jobs | submit login
A Brief Overview of Deep Learning (yyue.blogspot.com)
86 points by tim_sw on Feb 10, 2015 | hide | past | favorite | 16 comments



This is not scientific fact since it is conceivable that real neurons are much more powerful than artificial neurons, but real neurons may also turn out to be much less powerful than artificial neurons. In any event, the above is certainly a plausible hypothesis.

Biological neurons are indeed more powerful than (most) artificial neural network models because these models discard important characteristics of biological neurons:

* Spiking: Most artificial models are 'rate-based', where they gloss over the spiking behaviour of neurons by only modelling the firing rate. This discards all the various kinds of spiking behaviours (intrinsically spiking, resonators, bursting, etc.) as well as the relative timing of spikes. The relative timing is the basis for spike-timing dependent plasticity (STDP), which enables Hebbian learning and long-term potentiation -- two of the ways that networks learn to wire themselves together and process information.

* Conduction delays: Biological neural networks have a delay between when a spike is generated at the axon hillock and when it arrives at the postsynaptic neuron's dendritic arbour. This delay acts as a kind of like delay line memory in computers, where information can be 'stored' in-transit for short periods of time (in the ballpark of 0.5-40ms). And because different axons have different delays, information can be integrated over time by having one axon with a short delay and one with a long delay both end up at the same postsynaptic neuron.


But on a computational power level, does that actually make them more powerful?

What I mean is that Finite state machines are less powerful computationally than context free grammars. A FSM cannot compute certain things that a CFG can. Further, a CFG can't compute certain things that a Turing machine can. But we do know that Neural networks like the ones being used for Deep Learning can compute anything a Turing machine can, and anything a Turing machine can compute, so can the NN. They're equivalent.

So the real question is this: do those features (spiking, conduction delays) actually make biological neural networks capable of computing something that Turing Machines and Artificial Neural Networks cannot?

I hypothesize the answer is "no". A Turing machine could simulate any of those features you've mentioned, and therefore an ANN could also simulate them. (But I would love to be wrong about it, that would be amazing if human minds could do something that no machine would ever be capable of!)


Sorry for the delayed response here.

I was speaking before on a neuron-for-neuron basis. In computation-theoretic terms, I presume a spiking neural network model such as Izhikevich E.M. (2003) is equally powerful to a rate-based model such as Graves et al. (2014), in that they're both equivalent to a Turing machine.

(At least I assume Izhikevich's model can be, though I'm not aware of any proofs or demonstrations of it performing arbitrary computations.)

Also, keep in mind that saying something is 'Turing complete' only says that a machine is capable of computing anything that any other universal Turing machine can perform. It doesn't say anything about how efficiently it can do it. For example, a conventional computer and a quantum computer can both do integer factorization. But a quantum computer can do it much more efficiently, being able to do it in polynomial time. A quantum computer is therefore more powerful, even if they're both equivalent machines in computation-theoretic terms.


> So the real question is this: do those features (spiking, conduction delays) actually make biological neural networks capable of computing something that Turing Machines and Artificial Neural Networks cannot?

Are Turing machines proven to be able to compute anything computable, so isn't this known absolutely to be a "no"?


Well, ask this: does "computable" mean the upper limit of all things that can be computed ever, or simply the upper limit of what can be computed in the ways we know to compute things?

Maybe there is indeed a way to solve the halting problem using a type of computation we can't quite imagine yet. And maybe the human brain is capable of that kind of computation. I don't even know if we know the answers to those questions. I suspect not.

This is where computer science starts to get all philosophical, which is pretty awesome.


Neural networks are universal function approximators, not Turing machines. They can theoretically learn any series of "if...then..." functions with enough neurons. But there are a lot of functions they can't represent very efficiently or without absurdly large numbers of neurons and training data.


Yes, but computation can be performed with a function approximator where each iteration is a function `f :: (state, input) -> (state', output)`. This is the basis of an architecture called a 'neural turing machine' (http://arxiv.org/abs/1410.5401) and it is, indeed, Turing complete and can be trained through standard neural network training algorithms to perform arbitrary computations.


Thanks, nice summary of something I intuitively pondered but never expressed about this. I've had arguments with other engineers about this topic but could never garner more than "but the models don't match the biology!"


Thanks. I want to be clear here that I'm not disparaging work in rate-based artificial neural network models or deep learning. I just wanted to dispel the idea that the so-called 'large deep neural networks' that this article talks about are as powerful neuron-for-neuron as biological networks. They're not.

But that's not to say they're not powerful. They're an interesting area of research and you can certainly do some interesting work with them.


Not to mention the wash of hormones and neurotransmitter chemicals that can dynamically amp up or damp down specific sections of the nervous system.


Biological analogies are too often misleading and confusing when talking about deep learning[1]. We currently have very little knowledge of the way the brain works and most analogies are only wild assumptions. The ones contained in this article are blunt and based on strictly nothing but the author's feelings. Please read with care.

[1]: http://spectrum.ieee.org/robotics/artificial-intelligence/ma...


The author's "feelings" are useful when they were one of the authors of AlexNet[1]. A 10% improvement on ImageNet[2] makes one think he might know a little about the subject.

[1] http://www.cs.toronto.edu/~fritz/absps/imagenet.pdf

[2] http://www.image-net.org/challenges/LSVRC/2012/results.html (Look for SuperVision)


Well, I'm talking specifically about the biology analogies, and no, being good at ML doesn't mean you know anything about the brain.



The author mentioned: "a DNN with 2 hidden layer and a modest number of units can sort N N-bit numbers", does anyone have a reference to this result?


I remember reading an article saying that the memory storage in the brain may be at molecular level, making the brain's storage capacity really huge. Anyway, there are much more things going on in the brain than just deep neural networks.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: