Skip to main content

Understanding Neocortex to Create Intelligence

There are two approaches to create intelligence in machines. One is to understand how human brain creates intelligence and replicate the methods used by it to create AI. The other is to take a fresh engineering approach to create intelligence.

There is an ongoing debate as to which approach is feasible or better. Few companies like Numenta and Vicarious have invested in understanding the neocortex. They have launched successful applications that work on the principles of neocortex. Other big companies including Google, Microsoft and Facebook use deep learning to create applications that can do major classification tasks. But deep learning does not exploit the concepts of neocortex, and hence is not up to the mark to do continuous learning. The deep learning models first go through a training phase and then the models are used to do classification.

The idea that makes neocortex truly intelligent is that it is able to do pattern matching and prediction. This has given humans the ability to survive and dominate the animal kingdom. Neocortex, a thin layer formed on top of the brain, started gaining prominence in mammals. A rat with a small sheet of neocortex is able to travel in a maze. It uses the trained patterns to predict the route in a maze. Researchers like Jeff Hawkins, founder of Numenta, believes that this ability of neocortex if replicated in machines will make them truly intelligent. He has created an architecture that exploits the hierarchy of neocortex. He calls it Hierarchical Temporal Memory (HTM). HTM is able to perform online learning like humans, where it doesn't need to use stored models, but the models get updated continuously.

Other approaches that model the neocortex have come into prominence and have received funding. The Blue Brain Project conducted by IBM has received a funding of $4.9 million. The idea is to artificially link the neurons in the computer by placing thirty million synapses in their proper three dimensional position. The Human Brain Project funded by European Union is attempting to provide a collaborative informatics infrastructure and first draft rodent and human whole brain models. Henry Markram is the director of both Blue Brain Project and Human Brain Project. He believes that the best way to figure out something is to try to build it from scratch.

Researchers at CereLabs believe that both approaches are essential for the success of a true AI company. We are keeping a close eye on deep learning as well as architectures like HTM. Although deep learning is giving us ready made solutions to create intelligence on your data, architectures like HTM will provide general intelligence solutions. We are betting on General Artificial Intelligence based on the concepts of neocortex. Are you?

Comments

Popular posts from this blog

Implement XOR in Tensorflow

XOR is considered as the 'Hello World' of Neural Networks. It seems like the best problem to try your first TensorFlow program.

Tensorflow makes it easy to build a neural network with few tweaks. All you have to do is make a graph and you have a neural network that learns the XOR function.

Why XOR? Well, XOR is the reason why backpropogation was invented in the first place. A single layer perceptron although quite successful in learning the AND and OR functions, can't learn XOR (Table 1) as it is just a linear classifier, and XOR is a linearly inseparable pattern (Figure 1). Thus the single layer perceptron goes into a panic mode while learning XOR – it can't just do that. 

Deep Propogation algorithm comes for the rescue. It learns an XOR by adding two lines L1 and L2 (Figure 2). This post assumes you know how the backpropogation algorithm works.



Following are the steps to implement the neural network in Figure 3 for XOR in Tensorflow:
1. Import necessary libraries
impo…

Understanding Generative Adversarial Networks - Part II

In "Understanding Generative Adversarial Networks - Part I" you gained a conceptual understanding of how GAN works. In this post let us get a mathematical understanding of GANs.
The loss functions can be designed most easily using the idea of zero-sum games. 
The sum of the costs of all players is 0. This is the Minimax algorithm for GANs
Let’s break it down.
Some terminology: V(D, G) : The value function for a minimax game E(X) : Expectation of a random variable X, also equal to its average value D(x) : The discriminator output for an input x from real data, represents probability G(z): The generator's output when its given z from the noise distribution D(G(z)): Combining the above, this represents the output of the discriminator when 
given a generated image G(z) as input
Now, as explained above, the discriminator is the maximizer and hence it tries to 
maximize