Machine Learning


Machine learning is the technique of computers to act without being explicitly programmed. Machine learning is so common today that you probably use it dozens of times a day without knowing it.The examples are self-driving cars, practical speech recognition, effective web search etc.

Machine learning explores the study and construction of algorithms that can learn from and make predictions on data. Such algorithms overcome following strictly static program instructions by making data-driven predictions or decisions, through building a model from sample inputs.

Selecting the right algorithm is a key part of any machine learning project, as there are many algorithms available to choose, understanding their strengths and weaknesses in various business applications is essential.

Machine learning algorithms can be divided into 3 broad categories:

  1. Supervised learning
  2. Unsupervised learning
  3. Reinforcement learning


  • In supervised learning, we train an algorithm and at the end of the process we pick the function that best describes the input data, the one that for a given X makes the best estimation of y (X -> y).
  • Here the human experts act as the teacher where we feed the computer with training data containing the input/predictors and we show it the correct answers (output) and from the data, the computer should be able to learn the patterns.
  • Supervised learning algorithms try to model relationships and dependencies between the target prediction output and the input features such that we can predict the output values for new data based on those relationships which it learned from the previous data sets.

   Supervised Learning goes through the following steps:

  • Predictive Model
  • we have labeled data
  • The main types of supervised learning problems include regression and classification problems


  • In Unsupervised Learning, the computer is trained with unlabeled data.
  • In this learning there is no trainer at all, actually, the computer might be able to teach you new things after it learns patterns in data, these algorithms a particularly useful in cases where the human expert doesn’t know what to look for in the data.
  • These types of algorithms, mainly used in pattern detection and descriptive modeling. However, there are no output categories or labels here based on which the algorithm can try to model relationships. These algorithms try to use techniques on the input data to mine for rules, detect patterns, and summarize and group the data points which help in deriving meaningful insights and describe the data better to the users.

Unsupervised Learning goes through the following steps:

  • Descriptive Model
  • The main types of unsupervised learning algorithms include Clustering algorithms and Association rule learning algorithms.


  • In Supervised and Unsupervised learning type, either there are no labels for all the observations in the dataset or labels are present for all the observations.
  • Semi-supervised learning falls in between these two.
  • In many practical situations, the cost to label is quite high, since it requires skilled human experts to do that. So, in the absence of labels in the majority of the observations but present in few, semi-supervised algorithms are the best candidates for the model building.
  • These methods exploit the idea that even though the group memberships of the unlabeled data are unknown, this data carries important information about the group parameters.


  • The reinforcement learning algorithm (called the agent) continuously learns from the environment in an iterative fashion. In the process, the agent learns from its experiences of the environment until it explores the full range of possible states.
  • Reinforcement Learning allows machines and software agents to automatically determine the ideal behavior within a specific context, in order to maximize its performance. Simple reward feedback is required for the agent to learn its behavior; this is known as the reinforcement signal.

Reinforcement learning goes through the following steps:

  1. The input state is observed by the agent.
  2. Decision-making function is used to make the agent perform an action.
  3. After the action is performed, the agent receives a reward or reinforcement from the environment.
  4. The state-action pair of information about the reward is stored.


Machine learning is a field that is continuously being innovated. It is important to keep in mind that algorithms, methods, and approaches will continue to change. We have designed a small sample project that talks about ‘Machine Learning-Based Text Processing’. The High-level flow has been explained with a sample project published on GitHub.