COMPSCI 697L Deep Learning

Acknowlegements

These project guidelines originally accompany the Stanford CS class CS231n, and are now provided here for the UMass class COMPSCI 697L with minor changes reflecting our course contents. Many thanks to Fei-Fei Li and Andrej Karpathy for graciously letting us use their course materials!

Announcements

  • All project reports are now available here. Check out all the cool projects from your classmates!

Important Dates

Course project proposal: 11/02 (due 11:55pm on Moodle).
Course project milestone: 11/23 (due 11:55pm on Moodle).
Final course project write-up: 12/14 (due 11:55pm on Moodle).

Overview

The Course Project is an opportunity for you to apply what you have learned in class to a problem of your interest. There are two project options you can pick from:

Option 1: Your own project (Encouraged)

Your are encouraged to select a topic and work on your own project. Potential projects usually fall into these two tracks:

Here you can find some sample project ideas professor described earlier in the class:

To inspire ideas, you might look at recent deep learning publications from top-tier vision conferences, as well as other resources below.

For applications, this type of projects would involve careful data preparation, an appropriate loss function, details of training and cross-validation and good test set evaluations and model comparisons. Don't be afraid to think outside of the box. Some successful examples can be found below:

Deep neural networks also run in real time on mobile phones and Raspberry Pi's - feel free to go the embedded way. You may find this TensorFlow demo on Android helpful.

For models, deep neural networks have been successfully used in a variety of computer vision and NLP tasks. This type of projects would involve understanding the state-of-the-art vision or NLP models, and building new models or improving existing models. The list below presents some papers on recent advances of deep neural networks in the computer vision community.

We also provide a list of popular computer vision datasets:

Option 2: Tiny ImageNet Challenge

If you are unable to come up with a project idea, you can fall back to working on the Tiny ImageNet Challenge which we will run similar to the ImageNet challenge. The goal of the challenge will be for you to do as well as possible on the Image Classification problem.

Tiny Imagenet has 200 classes. Each class has 500 training images, 50 validation images, and 50 test images. We have released the training and validation sets with images and annotations. We provide both class labels and bounding boxes as annotations; however, you are asked only to predict the class label of each image without localizing the objects. The test set is released without labels.

We use test set error rate, the fraction of test images that are incorrectly classified by the model, to measure the performance. To submit your predictions on the test set, name your submission file as .txt and upload it to Moodle. Your submission should be a two-column file with 10,000 lines. Each line contains a pair of test image filename and its predicted class id.

This file illustrates a submission of random guessing, giving us a chance accuracy 0.005 (1/200). Note that, the class ids correspond to synsets in ImageNet. For example, you can browse images and metadata of class id n01910747 using this link.

Grading Policy

  Final Project: 40%
  milestone: 5%
  write-up: 10%
   •  clarity, structure, language, references: 3%
   •  background literature survey, good understanding of the problem: 3%
   •  good insights and discussions of methodology, analysis, results, etc.: 4%
  technical: 12%
   •  correctness: 4%
   •  depth: 4%
   •  innovation: 4%
  evaluation and results: 10%
   •  sound evaluation metric: 3%
   •  thoroughness in analysis and experimentation: 3%
   •  results and performance: 4%
  poster: 3% (+2% bonus for best few posters)

Project Proposal

The project proposal should be one paragraph (200-400 words). If you work on your own project, your proposal should contain:

If you choose to work on Tiny ImageNet Challenge, emphasize the last three bullet points on the list above. Each group should submit a plain-text proposal to Moodel. If your proposed project is joint with another class' project (with the consent of the other class' instructor), make this clear in the proposal.

Project Milestone

Your project milestone report should be between 2 - 3 pages using the provided template. The following is a suggested structure for your report:

Submission: Please upload a PDF file named <your ID>_milestone.pdf to Moodle. One submission for each group is sufficient.

Final Submission

Your final write-up should be between 4 - 8 pages using the provided template. After the class, we will post all the final reports online so that you can read about each others' work. If you do not want your writeup to be posted online, then please let us know at least a week in advance of the final writeup submission deadline.

Submit your final submission through Moodle. You will submit one or two files:
  1. A pdf file of your final report
  2. (OPTIONAL) zip file (or pdf file) with Supplementary Materials
Report. The following is a suggested structure for the report: Supplementary Material is not counted toward your 4-8 page limit.
Examples of things to put in your supplementary material: Examples of things to not put in your supplementary material:

Example Project Reports

Stanford CS231n 2015 (Winter) projects.

Computing Resources

Amazon offers free AWS credits for students (annually renewable). Using your link provided by the GitHub Student Developer Pack will get you the most free credits.

Collaboration Policy

You can work in teams of 1~3 people. We do expect that projects done with 3 people have more impressive writeup and results than projects done with 2 people.

Honor Code

You may consult any papers, books, online references, or publicly available implementations for ideas and code that you may want to incorporate into your strategy or algorithm, so long as you clearly cite your sources in your code and your writeup. However, under no circumstances may you look at another group’s code or incorporate their code into your project.

If you are doing a similar project for another class, you must make this clear and write down the exact portion of the project that is being counted for COMPSCI 697L.