For this model brain, architecture matters more than sheer numbers.

Over the last few years, the meteoric rise of computing power has allowed us to build ever-larger collections of model neurons. Often, these models have been announced with a certain degree of hype, promising performance equivalent to that of an actual animal. In reality, simply throwing more silicon neurons at a problem hasn't brought us much closer to either understanding how the brain works or getting brain-like performance out of our computers.

In a paper published in yesterday's Science, researchers report on a new machine called (perhaps unfortunately) SPAUN, which reinforces the critical role that architecture can play in getting brain-like performance. All told, SPAUN makes do with "only" 2.5 million neurons, but it has them arranged in a specific collection of functional units with populations of neurons dedicated to things like working memory and information decoding. Although SPAUN isn't as flexible as a real brain, it handles a number of tasks about as well as actual humans.

Computers operate in binary, through huge collections of switches that can be in either "on" or "off" states. Real neurons simply can't operate the same way. Although they can have spikes of activity where a voltage change propagates down the cell body, that voltage change is transient—things quickly return to their ground state. Instead, neurons convey information through the pattern and timing of the spikes they create.

To begin with, we can't directly map neuron behavior to silicon. We have to build a model of spiking neurons in code and then link those models into collections of functioning neurons.

But simply throwing together a large enough collection of these model neurons won't get you a brain. An actual brain is composed of functional units that specialize in a process, such as the visual cortex, which helps with object recognition. These structures tend to have neurons with specific spiking properties and connect with a limited number of other structures that they can share information with. This lets a single structure supply information to a variety of processes. For example, only a small area of the brain is dedicated to recognizing written letters and digits, but it can feed what it recognizes to a variety of other structures that can do different things with the information.

The creators of SPAUN have put together an architecture of functional units, with each unit consisting of a population of modeled spiking neurons. SPAUN takes input from a simple camera, and has a unit that encodes what it sees into spikes. Those spikes are then compressed into a set of key features which can be fed into a recognition system. Another connection of neurons handle task-specific processing and convert the results into a desired action, such as "draw the digit '2.'" From there, further functional units convert that to specific mechanical motions, allowing a robotic arm to output the intended result.

Two key features hang off this otherwise linear arrangement of processing units. One is a collection of working memory neurons, which allows the system access to short-term storage of things like lists of numbers. The other is a task-selection unit. This allows the authors to send a specific instruction—in SPAUN's case, something like "A2"—that the system uses to determine what to do with any subsequent input. Once a task is identified, this unit configures the remaining regions so that they perform specific actions. It essentially reconfigures the flow of information and how each input is used by the subsequent functional units.

The system is limited, in that the task selector can only handle a number of pre-specified tasks. But it's also extremely flexible. The image recognition portion, which picks out letters and digits, can feed what it "sees" into a wide variety of tasks. In the same way, the working memory only stores numbers, but the processing units can use the numbers held there for a range of purposes.

To demonstrate SPAUN's flexibility, the authors programmed the task selector to handle eight different tasks. Some of these were pretty basic, like recognizing a digit or adding two digits shown in succession. But the tasks got progressively more complex, like identifying the position of a digit in a list. At the higher end of task complexity, it could make basic inferences (given 2, 4, 6; and 3, 5, 7; how would you complete 1, 3, x?). In its own way, it could learn. Given lists of three numbers, it had to figure out which ones were associated with the highest reward without being given any information.

SPAUN wasn't 100 percent accurate for all of these tasks. For example, it was only 94 percent accurate with character recognition. But given the same resolution characters that SPAUN was working with, humans are only 98 percent accurate.

Beyond its ability to solve these specific tasks, the key thing about SPAUN is that it wasn't limited to solving these tasks. As more things are added to the task recognition system, SPAUN's abilities should be able to expand accordingly. And because of its modular nature, additional features could be added to other aspects of the system—such as the ability to speak the output rather than writing it.

That said, the authors recognize that the system is pretty limited as it stands. First and foremost, though it can learn how to adjust its responses within a given task, it can't actually learn new tasks. And it isn't an especially accurate model of the brain. The spiking behavior of its model neurons, for example, is far more regular than those of actual living neurons, making the traces of its activity look bizarrely uniform (at least to someone used to observing the output of biological systems).

But none of these problems are obviously insurmountable. The model neurons could eventually be replaced with ones that operate a bit more like the biological ones, and it's possible to envision creating a task-learning unit that feeds its results into the task-selection unit. Since we've already built models with over 1,000 times as many neurons, SPAUN may only just be getting started.

These structures tend to have neurons with specific spiking properties and connect with a limited number of other structures that they can share information with. This lets a single structure supply information to a variety of processes. For example, only a small area of the brain is dedicated to recognizing written letters and digits, but it can feed what it recognizes to a variety of other structures that can do different things with the information.

OO principles of cohesion and coupling as neurology. Fascinating.

Edit: I'm curious why the downvote on this comment. Would appreciate feedback from the downvoter, as I am trying to improve my personal commenting S/N ratio.

The baseline reality for standard computers is the ability to drive a car at high speed in heavy traffic over an indefinitie time period. At least two systems capable of this kind of perfornamce have been built. I don't know how they work and how much they might resemble the nervous system. But they do perform a task that pushes the edge of human intelligence as well or better than a human being.As for actually modeling the brain, one problem is that nobody really understands how a single neuron works or what its repetoire of information processing capability really is. There has been a tendency to imagine a neuron as a rather simple information processing unit. That model ignores the reality that each human cell operates at the order of complexity of a complete single celled organism with billions of bits of memory in its nucleic acids.

A large part of the reason to build artificial brains is to gain a better understanding of real brains, and to test our ideas of how the real ones work. In fact I'd say that's the majority of focus on artificial brains, any computer science related insights and spinoffs are more like a bonus.

The baseline reality for standard computers is the ability to drive a car at high speed in heavy traffic over an indefinitie time period. ...But they do perform a task that pushes the edge of human intelligence as well or better than a human being.

I think you and I have very different ideas of what human intelligence is and what pushed the boundaries of it.

Whenever i read about the gross structures of the brain, i find myself wondering if rather than trying to emulate the whole thing at a neuron level we could build the equivalent specialized chips and code for a similar result.

Whenever I read about the gross structures of the brain, I find myself wondering if rather than trying to emulate the whole thing at a neuron level we could build the equivalent specialized chips and code for a similar result.

Realizing any ASIC design, especially those using state-of-the-art fabs, is incredibly expensive: at 28nm, the mask alone starts out at $2.5M USD, followed by tens of millions for the engineering talent to conceive and lay out the design by hand, which is more effective than synthesizing from HDL, let alone the cost per platter. Considering this work is still very much at the early research stage, it's much cheaper and easier to plunk down the money for a custom computing cluster or for a few Blue Gene /P or /Q cabinets.

Whenever I read about the gross structures of the brain, I find myself wondering if rather than trying to emulate the whole thing at a neuron level we could build the equivalent specialized chips and code for a similar result.

Realizing any ASIC design, especially those using state-of-the-art fabs, is incredibly expensive: at 28nm, the mask alone starts out at $2.5M USD, followed by tens of millions for the engineering talent to conceive and lay out the design by hand, which is more effective than synthesizing from HDL, let alone the cost per platter. Considering this work is still very much at the early research stage, it's much cheaper and easier to plunk down the money for a custom computing cluster or for a few Blue Gene /P or /Q cabinets.

I am not saying they should cook up some brain/neuron behaving chips.

Rather that instead of trying to emulate neurons they could borrow the high level idea of dedicated and segmented software/hardware.

To me it seems that things like driving cars gets into a data amount issue because unlike the mammal brain, it insists on reading everything at a detailed level. Mammals in comparison seems to focus on basic shapes and movements first, and worry about details later. So if your driving you don't care if that object is car, truck, person or cardboard box. If it is in motion and its path appears to cross yours, better stop or change direction and figure out what exactly it was later.

So basically, have a set of chips or programs, one being all about locating movement, another related to basic shapes, and then pass that data onto a higher tier only if there is actually something interesting.

In essence, look at what each region of the brain does and than ask "how can we make a chip/program do the same task with a minimum of effort?".

Whenever i read about the gross structures of the brain, i find myself wondering if rather than trying to emulate the whole thing at a neuron level we could build the equivalent specialized chips and code for a similar result.

That seems to be the direction of this research. They are logically simulating some of the aspects of the brain, and emulating other aspects. In terms of synthetic ai, this is probably the future IMO.

The computational power it takes to directly emulate neuron-by-neuron the human brain is well beyond reach for a few decades at this point. But this type of research would help us understand our own brains more than a simulation.

To me it seems that things like driving cars gets into a data amount issue because unlike the mammal brain, it insists on reading everything at a detailed level. Mammals in comparison seems to focus on basic shapes and movements first, and worry about details later. So if you're driving you don't care if that object is car, truck, person or cardboard box. If it is in motion and its path appears to cross yours, better stop or change direction and figure out what exactly it was later.

So basically, have a set of chips or programs, one being all about locating movement, another related to basic shapes, and then pass that data onto a higher tier only if there is actually something interesting.

In computer vision, to name but just one field, a fair number of researchers have been doing what you've proposed, at least for small sub-problems, for the past a decade or so; typically, the approaches are referred to as biologically inspired and pop up every now and again in the top journals, e.g., TPAMI and IJCV, along with the top conferences, e.g., CVPR, ICCV, and ECCV.

As an example, the "gist" of a scene is actually a very important descriptor, since it helps us to quickly identify (in around 100ms) if an environment is indoor or outdoor, if it contains conspicuous objects, and so forth. Computer vision researchers have realized its potential and attempted to mimic it over the years, often to great effect. In my own work, I used it in a paper that I recently sent, for review, to TPAMI concerning vision-based robotic localization (and also mapping): by looking at the "gist" of scene pairs, a robot could quickly decide if the current video frame was novel and, if not, defer to a higher-level agent that would perform nonparametric image parsing and correspondence, which would defer, in some circumstances, to an even higher-level agent that would carry out three-dimensional, object-based matching to resolve its position/orientation with very high accuracy and precision.

hobgoblin wrote:

In essence, look at what each region of the brain does and than ask: "how can we make a chip/program do the same task with a minimum of effort?".

As I understand it, actually doing simulations, on supercomputers, with software like NEURON will help us to eventually understand some of the remaining mysteries of how our brain functions. After all, there are plenty of things that we are clueless about.

In any event, once we have a full understanding of the brain, which is not likely to occur within any reasonably predictable time span, distilling various components' functions down into circuitry should not prove overly difficult.

To me it seems that things like driving cars gets into a data amount issue because unlike the mammal brain, it insists on reading everything at a detailed level. Mammals in comparison seems to focus on basic shapes and movements first, and worry about details later. So if your driving you don't care if that object is car, truck, person or cardboard box. If it is in motion and its path appears to cross yours, better stop or change direction and figure out what exactly it was later.

So basically, have a set of chips or programs, one being all about locating movement, another related to basic shapes, and then pass that data onto a higher tier only if there is actually something interesting.

In fact, that's what Mercedes seems to be doing right now. They have systems that recognize and warn the driver about what type of thing that's on the road, be it car, debris, pedestrian, or animals. It wouldn't be a far leap to assume they'd use something similar to drive the actual car and guide its movements.

The baseline reality for standard computers is the ability to drive a car at high speed in heavy traffic over an indefinitie time period. At least two systems capable of this kind of perfornamce have been built. I don't know how they work and how much they might resemble the nervous system. But they do perform a task that pushes the edge of human intelligence as well or better than a human being.

It's only challenging because we're operating a vehicle and not just our bodies, by relatively clumsy controlling methods while traveling several times the speed that our bodies can operate.

The thing we're doing isn't impressive in the animal kingdom. Wildebeest and horses and many other herd animals do it very well. And they have to solve the problem of simultaneously avoiding predators. Flocking birds do it at speeds almost as high as we do, but in three dimensions as opposed to our two. They do it with a brain about 2% the size of ours.

Humans add a layer of simultaneously trying to obey arbitrary rules of the road, but I don't think that's a big addition to the computational burden.

People are being implanted with cybernetic devices that can be controlled by the mind, for medicine and for other reasons, and it doesn't take much to extrapolate that brains being wired into robots equipped with advanced biomaterials and life support systems (that brains like the one in this article will help us create) will happen sooner or later (I vote sooner).

People are being implanted with cybernetic devices that can be controlled by the mind, for medicine and for other reasons, and it doesn't take much to extrapolate that brains being wired into robots equipped with advanced biomaterials and life support systems (that brains like the one in this article will help us create) will happen sooner or later (I vote sooner).

"Doesn't take much"?Well I can imagine it, but if you think moving a human brain out of the body is happening in your lifetime, I'd like some of what you're smoking.Besides, the question "why downgrade to inferior technology" seems rather relevant.

Whenever I read about the gross structures of the brain, I find myself wondering if rather than trying to emulate the whole thing at a neuron level we could build the equivalent specialized chips and code for a similar result.

Realizing any ASIC design, especially those using state-of-the-art fabs, is incredibly expensive: at 28nm, the mask alone starts out at $2.5M USD, followed by tens of millions for the engineering talent to conceive and lay out the design by hand, which is more effective than synthesizing from HDL, let alone the cost per platter. Considering this work is still very much at the early research stage, it's much cheaper and easier to plunk down the money for a custom computing cluster or for a few Blue Gene /P or /Q cabinets.

Or you could use FPGAs. The implementation (synthesized HDL) might be much less efficient, but you get the bonus of flexibility: the neural network structure can be modified by reconfiguring the FPGA. I used dynamic partial reconfiguration of FPGAs for my Master's thesis and in the same research group (see http://csl.elis.ugent.be/) there were some people working on neural networks and reservoir computing. I stopped following their research after I graduated, but they had some pretty interesting ideas.

I'd love to see SPAUN (or a more advanced version) attempt CAPTCHA recognition

I almost always fail those, which worries me.

Do you use Chrome? I tried to post a comment on Youtube recently (maybe third one in about 5 minutes) and I was shown a CAPTCHA. I gave up after about 10 tries because it was only a Youtube comment, but I remember an instance a while back where a CAPTCHA wouldn't work in Chrome, then for some reason I typed in the text from the previous try and it worked.

I'd love to see SPAUN (or a more advanced version) attempt CAPTCHA recognition

I almost always fail those, which worries me.

Do you use Chrome? I tried to post a comment on Youtube recently (maybe third one in about 5 minutes) and I was shown a CAPTCHA. I gave up after about 10 tries because it was only a Youtube comment, but I remember an instance a while back where a CAPTCHA wouldn't work in Chrome, then for some reason I typed in the text from the previous try and it worked.