CMSC 422
Introduction to Machine Learning
Fall 2017
General Information
Class Time: Monday, Wednesday, 2:00-3:15
Location: CSIC 2117
Text: We
will use A Course in Machine Learning,
by Hal Daume.
It is available freely here.
Piazza: We will set up Piazza for the class. We encourage you to ask questions on Piazza.
Personnel |
|||||
|
Instructor |
Instructor |
Teaching Assistant |
Undergrad Teaching Assistants |
|
Name |
Emily Hand |
Ryen Krusinga |
Matt Harding |
Ashu Garg |
|
Office |
AVW 4421 |
AVW 4438 |
AVW 4103 (or in
4101 if 4103 is crowded) |
||
Office Hours |
Tu: 2-3, W:10-11 |
M,Th:10-11 |
M,Tu:4-5 |
F: 2-3 |
F: 12-1 |
Email |
djacobs (at) cs |
emhand (at) cs |
krusinga (at) cs |
|
Course Policies |
|
Course work, late policies, and grading |
There
will be (probably) nine problem sets assigned during the semester. Three of
these will include programming assignments to be done in Python,
the rest will consist of written exercises. Homework
is due at the start of class. Problems may be turned in late, with a penalty
of 10% for each day they are late, but may not be turned in after the start
of the next class after they are due. For example, if a problem set is due on
Monday, it may be turned in before Tuesday at 2:00pm, with a 10% penalty, or
before Wednesday at 2:00pm, with a 20% penalty, but no later than Wednesday
at 2:00pm. There will be three exams. There will be two short, in-class midterm that will take about 45 minutes. The final will be during the normal final exam time. Each exam will be cumulative, covering all material learned to that point in the class, with a greater emphasis on material learned since the previous exam. Exams and problem sets will all be based on material discussed in class and in the readings. These will be weighted for the final grade as: Homework 33%, midterms will each be 16%, final exam 35%. Homework
assignments are to be written up neatly and clearly, and programming
assignments must be clear and well-documented.
Programs should be written in Python.
All homework should be submitted through ELMS. Students should upload a single
file. For written problems, this
can be a pdf.
For programming assignments, it should be a zip file with a directory
structure and file names as indicated in the assignment. Some homeworks and projects may have a special challenge problem. Points from the challenge problems are extra credit. This means that I do not consider these points until after the final course grade cutoffs have been set. Students participating in class discussion or asking good questions will also receive extra credit. |
Academic Honesty |
All
class work is to be done independently. You are allowed to discuss class
material, homework problems, and general solution strategies with your
classmates. When it comes to formulating/writing/programming solutions you
must work alone. If you make use of other sources in coming up with your
answers you must cite these sources clearly (papers or books in the
literature, friends or classmates, information downloaded from the web,
whatever). It is best to try to solve problems on your own, since problem solving is an important component of the course. But I will not deduct points if you make use of outside help, provided that you cite your sources clearly. Representing other people's work as your own, however, is plagiarism and is in violation of university policies. Instances of academic dishonesty will be dealt with harshly, and usually result in a hearing in front of a student honor council, and a grade of XF. (Note, this and other course policies are taken from those of Prof. David Mount). |
|
Any
student who needs to be excused for an absence from a single lecture,
recitation, or lab due to a medically necessitated absence shall: a) Make a
reasonable attempt to inform the instructor of his/her illness prior to the
class. b) Upon returning to the class, present their instructor with a
self-signed note attesting to the date of their illness. Each note must
contain an acknowledgment by the student that the information provided is
true and correct. Providing false information to University officials is
prohibited under Part 9(h) of the Code of Student Conduct (V-1.00(B) University of Maryland Code of Student Conduct)
and may result in disciplinary action. The self-documentation may not be used
for the Major Scheduled Grading Events as defined below and it may only be
used for only 1 class meeting (or more, if you choose) during the semester. Any student who needs to be excused for a prolonged absence (2 or
more consecutive class meetings), or for a Major Scheduled Grading Event,
must provide written documentation of the illness from the Health Center or
from an outside health care provider. This documentation must verify dates of
treatment and indicate the timeframe that the student was unable to meet
academic responsibilities. In addition, it must contain the name and phone
number of the medical service provider to be used if verification is needed.
No diagnostic information will ever be requested. The Major Scheduled Grading
Events for this course include: a) Midterm – Oct 4 and Nov. 8, during
the lecture period b) Final exam, as given in University schedule. |
Academic Accommodations |
Any
student eligible for and requesting reasonable academic accommodations due to
a disability is requested to provide, to the instructor in office hours, a
letter of accommodation from the Office of Disability Support Services (DSS)
within the first two weeks of the semester. |
Below is a tentative schedule for problem sets and lectures.
No. |
Date |
Topic |
Readings |
Assignment |
Notes |
Instructor |
1 |
M. Aug. 28 |
Introduction |
|
|
Jacobs |
|
2 |
W. Aug. 30 |
Decision Trees |
CIML 1 |
PS1 out |
PS: Math refresher. |
Jacobs |
3 |
W. Sep. 6 |
Limits of Learning |
CIML 2 |
PS2 out PS1 due |
PS: Decision Trees |
Hand |
4 |
M. Sep. 11 |
Geometry and Nearest Neighbors |
CIML 3-3.3 |
Jacobs |
||
5 |
W. Sep. 13 |
K-Means |
CIML 3.4-3.5 |
PS3 out PS2 due |
PS: Implementation of decision trees, nearest neighbor, perceptrons. |
|
6 |
M. Sep. 18 |
Perceptron |
CIML 4-4.5 |
|
||
7 |
W. Sep. 20 |
Perceptron (contŐd) |
CIML 4.5-4.7 |
|
|
|
8 |
M. Sep. 25 |
Linear Classifiers and Gradient Descent |
CIML 7-7.4 |
|
|
|
9 |
W. Sep. 27 |
Working on some problems in class |
PS3 due Practice problems for midterm |
|
Hand |
|
10 |
M. Oct. 2 |
Midterm I |
|
|
|
|
11 |
W. Oct. 4 |
Practicalities of ML |
CIML 5-5.5 |
PS4 out |
PS: gradient descent |
Hand |
12 |
M. Oct. 9 |
Probabilistic Models |
CIML 9-9.5 |
|
||
13 |
W. Oct. 11 |
Probabilistic Models (contŐd) |
CIML 9.6-9.7 |
PS5 out PS4 due |
PS: Probabilistic Models |
|
14 |
M. Oct. 16 |
Neural Networks |
CIML 10-10.1, 7.5, Neural Networks and Deep Learning Chapters 1 and 3. |
|
||
15 |
W. Oct 18 |
Neural Networks (contŐd) |
CIML 10.2-10.3, Neural Networks and Deep Learning Chapters 2. |
PS6 out PS5 due |
PS: Implementation, neural networks. |
|
16 |
M. Oct. 23 |
Deep Learning |
CIML, 10.6, Neural Networks and Deep Learning Chapter 6. |
CNNs, recursive networks, applications in computer vision, MTurk. |
|
|
17 |
W. Oct. 25 |
Deep Learning (contŐd) |
Building real applications with Deep Learning |
|
||
18 |
M. Oct. 30 |
PCA |
CIML 15-15.2 |
|
||
19 |
W. Nov. 1 |
Kernels |
CIML 11-11.3 |
PS7 out PS6 due |
PS: PCA and Kernels |
|
20 |
M. Nov. 6 |
SVMs |
CIML 11.4-11.6 |
|
|
|
21 |
W. Nov. 8 |
Working on some problems in class |
|
PS7 due Practice problems for Midterm |
|
|
22 |
M. Nov. 13 |
Midterm II |
|
|||
23 |
W. Nov. 15 |
SVMs (contŐd) |
CIML 11.4-11.6 |
PS8 out |
PS: Implementation, PCA, SVMS. |
|
24 |
M. Nov. 20 |
Learning from Imbalanced data |
CIML 6.1 |
|
|
|
25 |
M. Nov. 27 |
Bias and Fairness |
CIML 8 |
|
||
26 |
W. Nov. 29 |
Imitation Learning |
CIML 18 |
PS9 out PS8 due |
|
|
27 |
M. Dec. 4 |
Graphical Models |
TBD |
|
Krusinga |
|
28 |
W. Dec. 6 |
Learning Theory |
CIML 12 |
Practice problems for final |
Hand |
|
29 |
M. Dec. 11 |
Machine Learning and Society & Conclusions |
TBD |
|
Discrimination in learning algorithms, ML and the future of jobs, and privacy. |
|
Final |
|
|
|
|
|
|