Introduction to Machine Learning
Machine Learning is a buzz word for every developer. Whenever we hear that term, we start thinking of all things it can do like self-driving cars, writing code, predicting images, etc.
Speaking in a very basic language, machine learning means teaching a computer based on its past experience just like humans. We, humans, learn from our past experiences and we can apply the same logic to machines as well.
For instance, when we touch a hot object, we feel pain and instantly move away from it. Next time we encounter a hot object, we remember from our previous experience that it is painful so we don’t touch it. This is the basic idea of machine learning.
Now lets get a bit more technical and understand how we exactly create a machine learning model.
In order to understand that, we have to understand the logic behind the traditional coding.
Difference between traditional programing and machine learning
In traditional coding we are providing all the instructions and the data to the computer and the computer is just running the instructions on the data and returning the output.
What’s happening in ML is that we provide the computer with the input data and the output data and the computer returns the instructions which led to that output from the given input.
Types of Machine Learning
- Supervised Learning: The data that is fed to the computer is labelled. Let’s say that we are trying to build a model to differentiate between the image of cat and dog. In this type of model, we would label each image as cat or dog and then give it to the computer.
- Unsupervised Learning: Data is directly fed to the computer without labels and it is just instructed to make sense out of it. For example, for our previous example, we can just give the images and ask the computer to divide it into 2 groups.
- Reinforcement Learning: It is also called and reward based learning. Here the computer is just given the problem and it goes on its own. After each step the computer makes, we reward it based on whether it took the right step or not. So the computer is receiving feedback after every step.
Applications
Machine learning can be applied anywhere we have data to feed to the computer. Common examples include chatbots, virtual assistant, sentiment analysis, image recognition, natural language processing, etc.