# Textbooks

##### CIS 419/519 Course Reading Packet

This is a collection of readings that will be used throughout the course. There is NOT a single reading packet you need to obtain -- readings will be distributed incrementally throughout the semester, either in hard-copy or posted online throughout the course.

Learning From Data by Y. S. Abu-Mostafa, M. Magdon-Ismail, and H.T. Lin.

AML Book

Machine Learning: The Art and Science of Algorithms That Make Sense of Data by Peter Flach

Cambridge University Press

**(OPTIONAL) **

Hands-On Machine Learning with Scikit-Learn and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems by Aurélien Géron

1st Edition, O'Reilly Media, 2017

EMAB Tutoring

Engineering Master’s Advisory Board (EMAB) has announced Tutoring Program for master’s students in Machine Learning. This program will serve as a resource to help students strengthen their skills in the area. Students can drop in at one of our sessions whenever they need help - no commitment required and free of charge. If a student is interested in this program, they are encouraged to learn about our program at https://pennemab.weebly.com/tutoring.html or join their Piazza group at http://www.piazza.com/upenn/spring2018/emab101Probability Resources

Linear Algebra Resources

- http://www.seas.upenn.edu/~jadbabai/ESE504/LAreview.pdf
- http://www.cs.cmu.edu/~jingx/docs/linearalgebra.pdf

Python Resources

Throughout the course, you may find it useful to consult the following resources:

- Reinforcement Learning: An Introduction by Sutton and Barto, MIT Press, 1998. (Full text available online; on reserve in Penn library)
- Machine Learning by Tom Mitchell, McGraw Hill, 1997. (On reserve in Penn library)
- A Course in Machine Learning by Hal Daumé III.
- Machine Learning Lecture Notes by Andrew Ng.

For a more advanced treatment of machine learning topics, I would recommend one of the following books:

- Pattern Recognition and Machine Learning by Bishop, Springer, 2006. (On reserve in Penn library)
- Machine Learning: A Probabilistic Perspective by Kevin P. Murphy, MIT Press, 2012. (On reserve in Penn library)
- The Elements of Statistical Learning 2nd edition by Hastie, Tibshirani and Friedman, Springer-Verlag, 2008. (Available online)
- Bayesian Reasoning and Machine Learning by David Barber, Cambridge University Press, 2012. (Available online)
- Convex Optimization by Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004. (Available online)
- Information Theory, Inference, and Learning Algorithms by David Mackay, Cambridge University Press, 2003. (Available online)
- Deep Learning by Yoshua Bengio, Ian Goodfellow, and Aaron Courville. (Available online)

Some useful articles

# Software

- Python : we'll be using python throughout the course to implement various ML algorithms and run experiments
- Google Developer Python Tutorial (highly recommended as a way to master python in just a few hours!)
- NumPy Tutorial (also highly recommended!)
- Python tutorial (work at least through section 5; skip sections 2, 3.1.3)
- Python quick reference

- scikit-learn machine learning in Python
- tensorflow open-source low-level machine learning library
- keras Python deep learning library
- weka be sure to use the "Stable Book 3rd Edition" version. Weka is built using java, so you can download it into your home directory and run it directly there.
- Latex