Here are resources that are helping me get started with machine learning, as well as a few that I would have loved to have known about earlier. I periodically update this page with new resources. If you have good ones, let me know!
Stanford Cheat Sheets
A summary of terms, algorithms, and equations. (I barely understand the equations.=) These sheets, developed by Afshine and Shervine Amidi, differentiate between artificial intelligence (AI), machine learning (ML), and deep learning (DL), but many concepts overlap with each other. See this Venn diagram.
Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems
I highly recommend the book I'm currently reading, written by an ex-Googler who worked on YouTube's video classification algorithm. It's dense, but it introduces you to all relevant artificial intelligence, machine learning, and deep learning concepts and guides you through preparing custom datasets to train algorithms, as well as a bit of data science, I suppose. At the same time, it introduces you to three of the most-used machine learning frameworks—Sci-Kit Learn, Keras, and TensorFlow. This is the one I started using on my day-to-day job when I became an ML Engineer, developing and releasing machine learning models for production. Similar frameworks include Caffe and PyTorch, with the latter being used by Facebook developers. (Thanks to Keith Alfaro for the recommendation.)
Books
Open-source code and tutorials
I got started with machine learning by trying open-source algorithms. It's common to visit the GitHub repository corresponding to a paper and give it a try. Two examples are Pix2Pix (2016) and EfficientDet (2020). You can try using their code as is, then attempt to use a custom dataset for training and see how the model performs for your specific needs.
TensorFlow re-writes many of these models and makes easy-to-follow tutorials.
-
Pix2Pix in TensorFlow Core - Made by the Google TensorFlow team, this tutorial offers you to View the code on GitHub, Download the Jupyter Notebook (written in Python) or Run the Notebook in Google Colab (where you can press a button in the cloud and see how each piece of Python code runs to understand the different parts of setting up and training an algorithm. Reading the dataset, preparing the training and validation set, creating the model, training it, and more).
-
TensorFlow tutorials - This is a good place to get your hands dirty. While machine learning has a strong theoretical component, you can leave that aside and start by training and testing models for image classification, object detection, semantic image segmentation, and a lot more tasks.
Friendly user interfaces
Courses
Tutorials & live streams
-
Machine Intelligence YouTube playlist. Here is a compilation of some of the machine-intelligence-related video tutorials I've recorded.
-
Live Streams YouTube playlist. Weekly hands-on coding sessions on creative coding and machine intelligence for designers. From conceptual overviews to hands-on neural network architecture, automation, training, or cloud deployment.
Other resources
-
TensorFlow: Tensor and Image Basics - A video with fundamental tensor and image operations in TensorFlow. How to use tensors to encode images and matrices and visualize them.
-
TensorFlow: Visualizing Convolutions - A video to visualize the filters of an image convolution, an operation known for its ability to extract image features in an unsupervised way to perform classification tasks used in convolutional neural networks.
-
Awesome Machine Learning - A big and frequently-updated list of machine learning resources.
-
Suggestive Drawing - This is my Harvard's masters thesis, in which I explore how the collaboration between human and artificial intelligences can enhance the design process.
Found this post helpful?