CISC 5800: Machine Learning
Class times: Thursday, 5:30 – 7:45pm, LL 311
Instructor: Prof. Daniel D. Leeds (my homepage)
Teaching assistant: Wanjia Song
Office: LL 610H for Office Hours; normally JMH 332 (Rose Hill)
E-mail:
Office hours: Instructor - Thursday 4-5pm; TA - Wednesday 2-3pm (TA Off Hr will be in LL 601)
Full syllabus
Course text: No book will be
required, but the following will be useful as references.
- "Pattern Recognition and Machine Learning" by Bishop
- "Machine Learning: A Probabilistic Approach" by Murphy
Programming: We will have programming
assignments throughout the semester. I will require you
complete your programming assignments in Python or Matlab. There are several ways
to use Python or Matlab:
- You can run Matlab in the computer lab or (without graphics)
by remote login to our department machines.
- You can download your
own student
license for $50-$100.
- In Python, you can use numpy, scipy and matplotlib packages to write acceptable code for this class in Python. (You also may used the pandas package; you may not use packages like tensorflow for this class.)
Sections below:
- Resources
- Announcements
- Slides
- Assignments
Resources:
Equation sheet for final Corrected Dec 11 late evening
Final practice
Practice questions
Practice questions answers - correction to a2(confused) on Dec 12 afternoon
More practice questions
More practice questions answers Red
More practice questions answers Blue
More practice questions answers Green
Additional HMM questions
Additional HMM answers
Practice questions Part 4
Practice questions Part 4 answers Red
Practice questions Part 4 answers Blue - correction to at=4 and bt=4 answers
Practice questions Part 4 answers Green - correction to VC question and S2(cloudy)
Midterm practice
Practice questions - PCA/ICA practice questions added Oct 14, 11:30pm
Practice questions answers
Computing guides
Linux Commands - important Linux commands for working on erdos
vi Commands - important commands for the vi text editor; you are welcome to use emacs instead of vi
A Guide to Putty - Information for Windows users on accessing erdos
Note, to access erdos on Mac: (1) Open terminal, (2) type "ssh username@erdos.dsm.fordham.edu" , inserting your username before the @
Matlab
Extra background on Matlab
Matlab programming practice — download the accompanying data file sampleData.mat and function file newFunc.m
Calculus
Calculus practice - some optional problems with derivatives
Announcements:
Sept 3 11:50am: Dr Leeds will NOT be at office hours Sept 6. He will instead have office hours Tues Sept 4, 4-5pm in LL 610H; Wanjia's office hours will be Wednesday 2-3pm as normal. We WILL have lecture this Thursday, and HW 0 is due then!
Sep 18, 5:15pm: Prof Leeds is offline (inaccessible by e-mail) Tuesday afternoon until around 9pm Wednesday night. On Wed night, he'll answer any e-mails sent during that time; you are welcome to send questions to Wanjia during this offline time of mine too!
Sep 28, 12:05am: Midterm exam will be Oct 18.
Nov 16, 1:45am: For those who haven't submitted the written section of the homework: Wanjia will be on the sixth floor of LL between 2 and 5pm Friday to accept homeworks. If you can't find her, you can e-mail her. If this timing doesn't work for you, please e-mail your homework to me.
Nov 20, 2:40pm: Our final exam will be in class Dec 13, 5:30-7:30pm; it will be cumulative
Dec 10, 10:40pm: Dr Leeds will hold office hours both on Wednesday and Thursday this week, 4-5pm
Slides:
Check slides after lectures as well for updates made during class!
I have not found any one textbook or online resource to be an optimal match for the material we cover at the mathematical level we cover it. However, Andrew Ng's lecture notes, available on Stanford's Machine Learning course web site, often can be a helpful online read. I recommend these notes as well as looking through one of our course textbooks.
| Supplementary reading |
Lecture 1, Course logistics, background math, intro to classifiers. (Pre-recorded lecture PPT)
| |
Lecture 1.5, Programming intro.
(Pre-recorded lecture PPT)
| |
Lecture 2, Bayes classifier.
(Pre-recorded lecture PPT)
| Ng notes 2 particularly pages 8-11 |
Lecture 3, Logistic classifier. | Ng Notes 1 Elements of Part II (starting on page 16) |
Lecture 4, Support vector machines. | Ng notes 3 parts of pages 1-20 |
Lecture 5, Dimensionality reduction. | Ng notes 10 on PCA and Ng notes 11 on ICA |
Lecture 6, Neural networks. | Chapter 1 and Chapter 2 of "Neural Networks and Deep Learning |
Lecture 7, Hidden Markov Models. | Stanford notes |
Lecture 8, Learning Theory. | Lecture Notes |
Lecture 9, Convolutional Neural Nets. | |
Assignments:
Homework 0 - due Sep 6
HW 0 Answers
- 66.5-74 A range
- 59-66.5 B range
- 51-59 C range
- 41-51 D range
Homework 1 - due Sep 20 (written) and Sep 23 (code); hw1data.mat CORRECTION to Question 2 in Programming Part made Monday night (9/17) in RED!!!
HW 1 Answers
- 44.5-49 A range written
- 35-44.5 B range written
- 28-35 C range written
- 30-34 A range code
- 24-30 B range code
- 18-24 C range code
- 12-18 D range code
Homework 2 - due Oct 4 (written) and Oct 8 (code); hw2data.mat; Slight corrections to questions A3, 7, and 8 poster Oct 2, 11:58pm; Clarification for programming section added in red on pages 5 and 6 at 3:40pm Oct 5
HW 2 Answers
- 50-56 A range written
- 43-50 B range written
- 36-43 C range written
- 42-48 A range code
- 35-42 B range code
- 25-35 C range code
Midterm Answers
- 60-76 A range
- 45-60 B range
- 30-45 C range
Homework 3 - due Nov 15 (written) and Nov 18 (code); mat file available from erdos MLpublic, will be on web site soon
Homework 3 answers
- 83.5-93.5 A range written
- 72-83.5 B range written
- 60.5-72 C range written
- 49-60.5 C range written
Final Project - full project due Dec 9
Project pointers
Due Nov 8: e-mail to Dr Leeds and Wanjia telling us:
- List of group members
- Data set you will use
- If you plan to do your own optimizations/improvements, include a paragraph describing those optimizations/improvements