CNN Visualization: https://cs.stanford.edu/people/karpathy/convnetjs/demo/cifar10.html
- Understand when and why you might train your own model from scratch versus use a pre-trained model or transfer learning.
- Learn about the Google "Quick, Draw!" dataset.
- Understand how ato work with image data for training your own model.
- The Quick, Draw! Dataset from Google Creative Lab.
- The MNIST Dataset by Yann LeCun el al.
- Video tutorial: Replaying Drawings with node server
- Video tutorial: Replaying Drawings with Google Web API
- Preparing Data as Images for Doodle Classifer Part 1
- Preparing Data as Images for Doodle Classifer Part 2
- Letter collages by Deborah Schmidt
- Face tracking experiment by Neil Mendoza
- Faces of Humanity by Tortue
- Scribbling Speech by Xinyue Yang
- How do you draw a circle?
- Machine Learning for Visualization by Ian Johnson
- MegaPixels: Faces curated by Tactical Tech, design and development by Adam Harvey
- Watch What Neural Networks See by Gene Kogan
- Recognizing Human Facial Expressions With Machine Learning by Angelica Perez
- Learn to train an image classifier (no convolutional layers) with ml5.js.
- Learn the distinction between different types of layers of a neural network, specifically "What is a convolutional layer?"
- Learn to feed the input of a graphics canvas into a machine learning model.
- ml5.js: What is Convolutional Neural Network Part 1 - Filters - video tutorial by Daniel Shiffman.
- ml5.js: What is Convolutional Neural Network Part 2 - Max Pooling - video tutorial by Daniel Shiffman.
- ml5.js: Training a Neural Network with Pixels as Input - video tutorial
- ml5.js: Training a Convolutional Neural Network for Image Classification - video tutorial
- Original 1998 "LetNet5" paper: "Gradient-Based Learning Applied to Document Recognition" by Y. Lecun, L. Bottou, Y. Bengio, P. Haffner
- How computers got shockingly good at recognizing images by Timothy B. Lee
- Image Kernels Explained Visually by Victor Powell
- A visual and intuitive understanding of deep learning, CNNs (0:00 - 9:40) by Octavio Good
- p5.js Convolution demo
- p5.js Convolution demo -- max pooling
- Training a CNN model with
ml5.neuralNetwork()and Google Quick, Draw! images - Classifying Drawings with ml5's DoodleNet (model trained by @yining1023)
Demos code
- Classifying Drawings with ml5's DoodleNet
- Doodle Classifier on 100 classes
- Doodle Classifier on 345 classes
- Doodle Classifier with KNN Classifier
- Get Quickdraw Dataset
- Train your own Doodle Classifier
- Train your own MNIST Classifier
- An Intuitive Explanation of Convolutional Neural Networks by Ujjwal Karn.
- What Neural Networks See by Gene Kogan.
- "Gradient-Based Learning Applied to Document Recognition" by Y. LeCun, L. Bottou, Y. Bengio, P. Haffner.
- How computers got shockingly good at recognizing images by Timothy B. Lee.
- A visual and intuitive understanding of deep learning, CNNs (0:00–9:40) by Octavio Good.
- Recognizing Human Facial Expressions With Machine Learning by Angelica Perez.
- Image Kernels Explained Visually by Victor Powell.
- Interactive Node-Link Visualizations of Convolutional Neural Networks by Adam W. Harley.
- Convolution Operation Demo by Deeplizard.
- Training a Doodle Classifier with Convolutional Layers
- Training a Handwritten Digit Classifier with Convolutional Layers
- Training a Webcam Image Classifier with Convolutional Layers
- Doodle Classification with DoodleNet
- class: https://editor.p5js.org/yining/sketches/D0DuuxVMu, https://editor.p5js.org/yining/sketches/gOpmdHQ_U
- class: https://editor.p5js.org/yining/sketches/IML0wjHy7, https://editor.p5js.org/yining/sketches/W23bp4-vD
- Reading: An Intuitive Explanation of Convolutional Neural Networks by Ujjwal Karn.
- Coding: Reading line by line in the 4 "Training Image Classifiers" examples, build on top of any of the 4 examples
- Add a link to the post and your p5.js sketch on the Assignment 7 Wiki page.