The final assignment for this semester is to do a project related to artificial neural networks. You will be expected to complete a mini-project on either a theoretical or an applied neural network problem. You are supposed to read up on the relevant literature, design a complete pipeline, implement the system, and evaluate it on synthetic or real-world data. The project is worth 30% of your grade and will be graded out of 30 points, with the breakdown below. You will collaborate in groups of 3-4 people with the help of our project mentors, and must deliver:
- A short (1-2 pages) project proposal [5 pts]
- Submit: The project proposal is due on Tue., April 21 at 3:00 PM. Please submit one proposal per team in
.txt
, .html
, or .pdf
format on Gradescope.
- Late policy: An accumulated percentage late penalty will be applied to the points for the project proposal of 20% per day. You have to submit the proposal before the first project meeting.
- Details: This should include the names of all team members, a description of the problem, an outline of the proposed approach, pointers to related course topics, plans for acquiring the necessary data/computational resources, the target outcome (what do you expect to deliver at the end of the project?) and a fallback plan (what are the potential roadblocks? what is the minimum you will be able to deliver if the exploratory parts of the project go wrong?).
- Grading: The proposal is worth 5 points (5% of the final course grade). Proposal grading will be straight-forward: either full credit (all questions in the above details answered thoughtfully), half credit (many questions left unanswered, or answers are very short) or zero credit (never turned in).
- A short (1-3 pages) intermediate report [0 pts]
- Submit: The intermediate is due on Thu., April 30 at 3:00 PM. Please submit one report per team in
.txt
, .html
, or .pdf
format on Gradescope.
- Late policy: You have to submit the intermediate report before the second project meeting.
- Details: This should include the current progress towards the target outcome, what is the main obstacle for proceeding the project, and what has been changed since you started your work.
- Grading: This report will not be graded. The purpose of the intermediate report is to keep track of your research progress.
- A final oral presentation [10 pts]
- Submit: The final oral presentation sessions will be held online via zoom on Thu., May 7 (Session A Eastern Time 9:00 AM-11:00 AM, Session B Eastern Time 3:00 PM-5:00 PM). Groups can sign up (with your Princeton google account) for one session that fits their time zones best. Each group will have 10 min for presentation and 3 min for Q&A.
- Details: There's no need to include all the details of your project in the presentation, but you should clearly convey the intuition/background behind your idea, the key proofs or experiments you conducted and the key findings of your work. What would you like to share with your fellow students? What are the key takeaways from your project?
- Grading: The oral presentation is worth 10 points (10% of the course grade). The project mentors will listen to your presentation and ask questions about your chosen topic and the outcomes of your project. You are also welcome to ask questions to other groups. You will be graded both on the quality of your presentaion as well as on the answers in the Q&A discussion.
- A final report on your project [15 pts]
- Submit: The report is due Tue**., May 12 at 11:59 PM**. Please submit one report per team in
.html
or .pdf
on Gradescope. In addition, please submit your code (or links to sites from which you downloaded pre-trained models, etc.), and links to any datasets you used, if there is any.
- Late policy: the due date of final reports cannot be extended.
- Details: The report should include sections on abstract, introduction, previous work, design and implementation (or proofs if it is a theoretical work), results, and a discussion of the strengths and weaknesses. Include clear tables or figures illustrating the key ideas and/or important experimental results. If you created your own dataset, it is not necessary to submit a full dataset - just include a few samples.
- Grading: The project report is worth 15 points (15% of the final course grade). You will be evaluated on the scope and success of your implementation, the rigor and depth of your scientific analysis, and the quality of your writeup.
1. Project scope
The projects are flexible and adaptable to your interests:
- you are free to focus on the topic(s) that excite you the most (you are even welcome to explore an artificial neural network topic outside the scope of the class),
- you can decide whether you want to collect your own data or use one of the existing benchmarks,
- you can build off of an existing toolbox or develop an algorithm entirely from scratch,
- you can focus your efforts more on algorithm design, theoretical analysis, or implementing systems.
Teams with 4 people are expected to do projects that are more somewhat more ambitious in scope than teams with 3 people. Feel free to confirm with our project mentors if you're unsure.
2. Project ideas
You may select any theoretical or applied neural network topic that is of interest to you, but some ideas to get you started:
- Neural Network Basics
- Investigation of the training process of neural networks — the effect of initialization, learning rate, batch norm, activation functions, etc.
- Neural network architecture design (e.g., efficient recurrent neural networks maintains long-term information, neural architecture search, etc.)
- Unsupervised Learning
- Neural network implementation of dimensionality reduction or clustering algorithms.
- Design of unsupervised feature extraction neural networks.
- Computer Vision:
- Object classification (e.g., using the CIFAR or Caltech 101 datasets).
- Semantic segmentation / human pose estimation / occlusion detection (e.g., check out the diverse PASCAL VOC annotations).
- Natural Language Processing
- Datasets
Our project mentors will also pitch you some interesting research projects in class.