Saturday, November 19, 2011

Hang in There

I'm having trouble focusing on my research. Someone very close to me is dying from ALS (amyotrophic lateral sclerosis), also known as Lou Gehrig's or motor neuron disease. There are no known cures at this time, although there has been some progress lately in identifying the physiological causes. I am very depressed and I need to take some time off. I'll be back soon when I feel better. Sorry.

Monday, November 14, 2011

Rebel Column: A New Model of Cortical Columns, Part I

Abstract

The cortical column, a vertically arranged group of interconnected neurons, is considered by many to be the fundamental functional module of the brain's neocortex. The human cortex is estimated to contain as many as two million columns each having between 50,000 and 100,000 neurons. A few months ago, while reading about the Blue Brain Project (BBP), it occurred to me that nobody has come up with a functional model of the cortical column that makes much sense. What I mean is that, sure there are a few theories and models floating around, but nobody really understands the purpose of the column. Since cortical columns are the main constituents of the brain's grey matter, a correct understanding would go a long way toward solving the intelligence puzzle. I began to think about the problem in light of what I have uncovered so far in my own AI research. In this article, I introduce rebel column, a new model of the human cortical column.

Simulating Without Understanding at the École Polytechnique Fédérale de Lausanne

BBP researchers claimed to have succeeded in using a super computer to simulate the cortical column of the rat. If true, it should have been heralded as the greatest advance in the history of neuroscience and artificial intelligence research. After all, to understand the cortical column is to understand a huge chunk of the brain. This clearly is not the case here. Henry Markram, the Blue Brain project director at the École Polytechnique Fédérale de Lausanne in Switzerland, would be hard pressed to describe the actual purpose or function of a column. Other than the usual "it is the functional building block of the brain's neocortex", BBP researchers have diddly squat to say about what it does and why. How does one know whether or not a simulation is working properly if one has no idea what it is supposed to do and why?

So after spending millions of dollars and six years trying to simulate the cortical column, the brightest brains in the field are none the wiser. This is not very promising, in my opinion. And for them to call the project a success is quite an exaggeration, to put it mildly. Lame.
Note: I am not a neuroscientist. I am a Christian researcher and I get my understanding of the brain by decoding certain ancient Biblical metaphorical texts. If this bothers you, please ignore my blog as it is not meant for you. I only write for kindred spirits, sorry. The Rebel Column hypothesis described in this article came from my own research which is not based on existing neuroscience literature. This is my way of establishing prior art (you read it here first). Please make copies. The Rebel Cortex document (pdf) has not yet been updated with this information.
Definitions

A rebel column is several things in one. It is primarily a sensorimotor unit but it is also a sequence learner and recognizer, and an event recorder and predictor. Every column is organized around a single input event (the main event) which, depending on the column's position in the memory hierarchy, can be either a pattern or a sequence of patterns. Here, a pattern is defined as a group of concurrent signals originating from the sensory layer. While the motor function of the cortical column is beyond the scope of this article, suffice it to say that an event can also serve as a motor command. In a future article, I'll explain how patterns are formed and how the brain coordinates motor commands.

Columns, Minicolumns, Timing, Sequences and Memory Traces

A rebel column represents a single sequence of up to seven unique events. Why seven? Because seven is sufficient to identify a sequence. (Note that a sequence can have more than seven nodes but only the first seven are used to build the sequence hierarchy.) Knowing this, however, does not explain the apparent neural complexity of the column. What makes a column complex is that the timing of the events in the sequence can vary greatly. Recognizing a sequence of events does not consist of merely detecting their order of arrival but also their precise relative timing. The column accomplishes this feat by using a small population of winner-take-all minicolumns. I say winner-take-all because there can only be a single active detection at any one time. This explains why minicolumns send out inhibitory connections to all their neighbors within a given column. In other words, as soon as a minicolumn recognizes a sequence, it sends a signal to all the other minicolumns to prevent them from activating. The illustration below represents a small horizontal cross section of the neocortex showing nine hypothetical columns, each consisting of 11 minicolumns (small circles). The currently active minicolumns are shown in blue.
The human cortical column contains anywhere from 50 to 100 minicolumns, each of which having a unique temporal signature. That is to say, a typical column can recognize up to 100 differently timed sequences based on the same set of seven events. In my opinion, having 100 minicolumns is probably an overkill. I suspect that, during its lifetime, a cortical column can use only a small percentage of its available minicolumns.

Why use multiple minicolumns? Why not have a single minicolumn and use multiple synaptic connections to represent the intervals between events? There are several reasons, in my opinion, having to do with recognition speed, event recording and recall, and prediction.
  1. A minicolumn can very quickly recognize a particular sequence if the events arrive at their precise expected times.
  2. If a given sequence is recognized by a minicolumn, the latter can serve as the memory trace for that sequence. If necessary, the column can be checked later to determine which minicolumn fired last.
  3. The timing of a sequence is represented by a single minicolumn. This way, the brain can quickly judge or predict the timing of following sequences (other columns) based on which minicolumn fired last.
One of the main advantages of understanding the function of the cortical column is that it is not necessary to simulate every minicolumn in order to obtain the functionality of a column in a computer program. One can implement a cortical column by designing a single basic data structure for the entire column and include an extensible array of properties and variables to simulate the timing mechanisms of the minicolumns. A single flag or number can represent the currently active minicolumn. Also, it is not necessary to simulate the neurons down to the underlying biology of their axons, synapses and dendrites.

Coming Up

In Part II, I will go over the sequence learning mechanism of a rebel column, how columns fit within the memory hierarchy and the Biblical metaphors that I used in my research. Hang in there.

Saturday, October 22, 2011

Vicarious Systems' Disappointing Singularity Summit Talk

The Wright Brothers of AI

I just watched Scott Brown's and Dileep George's Singularity Summit talk on YouTube. Brown and George are the founders of Vicarious Systems Inc., the Union City, CA startup that got funded by a couple of big names in Silicon Valley to develop the next big thing in computing, a machine that mimicks the functions of the human brain. That was back in February. I was expecting a major announcement. I was disappointed. The talk was just hype: "we got something big but our IP lawyer told us not to say anything" kind of thing. Lame.

The main point of their presentation was that, just as the Wright brothers studied nature (the flight of birds) to arrive at the design for their first motorized airplane, they too, are studying nature (the brain) to design the first brain-like artificial intelligence. The suggestion seems to be that Vicarious is conducting pioneering research in AI that nobody else is doing, which is not true, of course. There are many other researchers and organizations in the field, including George's previous company, Numenta, who are using the exact same approach. The main difference is that, unlike the Wright brothers who conducted their research in plain view, Brown and George are conducting theirs in secret.

Vicarious' Chances

So what do I think of Vicarious' chances of solving the AI problem? I'll be blunt. I think they have no chance whatsoever. Zilch. Here's why. Dileep George, the brain of the company, is a PhD electrical engineer and mathematician who believes that math is essential to solving the AI puzzle. This alone tells me that he has no real understanding of the problem. Furthermore, although I think that a study of the brain can eventually lead to a major breakthrough, it is highly unlikely that this approach will lead to a breakthrough in the foreseeable future. The brain has a bad habit of hiding its secrets in a forest of apparent complexity. The Wright brothers never had to deal with hidden knowledge. They, like everyone else, could easily observe the gliding flight of birds and derive useful principles.

As an example, let's take George's adoption of Bayesian inference for sequence prediction in hierarchical memory. Bayesian statistics is the sort of thing that a mathematician like George would find attractive just because it's math. But is it based on the known biology of the brain? Not at all. Can George search the neuroscience and biology literature to find out what method the brain uses for prediction? The answer is no because biologists have not yet discovered how the brain does it. They just know from psychology that the brain is very good at judging probabilities based on experience. That is the extent of their knowledge.

The reality is that brain theorists are using the Bayesian brain hypothesis only as a possible avenue of research. They hope and pray that the brain is using Bayesian statistics but it's just speculation. There is no biological evidence for it. In my opinion, looking into a maze of dendritic wiring to get a glimpse of how the brain handles prediction is an exercise in futility, unless one has a thousand years to work on the problem. Does Vicarious have a thousand years to do research? I don't think so.

Rebel Speech Update

As usually happens when I am trying to implement a major paradigm shift in my work, I am swamped with personal and legal problems that are taking most of my time and have nothing to do with my research. Still, I am making excellent progress with my Rebel Speech experiments and I hope to have an uploadable demo program that anybody can play with before the end of November.

And, by the way, I have changed my mind about turning Rebel Speech and Rebel Vision into a business. I have decided to reveal all when the demo is ready for public consumption.

See Also:

Vicarious Has a Winner
Rebel Speech Recognition Theory
The Second Great AI Red Herring Chase
The Myth of the Bayesian Brain

Tuesday, September 27, 2011

Physicists Don't Know Shit

Was it Just a Guess?

The story about the faster-than-light neutrino experiment conducted by CERN physicists is starting to really get under my skin. What this fiasco really shows is that physicists do not really know what they're talking about. They need to answer the following questions:

- Is there a speed limit, yes or no?
- If yes, why?
- If no, why not?
- If yes, why is c the limit?

Obviously, physicists are either not sure or they don't really understand why there is a speed limit in Einstein's relativity. Or maybe Einstein did not provide a good enough explanation to convince them one way or another. Was it just a guess all along with no actual understanding as to why? It sure seems that way, doesn't it? Otherwise, this neutrino experiment would never have made the news. Physicists would know that it was either a mistake or it wasn't. Why all the fuss?

Deep Ignorance

From my vantage point, there is no question that physicists don't really understand motion. If you ask any physicist to explain why a body in inertial motion remains in motion, you'll come face to face with abject ignorance if not outright superstition. Is this what we pay our physicists for? Ignorance? Aren't they supposed to understand these things? Their ignorance is deep and in your face and yet, they feel free to conjure up all sorts of Star Trek voodoo physics whenever they feel like it; what with time travel, parallel universes, wormholes, cats that are both dead and alive and all that other nonsense?

The Truth about Motion

Now, if the CERN neutrino physicists really understood motion, they would know that, not only is c the fastest possible speed in the universe, it is also the slowest possible speed. Nothing can move faster or slower than c. It is the only possible speed. Why? Because the universe is discrete. Read Physics: The Problem with Motion if you're interested in having a real understanding of motion. You don't understand motion even if you think you do.

See Also:

Why Einstein's Physics Is Crap
Nothing Can Move in Spacetime
Physics: The Problem with Motion
Why Space (Distance) Is an Illusion
How Einstein Shot Physics in the Foot
Sitting on Mountain of Crap, Wasting Time

Saturday, September 24, 2011

CERN Shenanigans

The Con Artists Are at it Again

Unless you've been living under a rock the last few days, you probably already heard the news that faster than light neutrinos are threatening to disprove Einstein's theory of relativity. I have a very cynical view of this crap. I say crap because that's precisely what it is. I could be wrong but my view is that the crackpots and con artists at CERN and elsewhere are facing the real prospect of seeing their multi-billion dollar budgets slashed due to the current worldwide financial meltdown. This is their way of saying, "look folks, we're doing really exciting physics right now. So keep the money flowing in." Later, they'll have some press conference in which they'll announce that it was all a false alarm and that Einstein's physics is still the best thing that ever happened to humanity. Yeah, right. There is plenty wrong with Einstein's physics but not being able to go faster than the speed of light is not it. You can bet the farm on this one.

No field of science gets away with more in-your-face crackpottery and outright deception than the physics community. Those jackasses are making more money selling crap to an unsuspecting public than any other group in the history of science. If those clowns really understood what they were talking about, they would know that, not only is it impossible to travel faster than the speed of light in a vacuum, it is also impossible to move slower. That's right, there is only one speed in the universe and that speed is c. I just wanted to chime in and let you know what I think.

See Also:

Why Einstein's Physics Is Crap
Nasty Little Truth About Spacetime Physics
Nothing Can Move in Spacetime
Physics: The Problem with Motion
Why Space (Distance) Is an Illusion
How Einstein Shot Physics in the Foot
Sitting on Mountain of Crap, Wasting Time

Sunday, September 18, 2011

The Amazing Power of Concurrent Pattern Recognition

The Key to Sequence Learning

In view of what I wrote in my previous post, some of my readers may be wondering what it is exactly that I discovered. Without giving away the secret, let me say that the key to learning sequences of sensory events is to come up with the right method for concurrent pattern recognition. Once you've got that figured out, then sequence learning becomes a breeze. In fact, sequence learning becomes just a recording process in which each recorded event is a recognized pattern of concurrent signals. And as with any recording process, precise and correct timing is paramount.

That being said, this is not what makes sequence learning easy. What makes it easy is that, with the right concurrent pattern recognizer, there is no need to search the sequence space for good or valid sequences. In other words, every sequence is a good sequence. Just record them all and let the Branch mechanism sort them out.

This is all I can divulge at this time. Later.

See Also:

I Was Wrong About Pattern and Sequence Learning

Wednesday, September 14, 2011

I Was Wrong About Pattern and Sequence Learning

Major Revision

In view of my recent decision to use my understanding of the brain to raise funds for my research, forgive me for not revealing too much about my newly formulated theory of sensory learning and memory formation. It turns out that three of my main assumptions about sensory learning were incorrect. I am revising Rebel Cortex to reflect my new understanding. Here's what I was wrong about.

Pattern Learning

Previously, I claimed that pattern learning should be done in conjunction with sequence learning. Well, I was wrong about that. Pattern learning occurs independently of sequence learning. However, there is a trick to it. It's an amazingly simple trick, once you know what it is. But it is not an easy one to figure out: kind of like a needle in the haystack sort of thing. I still maintain that Numenta's approach, the one that calls for using a hierarchy of patterns starting with small areas of the visual field, is wrong. Heck, it's not even in the ball park of being right. Again, as I've explained in the past, patterns only exist at the bottom or entry level of the memory hierarchy. The upper levels consist only of sequences and sequences of sequences.

Quick prediction: All of Jeff Hawkins' money, entrepreneurial skills and atheistic convictions will not prevent Numenta's eventual demise. Bummer.

Signal Separation

I claimed many times that sensory signals should first go through a 10-stage signal separation layer that uses fixed time scale correlations to separate signals from their streams. I was only partially right about that. There is only a need for a single, fixed-time-scale separation stage.

Sequence Learning

I wrote on several occasions that the primary fitness criterion for sequence learning was frequency. I based this on the observation that sequences are often repeated; therefore the nodes in a sequence will often have the same frequency. However, this is only partially true. It turns out that the human brain can learn to remember a sequence of events even if it occurred only once. While frequency is important to the long term retention of memorized sequences, this is not how we learn sequences. Hint: it's simpler than you think, much simpler.

However, this does not exonerate the use of Bayesian or Markovian statistics in sequence learning. While these approaches do result in useful applications, they erect an insurmountable barrier to achieving the ultimate goal of AI research: building a machine with human-like intelligence and behavior.

Coming Up

Well, that's all I'm going to say about this topic, for now. Like I said, I intend to reveal all at a future date, but not before I make some cash for my research. I'm still busy writing code for the Rebel Speech Recognition project. I may be ready to release a demo sooner than I anticipated. Stay tuned.

See Also:

Rebel Speech Update, September 11, 2011
Rebel Speech Recognition
Rebel Cortex
Invariant Visual Recognition, Patterns and Sequences
Rebel Cortex: Temporal Learning in the Tree of Knowledge

Sunday, September 11, 2011

Rebel Speech Update, September 11, 2011

Breakthrough

All right. This is going to be short because I don't want to tip my hand. Right now, I'm both angry and excited at the same time. I'm angry at myself for not being true to my own convictions regarding the underlying simplicity of the brain. I have always strongly believed that the principles that govern the functioning of the brain are orders of magnitude simpler than almost everybody in the AI business would be willing to believe. Yesterday, while writing code for Rebel Speech, it occurred to me that my approach was way too complicated to be the correct one. I reasoned that one or more of my assumptions had to be wrong. I decided to review my understanding of the sensory cortex and something amazing happened. It was almost as if the scales fell off my eyes and I was able to see clearly for the first time. I suddenly realized that sensory learning in the tree of knowledge (TOK) is simple almost to the point of absurdity. I am laughing with excitement as I write this post.

Two things triggered this epiphany in my mind. The first was my growing realization that the ancient Biblical metaphorical texts about the brain (yes, I am a Christian and I believe that the Bible uses clever metaphors to explain the organization and working of the brain) did not support part of my current design for Rebel Cortex. I was forcing some of the metaphors to fit my own erroneous understanding of certain brain functions rather than the other way around. I could kick myself in the ass for having been so dumb, I swear. The second was my inability to explain a couple of bewildering results (see previous post) I was getting from my recent experiments with the Rebel Speech program.

Coming Up

I cannot reveal the full nature of my breakthrough at this time. All I can say is that you can expect a working Rebel Speech demo program within a month or two, time permitting. Hang in there.

See Also:

Rebel Speech Recognition
Rebel Cortex
Invariant Visual Recognition, Patterns and Sequences
Rebel Cortex: Temporal Learning in the Tree of Knowledge

Thursday, September 8, 2011

Rebel Speech Update, September 8, 2011

Signal Separation Blues

Well, it seems that I may have to revisit my signal separation hypothesis. I can't get it to work properly. I get the best results by completely bypassing the separation layer and feeding the sensory signals directly to the bottom level of the tree of knowledge (TOK), aka hierarchical memory. If you remember, I wrote a while back that sensory signals must first go through a fixed time scale separation layer before they are fed to the TOK where they are organized according to a variable time scale. At this point, I'm thinking that the problem may be due to some bug in my code (believe me, this shit is complicated) that is preventing the separation layer from doing what it's supposed to do.

Patterns and Sequences

For now, I am putting signal separation on the back burner and moving full speed ahead on coding the TOK. Learning sequences of patterns, while easy in principle, is a pain in the ass to program. And I am not even talking about the task of implementing a spiking neural network framework and all the classes required for a variety of neurons and synapses. And let's not forget the workhorse thread that is running the parallel simulation underneath and the management module that is required for making and severing connections without causing a fatal runtime exception. Luckily, I pretty much had most of the neural stuff done from my work on Animal. Precisely timing events in a Von Neumann serial computer is a daunting task.

Surprisingly enough, it turns out that, during learning, the system must rely on deterministic timing. In other words, a pattern is considered recognized only if all of its input signals arrived concurrently. Contrast this with the probabilistic Bayesian learning approach used in Numenta's HTM and the probalistic Hidden Markov Model used in most commercial speech recognition programs. As I have written previously, in the Rebel Cortex intelligence hypothesis, probability only comes into play during actual recognition when multiple sequences and branches of the hierarchy compete in a winner-take-all struggle to become active.

Deterministic timing does not mean, however, that two concurrent signals must always occur concurrently. It means that they must occur concurrently often enough to be captured by the learning mechanism and recognized whenever they reoccur. Only the learning mechanism needs to be deterministic, not the signals and certainly not the act of recognition.

One of the problems that I am wrestling with has to do with determining how many sequences should be created in memory. I am considering limiting the number of branches that a sensory input can have to a fixed preset value. I don't think this is the way to do it but it will have to do for the time being. I got more pressing issues to deal with.

Results

Nothing lifts one's spirit more than obtaining good results. Although I have only worked on coding the bottom level of the TOK (it's the hardest part), I am already getting tantalizing glimpses of glorious things to come. Patterns form quickly when I repeatedly speak the numbers 1 to 10 in the microphone. This is encouraging because I am using only 4 audio amplitude levels and only the lower 24 frequencies out of a spectrum of 512 (11 Khz sampling rate). One peculiar thing that I noticed is that the learned sequences rapidly taper off. What I mean is that one of the patterns in a sequence will have say, 25 concurrent inputs, but the number quickly decreases to 3 or 4 in the other patterns. Another thing is that the learned sequences contain at most 5 or 6 patterns. I am not entirely sure but I think that the learning mechanism may be automatically limiting the pattern sequences to short phonemes. It's kind of scary when you don't fully understand what your own program is doing. I seriously need to write some code in order to graphically represent the sequences in real time. This would give me a visual understanding of what's going on.

Coming Up

The next task on my agenda is to implement the upper levels of the memory hierarchy and the branch mechanism proper. This will be the really fun part because, once that is working properly, I will know whether or not Rebel Speech is correctly recognizing my utterances. It's exciting. Stay tuned.

See Also:

Rebel Speech Recognition
Rebel Cortex
Invariant Visual Recognition, Patterns and Sequences
Rebel Cortex: Temporal Learning in the Tree of Knowledge

Thursday, August 11, 2011

Rebel Speech Recognition

Rebel Speech

I started yet another artificial intelligence project, Rebel Speech. Actually, it is part of the Rebel Cortex project, which now consists of Rebel Vision and Rebel Speech. Both subprojects will use the same sensory cortex for learning and recognition. Programming wise, speech recognition is less complex than visual recognition because the sensory mechanism is easier to implement. It's mostly a matter of using a Fast Fourier Transform to convert a time domain audio signal from a microphone into a frequency domain signal. In addition, only a fraction of the detected frequency spectrum is required for good performance. I envision that someone will one day design a microphone that works like the human ear, i.e., it would use many microscopic hair-like sensors that respond directly to various frequencies. In the meantime, a regular microphone and an FFT will do.

Population Modulation

I've been writing some Windows C# code for Rebel Speech in my spare time in the last few days. I have already implemented the microphone capture and FFT code. Well, it's not all that hard considering that there is a lot of good and free FFT code on the net and Microsoft provides a handy Microphone class in its XNA framework. I am now working on designing the audio sensors and the sensory layer. It's a little complicated not just because I need to design both signal onset and offset sensors but also because dealing with stimulus amplitude is counterintuitive. In the brain, all signals are carried by pulses which have pretty much equal amplitude. One would think that changes in the intensity of a stimulus should be converted into frequency modulation but that is not the way it works either. The brain uses a technique that I call population modulation to encode amplitude. In other words, there are many sensors that handle a single phenomenon. The number of sensors that fire in response to a sensory stimulus is a function of the intensity of the stimulus.

In the brain, this sort of parse activation is accomplished with the use of inhibitory connections between the cells in a group. Luckily, in a computer brain simulation, all we need is a list of cells. Stay tuned.

See Also:

Rebel Cortex
Invariant Visual Recognition, Patterns and Sequences
Rebel Cortex: Temporal Learning in the Tree of Knowledge

Friday, August 5, 2011

How Jeff Hawkins Reneged on His Own Principles

"Vision Is More Like a Song than a Painting"

About two weeks ago, in Part II of my article A Fundamental Flaw in Numenta's HTM Design, I wrote that "visual recognition is not unlike speech or music recognition." Yesterday, I did a little search on Google and discovered that Jeff Hawkins and I are pretty much in agreement. On page 58 of his book, On Intelligence, Hawkins writes that "vision is more like a song than a painting." On page 31, he writes, "this is how people learn practically everything, as a sequence of patterns." Hawkins and I are on the same page, at least as far as this aspect of intelligence is concerned.

Contradiction

One would think that Hawkins would stick to his original principles about how the brain learns but he turns around and contradicts himself after he co-founded Numenta Inc. In Numenta's HTM model, Hawkins abandons his gut instincts and gives in to Dileep George's erroneous ideas on how visual learning should work. George believes that the visual cortex sees an image as a hierarchy of small patterns, as opposed to a hierarchy of sequences of patterns. He thinks that the brain sees an entire image all at once and that the visual receptive field increases as one goes up the hierarchy. As I have shown previously on this blog, George is wrong, period. Hawkins is correct that we learn and see everything as a sequence of patterns. We never see a whole picture all at once, in terms of small concurrent patches. There is no pattern learning except at the bottom level of the memory hierarchy and it does not work the way George believes it does either. Why did Hawkins change his mind?

Blinded by that Old Math Magic of Academia

I think Hawkins allowed himself to be bamboozled by George's mathematical sleights of hand. It's the old "when all you've got is a hammer, everything looks like a nail" sort of thing, all over again. George is still playing the math hand at his new AI venture, Vicarious Systems, Inc. I wish him well but he will fail, in my opinion. AI and the brain are not about math. As Hawkins claims in his book, On Intelligence, intelligence is almost entirely about prediction and sequences of patterns. When we finally unravel the workings of the brain, we will be amazed at the simplicity of its principles.

Bayesian Crap

I am going to say something that will come as a surprise to many. Some may even take offense. But, you know me, I always tell it like I see it. That whole Bayesian learning crap that Dileep George introduced to Numenta's HTM is just that, crap. The brain does not use Bayesian statistics to learn which pattern may succeed another. The brain learns as many patterns and sequences as it can, regardless of their probability of occurrence. What matters is that they occur frequently enough to be more than just random noise. Probability only comes into play long after the learning phase, during decision making, e.g., when it comes time to determine whether an object is an apple or an orange. Recognition happens correctly because many branches of the tree of knowledge compete for attention and the strongest (i.e., the most appropriate) branch wins. It's that simple. No Bayesian crap is required. I'll have more to say about temporal learning in an upcoming article.

Shooting AI in the Foot and Bragging About it

My advice to Hawkins is to be true to his original vision and stop listening to academia. Academia have been shooting AI in the foot for the last sixty years or so. That whole symbolic AI nonsense would be laughable if it weren't so pathetic. What a waste of time and brains. But guess what, they are not about to change anytime soon. Worse, they have no shame about their failure. They brag about their "accomplishments".

You've heard it here first. :-)

See Also:

Jeff Hawkins Is Close to Something Big
A Fundamental Flaw in Numenta's HTM Design

Friday, July 22, 2011

A Fundamental Flaw in Numenta's HTM Design, Part II

Part I, II

Abstract

In Part I, I wrote that, in Rebel Cortex (RC), only the bottom level of the memory hierarchy handles concurrent inputs and that all sequences have a maximum capacity of seven nodes. I claimed that Numenta's HTM design is fundamentally flawed because, unlike the RC memory model, every level in Numenta's memory hierarchy handles both concurrent and sequential signals. I revealed the surprising source of my knowledge about the brain's memory architecture and I promised to answer two questions: a) why should only the bottom level of the memory hierarchy receive concurrent signals; and b) why should all sequences have a maximum capacity of seven nodes? So here are my answers, as promised.

Visual Recognition Is a Sequential and Predictive Process

Most visual recognition researchers have a more or less static view of vision. This is true even among those who profess a belief in the fundamental temporal nature of sensory learning and recognition. The usual assumption is that visual processors at the bottom level of the memory hierarchy recognize only small areas of the image and that, as one goes up the hierarchy, bigger and bigger areas are recognized in terms of lower level patches, and so on. At the top of the hierarchy, the entire scene is recognized all at once. Here is how Jeff Hawkins and Dileep George of Numenta describe (pdf) their hierarchical model:
The level 1 modules have small receptive fields compared to the size of the total image, i.e., these modules receive their inputs from a small patch of the visual field. Several such level 1 modules tile the visual field, possibly with overlap. A module at level 2 is connected to several adjoining level 1 modules below. Thus a level 2 module covers more of the visual field compared to a level 1 module. However, a level 2 module gets it information only through a level 1 module. This pattern is repeated in the hierarchy. Thus the receptive field sizes increase as one goes up the hierarchy. The module at the root of the tree covers the entire visual field, by pooling inputs from its child modules.
This seems to make perfect sense and it would appear that this is the way it should work in the brain's visual cortex. But is this really what happens when we look at a scene? Do we really see an entire visual field in terms of smaller receptive fields? My experience is that it is simply not true. In fact, there is every reason to doubt the claim that the size of the visual receptive field changes at all as one goes up the hierarchy. Let's take the above paragraph as an example. Try as we may, we find it impossible to see a sentence all at once, let alone the entire paragraph or the entire computer screen. Even though our peripheral vision allows us to sense a big picture, our visual acuity is limited to a very small part of the visual field at a time. The size of this small part is invariant. It is a fallacy that we see a big pattern in terms of dozens or hundreds of small patterns.

The above begs the question, how do we understand a visual scene if we can't combine small pieces into bigger pieces? I believe that visual understanding, like everything else, is entirely dependent on the temporal expectations that we have of our environment. In this light, visual recognition is not unlike speech or music recognition. A spoken sentence or a musical tune is a sequence of sequences. We never sense a whole sentence or a whole song at once but only snippets at a time. Certainly, at the bottom level of the auditory hierarchy, we find many sequences of learned patterns, each of which consists of a set of concurrent signals generated by various audio sensors tuned to different frequencies. All concurrent patterns reside at the bottom level. This is true of both the visual and auditory cortices.

So yes, of course, there is a hierarchy, but it is not a hierarchy of patterns (see note below) but one of sequences. The main difference between audio and visual recognition is that the latter requires that we frequently move our gaze from one spot of the visual field to another, i.e., from one pattern to another. If Hawkins et al were correct, eye movements would be rarely necessary. Hawkins should know better because the ability to make predictions is the cornerstone of his theory of intelligence.

Note: There is a pattern hierarchy in the brain but it is used for learning and recognition purposes, not for enlarging the receptive field. 

Sequences of Sequences

The two main functions of hierarchical memory are to classify sensory knowledge and to predict the future. Classification is needed to make predictions. It consists of grouping incoming sensory signals into various families and sub families. There are only two kinds of signal families: concurrent and sequential. A concurrent family is what some call a pattern. Hawkins and others refer to it as a spatial pattern but I think it is a seriously confusing misnomer since there is nothing spatial about it. From the point of view of making predictions, a pattern is a single and unique event in time.


In the Rebel Cortex model (see illustration below), a bottom level node (BLN) is just a pattern. Every upper level node (ULN) is a sequence of lower level nodes.

Rebel Cortex Memory Hierarchy

It is easy to understand a sequence of patterns. Every pattern can be seen as a single discrete signal arriving one after another. But what is a sequence of sequences? Can two succeeding sequences overlap? I'll return to this important topic in an upcoming post.

Fundamental Building Blocks of Memory

In order to facilitate the creation of as many combinations of sequences as possible, we should make them as short as possible, i.e., with just two nodes. The problem with short sequences, however, is that they require many levels in the hierarchy. As such, they slow down learning, recognition and prediction. At the other extreme, long sequences would be too coarse and would result in overlooked combinations. It is a good bet to suppose that the human cortex uses seven node sequences. After all, psychology teaches us that human short-term memory has a capacity of about seven items. But why seven? I think seven is a compromise, one that is fine-grained enough without being too taxing on the nervous system. However, I chose to use seven-node sequences in RC for a different reason altogether. My choice had to do with my being a Christian and, more specifically, with my on-going research in decoding certain ancient Biblical metaphorical texts. There's more to come. Stay tuned.

Menorah

See Also:

How Jeff Hawkins Reneged on his Own Principles
Invariant Visual Recognition, Patterns and Sequences
Missing Pieces in Numenta's Memory Model
Rebel Cortex

Monday, July 18, 2011

A Fundamental Flaw in Numenta's HTM Design, Part I

Part I, II

Abstract

A couple of days ago, I reread Numenta's latest document (pdf) on HTM. I thought it was strange that there was no mention of the maximum number of nodes that an HTM sequence is allowed to have. I thought it was strange because a sequence in Rebel Cortex (RC) has a maximum of seven nodes. I tried to understand the reason for the lack of a maximum sequence size in HTM and failed. Then I began to meditate about all the differences between HTM and RC. That's when I noticed another fundamental difference: every level in Numenta's knowledge hierarchy works exactly the same way. This is not true in Rebel Cortex. I explain why below.

Nodes and Sequences of Nodes

There are two types of nodes in RC, bottom level and upper level. A bottom level node (BLN) is a group of concurrent sensory inputs that are connected to the bottom level sequences of the memory hierarchy. A BLN is similar to what Numenta calls a spatial pattern in HTM. There is no limit to the number of concurrent inputs a BLN can have. A bottom level sequence can have up to seven BLNs. An upper level node (ULN), by contrast, is just a sequence of seven lower-level nodes. Again, there are no concurrent inputs in the upper levels of the hierarchy.

Rebel Cortex Memory Hierarchy

The bottom level, level 0, receives its inputs indirectly from the sensory layer by way of the signal separation layer (see RC Document for a description of the SSL). Only the bottom level nodes receive concurrent inputs. The question that comes to mind is, why only the bottom level? The answer is not immediately obvious; otherwise the super-smart and math-savvy intelligentsia at Numenta and elsewhere would have discovered it. Not that I am any smarter, mind you, not by a long shot. I did not discover it either. So before I reveal the answer to the question I posed, let me explain how I came to know that it was the way to go long before I understood the actual reason. Check out what happens when you flip the image vertically.


What you see above is a faithful representation of the metaphorical vision of the golden lampstand (menorah) by the old testament prophet, Zechariah, whose name means 'Yahweh remembers' in Hebrew. Here's how Zechariah described the symbolic lampstand:
Zechariah 4:2
And he said unto me, What seest thou? And I said, I have seen, and, behold, a candlestick all of gold, with its bowl upon the top of it, and its seven lamps thereon; there are seven pipes to each of the lamps, which are upon the top thereof. (New American Standard Bible)
The only thing that is missing from the diagram is the bowl, the meaning of which I will explain in a future post. The design of Zechariah's lampstand is so strange that several translators, including the author of the King James Version, mistakenly assumed that he meant to write that he saw seven pipes, one for each of the seven lamps, which would be the description of a normal seven-branch menorah. Indeed, why would every lamp need seven pipes? Nevertheless, that is what Zechariah described.

Menorah

Here is the English Standard Version:
Zechariah 4:2
And he said to me, "What do you see?" I said, "I see, and behold, a lampstand all of gold, with a bowl on the top of it, and seven lamps on it, with seven lips on each of the lamps that are on the top of it.
There are more translations like these in many languages. They use words like pipes, tubes, channels or conduits to describe the seven ducts attached to each of the seven lamps. I figured out many years ago (around 2002) that Zechariah's vision was a symbolic description of the brain's memory architecture. The clues were unmistakable then. Any lingering doubts that I had in the beginning have long since vanished. Now it's mostly a matter of implementation. I am coming out publicly with all of it because I want there to be a record of it all, or prior art, as intellectual property lawyers would call it. To those folks out there who want to corner the market in true artificial intelligence by acquiring a huge patent portfolio, all I can say is this: it will not work.

Coming Up

I think that Numenta's HTM design is fundamentally flawed. In Part II, I will explain why the upper level nodes of the memory hierarchy must not receive concurrent inputs. I will also explain why memory sequences are limited to seven nodes.

See Also:

How Jeff Hawkins Reneged on his Own Principles
Jeff Hawkins Is Close to Something Big
The Rebel Science Speech Recognition Project

Monday, July 4, 2011

Rebel Cortex

My New AI Project

I started a new AI research project. It's called Rebel Cortex (pdf). After much consideration, I decided that the best way to demonstrate my intelligence hypothesis (and raise some cash) is to implement a visual recognition program. Don't worry; I will not abandon my old computer chess project. It's just that I noticed that several companies are coming out with sophisticated visual recognition products while new Silicon Valley startups (e.g., Vicarious Systems, Inc.) with ambitious AI programs are being funded. I think I can do better. I think I can design a visual recognition system that will blow everybody else out of the water.

I strongly disagree with the notion held by researchers like Dileep George and others, that the solution to human-level visual recognition requires a mathematical model of the cortex. I think that mathematics is a false god, especially in brain research, because it explains nothing. It only confuses. But then again, I got my own unconventional source of knowledge about the brain that mainstream researchers like Dr. George would not touch with a ten-foot pole. In my opinion, what we have here is a race to see who will be the first to crack the AI nut. May the best approach win.

Rebel Cortex will be unlike any other visual recognition system out there. For starters, it will include a circular retina and an integrated motor cortex. Please read the preliminary design document (pdf) for Rebel Cortex and write to me to let me know if you're interested in participating in this project and in what capacity. The document is not yet completed but there is enough to give one an idea of where I am going with this project.

PS. I plan to start a new discussion forum under the same name in a few days. Keep an eye on this blog for periodic updates.

See Also:

Missing Pieces in Numenta's Memory Model
A Fundamental Flaw in Numenta's HTM Design
Invariant Visual Recognition, Patterns and Sequences

Thursday, May 26, 2011

Jeff Hawkins, Atheism, Christianity and the Brain

Abstract

Several people have written to me recently to point out that my theory of intelligence is very similar to that of Jeff Hawkins and the folks at Numenta, a company Hawkins co-founded in 2005 with Dileep George (1) and Donna Dubinsky. The amazing thing is that Hawkins and I have arrived at a similar understanding of the brain via very dissimilar routes. Hawkins draws his inspiration from his knowledge of neuroscience and I get mine mostly from my interpretation of ancient Biblical metaphorical texts. I just finished reading a portion of Numenta's HTM Cortical Learning Algorithms (pdf). I think I now understand enough about the theory underlying HTM to form an educated opinion. Let me come right out and say that I think that Numenta's overall philosophy with regard to the function and operation of the cortex is basically sound but their current design is flawed. Furthermore, there is no way I can cooperate with Hawkins, Numenta or anybody associated with their HTM technology. I explain below.

Temporality, Hierarchy and Prediction

In 2005, Hawkins published his book, On Intelligence, in which he revealed his theory of intelligence. Based on the parts of the book that I've read, I think that Hawkins makes a convincing case for his ideas. He argues that the ability to anticipate the future and to learn sequences of patterns is the basis of intelligence. He further argues that cortical learning is universal in the sense that the neocortex uses the same learning and prediction algorithms to process visual, tactile or auditory information. What is important, he maintains, is the temporal relationships that can be inferred from parallel streams of discrete sensory data. Those relationships can be learned and stored in a hierarchical memory structure. I think others have made similar arguments before but Hawkins is the first to pin it down in an easy to read book. I essentially agree with Hawkins' position on intelligence. As some of my readers already know, I have been saying pretty much the same thing for many years.

Complexity

After reading Dileep George's interesting PhD thesis, How the Brain Might Work: A Hierarchical and Temporal Model for Learning and Recognition (pdf), I can't help but conclude that academics, in general, love to complicate things just for the sake of complexity. It might also be a way to impress one's peers. I mean, unless one can show one's mathematical prowess, regardless of its relevance to one's thesis, one can forget about becoming a doctor in philosophy. Dr. George apparently believes that mathematics, in the form of Bayesian belief propagation equations, is essential to perceptual learning and recognition. I think he is mistaken. I believe that a fully functional artificial brain can be implemented with nothing fancier than basic arithmetic operations. What Dr. George calls belief propagation can be done simply by having every node at the input level in a hierarchy trigger a recognition signal whenever its input signals add up to a majority. This works for both sequential and concurrent pattern recognition. Repeat the same method at every level in the hierarchy until an entire branch is activated, indicating that a certain object has been recognized. By the way, this is what Zechariah was alluding to in his little occult book when he wrote:
[...] Behold, I will bring forth my servant the branch.
[...] And I will remove the iniquity of that land in one day.
The books of Zechariah and Revelation use terms like filthy garments or iniquity to refer to noisy and incomplete data. The ability to work with corrupted (filthy) data is what pattern recognition experts call pattern completion. It is a natural consequence of an intelligent system's predictive capability. It is a very powerful and effective mechanism, yet extremely simple. I know this because I use it in Animal's tree of knowledge. It is powerful because it allows an intelligent system to recognize sensory patterns even in situations where only partial or noisy information is available. Again, it can all be done with simple arithmetic operations. No need for any fancy math. In my opinion, mathematics is very much overrated. I have found that it is not needed in almost all cases.

[Why do I bring up my work on Biblical symbolism in this critique? Because, as seen in the last section below, it is a crucial part of the point that I want to make.]

Non-Universality

In spite of Hawkins' claim that Numenta's HTM technology is universal in that it can handle any kind of sensory learning, Numenta's current focus is restricted to visual learning and recognition. So it is no surprise that their literature frequently mentions spatial patterns as seen below:
An HTM region learns about its world by finding patterns and then sequences of patterns in sensory data. The region does not “know” what its inputs represent; it works in a purely statistical realm. It looks for combinations of input bits that occur together often, which we call spatial patterns. It then looks for how these spatial patterns appear in sequence over time, which we call temporal patterns or sequences.
I think that using the term "spatial patterns" to refer to concurrent inputs is distractive and misleading because, from the point of view of the learning algorithm, there is no such thing as a spatial signal. It is all temporal, in the sense that the only relationships that can exist between discrete signals are simultaneity and sequentiality. The problem is that Numenta's approach forces them to determine in advance the boundaries of those spatial patterns. For example, in the case of vision, the designer is forced to select a small square area of pixels to act as inputs for the low-level concurrent pattern learner. This is a mistake, in my opinion, primarily because important information can be overlooked as a result of using arbitrarily restrictive boundaries. One wonders how Numenta would set boundaries for concurrent audio patterns.

A five-node sequence
Furthermore, I disagree with Numenta's idea that concurrent patterns (depicted as multi-input nodes in the above diagram) must be learned before sequential patterns. In my opinion, the suitability of input signals to a given concurrent pattern (a node in a particular sequence) is not determined solely by their simultaneity but also by whether or not the node belongs to the sequence. In other words, frequency is the main fitness criterion for temporal learning. I have written about this before.

Note: I have since changed my mind on this. I now believe that patterns must be learned independently of sequences. (10/23/13)

Christian AI Versus Atheist AI

Hawkins is very dismissive of those he disagrees with although I don't fault him for that. I think that, right or wrong, we should all have the courage to stand for what we believe in. Hawkins essentially dismisses the entire symbolic approach to AI taken during the latter part of the twentieth century by early AI pioneers like Herbert Simon, Marvin Minsky, John McCarthy and many others. He does not come right out and say that the symbolic AI gang is out to lunch (which they are, in my view) but it is obvious that his ideas on intelligence leave no room for all that symbolic nonsense. However, even though Hawkins preaches that atheists should not go around proclaiming their atheism for fear of antagonizing religious folks (the majority), he himself makes no bones of the fact that he is an atheist and an evolutionist. He wears the label proudly. Those of us who believe that the universe was intelligently designed and created are all a bunch of idiots in his view.

One of the reasons that I am bringing this up is that someone suggested in a recent comment that I should embrace Hawkins' technology and consider partnering with others on AI projects based on Numenta's HTM. The truth is that I have indeed thought of doing so in the past but I have since decided that Hawkins' virulent atheism turns me off. Not just because I am a Christian, but because Hawkins preaches that the best way to promote atheism is for atheists to accomplish great technological and scientific feats in the name of atheism. I, by contrast, I am of the opinion that the best way to advance Christianity is for Christians to accomplish great technological and scientific feats in the name of Christianity. And, like Hawkins, I put my money where my mouth is. I am already claiming that I obtained almost all of my understanding of the brain and intelligence from deciphering a few ancient Biblical metaphorical texts. I am even willing to go out on a limb and claim that, based on my interpretation of the ancient texts, I understand enough about the brain to write a computer program that, given adequate computing resources, will learn to behave intelligently in a manner similar to human beings.

It may indeed be possible to study human behavior and the brain's biology and use one's findings to eventually figure out how human intelligence works but, in my opinion, this approach will take a very long time. It is the approach that I originally took when I first became interested in AI. It did not get me very far because neuroscience is too chaotic. Finding relevant information by browsing the literature is like searching for the proverbial needle in the haystack. I have since found what I believe to be a much better and faster way to solve the AI problem. I realize that my approach is rather unconventional but I have researched it on and off for more than eight years and I am convinced now more than ever that I am on the right track. After all, how is it possible that my findings are in basic agreement with neuroscience and Hawkins's own ideas?

There can be no doubt that my world view and my approach to AI is anathema to atheists like Hawkins. Paul Z. Myers, an atheist biologist who seems to have a major bone to pick with Christians, once wrote an entire blog article to ridicule me. But there is a flip side to this coin. I am just as dismissive of Hawkins and his atheist colleagues in the scientific community as they are of Christians like me. Hawkins is one of those deeply religious people (we are all religious, especially if we are convinced that we are not) that I have taken to calling dirt believers. Essentially, a dirt believer is a person who is convinced that matter (dirt) sprang out of nothing all by itself and that life sprang out of dirt all by itself. I think this is an excruciatingly idiotic view (for reasons that I will not go into because they are beyond the scope of this post). Consequently, there is no way I will cooperate or partner with either Jeff Hawkins, Dileep George or any other atheist in intelligence research or pretty much anything else. The way I see it, what we have here is a battle between the atheist AI and the Christian AI. May the best religion win.

See Also:

Missing Pieces in Numenta's Memory Model
Rebel Cortex

1. Dr. Dileep George has left Numenta to form his own AI company, Vicarious Systems. Like Hawkins, Dr. George is also an atheist.

Thursday, April 21, 2011

Coding Again

Writing Code for Animal

I'm programming again. Yesterday, I dusted off the last incarnation of Animal, my intelligent computer chess project, and fired up Visual C# for Windows. Not surprisingly, it's taking me a little time to readjust to C#, Microsoft's .net environment and, of course, my old code. I chose C# because it is a better and faster C++ type language, and I am good with C++. I picked the Microsoft XNA Game Studio environment because it will make Animal compatible with three computing platforms: Windows, Xbox 360 and Windows Phone. Converting it afterwards to run on Apple's IPad or an Android device should not be too hard.

Using my much improved understanding of the brain as a guide, I have already decided to delete several old memory classes from the project. First of all, I need to design a brand new tree of knowledge, including both leaf and branch nodes and various auxiliary classes. I will also need a new pain and pleasure module and I will have to modify the motor layer for faster motor learning and better motor coordination. Finally, I need to debug the load and save module. It's all slow going (I don't have much spare time) but I've learned to be patient over the years.

I'll let you know how I'm progressing. Hang in there.

Sunday, April 17, 2011

Intelligent Computer Chess, Part IX

Part I, II, III, IV, V, VI, VII, VIII, IX

Abstract

In Part VIII, I explained the difference between long-term and short-term memory. I described how effectors and actuators work and I wrote that the concept of complementarity can be used to design a coordinated motor system free of conflicts. In today's post, I explain how to connect the tree of knowledge to the motor system in a way that will generate intelligent motor behavior in a changing environment.

The Intelligent Behaving System

Intelligent sensorimotor behavior is a process that involves a feedback loop as follows:
  1. Changes in the environment are picked up by complementary sensors.
  2. The sensors generate signal streams that are fed into a signal separator.
  3. The separator separates the streams into meaningful signals which are fed into a pattern recognizer.
  4. The recognizer detects patterns and generates signals that are sent to a stream assembler.
  5. The assembler combines the signals into streams which are fed to complementary effectors.
  6. The effectors cause changes in the environment and the cycle begins anew.
The following diagram shows the bare minimum that is necessary for coherent behavior.
The important thing to note in the above diagram is that the system is not just what is in the brain. The environment is an integral part of it. The assembler must insure that motor command signals fed to the effectors are not in conflict with each other. The pattern recognizer is, of course, none other than the tree of knowledge. The system is highly symmetric. Notice that the environment and the TOK are complements of each other. In this light, behavior is seen to involve not just what an intelligent agent does to the environment, but also what the environment does to the agent. If you think about it for as long as I have, it will eventually dawn on you that the intelligence of an organism really resides in the environment.

Sensorimotor Pathways

The question that immediately comes to mind is, how does the TOK generate motor signals? The answer is that every time a low level node detects a sequential pattern, a signal is emitted. This signal can serve as a motor command that can be sent directly to an effector.
But why are only the low level nodes allowed to generate motor signals? Why can't the higher level nodes also generate them? The main reason has to do with the need for fast actions in response to environmental stimuli. Survival demands quick reactions which, in turn, depend on having very short sensorimotor pathways. The tree of knowledge is not a signal processor in the normal sense of the word. That is to say, signals do not come in at one end (the lower level), go through various processing layers and finally come out at the other end (top level). That would be way too slow.
Note: Over the years, various AI researchers, especially starting with Rodney Brooks in the 1980s, have warmed up to the idea that motor actions should be tightly coupled with sensory signals, i.e., with the environment. You can read about Brooks' subsumption architecture if you are interested in a radically different take on AI. As an aside, you may notice that a branch in the TOK is loosely analogous to a layer in Brooks' subsumption system, with the main difference being that the subsumption architecture does not have a tree of knowledge.
The TOK is an event classification/recognition/attention/prediction mechanism. Its primary purpose is to organize knowledge in a temporal hierarchy of related nodes. Within the context of motor behavior, it serves as a selector or switched conduit for signals arriving from the sensory layers. Sensorimotor behavior thus involves no computation. Essentially, there is a direct link between sensed events and the actions that they generate. I realize that this is somewhat counterintuitive. I expand on this topic in the motor coordination paragraph below.

Action Selection

One of the more obvious observations we can make about behavior is that it is highly selective. That is to say, we do not react to everything we sense all at once. The main reason is that, given the limited number of available effectors, trying to perform more than one task at a time would quickly generate all sorts of motor conflicts. So there is a need for a mechanism that limits the number of tasks the brain can do at a time. One of the nice things about the tree of knowledge is that it organizes events into neat packages called branches and allows only one branch to be active at a time. Since only the active branch can emit motor command signals, this effectively eliminates a huge number of potential conflicts. Furthermore, it restricts the generation of motor commands to temporally related events. So the TOK is itself the primary action selection mechanism. But there is more to it than that.

We all know from introspection that we do not automatically react to events all the time. Most of the times, we refrain from reacting. For example, we do not close the window every time we notice that it's open. Sometimes, we refrain from doing anything other than just observing. So obviously, the function of the action selection mechanism is to decide on not just what action to take but also on whether or not to take any action at all. This is a very important aspect of intelligence, one that is related to other topics such as adaptation, survival and conditioning. I will get back to this subject in a future article.

The Amazingly Simple Secret Behind Motor Learning and Coordination: Faith

Motor learning is amazingly simple. It consists of randomly connecting the low-level nodes from a branch of the tree of knowledge to various effectors and wait to see if they generate motor conflicts (see the previous post for more on motor conflicts). Connections that cause conflicts are strongly weakened and almost immediately severed. Eventually, only harmonious connections survive and the system automatically generates coordinated behavior such as walking, navigating and manipulating objects. I know, it all seems like magic. How does it work? I mean, how can there be intelligent behavior if there is no computation? The reason that this is possible is that the driving factor behind intelligence is not really in the brain but in the environment. In other words, pretty much all the computations that are necessary to generate intelligent behavior are performed by the environment, not the brain. By the time the sensors pick it all up, it has already been properly and thoroughly computed. As I have written previously in this series, intelligence is all in the timing of events. In this light, the brain is no more than a big organized switchboard, one which has faith that the environment will do the right thing and do it consistently even if the information captured by the senses is not always perfect.

Brave New World

I've decided to keep a couple of important aspects of my understanding of intelligence close to my chest for the time being. As I wrote elsewhere, I need to consider a way to use this knowledge to generate funds for my research. Regardless of what I do, there is no doubt in my mind that we live in interesting times and that the age of truly intelligent machines is just around the corner. It is much closer than even the most optimistic members of the artificial intelligence community (e.g., people like Ray Kurzweil and the folks at the Singularity Institute) suspect. Needless to say, it will profoundly transform the world in ways that we can't even begin to fathom. It has the potential for both good and bad. We can only hope that it will all turn out for the betterment of humanity. Stay tuned.

See Also:

The Deep Question: A Talk With Rodney Brooks

Tuesday, April 12, 2011

Should I or Shouldn't I?

The Need for Funds

I need money to continue my research in artificial intelligence and fundamental physics. I've had a plan to establish a Rebel Science Research Institute and hire engineers and teachers to work on various research and educational projects. But that takes money, lots of it. At this point, I am thinking that the best way for me to raise the funds that I need would be to use what I've already discovered in my AI research to develop a marketable product. Probably the most useful AI product is an intelligent robot that does all your work for you. However, designing and building a smart and reliable robot is a hugely expensive undertaking. So this is out of the question, at least for the time being.

Chess and GO

I figure that there is a small but significant market for a chess program that can be trained to play progressively better games. There is an even greater market for a powerful computer GO program. GO is an extremely popular board game, especially in Asian countries such as China, Japan and Korea. However, the best computer GO programs are somewhat disappointing because they can only play at a beginner's level. Any GO program that can play a reasonably good game (advanced amateur level or better) would be a huge success. GO is the sort of game that cries for an AI solution because the search space is so huge that using brute force to search through it is a waste of time, even for a super computer. I reason that I could start with an intelligent chess program for the mobile app market (Apple, Android, etc.) and use the profits to finance the development of a GO program. Subsequent profits would go into forming the Rebel Science Research Institute.

Quandary

I find myself in a sort of a quandary. Should I continue with my series on Intelligent Computer Chess or should I keep my understanding a secret for the time being and use it to develop a commercial product? You may not think so but I've already revealed a lot of crucial information about how the brain works, stuff that you will not find anywhere else. And my next post in the series will be even more revealing, as it will come close to letting the whole cat out of the bag, so to speak. Should I or shouldn't I? I need a little time to think about a proper course of action. Stay tuned.

Monday, April 4, 2011

Intelligent Computer Chess, Part VIII

Part I, II, III, IV, V, VI, VII, VIII, IX

Abstract

I apologize for taking so long to post this new installment. In Part VII, I explained how the memory builder builds permanent seven-node sequences in memory. Every sequence can itself be a node in a higher level sequence in the tree of knowledge. In this post, I explain the difference between short and long-term memory and the mechanism of motor behavior in Animal.

Memory as Recording Medium

Memory is a neural medium for recording signal sequences. Unless there is a pre-built neural structure that is ready to record a specific sequence of events, it cannot be recorded.
A five-node sequence
This is the reason that a written word (e.g., apple), shown to someone who cannot read English, will not be remembered as a word. The reason is that the high-level neural structures that are needed to recognize and record the word have not yet been constructed. Thus the memory system must anticipate potential event sequences and build the corresponding neural structures, otherwise there can be no learning and no remembering. It can do this by forming as many possible sequences as it can at every level of the memory hierarchy. Obviously, this can quickly become prohibitive, as the number of possible sequences is astronomical. There has to be a way of restricting the number of potential sequences in memory without the system running the risk of missing something important. This is a major problem, one that explains, in my opinion, why animals are not as intelligent as humans. I'll get back to this topic in a future article.

Short-Term Memory vs. Long-Term Memory

Short-term memory (aka attention or working memory) is whatever branch of the tree of knowledge is currently active. It is called short term because, unless it is reinforced by new sensory inputs, the branch can only remain active for a short period, about twelve seconds in the human brain.

The active branch has an initially high attention strength that slowly diminishes. Eventually its strength weakens to the point where the branch is deactivated and is replaced by another branch. However, an active branch can be preempted by another branch even before it has run its course. The reason for this has to do with survival. For example, you don't want your brain fixated on the little kitty on your lap while a lion is roaming nearby. The roar or the sight of the lion should wake up an appropriate branch in your tree of knowledge and put the kitty branch to sleep, otherwise you run the risk of being killed and that would be a bummer.

Effectors

Having a robot with the ability to remember things is great but unless it can use this ability to interact with its environment, it's not going to do it much good. Sooner or later, we must ask ourselves, how do we use the tree of knowledge to move our muscles? Although the solution may turn out to be easy, this is not an easy question to answer. First of all, before we can even think of a proper way to generate motor signals, we need to understand how the motor system works. I found out over the years that complementarity (the use of opposites) is the key to solving every hard problem in intelligence research.

On the one hand, we have positive and negative sensors that detect the onset or offset of sensed (input) phenomena; and on the other, we have positive and negative effectors that trigger (or effect) the beginning and end of motor (output) phenomena. An effector is a special neuron that controls an actuator (e.g., a muscle or a valve). An actuator has two modes; it can be either activated (started) or deactivated (stopped). A positive effector starts an actuator while a negative effector stops it. For example, in Animal, there are separate effectors that commands the Eye to move to the left, right, up and down. Other effectors move the gripper in various directions and still others cause it to grab or release a chess piece.

Complementarity and Motor Coordination

An actuator must have at least two control effectors, a starter and a stopper. However, since actuators are limited in number, they must be shared by different parts of the intelligent system. As a result, an actuator may receive command signals from an indefinite number of effectors. The problem is that we run the risk of having conflicting motor signals if the system attempts to accomplish different tasks at the same time. We obviously do not want different parts of the brain to try to use the same set of effectors at the same time. It turns out that complementarity is the key to properly design a well-coordinated motor system. The rules of motor coordination are:
  1. An actuator must not receive more than one command signal at a time.
  2. An actuator must not receive a start command if it is already activated.
  3. An actuator must not receive a stop command if is already deactivated.
These amazingly simple rules are the basis of intelligent motor behavior and motor learning in the brain.
Note: Let me take this opportunity to remind my readers that I developed my understanding of the brain's memory and motor systems almost entirely from my interpretation of certain symbolic (occult) passages in the Bible, especially the metaphorical letters to the seven churches of Asia in the book of Revelation and Zechariah's vision of the seven-lamp golden lampstand, the branch and the two olive trees. Again, if you have a problem with my Biblical research or if you believe that I'm some kind of nut, then my blog is not for you. I write only for kindred spirits, sorry.
Coming Up: Connecting the Tree of Knowledge to the Motor System

Now that we know what the motor system expects from us, we have enough understanding to figure out a way to use the tree of knowledge to generate intelligent motor behavior. I will cover this topic in Part IX.

Wednesday, March 23, 2011

Intelligent Computer Chess, Part VII

Part I, II, III, IV, V, VI, VII, VIII, IX

Abstract

In Part VI, I wrote that the fundamental building blocks of memory is a sequence of up to seven nodes. Since memory is organized hierarchically, like a tree, any bottom level sequence can serve as a node in a higher level sequence, itself consisting of up to seven nodes. The tree is open ended, that is to say, the number of levels is indefinite. In this post, I will describe the memory builder, i.e., the mechanism that combines incoming signals into sequences. I will also describe how the tree of knowledge is used for pattern completion and recognition purposes.

Sequence Learning and Certainty

Signals arriving from the separation layer have temporal relationships that can be learned. There are only two possible temporal relationships: signals can be either concurrent or sequential. Any two correlated signals, whether concurrent or sequential, will retain their relationship every time they repeat. In other words, they will have the same frequency. This is a powerful observation that we can use to devise a memory builder.
A five-node sequence
Currently, Animal's sequence learning mechanism consists of two parts. One part serves as a filter that eliminates all signals whose frequencies do not match that of a reference signal. The second part is the sequence learner proper. Its function is to position the signal input lines on appropriate nodes in the sequence. Note that a node may receive multiple concurrent signals but not all the signals at a given node must arrive concurrently in order for the node to fire. For recognition purposes, node firing certainty is determined by the number of signals arriving at that node.

The way this works is as follows. A signal input line is chosen at random to serve as the reference signal for a sequence. Other lines are attached randomly to the sequence and are tested for frequency fitness. That is to say, their signals must have the same frequency as the reference signal. The lines attached to each individual node are tested for concurrency at that node. An important rule is that an input line can only be connected to one node in the sequence. Eventually, the sequence forms and it is up to the sequence learner to determine the predecessors and successors and link them accordingly. Once a sequence is learned, it can be subsequently reused for recording and recognition. The temporal intervals between the nodes are recorded and used for prediction purposes.

Long Term Memory, Pattern Completion and Recognition

It is important to note that a correlation may only last for a little while. For example, while looking at someone's face, the eye moves in small jerky movements called saccades. These will generate correlated signals that depend on the particular features of the face. The memory builder must be able to rapidly detect the correlations and remember them. That is to say, it must create permanent sequences in memory. Later, if the same face reappears in the field of vision, the recorded sequences will be reactivated and reused. Thus, long-term memory consists of recorded sequences.

The way recognition works in the tree of knowledge (TOK) is both simple and powerful. Upon receiving signals from the separation layer, bottom level nodes will activate higher level nodes. Multiple low-level activations in the right order can activate upper level nodes. Eventually, an entire multi-level branch of the tree will be activated when, say, a cat appears in the visual field. What makes this mechanism powerful is that a branch can be activated even in situations of sensory uncertainty, such as a partially occluded image or an object viewed under low light conditions. This is called pattern completion. Without it, we would not be able to understand or navigate the world around us.

Coming Up

Pattern completion is really synonymous with anticipation. Given enough sensory information, our brains can anticipate the future and this ability is what drives our goal-directed behavior. In Part VIII and Part IX, I will explain the difference between short and long term memory and describe how the tree of knowledge is used to generate adaptive motor behavior.

See Also:

The Brain: Universal Invariant Recognition