# Code

## Feature Engineering to make the data elegant and interpretable for the machine learning model

If you have some raw data and want to convert in into meaningful insight, feature engineering in machine learning is one of the best tools to help you. Imagine a real-life situation where you want to know how frequently a customer order food from your restaurant in order to offer best customer service. In such …

## Visualizing 3D Protein Structures and Exporting Into images Using Jupyter Notebook.

The Jupyter Notebook is best suited for doing as well as documenting empirical research. It can contain text, code images, videos, interactive content, and also nicely typesetting equations. This makes anyone doing simulations or empirical research prototype their work and share it with their colleagues. In this blog post, I am going to show how …

## Linux Terminal Basics

Graphical User Interface (GUI) has been useful and easy to use for all types of computer users. We all use it every day to get things done. However, the computing history has the provision to do command-line instructions also to do the same things. Let us take a few examples where one beats the other. …

## Python Matplotlib Tip: Overlapping Curves and Multiple Axes

In STEM fields it is often required to communicate ideas using graphs or infographics. Many times the dimensionality of data will be higher and require clever hacks to represent so that the reader gets the idea quickly. There have been systematic studies on how to do data visualization effectively. For data scientists or machine learning …

## Entropy Simplified

The field of information theory defines entropy as a measure of average information a random variable takes. As we know the random variable is one whose possible outcome states are not deterministic. We cannot predict its behavior exactly in an analytical form. In such cases, we can only look at the patterns of its outcome …

## Active Learning with Uncertainty Sampling from Scratch

Introduction Availability of mass quantities of digital data and feasible computing power brought to the creation of learning algorithms. These learning algorithms have been benchmarked to perform specialized tasks such as classification, object detection, image segmentation, etc. The key assumption here is on data that is supposed to be free from human biases. Active learning …

## Hacking the Bivariate Gaussian Distribution

In one of our earlier posts, we have seen how we can visually relate the parts of the one-dimensional Gaussian distribution equation. In this post, we will follow the same strategy to understand the terms that comes up with a Multivariable Gaussian distribution. We will focus on the Bivariate Gaussian distribution as distributions of higher-order …

## Gaussian Distribution Explained Visually

Gaussian distribution appears in various parts of science and engineering. Apart from a distribution often appear in nature, it has got important properties such as its relation to Central Limit Theorem (CLT). The figure above shows one-dimensional Gaussian distributions of various mean and variance values. Libraries like NumPy provide functions that can return Gaussian distribution …

## Coding a Simple Markov Decision Process

This is a quick tutorial on how to implement a two-state Markov Decision Process (MDP). It has only two states: state 1 and state 2. Applications MDPs often appear in machine learning and reinforcement learning. At any stage, the agent can take any of the two actions. The actions are to stay or switch. The …

## An Intuitive Explanation of Naive Bayes Classifier

Introduction In this post, let’s take a look at the intuition behind Naive Bayes Classifier used in machine learning. Naive Bayes classifier is one of the basic algorithms often encountered in machine learning applications. If linear regression was based on concepts from linear algebra and calculus, naive Bayes classifier mostly backed up by probability theory. …