Spaun: a Large-Scale Functional Brain Model 101
New submitter dj_tla writes "A team of Canadian researchers has created a state-of-the-art brain model that can see, remember, think about, and write numbers. The model has just been discussed in a Science article entitled 'A Large-Scale Model of the Functioning Brain.' There have been several popular press articles, and there are videos of the model in action. Nature quotes Eugene Izhikevich, chairman of Brain Corporation, as saying, 'Until now, the race was who could get a human-sized brain simulation running, regardless of what behaviors and functions such simulation exhibits. From now on, the race is more [about] who can get the most biological functions and animal-like behaviors. So far, Spaun is the winner.' (Full disclosure: I am a member of the team that created Spaun.)"
Re: (Score:2)
Re: (Score:2)
Same way I read everything, Pinky.
How Long Until It Can Fit Into ..... (Score:4, Funny)
.... something the size of a human skull?
Just imagine how many people this could help!
south end of northbound horse (Score:2)
I can't afford a yacht, or even a Lambo. I don't feel left out or discriminated against on that basis.
Re: (Score:2)
Re: (Score:2)
When you do, wait until an ultracap company announces an ultracap that has battery-equivalant energy, cost and cubic space consumption. Then put ALL your money right there. You can thank me later. :)
Re: (Score:3)
Re: (Score:2)
Hah. I wish. :)
Re: (Score:2)
I do. I've come to accept that won't change anything though. :-P
Re: (Score:3)
Re: (Score:2)
Well, perhaps, but not on this basis -- I can afford, and in fact own, lots of Apple gear. I think OSX 10.6 and earlier, before they hosed the multi-monitor support, is a great OS.
The original contention was that if one could not afford something, this would be disturbing. I don't find that to be the case at all, beyond a certain basic level. I was happy living with my cat and bookshelves made of planks, back in the day. I got my books from the used bookstore and I really felt like things were just fine. :)
Re: (Score:3)
Re: (Score:1)
.... something the size of a human skull?
Just imagine how many people this could help!
Too bad you posted that like an Anonymous Coward - Too funny! You just made my day :)
Close... (Score:5, Funny)
It's not purely functional unless it's written in Haskell.
Re: (Score:1)
It's not purely functional unless it's written in Haskell.
By way of logic, would programming it in pure Haskell eliminate filthy thoughts?
Re: (Score:2)
Why, are we worried about AIs committing venial sins or something?
Re: (Score:2)
If I make a robot that kills people, am I responsible for the deaths? If I make an AI that lusts after my neighbor's wife, am I responsible?
Re: (Score:1)
So you are saying Scheme was ruled out because if it learns to talk it will have a Lisp?
My God... (Score:5, Interesting)
Synthetic biology.... (Score:2)
Re: (Score:2)
IN SPACE!
With friggin' LASERS!
Re: (Score:2)
Re: (Score:2)
Free* gin, I'll drink to that!
*free as in beer
Re: (Score:2, Funny)
When the moon is in the Seventh House
And Jupiter aligns with Mars
Then peace will guide the planets
And love will steer the stars
This is the dawning of the Age of Aquarius
Age of Aquarius
Aquarius! Aquaaaaaarrrrriusssssss!
Re: (Score:2)
Have you been watching the 40 year old virgin too many times?
Re: (Score:2)
The golden age of humanity will start soon. [..] The future is not space, it's synthetic biology.
The power of synthetic biology unleashed upon a society that is run on the administrative and economic protocols that apply now, will be a nightmare, not a golden age.
You think you are going to be doing synthetic biology in your garage? For one, you will have to do exactly what the supersoldiers tell you to. How do you recon this amazing technology will reach you? Even if there comes to be such a thing as a technologically developed Elixir of Life, the Universe, and Everything, you think that people on top
Re: (Score:1)
Or we revert to a dark age. My money is on dark age.
Re: (Score:2)
WTF does this comment have to do with this story? Why is it +4 interesting?
Re: (Score:2)
The comment was about understanding life, synthetic biology, an end to the use of fossil fuels, and health.
The story has nothing to do with any of those.
The story is only (extremely) tangentially even related to uploading...
Runs at 1/3600 real time (Score:5, Interesting)
This simulation takes an hour to simulate one second of neural activity, but the researchers want to speed it up to real time. Why stop there? This brain would be much more interesting if it could simulate an hour of neural activity in one second.
Just a caution, though: make sure the physical arm it's connected to isn't within reach of any nuclear footballs.
Re: (Score:2)
We'll let you know in the year 2430.
Re: (Score:3)
That statement was almost true until around 2007-2009 were the processor industry switched from an exponential cpu speed function to a linear or logarithmic one...
Definitions
n : floored integer
s : cpu speed
l : float between 0[ and ]1
p : float between [1 2[
s(n) : speed at month n
The function for Moore's law
s(0) : some number
s(n) : s(n/18)*2
A linear speed function
s(0) : some number
s(n) : l*(n-1)
A logarithmic speed function
s(0) : some number
s(n) : p*(n-1)
That shift is significant, now I.A
Re: (Score:2)
We'd be happy with faster than real-time too! Baby steps.
Re: Runs at 1/3600 real time (Score:2)
At that speed I would be more concerned if the arm was within reach of other appendages.
Re: (Score:3, Funny)
I have a few co-workers like that
No, Spaun on NENGO Runs at 1/10800 real time (Score:3)
.
No, it appears that running the Spaun model on NENGO in a Java Virtual machine on a quad-core cpu running at 2.5 GHz takes 3 hours to run an emulated 1 second:
.
http:models.nengo.ca/spaun [nengo.ca]
Notes:
--------
- This model requires a machine with at least 24GB of RAM to run the full implementation.
Estimated run times for a quad-core 2.5GHz are 3 hours per 1 second of simulation time.
- See the run_spaun.py file in the spaun directory for experiment options.:
Re: (Score:2)
Ah, yes, "weak superhumanity".
What we really need to simulate in faster-than-realtime is the brain processes for optimizing this model. Once we can do that, things should click along nicely./p>
I really like its enthusiasm (Score:2, Funny)
"I still have the highest confidence in the mission, Dave."
Comes the next question: (Score:1, Offtopic)
What to teach Spaun: that it was intelligently designed, or evolved from its predecessors?
Re: (Score:2, Funny)
What to teach Spaun: that it was intelligently designed, or evolved from its predecessors?
Why not both?
Re: (Score:3)
Re: (Score:1)
Re: (Score:2)
I'd suggest it might conclude it evolved, for instance, from the evidence that much simpler machines had existed before it. What reasons would it have to listen to us? Not because it has any particular sci-fi notion to destroy us, but simply because it perceives us as superfluous to its existence, except to the extent that it might realize we have the ability to control it.
And reboot it? Does that not somehow imply that our own sense of morality is greater than that which the machine might possess, b
Re: (Score:2)
Unlike living organisms, It is not a derivation of it's predecessors put into place by selective forces acting on semi-random changes, but rather designed by people.
I'd say intelligently designed.
Re:Comes the next question: (Score:4, Interesting)
(Presumably) intelligently designed to mimic an evolved component of an evolved organism...
Re: (Score:2)
What to teach Spaun: that it was intelligently designed, or evolved from its predecessors?
Intelligently designed, and that it had better fucking behave itself or watch out!
paywall / links to summary (Score:3)
Could you possibly post a link to a version that is not hidden behind a paywall? Perhaps a pre-print on your own research site; perhaps an HTML web page summary of your work?
.
http://nengo.ca/ [nengo.ca]
.
It looks like they use Python scripting in their NENGO simulator: http://www.frontiersin.org/neuroinformatics/10.3389/neuro.11/007.2009/abstract [frontiersin.org]
Re: (Score:1)
Just as a clarification, it looks like only 1 of the 3 links in the summary (the 2nd link that goes to sciencemag.com) is behind a paywall.
Re:paywall / links to summary (Score:5, Informative)
Hey, I'm still figuring out the copyright rules as to what I can post, but there are plenty of things already available:
This paper on Spaun specifically [uwaterloo.ca]
Some background on how Spaun is built [nengo.ca]
Some background (with code) on the theoretical framework used [nengo.ca]
The actual code for Spaun [nengo.ca]
I'll let you know if a pre-print goes up!
We do use Python scripting to interface with our simulator, Nengo [nengo.ca]. See the last link for the actual script we use for Spaun.
The Terminal Experiment (Score:2)
This type of tech is a central part of Robert J. Sawyer's sci-fi novel "The Terminal Experiment". Very good read, if a bit dated now.
http://en.wikipedia.org/wiki/The_Terminal_Experiment [wikipedia.org]
http://www.sfwriter.com/exte.htm [sfwriter.com]
Re: (Score:1)
Emulated behaviour is amazing (Score:5, Interesting)
The fact this responds in similar ways is astonishing.. not because of what this model has accomplished, but because it's a great big flashing light pointing to this being the right way to machine intelligence. "HEY OVER HERE!"
I'll pre order his book, and wait patiently for an open source version of this research / model to appear for people to hack on.
It's slow now, but 1/3600 speed within the next generation of computers to do in real time - and that's without optimization.
Interesting times indeed.
Re:Emulated behaviour is amazing (Score:5, Informative)
This model is already open source! I have been very adamant about keeping this the case in the Eliasmith lab. The model is here [nengo.ca], and the software running it is here [nengo.ca] (and on github [github.com]).
Re: (Score:1)
I knew I should have opted for 24GB DDR3 instead of a 8GB kit.
Re: (Score:1)
Are you guys looking for [remote] volunteers? Is there some component of this research that can be crowdsourced? A mechanism for providing donations to help fund this effort? Basically, is there a way for engineers or scientists that are interested in this field of study to help out short of dropping their lives and becoming research assistants in Canada?
Re:Emulated behaviour is amazing (Score:4, Interesting)
I mean, we would be ecstatic to have people contribute in any way! That could even just mean learning the framework and the software and using it in your own research. We have lots of tutorials, and we'd be happy to help if you want to make your own models. The software itself is pretty good, but it's academic software, and certainly we'd welcome anyone's contributions to the software! We're pretty responsive, either at any of our emails [uwaterloo.ca], or by making a github issue [github.com] if you need any assistance.
Unfortunately, I don't know if we have a lot of "low hanging fruit", things that we need done but are just too lazy to do so. Though I'm sure we could come up with some of those tasks if desired, as we're certainly lazy.
Re: (Score:2)
I am intrigued by your ideas and will most certainly subscribe to your newsletter.
While I am by no means formally trained in neuroscience, I am an EE who's followed with much interest the field of neural modelling and I have waited for decades for someone to publish results like this. Best of luck with your research and I look forward to going through the code!
Re: (Score:1)
Ughh... this is interesting, but is exactly sort of the useless attention-seeking research that's ruining neuroscience and turning it into a snake-oil show.
Sorry, that sounds harsh, and I don't mean to be offensive, but there's lots of people that have been able to model these tasks better than these individuals.
The problem is that the outcomes they're evaluating--performance on these sorts of pre-defined tasks--don't mean there's an accurate model of what's actually happening on the brain as a whole. The o
Re:Emulated behaviour is amazing (Score:4, Insightful)
I was actually about to upmod because in general I agree (and for the record, I have a PhD in cog neuro), and based on the summary and the nature write-up, I was underwhelmed. But skimming the Science paper, these guys have legitimately done something that really hasn't been done before. The model gets a picture that tells it what task it's supposed to do, preserves that context while getting the task-relevant input, gets the answer to the problem (and the problems are, computationally, pretty wide-ranging), and writes the answer (i.e., it's not being read out from the state of a surface layer and transcoded to a human-readable result). All of this is being done with reasonably-realistic spiking neurons (with Eliasmith, these are probably single-compartment LIF), configured in a gross-scale topology commensurate with what we know about neuroanatomy and connectivity.
Is this going to unleash a new revolution in AI and cybernetics? Nope. But it's definitely both impressive and progressive for the field. Both Eliasmith and Izhikevich are the real deal. And while we certainly don't understand the brain well enough to make truly general-intelligence models, this kind of work is precisely the sort of step we need to be taking – scaling down the numbers but trying to reproduce the known connectivity is a lot more useful than building 10^10 randomly connected McCulloch-Pitts neurons...
think about numbers? (Score:1)
Hmmm...that seems to be more capable than a large segment of the human population. Impressive.
Uh Oh... (Score:1)
Spaun sees a series of digits: 1 2 3; 5 6 7; 3 4 ?. Its neurons fire, and it calculates the next logical number in the sequence. It scrawls out a 5
What the article doesn't tell you is that the "5" was followed by "@r@H c0Nn0r?"...
AI @ pains? (Score:1)
Hardware Requirement: 24 GB RAM (Score:2)
:>)
So running the model requires running it inside a Java Virtual Machine and running the Spaun model appears to require having a machine with 24 GigaBytes of RAM to allow the JVM enough space for doing its thing.
And the simulation runs at 3 hours of wall-clock time (I assume) per 1 second of simulated time, ~ 10800:1.
.
Perhaps
Re:Hardware Requirement: 24 GB RAM (Score:5, Informative)
Hey, we're definitely thinking about this! In fact, the Java version can run on a GPU. And we're in the process of making a fast Python version based on theano [deeplearning.net]. Unfortunately, even with all of these speedups, we're still talking about lots of neurons and lots of computation.
However, there are plenty of smaller scale models that you can run in Nengo to get a sense of what's going on in the larger Spaun model! The tutorials [nengo.ca] are a good place to start.
Re: (Score:2)
What platform are you using for GPU computing? CUDA? OpenCL?
Re: (Score:3)
We're using CUDA, so you'll need a recent NVidia card to run models on the GPU.
Re: (Score:2)
Thanks, also thanks for making the source code and the rest of your work available. Very promising research you've done.
Re: (Score:2)
Re: (Score:2)
Whoa, I had no idea rootbeer existed! That sounds quite useful, thanks for the link!
We're doing this very explicitly, by writing CUDA code in C and interacting with it in our Java program with JNI.
Re: (Score:2)
you imagine python is faster than java at common scientific computational tasks? it's about 20 to 50 times slower
Re: (Score:3)
Because Python's such a nice glue language, it can talk to super fast Fortran and C libraries to be at at least comparable speed with Java. See NumPy [scipy.org]. This is kind of stuff scientists use for number crunching.
Re: (Score:2)
I agree Python is a wonderful language, and of course ForTran (the most optimzable language for number crunching) libraries can be faster than java's in some cases.
Being old, I spelled the name meaning FormulaTranslation the old way for amusement.
Re: (Score:2)
Actually this may be a good example of something that could heavily benefit from JIT compiling. Since they're unsure what their own program needs to do it's going to be hard to optimize it manually.
Re: (Score:2)
Hmm... that's an excellent point! We have a few of hot loops that run over and over and over again. But, because of that we know what needs to be optimized and we've tried to do so. It's true though that some optimizations we've tried haven't worked out well, so the JVM's JIT compiler might be what's saving us most of the time. Personally I'd like to write it all in RPython and have it make a JIT for us ;)
Re: (Score:3)
Yeah, seriously. When it comes to maximizing performance/watt, C and OpenCL would be the way to go. I've taken a cognitive vision system using SURF + cluster analysis originally written in Java running at non-interactive rates on quad-core desktop system requiring gigs of RAM, and rewrote it in C using SIMD intrinsics and various other optimizations to improve cache efficiency and had it running at interactive rates on a single-core 800MHz ARM Cortex A8, 512MB of RAM, and PowerVR SGX 535 (a common mobile ph
Re: (Score:2)
Yeah, I wouldn't call our Java implementation "naive" per se, but we are definitely looking into implementing other simulation back-ends and decoupling the Nengo GUI from the simulation core. I'll look more seriously into C and OpenCL -- does it run on both ATI and NVidia cards? We have mostly NVidia cards here.
Re: (Score:3)
You'll probably be best off with sticking with CUDA on nVidia hardware for now. nVidia's OpenCL implementation isn't quite as polished as it should be, but it's getting there. There are some idiosyncrasies between vendor's implementations, namely to do with auto-vectorization. AMD's compiler doesn't auto-vectorize, and nVidia's Fermi/Kepler hardware is scalar, so you end up having to write multiple code-paths for each architecture anyway to get best performance. All of the companies use highly-patched versi
Re: (Score:2)
That's interesting... we are looking to interface with FPGA hardware too for some things, so a heterogeneous implementation would be great. I'll keep checking in on OpenCL as time goes on. Thanks!
Destination: Void (Score:2)
understanding the brain (Score:3)
Re: (Score:3)
That stupid quote has always bothered me. "Understanding" doesn't mean knowledge of every feature to an arbitrary level of detail. I understand the basic functioning of my couch even though it contains more particles than my brain so my brain cannot possibly contain arbitrarily detailed knowledge of it.
Re: (Score:1)
Neither correctly recalled nor attributed but that's not an issue in these days so don't worry too much about it.
"If the brain were so simple we could understand it, we would be so simple we couldn't."
Lyall Watson
I started typing and Google showed me the way.
On a somewhat related note although Bing is improving I hope it never becomes a verb...
Re: (Score:2)
If the brain were simple enough to be understood, it would be too simple to understand itself. (anonymous author).
Which is why we just build bigger brains. o_O
Goodbye anti-spam automated challenge systems (Score:1)
Re: (Score:1)
Greg Egan describes a world in http://en.wikipedia.org/wiki/Permutation_City [wikipedia.org] where the spam arms race has led to intelligent spam bots, and spam filters which are a simplified simulation of your own brain, which reads the spam to decide if you would want to see it yourself.
(N.B. I wouldn't want to give the impression that's all there is to the book, it's just a very, very small part of it. It's a good read if you think you'd like a novel which explores some of the implications of simulating human brains. Th