There is no doubt that Artificial Intelligence (AI) is one of the leading technologies today. It appears on any article which talks about technology trends for the current year, the next year, and the next decade. There are more any more people are learning about AI, and notably, Machine Learning, in order not be left behind the world!
However, surfing the Internet, you will see many questions such as: « What is the difference between Artificial Intelligence and Machine Learning? » or « How Deep Learning differs from Machine Learning? », etc. It comes from the fact that Machine Learning and Deep Learning are now becoming so very hot topics that when people talk about AI, we think about Machine Learning!
If you look at the following graph showing the Google Trends result for « Machine Learning » (the blue line) and « Artificial Intelligence » (the red line), you will clearly see an overtaking: until 2010, AI had been receiving more attentions, but since a decade ago, the number of searches for « Machine Learning » has been increasing drastically.
Actually, Machine Learning is just a branch of AI, and Deep Learning is just a branch of Machine Learning!
Indeed, AI is a very, very large field of research, and believe or not, there has never been an officially accepted classification for AI’s branches. But in general, according to many researches, there are two ways to classify AI, based on challenges, and on approaches. The former means problems, objectives, or tasks, and the latter means solutions or methodologies. Actually, challenges and approaches are two different viewpoints of AI, and are sometimes perpendicular. More precisely, an approach can be employed to solve several challenges, and a challenge may require a combination of some approaches.
First, we talk about challenges in AI.
In fact, the overall objective of AI is to create technologies that allow computers and machines to function intelligently. And this overall objective can be broken down into sub-problems, or sub-challenges such as reasoning, learning, planning, perception … that are going to be detailed as follows.
Perception is the ability to use input from sensors to deduce aspects of the world, just like human senses the world by using eyes, noses, ears, mouths, and hands. Examples of sensors may include: cameras (for vision), microphones (to receive voices), tactile sensors (for sensing touches), also we have ultrasonic sensors to detect objects, or radar sensors. And some examples of perception in AI applications are voice recognition, object recognition, or obstacle detection, etc.
In fact, learning is the ability of computer program to automatically learn from experiences to improve performances. For example, you show thousand images being labeled as with or without dogs to an intelligent agent, and the next time when it sees a new image, it should be able to tell you whether a dog appears in the image or not.
This is the ability of intelligent agents to visualize the future and to make predictions about how their actions will change it, in order make optimal choices.
This is the ability to represent information about the world in a form that a computer can use to solve complex tasks e.g. having a dialog with human in a natural langue. This ability is inspired from the way human solves problems, and it incorporates many findings from psychology. The objective of knowledge representation is to create formalism to make complex systems easier to be designed and built.
Natural Language Processing (NLP)
This is the ability of intelligent agents to read and understand human language. The most challenges in NLP are: speech recognition, natural language understanding, and natural language generation.
Artificial General Intelligence (AGI)
AGI is the ability of intelligent agents to understand and learn any intellectual tasks that human being can. So, it means that the objective of AGI is to have an exact clone of human intelligence. It is also referred to as Strong AI or Full AI (to distinguish from Weak AI or Applied AI). However, you should know that AGI is still not the final objective of AI, because people also talk about Super Intelligence, that is, any intellect that exceeds human intelligence!
Classify AI’s branches based on approaches
On the other hand, along the history of AI, many approaches have been developed to deal with the above challenges. And although there has been no clearly defined boundary in AI researches, we can safely say that AI approaches can be divided into three large branches: symbolic, sub-symbolic, and statistical.
In fact, Symbolic can be considered as the first generation of AI approaches. And it was very successful in the 1960s, today people often call it: GOFAI, which stands for Good Old Fashioned AI. This branch is aimed at mimicking human intelligence by using symbol manipulations, and it focuses on cognitive simulation, logic-based, and knowledge-based intelligence.
However, Symbolic AI failed by the 1980s because it could not resolve hard problems such as perception, learning, and recognition. Even many AI scientists at that time believed that we could never simulate human intelligence by using symbolic approaches. This question, still remains unanswered, because there have been still many arguments stating that symbolic AI will be still necessary for AGI (Artificial General Intelligence). Anyway, because of failures in 1980s, many AI scientists started looking for SUB-symbolic solutions.
In contrast with Symbolic AI, Sub-symbolic AI tries to approach intelligence without specific representation of knowledge. There are two main branches of Sub-symbolic AI: Embodied intelligence and Soft computing.
Embodied intelligence includes Embodied AI, situated AI, and nouvelle AI. This branch focuses on the design and understanding of intelligent behavior in embodied and situated agents in the strict coupling between the agent and its environment. Robotics is a field that is highly related to and is beneficial from Embodied intelligence.
But what about Soft computing? Or its controversial synonym Computational intelligence? I bet that not many newbies heard about Soft computing but you should know that the hottest AI subjects today are very relevant to Soft computing. For example Machine Learning, Deep learning, or Fuzzy logic, and Evolutionary Computation belong to the branch of Soft Computing!
As its name, Soft Computing deals with approximate models to solve complex problems. In contrast with hard computing, soft computing is tolerant of imprecision, uncertainties, and partial truths.
After the failure of Symbolic AI in the 1980s, AI scientists found that the problem of Symbolic AI is that it could not generalize real-world results. Around the 1990s, people started using sophisticated mathematical models and statistical approaches and have obtained many good results with higher accuracy. Some examples of techniques used in statistical AI are Hidden Markov Models, Information theory, and Normative Bayesian decision theory …
Actually, throughout your research in AI, you may find that sometimes statistical AI and sub-symbolic AI are overlapping in some methods, but anyway, people prefer to put statistical AI into a separated branch. Indeed, statistical AI needs to be supported by a large volume of real-world data. Moreover, another disadvantage of statistical AI is that it is considered as black-box AI, meaning that the statistical intelligence is normally not explainable.
So, as you have already seen, AI is a very large field of research, and there are two ways to classify AI’s branches: based on challenges, and on approaches.
Interesting, Machine Learning can be appeared in those two types of classification. If we consider challenges, Machine Learning is equivalent to the learning problem, and if we consider approaches, AI is a sub-branch of Soft Computing. Anyway, today Machine Learning is considered as the most important branch and it has been receiving more and more attentions. For those who is still confusing about the relation between AI, Machine Learning, Deep Learning, and Neural Network, the following figure is a bonus. In deed, Deep Learning is just the modern term of many-layer Artificial Neural Networks which is considered as the most emerged Machine Learning technique today.
If you really want to get a solid background in AI and Machine Learning with step-by-step explanations to the most fundamental algorithms as well as real-world exercises, I strongly recommend you to check my comprehensive course which is now fortunately on 90% sale off.
If you find this post interesting and useful, feel free to share it.
Thank you for reading!