
My Personal Setup
January 12, 2019
This is more of a personal todo list to setup a new linux development environment. Hope, this helps others to setup their own.

Regularization in Linear Models
September 14, 2018
Least squares estimates are often not very satisfactory due to their poor outofsample performance, especially when the model is overly complex with a lot of features. We can attribute this to low bias and large variance in least squares estimates. Additionally, when we have a lot of features in our model, it is harder to explain the features with the strongest effect or what we call the Big Picture. Hence, we might want to choose fewer features in order to trade a worse insample variance for a better outofsample prediction.

Local Linear Regression
August 31, 2018
I previously wrote a post about Kernel Smoothing and how it can be used to fit a nonlinear function nonparametrically. In this post, I will extend on that idea and try to mitigate the disadvantages of kernel smoothing using Local Linear Regression.

Kernel Smoothing
August 26, 2018
Kernel Method is one of the most popular nonparametric methods to estimate probability density and regression functions. As the word
NonParametric
implies, it uses the structural information in the existing data to estimate response variable for outofsample data. 
ZeroMQ Proxy
May 16, 2018
ZeroMQ is my favorite message passing and networking library. It has bindings for almost all major languages and it’s super convenient to build polyglot distributed network applications with it. Also, ZeroMQ documentation and examples are very exhaustive.

Eigen3 Benchmarks
January 28, 2018
Eigen is super fast linear algebra library for C++. It provides almost all matrix / vector related operations and some extra
pandas
/numpy
style functionality. Recently, one of my colleagues was looking for a linear algebra for C++ and I suggested using Eigen. During our conversation, we were discussing how fast are matrix inverse operation in Eigen, however the Eigen docs did not provide a satisfactory benchmarks for inversion. So, I decided to do a little test on my own. 
GramSchmidt Procedure
January 07, 2018
An interesting way to understand Linear Regression is GramSchmidt Method of successive projections to calculate the coefficients of regression. GramSchmidt procedure transforms the variables into a new set of orthogonal or uncorrelated variables. On applying the procedure, we should get exactly the same regression coefficients as with projection of predicted variable on the feature space.

Geometry of Regression
March 05, 2017
A picture is worth a thousand words. This post on stats Stack Exchange gives a great description of the geometric representation of Linear Regression problems. Let’s see this in action using some simple examples.

Bokeh Tutorial
March 01, 2017
Bokeh is an excellent python package for interactive visualization in the web. I have been in the process of adopting it as my primary python plotting library. My favorite feature is creating dashboards using bokeh server. Here are a few examples. I will go through a few of the plotting features of
bokeh
in this post. 
Mplstyle Tutorial
February 15, 2017
One of my favorite libraries in Python is matplotlib. Despite the many options we Python programmers have, I still find the simplicity and rawness of
matplotlib
great to work with. I recently discovered the usefulness of matplotlib stylesheets and how they can help in customizing your plots. In this tutorial, I have laid out the process that I used to get up and running with stylesheets.