Learn about the application of Artificial Intelligence and Machine Learning from the book "The Application of Artificial Intelligence | Step-by-Step Guide from Beginner to Expert", Springer 2020 (~400 pages) (ISBN 978-3-030-60031-0). Unique, understandable view of machine learning using many practical examples. Introduces AI-TOOLKIT, freely available software that allows the reader to test and study the examples in the book. No programming or scripting skills needed! Suitable for self-study by professionals, also useful as a supplementary resource for advanced undergraduate and graduate courses on AI. More information can be found at the Springer website: Springer book: The Application of Artificial Intelligence. |
It is not always clear to people, especially if they are new to the subject, what we mean by machine learning and when and why we need it. A lot of people are aware of artificial intelligence (AI) from science fiction but they may not really understand the reality and the connection to machine learning. This article will explain in clear lay terms what machine learning and AI are, and it will also introduce the three major forms of machine learning: supervised, unsupervised and reinforcement learning. The aim is that after reading this article you will understand what, exactly, machine learning is and why we need it.
Machine learning is a process in which computers learn and improve in a specific task by using input data and some kind of rules provided to them. Special algorithms, based on mathematical optimization and computational statistics, are combined together in a complex system to make this possible. Artificial intelligence is the combination of several machine learning algorithms which learn and improve in several connected or independent tasks at the same time. At present, we are able to develop parts of a real artificial intelligence but we cannot yet combine these parts to form a general artificial intelligence which could replace humans entirely.
We could also say that learning in this context is the process of converting past experience, represented by the input data, into knowledge.
There are several important questions that arise: To which kind of tasks should we apply machine learning? What is the necessary input data? How can the learning be automated? How can we evaluate the success of the learning? Why don’t we just directly program the computer with this knowledge instead of providing the input data?
Let us start with answering the last question first. There are three main reasons why we need machine learning instead of just using computer programming:
- After a computer program is made it is difficult to change it every time the task changes. Machine learning adapts automatically to changes in the input data/task. As an example after software has been programmed to filter out spam e-mails, it cannot handle new types of spam without re-programming. A machine learning system will adapt automatically to the new spam e-mails.
- If the input is too complex, e.g. with unknown patterns and/or too many data points it is not possible to write a computer program to handle the task.
- Learning without programming may often be very useful.
Besides the above it is of course also a human desire to try to make an artificial intelligence, towards what we are evolving.
In order to be able to answer the other questions let us first look at a typical machine learning process.
First we need to decide which task to teach to a machine learning model considering the three reasons mentioned above. Next we need to decide which data and rules we need to feed to our machine learning model. Then we need to choose a machine learning model, train the model (this is when the learning takes place) and test the model to see if the learning is correct. Collecting the data, choosing the model, training and testing are all recursive tasks (note the arrows going back to former steps) because if the model cannot be adequately trained then we often need to change the input data, add more data or choose another machine learning model.
Machine Learning tasks can be classified into three main categories:
- Supervised Learning
- Unsupervised Learning
- Reinforcement Learning
We speak about supervised learning when the input to the machine learning model contains extra knowledge (supervision) about the task modeled in the form of a kind of label (identification). For example in the case of an e-mail spam filter the extra knowledge could be labeling whether each e-mail is spam or not. The machine learning algorithm then receives a collection of e-mails labeled spam or not spam and through this we supervise the learning algorithm. Or in the case of a machine learning based speech recognition system the label is a sequence of words (transcribed sentences). Or another example could be the labeling of a collection of images about animals for an animal identification task. With the extra knowledge of which picture contains which animal the learning algorithm is supervised.
There are already many real-world supervised learning applications and many more will be added in the future. Some of the existing applications are as follows:
- E-mail spam detection based on a collection of messages labeled spam and not-spam.
- Voice recognition based on a collection of labeled voice recordings. The labels identify the person who speaks.
- Speech recognition (part of comprehension) based on a collection of labeled voice recordings where the labels are the transcription of sentences.
- Automatic image classification based on a collection of labeled images.
- Face recognition based on a collection of labeled photos. The labels identify which photo belongs to which person.
- Determining whether a patient has a disease or not based on a collection of personal data (temperature, blood pressure, blood composition, x-ray photo, etc.).
- Predicting whether a machine (auto, airplane, manufacturing, etc.) will break down (and when it will break down – for predictive maintenance) based on a collection of labeled data from past experience.
Remember that we speak about supervised learning when the input to the machine learning model contains extra knowledge (supervision) about the task modeled in the form of a kind of label. When we do not have this extra knowledge or label then we speak about unsupervised learning. The aim of unsupervised learning is the identification of this extra knowledge or label. In other words, the goal of unsupervised learning is to find hidden patterns in the data and classify or label unlabeled data and use this to group similar items (similar properties and/or features) together, and thus put dissimilar items into different groups. Another name for unsupervised learning is clustering (grouping).
There are already many real-world unsupervised learning applications and many more may be added in the future. Some of the existing applications are as follows:
- Grouping shoppers together based on past purchases and other personal properties; for example, as part of a recommendation system.
- Market segmentation based on chosen properties, e.g., for marketing applications.
- Segmentation of a social network or a group of people, e.g., for connecting people together (as on a dating site).
- Detecting fraud or abuse (by applying unsupervised learning to better understand complex patterns in the data).
- Grouping songs together based on different properties of the music, e.g., on streaming platforms.
- Grouping news articles together depending on the contents or keywords, e.g., as part of a news recommendation application.
We could define reinforcement learning as a general purpose decision making machine learning framework used for learning to control a system. There are several important keywords in this definition which need some explanation. General purpose means that reinforcement learning can be applied to an unlimited number of different fields and problems; from very complex problems such as driving an autonomous vehicle to less complex problems such as business process automation, logistics, etc. Decision making means carrying out any kind of decision/action depending on the specific problem, for example, accelerating a car, taking a step forward, initiating an action, buying stocks, etc. Controlling a system means taking actions in order to reach a specific goal, where the specific goal depends on the problem (e.g., reaching a destination, having profit, being in balance, etc.).
There are currently many real-world reinforcement learning applications and no doubt more will be developed in the future. Some of the existing applications are as follows:
- Self-driving cars. A control system based on reinforcement learning is used to adjust acceleration, braking and steering.
- Automated financial trading. The reward is based on the profit or loss for each trade. The reinforcement learning Environment is built using historical stock prices.
- Recommendation systems. The reward is given when, for example, the users click on an item. Real-time learning improves the machine learning model or recommendation systems are trained on historical data.
- Traffic light control.
- Logistics and supply chain optimization.
- Control and industrial applications, e.g., for optimizing energy consumption, efficient equipment tuning, etc.
- Optimizing treatment policies or medication dosage in healthcare.
- Advertising optimization.
- Various types of automation.
- Robotics.
- Automated game play.
This article is a slightly modified excerpt from the book “The Application of Artificial Intelligence”. If you are interested in the subject then it is strongly recommended to read the book which contains much more details and real world case studies for several sectors and disciplines! The book explains several examples by using the AI-TOOLKIT. The book is going through the publishing process at the time of writing this article. You may use the contact form for info about pre-ordering the book.
Learn about the application of Artificial Intelligence and Machine Learning from the book "The Application of Artificial Intelligence | Step-by-Step Guide from Beginner to Expert", Springer 2020 (~400 pages) (ISBN 978-3-030-60031-0). Unique, understandable view of machine learning using many practical examples. Introduces AI-TOOLKIT, freely available software that allows the reader to test and study the examples in the book. No programming or scripting skills needed! Suitable for self-study by professionals, also useful as a supplementary resource for advanced undergraduate and graduate courses on AI. More information can be found at the Springer website: Springer book: The Application of Artificial Intelligence. @book{Somogyi_2021, doi = {10.1007/978-3-030-60032-7}, url = {https://doi.org/10.1007%2F978-3-030-60032-7}, year = 2021, publisher = {Springer International Publishing}, author = {Zolt{\'{a}}n Somogyi}, title = {The Application of Artificial Intelligence} } |