What is Machine Learning?

Reese Hicks
3 min readNov 9, 2020

In computer science, computers can “learn” to do specific tasks in a variety of ways. The first and most traditional method is for a computer programmer to type code, which effectively “tells” the computer what s/he wants the computer to do. Another method, which is what this paper is going to cover, is called “machine learning”. This method involves a computer programmer providing data sets to the computer, and allowing the computer to figure out what the programmer wants it to do and how to provide the results the programmer wants to see. Machine learning can be split into three different categories. These categories are divided up into ways the computer can “learn”. Supervised learning, unsupervised learning and reinforcement learning. There are several programming languages that lend themselves to machine learning, and several architectures that are often employed as well. The most common frameworks include: Linear Regression, Logistic Regression, Decision Trees, Support Vector Machines, K-Nearest Neighbors, Random Forests, K-Means Clustering, and Principal Components Analysis.

In supervised learning, the computer is given data that models the desired input and output. The computer then teaches itself how to come to the desired output on its own. A common example of this is for a programmer to feed the computer images of things that are labeled. After so many learning iterations, the computer should be able to “know” what the the given images are. So, say the programmer wants to teach the computer to know a tree from a human face. The programmer will feed the computer as many images labeled “tree” as possible, while at the same time feeding it as many images as possible of human faces, labeled as human faces. In the end, the computer should be able to tell these two images apart.

Unsupervised learning is very similar, except the images from the above example will not be labeled. The computer is left to determine the differences from human faces and trees on its own. An advantage to this is that the computer is likely able to discover unseen patterns and differences in the given images. A common use of this style of learning is found when manipulating big data. The algorithms are able to find connections humans would not typically see. A decent example of this is huge data sets of people and their habits used by advertisers. Using machine learning, the programmer is often able to find connections between purchases and the next likely purchase, and things of a similar nature, like anti-theft algorithms that red-flag purchases that are outside a customer’s “normal” buying habits.

Reinforcement learning involves a game-like learning environment in order to make a particular sequence of decisions. With this type of learning, the computer employs trial and error to reach the decision, with a series of rewards or penalties as a sort of motivation to do the “correct thing”. These rewards and penalties are the “rules”, or parameters to the “game”, and the programmer offers no other directions, what so ever. So, based on the predetermined rules, the computer will figure out how to perform the task at hand, and try to maximize the rewards while minimizing the penalties. The computer will tend to begin with seemingly random methods of solving the modeled game, and after hundreds, or even multi-millions of iterations, the hope is that the computer will learn sophisticated tactics and near super-human skills. The idea is that given a powerful enough setup, the computer will be able to try a given task, often using several iterations of the same model going at the same time, millions of millions of times. Something a human would never be able to do. Examples of this sort of machine learning are computers trained to play games such as chess, backgammon and go. The success of some of these projects are quite impressive.

--

--