1. Machine Learning with Python
By Bernd Klein. Last modified: 16 Jan 2024.
What is Machine Learning?
Machine learning is a subfield of Artificial Intelligence (AI). So what is Artificial Intelligence?
Andrew Moore, former Dean of the School of Computer Science at Carnegie Mellon University, defined it as follows: "Artificial intelligence is the science and engineering of making computers behave in ways that, until recently, we thought required human intelligence."
The question "What is artificial intelligence?" depends on the answer to a more general question: "What is intelligence?"
It shows extremels hard to answer the previous question.
To get closer to the answers we can divide AI into to partitions:
weak AI and strong AI
weak AI:
- deals with specific application problems
- Supporting human thinking in certain areas
- capable of learning in sub-areas
- no awareness
strong AI:
- "general intelligence" (reason, logical thinking, use strategy, solve puzzles, and make judgments under uncertainty)
- Comparable to human intelligence, but need not be the same, could be different
- making plans
- generally capable of learning
- Communication skills, natural language
- Awareness?
- sentience, emotions?
- self-perception?
We know now about Artificial Intelligence and Weak and Strong AI, but what about Machine Learning?
Let's start with a very "old" attempt at a definition by Arthur Samuek, an IBM pioneer:
"Machine Learning: Field of study that gives computers the ability to learn without being explicitly programmed."
A good attempt, but many questions remain unanswered. Almost 40 years later, in 1998, Tom Mitchell shaped a "well-off learning problem" as follows:
"Well posed Learning Problem: A computer program is said to learn from experience E with respect to some task T and some performance measure P, if its performance on T, as measured by P, improves with experience E."
Annotation: A mathematical problem is called correctly (also well-posed, well-posed or properly posed) if the following conditions are met:
- The problem has a solution (existence).
- This solution is clearly defined (uniqueness).
- the solution's behaviour changes continuously with the initial input data (stability).
So what is Machine Learning?
Let's start with a very "old" attempt at a definition by Arthur Samuek, an IBM pioneer:
"Machine Learning: Field of study that gives computers the ability to learn without being explicitly programmed."
A commendable effort, but many questions remain unanswered. Above all one important question: What is learning? Nearly 40 years later, in 1988, another pioneer in machine learning, Tom Mitchell, formulates a "well-posed learning problem" as follows.
"Well posed Learning Problem: A computer program is said to learn from experience E with respect to some task T and some performance measure P, if its performance on T, as measured by P, improves with experience E.“
Machine learning means that an algorithm (the machine) learns automatically. This means that it is capable of extracting the necessary knowledge from given data automatically. The goal is to make predictions on new, unseen data. There is another way of putting it: In traditional heuristic decision-making algorithms, the programmers set the rules according to which the decisions are made. With machine learning, this is done independently by the program without interence from human beings!

Live Python training
See our Python training courses
Machine learning taxonomy
There are two different approaches to Machine Learning:
- Unsupervised Learning
- Supervised Learning

Supervised Learning
In supervised learning, we have a dataset that consists of both input features and a desired outcome, as in the example of Spam/No-Spam. The task is to create a model (or program) that can predict the desired output of an unknown object based on its features.
Some more complex examples include:
- Identifying a character when given a pixel image of the character.
- Having an image of animals like "dogs," "cats," "cows," "sheep" and determining which animal it is.
- Identifying people in photos.
- Determining, based on a list of books or movies, which other books or movies a person might like.
These tasks share the characteristic that there is one or more unknown quantities associated with the object that need to be inferred from observed features.
Supervised learning is further divided into two categories:
-
Classification:

-
Regression:
-

In a nutshell: Classification involves the prediction of a label, while regression involves the prediction of a quantity.
-
In classification, the label is discrete, such as "Spam" or "Not Spam." In other words, it provides a clear distinction between categories. It's important to note that class labels represent nominal-scaled variables, not ordinal-scaled variables. Nominal and ordinal variables are both subcategories of categorical variables. Ordinal variables have a specific order, for example, T-shirt sizes "XL > L > M > S." On the other hand, nominal variables do not imply any order, for example, we cannot assume "orange > blue > green."
-
In regression, the label is continuous
