Slashdot Mirror


Spaun: a Large-Scale Functional Brain Model

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.)"

28 of 101 comments (clear)

  1. How Long Until It Can Fit Into ..... by Anonymous Coward · · Score: 4, Funny

    .... something the size of a human skull?

    Just imagine how many people this could help!

  2. Close... by tool462 · · Score: 4, Funny

    It's not purely functional unless it's written in Haskell.

  3. My God... by Anonymous Coward · · Score: 5, Interesting

    The golden age of humanity will start soon. The last gasp of the fossil fuel powered consumer society is now. We will create a new model of society, with longer living people and an understanding of how life works at the cellular, and most importantly, mathematical level. The future is not space, it's synthetic biology.

    1. Re:My God... by Anonymous Coward · · 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!

  4. Runs at 1/3600 real time by Anonymous Coward · · 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.

    1. Re:Runs at 1/3600 real time by Tablizer · · Score: 3, Funny

      I have a few co-workers like that

    2. Re:Runs at 1/3600 real time by Tablizer · · Score: 2

      We'll let you know in the year 2430.

    3. Re:Runs at 1/3600 real time by JonySuede · · Score: 2

      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. researchers must also consider speed and parallelism, they cannot rely on Moore's anymore...

      --
      Jehovah be praised, Oracle was not selected
  5. I really like its enthusiasm by Tablizer · · Score: 2, Funny

    "I still have the highest confidence in the mission, Dave."

  6. paywall / links to summary by kris_lang · · Score: 2

    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/
    .

    It looks like they use Python scripting in their NENGO simulator: http://www.frontiersin.org/neuroinformatics/10.3389/neuro.11/007.2009/abstract

    1. Re:paywall / links to summary by dj_tla · · 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
      Some background on how Spaun is built
      Some background (with code) on the theoretical framework used
      The actual code for Spaun

      I'll let you know if a pre-print goes up!

      We do use Python scripting to interface with our simulator, Nengo. See the last link for the actual script we use for Spaun.

  7. Re:south end of northbound horse by Andy+Prough · · Score: 2

    Apple hates you. The entire company. Seething, festering hatred.

  8. Emulated behaviour is amazing by xtal · · Score: 4, 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.

    --
    ..don't panic
    1. Re:Emulated behaviour is amazing by dj_tla · · 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, and the software running it is here (and on github).

    2. Re:Emulated behaviour is amazing by dj_tla · · Score: 3, 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, or by making a github issue 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.

    3. Re:Emulated behaviour is amazing by perceptual.cyclotron · · 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...

  9. Re:Comes the next question: by mevets · · Score: 3, Interesting

    (Presumably) intelligently designed to mimic an evolved component of an evolved organism...

  10. Re:Comes the next question: by mark-t · · Score: 2

    So what do you, as a creator, if the ai stubbornly concludes that your explanation of it's origins is unacceptable... After all, if you could evolve, why could it not have also evolved, and in turn rejects the notion that you created it at all?

  11. Re:Hardware Requirement: 24 GB RAM by dj_tla · · Score: 4, 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. 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 are a good place to start.

  12. No, Spaun on NENGO Runs at 1/10800 real time by girlinatrainingbra · · Score: 2

    re: Runs at 1/3600 real time
    .
    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
    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.:

  13. Re:south end of northbound horse by readin · · Score: 2

    One of the reasons you don't feel left out is because you know that if you work hard enough and you apply enough intelligence, you have a fair shot at one day owning that yacht or, if not you, your kids do. The capabilities of man are mysterious enough and far enough from technology that it is assumed in places with some basic freedoms like America that every child has a shot at becoming rich. Access education and inheritance only gets you so far if you don't apply yourself. And people like Bill Clinton demonstrate that even someone from a relatively poor background can still become filthy rich.

    But what if that changes? What if being born to a wealthy family doesn't just give you external advantages like networking, school tuition and capital, but also gives you inherent mental and physical advantages that a poor simply can't match no matter how hard he tries or how good his genes? This would create a new class system much like that of the middle ages where being born noble guaranteed a life as a noble and being born a commoner guaranteed a life as a commoner.

    --
    I often don't like the choices people make, but I like the fact that people make choices. That's why I'm a conservative.
  14. Re:Hardware Requirement: 24 GB RAM by dj_tla · · Score: 2

    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. This is kind of stuff scientists use for number crunching.

  15. Re:Hardware Requirement: 24 GB RAM by dj_tla · · Score: 2

    We're using CUDA, so you'll need a recent NVidia card to run models on the GPU.

  16. Re:south end of northbound horse by fisted · · Score: 2

    In unrelated news, fyngyrz announces an ultracap that has battery-equivalant energy, cost and cubic space consumption.

  17. Re:Hardware Requirement: 24 GB RAM by Suiggy · · Score: 2

    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 phone target). The ARM OpenCL implementation wasn't available at the time, but I hacked together some stuff exploiting OpenGL ES 2.0 shaders for a couple of the computationally expensive hotspots, and eventually got it running at real-time rates. It was something like a 6000x speed increase over the original naive Java version, even with the slower CPU.

    That said, Spaun is a research project after all, so you use what you're familiar with.

  18. understanding the brain by gordona · · Score: 2

    If the brain were simple enough to be understood, it would be too simple to understand itself. (anonymous author).

    --
    "Gentlemen, you can't fight in here! This is the War Room!" -- Dr. Strangelove
    1. Re:understanding the brain by ceoyoyo · · Score: 2

      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.

  19. Re:Hardware Requirement: 24 GB RAM by Suiggy · · Score: 2

    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 versions of Clang/LLVM for their OpenCL compiler, and they're only now starting to standardize on features, releasing them into the mainline, so this situation should improve with time.

    Longer term, OpenCL is pretty promising for portable heterogeneous high-performance computing. In addition to GPUs, the compute kernels can run on CPU cores in parallel and there are a few companies writing implementations for their FPGA hardware too, and it'll be able to support future unified CPU/GPU memory addressing models. Intel is also heavily invested into OpenCL adoption for it's hardware.