When someone asked me that question “what is the opposite of Artificial Intelligence?”, my immediate response was “human stupidity?” But just a few days ago, one of my colleagues, who shares my enthusiasm (or one can say geekaism) for AI based technology, sent me this GIF that illustrates so well the old ways of thinking about automation and autonomous software, and I thought it is the perfect illustration of the answer to that question.
Nested IF/ELSE statements are NOT Artificial Intelligence, they depict exactly the opposite. But, why? The answer is in Artificial Neural Network, ANN for short.
ANN was developed when we realized that the human mind preforms tasks in a manner that is significantly different than the way a conventional digital computer performs the same task. The human brain is complex, a-linear, and parallel, and can manage its “processors” in way that allows it to perform tasks such, saving and retrieving information and making decisions 100s of times faster compared to the fastest standard digital computer that exists today.
Artificial Neural Networks are a computerized attempt to mimic the way the human brain works by following the two core capabilities of our brains:
- Learn: A baby is born with very little information about its surroundings, mostly with biological instincts, but she has the capacity to learn, by collecting experience and experiences. The dramatic development of connections between the brain neurons occur during the first two years of life, but it continues to happen through life.
- Adapt: The mind can change its processing “rules” based on new information and environmental changes. Adaptation to change is a critical in efficient processing and thinking.
So, simply put, Artificial Neural Network is a parallel and distributed processing mechanism. It is comprised of several simple processing nodes that can connect and pass information between each other, with a goal to learn and adapt. The connections between the nodes are organized by a term called synaptic weight, which refers to the strength or amplitude of the connection. The “learning” and “adapting” part of the network happens when an algorithm changes the synaptic weight of a node, and enables the creation of new connection between nodes, thus changing the topology of the network.
One immediate gain of the distributed and parallel processing of the neural network is that it can compute faster, but that is not the main value of neural networks. Neural Networks demonstrates impressive performance and agility when having to compute in an environment of volatile and incoherent data, such as speech, handwriting, and facial recognition, and is mostly known for being the artificial intelligence engine behind autonomous (self-driving) cars.
Now I’d like to consider these capabilities within the context of my key areas of focus – data integration and data management. The universe of data integration is also complex and volatile. Data types are now characterized not just by the large volumes, but also by to their velocity, variety[i] and variability and “Data Drifting” became a term that is commonly used to depict the fluctuation in the way, the pace, and the content of data in these new data types. This happens, because many variables impact the content of the data: the machine from which it is generated, the OS version, the date, the geographic location, the browser used and many more. All this is posing a serious challenge to organizations that are trying to collect and makes sense of the new data. ANN can help solve this problem, like how car manufacturers are laser focused on developing self-driving cars, you can expect your data integration software to offer “self-integrating” capabilities to help enterprises manage the volatile data environment in which they must operate.
And I will leave you with one last note to illustrate how powerful this idea of a machine that thinks like a human, can be. Last year, Google demonstrated the use of ANN to train another ANN, they call it AutoML[ii], which is even offered as an API. A machine training another machine, an evolution of Artificial Intelligence.