Menu

CSE 40657/60657
Homework

There will be five homework assignments due throughout the semester. The recommended language for implementing them is Python 3. Examples, skeleton code, and solutions will use Python 3.5; however, if you prefer to use something else, you are free to.

You probably have Python installed already; if you haven't switched to Python 3 yet, now's the time!

  1. If you need to install Python, the simplest way to get it is probably Miniconda.
  2. If you want to keep packages for this course separated from your system-wide packages, create a virtualenv:
    virtualenv nlp
    source nlp/bin/activate      # sh/ksh/bash/zsh
    #source nlp/bin/activate.csh # csh/tcsh
    
  3. If you need a refresher on Python, see the tutorial. Or if you're used to Python 2, here is a list of differences.

Assignments

The following are subject to change.

HW1

Use a language model to predict the next character that the user will type. Try it with the provided graphical keyboard whose keys grow and shrink according to their probabilities.

HW2

Convert Shakespeare in its original spelling to modern spelling..

HW3

Implement a syntactic parser for a virtual travel agent.

HW4

Detect named entities in Tweets.

HW5

Implement a simple machine translation system and test it out on some movie subtitles.