Posts

[Thoughts]-On the interpretability conundrum

Of all the unknowable information, you can only get as much unknowable information out of a system as axioms you put in. Better understanding depends on the amount of input axioms. Better prediction requires better understanding. And better understanding makes a system more interpretable. Higher the interpretability of a system the higher we trust the system. Interpretability focuses on understanding the cause of the decision while inference focuses on the conclusion reached on the basis of evidence & reasoning(Causal & Bayesian).

Switching to Pop! OS for machine learning made easy

Some of the major components of Pop!_OS are written in Rust. Its 21.04 version was released on 29 June 2021 and is based upon Ubuntu 21.04. It included the COSMIC (Computer Operating System Main Interface Components) desktop, based on GNOME, but with a custom dock and shortcut controls. Also, it is said that in the future updates System76 will be ditching GNOME and will introduce a new Desktop Environment all together written in Rust (expect it to be heck of alot faster!) based on Pop! OS instead. Hmm..Going the apple way it seems but remaining open source of course. However it won’t be an easy task, wish them luck and I hope it comes out.

Suckerbug: A python script to scrape photos from facebook's public pages

P.S. The recent facebook outage grabbed my attention hence I wrote the script for fun ;p

[Idea]-Making autonomous vehicles robust with active learning, federated learning & V2X communication

Recent advances in various machine learning techniques have propelled the enhancement of the autonomous vehicles’ industry. The idea is to couple active learning with federated learning via., v2x communication, to enhance the training of machine learning models. In the case of autonomous vehicles, we almost assume that the roads will be straightforward, flat without any potholes(uncertainty), but that isn’t the case every time. Here, active learning tends to selectively choose the data points with highest informative-ness in order to label them and subsequently add them to the training pool. Additionally, with federated learning we could train our model on multiple agents in a decentralised manner on the local data that we will get from each vehicle to recognise those potholes and help try to save the vehicle from similar potholes. Also, when we think of driving in general, there are good drivers and bad drivers.

Graph SLAM: A Noob’s Guide to Simultaneous Localisation and Mapping

Simultaneous localisation and mapping (SLAM) used in the concurrent construction of a model of the environment (the map), and the estimation of the state of the robot moving within it. In other words, SLAM gives you a way to track the location of a robot in the world in real-time and identify the locations of landmarks such as buildings, trees, rocks, and other world features. In addition to localisation, we also want to build up a model of the robot’s environment so that we have an idea of objects, and landmarks that surround it and so that we can use this map data to ensure that we are on the right path as the robot moves through the world. So the key insight in building a map is that the robot itself might lose track of where it is by virtue of its motion uncertainty since there is no presence of an existing map because we are building the map simultaneously. That’s where SLAM comes into play.

The Curious Case of Kalman Filters

Kalman filter finds the most optimum averaging factor for each consequent state. Also somehow remembers a little bit about the past states. It performs a joint probability distribution over the variables for each timeframe. The algorithm uses the new mean and new variance for every step in order to calculate the uncertainty and tries to provide accurate measurements for each timeframe of the measurement update (sensing/prediction) and the motion update(moving). The algorithm also uses other inaccuracies and statistical noise in order to represent the initial uncertainty.

Automatic Image Captioning with CNN & RNN

Generally, a captioning model is a combination of two separate architecture that is CNN (Convolutional Neural Networks)& RNN (Recurrent Neural Networks) and in this case LSTM (Long Short Term Memory), which is a special kind of RNN that includes a memory cell, in order to maintain the information for a longer period of time. Basically, CNN is used to generate feature vectors from the spatial data in the images and the vectors are fed through the fully connected linear layer into the RNN architecture in order to generate the sequential data or sequence of words that in the end generate description of an image by applying various image processing techniques to find the patterns in an image.

Facial Keypoint Detection using CNN & PyTorch

Facial Keypoints are also called Facial Landmarks which generally specify the areas of the nose, eyes, mouth, etc on the face, classified by 68 key points, with coordinates (x, y), for that face. With Facial Keypoints, we can achieve facial recognition, emotion recognition, etc.

How to build a Reddit bot to scrape saved posts by filtering out NSFW posts

This script filters out the NSFW posts and scrapes only the Non-NSFW posts which are stored in saved posts of your Reddit account into a .csv file.
As I was implementing this script, I realized that my code isn’t universal. Therefore, I would like to provide you with my code and in order to get the script running for you, you need to tweak some class names or element id according to your Reddit account via CSS query selector by inspecting elements in your browser.