Final Projects

In a final project, each student explores some aspect of computational linguistics of their own choice. Although the intention is that students will apply or develop an idea that has been introduced in the course of the semester, the specific choice is up to the student. Explore — use your creativity. Often, the idea for final projects comes from foreign languages, linguistic theories, or mathematical issues in the analysis of human language.

Evaluation and timeline

These final projects are evaluated in several ways. The last evaluation is on the basis of a ‘writeup’ to be turned in at the end of Study Period. But along the way, there are a variety of intermediate stages:
before spring break
Interact with Professor Hale regarding candidate project ideas. Feel free to stop in for office hours and talk.
By April 14th
Turn in a Full Proposal. This document should spell out clearly the scope of your project and your choice of methods. This document is graded according to the same criteria as the writeup: clarity, coherence and promise shown by preliminary results.
Festival of Final Projects
Sign up to give a short (10 minute) presentation about your project to the class. The project does not need to be fully complete at this point but you should have something to show for your work. There is an Early Presenter bonus built-in to the grading, for those to choose an earlier slot.
By the end of the semester
Turn in your writeup by 11:30 am on May 15th.

Scale and feasibility

The ideal final project is at the intersection the student’s real interests and some sub-area of computational linguistics. It needs to fit into the available time remaining in the semester; budget about two weeks of solid effort.

If you propose something too large e.g. high-accuracy machine-translation for arbitrary texts, the instructor will steer you towards a more manageable sub-project — perhaps a pair of controlled sub-languages, with just a few interesting constructions. If you propose something too small — transliterating a program out of a book — the instructor will encourage you to lift your sights. You might delve more deeply into the theory of the program’s operation, or extend it to some new case.

Collaboration

Every student who is taking the class for a grade receives an individual grade. So, the easiest projects to grade are solo projects. But on the other hand, a collaborative team project may also be possible. The key requirement is assigning credit, separately, to each teammate. One way to do that is to factor a large project into sub-tasks. If you wish to pursue this, include in your proposal a Grading Plan that details who is doing what. All teammates will be graded on their understanding of why/what/how, and they must each make an identifiable contribution to the presentation at the Festival of Final Projects.

What to do...

During the semester

Learn by reading; follow up references and tips from your instructor to learn more about areas that interest you. Allocate time during your weekly schedule to reflect and develop small prototypes.

At my presentation

The presentation should get across
why
why is your topic interesting from the perspective of computational linguistics?
what
what linguistic issue are you tackling? what computational idea are you using?
how
how are you doing the project: what methods are you applying, and how are they working out so far?

Send your slides and/or demos to Jacob and check out other presenters' slides.

In the writeup

The writeup is a kind of technical report on the computational treatment of some language phenomenon. It should explain the problem and the approach, and then detail what has been achieved. It needs to be complete, in the sense that it explains the project fully, but also short: not longer than 12 pages. The best way to write it is to ruthlessly edit a longer draft down until it fits inside the page limit. A bad writeup can scuttle a good project, so allocate the time you need to produce a quality report. Take advantage of free help at Cornell’s Writing Walk-in Service

Although program code can be submitted as an appendix, software ideas should be presented in prose, with diagrams, or via an appropriate mathematical formalization.

This writeup should include some reflection on what you, as the student, learned from the experience. Did everything go as planned? How would you extend this work if given, say 3 more months?


John Hale