At the dawn of the emergence of “smart” applications, many systems used strict rules “if” and “else” to process data or adjust information entered by the user. Think of a spam filter whose job it is to move the corresponding incoming e-mails to the Spam folder. You can create a blacklist of words that will identify the message as spam. This is an example of using a system of expert rules to develop an “intelligent” application. The development of manual decision rules is acceptable in some tasks, especially in those where people clearly understand the modeling process. However, the use of hard decision rules has two main disadvantages:
The logic needed to make a decision refers exclusively to one specific area and task. Even an insignificant change in the task can entail a rewriting of the entire system.
Developing rules requires a deep understanding of the decision making process.
One example where this tough approach will fail is
face recognition in images. Today, every smartphone can recognize a face in the image. However, face recognition was an unresolved problem, at least until 2001. The main problem is that the way the computer “perceives” the pixels that form the image on the computer is very different from the human perception of the face. This difference, in principle, does not allow a person to formulate a suitable set of rules that describe a person in terms of a digital image.
However, thanks to machine learning, simply presenting a large number of images with faces will be enough for the algorithm to determine what features are needed to identify the face.
Challenges that can be solved with machine learning
The most successful machine learning algorithms are those that automate decision-making processes by summarizing well-known examples. In these methods, known as teaching with a teacher or supervised learning, the user provides the object-response pair to the algorithm, and the algorithm finds a way to obtain an answer about the object. In particular, the algorithm is able to give an answer for an object that he had never seen before, without any help from a person. If we return to the example of spam classification using machine learning, the user presents a large number of letters (objects) to the algorithm along with information about whether the message is spam or not (answers). For a new email, the algorithm will calculate the probability with which this email can be classified as spam.
Machine learning algorithms that learn on object-response pairs are called teacher-learning algorithms, since the “teacher” shows the algorithm the answer in each observation that the learning takes. Despite the fact that creating a set with objects and answers is often a laborious process, carried out manually, the learning algorithms with the teacher are interpretable and the quality of their work is easy to measure. If your task can be formulated as a learning task with a teacher, and you can create a data set that includes answers, then machine learning will probably solve your problem.
Examples of machine learning tasks with a teacher:
Determining the postal code by handwritten numbers on the envelope Here the object will be a scanned image of the handwriting, and the answer will be the actual numbers of the zip code. To create a dataset for building a machine learning model, you need to collect a large number of envelopes. Then you can read the zip codes yourself and save the numbers as answers.
Determination of benign tumor based on medical images
Here the object will be an image, and the answer is a diagnosis of whether the tumor is benign or not. To create a dataset for building a model, you need a database of medical images. In addition, an expert opinion is needed, so the doctor should look at all the images and decide which tumors are benign and which are not. In addition to image analysis, additional diagnostics may be necessary to determine the benignness of the tumor.
Detection of fraudulent activity in credit card transactions
Here the object is a credit card transaction record, and the answer is information about whether the transaction is fraudulent or not. Suppose you are a credit card issuing institution, data collection involves saving all transactions and recording customer messages about fraudulent transactions.
Given these examples, it is interesting to note that although the objects and answers look quite simple, the data collection process for these three tasks is significantly different. Although reading envelopes is a tedious task, this process is simple and cheap. Obtaining medical images and conducting diagnostics requires not only expensive equipment, but also rare, highly paid expert knowledge, not to mention ethical issues and privacy issues. In the example of detecting credit card fraud, data collection is much simpler. Your customers will provide you with answers by reporting fraud. All you have to do to receive objects and responses related to fraudulent activity is to wait.
Learning algorithms without a teacher or unsupervised learning (unsupervised algorithms) - this is another type of algorithm. In learning algorithms without a teacher, only objects are known, but there are no answers. Although there are many successful applications for these methods, they are generally more difficult to interpret and evaluate.
Source: Introduction to Machine Learning with Python (Andreas Muller, Sarah Guido)