It has been nearly 60 years since they first officially coined the term Artificial Intelligence, yet to this day it remains a complete mystery to most people. What is artificial intelligence? How can it be used in business?
Although the exact definition of artificial intelligence lends itself to a broad debate, for the sake of this article, we will say that artificial intelligence is the ability of a computer program to learn how to perform a task for which it was not explicitly programmed to complete.
By using this definition, the first thing we have to understand is that theoretically any computer program can be resolved by artificial intelligence, but this is not always necessary or appropriate. For example, we could design an AI application that can learn to solve linear equations like a human being. However, this wouldn’t make much sense. Solving linear equations is entirely mechanical, easy to automate and we can already make a program that specifically performs this task with a 100% success rate. A solution based in AI could learn as a human does, but ultimately, it would be in danger of making the same mistakes that we do.
So then, what problems should we resolve with AI? Very simple, those that cannot otherwise be solved. When our problem is not mechanical nor can be solved with a set of defined steps, then we must use techniques that are able learn the steps autonomously.
But before we see which problems we can automate, let’s explain a bit about the functionality of one of the most powerful methods of artificial intelligence that exists today: Neural networks.
In computing, neural networks emulate the operation of our neurons to achieve the same learning ability. A neural network is a set of interconnected artificial neurons. Each artificial neuron consists of a number of inputs and one output. The neuron performs a series of calculations on the entries to return an output value. The interesting thing about these neurons is the weight of each entry into that calculation can be changed during a learning stage to “force” a specific output.
Neural networks are generic structures. They are programmed without regard to its purpose, and once programmed they are taught to solve a problem. The way to learn is the same as that of any living animal: they learn by example. Once a neural network is assembled, we begin to provide examples of inputs and outputs. For each new example, the weights of all the neurons are recalculated to comply with what we ask. With enough examples, the neural network itself is able to “understand” the problem and solve entries for which it has not been specifically trained.
This paradigm of artificial intelligence is possibly the most powerful approach for solving any problem of automation (at the end of the day, it’s the same system that we use in our brain). You can solve problems that SVM, genetic algorithms or other AI techniques cannot address, but it is also a more complex method and requires massive computing power to provide good results.
However, because we don’t have to host these powerful programs in our own neural network, we can take advantage of this technology in our business. Stay tuned, in the second part of this article we will learn to how to use Google services and computing power to design our own AI.