Jeff Hawkins' Cortex Sim Platform Available
UnreasonableMan writes "Jeff Hawkins is best known for founding Palm Computing and Handspring, but for the last eighteen months he's been working on his third company, Numenta. In his 2005 book, On Intelligence, Hawkins laid out a theoretical framework describing how the neocortex processes sensory inputs and provides outputs back to the body. Numenta's goal is to build a software model of the human brain capable of face recognition, object identification, driving, and other tasks currently best undertaken by humans. For an overview see Hawkins' 2005 presentation at UC Berkeley. It includes a demonstration of an early version of the software that can recognize handwritten letters and distinguish between stick figure dogs and cats. White papers are available at Numenta's website. Numenta wisely decided to build a community of developers rather than trying to make everything proprietary. Yesterday they released the first version of their free development platform and the source code for their algorithms to anyone who wants to download it."
Someone needs to put this Cortex Simulator in an 8-legged, hydraulic-actuated, 10 ton spider-machine. If you think that's a crazy idea, you suck.
I'm still a bit confused as to how he is so confident that this is how the neocortex works given that this is still one of the 23 unsolved problems in system neuroscience. But hey, he made a lot of money off Palm, that gives him way more street cred than people who have been working on this problem for their whole lives.
High quality versions of Jeff Hawkin's talk at UC Berkeley are available here.
NEOcortex - Begin the Matrix jokes/analogies now...
Libertarian Leaning Political Discussion Forum.
Don't be so afraid of complexity - Slashdotters make fun of themselves for diving into things uneducated (not reading the articles, not RTFM), but really, the only way to cope with such an informationaly complex landscape such as computing is to sometimes just be willing to go unprepared and be willing to make mistakes, and to ask stupid questions.
Not so much dare to be stupid, but rather the Socratic, don't be afraid of exposing your own ignorance - don't lose your opportunity to learn by merely being embarrassed of people thinking you dumb while you take your first few steps in a new landscape.
But do take notes and research the small topics you are uncertain of after your first adventure into to the topic. Perhaps you'll need to learn a bit about XML/XSL, perhaps you'll need to find out the anatomy of a nerve cell to understand some explanations. If nothing else though - get into it because it is a fun adventure and a lot of cool stuff to learn.
Ryan Fenton
How unusual to see software that will run on OS X or Linux, but there is no Windows version. Shape of things to come I hope.
Hawkins' published a book before this was implemented in code called "On Intelligence". You could do worse than starting by reading through that.
He's also done some lectures available on Google Video.
I haven't really looked into what they are doing specifically, so I can't really comment on that stuff. But I've done some work in neural networks (actually 15 years ago -- I'm sure the state of the art has completely past me by ;-) ).
;-) ) You're also going to need some basic calculus. A quick search didn't show me any introductory free books online, but that doesn't mean they don't exist. However, calculus is used for everything which means you should be able to find used books almost for free...
:-) There are some decent introductory texts (aimed at grad students) on the subject, but I'm afraid I'm well out of the loop now.
If you are interested in the field of AI with neural like computing, your best bet is to learn a huge amount of math. Really you can't understand anything without knowing at least 2nd year linear algebra. That's if you just want to basically understand what's going on. If you actually want to contribute, you're going to need a math degree.
This might sound like I'm discouraging you. I'm not. I just want you to understand what you're up against. You can definitely do some toy problems with neural network packages out there. You don't really need to understand what you are doing. But if you actually want to contribute, you don't really start here. You've got to do your basics and get your math chops up.
As for what you should read... Get some basic undergrad linear algebra books. A google search gave me this link:
http://joshua.smcvt.edu/linearalgebra/
Which looks like it will pretty much give you everything you need for the basics of neural networks (without the neural network part
Once you've got that down (and maybe you already do if you've got a math or CS degree), you can start reading some basic neural network material. The wikipedia entry for perceptron:
http://en.wikipedia.org/wiki/Perceptron
seems pretty good and should give you a start on how neural networks (very, very simple ones) work. It gets surprisingly complicated from there
Things can get pretty harried math-wise once you start getting into learning algorithms. That's because you are basically trying to do a minimization with *a lot* of variables. It's not surprising that most of the innovative algorithms actually come from physics (well, in my day anyway... probably things have changed...) since when they are modeling stuff they tend to need to do the same thing. This is where you get into the scary math with multiple variate calculus and stuff... Way out of my league (I suck at math...)
Of course there are other forms of AI. But if you are trying to model the way the brain works, you need lots of math...
Having read the Hierarchical Temporal Memory (HTM) white papers, and knowing something of the area prior to that, it looks like Jeff Hawkin's and his company have take a lot of ideas and algorithms that exist, and hacked them together to implement his neocortex ideas.. there's a bits and pieces of graphical models, time recurrent neural nets, Boltzmann machines, etc.. It does some cool stuff but nothing that AI and machine learning people haven't been doing for years. The difference is that Jeff has taken the entrepreneurial approach to AI. Instead of publishing and allowing the academic community (the original open source movement!) to peer review and contribute, he's formed a company to announce his ideas to the world -- ready or not. This isn't necessarily bad, but the proof of his ideas will be scaling them up to start solving some useful problems. Bring on the face recognition that isn't fooled by dark sunglasses and a false mustache!
Heh, is this some new Slashdot joke I've missed? Somebody proposes a quantum leap in artificial intelligence and you're worried that it'll be able to crack CAPTCHAs? CAPTCHAs are not all that important, you know, and most of the ones that are in use can already be easily broken with a targeted script(the Slashdot one is definitely an example of this).
Someone needs to immediately train this to catch /. dupes and/or run Linux.
As a current student I neuroscience I would love to see this happen however there are a few major problems.
1) All the research into cortical circuitry is done in non-humans. There are definite similarities between our cortex and that of a rat, but there are also drastic differences, if there weren't then rats would be able to talk, think, and reason like we do. (Yes lots of research is being done in non-human primates, but this work is EXTREMELY expensive and even non-human primates have different cortical circuitry then we do)
(Not only are the cortices of different species drastically different, scientists often chose regions of cortex that have no correlation in humans. Many neuroscientists are studying the Barrel Cortex. It is a region of cortex that is specifically designed to integrate the signals from the whiskers of a Rodent. Humans don't have whiskers and we also don't have Barrel Cortex. Anything learned about the circuitry of the Barrel Cortex will not necessarily correlate to human cortex.
2) Intra-population Circuitry research examines very small subsets of neurons that make up a bigger populations. When studying neurons in the visual cortex for example the best anyone can do is look at the firing of about 150 neurons. When you consider that there are over 10,000,000,000 (BILLION) neurons that make up the human brain a small set of 150 neurons is almost nothing. We don't have sufficient technology to examine what each neuron in a specific population is doing.
3) Inter-population circuitry research only looks at what populations are connected to each other. Yes we know what type of neurons project from one area of the brain to the next, however, this only gives a very rough schematic of the circuitry. The circuitry of both the cerebellum and the hippocampus have been described beautifully (they have both been known for well over 50 years). However once we no this circuitry it yields no light on how the circuitry actually accomplishes its task.
4) Failure to integrate both intra and inter population circuitry. I have yet to read a paper that does a good job of integrating these two studies. Most neuroscientist pick one emphasis and stick with it. In order to understand exactly what the cortex is doing you must integrate all levels of research into your studies.
5) Study of the cortex is insufficient. The cortex projects to many regions of the brain whose functions are still unknown. These connections to these brain regions might not appear necessary but if they really weren't necessary why are they there? Back in the day people who had really bad seizures would have what is called a "Corpus Callosomy" This is the cutting of the fibers that connect the two hemispheres of the brain. At first the procedure was called a success. However, after further investigation it turned out that the people on whom this operation was performed had drastic problems. (Example, if a person was holding an object in their left hand (the sensory fibers project from the left hand to the right side of the brain) and if they weren't allowed to see the object, upon request of the examiner of what the person was holding they would respond there is nothing in their hand. ) This example is only to illustrate that upon initial examination many regions of the brain appear to have no function as lesioning these structures has no aversive effects, this is what many people thought about the corpus colosum, however upon further examination this proved untrue. Before we can understand how the cortex fully functions we must understand how the entire brain works with it.
Sorry to be a nay sayer but I have serious doubts whenever someone claims to have figured out how the cortex works.
That book was published over a year ago, lots can and has changed in that time.
Actually, its content was produced seven or eight years ago.
Its publishing date was "December 2005". But publishers will lie about the publication date of a book if it allows them to sell more books. And in this case, I wouldn't be surprised if the book came out hot off the presses in December 2004 with a postdate of "December 2005"
Furthermore, this book was based on the scientific proceedings of a conference which occurred six years before the book was finally edited (or finally published). I'm actually not sure of the year of the scientific conference itself, because the information supplied to sell the book doesn't give the actual year.
http://en.wikipedia.org/wiki/Baum-Welch_algorithm http://en.wikipedia.org/wiki/Viterbi_algorithm
The first is an alogorithm which utilizes forward and back-tracking "to find the unknown parameters of a hidden Markov model." The second is a similar algorithm used for learning 'known' causes (for reference).
I work in computational linguistics and the time an algorithm takes to run and the amount of memory it requires are serious limitations. That's why ad-hoc systems are so common.
Hawkins is a rich guy, and no-one feels like telling him that his stuff is crap. He had a few smart people working for him at some point, but when they told him his ideas were half baked and not new, he just fired their asses.
Here is what many people in machine learning and computer vision think about Hawkins stuff:
- it's way, way behind what other people in vision and machine learning are doing. Several teams have biologically-inspired vision systems that can ACTUALLY LEARN TO RECOGNIZE 3D OBJECTS. Hawkins merely has a small hack that can recognize stick figures on 8x8 pixel binary images. Neural net people were doing much more impressive stuff 15 years ago.
- Hawkins's ideas on how the brain learns are not new at all. Many scientists in machine learning, computer vision, and computational neuroscience have had general ideas similar to the ones described in Hawkins's book for a very long time. But scientists never talk about philosophical ideas without actual scientific evidence to support them. So instead of writing popular book with half-baked conceptual ideas, they actually build theories and algorithms, they build models, and they apply them to real data to see how they work. Then they write a scientific paper about the results, but they rarely talk about the philosophy behind the results.
It's not unusual for someone to come up with an idea they think is brand new and will revolutionize the world. Then they try to turn those conceptual ideas into real science and practical technologies, and quickly realize that it's very hard (the things they thought of as mere details often turn out to be huge conceptual obstacles). Then, they realize that many people had the same ideas before, but encountered the same problems when trying to reduce them to practice (which is why you didn't hear about their/your ideas before). These people eventually scaled back their ambitions and started working on ideas that were considerably less revolutionary, but considerably more likely to result in research grants, scientific publications, VC funding, or revenues.
Most people go through that "naive" phase (thinking they will revolutionize science) while they are grad students. A few of them become successful scientists. A tiny number of them actually manage to revolutionize science or create new trends. Hawkins quit grad school and never had a chance to go through that phase. Now that he is rich and famous, the only way he will understand the limits of his idea is by wasting lots of money (since he obviously doesn't care about such things as "peer review"). In fact, many reputable AI scientists have made wild claims about the future success of their latest new idea (Newell/Simon with the "general theorem prover", Rosenblatt with the "Perceptron", Papert who thought in the 50's that vision would be solved over the summer, Minsky with is "Society of Minds", etc......).
No scientist will tell Hawkins all this, because it would serve no purpose (other than pissing him off). And there is a tiny (but non-zero) probability that his stuff will actually advance the field.
- Anonymous Scientist
I've broken many captchas using small PHP scripts to de-mangle the image (GD) and standard free open OCR software.
Some people spend their entire adult lives trying to overcome alcohol addiction, or trying not to beat their spouse. To others, it comes naturally.