Introduction to Machine Learning
Computing Science 466 / 551
Fall Semester, 2009
Time: Tu Th 12:30 - 1:50pm
Place: MEC 3-1
Intructors: R. Greiner
Barnabas Poczos
Purpose
Learning -- ie, using experience to improve performance -- is an
essential component of intelligence. The field of Machine Learning,
which addresses the challenge of producing machines that can learn,
has become an extremely active, and exciting area, with an ever expanding
inventory of practical (and profitable!) results, many enabled by
recent advances in the underlying theory.
This course provides a (near)graduate-level introduction to the field,
with an emphasis on the design on agents that can learn about their environment,
to help them improve their performance on a range of tasks.
We will cover
- practical aspects, including algorithms for learning predictors
(various linear models (separators and regressors), decision trees, neural
networks, SVMs)
and learning (probabilistic) models (belief networks, clustering);
- general models, possibly including PCA, reinforcement learning; and
- theoretical concepts, including relevant ideas from statistics,
inductive bias, Bayesian learning and the PAC learning framework.
Programming assignments will include hands-on experiments with various
learning algorithms, possibly including neural network learning for face recognition,
and decision tree learning from databases of credit records.
If time permits, we will also survey the latest new results
(perhaps "large p, small n", exponentiated gradient, ...) and discuss some new
applications, in the areas of data-mining,
and
computational molecular biology.
See Lecture Notes for more details.
Prerequisite
While there are no formal prerequisites for this course,
we assume that each student has a basic programming capability and a
rudimentary
knowledge of calculus, linear algebra, probability and statistics.
It would be advantageous (but not essential) to have some prior
exposure to optimization methods, and a previous course on
artificial intelligence (eg, CMPUT 366).
We do assume that all students know C/C++/JAVA,
and know, or at least be willing to learn,
Matlab.
Textbooks
Lecture Notes
To contact the TAs and profs, use
c466.
To contact others in the course (including students and auditors
as well as the TAs and profs),
use
Moodle forums.
Evaluation:
70% assignments; 30% project
Di for "Dry lab only" (no coding)
Cj for "Dry lab + Coding"
Pk for "Project related"
|
Assignment |
% (Ugrad) |
% (Grad) |
Due date |
HW#1 (C1) |
Bayesian Decision Theory, Linear Regression,
Linear Classifiers
ReadMe
[HTF: 1, 2, 3, 4]
(Gabor marked Q3-Q8; Shahab marked {Q1,Q2,Q9}.)
|
80 [20] |
100 [20] |
6 Oct 09 (start of class) |
P1 |
Project Proposals due |
|
|
6 Oct 09 (start of class) |
HW#2 (C2) |
Linear Algebra, Dual Formulation,
Lagrange Multiplier, Kernel Methods, SVMs
ReadMe
HTF: Ch 5.8, 12 (esp 12.3) + other readings
|
116 [20] |
162 [20] |
3 Nov 09 (Start of class) |
P2 |
"Lay of the Land" presentations |
|
|
18/Nov
|
HW#3 (C3) |
Gaussian Processes,
Artificial Neural Nets (+ Line Search, Conjugate Gradient),
Decision Tree; Ensemble Methods
ReadMe
HTF: Ch 10 (8.7, 16), 11 +
[WebBook](esp Chapter 2)
|
99 [20] |
113 [20] |
24 Nov 09 (12:30pm) |
HW#4 (D1) |
PAC learning,
Belief Networks, EM/Gibbs/..., PCA/ICA/ISA
|
55 [10] |
55 [10] |
3 Dec 09 (11:59pm) |
P3 |
"Final" presentations |
|
|
1, 3/Dec 09 |
P4 |
Project write-up |
|
|
17 Dec 09 (5pm) |
Project (both Grad/Undergrad) (30%)
Teams
Grades -- see moodle page
Late Policy: Every component of the Project must be handed in on
time ; no late components will be accepted.
For the assignments, we will excuse a total of 4 "late days".
(Eg, you can hand in D1 2 days late, P2 1
day late and D4 1 day late, without penalty.)
Notice a "day" typically corresponds to a week-day;
the HW must be handed in by the specified time of that day.
If you run out of your 4 "extension-days",
we will not accept any other late HWs.
(Note that handing in any portion of your
homework late counts as "1" in your late-assignment count.)
Code of Student
Behavior
Collaboration
Policy
Lab Policy
The labs will only be used occasionally:
In the week immediately before each HW is due
Perhaps to give tutorials on some topics (eg, Matlab, Weka, ...).
In an ad-hoc basis, depending on student demand
Office Hours:
2:00-2:30pm, TTh (after class)
by arrangement (492-5461,
(include [466] in the subject line);
see also
To help me know your background, please fill out this questionaire
.
Course Handout
Return to Greiner's Homepage