Types of ML
Types of ML
For the given problem, you would like to solve, you have to obtain data from your
own sources to feed into your machine. And more important is the data that are your
feeding into machine should be right data. Otherwise your model won’t work. The
sources of data can be newspaper, or from a web. It should be in a precise form and
accurate.
This is a good time to visualize your data and check if there are correlations between
the different characteristics that we obtained. It will be necessary to make a selection
of characteristics since the ones you choose will directly impact the execution times
and the results. Additionally, you must balance the amount of data we have for each
result -class- so that it is significant as the learning may be biased towards a type of
response and when your model tries to generalize knowledge it will fail.
You must also separate the data into two groups: one for training and the other for
model evaluation which can be divided approximately in a ratio of 80/20 but it can
vary depending on the case and the volume of data we have.
At this stage, you can also pre-process your data by normalizing, eliminating
duplicates, and making error corrections.
There are several models that you can choose according to the objective that you
might have: you will use algorithms of classification, prediction, linear
regression, clustering, i.e. k-means or K-Nearest Neighbor, Deep Learning, i.e
Neural Networks, Bayesian, etc.
There are various models to be used depending on the data you are going to
process such as images, sound, text, and numerical values. In the following table,
we will see some models and their applications that you can apply in your projects:
You will need to train the datasets to run smoothly and see an incremental
improvement in the prediction rate. Remember to initialize the weights of your model
randomly -the weights are the values that multiply or affect the relationships between
the inputs and outputs- which will be automatically adjusted by the selected
algorithm the more you train them.
Step 5: Evaluation
You will have to check the machine created against your evaluation data set that
contains inputs that the model does not know and verify the precision of your already
trained model. If the accuracy is less than or equal to 50%, that model will not be
1|Page
useful since it would be like tossing a coin to make decisions. If you reach 90% or
more, you can have good confidence in the results that the model gives you.
If during the evaluation you did not obtain good predictions and your precision is not
the minimum desired, it is possible that you have overfitting -or underfitting problems
and you must return to the training step before making a new configuration of
parameters in your model. You can increase the number of times you iterate your
training data- termed epochs. Another important parameter is the one known as the
“learning rate”, which is usually a value that multiplies the gradient to gradually bring
it closer to the global -or local- minimum to minimize the cost of the function.
Increasing your values by 0.1 units from 0.001 is not the same as this can
significantly affect the model execution time. You can also indicate the maximum
error allowed for your model. You can go from taking a few minutes to hours, and
even days, to train your machine. These parameters are often called
Hyperparameters. This “tuning” is still more of an art than a science and will improve
as you experiment. There are usually many parameters to adjust and when
combined they can trigger all your options. Each algorithm has its own parameters to
adjust. To name a few more, in Artificial Neural Networks (ANNs) you must define in
its architecture the number of hidden layers it will have and gradually test with more
or less and with how many neurons each layer. This will be a work of great effort and
patience to give good results.
You are now ready to use your Machine Learning model inferring results in real-life
scenarios.
2|Page
As with any method, there are different ways to train machine learning
algorithms, each with their own advantages and disadvantages. To
understand the pros and cons of each type of machine learning, we must
first look at what kind of data they ingest. In ML, there are two kinds of data
— labeled data and unlabeled data.
Labeled data has both the input and output parameters in a completely
machine-readable pattern, but requires a lot of human labor to label the
data, to begin with. Unlabeled data only has one or none of the parameters
in a machine-readable form. This negates the need for human labor but
requires more complex solutions.
There are also some types of machine learning algorithms that are used in
very specific use-cases, but three main methods are used today.
Supervised learning
This solution is then deployed for use with the final dataset, which it learns
from in the same way as the training dataset. This means that supervised
machine learning algorithms will continue to improve even after being
deployed, discovering new patterns and relationships as it trains itself on
new data.
Unsupervised Learning
Unsupervised machine learning holds the advantage of being able to work
with unlabeled data. This means that human labor is not required to make
3|Page
the dataset machine-readable, allowing much larger datasets to be worked
on by the program.
In supervised learning, the labels allow the algorithm to find the exact
nature of the relationship between any two data points. However,
unsupervised learning does not have labels to work off of, resulting in the
creation of hidden structures. Relationships between data points are
perceived by the algorithm in an abstract manner, with no input required
from human beings.
Semi-supervised learning: A small amount of data are labeled. Computers only need
to find features through labeled data and then classify other data accordingly. This
method can make predictions more accurate and is the most commonly used method.
If there are 100 photos, 10 of them which are elephants and which are giraffes are
labeled. Through the characteristics of these 10 photos, the machine identifies and
classifies the remaining photos. Because there is already a basis for identification, the
predicted results are usually more accurate than un-supervised learning.
Reinforcement Learning
Reinforcement learning directly takes inspiration from how human beings learn from
data in their lives. It features an algorithm that improves upon itself and learns from
new situations using a trial-and-error method. Favorable outputs are encouraged or
‘reinforced’, and non-favorable outputs are discouraged or ‘punished’.
In case of the program finding the correct solution, the interpreter reinforces the
solution by providing a reward to the algorithm. If the outcome is not favorable, the
algorithm is forced to reiterate until it finds a better result. In most cases, the reward
system is directly tied to the effectiveness of the result.
4|Page