Before discussing different AI techniques and algorithms, we will look at the fundamentals of artificial intelligence and machine learning and go over a few basic definitions. Then, using engaging examples, we will move forward in the book. Real-world examples will be used to present the basic concepts of artificial intelligence in an easy-to-digest way.
If you want to be an expert at something, you need to be very good at the fundamentals. So, let's begin by understanding what artificial intelligence is:
Definition: Artificial Intelligence (AI) is a science that's used to construct intelligence using hardware and software solutions.
It is inspired by reverse engineering, for example, in the way that neurons work in the human brain. Our brain consists of small units called neurons, and networks of neurons called neural networks. Beyond neural networks, there are many other models in neuroscience that can be used to solve real-world problems in artificial intelligence.
Machine learning is a term that is often confused with artificial intelligence. It originates from the 1950s, and it was first defined by Arthur Lee Samuel in 1959.
Definition: Machine learning is a field of study concerned with giving computers the ability to learn without being explicitly programmed.
Tom Mitchell proposed a more mathematically precise definition of machine learning.
Definition: A computer program is said to learn from experience, E, with respect to a task, T, and a performance measure, P, if its performance on T, as measured by P, improves with experience E.
From these two definitions, we can conclude that machine learning is one way to achieve artificial intelligence. However, you can have artificial intelligence without machine learning. For instance, if you hardcode rules and decision trees, or you apply search techniques, you create an artificial intelligence agent, even though your approach has little to do with machine learning.
How does AI Solve Real World Problems?
Artificial intelligence automates human intelligence based on the way human brain processes information.
Whenever we solve a problem or interact with people, we go through a process. Whenever we limit the scope of a problem or interaction, this process can often be modeled and automated.
AI makes computers appear to think like humans.
Sometimes, it feels like AI knows what we need. Just think about the personalized coupons you receive after shopping online. By the end of this book, you will understand that to choose the most successful products, you need to be shown how to maximize your purchases – this is a relatively simple task. However, it is also so efficient, that we often think that computers "know" what we need.
AI is performed by computers that are executing low-level instructions.
Even though a solution may appear to be intelligent, we write code, just like with any other software solutions. Even if we are simulating neurons, simple machine code and computer hardware executes the "thinking" process.
Most AI applications have one primary objective. When we interact with an AI application, it seems human-like because it can restrict a problem domain to a primary objective. Therefore, we get a chance to break down complex processes and simulate intelligence with the help of low-level computer instructions.
AI may stimulate human senses and thinking processes for specialized fields.
We must simulate human senses and thoughts, and sometimes trick AI into believing that we are interacting with another human. In special cases, we can even enhance our own senses.
Similarly, when we interact with a chatbot, we expect the bot to understand us. We expect the chatbot or even a voice recognition system to provide a computer-human interface that fulfills our expectations. In order to meet these expectations, computers need to emulate the human thought processes.
Diversity of Disciplines
A self-driving car that couldn't sense that other cars were driving on the same highway would be incredibly dangerous. The AI agent needs to process and sense what is around it in order to drive the car. But that is itself is not enough. Without understanding the physics of moving objects, driving the car in a normal environment would be an almost impossible, not to mention deadly, task.
In order to create a usable AI solution, different disciplines are involved. For example:
- Robotics: To move objects in space
- Algorithm Theory: To construct efficient algorithms
- Statistics: To derive useful results, predict the future, and analyze the past
- Psychology: To model how the human brain works
- Software Engineering: To create maintainable solutions that endure the test of time
- Computer Science or Computer Programming: To implement our software solutions in practice
- Mathematics: To perform complex mathematical operations
- Control Theory: To create feed-forward and feedback systems
- Information Theory: To represent, encode, decode, and compress information
- Graph Theory: To model and optimize different points in space and to represent hierarchies
- Physics: To model the real world
- Computer Graphics and Image Processing to display and process images and movies
In this book, we will cover a few of these disciplines. Remember, focus is power, and we are now focusing on a high-level understanding of artificial intelligence.