Over the last few years, machine learning has garnered a great deal of attention both in academic circles and in the marketplace. We now have a huge number of applicable use cases, thanks to the fact that we're living in an era where data is the new coin.
Companies and universities now have access to petabytes of data, allowing them to apply machine learning to identify information that can, for example, help increase revenue. The potential for this technology is amazing, but it's essential to remember that before we approach any project, we must master the core concepts so we don't head in the wrong direction or get misinformation from a set of data.
If you're wondering about the benefits of understanding machine learning, please take a look at this article, in which I highlight the rewards of learning ML and propose a course of study. Today, I'll introduce some basic terms and concepts.
ML Origins and Applications
Machine learning is a branch within artificial intelligence that's focused on the study of learning algorithms. Although it was originally an academic field, it is increasingly used to benefit companies and assist multiple departments, such as marketing. Alongside the growth of ML in the marketplace, we can see the increase of the framework's abstraction, which has contributed to its further adoption.
Every time we start learning a new language or concept, the first learning curve we face is terminology. The same goes for machine learning. You'll encounter new words in books, videos, and blog posts (including this one!). So let's go over a few key terms.
When it comes to data, a set or collection of data will be called a dataset, which can exist in many forms of media, such as csv or json files, images (.jpg,, .png), database tables schema and text, and so on. Each attribute or characteristic represented as a column in a csv file or database table is called a feature. Examples of features are height, color, and number of sides (for a geometric form, for example). A target is what we want to learn or infer from the collection of data, which can be a label/class (for example, the name of a geometric form or a numeric value when calculating the cost of gas for a trip based on previous trip data). Finally, a model is a trained function that defines the relationships within a determined set of data. A model is capable of predicting the class or value of an input, which in this case is new information that isn't present in the data used to train the model.
Supervised, Unsupervised, and Reinforcement Learning
Now that we've defined our basic terms, we can move ahead and specify the types of learning that can be used to solve these problems. There are three learning types:
- Supervised: this means that when training a model, we know the answer (label) beforehand, so after fitting, the model will create the relationships between the data in order to predict a new input. For example, it could classify an email as spam or not.
- Unsupervised: when applying these models, we just have the input, and we make use of these models to draw out the relationships inside the set of data or even to find out hidden relationships. The output is a set of clusters.
- Reinforcement: this has two components: an agent and a reward system. In this strategy, for each action the agent completes to solve a problem, we evaluate the performance and give it a reward or not (which is a scalar value).
Regression and Classification
The learning types can be grouped into regression and classification problems. Regression models work toward trying to define the cause and effect between the data provided, which consists of numerical values. For example, you might take notes on all of your travel expenses by car over a three month period, considering both the price of gas and the distance traveled. With this data, you can train a model to estimate the cost to travel a certain distance. Another example would be inferring stock market value based on daily inputs.
In classification, as its name suggests, we can use a collection of data (a group of features/characteristics) to classify or infer a label or group. For example, we can train a model to predict dog breeds.
At a glance, all these concepts may seem overwhelming, but it's important to understand the basics and learn incrementally. Machine Learning isn't just a technical subject - it also requires that its practitioners build a mindset that will enable them to apply these concepts to identify and extract the expected value or information.
João Moráveis is a Java Engineer at Avenue Code. He loves reading and studying, and he is enthusiastic about computer vision, image processing, and artificial intelligence.