Up-to-date information is at http://cse.unl.edu/~sscott/teach/Classes/cse496S19
INSTRUCTOR | TA | Sysadmin |
Stephen Scott | Eleanor Quint | Holland Computing Center |
sscott at cse | pquint at cse | hcc-support at unl |
Office Hours: T 12:30pm–1:20pm, F 2:30pm–3:20pm and by appointment in Avery 361 |
Office Hours: T 11:00am–12:00pm in Avery 12 |
Office Hours: R 2:00pm–4:00pm in Schorr 118 |
PREREQUISITES: A grade of "P" or "C" or better in CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H required. STAT 380/880 (probability and statistics) recommended. Machine learning background is not necessary (though helpful), but you must be a competent programmer.
TIME and ROOM: 3:30–4:20 Mon/Wed/Fri and 4:30–5:20 Mon, in Avery 119
TEXTBOOKS:
Required:
Hands-On Machine Learning with Scikit-Learn and TensorFlow by
Aurélien Géron,
O'Reilly Media, 2017, ISBN: 9781491962299.
Useful for general introductions to machine learning, but not required:
In this course you will learn several of the fundamentals and current trends in deep learning. The approaches we will cover are applicable to several areas, including game playing, bioinformatics, text categorization, speech recognition, autonomous systems, and machine vision. The emphasized topics in this course will be different approaches and technologies in deep learning, including various activation functions and regularizers, as well as convolutional layers, recurrent networks, and autoencoders.
Every class meeting on Monday afternoon will be a hack-a-thon. Each hack-a-thon session will put into practice the concepts covered in lecture. In each session, we will guide you through downloading and setting up data sets and network architectures, as well as tuning hyperparameters and evaluating the results. You will indiviually submit the results of each week's hack-a-thon assignment via handin by the following Thursday at 11:59pm. Late submissions will not be accepted.
Hack-a-thons will be interactive, in which you are expected to bring with you a fully charged laptop, as well as a smartphone or some other means to log into HCC via two-factor authentication. Prior to the first hack-a-thon session on January 7, you need to join the HCC class group and set up Duo two-factor authentication. If you do not already have an HCC account, go to hcc.unl.edu/new-user-request to request one, in the class group cse496dl. If you already have an account, send an email to hcc-support@unl.edu to ask to join the class group cse496dl. If you have not already done so, you should also install on your smartphone the Duo Mobile app to use two-factor authentication to log into HCC. You will also need to go in person to the HCC office in Schorr 118 to set up the authentication system. More information on this is at hcc-docs.unl.edu/x/gwBU.
All sessions will use the TensorFlow library in Python. If you do not already know Python, you are expected to learn it on your own. We will not teach basic Python in this course.
There will be 4–5 homework assignments, which you will work on
in small teams.
Each homework is due by 11:59 p.m. on its due date.
(cse's system clock, which timestamps your submissions,
is the official clock for this course. Do not assume that just because
handin
allows you to submit that the deadline has not passed; you are
responsible for ensuring that your files are submitted and timestamped before the
deadline.) These assignments will include
implementation and testing of various neural network architectures.
Late homework submissions will be penalized
exponentially: if your submission is m minutes late,
your final score will be multiplied by
You must use some document processing package (e.g., LaTeX) to write your homework submissions, and you must submit your reports electronically in pdf format. You must also write as clearly and concisely as possible. Presentation of your results is as important as the results themselves, and will be heavily weighted in grading. If we cannot understand what you wrote due to poor writing, etc., then we cannot award full credit, even if your answers are correct. Thus we recommend that you ask someone to proofread your write-ups before you submit them, to check for clarity, typographical errors, etc. If English is not your first language, then we strongly recommend this!
Note that to use handin, you need a CSE login account. To get a CSE login account (if you are not a CSE student), go to http://cse.unl.edu/claim. Finally, ensure that all your files (e.g., program code, homework write-ups) are reasonably well-protected. You will be held responsible if someone copies your files and submits them as homework solutions.
There will be no exams in this course.
In this course you and your team will do a substantial project, in which you will characterize a significant problem amenable to a deep learning solution, study the related work to this problem, develop one or more deep learning approaches to this problem, and evaluate your approaches.
You will summarize your project results in a written report and an oral presentation. The written report must use a professional writing style similar to that found in a refereed conference or journal (e.g., ACM, IEEE, ICML, ICLR, NeurIPS), including abstract, introduction, summary of related work, your contribution, references, and an appendix (if necessary). The oral presentation will be to the entire class at the end of the semester: during the fifteenth week (April 22–26), and if necessary, during the fourteenth week (April 15–19). You will submit your written report no later than 11:59 p.m. on April 24. In accordance with UNL policies, you have now been informed in writing of the nature and scope of this project prior to the eighth week of classes.
Late February to early March, we will set a deadline for submission of 1–3 paragraph proposals on your projects. Also, in late March, you will submit to us a brief progress report and meet with us for a check-in on your project. You must do both of these in order to get full credit for your project, and you must get our approval on your proposal before starting work on your project.
The above items will be weighted as follows:
hack-a-thons: 20% | hwks: 30% | proj. report: 25% | proj. presentation: 25% |
In computing your letter grade we will start with the following base scale, where s is your final score:
s ≥ 90% ⇒ A | 80% ≤ s < 90% ⇒ B | 70% ≤ s < 80% ⇒ C | 60% ≤ s < 70% ⇒ D | s < 60% ⇒ F |
You will receive a "+" with your grade if the last digit of your score is ≥ 7, and a "–" if the last digit is < 3. We will scale up from this base scale if we deem it appropriate. Thus, if you get an 87% in this course you are guaranteed a B+ (similarly, an 82% guarantees a B–), but your grade might be higher depending on your performance relative to the rest of the class and your level of class participation. Note that for students registered for CSCE 896, a B is required to pass the course; a B– is insufficient.
All submitted work must be your own. No direct collaboration with fellow students, past or current, is allowed unless otherwise stated (e.g., your homework partner). The Computer Science & Engineering Department has an Academic Integrity Policy. All students enrolled in any computer science course are bound by this policy. You are expected to read, understand, and follow this policy. Violations will be dealt with on a case by case basis and may result in a failing assignment or a failing grade for the course.
Attendance at all officially scheduled class meetings (class and lab sections) is expected. Students are responsible for knowing all material discussed in class meetings. Changes to class and lab schedules and assignments will be announced in class or lab.
Students with disabilities are encouraged to contact us for a confidential discussion of their individual needs for academic accommodation. This includes students with mental health disabilities like depression and anxiety. It is the policy of the University of Nebraska-Lincoln to provide individualized accommodations to students with documented disabilities that may affect their ability to fully participate in course activities or to meet course requirements. To receive accommodation services, students must be registered with the Services for Students with Disabilities (SSD) office, 232 Canfield Administration, 402-472-3787.
UNL offers a variety of options to students to aid them in dealing with stress and adversity. Counseling and Psychological Services (CAPS) is a multidisciplinary team of psychologists and counselors that works collaboratively with Nebraska students to help them explore their feelings and thoughts and learn helpful ways to improve their mental, psychological and emotional well-being when issues arise. CAPS can be reached by calling 402-472-7450. Big Red Resilience & Well-Being provides fun events, innovative education, and dynamic services to help students understand emotions, manage stress, build strength, connect with others, develop grit and navigate transitions.
The CSE Department's anonymous suggestion box at http://cse.unl.edu/department/suggestion.php lets you voice your concerns about any problems in the course or department if you do not wish to be identified.
GTA office hours are held in the CSE Student Resource Center in Avery 12.
It is CSE Department policy that all students in CSE courses are expected to regularly check their email so they do not miss important announcements.
We will be using Piazza as another method of communication for announcements, to ask questions of the TA, and to discuss and share tips and tricks among students. This should be the first place you ask questions about homework, hackathons, or the project.