header background Profile Picture

Natural Language Processing

Neural Machine Translator with 50 Lines of Code + Guide

Jupyter Notebook for this Tutorial: Here Recently, I had to take a dive into the seq2seq library of TensorFlow. And I wanted to a quick intro to the library for the purpose of implementing a Neural Machine Translator (NMT). I simply wanted to know “what do I essentially need to...

Make CNNs for NLP Great Again! Classifying Sentences with CNNs in Tensorflow

Tensorflow Version: 1.2 Original paper: Convolution Neural Networks for Sentence Classification Full code: Here RNN can be miracle workers, But… So, you’re all exhausted from trying to implement a Recurrent Neural Network with Tensorflow to classify sentences? You somehow wrote some Tensorflow code that looks like a RNN but unable...

GloVe: Global Vectors for Word Representation + Implementation

Hi, This post will be about a new Word2Vec technique that has come after skip-gram and CBOW, introduced in this paper. Why the authors claim that GloVe is better than context-window based methods is that, it tries to combine both global and local statistics in order to create more general...

Word2Vec (Part 2): NLP With Deep Learning with Tensorflow (CBOW)

This is a continuation from the previous post Word2Vec (Part 1): NLP With Deep Learning with Tensorflow (Skip-gram). But in this one I will be talking about another Word2Vec technicque called Continuous Bag-of-Words (CBOW). Intuition CBOW So what exactly is CBOW? CBOW, or continuous bag-of-words is conceptually similar to a...


Reinforcement Learning

A Paper in Thousand Words: Dueling Network Architectures for Deep Reinforcement Learning

Paper is found here Introduction and the Contribution This paper’s main contribution is that instead of using standard neural network architectures such as Convolution Neural Networks (CNNs) and Long-Short Term Memory Netowrks (LSTMs). For example, Deep Q-Networks uses a standard CNN. The authors of this paper introduce an alterations to...


Deep Learning

Thicken Your Wallet with ML: Predict Stock Price Movements with LSTMs

This is a tutorial on how to use LSTMs for stock price movement prediction. I have seen quite a few tutorials on using LSTMs for stock price predictions and sadly most of them perform quite poorly. And the ones that actually work are sometimes poorly documented, so one can easily...

A Practical Guide to Understanding Stochastic Gradient Descent Methods: Workhorse of Machine Learning

Jupyter Notebook: Here Introduction: Why Optimization? It is no need to stress that optimization is at the core of machine learning algorithms. In fact this was a big enabler of deep learning; where “pre-training” (i.e. an optimization process) the network was used to find a good initialization for deep models....

A Paper in Thousand Words: Neural Architecture Search with Reinforcement Learning

Paper is found here. One of the key advantages of Deep Models is that they made feature engineering obsolete. With this came a paradim-shift; from engineering robust features to engineering deep architectures, i.e. hyperparameters, for machine learning tasks. This paper uses reinforcement learning (RL) to find the best deep architecture...

RA-DAE: Structurally Adaptive Deep Architecture inspired by Reinforcement Learning

In this post, I’m going to introduce a type of a Stacked Autoencoders (SAE) (Don’t worry if you don’t understand what an SAE is. Will explain later.). And worth a mention, that this is some research work done by me and few colleague from our research lab. So yay for...


Computer Vision

Bringing Computer Vision datasets to a Single Format: Step towards Consistency

Hey Folks, Required Libraries and Versions: Python: 3.x Numpy: 1.12 Scipy: 0.18 h5py xml.etree.ElementTree multiprocessing PIL six.moves.cPickle functools Introduction When you have a good working algorithm and you want to test your masterpiece on some dataset, almost always have to spend quite a lot of time on actual loading and...

Convolutional Neural Networks: Mayor of the Visionville

Hey there, Introduction If you are a computer vision fanatic like me, I don’t think I need to convince you about the potent of CNNs. But let me take a shot at it anyway! Convolutional Neural Networks (CNNs) are unrivaled when it comes to computer vision tasks. Given their ability...


Miscellaneous

Light on Math Machine Learning: Intuitive Guide to Understanding KL Divergence

I’m starting a new series of blog articles following a beginner friendly approach to understanding some of the challenging concepts in machine learning. To start with, we will start with KL divergence. Code: Here Concept Grounding First of all let us build some ground rules. We will define few things...

Keep Calm and Install Morse and ROS: Guide for Not Going Insane

Versions Ubuntu: 14.04 Morse: 1.4 Ros: Indigo Python: 2.7 and 3.4 Introduction Before diving in to the “guide”, let me explain a hypothetical scenario. Say you want to install ROS in your computer. Should be easy as a pie right? sudo apt-get install ros-indigo-desktop-full should do the trick. Now as...

Doing Major Changes to your Website without Falling to an unrecoverable Abyss (GoDaddy + WordPress)

Hi there amazing folks, Last week I wanted to do some major if-not-done-properly-you-are-screwed changes to my website. Knowing that I’m walking risky grounds, I was extra cautious but failed miserably while doing so. Fortunately I took backups before taking things apart so I was able to recover from the ramifications...

Generative Models Part I: Variational Autoencoders

In the next few posts, I will be talking about several Generative Models that saw daylight quite recently. On a general tone, generative models are used to generate new samples by approximating the underlying distribution of data and quite useful for unsupervised learning and semi-supervised learning. Few state-of-the-art generative models...