Course Basics
Lecture: |
Tuesday/Thursday 11:20 - 12:35pm, Science Center 181 |
Lab A: |
Thursday 1:05 - 2:35pm, Science Center 256 |
Lab B: |
Thursday 2:45 - 4:15pm, Science Center 256 |
Instructor: |
Ameet Soni |
Email: |
|
Office: |
Science Center 253 |
Office hours: |
3pm to 5pm, Wednesday or by appointment |
Prep Time (limited availability): |
Monday 11am to 1pm, Tuesday/Thursday morning before lecture |
Course Discussion: |
Piazza
(mandatory enrollment) |
Welcome to CPSC 66. Machine learning is the study of algorithms that learn
through experience. This course will introduce you to various frameworks (e.g.,
supervised learning) and associated algorithms for these frameworks (e.g.,
support vector machines). The major aim of this course, however, is to
develop an understanding of the entire machine learning pipeline rather than focus on the algorithm du jour. We will also spend a significant amount of time
inspecting core concepts (e.g., generalization) from statistical and theoretical
perspectives. With each topic, we will consider both the practical
and open research questions at the heart of the field. You will be expected
to implement solutions through lab assignments, but also digest and discuss
primary research articles that build off of lecture topics.
To enroll in this course you must have completed CPSC 35.
There is no other requirements, though linear algebra and familiarity with probability will be useful. The course will also
cover a good deal of probability theory, but much of this can be picked up
with provided reading.
This course is designated as a natural
sciences and engineering practicum (NSEP) and qualifies as a Group 3: Applications course for the CS major/minor requirements.
Required Clicker
We will be using clickers in this course to enact peer learning. You are
required to purchase a remote to record attendance and engage in polls during
lecture.
See our
clickers page for more
details on purchasing your device.
Please
create an account through
iClicker, register your remote, and add CS66 Machine Learning as a course (search for "Soni").
Required Course Textbook
We will utilize three textbooks in parallel;
you are only required to read one, but each has a different style so pick the one that suits you. I will list
the relevant reading for each on the syllabus, if available.
- Machine Learning by Tom Mitchell. This is the gold standard; however, it is too expensive to be the required textbook. You may be able to find used versions for a reasonable price; there is also a reserved copy in the Cornell Library.
- Introduction to Machine Learning, Third Edition, by Ethem Alpaydin. If you are looking to purchase a hard copy, this is the one
I recommend as it reasonably priced and a good textbook. It is also available as an ebook available for free through the library's ProQuest account.
- A Course in Machine Learning by
Hal Daume III. Online, free ebook. Needs some polish, but is up to date.
Additional references
These are all excellent books that I have read. However, they are geared more
towards graduate students and researchers, so I did not choose them for our
course textbook. If you are looking to get deeper into the material, I would suggest any of these.
- Pattern Recognition and Machine Learning by Charles Bishop
- Machine Learning: A Probabilistic Perspective by Kevin Murphy
- Elements of Statistical Learning by Trevor Hastie, Robert Tibshirani, and Jerome Friedman
- Deep Learning by Ian Goodfellow, Yoshua Bengio, and Aaron Courville