Intro
This week we start looking into Convolutional Neural Networks (ConvNets or CNN). We will work with Keras and/or ML5js. Example with Wekinators and tfjs can be provided during next week session.
Schedule
Time | Desc |
---|---|
20 mins | AI Autumn workshop - feedback / discuss |
20 mins | Intro to CNN |
20 mins | Notebooks |
10 mins | Break |
40 mins | Notebooks |
Content
- Intro to CNN
- Complete the notebooks for week 07 in
/samples
folder.
Notebooks are taken from the book Deep Learning with Python, (please refer to the link shared on Slack). You should be able to run most of the examples with your local instances of TF / Keras running on the CPU. At the meantime I will try to setup some machine on Paperspace so that you can use their GPU for training I’ll share the link with you on Slack if / when this is done.
Convnets are a cornerstone of Deeplearning and you are going to learn a few very useful techniques this week. Namely: ‘data augmentation’ and ‘feature extraction’ for ‘transfer learning’ .
Preparation work
Read the first 2 articles in Going Further, and complete the notebooks for week 07 in /samples
folder.
For developers you should use a CNN to build a classifier of your choice (either trained from scratch or using a pre-trained model). You can follow the techniques detailed in the notebooks. You will find some examples of datasets in the section going further/tools on this page. For those of you who worked with the shape classifier with the toy NN it might be interesting to try to use CNN as a comparison (see the Kaggle dataset in tools).
Both designers and developers should start looking a bit more in details into their personal project (that we will start to work on after week 06) Which means:
- Make some research (models architecture, datasets, tutorials, blog posts, etc…), please share your finding on Slack if you think they could help some teammates.
- For designers you should start sketching some ideas either in the form of prototypes (high or low level), UI sketches, or even code experiment (P5, ML5).
By next week (week 08) you should:
- Have a solid understanding of Keras (developers)
- Be able to train / retrain your own CNN with Keras (developers)
Going further
CNN
- CNN - Intro from ML is Fun
- CNN - An Intuitive Explanation of Convolutional Neural Networks
- CNN - DL with Python - Chapter 5 (please refer to the link shared on Slack)
- CNN - Visualizing what ConvNets learn
- CNN - Understanding convolutions
- CNN - Visualisation
- CNN - Visualisation Distill.pub 01
- CNN - Visualisation Distill.pub 02
Other (Datasets / js)
- Datasets - Awesome datasets
- Datasets - Misc datasets
- Datasets - Kaggle
- Datasets - Kaggle (shape classification)
- JS ml5js - Classification
- JS ml5js - YOLO
- JS tfjs - Tutorials
- JS tfjs - Examples
- JS tfjs - Video Tutorials
Exit ticket
Use this link if the form does not show up below