Background of Machine Learning (ML) you should know before start learn

Today I am going to talk about the differences between Machine Learning, AI, ANN, Mathematical models, and few libraries that can use to program using python. In most of the time, we get confused about the terminology of Machine Learning. This is the main reason that we cannot understand Machine Learning even we know how to code them.

Machine Learning (ML) is a subset of Artificial Intelligence (AI). The Machine Learning has subsets such as Artificial Neural Networks (ANN) and Mathematical Models. 

ANN can be categorized in to following two types,

  1. Shallow feed forward Neural Network
  2. Deep Neural Network (Also known as Deep Learning)

Shallow feed forward Neural Network has only one hidden layer while Deep Neural Network has multiple hidden layers. That is shown in the figures bellow.

Shallow feed forward Neural Network




Deep Neural Network (Deep Learning)

The following figure shows how these areas relate to each other,

Mainly there are two types of machine learning libraries can be used to code machine learning systems using python. They are,

  • Scikit Learn
  • TensorFlow

The Scikit Learn can be used to code Machine Learning Mathematical models such as Decision Tree, Random Forest, SVM, and Linear Regression etc. TensorFlow can be used to code Aritificial Neural Networks (ANN) such as Deep Learning.  

From these two types of python libraries, the easiest is the Scikit Learn library. To code using Scikit Learn, the user do not need any special knowledge about machine learning. They can just apply for the user case directly. In terms of TensorFlow, the user should have some clear knowledge about Neural Networks, Activation functions and back-propagation, etc.

There are so many algorithm types of Deep Learning (Deep Neural Network):

  • CNN (Convolutional Neural Network)
  • LSTM (Long Short Term Memory Networks)
  • RNN (Recurrent Neural Networks)
  • MLP (Multilayer Perceptrons)
  • GAN (Generative Adversarial Networks)
  • ..., etc

Convolutional Neural Network (CNN) is a deep learning algorithm that is mainly used for image classification applications. Recurrent Neural Networks (RNN) algorithm is better to used with sequential data. RNN is very similar to neuron activity in the human brain.

Comments

Popular posts from this blog

Solar System

Converting JWST raw FITS images into TIFF images before image process

Easiest way to download JWST raw image data