Many people have asked me what I think about Udacity’s Self-Driving Car Engineer Nanodegree (SDCND). This review aims to help you make a decision as to whether or not to enrol in the first term of Udacity’s SDCND. In short, I think that if you are considering it because you want to work in the self-driving car industry and you … Read More

## Explaining Tensorflow Code for a Convolutional Neural Network

In this post, we will go through the code for a convolutional neural network. We will use Aymeric Damien’s implementation. I recommend you have a skim before you read this post. I have included the key portions of the code below. If you’re not familiar with TensorFlow or neural networks, you may find it useful to read my post on multilayer … Read More

## Getting Started with Kaggle #1: Text Data (Quora question pairs, Spam SMSes)

Kaggle is a platform for data science competitions and has great people and resources. But how do you get started? It can be overwhelming with so many competitions, data sets and kernels (notebooks where people share their code). One kernel may contain over ten new concepts, so if you’re new to machine learning (or even if you’re not), you may … Read More

## How to Tackle Programming Problems (Google Code Jam 2017 Qualification Round, Problem A)

This is a walkthrough of how one might start thinking about Problem A (small input) of Google Code Jam’s 2017 Qualification Round (April 8-9). Google posts excellent solutions to their problems, so the focus here will be that of the idea generation process or how one might begin to tackle such problems. Full problem statements can be found here. Problem A (Oversized … Read More

## What do the Kalman Filter Equations Mean? (Part 2: Update)

In my previous post, I explained the Kalman Filter prediction equations in a big-picture way. In this post I will explain the update equations. The equations to focus on are the last two. (We use the results from the first three equations in the last two equations.) Eqn 1: Updating the object state x: x’ is the predicted object state … Read More

## What do the Kalman Filter Equations mean? (Part 1: Prediction)

In the second term of Udacity’s Self-Driving Car Engineer Nanodegree, you start out learning about Kalman Filters. You are given a bunch of equations. What do they mean? In this post I explain the prediction equations (left) in a big-picture way. I explain the update equations in my next post. Predicting the object state x: Equation: x is the object state. … Read More

## Behavioural Cloning: Tips for Tackling Project 3

In this post I list tips that may be helpful for tackling Project 3 of Udacity’s Self-Driving Car Nanodegree, in which you train a neural network to drive a car in a simulator. The neural network learns from data of humans driving the car through the simulator, hence the project name ‘Behavioural Cloning’ – it’s trying to imitate the way … Read More

## Bugger! 4.2: Semicircle lane lines

Recap from the previous post: we’re trying to trace lane lines from a video. We just dealt with our pipeline spitting out zebra stripes, but now we’ve got a semicircle trace to deal with (see feature image above). What to do? Step 1: Plot intermediate steps to locate the bug Recall that our model is supposed to: Un-distort the test image … Read More

## Mapping Economics

Scroll down for sample diagrams. Motivation: How can I contribute with my meagre knowledge of Economics? When you spend over twenty hours a week studying, you cannot help but ask, ‘Am I going to use a significant proportion of this later on in life, especially if I don’t become an economist? (No.) If not, why am I spending time learning … Read More

## Bugger! 4.1: Zebra Stripes for Lane Lines

In Project 4: Advanced Lane Lines of Udacity’s Self-Driving Car Nanodegree, we use computer vision techniques to trace out lane lines from a video taken from a camera mounted at the front of a car, like so: Result I’m supposed to get In this series, I share some bugs I came across and how I tackled them. The code can … Read More