Syllabus for CSCE 478/878 (Fall 2008)


Up-to-date information is at http://cse.unl.edu/~sscott/teach/Classes/cse478F08


CONTENTS


COURSE INFORMATION

INSTRUCTOR:
Stephen Scott
268 Avery
472-6994
sscott at cse
Office Hours: 1:30–2:30 M, 1:00–2:00 T, 11:00–12:00 R, and by appointment

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

TIME: 12:30–1:20pm MWF

CLASSROOM: Avery 112

TEXTBOOKS:

Required: Machine Learning, by Tom Mitchell. McGraw-Hill, 1997, ISBN 0070428077. [Book's web page includes errata.]

Useful for learning 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.

These books are on reserve at the library.


COURSE OBJECTIVES

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, 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, Bayesian classifiers, and instance-based classifiers. We will examine these classifiers' strengths and weaknesses, and will study methods to theoretically and empirically evaluate them. We will also investigate reinforcement learning, which is a useful approach to automated system control. Time permitting, we will also review genetic algorithms and learning sets of rules.


COURSE ELEMENTS

HOMEWORK

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 non-computer-based problems (i.e. theoretical exercises) and computer-based problems (i.e. implementations). The former is to help you comprehend the theory and the latter is to help you understand how the theory is used in practice. 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 the instructor as soon as possible.

You may consult each other for assistance on the homework, but you must write up your results in your own words and indicate whom you consulted. 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 (see "Help on Creating pdf Files" and "Help with LaTeX, etc."). 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 native 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 approximates your concept. This portfolio will consist of a decision tree, a simple neural network, a Bayesian classifier, and an ensemble of decision stumps. You will briefly desribe your concept, your data, and your hypotheses in the course wiki.


EXAMS

There will be no exams in this course except for the prerequisite test, which will evaluate your understanding of this course's necessary background material as well as your writing ability.


TOPIC SUMMARIES

After we complete each topic in lecture, you will submit a brief (3–5 pages) summary of that topic. This is due one week (at 11:59 p.m.; the homework late penalty applies here as well) after we finish covering that topic in class (as with the homeworks, all submissions must be electronic in pdf format). No collaboration is allowed! Your summary will be based on the lecture, relevant readings from the text, and any other supplementary material that I distribute in class. Your summary should include at least the following: (a) an overview of the "big picture" of that topic; (b) a description of what you feel are the most and least interesting results related to that topic; (c) 2–3 questions on material that you did not understand from the readings and lectures; (d) 2–3 interesting research ideas related to this topic; and (e) a detailed description of one subtopic. This summary must be in your own words! If you merely copy material from the textbook or the papers, you will be severely downgraded. Finally, as with the homeworks and projects, quality of writing and brevity will be heavily weighted in the grading. See this small set of sample topic summaries to use as guides in writing your own.

At the end of the semester, I will drop your two lowest topic summary grades when computing your final average score on the topic summaries. In addition, each of you will be expected to grade 5–6 other students' submissions of one topic summary (5 for 478, 6 for 878). For that topic summary, you will receive a perfect score so long as you grade according to the above guidelines (grading will be done by filling out a web form). So if you grade students' submissions for e.g. the topic summary on decision trees, then you need not submit your own summary on that topic.


PROJECT

In this course you will do a substantial project. This project can be: (1) a very 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. If your project involves an implementation, then you may be asked to also give a brief demonstration. 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 Dead Week (December 8–12), and if necessary, during the week prior to Dead Week (December 1–5). You will submit your written report to me no later than 11:59 p.m. on December 10. 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 (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. So 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.


GRADING

The above items will be weighted as follows:

prereq test: 2% hwks: 30% proj. report: 30% proj. presentation: 20% topic summaries: 18%

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. So 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.

Academic dishonesty of any kind will be dealt with in a manner consistent with the CS&E Department's Policy on Academic Integrity. You are expected to know and abide by this policy.




Last modified 16 August 2011; please report problems to sscott.