0% found this document useful (0 votes)
7 views

Learning Algorithms

Uploaded by

sksharma3058
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Learning Algorithms

Uploaded by

sksharma3058
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 28

Types of Machine Learning

Machine learning is a subset of AI, which enables the machine to


automatically learn from data, improve performance from past experiences,
and make predictions. Machine learning contains a set of algorithms that
work on a huge amount of data. Data is fed to these algorithms to train them,
and on the basis of training, they build the model & perform a specific task.

These ML algorithms help to solve different business problems like


Regression, Classification, Forecasting, Clustering, and Associations, etc.
Based on the methods and way of learning, machine learning is divided into
mainly four types, which are:
1. Supervised Machine Learning
2. Unsupervised Machine Learning
3. Semi-Supervised Machine Learning
4. Reinforcement Learning
In this topic, we will provide a detailed description of the types of Machine
Learning along with their respective algorithms:
1. Supervised Machine Learning
As its name suggests, Supervised machine learning is based on supervision.
It means in the supervised learning technique, we train the machines using the
"labelled" dataset, and based on the training, the machine predicts the output.
Here, the labelled data specifies that some of the inputs are already mapped
to the output. More preciously, we can say; first, we train the machine with the
input and corresponding output, and then we ask the machine to predict the
output using the test dataset.
Let's understand supervised learning with an example. Suppose we have an
input dataset of cats and dog images. So, first, we will provide the training to
the machine to understand the images, such as the shape & size of the tail of
cat and dog, Shape of eyes, colour, height (dogs are taller, cats are smaller),
etc. After completion of training, we input the picture of a cat and ask the
machine to identify the object and predict the output. Now, the machine is well
trained, so it will check all the features of the object, such as height, shape,
colour, eyes, ears, tail, etc., and find that it's a cat. So, it will put it in the Cat
category. This is the process of how the machine identifies the objects in
Supervised Learning.
The main goal of the supervised learning technique is to map the input
variable(x) with the output variable(y). Some real-world applications of
supervised learning are Risk Assessment, Fraud Detection, Spam filtering, etc.
Categories of Supervised Machine Learning
Supervised machine learning can be classified into two types of problems,
which are given below:
o Classification
o Regression
a) Classification
Classification algorithms are used to solve the classification problems in
which the output variable is categorical, such as "Yes" or No, Male or Female,
Red or Blue, etc. The classification algorithms predict the categories present in
the dataset. Some real-world examples of classification algorithms are Spam
Detection, Email filtering, etc.
Some popular classification algorithms are given below:
o Random Forest Algorithm
o Decision Tree Algorithm
o Logistic Regression Algorithm
o Support Vector Machine Algorithm
b) Regression
Regression algorithms are used to solve regression problems in which there is
a linear relationship between input and output variables. These are used to
predict continuous output variables, such as market trends, weather
prediction, etc.
Some popular Regression algorithms are given below:
o Simple Linear Regression Algorithm
o Multivariate Regression Algorithm
o Decision Tree Algorithm
o Lasso Regression
Advantages and Disadvantages of Supervised Learning
Advantages:
o Since supervised learning work with the labelled dataset so we can
have an exact idea about the classes of objects.
o These algorithms are helpful in predicting the output on the basis of
prior experience.
Disadvantages:
o These algorithms are not able to solve complex tasks.
o It may predict the wrong output if the test data is different from the
training data.
o It requires lots of computational time to train the algorithm.
Applications of Supervised Learning
Some common applications of Supervised Learning are given below:
o Image Segmentation:
Supervised Learning algorithms are used in image segmentation. In
this process, image classification is performed on different image data
with pre-defined labels.
o Medical Diagnosis:
Supervised algorithms are also used in the medical field for diagnosis
purposes. It is done by using medical images and past labelled data with
labels for disease conditions. With such a process, the machine can
identify a disease for the new patients.
o Fraud Detection - Supervised Learning classification algorithms are
used for identifying fraud transactions, fraud customers, etc. It is done
by using historic data to identify the patterns that can lead to possible
fraud.
o Spam detection - In spam detection & filtering, classification
algorithms are used. These algorithms classify an email as spam or
not spam. The spam emails are sent to the spam folder.
o Speech Recognition - Supervised learning algorithms are also used in
speech recognition. The algorithm is trained with voice data, and
various identifications can be done using the same, such as voice-
activated passwords, voice commands, etc.
2. Unsupervised Machine Learning
Unsupervised learning is different from the Supervised learning technique; as
its name suggests, there is no need for supervision. It means, in unsupervised
machine learning, the machine is trained using the unlabeled dataset, and the
machine predicts the output without any supervision.
In unsupervised learning, the models are trained with the data that is neither
classified nor labelled, and the model acts on that data without any
supervision.
The main aim of the unsupervised learning algorithm is to group or categories
the unsorted dataset according to the similarities, patterns, and
differences. Machines are instructed to find the hidden patterns from the input
dataset.
Let's take an example to understand it more preciously; suppose there is a
basket of fruit images, and we input it into the machine learning model. The
images are totally unknown to the model, and the task of the machine is to
find the patterns and categories of the objects.
So, now the machine will discover its patterns and differences, such as colour
difference, shape difference, and predict the output when it is tested with the
test dataset.
Categories of Unsupervised Machine Learning
Unsupervised Learning can be further classified into two types, which are
given below:
o Clustering
o Association
1) Clustering
The clustering technique is used when we want to find the inherent groups
from the data. It is a way to group the objects into a cluster such that the
objects with the most similarities remain in one group and have fewer or no
similarities with the objects of other groups. An example of the clustering
algorithm is grouping the customers by their purchasing behaviour.
ADVERTISEMENT
Some of the popular clustering algorithms are given below:
o K-Means Clustering algorithm
o Mean-shift algorithm
o DBSCAN Algorithm
o Principal Component Analysis
o Independent Component Analysis
2) Association
Association rule learning is an unsupervised learning technique, which finds
interesting relations among variables within a large dataset. The main aim of
this learning algorithm is to find the dependency of one data item on another
data item and map those variables accordingly so that it can generate
maximum profit. This algorithm is mainly applied in Market Basket analysis,
Web usage mining, continuous production, etc.
Some popular algorithms of Association rule learning are Apriori Algorithm,
Eclat, FP-growth algorithm.
Advantages and Disadvantages of Unsupervised Learning
Algorithm
Advantages:
o These algorithms can be used for complicated tasks compared to the
supervised ones because these algorithms work on the unlabeled
dataset.
o Unsupervised algorithms are preferable for various tasks as getting
the unlabeled dataset is easier as compared to the labelled dataset.
Disadvantages:
o The output of an unsupervised algorithm can be less accurate as the
dataset is not labelled, and algorithms are not trained with the exact
output in prior.
o Working with Unsupervised learning is more difficult as it works with
the unlabelled dataset that does not map with the output.
Applications of Unsupervised Learning
o Network Analysis: Unsupervised learning is used for identifying
plagiarism and copyright in document network analysis of text data for
scholarly articles.
o Recommendation Systems: Recommendation systems widely use
unsupervised learning techniques for building recommendation
applications for different web applications and e-commerce websites.
o Anomaly Detection: Anomaly detection is a popular application of
unsupervised learning, which can identify unusual data points within
the dataset. It is used to discover fraudulent transactions.
o Singular Value Decomposition: Singular Value Decomposition or SVD
is used to extract particular information from the database. For
example, extracting information of each user located at a particular
location.
3. Semi-Supervised Learning
Semi-Supervised learning is a type of Machine Learning algorithm that lies
between Supervised and Unsupervised machine learning. It represents the
intermediate ground between Supervised (With Labelled training data) and
Unsupervised learning (with no labelled training data) algorithms and uses
the combination of labelled and unlabeled datasets during the training period.
Although Semi-supervised learning is the middle ground between supervised
and unsupervised learning and operates on the data that consists of a few
labels, it mostly consists of unlabeled data. As labels are costly, but for
corporate purposes, they may have few labels. It is completely different from
supervised and unsupervised learning as they are based on the presence &
absence of labels.
To overcome the drawbacks of supervised learning and unsupervised learning
algorithms, the concept of Semi-supervised learning is introduced. The main
aim of semi-supervised learning is to effectively use all the available data,
rather than only labelled data like in supervised learning. Initially, similar data
is clustered along with an unsupervised learning algorithm, and further, it
helps to label the unlabeled data into labelled data. It is because labelled data
is a comparatively more expensive acquisition than unlabeled data.
We can imagine these algorithms with an example. Supervised learning is
where a student is under the supervision of an instructor at home and college.
Further, if that student is self-analysing the same concept without any help
from the instructor, it comes under unsupervised learning. Under semi-
supervised learning, the student has to revise himself after analyzing the
same concept under the guidance of an instructor at college.
Advantages and disadvantages of Semi-supervised Learning
Advantages:
o It is simple and easy to understand the algorithm.
o It is highly efficient.
o It is used to solve drawbacks of Supervised and Unsupervised
Learning algorithms.
Disadvantages:
o Iterations results may not be stable.
o We cannot apply these algorithms to network-level data.
o Accuracy is low.
4. Reinforcement Learning
Reinforcement learning works on a feedback-based process, in which an AI
agent (A software component) automatically explore its surrounding by
hitting & trail, taking action, learning from experiences, and improving its
performance. Agent gets rewarded for each good action and get punished for
each bad action; hence the goal of reinforcement learning agent is to
maximize the rewards.
In reinforcement learning, there is no labelled data like supervised learning,
and agents learn from their experiences only.
ADVERTISEMENT
The reinforcement learning process is similar to a human being; for example,
a child learns various things by experiences in his day-to-day life. An example
of reinforcement learning is to play a game, where the Game is the
environment, moves of an agent at each step define states, and the goal of
the agent is to get a high score. Agent receives feedback in terms of
punishment and rewards.
Due to its way of working, reinforcement learning is employed in different
fields such as Game theory, Operation Research, Information theory, multi-
agent systems.
A reinforcement learning problem can be formalized using Markov Decision
Process(MDP). In MDP, the agent constantly interacts with the environment
and performs actions; at each action, the environment responds and
generates a new state.
Categories of Reinforcement Learning
Reinforcement learning is categorized mainly into two types of methods/
algorithms:
o Positive Reinforcement Learning: Positive reinforcement learning
specifies increasing the tendency that the required behaviour would
occur again by adding something. It enhances the strength of the
behaviour of the agent and positively impacts it.
o Negative Reinforcement Learning: Negative reinforcement learning
works exactly opposite to the positive RL. It increases the tendency that
the specific behaviour would occur again by avoiding the negative
condition.
Real-world Use cases of Reinforcement Learning
o Video Games:
RL algorithms are much popular in gaming applications. It is used to
gain super-human performance. Some popular games that use RL
algorithms are AlphaGO and AlphaGO Zero.
o Resource Management:
The "Resource Management with Deep Reinforcement Learning" paper
showed that how to use RL in computer to automatically learn and
schedule resources to wait for different jobs in order to minimize
average job slowdown.
o Robotics:
RL is widely being used in Robotics applications. Robots are used in
the industrial and manufacturing area, and these robots are made
more powerful with reinforcement learning. There are different
industries that have their vision of building intelligent robots using AI
and Machine learning technology.
o Text Mining
Text-mining, one of the great applications of NLP, is now being
implemented with the help of Reinforcement Learning by Salesforce
company.
Advantages and Disadvantages of Reinforcement Learning
Advantages
o It helps in solving complex real-world problems which are difficult to
be solved by general techniques.
o The learning model of RL is similar to the learning of human beings;
hence most accurate results can be found.
o Helps in achieving long term results.
Disadvantage
o RL algorithms are not preferred for simple problems.
o RL algorithms require huge data and computations.
o Too much reinforcement learning can lead to an overload of states
which can weaken the results.
The curse of dimensionality limits reinforcement learning for real physical
systems.
Well posed learning problems




Well Posed Learning Problem – A computer program is said to learn from experience E in context to some task T and some performance measure P, if its
performance on T, as was measured by P, upgrades with experience E.

Any problem can be segregated as well-posed learning problem if it has three traits –

● Task
● Performance Measure
● Experience

Certain examples that efficiently defines the well-posed learning problem are –

1. To better filter emails as spam or not


● Task – Classifying emails as spam or not
● Performance Measure – The fraction of emails accurately classified as spam or not spam
● Experience – Observing you label emails as spam or not spam

2. A checkers learning problem

● Task – Playing checkers game


● Performance Measure – percent of games won against opposer
● Experience – playing implementation games against itself

3. Handwriting Recognition Problem

● Task – Acknowledging handwritten words within portrayal


● Performance Measure – percent of words accurately classified
● Experience – a directory of handwritten words with given classifications

4. A Robot Driving Problem

● Task – driving on public four-lane highways using sight scanners


● Performance Measure – average distance progressed before a fallacy
● Experience – order of images and steering instructions noted down while observing a human driver

5. Fruit Prediction Problem

● Task – forecasting different fruits for recognition


● Performance Measure – able to predict maximum variety of fruits
● Experience – training machine with the largest datasets of fruits images

6. Face Recognition Problem

● Task – predicting different types of faces


● Performance Measure – able to predict maximum types of faces
● Experience – training machine with maximum amount of datasets of different face images

7. Automatic Translation of documents

● Task – translating one type of language used in a document to other language


● Performance Measure – able to convert one language to other efficiently
● Experience – training machine with a large dataset of different types of languages

Design a Learning System in Machine Learning




According to Arthur Samuel “Machine Learning enables a Machine to Automatically learn from Data, Improve performance from an Experience and predict
things without explicitly programmed.”

In Simple Words, When we fed the Training Data to Machine Learning Algorithm, this algorithm will produce a mathematical model and with the help of the
mathematical model, the machine will make a prediction and take a decision without being explicitly programmed. Also, during training data, the more
machine will work with it the more it will get experience and the more efficient result is produced.

Example : In Driverless Car, the training data is fed to Algorithm like how to Drive Car in Highway, Busy and Narrow Street with factors like speed limit,
parking, stop at signal etc. After that, a Logical and Mathematical model is created on the basis of that and after that, the car will work according to the
logical model. Also, the more data the data is fed the more efficient output is produced.

Designing a Learning System in Machine Learning :

According to Tom Mitchell, “A computer program is said to be learning from experience (E), with respect to some task (T). Thus, the performance
measure (P) is the performance at task T, which is measured by P, and it improves with experience E.”

Example: In Spam E-Mail detection,


● Task, T: To classify mails into Spam or Not Spam.
● Performance measure, P: Total percent of mails being correctly classified as being “Spam” or “Not Spam”.
● Experience, E: Set of Mails with label “Spam”

Steps for Designing Learning System are:

Step 1) Choosing the Training Experience: The very important and first task is to choose the training data or training experience which will be fed to the
Machine Learning Algorithm. It is important to note that the data or experience that we fed to the algorithm must have a significant impact on the Success
or Failure of the Model. So Training data or experience should be chosen wisely.

Below are the attributes which will impact on Success and Failure of Data:

● The training experience will be able to provide direct or indirect feedback regarding choices. For example: While Playing chess the training
data will provide feedback to itself like instead of this move if this is chosen the chances of success increases.
● Second important attribute is the degree to which the learner will control the sequences of training examples. For example: when training
data is fed to the machine then at that time accuracy is very less but when it gains experience while playing again and again with itself or
opponent the machine algorithm will get feedback and control the chess game accordingly.
● Third important attribute is how it will represent the distribution of examples over which performance will be measured. For example, a
Machine learning algorithm will get experience while going through a number of different cases and different examples. Thus, Machine
Learning Algorithm will get more and more experience by passing through more and more examples and hence its performance will increase.

Step 2- Choosing target function: The next important step is choosing the target function. It means according to the knowledge fed to the algorithm the
machine learning will choose NextMove function which will describe what type of legal moves should be taken. For example : While playing chess with the
opponent, when opponent will play then the machine learning algorithm will decide what be the number of possible legal moves taken in order to get
success.

Step 3- Choosing Representation for Target function: When the machine algorithm will know all the possible legal moves the next step is to choose the
optimized move using any representation i.e. using linear Equations, Hierarchical Graph Representation, Tabular form etc. The NextMove function will move
the Target move like out of these move which will provide more success rate. For Example : while playing chess machine have 4 possible moves, so the
machine will choose that optimized move which will provide success to it.

Step 4- Choosing Function Approximation Algorithm: An optimized move cannot be chosen just with the training data. The training data had to go through
with set of example and through these examples the training data will approximates which steps are chosen and after that machine will provide feedback
on it. For Example : When a training data of Playing chess is fed to algorithm so at that time it is not machine algorithm will fail or get success and again
from that failure or success it will measure while next move what step should be chosen and what is its success rate.

Step 5- Final Design: The final design is created at last when system goes from number of examples , failures and success , correct and incorrect decision
and what will be the next step etc. Example: DeepBlue is an intelligent computer which is ML-based won chess game against the chess expert Garry
Kasparov, and it became the first computer which had beaten a human chess expert.
Learning Algorithms
Learning algorithms are the most popular and basic
algorithms in AI. They can adapt to the problem
environment. As shown in figure 1, we will go through
some of the main learning style algorithms.

Learning Algorithms

A. Supervised Learning

Supervised learning is about learning a function


appropriate to the problem. This function takes an input
(X) and maps it to output (Y). If we represent this
definition in a simple equation, then it will be Y = f(X).
The dataset which is used, split into two groups training
dataset and testing/validation dataset. The ratio of this
split varies, but it’s somewhere around 2:8 (20% training
data and 80% validation data). The input datasets are
labeled and used to prepare a mathematical model for
the training process. The mathematical model further
analyzes the training data and produces an inferred
function.
Supervised learning problems can be further grouped
into classification problems and regression problems. In
a classification problem, an output is categorized into a
specific group, whereas in the regression problem an
output is a real value. Most widely used learning
algorithms in supervised learning are Support Vector
Machines, Linear Regression, Logistic Regression, Naive
Bayes, Decision Trees, K — Nearest Neighbour and
Neural Networks. We will go through some of these
algorithms in the similarity algorithm section.

B. Unsupervised Learning
Unlike supervised learning, in unsupervised learning, the
input dataset is not labeled, classified or categorized. A
mathematical model tries to identify similarity in the
dataset and based on that it tries to deduce a structure
present in the input data. Unsupervised learning
problems can be further grouped into clustering
problems and association problems. In clustering
problem, we try to discover the inherent of groupings in
the dataset, whereas in association problem we try to
generalize rules which describe large portions of the
dataset. Most widely used learning algorithms in
unsupervised learning are K-means, Neural Networks,
Linear Discriminant Analysis Principal Component
Analysis, and Apriori Algorithm.

C. Semi-Supervised Learning
In semi-supervised learning, input dataset is a mixture
of both labeled data and unlabeled data. Usually, the
dataset has a small amount of labeled data and a large
amount of unlabeled data. The mathematical model
uses labeled data to learn the structure of unlabeled
data and tries to make predictions. Semi-Supervised
learning problems can also be further grouped into
classification and regression problems.

II. Similarity Algorithms


Similarity algorithms are grouped by similarity of their
function. In this section, we will go through some of the
most popular machine learning algorithms.

A. Regression Algorithms
Statistical machine learning has co-opted regression
methods because of the modeling the relationship
between variables. Regression algorithms can
iteratively refine these relationships to predict a better
outcome. Some of the most basic and popular
regression algorithms are linear regression and logistic
regression.

i. Linear Regression
Linear regression has been used for the past 200 years.
It’s been used to remove the variables that are
correlated. Linear regression can also be used to
remove the noisy data from the dataset. The main goal
of linear regression is to minimize the error of a
mathematical model and make the prediction more
accurate.

Linear Regression

Figure 2 shows the representation of linear regression.


Linear regression tries to predict Y, given the input X by
finding the weights for the input. Here coefficient b0 and
b1 are the weights of the input variable X and r is the
coefficient of determination, which show how close the
data points are to the regression line.

ii. Logistic Regression


Logistic regression is mainly used in binary
classification problems. The goal of the logistic
regression is to get the weights of each input variable,
but the output is predicted using a nonlinear function
which is called the logistic function. Logistic regression
works better when correlated data points are removed
from the dataset.
Logistic Regression

As shown in figure 3 logistics regression transforms any


value into the range of 0 to 1. This can be useful to
classify a given data point based on the probability that
where it will belong to class 0 or class 1.

B. Decision Tree Algorithms


The algorithm constructs a model of a decision made
based on the serval input variables. Decisions are
forked based on the attributes and input variables in a
tree structure as shown in figure 4. Decision trees are
like a binary tree, each decision node is a single input
variable and that node further split into leaf nodes or
more decision nodes. Each leaf node contains an output
variable concerning the previous decision nodes.
Decision tree predictions by walking the split until it
arrives a leaf node.
Classification and Regression Tree

Classification and Regression Tree is one of the most


popular decision tree algorithm, which is also known as
CART. When a target variable (leaf node) in decision
tree can take a discrete set of values, then it’s called
classification tree and when the target variable (leaf
node) is continuous, it’s called regression tree.

C. Artificial Neural Networks


Artificial neural network (ANN) is also known as a
connectist system. ANN is inspired by the brain’s neural
network of the living organism. ANN is a framework of
various machine learning algorithms which work
together to process complex dataset. As shown in
figure 5 every ANN can be divided into three layers: the
input layer, hidden layers, and the output layer. Hidden
layers can have multiple layers. Every layer is a
collection of nodes which are called artificial neurons.
Each artificial neuron is connected to the artificial
neurons present in the next layer. The connection
between these neurons is called edges. These edges
transmit the information as a signal from one neuron to
another, a neuron then processes the information and
carry forward it to the next neurons.

Artificial Neural Network

Edges also have weights to control (increase or


decrease) the strength of the signal at a particular
connection. Neurons calculate the output by a nonlinear
function of the sum of input signals.
Deep Learning is also an Artificial Neural Network. It’s
an updated version on ANNs. In deep learning entire
neural network is itself vastly large and complex with
multiple hidden layers. Some of the most popular ANN
and Deep Learning algorithms are Perceptron, Back-
Propagation, Deep Boltzmann Machine (DBM) and
Convolutional Neural Network (CNN).
D. Support Vector Machine
Support Vector Machine (SVM) is related to the
supervised learning approach and used for classification
and regression. In training dataset, each data point is
marked whether it belongs to class 0 or class 1. SVM
then trains a model based on the training dataset to
predict whether the new data points fall into class 0 or
class 1.

Support Vector Machine

Input variables are split by hyperplanes. To separate all


data points, SVM tries to find an optimal coefficient that
can separate all data points based on their class by the
hyperplane. The distance between the closest data
points and the hyperplane is referred to as the margin;
larger the margin, more optimal hyperplane is. Points
that define this hyperplane are called support vectors.

III. Reinforcement Learning


Reinforcement learning is a specialized subfield of
machine learning, which is known as approximate
dynamic programming or neuro-dynamic programming.
Learning concerned with agents who take some sort of
action in an environment to maximize the cumulative
reward. In reinforcement learning the environment is
represented in Markov Decision Process (MDP).
Learning algorithm tries to target the large MDPs where
the model is infeasible by not assuming predetermined
knowledge of a mathematical model.

Reinforcement learning can be understood with a


simple example of a child in a living room. A child sees
a fireplace and tries to approach that fire. It’s warm, it’s
positive, the child feels good (positive reward +1). The
child understands that fire is a positive thing. But when
the child tries to touch that fire, it burns the child’s hand
(negative reward -1). The child just understood that fire
is a good thing at a sufficient distance, but not too close.
That’s how reinforcement learning learns from some
set of actions.

Analysis of Machine Learning Applications


In the past 5 years, applications of machine learning
have grown exponentially and it will continue to grow in
the future. The best way to understand different
approaches and when to use which approach is to go
over different applications and that’s what we are going
to do here.
We have started to incorporate virtual personal
assistant in our daily life. We all have smartphones
which come with a personal assistant. Apple has Siri,
Amazon has Alexa, Google has Google Now and
Samsung has Bixby. This personal assistant uses
different machine learning approaches. Google Now is
using reinforcement learning for search optimization
and natural language processing for speech recognition.
Other personal assistant uses a Hidden Markov model
or Artificial Neural Networks. Sometimes classical
techniques like Naive Bayes and Support Vector
Machine is also used to build personal assistant. All of
these techniques/approaches have a similar goal which
is to collect as much as information possible and refine
them based on previous preferences.

Google Maps probably the most used application


currently. Google maps uses a machine learning
approach called Temporal difference learning to find the
fastest route possible. Temporal difference learning is a
class of reinforcement learning which uses
bootstrapping to estimate the value of a model function.

Spam emails and malware were a headache to us 10


years ago, but advancement in machine learning made
it easy to classify them. Spam filters are powered by
machine learning which is updated continuously to
make it more reliable. Most of the spam filter uses a
multilayer perceptron network and C4.5 Decision Tree
Induction techniques. Whereas to detect the malware,
various machine learning models have been used to
recognize coding pattern in the code. Some of the
common approaches are Decision Tree, Linear
Regression, RandomForest, Adaboost, Gaussian Naive
Bayes and Gradient Boosting.

Machine learning plays an important role in


cybersecurity and online fraud detection. Because of
growing monetary online frauds, companies like PayPal
have started using machine learning techniques for
protection against the money laundering. The prediction
problem of the model for fraud detection can be divided
into two types: classification and regression. Some of
the most used machine learning approaches for this
type of prediction problems are Logistic Regression,
Decision Tree, Random Forest Tree, and Neural
Networks.

We are rapidly shifting towards automation that


includes machine automation and self-driving cars. A
self-driving car uses several machine learning
algorithms to make it more reliable and trustworthy
decision. To make an autonomous vehicle, machine
learning algorithms are divided into different classes
based on subtasks, which are object detection,
classification of recognized objects and object
localization and their movement prediction. Algorithms
like AdaBoost and decision tree matrix are used for
recognizing different objects, clustering algorithm like k-
means is used to group similar objects and algorithms
like pattern recognition, support vector machine, and
neural network regression are used for movement
prediction.

Issues in Machine Learning


"Machine Learning" is one of the most popular technology among all data
scientists and machine learning enthusiasts. It is the most effective Artificial
Intelligence technology that helps create automated learning systems to take
future decisions without being constantly programmed. It can be considered
an algorithm that automatically constructs various computer software using
past experience and training data. It can be seen in every industry, such as
healthcare, education, finance, automobile, marketing, shipping, infrastructure,
automation, etc. Almost all big companies like Amazon, Facebook, Google,
Adobe, etc., are using various machine learning techniques to grow their
businesses. But everything in this world has bright as well as dark sides.
Similarly, Machine Learning offers great opportunities, but some issues need
to be solved.

This article will discuss some major practical issues and their business
implementation, and how we can overcome them. So let's start with a quick
introduction to Machine Learning.
What is Machine Learning?
Machine Learning is defined as the study of computer algorithms for
automatically constructing computer software through past experience and
training data.
It is a branch of Artificial Intelligence and computer science that helps build a
model based on training data and make predictions and decisions without
being constantly programmed. Machine Learning is used in various
applications such as email filtering, speech recognition, computer vision, self-
driven cars, Amazon product recommendation, etc.
Commonly used Algorithms in Machine Learning
Machine Learning is the study of learning algorithms using past experience
and making future decisions. Although, Machine Learning has a variety of
models, here is a list of the most commonly used machine learning
algorithms by all data scientists and professionals in today's world.
o Linear Regression
o Logistic Regression
o Decision Tree
o Bayes Theorem and Naïve Bayes Classification
o Support Vector Machine (SVM) Algorithm
o K-Nearest Neighbor (KNN) Algorithm
o K-Means
o Gradient Boosting algorithms
o Dimensionality Reduction Algorithms
o Random Forest
Common issues in Machine Learning
Although machine learning is being used in every industry and helps
organizations make more informed and data-driven choices that are more
effective than classical methodologies, it still has so many problems that
cannot be ignored. Here are some common issues in Machine Learning that
professionals face to inculcate ML skills and create an application from
scratch.
1. Inadequate Training Data
The major issue that comes while using machine learning algorithms is the
lack of quality as well as quantity of data. Although data plays a vital role in
the processing of machine learning algorithms, many data scientists claim
that inadequate data, noisy data, and unclean data are extremely exhausting
the machine learning algorithms. For example, a simple task requires
thousands of sample data, and an advanced task such as speech or image
recognition needs millions of sample data examples. Further, data quality is
also important for the algorithms to work ideally, but the absence of data
quality is also found in Machine Learning applications. Data quality can be
affected by some factors as follows:
o Noisy Data- It is responsible for an inaccurate prediction that affects
the decision as well as accuracy in classification tasks.
o Incorrect data- It is also responsible for faulty programming and
results obtained in machine learning models. Hence, incorrect data
may affect the accuracy of the results also.
o Generalizing of output data- Sometimes, it is also found that
generalizing output data becomes complex, which results in
comparatively poor future actions.
2. Poor quality of data
As we have discussed above, data plays a significant role in machine
learning, and it must be of good quality as well. Noisy data, incomplete data,
inaccurate data, and unclean data lead to less accuracy in classification and
low-quality results. Hence, data quality can also be considered as a major
common problem while processing machine learning algorithms.
3. Non-representative training data
To make sure our training model is generalized well or not, we have to ensure
that sample training data must be representative of new cases that we need
to generalize. The training data must cover all cases that are already occurred
as well as occurring.
Further, if we are using non-representative training data in the model, it results
in less accurate predictions. A machine learning model is said to be ideal if it
predicts well for generalized cases and provides accurate decisions. If there is
less training data, then there will be a sampling noise in the model, called the
non-representative training set. It won't be accurate in predictions. To
overcome this, it will be biased against one class or a group.
Hence, we should use representative data in training to protect against being
biased and make accurate predictions without any drift.
4. Overfitting and Underfitting
Overfitting:
Overfitting is one of the most common issues faced by Machine Learning
engineers and data scientists. Whenever a machine learning model is trained
with a huge amount of data, it starts capturing noise and inaccurate data into
the training data set. It negatively affects the performance of the model. Let's
understand with a simple example where we have a few training data sets
such as 1000 mangoes, 1000 apples, 1000 bananas, and 5000 papayas.
Then there is a considerable probability of identification of an apple as
papaya because we have a massive amount of biased data in the training
data set; hence prediction got negatively affected. The main reason behind
overfitting is using non-linear methods used in machine learning algorithms
as they build non-realistic data models. We can overcome overfitting by using
linear and parametric algorithms in the machine learning models.
Methods to reduce overfitting:
o Increase training data in a dataset.
o Reduce model complexity by simplifying the model by selecting one
with fewer parameters
o Ridge Regularization and Lasso Regularization
o Early stopping during the training phase
o Reduce the noise
o Reduce the number of attributes in training data.
o Constraining the model.
Underfitting:
Underfitting is just the opposite of overfitting. Whenever a machine learning
model is trained with fewer amounts of data, and as a result, it provides
incomplete and inaccurate data and destroys the accuracy of the machine
learning model.
Underfitting occurs when our model is too simple to understand the base
structure of the data, just like an undersized pant. This generally happens
when we have limited data into the data set, and we try to build a linear model
with non-linear data. In such scenarios, the complexity of the model destroys,
and rules of the machine learning model become too easy to be applied on
this data set, and the model starts doing wrong predictions as well.
Methods to reduce Underfitting:
o Increase model complexity
o Remove noise from the data
o Trained on increased and better features
o Reduce the constraints
o Increase the number of epochs to get better results.
5. Monitoring and maintenance
As we know that generalized output data is mandatory for any machine
learning model; hence, regular monitoring and maintenance become
compulsory for the same. Different results for different actions require data
change; hence editing of codes as well as resources for monitoring them also
become necessary.
6. Getting bad recommendations
A machine learning model operates under a specific context which results in
bad recommendations and concept drift in the model. Let's understand with
an example where at a specific time customer is looking for some gadgets,
but now customer requirement changed over time but still machine learning
model showing same recommendations to the customer while customer
expectation has been changed. This incident is called a Data Drift. It generally
occurs when new data is introduced or interpretation of data changes.
However, we can overcome this by regularly updating and monitoring data
according to the expectations.
7. Lack of skilled resources
Although Machine Learning and Artificial Intelligence are continuously
growing in the market, still these industries are fresher in comparison to
others. The absence of skilled resources in the form of manpower is also an
issue. Hence, we need manpower having in-depth knowledge of mathematics,
science, and technologies for developing and managing scientific substances
for machine learning.
8. Customer Segmentation
Customer segmentation is also an important issue while developing a
machine learning algorithm. To identify the customers who paid for the
recommendations shown by the model and who don't even check them.
Hence, an algorithm is necessary to recognize the customer behavior and
trigger a relevant recommendation for the user based on past experience.
9. Process Complexity of Machine Learning
The machine learning process is very complex, which is also another major
issue faced by machine learning engineers and data scientists. However,
Machine Learning and Artificial Intelligence are very new technologies but are
still in an experimental phase and continuously being changing over time.
There is the majority of hits and trial experiments; hence the probability of
error is higher than expected. Further, it also includes analyzing the data,
removing data bias, training data, applying complex mathematical
calculations, etc., making the procedure more complicated and quite tedious.
10. Data Bias
Data Biasing is also found a big challenge in Machine Learning. These errors
exist when certain elements of the dataset are heavily weighted or need more
importance than others. Biased data leads to inaccurate results, skewed
outcomes, and other analytical errors. However, we can resolve this error by
determining where data is actually biased in the dataset. Further, take
necessary steps to reduce it.
Methods to remove Data Bias:
o Research more for customer segmentation.
o Be aware of your general use cases and potential outliers.
o Combine inputs from multiple sources to ensure data diversity.
o Include bias testing in the development process.
o Analyze data regularly and keep tracking errors to resolve them easily.
o Review the collected and annotated data.
o Use multi-pass annotation such as sentiment analysis, content
moderation, and intent recognition.
11. Lack of Explainability
This basically means the outputs cannot be easily comprehended as it is
programmed in specific ways to deliver for certain conditions. Hence, a lack of
explainability is also found in machine learning algorithms which reduce the
credibility of the algorithms.
12. Slow implementations and results
This issue is also very commonly seen in machine learning models. However,
machine learning models are highly efficient in producing accurate results but
are time-consuming. Slow programming, excessive requirements' and
overloaded data take more time to provide accurate results than expected.
This needs continuous maintenance and monitoring of the model for
delivering accurate results.
13. Irrelevant features
Although machine learning models are intended to give the best possible
outcome, if we feed garbage data as input, then the result will also be
garbage. Hence, we should use relevant features in our training sample. A
machine learning model is said to be good if training data has a good set of
features or less to no irrelevant features.
Conclusion
An ML system doesn't perform well if the training set is too small or if the
data is not generalized, noisy, and corrupted with irrelevant features. We went
through some of the basic challenges faced by beginners while practicing
machine learning. Machine learning is all set to bring a big bang
transformation in technology. It is one of the most rapidly growing
technologies used in medical diagnosis, speech recognition, robotic training,
product recommendations, video surveillance, and this list goes on. This
continuously evolving domain offers immense job satisfaction, excellent
opportunities, global exposure, and exorbitant salary. It is high risk and a high
return technology. Before starting your machine learning journey, ensure that
you carefully examine the challenges mentioned above. To learn this fantastic
technology, you need to plan carefully, stay patient, and maximize your
efforts. Once you win this battle, you can conquer the Future of work and land
your dream job!
Difference Between Data Science and Machine Learning
S.No Data Science Machine Learning

Data Science is a field about processes and systems to Machine Learning is a field of study that gives computers th
1. extract data from structured and semi-structured data. capability to learn without being explicitly programmed.

2. Need the entire analytics universe. Combination of Machine and Data Science.

Machines utilize data science techniques to learn about the


3. Branch that deals with data. data.

It uses various techniques like regression and supervised


Data in Data Science maybe or maybe not evolved from a
4. clustering.
machine or mechanical process.

Data Science as a broader term not only focuses on


algorithms statistics but also takes care of the data
5. But it is only focused on algorithm statistics.
processing.

6. It is a broad term for multiple disciplines. It fits within data science.

Many operations of data science that is, data gathering, It is three types: Unsupervised learning, Reinforcement
7. data cleaning, data manipulation, etc. learning, Supervised learning.

8. Example: Netflix uses Data Science technology. Example: Facebook uses Machine Learning technology.

You might also like