The aim of the assignment and project is to build basic understanding and advanced implementation skills needed to do build cutting-edge systems or do cutting-edge research using neural networks fro NLP, culminating with a project that demonstrates these abilities through a project.

  • Homework 1: Link
  • Homework 2: Link
  • Homework 3 (Project Proposal): Link
  • Homework 4: TBD
  • Homework 5 (Final Project): Link

Homework Policy

There will be 5 homeworks, two of which are the course project proposal and final project (HW 3 and 5). These assignments may contain material that has been covered by published papers and webpages. It is a graduate class and we expect students to solve the problems themselves rather than search for answers.

Submission Information

To submit your assignment you must submit via canvas a zip file containing:

  • your code: This should be in a directory “code” in the top directory unless specified otherwise.
  • system outputs (HW 1, 2 and 4): The format will be specified separately for each assignment.
  • a report (HW 3 and 5, optional for HW 1, 2 and 4): This should be named “report.pdf” in the top directory. This is for HW 3 and 5, and can be up to 7 pages for HW 3 and 9 pages for HW 5. References are not included in the page count, and it is OK to submit appendices that include supplementary information such as hyperparameter settings or additional output examples, although there is no guarantee that the TAs will read them. Submissions that exceed the page count will be penalized one third grade (33%) for each page over. You may also submit report.pdf for HW 1, 2 and 4 if you have any interesting infromation to convey to the TAs, for example if you did anything interesting above and beyond the minimal requirements.
  • a link to a github repository containing your code (HW 3 and 5): This should be a single line file “github.txt” in the top directory. Your github repository must be viewable to the TAs and instructor by the submission deadline. If your repository is private make it accessible to the TAs by the submission deadline (Github ID: junjiehu, ywwwei). If your repository is not visible to the TAs, your assignment will not be considered complete, so if you are worried please submit well in advance of the deadline so we can confirm the submission is visible. We use this repository to check contributions of all team members.

The students are required to typeset homework solutions using \(\LaTeX\) and the provided template.

Collaboration Policy

HW 1, 2 and 4 must be done individually, while HW 3 and 5 must be done in teams of 2-3 (individual submissions of one student will not be accpeted for HW 3 and 5). If you are having trouble finding a group, the instructor and TA will help you find one after the first initial survey.

For HW 1, 2 and 4, it is acceptable to collaborate when figuring out answers and to help each other solve the problems. We will be assuming that, as participants in a graduate course, you will be taking the responsibility to make sure you personally understand the solution arising from such collaboration. You also must indicate on each homework with whom you have collaborated.

Late Policy

Individual students will be allowed 3 total late days without penalty for HW 1, 2 and 4. Each team will be allowed 3 total late days without penalty for HW 3 (Proposal) and 5 (Project). Note that other than these late days, we will not be making exceptions and extending deadlines, so please try to be frugal with your late days and use them only if necessary. Once those days are used, you will be penalized according to the following policy:

  • Homework is worth full credit at the due time on the due date.
  • The allowed late days are counted by day (i.e., each new late day starts at 12:00 am CT).
  • Once the allowed late days are exceeded, the penalty is 50% per late day conted by hour (i.e., 2.0833% per hour).
  • The homework is worth zero credit 48 hours after exceeding the late day limit.

You must turn in at least 2 out of 3 coding homeworks (i.e., HW 1, 2, 4), the project proposal (HW 3) and report (HW 5), even if for zero credit, in order to pass the course. Please upload your late submissions to Canvas.

Regrade Policy

If you feel that we have made a mistake in grading your homework, please submit a regrading request to the instructor and TA by email, and we will consider your request. Please note that regrading of a homework may cause your grade to go either up or down.

Plagiarism/Code Reuse Policy

All homework assignments are expected to be conducted under the UW-Madison policy for academic integrity. All rules here apply and violations will be subject to penalty including zero credit on the homework assignment, failing the course, or other disciplinary measures. In particular, in your implementation:

  • Code or pseudo-code provided by the TAs or instructor may be used freely without restriction.
  • You may not just re-use an existing implementation written by someone else. The implementation should basically be your own.
  • Code written by other students in the class cannot be used (except, obviously, you can share code within your group for HW 3 and 5).
  • You can use fragments of code that you found online as long as they are limited to a few lines, and you note where you got the code both as a comment in your code and in your report. If you are unsure whether it is allowed, consult with the instructor before turning in the homework assignment.
  • If you are doing a similar project for a graded class at UW-Madison (including independent studies or directed research), you must declare so on your report, and note which parts of the project are for CS 769, and which parts are for the other class. Consult with the TA mailing list if you are unsure.

Course Project (HW 3 and 5)

The class project will be carried out in groups of 2 or 3 people, and has four main parts: a proposal (HW 3), a Github repo for implementation, a final report, and a oral presentation (HW 5). The project is an integral part of this class, and is designed to be as similar as possible to researching and writing a conference-style paper.