Skip to main content

Final Project

Start by Nov 6, 2018 or earlier | Due on Dec 10, 2018 2pm-5pm

Project Ideas

First start with a task that has a well-defined dataset that you can use for your project. Pick something you are passionate about or something you find interesting.

A list of shared task datasets are provided below. In many cases you can extend your homework code to produce innovative project ideas for these tasks.

Shared Task Collections

CoNLL Shared Tasks

SemEval Shared Tasks

Classification Tasks

Information Extraction


Machine Translation

Unlabeled Data for Clustering, Language Models, etc.

Sentiment and Opinion Mining

Natural Language Understanding and Inference

Question Answering

Project Submission

Poster Session

There will be a poster session at the SFU Downtown Vancouver campus on Dec 10, 2018 2pm-5pm. Your group must present a poster at this poster session providing details about your final course project.

If you are enrolled in the Machine Learning course you must present a different poster. You can share code between the projects but the projects must be different from each other and have a distinct contribution.

Poster size

The poster size should be as follows:

  • Landscape orientation: 3ft by 3ft.
  • Portrait orientation: A0 portrait (4ft vertical by 3ft horizontal)

If you use LaTeX then here are two sample poster styles (A0 portrait):

Poster grading

The poster will be graded using the following criteria (1-5):

  • Can we understand what is the goal of your project?
  • Can we understand what you implemented for your project?
  • Was the model clear?
  • Was there an example? Did it make the model / implementation clear?
  • Can we understand the (experimental) evaluation?
  • Was it adequately compared to previous work?
  • Did the poster layout help the viewer understand the work?
  • Was there any analysis of the output of the implementation?

Please read through this set of tutorial slides on making effective posters.

Also, I have provided two examples of NLP posters (note that they are not in portrait layout).

Project Write-up

Apart from the poster session you must also submit your project write-up as a Python notebook project.ipynb and your source code for your project in your GitLab repository:

Put all your project files into the directory project in your GitLab repository.

Make sure you have a requirements.txt file for your project so that we can use a virtual environment to run your code.

Your Python notebook must be called project.ipynb. In addition to writing code for a good project submission, the description of what you did for your project in your Python notebook is also a very important part of your project submission. It must have the following sections:

  • Motivation
    • Which aspect of the problem / task did your group choose to improve and reasons for your choice.
  • Approach
    • Describe the algorithms and machine learning models used in your project. Use a clear mathematical style to explain your model(s).
  • Data
    • Exactly which data files were used; also include here any external data that was not provided to you.
  • Code
    • If you used homework code, which homework code you used in your project. Provide exactly which code was used in your project not written by your group (e.g. use of an aligner from an open-source project).
  • Experimental Setup
    • Describe what kind of evaluation you are doing and which methods you are comparing against each other.
  • Results
    • Include a detailed comparison of different methods.
  • Analysis of the Results
    • Did you improve over the baseline. Why or why not?
  • Future Work
    • What could be fixed in your approach. What you did not have time to finish, but you think would be a useful addition to your project.

Submit your project on Coursys

When you are ready to submit go to GitLab and select New tag to create a new tag. For Tag name use project and optionally write a Message. Then select Create tag to create this tag. If you want to submit multiple times then please create a new tag each time projectN for your Nth submission and submit the new tag via Coursys.

Go to Coursys. Under the Final Project activity submit your git repository URL. It will look like this for some USER in your group called g-GROUP:

The instructions are provided in more detail in Homework 0.

There are no grace days for project submission! So submit early and often.

That’s it. You are done with your Final Project!

Grading of the Final Project

The final projects for this course will be graded using the following criteria:

  • Originality
  • Substance (amount of work done for the project)
  • Well documented use of prior results from research papers
  • Clarity of the writing
  • Quality of experimental design
  • Quality of evaluation and results
  • Theoretical insights / Practical insights
  • Group work (did the group work effectively together)
  • Overall score (based on the above criteria, but can include other factors like overall polish or creativity)

Please read this guide to presenting your work.

The total marks are distributed as specified on the coursys project marking page

  • Work. Work done in the project. Results obtained. 50 marks
  • Docs. Documentation of the work done in the notebook. 25 marks
  • Poster. Performance at the poster session and poster quality. 25 marks