Your interactive network visualizing dashboard in Python

Photo by Ella Baxter on Unsplash

Visit the package’s github page for code and detailed readme. Also, if you like it, please don’t shy from clicking on the star 😏

👉 Preface

Not long ago I posted an article introducing several network visualizing tools in Python. The response was phenomenal. The best part was the messages where people shared their experiences, preferences and problems. One interesting point was how many were excited about one of the options, but it required a lot of boilerplate code to get started. This problem was the catalyst for Jaal, where I have tried to remove all of the frills required to plot…

A practical guide to tools which helps you “see” the network

Photo by Scott Webb on Unsplash

Every code from this article is published in this repository.

Update 2nd Feb, 2021: I recently released Jaal, a python package for network visualization. It can be thought of as the 4th option in the list discussed below. Do give it try. For more details, see this separate blog. Thnx!


Network or Graph is a special representation of entities which have relationships among themselves. It is made up of a collection of two generic objects — (1) node: which represents an entity, and (2) edge: which represents the connection between any two nodes. In a complex network, we also have…

Exploring 12 different arrangements made from basic recurrent layers to experimentally answer 3 interesting questions about model building!

Photo by Franki Chamaki on Unsplash


The initial set of layers for recurrent neural operations universally begins with LSTM, GRU and RNN. But with an increase in the complexity of the task, we should use more complex models. That said, before moving directly to different and relatively complex models like attention or transformers, we should first ask a simple question — can we still do something quickly with the basic recurrent layers? In this article, I will focus on the same philosophy that — we should first exhaust the simple solutions before going for the more complex ones. In the next sections, we will explore the…

Photo by Daniele Levis Pelusi on Unsplash


After going through a lot of theoretical articles on recurrent layers, I just wanted to build my first LSTM model and train it on some texts! But the huge list of exposed parameters for the layer and the delicacies of layer structures were too complicated for me. This meant I had to spend a lot of time going through StackOverflow and API definitions to get a clearer picture. This article is an attempt to consolidate all of the notes which can accelerate the process of transition from theory to practice. The goal of this guide is to develop a practical…

Let’s build the intuition on why and what of Graph Neural Networks (GNN) by discussing one of the groundbreaking works in the domain — DeepWalk. We will connect this with word2vec and conclude by experimenting with existing implementation on a graph.

By urielsc26 from Unsplash


Graph Neural Networks are the current hot topic [1]. And this interest is surely justified as GNNs are all about latent representation of the graph in vector space. Representing an entity as a vector is nothing new. There are many examples like word2vec and Gloves embeddings in NLP which transforms a word into a vector. What makes such representation powerful are (1) these vectors incorporate a notion of similarity among them i.e. two words who are similar to each other tend to be closer in the vector space (dot product is large), and (2) they have application in diverse downstream…

Let’s go through some of the basic algorithms to solve complex decision-making problems influenced by multiple criteria. We will discuss why we need such techniques and explore available algorithms in the cool skcriteria python package

Photo by Joshua Golde from Unsplash


Suppose you have a decision to make — like buying a house, or a car, or even a guitar. You don’t want to choose randomly or get biased by someone’s suggestion, but want to make an educated decision. For this, you gathered some information about the entity you want to buy (let’s say it’s a car). So you have a list of N cars with their price information. As usual, we won’t want to spend more, we can just sort the cars by their price (in ascending order) and pick the top one (with the smallest price), and we are…

A comprehensive but simple guide which focus more on the idea behind the formula rather than the math itself — start building the block with expectation, mean, variance to finally understand the large picture i.e. co-variance

co-variance calculation in all its glory!


Contrary to the popular belief, a formula is much more than just mathematical notations. It tries to express an idea, which get hidden under the math and is not evident unless you really look for it. The main problem with this kind of representation (as it usually happens with me), is that after sometime you tend to forget the formula. So, here is my attempt to explain one topic such that it sticks with the audience. Before diving right into it, I will try to explain some prerequisite topics. If you are already familiar with them, feel free to skip…

The best way to learn about Q tables…

Give me maximum reward :)

Go play @ Interactive Q learning

Code @ Mohit’s Github


While going through the process of understanding Q learning, I was always fascinated by the grid world (the 2D world made of boxes, where agent moves from one box to another and collect rewards). Almost all of the courses in Reinforcement learning begins with a basic introduction to Q tables and the most intuitive Q tables examples are of grid worlds. That said, many courses only draw their static worlds and provide no playing material to the audience. To counter this, I thought of creating an interactive grid world, where…

A intuitive hands-on session on a visual arts sketchbook software by drawing the curves that puts life into animations!

Quadratic Bezier curve in all its glory!


In this post, we are are going to learn the basics of processing — its an interactive visual software and language used by students and artists around the global. Its open source, has OpenGL integration and supports multiple languages (Java, JS, Python, etc) & OS (Mac, Windows, Linux, Android, etc). On the other hand, Bezier curves are the building blocks in basically anything that has to do with curves in computer graphics and is used even in animations. I picked this example as this post will introduce us to an important mathematical topic in fields of polyline and with visualization…

Understand the famous mathematical property which acted as bane for several complex real life problems and still kicks a punch here and there.


The dictionary defines ‘invariant’ as ‘never changing’, and well that’s really all there is. Invariant in mathematics, is a property held by a mathematical object, which remains same even after repetitive transformation of the object. If for some objects that property is different, then we can never reach from the original object to the newer ones, by trying the same transformations. This may sound tricky, but its really helpful and in some cases may even solve the problem.


There are basically two broad categories,

  1. Invariance: Property that stays constants.
  2. Mono-variance: Property that changes in only one-direction. …

Mohit Mayank

Data Scientist @ TCS, Technologist, machine learning enthusiast, programmer and budding musician

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store