Programming assignment 4 for the course Natural Language Processing taught by Michael Collins through Coursera.