Link Search Menu Expand Document

Overview

Table of contents


An important learning objective of this course to get hands-on research experience. Therefore as part of this course, you need to complete a semester-long research project. Each project team can have up to 3 students, and we expect work proportional to team sizes. To help you make consistent progress towards the final presentation, we set up a few milestones over the course of the semester. Research projects will mainly be evaluated based on semantic completeness and clarity of presentation.

Timeline

Here’s a rough timeline of the key milestones:

  • Week 3: Finalize project team
  • Week 5: Project Proposal
  • Week 10: Project Update
  • Week 15: Peer Review
  • Week 16: Final Presentation

FAQs

What count as research projects?

The primary requirement is that the project is 1) related to course topics and that it 2) contains some element of research (i.e., something new). In other words, reimplementing a piece of software that someone else proposed without any significant extension/modification does not count as a research project.

There are many forms of novelty: novel problem and solution, novel solution to existing problems, novel application of existing solutions, novel implementation and evaluation or even some cool new datasets. To help you determine whether the project idea is in a reasonable scope, all teams are required to meet with Kexin at least once prior to the project proposal deadline.

If you are a graduate student or have an existing research project, “reusing” the project to this course’s topics is encouraged.

How are projects evaluated?

One of the learning objectives of the class is for you to get hands-on experiences with conducting research. Research projects can vary greatly in scope and complexity and are also highly dependent on your background and skills. Therefore, from a grading perspective, we focus more on the “completeness” of the project, namely:

  • Is the problem/hypothesis well-defined and motivated?
  • Is the related work section thorough?
  • Does the evaluation have the appropriate metrics/experiments for testing the main hypothesis?
  • Is the writing overall clear and easy to follow for a technical expert in the field? We do not evaluate the project based on the “interestingness” of the ideas.

What are different types of projects?

Projects can come in different flavors:

  • Research project: identify a new problem or task, propose or extend a solution, evaluate and report findings. The solution can be a new system, a new tool, a new interface or a new algorithm.
  • Benchmarking and analysis: extensive evaluation of algorithms, data structures, and systems that are of wide interest. The novelty for benchmarking papers comes from 1) new insights about the strengths and weaknesses of existing methods 2) new ways to evaluate exisitng methods, such as by curating new datasets and scenarios.
  • Reproduce and extend: there are many papers that describe an idea in theoretical terms, or that implemented their ideas in a different context (e.g., maybe they made assumptions that don’t hold anymore on new hardware). Thoroughly understanding a paper (or collection of papers) and reproducing the main ideas in a new context can often lead to new findings and extensions.

I need help with research problems.

Identifying a research problem can be challenging (but also rewarding!), especially if you have not done so before. Don’t know where to start? Have a fuzzy idea? Want some feedback on your current idea? Have a vague idea? Want some feedback or help brainstorming a project? Please come to office hours and we are here to help!