Course Introduction
Catalog Description
An introduction to a range of adaptive computer algorithms that learn models from data. Explores the theoretical foundations of machine learning, including computational learning theory and PAC learnability. Examples of machine learning algorithms studied include: decision trees, artificial neural networks, Bayesian learners, evolutionary algorithms and ensemble techniques.
Prerequisite: EECE 6820 Artificial Intelligence or equiv. Students should also have strong programming skills in Python, discrete mathematics, and calculus.
Instructor
Cristinel (Cris) Ababei
cristinel.ababei@marquette.edu
Phone: 414-288-5720
Office: Haggerty Hall, #220
Syllabus
For course goals and objectives, policies, and a tentative outline please see the syllabus on D2L.
Textbook
There is no single required textbook. However, there are several books (selected chapters) and research articles that will be used as reading materials. The books marked with * are particularly looked at in this course.
Books for gentler/shorter introductions to machine learning:
--[*B1-Mostafa]
Yasser Abu-Mostafa,
Learning From Data - A Short Course,
2012. (Free Slides, Videos only online).
--[B1-Alpaydin]
Ethem Alpaydin,
Introduction to Machine Learning,
3rd edition, 2014. (Free Slides only online).
--[B1-James-Hastie]
Gareth James, Daniela Witten, Trevor Hastie, and Robert Tibshirani,
An Introduction to Statistical Learning: with Applications in Python,
2023. (ISL, Free PDF online).
--[B1-Daume]
Hal Daume III,
A Course in Machine Learning,
2017. (Free PDF online).
More elaborated presentations or reference books:
--[*B2-Murphy]
Kevin Murphy,
Probabilistic Machine Learning: An Introduction,
2022. (Free PDF online).
--[B2-Mohri]
Mehryar Mohri, Afshin Rostamizadeh, and Ameet Talwalkar,
Foundations of Machine Learning,
2nd edition, 2018. (Free PDF online).
--[B2-Hastie]
Trevor Hastie,
The Elements of Statistical Learning,
2017. (ESL, Free PDF online).
--[B2-Efron-Hastie]
Bradley Efron and Trevor Hastie,
Computer Age Statistical Inference: Algorithms, Evidence and Data Science,
2016/2021. (CASI, Free PDF online).
--[B2-Bishop] Christopher M. Bishop,
Pattern Recognition and Machine Learning,
2006. (Free PDF online).
--[B2-Mitchell]
Tom Mitchell,
Machine Learning,
1997. (Free PDF online).
Books with an emphasis on coding (mostly in Python) and applications:
--[*B3-Geron]
Aurelien Geron,
Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow,
O'Reilly, 2022. (Code available at GitHub).
--[*B3-Raschka]
Sebastian Raschka, Yuxi Liu, and Vahid Mirjalili,
Learning with PyTorch and Scikit-Learn: Develop machine learning and deep learning models with Python,
Packt Publishing, 2022. (Code available at GitHub).
--[B3-Muller]
Andreas C. Muller and Sarah Guido,
Introduction to Machine Learning with Python: A Guide for Data Scientists,
O'Reilly, 2016. (Code available at GitHub).
--[B3-Grus]
Joel Grus,
Data Science from Scratch with Python,
O'Reilly, 2019. (Code available at GitHub).
Lectures, Code, HW, Readings
Resources
Related resources and videos on ML:
One of the most fantastic online resources is Jason Brownlee's website with plenty of excellent tutorials.
--Jason Brownlee,
Tutorials at machinelearningmastery.com.
Some remarkable videos, in no particular order.
--Yasser Abu-Mostafa, Caltech,
Machine Learning Course - CS 156. 2012. Uses [B1-Mostafa].
--Andrew Ng, Stanford,
CS229: Machine Learning. 2018. Suggests [B2-Bishop].
--Trevor Hastie, Stanford,
Statistical Learning Course I ISLP Python. 2023. Uses [B1-James-Hastie].
--Jure Leskovec, Stanford,
CS224W: Machine Learning with Graphs. 2021.
--Kilian Weinberger, Cornell,
CS4780 Machine Learning for Decision Making. 2017. Uses [B2-Murphy], 2012 edition.
--Sergey Levine, Berkeley,
CS 182 Deep Learning. 2021.
--Tom Mitchell, CMU,
10-601 Machine Learning. 2015. Uses [B2-Mitchell] and [B2-Bishop].
Refreshing your background:
Probability:
--Arian Maleki and Tom Do,
Review of Probability Theory
--Roy D. Yates and David J. Goodman,
Probability and Stochastic Processes: A Friendly Introduction for Electrical and Computer Engineers, 2005.
--Arian Maleki and Tom Do,
Review of Probability Theory
Algebra, Matrix Analysis, Calculus:
--Pederson and Pederson,
The Matrix Cookbook
--Zico Kolter and Chuong Do,
Linear Algebra Review and Reference
--David Cherney, Tom Denton, Rohit Thomas and Andrew Waldron,
Linear Algebra
--Marc Peter Deisenroth, A. Aldo Faisal, and Cheng Soon Ong,
Mathematics for Machine Learning
Optimization:
--Moritz Diehl,
Lecture Notes on Numerical Optimization (Preliminary Draft)
--Mykel J. Kochenderfer and Tim A. Wheeler,
Algorithms for Optimization
--Sebastien Bubeck,
Convex Optimization: Algorithms and Complexity
--Stephen Boyd and Lieven Vandenberghe,
Convex Optimization
Python:
--Allen B. Downey,
Think Python
--Interactive
Python tutorial
--Google's
Python Class