Syllabus for CSCE 478/878 (Fall 2014)

Up-to-date information is at


Stephen Scott Bahar Shahsavarani
268 Avery
sscott at cse sshahsav at cse
Office Hours:
M 10:30–11:30am
T 11:00am–12:00pm
and by appointment
in Avery 268
Office Hours:
R 1:30–3:00pm
in Avery 12

PREREQUISITES: CSCE 310 (Data Structures & Algorithms) required (or similar experience), STAT 380/880 (Prob. and Stats.) helpful

TIME: 9:30–10:45 Tue/Thu



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.


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 topic in this course will be learning different types of classifiers, including decision trees, neural networks, support vector machines, and Bayesian classifiers. We will examine these classifiers' 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, as well as hidden Markov models.



There will be 2–4 homework assignments, each 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 2m/60. Thus you will lose 16% of your points if you submit 15 minutes late, 29.3% of your points if you submit 30 minutes late, 50% if you submit 60 minutes late, etc. (amount of lateness is measured by the time stamp given by cse's web-based handin). Thus unless you are making very significant improvements to your submission, it is better to submit a partially completed homework assignment than a late one. If you have a valid excuse for a late submission (e.g., illness), contact me as soon as possible.

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 I cannot understand what you wrote due to poor writing, etc., then I cannot award full credit, even if your answers are correct. Thus I 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 I 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.


There will be no exams in this course.


In this course you 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 may work on these projects individually or in small groups, though if you work in a group, my expectations will be much higher when I grade your project.

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 8–12), and if necessary, during the fourteenth week (December 1–5). You will submit your written report to me no later than 11:59 p.m. on December 10 15. 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) I 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 my approval on it before starting work on your project. I 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 I 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. I will scale up from this base scale if I 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. 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 the TA or me 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 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.


UNL has received federal funding to continue the design and implementation of Creative Competency Exercises designed to improve computational and creative thinking in courses at the University of Nebraska. This semester evaluation will be done in the class to help understand how doing these exercises impacts student learning and student attitudes and motivation for science, engineering, technology and math courses. Faculty from CSCE and Educational Psychology will be coming to class or lab to proctor surveys that will aid in this evaluation. You will be getting more information from them during the first or second week of the semester. Thank you in advance for your help with this important project.

Last modified 02 December 2014; please report problems to sscott.