Up: Dana's Home page

Machine Learning

Instructor

Prof. Dana Ballard

TAs

Lewis Fishgold Yuchen He Dmitry Kit

Overview

Text: Pattern Recognition and Machine Learning by Christopher Bishop
Supplementary Material: Andrew Ng's lecture notes

Course Credit:
Credit will be based on the assignments (70%), a midterm (15%), and a final (15%).

Grades will be posted on Blackboard, which you can log in to using your eid and eid password.

Late Policy:
1 day: -10%
2 days: -20%
3 days: -30%
4 days: No credit
If extenuating circumstances will make it difficult for you to complete a project on time, contact the TA to work things out.
Academic dishonesty:
Students caught plagiarizing will fail the course. On some projects, we will use MOSS to analyze code. Avoid plagiarism by carefully citing all your sources. If you use a specific short code snippet found on a web-page, mention that fact in a comment. If someone else told you how to solve a tricky part of an assignment, give them credit too. Do not copy code from other students. However, if you did and cited them for it, I suppose that you would not fail for plagiarism; you simply would not get credit for the assignment. Even so, don't do it.
Homework:
The assignments will generally be released on Wednesdays, the material for the assigment will be taught on the following Monday, and then the assignment will be due on Sunday. For problem sets, your solutions should be submitted in class on Monday. They can be neatly handwritten or typeset in Latex. The official due dates will be posted on the website. Most assignments will require computer programming, which must be done in Matlab. Learning how to use Matlab is relatively easy, and some decent tutorials can be found here and here. Matlab is available on the CS departmental machines -- just invoke matlab at the command line. To run graphical applications like Matlab remotely, you will need to use vnc, which you can learn about here.
Homework grading:
Here and here are some excellent reports from hw1. You should try to model yours after the example they have set. It is very important that you point out problems with your implementation in your report. It's MUCH better for you to be honest, and state these problems in your report, than for me to discover them by running your code. Here's a report that was commendable for its honesty, and pretty good overall (see last section). The most important thing is to cover all the points listed at the end of the assignment handout.
Electronic submission:
For the programming assignments, you will submit homework using the turnin program available on CS lab machines. Always submit your report and code (if any), and put your name on both your code and report. If you don't have a CS account, get One. Instructions are available by typing man turnin. Essentially, you will type "turnin --submit username_of_ta hw# projectFile.m report.pdf" where '#' is the number of the homework you are submitting and projectFile.m is your code and report.pdf is your report. Note that each assignment handout will tell you which TA's username to submit to -- it will vary. Please do not compress or tar the files since that adds another step in the process of grading. (You can use . to submit the current working directory. Invoke man turnin for more info.) You can check your submission by making a new directory and typing "turnin --verify username_of_ta hw#". This will copy back to you the files that you have submitted. This way, you can make sure that everything is in order (and you did not accidentally submit a teacher-provided file instead of the file with your changes).
Question of the week:
This semester, question of the week will be informal and ungraded. If you have a question on the past or upcoming week's material, you can send it to Dana with the phrase "question of the week" and it might get answered in class.

Week Date Topic Reading Assignment Slides etc
0 19 JanIntroduction   Lec0
1 23 JanProbability Theory  EM / Best Report Lec1.1
25 JanProbability Theory / EMBishop 1.1-1.5 EMLec-slides CoinPaper
2 30 JanLinear Algebra / PCA Classnotes Eigendigits/PCA Best Report SabesLinEq
1 Feb Dynamical Systems Classnotes PPT  
3 6 FebOptimization Theory Classnotes PPT Linear Algebra/Optimization  
8 FebOptimization Theory PPT Bishop Appendix D and E LecNotes
4 13 FebInformation TheoryBishop 1.6 Classnotes ICA ICA
15 FebInformation Theory / ICA Classnotes  
520 FebPerceptronsBishop 4.1, 4.2   
22 FebBackpropagation Classnotes  
6 27 FebSupport Vector Machines SVM Tutorial ; Bishop 325-345 XOR example Perceptrons/SVMs 
29 FebLearning Theory Notes on VC dimension  
75 MarReview Practice Midterm 1 2
7 MarMidterm
819 MarDecision Trees and Linear RegressionLinear Regression / Bishop 14.4
21 MarHidden Markov ModelsBishop 13.1,13.2HMM slides
926 MarBayes Nets: RepresentationBishop 8.1,8.2Bayes Net Slides
28 MarBayes Nets: Exact Inference Bishop 8.4
10 2 Apr Bayes Nets: Approximate InferenceBishop 11.1 - 11.3Bayesian Networks
4 AprBayes Nets: LearningTutorial on learning BNs (read sec. 2,3,5,7,8,11)Learning BNs Slides
11 9 AprReinforcement Learning RL PPT
11AprReinforcement Learning RL Notes Reinforcement Learning
12 16AprReinforcement LearningRL Notes2
18 AprGenetic AlgorithmsGA Notes Genetic Algorithms
13 23 AprGame Theory Hauert Paper Games slides
25 AprGame Theory
14 30 AprReview Zhu:games
2 MaySecond Exam Practice Final