Measuring Audio Quality

Audio perception is a complex process. Involving knowledge from physical systems to psychology. Here I look at some of the attempts in applying an objective measure to what constitutes a good quality audio.…

Portable Ubuntu USB Stick with Persistent Storage

UNetBootin allows creation of a such a stick, but it only takes care of creating stuff that's needed for legacy BIOS boot[1]. If you are using UEFI (Macs don't do legacy boot), things won't work as expected. To get it working, add persistent to the "Try Ubuntu without…

Mirrored Strategy

Have more than 1 GPU on your setup? Data parallelism on multiple identical GPUs is easy when training with Tensorflow Estimators, and just marginally less convenient with Keras' `model.fit`.…

Using Tensorflow's Dataset API

TensorFlow's new Dataset API (available from 1.8) makes creating input pipelines much easier. Using it should be painless if you have something is an iterable, one of the common formats (files in a folder, csv, numpy array) or TFRecord, life is gonna be much easier, and from_generator is…

Deploying Ghost to Heroku

or how this blog was made. I was in search of a Markdown based blogging platform that I could use for free. Jekyll and Github Pages is really nice, but the lack of a web/app interface to write stuff is rather limiting at times. Fortunately, there's Heroku and Ghost.…

Showing stuff in tmux/screen window title

tmux and screen handles the escape sequences ESC k name ESC \ to set titles. This can be helpful when running long scripts that produces lots of output (e.g. training a neural net). As a function in bash, settitle(){ printf "\033k$1\033\\" } or maybe from within python,…