The term “Machine Learning” was coined by a computer gamer named Arthur Samuel in 1959. He defined it like this:
"[Machine learning is a] Field of study that gives computers the ability to learn and make predictions without being explicitly programmed."
ML is a sub-field of Artificial Intelligence. It's based on the idea that computers can learn from historical experiences, make vital decisions, and predict future happenings without human intervention.
Machine Learning is behind product suggestions on e-commerce sites, your movie suggestions on Netflix, and so many more things. The computer is able to make these suggestions and predictions by learning from your previous data input and past experiences.
In recent years, Machine Learning has garnered a lot of attention around the world, it has become one of the most important ways that people use Artificial Intelligence.
How Does Machine Learning Work?
Machine Learning involves building algorithms. Data Scientists build these algorithms, and the type of algorithm they build depends on the type of data they're working on.
The Machine Learning process begins with gathering data (numbers, text, photos, comments, letters, and so on). These data, often called “training data,” are used in training the Machine Learning algorithm. Training essentially "teaches" the algorithm how to learn by using tons of data.
Following the end of the “training”, new input data is then fed into the algorithm and the algorithm uses the previously developed model to make predictions.
The algorithm is trained several times until it reaches a desired outcome. This enables the Machine Learning algorithms to continually learn on their own. This produces optimal answers and increasing accuracy and predictions over time.
Here's a helpful overview of Machine Learning basics for developers to get you started.
Types Of Machine Learning
There are three types of Machine Learning, which include:
- Supervised Learning
- Unsupervised Learning
- Reinforcement Learning
Let's look at each one briefly.
What is Supervised Learning?
Supervised Learning is the most common type of Machine Learning. It involves training the algorithm with a “labelled” dataset. The labelled training data helps the Machine Learning algorithm make accurate predictions in the future.
A practical example of supervised learning is training a Machine Learning algorithm with pictures of an apple. After that training, the algorithm is able to identify and retain this information and is able to give accurate predictions of an apple in the future. That is, it will typically be able to correctly identify if an image is of an apple.
What is Unsupervised Learning?
In Unsupervised Learning, the training data is NOT labelled or named. The unlabeled data are used in training the Machine Learning algorithms and at the end of the training, the algorithm groups or categorizes the unlabeled data according to similarities, patterns, and differences.
This type of Machine Learning can help in grouping and organizing data in such a way that you can come in and make sense of the grouped data.
A practical example is training a Machine Learning algorithm with different pictures of various fruits. The algorithm finds similarities and patterns among these pictures and is able to group the fruits based on those similarities and patterns.
What is Reinforcement Learning?
Finally, we have Reinforcement Learning. In this case, the algorithm discovers data through a process of trial and error. Favorable outputs are reinforced and non favorable outcomes are discarded. Over time the algorithm learns to make minimal mistakes compared to when it started out.
Tools Used For Machine Learning
There are a plethora of tools you can use for Machines Learning. These tools can be classified into three categories, which include:
- Programming languages: Programming languages used for Machine Learning include Python, Java, R, and C++.
- Machine Learning platforms: These platforms help you carry out machine learning procedures from beginning to the end. They provide you with the tools to develop and deploy Machine Learning algorithms. Examples include Jupyter Notebook, IBM Watson studio, R studio, KNIME, Azure ML Studio and so many others.
- Machine Learning Libraries: Examples of Machine Learning libraries in Python include Scikit-learn, Pytorch and JSAT used in Java.
What Are the Applications of Machine Learning?
The application of Machine Learning in our day to day activities have made life easier and more convenient. They've created a lot of buzz around the world and paved the way for advancements in technology.
Applications of Machine Learning include:
Product recommendation is one of the coolest applications of Machine Learning. Websites are able to recommend products to you based on your searches and previous purchases.
Social Media Features
Social media platform such as Instagram, Facebook, and Twitter integrate Machine Learning algorithms to help deliver personalized experiences to you.
These apps takes note of your likes and comments and are able to make pages and friend suggestions suited for you based off your behavior on the app/platform.
Virtual assistants such as Siri and Alexa are built with Machine Learning algorithms. They make use of speech recognition technology in assisting you in your day to day activities just by listening to your voice instructions.
These assistants record your voice instructions and send them over the server, and decode it using Machine Learning algorithms.
Image Recognition is one of the most common applications of Machine Learning. It's used to identify persons, objects, and places.
It makes use of Machine Learning techniques to identify and store images in order to match them with images in a pre-existing database.
In recent years, there have been tremendous advancements in medical technology. For example, the development of 3D models that can accurately detect the position of lesions in the human brain can help with diagnosis and treatment planning.
Machine learning also helps in identifying genetic factors for various diseases, by looking for genetic patterns amongst people with similar diseases.
The Future of Machine Learning
Companies and organizations around the world are already making use of Machine Learning to make accurate business decisions and to foster growth.
In the coming years, Machine Learning is expected to break more strides in various fields such as automobile development, drug devepment, education and so many more. Let's discuss some of these possibilities.
Machine Learning and Automobile Development
Machine learning is already helping car manufacturers develop smarter vehicles. Currently a few automobile companies use Machine Learning algorithms to automatically detect failures in newly built vehicles.
In the coming years, most automobile companies are expected to use these algorithm to build safer and better cars.
Also, we'll probably see Machine Learning used to enhance self-driving cars in the coming years. These self-driving cars are able to identify, classify and interpret objects and different conditions on the road using Machine Learning algorithms.
Machine Learning and Drug Development
In recent years, pharmaceutical companies have started using Machine Learning to improve the drug manufacturing process. They've also used it to help produce more efficient drugs.
Currently, patients' omics data are being gathered to aid the development of Machine Learning algorithms which can be used in producing personalized drugs and vaccines. These personalized drugs are individual and population-specific. The production of these personalized drugs opens a new phase in drug development.
Machine Learning and Education
Educational institutions are using Machine Learning in many new ways, such as grading students' work and exams more accurately. ML can also help improve students’ performance.
Researchers are already working on Machine Learning algorithms which are able to predict whether students will fail or pass a course. These algorithms help schools and teachers focus on helping failing students to increase their chances for success.
I hope you now understand the concept of Machine Learning and its applications.
Thank you for reading.
For questions, you can send me a message on Twitter. @heyfunmi.
Machine Learning Resources
Looking to get started in Machine Learning?
Here is a 10 hour video on Machine Learning by freeCodeCamp. It takes you from zero to hero in Machine Learning. 🥳
And here's a list of the 10 best Machine Learning courses to check out this year.