Programming Exercise 3 in Machine Learning course by Andrew Ng on Coursera.