Machine Learning

Jupyter client for iPad

4 minute read

I have been a huge fan of Jupyter for a while now, and most importantly of the flexibility it is offering: I strongly believe that the fact that you only need a screen and network connection to get access to pretty much unlimited computational resources has enormous potential.

Self-signed SSL certificate in Jupyter Permalink

less than 1 minute read

In order to use Jupyter Notebook on iPad, one needs to correctly configure SSL certificates. Since issuing a proper certificate from a trusted authority could be challenging in some cases, a self-signed certificate should suffice, provided it was signed by a CA that is trusted by device. Follow these steps to get it working on your iPad!

Visualizing lidar data

4 minute read

Arguably the most essential piece of hardware for a self-driving car setup is a lidar. A lidar allows to collect precise distances to nearby objects by continuously scanning vehicle surroundings with a beam of laser light, and measuring how long it took the reflected pulses to travel back to sensor.

Detecting road features

16 minute read

The goal of this project was to try and detect a set of road features in a forward facing vehicle camera data. This is a somewhat naive way as it is mainly using computer vision techniques (no relation to naive Bayesian!). Features we are going to detect and track are lane boundaries and surrounding vehicles.

Meet Fenton (my data crunching machine)

11 minute read

This is how I built and configured my dedicated data science machine that acts as a remote backend for Jupyter Notebook and PyCharm. It is backed by a powerful Nvidia GPU and is accessible from anywhere, so that when it comes to machine learning tasks I am no longer constrained by my personal computer hardware performance.

End-to-end learning for self-driving cars

5 minute read

The goal of this project was to train a end-to-end deep learning model that would let a car drive itself around the track in a driving simulator. The approach I took was based on a paper by Nvidia research team with a significantly simplified architecture that was optimised for this specific project.

Traffic signs classification with a convolutional network

14 minute read

This is my attempt to tackle traffic signs classification problem with a convolutional neural network implemented in TensorFlow (reaching 99.33% accuracy). The highlights of this solution would be data preprocessing, data augmentation, pre-training and skipping connections in the network.

Detecting facial keypoints with TensorFlow

15 minute read

This is a TensorFlow follow-along for an amazing Deep Learning tutorial by Daniel Nouri. Daniel describes ways of approaching a computer vision problem of detecting facial keypoints in an image using various deep learning techniques, while these techniques gradually build upon each other, demonstrating advantages and limitations of each.

Cloud logger

2 minute read

Most of the tasks in data science are long-running, and many folks (me included) execute those tasks on remote machines. And the crucial thing for those tasks is logging: you do need to know how training process was going and see the learning curves. It would also be convenient if you could access those logs from anywhere and be notified when the process had finished. So I built the cloudlog!

Jupyter Notebook Xcode theme

less than 1 minute read

So one Saturday I got particularly bored and thought I should configure my Jupyter Notebook a bit.

CPU vs GPU for deep learning

less than 1 minute read

If anyone is wondering why would you need to use AWS for machine learning after reading this post, here’s a real example. I’ve tried training the same model with the same data on CPU of my MacBook Pro (2.5 GHz Intel Core i7) and GPU of a AWS instance (g2.2xlarge).

Running TensorFlow with Jupyter Notebook on AWS

6 minute read

Google’s open source TensorFlow is one of the most promising machine learning frameworks nowadays. Even though Google is said to use a slightly different version internally, and the current version of TensorFlow is somewhat behind its competitors performance wise, one can hardly argue that it has a lot of potential.