What is machine learning?

In this section we will introduce you with the machine learning and give you overview of types of machine learning?

What is machine learning?

What is machine learning and its types?

Machine learning is one of the branches of computer science where special programs are used to teach computer to learn from previous data and use this information in various predictions or analysis.

In machine learning, Artificial Intelligence (AI) algorithms are used to write computer programs that give system ability to learn from the previous data. Previous learning is used by the system to take decision and it keeps on learning with new data. This way system automatically decides what to do without explicit programming. AI technologies, machine learning and deep learning are getting very popular for developing analytics programs for various industries.

In very simple terms machine learning program gives ability to computer to learn, take decision and keep on improving its intelligence by learning through new data. This is good as AI and machine learning programs makes computer an intelligent system which can take decision on its own.

Development of machine learning program involves study and construction of mathematical algorithms that can learn from data and predict on the data provided.

Machine learning is heavy computation activity which uses various computing tasks and algorithm to do learning. Various types of mathematical algorithms are required to designed, tested and turned into model. This task is very computation intensive and it’s difficult or impossible to develop program that performs fast. But invention in computation and parallel processing technologies makes it easy to learn program on clusters to provide huge performance increase.

Types of Machine learning

Types of Machine Learning

Machine learning is classified into three categories based on the outside input requirement requirements in terms of learning and intelligence.

  • Supervised learning: In case of supervised learning system learns from the input and output data which is supplied at the time of training. For example we have two inputs x and y, and the output of these input is z, then these three values are given to the program for learning.
      
  • Unsupervised learning: In case of unsupervised learning system is just provided with the input data (e.g x and y) and then system will learn automatically from these data sets.
     
  • Reinforcement learning:  The Reinforcement learning is branch of AI and its type of machine learning. In case of Reinforcement learning machine and agents automatically determines ideal behaviour within a defined context. For it a task is given to the agent and there are two options, agent chooses any one of them and if the choice is correct it will be rewarded otherwise it will be punished. Based on these reward and punishment agent learns the ideal behaviour.

Top algorithm of supervised learning

Now let ‘s see the top algorithm of supervised learning. Here is the list of top used algorithms to write programs for supervised learning.

  • Analytical learning
  • Artificial neural network
  • Backpropagation
  • Boosting (meta-algorithm)
  • Bayesian statistics
  • Case-based reasoning
  • Decision tree learning
  • Inductive logic programming
  • Gaussian process regression
  • Group method of data handling
  • Kernel estimators
  • Learning Automata
  • Learning Classifier Systems
  • Minimum message length (decision trees, decision graphs, etc.)
  • Multilinear subspace learning
  • Naive bayes classifier
  • Maximum entropy classifier
  • Conditional random field
  • Nearest Neighbor Algorithm
  • Probably approximately correct learning (PAC) learning
  • Ripple down rules, a knowledge acquisition methodology
  • Symbolic machine learning algorithms
  • Subsymbolic machine learning algorithms
  • Support vector machines
  • Minimum Complexity Machines (MCM)
  • Random Forests
  • Ensembles of Classifiers
  • Ordinal classification
  • Data Pre-processing
  • Handling imbalanced datasets
  • Statistical relational learning
  • Proaftn, a multicriteria classification algorithm

Top algorithm of unsupervised learning

Here are top algorithms of unsupervised learning which is used to develop machine learning system in various programming languages.

clustering:

In case of clustering k-means, mixture models and hierarchical clustering algorithms are used.

anomaly detection: Used to detect anomaly in the data.

Neural Networks: Neural networks are also very popular which includes Hebbian Learning and Generative Adversarial Networks

Latent variables: Approaches for learning latent variable models includes Expectation–maximization algorithm (EM), Method of moments and Blind signal separation techniques.
Further Blind signal separation techniques are:

  • Principal component analysis
  • Independent component analysis
  • Non-negative matrix factorization
  • Singular value decomposition

Many machine learning program comes with pre-build packages or you can also write programs for unsupervised learning from scratch. You have to understand all these algorithms to start machine learning programming.

Top algorithm of Reinforcement learning

Now finally we will see the algorithm of developing programs for Reinforcement learning.

  • Q-learning
  • SARSA
  • Temporal difference (TD)

In this section we learned about the machine learning and its types. We also explored various algorithms used for machine learning.