General Resources
Don’t know where to start on one of your problems? Use SciKit Learn’s handy flowchart. If it is a text classifying problem, check out the NLP version of the flowchart from Google.
Courses
-
CIS 520: Machine Learning, UPenn
This course provides a thorough modern introduction to the field of machine learning. It is designed for students who want to understand not only what machine learning algorithms do and how they can be used, but also the fundamental principles behind how and why they work. See the course description for more details.
-
Statistical Learning, Trevor Hastie & Robert Tibshirani
This is an introductory-level course in supervised learning, with a focus on regression and classification methods. The syllabus includes: linear and polynomial regression, logistic regression and linear discriminant analysis; cross-validation and the bootstrap, model selection and regularization methods (ridge and lasso); nonlinear models, splines and generalized additive models; tree-based methods, random forests and boosting; support-vector machines. Some unsupervised learning methods are discussed: principal components and clustering (k-means and hierarchical). (Note: the video lectures are accessible without signing up here)
-
CS229: Machine Learning, Moses Charikar, Tengyu Ma, Christopher Ré
-
Machine Learning, Andrew Ng
This course provides a broad introduction to machine learning, data-mining, and statistical pattern recognition. Topics include: (i) Supervised learning parametric/non-parametric algorithms, support vector machines, kernels, neural networks). (ii) Unsupervised learning (clustering, dimensionality reduction, recommender systems, deep learning). (iii) Best practices in machine learning (bias/variance theory; innovation process in machine learning and AI). The course will also draw from numerous case studies and applications, so that you’ll also learn how to apply learning algorithms to building smart robots (perception, control), text understanding (web search, anti-spam), computer vision, medical informatics, audio, database mining, and other areas.
Books
-
Data Science From Scratch, Joel Grus
A nice, easy to read reference of a wide range of ML/DS problems. Simple and a really good place to start.
-
Deep Learning With Python, François Chollet
Written by the Keras creator, a nice introduction to a lot of deep learning techniques with examples.
-
One Hundred Page Machine Learning Book, Andriy Burkov
A very broad overview of ML. Very terse and a good place to start. Available as a free PDF.
-
Reinforcement Learning: An Introduction, Richard S. Sutton and Andrew G. Barto
Classic text on reinforcement learning. Available as a full text pdf.
Examples
-
Jupyter Notebooks from Hands on Machine Learning
A series of Jupyter notebooks that walk you through the fundamentals of Machine Learning and Deep Learning in Python using Scikit-Learn, Keras and TensorFlow 2. The book is available from O’Reilly Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, but the notebooks are free on github with lots of worked examples if you want to try out a new technique.
Table of contents
- Some Standard Methods
- Clustering
- Neural Networks
- Recommendation Systems
- Natural Language Processing
- Trees
- Graphs