Up-to-date information is at http://cse.unl.edu/~sscott/teach/Classes/cse478F16
INSTRUCTOR | TA |
Stephen Scott | Bahar Shahsavarani |
sscott at cse | sshahsav at cse |
Office Hours: M 10:30–11:30am R 2:00–3:00pm and by appointment in Avery 268 |
Office Hours: T 10:00–11:00am F 11:00-12:00pm in Avery 12 |
PREREQUISITES: CSCE 310 (Data Structures & Algorithms) required (or similar experience), STAT 380/880 (Prob. and Stats.) helpful
TIME: 12:30–1:45 Tue/Thu
CLASSROOM: Avery 19
TEXTBOOKS:
Required: Introduction to Machine Learning, Third Edition by Ethem Alpaydin, MIT Press, 2014, ISBN 9780262028189.
Optional: Machine Learning, by Tom Mitchell. McGraw-Hill, 1997, ISBN 0070428077. [Book's web page includes errata.]
Useful for learning more about support vector machines, but not required: An Introduction to Support Vector Machines, by Nello Cristianini and John Shawe-Taylor. Cambridge University Press, 2000. ISBN 0-521-78019-5.
Useful for learning more about boosting, but not required: Boosting: Foundations and Algorithms, by Robert Schapire and Yoav Freund. MIT Press, 2012. ISBN 0-262-01718-0.
Useful for learning more about deep learning, but not required: Deep Learning, by Ian Goodfellow, Yoshua Bengio, and Aaron Courville. In preparation for MIT Press, 2016.In this course you will learn several of the fundamentals and current trends in machine learning. Many of the approaches we will cover are applicable to several areas, including game playing, bioinformatics, text categorization, speech recognition, and machine vision. The emphasized topics in this course will be different types of machine learning approaches, including decision trees, neural networks, support vector machines, Bayesian classifiers, bagging and boosting, clustering, and hidden Markov models. We will examine their strengths and weaknesses, and will study methods to theoretically and empirically evaluate them. Time permitting, we will also investigate reinforcement learning, which is a useful approach to automated system control.
There will be 3–4 homework assignments, which you will work on in teams
of size two. 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 the
handin program
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
implementations of machine learning algorithms.
Late homework submissions will be penalized
exponentially: if your submission is m minutes late,
your final score will be multiplied by
You and your teammate 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!
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.
Another part of your homework grade will come from "mini-homeworks", in which you'll choose a simple concept to learn (e.g., "foods I like"), identify some positive and negative examples of your concept, and then incrementally build a portfolio of (manually crafted or machine-generated) hypotheses that approximate your concept. You will briefly desribe your concept, your data, and your hypotheses in the course wiki. These mini-homeworks will be worked on individually, not in teams.
There will be no exams in this course.
In this course you and your homework teammate will do a substantial project. This project can be: (1) an extensive literature search and summary on a particular topic, (2) a good implementation and evaluation of a known result in machine learning, or (3) a small (but nontrivial) amount of original research related to machine learning.
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 an ACM or IEEE journal, 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 (December 5–9), and if necessary, during the fourteenth week (November 28–December 2). You will submit your written report to us no later than 11:59 p.m. on December 7. 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.
Later this semester (late September to early October) we will set a deadline for submission of 1–3 paragraph proposals on your projects. You must do this in order to get full credit for your project, and you must get our approval on it before starting work on your project. we will provide a list of possible topics later this semester, but you may propose your own topic as well. To be a valid topic, it must go beyond the scope of the course. Your project could be on a topic we did not cover in class at all, or could more deeply explore a topic we covered in class.
The above items will be weighted as follows:
hwks: 35% | proj. report: 35% | proj. presentation: 30% |
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 878, a B is required to pass the course; a B– is insufficient.
In general, students registered for CSCE 878 will be graded more stringently on everything and will have more problems to solve on the homework assignments.
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 itself.
Students with disabilities are encouraged to contact us for a confidential discussion of their individual needs for academic accommodation. It is the policy of the University of Nebraska-Lincoln to provide flexible and 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, 132 Canfield Administration, 472-3787 voice or TTY.
The CSE Department has an anonymous suggestion box at http://cse.unl.edu/department/suggestion.php that you may use to 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.